Commit Graph

17940 Commits

Author SHA1 Message Date
Eugene Yokota ba398b5b9c Update dependencies 2016-05-04 23:13:28 -04:00
Eugene Yokota d304a95b24 Bump dependencies 2016-05-04 22:49:03 -04:00
Eugene Yokota daaa45f494 0.1.0-M12 2016-05-04 16:28:17 -04:00
Eugene Yokota 9c49a0ed9f Update dependencies 2016-05-04 16:27:29 -04:00
eugene yokota f8b25801e4 Merge pull request #2586 from eed3si9n/wip/backwardcompat
[sbt 1.0] We shouldn't cross publish as sbt_2.11 for backward compatibility
2016-05-04 11:01:03 -04:00
Martin Duhem c70c9989e5 Upgrade to latest zinc 2016-05-04 16:44:31 +02:00
Martin Duhem 893267785f Update to util 0.1.0-M11 2016-05-04 12:29:01 +02:00
Eugene Yokota e3d2af9e40 We shouldn't cross publish sbt for backward compatibility
By keeping sbt artifact to be called sbt, the user can try by just
changing the build properties.
2016-05-04 00:09:02 -04:00
Eugene Yokota 5a60c0eea7 0.1.0-M11 2016-05-03 17:09:22 -04:00
eugene yokota 0da2f30ee8 Merge pull request #41 from eed3si9n/wip/2469
FPORT: Completion for build-level keys
2016-05-03 11:47:29 -04:00
Guillaume Martres b8e490fbfe CONTRIBUTING.md: Fix error in scripted test command 2016-05-02 07:54:49 -04:00
eugene yokota dc6fbaff8a Merge pull request #2582 from eed3si9n/wip/sbinary
Remove external dependencies
2016-05-02 06:10:08 -04:00
eugene yokota 93418589b7 Merge pull request #40 from eed3si9n/wip/sbinary
Bump to sbinary 0.4.3
2016-05-02 05:53:23 -04:00
Martin Duhem 605beef7d3 Address problems reported by Codacy 2016-05-02 05:51:01 -04:00
Martin Duhem 1f45027b3a Completion for build-level keys
sbt's shell provided completion only for keys that were relative to a
defined project, but didn't provide completion for keys that belong to
the build definition only.

This commit fixes this issue by defining a new kind of `Parser` (from
which completions are generated) which runs its input simultaneously on
distinct parsers. We now define a parser for project-level keys and
another parser for build-level keys. These two parsers are eventually
combined, and we get the completions of both parsers.

Fixes sbt/sbt#2460
2016-05-02 05:50:28 -04:00
Eugene Yokota 0acf05626a Remove external dependencies 2016-05-02 04:17:22 -04:00
eugene yokota 6703c98f73 Merge pull request #2581 from eed3si9n/wip/forward_porting
FPORT: Various ports
2016-05-02 04:03:08 -04:00
Eugene Yokota 30ee653e82 Bump to sbinary 0.4.3
sbinary 0.4.3 is available from Maven Central
2016-05-02 04:00:57 -04:00
Dale Wijnand cc76d9ccd8 Merge pull request #39 from eed3si9n/wip/jline
FPORT: Workaround for Jline regression
2016-05-02 08:51:20 +01:00
eugene yokota d49b6fd420 Fixes #2480. Workaround for Jline regression (#2570)
Workaround jline/jline2#205
2016-05-02 03:27:38 -04:00
Eugene Yokota 89a17c79d6 Adjust to changes 2016-05-02 01:37:16 -04:00
Eugene Yokota ab43ec51d8 Adds a scripted test that tests repo override 2016-05-01 03:31:18 -04:00
Eugene Yokota 296758e159 Fix #2519. Fixes Maven Central getting included even with repo override 2016-05-01 03:19:34 -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
Eugene Yokota e3a06b72c0 Use 0.13.11 2016-05-01 03:06:26 -04:00
Eugene Yokota 78ea2932a4 Fixes #2427 inter-project dependency interference with sbt-web
sbt-web uses exportedProducts key as an extension point.
This removes exportedProductsAlways from 0.13.10-RC1,
and uses exportedProducts instead.
2016-05-01 02:59:06 -04:00
Eugene Yokota 447e2f7f8c Inter-project dependency tracking. Fixes #2266
Adds `trackInternalDependencies` and `exportToInternal` settings. These
can be used to control whether to trigger compilation of a dependent
subprojects when you call `compile`. Both keys will take one of three
values: `TrackLevel.NoTracking`, `TrackLevel.TrackIfMissing`, and
`TrackLevel.TrackAlways`. By default they are both set to
`TrackLevel.TrackAlways`.

