bitcoin/contrib
fanquake c1fb30633b
Merge bitcoin/bitcoin#23114: Add minisketch subtree and integrate into build/test
29173d6c6c ubsan: add minisketch exceptions (Cory Fields)
54b5e1aeab Add thin Minisketch wrapper to pick best implementation (Pieter Wuille)
ee9dc71c1b Add basic minisketch tests (Pieter Wuille)
0659f12b13 Add minisketch dependency (Gleb Naumenko)
0eb7928ab8 Add MSVC build configuration for libminisketch (Pieter Wuille)
8bc166d5b1 build: add minisketch build file and include it (Cory Fields)
b2904ceb85 build: add configure checks for minisketch (Cory Fields)
b6487dc4ef Squashed 'src/minisketch/' content from commit 89629eb2c7 (fanquake)

Pull request description:

  This takes over #21859, which has [recently switched](https://github.com/bitcoin/bitcoin/pull/21859#issuecomment-921899200) to my integration branch. A few more build issues came up (and have been fixed) since, and after discussing with sipa it was decided I would open a PR to shepherd any final changes through.

  > This adds a `src/minisketch` subtree, taken from the master branch of https://github.com/sipa/minisketch, to prepare for Erlay implementation (see #21515). It gets configured for just supporting 32-bit fields (the only ones we're interested in in the context of Erlay), and some code on top is added:
  > * A very basic unit test (just to make sure compilation & running works; actual correctness checking is done through minisketch's own tests).
  > * A wrapper in `minisketchwrapper.{cpp,h}` that runs a benchmark to determine which field implementation to use.

  Only changes since my last update to the branch in the previous PR have been rebasing on master and fixing an issue with a header in an introduced file.

ACKs for top commit:
  naumenkogs:
    ACK 29173d6c6c

Tree-SHA512: 1217d3228db1dd0de12c2919314e1c3626c18a416cf6291fec99d37e34fb6eec8e28d9e9fb935f8590273b8836cbadac313a15f05b4fd9f9d3024c8ce2c80d02
2021-11-12 10:00:49 +08:00
..
builder-keys builder-keys: add kristapsk 2021-08-31 13:41:32 +03:00
debian doc: Fix external links (IRC, ...) 2021-05-31 17:27:57 +02:00
devtools Add minisketch dependency 2021-10-21 09:38:55 +08:00
guix Merge bitcoin/bitcoin#22646: build: tighter Univalue integration, remove --with-system-univalue 2021-10-20 11:01:38 +08:00
init Merge #21418: contrib: Make systemd invoke dependencies only when ready 2021-03-22 15:15:14 +01:00
linearize refactor: replace remaining binascii method calls 2021-08-16 19:30:56 +01:00
macdeploy release: remove gitian 2021-08-31 09:37:23 +08:00
message-capture Add documentation to contrib folder 2021-01-23 16:15:05 -05:00
qos test: fix file permissions on various scripts 2021-04-23 17:13:28 -07:00
seeds contrib: recognize CJDNS seeds as such 2021-11-03 14:58:55 +01:00
shell guix: Add source-able bash prelude and utils 2021-04-05 11:00:21 -04:00
signet contrib: Ask for captcha in signet getcoins.py 2021-10-02 05:39:58 +02:00
testgen bugfix: fix bech32_encode calls in gen_key_io_test_vectors.py 2021-03-18 14:28:46 -07:00
tracing tracing: drop block_connected hash.toString() arg 2021-10-18 14:35:25 +02:00
verify-commits contrib: use hkps://keys.openpgp.org to retrieve builder keys 2021-08-17 08:59:04 +08:00
verifybinaries Fix typo in comment 2021-07-27 14:01:08 +07:00
windeploy Merge bitcoin/bitcoin#22017: Update Windows code signing certificate 2021-05-27 21:51:58 +02:00
zmq refactor: replace remaining binascii method calls 2021-08-16 19:30:56 +01:00
bitcoin-cli.bash-completion scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
bitcoin-tx.bash-completion
bitcoind.bash-completion scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
filter-lcov.py scripted-diff: Bump copyright headers 2020-12-31 09:45:41 +01:00
install_db4.sh contrib: use newer config.guess & config.sub in install_db4.sh 2021-07-22 14:49:21 +08:00
README.md release: remove gitian 2021-08-31 09:37:23 +08:00
valgrind.supp contrib: Fixup valgrind suppressions file 2020-08-05 16:43:30 +02:00

Repository Tools

Developer tools

Specific tools for developers working on this repository. Additional tools, including the github-merge.py script, are available in the maintainer-tools repository.

Verify-Commits

Tool to verify that every merge commit was signed by a developer using the github-merge.py script.

Linearize

Construct a linear, no-fork, best version of the blockchain.

Qos

A Linux bash script that will set up traffic control (tc) to limit the outgoing bandwidth for connections to the Bitcoin network. This means one can have an always-on bitcoind instance running, and another local bitcoind/bitcoin-qt instance which connects to this node and receives blocks from it.

Seeds

Utility to generate the pnSeed[] array that is compiled into the client.

Build Tools and Keys

Packaging

The Debian subfolder contains the copyright file.

All other packaging related files can be found in the bitcoin-core/packaging repository.

Builder keys

PGP keys used for signing Bitcoin Core release results.

MacDeploy

Scripts and notes for Mac builds.

Test and Verify Tools

TestGen

Utilities to generate test vectors for the data-driven Bitcoin tests.

Verify Binaries

This script attempts to download and verify the signature file SHA256SUMS.asc from bitcoin.org.