This PR is part of the process separation project.
These changes are needed to set mock times, and get wallet interface pointers correctly when wallet code is running in a different process from node code in #10102
This PR is part of the process separation project.
These changes are needed to set mock times, and get wallet interface pointers correctly when wallet code is running in a different process from node code in #10102
re-run ci
281 | @@ -280,6 +282,12 @@ class ChainClient 282 | 283 | //! Shut down client. 284 | virtual void stop() = 0; 285 | + 286 | + //! Set mock time. 287 | + virtual void setMockTime(int64_t time) = 0; 288 | + 289 | + //! Return interfaces for accessing wallets (if any). 290 | + virtual std::vector<std::unique_ptr<Wallet>> getWallets() { return {}; }
Any reason to have definition?
I presume this is needed when there is more than one chain client that has wallets. Maybe the doc string could be clarified to say "of the wallets of all chain clients" or similar.
Any reason to have definition?
No, I think something must have prompted me to add the definition at some point, but I can't think of what that would have been. Removed definition now (thanks)
Code review ACK, but could squash and avoid the temporary circular dependency.
ACK 06edeb442971747634d1558130d15e6227325422 🚻
<details><summary>Show signature and timestamp</summary>
Signature:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
ACK 06edeb442971747634d1558130d15e6227325422 🚻
-----BEGIN PGP SIGNATURE-----
iQGyBAEBCgAdFiEE+rVPoUahrI9sLGYTzit1aX5ppUgFAlwqrYAACgkQzit1aX5p
pUhEFQvzBP27AqgANDYm0anOBCrcFhiEuALQa0nLCp7dkxK34mOqJEWsfzYBjKL8
kdPgbcyOMx9cc0N1YzQJuVUgFsDEzQjv4+SSogMmec00FEIUPl6rJpVMnmeMbsju
+5nmilRKRgZ0TR1Z2dAebe84Cm8go5Il6Il1vI0WcsIE4RzrNVMFAqaVAI/RV+4g
EpOzYCwzEgXMGWw4nixku/hrIVRbAlOTsKrOncYmp10/BtDvT4EhJq7D1w1q67KV
HDgd5PVa8geRmy7DTEvEjpQEYnL2qBR2yr1WtMwzxWBSGrwqSLCfl7RyQuWgX/2x
oMnQzoCszSO9gQM1X7BIag8io0H+hrTgo4OTkWmKxwJHuUX3A8JXTksAPyvw5CSR
CM2bxOZUu6hmdrTCrMWHZTbuexn2AQsEFicIWzlP3Kbi/FQXSC7dmx013KHUSmEj
K1Fg9FZCBvCJq6nO7Eg4MK5qhYDFzWmTkxPWa10zVNc3/Cto4AWPIJnl9AjjkX8o
u+ofy1Y=
=OnjJ
-----END PGP SIGNATURE-----
Timestamp of file with hash 7dc65ddc41d7a97c1cc5b926e0f20c04316b6c5b18b17537c4fc59c620d2d263 -
</details>
Needed to set mock times, and get wallet interface pointers correctly when
wallet code is running in a different process from node code.
Also clean up forward other forward declarations in interfaces/wallet.h with !sort
Original motivation for this change was to fix a circular dependencies lint
error: "interfaces/chain.h -> interfaces/wallet.h -> psbt -> node/transaction
-> node/context -> interfaces/chain.h" from an earlier commit in this PR adding
a "interfaces/chain.h -> interfaces/wallet.h" include. Now, the wallet include
is no longer added, but it is still good to clean up the psbt include for
efficiency, and to sort the forward declarations.
Rebased 06edeb442971747634d1558130d15e6227325422 -> 3ce16ad2f91d1e2edc7e7bdc5a19f72aa8c3e739 (pr/ipc-clients.1 -> pr/ipc-clients.2, compare) due to conflict with #18037 and removed extraneous include and method definition.
Code review ACK 3ce16ad2f91d1e2edc7e7bdc5a19f72aa8c3e739.
re-ACK 3ce16ad2f91d1e2edc7e7bdc5a19f72aa8c3e739 🔙
<details><summary>Show signature and timestamp</summary>
Signature:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
re-ACK 3ce16ad2f91d1e2edc7e7bdc5a19f72aa8c3e739 🔙
-----BEGIN PGP SIGNATURE-----
iQGzBAEBCgAdFiEE+rVPoUahrI9sLGYTzit1aX5ppUgFAlwqrYAACgkQzit1aX5p
pUguhwv+OeT+gPBC/ph0lphxilHyBJqekSTWMBNvVtlusfJujyxbuCxlv0okK1IS
3lFhGkeEfEj2/s2H8RMsvDVSjK5BN4/06SHYb99I9POCyjqkeg+grYfUjcqVnNmq
U5pPpngZln9OpRd3AMdU7caw8uXcX4l5wak/tYVZRE9QKybF3xPlpHzcpRkdVYnv
ZKXSwaGW5gcsUMstlUzzHq1J59XZAk5hHrH3tvi/JcOZPQFD6McKStlTXDXAERBa
Fp4cA4K+dn9HkJegMCDw4BSp1bt9oVJXvQshargnDfaYtRQgFDq55O/rtSVJYF4v
Ey9o2l8tzbVGz9VABXueSC0mDRz/cN8raO/V50O1guzK5tNlDGJuvRU9VrXWgyR+
xPeStH4sJQLzSiuy6aX/7FNIqkPPHk88l14KWLNPyv+T6+YyXWQdTDQF73DlkRQq
y2oZ5h0zmOdBZTlwbD21hVQpejDcyFYI9AIihfJzDWjPgN2NWl6ia57Uh08hCX+z
M1cZESy9
=Ly4W
-----END PGP SIGNATURE-----
Timestamp of file with hash d3df18e203f28d9eaeee0acf457efa8312dc6a5a45c7a803a6b0ac74106c450d -
</details>
<!--e57a25ab6845829454e8d69fc972939a-->
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
<!--174a7506f384e20aa4161008e828411d-->
No conflicts as of last run.