Skip to content

Releases

2.5.0-rc4

2.5.0-rc4 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Nov 23:30

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.bazel file:

bazel_dep(name = "rules_python", version = "2.5.0-rc4")

python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
    python_version = "3.14",
)

pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")
pip.parse(
    hub_name = "pypi",
    python_version = "3.14",
    requirements_lock = "//:requirements_lock.txt",
)

use_repo(pip, "pypi")

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 = "b17466277d9a49239289d3a87c4c354e27f7366107842a1b0f5c96a61a159656",
    strip_prefix = "rules_python-2.5.0-rc4",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.5.0-rc4/rules_python-2.5.0-rc4.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 = "b17466277d9a49239289d3a87c4c354e27f7366107842a1b0f5c96a61a159656",
    strip_prefix = "rules_python-2.5.0-rc4/gazelle",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.5.0-rc4/rules_python-2.5.0-rc4.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()

Full Changelog: 2.5.0-rc3...2.5.0-rc4

2.5.0-rc3

2.5.0-rc3 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Nov 07:02

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.bazel file:

bazel_dep(name = "rules_python", version = "2.5.0-rc3")

python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
    python_version = "3.14",
)

pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")
pip.parse(
    hub_name = "pypi",
    python_version = "3.14",
    requirements_lock = "//:requirements_lock.txt",
)

use_repo(pip, "pypi")

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 = "9567509d7bf5b4e2fcaad522a98a720fe216368463f20012e281186555c27f14",
    strip_prefix = "rules_python-2.5.0-rc3",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.5.0-rc3/rules_python-2.5.0-rc3.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 = "9567509d7bf5b4e2fcaad522a98a720fe216368463f20012e281186555c27f14",
    strip_prefix = "rules_python-2.5.0-rc3/gazelle",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.5.0-rc3/rules_python-2.5.0-rc3.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()

Full Changelog: 2.5.0-rc0...2.5.0-rc3

2.5.0-rc2

2.5.0-rc2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 07 Nov 17:21

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.bazel file:

bazel_dep(name = "rules_python", version = "2.5.0-rc2")

python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
    python_version = "3.14",
)

pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")
pip.parse(
    hub_name = "pypi",
    python_version = "3.14",
    requirements_lock = "//:requirements_lock.txt",
)

use_repo(pip, "pypi")

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 = "010464cc8227ed9d771e4c30d07814ed0da94eecb154c68ee266fb1b24c59edb",
    strip_prefix = "rules_python-2.5.0-rc2",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.5.0-rc2/rules_python-2.5.0-rc2.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 = "010464cc8227ed9d771e4c30d07814ed0da94eecb154c68ee266fb1b24c59edb",
    strip_prefix = "rules_python-2.5.0-rc2/gazelle",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.5.0-rc2/rules_python-2.5.0-rc2.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()

Full Changelog: 2.5.0-rc0...2.5.0-rc2

2.5.0-rc0

2.5.0-rc0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 31 Oct 06:16
6fee02b

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.bazel file:

bazel_dep(name = "rules_python", version = "2.5.0-rc0")

python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
    python_version = "3.14",
)

pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")
pip.parse(
    hub_name = "pypi",
    python_version = "3.14",
    requirements_lock = "//:requirements_lock.txt",
)

