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

Omnibus of -Yprofile-trace, -Ymacro-classpath, Global.close(), -Youtline, build pipelining and pickle caching #32

Closed
wants to merge 69 commits into from

Conversation

retronym
Copy link
Owner

No description provided.

retronym and others added 13 commits October 25, 2018 08:53
Suitable for viewing directly in chrome://tracing, or post processing
with https://github.com/retronym/chrome-trace-to-flamegraph

Co-Authored-By: Mike Skells <[email protected]>
For better cacheability

(cherry picked from commit 24124d5)
An extension point analagous to `findMacroClassLoader`

(cherry picked from commit 01a9dbd)
This lets customized Global's deliver this file, and offloads
the scanning logic.

(cherry picked from commit bec5899)
(cherry picked from commit 837f924)
Close Global-scoped JARs and ClassLoaders.

Entries of FileBasedCache that have a lifetime that exceeds any
single Global instance are reference counted. When the count
hits zero, it is closed if no references appear after a delay.

(cherry picked from commit deb10d4)
…asspath' into topic/pipeline-trace-macro-omnibus
(cherry picked from commit a5869ce)
viktorklang and others added 2 commits October 31, 2018 21:08
Since the changes to make the compiler output deterministic, default getter
symbols must be entered eagerly before the trees are created. This happens
in `enterDefDef`, but that method is bypassed when entering the synthetic
symbol for an implicit class factory method.

This commit enters the default getter symbols in this case, as well, avoiding
a later crash.
@retronym retronym force-pushed the topic/pipeline-trace-macro-omnibus branch from 242b0ff to 81e3918 Compare November 5, 2018 05:22
  - Don't print `-Xprint-args ...` itself
  - Render a programattically added single output directory as -d.
    Zinc sets the output directory in this way.

```
scala> import scala.tools.nsc._; val g = new Global(new Settings); g.settings.outputDirs.setSingleOutput("/tmp"); g.settings.printArgs.value = "-"; val run = new g.Run(); run.compileSources(g.newSourceFile("") :: Nil)
-d
/tmp
<console>
import scala.tools.nsc._
```
@retronym retronym force-pushed the topic/pipeline-trace-macro-omnibus branch from 81e3918 to 5779bbd Compare November 5, 2018 06:51
retronym and others added 11 commits November 6, 2018 10:59
Also test that the Java parser doesn't force entry of new symbols
when it parses modifiers that it translates into symbol annotations.

Regressed in scala#7356
  - Fix pickle hand off for modules without a companion class
  - Block javac compilation on current module's scala compilation
    (same as CompileOrder.Mixed in SBT)
@retronym retronym force-pushed the topic/pipeline-trace-macro-omnibus branch from 46bbcf7 to b3a9abe Compare December 4, 2018 07:10
@retronym retronym force-pushed the topic/pipeline-trace-macro-omnibus branch from 973c625 to d9a4252 Compare December 12, 2018 00:12
@retronym retronym force-pushed the topic/pipeline-trace-macro-omnibus branch from d9a4252 to b74afb4 Compare December 12, 2018 00:48
@retronym retronym force-pushed the topic/pipeline-trace-macro-omnibus branch from c391769 to e4bf7e8 Compare December 12, 2018 12:56
@retronym
Copy link
Owner Author

All merged to 2.12.x

@retronym retronym closed this May 30, 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.

3 participants