Stability and known limitations
Versioning
Section titled “Versioning”From 1.0.0 on, Pyzed follows semantic versioning:
- Patch releases (
1.0.x) only fix bugs. - Minor releases (
1.x.0) add features and never break code that uses the public API. - Major releases (
2.0.0) are the only ones that can remove or change public API.
The public API is everything documented in the API reference and in these guides. Names
that start with an underscore, and anything under pyzed.designer, are internal and may change in any release.
pyzed.agents, pyzed.mcp and the animation API are provisional in 1.x: they follow the same rules, but a
minor release may still adjust details that turn out wrong, and the change is always listed under Breaking
Changes in the release notes.
Deprecations
Section titled “Deprecations”Before public API is removed, it keeps working for at least one minor release and warns with a
DeprecationWarning that names its replacement. The removal happens in the next major release.
Pyzed Design files (.pzform and components) carry a format version. Pyzed opens files of its own version and
older ones, and refuses a file saved by a newer Pyzed instead of silently dropping what it does not know.
Known limitations
Section titled “Known limitations”| Area | Limitation |
|---|---|
| Accessibility | No screen reader support yet, and focus moves between fields only from code (Command.focus), not with Tab. |
| Effects | glass, bloom and glow are drawn with gradients and shadows: nothing behind a panel is blurred. |
| Animations | 11 properties can be animated (opacity, position, scale, colors, radius, border width and glow); size, rotation and padding cannot. |
| Large data | Virtual lists and tables need rows of the same height. Every update still calls view(); @pz.memo skips the subtrees that did not change. |
| Platforms | Linux wheels need glibc 2.28 or newer, or musl (Alpine), where the audio engine has no sound devices. Pyzed Design builds are not signed yet. |
| Python | Free-threaded Python (3.13t, 3.14t) is not supported. Pyzed needs Python 3.10 or newer. |