- What is this? Why?
- Who maintains this?
- What projects are included?
- Where does this run?
- Can I run it against a pull request in scala/scala?
- Can I run it locally?
- What variations of the build exist?
- Is my project eligible?
- Is Scala.js or Scala Native supported?
- How do I add my project?
- How do I help maintain the community build?
- Where I can talk to someone about this?
Clone this wiki locally
See the README.
Primarily the Scala team at Lightbend, with help from the maintainers of the included libraries.
as of August 2021, there are 232 repos in the 2.13 build.
The community builds run on Scala's Jenkins-based CI, as documented in the scala-jenkins-infra README.
Yes. Just comment on the PR and ask, and someone on the Scala team will manually trigger a run for you. (And if you often need to trigger such runs, you can ask us to grant you the needed Jenkins access to trigger runs yourself.)
(How does it work?
As documented in the scala/scala README,
every PR results in a new Scala version being published to a special
resolver. The community build Jenkins is already set up to use that
resolver, so we only need to specify the
version field in the
Jenkins job parameters.)
Sure, just clone the repo and
It takes a long time. But there are ways to speed it up, or run just a subset. See Local runs.
There are currently six:
|branch name||JDK version||Jenkins job|
The 2.12.x build is very nearly frozen. It uses up-to-date Scala SHAs, but we are no longer adding new repos or doing any disruptive version upgrades. (We still advance a few of the project SHAs, but not if doing so requires substantial effort.)
The 2.13.x build is under somewhat more active development, but only somewhat. We will consider additions and/or version bumps on a case-by-case basis, considering the likely cost/benefit.
scripts/Report.scala has lists of projects that are known to fail on certain JDK versions only and thus don't prevent the Jenkins outcome from being green.
Further details on these variations is here.
In short, no. It is considered out of scope for the Lightbend team to attempt this, or to maintain someone else's attempt.
Of course, many included projects support multiple back ends. That's okay; we just disable the non-JVM portions.
2.13.x branch (usually), edit
projs.conf and add
proj/foo.conf and submit a PR with the change. (The PR doesn't necessarily need to be fully baked; it can be a starting point for conversation and collaboration.)
The dbuild documentation might help.
See also Maintenance for a great deal of relevant practical advice.
Good starting places for new folks to ask general questions about this include:
And of course, we can also talk using issues and pull requests in this repo.