Pygame-ce

Latest version: v2.5.0

Safety actively analyzes 638346 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 4

2.4.0.dev2

A pre-release for testing before the full release, thanks to everyone! :partying_face:

The 2.4.x series drops support for Python 3.7, which has reached EOL. If you are using this python version, consider upgrading!

(Yes these notes are mostly autogenerated, if something is missing from here, please do reach out and let us know! The notes for the final release is going to be more handwritten and polished)

What's Changed

* Start 2.4.0 by ankith26 in https://github.com/pygame-community/pygame-ce/pull/2362
* Minor improvements to `Window.size` and `Window.position` C code by Matiiss in https://github.com/pygame-community/pygame-ce/pull/2367
* correct typo in rect test methods by dr0id in https://github.com/pygame-community/pygame-ce/pull/2359
* remove SDL_VERSION_ATLEAST(2, 0, 5) by yunline in https://github.com/pygame-community/pygame-ce/pull/2372
* Remove sdlmain_osx.m by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2357
* Try getting freetype tests running on CI, fix minor test fail issues by ankith26 in https://github.com/pygame-community/pygame-ce/pull/2370
* Improved `blits()` docs by itzpr3d4t0r in https://github.com/pygame-community/pygame-ce/pull/2263
* Bump pypa/cibuildwheel from 2.14.1 to 2.15.0 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2396
* Bump uraimo/run-on-arch-action from 2.5.0 to 2.5.1 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2397
* Cap the sphinx version under 7.2.0 by oddbookworm in https://github.com/pygame-community/pygame-ce/pull/2407
* Add a `mixer.Channel.id` getter by oddbookworm in https://github.com/pygame-community/pygame-ce/pull/2369
* Remove mentions of overlay module by zoldalma999 in https://github.com/pygame-community/pygame-ce/pull/2411
* added keyword use_values to collidedict and collidedictall by oddbookworm in https://github.com/pygame-community/pygame-ce/pull/2309
* Added `Window.(min|max)imum_size` by Matiiss in https://github.com/pygame-community/pygame-ce/pull/2364
* Support int and str input for color values in video module by yunline in https://github.com/pygame-community/pygame-ce/pull/2400
* Update README.fr.rst (fix typos, ``pygame`` => ``pygame-ce`` ...) by bilhox in https://github.com/pygame-community/pygame-ce/pull/2228
* minor sprite doc fixes by oddbookworm in https://github.com/pygame-community/pygame-ce/pull/2423
* Bump actions/checkout from 3.5.3 to 3.6.0 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2424
* Add unitest for `Window` by yunline in https://github.com/pygame-community/pygame-ce/pull/2230
* Add SIMD functionality to the transform submodule (Attempt 2) by MyreMylar in https://github.com/pygame-community/pygame-ce/pull/2421
* Patches so constants.c compiles in SDL3 by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2437
* Use format instead of masks (4) by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2439
* Use format instead of masks (5) by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2440
* Improved `Surface.fill` error message for invalid blend flags by Matiiss in https://github.com/pygame-community/pygame-ce/pull/2434
* Use RAISE when appropriate by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2444
* Bump actions/checkout from 3.6.0 to 4.0.0 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2449
* Corrects sprite documentation error by sweatshirtwearingviper in https://github.com/pygame-community/pygame-ce/pull/2442
* Bump actions/cache from 3.3.1 to 3.3.2 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2448
* Bump docker/build-push-action from 4.1.1 to 4.2.1 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2447
* Optimize vector parsing in math.c by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2443
* get_just_pressed and get_just_released by ScriptLineStudios in https://github.com/pygame-community/pygame-ce/pull/1912
* Add `get_power_state()` by yunline in https://github.com/pygame-community/pygame-ce/pull/2257
* Bump docker/metadata-action from 4.6.0 to 5.0.0 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2454
* Bump docker/build-push-action from 4.2.1 to 5.0.0 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2455
* Bump docker/login-action from 2.2.0 to 3.0.0 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2456
* Fix linter failing due to new clang-format version by Matiiss in https://github.com/pygame-community/pygame-ce/pull/2461
* Spanish Translation by Carbon32 in https://github.com/pygame-community/pygame-ce/pull/2430
* Remove conan buildconfig by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2460
* Remove experimental notice on system module by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2459
* Made many `Rect/FRect` methods fastcall by itzpr3d4t0r in https://github.com/pygame-community/pygame-ce/pull/2043
* Bump actions/checkout from 4.0.0 to 4.1.0 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2469
* Fix uint64 underflow in `tick_busy_loop` by oddbookworm in https://github.com/pygame-community/pygame-ce/pull/2466
* Bump pypa/cibuildwheel from 2.15.0 to 2.16.0 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2468
* Raise minimum deps of SDL and friends by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2464
* Bump versions of many manylinux deps by ankith26 in https://github.com/pygame-community/pygame-ce/pull/2470
* Skipping mixer test because it randomly fails on Linux by Matiiss in https://github.com/pygame-community/pygame-ce/pull/2438
* Up cibuildwheel by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2474
* Remove test tests by zoldalma999 in https://github.com/pygame-community/pygame-ce/pull/2475
* WASM: add required PyObject *_null parameter to functions marked with METH_NOARGS in display.c by Damus666 in https://github.com/pygame-community/pygame-ce/pull/2480
* Remove old CI files by zoldalma999 in https://github.com/pygame-community/pygame-ce/pull/2479
* WASM: add required PyObject *_null parameter to remaining functions marked with METH_NOARGS in math.c and color.c by Damus666 in https://github.com/pygame-community/pygame-ce/pull/2482
* Add PG_CreateSurface(From) for SDL2/3 compat by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2481
* Bump pypa/cibuildwheel from 2.16.0 to 2.16.1 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2489
* Bump TheMrMilchmann/setup-msvc-dev from 2 to 3 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2488
* Remove redundant check in pg_ResizeEventWatch by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2487
* Drop python 3.7 by ankith26 in https://github.com/pygame-community/pygame-ce/pull/2493
* Deprecate set_mode depth argument by zoldalma999 in https://github.com/pygame-community/pygame-ce/pull/2490
* Enhancement/font/check initialization by dr0id in https://github.com/pygame-community/pygame-ce/pull/2371
* Port SDL_ShowCursor to SDL3 by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2483
* Use SDL_MOUSE_TOUCH_EVENTS in touch test and docs by MyreMylar in https://github.com/pygame-community/pygame-ce/pull/2484

