classes icon indicating copy to clipboard operation
classes copied to clipboard

Drop Python 3.7, 3.8, 3.9 support

Open ivanovmg opened this issue 1 year ago • 6 comments

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:

  1. Bump python version to 3.10+ (previous commit)
  2. 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
  • [x] I have added my changes to the CHANGELOG.md

Related issues

Format is:

  • Closes #496

🙏 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.

ivanovmg avatar Dec 13 '24 16:12 ivanovmg

you can use pip-check lib from PyPI to find outdate packages and update them all at once in pyproject.toml

sobolevn avatar Dec 13 '24 16:12 sobolevn

I pushed a fix for this problem to master, please, rebase

sobolevn avatar Dec 17 '24 05:12 sobolevn

I pushed a fix for this problem to master, please, rebase

OK, thanks! I tried to fix it myself, but now I will rebase

ivanovmg avatar Dec 17 '24 06:12 ivanovmg

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.

ivanovmg avatar Dec 18 '24 17:12 ivanovmg

You can use older mypy for now, I will fix these issues later :)

sobolevn avatar Dec 18 '24 21:12 sobolevn

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. image

With strict = true we have multiple mypy failures.

ivanovmg avatar Dec 19 '24 04:12 ivanovmg