| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2023-10-24 | 4.6 kB | |
| v0.0.118 source code.tar.gz | 2023-10-24 | 1.4 MB | |
| v0.0.118 source code.zip | 2023-10-24 | 1.6 MB | |
| Totals: 3 Items | 3.0 MB | 0 | |
0.0.118 - Oct 23, 2023 - "Just the Twelve Sinks"
API Updates
- BOLT12 sending and receiving is now supported as an alpha feature. You may run into unexpected issues and will need to have a direct connection with the offer's blinded path introduction points as messages are not yet routed. We are seeking feedback from early testers (#2578, [#2039]).
ConfirmationTargethas been rewritten to provide information about the specific use LDK needs the feerate estimate for, rather than the generic low-, medium-, and high-priority estimates. This allows LDK users to more accurately target their feerate estimates (#2660). For those wishing to retain their existing behavior, see the table below for conversion.ChainHashis now used in place ofBlockHashwhere it represents the genesis block (#2662).lightning-invoicepayment utilities now take aDereftoAChannelManager(#2652).peel_onionis provided to statelessly decode anOnionMessage(#2599).ToSocketAddrs+Displayare now impl'd forSocketAddress(#2636, [#2670])Displayis now implemented forOutPoint(#2649).Features::from_be_bytesis now provided (#2640).
For those moving to the new ConfirmationTarget, the new variants in terms of
the old mempool/low/medium/high priorities are as follows:
* OnChainSweep = HighPriority
* MaxAllowedNonAnchorChannelRemoteFee = max(25 * 250, HighPriority * 10)
* MinAllowedAnchorChannelRemoteFee = MempoolMinimum
* MinAllowedNonAnchorChannelRemoteFee = Background - 250
* AnchorChannelFee = Background
* NonAnchorChannelFee = Normal
* ChannelCloseMinimum = Background
Bug Fixes
- Calling
ChannelManager::close_channel[_with_feerate_and_script]on a channel which did not exist would immediately hang holding several keyChannelManager-internal locks (#2657). - Channel information updates received from a failing HTLC are no longer
applied to our
NetworkGraph. This prevents a node which we attempted to route a payment through from being able to learn the sender of the payment. In some rare cases, this may result in marginally reduced payment success rates (#2666). - Anchor outputs are now properly considered when calculating the amount available to send in HTLCs. This can prevent force-closes in anchor channels when sending payments which overflow the available balance (#2674).
- A peer that sends an
update_fulfill_htlcmessage for a forwarded HTLC, then reconnects prior to sending acommitment_signed(thus retransmitting theirupdate_fulfill_htlc) may result in the channel stalling and being unable to make progress (#2661). - In exceedingly rare circumstances, messages intended to be sent to a peer prior to reconnection can be sent after reconnection. This could result in undefined channel state and force-closes (#2663).
Backwards Compatibility
- Creating a blinded path to receive a payment then downgrading to LDK prior to 0.0.117 may result in failure to receive the payment (#2413).
- Calling
ChannelManager::pay_for_offerorChannelManager::create_refund_buildermay prevent downgrading to LDK prior to 0.0.118 until the payment times out and has been removed (#2039).
Node Compatibility
- LDK now sends a bogus
channel_reestablishmessage to peers when they ask to resume an unknown channel. This should cause LND nodes to force-close and broadcast the latest channel state to the chain. In order to trigger this when we wish to force-close a channel, LDK now disconnects immediately after sending a channel-closingerrormessage. This should result in cooperative peers also working to confirm the latest commitment transaction when we wish to force-close (#2658).
Security
0.0.118 expands mitigations against transaction cycling attacks to non-anchor channels, though note that no mitigations which exist today are considered robust to prevent the class of attacks. * In order to mitigate against transaction cycling attacks, non-anchor HTLC transactions are now properly re-signed before broadcasting (#2667).
In total, this release features 61 files changed, 3470 insertions, 1503 deletions in 85 commits from 12 authors, in alphabetical order: * Antonio Yang * Elias Rohrer * Evan Feenstra * Fedeparma74 * Gursharan Singh * Jeffrey Czyz * Matt Corallo * Sergi Delgado Segura * Vladimir Fomene * Wilmer Paulino * benthecarman * slanesuke