Repository navigation
Copper 1.2.1
Originally released on 2026-09-15.
This patch release republishes the Copper 1.2 workspace with internal dependencies constrained to ~1.2.1, keeping dependency resolution within the 1.2 release line and requiring the patched crate versions. Generated project manifests and tool-install recipes also use minor-line constraints.
Fixes
- CopperLists start with valid message storage. Pool and asynchronous allocations initialize messages in place before borrowing or dropping them. This fixes invalid memory access when clearing tuple/vector payloads and preserves payload reuse without constructing a whole CopperList on the stack. (#1396)
- The TUI handles graphs with more than 24 connection aliases. Alias assignment and connection rendering support larger graphs without overflowing the fixed alias alphabet. (#1393)
- Appending rejects recordings that were not cleanly closed. The unified logger validates the existing recording before accepting an append, protecting prior log data. (#1386)
Upgrading
Use cu29 = "~1.2.1" and the same requirement for other directly selected Copper crates. Update existing lockfiles with cargo update and confirm the resolved Copper crates remain on 1.2. A bare "1.2" requirement permits later 1.x releases; the tilde keeps the application on 1.2 patches.