Bloop gives you fast edit/compile/test workflows for Scala.
To understand the goals of bloop, we strongly encourage you to read this Scala blog post.
Bloop is a command-line tool for fast edit/compile/test workflows. Its primary goal is to compile and test your project as fast as possible, offering a snappy developer experience. Bloop does not aim to replace your stock build tool, but rather complement it.
Disclaimer: Bloop is in beta, that means that you should not expect everything to make sense and you should be ready to see unexpected behaviours. We're working hard to quickly improve it, and we encourage you to update master on a daily basis if you start using the tool.
Please refer to the installation instructions.
Documentation is available on our website.
To publish bloop locally, you'll need to clone this repository and use sbt:
$ git clone --recursive https://github.com/scalacenter/bloop.git
$ cd bloop
$ sbt
> install
> frontend/version # copy this version number
$ cd nailgun
$ git rev-parse HEAD # copy this commit SHA
$ cd ..
# paste the version number and SHA obtained above in the following command:
$ bin/install.py --dest $HOME/.bloop --nailgun <nailgun-commit-sha> --version <version>
Bloop supports tab-completion on ZSH. To install command completion on ZSH, copy the completions file to an existing completions directory, if it exists.
If not, you can create it, and update your .zshrc
script as follows:
$ mkdir -p ~/.zsh/completion
$ cp etc/_bloop ~/.zsh/completion/
$ echo 'fpath=(~/.zsh/completion $fpath)' >> ~/.zshrc
$ echo 'autoload -Uz compinit ; compinit' >> ~/.zshrc
Closing and reopening your shell should make bloop tab-completions available.