3.0 (2026-04-12)¶
Python Installer support and dependency changes¶
Since releng-tool v2.0, Python-based packages have been installed into various staging/target paths using the Python installer package. Changes introduced in its latest v1.0 release has resulted in unexpected installation events for Python-based packages.
This release of releng-tool adjusts its interaction to address issues, maintaining support for installer’s v0.5 to v1.0 releases.
In part with these changes, adjustments have been made to releng-tool to help
manage Python optional dependencies for releng-tool projects. Originally, the
installer package was included by default in releng-tool installations. This
is no longer the case with v3.0. Users with projects that utilize Python will
now need to ensure the dependency is installed with any frontend or backend
used.
For example:
pipx inject releng-tool installer ...
Also introduced in this release is new optional dependency configurations. While releng-tool will now only install the bare minimum requirements for execution, users wanting to automatically install Python dependencies can do so when installing releng-tool. For example, to install all Python-related dependencies releng-tool could use, the following can be used:
pipx install releng-tool[py-all]
See all optional Python dependencies options.
Lastly, releng-tool now includes prerequisite checks for each supported Python setup-type. A package requiring, for example, Flit support will now fail early if the Python runtime/virtual environment is missing the module.
Lint-check version capping¶
Users taking advantage of linting capabilities may now configure version limits for lint-checks to be performed. This may be helpful for users who add linting checks to their projects CI scripts, but do not want to cause failures on required pipelines when new linting checks are introduced by releng-tool.
Linting limits can be configured with the
lint_max_version project configuration:
lint_max_version = '2.8'
Or configured with a RELENG_LINT_MAX_VERSION
environment variable:
export RELENG_LINT_MAX_VERSION=2.8
releng-tool lint