bitcoin/test/lint
MarcoFalke 4633199cc8
Merge bitcoin/bitcoin#22677: cut the validation <-> txmempool circular dependency 2/2
a64078e385 Break validation <-> txmempool circular dependency (glozow)
64e4963c63 [mempool] always assert coin spent (glozow)
bb9078ed51 [refactor] put finality and maturity checking into a lambda (glozow)
bedf246f1e [mempool] only update lockpoints for non-removed entries (glozow)
1b3a11e126 MOVEONLY: TestLockPointValidity to txmempool (glozow)

Pull request description:

  Remove 2 circular dependencies: validation - txmempool and validation - policy/rbf - txmempool

  Validation should depend on txmempool (e.g. `CChainstateManager` has a mempool and we often need to know what's in our mempool to validate transactions), but txmempool is a data structure that shouldn't really need to know about chain state.

  - Changes `removeForReorg()` to be parameterized by a callable that returns true/false (i.e. whether the transaction should be removed due to being now immature or nonfinal) instead of a `CChainState`. The mempool really shouldn't need to know about coinbase maturity or lockpoints, it just needs to know which entries to remove.

ACKs for top commit:
  laanwj:
    Code review ACK a64078e385
  mjdietzx:
    reACK a64078e385
  theStack:
    re-ACK a64078e385

Tree-SHA512: f75995200569c09dfb8ddc09729da66ddb32167ff1e8a7e72f105ec062d2d6a9a390e6b4a2a115e7ad8ad3525f891ee1503f3cd2bed11773abcaf7c3230b1136
2021-12-01 17:56:08 +01:00
..
check-doc.py scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
commit-script-check.sh Merge bitcoin/bitcoin#23474: test: scripted-diff cleanups after generate* changes 2021-11-16 11:22:06 +08:00
extended-lint-all.sh scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
extended-lint-cppcheck.sh Merge bitcoin/bitcoin#23474: test: scripted-diff cleanups after generate* changes 2021-11-16 11:22:06 +08:00
git-subtree-check.sh test: Enable SC2086 shellcheck rule 2021-11-13 16:54:56 +02: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 Break validation <-> txmempool circular dependency 2021-11-30 12:21:56 +00:00
lint-cpp.sh lint: add C++ code linter 2020-09-01 14:23:08 +08:00
lint-files.py Add minisketch dependency 2021-10-21 09:38:55 +08:00
lint-files.sh test: Enable SC2086 shellcheck rule 2021-11-13 16:54:56 +02: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 Add minisketch dependency 2021-10-21 09:38:55 +08:00
lint-git-commit-check.sh test: Enable SC2086 shellcheck rule 2021-11-13 16:54:56 +02:00
lint-include-guards.sh doc: Fix typos in endif header comments 2021-11-16 09:56:45 +01:00
lint-includes.sh Merge bitcoin/bitcoin#23474: test: scripted-diff cleanups after generate* changes 2021-11-16 11:22:06 +08:00
lint-locale-dependence.sh Remove strtol in torcontrol 2021-11-18 18:13:21 +01:00
lint-logs.sh scripted-diff: Bump copyright headers 2021-11-10 11:10:24 +01:00
lint-python-dead-code.sh test: Enable SC2046 shellcheck rule 2021-11-13 18:05:26 +02: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 Merge bitcoin/bitcoin#23474: test: scripted-diff cleanups after generate* changes 2021-11-16 11:22:06 +08: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 Add minisketch dependency 2021-10-21 09:38:55 +08:00
lint-shell.sh Merge bitcoin/bitcoin#23506: test: Make more shell scripts verifiable by the shellcheck tool 2021-11-30 20:05:44 +01:00
lint-spelling.ignore-words.txt script, doc: spelling update 2021-06-23 13:33:18 +02:00
lint-spelling.sh Merge bitcoin/bitcoin#23474: test: scripted-diff cleanups after generate* changes 2021-11-16 11:22:06 +08:00
lint-submodule.sh ci: Check for submodules 2020-02-10 16:48:15 +01:00
lint-tests.sh Obsolete #!/bin/bash shebang 2018-06-20 11:12:41 +03:00
lint-whitespace.sh Merge bitcoin/bitcoin#23474: test: scripted-diff cleanups after generate* changes 2021-11-16 11:22:06 +08:00
README.md Add minisketch dependency 2021-10-21 09:38:55 +08: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.