Commit Graph

1240 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 52c1826366 Merge pull request #54 from dwijnand/reunite
Add props to define source dependencies on io & util
2016-11-15 17:16:06 +00:00
Dale Wijnand 8c4a969c9a
Add props to define source dependencies on io & util
Use either -Dsbtio.path / -Dsbtutil.path on the command line
or sbtio.path= / sbtutil.path= in project/local.properties
2016-11-02 14:27:12 +00:00
cunei bc7ed0d784 Fix to bintray repo (#53) 2016-10-07 13:36:32 -05:00
cunei cc94687716 Merge pull request #52 from cunei/1.0-toni1
Change bintray repo, see sbt #1696
2016-10-07 12:05:13 -05:00
eugene yokota 7c10beab42 Merge pull request #50 from milessabin/topic/scala-artifacts
Configurable explicit list of artifacts for Scala binary version check
2016-09-30 11:15:28 -04:00
James Roper 3cb3d8d221 Log resolving messages at debug level
For great justice.
2016-09-29 19:38:22 +10:00
Antonio Cunei a1f9b5ed64 Change bintray repo, see sbt #1696 2016-09-28 11:30:10 +02:00
Miles Sabin cee81e3bb0 Configurable explicit list of artifacts for Scala binary version check 2016-08-22 11:00:09 +01:00
Dale Wijnand 138787f55e Add Resolver.sbtIvyRepo (#49)
.. deprecate & rename SbtPluginRepositoryRoot to SbtRepositoryRoot.
2016-07-15 07:57:04 +01:00
eugene yokota 19e1cc9d2f Merge pull request #48 from dwijnand/CrossVersion-and-ModuleId-equality
Make CrossVersion & ModuleId more commonly equal
2016-07-07 22:29:02 -04: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
eugene yokota e7ca095303 Merge pull request #47 from dwijnand/cleanups
Cleanups
2016-06-21 23:20:09 +02:00
eugene yokota 797362e06c Merge pull request #46 from dwijnand/ivy-paths-to-string
Give IvyPaths a nicer toString
2016-06-21 23:19:40 +02:00
Dale Wijnand 9706577c67 Drop Scala 2.10, add openjdk7 2016-06-21 17:51:16 +01:00
Dale Wijnand 931b7d7af5 Remove unused and unused imports
Note that the pickler/sbt-serlization macros are bringing in unused imports..
2016-06-21 16:06:40 +01:00
Dale Wijnand 9dd4014553 Give IvyPaths a nicer toString 2016-06-21 14:13:15 +01:00
Dale Wijnand 9bf0da7bec Remove scripted test, forward-port fallout 2016-06-17 09:04:49 +02:00
Dale Wijnand 7db91141e1 Remove re-setting publishArtifact in Test, defined in commonSettings
> show root/test:publishArtifact
    [info] lm/test:publishArtifact
    [info] 	false
    [info] root/test:publishArtifact
    [info] 	false
    > git diff
    [info] diff --git a/build.sbt b/build.sbt
    [info] index fed7303..6f1fb03 100644
    [info] --- a/build.sbt
    [info] +++ b/build.sbt
    [info] @@ -37,7 +37,6 @@ lazy val root = (project in file(".")).
    [info]      publish := {},
    [info]      publishLocal := {},
    [info]      publishArtifact in Compile := false,
    [info] -    publishArtifact in Test := false,
    [info]      publishArtifact := false,
    [info]      customCommands
    [info]    )
    [info] @@ -50,7 +49,6 @@ lazy val lm = (project in file("librarymanagement")).
    [info]        utilLogging, sbtIO, utilTesting % Test,
    [info]        utilCollection, utilCompletion, ivy, jsch, sbtSerialization, scalaReflect.value, launcherInterface),
    [info]      resourceGenerators in Compile <+= (version, resourceManaged, streams, compile in Compile) map Util.generateVersionFile,
    [info] -    publishArtifact in Test := false,
    [info]      binaryIssueFilters ++= Seq()
    [info]    )
    [info]
    RELOAD > reload
    [info] Loading global plugins from /Users/dnw/.dotfiles/.sbt/0.13/plugins
    [info] Loading project definition from /d/sbt-library-management/project
    [info] Set current project to LM Root (in build file:/d/sbt-library-management/)
    > show root/test:publishArtifact
    [info] lm/test:publishArtifact
    [info] 	false
    [info] root/test:publishArtifact
    [info] 	false
