@@ -6,6 +6,88 @@ the project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html
66
77## [ Unreleased]
88
9+ ## [ 1.0.0] - 2026-05-19
10+
11+ ** Stable API.** The public surface is frozen. Backwards-
12+ incompatible changes after ` 1.0.0 ` require a major version bump
13+ per Semantic Versioning. See [ ` REPS.md ` ] ( REPS.md ) section 8 for
14+ the binding policy and [ ` docs/API.md ` ] ( docs/API.md ) for the
15+ complete public-symbol reference.
16+
17+ No source-level changes from ` v0.9.0 ` . ` 1.0.0 ` is a freeze, a
18+ documentation polish, and the CI gate that protects the
19+ guarantee going forward.
20+
21+ Behind the line: the journey from ` v0.1.0 ` (scaffold) to ` v1.0.0 `
22+ landed the full ` REPS.md ` section 4 surface - ` Source ` , ` Stage ` ,
23+ ` Sink ` , ` Emit ` , the typed builder with closure adapters, count /
24+ byte / age batching, tumbling / sliding / session windowing
25+ behind a pluggable ` Clock ` , the ` FailFast ` / ` Continue ` /
26+ ` DeadLetter ` error policies with shared-handle dead-letter
27+ routing, both ` SyncDriver ` and ` ThreadedDriver ` , the open
28+ ` Driver ` trait for custom executors, an 84-test suite covering
29+ unit, integration, property, and doctest paths, and four
30+ ` cargo-fuzz ` harnesses.
31+
32+ ### Changed - ` cargo-semver-checks ` CI is now a hard gate
33+
34+ The CI ` semver-checks ` job no longer runs with ` || true ` .
35+ Backwards-incompatible additions to the public surface fail CI
36+ before they can ship.
37+
38+ ### Changed - ` REPS.md ` section 8 declares stability
39+
40+ The section was previously "Stability begins at ` 1.0.0 ` ,
41+ governed by [ ...] ". It now declares the public API frozen and
42+ enumerates the patch / minor / major rules in full, plus the
43+ ` #[non_exhaustive] ` reminder for ` Error ` and ` StageFailure ` .
44+
45+ ### Changed - ` REPS.md ` section 7 records the measured perf contract
46+
47+ The 7 placeholder ("To be specified at ` 0.4.0 ` ") is replaced
48+ with the headline numbers from ` docs/BENCH.md ` plus a note that
49+ they are indicative, not contractual.
50+
51+ ### Changed - ` REPS.md ` section 4.9 drops the unimplemented ` .buffer(...) `
52+
53+ The ` .buffer(capacity) ` builder method was listed in the locked
54+ surface but never implemented. Section 4.9 records it as
55+ post-1.0 minor-release roadmap material; section 4.10 keeps the
56+ feature-flag table accurate.
57+
58+ ### Changed - ` ROADMAP.md ` re-anchored
59+
60+ All ` 0.x ` releases listed as shipped. Forward-looking work
61+ (` .buffer ` , per-stage threading, ` pipe-io-tokio ` ,
62+ ` StageFailure::input ` ) explicitly marked as post-1.0 minor
63+ releases.
64+
65+ ### Changed - ` README.md ` rewritten for production
66+
67+ Hero block, feature highlights grouped by concern (pipeline
68+ composition / backpressure-batching-windowing / error
69+ isolation / runtime / reliability), installation block with
70+ feature-flag table, quick-start snippets per surface
71+ (basic / batching / windowing / dead-letter / threaded /
72+ custom driver), examples table, status section declaring
73+ 1.0.0 stable, documentation links, version compatibility,
74+ contributing notes, license.
75+
76+ ### Changed - ` docs/API.md ` declared frozen
77+
78+ The intro now points at the ` 1.0.0 ` freeze and the
79+ [ Stability] ( docs/API.md#stability ) section spells out the SemVer
80+ rules and the ` #[non_exhaustive] ` reminder. The duplicated
81+ feature-flag tables are harmonized.
82+
83+ ### Changed - ` docs/MIGRATION.md ` records the ` v0.9.0 -> v1.0.0 ` upgrade
84+
85+ Pure version marker; no source changes required.
86+
87+ There are no source-level changes to the crate code between
88+ ` v0.9.0 ` and ` v1.0.0 ` . The package contents on crates.io are
89+ functionally identical; the version bump signals API stability.
90+
991## [ 0.9.0] - 2026-05-19
1092
1193Pre-1.0 stabilization release. No public API changes. Adds the
@@ -352,7 +434,8 @@ public surface.
352434 ` .dev/ ` planning structure (DIRECTIVES, ROADMAP, PROMPTS).
353435- Crate name reserved on crates.io.
354436
355- [ Unreleased ] : https://github.com/jamesgober/pipe-io/compare/v0.9.0...HEAD
437+ [ Unreleased ] : https://github.com/jamesgober/pipe-io/compare/v1.0.0...HEAD
438+ [ 1.0.0 ] : https://github.com/jamesgober/pipe-io/compare/v0.9.0...v1.0.0
356439[ 0.9.0 ] : https://github.com/jamesgober/pipe-io/compare/v0.8.0...v0.9.0
357440[ 0.8.0 ] : https://github.com/jamesgober/pipe-io/compare/v0.7.0...v0.8.0
358441[ 0.7.0 ] : https://github.com/jamesgober/pipe-io/compare/v0.6.0...v0.7.0
0 commit comments