New Contributors
* sweatshirtwearingviper made their first contribution in https://github.com/pygame-community/pygame-ce/pull/2442
* Carbon32 made their first contribution in https://github.com/pygame-community/pygame-ce/pull/2430
* Damus666 made their first contribution in https://github.com/pygame-community/pygame-ce/pull/2480

**Full Changelog**: https://github.com/pygame-community/pygame-ce/compare/2.3.1.dev4...2.4.0.dev2

2.3.2

Not secure
โ˜€๏ธ๐ŸŒŠ๐Ÿ–๏ธ๐Ÿ˜Ž๐Ÿ„๐Ÿš๐Ÿ๏ธ๐Ÿนโ˜€๏ธ๐ŸŒŠ๐Ÿ–๏ธ
`pip uninstall pygame` (if previously installed, to avoid package conflicts)
`pip install pygame-ce --upgrade`
โ˜€๏ธ๐ŸŒŠ๐Ÿ–๏ธ๐Ÿ˜Ž๐Ÿ„๐Ÿš๐Ÿ๏ธ๐Ÿนโ˜€๏ธ๐ŸŒŠ๐Ÿ–๏ธ

Hello and welcome to a shiny new bugfix release of `pygame-ce`! While we are working towards a 2.4.0 release, we thought it'd be nice to have a quick 2.3.2 with a couple of fixes and enhancements.

Bug fixes

* New contributor Cyuria fixed a long standing and infamous bug in `pygame.draw.arc` in 2344 where arcs with widths would be incorrectly rendered with holes in between.
* `music.get_pos` could segfault due to an internal zero division error, this has now been fixed by oddbookworm in 2426
* ankith26 fixed a couple of overflow related bugs in mapped int color handling and improved the internal C API for it in 2349
* oddbookworm fixed a case of segfaulting in `PixelArray` in 2276
* Matiiss fixed `Sound.__init__` incorrectly raising `TypeError` instead of `FileNotFoundError` for some inputs in 2381
* dr0id fixed `copy.deepcopy` support for `Surface` in 2394
* pmp-p fixed webassembly support of `pygame.newbuffer` and `pygame.pixelarray` in 2419 and 2413

Codebase fixes and robustness improvements