When `trackInternalDependencies` is set to `TrackLevel.TrackIfMissing`,
sbt will no longer try to compile internal (inter-project) dependencies
automatically, unless there are no `*.class` files (or JAR file when
`exportJars` is `true`) in the output directory. When the setting is
set to `TrackLevel.NoTracking`, the compilation of internal
dependencies will be skipped. Note that the classpath will still be
appended, and dependency graph will still show them as dependencies.
The motivation is to save the I/O overhead of checking for the changes
on a build with many subprojects during development. Here's how to set
all subprojects to `TrackIfMissing`.

    lazy val root = (project in file(".")).
      aggregate(....).
      settings(
        inThisBuild(Seq(
          trackInternalDependencies := TrackLevel.TrackIfMissing,
          exportJars := true
        ))
      )

The `exportToInternal` setting allows the dependee subprojects to opt
out of the internal tracking, which might be useful if you want to
track most subprojects except for a few. The intersection of the
`trackInternalDependencies` and `exportToInternal` settings will be
used to determine the actual track level. Here's an example to opt-out
one project:

    lazy val dontTrackMe = (project in file("dontTrackMe")).
      settings(
        exportToInternal := TrackLevel.NoTracking
      )
2016-05-01 02:57:03 -04:00
Martin Duhem b086360046 Update bridge retrieval in `consoleProject`
Fixes sbt/sbt#2428
2016-05-01 02:49:11 -04:00
Eugene Yokota faf0683a7a 0.13.11 notes 2016-05-01 01:26:18 -04:00
eugene yokota 3351873a22 Merge pull request #2578 from xuwei-k/fix-2552
exclude directories from unmanagedSources
2016-04-30 13:44:56 -04:00
xuwei-k a6e31a0dc7 exclude directories from unmanagedSources
fix #2552
2016-04-30 11:13:02 +09:00
eugene yokota 2590f2d3d1 Merge pull request #2577 from eed3si9n/wip/bumpscala
[sbt 1.0] Bump to Scala 2.11.8
2016-04-29 17:20:30 -04:00
Eugene Yokota e4ee409cd5 Some changes due to cross publishing 2016-04-29 16:18:40 -04:00
Eugene Yokota 9e10f01363 Workaround for XML literal in build.sbt 2016-04-29 16:18:19 -04:00
Eugene Yokota bfd7930217 Update Travis CI configuration 2016-04-29 12:37:34 -04:00
Alexandre Archambault 4b0589dc90 Merge pull request #241 from alexarchambault/topic/develop
Various things
2016-04-29 12:26:33 +02:00
Eugene Yokota 0df316b34e Configure launchconfig to 2.11 2016-04-29 04:39:49 -04:00
Eugene Yokota de4fef8a09 Move sbt-maven-resolver out of this repository 2016-04-29 04:08:09 -04:00
Eugene Yokota 3f08158bb6 Bump Scala version to 2.11.8 2016-04-29 04:00:50 -04:00
eugene yokota b285cf114d Merge pull request #2575 from eed3si9n/wip/remove_plugin
[sbt 1.0] Rename sbt.Plugin => sbt.internal.OldPlugin
2016-04-29 03:54:00 -04:00
Eugene Yokota 9517ac3e79 Remove legacy plugin from the test 2016-04-29 02:44:21 -04:00
Eugene Yokota fddbf77877 Fix tests 2016-04-29 02:12:35 -04:00
Alexandre Archambault f24a71f2fc
Add missing Ivy attributes in dependencies of published artifacts
Fixes https://github.com/alexarchambault/coursier/issues/237
2016-04-28 23:17:11 +02:00
Alexandre Archambault 869d57c2f4
Tidying 2016-04-28 23:17:07 +02:00
Alexandre Archambault bf919d4fc1
Nasty bug
Occurring randomly :-| - hard to unit test...
2016-04-28 21:19:41 +02:00
Alexandre Archambault 5b1165b79e
Add notes about maven model 2016-04-28 21:19:37 +02: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
Alexandre Archambault 9072dacb0e Fix message 2016-04-27 01:12:33 +02:00