Bazel Version Policy
Stable Baseline
GloriousFlywheel and its overlays pin Bazel 7.4.x as the stable baseline.
The version is locked in .bazelversion and enforced via Bazelisk.
Version Matrix
| Repository | Version | Module System | Status |
|---|---|---|---|
| GloriousFlywheel | 7.4.0 | Bzlmod | Primary |
| tinyland-infra | 7.4.0 | Bzlmod | Aligned |
| tinyland-infra | inherited | local_path_override | Consumer |
| remote-juggler | 7.4.1 | Bzlmod | Minor drift |
| tinyland.dev | 8.1.1 | Bzlmod | Testing 8.x |
| DenmarkSmbCache | mixed | WORKSPACE | Exception |
Upgrade Path
- 7.4.x → 7.4.y: Patch updates applied freely
- 7.4.x → 8.x: Requires compatibility testing (see #107)
- DenmarkSmbCache: Remains on WORKSPACE until
rules_dotnetsupports Bzlmod
Testing a New Version
# In a feature branch:
echo "8.1.1" > .bazelversion
bazel build //...
bazel test //...
Known Differences in 8.x
- Bzlmod is the default (no need for
--enable_bzlmod) - Some
experimental_flags promoted to stable rules_nixpkgs_core0.13.0 compatible with 8.xaspect_rules_jsmay need version bumps
Intentional Exceptions
DenmarkSmbCache uses WORKSPACE mode because rules_dotnet does not
yet support Bzlmod. This repo uses .bazelversion but skips MODULE.bazel.
Track upstream: https://github.com/bazel-contrib/rules_dotnet