diff --git a/build.zig.zon b/build.zig.zon index 1ec6d71..06b4846 100644 --- a/build.zig.zon +++ b/build.zig.zon @@ -1,6 +1,6 @@ .{ .name = .cbor, - .version = "1.1.0", + .version = "1.2.0", .fingerprint = 0x1feaffc7fc04c445, .minimum_zig_version = "0.16.0", diff --git a/release_notes.md b/release_notes.md index f991b08..72e701e 100644 --- a/release_notes.md +++ b/release_notes.md @@ -1,3 +1,37 @@ +# Release Notes — v1.2.0 +2026-04-15 + +## Breaking Changes + +- **Zig 0.16.0 required**: The minimum Zig version is now **0.16.0**. Zig + 0.15 is no longer supported. + +- **`extract(&obj)` removed for `json.ObjectMap`**: `std.json.ObjectMap` + became an unmanaged map in Zig 0.16 (allocator no longer stored internally), + so the non-allocating `extract(&obj)` overload cannot work. It has been + removed; attempting to use it now produces a compile error. Use + `extractAlloc(&obj, allocator)` instead: + + ```zig + // before + var obj = std.json.ObjectMap.init(allocator); + defer obj.deinit(); + _ = try cbor.match(buf, .{ cbor.extract(&obj) }); + + // after + var obj: std.json.ObjectMap = .empty; + defer obj.deinit(allocator); + _ = try cbor.match(buf, .{ cbor.extractAlloc(&obj, allocator) }); + ``` + +## Build + +- Minimum Zig version is now **0.16.0**. +- All internal APIs updated for Zig 0.16 compatibility (`std.Io`, unmanaged + `json.ObjectMap`, `std.Io.Writer`, etc.). + +--- + # Release Notes — v1.1.0 2026-03-12