Skip to content

Commit 4cad493

Browse files
committed
Update CHANGELOG for 0.0.104
1 parent 8332072 commit 4cad493

File tree

1 file changed

+77
-0
lines changed

1 file changed

+77
-0
lines changed

CHANGELOG.md

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,80 @@
1+
# 0.0.104 - XXX
2+
3+
## API Updates
4+
* A `PaymentFailed` event is now provided to indicate a payment has failed
5+
fully. This event is generated either after
6+
`ChannelManager::abandon_payment` is called for a given payment, or the
7+
payment times out, and there are no further pending HTLCs for the payment.
8+
This event should be used to detect payment failure instead of
9+
`PaymentPathFailed::all_paths_failed`, unless no payment retries occur via
10+
`ChannelManager::retry_payment` (#1202).
11+
* Payment secrets are now generated deterministically using material from
12+
the new `KeysInterface::get_inbound_payment_key_material` (#1177).
13+
* A `PaymentPathSuccessful` event has been added to ease passing success info
14+
to a scorer, along with a XXX method to accept such info (#XXX).
15+
* `Score::channel_penalty_msat` has additional arguments describing the
16+
channel's capacity and intended HTLC amounts (#XXX).
17+
* A new log level `Gossip` has been added, which is used for verbose
18+
information generated during network graph sync. Enabling the
19+
`max_level_trace` feature or ignoring `Gossip` log entries reduces log
20+
growth during initial start up from many GiB to several MiB (#XXX).
21+
* The `allow_wallclock_use` feature has been removed in favor of only using
22+
the `std` and `no-std` features (#1212).
23+
* `NetworkGraph` can now remove channels which we haven't heard updates for in
24+
two weeks with `NetworkGraph::remove_stale_channels{,with_time}`. The first
25+
is called automatically if a `NetGraphMsgHandler` is passed to
26+
`BackgroundProcessor::start` (#1212).
27+
* `InvoicePayer::pay_pubkey` was added to enable sending "keysend" payments to
28+
supported recipients, using the `InvoicePayer` to handle retires (#1160).
29+
* `user_payment_id` has been removed from `PaymentPurpose`, and
30+
`ChannelManager::create_inbound_payment{,_for_hash}` (#XXX).
31+
* Updated documentation for several `ChannelManager` functions to remove stale
32+
references to panics which no longer occur (#XXX).
33+
* The `Score` and `LockableScore` objects have moved into the
34+
`routing::scoring` module instead of being in the `routing` module (#XXX).
35+
* The `Time` parameter to `ScorerWithTime` is no longer longer exposed,
36+
instead being fixed based on the `std`/`no-std` feature (#XXX).
37+
* An explicit `UserConfig::accept_inbound_channels` flag is now provided,
38+
removing the need to set `min_funding_satoshis` to > 21 million BTC (#XXX).
39+
* Inbound Channels which fail to see the funding transaction confirm within
40+
2016 blocks are automatically force-closed with
41+
`ClosureReason::FundingTimedOut` (#XXX).
42+
* `NetAddress::OnionV2` parsing was removed as version 2 onion services are no
43+
longer supported in modern Tor (#XXX).
44+
45+
## Bug Fixes
46+
* Fixed a race condition in `InvoicePayer` where paths may be retried after
47+
the retry count has been exceeded. In this case the
48+
`Event::PaymentPathFailed::all_paths_failed` field is not a reliable payment
49+
failure indicator. There is no acceptable alternative indicator (#1201).
50+
* Reduced the number of blocks in the future we expect outgoing HTLCs to be
51+
before failing them without forwarding. This check was overly strict and
52+
resulted in refusing to forward some HTLCs to a next hop which had a lower
53+
security threshold than us (#XXX).
54+
* LDK no longer attempt to update the channel fee for outbound channels when
55+
we cannot afford the new fee. This could have caused force-closure by our
56+
channel counterparty (#XXX).
57+
* Fixed several bugs which may have prevented the reliable broadcast of our
58+
own channel announcements and updates (#XXX).
59+
* Fixed a rare bug which may have resulted in spurious route finding failures
60+
when using last-hop hints and MPP with large value payments (#1168).
61+
* `KeysManager::spend_spendable_outputs` will no longer add a change output
62+
which is below the dust threshold for change scripts which are non-standard
63+
(#XXX).
64+
65+
## Serialization Compatibility
66+
* All above new Events/fields are ignored by prior clients. All above new
67+
Events/fields are not present when reading objects serialized by prior
68+
versions of the library.
69+
* Payment secrets are now generated deterministically. This reduces the memory
70+
footprint for inbound payments, however, newly-generated inbound payments
71+
using `ChannelManager::create_inbound_payment{,_for_hash}` will not be
72+
receivable using versions prior to 0.0.104.
73+
`ChannelManager::create_inbound_payment{,_for_hash}_legacy` are provided for
74+
backwards compatibility (#1177).
75+
* `PaymentPurpose::InvoicePayment::user_payment_id` will be 0 when reading
76+
objects written with 0.0.104 when read by 0.0.103 and previous (#XXX).
77+
178
# 0.0.103 - 2021-11-02
279

380
## API Updates

0 commit comments

Comments
 (0)