lidatong / dataclasses-json

Easily serialize Data Classes to and from JSON
MIT License
1.34k stars 151 forks source link

[FEATURE] Remove upper bound on Requires-Python #452

Closed george-zubrienko closed 10 months ago

george-zubrienko commented 11 months ago

Description

Follow-up from the discussion here

Possible solution

Update Python version constraints to ^3.7 from >=3.7, <3.13

Alternatives

N/A

Context

Good morning read

george-zubrienko commented 11 months ago

FYI @cdce8p

george-zubrienko commented 11 months ago

BTW, this looks a bit alarming to me - lots of time spend on dependency install

image

cdce8p commented 11 months ago

BTW, this looks a bit alarming to me - lots of time spend on dependency install

This is at least somewhat to be expected. There are a lot of packages which don't publish wheels for 3.12 just yet. So poetry / pip needs to build those for each dependency install. It could probably be cached though if you wanted to. https://github.com/actions/setup-python/blob/main/docs/advanced-usage.md#caching-packages

george-zubrienko commented 11 months ago

This is at least somewhat to be expected. There are a lot of packages which don't publish wheels for 3.12 just yet. So poetry / pip needs to build those for each dependency install. It could probably be cached though if you wanted to.

Makes sense! I was worried first it was the actual test suite. As a part of this, should we also consider bumping python min to 3.8? Or maybe at least remove test run for 3.7?

george-zubrienko commented 11 months ago

Reference download data:

image

george-zubrienko commented 11 months ago

image

george-zubrienko commented 11 months ago

TLDR: Py3.7 ~25k downloads/day - look state to me (~4% of daily downloads) Py3.8-3.10 >50k/day Py3.11 ~25k /day - growing

https://pypistats.org/packages/dataclasses-json

george-zubrienko commented 11 months ago

@lidatong when you have time, your opinion would help a lot here :)