Add to your MODULE.bazel file:
bazel_dep(name = "aspect_rules_py", version = "2.0.0-alpha.4")And also register a Python toolchain, see rules_python. For example:
python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
python_version = "3.13",
)What's Changed
- fix(uv): evaluate version prefix markers by @tamird in #1112
- test: add e2e regression test for disabling the anyio pytest plugin by @xangcastle in #1114
- fix(uv): skip virtual workspace installs by @tamird in #1119
- fix: resolve MPICC from PATH instead of defaulting to the Bazel C compiler by @xangcastle in #1115
- fix(uv): consolidate per-wheel metadata + namespace/regular-span venv merge by @jbedard in #1092
- test(uv): cover remaining PEP 508 marker variables by @jbedard in #1126
- refactor(py): detect binaries by provider instead of rule kind in py_image_layer aspect by @jbedard in #1127
- refactor: use bazel built zip extraction by @jbedard in #1128
- refactor: detect and fail on unpack subprocess errors by @jbedard in #1129
- fix(py): normalize wheel tree permissions by @jbedard in #1123
- fix(uv): fail the build cleanly on patch errors and suppress .orig backups by @jbedard in #1121
- fix: upgrade hermetic_launcher to 0.0.11 to fix py_binary execve failure by @jbedard in #1130
- fix: quotes in RECORD entries by @jbedard in #1125
- docs: fix misleading debugger support section in README by @xangcastle in #1132
- fix(uv): keep inactive marker packages valid by @jbedard in #1122
- revert(py): normalize wheel tree permissions (#1123) by @jbedard in #1137
- test(py_venv): guard wheel-root .pth execution on the addsitedir fallback by @jbedard in #1138
- test(py_venv): add snapshot tests of pth_install_tree_fallback by @jbedard in #1139
- feat(uv): reserve wheel build resources via uv.override_package(resource_set) by @jbedard in #1133
- test(uv): verify inactive marker packages resolve to empty targets by @xangcastle in #1141
- fix(uv): overlay .data/{purelib,platlib} into site-packages by @jbedard in #1143
- fix(uv): key wheel metadata by basename and decode %2B local versions by @jbedard in #1144
- fix(uv): strip extras from console-script entry points by @jbedard in #1145
- feat(uv): expose per-group deps by @jbedard in #1136
- refactor(py): remove inert interpreter default by @tamird in #1156
- fix(uv): retain anyarch validation by @tamird in #1163
- fix(uv): isolate source-build Python by @tamird in #1148
- fix(py): avoid ambiguous Linux exec tools by @tamird in #1177
- fix(py_venv): link complete runfiles tree by @tamird in #1147
- feat(uv): monitor wheel build memory by @tamird in #1174
- fix(py): preserve per-version toolchain settings by @tamird in #1176
- fix(py): preserve permissive collision order by @tamird in #1154
- fix(py): validate interpreter inputs by @tamird in #1159
- fix(py): support dotted console entry points by @tamird in #1150
- refactor(py): use rules_python exec tools by @tamird in #1157
- test(py): repair toolchain settings e2e by @tamird in #1180
- test: add protobuf/rules_py example by @jbedard in #1186
- chore: remove bazel/proto created and unused since b2abc99 by @jbedard in #1184
- test: ensure all examples run on ci by @jbedard in #1185
- fix(py): remove broken local interpreter tag by @tamird in #1158
- fix: enforce format exclusions by @tamird in #1164
- fix(py): detect execute-bit collisions by @tamird in #1165
- fix: select native compilers from C++ for sdist wheel builds by @xangcastle in #1189
- feat(uv): declare source-built scripts by @tamird in #1153
- fix(py): describe PBS runtime metadata by @tamird in #1161
- fix(uv): isolate PEP 517 runfiles by @tamird in #1168
- fix(uv): align PEP 517 frontend platform by @tamird in #1167
- fix(py_image_layer): don't rename source files that share the binary name by @acozzette in #1192
- fix(py): register PBS C toolchains by @tamird in #1187
- feat(uv): expose group dependency labels by @tamird in #1190
- fix(py_venv): avoid duplicate wheel metadata by @tamird in #1191
- refactor(py_venv): drop _wheels/ indirection to deduplicate runfiles by @jbedard in #1135
- revert: enforce format exclusions (#1164) by @jbedard in #1195
- perf: avoid reconstructing Labels in group_dep_labels by @jbedard in #1197
- refactor(uv): rename group_dep_labels to group_deps_for by @jbedard in #1198
- fix(uv): reject patched wheel topology changes by @tamird in #1200
- fix(uv): reject ignored build overrides by @tamird in #1166
- fix(uv): align C++ toolchain platform by @tamird in #1204
- fix(py): expose POSIX libpython by @tamird in #1202
- refactor: split py_venv binary vs lib rules by @jbedard in #980
Full Changelog: v2.0.0-alpha.3...v2.0.0-alpha.4