sbt 1.3.11

sbt 1.3.11 パッチリリースをアナウンスする。リリースノートの完全版はここにある - https://github.com/sbt/sbt/releases/tag/v1.3.11

特に Scala Center にお礼を言いたい。バグ報告、pull request レビュー、コントリビューションがちゃんと正しい所に行くかなどメンテ活動を行うにはある程度時間がかかるが、5月中の sbt のメンテ活動は Scala Center がスポンサーしてくれた。Daryja さん始め Scala Center のメンバーは皆気軽に共同作業しやすい人たちだ。

アップグレード方法

通常は project/build.properties

sbt.version=1.3.11

と書き換えるだけで ok だ。しかし、リリースにスクリプトの修正が含まれている場合もあり、また全ての JAR ファイルが予め入った *.(zip|tgz|msi) を使ったほうが初回の依存性解決が速くなるためインストーラーを使ったインストールを推奨する。インストーラーは SDKMAN などに公開される。

sdk upgrade sbt

Homebrew に関する注意

Homebrew のメンテナはもっと brew 依存性を使いたいという理由で JDK 13 への依存性を追加した brew#50649。そのため、PATH が通っている java が JDK 8 や 11 であっても sbt が JDK 13 で実行されるようになってしまう。

sbt が JDK 13 で実行するのを回避するには jEnv をインストールするか、SDKMAN に乗り換える必要がある。

主な変更点

sbt 1.3.11 は lm-coursier を 2.0.0-RC6-4 へとアップグレードし、これはキャッシュの場所としての $HOME/.coursier/cache ディレクトリを廃止して、OS に特定のディレクトリを使うようになる:

  • macOS は $HOME/Library/Caches/Coursier/v1
  • Windows は %LOCALAPPDATA%\Coursier\Cache\v1
  • Linux その他は $HOME/.cache/coursier/v1

その他:

参加

sbt 1.3.11 は Scala Center + 7名のコントリビューターにより作られた。Eugene Yokota (eed3si9n), Alexandre Archambault, Brice Jaglin, Colin Williams, Dale Wijnand, Jason Zaugg, and Xinjun Ma。この場をお借りしてコントリビューターの皆さんにお礼を言いたい。

他にも sbt や Zinc 1 を使ったり、バグ報告したり、ドキュメンテーションを改善したり、ビルドを移植したり、プラグインを移植したり、pull request を送ったりレビューをするなどして sbt を改善してくれている皆さんにも感謝。

sbt を手伝ってみたいなという人は興味次第色々方法がある。Contributing"help wanted""good first issue" などが出発地点になると思う。