Skip to content

Virtualenv 20.31.0 breaks cibuildwheel testing #2380

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
jeremyleung521 opened this issue May 5, 2025 · 7 comments
Closed

Virtualenv 20.31.0 breaks cibuildwheel testing #2380

jeremyleung521 opened this issue May 5, 2025 · 7 comments

Comments

@jeremyleung521
Copy link

jeremyleung521 commented May 5, 2025

Description

I was in a unique position where my CI (https://github.com/westpa/westpa/actions/runs/14840584129/attempts/1) ran slightly before and after the release of virtualenv 20.31.0.

From my investigation, it seems like virtualenv v20.31.0 no longer bundles/supports wheel directly and that leads to virtualenv: error: unrecognized arguments: --wheel=embed during testing, where it would somehow pull the newest virtualenv version (?). This suggests that there needs to be some changes in cibuildwheel workflow.

EDIT: Seems like related to this: #2329

Build log

https://github.com/westpa/westpa/actions/runs/14840584129/job/41665220582#step:4:288

CI config

https://github.com/westpa/westpa/actions/runs/14840584129/workflow

@henryiii
Copy link
Contributor

henryiii commented May 5, 2025

I assume (hope) you hit this due to CIBW_DEPENDENCY_VERSIONS: latest?

@jeremyleung521
Copy link
Author

jeremyleung521 commented May 5, 2025

I assume (hope) you hit this due to CIBW_DEPENDENCY_VERSIONS: latest?

That seems to be the case:
https://github.com/jeremyleung521/westpa/actions/runs/14843565224 (working, 'pinned')
https://github.com/jeremyleung521/westpa/actions/runs/14843629528 (failing, 'latest')

@henryiii
Copy link
Contributor

henryiii commented May 6, 2025

We do need to remove --no-wheel, but I don't see a --wheel=embed, do you know where that's coming from? Upstream discussion is at pypa/virtualenv#2868. Maybe Poetry? I think that might get turned into a warning in a future version of virtualenv.

@jeremyleung521
Copy link
Author

We do need to remove --no-wheel, but I don't see a --wheel=embed, do you know where that's coming from? Upstream discussion is at pypa/virtualenv#2868. Maybe Poetry? I think that might get turned into a warning in a future version of virtualenv.

Yea, no clue where that's coming from. Maybe the --no-wheel got translated to --wheel=embed here?

Anyhow, virtualenv is in the process of reintroducing the --wheel flag, so that might eventually solve it.
pypa/virtualenv#2884

@henryiii
Copy link
Contributor

henryiii commented May 6, 2025

I expect a package you are using has this in it somewhere, it's easy to hit it, for example older Poetry runs into this (and Poetry recommends capping 🤣).

We should conditionally remove the --no-wheel though.

@mayeut
Copy link
Member

mayeut commented May 7, 2025

We do need to remove --no-wheel, but I don't see a --wheel=embed, do you know where that's coming from?

we're still using wheel=embed in v2.x

# In Python<3.12, setuptools & wheel are installed as well
if Version(config.version) < Version("3.12"):
venv_args.extend(("--setuptools=embed", "--wheel=embed"))

@jeremyleung521
Copy link
Author

jeremyleung521 commented May 12, 2025

Seems like the virtualenv v20.31.2 release fixed this. And with --no-wheel removed in future cibuildwheel (v3?) versions, it's probably be fine to close this. Thanks @henryiii for your help and quick response, @mayeut for finding that code snippet.

https://github.com/jeremyleung521/westpa/actions/runs/14843629528/job/42069809562#step:4:383

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants