chore(deps): update dependency rules_python to v0.33.0 #323
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.32.2
->0.33.0
Release Notes
bazelbuild/rules_python (rules_python)
v0.33.0
Compare Source
Changed
pip_install
dependencies to pick up a new version of pip.py_binary
,py_test
, andpy_library
now depend on the//python:exec_tools_toolchain_type
for buildtools.
bazel_skylib
to 1.6.1.python
and internalrules_python
extensions have beenmarked as
reproducible
and will not include any lock file entries from nowon.
Introduced a new Go-based helper leveraging tree-sitter for syntax analysis.
Implemented the use of
pypi/stdlib-list
for standard library module verification.experimental_index_url
.This is to mimic what
uv
is doing. We will print a warning instead.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 and
#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.
pythons_hub//:interpreters.bzl
no longer has platform-specificlabels which where left there for compatibility reasons. Move to
python_{version}_host
keys if you would like to have access to a Pythoninterpreter that can be used in a repository rule context.
Fixed
visibility
fromNonEmptyAttr
.Now empty(have no
deps/main/srcs/imports
attr)py_library/test/binary
rules willbe automatically deleted correctly. For example, if
python_generation_mode
is set to package, when
__init__.py
is deleted, thepy_library
generatedfor this package before will be deleted automatically.
is_python_config_setting
to correctly handle multi-pythonversion 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.
"panic: runtime error: invalid memory address or nil pointer dereference"
pip.parse(annotations)
attribute as it is unused and has beenreplaced by whl_modifications.
See (#1930)
experimental_index_url
is not used by any of the modules in the dependencychain. To make the lock file identical on each
os
andarch
, please usethe
experimental_index_url
feature which will fetch metadata from PyPI or adifferent private index and write the contents to the lock file. Fixes
#1643.
yanked
packages and print a warning instead ofignoring them. This better matches the behaviour of
uv pip install
.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.WORKSPACE
requirement vendoring example. Fixes#1918.
Added
disabled by default, for now. Set
@rules_python//python/config_settings:precompile=enabled
to enable itby default. A subsequent release will enable it by default. See the
Precompiling docs and API reference docs for more
information on precompiling. Note this requires Bazel 7+ and the Pystar rule
implementation enabled.
(#1761)
precompile
,precompile_optimize_level
,precompile_source_retention
,precompile_invalidation_mode
, andpyc_collection
//python:toolchain_type
) hastwo new optional attributes:
pyc_tag
(tells the pyc filename infix to use) andimplementation_name
(tells the Python implementation name).//python:exec_tools_toolchain_type
.PyInfo
has two new attributes:direct_pyc_files
andtransitive_pyc_files
, which tell the pyc files a target makes availabledirectly and transitively, respectively.
//python:features.bzl
added to allow easy feature-detection in the future.validations when parsing the inputs. This is a non-breaking change for most
users unless they have been passing multiple
requirements_*
files togetherwith
extra_pip_args = ["--platform=manylinux_2_4_x86_64"]
, that was aninvalid usage previously but we were not failing the build. From now on this
is explicitly disallowed.
python_visibility
directive now supports the$python_root$
placeholder, just like the
python_default_visibility
directive does.is available. It can be enabled by setting
{obj}
--@​rules_python//python:config_settings:bootstrap_impl=two_phase
. Itwill become the default in a subsequent release.
(#691)
PyRuntimeInfo
has two new attributes:{obj}
PyRuntimeInfo.stage2_bootstrap_template
and{obj}
PyRuntimeInfo.zip_main_template
.available. The
//python:autodetecting_toolchain
alias now uses it.supports customizing whether the linux wheels are pulled for
musl
orglibc
, whetheruniversal2
or arch-specific MacOS wheels are preferred andit also allows to select a particular
libc
version. All of this is done viathe
string_flags
in@rules_python//python/config_settings
. If there areno wheels that are supported for the target platform,
rules_python
willfallback onto building the
sdist
from source. This behaviour can bedisabled if desired using one of the available string flags as well.
whl_filegroup
rule to extract files from a wheel file.This is useful to extract headers for use in a
cc_library
.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.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate. View repository job log here.