|
6 | 6 |
|
7 | 7 | .. towncrier release notes start |
8 | 8 |
|
| 9 | +********************* |
| 10 | + v4.36.0 (2026-02-15) |
| 11 | +********************* |
| 12 | + |
| 13 | +Features - 4.36.0 |
| 14 | +================= |
| 15 | +- Allow ``skip_missing_interpreters`` to be set per environment, overriding the global setting. This enables marking |
| 16 | + specific environments as optional while keeping others required. (:issue:`435`) |
| 17 | +- Add ``--fail-fast`` CLI flag and ``fail_fast`` per-environment config option to stop executing remaining environments |
| 18 | + when the first failure occurs - by :user:`gaborbernat`. (:issue:`578`) |
| 19 | +- Add shell completion support for bash, zsh, and fish via :pypi:`argcomplete` - by :user:`gaborbernat` (:issue:`918`) |
| 20 | +- Validate that configured extras exist in package metadata, raising a clear error for unknown extras - by |
| 21 | + :user:`gaborbernat` (:issue:`1113`) |
| 22 | +- Add glob pattern support in ``depends`` (e.g. ``depends = py3*``) to match environments by wildcard instead of listing |
| 23 | + them explicitly - by :user:`gaborbernat` (:issue:`1152`) |
| 24 | +- Add ``disallow_pass_env`` configuration option to exclude specific environment variables after ``pass_env`` glob |
| 25 | + expansion - by :user:`gaborbernat` (:issue:`1387`) |
| 26 | +- Support ``file:`` URIs in ``--installpkg`` (e.g. ``--installpkg file:///path/to/pkg.whl``), including proper handling of percent-encoded characters - by :user:`rahuldevikar`. (:issue:`3498`) |
| 27 | + |
| 28 | +Bugfixes - 4.36.0 |
| 29 | +================= |
| 30 | +- Raise an error when ``deps`` is configured on a PEP-517 packaging environment (e.g. ``.pkg``), since build dependencies |
| 31 | + should be specified via the ``[build-system]`` table in ``pyproject.toml`` - by :user:`rahuldevikar` (:issue:`3412`) |
| 32 | +- Follow `FORCE_COLOR <https://force-color.org/>`_ recommendations: any non-empty value now enables color |
| 33 | + (previously only ``yes``, ``true``, or ``1`` were accepted, and other values caused a crash). |
| 34 | + Also add support for ``TTY_COMPATIBLE`` |
| 35 | + (``1`` forces color, ``0`` disables it) — by :user:`rahuldevikar`. (:issue:`3579`) |
| 36 | +- Return non-zero exit code from tox config when configuration exceptions occur. (:issue:`3649`) |
| 37 | +- Fix flaky spinner test assertion caused by timing variations on slower systems. (:issue:`3692`) |
| 38 | + |
| 39 | +Documentation - 4.36.0 |
| 40 | +====================== |
| 41 | +- Document how to provide environments via ``toxfile.py`` inline plugins using ``tox_extend_envs`` and ``MemoryLoader`` - |
| 42 | + by :user:`gaborbernat`. (:issue:`828`) |
| 43 | +- Document shell completion setup for bash, zsh, and fish in the CLI reference - by :user:`gaborbernat` (:issue:`918`) |
| 44 | +- Document negative factor conditions and multi-factor combinations with negation in the INI configuration reference - by |
| 45 | + :user:`gaborbernat` (:issue:`3276`) |
| 46 | +- Add a substitution quick reference table covering all available ``{...}`` replacement variables - by :user:`gaborbernat` (:issue:`3326`) |
| 47 | +- Add TOML configuration reference with complete examples for ``tox.toml`` and ``pyproject.toml`` formats, and emphasize |
| 48 | + TOML as the recommended format throughout - by :user:`gaborbernat` (:issue:`3393`) |
| 49 | +- Document the ``tox exec`` subcommand with usage examples in the how-to guides - by :user:`gaborbernat` (:issue:`3403`) |
| 50 | +- Comprehensive documentation improvements: added how-to guides for tox exec, CI/CD, coverage, build backends, labels, |
| 51 | + migration, debugging, and extras; expanded plugin documentation with all hook examples and packaging guide; added env |
| 52 | + var handling guide, factor conditions reference, and substitution quick reference; integrated docstrfmt for consistent |
| 53 | + RST formatting; fixed docstring issues in source code - by :user:`gaborbernat` (:issue:`3475`) |
| 54 | +- Update ``development.rst`` to reflect current standards: replace references to |
| 55 | + ``flake8``/``black``/``isort``/``pyupgrade`` with ``ruff``, remove outdated Python 2.7 compatibility note, and fix CI |
| 56 | + config filename - by :user:`rahuldevikar` (:issue:`3483`) |
| 57 | +- Drop ``setup.py`` mentions from the installation page — by :user:`rahuldevikar`. (:issue:`3588`) |
| 58 | +- Restructure documentation following the `Diataxis <https://diataxis.fr/>`_ framework: add a step-by-step tutorial |
| 59 | + (``getting_started.rst``), consolidate how-to recipes (``howto.rst``), refocus the user guide on conceptual explanation, |
| 60 | + and move plugin docs into their own ``plugins/`` subdirectory. Remove the obsolete tox 3-to-4 migration guide |
| 61 | + (``upgrading.rst``) and FAQ, redistributing still-relevant content into the appropriate sections. All configuration |
| 62 | + examples now show TOML first with INI alongside - by :user:`gaborbernat` (:issue:`3702`) |
| 63 | + |
| 64 | +Miscellaneous - 4.36.0 |
| 65 | +====================== |
| 66 | +- Switch type checker from ``mypy`` to ``ty`` - by :user:`gaborbernat`. (:issue:`3685`) |
| 67 | +- Add GitHub Actions workflow dispatch for release preparation as alternative to local ``tox r -e release`` command - by |
| 68 | + :user:`gaborbernat` (:issue:`3704`) |
| 69 | + |
9 | 70 | ********************** |
10 | 71 | v4.35.0 (2026-02-12) |
11 | 72 | ********************** |
|
0 commit comments