Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update dependency rules_python #99

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Feb 13, 2024

Mend Renovate

This PR contains the following updates:

Package Type Update Change
rules_python bazel_dep minor 0.27.1 -> 0.33.2
rules_python http_archive minor 0.27.1 -> 0.34.0

Release Notes

bazelbuild/rules_python (rules_python)

v0.34.0

Compare Source

Using Bzlmod with Bazel 6

NOTE: bzlmod support is still beta. APIs subject to change.

Add to your MODULE.bazel file:

bazel_dep(name = "rules_python", version = "0.34.0")

pip = use_extension("@​rules_python//python/extensions:pip.bzl", "pip")

pip.parse(
    hub_name = "pip",
    python_version = "3.11",
    requirements_lock = "//:requirements_lock.txt",
)

use_repo(pip, "pip")

Using WORKSPACE

Paste this snippet into your WORKSPACE file:

load("@​bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "rules_python",
    sha256 = "778aaeab3e6cfd56d681c89f5c10d7ad6bf8d2f1a72de9de55b23081b2d31618",
    strip_prefix = "rules_python-0.34.0",
    url = "https://github.com/bazelbuild/rules_python/releases/download/0.34.0/rules_python-0.34.0.tar.gz",
)

load("@​rules_python//python:repositories.bzl", "py_repositories")

py_repositories()
Gazelle plugin

Paste this snippet into your WORKSPACE file:

load("@​bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_python_gazelle_plugin",
    sha256 = "778aaeab3e6cfd56d681c89f5c10d7ad6bf8d2f1a72de9de55b23081b2d31618",
    strip_prefix = "rules_python-0.34.0/gazelle",
    url = "https://github.com/bazelbuild/rules_python/releases/download/0.34.0/rules_python-0.34.0.tar.gz",
)

### To compile the rules_python gazelle extension from source,
### we must fetch some third-party go dependencies that it uses.

load("@​rules_python_gazelle_plugin//:deps.bzl", _py_gazelle_deps = "gazelle_deps")

_py_gazelle_deps()

What's Changed

New Contributors

Full Changelog: bazelbuild/rules_python@0.33.1...0.34.0

v0.33.2

Compare Source

Fixed
  • (toolchains) The {obj}exec_tools_toolchain_type is disabled by default.
    To enable it, set {obj}--//python/config_settings:exec_tools_toolchain=enabled.
    This toolchain must be enabled for precompilation to work. This toolchain will
    be enabled by default in a future release.
    Fixes #​1967.

v0.33.1

Compare Source

Fixed
  • (py_binary) Fix building of zip file when using --build_python_zip
    argument. Fixes #​1954.

v0.33.0

