rpc: use CScheduler for relocking wallet and remove RPCTimer #32862

pull pinheadmz wants to merge 2 commits into bitcoin:master from pinheadmz:http-scheduler-notimer changing 10 files +14 −187
  1. pinheadmz commented at 11:06 am on July 3, 2025: member

    This removes the dependency on libevent for events scheduled by RPC commands, like re-locking a wallet some time after decryption with walletpassphrase. Since walletpassphrase is currently the only RPC that does this, RPCRunLater, RPCTimerInterface and all related methods are left unused, and deleted in the second commit. Any future RPC that needs to execute a callback in the future can follow the pattern in this PR and just use a scheduler from node or wallet context.

    This is an alternative approach to #32796, described in #32796 (comment)

  2. use WalletContext scheduler for walletpassphrase callback 8a1765795f
  3. remove RPCTimerInterface and RPCRunLater fcfd3db563
  4. DrahtBot added the label RPC/REST/ZMQ on Jul 3, 2025
  5. DrahtBot commented at 11:06 am on July 3, 2025: contributor

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Code Coverage & Benchmarks

    For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/32862.

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK furszy, fjahr

    If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #bitcoin-core/gui/866 (Enhanced Traffic Graph Widget with Multi-timeframe Support and Data Persistence by rebroad)
    • #32061 (Replace libevent with our own HTTP and socket-handling implementation by pinheadmz)

    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.

  6. pinheadmz renamed this:
    rpc: use CScheduler for HTTPRPCTimer and remove RPCTimer
    rpc: use CScheduler for relocking wallwt and remove RPCTimer
    on Jul 3, 2025
  7. pinheadmz renamed this:
    rpc: use CScheduler for relocking wallwt and remove RPCTimer
    rpc: use CScheduler for relocking wallet and remove RPCTimer
    on Jul 3, 2025
  8. furszy commented at 2:22 pm on July 3, 2025: member
    ACK fcfd3db563e89fd79820a4cdfa102d624d801de1
  9. fjahr commented at 9:51 pm on July 5, 2025: contributor

    Code Review ACK fcfd3db563e89fd79820a4cdfa102d624d801de1

    Nice code removal, I did some additional grepping to make sure nothing was missed and didn’t see anything.

  10. fanquake requested review from achow101 on Jul 7, 2025

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2025-07-07 21:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me