ElementsProject / ElementsProject/elements

Post-0.21: Separate wallet and node

Offen
#939 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
C++
Sterne
1.2k
Forks
416
Ø Merge
1 T. 23 Std.
Gemergte PRs (30 T.)
15

Beschreibung

In https://github.com/bitcoin/bitcoin/pull/16367 the various Bitcoin Core were largely separated. In the 0.21 rebase of this PR I added `libbitcoin_common_a_SOURCES` and `libbitcoin_server_a_SOURCES` to `libbitcoin_wallet_a_SOURCES` which partially undid this separation.

The reason for this was that the blocksigning RPCs, while being part of the wallet, need access to the node. Similarly the pegin RPCs also look at the current chain state and even accesses the Bitcoin RPC.

Properly separating these things may be nontrivial. Blocksigning we should likely just move to a separate utility rather than being part of the wallet. Pegin claim management will take more thought.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne mit PR #16367 und dem 0.21 rebase und untersuche anschließend libbitcoin_wallet_a_SOURCES zusammen mit libbitcoin_common_a_SOURCES und libbitcoin_server_a_SOURCES. Verfolge die blocksigning- und pegin-RPCs, um ihre Abhängigkeiten von Node und Chain-State zu verstehen. Erledigt ist die Aufgabe, wenn die Wallet-Trennung wiederhergestellt ist, ohne das erforderliche RPC-Verhalten zu verlieren.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cpp
Bereich
blockchain
Issue-Typ
Refactoring
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.