I’m getting increasingly worried about the future of Python, and those worries 
have been exacerbated by the new yearly release rhythm, and the lack of a 
stable C-API that is full enough to entice extension writers to use it.

PyPI packages and wheels are targeted to specific Python versions, which means 
that any project that depends on some of the larger extension packages (of 
which there are many, and many of which are must-have for many projects) now 
start lagging Python versions by years, because somewhere deep down in the 
dependency graph there is something that is still stuck at Python 3.8 (for 
example). I fully understand that 3.8 is good enough for the developers of that 
package, and that they have more pressing things to do than porting to 3.9 or 
3.10, but it now keeps any project or package that depends on their software on 
3.8 as well.

And I also fully understand that some other developer who creates a new package 
that is essential to my application only targets the current Python release, or 
maybe one release back, but now if I need both the new package and and older 
one I’m up the well-known creek without a paddle.

Building packages from source has become pretty much impossible nowadays, 
especially if your project is multi-platform and needs to interface to specific 
hardware, and you want to do the right thing with CI/CD builds and all that. On 
Linux/MacOS you have a chance when you try to specify all the dependencies for 
third party libraries and what not, but on Windows you’re dead in the water. 
And that is assuming you have the time and are smart enough to back port the 
new package to the old Python release, or the old package to the new Python 
release (and for the latter there’s probably a good reason why the developers 
haven’t done so already). Before you know it you have to install a couple of 
graphics card APIs for some obscure AI feature used by something you’ve never 
heard of, Cython for something else, and obscure vendor libraries for something 
else again.

I think we really need to come up with some scheme whereby extension packages 
become more long-lived than a single Python release...
--
Jack Jansen, <jack.jan...@cwi.nl>, http://www.cwi.nl/~jack
If I can't dance I don't want to be part of your revolution -- Emma Goldman



_______________________________________________
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/7ALUHJBJCZGFGXHK6TTDDR3ST4YVSAWR/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to