2016-06-17 09:03:23 +02:00
Dale Wijnand 76a1f12b10 Remove scalacOptions that are already defined in sbt-houserules
> show lm/scalacOptions
    [info] List(-encoding, utf8, -deprecation, -feature, -unchecked, -Xlint, -language:higherKinds,
    -language:implicitConversions, -Xfuture, -Yinline-warnings, -Yno-adapted-args, -Ywarn-dead-code,
    -Ywarn-numeric-widen, -Ywarn-value-discard, -encoding, utf8, -deprecation, -feature, -unchecked, -Xlint,
    -language:higherKinds, -language:implicitConversions, -Xfuture, -Yinline-warnings, -Xfatal-warnings,
    -Yno-adapted-args, -Ywarn-dead-code, -Ywarn-numeric-widen, -Ywarn-value-discard)
    [success] Total time: 0 s, completed 17-Jun-2016 09:00:40
    > git diff
    [info] diff --git a/build.sbt b/build.sbt
    [info] index 254bb64..fed7303 100644
    [info] --- a/build.sbt
    [info] +++ b/build.sbt
    [info] @@ -16,21 +16,7 @@ def commonSettings: Seq[Setting[_]] = Seq(
    [info]    incOptions := incOptions.value.withNameHashing(true),
    [info]    crossScalaVersions := Seq(scala210, scala211),
    [info]    resolvers += Resolver.sonatypeRepo("public"),
    [info] -  scalacOptions ++= Seq(
    [info] -    "-encoding", "utf8",
    [info] -    "-deprecation",
    [info] -    "-feature",
    [info] -    "-unchecked",
    [info] -    "-Xlint",
    [info] -    "-language:higherKinds",
    [info] -    "-language:implicitConversions",
    [info] -    "-Xfuture",
    [info] -    "-Yinline-warnings",
    [info] -    "-Xfatal-warnings",
    [info] -    "-Yno-adapted-args",
    [info] -    "-Ywarn-dead-code",
    [info] -    "-Ywarn-numeric-widen",
    [info] -    "-Ywarn-value-discard"),
    [info] +  scalacOptions += "-Xfatal-warnings",
    [info]    previousArtifact := None, // Some(organization.value %% moduleName.value % "1.0.0"),
    [info]    publishArtifact in Compile := true,
    [info]    publishArtifact in Test := false
    RELOAD > reload
    [info] Loading global plugins from /Users/dnw/.dotfiles/.sbt/0.13/plugins
    [info] Loading project definition from /d/sbt-library-management/project
    [info] Set current project to LM Root (in build file:/d/sbt-library-management/)
    > show lm/scalacOptions
    [info] List(-encoding, utf8, -deprecation, -feature, -unchecked, -Xlint, -language:higherKinds,
    -language:implicitConversions, -Xfuture, -Yinline-warnings, -Yno-adapted-args, -Ywarn-dead-code,
    -Ywarn-numeric-widen, -Ywarn-value-discard, -Xfatal-warnings)
2016-06-17 09:01:32 +02:00
eugene yokota 65a3162b43 Merge pull request #43 from Duhemm/fport/workaround-2620
FPORT: Fix for sbt/sbt#2435 and Workaround for sbt/sbt#2620
2016-06-04 12:43:34 -04:00
eugene yokota d2e6133704 Merge pull request #44 from milessabin/topic/scala-override
Override scala organization and version transitively at the Ivy level
2016-06-03 13:15:51 -04:00
Miles Sabin 52867b8c95 Override scala organization and version transitively at the Ivy level 2016-06-02 22:15:06 +01:00
Martin Duhem 1756d73724 Workaround for sbt/sbt#2620 2016-05-24 17:51:24 +02:00
Martin Duhem ba274e05ac Re-enable caching and updating minigraph in cached resolution 2016-05-24 17:14:00 +02:00
Martin Duhem 92ca28e25a Use configuration of evicted nodes with cached resolution
Consider a configuration where we have two projects, A and B.

A has a library dependency on "a" % "b" % "1.0.0" % "compile->runtime"
and "a" % "b" % "1.0.0" % "compile->runtime2"

B depends on project A, and has a library dependency on
"a" % "b" % "1.0.1" % "compile->runtime".

Note that project B depends on a more recent version of "a" % "b" than
project A, and that it depends ONLY on it's "runtime" configuration.

However, when compiling project B, we expect to have on the classpath
project A, and "a" % "b" % "1.0.1" % "compile->runtime" AND
"a" % "b" % "1.0.1" % "compile->runtime2" because it is part of the
compile configuration of project A.

This commit changes the cached resolution engine so that it behaves like
that, by first resolving dependencies on other project and then ensuring
that the dependent project specifies dependencies on the same
configurations.

Mark test dependency-management/cached-resolution-configurations as
passing.
2016-05-24 17:13:45 +02:00
eugene yokota e1068ef49d Merge pull request #41 from sbt/wip/testmixup
Don't depend on other projects' tests
2016-05-11 15:25:38 -04:00
Eugene Yokota 87b3ca04c0 Don't depend on other projects' tests 2016-05-11 14:12:10 -04:00
eugene yokota eaa30370dc Merge pull request #38 from sbt/wip/fixdependencies
Fix dependencies
2016-05-11 13:23:35 -04:00
Eugene Yokota 4abaec8622 Fix dependencies 2016-05-10 00:38:26 -04:00
eugene yokota 97a9a4efaf Merge pull request #37 from ddworak/fport/2499
FPORT: Fix a few typos
2016-05-08 13:28:32 -04:00
ddworak a70c79a731 fix typos 2016-05-08 12:53:19 +02:00
eugene yokota 77fd2203f9 Merge pull request #36 from Duhemm/fport/2500
FPORT: Fix sbt/sbt#2431
2016-05-06 12:43:09 -04:00
Martin Duhem 8e333984f2 Create default artifact for deps from POM files
Dependency descriptors that are created from POM files do not specify
their artifacts. In those cases, it is correct to create a default
artifact.
2016-05-06 07:10:42 +02:00
Martin Duhem bd082a562b Check that default artifact exists when trying to retrieve it.
When concatenating the artifacts coming from two modules, we sometimes
attempted to create a default artifact from the organization and name of
the module.

However, this may fail because a module a % b "1.0" may not have an
artifact named "b.jar" (see sbt/sbt#2431).

Fixes sbt/sbt#2431.
2016-05-06 07:08:33 +02:00
Eugene Yokota d304a95b24 Bump dependencies 2016-05-04 22:49:03 -04:00
eugene yokota 27bf18f7a3 Merge pull request #31 from JD557/fix-sorrting-typo
Fix small typo ("Sorrting" should be "Sorting")
2016-05-01 03:15:09 -04:00
eugene yokota 95cfb32fb8 Merge pull request #34 from Duhemm/fport/static-launcher
FPORT: Off the grid installation + repositories override
2016-05-01 03:14:44 -04:00
Martin Duhem ed0f2af66b Fix warning with Scala 2.11
We get a warning about the exhaustivity check, but the warning
disappears if we increase the maximum recursion depth.
2016-04-27 11:09:00 +02: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
João Costa 195d35c07d Fix typo ("Sorrting" should be "Sorting") 2016-03-23 11:34:33 +00:00
eugene yokota 66520bff35 Merge pull request #29 from dansanduleac/inlineConfigurationWithExcludes
Rename InlineConfigurationWithExcludes -> InlineConfiguration
2016-03-03 22:40:02 +01:00
Dan Sanduleac 19c7a85cd7 Rename InlineConfigurationWithExcludes -> InlineConfiguration 2016-02-24 12:02:23 +00:00
Dan Sanduleac 9e78b1cd9c Get rid of InlineConfiguration 2016-02-24 12:01:13 +00:00
eugene yokota 596354beae Merge pull request #28 from sbt/wip/merge-25
Merge "Handle source, docs artifacts correctly for Ivy"
2016-02-23 01:06:49 -05:00
Eugene Yokota 7edd4a954a Manually merged #25 2016-02-23 00:49:04 -05:00
eugene yokota 3d5dea5d4d Merge pull request #26 from oxbowlakes/branches
Add Ivy `branch` support to ModuleID
2016-02-23 00:36:14 -05:00
eugene yokota 62c12f16cd Merge pull request #24 from Duhemm/fport/inter-project-dependency-tracking
FPORT: Inter-project dependency tracking
2016-02-23 00:34:12 -05:00
eugene yokota 0b61e3c7b7 Merge pull request #22 from Duhemm/fport/adds-compatibilitywarningoptions
FPORT: Adds CompatibilityWarningOptions
2016-02-23 00:33:52 -05:00
eugene yokota aea1a76ce3 Merge pull request #27 from dwijnand/bump-sbt-houserules-for-mima
Bump sbt-houserules to add MiMa
2016-02-15 15:15:09 -05:00