Skip to content

Update pyglet to 3.0.dev3#2842

Merged
pvcraven merged 5 commits intodevelopmentfrom
pvcraven/pyglet-dev3-update
Apr 20, 2026
Merged

Update pyglet to 3.0.dev3#2842
pvcraven merged 5 commits intodevelopmentfrom
pvcraven/pyglet-dev3-update

Conversation

@pvcraven
Copy link
Copy Markdown
Member

Summary

  • Updates pyglet dependency from 3.0.dev2 to 3.0.dev3 (released April 18, 2026)
  • Adapts to breaking API changes:
    • pyglet.config.OpenGLConfigpyglet.config.OpenGLUserConfig with new api parameter using GraphicsAPI enum (replaces string-based opengl_api)
    • pyglet.media.load() split into pyglet.media.load_audio() / pyglet.media.load_video()
    • pyglet.gl module relocated to pyglet.graphics.api.gl

Test plan

  • Full test suite: 1175 passed, 4 failed (all 4 pre-existing — 3 HiDPI pixel scaling, 1 encoding issue)
  • No new test failures introduced by this update
  • Verify on non-HiDPI display for pixel-perfect tests
  • Test sound loading/playback
  • Test video playback (if applicable)

🤖 Generated with Claude Code

Adapt to breaking API changes in pyglet 3.0.dev3:
- OpenGLConfig → OpenGLUserConfig with GraphicsAPI enum
- pyglet.media.load → load_audio/load_video
- pyglet.gl module moved to pyglet.graphics.api.gl

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Comment thread arcade/examples/gui/exp_controller_inventory.py Outdated
Paul V Craven and others added 3 commits April 20, 2026 13:01
Also patch pyglet LibraryMock to add __bool__/__iter__ so doc builds
don't crash when ffmpeg codec init runs under sys.is_pyglet_doc_run.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Per review feedback: pyglet.graphics.api.gl imports are backend-specific
and would break WebGL. arcade.gl.enums is backend-agnostic.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sphinx 9.1.0 requires Python >=3.12 but arcade supports >=3.10.
Revert to Sphinx 8.1.3 and sphinx-rtd-theme 3.0.2. The LibraryMock
patch in conf.py is still needed for pyglet 3.0.dev3 doc builds.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Comment thread pyproject.toml Outdated
Pyodide only ships Pillow 11.3.0 and PyPI doesn't support WASM
wheels yet, so requiring >=12.2.0 would break web deployments.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@pvcraven pvcraven merged commit 200e3af into development Apr 20, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants