- Rewrite substitution replacement parser - by :user:`masenf`
\ acts as a proper escape for \ in ini-style substitutions
The resulting value of a substitution is no longer reprocessed in the context
of the broader string. (Prior to this change, ini-values were repeatedly re-substituted until
the expression no longer had modifications)
Migrate and update "Substitutions" section of Configuration page from v3 docs.
New names exported from tox.config.loader.ini.replace:
find_replace_expr
MatchArg
MatchError
MatchExpression
Note: the API for replace itself is unchanged. (:issue:2732)
Improved documentation for factors and test env names - by :user:stephenfin. (:issue:2852)
v4.2.8 (2023-01-11)
Bugfixes - 4.2.8
Allow using package names with env markers for pip's --no-binary and --only-binary options - by :user:q0w. (:issue:2814)
v4.2.7 (2023-01-11)
Bugfixes - 4.2.7
- A testenv with multiple factors, one of which conflicts with a ``base_python`` setting in ``tox.ini``, will now use the
correct Python interpreter version - by :user:`stephenfin`. (:issue:`2838`)
- Explicitly list ``wheel`` as requirement for the tests, as some of the tests error without it. (:issue:`2843`)
- tox has reverted support for Python factors that include PATCH release info (e.g. ``py3.10.1``), build architecture
(e.g. ``pypy3-64``) or do not define a ``py`` prefix or other supported prefix (e.g. ``3.10``). These complex factors
were initially supported with the release of tox 4.0 but has proven complicated to support. Instead, the simple factors
supported by tox 3 e.g. (``py310``, ``pypy3``) or period-separated equivalent (``py3.10``) introduced in tox 4 should be
used. Users who wish to specify more specific Python version information should configure the :ref:`base_python` setting
- by :user:`stephenfin`. (:issue:`2848`)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Updates the requirements on tox to permit the latest version.
Release notes
Sourced from tox's releases.
Changelog
Sourced from tox's changelog.
... (truncated)
Commits
6fe280a
release 4.3.0aff1d4d
Rewrite substitution parser (#2861)24bf148
Document factors (#2852)793132d
Add Documentation URL for quick access via PyPI web (#2854)955a7fb
release 4.2.88d3d26b
Allow package names with env markers with pip binary options (#2853)b8e47ce
release 4.2.79f89f51
Revert to supporting simple Python factors (#2849)34b79a2
Only return Python factor on base_python conflict (#2840)ce2e8db
The tests actually require wheel (#2843)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)