Note: This version is a quick bugfix release that superceeds v2.0.11.
The previous release contained a bug that broke Batch/Group migration, which has now been fixed (and a unit test added for).
Changes and Improvements
------------------------
- media: major internal audio cleanup, bugfixes, and improvements on all platforms.
- various typing and documentation improvements.
- math: add Quaternion class with common methods.
- shader: add support for setting and getting arrays in a Uniform via wrapper. (1005)
- shapes: add radius property get and set to Arc class. (1013)
- sprite, shapes: Avoid extra step of updating vertex list after creation. (1016)
- shapes: allow setting the line thickness of Arc and BezierCurve shapes. (1028, 1030)
- text: add Caret.select_all method.
- text: performance improvements on instantiation, visibility, anchors, positions. (1004)
- text: add left, right, bottom, top attributes. (1004)
- text: add program argument for custom shaders. (1037)
- text: add get_as_texture function to render text to a new texture. (1037)
- font: skip pre-parsing all system fonts to improve speed. Check only when needed.
Bugfixes
--------
- macOS: prevent crash when scanning for Controllers if device.transport is None. (995)
- input: avoid crash when encountering controls with invalid min/max values. (986)
- xlib: fix missed argument in window drag.
- media: fix bad behavior when clearing XAudio2AudioPlayer. (1011)
- pyglet.__init__: don't install debug_trace until after module proxies 1046
- media: numerous fixes to race conditions and deadlocks across all backends.
- experimental: Fix incorrect texture UVs and final positioning for GeometryShader Sprite.
- image: add missing binding calls for blit_to/texture methods.