Skip to content

Rename the bitcoind-era public test-framework API to Z3 names#111

Open
dannywillems wants to merge 1 commit into
chore/rename-node-helpersfrom
chore/rename-public-api
Open

Rename the bitcoind-era public test-framework API to Z3 names#111
dannywillems wants to merge 1 commit into
chore/rename-node-helpersfrom
chore/rename-public-api

Conversation

@dannywillems

@dannywillems dannywillems commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Feel free to close if you disagree with the renaming - don't lose much time reading if it is contraversary, I don't have a strong opinion. This is an automated patch generated by Claude in the background while onboarding on the code.


Closes #110. Builds on #108 (stacked: base is chore/rename-node-helpers;
retarget to main once #108 merges).

The test framework descends from Bitcoin Core via zcashd and kept the
inherited naming even though the node under test is zebrad. This renames
the widely-used public API for clarity:

  • BitcoinTestFramework -> ZcashTestFramework
  • bitcoind_processes -> node_processes
  • wait_bitcoinds -> wait_nodes

Plus node-related comments, docstrings, and a loop variable in the
framework (e.g. "Start a bitcoind" -> "Start a node").

Mechanical, repo-wide rename (~129 files). Left unchanged on purpose:
copyright headers ("The Bitcoin Core developers"), references to external
projects (python-bitcoinrpc, bitcoinj, bitcoinlib), the ZCASHD_BINARY
constant used by not-yet-migrated EXTENDED tests, and the already-accurate
node-generic names (start_node/start_nodes, connect_nodes).

Verified locally: all files parse and getmininginfo.py / nuparams.py
still pass.

@dannywillems dannywillems marked this pull request as draft June 5, 2026 14:21
@dannywillems dannywillems linked an issue Jun 5, 2026 that may be closed by this pull request
@dannywillems dannywillems force-pushed the chore/rename-node-helpers branch from 20412ea to 9bb158e Compare June 5, 2026 14:47
The RPC test framework descends from Bitcoin Core via zcashd and kept the
inherited "bitcoind" naming even though the node under test is now zebrad.
Rename the misleading public names framework-wide for clarity:

  BitcoinTestFramework -> ZcashTestFramework
  bitcoind_processes   -> node_processes
  wait_bitcoinds       -> wait_nodes

Also clarify the node-related comments, docstrings and a loop variable in
the framework (e.g. "Start a bitcoind" -> "Start a node", "Wait for all
bitcoinds to cleanly exit" -> "Wait for all nodes to cleanly exit").

Left unchanged on purpose: copyright headers ("The Bitcoin Core
developers"), references to external projects (python-bitcoinrpc, bitcoinj,
bitcoinlib), the ZCASHD_BINARY constant used by not-yet-migrated EXTENDED
tests, and the already-accurate node-generic names (start_node/start_nodes,
connect_nodes).

Builds on the internal-helper rename (zebrad_binary/wait_for_zebrad_start).
Verified locally: getmininginfo.py and nuparams.py still pass.
@dannywillems dannywillems force-pushed the chore/rename-public-api branch from 8192c97 to d39716b Compare June 5, 2026 14:49
@dannywillems dannywillems marked this pull request as ready for review June 5, 2026 14:51
@dannywillems dannywillems requested a review from oxarbitrage June 5, 2026 15:19
@dannywillems dannywillems self-assigned this Jun 5, 2026
@oxarbitrage

Copy link
Copy Markdown
Contributor

Reviewed this mechanically — compiled all 129 changed files (all parse) and swept the whole repo for each renamed symbol. Clean rename, with one miss:

Breaks qa/zcash/create_wallet_200k_utxos.py. The sweep covered qa/rpc-tests/ but not this helper under qa/zcash/, which subclasses the framework with the old name (now removed — no back-compat alias):

  • L16 from test_framework.test_framework import BitcoinTestFrameworkImportError
  • L27 class LargeWalletTest(BitcoinTestFramework):

Two-line fix (BitcoinTestFrameworkZcashTestFramework). It's a benchmark helper, not a CI rpc-test, so CI won't flag it.

Nit: qa/pull-tester/rpc-tests.py:15 docstring still references BitcoinTestFramework.main (pre-existing, and the path there is stale too) — worth a touch-up while renaming.

Everything else checks out — bitcoind_processes, wait_bitcoinds, wait_for_bitcoind_start, zcashd_binary() fully renamed (0 stragglers); ZCASHD_BINARY constant, start_node/start_nodes, and copyright headers correctly left alone.

Suggestion: grep the whole repo (not just qa/rpc-tests/) for the old names so any framework users outside that dir get caught.

On timing — since this rewrites the same core files as the in-flight #56 and #104, it might be cleanest to land those first and rebase this on top (the rename is trivially regenerable), so the functional PRs don't eat the conflicts. No strong opinion, just a sequencing thought.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Rename the bitcoind-era public test-framework API to Z3 names

2 participants