Skip to content

Releases: sbt/sbt

v0.13.6

12 Sep 21:12
v0.13.6
Compare
Choose a tag to compare

Changes since 0.13.6-M1

Fixes with compatibility implications

  • Maven Central Repository, Java.net Maven 2 Repository, Typesafe Repository, and sbt Plugin repository now defaults to HTTPS. (See below)
  • ThisProject used to resolve to the root project in a build even when it's place in subproj/build.sbt. sbt 0.13.6 fixes it to resolve to the sub project. #1194/#1358 by @dansanduleac
  • Global plugins classpath used to be injected into every build. This will no longer be the case. #1347/#1352 by @dansanduleac
  • Fixes newer command in scripted. #1419 by @jroper
  • Name hashing is enabled by default. inc.Analysis.empty also defaults to the one compatible with name hashing. #1546 by @gkossakowski

Improvements

  • Derived settings can replace previously-defined but non-default settings. #1036 by @dansanduleac
  • Sorts setting key names in the inspect tree view. #1313 by @2m
  • Uses separate update caches when cross compiling scala. #1330 by @pvlugter
  • Ensures sequences in analysis files are read in order. #1346 by @benjyw
  • Enables tab completion for scripted task. #1383 by @xuwei-k
  • Allows project reference to to a branch of a local git repository. #1409 by @vn971
  • Triggered Execution is now aware of rename or move of files. #1401 by @xuwei-k
  • No longer updates classifiers of projectDependencies. #1366/#1367 by @dansanduleac
  • Selects the first test fingerprint for a test name for forked tests. #1450 by @pvlugter
  • Allows default auto plugins to be disabled. #1451 by @jsuereth
  • Allows keys defined inside build.sbt to be used from sbt shell. #1059/#1456
  • Updates internal Ivy instance to cache the results of dependency exclusion rules. #1476 by @eed3si9n
  • Adds Resolver.jcenterRepo and Resolver.bintrayRepo(owner, repo) to add Bintray easier. #1405 by @evgeny-goldin
  • AutoPlugins with no requirements enabled by allRequirements can now be disable dby the user. #1516 by @jsuereth

Bug fixes

  • Allows auto-generated projects to have overridden organization. #1315/#1378 by @jsuereth
  • Fixes auto plugins declared without package object. #1423 by @lpiepiora
  • Fixes plugin command. #1416/#1426 by @lpiepiora
  • Adds scala-jar to the list of jar artifacts recognized by CustomPomParser. #1400 by @dpratt
  • Fixes cross versioning to recognize version number with mutiple -tags. #1433 by @henrikengstrom
  • Works around "Not a simple type" breaking -Xfatal-warnings. #1477 by @puffnfresh
  • Fixes sLog usage in tandem with the set comamnd #1486 @jsuereth
  • Test suites with whitespace will have prettier filenames #1487 @jsuereth
  • sbt no longer crashes when run in root directory #1488 by @jsuereth
  • set no longer removes any ++ scala version setting. #856/#1489 by @jsuereth
  • Fixes Scope.parseScopedKey. #1384 by @eed3si9n
  • Fixes build.sbt errors causing ArrayIndexOutOfBoundsException due to invalid source in position. #1181 by @eed3si9n
  • Fixes http.proxyPassword showing up in launcher's update.log. #670 by @eed3si9n
  • Fixes config-classes leak in loading build files. #1524 by @jsuereth
  • Fixes name-conflicts in hashed settings class files. #1465 by @jsuereth
  • Fixes the pom conversion of dynamic revisions like 1.1+. #1275 by @eed3si9n
  • Fixes NullPointerError in tab completion by FileExamples. #1530 by @eed3si9n
  • Fixes metabuild downloading unused Scala 2.10.2. #1439 by @eed3si9n

HTTPS related changes

Thanks to Sonatype, HTTPS access to Maven Central Repository is available to public. This is now enabled by default, but if HTTP is required for some reason the following system properties can be used:

-Dsbt.repository.secure=false

Java.net Maven 2 repository, Typesafe repository, and sbt Plugin repository also defaults to HTTPS.

#1494 by @rtyley, #1536 by @benmccann, and #1541 by @eed3si9n.

enablePlugins/disablePlugins

sbt 0.13.6 now allows enablePlugins and disablePlugins to be written directly in build.sbt. #1213/#1312 by @jsuereth

Unresolved dependencies error

sbt 0.13.6 will try to reconstruct dependencies tree when it fails to resolve a managed dependency.
This is an approximation, but it should help you figure out where the problematic dependency is coming from. When possible sbt will display the source position next to the modules:

