-
Notifications
You must be signed in to change notification settings - Fork 121
Changes to Contraband json files don't trigger invalidation of source that uses the generated *.java code #282
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
Comments
Is this issue reproducible in Zinc 1.0 or 0.13? If it's in 0.13.x it may make more sense to file a ticket there 😄. Regarding the issue, this looks indeed weird. The third point is baffling... Is this how the universe is set up to work? |
Well this issue happens when trying to work on zinc itself, so I think the zinc bugtracker is appropriate until we figure out what causes the issue (it might be a pecularity of the zinc build.sbt for example). |
Closed by accident. Let's see what's making this happen. |
Note to myself: this is a bug of our current setup and only affects people hacking on Zinc. It is not a bug of Zinc 1.0 per se. |
While working on #287 I've run into the same issue when changing |
Related to sbt/contraband#75. |
I always thought "hey this works for me" until I read it more carefully. |
I'm now more certain it's sbt issue because it won't happen if I comment out:
so |
@eed3si9n Does this only happen when compiling with Scala 2.12? If so I bet this is scala/bug#10295 |
Interesting. You might be right. Using Scala 2.11.8 it did detect the Java signature change in the JAR:
|
If |
Fixes sbt#282 Ref scala/bug#10295 exportJars := true exposes JAR file as subproject dependency. Scala 2.12.2 fails to invalidate the source it's used. `-YdisableFlatCpCaching` apparently works aruond this.
Improve retryUntil's behavior during failure.
Uh oh!
There was an error while loading. Please reload this page.
I have no idea if this is a bug in sbt, zinc, contraband, or a combination of all the above:
steps
{ "name": "quack", "type": "String" },
toProjection
compile
, notice that java files are generated from the json file as expected and they are recompiledproblem
but notice also that you don't get any compilation error, even though you just changed the constructor of
Projection
which is used ininternal/compiler-bridge/src/main/scala/xsbt/ExtractAPI.scala
for example.expectation
internal/compiler-bridge/src/main/scala/xsbt/ExtractAPI.scala
etc should no longer compile.notes
;clean;compile
, notice that everything still compiles, very weird!;clean;compile
, finally you get error messages!Any clue what's going on? /cc @eed3si9n
The text was updated successfully, but these errors were encountered: