Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 28 million developers.Sign up
Install the latest release
If you're on Mac OS X, upgrade to the latest version with:
$ brew install scalacenter/bloop/bloop
$ curl -L https://github.com/scalacenter/bloop/releases/download/v1.0.0-M11/install.py | python
Read the complete instructions in our Installation page.
With Bloop 1.0 being around the corner, we need to fix all the issues with the current configuration
file format, and come up with a solution that will be stable for a long time.
Jorge has been working towards a definitive design for what the configuration file should look like,
and his intensive head scratching resulted in this pull request.
Mill integration (by Olivier Mélois)
Bloop now includes a Mill integration, which means that your build definition can be exported from
Mill's format to Bloop's.
To try the Mill integration, add the following to the
build.sc of a project:
And then run
mill bloop.integrations.mill.Bloop/install from the directory of the mill project.
Support for Scala.js and Scala Native
Using Scala Native or Scala.js with Bloop is completely transparent. If your project uses any of
these platforms, Bloop will automatically configure itself to link and run using the appropriate
tools and runtime.
At the moment, running the test is not supported and waiting for [a new release of Scala
When sbt is launched with the sbt-bloop plugin, it will now immediately export Bloop configuration
files for the build and meta build. This allows a BSP server to directly pick up the changes and
notify its client that a build has changed.
This enhancement is crucial for BSP and integration with clients, and improves that overall user
The Bloop configuration file now contains paths to the documentation and sources of the dependencies
of a build. This allows a BSP client to query them from Bloop, and lets IDEs offer a better user
Bloop now prints a full report of test execution after the command
test finishes. This gives you
information about the tests that ran, the failures, errors and successes.
Also, Bloop now correctly reports the outcome of your tests in its exit code.
All the flags that Bloop accepts on its command line interface should be written using kebab-case.
Unfortunately, a bug in our autocompletions made Bloop provide suggestions that were using camelCase
Bloop supports an option called
--config-dir, which defines where Bloop should look for your
configuration files (the default value is
.bloop in your current working directory).
When this option was passed, Bloop was creating an absolute path from the base directory where the
Bloop server had been started, instead of doing so from your current working directory. This patch
fixes this incorrect behavior!
Bloop features a nice error reporter that tries to unclutter your screen and make the most useful
bits pop out of your screen. Unfortunately, our reporter was unfriendly to some terminals, and broke
links from error messages to source. Thankfully, @gabro fixed that!
The location where the state of the incremental compiler should be stored can now be configured.
Our plugin for sbt used to export only the
Test configurations. @tues
improved it so that builds can configure which configuration should be exported, and have Bloop
configuration files generated.
Support Java-only projects #51 and #524 (by Tobias Roeser and Jorge Vicente Cantero)
Our Maven integration used to have issues with Java-only projects. Thanks to this fix by
@lefou, those are now correctly supported by Bloop!
Our developer documentation was still missing information on how to debug Bloop. @tues has
been contributing the missing bits!
With the recent improvements to our sbt integrations, our documentation still needed to catch up.
The documentation has been updated to reflect the latest additions and capabilities of the sbt
integration, and how to configure it properly.
Fix typos in the documentation
Errors easily get into documentation... Thankfully, our community is here to help. Thank you
all for fixing our mistakes:
Even though our Maven integration has been around for a long time, we still hadn't updated our
documentation to tell our users how to use it. The documentation is now up-to-date!
The installation script allows to specify the version of coursier that should be used during
installation. However, the documentation wasn't mentioning it.
nuProcess is the library that we use to spawn processes. Jorge worked on migrating to
the latest version of nuProcess, which includes fixes for bugs that affected Bloop.
Using [scalac-profiling][scalac-profiling], Jorge has been able to determine how to dramatically
improve compilation time of Bloop itself. Thanks to his modifications, Bloop can now be compiled
There were some warnings in our codebase. No more! Enjoy a quiet compilation.
git shortlog -sn --no-merges v1.0.0-M10..1.0.0-M11, 11 people
contributed to this release: Jorge Vicente Cantero, Martin Duhem, Paweł Bartkiewicz, Tim Nieradzik,
Marko Svaljek, Gabriele Petronella, Olivier Mélois, travisltq, Stephen Nancekivell, Tobias Roeser,
Thank you all