|
| 1 | +# 0.0.113 - Dec 15, 2022 - "Big Movement Intercepted" |
| 2 | + |
| 3 | +## API Updates |
| 4 | + * `ChannelManager::send_payment` now takes an explicit `PaymentId` which is a |
| 5 | + loose idempotency token. See `send_payment` docs for more (#1761, #1826). |
| 6 | + * HTLCs bound for SCIDs from `ChannelManager::get_intercept_scid` are now |
| 7 | + intercepted and can be forwarded manually over any channel (#1835, #1893). |
| 8 | + * `Confirm::get_relevant_txids` now returns a `BlockHash`, expanding the set |
| 9 | + of cases where `transaction_unconfirmed` must be called, see docs (#1796). |
| 10 | + * Pending outbound payments are no longer automatically timed-out a few blocks |
| 11 | + after failure. Thus, in order to avoid leaking memory, you MUST call |
| 12 | + `ChannelManager::abandon_payment` when you no longer wish to retry (#1761). |
| 13 | + * `ChannelManager::abandon_payment` docs were updated to note that the payment |
| 14 | + may return to pending after a restart if no persistence occurs (#1907). |
| 15 | + * `Event::PaymentReceived` has been renamed `Event::PaymentClaimable` (#1891). |
| 16 | + * `Event` handling is now optionally async for Rust users (#1787). |
| 17 | + * `user_channel_id` is now a `u128` and random for inbound channels (#1790). |
| 18 | + * A new `ChannelReady` event is generated whenever a channel becomes ready to |
| 19 | + be used, i.e., after both sides sent the `channel_ready` message (#1743). |
| 20 | + * `NetworkGraph` now prunes channels where either node is offline for 2 weeks |
| 21 | + and refuses to accept re-announcements of pruned channels (#1735). |
| 22 | + * Onion messages are now read in `CustomOnionMessageHandler` rather than via |
| 23 | + `MaybeReadableArgs` (#1809). |
| 24 | + * Added a new util to generate an invoice with a custom hash (#1894) - |
| 25 | +`create_invoice_from_channelmanager_and_duration_since_epoch_with_payment_hash` |
| 26 | + * `Sign`ers are now by default re-derived using `KeysInterface`'s new |
| 27 | + `derive_channel_signer` rather than `read_chan_signer` (#1867). |
| 28 | + * `Confirm::transactions_confirmed` is now idempotent (#1861). |
| 29 | + * `ChannelManager::compute_inflight_htlcs` has been added to fetch in-flight |
| 30 | + HTLCs for scoring. Note that `InvoicePayer` does this for you (#1830). |
| 31 | + * Added `PaymentClaimable::via_channel_id` (#1856). |
| 32 | + * Added the `node_id` (phantom or regular) to payment events (#1766). |
| 33 | + * Added the funding transaction `confirmations` to `ChannelDetails` (#1856). |
| 34 | + * `BlindedRoute` has been renamed `BlindedPath` (#1918). |
| 35 | + * Support for the BOLT 4 "legacy" onion format has been removed, in line with |
| 36 | + its removal in the spec and vanishingly rare use (#1413). |
| 37 | + * `ChainMonitor::list_pending_monitor_updates` was added (#1834). |
| 38 | + * Signing for non-zero-fee anchor commitments is supported again (#1828). |
| 39 | + * Several helpers for transaction matching and generation are now pub (#1839). |
| 40 | + |
| 41 | +## Bug Fixes |
| 42 | + * Fixed a rare race where a crash may result in a pending HTLC not being |
| 43 | + failed backwards, leading to a force-closure by our counterparty (#1857). |
| 44 | + * Avoid incorrectly assigning a lower-bound on channel liquidity when routing |
| 45 | + fails due to a closed channel earlier in the path (#1817). |
| 46 | + * If a counterparty increases the channel fee, but not enough per our own fee |
| 47 | + estimator, we no longer force-close the channel (#1852). |
| 48 | + * Several bugs in the `lightning-background-processor` `future` feature were |
| 49 | + fixed, including requirements doc corrections (#1843, #1845, #1851). |
| 50 | + * Some failure messages sent back when failing an HTLC were corrected (#1895). |
| 51 | + * `rapid-gossip-sync` no longer errors if an update is applied duplicatively |
| 52 | + or in rare cases when the graph is updated from payment failures (#1833). |
| 53 | + * Sending onion messages to a blinded path in which we're the introduction |
| 54 | + node no longer fails (#1791). |
| 55 | + |
| 56 | +## Backwards Compatibility |
| 57 | + * No `ChannelReady` events will be generated for previously existing channels, |
| 58 | + including those which become ready after upgrading to 0.0.113 (#1743). |
| 59 | + * Once `UserConfig::accept_intercept_htlcs` is set, downgrades to LDK versions |
| 60 | + prior to 0.0.113 are not supported (#1835). |
| 61 | + * Existing payments may see a `PaymentClaimable::user_channel_id` of 0 (#1856) |
| 62 | + * When downgrading to a version of LDK prior to 0.0.113 when there are |
| 63 | + resolved payments waiting for a small timeout, the payments may not be |
| 64 | + removed, preventing payments with the same `PaymentId` (#1761). |
| 65 | + |
| 66 | +In total, this release features 76 files changed, 11639 insertions, 6067 |
| 67 | +deletions in 210 commits from 18 authors, in alphabetical order: |
| 68 | + * Antoine Riard |
| 69 | + * Arik Sosman |
| 70 | + * Devrandom |
| 71 | + * Duncan Dean |
| 72 | + * Elias Rohrer |
| 73 | + * Gleb Naumenko |
| 74 | + * Jeffrey Czyz |
| 75 | + * John Cantrell |
| 76 | + * Matt Corallo |
| 77 | + * Tee8z |
| 78 | + * Tobin C. Harding |
| 79 | + * Tristan F |
| 80 | + * Valentine Wallace |
| 81 | + * Viktor Tigerström |
| 82 | + * Wilmer Paulino |
| 83 | + * benthecarman |
| 84 | + * jurvis |
| 85 | + * ssbright |
| 86 | + |
| 87 | + |
1 | 88 | # 0.0.112 - Oct 25, 2022 - "History Matters"
|
2 | 89 |
|
3 | 90 | ## API Updates
|
|
0 commit comments