bazelbuild/rules_python (rules_python)
### [`v0.34.0`](https://togithub.com/bazelbuild/rules_python/blob/HEAD/CHANGELOG.md#0340---2024-07-04)
[Compare Source](https://togithub.com/bazelbuild/rules_python/compare/0.33.2...0.34.0)
[0.34.0]: https://togithub.com/bazelbuild/rules_python/releases/tag/0.34.0
##### Changed
- `protobuf`/`com_google_protobuf` dependency bumped to `v24.4`
- (bzlmod): optimize the creation of config settings used in pip to
reduce the total number of targets in the hub repo.
- (toolchains) The exec tools toolchain now finds its interpreter by reusing
the regular interpreter toolchain. This avoids having to duplicate specifying
where the runtime for the exec tools toolchain is.
- (toolchains) ({obj}`//python:autodetecting_toolchain`) is deprecated. It is
replaced by {obj}`//python/runtime_env_toolchains:all`. The old target will be
removed in a future release.
##### Fixed
- (bzlmod): When using `experimental_index_url` the `all_requirements`,
`all_whl_requirements` and `all_data_requirements` will now only include
common packages that are available on all target platforms. This is to ensure
that packages that are only present for some platforms are pulled only via
the `deps` of the materialized `py_library`. If you would like to include
platform specific packages, using a `select` statement with references to the
specific package will still work (e.g.
my_attr = all_requirements + select(
{
"@platforms//os:linux": ["@pypi//foo_available_only_on_linux"],
"//conditions:default": [],
}
)
- (bzlmod): Targets in `all_requirements` now use the same form as targets returned by the `requirement` macro.
- (rules) Auto exec groups are enabled. This allows actions run by the rules,
such as precompiling, to pick an execution platform separately from what
other toolchains support.
- (providers) {obj}`PyRuntimeInfo` doesn't require passing the
`interpreter_version_info` arg.
- (bzlmod) Correctly pass `isolated`, `quiet` and `timeout` values to `whl_library`
and drop the defaults from the lock file.
- (whl_library) Correctly handle arch-specific dependencies when we encounter a
platform specific wheel and use `experimental_target_platforms`.
Fixes [#1996](https://togithub.com/bazelbuild/rules_python/issues/1996).
- (rules) The first element of the default outputs is now the executable again.
- (pip) Fixed crash when pypi packages lacked a sha (e.g. yanked packages)
##### Added
- (toolchains) {obj}`//python/runtime_env_toolchains:all`, which is a drop-in
replacement for the "autodetecting" toolchain.
- (gazelle) Added new `python_label_convention` and `python_label_normalization` directives. These directive
allows altering default Gazelle label format to third-party dependencies useful for re-using Gazelle plugin
with other rules, including `rules_pycross`. See [#1939](https://togithub.com/bazelbuild/rules_python/issues/1939).
##### Removed
- (pip): Removes the `entrypoint` macro that was replaced by `py_console_script_binary` in 0.26.0.
Configuration
📅 Schedule: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
0.33.2
->0.34.0
Release Notes
bazelbuild/rules_python (rules_python)
### [`v0.34.0`](https://togithub.com/bazelbuild/rules_python/blob/HEAD/CHANGELOG.md#0340---2024-07-04) [Compare Source](https://togithub.com/bazelbuild/rules_python/compare/0.33.2...0.34.0) [0.34.0]: https://togithub.com/bazelbuild/rules_python/releases/tag/0.34.0 ##### Changed - `protobuf`/`com_google_protobuf` dependency bumped to `v24.4` - (bzlmod): optimize the creation of config settings used in pip to reduce the total number of targets in the hub repo. - (toolchains) The exec tools toolchain now finds its interpreter by reusing the regular interpreter toolchain. This avoids having to duplicate specifying where the runtime for the exec tools toolchain is. - (toolchains) ({obj}`//python:autodetecting_toolchain`) is deprecated. It is replaced by {obj}`//python/runtime_env_toolchains:all`. The old target will be removed in a future release. ##### Fixed - (bzlmod): When using `experimental_index_url` the `all_requirements`, `all_whl_requirements` and `all_data_requirements` will now only include common packages that are available on all target platforms. This is to ensure that packages that are only present for some platforms are pulled only via the `deps` of the materialized `py_library`. If you would like to include platform specific packages, using a `select` statement with references to the specific package will still work (e.g. my_attr = all_requirements + select( { "@platforms//os:linux": ["@pypi//foo_available_only_on_linux"], "//conditions:default": [], } ) - (bzlmod): Targets in `all_requirements` now use the same form as targets returned by the `requirement` macro. - (rules) Auto exec groups are enabled. This allows actions run by the rules, such as precompiling, to pick an execution platform separately from what other toolchains support. - (providers) {obj}`PyRuntimeInfo` doesn't require passing the `interpreter_version_info` arg. - (bzlmod) Correctly pass `isolated`, `quiet` and `timeout` values to `whl_library` and drop the defaults from the lock file. - (whl_library) Correctly handle arch-specific dependencies when we encounter a platform specific wheel and use `experimental_target_platforms`. Fixes [#1996](https://togithub.com/bazelbuild/rules_python/issues/1996). - (rules) The first element of the default outputs is now the executable again. - (pip) Fixed crash when pypi packages lacked a sha (e.g. yanked packages) ##### Added - (toolchains) {obj}`//python/runtime_env_toolchains:all`, which is a drop-in replacement for the "autodetecting" toolchain. - (gazelle) Added new `python_label_convention` and `python_label_normalization` directives. These directive allows altering default Gazelle label format to third-party dependencies useful for re-using Gazelle plugin with other rules, including `rules_pycross`. See [#1939](https://togithub.com/bazelbuild/rules_python/issues/1939). ##### Removed - (pip): Removes the `entrypoint` macro that was replaced by `py_console_script_binary` in 0.26.0.Configuration
📅 Schedule: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.