dogecoin/test/lint
Wladimir J. van der Laan 22d11187ee
Merge #17398: build: Update leveldb to 1.22+
677fb8e923 test: Add ubsan surpression for crc32c (Wladimir J. van der Laan)
8e68bb1dde build: Disable msvc warning 4722 for leveldb build (Aaron Clauson)
be23949765 build: MSVC changes for leveldb update (Aaron Clauson)
9ebdf04757 build: CRC32C build system integration (Wladimir J. van der Laan)
402252a808 build: Add LCOV exception for crc32c (Wladimir J. van der Laan)
3a037d0067 test: Add crc32c exception to various linters and generation scripts (Wladimir J. van der Laan)
84ff1b2076 test: Add crc32c to subtree check linter (Wladimir J. van der Laan)
7cf13a5134 doc: Add crc32c subtree to developer notes (Wladimir J. van der Laan)
24d02a9ac0 build: Update build system for new leveldb (Wladimir J. van der Laan)
2e1819311a Squashed 'src/crc32c/' content from commit 224988680f7673cd7c769963d4035cb315aa3388 (Wladimir J. van der Laan)
66480821b3 Squashed 'src/leveldb/' changes from f545dfabff4c2e9836efed094dba99a34fbc6b88..f8ae182c1e5176d12e816fb2217ae33a5472fdd7 (Wladimir J. van der Laan)

Pull request description:

  This updates leveldb to currently newest upstream commit 0c40829872:

  - CRC32C hardware acceleration is now an external library [crc32c](https://github.com/google/crc32c). This adds acceleration on ARM, and should be faster on x86 because of using prefetch. It also makes it easy to support similar instruction sets on other platforms in the future.
  - Thread handling uses C++11, instead of platform specific code.
  - Native windows environment was added. No need to maintain our own hacky one, anymore.
  - Upstream now builds using CMake. This doesn't mean we need to use that (phew), but internal configuration changed to a a series of checks, instead of OS profiles. This means the blanket error "Cannot build leveldb for $host. Please file a bug report' is removed.

  All changes: a53934a3ae...0c40829872

  Pretty much all our changes have been subsumed by upstream, so we figured it was cleaner to start over with a new branch from upstream with the still-relevant patches applied: https://github.com/bitcoin-core/leveldb/tree/bitcoin-fork-new

  There's quite some testing to be done (see below). See https://github.com/bitcoin-core/leveldb/issues/25 and https://github.com/bitcoin-core/leveldb/pull/26 for more history and context.

  TODO:
  - [x] Subtree `crc32c`
  - [x] Make linters happy about crc32 subtree
  - [x] Integrate `crc32c` library into build system
  - [x] MSVC build system

ACKs for top commit:
  sipa:
    ACK 677fb8e923

Tree-SHA512: 37ee92a750e053e924bc4626b12bb3fd81faa9f8c5ebaa343931fee810c45ba05aa6051fdea82535fa351bf2be7297801b98af9469865fc5ead771650a5d6240
2020-02-10 11:36:09 +01:00
..
check-doc.py test/contrib: Fix invalid escapes in regex strings 2019-09-03 14:38:38 -04:00
check-rpc-mappings.py scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
commit-script-check.sh scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
extended-lint-all.sh scripted-diff: Bump copyright of files changed in 2020 2020-01-15 02:18:00 +07:00
extended-lint-cppcheck.sh test: Add crc32c exception to various linters and generation scripts 2020-01-28 17:01:48 +01:00
git-subtree-check.sh scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
lint-all.sh Run all lint scripts 2019-05-16 16:42:59 +02:00
lint-assertions.sh scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
lint-circular-dependencies.sh gui: Drop PeerTableModel dependency to ClientModel 2020-02-03 14:48:40 +00: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 tests: Add fuzzing harness for strprintf(...) 2020-01-27 21:31:42 +00:00
lint-include-guards.sh test: Add crc32c exception to various linters and generation scripts 2020-01-28 17:01:48 +01:00
lint-includes.sh test: Add crc32c exception to various linters and generation scripts 2020-01-28 17:01:48 +01:00
lint-locale-dependence.sh Merge #17691: doc: Add missed copyright headers 2020-01-16 15:58:35 -05:00
lint-logs.sh scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13: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 test: Add crc32c exception to various linters and generation scripts 2020-01-28 17:01:48 +01:00
lint-python.sh scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
lint-qt.sh test: Add lint to prevent SIGNAL/SLOT connect style 2018-08-21 09:43:55 +01:00
lint-rpc-help.sh rpc: Documentation fixups 2018-11-15 12:19:11 -05:00
lint-shebang.sh scripted-diff: Add missed copyright headers 2020-01-04 20:18:28 +02: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 script: Enable SC2001 rule for Gitian scripts 2019-11-27 19:27:56 +02:00
lint-spelling.ignore-words.txt doc: Fix some misspellings 2019-11-04 04:22:53 -05:00
lint-spelling.sh test: Add crc32c exception to various linters and generation scripts 2020-01-28 17:01:48 +01:00
lint-tests.sh Obsolete #!/bin/bash shebang 2018-06-20 11:12:41 +03:00
lint-whitespace.sh test: Add crc32c exception to various linters and generation scripts 2020-01-28 17:01:48 +01:00
README.md test: Add crc32c to subtree check linter 2020-01-28 17:01:48 +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.

To use, make sure that you have fetched the upstream repository branch in which the subtree is maintained:

Usage: git-subtree-check.sh DIR (COMMIT)

COMMIT may be omitted, in which case HEAD is used.

lint-all.sh

Calls other scripts with the lint- prefix.