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

Allow customizable scala version dependency through dependency provider #170

Open
rfan-debug opened this issue Jan 6, 2022 · 1 comment
Labels
blocked-external Waiting on external issue/release lang-scala Scala rules specific

Comments

@rfan-debug
Copy link

rfan-debug commented Jan 6, 2022

Description

Currently, the scalapb version and scala-compiler version are hard-coded in the repository.bzl dependency file. It blocks users from upgrading their scala application from scala 2.12 to 2.13, because dependencies compiled in 2.12 is not binary-compatible in scala-2.13 code.

Is there any plan to allow passing in customer-defined dependency version for scala compiler + scalaPB? I wish we could provide customized dependencies underneath through some dependency provider.

@aaliddell aaliddell added the lang-scala Scala rules specific label Jan 26, 2022
@aaliddell
Copy link
Member

In the short term, it's difficult, as the combinations explode when trying to support multiple versions per language. In the long term, Bazel 6.0 will introduce bzlmod, which will allow offloading all the dependencies. This will allow users to update their versions without changes needed here.

In the very short term, if you need that specific version, you can vendor the code used here for one version and adapt it to the new version. When I do the next cycle of picking up new versions, scalapb will be checked and updated if possible.

@aaliddell aaliddell added the blocked-external Waiting on external issue/release label Aug 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked-external Waiting on external issue/release lang-scala Scala rules specific
Projects
None yet
Development

No branches or pull requests

2 participants