Python is one of the most popular languages at Google. Add Python to your Bazel setup, with all the common developer workflows. This course assumes students have completed Bazel 101.
This course uses these Bazel modules:
- Bazel Central Registry | rules_python is the “standard” ruleset for Python.
- Bazel Central Registry | aspect_rules_py adds an understanding of Virtual Environments (”virtualenv”) which makes tools like Editors and Debuggers work the way you expect.
- Bazel Central Registry | rules_uv wires up the
uv
package manager, written in Rust, which we’ll use as a fast constraint-solver to resolve requirements.
Video
If you prefer to watch, this conference talk follows essentially the same outline as the course materials below:
Outline
Write a simple applicationEditor features: virtualenvsWatch modeUsing monorepo dependenciesTesting and DebuggingIntegrate Python console scripts as toolsFormatting and LintingShipping artifactsMore lessons coming soon:
- Type-checking