Skip to content

Fix js/native support & bump sbt and plugins versions #132

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

Merged
merged 2 commits into from
Nov 6, 2017

Conversation

gourlaysama
Copy link
Contributor

Naming the js/native projects by hand changed the produced artifactIds
(scala-parser-combinators-js_sjs0.6_2.12), and that breaks dependency resolution.

And then we can release 1.0.7! 🎉

sbt-crossproject already handles that, but naming them by hand changed
the name of the produced artifacts
(`scala-parser-combinators-js_sjs0.6_2.12-...`).
@gourlaysama
Copy link
Contributor Author

Upgrading scala-js to 0.6.20 breaks the build (because of scala-js/scala-js/issues/3128), so only 0.6.19.

@gourlaysama gourlaysama requested a review from SethTisue November 4, 2017 18:17
@gourlaysama gourlaysama merged commit 1f108e5 into scala:1.0.x Nov 6, 2017
@gourlaysama gourlaysama deleted the fix-native-support branch November 6, 2017 17:40
@gourlaysama
Copy link
Contributor Author

I triggered a test build here, but the automated publishing didn't do the right thing: scalaVersionsByJvm only encodes a (JVM version, Scala version) build matrix. That's not enough with scala-native now: we want to publish when on (java 8, scala 2.11, native), but not on (java 8, scala 2.11, jvm) and it cannot encode that.

That build matrix is becoming really ugly... 😞

@lrytz
Copy link
Member

lrytz commented Dec 8, 2017

@gourlaysama it seems we have the same issue with scala-js.

Another issue with the current setup: the build runs +publishLocal, which overrides the explicit scalaVersion in the native project (https://github.com/scala/scala-parser-combinators/blob/1.0.x/build.sbt#L57). So the jdk 8 build actually published scala-parser-combinators_native0.3_2.12. Now there's no release for native and 2.12, and (I checked locally) the resulting jar contains only .class files, but no .nir files.

I need to come up with a cross versioning scheme that also supports js / native.

@lrytz
Copy link
Member

lrytz commented Dec 11, 2017

FTR i have some WIP here: https://github.com/lrytz/sbt-scala-module/tree/platforms. Not yet working; I would basically like to completely disable / remove a project (js / native) if its crossScalaVersions (which is defined according to the current jvm version) is empty. I haven't found out how to get there yet.

It also needs sbt-doge (or sbt 1).

@SethTisue
Copy link
Member

It seems to me that we both could and should just drop sbt 0.13 support.

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

Successfully merging this pull request may close these issues.

3 participants