wallet: Disable creating and loading legacy wallets #31250

pull achow101 wants to merge 13 commits into bitcoin:master from achow101:disable-legacy-wallets changing 122 files +580 −5743
  1. achow101 commented at 6:42 pm on November 7, 2024: member

    To prepare for the deletion of legacy wallet code, disable creating or loading new legacy wallets.

    Tests for the legacy wallet specifically are deleted.

    Depends on #31248 and #31241

    Split from https://github.com/bitcoin/bitcoin/pull/28710

  2. DrahtBot commented at 6:42 pm on November 7, 2024: 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/31250.

    Reviews

    See the guideline for information on the review process. A summary of reviews will appear here.

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #31617 (build, test: Build db_tests.cpp regardless of USE_BDB by hebasto)
    • #31519 (refactor: Use std::span over Span by maflcko)
    • #31451 (wallet: migration, avoid loading legacy wallet after failure when BDB isn’t compiled by furszy)
    • #31423 (wallet: migration, don’t create spendable wallet from a watch-only legacy wallet by furszy)
    • #31413 (rpc: Remove deprecated dummy alias for listtransactions::label by maflcko)
    • #31375 (multiprocess: Add bitcoin wrapper executable by ryanofsky)
    • #31353 (rpc, cli: add getbalances#total, and use it for -getinfo by jonatack)
    • #31278 (wallet, rpc: Settxfeerate by polespinasa)
    • #31241 (wallet: remove BDB dependency from wallet migration benchmark by furszy)
    • #30860 (test: autogenerate bash completion by BrandonOdiwuor)
    • #30844 (RPC: improve SFFO arg parsing, error catching and coverage by furszy)
    • #30221 (wallet: Ensure best block matches wallet scan state by achow101)
    • #30125 (test: improve BDB parser (handle internal/overflow pages, support all page sizes) by theStack)
    • #29694 (fuzz: wallet: add target for spkm migration by brunoerg)
    • #29156 (tests: add functional test for miniscript decaying multisig by mjdietzx)
    • #29124 (wallet: Automatically repair corrupted metadata with doubled derivation path by achow101)
    • #28944 (wallet, rpc: add anti-fee-sniping to send and sendall by ishaanam)
    • #28802 (ArgsManager: support subcommand-specific options by ajtowns)
    • #28710 (Remove the legacy wallet and BDB dependency by achow101)
    • #27865 (wallet: Track no-longer-spendable TXOs separately by achow101)
    • #27286 (wallet: Keep track of the wallet’s own transaction outputs in memory by achow101)
    • #27052 (test: rpc: add last block announcement time to getpeerinfo result by LarryRuane)
    • #25722 (refactor: Use util::Result class for wallet loading by ryanofsky)
    • #19461 (multiprocess: Add bitcoin-gui -ipcconnect option by ryanofsky)
    • #19460 (multiprocess: Add bitcoin-wallet -ipcconnect option by ryanofsky)
    • #10102 (Multiprocess bitcoin by ryanofsky)

    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.

  3. DrahtBot added the label Wallet on Nov 7, 2024
  4. achow101 force-pushed on Nov 7, 2024
  5. DrahtBot added the label CI failed on Nov 7, 2024
  6. DrahtBot added the label Needs rebase on Nov 12, 2024
  7. achow101 force-pushed on Nov 12, 2024
  8. DrahtBot removed the label CI failed on Nov 12, 2024
  9. DrahtBot removed the label Needs rebase on Nov 12, 2024
  10. DrahtBot added the label Needs rebase on Nov 19, 2024
  11. achow101 force-pushed on Nov 20, 2024
  12. DrahtBot removed the label Needs rebase on Nov 20, 2024
  13. DrahtBot added the label Needs rebase on Dec 2, 2024
  14. achow101 force-pushed on Dec 5, 2024
  15. DrahtBot removed the label Needs rebase on Dec 5, 2024
  16. DrahtBot added the label Needs rebase on Dec 6, 2024
  17. achow101 force-pushed on Dec 9, 2024
  18. DrahtBot removed the label Needs rebase on Dec 9, 2024
  19. DrahtBot added the label Needs rebase on Jan 10, 2025
  20. wallet: remove BDB dependency from wallet migration benchmark
    Stops creating a bdb database in the wallet migration benchmark.
    Instead, the benchmark now creates the db in memory and re-uses
    it for the migration process.
    24a7845b2b
  21. test: rpcs disabled for descriptor wallets were removed f8ae3e5a2c
  22. test: Remove legacy wallet unit tests 550c185fce
  23. test: wallet_transactiontime_rescan importdescriptors always rescans b45a6ded81
  24. test: wallet_signer.py bdb will be removed d471ae1474
  25. test: Remove legacy wallet tests from wallet_backwards_compatibility.py 2fc4d37870
  26. test: Remove legacy wallet tests from wallet_reindex.py 8fff847fe9
  27. test: remove legacy wallet functional tests
    Removes all legacy wallet specific functional tests.
    
    Also removes the --descriptor and --legacy-wallet options as these are
    no longer necessary with the legacy wallet removed.
    6f4f32d226
  28. wallet: Remove -format and bdb from wallet tool's createfromdump 6f3b8e7460
  29. wallet: Remove wallettool salvage
    Salvage is bdb only which is about to be removed.
    f0c24903f4
  30. bench: Remove WalletLoadingLegacy benchmark f20f8f83a9
  31. build: Require sqlite when --enable-wallet
    Require sqlite is available in order to compile the wallet. Removes
    instances of USE_SQLITE since it is no longer possible to not have
    sqlite available.
    2cb846b156
  32. wallet: Disallow legacy wallets
    Legacy wallets do not have the descriptors flag set. Don't load wallets
    without the descriptors flag.
    
    At the same time, we will no longer load BDB databases since they are
    only used for legacy wallets.
    e35ee39ad9
  33. achow101 force-pushed on Jan 20, 2025
  34. DrahtBot removed the label Needs rebase on Jan 20, 2025
  35. DrahtBot added the label CI failed on Jan 21, 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-01-21 06:12 UTC

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