quarkus-scala3
quarkus-scala3 copied to clipboard
Scala 3 Quarkus improvements to close the gap to Kotlin
With this issue, I'd like to list some gaps and improvements that could be done to the Quarkus / Scala ecosystem to bring it up to a similar level as Kotlin.
Some features are shown in my Scala 3 Quarkus quickstart project at: https://github.com/carlosedp/scala3-quarkus-quickstart/
Some Improvements:
- [ ] Create a Scala guide page in https://quarkus.io that could use as a base the readme of this extension
- [ ] Register the Scala Enum module in
ObjectMapperwhen Jackson Scala module is added along the lines I did in https://github.com/carlosedp/scala3-quarkus-quickstart/blob/main/src/main/scala/helper/EnumJsonSerializationHelper.scala. I see theDefaultScalaModuleis already added. Is it possible to also add the lib to avoid the user to add it?- Addressed by #36
- [ ] Is it possible to add
scala3-compiler_3to the extension so it's one less lib to add to Maven/Gradle user project? - [ ] Add the RestAssured DSL to the module for ease-of-use?
- Opened https://github.com/rest-assured/rest-assured/pull/1770/ to add the DSL to rest-assured
- [ ] Allow use of Scala
FuturesandPromisesin Quarkus Resources - Addressed by #51 - [ ] Allow use of Scala
Zioeffects in Quarkus Resources - Addressed by #52
Current extensions published for Kotlin:
- [x] Kotlin (which I understand provides the same functionality as this extension)
- [ ] Hibernate ORM with Panache and Kotlin
- [ ] Hibernate Reactive Panache Kotlin
- [ ] MongoDB with Panache for Kotlin
- [ ] REST Client Reactive Kotlin Serialization
- [ ] RESTEasy Reactive Kotlin Serialization
- [ ] RESTEasy Reactive Kotlin
- [ ] RESTEasy Reactive Kotlin Serialization Common
- [ ] Scheduler
- [ ] Smallrye Reactive Messaging
I understand these provide some abstractions to the underlying Java libraries to a more Kotlin-esque style. Could be done on a needed-basis.