[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[pygame] goodbye SDL1, python 2.7/3.5?



hey hey,

so, we've been talking about stopping support for these for a _while_.
Should the next pygame release 2.0.2 be the last one that supports them?
That means the pygame 2.1.0 series will be without SDL1 and py2 support.


---

There's still lots of python 2.7 pygame users. Maybe more than mac users for example.
But it's at least not increasing anymore, like it was only six months ago (near the number of python 3 users... yes really).
https://github.com/pygame/pygame/issues/2326

We get a cleaner code base, but also get to use modern C (or is it post modern C?). Mainly because python 2.7 on windows has to use an ancient compiler that doesn't support even all of C89. This means things like variable declarations anywhere we want, and better const/struct/union handling. Also a lot fewer ifdefs, and compatibility hacks.

3.5 was EOL'd about a year ago, and not so many people use it.
With 3.6 being the minimum supported python, we'd also get to use contemporary python. Things like types, and even module level getattr.

Probably it could be done in this order.
- ripping out SDL1 (there's a PR for that already)
- ripping out pre-3.6 isms (mostly removing 2.x compat stuff).


What about previous users? SDL1, and python 2.7 users have access to previous releases. They aren't going anywhere. New features, and bug fixes would be a problem of course. The Debian universe is still on pygame 1.9.6 for example. A lot of people will just keep using that.



There's some discussion on gh here:
https://github.com/pygame/pygame/issues/2326