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 to v0.31.0 #212

Closed
wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jan 27, 2024

Mend Renovate

This PR contains the following updates:

Package Type Update Change
rules_python bazel_dep minor 0.28.0 -> 0.31.0
rules_python http_archive minor 0.28.0 -> 0.31.0

Release Notes

bazelbuild/rules_python (rules_python)

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.


Configuration

📅 Schedule: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

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.


  • 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 requested a review from martis42 as a code owner January 27, 2024 02:12
@renovate renovate bot added the deps label Jan 27, 2024
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch 2 times, most recently from 00bd5d5 to ad81404 Compare February 4, 2024 09:11
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch 3 times, most recently from 733c9ab to 404bfc0 Compare February 11, 2024 13:59
@renovate renovate bot changed the title chore(deps): update dependency rules_python to v0.29.0 chore(deps): update dependency rules_python Feb 13, 2024
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from 404bfc0 to 6c4458f Compare February 13, 2024 00:56
@renovate renovate bot changed the title chore(deps): update dependency rules_python chore(deps): update dependency rules_python to v0.30.0 Feb 13, 2024
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from 6c4458f to 3ae0884 Compare February 13, 2024 03:50
@renovate renovate bot changed the title chore(deps): update dependency rules_python to v0.30.0 chore(deps): update dependency rules_python Feb 13, 2024
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from 3ae0884 to f8858ef Compare February 13, 2024 06:49
@renovate renovate bot changed the title chore(deps): update dependency rules_python chore(deps): update dependency rules_python to v0.31.0 Feb 13, 2024
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch 3 times, most recently from f5bd70f to 99c51dc Compare February 18, 2024 18:41
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from 99c51dc to 2bab6c9 Compare February 25, 2024 10:26
@renovate renovate bot force-pushed the renovate/rules_python-0.x branch from 2bab6c9 to 801d9c0 Compare February 25, 2024 10:47
@martis42 martis42 closed this Feb 25, 2024
@martis42 martis42 deleted the renovate/rules_python-0.x branch February 25, 2024 10:59
Copy link
Contributor Author

renovate bot commented Feb 25, 2024

Renovate Ignore Notification

Because you closed this PR without merging, Renovate will ignore this update (0.31.0). You will get a PR once a newer version is released. To ignore this dependency forever, add it to the ignoreDeps array of your Renovate config.

If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant