Skip to content
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

flake8-pyi <22.8.1 is broken using flake8 >=5.0.0 #257

Closed
AlexWaygood opened this issue Jul 30, 2022 · 8 comments · Fixed by #259
Closed

flake8-pyi <22.8.1 is broken using flake8 >=5.0.0 #257

AlexWaygood opened this issue Jul 30, 2022 · 8 comments · Fixed by #259

Comments

@AlexWaygood
Copy link
Collaborator

flake8 5.0.0 was just released, and flake8-pyi crashes if run with the new version of flake8.

In the short term, we should maybe pin the required version of flake8 in our setup.py to <5.0.0 and do a hotfix release.

In order to become compatible with flake8 5.0.0, we'll probably need to either address #183 or just change the monkey-patching of flake8 that we do.

Thoughts?

@godlygeek
Copy link

Did you mean to cut a release after #258? As of right now, if someone does just a pip install flake8-pyi, they still get 22.7, which does not pin to flake8 < 5.0.0, and which fails when flake8 is run.

@AlexWaygood
Copy link
Collaborator Author

Did you mean to cut a release after #258? As of right now, if someone does just a pip install flake8-pyi, they still get 22.7, which does not pin to flake8 < 5.0.0, and which fails when flake8 is run.

Sorry for the disruption. I'll try to cut a release this evening with the fix.

@AlexWaygood
Copy link
Collaborator Author

Did you mean to cut a release after #258? As of right now, if someone does just a pip install flake8-pyi, they still get 22.7, which does not pin to flake8 < 5.0.0, and which fails when flake8 is run.

flake8-pyi 22.8.0 is now released, which pins the required version of flake8 to <5.0.0: https://pypi.org/project/flake8-pyi/. Sorry again for the disruption.

@godlygeek
Copy link

Thank you!

@AlexWaygood AlexWaygood pinned this issue Aug 2, 2022
@AlexWaygood AlexWaygood changed the title Plugin is broken with new flake8 release Plugin is broken using flake8 >=5.0.0 Aug 2, 2022
@AlexWaygood
Copy link
Collaborator Author

AlexWaygood commented Aug 2, 2022

We haven't specified an upper bound on the flake8 version we require since v19.3.0 (see #26). That means that unless people know to pin flake8-pyi to >=22.8.0, the incompatibility with flake8 5.0.0 can cause some pretty inscrutable CI failures (see https://github.com/python/typing_extensions/runs/7630564226?check_suite_focus=True for an example).

One way of fixing this would be to yank flake8-pyi 19.3.0<=x<22.8.0 from PyPI. This would involve yanking around 13 releases. People who explicitly pin to one of those releases will still be able to install them; this would only affect people who don't pin their version of flake8-pyi.

https://snarky.ca/what-to-do-when-you-botch-a-release-on-pypi/
https://peps.python.org/pep-0592/

@hauntsaninja
Copy link
Collaborator

I think that's a bit of an abuse of yanking. And people may pin with e.g. <22.1 which would then do something very different.

@srittau
Copy link
Collaborator

srittau commented Aug 2, 2022

I don't think we should yank any releases. This is just a run-of-the mill incompatibility, not a huge issue where we need to prevent people from installing the old version. People who pinned their released will not run into this and people who haven't won't either now that we fixed it. Only if you pinned only flake8-pyi, but not flake8 will you run into this.

@AlexWaygood
Copy link
Collaborator Author

Okay, I'm persuaded! No yanking!

@AlexWaygood AlexWaygood changed the title Plugin is broken using flake8 >=5.0.0 flake8-pyi <22.8.1 is broken using flake8 >=5.0.0 Aug 2, 2022
@AlexWaygood AlexWaygood unpinned this issue Oct 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants