With latest mutagen 1.48, you removed older Python support for v3.7, v3.8 v3.9. I'm asking if there is anything inside the code that prevent it to use them. Is it really a compatibility issue? I would like to enable them again unless there is something that breaks it. For now, after looking at the code, I don't see anything that prevent using python 3.7. As a dev, I usually keep 10 years compatibility.
It is not a compatibility issue, but all those versions are EOL and 5 years is plenty of time for users to update. https://devguide.python.org/versions/ It was just a big jump this time since we didn't have a release in a while.
Is there anything preventing you from updating to 3.10?
it is possible to update the python version but it cans be a mess with python plugins and python ENV when there are more than one python installed on the system. It is not recommended to overwrite the main python coming from the distro because its breaks things...
Well... I could re-add the lines of code you used before to make it compatible again. If those pythons versions 3.7,3.8,3.9 wasn't causing any issues, why not just re-add them? To me, saying it is 5 years old isn't a good reason to remove them. But this is your decision.
Technically I think it is mostly the dependency declared on setuptools, some other dev dependencies which in their declared min. version require newer Python versions and probably a maybe a few type hints using newer syntax.
But it's also about being able to test and support older versions (and older versions of e.g. setuptools), and defining a new minimum supported Python versions also means new features can be used in new code changes. I'd say Python 3.7 at least is pretty much out of the question by now, and if only because it can't be easily used both locally with `uv` nor in Github actions anymore. It is also unsupported upstream for 3 years and hence hasn't received any security updates for quite some time.
Also, if needed, older versions of mutagen are available via PyPI.