Update dependency rules_python to v2#2286
Merged
Merged
Conversation
Contributor
Author
Edited/Blocked NotificationRenovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR. You can manually request rebase by checking the rebase/retry box above. |
0d91a25 to
f9fde4d
Compare
…ativelink into renovate/rules_python-2.x
palfrey
approved these changes
Apr 29, 2026
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:
1.2.0→2.0.01.3.0→2.0.0Release Notes
bazel-contrib/rules_python (rules_python)
v2.0.0Compare Source
{#v2-0-0-removed}
Removed
{#v2-0-0-changed}
Changed
Breaking
--windows_enable_symlinksis required. Addstartup --windows_enable_symlinksto your.bazelrcto enable Bazel using fullsymlink support on Windows.
--bootstrap_impl=system_python)on supported platforms (Linux/Mac with Bazel 8+, or Windows).
--build_python_zipon Windows is ignored. Use {obj}py_zipapp_binaryto createzips of Python programs.
experimental_index_urlusers would not need to specifytarget platforms if cross-building is required. From now we will only pull
wheels for the host OS to better align with how the rules work with the legacy
pipimplementation. Use {obj}pip.parse.target_platformsto customize thebehavior.
Related to #260.
Other changes:
compile_pip_requirements, buildingsdists in the
whl_libraryrule and fetching wheels usingpip.we will from now on fetch the lists of available packages on each index. The
used package mappings will be written as facts to the
MODULE.bazel.lockfileon supported bazel versions and it should be done at most once. As a result,
per-package {obj}
experimental_index_url_overridesis no longer needed, butif specified, it needs to be provided for all packages not on the default index. What
is more, the flags for
--index_urland--extra-index-urlnow behave in thesame way as in
uvorpip, i.e. we default to--index-urlif the packageis not found in
--extra-index-url. Fixes(#3260 and
#2632).
uv'sdist_manifest.jsonfile. If you have redirects or blocking rules as part ofyour downloader setup, you may need to adjust them. What is more, the default
uv version has been bumped
0.11.2.symlink-based runfiles tree is created, as on unix-like platforms.
{#v2-0-0-fixed}
Fixed
py_zippapp_binarytargets(#3646).
cause the Python runtime repository to be invalidated. The stdlib pyc files
may be reused in between invocations, depending upon the sandboxing
configuration. See the {any}
RULES_PYTHON_PYCACHE_DIRenvironment variablefor more information.
(#3643).
scripts when binary is defined in another bazel module
(#3563).
RUNFILES_DIRinheritance issues, which lead to a childPython binary incorrectly using it's parent's Python binary environment
(#3518).
>=0.10work again. In order to fix this we haddrop support for
powerpc64platform. People interested in the platform canbring it back via the
uv.defaultAPI. Like:Fixes #3712.
{#v2-0-0-added}
Added
MODULE.bazel.lockfile if using{obj}
experimental_index_urlwhich should speed up consecutiveinitializations and should no longer require the network access if the cache is
hydrated. Implements
#2731.
--index-urland--extra-index-urlis now parsed from the lockfile and the {obj}
pip.parse.experimental_index_urland{obj}
pip.parse.experimental_extra_index_urlsisno longer mandatory to leverage the bazel downloader.
Implements
#1357,
#2951.
pip.parse.target_platformsto specify exactly which platforms should be supported.
Implements
#260.
/as a destination indata_fileswill now install file(s) to a folder, preserving their basename.
py_runtime.venv_bin_filesand {obj}PyRuntime.venv_binfilesfield added to specify additional Python runtime files Windows needs for
venvs.
PyExecutableInfo.venv_interpreter_runfiles, and{obj}
PyExecutableInfo.venv_interpreter_symlinksaddeadd_path_prefixargument inpy_wheelwhich can beused to prepend a prefix to the files in the wheel.
{#v1-9-0}
v1.9.0Compare Source
{#v1-9-0-removed}
Removed
{#v1-9-0-changed}
Changed
py_binary/py_testhas been deprecated andreplaced by separate {obj}
py_zipapp_binaryand {obj}py_zipapp_testrules. See
#3567
for a detailed migration guide.
Please consider depending on the flags defined in
//python/config_setting/...and the@platformspackage instead.PYTHONBREAKPOINTenvironment variable is automatically inheritedstampattribute now transitions the Bazel builtin{flag}
--stampflag.in order to make
pytorchand friends easier to patch.py_wheelno longer expands the input depset during analysis,improving analysis performance for targets with large dependency trees.
--enable_runfiles=trueis the default forpy_binary/py_test. Prior behavior can be restored by adding@rules_python//command_line_option:enable_runfiles=falseor@rules_python//command_line_option:enable_runfiles=INHERITto theconfig_settingsattribute. NOTE:enable_runfiles=truewillsoon become required for Windows.
{#v1-9-0-fixed}
Fixed
(#2762)
conftest.pyfiles are added in addition to siblingconftest.py.(#3497) Note
that this behavior can be reverted to the pre-1.9.0 behavior by setting the new
python_include_ancestor_conftestdirective tofalse.{#v1-9-0-added}
Added
--debugger: allows specifying an extra dependencyto add to binaries/tests for custom debuggers.
Use the
bazel_binary_infomodule to access it. The {flag}--stampflag willadd {obj}
--workspace_status_commandinformation.python_generate_pyi_srcshas been added. Whentrue, apy_*target'spyi_srcsattribute will be set if any.pyifilesthat are associated with the target's
srcsare present.(#3354).
py_zipapp_binaryand {obj}py_zipapp_testrules added. Thesewill replace
--build_python_zipand the zip output group ofpy_binary/py_test. The zipapp rules support more functionality, correctness,and have better build performance.
PyExecToolsInfo.exec_runtimefor more easilygetting an RBE-compatible runtime to use for build actions.
PyExecutableInfohas several new fields to aid packagingof binaries: {obj}
PyExecutableInfo.app_runfiles,{obj}
PyExecutableInfo.interpreter_args,{obj}
PyExecutableInfo.stage2_bootstrap, and{obj}
PyExecutableInfo.venv_python_exe.in Requires-Dist metadata. (#3569)
python_include_ancestor_conftesthas been added.When
false, ancestorconftesttargets are not automatically added to{bzl:obj}
py_testtarget dependencies. Thisfalsebehavior is how thingswere in
rules_pythonbefore 1.9.0. The default istrue, as the prior behaviorwas technically incorrect.
(#3596)
{#v1-8-5}
v1.8.5Compare Source
{#v1-8-5-fixed}
Fixed
CurrentRepository()raisingValueErroron Windows.(#3579)
pip_parseno longer silently drops PEP 508 URL-based requirements(
pkg @​ https://...) whenextract_url_srcs=False(the default forpip_repository).fixing missing transitive dependencies when extras contain hyphens
(e.g.,
sqlalchemy[postgresql-psycopg2binary]).(#3587)
{#v1-8-4}
v1.8.4Compare Source
{#v1-8-4-fixed}
Fixed
"1.2" ~= "1.2.0")has been fixed improving compatibility with the PEP440 standard.
Fixes #3580.
where the
whlfile is missing them.Fixes #3554.
{#v1-8-3}
v1.8.3Compare Source
{#v1-8-3-fixed}
Fixed
Fixes #3543.
{#v1-8-2}
v1.8.2Compare Source
{#v1-8-2-fixed}
Fixed
Fixes #3524.
{#v1-8-1}
v1.8.1Compare Source
{#v1-8-1-fixed}
Fixed
Fixes #3524.
{#v1-8-0}
v1.8.0Compare Source
{#v1-8-0-known-issues}
Known Issues
#3416 for
details and possible workarounds.
{#v1-8-0-removed}
Removed
(toolchain) Remove all of the python 3.8 toolchain support out of the box. Users need
to pass the
TOOL_VERSIONSthat include 3.8 toolchains or use thebzlmodAPIs to addthem back. This means any hub
pip.parsecalls that target3.8will be ignored fromnow on. (#2704)
{bzl:obj}
python.single_version_override, like:(toolchain) Remove all of the python 3.9 toolchain versions except for the
3.9.25.This version has reached EOL and will no longer receive any security fixes, please update to
3.10or above. (#2704)(toolchain)
ignore_root_user_errorhas now been flipped to be always enabled andthe
chmodof the python toolchain directories have been removed. From now onrules_pythonalways adds the
pycfiles to the glob excludes and in order to avoid any problems when usingthe toolchains in the repository phase, ensure that you pass
-Bto the python interpreter.(#2016)
{#v1-8-0-changed}
Changed
pipstarhas been enabled for allwhl_libraryinstances where the whlis passed through a label or downloaded using the bazel downloader
(#2949).
pipstarflag default has been flipped to be on by default.It can be disabled through
RULES_PYTHON_ENABLE_PIPSTAR=0environment variable.If you do need to disable it, please add a comment to
#2949.
{#v1-8-0-fixed}
Fixed
py_binarytargets with invalidsrcs. This includes filesthat are not generated or regular files.
#3046
implementation assumes that it is always four levels below the runfiles
directory, leading to incorrect path checks
(#3085).
sys.abiflagsvalue of theunderlying runtime.
fixes to linking, Windows DLL detection, and defines for free threaded
runtimes.
python_headerstarget is now compatible withlayering_check.
(#3381).
gazelle_python_manifest.testso that it accesses manifest files viarunfilepath handling rather than directly (#3397).sys.path.
.servetarget is now compatible with Bazel's--symlink_prefixflag (#3410).
{#v1-8-0-added}
Added
3.9.25Python toolchain from 20251031 release.3.13.10,3.14.1Python toolchain from 20251202 release.3.13.11,3.14.2,3.15.0a2Python toolchains from 20251209 release.pip.parsewhich platforms users care about. This is very useful to ensurethat when users do
bazel queryfor their deps, they don't have to download all of thedependencies for all of the available wheels. Torch wheels can be up of 1GB and it takes a lot
of time to download those, which is unnecessary if only the host platform builds are necessary
to be performed. This is mainly for backwards/forwards compatibility whilst rolling out
RULES_PYTHON_ENABLE_PIPSTAR=1by default. Users ofexperimental_index_urlthat performcross-builds should add {obj}
target_platformsto theirpip.parseinvocations, which willbecome mandatory if any cross-builds are required from the next release.
namespace_package_filesadded. It is a hint foroptimizing venv creation.
{#v1-7-0}
v1.7.0Compare Source
{#v1-7-0-removed}
Removed
removed
(#3215).
{#v1-7-0-changed}
Changed
0.1.5.--bootstrap_impl=system_python,PYTHONPATHis nolonger used to add import paths. The sys.path order has changed from
[app paths, stdlib, runtime site-packages]to[stdlib, app paths, runtime site-packages].--bootstrap_impl=system_python, the sys.path order haschanged from
[app paths, stdlib, runtime site-packages]to[stdlib, app paths, runtime site-packages].experimental_index_url.(#2937).
py_runtimeandPyRuntimeInforeject Python 2 settings.Setting
py_runtime.python_version = "PY2"or non-NonePyRuntimeInfo.py2_runtimeis an error.pipstarflag has been implemented forWORKSPACEand can be flipped to be enabled usingRULES_PYTHON_ENABLE_PIPSTAR=1environment variable. If you do, pleaseadd a comment to
#2949 if you run into any
problems.
With this release we are deprecating {obj}
pip.parse.experimental_target_platformsandpip_repository.experimental_target_platforms. For users usingWORKSPACEandvendoring the
requirements.bzlfile, please re-vendor so that downstream is unaffectedwhen the APIs get removed. If you need to customize the way the dependencies get
evaluated, see our docs on customizing
Requires-Distresolution.from the 20251014 release.
bazel-skylibversion1.8.2
{#v1-7-0-fixed}
Fixed
PyInfoconstructor was setting the wrong value forhas_py3_only_sources- this is now fixed.RUNFILES_DIRenvironments, fixing issues where a
py_binarycalls anotherpy_binary(#3187).
length errors due to too long environment variables.
--bootstrap_impl=scriptnow supports the-Sinterpretersetting.
--venvs_site_packages=yesno longer errors when packages withoverlapping files or directories are used together.
(#3204).
--venvs_site_packages=yesworks for packages that dynamicallylink to shared libraries
(#3228).
--venvs_site_packages=yesincludespthfiles at the root of thesite-packages folder
(#3339).
//python/uv:lock.bzl%locknow works with a local platformruntime.
linux_riscv64is added to the platforms list in_pip_repository_impl,which fixes a build issue for tensorflow on riscv64.
variants. Setting {obj}
--py_linux_libc=musland--py_freethreaded=yesnowactivate them, respectively.
(#3262).
py_console_script_binaryis now compatible with symbolic macros(#3195).
{#v1-7-0-added}
Added
--incompatible_compact_repo_mapping_manifestflag.--bootstrap_impl=system_pythonnow supports the{obj}
main_moduleattribute.--bootstrap_impl=system_pythonnow supports the{any}
RULES_PYTHON_ADDITIONAL_INTERPRETER_ARGSenvironment variable.py_binary,py_test, andpy_wheelrules now have a{obj}
config_settingsattribute to control build flags within the build graph.Custom settings can be added using {obj}
config.add_transition_settinginMODULE.bazelfiles, or {obj}py_repositories(transition_settings=...)inWORKSPACEfiles. See the{ref}
common-deps-with-multiple-pypi-versionsguide on using commondependencies with multiple PyPI versions` for an example.
{obj}
//python/cc:current_py_cc_headers_abi3. This allows Windows buildsa way to depend on headers without the potentially Python unstable ABI
objects from the regular {obj}
//python/cc:current_py_cc_headerstargetbeing included.
//python/cc:current_py_cc_headers_abi3,{obj}
py_cc_toolchain.headers_abi3, and {obj}PyCcToolchainInfo.headers_abi3.//python:features.bzl%features.headers_abi3can be used tofeature-detect the presense of the above.
experimental_index_urlhandling forWindows ARM64 for Python 3.11 and later
(#2276).
{#v1-6-3}
v1.6.3Compare Source
{#v1-6-3-fixed}
Fixed
the right wheel when there are multiple wheels for the target platform
(e.g.
musllinux_1_1_x86_64andmusllinux_1_2_x86_64). If the userwants to set the minimum version for the selection algorithm, use the
{obj}
pip.default.whl_platform_tagsattribute to configure that. Ifmusllinux_*_x86_64is specified, we will choose the lowest availablewheel version. Fixes #3250.
{#v1-6-0}
v1.6.1Compare Source
For more detailed setup instructions, see https://rules-python.readthedocs.io/en/latest/getting-started.html
For the user-facing changelog see here
Using Bzlmod
Add to your
MODULE.bazelfile:Using WORKSPACE
Paste this snippet into your
WORKSPACEfile:Gazelle plugin
Paste this snippet into your
WORKSPACEfile:Full Changelog: bazel-contrib/rules_python@1.6.0...1.6.1
v1.6.0Compare Source
{#v1-6-0-changed}
Changed
to the package path. This is enabled via the
# gazelle:python_experimental_allow_relative_importstrue directive ({gh-issue}2203).python.ParserOutputare now all public.__init__.py,__main__.py, or__test__.pyfiles to bepresent in a directory to generate a
BUILD.bazelfile.#2630
linux_x86_64,linux_aarch64,osx_x86_64,osx_aarch64andwindows_x86_64. If you are on other platforms, you need touse the
pip.defaultto configure it yourself. If you are interested in graduating theplatform, consider helping set us up CI for them and update the documentation.
#!/usr/bin/env bashis now used as a shebang in the stage1 bootstrap template.gazelle/README.mdto{gh-path}
gazelle/docsand are now available on the primary documentation siteat https://rules-python.readthedocs.io/en/latest/gazelle/docs/index.html
{#v1-6-0-fixed}
Fixed
local_runtime_reponow respects changes to theDEVELOPER_DIRandXCODE_VERSIONrepo env vars, fixing stale cache issues on macOS with system (i.e. Xcode-supplied) Python
(#3123).
bazel vendorvendor directorywould fail if the constraints file contained environment markers. Fixes
#2996.
result in missing files at runtime
(#2782).
py.typedto indicate itsupports type checking
(#2503).
defaultsconfiguration now supports any custom platformname.
in ambiguous select matches ({gh-issue}
2759) and should be much more efficientwhen running
bazel querydue to fewer repositories being included({gh-issue}
2849).local_runtime_repoworks with multiarch Debian with Python 3.8(#3099).
all_requirements(#2921).
REPLstub to make it possible to use thedefault stub template from outside
rules_python({gh-issue}3101).absolute imports (Python 2's behavior without
absolute_import). Previousbehavior can be restored using the directive
# gazelle:python_resolve_sibling_imports true(#2985).
$PATH(#3150).
bazel vendornow works inbzlmod({gh-issue}3079).local_runtime_reponow works on Windows(#3055).
local_runtime_reposupports more types of Pythoninstallations (Mac frameworks, missing dynamic libraries, and other
esoteric cases, see
#3148 for details).
requirements.txtfiles that use different versions of the samepackage targeting different target platforms.
(#2797).
{#v1-6-0-added}
Added
readlinesupport is available,see (#3114).
(#3114).
requirements.txtevaluation, use the newly addeddeveloper preview of the
pip.defaulttag class. Onlyrules_pythonand root modules can usethis feature. You can also configure custom
config_settingsusingpip.default. Itcan also be used to set the global
netrcorauth_patternsvariables.:extracted_whl_filesfilegroup targetof all the files extracted from the wheel. This can be used in lieu of
{obj}
whl_filegroupto avoid copying/extracting wheel multiple times toget a subset of their files.
gazelle:python_generate_pyi_deps; whentrue,dependencies added to satisfy type-only imports (
if TYPE_CHECKING) and typestub packages are added to
pyi_depsinstead ofdeps.gazelle:include_pytest_conftest. When not set (thedefault) or
true, gazelle will inject anyconftest.pyfile found in the samedirectory as a {obj}
py_testtarget to that {obj}py_testtarget'sdeps.This behavior is unchanged from previous versions. When
false, the:conftestdep is not added to the {obj}
py_testtarget.gazelle:python_generate_proto; whentrue,Gazelle generates
py_proto_libraryrules forproto_library.falseby default.proto language.
gazelle:python_proto_naming_convention; controlsnaming of
py_proto_libraryrules.{#v1-6-0-removed}
Removed
{#v1-5-4}
v1.5.4Compare Source
{#v1-5-4-fixed}
Fixed
local_runtime_reponow checks if the include directory existsbefore attempting to watch it, fixing issues on macOS with system Python
(#3043).
{#v1-5-3}
v1.5.3Compare Source
Fixed
local_runtime_reponow checks if the include directory existsbefore attempting to watch it, fixing issues on macOS with system Python
(#3043).
{#v1-5-2}
v1.5.2Compare Source
{#v1-5-2-changed}
Changed
bazel-skylibversion1.8.1
to remove deprecation warnings.
{#v1-5-2-fixed}
Fixed
sdistdistributions usingpip(#3131).
7.xWORKSPACEconfigurations(#3119).
{#v1-5-1}
v1.5.1Compare Source
{#v1-5-1-fixed}
Fixed
by default again)
(#3038).
{#v1-5-0}
v1.5.0Compare Source
{#v1-5-0-changed}
Changed
--bootstrap_impl=system_pythonis forced. Thisallows setting
--bootstrap_impl=scriptin bazelrc for mixed-platformenvironments.
compile_pip_requirementsnow generates a.testtarget. The_testtarget is deprecated and will be removed in the next major release.(#2794
PyInfo.venv_symlinksreplacesPyInfo.site_packages_symlinksPython 3.9 the minimum supported version for using
pip_parse.{#v1-5-0-fixed}
Fixed
this allows aspects using required_providers to function correctly.
(#2506).
--bootstrap_impl=script:compile_pip_requirementsnow works with itsys._base_executablevalue will reflect the underlying interpreter,not venv interpreter.
//python/runtime_env_toolchains:alltoolchain now works with it.multiple times.
to specify the requirements.
various URL formats - URL encoded version strings get correctly resolved, sha256 value can be
also retrieved from the URL as opposed to only the
--hashparameter. Fixes#2363.
whl_librarynow infers file names from itsurlsattribute correctly.bazel test, be sure that temporaryrequirementsfileremains writable.
by platform even though the same version is used. Fixes #2648.
compile_pip_requirementstest rule works behind the proxyreleaselevelandserialfor pre-release hermetic toolchains ({gh-issue}2837).{#v1-5-0-added}
Added
execute_unchecked,execute_checked, andexecute_checked_stdoutnowsupport
log_stdoutandlog_stderrkeyword arg booleans. When these areTrue(the default), the subprocess's stdout/stderr will be logged.
[Conditionally using local toolchains] docs for how to configure.
available (not enabled by default) for improved multi-platform build support.
Set the
RULES_PYTHON_ENABLE_PIPSTAR=1environment variable to enable it.rules_pythontarget that returnsa
PyInfoprovider..netrcandauth_patternsauth when downloadinguv. Work towards#1975.
and activated with custom flags. See the [Registering custom runtimes]
docs and {obj}
single_version_platform_override()API docs for moreinformation.
compile_pip_requirements.Useful when an intermediate dependency needs to be upgraded to pull in
security patches.
{#v1-5-0-removed}
Removed
{#v1-4-2}
v1.4.2Compare Source
Fixed
local_runtime_reponow checks if the include directory existsbefore attempting to watch it, fixing issues on macOS with system Python
(#3043).
{#v1-4-1}
v1.4.1Compare Source
{#v1-4-1-fixed}
Fixed
requirements file are not present. Fixes
#2863.
{#v1-4-0}
v1.4.0Compare Source
{#v1-4-0-changed}
Changed
execconfiguration toolchain now has the forwardedexec_interpreternow also forwards theToolchainInfoprovider. This isfor increased compatibility with the
RBEsetups where access to theexecconfiguration interpreter is needed.
xcrun xcodebuild --showsdksto find XCode root.3.8.20versions of the Python3.8interpreter who hasreached EOL. If users still need other versions of the
3.8interpreter, please supplythe URLs manually {bzl:obj}
python.toolchainor {bzl:obj}python_register_toolchainscalls.changed the semantics of
ignore_root_user_errorfrom "ignore" to "warning". This is nowflipped back to ignoring the issue, and will only emit a warning when the attribute is set
False.extension has been marked reproducible.
Fixes #2434.
manifest files are loaded when Gazelle is run over a set of non-python directories
PR #2746.
py_binary.srcsand {attr}py_test.srcsis no longer mandatory whenmain_moduleis specified (for--bootstrap_impl=script){#v1-4-0-fixed}
Fixed
universal lock files with environment markers. Fixes #2690.
--bootstrap_impl=script) Follow symlinks when searching for runfiles.chmodwhen downloading non-windows hermetic toolchainrepositories on Windows. Fixes
#2660.
FAILvia theRULES_PYTHON_REPO_DEBUG_VERBOSITYenvironment variable.transitions transitioning on the
python_versionflag.Fixes #2685.
PYTHONPATH..pycand.pyofiles are also excluded from the interpreters repository files.PYTHONPATH.requires_fileis treated as if it were omitted, resulting in a validMETADATAfile.target_compatible_withto all targets they create.PR #2788.
METADATAentries whenpython_full_versionis used inthe environment marker.
Fixes #2319.
python_versionparameter and transition the requirementlocking to the right interpreter version when using
{obj}
compile_pip_requirementsrule.See #2819.
{#v1-4-0-added}
Added
sha256values in therequirements.txtis no longermandatory when enabling {attr}
pip.parse.experimental_index_urlfeature.This means that
rules_pythonwill attempt to fetch metadata for allpackages through SimpleAPI unless they are pulled through direct URL
references. Fixes #2023.
In case you see issues with
rules_pythonbeing too eager to fetch the SimpleAPImetadata, you can use the newly added {attr}
pip.parse.simpleapi_skipto skip metadata fetching for those packages.
lockrule that is the replacement for the{obj}
compile_pip_requirements. This may still have rough cornersso please report issues with it in the
#1975.
Main highlights - the locking can be done within a build action or outside
it, there is no more automatic
testtarget (but it can be added on the userside by using
native_test). For customizing theuvversion that is used,please check the {obj}
uv.configuretag class.PyInfo.site_packages_symlinksfield added toallow specifying links to create within the venv site packages (only
applicable with {obj}
--bootstrap_impl=script)(#2156).
equivalent to the standard toolchains. See [Local toolchains] docs for how to
configure them.
$(PYTHON2_ROOTPATH)and$(PYTHON3_ROOTPATH)which are runfileslocations equivalents of
$(PYTHON2)and `$(PYTHON3) respectively.{#v1-4-0-removed}
Removed
{#v1-3-0}
v1.3.0Compare Source
{#v1-3-0-changed}
Changed
py_library.pyi_srcs(.pyifiles) in the wheel.py_library.pyi_srcs(.pyifiles) inpy_package.gazelle_python.yaml) will now include theYAML document start
---line. Implemented in#2656.
{#v1-3-0-fixed}
Fixed
ppc64leis now pointing to the right target in theplatformspackage.py_binarytargets during partial updates infilegeneration mode. Fixed in #2619.ignore_root_user_error=Trueis now the default. Note that running as root may still cause spurious
Bazel cache invalidation
(#1169).
Support spilling modules mapping args into a params file.
pythoninvocations in repository and module extensionevaluation contexts will invoke Python interpreter with
-Bto avoidcreating
.pycfiles.{#v1-3-0-added}
Added
python.defaultshas been added to allow users toset the default python version in the root module by reading the
default version number from a file or an environment variable.
//python/bin:python: convenience target for directly running aninterpreter. {obj}
--//python/bin:python_srccan be used to specify abinary whose interpreter to use.
bzlmodAPIs without theneed to patch
rules_python. The documentation has been added torules_pythondocs but usage of the extension may result in your setup breaking without any
notice. What is more, the URLs and SHA256 values will be retrieved from the
GitHub releases page metadata published by the
uvproject.LDFLAGSwhenbuilding wheels from
sdist.{obj}
experimental_index_url(bazel downloader).Partially fixes #2363.
and py_library rules
(#1647)
See {any}
RULES_PYTHON_ADDITIONAL_INTERPRETER_ARGSenvironment variable.Only applicable for {obj}
--bootstrap_impl=script.interpreter_argsattribute topy_binaryandpy_test,which allows pass arguments to the interpreter before the regular args.
main_moduleattribute topy_binaryandpy_test,which allows specifying a module name to run (i.e.
python -m <module>).{#v1-3-0-removed}
Removed
{#v1-2-0}
Configuration
📅 Schedule: (UTC)
🚦 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 these updates again.
This PR was generated by Mend Renovate. View the repository job log.
This change is