Skip to content

Conversation

polespinasa
Copy link
Contributor

@polespinasa polespinasa commented Mar 25, 2025

Summary

This PR removes the settxfee RPC and paytxfee setting (Bitcoin Core 31.0).
These two features were deprecated in #31278.

This PR does not remove the internal implementation of the default value of paytxfee=0 but removes the option for users to modify it.

@DrahtBot
Copy link
Contributor

DrahtBot commented Mar 25, 2025

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/32138.

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:

  • #33214 (rpc: require integer verbosity; remove boolean 'verbose' by fqlx)
  • #33184 (test: Replace legacy wallet with MiniWallet in rpc_getblockstats.py by enirox001)
  • #32636 (Split CWallet::Create() into CreateNew and LoadExisting by davidgumberg)
  • #29278 (Wallet: Add maxfeerate wallet startup option by ismaelsadeeq)
  • #17783 (common: Disallow calling IsArgSet() on ALLOW_LIST options by ryanofsky)
  • #17581 (refactor: Remove settings merge reverse precedence code by ryanofsky)
  • #17580 (refactor: Add ALLOW_LIST flags and enforce usage in CheckArgFlags by ryanofsky)
  • #17493 (util: Forbid ambiguous multiple assignments in config file 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.

@DrahtBot
Copy link
Contributor

🚧 At least one of the CI tasks failed.
Debug: https://github.com/bitcoin/bitcoin/runs/39393296960

Hints

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.

@DrahtBot DrahtBot added this to the 31.0 milestone Mar 25, 2025
@DrahtBot DrahtBot marked this pull request as draft March 25, 2025 18:45
@polespinasa polespinasa changed the title wallet, rpc: (v31.0) remove settxfee and paytxfee (work in progress) wallet, rpc: (v31.0) remove settxfee and paytxfee Mar 25, 2025
@polespinasa polespinasa marked this pull request as ready for review March 25, 2025 18:53
@polespinasa
Copy link
Contributor Author

Note to self: re-check all tests

@maflcko
Copy link
Member

maflcko commented Mar 25, 2025

Please leave this in draft. 31.0 is half a year out, so starting review on this is questionable and won't help to get it merged earlier anyway

@polespinasa polespinasa changed the title wallet, rpc: (v31.0) remove settxfee and paytxfee wallet, rpc: (v31.0) remove settxfee and paytxfee (work in progress) Mar 25, 2025
@polespinasa polespinasa marked this pull request as draft March 25, 2025 19:32
@fanquake fanquake changed the title wallet, rpc: (v31.0) remove settxfee and paytxfee (work in progress) wallet, rpc: remove settxfee and paytxfee Mar 26, 2025
@polespinasa
Copy link
Contributor Author

Will re-open closer to 31.0 release

@maflcko
Copy link
Member

maflcko commented Aug 26, 2025

Seems fine to pick this up now, if you want.

@polespinasa polespinasa reopened this Aug 26, 2025
@polespinasa polespinasa force-pushed the deletesettxfee branch 2 times, most recently from bbaa5fc to 828315f Compare August 26, 2025 17:56
@polespinasa polespinasa marked this pull request as ready for review August 26, 2025 17:56
@polespinasa
Copy link
Contributor Author

polespinasa commented Aug 26, 2025

5ba260c Rebased on top of master 6ca6f3b

@DrahtBot
Copy link
Contributor

🚧 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).

Hints

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.

@maflcko
Copy link
Member

maflcko commented Aug 28, 2025

What is the point of keeping m_pay_tx_fee. It is just dead code now, no?

@polespinasa
Copy link
Contributor Author

It is just dead code now, no?

@maflcko I think you're right.
Will squash after review, think it's easier this way.

@maflcko
Copy link
Member

maflcko commented Sep 1, 2025

Will squash after review, think it's easier this way.

I'd say to either squash now, or create meaningful separate commits. E.g:

  • First, remove from rpc (settxfee, paytxfee result)
  • Then, remove from cli (-paytxfee, tests only)
  • Then, remove from cli (-paytxfee, code, and remaining leftovers)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants