* Add support for extensible liquidity ads The initiator of `open_channel2`, `tx_init_rbf` and `splice_init` can request funding from the remote node. The non-initiator node will: - let the open-channel-interceptor plugin decide whether to provide liquidity for new channels or not, and how much - always honor liquidity requests on existing channels (RBF and splice) when funding rates have been configured Liquidity ads are included in the `node_announcement` message, which lets buyers compare sellers and connect to sellers that provide rates they are comfortable with. They are also included in the `init` message which allows providing different rates to specific peers. This implements https://github.com/lightning/bolts/pull/1153. We currently use the temporary tlv tag 1339 while we're waiting for feedback on the spec proposal. * Add `channelCreationFee` to liquidity ads Creating a new channel has an additional cost compared to adding liquidity to an existing channel: the channel will be closed in the future, which will require paying on-chain fees. Node operators can include a `channel-creation-fee-satoshis` in their liquidity ads to cover some of that future cost. * Add liquidity purchases to the `AuditDb` Whenever liquidity is purchased, we store it in the `AuditDb`. This lets node operators gather useful statistics on their peers, and which ones are actively using the liquidity that is purchased. We store minimal information about the liquidity ads itself to be more easily compatible with potential changes in the spec.
3.4 KiB
Eclair vnext
Major changes
Liquidity Ads
This release includes an early prototype for liquidity ads. Liquidity ads allow nodes to sell their liquidity in a trustless and decentralized manner. Every node advertizes the rates at which they sell their liquidity, and buyers connect to sellers that offer interesting rates.
The liquidity ads specification is still under review and will likely change. This feature isn't meant to be used on mainnet yet and is thus disabled by default.
Update minimal version of Bitcoin Core
With this release, eclair requires using Bitcoin Core 27.1. Newer versions of Bitcoin Core may be used, but have not been extensively tested.
This version introduces a new coin selection algorithm called CoinGrinder that will reduce on-chain transaction costs when feerates are high.
To enable CoinGrinder at all fee rates and prevent the automatic consolidation of UTXOs, add the following line to your bitcoin.conf
file:
consolidatefeerate=0
Incoming obsolete channels will be rejected
Eclair will not allow remote peers to open new static_remote_key
channels. These channels are obsolete, node operators should use option_anchors
channels now.
Existing static_remote_key
channels will continue to work. You can override this behaviour by setting eclair.channel.accept-incoming-static-remote-key-channels
to true.
Eclair will not allow remote peers to open new obsolete channels that do not support option_static_remotekey
.
API changes
channelstats
now takes optional parameters--count
and--skip
to control pagination. By default, it will return first 10 entries. (#2890)createinvoice
now takes an optional--privateChannelIds
parameter that can be used to add routing hints through private channels. (#2909)nodes
allows filtering nodes that offer liquidity ads (#2848)
Miscellaneous improvements and bug fixes
Verifying signatures
You will need gpg
and our release signing key 7A73FE77DE2C4027. Note that you can get it:
- from our website: https://acinq.co/pgp/drouinf.asc
- from github user @sstone, a committer on eclair: https://api.github.com/users/sstone/gpg_keys
To import our signing key:
$ gpg --import drouinf.asc
To verify the release file checksums and signatures:
$ gpg -d SHA256SUMS.asc > SHA256SUMS.stripped
$ sha256sum -c SHA256SUMS.stripped
Building
Eclair builds are deterministic. To reproduce our builds, please use the following environment (*):
- Ubuntu 22.04
- AdoptOpenJDK 11.0.22
- Maven 3.9.2
Use the following command to generate the eclair-node package:
mvn clean install -DskipTests
That should generate eclair-node/target/eclair-node-<version>-XXXXXXX-bin.zip
with sha256 checksums that match the one we provide and sign in SHA256SUMS.asc
(*) You may be able to build the exact same artefacts with other operating systems or versions of JDK 11, we have not tried everything.
Upgrading
This release is fully compatible with previous eclair versions. You don't need to close your channels, just stop eclair, upgrade and restart.
Changelog
<fill this section when publishing the release with git log v0.10.0... --format=oneline --reverse
>