GeezerVison is showing github.com — Drop Python 3.7, 3.8, 3.9 support by ivanovmg · Pull Request #497 · dry-python/classes
Conversation
ivanovmg
commented
Dec 13, 2024
•
edited
Loading
Uh oh!
There was an error while loading. Please reload this page.
This PR drops support for Python 3.7, 3.8 and 3.9 versions.
Here we updated python version in pyproject.toml and then updated poetry.lock file as described below (please correct me if it is totally wrong way of doing things).
Update to poetry.lock file:
- Bump python version to 3.10+ (previous commit)
- Re-build poetry.lock file as shown below:
$ rm poetry.lock
$ poetry install
Checklist
- I have double checked that there are no unrelated changes in this pull request (old patches, accidental config files, etc)
- I have created at least one test case for the changes I have made
- I have updated the documentation for the changes I have made
- I have added my changes to the
CHANGELOG.md
Related issues
Format is:
🙏 Please, if you or your company finds dry-python valuable, help us sustain the project by sponsoring it transparently on https://github.com/sponsors/dry-python. As a thank you, your profile/company logo will be added to our main README which receives hundreds of unique visitors per day.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please, take a look at other sys.version_info checks
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
|
@@ -8,6 +8,7 @@ |
|
|
if sys.version_info[:2] >= (3, 9): # noqa: C901
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can remove that now, because there are no python versions that won't execute this branch.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
ivanovmg reacted with thumbs up emoji
|
you can use pip-check lib from PyPI to find outdate packages and update them all at once in pyproject.toml
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
I pushed a fix for this problem to master, please, rebase
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
I pushed a fix for this problem to master, please, rebase
OK, thanks! I tried to fix it myself, but now I will rebase
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Repro steps:
1. Bump python version to 3.10+ (previous commit)
2. Re-build poetry.lock file as shown below:
```
$ rm poetry.lock
$ poetry install
```
1. Dropped 3.7-3.9
2. Added 3.11-3.13
Previously in this test module the actual tests would be
executed only for python 3.9 and earlier.
Since we drop support for these versions, then these tests
are not necessary anymore.
Avoid inheritance from object
to fix WPS306 linting errors.
```
WPS306 Found explicit `object` base class: ...
```
Since mypy v0.980 this function has been removed from `mypy.types`.
This this commit we re-implement the same version
present in v0.970.
|
It turns out that there are multiple mypy check failures with the newest mypy version.
I tried to fix some of them, but it goes beyond my experience and knowledge of type checking.
@sobolevn please suggest the way forward.
I suppose that some of them can be silenced, considering a dynamic nature of the typeclass implementation, but most of them will still have to be handled somehow.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
You can use older mypy for now, I will fix these issues later :)
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
ivanovmg
commented
Dec 19, 2024
•
edited
Loading
Uh oh!
There was an error while loading. Please reload this page.
You can use older mypy for now, I will fix these issues later :)
I reverted back to mypy v0.942, but surprisingly the errors persist (even more errors appeared).
Update
I noticed that when I drop strict=true in setup.cfg, then mypy checks are successful, but then flake8 complains.

With strict = true we have multiple mypy failures.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can delete nitpick section and dependency from pyproject.toml
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Reviewers
sobolevn
sobolevn approved these changes
Uh oh!
There was an error while loading. Please reload this page.
Assignees
No one assigned
Milestone
No milestone
Development
Successfully merging this pull request may close these issues.
Drop Python 3.7 through 3.9 support
Uh oh!
There was an error while loading. Please reload this page.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
|