Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,45 @@ Unreleased changes are tracked as individual files in the [news/](./news)
directory, or view the [latest generated
changelog](https://rules-python.readthedocs.io/en/latest/changelog.html).

{#v2-2-0}
## [2.2.0] - 2026-06-30

[2.2.0]: https://github.com/bazel-contrib/rules_python/releases/tag/2.2.0

{#v2-2-0-changed}
### Changed
* Renamed most public bzl_library targets from `{foo}_bzl` to `{foo}` to follow
gazelle naming conventions. Deprecated aliases are left for backwards
compatibility.
* (binaries/tests) Added a deprecation warning for targets relying on implicit `__init__.py` creation.

{#v2-2-0-fixed}
### Fixed
* Fixed a flaky error on Windows 2022 when looking up the win32 version during
site initialization by retrying the lookup
([#3721](https://github.com/bazel-contrib/rules_python/issues/3721)).
* (coverage) Skip lcov report when no data was collected.
* (pypi) Fixed `experimental_index_url` checking truthiness before envsubst
expansion.
* (rules) Fixed venv output paths for `py_binary` and `py_test` targets whose
names contain path separators so distinct targets with the same basename no
longer share the same venv output directory.

{#v2-2-0-added}
### Added
* Added {bzl:obj}`features.loadable_symbols` to allow detecting public symbols
exported by bzl files.
* Exposed {bzl:obj}`VenvSymlinkEntry` and {bzl:obj}`VenvSymlinkKind` in
{bzl:target}`//python:py_info.bzl`.
* (pypi) Added `@pypi` repo: a unified hub of `pip.parse` hubs.
* (uv) Support for basic `uv.lock` generation via the `lock` rule
and basic support for importing the `uv.lock` file itself. Since this
may have bugs, please report this by creating new tickets.
Work towards [#2787](https://github.com/bazel-contrib/rules_python/issues/2787)
and [#1975](https://github.com/bazel-contrib/rules_python/issues/1975).



{#v2-1-0}
## [2.1.0] - 2026-06-17

Expand Down
2 changes: 1 addition & 1 deletion docs/api/rules_python/python/config_settings/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -362,7 +362,7 @@ Values:
specified concrete PyPI hub (corresponding to a
{obj}`pip.parse.hub_name` value).

:::{versionadded} VERSION_NEXT_FEATURE
:::{versionadded} 2.2.0
:::
::::

Expand Down
2 changes: 1 addition & 1 deletion docs/environment-variables.md
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ a warning is printed indicating that the renaming occurred. If not set (defaulti
to `0`), a warning is printed advising to rename the hub, and the collision
is not resolved.

:::{versionadded} VERSION_NEXT_FEATURE
:::{versionadded} 2.2.0
:::

:::
Expand Down
2 changes: 1 addition & 1 deletion docs/pypi/download.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ downloading the same wheels numerous times.
(unified-pypi-hub)=
## Unified `@pypi` Hub for Multi-Hub Configurations

:::{versionadded} VERSION_NEXT_FEATURE
:::{versionadded} 2.2.0
Unified `@pypi` hub repository for Bzlmod multi-hub configurations.
:::

Expand Down
1 change: 0 additions & 1 deletion news/2945.changed.md

This file was deleted.

5 changes: 0 additions & 5 deletions news/3785.added.md

This file was deleted.

2 changes: 0 additions & 2 deletions news/3828.fixed.md

This file was deleted.

1 change: 0 additions & 1 deletion news/3832.fixed.md

This file was deleted.

1 change: 0 additions & 1 deletion news/3837.added.md

This file was deleted.

2 changes: 0 additions & 2 deletions news/expose-venv-symlink.added.md

This file was deleted.

3 changes: 0 additions & 3 deletions news/gazelle-bzl-library.changed.md

This file was deleted.

2 changes: 0 additions & 2 deletions news/loadable-symbols.added.md

This file was deleted.

3 changes: 0 additions & 3 deletions news/slash-target-venv-output.fixed.md

This file was deleted.

3 changes: 0 additions & 3 deletions news/win32_version_lookup.fixed.md

This file was deleted.

2 changes: 1 addition & 1 deletion python/features.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ def _features_typedef():

A map of bzl paths to the list of public symbols they export.

:::{versionadded} VERSION_NEXT_FEATURE
:::{versionadded} 2.2.0
:::
::::

Expand Down
4 changes: 2 additions & 2 deletions python/private/py_info.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ def _VenvSymlinkEntryBuilder_typedef():
:type: DepsetBuilder[File]
:::

:::{versionadded} VERSION_NEXT_FEATURE
:::{versionadded} 2.2.0
:::
"""

Expand Down Expand Up @@ -677,7 +677,7 @@ def _PyInfoBuilder_new():
def _PyInfoBuilder_add_venv_symlink(self):
"""Create and return a new VenvSymlinkEntryBuilder.

:::{versionadded} VERSION_NEXT_FEATURE
:::{versionadded} 2.2.0
:::

Args:
Expand Down
2 changes: 1 addition & 1 deletion python/private/pypi/extension.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -845,7 +845,7 @@ means if different programs need different versions of some library, separate
hubs can be created, and each program can use its respective hub's targets.
Targets from different hubs should not be used together.

:::{versionchanged} VERSION_NEXT_FEATURE
:::{versionchanged} 2.2.0
Using the hub name `"pypi"` is deprecated and is changed to
`{module_name}_pypi` depending on the
{envvar}`RULES_PYTHON_PYPI_HUB_RESERVED` environment variable.
Expand Down
2 changes: 1 addition & 1 deletion python/uv/private/lock.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -387,7 +387,7 @@ _lock = rule(
The lock rule that does the locking in a build action and also prepares information for a `bazel
run` executable rule.

:::{versionadded} VERSION_NEXT_FEATURE
:::{versionadded} 2.2.0
:::
""",
attrs = _common_attrs | {
Expand Down