This repository was archived by the owner on Sep 8, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 27
Mixed Java/Scala compilation like sbt's "Mixed" compileOrder #69
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Partest used to follow an old recommendation for mixed compilation: first all files are passed to scalac, then the Java files to javac (with the Scala classfiles on the classpath), and finally the Scala files again to the Scala compiler (with the existing classfiles on the classpath). SBT and the other build tools stop after the second round, so it makes sense for our partest to do the same by default. Separate compilation (Java then Scala) can still be tested using filename groups (`_N`).
Review by @SethTisue. I'm planning to push a |
LGTM (though, I don't really know my way around this repo) |
I'll take care of the needed test case updates in scala/scala as part of scala/scala#5661 |
Oh, i actually did that here: scala/scala@5ae79fb Haven't submitted it, as this PR was put on hold. |
@lrytz sweeeeet, I was just starting to realize this was actually going to be work :-) thanks, I'll pull that in over in scala/scala |
Glad we didn't duplicate the work, I should have pulled that out of the PR and submitted it. |
SethTisue
pushed a commit
to SethTisue/scala
that referenced
this pull request
Jan 25, 2017
scala/scala-partest#69 changed the mode for mixed compilation, which used to be 1. scalac *.java *.scala -d o 2. javac *.java -d o -cp o 3. scalac *.scala -d o -cp o Now the third step is skipped. This required some adjustments to existing tests. - t7014 is split in two groups, the fix is for separate compilation. - t7582 is also split. It tests inliner warnings when inling code that accesses Java-defined package-private code. Inlining from Java only works in separate compilation (no bytecode available in mixed compilation). - Java compiler warnings of "run" tests were not reported in the old scheme, now they are. Deprecation / unchecked warnings were removed from t6240, t8786, varargs. - t4788 required a .check file update to pass, which hints at a bug. I will re-open SI-4788 and investigate later.
SethTisue
pushed a commit
to SethTisue/scala
that referenced
this pull request
Jan 27, 2017
upgrades partest from 1.0.17 to 1.1.0 scala/scala-partest#69 changed the mode for mixed compilation, which used to be 1. scalac *.java *.scala -d o 2. javac *.java -d o -cp o 3. scalac *.scala -d o -cp o Now the third step is skipped. This required some adjustments to existing tests. - t7014 is split in two groups, the fix is for separate compilation. - t7582 is also split. It tests inliner warnings when inling code that accesses Java-defined package-private code. Inlining from Java only works in separate compilation (no bytecode available in mixed compilation). - Java compiler warnings of "run" tests were not reported in the old scheme, now they are. Deprecation / unchecked warnings were removed from t6240, t8786, varargs. - t4788 required a .check file update to pass, which hints at a bug. I will re-open SI-4788 and investigate later.
lrytz
added a commit
to lrytz/scala-partest
that referenced
this pull request
May 9, 2018
Mixed Java/Scala compilation like sbt's "Mixed" compileOrder
lrytz
added a commit
to lrytz/scala-partest
that referenced
this pull request
May 9, 2018
Mixed Java/Scala compilation like sbt's "Mixed" compileOrder
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Partest used to follow an old recommendation for mixed
compilation: first all files are passed to scalac, then
the Java files to javac (with the Scala classfiles on the
classpath), and finally the Scala files again to the Scala
compiler (with the existing classfiles on the classpath).
SBT and the other build tools stop after the second round,
so it makes sense for our partest to do the same by default.
Separate compilation (Java then Scala) can still be tested
using filename groups (
_N
).