|
| 1 | +# 0.0.111 - 2022-09-XXX - "Saturated with Messages" |
| 2 | + |
| 3 | +## API Updates |
| 4 | + * Support for relaying onion messages has been added via a new |
| 5 | + `OnionMessenger` struct when passed as the `OnionMessageHandler` to a |
| 6 | + `PeerManager`. Pre-encoded onion messages can also be sent and received |
| 7 | + (#1503, #1640, #1650, #1652, #1688). |
| 8 | + * Rate-limiting of outbound gossip syncs has been rewritten to utilize less |
| 9 | + buffering inside LDK. The new rate-limiting is also used for onion messages |
| 10 | + to avoid delaying other messages (#1604. #1660, #1683). |
| 11 | + * Rather than spawning a full OS thread, `lightning-background-processor` has |
| 12 | + a new `process_events_async` method which takes the place of a |
| 13 | + `BackgroundProcessor` for those using Rust async (#1657). |
| 14 | + * The `Filter::register_output` return value has been removed, as it was |
| 15 | + very difficult to correctly implemented (i.e. without blocking) (#1663). |
| 16 | + * `ChannelHandshakeConfig::their_channel_reserve_proportional_millionths` has |
| 17 | + been added to allow configuring counterparty reserve values (#1619). |
| 18 | + * The `rust-bitcoin` dependency has been updated 0.29 (#1658). |
| 19 | + * The `bitcoin_hashes` dependency has been updated 0.11 (#1677). |
| 20 | + * `ChannelManager::broadcast_node_announcement` has been moved to |
| 21 | + `PeerManager` (#1699). |
| 22 | + * `{Init,Node}Features` sent to peers/broadcasted are now fetched via the |
| 23 | + various `*MessageHandler` traits, rather than hard-coded (#1701, XXX OMs). |
| 24 | + * `Event::PaymentPathFailed::rejected_by_dest` has been renamed |
| 25 | + `payment_failed_permanently` (#1702). |
| 26 | + * `Invoice` now derives the std `Hash` trait (#1575). |
| 27 | + * `chain::AccessError` now derives the std `Debug` trait (#1709). |
| 28 | + * `ReadOnlyNetworkGraph::list_{channels,nodes}` have been added largely for |
| 29 | + users of downstream bindings (#1651). |
| 30 | + * `ChannelMonitor::get_counterparty_node_id` is now available (#1635). |
| 31 | + |
| 32 | +## Bug Fixes |
| 33 | + * The script compared with that returned from `chain::Access` was incorrect |
| 34 | + ~half of the time, causing spurious gossip rejection (#1666). |
| 35 | + * Pending in-flight HTLCs are now considered when calculating new routes, |
| 36 | + ensuring, e.g. MPP retries do not take known-saturated paths (#1643). |
| 37 | + * Counterparty-revoked outputs are now included in `get_claimable_balance` |
| 38 | + output via a new `Balance::CounterpartyRevokedOutputClaimable` (#1495). |
| 39 | + * Inbound HTLCs for which we do not (yet) have a preimage are now included in |
| 40 | + `get_claimable_balance` via a `Balance::MaybePreimageClaimableHTLC` (#1673). |
| 41 | + * Probes which fail prior to being sent over their first hop are correctly |
| 42 | + failed with a `Event::ProbeFailed` rather than a `PaymentPathFailed` (#1704). |
| 43 | + * Pending `Event::HTLCHandlingFailed`s are no longer lost on restart (#1700). |
| 44 | + * HTLCs which fail prior to being sent over their first hop are now marked as |
| 45 | + retryable via `!PaymentPathFailed::payment_failed_permanently` (#1702). |
| 46 | + * Dust HTLCs are now considered failed in the payment tracking logic after the |
| 47 | + commitment transaction confirms, allowing retry on restart (#1691). |
| 48 | + * On machines with buggy "monotonic" clocks, LDK will no longer panic if time |
| 49 | + goes backwards (#1692). |
| 50 | + |
| 51 | +## Backwards Compatibility |
| 52 | + * The new `current_time` argument to `PeerManager` constructors must be set to |
| 53 | + a UNIX timestamp for upgraded nodes. Only new nodes may use a counter (#1699) |
| 54 | + |
| 55 | +## Security |
| 56 | +0.0.111 fixes a denial-of-service vulnerability which is reachable from |
| 57 | +untrusted input in deployments accepting 0conf channels, or via a race-condition |
| 58 | +in deployments creating outbound 0conf channels. |
| 59 | + |
| 60 | + * LDK versions prior to 0.0.111 may spuriously panic when receiving a block if |
| 61 | + they are awaiting the construction of a funding transaction for a 0-conf |
| 62 | + channel (#1711). |
| 63 | + |
| 64 | + |
| 65 | + |
1 | 66 | # 0.0.110 - 2022-07-26 - "Routing, With a Vengeance"
|
2 | 67 |
|
3 | 68 | ## API Updates
|
|
0 commit comments