* pmp-p fixed compilation error when `lseek64` is absent (like webassembly 32 bit mode) in 2410
* yunline replaced usage of `PYGAMEAPI_DISPLAY_INTERNAL` with the intended `BUILD_STATIC` in `window.c` in 2412
* dr0id added a lint warning ignore in `locals.py` to make the linter pass in 2393
* yunline bumped cython to 3.0.0 in 2395
* ankith26 bumped cibuildwheel in 2402 and as a result, **this release now has wheels shipping for the python 3.12 release candidate, ready for the full release of Python 3.12 at the start of October!**

Deprecation warnings

* bilhox fixed joystick doc and properly deprecated `pygame.Joystick.init/get_id` in 2363
* ankith26 deprecated passing out of range sequence lengths to colorspace setters in 2392

Unit-tests, typing and examples related improvements

* dr0id fixed `ftfont` to pass same tests as `font` in 2180
* Matiiss removed an unneeded `mixer` test skip in 2384
* devdanzin fixed the rect typing with `Union[FRect, Rect]` in `sprite` in 2380
* dr0id fixed `property` usage issues in `font` stubs in 2358
* ddorn fixed stubs for `Color.__getitem__` in 2391
* yunline fixed a couple of typing issues in `Window` and also did some cleanups in 2366
* ankith26 fixed minor issues in joystick and moveit examples in 2387
* robertpfeiffer improved glcube example and display docs in 2038

New Contributors
* Cyuria made their first contribution in 2344
* ddorn made their first contribution in 2391

Thanks all

Sincere thanks to everyone helping out! In addition to PR makers, as always we are thankful to the community at large and this includes issue reporters, PR reviewers, tutorial makers, admins/mods/helpers on various online forums, people who make helper libraries, and last but certainly not least, all our users including you: the person reading these notes!

If we've made a mistake in these notes, please get in touch with us to get a correction made.

Cya, have fun using `pygame-ce`!

**Full Changelog**: https://github.com/pygame-community/pygame-ce/compare/2.3.1...2.3.2

2.3.1

Not secure
โ˜€๏ธ๐ŸŒŠ๐Ÿ–๏ธ๐Ÿ˜Ž๐Ÿ„๐Ÿš๐Ÿ๏ธ๐Ÿนโ˜€๏ธ๐ŸŒŠ๐Ÿ–๏ธ
`pip uninstall pygame` (if previously installed, to avoid package conflicts)
`pip install pygame-ce --upgrade`
โ˜€๏ธ๐ŸŒŠ๐Ÿ–๏ธ๐Ÿ˜Ž๐Ÿ„๐Ÿš๐Ÿ๏ธ๐Ÿนโ˜€๏ธ๐ŸŒŠ๐Ÿ–๏ธ

Heya, welcome to another release of `pygame-ce`!! It's been about 2 months since the last release and there have been a lot of nice additions, enhancements and bugfixes. We hope this release treats you well until we get the next release out ;)

This release has several changes to the wheels (binaries) we distribute. We've raised our minimum MacOS version from 10.9 to 10.11, following our dependencies. Unlike previous releases, this release has wheels for `aarch64` Linux, Python 3.12 beta releases, and Pypy 3.10. We've dropped wheels for Pypy3.7 due to lack of use. Thanks to ankith26 and Starbuck5 for these updates, in 2171, 2352, 2325, 2315, and 2335.

See what we've been working on!

New additions

* novialriptide added the `point_size` attribute to `font.Font` in 1961. This allows fonts to be resized after being loaded.
* dr0id added `style_name` property to `font.Font`/`freetype.Font` in 2175
* yunline added two `pygame.system` functions `get_cpu_instruction_sets` and `get_total_ram` in 2308. These can be used to find out more about the system at runtime.
* dr0id added new `Rect`/`FRect` methods - `scale_by`/`scale_by_ip` and jonotassia updated these to accept keyword-arguments. This addition was ported to `pygame-ce` by Starbuck5 in 2277
* New contributor AlexanderGroeger added functions to manage soundfonts (`get_soundfont` and `set_soundfont`) to `mixer` in 2274. This is relevant for midi playback through `pygame.mixer`.
* Matiiss added a few convenience classmethods - `Color.from_<color_space>` (i.e. `Color.from_hsla`) in 2177
* yunline added `always_on_top` attribute to `_sdl2.video.Window` in 2307. Now you can use this to force your `Window`s to always be highlighted at the top.

