Fury is a fledgling open-source build tool for Scala, with unique features for the ongoing maintenance of builds within a continually-evolving ecosystem.
Fury is a long-term project to create a next-generation build tool to address the greatest challenges of building software in an ever-changing environment, while maintaining the predictability, reliability and simplicity of builds.
fully data-oriented model for builds
builds may be defined in terms of sources or binary dependencies
power to control a build and the builds of all its source dependencies
advanced support for conflict resolution amongst dependencies
intuitive command-line API, with visual interfaces available later (Milestone 3)
hierarchical model of builds and build distribution
support for compiling Scala 2.x, Scala 3, Scala.js and Java
composable variants of builds, for generalized cross-building (Milestone 2)
support for running Docker containers as part of a build (Milestone 2)
compilation distributed over the network (Milestone 3)
optionally external builds, shared independently of source code
Fury is approaching its first public milestone release, Alecto. This will be the first release of Fury with the capability of building a majority of Scala projects. Fury’s future plans are described in the roadmap.