sbt 1.5.4


I'm happy to announce sbt 1.5.4 patch release is available. Full release note is here -

  • Fixes compiler ClassLoader list to use compilerJars.toList (For Scala 3, this drops support for 3.0.0-M2) #6538 by @adpi2
  • Fixes undercompilation of package object causing "Symbol 'type X' is missing from the classpath" zinc#983 by @retronym
  • Fixes overcompilation with scalac -release flag zinc#982 by @retronym
  • Fixes BSP on ARM Macs by keeping JNI server socket to keep using JNI ipcsocket#14 by @quelgar

sbt-assembly 1.0.0


In June of 2011, I started working on sbt-assembly for sbt 0.10, based on Coda Hale's assembly-sbt from sbt 0.7, which in turn was probably inspired by maven-assembly-plugin. After ten years, I'm going to call this one 1.0.0. sbt-assembly 1.0.0 is published to Maven Central.

sbt 1.5.3

  • Fixes scalacOptions not getting forwarded to ScalaDoc in Scala 3 #6499 by @pikinier20
  • Fixes undercompilation of sealed traits that extends other seal traits zinc#979 by @dwijnand
  • Fixes version parsing not recognizing dots in a prerelease tag lm#377 by @Nirvikalpa108
  • Fixes inputFile resolving to incorrect files when file specific globs are used io#319 by @eatkins
  • Updates to Scala 2.12.14 #6522 by @mkurz

For more details please see

Scala, Python quick reference

syntax Scala Python
immutable variable val x = 1 Starlark:
REV = "1.1.0"
lazy variable lazy val x = 1 n/a
mutable variable var x = 1 in function:
x = 1
if expression if (x > 1) "a" else "b" "a" if x > 1 else "b"

POM consistency for sbt plugins


There's a long-standing bug that sbt maintainers have known for a while, which is that when sbt plugin is published to a Maven repository, the POM file sbt generates is not valid.

Here's an example. sbt-pgp 2.1.2 is published to, but if you look at the POM file name it's sbt-pgp-2.1.2.pom, not matching the URL structure sbt-pgp_2.12_1.0. Since most plugins were published to Bintray until recently, and because only a few plugins were published to Sonatype OSSRH, which seems to be okay with this, this issue has not gotten too much attention.

Fast forward 2021, Bintray was discontinued, and now that more plugins are published to Sonatype OSSRH, companies that use Artifactory to front Maven Central are running into this. Active GitHub issue is sbt/sbt#3410. I will discuss an experimental workaround for this.

sbt 1.5.2


I'm happy to announce sbt 1.5.2 patch release is available. Full release note is here -

Bintray to JFrog Artifactory migration status and sbt 1.5.1


I'm happy to announce sbt 1.5.1 patch release is available. Full release note is here - This post will also report the Bintray to JFrog Artifactory migration.

There's now a cloud-hosted Artifactory instance licensed to Scala Center. Let's call this "Artsy" in this post instead of the Artifactory instance. With the release of sbt 1.5.1, I think we can say that the migration is done.

herding cats: day 19


Wrote herding cats: day 19 featuring FunctionK, or Rúnar's encoding of rank-2 polymorphic function, and Resource datatype, which he envisioned rank-N polymorphism would unlock back in 2010.

sbt 1.5.0


Hi everyone. On behalf of the sbt project, I am happy to announce sbt 1.5.0. This is the fifth feature release of sbt 1.x, a binary compatible release focusing on new features. sbt 1.x is released under Semantic Versioning, and the plugins are expected to work throughout the 1.x series.

The headline features of sbt 1.5.0 are:

  • Scala 3 support
  • Eviction error
  • Deprecation of sbt 0.13 syntax
  • Coursier-based launcher

How to upgrade

Syndicate content