Render one Object or paired Interface entity without path/context, lookups or wire-schema changes. Preserve declarations, summaries, optional/unit and empty distinctions; validate protocol semantics and bounded input before rendering. Add five spec/nested goldens and 13 external API tests plus a standalone doctest. Validation: cargo fmt --all -- --check; cargo check --workspace --all-targets; cargo test --workspace --all-targets; cargo test --workspace --doc; nix develop -c bash (cargo clippy --workspace --all-targets -- -D warnings, RUSTDOCFLAGS='-D warnings' cargo doc --workspace --no-deps, cargo run --package wip-public-api-example); git diff --check. All passed. Default shell lacks clippy; declared Nix dev shell supplied it.
2.3 KiB
Changelog
All notable changes to the published WIP Rust crates are documented here.
Unreleased
-
Adds
wip-text-view, an independent single-entity Object/Interface signature library with Protocol validation, typed errors, full ordered declarations, documentation summaries and safe Text View quoting/escapes. No path, lookup, cache, UI, network or Protocol wire-schema changes are required. -
Breaking Protocol/HTTP migration from opaque Interface reference strings to exact
(scope, name)records in Objects, fetches and calls, with optional opaquescope_refmetadata. Adds shape and placement-aware scope validation without changing routes, validators or the wire error-code set. -
Breaking Host registration migration to explicit Scope publication lifetimes and local names, with coherent provider-attested scope Object binding for fetch and dispatch. Supplied scope_ref is checked at membership precedence; scope deletion retires retained tokens, while ordinary Object state updates preserve lifetime.
-
Integrates scoped references across filesystem and public consumers and the TUI. External FS scopes bind to visible current connected lineage, not retained registry artifacts. TUI labels use absolute safely quoted
::/#notation; structured selection and Client scope invalidation prevent stale UI dispatch. The public example carries fetched scope refs and includes real HTTP lifetime, visibility and validator-precedence conformance tests with optional refs. See MIGRATION.md for API/wire examples and provider responsibilities.
0.1.0
Initial public release of:
wip-protocol: transport-independent WIP logical model and validation.wip-interface-macros: procedural-macro implementation for interface and DTO declarations.wip-interface: public Rust interface-authoring facade and typed value codecs.wip-host: request-scoped publication, precondition validation, and qualified operation dispatch.wip-http: framework-independent WIP over HTTP v1 routes, strict JSON codecs, and failure classification.wip-client: stateful Known Space, interest-driven acquisition, request ownership, and operation lifecycle.
The repository also contains non-published filesystem server, terminal client, and public-API conformance packages.