Skip to content
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

Auto-invalidate Java sources in every cycle during pipelining #920

Merged
merged 4 commits into from
Sep 15, 2020

Conversation

eed3si9n
Copy link
Member

@eed3si9n eed3si9n commented Sep 13, 2020

Fixes #918

This reverts #912 and re-invalidates all Java sources in every cycle during pipelining.
This also adds a minor fix and use options.pipelining (this module is pipelining) instead of isPickleJava (this module is providing pickle JAR), and adds a comment explaining why we do this.

before

sbt:sbtRoot> utilScripted/clean
sbt:sbtRoot> utilScripted/compile
sbt:sbtRoot> utilScripted/compile
[error] ${BASE}/internal/util-scripted/src/main/scala/sbt/internal/scripted/HandlersProvider.scala:11:27: not found: type ScriptConfig
[error]   def getHandlers(config: ScriptConfig): Map[Char, StatementHandler]
[error]                           ^
[error] ${BASE}/internal/util-scripted/src/main/scala/sbt/internal/scripted/ScriptedTests.scala:146:30: not found: type ScriptConfig
[error]       val scriptConfig = new ScriptConfig(label, testDirectory, log)
[error]                              ^
[error] two errors found

after

sbt:sbtRoot> utilScripted/clean
sbt:sbtRoot> utilScripted/compile
sbt:sbtRoot> utilScripted/compile
[info] compiling 9 Scala sources to /private/tmp/sbt/core-macros/target/scala-2.12/classes ...
[info] compiling 1 Java source to /private/tmp/sbt/internal/util-scripted/target/scala-2.12/classes ...
[info] [sig files written]
[info] compiling 2 Scala sources and 1 Java source to /private/tmp/sbt/internal/util-scripted/target/scala-2.12/classes ...
[info] [sig files written]

@eed3si9n eed3si9n force-pushed the wip/pipelining_java2 branch from eab2fea to b40423e Compare September 13, 2020 18:36
eed3si9n added a commit to eed3si9n/sbt that referenced this pull request Sep 13, 2020
Together with sbt/zinc#920 this fixes most of the mixed pipelining issues.

1. Previous values are carried from `compileScalaBackend` in `compileJavaTask`.
2. `compileJava / compileOptions ` now uses `compile / compileOptions` to avoid unintentional change of javac or scalac options.
3. Hooks up early compile analysis store.
@eed3si9n eed3si9n merged commit 2f7bbef into sbt:develop Sep 15, 2020
@eed3si9n eed3si9n deleted the wip/pipelining_java2 branch September 15, 2020 02:11
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.

Why we were auto-invalidating Java sources in every cycle
1 participant