Potential breaking changes

* yunline fixed `transform.gaussian_blur` to handle radius like other standard implementations in 2246 (as an effect of this change, the output will be visually different to the older versions)
* that1guy232 removed the obsolete and deprecated vidcapture camera backend in 2207

Bug fixes

* `time.set_timer` had a long standing bug in which one could get a segfault in some cases (like the timer duration being too low). ankith26 fixed this in 2284 along with other enhancements to code quality and performance. As a result `set_timer` is now much more accurate with the timing!
* ankith26 fixed `FRect` slice subscripting to correctly return `float`s in 2313
* yunline added support for `SDL_WINDOWID` back, fixing a long standing compatibility issue with pygame 1 in 1953. However, this fix is not perfect, and there are some known issues with it (like certain events not working). We heavily recommend not using this.
* `pygame-ce` 2.3.0 introduced a regression where `SysFont` could no longer handle `None`. Sjmarf fixed this in 2271
* Another `pygame-ce` 2.3.0 regression was in `_sdl2.video.Window`, this class was no longer usable when pyinstaller was used. Starbuck5 fixed this by correctly marking a hiddenimport in the pyinstaller hook in 2287
* yunline fixed potential segfaults in `font` in 2255
* zoldalma999 fixed a segfault related to `_sdl2.Window.from_display_module` that happened on `dealloc` in 2341

Usage and performance enhancements

* ScriptLineStudios added support for `Vector2` objects in `get_at`/`set_at` methods of `Surface` in 2111
* itzpr3d4t0r improved the performance of `Surface.set_at` by changing it to use `FASTCALL` in 2330
* yunline added `__repr__` to the `_sdl2.video.Window` class in 2345

Docs and examples improvements

* New contributor devdanzin fixed the positioning of the theme icon of the docs when the page shrinks in 2321
* New contributors Martinus2004 and JiffyRob updated existing example programs to use `pygame-ce` multiline text rendering. 2219, 2235
* New contributor IrvKalb corrected the documentation of the `get_pref_path` function in the `system` module to use the `org` argument in the example in 2326
* Mega-JC made "note" blocks in the documentation look more distinct. 2163
* VantaTree fixed a typo in the event docs in 2290
* oddbookworm removed `pygame.cdrom` references from documentation and code in 2327
* bilhox updated joystick docs to reflect changed mappings of the joycon controllers in 2258
* rethanon added named colors to docs of the `draw` and `Surface` modules in 2346
* Starbuck5 removed `SDL` version information where it mentions versions that are below our supported `SDL` version in 2334

Unittests and typing related improvements

* oddbookworm improved `Rect`/`FRect` typing to be more generic and accurate in 2297
* ankith26 made some types more lax by using a custom `Sequence` ABC and also fixed some other related issues in 2292
* ankith26 made freetype tests run again on CI and fixed minor test failures in 2383 and 2370

Code robustness and cleanups

* zoldalma999 renamed `PyClockObject` to `pgClockObject`, remove rendered field, small cleanups in `time.c` in 2351
* yunline fixed warnings in `video.c` in 2343 and removed the old `Window` cython sources in 2294
* Starbuck5 did a lot of code cleanups and maintenance work. 2272, 2318, 2278, 2305, 2301, 2328, 2316, 2347, 2356

New Contributors
* Martinus2004 made their first contribution in 2219
* devdanzin made their first contribution in 2321
* JiffyRob made their first contribution in 2235
* IrvKalb made their first contribution in 2326
* AlexanderGroeger made their first contribution in 2274

Thanks all

Sincere thanks to everyone helping out! In addition to PR makers, as always we are thankful to the community at large and this includes issue reporters, PR reviewers, tutorial makers, admins/mods/helpers on various online forums, people who make helper libraries, and last but certainly not least, all our users including you: the person reading these notes!

If we've made a mistake in these notes, please get in touch with us to get a correction made.

Cya, have fun using `pygame-ce`!

**Full Changelog**: https://github.com/pygame-community/pygame-ce/compare/2.3.0...2.3.1

2.3.1.dev4

Not secure
The last pre-release before the full release, for testing. Thanks to everyone! :tada:

(Yes this stuff is autogenerated, if something is missing from here, please do reach out and let us know! The notes for the final release is going to be more handwritten and polished)

