mirror of https://github.com/sbt/sbt.git
105 lines
4.4 KiB
Markdown
105 lines
4.4 KiB
Markdown
### Fixes with compatibility implications
|
|
|
|
- Removes the "hit \[ENTER\] to switch to interactive mode" feature. Run `sbt xxx shell` to stay in shell after `xxx`. [#3091][3091]/[#3153][3153] by [@dwijnand][@dwijnand]
|
|
|
|
### Improvements
|
|
|
|
- Improves the new startup messages. See below.
|
|
- Ports sbt-cross-building's `^` and `^^` commands for plugin cross building. See below.
|
|
- Adds `Zero` scope component for sbt 1.0 compatibility. [#3179][3179] by [@eed3si9n][@eed3si9n]
|
|
- Backports `withXXX` methods for `ModuleID` and `Artifact` for sbt 1.0 compatibility. [#3215][3215] by [@eed3si9n][@eed3si9n]
|
|
|
|
### Bug fixes
|
|
|
|
- Fixes the new startup messages. See below.
|
|
- Fixes forward compatibility of Scripted plugin with sbt 1.0.0-RC2. [#3329][3329] by [@dwijnand][@dwijnand]
|
|
- Fixes ScalaTest nested suite test names being reported as "(It is not a test)". [#3154][3154] by [@jameskoch][@jameskoch]
|
|
- Fixes default `scalaBinaryVersion` for Dotty. [#3152][3152] by [@smarter][@smater]
|
|
- Updates JLine dependency to 2.14.4 to work around ncurses change causing `NumberFormatException`. [#3265][3265] by [@Rogach][@Rogach]
|
|
|
|
### sbt-cross-building
|
|
|
|
[@jrudolph][@jrudolph]'s sbt-cross-building is a plugin author's plugin.
|
|
It adds cross command `^` and sbtVersion switch command `^^`, similar to `+` and `++`,
|
|
but for switching between multiple sbt versions across major versions.
|
|
sbt 0.13.16 merges these commands into sbt because the feature it provides is useful as we migrate plugins to sbt 1.0.
|
|
|
|
To switch the `sbtVersion in pluginCrossBuild` from the shell use:
|
|
|
|
```
|
|
^^ 1.0.0-RC2
|
|
```
|
|
|
|
Your plugin will now build with sbt 1.0.0-RC2 (and its Scala version 2.12.2).
|
|
|
|
If you need to make changes specific to a sbt version, you can now include them into `src/main/scala-sbt-0.13`,
|
|
and `src/main/scala-sbt-1.0`, where the binary sbt version number is used as postfix.
|
|
|
|
To run a command across multiple sbt versions, set:
|
|
|
|
```scala
|
|
crossSbtVersions := Vector("0.13.15", "1.0.0-RC2")
|
|
```
|
|
|
|
Then, run:
|
|
|
|
```
|
|
^ compile
|
|
```
|
|
|
|
[#3133][3133] by [@eed3si9n][@eed3si9n]
|
|
|
|
#### Eviction warning presentation
|
|
|
|
sbt 0.13.16 improves the eviction warning presetation.
|
|
|
|
Before:
|
|
|
|
[warn] There may be incompatibilities among your library dependencies.
|
|
[warn] Here are some of the libraries that were evicted:
|
|
[warn] * com.google.code.findbugs:jsr305:2.0.1 -> 3.0.0
|
|
[warn] Run 'evicted' to see detailed eviction warnings
|
|
|
|
After:
|
|
|
|
[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
|
|
[warn]
|
|
[warn] * com.typesafe.akka:akka-actor_2.12:2.5.0 is selected over 2.4.17
|
|
[warn] +- de.heikoseeberger:akka-log4j_2.12:1.4.0 (depends on 2.5.0)
|
|
[warn] +- com.typesafe.akka:akka-parsing_2.12:10.0.6 (depends on 2.4.17)
|
|
[warn] +- com.typesafe.akka:akka-stream_2.12:2.4.17 () (depends on 2.4.17)
|
|
[warn]
|
|
[warn] Run 'evicted' to see detailed eviction warnings
|
|
|
|
[#3202][3202] by [@eed3si9n][@eed3si9n]
|
|
|
|
### Improvements and bug fixes to the startup messages
|
|
|
|
sbt writes out the `sbt.version` in `project/build.properties` if it is missing.
|
|
sbt 0.13.16 fixes the logging when it happens by using the logger.
|
|
|
|
We encourage the use of the sbt shell by running `sbt`, instead of running `sbt compile` from the terminal repreatedly.
|
|
The sbt shell keeps the JVM warm, and there is a significant performance improvement gained for your compilation.
|
|
The startup message that we added in sbt 0.13.15 was a bit too aggressive, so we are toning it down in 0.13.16.
|
|
It will only be triggered for `sbt compile`, and it can also be supressed with `suppressSbtShellNotification := true`.
|
|
|
|
[#3091][3091]/[#3097][3097]/[#3147][3147] by [@dwijnand][@dwijnand]
|
|
|
|
[3091]: https://github.com/sbt/sbt/issues/3091
|
|
[3097]: https://github.com/sbt/sbt/issues/3097
|
|
[3147]: https://github.com/sbt/sbt/pull/3147
|
|
[3133]: https://github.com/sbt/sbt/pull/3133
|
|
[3153]: https://github.com/sbt/sbt/pull/3153
|
|
[3152]: https://github.com/sbt/sbt/pull/3152
|
|
[3179]: https://github.com/sbt/sbt/pull/3179
|
|
[3202]: https://github.com/sbt/sbt/pull/3202
|
|
[3215]: https://github.com/sbt/sbt/pull/3215
|
|
[3265]: https://github.com/sbt/sbt/pull/3265
|
|
[3329]: https://github.com/sbt/sbt/pull/3329
|
|
[@jrudolph]: https://github.com/jrudolph
|
|
[@eed3si9n]: https://github.com/eed3si9n
|
|
[@dwijnand]: https://github.com/dwijnand
|
|
[@jameskoch]: https://github.com/jameskoch
|
|
[@smarter]: https://github.com/smarter
|
|
[@Rogach]: https://github.com/Rogach
|