use_repo(pip, "pypi")

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 = "2bf5f5ff0be99bf9f6e02ab4086848a181c9093a09e04719ab80bc27a59d7645",
    strip_prefix = "rules_python-2.5.0-rc0",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.5.0-rc0/rules_python-2.5.0-rc0.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 = "2bf5f5ff0be99bf9f6e02ab4086848a181c9093a09e04719ab80bc27a59d7645",
    strip_prefix = "rules_python-2.5.0-rc0/gazelle",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.5.0-rc0/rules_python-2.5.0-rc0.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

  • chore(release): add release-prepared label to prepare PRs by @rickeylev in #4015
  • refactor(tests): convert legacy py_extension in local_toolchains to official rule by @rickeylev in #3988
  • chore(release): support manual dispatch and /prepare-complete for complete prepare workflow by @rickeylev in #4016
  • chore(release): invoke create release branch from prepare complete and support /create-release-branch by @rickeylev in #4017
  • agents: optimize rules and clarify create-pr subagent requirements by @rickeylev in #4018
  • agents: document Windows machine normalization and SOABI support by @rickeylev in #4019
  • build(deps): bump cryptography from 49.0.0 to 50.0.0 in /tools/publish by @dependabot[bot] in #3995
  • agents: add merge queue CI monitoring and lockfile sync rules by @rickeylev in #4021
  • agents(rules): document linking external objects in TypedDict docstrings by @rickeylev in #4022
  • agents: rename pre-review-audit to review-code and add news file checks by @rickeylev in #4027
  • feat(runfiles): add CreateOrRaise API by @rickeylev in #4028
  • build(dev): bump dev requirements python version to 3.10 by @rickeylev in #4024
  • agents(rules): document git push -u guardrail and delegating function docstrings by @rickeylev in #4030
  • agents: document dev python version bump and merge queue fields by @rickeylev in #4031
  • build(deps): bump packaging from 26.2 to 26.3 in /tools/publish by @dependabot[bot] in #4032
  • build(deps): bump cffi from 2.1.0 to 2.1.1 in /tools/publish by @dependabot[bot] in #4033
  • build(pyrefly): enable Pyrefly static type checking across Python targets by @rickeylev in #4020
  • fix: preserve arguments with spaces by @stanbot8 in #4026
  • agents(rules): update python rules with typing and runfiles conventions by @rickeylev in #4035
  • feat(bzlmod): make init.py generation configurable module-wide by @armandomontanez in #3997
  • build(ci): remove legacy mypy type checking workflow and comments by @rickeylev in #4036
  • agents(analyze-ci-failure): enhance network reset and macOS sandbox flake detection by @rickeylev in #4037
  • fix(pypi): rewrite RECORD file entries for extracted .data contents by @rickeylev in #4025
  • fix(pypi): resolve self-referencing extras to a real fixed point by @muravev-vasilii in #4039
  • agents(rules): add Starlark dict union and Pyrefly PackagePath conventions by @rickeylev in #4038
  • fix(pypi): do not return rctx.metadata for pip_archive by @aignas in #4043
  • refactor(release): move on_comment workflow logic into Python script by @rickeylev in #4045
  • workflows: auto-create patch release tracking issue on /backport by @rickeylev in #4046
  • agents(rules): update github_actions_workflows rule with python script and testing conventions by @rickeylev in #4047
  • agents(review-code): export review results artifact and factor report format by @rickeylev in #4048
  • workflows(release): support /backport comment on release tracking issue and pr by @rickeylev in #4050
  • workflows(release): remove non-patch release tasks from patch release issues by @rickeylev in #4051
  • tests: use runfiles.CreateOrRaise in release_test_helper by @rickeylev in #4052
  • agents: clarify commit and PR type conventions in pr.md by @rickeylev in #4055
  • workflow(release): surface subprocess output and improve error handling in backport operations by @rickeylev in #4056
  • agents: add workflow type convention and python exception rules by @rickeylev in #4057
  • refactor: split code into multiple files by @aignas in #4044
  • chore(release): sync changelog and version markers for 2.3 backports by @rickeylev in #4058
  • feat(sphinxdocs): make SphinxDocsLibraryInfo provider public by @JoHoenk in #4041
  • agents(starlark): document depset element immutability and provider conventions by @rickeylev in #4060
  • build(release): add process-news command with PR and version marker support by @rickeylev in #4062
  • agents: refine commit type definitions and interface docstring rules by @rickeylev in #4063
  • agents: update review-code skill to initialize and update artifact on responses by @rickeylev in #4066
  • test(pytest): support python_versions in pytest_test macro by @rickeylev in #4064
  • agents: add native.test_suite API tag invariant rule by @rickeylev in #4068
  • build(release): separate sync changelog into standalone workflow and CLI tool by @rickeylev in #4067
  • agents: update CI soft-fail handling and GHA event parsing rules by @rickeylev in #4069
  • tests(runfiles): migrate runfiles tests to pytest_test by @rickeylev in #4061
  • workflows: make on_pr_closed.py executable and add permissions test by @rickeylev in #4076
  • build(deps): bump astral-sh/setup-uv from 9.0.0 to 10.0.1 by @dependabot[bot] in #4072
  • build(deps): bump actions/setup-python from 5 to 7 by @dependabot[bot] in #4074
  • build(deps): bump charset-normalizer from 3.4.9 to 3.5.0 in /tools/publish by @dependabot[bot] in #4073
  • build(deps): bump bazel-contrib/publish-to-bcr/.github/workflows/publish.yaml from 1.4.2 to 1.5.0 by @dependabot[bot] in #4075
  • agents: document rf.root() path navigation and Runfiles.CreateOrRaise() in python rules by @rickeylev in #4078
  • fix(py_test): fix Windows crash in py_test main validation by @rdesgroppes in #4079
  • agents: document direct integration test execution in testing rules by @rickeylev in https://github.com/...
Read more

2.4.6

Choose a tag to compare

@github-actions github-actions released this 30 Oct 01:32

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.bazel file:

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

python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
    python_version = "3.14",
)

pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")
pip.parse(
    hub_name = "pypi",
    python_version = "3.14",
    requirements_lock = "//:requirements_lock.txt",
)

