Skip to content

Build Pipelining, better .java support 2.12.x backport#38

Closed
retronym wants to merge 18 commits into2.12.xfrom
topic/pipeline-trace-macro-omnibus-rebase-all
Closed

Build Pipelining, better .java support 2.12.x backport#38
retronym wants to merge 18 commits into2.12.xfrom
topic/pipeline-trace-macro-omnibus-rebase-all

Conversation

@retronym
Copy link
Owner

@retronym retronym commented Feb 11, 2019

.sig files, containing the pickle bytes, are output
in place of .class files emitted by Scalac.

Java defined .class files are emitted after stripping
them of code.
If a new hidden setting is enabled. Build tools that want to implement
build pipelining can use this to feed to downstream classpaths.
Under this mode, the RHS of defs and vals are only typechecked if
the result type of the definition is inferred and the definition's
signature is forced.

The movitivation is to create a fast path to extract the pickles for
the API for use on the classpath of downstream compiles, which could
include parallel compilation of chunks of the the current set of
source files.
@retronym retronym force-pushed the topic/pipeline-trace-macro-omnibus-rebase-all branch from 1b5f190 to 5862975 Compare February 12, 2019 01:13
 - Inherited type declarations are in scope in Java code
 - For static innner classes, we need to check in the companion
module of each base classes.
 - Incorporate and accomodate test case from scala#6053
 - Tests to java code referring to module-class owned classes via companion class prefix

 Backport of scala#7671
@retronym retronym force-pushed the topic/pipeline-trace-macro-omnibus-rebase-all branch from 5862975 to dc55ba2 Compare February 12, 2019 01:19
@retronym retronym closed this May 26, 2019
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.

1 participant