v0.2.60
Release 0.2.60
🐛 Bug Fixes
- #4202: build: release 0.2.60
- #4201: fix(ring): close bidirectional-consistency race in remove_all_peer_interests
- #4200: fix(ring): hold own_addr mutex across set_external_address (#4172)
- #4199: fix(clippy): allow wildcard match arms in delegate test assertions
- #4198: fix(scripts): derive geiger status from exit code in per-member path
- #4195: refactor(secrets): zeroize plaintext + tighten file permissions
- #4194: downgrade same-version merge-rejected log + short-circuit WASM call (#4151)
- #4192: fix(fdev): remove no-op --release flag and unconditional bail (#4088)
- #4191: refactor: drop unused _gateways param from handle_orphaned_transactions
- #4189: refactor: avoid 200-cap allocation in GC delayed buffer
- #4188: build: add cargo-outdated and cargo-bloat JSON parsing to static-checks report
- #4187: make event loop notification channel capacity configurable (#4145)
- #4186: build: configure cargo-deny to allow multiple crate versions
- #4183: restore tracing::warn order relative to placeholder push
- #4182: add missing license fields to release-agent and topology-sim
- #4181: build: remove unused dependencies from workspace and test crates
- #4171: fix(ring): hold shard guard across index_contract_hash to prevent zombie entries
- #4170: build(deps-dev): bump webpack-dev-server from 4.10.0 to 5.2.4 in /tests/test-app-1
- #4169: docs(dashboard): add Freenet Mail to node home page links
- #4164: fix(networking): wake parked op drivers on peer disconnect
- #4162: fix(get): forward relay GET response before caching (#4155)
- #4161: build(deps): bump dashmap from 6.1.0 to 6.2.1
- #4160: build(deps): bump hmac from 0.12.1 to 0.13.0
- #4158: build(deps): bump tracing-opentelemetry from 0.32.1 to 0.33.0
- #4157: build(deps): bump tar from 0.4.45 to 0.4.46
- #4156: build(deps): bump freenet/freenet-git/.github/workflows/mirror-repo.yml from 0.1.20 to 0.1.23
- #4143: fix(secrets): per-write random nonce for delegate secrets-at-rest
- #4090: revert: manifest-driven webapp permissions (#4086)
- #4083: fix(transport): sweep idle PeerConnection.streaming_handles entries
- #4049: fix(runtime): persist delegate ctx.write across process() calls
✨ Features
- #4193: feat(observability): add INFO log for DelegateRequest dispatch (#4152)
- #4146: feat(secrets)!: os keyring KEK + HKDF per-delegate DEK; closes #4138 + #4140
- #4144: feat(secrets)!: auto-gen per-node delegate cipher; bump stdlib 0.8.0
- #4129: static-analysis aggregator + perf cleanups it surfaced
🧹 Maintenance
- #4184: docs: document DashMap serialization assumption in server.rs
Full Changelog: v0.2.59...v0.2.60
[AI-assisted debugging and comment]