More stable builds
In order to work towards stable builds, Bleep manages some software which is often just picked up from the environment, will typically be different between computers.
Bleep manages itself
Bleep functions as a launcher for itself.
You specify the version you want in bleep.yaml
, and it'll automatically download and run the specified version
$version: 0.0.1-M18
Note that this can be overridden by supplying --dev
to Bleep, in that case it will run the binary you have.
Bleep manages JVMs
You can (optionally) specify a JVM to use for compiling and running your project.
jvm:
name: graalvm-java17:22.2.0
If you don't, Bleep will fallback to what is discovered through JAVA_HOME
. Bleep will issue a warning when the JVM is managed externally.
To disable this warning you can use the managed value for the name key.
jvm:
name: managed
This is useful for projects that use other ways of managing the build environment.
Bleep manages Node
For Scala.js projects, you can also specify the version of node you want to use. It'll also be automatically downloaded and used
my-js-project:
platform:
jsNodeVersion: 18.4.0
Bleep does not (yet) manage LLVM (for Scala Native)
It is an open question whether it's feasible to supply a given version of LLVM.