Skip to content

refactor!: remove the legacy serialization formats (#206, #207, #208) - #241

Merged
GordonYuanyc merged 4 commits into
mainfrom
p5/removal
Oct 20, 2026
Merged

GordonYuanyc merged 4 commits into
mainfrom
p5/removal

Conversation

@GordonYuanyc

@GordonYuanyc GordonYuanyc commented Oct 20, 2026 •

Copy link
Copy Markdown
Collaborator

Closes #206, #207, #208, #188. Part of #179.

ASAPv1 bytes are unchanged; the goldens are untouched.

Locally: check, fmt, clippy (all-features, default, octo-runtime, experimental), rustdoc, --lib and asapv1_golden. Goldens built through serde or portable types now build state directly; each kind has a known_state_matches_golden test.

Not carried over: portable-only property laws. Native Count-Min and Count Sketch currently have no merge-algebra pbt laws, which is a follow-up. Nitro's raw-serde continuation tests are gone, since Nitro has no ASAPv1 form.

🤖 Generated with Claude Code

GordonYuanyc and others added 4 commits October 20, 2026 06:13
Delete `proto/`, the `proto` module and its vendored generated code,
`tools/gen-proto`, the `prost` and `bytes` dependencies, the CI job that
checked the vendored code, and the proto-only tests and fixtures
(`tests/xtest_consumer.rs`, `tests/sketches_go_parity_probe.rs`, the
envelope goldens). The KLL `KLLState` value-offset encoding goes with it.

Closes #206
Closes #188

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Delete `message_pack_format::{portable, native}`, `MessagePackCodec` and its
`Error`: the wrapper types (`CountMinSketch`, `CountSketch`,
`CountMinSketchWithHeap`, `CountSketchWithHeap`, `KllSketch`, `HllSketch`,
`DdSketch`, `HydraKllSketch`), their deltas, heap items, sampling helpers and
constants, and the `xxhash-rust` dependency. Tests that exercised only the
wrappers go with them.

`SetAggregator` and `SetAggregatorDelta` move to `sketches::set_aggregator`
and stay re-exported at the crate root. The ASAPv1 framing (`envelope`,
`kind`, `delta`, `wire_key`, `admission_rate`) moves to the private module
`asapv1`; `peek_kind_id` stays at the crate root.

Closes #207

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sketches, their storage (`Vector1D`/`2D`/`3D`, `BitMatrix`, `CommonHeap`,
the fixed-structure macros) and their inputs stop implementing `Serialize`
and `Deserialize`; serde stays on the ASAPv1 metadata and payload types.
`CountMinHll` and `MicroCm` lose `serialize_to_bytes` /
`deserialize_from_bytes`, and `serde-big-array` is dropped.

KMV's decoder and the golden tests that built known states through serde
now construct them directly; the known-state encode checks move into each
sketch's `wire.rs`. Raw-serde tests go; tests of shared decode paths move
to ASAPv1 or the rebuild they exercised.

Closes #208

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Drop the Count-Min and Count Sketch `rows`/`cols` fields only serde read,
the HLL wire re-exports only the portable path used, and imports the
removals left unused; gate KMV's heap constructor on `experimental`; build
the DDSketch admission golden from the decoded signed state; refresh the
lockfile and the PBT law counts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.

Remove the protobuf format from asap_sketchlib

1 participant