Repository navigation
Copper 1.2.5
v1.2.5 - 2026-10-20
This patch backports fixes to Copper 1.2 while preserving its public APIs, configuration, and v1 log encapsulation.
Fixes
- The flight controller simulator keeps
cu-zedandcu-vitflyon their compatible 1.1 release line, preventing their registry dependencies from selecting Copper 1.3 alongside the local 1.2 runtime. - Failed or panicking iterations release their unfinished CopperList before shutdown. Completed output still drains, partial output stays unpublished, and the application can restart. (#1531, #1533)
- Shared-memory images implement
CloneandDefaultwithout requiring the underlying storage to implement those traits; cloning retains the buffer handle. (#1525) - Bevy's demo keeps the runtime on the main thread, including when asynchronous CopperList I/O is enabled. Bevy's derive dependency and Kornia's 0.1 image/tensor dependencies are pinned to compatible releases. (#1528, #1411, #1427)
- ROS 2 publishers advertise their actual best-effort sensor-data QoS. Reliable subscribers can now detect incompatible publishers during discovery. (#1399)
fsckcomputes recording timing from all message slots and reports unavailable rates when no positive duration was recorded. (#1467)- Live diagnostics stay in the monitor's LOG pane; formatting
CuErroravoids an intermediate allocation; live twin archives accept explicit archive and receiver sizing. These previously merged backports now receive published patch versions. (#1494, #1480, #1479) - Transform, monitor, and RRT* loops satisfy newer Clippy checks. (#1499, #1506)
Packages
The following packages advance to 1.2.5: cu29, cu29-runtime, cu29-derive, cu29-traits, cu29-log-runtime, cu29-logstream, cu29-export, cu-tuimon, cu-transform, cu-sensor-payloads, cu-bevymon, cu-ros2-bridge, and cu-rrt-star. Other package versions remain unchanged, including cargo-cunew 1.2.4. cu29 signals this maintenance release without republishing every crate.
Upgrading
Use cu29 = "~1.2.5", then run cargo update. Update directly selected affected components to ~1.2.5 as needed. The generated runtime requires cu29-runtime and cu29-derive 1.2.5 or newer within the 1.2 line. Existing log encodings and the Kornia 0.1 conversion API are preserved; use the producing application's matching decoder for replay.