Skip to content

Commit c75e8cc

Browse files
Stop seeding wheel for pyodide venv (#208)
1 parent 60685bd commit c75e8cc

File tree

5 files changed

+9
-12
lines changed

5 files changed

+9
-12
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [0.30.4] - 2025/05/20
99

10+
- Fixed compatibility with `virtualenv` 20.31 and later. The Pyodide virtual environment via `pyodide venv` no longer seeds
11+
`wheel`, i.e., the `--wheel`/`--no-wheel` options are not available anymore.
12+
[#208](https://github.com/pyodide/pyodide-build/pull/208)
13+
14+
1015
- The default cross-build metadata URL was changed to https://pyodide.github.io/pyodide/api/pyodide-cross-build-environments.json to
1116
circumvent rate limits imposed by GitHub. It remains overridable by setting the `PYODIDE_CROSS_BUILD_ENV_METADATA_URL` environment variable.
1217
[#206](https://github.com/pyodide/pyodide-build/pull/206)

pyodide_build/cli/venv.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,12 @@ def main(
3030
False,
3131
"--no-download",
3232
"--never-download",
33-
help="Disable download of the latest pip/setuptools/wheel from PyPI",
33+
help="Disable download of the latest pip/setuptools from PyPI",
3434
),
3535
download: bool = typer.Option(
3636
False,
3737
"--download/--no-download",
38-
help="Enable download of the latest pip/setuptools/wheel from PyPI",
38+
help="Enable download of the latest pip/setuptools from PyPI",
3939
),
4040
extra_search_dir: list[str] = typer.Option(
4141
None,
@@ -55,7 +55,6 @@ def main(
5555
no_setuptools: bool = typer.Option(
5656
False, "--no-setuptools", help="Do not install setuptools"
5757
),
58-
no_wheel: bool = typer.Option(True, "--no-wheel", help="Do not install wheel"),
5958
no_periodic_update: bool = typer.Option(
6059
False,
6160
"--no-periodic-update",
@@ -94,8 +93,6 @@ def main(
9493
venv_args.extend(["--pip", pip])
9594
if setuptools is not None:
9695
venv_args.extend(["--setuptools", setuptools])
97-
if no_wheel:
98-
venv_args.append("--no-wheel")
9996
if no_setuptools:
10097
venv_args.append("--no-setuptools")
10198

pyodide_build/out_of_tree/venv.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@
2626
"--pip",
2727
"--setuptools",
2828
"--no-setuptools",
29-
"--no-wheel",
3029
"--no-periodic-update",
3130
]
3231

pyodide_build/tests/test_venv.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ def base_test_dir(tmp_path_factory):
5252
(["--no-vcs-ignore"], ["--no-vcs-ignore"]),
5353
(["--pip", "23.0.1"], ["--pip", "23.0.1"]),
5454
(["--no-setuptools"], ["--no-setuptools"]),
55-
(["--no-wheel"], ["--no-wheel"]),
5655
(["--no-periodic-update"], ["--no-periodic-update"]),
5756
# TODO: enable when they are supported
5857
# (["--symlink-app-data"], ["--symlink-app-data"]),
@@ -132,7 +131,6 @@ def test_supported_virtualenv_options():
132131
"--pip",
133132
"--setuptools",
134133
"--no-setuptools",
135-
"--no-wheel",
136134
"--no-periodic-update",
137135
]
138136

@@ -154,9 +152,8 @@ def test_supported_virtualenv_options():
154152
["--no-setuptools"],
155153
lambda path: not list(path.glob("**/setuptools-*.dist-info")),
156154
),
157-
(["--no-wheel"], lambda path: not list(path.glob("**/wheel-*.dist-info"))),
158155
],
159-
ids=["default", "clear", "no-vcs-ignore", "no-setuptools", "no-wheel"],
156+
ids=["default", "clear", "no-vcs-ignore", "no-setuptools"],
160157
)
161158
def test_venv_creation(base_test_dir, options, check_function):
162159
venv_path = base_test_dir / "test_venv"
@@ -174,7 +171,6 @@ def test_venv_creation(base_test_dir, options, check_function):
174171
[
175172
("pip", "23.0.1"),
176173
("setuptools", "67.6.0"),
177-
("wheel", "0.40.0"),
178174
],
179175
)
180176
def test_installation_of_seed_package_versions(base_test_dir, package, version):

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ module = [
114114
"tomli",
115115
"tomllib",
116116
"typer",
117-
"virtualenv",
117+
"virtualenv>=20.31.2",
118118
"auditwheel_emscripten.*"
119119
]
120120
ignore_missing_imports = true

0 commit comments

Comments
 (0)