bitcoin/test/lint
Russell Yanofsky c7bd5842e4 MOVEONLY: CWallet transaction code out of wallet.cpp/.h
This commit just moves functions without making any changes. It can be
reviewed with `git log -p -n1 --color-moved=dimmed_zebra`

Motivation for this change is to make wallet.cpp/h less monolithic and
start to make wallet transaction state tracking comprehensible so bugs
in
https://github.com/bitcoin-core/bitcoin-devwiki/wiki/Wallet-Transaction-Conflict-Tracking
can be fixed safely without introducing new problems.

This commit moves wallet classes and methods that deal with transactions
out of wallet.cpp/.h into better organized files:

- transaction.cpp/.h - CWalletTx and CMerkleTx class definitions
- receive.cpp/.h - functions checking received transactions and computing balances
- spend.cpp/.h - functions creating transactions and finding spendable coins

After #20773, when loading is separated from syncing it will also be
possible to move more wallet.cpp/.h functions to:

- sync.cpp/.h - functions handling chain notifications and rescanning

This commit arranges receive.cpp and spend.cpp functions in dependency
order so it's possible to skim receive.cpp and get an idea of how
computing balances works, and skim spend.cpp and get an idea of how
transactions are created, without having to jump all over wallet.cpp
where functions are not in order and there is a lot of unrelated code.

Followup commit "refactor: Detach wallet transaction methods" in
https://github.com/bitcoin/bitcoin/pull/21206 follows up this PR and
tweaks function names and arguments to reflect new locations. The two
commits are split into separate PRs because this commit is more work to
maintain and less work to review, while the other commit is less work to
maintain and more work to review, so hopefully this commit can be merged
earlier.
2021-05-26 06:32:51 -05:00
..
check-doc.py scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
commit-script-check.sh test: Bump shellcheck version 2021-04-22 12:14:05 +03:00
extended-lint-all.sh scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
extended-lint-cppcheck.sh remove unused class util::Ref and its unit test 2021-03-29 23:29:47 +02:00
git-subtree-check.sh scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
lint-all.sh Run all lint scripts 2019-05-16 16:42:59 +02:00
lint-assertions.sh scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
lint-circular-dependencies.sh MOVEONLY: CWallet transaction code out of wallet.cpp/.h 2021-05-26 06:32:51 -05:00
lint-cpp.sh lint: add C++ code linter 2020-09-01 14:23:08 +08:00
lint-files.py test: minor fixes & improvements for files linter test 2021-05-06 18:21:06 -07:00
lint-files.sh test: add new python linter to check file names and permissions 2021-04-29 17:00:58 -07:00
lint-format-strings.py Refactor: Copy CWallet signals and print function to LegacyScriptPubKeyMan 2020-01-23 16:35:08 -05:00
lint-format-strings.sh scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
lint-git-commit-check.sh ci: Drop Travis-specific way to set COMMIT_RANGE variable 2020-12-21 12:10:59 +02:00
lint-include-guards.sh multiprocess: Add Ipc interface implementation 2021-04-23 03:02:50 -05:00
lint-includes.sh Merge #21064: refactor: use std::shared_mutex & remove Boost Thread 2021-02-12 11:39:36 +01:00
lint-locale-dependence.sh refactor: Move pruning/reindex/importing globals to blockstorage 2021-04-27 10:32:24 +02:00
lint-logs.sh scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
lint-python-dead-code.sh Re-add dead code detection 2021-02-13 09:57:50 +01:00
lint-python-mutable-default-parameters.sh lint: Catch use of [] or {} as default parameter values in Python functions 2019-08-26 10:53:10 +00:00
lint-python-utf8-encoding.sh scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
lint-python.sh scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
lint-qt.sh test: Add lint to prevent SIGNAL/SLOT connect style 2018-08-21 09:43:55 +01:00
lint-shell-locale.sh macOS fix: Work around empty (sub)expression error when using BSD grep 2018-08-31 00:52:48 +02:00
lint-shell.sh ci: Drop Travis-specific workaround for shellcheck 2020-12-21 12:11:00 +02:00
lint-spelling.ignore-words.txt lint: ignore gitian keys file for spelling linter 2021-01-02 19:06:28 +01:00
lint-spelling.sh lint: ignore gitian keys file for spelling linter 2021-01-02 19:06:28 +01:00
lint-submodule.sh ci: Check for submodules 2020-02-10 16:48:15 +01:00
lint-tests.sh
lint-whitespace.sh lint: Skip whitespace lint for guix patches 2021-01-17 18:43:58 -05:00
README.md test: Add option to git-subtree-check to do full check, add help 2020-12-04 09:36:17 +01:00

This folder contains lint scripts.

check-doc.py

Check for missing documentation of command line options.

commit-script-check.sh

Verification of scripted diffs. Scripted diffs are only assumed to run on the latest LTS release of Ubuntu. Running them on other operating systems might require installing GNU tools, such as GNU sed.

git-subtree-check.sh

Run this script from the root of the repository to verify that a subtree matches the contents of the commit it claims to have been updated to.

Usage: test/lint/git-subtree-check.sh [-r] DIR [COMMIT]
       test/lint/git-subtree-check.sh -?
  • DIR is the prefix within the repository to check.
  • COMMIT is the commit to check, if it is not provided, HEAD will be used.
  • -r checks that subtree commit is present in repository.

To do a full check with -r, make sure that you have fetched the upstream repository branch in which the subtree is maintained:

To do so, add the upstream repository as remote:

git remote add --fetch secp256k1 https://github.com/bitcoin-core/secp256k1.git

lint-all.sh

Calls other scripts with the lint- prefix.