|  | 
|  | 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