Compare Source

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 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.
  • (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)
  • (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.
  • (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.
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 and API reference docs for more
    information on precompiling. Note this requires Bazel 7+ and the Pystar rule
    implementation enabled.
    (#​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=script. It
    will become the default in a subsequent release.
    (#​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.

v0.32.2

Compare Source

Fixed
  • Workaround existence of infinite symlink loops on case insensitive filesystems when targeting linux platforms with recent Python toolchains. Works around an upstream issue. Fixes #​1800.

v0.32.1

Compare Source

Using Bzlmod with Bazel 6

NOTE: bzlmod support is still beta. APIs subject to change.

Add to your MODULE.bazel file:

bazel_dep(name = "rules_python", version = "0.32.1")

pip = use_extension("@​rules_python//python/extensions:pip.bzl", "pip")

pip.parse(
    hub_name = "pip",
    python_version = "3.11",
    requirements_lock = "//:requirements_lock.txt",
)

use_repo(pip, "pip")
Using WORKSPACE

Paste this snippet into your WORKSPACE file:

load("@​bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "rules_python",
    sha256 = "b289b0b023c71b80f26d39476e5e2c3cf72d21cb2759bcf02638ba3cc480e9df",
    strip_prefix = "rules_python-0.32.1",
    url = "https://github.com/bazelbuild/rules_python/releases/download/0.32.1/rules_python-0.32.1.tar.gz",
)

load("@​rules_python//python:repositories.bzl", "py_repositories")

py_repositories()
Gazelle plugin

Paste this snippet into your WORKSPACE file:

load("@​bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_python_gazelle_plugin",
    sha256 = "b289b0b023c71b80f26d39476e5e2c3cf72d21cb2759bcf02638ba3cc480e9df",
    strip_prefix = "rules_python-0.32.1/gazelle",
    url = "https://github.com/bazelbuild/rules_python/releases/download/0.32.1/rules_python-0.32.1.tar.gz",
)

##### To compile the rules_python gazelle extension from source,
##### we must fetch some third-party go dependencies that it uses.

load("@​rules_python_gazelle_plugin//:deps.bzl", _py_gazelle_deps = "gazelle_deps")

_py_gazelle_deps()
What's Changed
Changed
  • (bzlmod): The MODULE.bazel.lock whl_library rule attributes are now
    sorted in the attributes section. We are also removing values that are not
    default in order to reduce the size of the lock file.
  • (coverage) Bump coverage.py to 7.4.3.
  • (deps): Bumped bazel_features to 1.9.1 to detect optional support
    non-blocking downloads.
  • (deps): Updated pip_tools to >= 7.4.0
  • (toolchains): Change some old toolchain versions to use 20240224 release to
    include security fixes 3.8.18, 3.9.18 and 3.10.13
  • (toolchains): Bump default toolchain versions to:
    • 3.8 -> 3.8.19
    • 3.9 -> 3.9.19
    • 3.10 -> 3.10.14
    • 3.11 -> 3.11.9
    • 3.12 -> 3.12.3
Fixed
  • (whl_library): Fix the experimental_target_platforms overriding for platform
    specific wheels when the wheels are for any python interpreter version. Fixes
    #​1810.
  • (whl_library): Stop generating duplicate dependencies when encountering
    duplicates in the METADATA. Fixes
    #​1873.
  • (gazelle) In project or package generation modes, do not generate py_test
    rules when there are no test files and do not set main = "__test__.py" when
    that file doesn't exist.
  • (whl_library) The group redirection is only added when the package is part of
    the group potentially fixing aspects that want to traverse a py_library graph.
    Fixes #​1760.
  • (bzlmod) Setting a particular micro version for the interpreter and the
    pip.parse extension is now possible, see the
    examples/pip_parse/MODULE.bazel for how to do it.
    See #​1371.
  • (refactor) The pre-commit developer workflow should now pass isort and black
    checks (see #​1674).
Added
  • (toolchains) Added armv7 platform definition for python toolchains.
  • (toolchains) New Python versions available: 3.11.8, 3.12.2 using the 20240224 release.
  • (toolchains) New Python versions available: 3.8.19, 3.9.19, 3.10.14, 3.11.9, 3.12.3 using
    the 20240415 release.
  • (gazelle) Added a new python_visibility directive to control visibility
    of generated targets by appending additional visibility labels.
  • (gazelle) Added a new python_default_visibility directive to control the
    default visibility of generated targets. See the docs
    for details.
  • (gazelle) Added a new python_test_file_pattern directive. This directive tells
    gazelle which python files should be mapped to the py_test rule. See the
    original issue and the docs
    for details.
  • (wheel) Add support for data_files attributes in py_wheel rule
    (#​1777)
  • (py_wheel) bzlmod installations now provide a twine setup for the default
    Python toolchain in rules_python for version 3.11.
  • (bzlmod) New experimental_index_url, experimental_extra_index_urls and
    experimental_index_url_overrides to pip.parse for using the bazel
    downloader. If you see any issues, report in
    #​1357. The URLs for
    the whl and sdist files will be written to the lock file. Controlling whether
    the downloading of metadata is done in parallel can be done using
    parallel_download attribute.
  • (gazelle) Add a new annotation include_dep. Also add documentation for
    annotations to gazelle/README.md.
  • (deps): rules_python depends now on rules_cc 0.0.9
  • (pip_parse): A new flag use_hub_alias_dependencies has been added that is going
    to become default in the next release. This makes use of dep_template flag
    in the whl_library rule. This also affects the
    experimental_requirement_cycles feature where the dependencies that are in
    a group would be only accessible via the hub repo aliases. If you still
    depend on legacy labels instead of the hub repo aliases and you use the
    experimental_requirement_cycles, now is a good time to migrate.

Full Changelog: bazelbuild/rules_python@0.32.0...0.32.1

v0.32.0

Compare Source

Changed
  • (bzlmod): The MODULE.bazel.lock whl_library rule attributes are now
    sorted in the attributes section. We are also removing values that are not
    default in order to reduce the size of the lock file.
  • (coverage) Bump coverage.py to 7.4.3.
  • (deps): Bumped bazel_features to 1.9.1 to detect optional support
    non-blocking downloads.
  • (deps): Updated pip_tools to >= 7.4.0
  • (toolchains): Change some old toolchain versions to use 20240224 release to
    include security fixes 3.8.18, 3.9.18 and 3.10.13
  • (toolchains): Bump default toolchain versions to:
    • 3.8 -> 3.8.19
    • 3.9 -> 3.9.19
    • 3.10 -> 3.10.14
    • 3.11 -> 3.11.9
    • 3.12 -> 3.12.3
Fixed
  • (whl_library): Fix the experimental_target_platforms overriding for platform
    specific wheels when the wheels are for any python interpreter version. Fixes
    #​1810.
  • (whl_library): Stop generating duplicate dependencies when encountering
    duplicates in the METADATA. Fixes
    #​1873.
  • (gazelle) In project or package generation modes, do not generate py_test
    rules when there are no test files and do not set main = "__test__.py" when
    that file doesn't exist.
  • (whl_library) The group redirection is only added when the package is part of
    the group potentially fixing aspects that want to traverse a py_library graph.
    Fixes #​1760.
  • (bzlmod) Setting a particular micro version for the interpreter and the
    pip.parse extension is now possible, see the
    examples/pip_parse/MODULE.bazel for how to do it.
    See #​1371.
  • (refactor) The pre-commit developer workflow should now pass isort and black
    checks (see #​1674).
Added
  • (toolchains) Added armv7 platform definition for python toolchains.
  • (toolchains) New Python versions available: 3.11.8, 3.12.2 using the 20240224 release.
  • (toolchains) New Python versions available: 3.8.19, 3.9.19, 3.10.14, 3.11.9, 3.12.3 using
    the 20240415 release.
  • (gazelle) Added a new python_visibility directive to control visibility
    of generated targets by appending additional visibility labels.
  • (gazelle) Added a new python_default_visibility directive to control the
    default visibility of generated targets. See the docs
    for details.
  • (gazelle) Added a new python_test_file_pattern directive. This directive tells
    gazelle which python files should be mapped to the py_test rule. See the
    original issue and the docs
    for details.
  • (wheel) Add support for data_files attributes in py_wheel rule
    (#​1777)
  • (py_wheel) bzlmod installations now provide a twine setup for the default
    Python toolchain in rules_python for version 3.11.
  • (bzlmod) New experimental_index_url, experimental_extra_index_urls and
    experimental_index_url_overrides to pip.parse for using the bazel
    downloader. If you see any issues, report in
    #​1357. The URLs for
    the whl and sdist files will be written to the lock file. Controlling whether
    the downloading of metadata is done in parallel can be done using
    parallel_download attribute.
  • (gazelle) Add a new annotation include_dep. Also add documentation for
    annotations to gazelle/README.md.
  • (deps): rules_python depends now on rules_cc 0.0.9
  • (pip_parse): A new flag use_hub_alias_dependencies has been added that is going
    to become default in the next release. This makes use of dep_template flag
    in the whl_library rule. This also affects the
    experimental_requirement_cycles feature where the dependencies that are in
    a group would be only accessible via the hub repo aliases. If you still
    depend on legacy labels instead of the hub repo aliases and you use the
    experimental_requirement_cycles, now is a good time to migrate.

v0.31.0

Compare Source

Changed
  • For Bazel 7, the core rules and providers are now implemented in rules_python
    directly and the rules bundled with Bazel are not used. Bazel 6 and earlier
    continue to use the Bazel builtin symbols. Of particular note, this means,
    under Bazel 7, the builtin global symbol PyInfo is not the same as what
    is loaded from rules_python. The same is true of PyRuntimeInfo.

v0.30.0

Compare Source

Changed
  • (toolchains) Windows hosts always ignore pyc files in the downloaded runtimes.
    This fixes issues due to pyc files being created at runtime and affecting the
    definition of what files were considered part of the runtime.

  • (pip_parse) Added the envsubst parameter, which enables environment variable
    substitutions in the extra_pip_args attribute.

  • (pip_repository) Added the envsubst parameter, which enables environment
    variable substitutions in the extra_pip_args attribute.

Fixed
  • (bzlmod) pip.parse now does not fail with an empty requirements.txt.

  • (py_wheel) Wheels generated by py_wheel now preserve executable bits when
    being extracted by installer and/or pip.

  • (coverage) During the running of lcov, the stdout/stderr was causing test
    failures. By default, suppress output when generating lcov. This can be
    overridden by setting 'VERBOSE_COVERAGE'. This change only affect bazel
    7.x.x and above.

  • (toolchain) Changed the host_toolchain to symlink all files to support
    Windows host environments without symlink support.

  • (PyRuntimeInfo) Switch back to builtin PyRuntimeInfo for Bazel 6.4 and when
    pystar is disabled. This fixes an error about target ... does not have ... PyRuntimeInfo.
    (#​1732)

Added
  • (py_wheel) Added requires_file and extra_requires_files attributes.

  • (whl_library) experimental_target_platforms now supports specifying the
    Python version explicitly and the output BUILD.bazel file will be correct
    irrespective of the python interpreter that is generating the file and
    extracting the whl distribution. Multiple python target version can be
    specified and the code generation will generate version specific dependency
    closures but that is not yet ready to be used and may break the build if
    the default python version is not selected using
    common --@​rules_python//python/config_settings:python_version=X.Y.Z.

  • New Python versions available: 3.11.7, 3.12.1 using
    https://github.com/indygreg/python-build-standalone/releases/tag/20240107.

  • (toolchain) Allow setting x.y as the python_version parameter in
    the version-aware py_binary and py_test rules. This allows users to
    use the same rule import for testing with specific Python versions and
    rely on toolchain configuration and how the latest version takes precedence
    if e.g. 3.8 is selected. That also simplifies .bazelrc for any users
    that set the default python_version string flag in that way.

  • (toolchain) The runtime's shared libraries (libpython.so et al) can be
    accessed using @rules_python//python/cc:current_py_cc_libs. This uses
    toolchain resolution, so the files are from the same runtime used to run a
    target. If you were previously using e.g. @python_3_11//:libpython, then
    switch to :current_py_cc_libs for looser coupling to the underlying runtime
    repo implementation.

  • (repo rules) The environment variable RULES_PYTHON_REPO_DEBUG=1 can be
    set to make repository rules log detailed information about what they're
    up to.

  • (coverage) Add support for python 3.12 and bump coverage.py to
    7.4.1.

v0.29.0

Compare Source

Changed
  • BREAKING The deprecated incompatible_generate_aliases feature flags
    from pip_parse and gazelle got removed. They had been flipped to True
    in 0.27.0 release.
  • BREAKING (wheel) The incompatible_normalize_name and
    incompatible_normalize_version flags have been removed. They had been
    flipped to True in 0.27.0 release.
  • (bzlmod) The pip hub repository now uses the newly introduced config settings
    using the X.Y python version notation. This improves cross module
    interoperability and allows to share wheels built by interpreters using
    different patch versions.
Fixed
  • (bzlmod pip.parse) Use a platform-independent reference to the interpreter
    pip uses. This reduces (but doesn't eliminate) the amount of
    platform-specific content in MODULE.bazel.lock files; Follow
    #​1643 for removing
    platform-specific content in MODULE.bazel.lock files.

  • (wheel) The stamp variables inside the distribution name are no longer
    lower-cased when normalizing under PEP440 conventions.

Added
  • (toolchains) python_register_toolchains now also generates a repository
    that is suffixed with _host, that has a single label :python that is a
    symlink to the python interpreter for the host platform. The intended use is
    mainly in repository_rule, which are always run using host platform
    Python. This means that WORKSPACE users can now copy the requirements.bzl
    file for vendoring as seen in the updated pip_parse_vendored example.

  • (runfiles) rules_python.python.runfiles.Runfiles now has a static Create
    method to make imports more ergonomic. Users should only need to import the
    Runfiles object to locate runfiles.

  • (toolchains) PyRuntimeInfo now includes a interpreter_version_info field
    that contains the static version information for the given interpreter.
    This can be set via py_runtime when registering an interpreter toolchain,
    and will done automatically for the builtin interpreter versions registered via
    python_register_toolchains.
    Note that this only available on the Starlark implementation of the provider.

  • (config_settings) Added //python/config_settings:is_python_X.Y config
    settings to match on minor Python version. These settings match any X.Y
    version instead of just an exact X.Y.Z version.

v0.28.0

Compare Source

Changed
  • BREAKING (pip_install) the deprecated pip_install macro and related
    items have been removed.

  • BREAKING Support for Bazel 5 has been officially dropped. This release
    was only partially tested with Bazel 5 and may or may not work with Bazel 5.
    Subequent versions will no longer be tested under Bazel 5.

  • (runfiles) rules_python.python.runfiles now directly implements type hints
    and drops support for python2 as a result.

  • (toolchains) py_runtime, py_runtime_pair, and PyRuntimeInfo now use the
    rules_python Starlark implementation, not the one built into Bazel. NOTE: This
    only applies to Bazel 6+; Bazel 5 still uses the builtin implementation.

  • (pip_parse) The parameter experimental_requirement_cycles may be provided a
    map of names to lists of requirements which form a dependency
    cycle. pip_parse will break the cycle for you transparently. This behavior
    is also available under bzlmod as
    pip.parse(experimental_requirement_cycles={}).

  • (toolchains) py_runtime can now take an executable target. Note: runfiles
    from the target are not supported yet.
    (#​1612)

  • (gazelle) When python_generation_mode is set to file, create one py_binary
    target for each file with if __name__ == "__main__" instead of just one
    py_binary for the whole module.

  • (gazelle) the Gazelle manifest integrity field is now optional. If the
    requirements argument to gazelle_python_manifest is unset, no integrity
    field will be generated.

Fixed
  • (gazelle) The gazelle plugin helper was not working with Python toolchains 3.11
    and above due to a bug in the helper components not being on PYTHONPATH.

  • (pip_parse) The repositories created by whl_library can now parse the whl
    METADATA and generate dependency closures irrespective of the host platform
    the generation is executed on. This can be turned on by supplying
    experimental_target_platforms = ["all"] to the pip_parse or the bzlmod
    equivalent. This may help in cases where fetching wheels for a different
    platform using download_only = True feature.

  • (bzlmod pip.parse) The pip.parse(python_interpreter) arg now works for
    specifying a local system interpreter.

  • (bzlmod pip.parse) Requirements files with duplicate entries for the same
    package (e.g. one for the package, one for an extra) now work.

  • (bzlmod python.toolchain) Submodules can now (re)register the Python version
    that rules_python has set as the default.
    (#​1638)

  • (whl_library) Actually use the provided patches to patch the whl_library.
    On Windows the patching may result in files with CRLF line endings, as a result
    the RECORD file consistency requirement is lifted and now a warning is emitted
    instead with a location to the patch that could be used to silence the warning.
    Copy the patch to your workspace and add it to the list if patches for the wheel
    file if you decide to do so.

  • (coverage): coverage reports are now created when the version-aware
    rules are used.
    (#​1600)

  • (toolchains) Workspace builds register the py cc toolchain (bzlmod already
    was). This makes e.g. //python/cc:current_py_cc_headers Just Work.
    (#​1669)

  • (bzlmod python.toolchain) The value of ignore_root_user_error is now decided
    by the root module only.
    (#​1658)

Added
  • (docs) bzlmod extensions are now documented on rules-python.readthedocs.io
  • (docs) Support and backwards compatibility policies have been documented.
    See https://rules-python.readthedocs.io/en/latest/support.html
  • (gazelle) file generation mode can now also add __init__.py to the srcs
    attribute for every target in the package. This is enabled through a separate
    directive python_generation_mode_per_file_include_init.

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), 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.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from b9497ed to 9771152 Compare February 27, 2024 22:00
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from 9771152 to f281848 Compare March 20, 2024 20:19
@renovate renovate bot changed the title chore(deps): update dependency rules_python to v0.31.0 chore(deps): update dependency rules_python May 13, 2024
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch 2 times, most recently from 5277e29 to 9df6714 Compare May 13, 2024 08:25
@renovate renovate bot changed the title chore(deps): update dependency rules_python chore(deps): update dependency rules_python to v0.32.1 May 13, 2024
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from 9df6714 to 96ba865 Compare May 14, 2024 03:30
@renovate renovate bot changed the title chore(deps): update dependency rules_python to v0.32.1 chore(deps): update dependency rules_python May 14, 2024
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from 96ba865 to e9257aa Compare May 14, 2024 07:35
@renovate renovate bot changed the title chore(deps): update dependency rules_python chore(deps): update dependency rules_python to v0.32.2 May 14, 2024
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch 2 times, most recently from 0fab26d to 63a0d82 Compare May 17, 2024 18:14
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from 63a0d82 to 3696a04 Compare June 12, 2024 03:48
@renovate renovate bot changed the title chore(deps): update dependency rules_python to v0.32.2 chore(deps): update dependency rules_python Jun 12, 2024
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from 3696a04 to d981337 Compare June 12, 2024 07:41
@renovate renovate bot changed the title chore(deps): update dependency rules_python chore(deps): update dependency rules_python to v0.33.0 Jun 12, 2024
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from d981337 to 1d360de Compare June 13, 2024 01:55
@renovate renovate bot changed the title chore(deps): update dependency rules_python to v0.33.0 chore(deps): update dependency rules_python to v0.33.1 Jun 13, 2024
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from 1d360de to 0a7bdf0 Compare June 19, 2024 14:58
@renovate renovate bot changed the title chore(deps): update dependency rules_python to v0.33.1 chore(deps): update dependency rules_python to v0.33.2 Jun 19, 2024
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from 0a7bdf0 to c5f3d76 Compare July 2, 2024 13:04
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from c5f3d76 to 008f1ac Compare July 4, 2024 08:20
@renovate renovate bot changed the title chore(deps): update dependency rules_python to v0.33.2 chore(deps): update dependency rules_python Jul 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

0 participants