Releases: semantic-reasoning/PyreWire
Releases · semantic-reasoning/PyreWire
v1.0.2
[1.0.2] - 2026-06-19
Changed
- Bumped the pinned
actions/checkoutGitHub Action from v6 to v7 and
pypa/cibuildwheelfrom v4.0.0 to v4.1.0 across the CI, wheels, and
release workflows (#171, #172).
Added
- Every Python source file now carries an
SPDX-License-Identifier: Apache-2.0 OR GPL-3.0-or-laterheader, making
PyreWire's dual license machine-discoverable for REUSE/SPDX tooling and
downstream redistribution. A contract test enforces the header on all
source files (#173). - Expanded the Errors reference documentation: an overview, an error-code
mapping table, and a usage example for the exception hierarchy.
This is a PyreWire-only maintenance release. The public API is unchanged,
and the bundled and validated wirelog ref remains v0.51.0 at peeled SHA
0c6e0cdaee7db069be5d8d896bb59bdcb15673e9 with the minimum compatible
runtime wirelog version remaining 0.44.0.
v1.0.1
[1.0.1] - 2026-06-13
Changed
- The bundled and validated wirelog ref moves from
v0.50.0to
v0.51.0at peeled SHA
0c6e0cdaee7db069be5d8d896bb59bdcb15673e9. This is a wirelog-only
rebuild: the PyreWire public API is unchanged and the minimum
compatible runtime wirelog version remains0.44.0.
Fixed
- A rule with a single
relation(...)body atom now derives its head
when the program also contains the recursiveedge/pathrules.
Previously such one-condition rules (for examplerequires_review(...)
andwarning(...)) were silently missing fromEasySession.step()
results. The root cause was a wirelog evaluation bug — the iteration
context was not reset for non-recursive strata — fixed upstream in
wirelog#914 and first shipped in wirelogv0.51.0. PyreWire performs
no rule evaluation of its own, so bumping the bundled engine is the
fix (#165).
v1.0.0
[1.0.0] - 2026-05-27
Added
- PyreWire 1.0.0 is the first stable release of the Python wrapper for
wirelog. It establishes the supported public API boundary for the
pyrewirepackage and marks v1.0.x as the security-supported release
line. - Stable top-level exports now include:
- incremental session classes:
EasySessionandSession; - batch execution classes:
BatchProgramandResult; - program and introspection wrappers:
Program,Schema,Column,
Stratum, andIRNode; - async wrappers:
AsyncEasySession,AsyncSession, and
AsyncBatchProgram; - IO adapter exports:
IOContext,register_adapter,
unregister_adapter, andregistered_schemes; - compound wrappers:
CompoundandCompoundArg; - exported enums, errors, and helpers, including
ErrorCode,
ColumnType,CompoundKind,IRNodeType,WirelogError
subclasses,wirelog_version,build_config,Delta, and
make_safe_print_delta.
- incremental session classes:
- Incremental session capabilities are validated against wirelog
v0.50.0.EasySessionandSessionsupport step/snapshot workflows,
andAsyncSessionprovides the async incremental session surface.
Changed
- Package metadata is now versioned as
1.0.0with the
Development Status :: 5 - Production/Stableclassifier. - PyreWire follows semantic-versioning expectations for the stable
public API. Backward-incompatible changes require a new major version;
deprecated public APIs will remain available for at least one minor
release before removal unless a security or correctness issue makes
that impossible. - The README quickstart and
docs/now describe the v1 public API:
BatchProgramfor one-shot closure andEasySession/Sessionfor
incremental step/snapshot work. The oldProgram-builder examples
were replaced with the supported APIs, and the README badges now
match thecianddocsworkflows (#122). - GitHub release automation extracts this exact tagged changelog section
for release notes instead of publishing the full changelog body.
Support
- Supported Python versions are CPython 3.11, 3.12, 3.13, and 3.14.
Python 3.10 is not supported by the v1.0 release line. - Published wheels are built for Linux
manylinux_2_28x86_64,
macOSarm64only, and WindowsAMD64. - Wheels bundle
libwirelog, so wheel installs do not require a
separate wirelog installation. - Source distributions do not bundle
libwirelog. Source installs need
a compatible systemlibwirelogdiscoverable by the loader, or an
explicitWIRELOG_LIBpath. - PyreWire 1.0.0 is validated against wirelog v0.50.0 at peeled SHA
272edf3a24b25676f12c4b843d55510f5048dd2f; the minimum compatible
runtime wirelog version is 0.44.0. This wirelog release includes the
recursive aggregation residue fix needed for the stable
step/snapshot API. - Release, test, and wheel automation runs on
ubuntu-24.04,
macos-15, andwindows-2025-vs2026with Python 3.11-3.14.