Summary
This PR removes the settxfee RPC and paytxfee setting (Bitcoin Core 31.0). These two features were deprecated in #31278.
Summary
This PR removes the settxfee RPC and paytxfee setting (Bitcoin Core 31.0). These two features were deprecated in #31278.
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/32138.
See the guideline for information on the review process.
| Type | Reviewers |
|---|---|
| Concept ACK | theStack |
If your review is incorrectly listed, please copy-paste <!–meta-tag:bot-skip–> into the comment that the bot should ignore.
Reviewers, this pull request conflicts with the following ones:
CWallet::Create() into CreateNew and LoadExisting by davidgumberg)maxfeerate wallet startup option by ismaelsadeeq)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.
Possible typos and grammar issues:
Possible places where named args for integral literals may be used (e.g. func(x, /*named_arg=*/0) in C++, and func(x, named_arg=0) in Python):
2026-01-07
🚧 At least one of the CI tasks failed. Debug: https://github.com/bitcoin/bitcoin/runs/39393296960
Try to run the tests locally, according to the documentation. However, a CI failure may still happen due to a number of reasons, for example:
Possibly due to a silent merge conflict (the changes in this pull request being incompatible with the current code in the target branch). If so, make sure to rebase on the latest commit of the target branch.
A sanitizer issue, which can only be found by compiling with the sanitizer and running the affected test.
An intermittent issue.
Leave a comment here, if you need help tracking down a confusing failure.
🚧 At least one of the CI tasks failed.
Task lint: https://github.com/bitcoin/bitcoin/runs/48937774714
LLM reason (✨ experimental): Lint failure caused by an invalid Python shebang in test/functional/wallet_txn_clone.py (syntax error).
Try to run the tests locally, according to the documentation. However, a CI failure may still happen due to a number of reasons, for example:
Possibly due to a silent merge conflict (the changes in this pull request being incompatible with the current code in the target branch). If so, make sure to rebase on the latest commit of the target branch.
A sanitizer issue, which can only be found by compiling with the sanitizer and running the affected test.
An intermittent issue.
Leave a comment here, if you need help tracking down a confusing failure.
m_pay_tx_fee. It is just dead code now, no?
It is just dead code now, no? @maflcko I think you’re right. Will squash after review, think it’s easier this way.
101@@ -102,7 +102,7 @@ void NotifyWalletLoaded(WalletContext& context, const std::shared_ptr<CWallet>&
102 std::unique_ptr<WalletDatabase> MakeWalletDatabase(const std::string& name, const DatabaseOptions& options, DatabaseStatus& status, bilingual_str& error);
103
104 //! -paytxfee default (paytxfee RPC was removed in v31.0)
105-constexpr CAmount DEFAULT_PAY_TX_FEE = 0;
106+//constexpr CAmount DEFAULT_PAY_TX_FEE = 0;
Will squash after review, think it’s easier this way.
I’d say to either squash now, or create meaningful separate commits. E.g:
Concept ACK
This should have a release note, and IIUC, the following part of the PR description doesn’t apply anymore:
This PR does not remove the internal implementation of the default value of paytxfee=0 but removes the option for users to modify it.