Commit Graph

1542 Commits

Author SHA1 Message Date
Grzegorz Kossakowski e8c5ff0ffe Remove use of `DefinesClass` in Load.scala
It turns out that `DefinesClass` was a dead data: it was passed around
but not used anywhere.
2016-06-26 03:49:55 +02:00
Dale Wijnand 01a7a00915 Remove old sbt parser 2016-06-21 13:15:10 +01:00
Dale Wijnand a0193d28ea Cleanup mainProj 2016-06-21 13:15:10 +01:00
Dale Wijnand ffafdc2e03 Remove OldPlugin 2016-06-21 08:09:30 +01:00
Dale Wijnand bf8c5d2135 Drop use of AttributeKey#rawLabel 2016-06-21 08:09:30 +01:00
Miles Sabin 1e9bb93285 Override scala organization and version transitively at the Ivy level 2016-06-05 09:46:00 +01:00
Pedro Larroy f5e8c8736f Fix typo: paralleism -> parallelism 2016-05-26 07:38:27 +00:00
James Roper e21c871d71 Replaced cross building support with sbt-doge 2016-05-17 09:49:16 +10:00
ekrich d383c2f306 Add Windows script support and native file extensions on Unix platforms
When running a sbt script, this change lets the user on UNIX and
Windows platforms to use native file extensions like none/.sh or
.bat/.cmd. The code copies the file to the sbt boot/hash/src_managed
directory with a .scala extension.
2016-05-13 12:01:14 -07:00
Eugene Yokota d437e8299e Typo fix 2016-05-07 20:31:19 -04:00
Eugene Yokota 420679df10 Address Codacy issues 2016-05-07 15:46:22 -04:00
Eugene Yokota 0cc9488632 Bring BuildStructure and others into internal 2016-05-06 19:21:13 -04:00
Eugene Yokota ce3926fbed Bring EvaluateConfigurations and DslEntry to internal 2016-05-06 17:32:26 -04:00
Eugene Yokota ee272d780e Reorganize directory structure 2016-05-06 16:01:49 -04:00
eugene yokota 6a9ced8eb6 Merge pull request #2589 from eed3si9n/wip/bumptozinc
[sbt 1.0] Bumping up to Zinc 1.0.0-M1
2016-05-06 05:40:58 -04:00
Eugene Yokota 60fa2b842a Renamed per review 2016-05-06 01:41:17 -04:00
Eugene Yokota f8ef449789 Fix test quick 2016-05-06 01:30:35 -04:00
Eugene Yokota 738e8fb2f3 Adjust discovery code to new Zinc 2016-05-05 16:11:57 -04:00
Eugene Yokota fd7c162ea8 Bumping up dependencies 2016-05-05 14:38:24 -04:00
Martin Duhem c70c9989e5 Upgrade to latest zinc 2016-05-04 16:44:31 +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 89a17c79d6 Adjust to changes 2016-05-02 01:37:16 -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 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
xuwei-k a6e31a0dc7 exclude directories from unmanagedSources
fix #2552
2016-04-30 11:13:02 +09: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 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 fddbf77877 Fix tests 2016-04-29 02:12:35 -04:00
eugene yokota d5fbe99bdd Merge pull request #2543 from eed3si9n/wip/project_dsl
[sbt 1.0] Reduce sbt.Project(...) params and make settings(...) lazy
2016-04-25 10:35:39 -04:00
Eugene Yokota f6ff1f916c Rename sbt.Plugin => sbt.internal.OldPlugin 2016-04-25 05:09:39 -04:00
Eugene Yokota a20da88a45 Reduce parameters from sbt.Project.apply 2016-04-25 04:26:30 -04:00
Dale Wijnand 60bc28829b Add Append & Remove instances for Option 2016-03-30 22:13:19 +01:00
Dale Wijnand f6c5be06b3 Drop sealed on Remove.Sequence 2016-03-30 22:13:19 +01:00
Eugene Yokota e57215e240 Fix test 2016-03-29 13:11:42 -04:00
Eugene Yokota d01f8d3c1b Port project/extra 2016-03-29 01:54:58 -04:00
Eugene Yokota 036e57c114 sbt.Build => sbt.internal.BuildDef
sbt.Load => sbt.internal.Load
2016-03-28 11:52:12 -04:00
Dan Sanduleac 6111156344 Fix CacheIvy as inclusions and exclusions were flipped :( 2016-03-07 13:45:17 +00:00
Dan Sanduleac 16f9ddba08 Add test for ModuleID format 2016-03-07 13:44:48 +00:00
Dan Sanduleac 3910d4d87a ModuleID's format should include the branch! otherwise we lose it... 2016-03-07 13:33:03 +00:00
Eugene Yokota e270d2bec1 Adjust to code reorganization. 2016-02-26 17:48:33 -05:00
Eugene Yokota 4d58714aa7 Adds CompatibilityWarningOptions. Fixes #2347
This addresses 0.13.10 regression, which currently warns users about
Maven incompatibility on a private configuration. This adds a config
class so the build user can control the level of the warning as well as
the target configuration to be monitored.
By default, we are only going to look at `Compile` and `Runtime`.
2016-02-26 17:46:12 -05:00
Eugene Yokota c1760fdc3c Move intransitive warning to update. Ref #2127 2016-02-26 17:40:07 -05:00
eugene yokota bdded0898d Merge pull request #2393 from dwijnand/fport/make-sbt-dotty-aware
FPORT: Make sbt aware of Dotty
2016-02-26 17:29:27 -05:00
Eugene Yokota b1b7430d9c Fixes #2464. Actually reorganize appResolvers
Fixes #2464 and Fixes #2465
appResolvers is a set of resolvers specified in the launcher
configuration.
This list fluctuates depending on the version of sbt, and sbt 0.13.10
meant to stabilize it by weeding out JCenter even when it includes it,
which failed when I applied the filter on the wrong list. This should
correct it.
2016-02-25 23:09:18 -05:00
Eugene Yokota cd373c99ad Add useJCenter setting, which is set to false. Fixes #2217
Adds a new setting `useJCenter`, which is set to `false` by default.
When set to `true`, JCenter will be placed as the first external
resolver to find library dependencies.

The implementation of `externalResolvers` is changed to incorporate the
setting by calling `Resolver.reorganizeAppResolvers`. These changes
were required because `externalResolvers` uses whatever that's in the
launchconfig, which the build user may not upgrade.
2016-02-25 23:02:16 -05:00
Martin Duhem 20d0c41473 Update to latest util, incrementalcompiler and librarymanagement 2016-02-24 16:54:03 +01:00
Dan Sanduleac abb53d4cb2 Fix for weird bug where sbt.librarymanagement's package object somehow conflicts with sbt.Keys.. Thanks Scala 2016-02-23 12:02:11 +00:00
Dan Sanduleac 978f2304e5 Stop deducing confs from classifier when delivering 2016-02-09 15:13:10 +00:00
Dan Sanduleac 63d657e9c0 [1/2] Add {source,doc}ArtifactTypes settings, use them in update* tasks in conjunction with ArtifactTypeFilter 2016-02-09 15:13:10 +00:00
Dan Sanduleac f11755e181 ModuleID + inclusions 2016-02-09 11:48:12 +00:00
Dan Sanduleac 7d2054f3ae ExclusionRule -> InclExclRule 2016-02-09 11:46:16 +00:00
Tim Harper 2eda2ebd46 bugfix - apply autoImports for global plugins at global configuration stage
Previously, the autoimports for globally defined plugins were not
imported for global configuration files, although they were imported for
project configuration files.

This patch causes an additional plugin discovery phase to happen during
global config evaluation, so that auto-plugins can be detected and their
imports subsequently included.
2016-01-18 21:43:32 -07:00
Guillaume Martres a05218f5ac Make sbt aware of Dotty
This small set of changes, together with the compiler-bridge I wrote
(https://github.com/smarter/dotty-bridge) enables us to compile code
using Dotty in sbt, see https://github.com/smarter/dotty-example-project
for an example.

Partial forward port of #2344.
2016-01-17 16:37:22 +00:00
Eugene Yokota 6c1b054249 Adds bootIvyConfiguration to grab compiler bridge source. Fixes #2336
Forward-port of #2337.

As described in #2336, I noticed that when using 0.13 nightly from
Bintray, sbt was unable to locate the compiler source.
Since `updateSbtClassifiers` is already set up to download sbt's own
sources, the `ivyConfiguration` should be reused. However, `compilers`
is a derived task, which is unable to depend on a scoped key.
To workaround this I had to create a new key called
`bootIvyConfiguration`. This should now use the metabuild's resolvers
to download the compiler bridge source.
2016-01-16 16:11:51 +00:00
Dale Wijnand c5949268ef Drop sealed from the typeclasses in Append
Forward port of #2322
2016-01-08 16:45:06 +01:00
eugene yokota a9d80cf38c Merge pull request #2281 from eamelink/bugfix-1982
Fix search result highlighting on Windows
2015-11-27 15:36:50 -05:00
xuwei-k 84e8f20080 fix typo 2015-11-25 20:01:22 +09:00
Erik Bakker 995ccf85a6 Fix search result highlighting on Windows
Use only ANSI color codes that are supported by Windows
2015-11-20 22:08:03 +01:00
Jesse Kinkead 0ecc2543ec Always export apiURL even if autoAPIMappings is false. 2015-11-04 10:51:54 -08:00
Eugene Yokota f14692f0b1 changes due to bumping up librarymangement to 0.1.0-M4 2015-10-02 00:25:45 -04:00
Eugene Yokota 814ceeab79 librarymanagement 0.1.0-M3 to use internal syntax 2015-10-01 23:28:27 -04:00
Eugene Yokota 9eb718ae45 Fixes actions/depends-on 2015-10-01 01:57:02 -04:00
Martin Duhem 72edbfa177 Create `object Import` for source compat 2015-09-29 19:16:45 -04:00
Eugene Yokota cda5ff84c7 Use the new Doc object from incrementalcompiler 2015-09-28 22:56:34 -04:00
Martin Duhem a2abb6eeb6 Update to latest version of incremental, fix imports 2015-09-16 10:16:03 +02:00
Eugene Yokota ba7ffa5d4d Fix compiler bridge name 2015-09-15 03:06:35 -04:00
Eugene Yokota bb8133eaba use incremental compiler version instead of sbt version 2015-09-14 23:43:32 -04:00
Eugene Yokota 21a027c487 Fix Compiler.compilers 2015-09-14 21:59:36 -04:00
Eugene Yokota 076ccd7b90 Merge 2015-09-14 10:54:22 -04:00
Martin Duhem c981abd295 Fix all imports 2015-09-14 14:28:09 +02:00
eugene yokota 57321bf6bc Merge pull request #2192 from DavidPerezIngeniero/0.13
More robustness when using the tasks and settings command
2015-09-10 21:14:57 -04:00
Martin Duhem 92ea782d94 Fix deprecation messages 2015-09-04 12:25:59 +02:00
Martin Duhem 1c4a900ff5 Retrieve compiler bridge sources in temp directory
Note that they won't be downloaded again, because the component compiler
will look for a previously-compiled version of the compiler bridge
before trying to fetch the sources again. If they've already been
downlaoded, then they have been compiled and a compiled version of the
compiler bridge already exists.
2015-09-04 12:00:44 +02:00
Martin Duhem dcad8a5527 Specify the compiler bridge module in a setting
In order to restore reproducibility of builds, we no longer cascade over
the possibly available versions of the compiler bridge sources (a
specific version of the bridge sources may not be available one day, but
exist on the next day), but rather let the build definition configure
which module to use.

Fixes sbt/sbt#2196
2015-09-04 11:17:27 +02:00
David Perez 1e2617a807 More robustness when using the tasks and settings command 2015-09-01 14:16:41 +02:00
Martin Duhem e31a9ba456 Download compiler interface sources in boot directory 2015-08-26 10:33:11 +02:00
Dale Wijnand 13c6729507 Extract Def.settings from Project#settings.
This allows for the same functionality that using SettingsDefinition in
Project#settings allows (specifying either bare Setting[_] or a Seq[Setting[_]])
to be available outside of the settings for a project, for instance when
defining a val.

In short, it allows:

    val modelSettings = Def.settings(
      sharedSettings,
      libraryDependencies += foo
    )
2015-08-20 18:45:41 +01:00
Pierre DAL-PRA 8f1fb2d232 Fix additional warnings 2015-08-07 00:23:14 +02:00
Pierre DAL-PRA 54d54b9f4f Replace procedure syntax by explicit Unit annotation 2015-08-04 10:07:38 +02:00
Pierre DAL-PRA f0bd9001e6 Remove redundant collection conversions 2015-08-01 12:05:35 +02:00
Pierre DAL-PRA b9171e59ad Simplify operations on collections 2015-08-01 02:25:17 +02:00
Josh Suereth 4464b13acd Remove reference to dead servers. 2015-07-24 13:58:39 -04:00
Josh Suereth d0e918d6d3 Merge pull request #2114 from pdalpra/add-append.sequence-list
Add an Append.Sequence instance for List
2015-07-18 07:05:59 -04:00
Pierre DAL-PRA 10c71b3f8a Add an Append.Sequence instance for List, fixes #2107 2015-07-18 10:51:31 +02:00
Pierre DAL-PRA f944ec98d2 Log javaOptions/fork interactions:
- When forking, log the javaOptions that are used
- When javaOptions are defined but fork := false, warn that javaOptions
	will be ignored
2015-07-18 00:37:35 +02:00
eugene yokota 5824ef6d7f Merge pull request #2106 from Duhemm/interface-specific-sources-clean
Find most specific version of compiler interface sources
2015-07-17 10:25:16 -04:00
Pierre DAL-PRA 13b37cc987 Fix several warnings 2015-07-17 09:17:42 +02:00
Martin Duhem cbd5cd5875 Fix inlined method 2015-07-16 15:34:04 +02:00
Martin Duhem 90a8423d8e Find most specific version of compiler interface sources
This commit introduces a mechanism that allows sbt to find the most
specific version of the compiler interface sources that exists using
Ivy.

For instance, when asked for a compiler interface for Scala 2.11.8-M2,
sbt will look for sources for:

 - 2.11.8-M2 ;
 - 2.11.8 ;
 - 2.11 ;
 - the default sources.

This commit also modifies the build definition by removing the
precompiled projects and configuring the compiler-interface project so
that it publishes its source artifacts in a Maven-friendly format.
2015-07-16 11:18:48 +02:00
Josh Suereth d2fdfb81a0 Merge pull request #2091 from Duhemm/hide-stacktrace
Don't show the stack trace on compilation error in build definition
2015-07-09 14:26:03 -04:00
Pierre DAL-PRA cf72c7cc0e Fix a few typos in keys descriptions 2015-07-09 17:00:48 +02:00
Martin Duhem 6c123f22ba Hide stacktrace on compilation error in build definition 2015-07-09 11:40:02 +02:00
Jonas Fonseca 54618ad55a Fix typos in annotations referring to EvaluateTaskConfig 2015-07-01 09:22:15 -04:00
Eugene Yokota 81f175ddbf Fixes #1666 2015-06-20 00:51:42 -04:00
James Roper 3625ce5943 Added Extracted.runInputTask
This provides a convenience function for running an input task from the
extracted state. This is particularly useful for commands, release steps
etc that may want to run input tasks, like scripted.
2015-06-10 16:09:09 +02:00
Andrew Johnson 7c0f455c79 Use FiniteDuration to represent time rather than a long 2015-05-13 14:18:27 -04:00
Andrew Johnson 4ec092617f Add forceUpdateMs 2015-05-13 08:02:48 -04:00