Skip to content

Renderd v0.7.0-host

Pre-release
Pre-release

Choose a tag to compare

@Ad1th Ad1th released this 05 Aug 19:45
· 255 commits to main since this release

Milestone 3 in progress: Core Data Structures & Utilities
(renderd-frame, renderd-clock, renderd-abr).

  • Added 16-byte fixed binary fragment header codec (FragmentHeader) in renderd-frame
    crate per RFC-0002 §12.1. (#23)
  • Added type-safe fragment header bitfield flags (FragmentFlags) in renderd-frame
    crate. (#24)
  • Added fragment header validation logic (ValidateHeader trait) in renderd-frame
    crate. (#25)
  • Added sliding-window fragment reassembly buffer state machine (ReassemblyBuffer) in
    renderd-frame crate per RFC-0002 §12.2. (#26)
  • Added property-based tests for fragment header codec and reassembly buffer in
    renderd-frame crate. (#27)
  • Added high-resolution monotonic clock instant wrapper (MonoInstant) in
    renderd-clock crate per RFC-0002 §13.1. (#28)
  • Added 4-timestamp NTP/PTP monotonic clock epoch estimator (ClockEpochEstimator) in
    renderd-clock crate per RFC-0002 §13.2. (#29)
  • Added stack-allocated rolling statistics ring buffer (RollingStats) in renderd-clock
    crate per RFC-0002 §13.3. (#30)
  • Added integration test suite for clock offset estimation and rolling statistics in
    renderd-clock crate. (#31)
  • Added ABR state machine enum (AbrState) in renderd-abr crate per RFC-0002 §14.1.
    (#32)
  • Added ABR decision engine (AbrEngine) calculating target bitrates per RFC-0002 §14.2.
    (#33)
  • Added ABR telemetry report converter (TelemetryReport) processing PeriodicStats and
    ReactiveStats in renderd-abr crate per RFC-0002 §14.3. (#34)
  • Added ABR unit and property-based test suite in renderd-abr crate. (#35)

Milestone 2 complete: Foundation Layer.

  • Added Protobuf protocol schema definition in proto/renderd.proto per RFC-0002 §11.
    (#13)
  • Added tools/proto-gen code generator and generated prost Rust types in
    renderd-proto crate. (#14)
  • Added protocol domain newtypes (FrameId, FragmentId, BitrateKbps,
    VsyncPeriodNs, ViewerId, HostId) in renderd-proto crate. (#15)
  • Added envelope dispatch helpers (MessageKind) and message validation logic for
    SessionHello and SessionConfig in renderd-proto crate. (#16)
  • Enabled proto freshness CI check step in .github/workflows/ci.yml. (#17)
  • Added configuration schema structs (RenderdConfig, HostConfig, ViewerConfig,
    NetworkConfig, CryptoConfig, AbrConfig) in renderd-config crate. (#18)
  • Added Figment-based layered config loader (ConfigBuilder) supporting defaults, TOML
    files, environment variables, and CLI overrides in renderd-config crate. (#19)
  • Added configuration validation rules (ValidateConfig trait) for RenderdConfig in
    renderd-config crate. (#20)
  • Added ConfigError enum hierarchy (FileNotFound, ParseError, ValidationError)
    and Display implementations in renderd-config crate. (#21)
  • Added canonical host and viewer default configuration templates
    (renderd-host.default.toml, renderd-viewer.default.toml) and template validation
    integration tests. (#22)

Milestone 1 complete: Repository Bootstrap & Infrastructure.

  • Initialized Cargo workspace root with resolver v2 and declared all 15 member crates
    across 5 DAG layers (crates/renderd-*, tools/latency-bench, tools/proto-gen)
    per REPO-0001. (#1)
  • Added rust-toolchain.toml pinning Rust stable channel (MSRV 1.80) with
    aarch64-apple-darwin, x86_64-pc-windows-msvc, and aarch64-pc-windows-msvc
    target support. (#1)
  • Configured workspace-level dependency versions, lint policies, and build profiles
    (dev, release, bench). (#1)
  • Configured workspace-level clippy.toml setting msrv = "1.80", disallowing
    std::process::exit and std::env::var, and restricting raw array pair-tokens.
    (#2)
  • Added per-crate lint overrides: unsafe_code = "deny" for non-FFI crates;
    unsafe_code = "warn" for FFI crates (renderd-vt-sys, renderd-sc-sys) per
    REPO-0001 §9. (#2)
  • Added root .rustfmt.toml workspace formatting configuration per REPO-0001 §10.
    (#3)
  • Configured cargo-deny policy in deny.toml for license checking, dependency bans,
    and security advisory checking per REPO-0001 §9. (#4)
  • Added test runner configuration in nextest.toml per REPO-0001 §14.7. (#5)
  • Added primary CI workflow in .github/workflows/ci.yml per REPO-0001 §18.1. (#6)
  • Added security audit workflow in .github/workflows/security.yml per
    REPO-0001 §18.2. (#7)
  • Added nightly benchmark workflow in .github/workflows/bench.yml per
    REPO-0001 §18.3. (#8)
  • Added code ownership rules in .github/CODEOWNERS per REPO-0001 §7.1. (#9)
  • Added PR template and GitHub Issue forms for bug reports, latency regressions, and
    feature requests. (#10)
  • Added spell-checking configuration in _typos.toml and
    .github/workflows/typos.yml. (#11)
  • Added documentation deployment workflow in .github/workflows/docs.yml per
    REPO-0001 §18.5. (#12)