少々遅れましたが、Dusty Daemonによって愛称が付けられたCore Lightningの24.11リリースを発表できることを嬉しく思います。このリリースには、支払い、ネットワークパフォーマンス、開発者ツールの向上を含むエキサイティングな更新が盛り込まれています。過去92日間で28人の貢献者から530以上のコミットがあり、このリリースはユーザーエクスペリエンスと開発者向けのCore Lightningの機能を向上させる重要なステップです。
ユーザー中心の更新:よりスマートな支払いとネットワークの安定性
このリリースの最大のハイライトの一つは、支払いを最適化するために設計された実験的プラグインxpayの導入です。xpayは、最小コストフローソルバーに基づいた高度なルーティングアドバイスを提供するaskreneの上に構築されています。この統合により、xpayは支払い試行の結果をaskreneと共有し、時間とともに学習しルーティングの精度を向上させることができます。大胆な方には、xpayがシンプルな支払いバリアントを処理できるようにするxpay-handle-pay設定(ランタイムで調整可能)を有効にすることができます。これにより、Lightning Networkでの支払い処理のためのより多用途なツールとなります。さらに、xpayは成功した支払い経路を記憶し、自動的に再試行できるようになり、システムの信頼性が向上します。
BOLT12のサポートが、オファーの送信と受信の両方に正式に追加されました!BOLT12は統合され、9月のLightning Spec SummitでさまざまなLightning実装者から拍手を受け、2017年以来初めてLightning仕様に統合された新しいBOLTとなりました。もはや実験的ではなく、すべてのCore Lightningノードで有効になっており、BOLT12請求書の送受信が容易になり、さまざまなLightningアプリケーションとやり取りするユーザーにとって歓迎すべき更新です。
大規模なノード向けに、autocleanプラグインが改善されました。以前は、大量のデータを管理する際にノードが最大30秒間フリーズすることがありましたが、新しい改善により、プラグインははるかに侵入的でなくなり、高需要の期間中により良いパフォーマンスを確保します。同様に、gossipdとconnectdのキューも最適化され、遅延が解消されました。Listpaysも改善され、開始および制限パラメータをサポートし、最近の支払いのみを表示したい場合に支払いを迅速化します。
最後に、いくつかの重要なバグが修正されました。その中には、一方的なクローズに影響を与え、ユーザーが長期間のダウンタイム中にこれらのケースを完全に解決できなくするバグが含まれています。
開発者向けのハイライト:新しいツールと改善されたAPI
開発者向けには、Core Lightning v24.11がいくつかの注目すべき機能を導入します。まず、Core LightningのgRPCインターフェースを有効にするRustベースのプラグインcln-grpcがデフォルトで有効になりました。新しいgrpc-hostオプションにより、開発者は明示的にこれを公開できるようになり、そうでない場合はlocalhostにのみバインドされるため、セキュリティが向上します。JSONインターフェースは、@daywalker90の努力により、ほぼ完全にサポートされるようになりました。
さらに、新しいdev-spliceコマンドが導入されました。このコマンドにより、開発者は複数のチャネルへのスプライスインおよびスプライスアウトなどの複雑な移動を作成および説明できます。これにより、チャネルの流動性を扱う際の柔軟性と容易さが向上します。トレースインフラストラクチャも改善され、データベースアクセスに関するより詳細な洞察が得られ、デバッグ機能が向上しました。
もう一つの重要な追加は、exposesecretコールです。これは明示的に有効にされると、RPC APIを介してHSM(ハードウェアセキュリティモジュール)シークレットのバックアップを提供する方法を提供します。この機能は、開発者が重要なLightningデータを安全にバックアップする能力を強化します。
libpluginも改善され、プラグイン開発者にとってより均一な体験が保証されます。すべてのルーチンが構造化されたコマンドコンテキストを使用するようになり、開発プロセスが合理化されました。
ネットワークの改善:接続を維持し、より迅速に同期
Lightning Networkにおいて、このリリースはgossipingに大きな改善をもたらしました。システムは現在、同時に10ノードに接続を維持し、必要に応じてランダムにピアを選択します。毎時、Core Lightningは1つのピアからすべてのgossipを要求し、ノードが常に最新のネットワーク情報を保持できるようにします。さらに、gossipdは最大50のピアに更新を送信し、ネットワーク全体の同期を維持します。これにより、ネットワークデータの流れにおける耐障害性と一貫性が向上するはずです。
connectdプロセスも改善され、起動時により迅速に接続し、最大10のアウトゴーイング接続試行を並行して維持することで、新しいノードのセットアップを迅速化し、ネットワークのスケーラビリティを向上させます。
オープンソースコミュニティへの感謝
このリリースは、28人の献身的な開発者の貢献なしには実現できませんでした。新たに加わった4人の貢献者、Michael Cho、Lakshya Singh、Emmanuel Ferdman、alfredo-toledanoに感謝の意を表します。これらの開発者とv24.11を実現したすべての方々に大きな感謝を申し上げます。
今年の進捗を振り返ると、Core Lightning v24は一連の影響力のあるリリースで際立っています。v24.02 "Uint Needs Signature"は、Christian Deckerが主導し、@ErikDeSmedtによって名付けられ、待望のデュアルファンディングの到来を見ました。この機能は、@niftyneiとTony Klausingによって実装され、ノードが流動性をより良く活用できるようにし、チャネル作成プロセスにおける信頼要件を排除します。これに新しいリカバリープラグインが組み合わさり、ノードの運用と回復の信頼性が大幅に向上しました。v24.05 "The Infinitely Divisible Satoshi"は、@endothermicdevが主導し、daywalkerによって名付けられ、gRPCサポートの完全なオーバーホール、パフォーマンスの最適化、安全なWebSocketプロキシなど、ユーザーと開発者の体験を向上させるための重要な生活の質の改善を行いました。v24.08リリース "Steel Backed-Up Channels"は、Shahana Farooquiが主導し、@Lagrang3によって名付けられ、BOLT12の公式導入を記念する重要なマイルストーンとなり、オファーの送受信を可能にしました。これは、ユーザーと開発者の両方にとってLightningのユーティリティを拡大する長らく待たれていた機能です。最後に、v24.11 "The Lightning-Dev Mailing List"は、私自身が主導し、