What's Changed
* 2.3.1.dev2 by ankith26 in https://github.com/pygame-community/pygame-ce/pull/2332
* Start 2.3.1.dev3 by ankith26 in https://github.com/pygame-community/pygame-ce/pull/2333
* Continue moving away from format masks again by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2328
* Remove irrelevant SDL version information by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2334
* removed pygame.cdrom refs everywhere by oddbookworm in https://github.com/pygame-community/pygame-ce/pull/2327
* Update joystick.rst - Switch Joy-cons mappings wrong by bilhox in https://github.com/pygame-community/pygame-ce/pull/2258
* vector2 support for Surface.get_at and set_at by ScriptLineStudios in https://github.com/pygame-community/pygame-ce/pull/2111
* Drop pypy3.7, add wheels for pypy3.10 by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2335
* Fix typos + update sse2neon by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2347
* Add pg_post_event and DictProxy C API to release GIL, fix timer issues and speedups by ankith26 in https://github.com/pygame-community/pygame-ce/pull/2284
* Reset window data on borrowed windows on dealloc by zoldalma999 in https://github.com/pygame-community/pygame-ce/pull/2341
* Add `__repr__` for Window class by yunline in https://github.com/pygame-community/pygame-ce/pull/2345
* Rename PyClockObject to pgClockObject, remove rendered field, small cleanups by zoldalma999 in https://github.com/pygame-community/pygame-ce/pull/2351
* Fix warnings in video.c by yunline in https://github.com/pygame-community/pygame-ce/pull/2343
* Port SDL_cpuinfo.h by yunline in https://github.com/pygame-community/pygame-ce/pull/2308
* Add Named Colors to docs for pygame.draw and pygame.Surface by rethanon in https://github.com/pygame-community/pygame-ce/pull/2346
* Re-add CircleCI for aarch64 builds by ankith26 in https://github.com/pygame-community/pygame-ce/pull/2352
* Corrected MacOS get_pref_path() documentation by IrvKalb in https://github.com/pygame-community/pygame-ce/pull/2326
* Made `Surface.set_at()` fastcall by itzpr3d4t0r in https://github.com/pygame-community/pygame-ce/pull/2330
* add style_name property to font and freetype font by dr0id in https://github.com/pygame-community/pygame-ce/pull/2175
* Use OIDC to publish PyPI releases by ankith26 in https://github.com/pygame-community/pygame-ce/pull/2355
* Support `SDL_WINDOWID` by yunline in https://github.com/pygame-community/pygame-ce/pull/1953
* Enabling users to set the soundfont on midi playback by AlexanderGroeger in https://github.com/pygame-community/pygame-ce/pull/2274
* Don't use SDL_ name for our compat layer by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2356
* Add `.point_size` attribute modifier for fonts by novialriptide in https://github.com/pygame-community/pygame-ce/pull/1961

New Contributors
* IrvKalb made their first contribution in https://github.com/pygame-community/pygame-ce/pull/2326
* AlexanderGroeger made their first contribution in https://github.com/pygame-community/pygame-ce/pull/2274

**Full Changelog**: https://github.com/pygame-community/pygame-ce/compare/2.3.1.dev2...2.3.1.dev4

2.3.1.dev2

Not secure
A pre-release for testing before the full release, thanks to everyone! :partying_face:

(Yes this stuff is autogenerated, if something is missing from here, please do reach out and let us know! The notes for the final release is going to be more handwritten and polished)

