Skip to content

v1.0.0 — protowire v1.0 freeze line

Latest

Choose a tag to compare

@trendvidia trendvidia released this 13 May 13:39
· 1 commit to main since this release
9154de2

Lockstep major-version cut alongside the protowire v1.0 spec freeze and `protowire-cpp` v1.0.0, which this port wraps via the nanobind FFI. Breaking — there is no alias period; v1.0 is itself the major bump.

Python API rename

Before After
`pxf.TableDirective` `pxf.DatasetDirective`
`pxf.TableReader` `pxf.DatasetReader`
`pxf.Result.tables` `pxf.Result.datasets`
`pxf.ProtoDirective` + `pxf.ProtoShape` (new)
`pxf.Result.protos: tuple[ProtoDirective, ...]` (new)

FFI shape change

`_protowire.pxf_unmarshal_full` now returns a 6-tuple `(raw, set_paths, null_paths, directives, datasets, protos)`. The cpp side surfaces `ProtoDirective` as a `(shape, type_name, body)` tuple; Python wraps it into the new frozen dataclass with `shape` typed as `Literal["anonymous", "named", "source", "descriptor"]`.

Install

```
pip install protowire-python==1.0.0
```

Built with cibuildwheel — Linux x86_64/aarch64, Windows AMD64, macOS arm64, plus the sdist.

Lockstep v1.0 ports

See the protowire v1.0.0 release for the full lockstep table.