sbt 1.1.2 hotfix

By Eugene Yokota (@eed3si9n) March 26, 2018

Hi everyone. It’s been a while since the last 1.1.x hotfix, so here’s 1.1.2.

As a reminder, sbt 1 is released under Semantic Versioning. So plugins released for 1.0.x will continue to work throughout 1.x including 1.1, 1.2, etc. This includes the latest 1.1.2 as well.

Bug fixes

  • Fixes triggered execution’s resource leak by caching the watch service. #3999 by @eatkins
  • Fixes classloader inheriting the dependencies of Scala compiler during run zinc#505 by @eed3si9n
  • Fixes forked test concurrency issue. #4030 by @eatkins
  • Fixes new command leaving behind target directory #4033 by @eed3si9n
  • Fixes handling on null Content-Type. lm214 by @staale
  • Fixes null handling of managedChecksums in ivySettings file. lm#218 by @IanGabes
  • Adds sbt.boot.lock as a JVM property to opt-out of locking. #3927 by @dwijnand
  • Provides SBT_GLOBAL_SERVER_DIR env var as a workaround to long socket file path on UNIX. #3932 by @dwijnand
  • Fixes forked runs reporting noisy “Stream closed” exception. #3970 by @retronym
  • Fixes test compilation not getting included in VS Code save trigger. #4022 by @tmiyamon
  • Fixes sbt server responding with string id when number id passed. #4025 by @tiqwab
  • Fixes getDecoder in Analysis format zinc#502 by @jilen
  • Fixes equal / hashCode inconsistencies around Array. zinc#513 by @eed3si9n
  • Whitelists java9-rt-ext-output in rt export process lp#211 by @eatkins
  • Fixes JDK version detection for Java 10 friendliness. lp#219 by @eed3si9n and @2m
  • Fixes quoting in Windows bat file. lp#220 by @ForNeVeR
  • Fixes -error not suppressing startup logs. #4036 by @eed3si9n

Improvements

Internal changes

Thanks ScalaMatsuri

I participated in ScalaMatsuri 2018 OSS Hackathon as one of maintainers on March 16th:

Five first-time contributors were assigned for sbt. First we went through the contribution guide so everyone can build sbt from source. Next, we picked out a task for each person from the “help wanted” issue list. During the next few hours, the contributors went through reproducing bugs, updating documentation, and fixing bugs. One of the interesting pull request that came out of it was an update to the contribution guide. #4019 Another was a bug fix on sbt server.

It was a fun experience for me, and I hope some of the participants would continue to contribute to the free/libre/opensource ecosystem going forward as well.

Performance fixes

An area that is getting our attention recently is improving the performance. We would like to thank Scala team’s Jason Zaugg and Akka team’s Johannes Rudolph for sending in PRs. Some of the performance fixes went into 1.1.2; while we are studying and continuing the research for for 1.2.x.

Participation

A huge thank you to everyone who’s helped improve sbt and Zinc 1 by using them, reporting bugs, improving our documentation, porting builds, porting plugins, and submitting and reviewing pull requests.

sbt 1.1.2 was brought to you by 23 contributors, according to git shortlog -sn --no-merges v1.1.1...v1.1.2 on sbt, zinc, librarymanagement, util, io, launcher-package, and website: Dale Wijnand, Eugene Yokota, Jason Zaugg, Kenji Yoshida (xuwei-k), Ethan Atkins, Martijn Hoekstra, Martynas Mickevičius, Dennis Hörsch, Hosam Aly, Antonio Cunei, Friedrich von Never, Hiroshi Ito, Ian Gabes, Jilen Zhang, Mathias Bogaert, Naohisa Murakami (tiqwab), Philippus Baalman, Ryan Bair, Seth Tisue, Ståle Undheim, Takuya Miyamoto (tmiyamon), Yasuhiro Tatsuno. Thank you!

For anyone interested in helping sbt, there are many avenues you could help, depending on your interest.

  • Migrate library builds to sbt 1, or update plugins.
  • Report bugs when you see them.
  • Send in fixes to bugs.
  • Update documentation.

If you’re interested in other ideas, come talk to us on sbt-contrib or on the brand new Lightbend Discuss.