[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  ::          UNRESOLVED DEPENDENCIES         ::
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  :: foundrylogic.vpp#vpp;2.2.1: not found
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn] 
[warn]  Note: Unresolved dependencies path:
[warn]      foundrylogic.vpp:vpp:2.2.1
[warn]        +- org.apache.cayenne:cayenne-tools:3.0.2
[warn]        +- org.apache.cayenne.plugins:maven-cayenne-plugin:3.0.2 (/foo/some-test/build.sbt#L28)
[warn]        +- d:d_2.10:0.1-SNAPSHOT

#528/#1422/#1447 by @eed3si9n

Eviction warnings

sbt 0.13.6 displays eviction warnings when it resolves your project's managed dependencies via update task.
Currently the eviction warnings are categorized into three layers: scalaVersion eviction, direct evictions, and transitive evictions.
By default eviction warning on update task will display only scalaVersion evictin and direct evictions.

scalaVersion eviction warns you when scalaVersion is no longer effecitive. This happens when one of your dependency depends on a newer release of scala-library than your scalaVersion.
Direct evctions are evictions related to your direct dependencies. Warnings are displayed only when API incompatibility is suspected. For Java libraries, Semantic Versioning is used for guessing, and for Scala libraries Second Segment versioning (second segment bump makes API incompatible) is used.

To display all eviction warnings with caller information, run evicted task.

[warn] There may be incompatibilities among your library dependencies.
[warn] Here are some of the libraries that were evicted:
[warn]     * com.typesafe.akka:akka-actor_2.10:2.1.4 -> 2.3.4 (caller: com.typesafe.akka:akka-remote_2.10:2.3.4,
org.w3:banana-sesame_2.10:0.4, org.w3:banana-rdf_2.10:0.4)

#1200/#1467 by @eed3si9n

Latest SNAPSHOTs

sbt 0.13.6 adds a new setting key called updateOptions for customizing the details of managed dependency resolution with update task. One of its flags is called lastestSnapshots, which controls the behavior of the chained...

Read more

0.13.5 - Autoplugins

27 May 14:40
v0.13.5
Compare
Choose a tag to compare

This marks a preview release of sbt 1.0, with the addition of AutoPlguins a new mechanism to cleanup the user experience of sbt plugin ecosystem.

Commits and the issues they fixed since v0.13.2

Issue(s) Commit Message
1341 e95feccfca Fix pattern match on buildLoaders.
1329 664d83ed0f Back out autogc fix to be optionally enabled.
1314 2b621869fc Check for object autoImport in auto plugins. Fixes #1314
2adbe0e1e8 Fix for new location of MSI files.
1508c967a9 Fix native package location for bintray distribution.
447ab8d334 Created unit tests for ParserWithExamples and FixedSetExampleSource.
d00037263b Documented the DynamicExamples and FixedSetExamples classes.
143993fdc1 Implemented a file parser. Added SourceOfExamples for lazy example listing (espe
1267 f5dd022551 Separate location of analysis cache if we're cross compiling scala.
1223 e076bfa970 Automatically run GC/finalization after each task execution.
1272 37e57f7940 Use dedicated api for lastCompilationTime in build definition
f92206b785 Fixes issue with deadlocking server discovery on windows.
3632a998ca Fixing typos
1247 22b99a9a1c Autoplugin confgiurations must be injected first into project.
d34ca37c40 Bump ivy version to include exclusion performance fix.
6e72324b88 Bump to our own nightly of ivy 2.4.0 (RC1+).
1251 7fead66244 Pick the right overload in EvaluateTask.runTask
f1d61be125 DefaultOptions for resolvers should not resets existing values.
7179912387 DefaultOptions for resolvers should not resets existing values.
43c25beeed Fix infinite loop of death.
f42dee8090 Naming fixes to TaskCancellationStrategy to be clearer.
6e480fc2b6 Fix deprecated 'since' clauses to reflect our actual release versions.
1 2686acd993 Part #1 of cancel-task-hooks - Hooks EvaluateTask.
1237 1163 1237 a80966e394 Handle macros that have themselves as original tree
60a457d083 Ensure that if artifact is published, we overwrite default checksums.
641 641 1091 d8ee16c600 Roll back sbt/sbt@482f99 (aggressive deletion of cache). Fixes #1091.
c4f6217a70 Fix URITests to work under Windows
1142 1142 5a40641cc1 Classes that only inherit a macro don't have a macro
1217 5f7e68c7dd Auto plugin names are imported with or without autoImport. Fixes #1217
3f2f12f5bb Fix PluginsTest
1188 2c654b2d90 Unifies AutoPlugin and AutoImport. Fixes #1188
c7dc499fe4 Updated comments. Typo fix per @jozic
1196 910d39f3a9 fixes #1196
9f20f04e16 Allow end users to add Plugins, not just AutoPlugins
1176 7c15eb01f3 When fragmenting Defaults, we mixed back settings in the wrong order.
152e04bc05 Fix spelling issues in architecture document.
dc76a8feb3 Fixes missing tests from autoplugins feature.
1156 893794a8ba Fix overwrite default to true in deprecated method calls.
7413fbe9c0 Doc fix ups from review.
af25df1777 Fix @retronym's comments
1107 af7eca1080 Fix NPE in task macro accessing q"{...}".symbol.pos
1150 563415aa6a Fix task macro's handling of Symbol owners in <qual>.value
1155 dbb47b3ce8 Updates last and export commands to read from correct key.
a4b288f35b Revert "Fix task macro's handling of Symbol owners in <qual>.value"
1136 8cd44646b7 Fix #1136 - Ivy's + dependencies not converted to maven style syntax.
1150 3017bfcd07 Fix task macro's handling of Symbol owners in <qual>.value
0a8d844071 Fix merge conflicts in pulling doc fixes from 0.13.1 into 0.13 branch.
429 21da87c4e7 Fixes #429 - Add better error messages when credentials are not found.
0e337b8cbd Fix binary-plugin scripted test so it can run more than once.
2ee2576cb9 Fix auto-plugin test from removal of unary_! on Nature but not AutoPlugin.
4feb7d3dc8 Fix typos in AutoPlugin API docs.
1081 1071 1071 c7f435026f Include value of nameHashing flag in CompileSetup.
4a9981720a Remove work-arounds for Scala 2.11 problematic dependencies
4e073373da SI-8263 Avoid SOE in Symbol#logicallyEnclosingMember under Scala 2.11
9b4564f0cd SI-8262 Fix compilation with 2.11 due to shadowing of Range
4ab8074753 Fix formatting of inline code samples which are pluralized
8bfab5313e Fixed SessionSettings replacing existing setting
[ba4d57b](https...
Read more