-
-
Notifications
You must be signed in to change notification settings - Fork 15
Commit d14eda2
authored
chore(deps): update dependency rules_python to v0.33.0 (#321)
[](https://renovatebot.com)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [rules_python](https://togithub.com/bazelbuild/rules_python) |
http_archive | minor | `0.32.2` -> `0.33.0` |
---
### Release Notes
<details>
<summary>bazelbuild/rules_python (rules_python)</summary>
###
[`v0.33.0`](https://togithub.com/bazelbuild/rules_python/blob/HEAD/CHANGELOG.md#0330---2024-06-12)
[Compare
Source](https://togithub.com/bazelbuild/rules_python/compare/0.32.2...0.33.0)
[0.33.0]:
https://togithub.com/bazelbuild/rules_python/releases/tag/0.33.0
##### Changed
- (deps) Upgrade the `pip_install` dependencies to pick up a new version
of pip.
- (toolchains) Optional toolchain dependency: `py_binary`, `py_test`,
and
`py_library` now depend on the `//python:exec_tools_toolchain_type` for
build
tools.
- (deps): Bumped `bazel_skylib` to 1.6.1.
- (bzlmod): The `python` and internal `rules_python` extensions have
been
marked as `reproducible` and will not include any lock file entries from
now
on.
- (gazelle): Remove gazelle plugin's python deps and make it hermetic.
Introduced a new Go-based helper leveraging tree-sitter for syntax
analysis.
Implemented the use of `pypi/stdlib-list` for standard library module
verification.
- (pip.parse): Do not ignore yanked packages when using
`experimental_index_url`.
This is to mimic what `uv` is doing. We will print a warning instead.
- (pip.parse): Add references to all supported wheels when using
`experimental_index_url`
to allowing to correctly fetch the wheels for the right platform. See
the
updated docs on how to use the feature. This is work towards addressing
[#​735](https://togithub.com/bazelbuild/rules_python/issues/735)
and
[#​260](https://togithub.com/bazelbuild/rules_python/issues/260).
The spoke
repository names when using this flag will have a structure of
`{pip_hub_prefix}_{wheel_name}_{py_tag}_{abi_tag}_{platform_tag}_{sha256}`,
which is an implementation detail which should not be relied on and is
there
purely for better debugging experience.
- (bzlmod) The `pythons_hub//:interpreters.bzl` no longer has
platform-specific
labels which where left there for compatibility reasons. Move to
`python_{version}_host` keys if you would like to have access to a
Python
interpreter that can be used in a repository rule context.
##### Fixed
- (gazelle) Remove `visibility` from `NonEmptyAttr`.
Now empty(have no `deps/main/srcs/imports` attr)
`py_library/test/binary` rules will
be automatically deleted correctly. For example, if
`python_generation_mode`
is set to package, when `__init__.py` is deleted, the `py_library`
generated
for this package before will be deleted automatically.
- (whl_library): Use `is_python_config_setting` to correctly handle
multi-python
version dependency select statements when the
`experimental_target_platforms`
includes the Python ABI. The default python version case within the
select is
also now handled correctly, stabilizing the implementation.
- (gazelle) Fix Gazelle failing on Windows with
"panic: runtime error: invalid memory address or nil pointer
dereference"
- (bzlmod) remove `pip.parse(annotations)` attribute as it is unused and
has been
replaced by whl_modifications.
- (pip) Correctly select wheels when the python tag includes minor
versions.
See
([#​1930](https://togithub.com/bazelbuild/rules_python/issues/1930))
- (pip.parse): The lock file is now reproducible on any host platform if
the
`experimental_index_url` is not used by any of the modules in the
dependency
chain. To make the lock file identical on each `os` and `arch`, please
use
the `experimental_index_url` feature which will fetch metadata from PyPI
or a
different private index and write the contents to the lock file. Fixes
[#​1643](https://togithub.com/bazelbuild/rules_python/issues/1643).
- (pip.parse): Install `yanked` packages and print a warning instead of
ignoring them. This better matches the behaviour of `uv pip install`.
- (toolchains): Now matching of the default hermetic toolchain is more
robust
and explicit and should fix rare edge-cases where the host toolchain
autodetection would match a different toolchain than expected. This may
yield
to toolchain selection failures when the python toolchain is not
registered,
but is requested via `//python/config_settings:python_version` flag
setting.
- (doc) Fix the `WORKSPACE` requirement vendoring example. Fixes
[#​1918](https://togithub.com/bazelbuild/rules_python/issues/1918).
##### Added
- (rules) Precompiling Python source at build time is available. but is
disabled by default, for now. Set
`@rules_python//python/config_settings:precompile=enabled` to enable it
by default. A subsequent release will enable it by default. See the
[Precompiling docs][precompile-docs] and API reference docs for more
information on precompiling. Note this requires Bazel 7+ and the Pystar
rule
implementation enabled.
([#​1761](https://togithub.com/bazelbuild/rules_python/issues/1761))
- (rules) Attributes and flags to control precompile behavior:
`precompile`,
`precompile_optimize_level`, `precompile_source_retention`,
`precompile_invalidation_mode`, and `pyc_collection`
- (toolchains) The target runtime toolchain (`//python:toolchain_type`)
has
two new optional attributes: `pyc_tag` (tells the pyc filename infix to
use) and
`implementation_name` (tells the Python implementation name).
- (toolchains) A toolchain type for build tools has been added:
`//python:exec_tools_toolchain_type`.
- (providers) `PyInfo` has two new attributes: `direct_pyc_files` and
`transitive_pyc_files`, which tell the pyc files a target makes
available
directly and transitively, respectively.
- `//python:features.bzl` added to allow easy feature-detection in the
future.
- (pip) Allow specifying the requirements by (os, arch) and add extra
validations when parsing the inputs. This is a non-breaking change for
most
users unless they have been passing multiple `requirements_*` files
together
with `extra_pip_args = ["--platform=manylinux_2_4_x86_64"]`, that was an
invalid usage previously but we were not failing the build. From now on
this
is explicitly disallowed.
- (toolchains) Added riscv64 platform definition for python toolchains.
- (gazelle) The `python_visibility` directive now supports the
`$python_root$`
placeholder, just like the `python_default_visibility` directive does.
- (rules) A new bootstrap implementation that doesn't require a system
Python
is available. It can be enabled by setting
{obj}`--@​rules_python//python:config_settings:bootstrap_impl=two_phase`.
It
will become the default in a subsequent release.
([#​691](https://togithub.com/bazelbuild/rules_python/issues/691))
- (providers) `PyRuntimeInfo` has two new attributes:
{obj}`PyRuntimeInfo.stage2_bootstrap_template` and
{obj}`PyRuntimeInfo.zip_main_template`.
- (toolchains) A replacement for the Bazel-builtn autodetecting
toolchain is
available. The `//python:autodetecting_toolchain` alias now uses it.
- (pip): Support fetching and using the wheels for other platforms. This
supports customizing whether the linux wheels are pulled for `musl` or
`glibc`, whether `universal2` or arch-specific MacOS wheels are
preferred and
it also allows to select a particular `libc` version. All of this is
done via
the `string_flags` in `@rules_python//python/config_settings`. If there
are
no wheels that are supported for the target platform, `rules_python`
will
fallback onto building the `sdist` from source. This behaviour can be
disabled if desired using one of the available string flags as well.
- (whl_filegroup) Added a new `whl_filegroup` rule to extract files from
a wheel file.
This is useful to extract headers for use in a `cc_library`.
[precompile-docs]: /precompiling
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Enabled.
♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/bazel-contrib/rules_bazel_integration_test).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zOTMuMCIsInVwZGF0ZWRJblZlciI6IjM3LjM5My4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>1 parent 9dc7685 commit d14eda2Copy full SHA for d14eda2
File tree
Expand file treeCollapse file tree
1 file changed
+3
-3
lines changedFilter options
- bazel_integration_test
Expand file treeCollapse file tree
1 file changed
+3
-3
lines changedbazel_integration_test/deps.bzl
Copy file name to clipboardExpand all lines: bazel_integration_test/deps.bzl+3-3Lines changed: 3 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
29 | 29 |
| |
30 | 30 |
| |
31 | 31 |
| |
32 |
| - | |
33 |
| - | |
34 |
| - | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
35 | 35 |
|
0 commit comments