This is a human-friendly changelog in a keepachangelog.com style format. Because this changelog is for end-user consumption of meaningful changes,only a summary of a release's changes is described. This means every commit is not necessarily mentioned, and internal refactors or code cleanups are omitted unless they're particularly notable.
A brief description of the categories of changes:
Changed
: Some behavior changed. If the change is expected to break a public API or supported behavior, it will be marked as BREAKING. Note that beta APIs will not have breaking API changes called out.Fixed
: A bug, or otherwise incorrect behavior, was fixed.Added
: A new feature, API, or behavior was added in a backwards compatible manner.- Particular sub-systems are identified using parentheses, e.g.
(bzlmod)
or(docs)
.
-
(deps) Upgrade rules_go 0.39.1 -> 0.41.0; this is so gazelle integration works with upcoming Bazel versions
-
(multi-version) The
distribs
attribute is no longer propagated. This attribute has been long deprecated by Bazel and shouldn't be used.
- (bzlmod, entry_point) Added
py_console_script_binary
, which allows adding custom dependencies to a package's entry points and customizing thepy_binary
rule used to build it.
- (bzlmod) The
entry_point
macro is no longer supported and has been removed in favour of thepy_console_script_binary
macro forbzlmod
users.
- (whl_library) No longer restarts repository rule when fetching external dependencies improving initial build times involving external dependency fetching.
0.25.0 - 2023-08-22
- Python version patch level bumps:
- 3.9.16 -> 3.9.17
- 3.10.9 -> 3.10.12
- 3.11.1 -> 3.11.4
- (bzlmod)
pip.parse
can no longer automatically use the default Python version; this was an unreliable and unsafe behavior. Thepython_version
arg must always be explicitly specified.
- (docs) Update docs to use correct bzlmod APIs and clarify how and when to use various APIs.
- (multi-version) The
main
arg is now correctly computed and usually optional. - (bzlmod)
pip.parse
no longer requires a call for whatever the configured default Python version is.
- Created a changelog.
- (gazelle) Stop generating unnecessary imports.
- (toolchains) s390x supported for Python 3.9.17, 3.10.12, and 3.11.4.
0.24.0 - 2023-07-11
- BREAKING (gazelle) Gazelle 0.30.0 or higher is required
- (bzlmod)
@python_aliases
renamed to `@python_versions - (bzlmod)
pip.parse
argname
renamed tohub_name
- (bzlmod)
pip.parse
argincompatible_generate_aliases
removed and always true.
- (bzlmod) Fixing Windows Python Interpreter symlink issues
- (py_wheel) Allow twine tags and args
- (toolchain, bzlmod) Restrict coverage tool visibility under bzlmod
- (pip) Ignore temporary pyc.NNN files in wheels
- (pip) Add format() calls to glob_exclude templates
- plugin_output in py_proto_library rule
- Using Gazelle's lifecycle manager to manage external processes
- (bzlmod)
pip.parse
can be called multiple times with different Python versions - (bzlmod) Allow bzlmod
pip.parse
to reference the default python toolchain and interpreter - (bzlmod) Implementing wheel annotations via
whl_mods
- (gazelle) support multiple requirements files in manifest generation
- (py_wheel) Support for specifying
Description-Content-Type
andSummary
in METADATA - (py_wheel) Support for specifying
Project-URL
- (compile_pip_requirements) Added
generate_hashes
arg (default True) to control generating hashes - (pip) Create all_data_requirements alias
- Expose Python C headers through the toolchain.