bitcoin/test/lint
Jonas Schnelli 9017d55e7c
Merge #15946: Allow maintaining the blockfilterindex when using prune
84716b134e Add "index/blockfilterindex -> validation -> index/blockfilterindex" to expected circular dependencies (Jonas Schnelli)
ab3a0a2fb9 Add functional test for blockfilterindex in prune-mode (Jonas Schnelli)
c286a22f7b Add debug startup parameter -fastprune for more effective pruning tests (Jonas Schnelli)
5e112269c3 Avoid pruning below the blockfilterindex sync height (Jonas Schnelli)
00d57ff768 Avoid accessing nullpointer in BaseIndex::GetSummary() (Jonas Schnelli)
6abe9f5b11 Allow blockfilter in conjunction with prune (Jonas Schnelli)

Pull request description:

  Maintaining the blockfilterindexes in prune mode is possible and may lead to efficient p2p based rescans of wallets (restore backups, import/sweep keys) beyond the prune height (rescans not part of that PR).

  This PR allows running the blockfilterindex(es) in conjunction with pruning.
  * Bitcoind/Qt will shutdown during startup when missing block data has been detected ([re]enable `-blockfilterindex` when we already have pruned)
  * manual block pruning is disabled during blockfilterindex sync
  * auto-pruning is delayed during blockfilterindex sync

  ToDos:
  * [x] Functional tests

ACKs for top commit:
  fjahr:
    Code review ACK 84716b1
  ryanofsky:
    Code review ACK 84716b134e. Only changes since last review were suggested new FindFilesToPrune argument and test.
  benthecarman:
    tACK 84716b134e

Tree-SHA512: 91d832c6c562c463f7ec7655c08956385413a99a896640b9737bda0183607fac530435d03d87c3c0e70c61ccdfe73fe8f3639bc7d26d33ca7e60925ebb97d77a
2021-02-18 09:40:42 +01:00
..
check-doc.py scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
commit-script-check.sh scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
extended-lint-all.sh scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
extended-lint-cppcheck.sh refactor: Improve use of explicit keyword 2020-12-01 18:36:39 +01: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 Merge #15946: Allow maintaining the blockfilterindex when using prune 2021-02-18 09:40:42 +01:00
lint-cpp.sh lint: add C++ code linter 2020-09-01 14:23:08 +08:00
lint-filenames.sh scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13: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 scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01: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 Merge #18817: doc: Document differences in bitcoind and bitcoin-qt locale handling 2020-08-29 10:03:45 +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-shebang.sh scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +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 Obsolete #!/bin/bash shebang 2018-06-20 11:12:41 +03:00
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.