v1.0.0 — first release
First tagged release. The library has been complete and tested for a while; this marks it as no longer a draft.
What it is
A C# port of the C++ serialize bitpacking library, producing bit-identical output to the C++, Go and Rust ports — a stream written in one language reads in any other.
Wire compatibility is proven rather than asserted: a golden wire test pins bytes copied verbatim from the C++ test suite, and a live interop harness cross-checks against the real serialize.h compiled with clang++.
Family values
- Zero third-party dependencies, including test frameworks.
- Malicious packet data never throws. Reads fail cleanly through a sticky latched error; exceptions are reserved for API misuse by the caller. You can write your packet loop without a catch block.
- No unsafe code.
- Zero allocation on the serialization paths (strings on the read path are the documented exception).
Unity
netstandard2.1 is a first-class target, pinned to C# 9, so anything Unity's compiler would refuse fails in CI rather than in the editor. The full API surface — including the 128-bit paths — is available on every target framework.
Licence
BSD 3-Clause, matching the other three ports.