Update dependency rules_python to v2.3.1 - #58
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
renovate
Bot
force-pushed
the
renovate/rules_python-2.x
branch
from
August 15, 2026 00:35
7cec325 to
bac7ecf
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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:
2.2.0→2.3.1Release Notes
bazel-contrib/rules_python (rules_python)
v2.3.1Compare Source
{#v2-3-1-fixed}
Fixed
experimental repository cache users. This restores the previous behavior
(#3791).
{#v2-3-0}
v2.3.0Compare Source
{#v2-3-0-changed}
Changed
extension selects its standard library list on
is_python_3.14, which earlierversions do not define.
{#v2-3-0-fixed}
Fixed
py_binary_rule_builder()/py_test_rule_builder()(frompython/api/executables.bzl)failing at analysis time with a visibility error when used to construct a custom rule from an
external module.
dataattribute and forward itdirectly to the generated
py_binary, so files passed viadatacan bereferenced from
extra_argsusing$(location ...).coverage.pywheel is no longeremitted as we are now falling back to a pure python wheel
(#3950).
python_version3.13 and 3.14; previously both fell back to the 3.11 list, so modulesadded or removed since then (e.g.
compression.zstd,telnetlib) were misclassified. Thefallback list for unrecognized versions is now the newest available one rather than 3.11
(#3978).
uv_lockto be specified inpip.parsewithout requiringrequirements_lock(or other os-specific requirement file attributes) to beset.
(
pkg[extra]entries in a package's ownRequires-Dist). The loop comparedthe number of extras discovered in the current round against the number known
before it, rather than against the size of the merged set. As a result it
could stop before every extra was resolved, silently dropping dependencies
only reachable through two or more
pkg[extra]hops, and for the common caseof a package with no self-referencing extras it never converged at all,
running all 10000 rounds while evaluating each wheel's generated
BUILDfile(#4039).
--hash=<algo>:<digest>pins and Simple API#<algo>=<digest>URL fragments are now parsed for all hash algorithmsinstead of silently dropping everything except
sha256. Non-sha256 pins arematched against the digests advertised by the index and downloads are verified
using the corresponding Subresource Integrity value, and the pins are kept in
the requirement line when falling back to
pip(#3972).
As part of this,
whl_libraryrepos created bypip.parsenow always passthe digest via the
integrityattribute (SRI format) instead ofsha256,and the lock file facts store digests as
<algo>:<digest>values (the factsversion was bumped, so cached index information is refreshed once).
pip.parse(uv_lock = ...)no longer exposes uv workspace/root membersthat resolve to no wheel or sdist (e.g.
source = { virtual = "." }or editableinstalls). Previously these source-less packages were added to the hub's
all_requirements/all_whl_requirementswith an alias to a subpackage thatdoes not exist, breaking analysis for anything enumerating the full set such as
modules_mapping(wheels = all_whl_requirements)(#3934).
index_urlfor each wheel so that the source registry is forwarded tothe {obj}
whl_library. This is so that thepurlforpackage_metadatacan be correctlyconstructed.
enabling wheel sources files to point to an absolute path. Currently it supports
the
file://<absolute_path>for linux and windows like paths. We also supportenvsubst for the said paths from now on.
{#v2-3-0-added}
Added
build_python_zip,incompatible_default_to_explicit_init_py,python_path, andexperimental_python_import_all_repositories.{obj}explicit_init_pytag class to the `{obj}`configmodule extension for configuring implicit__init__.pyfilegeneration module-wide.
(#3997,
#2945)
py_extensionmacro for creating C/C++ Pythonextension modules
(#3283).
(cc) Added
libc,platform_machine,platform_tag,soabi, andsys_platformattributes and info fields to {obj}py_cc_toolchain/{obj}
PyCcToolchainInfo.pyproject_tomlattribute to {obj}pip.default, {obj}pip.parseand {obj}python.defaultsto read the default Python version from therequires-pythonfield ofpyproject.toml.py_testtargets that silentlypass without running any tests. Set
{obj}
--@rules_python//python/config_settings:validate_test_main=enabledtofail the build when a test's main module only contains inert top-level
statements (definitions, imports, assignments) and never invokes a test
runner (#3824).
{#v2-2-0}
Configuration
📅 Schedule: (UTC)
🚦 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 was generated by Mend Renovate. View the repository job log.