Skip to content

Releases: Abso1ut3Zer0/nexus

nexus-stats v6.0.1

05 Jun 02:29

Choose a tag to compare

[6.0.1] — 2026-06-05

Changed

  • nexus-stats-core — Replaced EventRateF64 with EventRateU64 / EventRateI64 using integer timestamps and bit-shift EMA. See core CHANGELOG for details.

nexus-stats-core v3.0.1

05 Jun 02:28

Choose a tag to compare

[3.0.1] — 2026-06-05

Changed

  • Breaking: Replaced EventRateF64 / EventRateI64 with EventRateU64 / EventRateI64 using integer timestamps and bit-shift EMA (same pattern as LivenessI64). The old EventRateF64 incorrectly used f64 timestamps; the new types use u64 / i64 timestamps with fixed-point i128 accumulator and span() builder instead of alpha().

nexus-web v0.8.0

02 Jun 03:31

Choose a tag to compare

[0.8.0] — 2026-06-02

Initial release. WebSocket, HTTP/1.1, and REST protocol implementations
extracted from nexus-net 0.7.x
(#413).

Added

  • ws — WebSocket RFC 6455: FrameReader, FrameWriter, Client,
    Message, SIMD XOR masking, UTF-8 validation. 517/517 Autobahn
    conformance.
  • http — HTTP/1.1: ResponseReader, RequestReader,
    ChunkedDecoder, write_request/write_response. httparse-backed,
    SIMD-accelerated header parsing.
  • rest — REST client: RequestWriter (typestate builder),
    Client (transport), RestResponse. Zero per-request allocation.
  • Re-exports nexus-net primitives (buf, tls, wire, MaybeTls,
    ParserSink, WireStream) so downstream crates don't need to
    depend on nexus-net directly.

Migration from nexus-net

Replace nexus_net::ws, nexus_net::http, nexus_net::rest paths
with nexus_web::ws, nexus_web::http, nexus_web::rest. All
primitives (buf, tls, wire) remain in nexus-net but are also
re-exported from nexus-web.

nexus-rt v2.4.1

02 Jun 02:00

Choose a tag to compare

[2.4.1] — 2026-06-02

Added

  • SeqMut::reset() — reset the sequence counter to 0 and return Sequence::ZERO.
  • World::reset_sequence() — reset the world's current sequence to 0.

nexus-net v1.0.0

02 Jun 03:30

Choose a tag to compare

[1.0.0] — 2026-06-02

Breaking

  • ws, http, rest modules extracted to nexus-web 0.8.0.
    nexus-net is now a primitives-only crate: buf, tls, wire,
    maybe_tls. Protocol implementations (WebSocket RFC 6455, HTTP/1.1
    parsing, REST client) live in
    nexus-web, which depends on
    nexus-net for buffer, TLS, and wire abstractions.
    (#413)

Migration

0.7.x 1.0.0
nexus_net::ws::* nexus_web::ws::*
nexus_net::http::* nexus_web::http::*
nexus_net::rest::* nexus_web::rest::*
nexus_net::buf::* unchanged
nexus_net::tls::* unchanged
nexus_net::wire::* unchanged
nexus_net::MaybeTls unchanged
nexus_net::WireStream unchanged
nexus_net::ParserSink unchanged

Add nexus-web = "1.0" to your Cargo.toml and update use paths
for ws/http/rest types. All primitives (buf, tls, wire,
MaybeTls, WireStream, ParserSink) remain in nexus-net.

nexus-async-web v0.10.0

02 Jun 03:31

Choose a tag to compare

[0.10.0] — 2026-06-02

Renamed from nexus-async-net to nexus-async-web. Protocol types
now imported from nexus-web (extracted from nexus-net in the same
restructure). Primitives (buf, tls, wire) remain in nexus-net.
(#413)

Breaking

  • Crate renamed from nexus-async-net to nexus-async-web.
    Update Cargo.toml dependency name and all use nexus_async_net
    paths to use nexus_async_web.
  • Protocol re-exports now source from nexus-web instead of
    nexus-net. No path change for users importing from
    nexus_async_web — the re-exports are the same types.

Migration

0.9.x (nexus-async-net) 0.10.0 (nexus-async-web)
nexus-async-net = "0.9" nexus-async-web = "0.10"
use nexus_async_net::* use nexus_async_web::*

nexus-async-net v0.9.1

02 Jun 01:39
d532066

Choose a tag to compare

Deprecated

  • This crate is deprecated. Renamed to nexus-async-web (0.10.0). See #413.

nexus-async-net v0.9.0

30 May 23:22

Choose a tag to compare

[0.9.0] — 2026-05-30

[0.9.0] — 2026-05-30

Changed

  • Breaking: WsStreamBuilder::connect(), connect_with(), and
    accept() now return (WsReader, WsWriter, S) tuples instead of
    WsStream. The decomposed sans-IO API is the primary interface —
    reader and writer are independent borrows, enabling zero-copy recv
    while sending concurrently.
  • Breaking: Removed blanket pub use nexus_net re-export. Downstream
    code that used nexus_async_net::nexus_net::… paths must import from
    nexus_net directly or use the new targeted re-exports
    (CloseCode, FrameReader, FrameWriter, Message, Role,
    WireStream, WriteBuf, etc.).
  • WsStream (tokio only) demoted to Stream/Sink ecosystem adapter.
    Construct via WsStream::from_parts(reader, writer, conn). Uses
    OwnedMessage (allocating) — prefer WsReader/WsWriter for
    performance-sensitive paths.

Added

  • WsReader / WsWriter as the primary decomposed WebSocket API,
    shared across tokio and nexus backends.
  • WsReader::from_raw_parts() and WsWriter::from_raw_parts() for
    custom handshakes, testing, and benchmarks.

nexus-stats v6.0.0

28 May 15:27
533d077

Choose a tag to compare

[6.0.0] — 2026-05-28

Type-variant audit: removed F32, I32, and I128 type variants across all
sub-crates. Use the F64/I64 equivalents. See each sub-crate's CHANGELOG
for the full removal list.

Removed

  • nexus-stats-core 3.0.0 — 46 removed types (smoothing, control,
    monitoring, statistics modules). See core CHANGELOG.
  • nexus-stats-smoothing 2.0.0HoltF32, SpringF32, Kalman1dF32,
    KamaF32, WindowedMedianF32, WindowedMedianI32 and their builders.
  • nexus-stats-detection 2.0.0TrendAlertF32, MosumF32/I32/I128,
    MultiGateF32, PageHinkleyF32, AdwinF32, DistDriftF32,
    AutocorrelationF32/I32, CrossCorrelationF32, EntropyF32,
    PredictiveInfoBoundF32 and their builders.
  • nexus-stats-regression 2.0.0 — 20 removed types across regression,
    estimation, and learning modules. See regression CHANGELOG.
  • nexus-stats-control 2.0.0PeakDetectorF32, PeakDetectorI32,
    PeakDetectorI128.

nexus-stats-smoothing v2.0.0

28 May 15:26
533d077

Choose a tag to compare

[2.0.0] — 2026-05-28

Removed

  • HoltF32, HoltF32Builder — use HoltF64 (f32 is a precision footgun for accumulating smoothers)
  • SpringF32 — use SpringF64
  • Kalman1dF32, Kalman1dF32Builder — use Kalman1dF64
  • KamaF32, KamaF32Builder — use KamaF64
  • WindowedMedianF32 — use WindowedMedianF64
  • WindowedMedianI32 — use WindowedMedianI64

Changed

  • WindowedMedianI64::modified_z_score now returns Option<f64> (was Option<i64>) to include the 0.6745 scale factor
  • Kalman1dF64Builder::build now rejects NaN/infinite process and measurement noise