Skip to content

Latest commit

 

History

History
46 lines (30 loc) · 1.9 KB

File metadata and controls

46 lines (30 loc) · 1.9 KB

Changelog

All notable changes to aimdb-data-contracts will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

Changed (breaking)

  • log_tap<T, R>(ctx, consumer, node_id) now takes Consumer<T> instead of Consumer<T, R>R is still on RuntimeContext<R> (Design 029, M14). User-visible signature shrink only; behaviour unchanged.

[0.1.1] - 2026-05-22

Changed

  • Dependency update: Upgraded rand from 0.8 to 0.10.1.

[0.1.0] - 2026-03-16

Added

  • Streamable trait — capability marker for types crossing serialization boundaries (WebSocket, WASM, wire)
  • Migratable trait with MigrationChain and MigrationStep for schema evolution
  • Explicit version pins for path dependencies (aimdb-core = "1.0.0", aimdb-executor = "0.1.0")

Changed

  • Breaking: Refocused as a pure trait-definition crate
    • Removed concrete contracts (Temperature, Humidity, GpsLocation) — moved to application-level crates (e.g., weather-mesh-common)
    • Removed closed StreamableVisitor dispatcher and for_each_streamable() — replaced by extensible registry pattern in connector/adapter crates
    • Removed ts feature and ts-rs dependency
    • Version reset from 1.0.0 to 0.1.0 to reflect the reduced, stabilizing scope

[0.5.0] - 2026-02-21

Added

  • Initial release with shared data contract types
  • SchemaType trait for compile-time type identity
  • Linkable trait for wire format support in connector transport
  • Simulatable trait with SimulationConfig and SimulationParams for test data generation
  • Observable module with log_tap function for runtime observability
  • Built-in contracts: Temperature, Humidity, GpsLocation
  • Feature flags: linkable, simulatable, migratable, observable, ts