-
Notifications
You must be signed in to change notification settings - Fork 71
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
Add scala-native support #316
Conversation
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.
Very cool! Kicking off the build.
Curious what you're using this for, if you don't mind sharing?
Hmm, looks like CI will need an update... could you run |
Sure 😄, I have a little side-project where I am using scopt currently which comes with some idiosyncrasies and I'm thinking of replacing it with decline. |
I've rebased onto master and pushed. I would like to run the tests for Scala Native on CI too, but only for Scala 2.12 and 2.13. Do you know how to achieve that using sbt-github-actions? |
Hrm, I do not. The README makes it sound like it may be difficult: https://github.com/djspiewak/sbt-github-actions#generative-1 I suppose one might be able to reconfigure some of the tasks, so that eg. |
I took a look at how they do it for cats. They have another matrix dimension:
and then exclude the Scala 3 / native platform job:
Also, they redefine the build steps and conditionally run with I'll look into this a bit more tomorrow. |
I have again rebased onto master and added a job step which runs conditionally if the matrix.scala version is not Scala 3. I'll look into getting |
Kicked off the updated jobs - looks like everything's working smoothly. |
* update Scala 2.12 to 2.12.13 since scala-native's nscplugin is available for 2.12.13 and 2.12.14 * exclude java.nio.time support for scala-native, since scala-native does not implement this on its own and `org.ekrich %%% sjavatime` is not complete yet Fixes bkirwi#42
Sorry for responding so sluggishly... I have again rebased and pushed a new commit which also runs the publish artifacts step for the supported scala versions of the declineNative project. Note, that the FTR, I tried aggregating the native project in the root project too, but that did not work so well since running any task with |
Cool looks good!
That sounds like a good idea, but not a blocker. (There's a risk that a compilation bug in Scala Native could fail the build fairly late... but, hopefully, not a large one.)
No need to apologize for volunteering your time slightly later than you expected to. :) I'll go ahead and merge this, but will leave the corresponding issue open until we've got this released and confirmed working well. |
Thanks for merging! I will check this out for my project later on, but I am on vacation the next weeks... 😃 |
2.12.13 and 2.12.14
implement this on its own and
org.ekrich %%% sjavatime
is not complete yetFixes #42
As already mentioned above, the scala-native module does not support the java.nio.time based Argument instances. I guess that's OK for a start, and could be improved later. Partial support would be possible, or one could separate the library part into a decline-time module which would not be published for scala-native at all.