Commit Graph

11744 Commits

Author SHA1 Message Date
Ethan Atkins 2deac62b00 Bump io
The newest version of io repackages a number of classes into the
sbt.nio.* packages. It also changes some of the semantics of glob
related apis. This commit updates all of the usages of the updated apis
within sbt but should have no functional difference.
2019-05-02 14:33:01 -07:00
Ethan Atkins 20b0ef786b Undeprecate WatchSource
Since the new watch implementation has yet to be widely deployed, we
should hold off on deprecating the old keys. They could still be
deprecated in a patch release or in 1.4.0.
2019-05-02 09:41:53 -07:00
eugene yokota bc21db2864
Merge pull request #4640 from eatkins/meta-space
Use global classloader cache for ScalaInstance
2019-04-30 16:43:23 -04:00
Ethan Atkins 3a6ff8afca Use global classloader cache for scala instance
I noticed in a heap dump of sbt that there were many classloaders for
the scala instance. I then realized that we were making a new
classloader for the scala library on every test run. Even worse, the
ScalaInstanceLoader instance was never closed which lead to a metaspace
leak. I moved the scala instance classloader to the global classloader
cache. Not only will these be correctly cached, they will be closed if
evicted from the cache.
2019-04-30 12:33:43 -07:00
Ethan Atkins f4a2bcd0ce Close URLClassLoaders after getting bridge
The ZincComponentCompilerSpec was fail with a metaspace related error
when run locally with a recent version of sbt on my machine. I was able
to stop these failures by closing the URLClassLoader instances used to
compile the bridge.
2019-04-30 12:24:47 -07:00
Dale Wijnand 31a3ad61c9
Miscellaneous zinc-lm-integration cleanups (#4634)
Miscellaneous zinc-lm-integration cleanups
2019-04-29 19:37:16 +01:00
eugene yokota 5443e17245
Merge pull request #4635 from eed3si9n/wip/refactor
Refactor recently added code
2019-04-29 11:46:37 -04:00
Eugene Yokota 788a864d83 Refactor some code 2019-04-29 10:33:08 -04:00
Dale Wijnand d51a5ef16e
Miscellaneous zinc-lm-integration cleanups 2019-04-29 14:40:55 +01:00
eugene yokota 1106422fb9
Merge pull request #4617 from dwijnand/zinc-lm-integration
In-source zinc's LM integration code
2019-04-28 22:19:43 -04:00
Dale Wijnand 736a1fa624
Switch back to unsuffixed 2.13 compiler bridge sources
Using the newer zinc version there now is a compiler bridge source jar
with suffix _2.13.
2019-04-28 23:41:48 +01:00
eugene yokota 33f4f5a49b
Merge pull request #4630 from eed3si9n/wip/cancelable
make Global / cancelable true by default
2019-04-28 18:17:41 -04:00
Dale Wijnand 481db003af
Zinc 1.3.0-M4
Zinc 1.3.0-M4
2019-04-28 23:06:28 +01:00
Eugene Yokota 04197db2ec formatting 2019-04-28 17:27:24 -04:00
Eugene Yokota 2e3ceb2d92 Zinc 1.3.0-M4 2019-04-28 17:27:10 -04:00
Eugene Yokota f5444f7715 Merge branch 'develop' into pr/4617 2019-04-28 17:22:54 -04:00
eugene yokota a3cebd3ade
Merge pull request #4614 from eed3si9n/wip/coursier
Coursier dependency resolution  integration
2019-04-27 15:52:57 -04:00
Eugene Yokota f999f6a62e always reresolve sbt artifacts when using Coursier
Ref #4589

This requires sbt server tests to resolve sbt off of local.
2019-04-27 14:31:13 -04:00
Eugene Yokota 96ad731e8c Use allExcludeDependencies 2019-04-26 18:06:10 -04:00
Eugene Yokota 8c0f13a24a manually expand ivy.home
Ref coursier/coursier#1124
2019-04-26 17:51:17 -04:00
Eugene Yokota f354a626c7 use lm-coursier-shaded
This uses lm-coursier-shaded, and follows along the changes in https://github.com/coursier/sbt-coursier/pull/58.
2019-04-26 17:33:14 -04:00
Eugene Yokota 258a8930a5 bump Scala 2.11 to 2.11.12 because we use JDK 11 2019-04-26 12:27:38 -04:00
Eugene Yokota 24db77edc5 copy some tests from coursier/sbt-coursier
Copying over sbt-coursier integration tests that do not depend on Coursier-specific things, but excercises sbt integration.
2019-04-26 12:27:38 -04:00
Eugene Yokota 7658f14762 Add maven-plugin and test-jar to classpathTypes
Ref https://github.com/sbt/sbt-native-packager/issues/1053
Ref https://github.com/coursier/coursier/issues/450
2019-04-26 12:27:38 -04:00
Eugene Yokota 464325ad1d add a simpler version of snapshot-resolution
Ivy is able to check for SNAPSHOT across different resolvers.
Coursier seems to be sticky about the resolver within the TTL (24h).
2019-04-26 12:27:38 -04:00
Eugene Yokota ca53934941 fix csrCachePath 2019-04-26 12:27:38 -04:00
Eugene Yokota 4b4359f7b1 mark dependency-management/dynamic-revision pending 2019-04-26 12:27:38 -04:00
Eugene Yokota 795601f594 mark dependency-management/url pending
Ref https://github.com/coursier/coursier/issues/1127
2019-04-26 12:27:38 -04:00
Eugene Yokota 9a666b5418 use Ivy for some tests 2019-04-26 12:27:38 -04:00
Eugene Yokota b47ed4e62a mark dependency-management/default-resolvers pending 2019-04-26 12:27:38 -04:00
Eugene Yokota 944e955d06 put sbtCp ahead of resolved JARs
Ref https://github.com/sbt/sbt/pull/4443
Ref https://github.com/coursier/coursier/issues/1128

This is a workaround for Coursier not excluding sbt modules.
2019-04-26 12:27:38 -04:00
Eugene Yokota 5614cfcbb6 Move log to outer task 2019-04-26 12:27:38 -04:00
Eugene Yokota 697b2b534a add additional resolver to help Coursier 2019-04-26 12:27:38 -04:00
Eugene Yokota e206e797fe set up specific dependencyResolution instances 2019-04-26 12:27:38 -04:00
Eugene Yokota 9b0ffde519 disable metadata-only-resolver test 2019-04-26 12:25:52 -04:00
Eugene Yokota 6a99906386 manually expand ivy.home
Ref https://github.com/coursier/coursier/issues/1124
2019-04-26 12:25:52 -04:00
Eugene Yokota 35a0ee4321 relax dependency-management/compiler-bridge-binary 2019-04-26 12:25:52 -04:00
Eugene Yokota 21782a51f0 write info.apiURL to ivy.xml
Ref https://github.com/coursier/coursier/issues/1123
2019-04-26 12:25:52 -04:00
Eugene Yokota 38f94a6e31 Coursier dependency resolution integration
This adds dependency to LM implemented using Coursier.
I had to copy paste a bunch of code from sbt-coursier-shared to break the dependency to sbt.

`Global / useCoursier := false` or `-Dsbt.coursier=false` be used to opt-out of using Coursier for the dependency resolution.
2019-04-26 12:25:52 -04:00
eugene yokota 42bc2ea04d
Merge pull request #4631 from eatkins/previous
Allow calling TaskKey.previous in input tasks
2019-04-25 22:48:35 -04:00
Ethan Atkins 81ce14d58c Allow calling TaskKey.previous in input tasks
I discovered that it wasn't possible to call .previous in an input task.
While I understand why you can't call .previous on an InputKey, I think
it makes sense to allow calling .previous on a TaskKey within an input
task.
2019-04-25 15:58:01 -07:00
Eugene Yokota 3be8efc36e make Global / cancelable true by default
Fixes #3252
2019-04-25 12:14:37 -04:00
eugene yokota 3269eae533
Merge pull request #4606 from eed3si9n/wip/update
trim update and add updateFull
2019-04-25 12:13:22 -04:00
Dale Wijnand 9a56c0d005
Cleanup zinc-lm-integration 2019-04-25 12:01:33 +01:00
Dale Wijnand e978357e47
In-source zinc's LM integration code 2019-04-25 11:57:37 +01:00
Dale Wijnand b9b520f79e
Merge remote-tracking branch 'zinc-lm-intergration/bring-back-a-piece-of-zinc' into zinc-lm-integration
* zinc-lm-intergration/bring-back-a-piece-of-zinc: (90 commits)
  Add scala-integration resolver
  call it compiler-bridge_2.13
  bump Scala bridge to use 2.13.0-RC1
  Break the dependency on LM, and thus Ivy
  Skip Scala 2.10 and Scala 2.11 components for JDK 11
  Refactor compiler bridge unit test
  Fix the several typos detected by github.com/client9/misspell
  Got rid of multiple warnigns
  include only scala-library into the boot classpath during run
  Drop "final" modifier from private case classes, to prevent false positive. Refer https://issues.scala-lang.org/browse/SI-4440
  Support scala 2.13.0-pre-* & 2.13.0-M1
  Split compiler bridge tests to another subproject
  Remove unused imports + variables
  Add back, re-configure & re-enable Scalafmt
  Use Scala 2.12.3
  Remove any reference to `F0` and `F1`
  Adapt Zinc to use the new LibraryManagement API
  Fix ScalaFmt wiring
  Add scalaCompiler variant that accepts ModuleID
  Bump all the modules
  ...
2019-04-25 11:57:36 +01:00
Eugene Yokota 6c7faf2b86 trim update and add updateFull
Fixes #4438

This slims down update's UpdateReport by removing evicted modules
caller information. The larger the graph, the effect would be more
pronounced. For example, I saw a graph reduce from 5.9MB to 1.1MB in JSON file.
2019-04-23 14:08:17 -04:00
eugene yokota 4074cb32d3
Merge pull request #4605 from eed3si9n/wip/bumplm
bump to lm 1.3.0-M3
2019-04-23 13:52:08 -04:00
Eugene Yokota 3a355f6025 refactor project/transitive-plugins 2019-04-23 12:55:25 -04:00
eugene yokota 9b71ee1d6e
Merge pull request #4459 from alexarchambault/topic/update-classifiers-dependency-resolution
Have updateClassifiers use the dependencyResolution task
2019-04-21 19:18:01 -04:00