Pygfx

Latest version: v0.9.0

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

Scan your dependencies

Page 6 of 10

0.8.3

Fixed:

* Prevent Qt warning about setting dpi awareness (320)
* Make canvases close when they get deleted (319)
* Fix qt canvas in ipython (315)
* Make offscreen canvas closable (309)
* Fix that the offscreen canvas had it size hardcoded, ignoring the given size (317)
* Fixed renaming of `queue` in docs (308)
* Fix using `.draw_frame` on qt canvas (304)
* Add missing dev dependencies (295)

Added:

* A shadertoy utility, plus examples (312)

Changed:

* Improve the error prompt when wgsl code is multi line error (311, 316)
* Tests: execute examples in the test process (310)
* Package only the release binary (not the debug build) (299)
* Codegen: uses in-memory file system during code generation (303)
* Improve readme (290, 302, 314)

0.8.2

Fixed:

* Fixed imports for PyQt6.
* Keyboard events work again for Qt 6.3.
* Fixed that overloading ``handle_event()`` did not work for a canvas based on a Qt or wx main widget/window.

Added:

* Can now add a wildcard ("*") to ``add_event_handler`` to handle all events.
* Shader error messages show more context, making shader debugging much easier.
* VSync can now be turned off to raise the frame rate when needed. Note that FPS measurements are still a poor performance benchmark!

Changed:

* GLFW canvas does not draw when minimized anymore.
* The offscreen and Jupyter canvas now use the srgb format for consistency with normal canvases.
* The examples have been adjusted for srgb colors.

0.8.1

Fixed:

* Fixed regression that `canvas.handle_event()` could no longer be overloaded to handle move and wheel events.

Changed:

* Added a note in the docs to explain that the version of the examples must match the runtime version.

0.8.0

Changed:

* Now targeting wgpu-native 0.12.0.1.
* Updated API to the latest WebGPU spec.
* Better error logging using the new callbacks in wgpu-native.
* All destructors (drop methods) are now working as they should.

To update, you need to adjust to the following API changes:

* The encoder's `end_pass()` are renamed to `end()`.
* The compute encoder's `dispatch()` is renamed `dispatch_workgroups`, and `dispatch_indirect` to `dispatch_workgroups_indirect`.
* The `load_value` is replaced with `clear_value` and `load_op`.
* Same for `depth_load_value` and `stencil_load_value`.
* The `device.create_sampler()` method for mipmap filtering now uses the `MipmapFilterMode` enum instead of the `FilterMode` enum. Since the fields of these enums are the same, you probably don't need to change anything.


To update, your shaders need the following changes:

* The decorators have changed from `[[...]]` to `...`.
* E.g. change `[[location(0)]]` to `location(0)`.
* E.g. change `[[group(0), binding(0)]]` to `group(0) binding(0)`.
* Structs now use `,` to separate fields instead of `;`.
* The `elseif` keyword is now `else if`.
* Buffers bound as arrays don't need to be defined via a struct anymore.

0.7.7

Fixed:

* Fixed that event handlers could not be added while in an event handler.
* Prevent swap chain errors when minimizing a window.

Added:

* The `QWgpuWidget` now also supports the autogui events.
* Our CI now tests the examples (including image comparisons).

0.7.6

Changed:

* Pointer move and wheel events are now rate-limited, leading to better performance if e.g. picking is done at each event.

Added:

* Added `wgpu.gui.base.log_exception`, a context-manager to catch and log exceptions, e.g. in event callbacks.

Page 6 of 10

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.