# Pygame 2.0.0.dev4 pre release

**URL:** <https://discourse.libsdl.org/t/pygame-2-0-0-dev4-pre-release/26692>\
**Category:** SDL Development\
**Created:** [October 7, 2019, 8:48pm UTC](https://discourse.libsdl.org/t/pygame-2-0-0-dev4-pre-release/26692 "2019-10-07T20:48:28Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Rene\_Dudfield](https://discourse.libsdl.org/user_avatar/discourse.libsdl.org/rene_dudfield/32/3235_2.png) [@Rene\_Dudfield](https://discourse.libsdl.org/u/Rene_Dudfield)\
**Post date:** [October 7, 2019, 8:48pm UTC](https://discourse.libsdl.org/t/pygame-2-0-0-dev4-pre-release/26692/1 "2019-10-07T20:48:28Z")

</div>

## 🎮👾👽🎮👾👽🎮👾👽🎮👾👽🎮👾

G’day! It’s 2.0.0.dev4 time!

## 🎮👾👽🎮👾👽🎮👾👽🎮👾👽🎮👾

> `python3 -m pip install pygame==2.0.0.dev4 --pre --user`

What goodies do we have in store?

> pygame 2.0.0.dev4 is a python package using SDL 2 aiming for full backwards compatibility.  
> pygame runs on CPython 2.7-3.8 and also on pypy (the JIT accelerated python).

Firstly, some SDL2 compatibility issues were fixed. Like the window initially defaults to black, and the `unicode` field of keydown events is filled. Thanks to [@dlon](https://github.com/dlon).

Speaking of SDL2, we are now shipping [SDL 2.0.10](https://discourse.libsdl.org/t/sdl-2-0-10-released/26429) which includes stuff like batching renderer and lots of bug fixes, including to the Metal renderer on Mac, lots of other stuff. Thanks to all the libSDL people.

Many, many fixes thanks to [@charlesej](https://github.com/charlesej) and some static analysis tools.

Some new contributors deserve thanks 🎉 🎈 including  
[@thiagojobson](https://github.com/thiagojobson) [@flaambe](https://github.com/flaambe) [@mampersat](https://github.com/mampersat) [@s0lst1ce](https://github.com/s0lst1ce)

[@robertpfeiffer](https://github.com/robertpfeiffer) and [@dlon](https://github.com/dlon) fixed some issues with the fancy SCALED feature, and [@robertpfeiffer](https://github.com/robertpfeiffer) got the toggle\_fullscreen function working more reliably too!

And speaking of helping out, [@robertpfeiffer](https://github.com/robertpfeiffer) also helped out [@nhpackard](https://github.com/nhpackard) with an optimization to transform.scale. When scaling to twice the width and height, a special optimized routine by [@nhpackard](https://github.com/nhpackard) is used.

Lots of fixes and tests happened to the draw, and mask modules mostly thanks to [@charlesej](https://github.com/charlesej) (but also to [@thiagojobson](https://github.com/thiagojobson))

Lots of infrastructure changes happened to our build system to make things easier for  
developers. Firstly we started using LGTM which runs some lint tools on our code for us.  
Secondly we started using lots of other testing tools. Thanks to Travis CI we have a  
Power PC CPU robot building things. [@takluyver](https://github.com/takluyver) made a PR for the new manylinux2010 which  
we sadly haven’t started using yet. As usual a tiny bit more of the release process has been automated.

An article for developers on [contemporary C tools](http://renesd.blogspot.com/2019/09/post-modern-c-tooling.html) is still unfinished(but probably useful for developers of pygame). Here’s some issues of those tools applied to pygame: [GitHub · Where software is built](https://github.com/pygame/pygame/labels/tooling)

Again [@charlesej](https://github.com/charlesej) in particular has been amazing in going through mountains of issues uncovered.  
The pygame code base is significantly cleaner, more portable, and less buggy because of it.

Indic Scripts including Hindi, Telugu, Tamil are closer to being rendered now thanks to the  
work of new contributor [@peanutbutterandcrackers](https://github.com/peanutbutterandcrackers) tracking down things and writing  
some automated tests for it. This work is ready to be developed further and is moving forward! Thanks!

Thanks for all the people trying out the pygame 2.0.0.dev3 builds and (submitting issues) or patches including: [@larryhastings](https://github.com/larryhastings) [@humanbeast7](https://github.com/humanbeast7) [@Pololot64](https://github.com/Pololot64) [@mcpalmer1980](https://github.com/mcpalmer1980)  
[@husano896](https://github.com/husano896) [@galexandreg](https://github.com/galexandreg) [@mgedmin](https://github.com/mgedmin) [@cgohlke](https://github.com/cgohlke) [@cipri-tom](https://github.com/cipri-tom) [@noisnemid](https://github.com/noisnemid) [@DudmasterUltra](https://github.com/DudmasterUltra)  
[@agdt3](https://github.com/agdt3) [@crowjdh](https://github.com/crowjdh) [@JOHNIDnDNIW](https://github.com/JOHNIDnDNIW) [@lordmauve](https://github.com/lordmauve) [@dheerajakula](https://github.com/dheerajakula)

Speaking of bugs, as people have been using the 2.0.0.dev3 release, they’ve been finding various bugs. All SDL2/pygame 2 related compatibility issues reported by people are marked as `critical` .

> **[pygame/pygame](https://github.com/pygame/pygame/labels/critical)**
>
> 🐍🎮 pygame (the library) is a Free and Open Source python programming language library for making multimedia applications like games built on top of the excellent SDL library. C, Python, Native, Ope...

These “[critical](https://github.com/pygame/pygame/labels/critical)” issues will be a focus as we move forward to shipping pygame 2.0.0.  
If you feel like helping out with any of these “[critical](https://github.com/pygame/pygame/labels/critical)” issues, that would be highly appreciated.

```auto
- confirm the bug (on your platform).
- cheer people on in the issues
- write a minimal working example script so people can reproduce the issue.
- write a test case, or try and clarify the issue

```

> **[pygame/pygame](https://github.com/pygame/pygame/labels/critical)**
>
> 🐍🎮 pygame (the library) is a Free and Open Source python programming language library for making multimedia applications like games built on top of the excellent SDL library. C, Python, Native, Ope...

- [merged PRs](https://github.com/pygame/pygame/pulls?q=is%3Apr+is%3Aclosed)
- [713 Commits since 1.9.6 stable release](https://github.com/pygame/pygame/compare/1.9.6...2.0.0.dev4)
- [299 Commits since 2.0.0.dev3 pre release](https://github.com/pygame/pygame/compare/2.0.0.dev3...2.0.0.dev4)

ps. DaFluffyPotato released a new commercial game using the pygame 2.0.0.dev3 release.  
“Drawn Down Abyss” is getting good reviews… check it out:  
[https://www.pygame.org/project/4294](https://www.pygame.org/project/4294)  
pps. Feels like progress? Happy hacking!
