sbt/notes/1.0.0-M4.markdown

52 lines
2.2 KiB
Markdown

[@eed3si9n]: https://github.com/eed3si9n
[@gkossakowski]: https://github.com/gkossakowski
[@dwijnand]: http://github.com/dwijnand
[@Duhemm]: https://github.com/Duhemm
[@jsuereth]: https://github.com/jsuereth
[86]: https://github.com/sbt/zinc/pull/86
[2577]: https://github.com/sbt/sbt/pull/2577
[2575]: https://github.com/sbt/sbt/pull/2575
[2543]: https://github.com/sbt/sbt/pull/2543
[2524]: https://github.com/sbt/sbt/pull/2524
This is the first milestone (beta) release of sbt 1.0.
There's no binary compatibility with sbt 0.13 or other future versions.
The biggest change in sbt 1.0 from 0.13 is internal code reorganization to modules
(io, util, librarymanagement, zinc, and sbt), but hopefully this shouldn't affect you much.
In addition, classes and objects related to internal implementations are moved to `sbt.internal`.
This package indicates that we won't keep binary compatibility for them.
Here are some more relevant changes:
- Build definition is based on Scala 2.11.8 [#2577][2577]
- Build.scala style builds are gone. Use multi-project `build.sbt`. [#2524][2524]
- `Project(...)` constructor is restricted down to two parameters. Use `project` instead. [#2543][2543]
- `sbt.Plugin` is also gone. Use auto plugins. [#2575][2575]
- The incremental compiler, called Zinc, uses class-based name hashing. [zinc#86][86] by [@gkossakowski][@gkossakowski]
- Zinc drops support for Scala 2.8.x and 2.9.x.
### Additional import required
Implicit conversions are moved to `sbt.syntax`. Add the following imports to auto plugins
or `project/*.scala`.
import sbt._, syntax._, Keys._
### Travis CI instruction
Travis CI uses unofficial sbt-extra launcher, so you might need to do the following to use 1.0.0-M4:
language: scala
scala:
- 2.11.8
before_install:
- mkdir launcher
- curl https://repo1.maven.org/maven2/org/scala-sbt/launcher/1.0.0/launcher-1.0.0.jar > launcher/sbt-launch.jar
- curl https://raw.githubusercontent.com/sbt/sbt/v1.0.0-M4/src/main/conscript/xsbt/launchconfig > launcher/launchconfig
script:
- java -Xms2048M -Xmx2048M -Xss6M -XX:MaxPermSize=512M -jar launcher/sbt-launch.jar @launcher/launchconfig ++$TRAVIS_SCALA_VERSION test