Skip to content

Commit d7b64fe

Browse files
committed
Add v2.0.0 and v1.0.1 to CHANGELOG
1 parent 73e5747 commit d7b64fe

1 file changed

Lines changed: 30 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,36 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [2.0.0] - 2026-03-17
9+
10+
### Breaking Changes
11+
- **`T: Copy` replaced with `unsafe trait Pod`** across the entire public API.
12+
`Pod` requires every bit pattern to be valid, excluding `bool`, `char`,
13+
`NonZero*`, and references. Pre-implemented for all numeric primitives,
14+
arrays of `Pod`, and tuples up to 12 elements. User structs require
15+
`unsafe impl photon_ring::Pod for MyStruct {}`.
16+
17+
### Added
18+
- **`Pod` marker trait** (`src/pod.rs`): enforces seqlock-safe payloads at the
19+
type level, not just in documentation.
20+
- **`photon-ring-derive` crate** (optional `derive` feature):
21+
`#[derive(photon_ring::DerivePod)]` generates `unsafe impl Pod` with
22+
compile-time field verification.
23+
- **`try_publisher()`** on `Photon<T>` and `TypedBus`: returns `Option`
24+
instead of panicking when the publisher was already taken.
25+
- **`docs/benchmark-methodology.md`**: full benchmark reproducibility
26+
documentation (hardware, OS, toolchain, Criterion config, caveats).
27+
- **Verification README strengthened**: explicit SPMC-only, SC-only, no-MPMC
28+
limitations documented.
29+
- Tuple `Pod` impls extended to arity 12 (matching `std`).
30+
31+
## [1.0.1] - 2026-03-17
32+
33+
### Changed
34+
- Updated benchmark numbers for both machines (Intel + M1 Pro).
35+
- Added project banner.
36+
- Throughput reported with variance ranges.
37+
838
## [1.0.0] - 2026-03-16
939

1040
### Added

0 commit comments

Comments
 (0)