Commit Graph

20 Commits

Author SHA1 Message Date
Dale Wijnand f2efa10af1
Switch to sbt-datatype, sjson-new & Vectors 2016-11-15 23:59:34 +00:00
Dale Wijnand ffcad3cdad Make CrossVersion & ModuleId more commonly equal
Two instance of functions defined in the same way don't equal themselves, but
the same instance of a function does. So by using a val idStringFun for full and
binary, and making Binary and Full case classes there are much better chances
that ModuleId's defined in the same way will be equal.
2016-07-08 03:10:37 +01:00
Miles Sabin 52867b8c95 Override scala organization and version transitively at the Ivy level 2016-06-02 22:15:06 +01:00
Eugene Yokota 87b3ca04c0 Don't depend on other projects' tests 2016-05-11 14:12:10 -04:00
Eugene Yokota d304a95b24 Bump dependencies 2016-05-04 22:49:03 -04:00
Martin Duhem 65adc869d4 Implement static launcher for sbt
This is a combination of 13 commits. I squashed these 13 commits to make
forward porting those changes easier, since some commit undo the changes
of other commits.

The PRs that include these changes can be found at
https://github.com/sbt/sbt/pull/2564 and
https://github.com/sbt/sbt/pull/2576.

Static launcher, get bridge sources from resources

This commit introduces a new "static" launcher that does not use Ivy to
gather all the artifacts that it requires, but rather expect them to be
immediately available.

To be able to use sbt without Internet access, we add a new
`ComponentCompiler` that is able to retrieve the bridge sources from the
resources on classpath and compile it.

Fix classpath issues in static launcher

The launcher defines a top classloader that willbe used by all
`ScalaInstance`s. Previously, this top classloader had a parent that
contained the scala library 2.10, which prevented the correct
compilation of the compiler bridge for scala 2.11.

Also, we no longer need the scala-reflect JAR.

Tests for FakeResolver

Add `scala-reflect.jar` to JARs of `StaticScalaProvider`

It turns out we need to have `scala-reflect.jar` on classpath to compile
the compiler bridge for the static scala instance of the launcher.

Comply to Ivy's specification in `FakeResolver`

Remove `CompilerBridgeProvider` and `ResourceBridgeProvider`

It turns out that we can leverage the`FakeResolver` that has been
implemented to use with the static launcher, and resolve a "fake
compiler bridge" using it, rather than copying it from the resources.

This also has the advantage of not requiring to change the build
definition.

Fix NPE in FakeResolver

Add compiler bridge sources to fake resolver

This allows sbt to resolve the compiler bridge sources when using the
static launcher

Don't hardcode sbt version in static launcher

Add scala compiler and library to fake resolver

This allows us to still resolve them if we have no other resolver
configured.

Add `RepositoriesParser`

This parser is used by the static launcher to parse the definition of
resolvers that override the build resolvers.

Support repositories override in static launcher

The static launcher will now parse user-defined repositories like the
usual launcher does.

Specifically, the static launcher now uses the following configuration:

 - `sbt.boot.directory`: specifies the boot directory that sbt will use.
   Defaults to `~/.sbt/boot`.
 - `sbt.override.build.repos`: indicate whether we want to override the
   build resolvers. Defaults to false.
 - `sbt.repository.config`: specifies the path to the files that
   contains repositories definition. Defaults to
   `${sbt.boot.directory}/repositories`.

Notes for sbt/sbt#2564 & sbt/sbt#2576
2016-04-27 10:14:47 +02:00
Dan Sanduleac 01030a197a Add IvyRepoSpec which tests that source artifacts (in this case, with type=src, though in the same "compile" configuration) are resolved correctly when using IvyActions.updateClassifiers, and NOT resolved when using the normal IvyActions.updateEither. 2016-02-10 14:44:49 +00:00
Dan Sanduleac fcd52ee283 Expose the default UpdateConfiguration in BaseIvyConfiguration 2016-02-10 13:21:22 +00:00
Dan Sanduleac 31440bb147 Fix BaseIvySpeficiation's init of UpdateConfiguration with a sensible default ArtifactTypeFilter 2016-02-10 13:21:22 +00:00
Dale Wijnand f87eabdc98 FPORT: Make Make JCenter opt in
Forward-port of sbt/sbt#2335.
2016-01-16 15:44:55 +00:00
Martin Duhem 4831da8f4b Don't warn on inconsistent versions in different configurations
(This is a port of sbt/sbt#2258)

sbt was reporting warning abouts inconsistent versions of dependencies
even if these dependencies didn't have the same configuration (as in
`provided` vs `compile`).

This commit fixes this problem by comparing the dependencies by
organization, artifact name and configuration.
2015-11-11 15:12:05 +01:00
Martin Duhem 699dcfdee5 Update to latest sbt-houserules, formatting 2015-09-16 14:57:00 +02:00
Martin Duhem d00b7d8b61 Fix more warnings
Undeprecated `CustomPomParser` because it looks like nothing has
replaced it yet.

Removed usage of trait `scala.NotNull`, because it has been deprecated
as of Scala 2.11 and its support has never been implemented in scalac.
2015-09-10 16:10:51 +02:00
Martin Duhem 6822671f01 Add recommended compiler flags, fix warnings
Remove `JavaNet1Repository` which was deprecated.
2015-09-10 16:08:59 +02:00
Eugene Yokota 1232a01037 Put things into sbt.librarymanagement package 2015-09-07 04:33:45 -04:00
Eugene Yokota c65c5016b0 bump to up Util 0.1.0-M3 2015-09-07 02:59:23 -04:00
Eugene Yokota a30bcdbb37 Fix test 2015-09-05 05:53:15 -04:00
Eugene Yokota dbf9dc7450 bump to util 0.1.0-M2 and migrated to scalatest 2015-09-05 05:32:07 -04:00
Eugene Yokota 277c754e36 Merge #1 2015-09-02 03:03:20 -04:00
Eugene Yokota 319054fa32 Add build.sbt 2015-08-19 03:56:08 -04:00