Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

frees-rpc new Generation #290

Closed
juanpedromoreno opened this issue Jun 4, 2018 · 1 comment
Closed

frees-rpc new Generation #290

juanpedromoreno opened this issue Jun 4, 2018 · 1 comment
Labels
enhancement New feature or request

Comments

@juanpedromoreno
Copy link
Member

frees-rpc will adopt the new generation of Scala Macros in the Freestyle ecosystem. This new version of the scala macros will be supported natively by the compiler in 2.13, under the scalac option -Ymacro-annotations, thanks to scala/scala#6606.

However, the migration of the current scalameta macros (no longer under development and won't support 2.13.x) to the new Scala Macros can be huge, mainly taking into account both https://github.com/frees-io/freestyle and https://github.com/frees-io/freestyle-rpc.

As you probably know, frees-rpc is currently depending on frees-core for defining the tagless final algebras, so we are suggesting two steps work to achieve this migration.

  1. First, in order to parallelize the work, we need to decouple temporarily frees-rpc from frees-core. The reason would be just to minimize the potential blockers from the migration in frees-core side, which presumably would be bigger, so we could migrate Freestyle RPC faster and independently from the core. As you can imagine, we want frees-core back to frees-rpc as soon as both are inline in terms of binary compatibility (it could be considered the third stage).

  2. As part of the second step, we'll do the migration itself, where the RPC @service macro annotation will be migrated to use the new generation of Scala Macros.

The Freestyle Maintainers team hope this makes sense and want to say that any kind of feedback is very welcomed :)

@juanpedromoreno
Copy link
Member Author

Closed by #339

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant