aspect-cli
This is the frontend for the Aspect build tool. It is currently just a wrapper around bazelisk or bazel, meant to install in tools/bazel.
In the future, we might totally replace the bazel C++ client, and this tool would be a gRPC client of the bazel server.
TODOs
- [ ] figure out how to cut and host a release GH Action to cut/publish release whenever a tag is pushed upstream
- [ ] document lots of ways to install, including a bash one-liner
- [ ] help user ensure bash/zsh completion working
- [ ] warn user if Bazel version is floating (no bazelisk, or using latest in .bazelversion, or no .bazelversion)
Use Cases
When I am confused by bazel
I can find that Aspect is an easier-to-use wrapper and feel motivated and comfortable to try it immediately.
From aspect.build/install I quickly pick an Installation option, and am guided through to successful install.
The first time I run aspect in interactive mode,
- I choose whether I want to install for all users of my workspace, in which case a bootstrap bit is added to tools/bazel ensuring that the tool is downloaded and spawned for anyone cloning my repo.
When I run bare bazel
When I run bare bazel build
When I run bare bazel test