use_repo(pip, "pypi")

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 = "4765b9a4a9c6e0fb89f465aac5b5b0ac06589c9477144340859310777ad801a7",
    strip_prefix = "rules_python-2.4.6",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.4.6/rules_python-2.4.6.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 = "4765b9a4a9c6e0fb89f465aac5b5b0ac06589c9477144340859310777ad801a7",
    strip_prefix = "rules_python-2.4.6/gazelle",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.4.6/rules_python-2.4.6.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()

Full Changelog: 2.4.5...2.4.6

2.4.5

Choose a tag to compare

@github-actions github-actions released this 23 Oct 06:47

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.bazel file:

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

python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
    python_version = "3.14",
)

pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")
pip.parse(
    hub_name = "pypi",
    python_version = "3.14",
    requirements_lock = "//:requirements_lock.txt",
)

use_repo(pip, "pypi")

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 = "05088402fa356af097064dbccd7082a061171ef39fbd748fab946e9775f46a16",
    strip_prefix = "rules_python-2.4.5",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.4.5/rules_python-2.4.5.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 = "05088402fa356af097064dbccd7082a061171ef39fbd748fab946e9775f46a16",
    strip_prefix = "rules_python-2.4.5/gazelle",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.4.5/rules_python-2.4.5.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()

Full Changelog: 2.4.4...2.4.5

2.4.4

Choose a tag to compare

@github-actions github-actions released this 23 Oct 01:23

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.bazel file:

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

python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
    python_version = "3.14",
)

pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")
pip.parse(
    hub_name = "pypi",
    python_version = "3.14",
    requirements_lock = "//:requirements_lock.txt",
)

use_repo(pip, "pypi")

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 = "ce2b9317d21f3af1283aaa8f502b34f980407fcc8eb10beaa6bf9dbf39ea27ed",
    strip_prefix = "rules_python-2.4.4",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.4.4/rules_python-2.4.4.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 = "ce2b9317d21f3af1283aaa8f502b34f980407fcc8eb10beaa6bf9dbf39ea27ed",
    strip_prefix = "rules_python-2.4.4/gazelle",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.4.4/rules_python-2.4.4.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()

Full Changelog: 2.4.3...2.4.4

2.4.3

Choose a tag to compare

@github-actions github-actions released this 22 Oct 02:52

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.bazel file:

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

python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
    python_version = "3.14",
)

pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")
pip.parse(
    hub_name = "pypi",
    python_version = "3.14",
    requirements_lock = "//:requirements_lock.txt",
)

use_repo(pip, "pypi")

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 = "4d8b6d82a51fba064431257a2941a6bc6b45e2365a40b9d6ecaef3e297bcf97e",
    strip_prefix = "rules_python-2.4.3",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.4.3/rules_python-2.4.3.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 = "4d8b6d82a51fba064431257a2941a6bc6b45e2365a40b9d6ecaef3e297bcf97e",
    strip_prefix = "rules_python-2.4.3/gazelle",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.4.3/rules_python-2.4.3.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()

Full Changelog: 2.4.2...2.4.3

2.4.2

Choose a tag to compare

@github-actions github-actions released this 10 Oct 03:42

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.bazel file:

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

python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
    python_version = "3.14",
)

pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")
pip.parse(
    hub_name = "pypi",
    python_version = "3.14",
    requirements_lock = "//:requirements_lock.txt",
)

use_repo(pip, "pypi")

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 = "14f8fc9adbf471c7c1258cbf0998de3f63d8d3c81f88e2b96cadff44d71adf71",
    strip_prefix = "rules_python-2.4.2",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.4.2/rules_python-2.4.2.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 = "14f8fc9adbf471c7c1258cbf0998de3f63d8d3c81f88e2b96cadff44d71adf71",
    strip_prefix = "rules_python-2.4.2/gazelle",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.4.2/rules_python-2.4.2.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()

Full Changelog: 2.4.1...2.4.2

2.4.1

Choose a tag to compare

@github-actions github-actions released this 06 Oct 03:53

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.bazel file:

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

python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
    python_version = "3.14",
)

pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")
pip.parse(
    hub_name = "pypi",
    python_version = "3.14",
    requirements_lock = "//:requirements_lock.txt",
)

use_repo(pip, "pypi")

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 = "7338fac5da94920b9a2db88add662246e7c41cc5c357ea93670ef23f1f153d4f",
    strip_prefix = "rules_python-2.4.1",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.4.1/rules_python-2.4.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 = "7338fac5da94920b9a2db88add662246e7c41cc5c357ea93670ef23f1f153d4f",
    strip_prefix = "rules_python-2.4.1/gazelle",
    url = "https://github.com/bazel-contrib/rules_python/releases/download/2.4.1/rules_python-2.4.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()

Full Changelog: 2.4.0...2.4.1