-
Notifications
You must be signed in to change notification settings - Fork 81
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
Update scala 2.12 to 2.12.13 #445
Conversation
It seems that we are once again hit by: ``` [error] (run-main-0) java.lang.NoClassDefFoundError: scala/tools/nsc/reporters/AbstractReporter [error] java.lang.NoClassDefFoundError: scala/tools/nsc/reporters/AbstractReporter [error] at java.lang.ClassLoader.defineClass1(Native Method) [error] at java.lang.ClassLoader.defineClass(ClassLoader.java:756) [error] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) [error] at java.net.URLClassLoader.defineClass(URLClassLoader.java:468) [error] at java.net.URLClassLoader.access$100(URLClassLoader.java:74) [error] at java.net.URLClassLoader$1.run(URLClassLoader.java:369) [error] at java.net.URLClassLoader$1.run(URLClassLoader.java:363) [error] at java.security.AccessController.doPrivileged(Native Method) [error] at java.net.URLClassLoader.findClass(URLClassLoader.java:362) [error] Caused by: java.lang.ClassNotFoundException: scala.tools.nsc.reporters.AbstractReporter [error] at java.net.URLClassLoader.findClass(URLClassLoader.java:382) ``` which is similar to scalameta#195 I updated the version to 2.12.13 as was the case in the previous issue.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this change break binary compatibility with 2.12.12? Previously, mdoc used to be version against the compiler but the markdown processing code barely touched the compiler APIs so I change it to be version with the library instead. It’s a shame this change happened so late in 2.12.x series. Do you think mdoc needs to become versioned against the compiler again? Given mdoc is already on a critical path for Metals it’s maybe not so bad to version against the compiler instead of the library 🤔
LGTM feel free to merge. Just thinking out loud
It does break the binary compatibility unfortunately :/ It's the same change that caused it for 2.13.1. Should we release a 3.0.0 version after merging it? OR would you rather start releasing per compiler versions? |
I suspect most people consume mdoc via the sbt plugin so they won’t have issue if mdoc starts versioning against the compiler. It’s not great to break compatibility with all of 2.12.x series excluding 2.12.13+ |
I wonder if it’s possible to keep publishing a library versioned artifact that’s an alias to the latest 🤔 that might give the best of both worlds, although I haven’t seen any library do this before. |
I will create a follow up today.
It's probably possible, but I am worried it may break some things as tools don't really expect this to be the case. |
It seems that we are once again hit by:
which is similar to #195
I updated the version to 2.12.13 as was the case in the previous issue. Needed for scalameta/metals#2383