Update to 4.26.0
- Requires virtualenv 20.29+ - Supports freethreading Python - Fixes: rhbz#2365939 This drops support for Python 3.8. I don't know if that means running 3.8 venvs, or just running on 3.8, but I dropped all the 3.8 bits, as this update is targeted to Fedora 42+ only anyway.
This commit is contained in:
40
3524.patch
40
3524.patch
@@ -1,40 +0,0 @@
|
||||
From 3c5d56bf8bb8405d0eceef912ba4cad7d077448c Mon Sep 17 00:00:00 2001
|
||||
From: Florian Bruhin <me@the-compiler.org>
|
||||
Date: Thu, 8 May 2025 10:47:22 +0200
|
||||
Subject: [PATCH] Fix custom HelpFormatter for Python 3.14
|
||||
|
||||
https://github.com/python/cpython/pull/132323 passes prefix_chars=
|
||||
(and other arguments) to the formatter_class, but the custom HelpFormatter only
|
||||
accepted prog=.
|
||||
|
||||
Accept any keyword arguments and pass them on to the parent class.
|
||||
|
||||
Fixes #3523
|
||||
---
|
||||
docs/changelog/3523.bugfix.rst | 1 +
|
||||
src/tox/config/cli/parser.py | 4 ++--
|
||||
2 files changed, 3 insertions(+), 2 deletions(-)
|
||||
create mode 100644 docs/changelog/3523.bugfix.rst
|
||||
|
||||
diff --git a/docs/changelog/3523.bugfix.rst b/docs/changelog/3523.bugfix.rst
|
||||
new file mode 100644
|
||||
index 000000000..3052d877e
|
||||
--- /dev/null
|
||||
+++ b/docs/changelog/3523.bugfix.rst
|
||||
@@ -0,0 +1 @@
|
||||
+Fix ``TypeError`` for ``HelpFormatter`` with Python 3.14
|
||||
diff --git a/src/tox/config/cli/parser.py b/src/tox/config/cli/parser.py
|
||||
index 87629ae49..904ff7aad 100644
|
||||
--- a/src/tox/config/cli/parser.py
|
||||
+++ b/src/tox/config/cli/parser.py
|
||||
@@ -95,8 +95,8 @@ def parse_args( # type: ignore[override] # avoid defining all overloads
|
||||
class HelpFormatter(ArgumentDefaultsHelpFormatter):
|
||||
"""A help formatter that provides the default value and the source it comes from."""
|
||||
|
||||
- def __init__(self, prog: str) -> None:
|
||||
- super().__init__(prog, max_help_position=30, width=240)
|
||||
+ def __init__(self, prog: str, **kwargs: Any) -> None:
|
||||
+ super().__init__(prog, max_help_position=30, width=240, **kwargs)
|
||||
|
||||
def _get_help_string(self, action: Action) -> str | None:
|
||||
text: str = super()._get_help_string(action) or ""
|
||||
66
3528.patch
66
3528.patch
@@ -1,66 +0,0 @@
|
||||
From 32a00aae6fe9d43d8fc5c6e85ce691e1ebfb5323 Mon Sep 17 00:00:00 2001
|
||||
From: Robsdedude <rouven.bauer@neo4j.com>
|
||||
Date: Sun, 11 May 2025 22:13:38 +0200
|
||||
Subject: [PATCH 1/2] Fix using deprecated virtualenv option `--wheel`
|
||||
|
||||
---
|
||||
pyproject.toml | 2 +-
|
||||
src/tox/pytest.py | 3 ++-
|
||||
2 files changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/pyproject.toml b/pyproject.toml
|
||||
index 9c1116c23..9b52c2f36 100644
|
||||
--- a/pyproject.toml
|
||||
+++ b/pyproject.toml
|
||||
@@ -60,7 +60,7 @@ dependencies = [
|
||||
"pyproject-api>=1.8",
|
||||
"tomli>=2.2.1; python_version<'3.11'",
|
||||
"typing-extensions>=4.12.2; python_version<'3.11'",
|
||||
- "virtualenv>=20.29.1",
|
||||
+ "virtualenv>=20.31",
|
||||
]
|
||||
optional-dependencies.test = [
|
||||
"devpi-process>=1.0.2",
|
||||
diff --git a/src/tox/pytest.py b/src/tox/pytest.py
|
||||
index 72f410bf5..bca2ad848 100644
|
||||
--- a/src/tox/pytest.py
|
||||
+++ b/src/tox/pytest.py
|
||||
@@ -281,7 +281,8 @@ def our_setup_state(value: Sequence[str]) -> State:
|
||||
m.setenv("VIRTUALENV_SYMLINK_APP_DATA", "1")
|
||||
m.setenv("VIRTUALENV_SYMLINKS", "1")
|
||||
m.setenv("VIRTUALENV_PIP", "embed")
|
||||
- m.setenv("VIRTUALENV_WHEEL", "embed")
|
||||
+ if sys.version_info[:2] < (3, 9):
|
||||
+ m.setenv("VIRTUALENV_WHEEL", "embed")
|
||||
m.setenv("VIRTUALENV_SETUPTOOLS", "embed")
|
||||
try:
|
||||
tox_run(args)
|
||||
|
||||
From 4d68d2af93aae8208c79b55ff0dfacd4b78a1866 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Bern=C3=A1t=20G=C3=A1bor?= <bgabor8@bloomberg.net>
|
||||
Date: Mon, 12 May 2025 09:39:48 -0700
|
||||
Subject: [PATCH 2/2] Fix test
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Bernát Gábor <bgabor8@bloomberg.net>
|
||||
---
|
||||
tests/session/cmd/test_sequential.py | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tests/session/cmd/test_sequential.py b/tests/session/cmd/test_sequential.py
|
||||
index 1f4a24624..87771be03 100644
|
||||
--- a/tests/session/cmd/test_sequential.py
|
||||
+++ b/tests/session/cmd/test_sequential.py
|
||||
@@ -114,7 +114,9 @@ def test_result_json_sequential(
|
||||
py_test = get_cmd_exit_run_id(log_report, "py", "test")
|
||||
assert py_test == [(1, "commands[0]"), (0, "commands[1]")]
|
||||
packaging_installed = log_report["testenvs"]["py"].pop("installed_packages")
|
||||
- expected_pkg = {"pip", "setuptools", "wheel", "a"}
|
||||
+ expected_pkg = {"pip", "setuptools", "a"}
|
||||
+ if sys.version_info[0:2] == (3, 8):
|
||||
+ expected_pkg.add("wheel")
|
||||
assert {i[: i.find("==")] if "@" not in i else "a" for i in packaging_installed} == expected_pkg
|
||||
install_package = log_report["testenvs"]["py"].pop("installpkg")
|
||||
assert re.match(r"^[a-fA-F0-9]{64}$", install_package.pop("sha256"))
|
||||
@@ -20,7 +20,7 @@
|
||||
%undefine _py3_shebang_s
|
||||
|
||||
Name: python-tox
|
||||
Version: 4.25.0
|
||||
Version: 4.26.0
|
||||
Release: %autorelease
|
||||
Summary: Virtualenv-based automation of test activities
|
||||
|
||||
@@ -28,12 +28,6 @@ License: MIT
|
||||
URL: https://tox.readthedocs.io/
|
||||
Source: %{pypi_source tox}
|
||||
|
||||
# Support Python 3.14.0b1
|
||||
Patch: https://github.com/tox-dev/tox/pull/3524.patch
|
||||
|
||||
# Fix using deprecated virtualenv option --wheel
|
||||
Patch: https://github.com/tox-dev/tox/pull/3528.patch
|
||||
|
||||
# Remove dependency on devpi-process.
|
||||
# Remove dependency on detect-test-pollution.
|
||||
# Remove coverage-related dependencies.
|
||||
@@ -89,9 +83,6 @@ Summary: %{summary}
|
||||
# It recommends all Python versions it supports. (This is an exception to
|
||||
# the rule that Fedora packages may not require the alternative interpreters.)
|
||||
%if 0%{?fedora}
|
||||
%if 0%{?fedora} < 42
|
||||
Recommends: python3.8
|
||||
%endif
|
||||
Recommends: python3.9
|
||||
Recommends: python3.10
|
||||
Recommends: pypy3-devel
|
||||
@@ -112,7 +103,7 @@ Recommends: python3-devel
|
||||
# see https://github.com/tox-dev/tox/pull/2843#discussion_r1065028356
|
||||
sed -ri -e 's/"(packaging|filelock|platformdirs|psutil|pyproject-api|pytest|pytest-mock|pytest-xdist|wheel|pluggy|distlib|cachetools|build\[virtualenv\]|setuptools|flaky)>=.*/"\1",/g' \
|
||||
-e 's/"(time-machine)>=[^;"]+/"\1/' \
|
||||
-e 's/"(virtualenv)>=.*/"\1>=20",/g' \
|
||||
-e 's/"(virtualenv)>=.*/"\1>=20.29",/g' \
|
||||
-e 's/"(hatchling)>=.*/"\1>=1.13",/g' \
|
||||
pyproject.toml
|
||||
|
||||
|
||||
2
sources
2
sources
@@ -1 +1 @@
|
||||
SHA512 (tox-4.25.0.tar.gz) = 3560b667af03ca41c1bd8fa9eaa90f8c988b7f946498f3bc2d0a4dfa3a481d8ada27acb6201bde284a2bcfe14b86ee409a3ce8e875531423862d1af88e6248fb
|
||||
SHA512 (tox-4.26.0.tar.gz) = ad2e311cd63c45a079b8c230a2feb364270b7a8bcf44b626385f8e442c6683ae841b3f34417b504f927608685a254fef3767d832fb5cfcc324c9cbf6ff7ea997
|
||||
|
||||
@@ -36,9 +36,6 @@
|
||||
- smoke36:
|
||||
dir: python/smoke
|
||||
run: VERSION=3.6 INSTALL_OR_SKIP=true TOX_REQUIRES="virtualenv<20.22.0" ./venv.sh
|
||||
- smoke38:
|
||||
dir: python/smoke
|
||||
run: VERSION=3.8 INSTALL_OR_SKIP=true ./venv.sh
|
||||
- smoke39:
|
||||
dir: python/smoke
|
||||
run: VERSION=3.9 INSTALL_OR_SKIP=true ./venv.sh
|
||||
@@ -54,9 +51,15 @@
|
||||
- smoke313:
|
||||
dir: python/smoke
|
||||
run: VERSION=3.13 INSTALL_OR_SKIP=true ./venv.sh
|
||||
- smoke313t:
|
||||
dir: python/smoke
|
||||
run: VERSION=3.13t INSTALL_OR_SKIP=true ./venv.sh
|
||||
- smoke314:
|
||||
dir: python/smoke
|
||||
run: VERSION=3.14 INSTALL_OR_SKIP=true ./venv.sh
|
||||
- smoke314t:
|
||||
dir: python/smoke
|
||||
run: VERSION=3.14t INSTALL_OR_SKIP=true ./venv.sh
|
||||
- smoke_pypy39:
|
||||
dir: python/smoke
|
||||
run: PYTHON=pypy3.9 VERSION=3.9 INSTALL_OR_SKIP=true ./venv.sh
|
||||
|
||||
Reference in New Issue
Block a user