Skip to main content

pygame 2 status — 5 Nov, 2018

Here are some updates from where we're up to on pygame 2 with SDL2.
  • pygame now compiles with SDL2 from source on at least Mac, Linux, and Windows.
  • SDL2 now does batching with the existing API. Should be in the next release. So no need to integrate SDL_gpu, or to change how we submit surfaces for rendering.
  • Many things are working with SDL2, there are dozens of known issues and test failures however. The main one is color keyed surfaces not working properly. The other big piece of work is getting it to compile on the build bots (travis, appveyor), and making pre releases available.
  • There have been a few more developers contributing (10 in the last month).
  • Work continues on cleanups, making it more developer friendly, and developer out reach. The repo has been cleaned up, removing the clutter, and beginning an internal CAPI refactor. Unit tests have also undergone some cleanups using newer features. python 2.4/2.5/2.6 support has been removed in the code. The contribution guide has been improved. https://www.pygame.org/wiki/Contribute
  • If anyone using pygame in Berlin wants to come along and help talk with people interested in contributing, I am presenting here: https://www.meetup.com/opensourcediversity/events/255369540/
  • We're working toward the 1.9.5 release (the refactor release).
  • There could be 'one more SDL 1.2' release, and we may use that SDL1.2 branch for a 1.9.6 release.
 
Here's the milestone for pygame 2: https://github.com/pygame/pygame/milestone/4
When is pygame 2 done? TLDR; When the pygame API is mostly running in a backwards compatible way on SDL2. When the few parts that are not working are documented as such. When there are binaries available for python 2.7, 3.4, 3.5, 3.6, 3.7 in 32bit/64bit varieties on at least Mac, Linux, Windows.
 
Here's the milestone for pygame 1.9.5 (the refactor release). https://github.com/pygame/pygame/milestone/7
The 1.9.5 release is the 'refactor' release, with the SDL2 branch merged and many cleanups. Being able to compile SDL2 support in is possible from source, but there are known issues with it. Binaries (on pypi and otherwise) should be distributed with SDL 1.2.
 
Thanks to the following people who have been helping out since the last release (sorry if I've missed anyone).

(@alphaCTzo7G) | Amos Bastian (@amosbastian) | Andrey Lopukhov (@andreyx86) | Augusto Noronha (@augusto2112) | (@Bottersnike) | (@Cerealdragon) | (@cmtrapp02) | Daniel Molina (@daniel-molina) | David Caughell (@DavidCaughell) | David L (@dlon) | burmer (@dtschirmer) | René Dudfield (@illume) | (@LambdaGoblin) | Lenard Lindstrom (@llindstrom) | Marius Gedminas (@mgedmin) | (@metulburr) | Dominik George (@Natureshadow) | Nunu-Willump (@Nunu-Willump) | Nik (@nikolas) | Sett (@sw00) |