Here are professional release notes for DDK v1.1.0:
DDK v1.1.0
This release introduces ZMQ-based block notifications for faster, push-driven chain monitoring, adds contract flag support for redirecting refunds to the accepter, and includes dependency updates and CI improvements.
⚠️ Breaking Changes
None. This is a backward-compatible minor release.
Note: The internal
wait()function inddknow accepts a ZMQ subscription parameter (refactor(ddk): pass zmq sub into wait function). This affects downstream code only if you call this function directly.
✨ New Features
- ZMQ block notifications (
feat(ddk)) — DDK can now receive blockhash notifications over ZMQ instead of relying solely on polling, enabling lower-latency chain updates. A newddk/src/chain/zmq.rsmodule powers this path. (#150) - ZMQ node configuration (
feat(ddk-node)) —ddk-nodeexposes configuration for the ZMQ blockhash notification endpoint, including a newZMQ_BLOCKHASH_ENDPOINTsetting (see.env.sample). - Resilient ZMQ client (
feat(ddk)) — the ZMQ client now logs and exits cleanly if its subscription fails, surfacing connection issues early instead of failing silently. - Refund-to-accepter contract flags (
feat) — addedcontract_flagssupport to redirect a contract's refund output to the accepter. (#157)
🐛 Bug Fixes
- ddk: pass the stop signal to the ZMQ client to ensure it shuts down correctly.
- ddk-node: ensure
zmq_blockhash_endpointhas a value before use, preventing misconfiguration errors. - ddk-node: pass the log argument to logger creation so logging is configured as expected.
🔧 Other Changes
- deps: updated workspace dependencies based on
cargo auditfindings to address advisories. (#156) - ci: faster builds via improved caching and a corrected workspace version read from
Cargo.toml. (#161, #162) - ci: cleaned up and updated the release script (
release.js). (#160) - refactor(ddk): DRY'd up the poll/notification code paths and passed the ZMQ subscriber into
wait()to avoid recreating subscribers on every loop iteration. - tests: added coverage for ZMQ blockhash message handling.
- docs: noted to copy
.env.examplebefore running dependencies; minor spelling fixes.
📦 Installation
Add DDK to your Cargo.toml:
[dependencies]
ddk = "1.1.0"All workspace crates are published at 1.1.0:
| Crate | Description |
|---|---|
ddk |
Main DLC DevKit library |
ddk-manager |
DLC management and coordination |
ddk-node |
DLC node implementation |
ddk-dlc |
Core DLC functionality |
ddk-messages |
DLC message protocol implementation |
ddk-trie |
Trie data structure for DLC |
ddk-payouts |
Payout calculation utilities |
kormir |
Oracle implementation |
Full Changelog: v1.0.11...v1.1.0