6.3 KiB
Release Notes
Bug Fixes
- Fixed potential update inconsistencies in node announcements by creating a shallow copy before modifications. This ensures the original announcement remains unchanged until the new one is fully signed and validated.
New Features
Functional Enhancements
RPC Additions
-
When querying
ForwardingEvents
logs, the response now include the incoming and outgoing htlc indices of the payment circuit. The indices are only available for forwarding events saved after v0.20. -
The
lncli addinvoice --blind
command now has the option to include a chained channels incoming list--blinded_path_incoming_channel_list
which gives users the control of specifying the channels they prefer to receive the payment on. With the option to specify multiple channels this control can be extended to multiple hops leading to the node. -
The
lnrpc.ForwardingHistory
RPC method now supports filtering byincoming_chan_ids
andoutgoing_chan_ids
. This allows to retrieve forwarding events for specific channels.
lncli Additions
-
lncli sendpayment
andlncli queryroutes
now support the--route_hints
flag to support routing through private channels. -
The
lncli fwdinghistory
command now supports two new flags:--incoming_chan_ids
and--outgoing_chan_ids
. These filters allows to query forwarding events for specific channels.
Improvements
Functional Updates
- Graph Store SQL implementation and migration project:
- Introduce an abstract graph store interface.
- Start validating that byte blobs at the end of gossip messages are valid TLV streams.
- Various preparations of the graph code before the SQL implementation is added.
- Only fetch required fields during graph cache population.
- Add graph schemas, queries and CRUD:
RPC Updates
lncli Updates
Code Health
Breaking Changes
Performance Improvements
Deprecations
⚠️ Warning: The following RPCs will be removed in release version 0.21:
Deprecated RPC Method | REST Equivalent | HTTP Method | Path | Replaced By |
---|---|---|---|---|
lnrpc.SendToRoute routerrpc.SendToRoute |
❌ (No direct REST equivalent) | — | — | routerrpc.SendToRouteV2 |
lnrpc.SendPayment routerrpc.SendPayment |
✅ | POST |
/v1/channels/transaction-stream |
routerrpc.SendPaymentV2 |
lnrpc.SendToRouteSync |
✅ | POST |
/v1/channels/transactions/route |
routerrpc.SendToRouteV2 |
lnrpc.SendPaymentSync |
✅ | POST |
/v1/channels/transactions |
routerrpc.SendPaymentV2 |
router.TrackPayment |
❌ (No direct REST equivalent) | — | — | routerrpc.TrackPaymentV2 |
🚨 Users are strongly encouraged to transition to the new V2 methods before release 0.21 to ensure compatibility:
New RPC Method | REST Equivalent | HTTP Method | Path |
---|---|---|---|
routerrpc.SendToRouteV2 |
✅ | POST |
/v2/router/route/send |
routerrpc.SendPaymentV2 |
✅ | POST |
/v2/router/send |
routerrpc.TrackPaymentV2 |
✅ | GET |
/v2/router/track/{payment_hash} |
Technical and Architectural Updates
BOLT Spec Updates
- Explicitly define the inbound fee TLV
record on the
channel_update
message and handle it explicitly throughout the code base instead of extracting it from the TLV stream at various call-sites.
Testing
Database
Code Health
Tooling and Documentation
Contributors (Alphabetical Order)
- Abdulkbk
- Elle Mouton
- Funyug
- Mohamed Awnallah
- Pins