Trac #34849: More fixes to support tox 4
The tox.ini files in pkgs/*/ are broken with tox 4.
Early versions of tox 4.x have additional defects.
- https://github.com/tox-
dev/tox/discussions/2699#discussioncomment-4403536 - factors no longer
work in `passenv` - fixed in tox 4.0.13
- negated factors in `deps`, like `!pipenv-!norequirements:
-rrequirements.txt` do not work - https://github.com/tox-
dev/tox/issues/2747 - fixed in tox 4.0.15
- And autoprovisioning for downgrade to tox 3 is not working -
https://github.com/tox-dev/tox/issues/2634
- In SAGE_ROOT/tox.ini, in tox 4 earlier than 4.2.7, numerical factors
are broken because they are misinterpreted as Python versions
(https://tox.wiki/en/latest/changelog.html#bugfixes-4-2-7); e.g., 4.0.14
is broken:
{{{
tox -e docker-linuxmint-21.1-standard
git:t/34903/tox_ini___gh_actions__update_linux_platforms*
docker-linuxmint-21.1-standard: skipped because could not find python
interpreter with spec(s): 21.1
docker-linuxmint-21.1-standard: SKIP (1.98 seconds)
}}}
Here we update affected `tox.ini` files so that:
- src/tox.ini and pkgs/*/tox.ini work both with suitable versions of tox
3 and tox 4. We change the tox `spkg-configure.m4` to check for such
versions.
- SAGE_ROOT/tox.ini work with tox >= 4.2.7 (autoprovisioning if
necessary)
Follow up:
- #34840 Upgrade tox to 4.x
URL: https://trac.sagemath.org/34849
Reported by: mkoeppe
Ticket author(s): Matthias Koeppe
Reviewer(s): Dima Pasechnik
Committer
Release Manager