From faf0683a7aaac74f2e4e4d83493f0583770f991b Mon Sep 17 00:00:00 2001 From: Eugene Yokota Date: Sun, 1 May 2016 01:26:18 -0400 Subject: [PATCH] 0.13.11 notes --- notes/0.13.10.markdown | 126 ----------- ...sbt-ivy-snapshots-to-launchconfig.markdown | 10 - notes/0.13.10/always-honor-api-url.markdown | 10 - notes/0.13.10/bump-scalaversion.md | 10 - notes/0.13.10/dotty-awareness.md | 16 -- ...op-sealed-from-Append-typeclasses.markdown | 10 - ...iler-name-hashing-private-members.markdown | 17 -- notes/0.13.10/fix-snapshots.md | 14 -- .../help-highlighting-windows.markdown | 11 - notes/0.13.10/make-JCenter-opt-in.markdown | 7 - ...-to-fetch-compiler-bridge-sources.markdown | 19 -- notes/0.13.11.markdown | 209 ++++++++++++++++++ 12 files changed, 209 insertions(+), 250 deletions(-) delete mode 100644 notes/0.13.10.markdown delete mode 100644 notes/0.13.10/add-sbt-ivy-snapshots-to-launchconfig.markdown delete mode 100644 notes/0.13.10/always-honor-api-url.markdown delete mode 100644 notes/0.13.10/bump-scalaversion.md delete mode 100644 notes/0.13.10/dotty-awareness.md delete mode 100644 notes/0.13.10/drop-sealed-from-Append-typeclasses.markdown delete mode 100644 notes/0.13.10/fix-inc-compiler-name-hashing-private-members.markdown delete mode 100644 notes/0.13.10/fix-snapshots.md delete mode 100644 notes/0.13.10/help-highlighting-windows.markdown delete mode 100644 notes/0.13.10/make-JCenter-opt-in.markdown delete mode 100644 notes/0.13.10/use-ivyConfiguration-in-updateSbtClassifiers-in-compilers-to-fetch-compiler-bridge-sources.markdown create mode 100644 notes/0.13.11.markdown diff --git a/notes/0.13.10.markdown b/notes/0.13.10.markdown deleted file mode 100644 index 7f1cf76b7..000000000 --- a/notes/0.13.10.markdown +++ /dev/null @@ -1,126 +0,0 @@ - - [@eed3si9n]: https://github.com/eed3si9n - [@jsuereth]: https://github.com/jsuereth - [@dwijnand]: http://github.com/dwijnand - [@Duhemm]: http://github.com/Duhemm - [@gkossakowski]: https://github.com/gkossakowski - [@adriaanm]: https://github.com/adriaanm - [@jrudolph]: https://github.com/jrudolph - [@stuhood]: https://github.com/stuhood - [@pdalpra]: https://github.com/pdalpra - [@fkorotkov]: http://github.com/fkorotkov - [@hgiddens]: https://github.com/hgiddens - [@DavidPerezIngeniero]: https://github.com/DavidPerezIngeniero - [@timcharper]: https://github.com/timcharper - [2302]: https://github.com/sbt/sbt/issues/2302 - [2303]: https://github.com/sbt/sbt/pull/2303 - [1967]: https://github.com/sbt/sbt/issues/1967 - [2085]: https://github.com/sbt/sbt/pull/2085 - [2071]: https://github.com/sbt/sbt/issues/2071 - [2091]: https://github.com/sbt/sbt/pull/2091 - [2092]: https://github.com/sbt/sbt/pull/2092 - [2095]: https://github.com/sbt/sbt/pull/2095 - [2094]: https://github.com/sbt/sbt/pull/2094 - [2112]: https://github.com/sbt/sbt/pull/2112 - [2108]: https://github.com/sbt/sbt/pull/2108 - [2106]: https://github.com/sbt/sbt/pull/2106 - [2041]: https://github.com/sbt/sbt/issues/2041 - [2087]: https://github.com/sbt/sbt/issues/2087 - [2103]: https://github.com/sbt/sbt/pull/2103 - [2107]: https://github.com/sbt/sbt/issues/2107 - [2114]: https://github.com/sbt/sbt/pull/2114 - [2117]: https://github.com/sbt/sbt/pull/2117 - [2109]: https://github.com/sbt/sbt/issues/2109 - [2127]: https://github.com/sbt/sbt/pull/2127 - [14]: https://github.com/sbt/ivy/pull/14 - [2118]: https://github.com/sbt/sbt/issues/2118 - [2137]: https://github.com/sbt/sbt/pull/2137 - [2139]: https://github.com/sbt/sbt/pull/2139 - [2142]: https://github.com/sbt/sbt/pull/2142 - [2155]: https://github.com/sbt/sbt/issues/2155 - [2160]: https://github.com/sbt/sbt/pull/2160 - [2158]: https://github.com/sbt/sbt/pull/2158 - [1681]: https://github.com/sbt/sbt/issues/1681 - [2173]: https://github.com/sbt/sbt/pull/2173 - [JLine2]: https://github.com/jline/jline2 - [2151]: https://github.com/sbt/sbt/pull/2151 - [1750]: https://github.com/sbt/sbt/issues/1750 - [17]: https://github.com/sbt/ivy/pull/17 - [2163]: https://github.com/sbt/sbt/pull/2163 - [18]: https://github.com/sbt/ivy/pull/18 - [2186]: https://github.com/sbt/sbt/pull/2186 - [2197]: https://github.com/sbt/sbt/pull/2197 - [2192]: https://github.com/sbt/sbt/pull/2192 - [2201]: https://github.com/sbt/sbt/pull/2201 - [2214]: https://github.com/sbt/sbt/pull/2214 - [1933]: https://github.com/sbt/sbt/issues/1933 - [2258]: https://github.com/sbt/sbt/pull/2258 - [2228]: https://github.com/sbt/sbt/issues/2228 - [2271]: https://github.com/sbt/sbt/pull/2271 - [2285]: https://github.com/sbt/sbt/pull/2285 - [2256]: https://github.com/sbt/sbt/issues/2256 - [2272]: https://github.com/sbt/sbt/pull/2272 - [1968]: https://github.com/sbt/sbt/issues/1968 - [2264]: https://github.com/sbt/sbt/issues/2264 - [2172]: https://github.com/sbt/sbt/pull/2172 - [2120]: https://github.com/sbt/sbt/issues/2120 - [2399]: https://github.com/sbt/sbt/pull/2399 - -### Fixes with compatibility implications - -- sbt will no longer pass `-J` options to the local Java compiler. [#1968][1968]/[#2272][2272] by [@Duhemm][@Duhemm] - -### Improvements - -- Scala version used by the build is updated to 2.10.6. [#2311][2311] by [@eed3si9n][@eed3si9n] -- If `publishMavenStyle` is `true`, `update` task warns when it sees intransitive dependencies, which do not translate to Maven. [#2127][2127] by [@jsuereth][@jsuereth] -- Adds `Def.settings`, which facilitates mixing settings with seq of settings. See below. -- sbt Serialization is updated to 0.1.2. [2117][#2117] by [@dwijnand][@dwijnand] -- Hides the stack trace on compilation error in build definition. [#2071][2071]/[#2091][2091] by [@Duhemm][@Duhemm] -- Makes the dummy `Logger.Null` public. [#2094][2094] by [@pdalpra][@pdalpra] -- Uses diagnostic classes to get lines contents in local Java compiler. [#2108][2108]/[#2201][2201] by [@fkorotkov][@fkorotkov] -- Logs javaOptions used when forking. [#2087][2087]/[#2103][2103] by [@pdalpra][@pdalpra] -- Warns when javaOptions are defined but fork is set to false. [#2041][2041]/[#2103][2103] by [@pdalpra][@pdalpra] -- Adds an `Append.Sequence` instance for `List` to allow `+=`/`++=` on `developers` setting. [#2107][2107]/[#2114][2114] by [@pdalpra][@pdalpra] -- Fixes warnings, and other clean ups. [#2112][2112]/[#2137][2137]/[#2139][2139]/[#2142][2142] by [@pdalpra][@pdalpra] -- Adds `scalaCompilerBridgeSource` setting to specify the compiler brigde, and uses Ivy to retrieve it. [#2106][2106]/[#2197][2197] by [@Duhemm][@Duhemm] -- Adds `localIfFile` to `MavenRepository`, to force artifacts to be copied to the cache. [#2172][2172] by [@dwijnand][@dwijnand] -- Adds `Resolver.bintrayIvyRepo(owner, repo)`. [#2285][2285] by [@dwijnand][@dwijnand] - -### Bug fixes - -- Fixes the false positive of inconsistent duplicate warnings. [#1933][1933]/[#2258][2258] by - [@Duhemm][@Duhemm] -- Updated Ivy to merge IVY-1526 fix. [sbt/ivy#14][14]/[#2118][2118] by [@jsuereth][@jsuereth] -- Fixes `updateClassifiers` downloading updated snapshot sources and docs. - [#1750][1750]/[sbt/ivy#17][17]/[#2163][2163]/[sbt/ivy#18][18]/[#2186][2186] by [@dwijnand][@dwijnand] -- Fixes `updateClassifiers` on Ivy modules without `default` configuration. - [#2264][2264] by [@eed3si9n][@eed3si9n]/[@Duhemm][@Duhemm] -- Updated [JLine][JLine2] to version 2.13. [#1681][1681]/[#2173][2173] -- Changing the value of a constant (final-static-primitive) field will now - correctly trigger incremental compilation for downstream classes. This is to - account for the fact that Java compilers may inline constant fields in - downstream classes. [#1967][1967]/[#2085][2085] by [@stuhood][@stuhood] -- Fixes classfile location detection. [#2214][2214] by [@stuhood][@stuhood] -- Fixes a few typos in keys descriptions. [#2092][2092] by [@pdalpra][@pdalpra] -- Avoids the use of `ListBuffer#readOnly`. [#2095][2095] by [@adriaanm][@adriaanm] -- Expands transitive dependency exclusions when using sbt-maven-resolver-plugin [#2109][2109] by [@jsuereth][@jsuereth] -- Fixes incremental compilation of traits by including private members into the API hash. [#2155][2155]/[#2160][2160] -- Fixes name hashing error messages. [#2158][2158] by [@stuhood][@stuhood] -- Adds more robustness to `tasks` and `settings` command. [#2192][2192] by [@DavidPerezIngeniero][@DavidPerezIngeniero] -- Fixes Java compilation inconsistencies between sbt and `javac` by always failing if the local Java compiler reported errors. [#2228][2228]/[#2271][2271] by [@Duhemm][@Duhemm] -- Fixes `JavaErrorParser` to parse non-compile-errors [#2256][2256]/[#2272][2272] by [@Duhemm][@Duhemm] - -- Fixes task scheduling performance on large builds by skipping checks in `sbt.Execute`. [#2302][2302]/[#2303][2303] by [@jrudolph][@jrudolph] -- Fixes autoImports for AutoPlugins for global configuration files. [#2120][2120]/[#2399][2399] by [@timcharper][@timcharper] - -### Def.settings - -Using `Def.settings` it is now possible to nicely define settings as such: - - val modelSettings = Def.settings( - sharedSettings, - libraryDependencies += foo - ) - -[#2151][2151] by [@dwijnand][@dwijnand]. diff --git a/notes/0.13.10/add-sbt-ivy-snapshots-to-launchconfig.markdown b/notes/0.13.10/add-sbt-ivy-snapshots-to-launchconfig.markdown deleted file mode 100644 index a43c1b001..000000000 --- a/notes/0.13.10/add-sbt-ivy-snapshots-to-launchconfig.markdown +++ /dev/null @@ -1,10 +0,0 @@ - - [@eed3si9n]: https://github.com/eed3si9n - -### Fixes with compatibility implications - -### Improvements - -### Bug fixes - -- Fixes launcher configuration to add `sbt-ivy-snapshots` repository to resolve nightly builds. [@eed3si9n][@eed3si9n] diff --git a/notes/0.13.10/always-honor-api-url.markdown b/notes/0.13.10/always-honor-api-url.markdown deleted file mode 100644 index ef7133b6e..000000000 --- a/notes/0.13.10/always-honor-api-url.markdown +++ /dev/null @@ -1,10 +0,0 @@ -[@jkinkead]: https://github.com/jkinkead -[2262]: https://github.com/sbt/sbt/pull/2262 - -### Fixes with compatibility implications - -### Improvements - -- The setting `apiURL` used to be ignored if `autoAPIMappings` was `false`. It will now be inserted into the built POM file regardless of the value of `autoAPIMappings`. [#2262][2262] by [@jkinkead][@jkinkead] - -### Bug fixes diff --git a/notes/0.13.10/bump-scalaversion.md b/notes/0.13.10/bump-scalaversion.md deleted file mode 100644 index 0c7fcfb19..000000000 --- a/notes/0.13.10/bump-scalaversion.md +++ /dev/null @@ -1,10 +0,0 @@ - - [@eed3si9n]: https://github.com/eed3si9n - -### Fixes with compatibility implications - -### Improvements - -- Updated Scala version used by the build to 2.10.6. - -### Bug fixes diff --git a/notes/0.13.10/dotty-awareness.md b/notes/0.13.10/dotty-awareness.md deleted file mode 100644 index 5660f9bcd..000000000 --- a/notes/0.13.10/dotty-awareness.md +++ /dev/null @@ -1,16 +0,0 @@ - - [Dotty]: https://github.com/lampepfl/dotty - [@smarter]: https://github.com/smarter - -### Fixes with compatibility implications - -### Improvements - -- sbt is now aware of [Dotty][Dotty], it will assume - that Dotty is used when `scalaVersion` starts with `0.`, the sbt - compiler-bridge does not support Dotty but a separate compiler-bridge is being - developed at https://github.com/smarter/dotty-bridge and an example project - that uses it is available at https://github.com/smarter/dotty-example-project - by [@smarter][@smarter]. - -### Bug fixes diff --git a/notes/0.13.10/drop-sealed-from-Append-typeclasses.markdown b/notes/0.13.10/drop-sealed-from-Append-typeclasses.markdown deleted file mode 100644 index 6ad216120..000000000 --- a/notes/0.13.10/drop-sealed-from-Append-typeclasses.markdown +++ /dev/null @@ -1,10 +0,0 @@ - - [1171]: https://github.com/sbt/sbt/issues/1171 - [2322]: https://github.com/sbt/sbt/pull/2322 - -### Fixes with compatibility implications - -### Improvements -- Drops `sealed` from the typeclasses in Append. [#2322][] by [@dwijnand][] - -### Bug fixes diff --git a/notes/0.13.10/fix-inc-compiler-name-hashing-private-members.markdown b/notes/0.13.10/fix-inc-compiler-name-hashing-private-members.markdown deleted file mode 100644 index 1b7600352..000000000 --- a/notes/0.13.10/fix-inc-compiler-name-hashing-private-members.markdown +++ /dev/null @@ -1,17 +0,0 @@ - - [@Duhemm]: http://github.com/Duhemm - [@gkossakowski]: https://github.com/gkossakowski - [2155]: https://github.com/sbt/sbt/issues/2155 - [2160]: https://github.com/sbt/sbt/pull/2160 - [2324]: https://github.com/sbt/sbt/issues/2324 - [2325]: https://github.com/sbt/sbt/pull/2325 - -### Fixes with compatibility implications - -### Improvements - -### Bug fixes - -- Fixes incremental compilation of traits by including private members into the API hash. [#2155][2155]/[#2160][2160] by - [@Duhemm][@Duhemm] -- Fixes name hashing by removing class private members from the hash. [#2324][2324]/[#2325][2325] by [@gkossakowski][@gkossakowski] diff --git a/notes/0.13.10/fix-snapshots.md b/notes/0.13.10/fix-snapshots.md deleted file mode 100644 index 59e946757..000000000 --- a/notes/0.13.10/fix-snapshots.md +++ /dev/null @@ -1,14 +0,0 @@ - - [@eed3si9n]: https://github.com/eed3si9n - [1514]: https://github.com/sbt/sbt/issues/1514 - [1616]: https://github.com/sbt/sbt/issues/1616 - [2313]: https://github.com/sbt/sbt/pull/2313 - -### Fixes with compatibility implications - -- Fixes update option's `withLatestSnapshots` so it handles modules without an artifact. This flag will be enabled by default. - [#1514][1514]/[#1616][1616]/[#2313][2313] by [@eed3si9n][@eed3si9n] - -### Improvements - -### Bug fixes diff --git a/notes/0.13.10/help-highlighting-windows.markdown b/notes/0.13.10/help-highlighting-windows.markdown deleted file mode 100644 index c4de37be1..000000000 --- a/notes/0.13.10/help-highlighting-windows.markdown +++ /dev/null @@ -1,11 +0,0 @@ -[@eamelink]: https://github.com/eamelink -[1982]: https://github.com/sbt/sbt/issues/1982 - -### Changes with compatibility implications - -### Improvements - -### Fixes - -- Highlighting of partial task search results now only uses ANSI color -codes are supported on Windows [#1982][1982] by [@eamelink][@eamelink] diff --git a/notes/0.13.10/make-JCenter-opt-in.markdown b/notes/0.13.10/make-JCenter-opt-in.markdown deleted file mode 100644 index 6ca9bec03..000000000 --- a/notes/0.13.10/make-JCenter-opt-in.markdown +++ /dev/null @@ -1,7 +0,0 @@ - - [@eed3si9n]: https://github.com/eed3si9n - [2217]: https://github.com/sbt/sbt/issues/2217 - -### Fixes with compatibility implications - -- sbt 0.13.10 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. [#2217][2217] by [@eed3si9n][@eed3si9n] diff --git a/notes/0.13.10/use-ivyConfiguration-in-updateSbtClassifiers-in-compilers-to-fetch-compiler-bridge-sources.markdown b/notes/0.13.10/use-ivyConfiguration-in-updateSbtClassifiers-in-compilers-to-fetch-compiler-bridge-sources.markdown deleted file mode 100644 index f95c35348..000000000 --- a/notes/0.13.10/use-ivyConfiguration-in-updateSbtClassifiers-in-compilers-to-fetch-compiler-bridge-sources.markdown +++ /dev/null @@ -1,19 +0,0 @@ - - [@Duhemm]: http://github.com/Duhemm - [2106]: https://github.com/sbt/sbt/pull/2106 - [2197]: https://github.com/sbt/sbt/pull/2197 - [2336]: https://github.com/sbt/sbt/issues/2336 - -### Fixes with compatibility implications - -### Improvements - -- Adds configurable compiler bridge. See below. - -### Bug fixes - -### Configurable Scala compiler bridge - -sbt 0.13.10 adds `scalaCompilerBridgeSource` setting to specify the compiler brigde source. This allows different implementation of the bridge for Scala versions, and also allows future versions of Scala compiler implementation to diverge. The source module will be retrieved using library management configured by `bootIvyConfiguration` task. - -[#2106][2106]/[#2197][2197]/[#2336][2336] by [@Duhemm][@Duhemm] diff --git a/notes/0.13.11.markdown b/notes/0.13.11.markdown new file mode 100644 index 000000000..3b9d369a8 --- /dev/null +++ b/notes/0.13.11.markdown @@ -0,0 +1,209 @@ + + [@eed3si9n]: https://github.com/eed3si9n + [@jsuereth]: https://github.com/jsuereth + [@dwijnand]: http://github.com/dwijnand + [@Duhemm]: http://github.com/Duhemm + [@gkossakowski]: https://github.com/gkossakowski + [@adriaanm]: https://github.com/adriaanm + [@jrudolph]: https://github.com/jrudolph + [@stuhood]: https://github.com/stuhood + [@pdalpra]: https://github.com/pdalpra + [@fkorotkov]: http://github.com/fkorotkov + [@hgiddens]: https://github.com/hgiddens + [@DavidPerezIngeniero]: https://github.com/DavidPerezIngeniero + [@romanowski]: https://github.com/romanowski + [@timcharper]: https://github.com/timcharper + [@smarter]: https://github.com/smarter + [@retronym]: https://github.com/retronym + + [Dotty]: https://github.com/lampepfl/dotty + [JLine2]: https://github.com/jline/jline2 + + [14]: https://github.com/sbt/ivy/pull/14 + [17]: https://github.com/sbt/ivy/pull/17 + [18]: https://github.com/sbt/ivy/pull/18 + + [1171]: https://github.com/sbt/sbt/issues/1171 + [1514]: https://github.com/sbt/sbt/issues/1514 + [1616]: https://github.com/sbt/sbt/issues/1616 + [1681]: https://github.com/sbt/sbt/issues/1681 + [1750]: https://github.com/sbt/sbt/issues/1750 + [1827]: https://github.com/sbt/sbt/issues/1827 + [1933]: https://github.com/sbt/sbt/issues/1933 + [1967]: https://github.com/sbt/sbt/issues/1967 + [1968]: https://github.com/sbt/sbt/issues/1968 + [2041]: https://github.com/sbt/sbt/issues/2041 + [2071]: https://github.com/sbt/sbt/issues/2071 + [2085]: https://github.com/sbt/sbt/pull/2085 + [2087]: https://github.com/sbt/sbt/issues/2087 + [2091]: https://github.com/sbt/sbt/pull/2091 + [2092]: https://github.com/sbt/sbt/pull/2092 + [2094]: https://github.com/sbt/sbt/pull/2094 + [2095]: https://github.com/sbt/sbt/pull/2095 + [2103]: https://github.com/sbt/sbt/pull/2103 + [2106]: https://github.com/sbt/sbt/pull/2106 + [2107]: https://github.com/sbt/sbt/issues/2107 + [2108]: https://github.com/sbt/sbt/pull/2108 + [2109]: https://github.com/sbt/sbt/issues/2109 + [2112]: https://github.com/sbt/sbt/pull/2112 + [2114]: https://github.com/sbt/sbt/pull/2114 + [2117]: https://github.com/sbt/sbt/pull/2117 + [2118]: https://github.com/sbt/sbt/issues/2118 + [2120]: https://github.com/sbt/sbt/issues/2120 + [2127]: https://github.com/sbt/sbt/pull/2127 + [2137]: https://github.com/sbt/sbt/pull/2137 + [2139]: https://github.com/sbt/sbt/pull/2139 + [2142]: https://github.com/sbt/sbt/pull/2142 + [2151]: https://github.com/sbt/sbt/pull/2151 + [2155]: https://github.com/sbt/sbt/issues/2155 + [2158]: https://github.com/sbt/sbt/pull/2158 + [2160]: https://github.com/sbt/sbt/pull/2160 + [2163]: https://github.com/sbt/sbt/pull/2163 + [2172]: https://github.com/sbt/sbt/pull/2172 + [2173]: https://github.com/sbt/sbt/pull/2173 + [2186]: https://github.com/sbt/sbt/pull/2186 + [2192]: https://github.com/sbt/sbt/pull/2192 + [2197]: https://github.com/sbt/sbt/pull/2197 + [2201]: https://github.com/sbt/sbt/pull/2201 + [2214]: https://github.com/sbt/sbt/pull/2214 + [2217]: https://github.com/sbt/sbt/issues/2217 + [2228]: https://github.com/sbt/sbt/issues/2228 + [2256]: https://github.com/sbt/sbt/issues/2256 + [2258]: https://github.com/sbt/sbt/pull/2258 + [2261]: https://github.com/sbt/sbt/pull/2261 + [2264]: https://github.com/sbt/sbt/issues/2264 + [2266]: https://github.com/sbt/sbt/issues/2266 + [2271]: https://github.com/sbt/sbt/pull/2271 + [2272]: https://github.com/sbt/sbt/pull/2272 + [2285]: https://github.com/sbt/sbt/pull/2285 + [2302]: https://github.com/sbt/sbt/issues/2302 + [2303]: https://github.com/sbt/sbt/pull/2303 + [2311]: https://github.com/sbt/sbt/pull/2311 + [2313]: https://github.com/sbt/sbt/pull/2313 + [2322]: https://github.com/sbt/sbt/pull/2322 + [2324]: https://github.com/sbt/sbt/issues/2324 + [2325]: https://github.com/sbt/sbt/pull/2325 + [2336]: https://github.com/sbt/sbt/issues/2336 + [2343]: https://github.com/sbt/sbt/pull/2343 + [2344]: https://github.com/sbt/sbt/pull/2344 + [2354]: https://github.com/sbt/sbt/pull/2354 + [2399]: https://github.com/sbt/sbt/pull/2399 + [2453]: https://github.com/sbt/sbt/pull/2453 + [2467]: https://github.com/sbt/sbt/pull/2467 + [101]: https://github.com/sbt/sbt-launcher-package/pull/101 + [105]: https://github.com/sbt/sbt-launcher-package/pull/105 + +### Fixes with compatibility implications + +- JCenter is now opt-in. A new setting `useJCenter` can be set to `true` to re-include it, as the first external resolver to find library dependencies. [#2217][2217]/[#2467][2467] by [@eed3si9n][@eed3si9n] +- Adds `withInterProjectFirst` to the update option, which is enabled by default. When set to `true`, `inter-project` resolver will be prioritized above all resolvers and Ivy cache. [#1827][1827] by [@eed3si9n][@eed3si9n] +- Fixes update option's `withLatestSnapshots` so it handles modules without an artifact. This flag will be enabled by default. + [#1514][1514]/[#1616][1616]/[#2313][2313] by [@eed3si9n][@eed3si9n] +- No longer passes `-J` options to the local Java compiler. [#1968][1968]/[#2272][2272] by [@Duhemm][@Duhemm] +- Fixes auto imports for auto plugins in global configuration files. Because this is *not* source compatible with 0.13.x, the fix is enabled only when `sbt.global.autoimport` flag is `true`. [#2120][2120]/[#2399][2399] by [@timcharper][@timcharper] + +### Improvements + +- Adds configurable compiler bridge. See below. +- Adds initial support for [Dotty][Dotty]. See below +- Adds settings for granular inter-project dependency tracking. See below. +- Scala version used by the build is updated to 2.10.6. [#2311][2311] by [@eed3si9n][@eed3si9n] +- If `publishMavenStyle` is `true`, `update` task warns when it sees intransitive dependencies, which do not translate to Maven. [#2127][2127] by [@jsuereth][@jsuereth] +- Adds `Def.settings`, which facilitates mixing settings with seq of settings. See below. +- sbt Serialization is updated to 0.1.2. [#2117][2117] by [@dwijnand][@dwijnand] +- Hides the stack trace on compilation error in build definition. [#2071][2071]/[#2091][2091] by [@Duhemm][@Duhemm] +- Makes the dummy `Logger.Null` public. [#2094][2094] by [@pdalpra][@pdalpra] +- Uses diagnostic classes to get lines contents in local Java compiler. [#2108][2108]/[#2201][2201] by [@fkorotkov][@fkorotkov] +- Adds logging of javaOptions. [#2087][2087]/[#2103][2103] by [@pdalpra][@pdalpra] +- Warns when javaOptions are defined but fork is set to false. [#2041][2041]/[#2103][2103] by [@pdalpra][@pdalpra] +- Adds an `Append.Sequence` instance for `List` to allow `+=`/`++=` on `developers` setting. [#2107][2107]/[#2114][2114] by [@pdalpra][@pdalpra] +- Drops `sealed` from the typeclasses in `Append`. [#2322][2322] by [@dwijnand][@dwijnand] +- Fixes compilation warnings in sbt's codebase, and other clean ups. [#2112][2112]/[#2137][2137]/[#2139][2139]/[#2142][2142] by [@pdalpra][@pdalpra] +- Adds `localIfFile` to `MavenRepository`, to force artifacts to be copied to the cache. [#2172][2172] by [@dwijnand][@dwijnand] +- Adds `Resolver.bintrayIvyRepo(owner, repo)`. [#2285][2285] by [@dwijnand][@dwijnand] +- Non-static annotation changes are no longer tracked by the incremental compiler. [#2343][2343] by [@romanowski][@romanowski] +- Reduces the memory usage of API info extraction in the incremental compiler. [#2343][2343] by [@adriaanm][@adriaanm] +- Memory-related options can now be overridden individually via the `-J` options. [sbt/sbt-launcher-package#105][105] + +### Bug fixes + +- Fixes the false positive of inconsistent duplicate warnings. [#1933][1933]/[#2258][2258] by + [@Duhemm][@Duhemm] +- Fixes task scheduling performance on large builds by skipping checks in `sbt.Execute`. [#2302][2302]/[#2303][2303] by [@jrudolph][@jrudolph] +- Fixes changes in value classes by registering signatures of method before and after erasure. [#1171][1171]/[#2261][2261] by [@Duhemm][@Duhemm] +- Updated Ivy to merge IVY-1526 fix. [sbt/ivy#14][14]/[#2118][2118] by [@jsuereth][@jsuereth] +- Fixes `updateClassifiers` downloading updated snapshot sources and docs. + [#1750][1750]/[sbt/ivy#17][17]/[#2163][2163]/[sbt/ivy#18][18]/[#2186][2186] by [@dwijnand][@dwijnand] +- Fixes `updateClassifiers` on Ivy modules without `default` configuration. + [#2264][2264] by [@eed3si9n][@eed3si9n]/[@Duhemm][@Duhemm] +- Updated [JLine][JLine2] to version 2.13. [#1681][1681]/[#2173][2173] +- Changing the value of a constant (final-static-primitive) field will now + correctly trigger incremental compilation for downstream classes. This is to + account for the fact that Java compilers may inline constant fields in + downstream classes. [#1967][1967]/[#2085][2085] by [@stuhood][@stuhood] +- Fixes classfile location detection. [#2214][2214] by [@stuhood][@stuhood] +- Fixes a few typos in keys descriptions. [#2092][2092] by [@pdalpra][@pdalpra] +- Avoids the use of `ListBuffer#readOnly`. [#2095][2095] by [@adriaanm][@adriaanm] +- Expands transitive dependency exclusions when using sbt-maven-resolver-plugin [#2109][2109] by [@jsuereth][@jsuereth] +- Fixes incremental compilation of traits by including private members into the API hash. [#2155][2155]/[#2160][2160] by + [@Duhemm][@Duhemm] +- Fixes name hashing by removing class private members from the hash. [#2324][2324]/[#2325][2325] by [@gkossakowski][@gkossakowski] +- Fixes name hashing error messages. [#2158][2158] by [@stuhood][@stuhood] +- Adds more robustness to `tasks` and `settings` command. [#2192][2192] by [@DavidPerezIngeniero][@DavidPerezIngeniero] +- Fixes Java compilation inconsistencies between sbt and `javac` by always failing if the local Java compiler reported errors. [#2228][2228]/[#2271][2271] by [@Duhemm][@Duhemm] +- Fixes `JavaErrorParser` to parse non-compile-errors [#2256][2256]/[#2272][2272] by [@Duhemm][@Duhemm] +- Fixes launcher configuration to add `sbt-ivy-snapshots` repository to resolve nightly builds. [@eed3si9n][@eed3si9n] +- Fixes performance issues during tree traversal in the incremental compiler. [#2343][2343] by [@adriaanm][@adriaanm] +- Fixes the tracking of self types and F-bounded existential types in the incremental compiler. [#2343][2343] by [@adriaanm][@adriaanm] +- Avoid CCE when scalac internally uses `compileLate`. [#2453][2453] by [@retronym][@retronym] +- Fixes the memory-related options overriding `SBT_OPTS`. [sbt/sbt-launcher-package#101][101] by [@eed3si9n][@eed3si9n] + +### Configurable Scala compiler bridge + +sbt 0.13.11 adds `scalaCompilerBridgeSource` setting to specify the compiler brigde source. This allows different implementation of the bridge for Scala versions, and also allows future versions of Scala compiler implementation to diverge. The source module will be retrieved using library management configured by `bootIvyConfiguration` task. + +[#2106][2106]/[#2197][2197]/[#2336][2336] by [@Duhemm][@Duhemm] + +### Dotty awareness + +sbt 0.13.11 will assume that Dotty is used when `scalaVersion` starts with `0.`. +The built-in compiler bridge in sbt does not support Dotty, +but a separate compiler bridge is being developed at [smarter/dotty-bridge](https://github.com/smarter/dotty-bridge) and +an example project that uses it is available at [smarter/dotty-example-project](https://github.com/smarter/dotty-example-project). + +[#2344][2344] by [@smarter][@smarter] + +### Inter-project dependency tracking + +sbt 0.13.11 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 + ) + +[#2266][2266]/[#2354][2354] by [@eed3si9n][@eed3si9n] + +### Def.settings + +Using `Def.settings` it is now possible to nicely define settings as such: + + val modelSettings = Def.settings( + sharedSettings, + libraryDependencies += foo + ) + +[#2151][2151] by [@dwijnand][@dwijnand]