Add 0.0.115 CHANGELOG entries 2023-04-0.0.115-cut
authorMatt Corallo <git@bluematt.me>
Fri, 21 Apr 2023 23:28:25 +0000 (23:28 +0000)
committerMatt Corallo <git@bluematt.me>
Mon, 24 Apr 2023 22:40:40 +0000 (22:40 +0000)
CHANGELOG.md
pending_changelog/2059.txt [deleted file]
pending_changelog/2063.txt [deleted file]
pending_changelog/2146.txt [deleted file]
pending_changelog/matt-rm-retryable-secret.txt [deleted file]

index d8475c003e0b2677f756fa117adf51ab9cc28f85..2874f33db0cae3c5ada1da06cfeee31de93d9892 100644 (file)
@@ -1,3 +1,100 @@
+# 0.0.115 - Apr 24, 2023 - "Rebroadcast the Bugfixes"
+
+## API Updates
+ * The MSRV of the main LDK crates has been increased to 1.48 (#2107).
+ * Attempting to claim an un-expired payment on a channel which has closed no
+   longer fails. The expiry time of payments is exposed via
+   `PaymentClaimable::claim_deadline` (#2148).
+ * `payment_metadata` is now supported in `Invoice` deserialization, sending,
+   and receiving (via a new `RecipientOnionFields` struct) (#2139, #2127).
+ * `Event::PaymentFailed` now exposes a failure reason (#2142).
+ * BOLT12 messages now support stateless generation and validation (#1989).
+ * The `NetworkGraph` is now pruned of stale data after RGS processing (#2161).
+ * Max inbound HTLCs in-flight can be changed in the handshake config (#2138).
+ * `lightning-transaction-sync` feature `esplora-async-https` was added (#2085).
+ * A `ChannelPending` event is now emitted after the initial handshake (#2098).
+ * `PaymentForwarded::outbound_amount_forwarded_msat` was added (#2136).
+ * `ChannelManager::list_channels_by_counterparty` was added (#2079).
+ * `ChannelDetails::feerate_sat_per_1000_weight` was added (#2094).
+ * `Invoice::fallback_addresses` was added to fetch `bitcoin` types (#2023).
+ * The offer/refund description is now exposed in `Invoice{,Request}` (#2206).
+
+## Backwards Compatibility
+ * Payments sent with the legacy `*_with_route` methods on LDK 0.0.115+ will no
+   longer be retryable via the LDK 0.0.114- `retry_payment` method (#2139).
+ * `Event::PaymentPathFailed::retry` was removed and will always be `None` for
+    payments initiated on 0.0.115 which fail on an earlier version (#2063).
+ * `Route`s and `PaymentParameters` with blinded path information will not be
+   readable on prior versions of LDK. Such objects are not currently constructed
+   by LDK, but may be when processing BOLT12 data in a coming release (#2146).
+ * Providing `ChannelMonitorUpdate`s generated by LDK 0.0.115 to a
+   `ChannelMonitor` on 0.0.114 or before may panic (#2059). Note that this is
+   in general unsupported, and included here only for completeness.
+
+## Bug Fixes
+ * Fixed a case where `process_events_async` may `poll` a `Future` which has
+   already completed (#2081).
+ * Fixed deserialization of `u16` arrays. This bug may have previously corrupted
+   the historical buckets in a `ProbabilisticScorer`. Users relying on the
+   historical buckets may wish to wipe their scorer on upgrade to remove corrupt
+   data rather than waiting on it to decay (#2191).
+ * The `process_events_async` task is now `Send` and can thus be polled on a
+   multi-threaded runtime (#2199).
+ * Fixed a missing macro export causing
+   `impl_writeable_tlv_based_enum{,_upgradable}` calls to not compile (#2091).
+ * Fixed compilation of `lightning-invoice` with both `no-std` and serde (#2187)
+ * Fix an issue where the `background-processor` would not wake when a
+   `ChannelMonitorUpdate` completed asynchronously, causing delays (#2090).
+ * Fix an issue where `process_events_async` would exit immediately (#2145).
+ * `Router` calls from the `ChannelManager` now call `find_route_with_id` rather
+   than `find_route`, as was intended and described in the API (#2092).
+ * Ensure `process_events_async` always exits if any sleep future returns true,
+   not just if all sleep futures repeatedly return true (#2145).
+ * `channel_update` messages no longer set the disable bit unless the peer has
+   been disconnected for some time. This should resolve cases where channels are
+   disabled for extended periods of time (#2198).
+ * We no longer remove CLN nodes from the network graph for violating the BOLT
+   spec in some cases after failing to pay through them (#2220).
+ * Fixed a debug assertion which may panic under heavy load (#2172).
+ * `CounterpartyForceClosed::peer_msg` is now wrapped in UntrustedString (#2114)
+ * Fixed a potential deadlock in `funding_transaction_generated` (#2158).
+
+## Security
+ * Transaction re-broadcasting is now substantially more aggressive, including a
+   new regular rebroadcast feature called on a timer from the
+   `background-processor` or from `ChainMonitor::rebroadcast_pending_claims`.
+   This should substantially increase transaction confirmation reliability
+   without relying on downstream `TransactionBroadcaster` implementations for
+   rebroadcasting (#2203, #2205, #2208).
+ * Implemented the changes from BOLT PRs #1031, #1032, and #1040 which resolve a
+   privacy vulnerability which allows an intermediate node on the path to
+   discover the final destination for a payment (#2062).
+
+In total, this release features 110 files changed, 11928 insertions, 6368
+deletions in 215 commits from 21 authors, in alphabetical order:
+ * Advait
+ * Alan Cohen
+ * Alec Chen
+ * Allan Douglas R. de Oliveira
+ * Arik Sosman
+ * Elias Rohrer
+ * Evan Feenstra
+ * Jeffrey Czyz
+ * John Cantrell
+ * Lucas Soriano del Pino
+ * Marc Tyndel
+ * Matt Corallo
+ * Paul Miller
+ * Steven
+ * Steven Williamson
+ * Steven Zhao
+ * Tony Giorgio
+ * Valentine Wallace
+ * Wilmer Paulino
+ * benthecarman
+ * munjesi
+
+
 # 0.0.114 - Mar 3, 2023 - "Faster Async BOLT12 Retries"
 
 ## API Updates
diff --git a/pending_changelog/2059.txt b/pending_changelog/2059.txt
deleted file mode 100644 (file)
index d2ee0bc..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-## Backwards Compatibility
-
-- Providing `ChannelMonitorUpdate`s generated by LDK 0.0.115 to a
-`ChannelMonitor` on 0.0.114 or before may panic.
diff --git a/pending_changelog/2063.txt b/pending_changelog/2063.txt
deleted file mode 100644 (file)
index 8ac52a4..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-## API Updates
-
-- `Event::PaymentPathFailed::retry` will always be `None` if we initiate a payment on 0.0.115
-       then downgrade to an earlier version (#2063)
diff --git a/pending_changelog/2146.txt b/pending_changelog/2146.txt
deleted file mode 100644 (file)
index 12e3be3..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-## Backwards Compatibility
-
-* Routes manually constructed with `Path::blinded_tail` present will not be readable by prior versions of LDK
-* `PaymentParameters` manually constructed with `Hints::Blinded` will not be readable by prior versions of LDK
diff --git a/pending_changelog/matt-rm-retryable-secret.txt b/pending_changelog/matt-rm-retryable-secret.txt
deleted file mode 100644 (file)
index 694e368..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-## Backwards Compatibility
- * Payments sent with the legacy `*_with_route` methods on LDK 0.0.115+ will no
-   longer be retryable via the LDK 0.0.114- `retry_payment` method (#XXXX).