dream-netChangelog
Changelog
Every release of dream-net, newest first. A release marked unreleased is declared in mod.toml and published when its tag is pushed.
Releases
2 declared
-
1.1.0 stable
A peer is announced before its first event, captures without payloads keep their lengths, and the codec’s decode errors are standard Rust errors.
Added
wire::DecodeErrorandwire::Malformedimplementstd::error::Error, andDecodeErrorimplementsDisplay, like the crate’s other errors: a malformed packet prints its reason, which is also itssource(), and a mismatch prints the foreign hello.
Fixed
ServerandClientqueuedConnectedafter the events of the packet that completed the handshake, so a host could poll a peer’sMessagebefore itsConnected.Connectednow comes first.CaptureWriterwithout payloads wrote each event’s length from its payload, so a capture read back and written again recorded every event as zero bytes. It now writes the record’slen.
dream-net 1.1.0Verify · sha256 2df0cb5ee602…4ba4d51d
- File
- dream-net-1.1.0.crate
- Size
- 102580 bytes
- SHA-256
- 2df0cb5ee602184918adad25df359efd364166568947e03e73c747144ba4d51d
The same digest as the crates.io index's checksum, which Cargo checks on every download.
-
1.0.0 stable
First release: secure UDP between authenticated peers, reliable-ordered and unreliable event channels, and a schema handshake, over the Más Bandwidth netcode, reliable and serialize crates.
Added
- A frozen
Schemaof channels and events: event ids from sorted names, never registration order, and a 128-bit fingerprint (truncated SHA-256) peers compare before any event is accepted. - Reliable-ordered channels, delivered exactly once in send order and resent until acknowledged, and unreliable-unordered channels with a choice of overflow policy.
- Many events aggregated into each packet, and events larger than a datagram fragmented by reliable.
ServerandClientover netcode: connect tokens, encryption, generation-checkedPeerIdhandles, and polled lifecycle events, including schema and protocol mismatches reported with both fingerprints on both ends.- Bounded memory on every queue: pending, parked and pooled bytes, with at most
max_pending_bytes + 2 * max_parked_bytesheld per connection on receive. - Protocol captures at the host boundary, in a versioned binary format that carries the schema’s names.
Connectionindependent of sockets, and a deterministic link simulator for tests and benchmarks.- Wire format 2, pinned by golden bytes; warm send and receive paths that allocate nothing; fuzz harnesses, a soak test and Criterion benchmarks.
dream-net 1.0.0Verify · sha256 fe667f5bd125…5fd03c87
- File
- dream-net-1.0.0.crate
- Size
- 100369 bytes
- SHA-256
- fe667f5bd1256bcebe4fef2143ad2a09e84ed73301405437856ea17e5fd03c87
The same digest as the crates.io index's checksum, which Cargo checks on every download.
- A frozen