CBT A New, Intuitive Build Tool for Scala
summary
CBT is a Scala-native build tool that actually exists as ~3,000 lines of code and runs a single JVM server via Nailgun so CLI calls return in ~0.1–0.2s. It provides compile/run/test/loop commands, prints classpaths, supports git dependencies, build composition, reproducible builds by pinning CBT versions, and plugins as simple traits. Dependency resolution uses a tiny custom Maven resolver (~60 lines) with aggressive caching (fast and offline) and a file-watch library for native change events; a few classloader and edge-case bugs remain.
AI-written summary · about
chapters (19)
- 0:00Start
- 2:27Why Not Use Gradle
- 2:55Agenda
- 3:20Why Is Cbt Fast
- 7:40Create a Build File
- 7:53Build Script
- 8:28Dependencies
- 9:04Define Dependencies
- 10:09Cbt Classpath
- 10:55Loop Compile
- 12:00Git Dependencies
- 15:56Plugins
- 18:37Logging
- 21:04Features
- 27:33How To Contribute
- 31:35Sbt Interoperability
- 32:38Parser for Scala Error Messages
- 37:41Stack Trace
- 39:42How Does the for the Get Integration if It's a Private Git Repository How Does It Handle Credentials and Authentication
related talks
58mNext generation Scala builds with CBT
58mElegant Scala builds and bootstrapping Dotty with CBT
34mComplex Problems, Simple (build)tool
19mExploring Scala Tooling ecosystem
32mBetter Scala builds with the Mill build tool
48msbt: Beyond the Build Tool
03mInterview
31mExploring Build Caching - A Practical Overview