What's Changed
* 2.3.0 by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2250
* Start 2.3.1 by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2251
* Bump docker/metadata-action from 4.4.0 to 4.5.0 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2242
* Bump docker/login-action from 2.1.0 to 2.2.0 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2241
* Bump docker/build-push-action from 4.0.0 to 4.1.0 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2240
* Added multiline text rendering to eventlist example by Martinus2004 in https://github.com/pygame-community/pygame-ce/pull/2219
* Remove obsolete vidcapture camera backend (1660) by that1guy232 in https://github.com/pygame-community/pygame-ce/pull/2207
* Fix segfault when rendering fonts by yunline in https://github.com/pygame-community/pygame-ce/pull/2255
* Bump docker/metadata-action from 4.5.0 to 4.6.0 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2260
* Bump docker/build-push-action from 4.1.0 to 4.1.1 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2261
* Fix SysFont None issue by Sjmarf in https://github.com/pygame-community/pygame-ce/pull/2271
* Gaussian blur radius fix by yunline in https://github.com/pygame-community/pygame-ce/pull/2246
* Restore SDL 2.0.9 support by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2272
* Adjust pypi tags by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2279
* Remove unused code from test utils by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2278
* Raise macOS deployment target to 10.11 by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2171
* Port Rect.scale_by(|_ip) by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2277
* Add window hiddenimport by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2287
* Reveal `.. note::` reST block background color again by Mega-JC in https://github.com/pygame-community/pygame-ce/pull/2163
* Fixed typo in event.rst by VantaTree in https://github.com/pygame-community/pygame-ce/pull/2290
* Added `Color.from_<color_space>` classmethods by Matiiss in https://github.com/pygame-community/pygame-ce/pull/2177
* Remove the old Window cython sources by yunline in https://github.com/pygame-community/pygame-ce/pull/2294
* Regenerate Cython using 0.29.36 by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2305
* Update pixelformat to modern format, fix typos by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2301
* Improved Rect and FRect typing to be more generic and accurate by oddbookworm in https://github.com/pygame-community/pygame-ce/pull/2297
* 2.26.5 by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2317
* Fix FRect slice subscripting by ankith26 in https://github.com/pygame-community/pygame-ce/pull/2313
* Introduce new custom 'Sequence' ABC, fix issues by ankith26 in https://github.com/pygame-community/pygame-ce/pull/2292
* Bump pypa/cibuildwheel from 2.13.1 to 2.14.1 by dependabot in https://github.com/pygame-community/pygame-ce/pull/2324
* Remove unnecessary macro by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2316
* Move to SDL 2.26.5 by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2318
* Fix theme icon positioning when the page shrinks (fix 2320) by devdanzin in https://github.com/pygame-community/pygame-ce/pull/2321
* Multiline examples by JiffyRob in https://github.com/pygame-community/pygame-ce/pull/2235
* Replace Py_FileSystemDefaultEncoding by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2315
* Add `always_on_top` attribute for video.Window by yunline in https://github.com/pygame-community/pygame-ce/pull/2307
* 3.12 wheels by Starbuck5 in https://github.com/pygame-community/pygame-ce/pull/2325

New Contributors
* Martinus2004 made their first contribution in https://github.com/pygame-community/pygame-ce/pull/2219
* devdanzin made their first contribution in https://github.com/pygame-community/pygame-ce/pull/2321
* JiffyRob made their first contribution in https://github.com/pygame-community/pygame-ce/pull/2235

**Full Changelog**: https://github.com/pygame-community/pygame-ce/compare/2.3.0...2.3.1.dev2

2.3.0

Not secure
โ˜€๏ธ๐ŸŒŠ๐Ÿ–๏ธ๐Ÿ˜Ž๐Ÿ„๐Ÿš๐Ÿ๏ธ๐Ÿนโ˜€๏ธ๐ŸŒŠ๐Ÿ–๏ธ
`pip uninstall pygame`
`pip install pygame-ce --upgrade`
โ˜€๏ธ๐ŸŒŠ๐Ÿ–๏ธ๐Ÿ˜Ž๐Ÿ„๐Ÿš๐Ÿ๏ธ๐Ÿนโ˜€๏ธ๐ŸŒŠ๐Ÿ–๏ธ

Welcome to the newest release of pygame-ce! Summer is near (here in the northern hemisphere), and with that comes the time of vacations and game jams. The pygame-ce team has been working hard on improving several things for the last few months so you can enjoy your programming activity. You will be seeing a lot of light during these months, so for a change you can now view the pygame-ce documentation in dark mode. Outside of that, there have been a lot of other improvements, bug fixes, and other stuff which are listed below. We hope you will enjoy the changes, and we will continue to improve our beloved library in the following releases.

Besides the dark mode docs, a big story in this release are improvements to the experimental pygame._sdl2 module. It now has non-skeleton documentation, and the Window class was completely rewritten in C to enable better integration with the rest of pygame-ce.

Check out what we've been working on!

What's Changed

Additions

* durkisneer1 added the `pygame.Surface.get_frect()` convenience method. 2071
* yunline added `pygame.mixer.Channel.set_source_location()` (for panning-like effects). 1844
* PurityLake added keyword argument support to `Font.render()`. 2000
* Sjmarf improved a font warning message emitted when requested system fonts are not found. For example: `The system font 'comicsans2' couldn't be found. Did you mean: 'comicsans', 'comicsansms'?` 2147

