pypa / virtualenv

Virtual Python Environment builder
https://virtualenv.pypa.io
MIT License
4.8k stars 1.03k forks source link

Update for platformdirs v4 #2666

Closed jwodder closed 9 months ago

jwodder commented 10 months ago

platformdirs v4.0 was released yesterday, yet virtualenv requires platformdirs<4. Please update virtualenv to accept the latest version of platformdirs.

johnthagen commented 10 months ago

I wanted to add that if a library you depend upon requires platformdirs, dependency resolution can select platformdirs 4.0.0, after which point, if another library depends on virtualenv, it will backtrack to virtualenv 20.4.7, which then is so old it can fail because of a SetuptoolsDeprecationWarning.

One such example:

alex commented 10 months ago

https://github.com/pypa/virtualenv/commit/55650340d9c9415bf035596266f245a8d59c6993 was merged already, so this will be resolved whenever the next release happens

kendra-human commented 10 months ago

5565034 was merged already, so this will be resolved whenever the next release happens

Any rough ETA on when a release would occur?

gaborbernat commented 10 months ago

Probably later this week, I'm currently in hospital for a few days unexpectedly so things got delayed, sorry.

sigma67 commented 10 months ago

All the best @gaborbernat . Any other maintainers that could possibly jump in and help out?

johnthagen commented 9 months ago

@pfmoore I see you are listed as a maintainer on PyPI. Was wondering if you might be able to help out with this? ❤️

pfmoore commented 9 months ago

Nope, sorry. It's been quite a while since I worked on this repo, and I'm not sufficiently familiar with the current release process to want to try to do a release.

sigma67 commented 9 months ago

Seems like it's as simple as creating a release on GitHub which will trigger the workflow: https://github.com/pypa/virtualenv/blob/main/.github/workflows/release.yml

But we can't be sure so it's probably better to wait for @gaborbernat

gaborbernat commented 9 months ago

Seems like it's as simple as creating a release on GitHub which will trigger the workflow: main/.github/workflows/release.yml

Is more complicated because you need to use https://github.com/pypa/virtualenv/blob/main/tox.ini#L79 to update the changelog first. And then also create a zipapp via https://github.com/pypa/virtualenv/blob/main/tox.ini#L99 and do the release over https://github.com/pypa/get-virtualenv/commit/779ff03e8ce647610792df4fe0c56629796f3003

Finally create Github releases for both repos. Out now at https://pypi.org/project/virtualenv/20.24.7/

johnthagen commented 9 months ago

Thank you @gaborbernat! Hope you are doing well.

gaborbernat commented 9 months ago

Thank you, relatively speaking to last week, I'm better, however, the full recovery will take some more time.

sigma67 commented 9 months ago

Thank you, speedy recovery!

Might be a good idea to document this release process in the contribution/maintainer docs

pfmoore commented 9 months ago

Just to be clear, while I still have maintainer rights here, I wouldn't have done an emergency release for this even if the process had been documented. I don't think it's unreasonable for there to be a week or two's delay on something like this if the lead maintainer is unavailable. (Pip, for example, only does a release every 3 months).

I agree that having the various project processes documented is a good thing to do, but let's keep things in perspective here.

Best wishes for your recovery @gaborbernat!

sigma67 commented 9 months ago

@pfmoore I did not intend to imply that you should have.

Just always helps to have things documented for critical packages just in case 👍