This PR is part of the process separation project.
This PR doesn't change behavior at all, it just cleans up code in src/interfaces to simplify #10102, and documents coding conventions there better
This PR is part of the process separation project.
This PR doesn't change behavior at all, it just cleans up code in src/interfaces to simplify #10102, and documents coding conventions there better
Concept ACK.
Concept ACK
On behalf of the eternal stream of future generations of Bitcoin Core developers: thank you for cleaning up the code base :)
Code review ACK 2427e93f5823cffcf1158d1cd389b9d2ef703521.
<!--e57a25ab6845829454e8d69fc972939a-->
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
<!--174a7506f384e20aa4161008e828411d-->
Reviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.
Rebased 2427e93f5823cffcf1158d1cd389b9d2ef703521 -> 60ae4c0756ed14eed31a13c3813e9714cab060d0 (pr/ipc-conv.3 -> pr/ipc-conv.4, compare) due to conflict with #18241
153 | @@ -154,7 +154,10 @@ class Chain 154 | //! Transaction is added to memory pool, if the transaction fee is below the 155 | //! amount specified by max_tx_fee, and broadcast to all peers if relay is set to true. 156 | //! Return false if the transaction could not be added due to the fee or for another reason. 157 | - virtual bool broadcastTransaction(const CTransactionRef& tx, std::string& err_string, const CAmount& max_tx_fee, bool relay) = 0; 158 | + virtual bool broadcastTransaction(const CTransactionRef& tx, 159 | + const CAmount& max_tx_fee, 160 | + bool relay, 161 | + std::string& err_string) = 0;
nit: is this needed to break the line here while keeping this function definition one-liner in chain.cpp?
re: #18278 (review)
nit: is this needed to break the line here while keeping this function definition one-liner in chain.cpp?
added same wrapping
203 | @@ -204,7 +204,7 @@ class Node 204 | virtual std::unique_ptr<Wallet> loadWallet(const std::string& name, std::string& error, std::vector<std::string>& warnings) = 0; 205 | 206 | //! Create a wallet from file 207 | - virtual WalletCreationStatus createWallet(const SecureString& passphrase, uint64_t wallet_creation_flags, const std::string& name, std::string& error, std::vector<std::string>& warnings, std::unique_ptr<Wallet>& result) = 0; 208 | + virtual std::unique_ptr<Wallet> createWallet(const SecureString& passphrase, uint64_t wallet_creation_flags, const std::string& name, std::string& error, std::vector<std::string>& warnings, WalletCreationStatus& status) = 0;
nit: considering a new signature of the refactored function could a more appropriate semantically name be chosen?
newWallet or smth similar?
re: #18278 (review)
nit: considering a new signature of the refactored function could a more appropriate semantically name be chosen?
newWalletor smth similar?
Unclear why that name is more semantically appropriate, but not knowing this, it seems reasonable for the interface wrapper method name to have the same name as the function it is wrapping
ACK 60ae4c0756ed14eed31a13c3813e9714cab060d0.
It seems AppVeyor fail is unrelated to this PR changes.
Thanks for review
Updated 60ae4c0756ed14eed31a13c3813e9714cab060d0 -> 43c3b391feeb0ad1b2faa4e269b64175399ef5df (pr/ipc-conv.4 -> pr/ipc-conv.5, compare) adding suggested wrapping
Rebased 43c3b391feeb0ad1b2faa4e269b64175399ef5df -> 25f1a842929dd73bcec26c5ce213adfc65b9cb2e (pr/ipc-conv.5 -> pr/ipc-conv.6, compare) due to confilct with #18115
re-ACK 25f1a842929dd73bcec26c5ce213adfc65b9cb2e
Replace by privateKeysDisabled method to avoid need for GUI to reference
internal wallet flags.
Also remove adjacent WalletModel canGetAddresses wrapper that serves no purpose
and make Wallet::canGetAddresses non-const so it can be implemented by IPC
classes in #10102.
Avoid overloading method name to work more easily with IPC framework
This also simplifies #10102 removing overrides needed to deal with inconsistent
case convention
Make output argument last argument so it works more easily with IPC framework
in #10102, and for consistency with other methods
Move output arguments after input arguments for consistency with other methods,
and to work more easily with IPC framework in #10102
Rebased 25f1a842929dd73bcec26c5ce213adfc65b9cb2e -> 3dc27a15242a22b5301904375e5880372e9b7f4d (pr/ipc-conv.6 -> pr/ipc-conv.7, compare) due to conflict with #17477
ACK 3dc27a15242a22b5301904375e5880372e9b7f4d 🕍
<details><summary>Show signature and timestamp</summary>
Signature:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
ACK 3dc27a15242a22b5301904375e5880372e9b7f4d 🕍
-----BEGIN PGP SIGNATURE-----
iQGzBAEBCgAdFiEE+rVPoUahrI9sLGYTzit1aX5ppUgFAlwqrYAACgkQzit1aX5p
pUgv6Qv+N5ucWCeIaDagqqWUUjRwyJrTq8kr9yZWzQIsZ9zBbrnaxsr106m6Gc8T
NEmKSbDdgLK+oXFFDRYmO7kvVib0hUoVcfZfq42vSEfqg5mMBKUG6DFAGseKh0Fg
LdsvKuczDSeb/L52uIrdQe/ptzpjCqJvHHiScn7SoOidAiyjFWwdhOtBwV7oRuF9
UgGD10K5O7hy70rmn9JOG7GPI1T5NYG2ZgAy7w2n2ChBNeNv9mSse/pDKOgrbhS8
97Fsl5P+SQq2Fi3aQDLBRd5/sj2nu0BpoKCoowJsRHE4GOeAngdZI6f1EOpYLamH
s91MQOTXMgN3VFvhnKSNSVesNmMbvGs4aCyLSXQvPh4ni7jpwjpPf7czl3IItn0L
KnrgUg7uVquxU2FXOvRaVmKo1/PvicrhWYp2Vh8QN06yi91ALoqUqiWHBkdKiwN6
KoAfUKas0Xn+xgg4h+RKNYh5SFLjNEzResi9+ED5KfDW+sjFR9vzElOHiEf/u+Lb
F661+ybw
=ipNG
-----END PGP SIGNATURE-----
Timestamp of file with hash a78b9d76a84ed28d935046f7fd167bda964ff54cc7339f5435a9c7c3e22c90ed -
</details>