Bug Fixes

* ankith26 fixed audio issues on older Macs (like pygame.mixer wouldn't work at all). If you see `Library not loaded: loader_path/libmp3lame.0.dylib`, this is fixed now. 2118
* Starbuck5 fixed a regression where "tracker music" (XM/MOD/IT files) would no longer play on Windows. 2152
* Starbuck5 fixed a regression in `pygame.transform.scale()` when scaling to a destination surface with a different pixel format. 2172
* yunline fixed a `SystemError` issue when disconnecting and reconnecting controllers. 2048
* Temmie3754 fixed issue when converting surface to 8 bit surface with palettes. 2031
* yunline made it so pygame-ce will raise an error if source and destination surfaces are the same in `pygame.transform.(box/gaussian)_blur`, rather than just producing incorrect results. 2161
* cbdj fixed the Android build configuration. 2249

Optimizations

* ScriptLineStudios optimized a case for `pygame.draw.polygon` when drawing triangles. 2126
* itzpr3d4t0r optimized `pygame.Rect.move`, `pygame.Rect.move_ip` (and corresponding FRect methods) with FASTCALL, a 20-40% speedup. 2040
* Matiiss optimized `pygame.Surface.get_(f)rect` with FASTCALL, achieving a 20-40% speedup as well. 2179
* Starbuck5 slightly improved create/destroy performance and reduced memory usage of `pygame.math.Vector(2/3)` (enabling future optimizations). 2174

Deprecations

* MyreMylar added deprecation warnings for `pygame.sprite.RenderPlain`, `pygame.sprite.RenderClear` and `pygame.sprite.OrderedUpdates` (will be removed in pygame-ce 2.4.0). 2036
* SSS-Says-Snek added deprecation warnings for `pygame.image.tostring` and `pygame.image.fromstring` in favor of `(to/from)bytes`. 2101

Documentation, Examples, and Type Hints

* Notenlish added an optional dark mode to the pygame-ce documentation! What an impressive first contribution! This can be enabled/disabled by the sun/moon icon next to the search bar in the upper right. MyreMylar and rethanon also contributed to fix a few styling gremlins that emerged.. 2122, 2226, 2215, 2248
* oddbookworm, Temmie3754, narilee2006, Starbuck5 all worked on "pygame-ce-ification"-- making sure the documentation and code reflect "pygame-ce" rather than "pygame" in relevant places. 2203, 2133, 2112, 2194
* Mega-JC vastly expanded the experimental pygame._sdl2 documentation. 2128
* Starbuck5, narilee2006, and yunline contributed miscellaneous documentation improvements. 2183, 2096, 2099, 2106
* that1guy232 improved several of the pygame-ce example programs, making them more modern and consistent. 2204, 2191, 2193
* oddbookworm added type hints for `pygame.PixelArray`. 2113
* bilhox and jd-develop worked to translate the README into French, yolowex translated the README into Persian. 2140, 2187, 2201

Operations and Code Quality

* yunline rewrote the _sdl2.video.Window class into C from Cython, which is huge for our processes moving forward. 2114
* yunline changed the default _sdl2.video.Window window title to match pygame.display. 2200
* MyreMylar, ankith26, and Starbuck5 kept pygame-ce operations moving forward. 2213, 2173, 2212, (+release PRs)
* yunline and Starbuck5 worked explicitly on code quality to stay resilient for future changes. 1939, 2196, 2210, 2108, 2123, 2195

New Contributors
* narilee2006 made their first contribution in 2096
* durkisneer1 made their first contribution in 2071
* bilhox made their first contribution in 2140
* that1guy232 made their first contribution in 2191
* jd-develop made their first contribution in 2187
* yolowex made their first contribution in 2201
* Notenlish made their first contribution in 2122
* cbdj made their first contribution in 2249

Other News
DaFluffyPotato gave us a shoutout in a video about pygame-ce on his channel, titled "Pygame CE - Better & Faster." Check it out if you're interested: https://www.youtube.com/watch?v=pYq9edSUaOw

**Full Changelog**: https://github.com/pygame-community/pygame-ce/compare/2.2.1...2.3.0

Page 2 of 4

ยฉ 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.