Age | Commit message (Collapse) | Author |
|
|
|
fab24f8c3540b6f1a128cb9d6812df6678472b8d ci: Add clang-tidy task (MarcoFalke)
Pull request description:
Fixes #24747
ACKs for top commit:
fanquake:
ACK fab24f8c3540b6f1a128cb9d6812df6678472b8d
vincenzopalazzo:
Code Review ACK https://github.com/bitcoin/bitcoin/pull/24753/commits/fab24f8c3540b6f1a128cb9d6812df6678472b8d
Tree-SHA512: 87a5d67a23d540cea09925a6c186303c1249d4ca244b95940c5214860bf7a849fa12cc4fcf1bb9270b1004407124b3487902969d8ae9d2b14dae1fdfb57cc7e8
|
|
fa9112aac07dc371bfda437d40eb1b841f36f392 Remove utxo db upgrade code (MarcoFalke)
Pull request description:
It is not possible to upgrade Bitcoin Core pre-segwit (pre-0.13.1) to a recent version without a full IBD from scratch after commit 19a56d1519fb493c3e1bd5cad55360b6b80fa52b (released in version 22.0).
Any Bitcoin Core version with the new database format after commit 1088b02f0ccd7358d2b7076bb9e122d59d502d02 (released in version 0.15), can upgrade to any version that is supported as of today.
This leaves the versions 0.13.1-0.14.x. Even though those versions are unsupported, some users with an existing datadir may want to upgrade to a recent version. However, it seems reasonable to simply ask them to `-reindex` to run a full IBD from scratch. This allows us to remove the utxo db upgrade code.
ACKs for top commit:
Sjors:
re-ACK fa9112aac07dc371bfda437d40eb1b841f36f392
laanwj:
Code review ACK fa9112aac07dc371bfda437d40eb1b841f36f392
Tree-SHA512: 4243bb35df9ac4892f9fad30fe486d338745952bcff4160bcb0937c772d57b13b800647da14695e21e3655e85ee0d95fa3dc7789ee309d59ad84f422297fecb8
|
|
|
|
clang-14 defaults to using DWARF-5, which breaks vlagrinds (3.18) ability
to parse debug info. Valgrind claims to support DWARF-5 from version
3.18 onwards, but maybe that only works when building with GCC.
Explicitly use DWARF-4 for now. Note that from 11.0 GCC also defaults to
using DWARF-5.
https://releases.llvm.org/14.0.0/tools/clang/docs/ReleaseNotes.html#dwarf-support-in-clang
https://www.gnu.org/software/gcc/gcc-11/changes.html
https://valgrind.org/docs/manual/dist.news.html
|
|
fa73f8a4695d5bcbd054f4c68ee2a648c808afd2 ci: Use clang-12 and libcxx-12 for msan (MarcoFalke)
Pull request description:
Run the latest sanitizers to get the most implemented features
ACKs for top commit:
fanquake:
ACK fa73f8a4695d5bcbd054f4c68ee2a648c808afd2 - `--disable-hardening` matches what was just added to oss-fuzz.
Tree-SHA512: 2e533bb9273c97600176be2e41069a03f425aa586f9f32b8ed5f0c9844215a3a41e95a8edd58d044386e350807d6a1df09008a7da35428abd185a509ca71bd82
|
|
|
|
3c3bd9022026a75e15492ba9cf8bf3b72866b9a9 test: remove lief install from multiprocess job (fanquake)
983e0a20580b413880977862e3b291c5f422e241 contrib: use LIEF 0.12.0 for symbol and security checks (fanquake)
Pull request description:
[LIEF](https://github.com/lief-project/LIEF) `0.12.0` is [now available](https://github.com/lief-project/LIEF/releases/tag/0.12.0), and includes minor changes we have upstreamed to improve support for RISC-V binaries:
* https://github.com/lief-project/LIEF/pull/562
* https://github.com/lief-project/LIEF/pull/640
Closes: #23655.
Guix Build (x86_64):
```bash
2fc504baf4f550092f05115f8c7c9046ec2988f097b55b33c4c963e02f11cfc3 guix-build-3c3bd9022026/output/aarch64-linux-gnu/SHA256SUMS.part
15b1a8a33f4b750cf8d3e2753e6fe3ca7560aeefa88c1acbaf0be412cbd81cc4 guix-build-3c3bd9022026/output/aarch64-linux-gnu/bitcoin-3c3bd9022026-aarch64-linux-gnu-debug.tar.gz
77a446792dba101afd565f0b4441c5dfe8e08bf9e4c9ea6e862a0df118a55327 guix-build-3c3bd9022026/output/aarch64-linux-gnu/bitcoin-3c3bd9022026-aarch64-linux-gnu.tar.gz
dc63f742a3d396ab2b2115f7cea4e90c127267a0c9fc2f1e9af9e052a670cd41 guix-build-3c3bd9022026/output/arm-linux-gnueabihf/SHA256SUMS.part
5214a5c3e532ddfec218354b6512cc4eedd6411a199cc2d4eed7d0ad77873a0e guix-build-3c3bd9022026/output/arm-linux-gnueabihf/bitcoin-3c3bd9022026-arm-linux-gnueabihf-debug.tar.gz
fea7b00ca6d8b7bc72c2e4e2c9e9aa94c76f9f463af82cf0bd5a6fc8951a7fe7 guix-build-3c3bd9022026/output/arm-linux-gnueabihf/bitcoin-3c3bd9022026-arm-linux-gnueabihf.tar.gz
200bf59ecaebdcb2a1302160dd47288135b8cead99e202d1a8b7da8d54a872c3 guix-build-3c3bd9022026/output/arm64-apple-darwin/SHA256SUMS.part
51c079c29966a1f76f690f28ed99d767413327422636bbbe9ca499e97954cfd4 guix-build-3c3bd9022026/output/arm64-apple-darwin/bitcoin-3c3bd9022026-arm64-apple-darwin-unsigned.dmg
2e85d002b7e993a90b23363bb01d8dca644fbabd9debb336012834abeddce024 guix-build-3c3bd9022026/output/arm64-apple-darwin/bitcoin-3c3bd9022026-arm64-apple-darwin-unsigned.tar.gz
257e272f6ed867f7634d1bba5860da855e35793646581b37518e25d1fdab48db guix-build-3c3bd9022026/output/arm64-apple-darwin/bitcoin-3c3bd9022026-arm64-apple-darwin.tar.gz
a0c755bb31763995e1d2050d5448bb98194c238fdd6b9eff901e429c9fdfa0f6 guix-build-3c3bd9022026/output/dist-archive/bitcoin-3c3bd9022026.tar.gz
cf07cfefe010a1cc58ceab5dd5361ca39d770038d73682bd60b52410708c5f35 guix-build-3c3bd9022026/output/powerpc64-linux-gnu/SHA256SUMS.part
aa93521bfbf7cf693fe56500faa6ac460bb297e5af2d8cf4e857f7ea0e92eb34 guix-build-3c3bd9022026/output/powerpc64-linux-gnu/bitcoin-3c3bd9022026-powerpc64-linux-gnu-debug.tar.gz
883c2e5fe0d8215dcc0a252cd62c8fd95fc13b31e1bd72d340dfb2e4adadfe01 guix-build-3c3bd9022026/output/powerpc64-linux-gnu/bitcoin-3c3bd9022026-powerpc64-linux-gnu.tar.gz
903666488f620a5710bc1709f52feb60d530aaba6e7e0b200692fa2945e569b8 guix-build-3c3bd9022026/output/powerpc64le-linux-gnu/SHA256SUMS.part
2dd8a3fa924111e839097da8ee12675a265e64aeeae270f1f3e86f9c9b7bd28a guix-build-3c3bd9022026/output/powerpc64le-linux-gnu/bitcoin-3c3bd9022026-powerpc64le-linux-gnu-debug.tar.gz
d93a4347ea376e02760c52bb836317fd3f9c8e78ff004d9c141ebce185f3d364 guix-build-3c3bd9022026/output/powerpc64le-linux-gnu/bitcoin-3c3bd9022026-powerpc64le-linux-gnu.tar.gz
7ee00ec4a2cd83f27d619c6983e93baa198d78167a860e8d9f4c4aa670120ab2 guix-build-3c3bd9022026/output/riscv64-linux-gnu/SHA256SUMS.part
9ad79a47c59a67f881ba2ef7a669ffb667b6e0bd13407730574dc7af542fd935 guix-build-3c3bd9022026/output/riscv64-linux-gnu/bitcoin-3c3bd9022026-riscv64-linux-gnu-debug.tar.gz
35462865447683571b006d426e532090c19ef18b9f399b84ebf37795fb3c4eaa guix-build-3c3bd9022026/output/riscv64-linux-gnu/bitcoin-3c3bd9022026-riscv64-linux-gnu.tar.gz
a5a3bb0527ded1eea3956208d1dc7289e39786594ac4cbee17f4c28573b7e4fb guix-build-3c3bd9022026/output/x86_64-apple-darwin/SHA256SUMS.part
e75435885e97dec09f3d9c51c0bd5987329a485ef26027d6e7b4cafcec20a9ab guix-build-3c3bd9022026/output/x86_64-apple-darwin/bitcoin-3c3bd9022026-x86_64-apple-darwin-unsigned.dmg
438b027186095eed1615898a403b0bdd0a686d95f0617b4065db469c8c4e732c guix-build-3c3bd9022026/output/x86_64-apple-darwin/bitcoin-3c3bd9022026-x86_64-apple-darwin-unsigned.tar.gz
1d33e0661041f00b4f224f231bbb71bda534ad8ad76a7d2b041084911cdd0814 guix-build-3c3bd9022026/output/x86_64-apple-darwin/bitcoin-3c3bd9022026-x86_64-apple-darwin.tar.gz
fc9a88c1cdf10570bc2c453c1a643a04b525155f0b98a18c90b8d5fd64fcf630 guix-build-3c3bd9022026/output/x86_64-linux-gnu/SHA256SUMS.part
435896b6a85f46a2f3f0b5f278936e84d0212ef7102787b70f139648373344d3 guix-build-3c3bd9022026/output/x86_64-linux-gnu/bitcoin-3c3bd9022026-x86_64-linux-gnu-debug.tar.gz
02c84c4c74846740b5336e8889194909bb6d638cf731851ddd8af7bbffd1ae9b guix-build-3c3bd9022026/output/x86_64-linux-gnu/bitcoin-3c3bd9022026-x86_64-linux-gnu.tar.gz
d4176cc40eaa0769410717b28637d507ddef182c73c60801f333ddd7a56b41f7 guix-build-3c3bd9022026/output/x86_64-w64-mingw32/SHA256SUMS.part
7623a149798beba635c21639975d5cbf2a417c7e8a1bf3583abe1bb20cfa1673 guix-build-3c3bd9022026/output/x86_64-w64-mingw32/bitcoin-3c3bd9022026-win64-debug.zip
a1de00c9d4315928e3ce93890009fe2ea8f3f1fa7ca63004d952192012131d20 guix-build-3c3bd9022026/output/x86_64-w64-mingw32/bitcoin-3c3bd9022026-win64-setup-unsigned.exe
82dc001a7f6d2b405b89bd343276db59954f25461d828ddf2e3c42f5ba4fe164 guix-build-3c3bd9022026/output/x86_64-w64-mingw32/bitcoin-3c3bd9022026-win64-unsigned.tar.gz
6fc6f6101672a4cee2696a1517def03b6872435d968d74a47efbb4f8c5198c03 guix-build-3c3bd9022026/output/x86_64-w64-mingw32/bitcoin-3c3bd9022026-win64.zip
```
Guix Build (arm64):
```bash
d803406d4a90f9813bff58f01fde109d77dbf5b37b1af68e7a58fb4c3041a390 guix-build-3c3bd9022026/output/arm-linux-gnueabihf/SHA256SUMS.part
25a234f4c0eb0ed280d7c24b65e2bae75d44f4fade1895d9d6d2a3880ed29557 guix-build-3c3bd9022026/output/arm-linux-gnueabihf/bitcoin-3c3bd9022026-arm-linux-gnueabihf-debug.tar.gz
0b6044ea0441536e7b2853cce5a354fff33625db8c18c70023c78a9de5364376 guix-build-3c3bd9022026/output/arm-linux-gnueabihf/bitcoin-3c3bd9022026-arm-linux-gnueabihf.tar.gz
c44810505ee8f7800488c0442edc71550a1f989598c702e9a31709b9880ef8ba guix-build-3c3bd9022026/output/arm64-apple-darwin/SHA256SUMS.part
ce9a74deac4a20a2ca4d7f8dfc242aea367c2aa55cb3b9de4e11c691ce0755bd guix-build-3c3bd9022026/output/arm64-apple-darwin/bitcoin-3c3bd9022026-arm64-apple-darwin-unsigned.dmg
341efb7b536ad6f75456dd51134e1afa4773708be2103733c48c8fb7a85df8b0 guix-build-3c3bd9022026/output/arm64-apple-darwin/bitcoin-3c3bd9022026-arm64-apple-darwin-unsigned.tar.gz
607151e3423f712ea1bb0e24b7f625290e2decfe4586adf193e3218f62e87f71 guix-build-3c3bd9022026/output/arm64-apple-darwin/bitcoin-3c3bd9022026-arm64-apple-darwin.tar.gz
a0c755bb31763995e1d2050d5448bb98194c238fdd6b9eff901e429c9fdfa0f6 guix-build-3c3bd9022026/output/dist-archive/bitcoin-3c3bd9022026.tar.gz
16f1f669f9f7a658ad25d72e628c68fefdc3469857efd06149b0ae063ad07cf2 guix-build-3c3bd9022026/output/powerpc64-linux-gnu/SHA256SUMS.part
8c36e24b12d0f3c200b51c813a6c8e85b826c994af4891a4eed16bb2447f6ae9 guix-build-3c3bd9022026/output/powerpc64-linux-gnu/bitcoin-3c3bd9022026-powerpc64-linux-gnu-debug.tar.gz
89777d8c44ec0ce3e59e74461fb7ed39b544ff1d40ed8399e3a26733fcd938af guix-build-3c3bd9022026/output/powerpc64-linux-gnu/bitcoin-3c3bd9022026-powerpc64-linux-gnu.tar.gz
f51279dc699a1b8625f8fd3e13ec1555e81be7696dc0fd88621177fb4c3353d7 guix-build-3c3bd9022026/output/powerpc64le-linux-gnu/SHA256SUMS.part
15c1aad2b67838fbf004cfd4a0926cb2e2f2d0fcee639e5cf17fec9c659be7ad guix-build-3c3bd9022026/output/powerpc64le-linux-gnu/bitcoin-3c3bd9022026-powerpc64le-linux-gnu-debug.tar.gz
102ae28c667fee645fb1541395531742b89886e153ed979639532c8cab50d24b guix-build-3c3bd9022026/output/powerpc64le-linux-gnu/bitcoin-3c3bd9022026-powerpc64le-linux-gnu.tar.gz
ccff48fd8b5a26d32d2743f430d812a449ad00ee502fc1f02538598ff7def9db guix-build-3c3bd9022026/output/riscv64-linux-gnu/SHA256SUMS.part
d038064cfb33dee85833a58ee5a7c40c94041aa0574da9fa14837b0da7a92b3a guix-build-3c3bd9022026/output/riscv64-linux-gnu/bitcoin-3c3bd9022026-riscv64-linux-gnu-debug.tar.gz
763a0c5c7492d11370a0208f3110fc73f6bac3526b401d1df3eca5cff1037a36 guix-build-3c3bd9022026/output/riscv64-linux-gnu/bitcoin-3c3bd9022026-riscv64-linux-gnu.tar.gz
14aad526acfed07e5781efa8febe37f002c5772090aad0cd98cf7f4cf0cc3177 guix-build-3c3bd9022026/output/x86_64-apple-darwin/SHA256SUMS.part
e75435885e97dec09f3d9c51c0bd5987329a485ef26027d6e7b4cafcec20a9ab guix-build-3c3bd9022026/output/x86_64-apple-darwin/bitcoin-3c3bd9022026-x86_64-apple-darwin-unsigned.dmg
742cacbb471968c396da97bbed0332220b721c552b663e931b9bfeb0e4b2f4de guix-build-3c3bd9022026/output/x86_64-apple-darwin/bitcoin-3c3bd9022026-x86_64-apple-darwin-unsigned.tar.gz
1d33e0661041f00b4f224f231bbb71bda534ad8ad76a7d2b041084911cdd0814 guix-build-3c3bd9022026/output/x86_64-apple-darwin/bitcoin-3c3bd9022026-x86_64-apple-darwin.tar.gz
b8fdd26c3aef78d13161f6119d755a853470ced695cb40dcc8ff9f0463a533e1 guix-build-3c3bd9022026/output/x86_64-linux-gnu/SHA256SUMS.part
48846704f00e92e1cb6898a13e077da5a314314d6aa694b022d0f2aa68b7128b guix-build-3c3bd9022026/output/x86_64-linux-gnu/bitcoin-3c3bd9022026-x86_64-linux-gnu-debug.tar.gz
52968c1aea392d19989613b4faf0075702c9aa834f74cd3e7a09883e201ae3e4 guix-build-3c3bd9022026/output/x86_64-linux-gnu/bitcoin-3c3bd9022026-x86_64-linux-gnu.tar.gz
a4df21e146042c6d78b0724ace37fdb05ce3a4ce8c1ed8274727b031cf53805e guix-build-3c3bd9022026/output/x86_64-w64-mingw32/SHA256SUMS.part
68f05fc5cc5e157805280bcb36fdbc6873db9e7b3afb4ddd992786db722530fc guix-build-3c3bd9022026/output/x86_64-w64-mingw32/bitcoin-3c3bd9022026-win64-debug.zip
a1de00c9d4315928e3ce93890009fe2ea8f3f1fa7ca63004d952192012131d20 guix-build-3c3bd9022026/output/x86_64-w64-mingw32/bitcoin-3c3bd9022026-win64-setup-unsigned.exe
82dc001a7f6d2b405b89bd343276db59954f25461d828ddf2e3c42f5ba4fe164 guix-build-3c3bd9022026/output/x86_64-w64-mingw32/bitcoin-3c3bd9022026-win64-unsigned.tar.gz
b644760f08a6147bccae8761e33fa13dc7f0cf391240521a81e57b437e272baa guix-build-3c3bd9022026/output/x86_64-w64-mingw32/bitcoin-3c3bd9022026-win64.zip
```
ACKs for top commit:
laanwj:
Code review ACK 3c3bd9022026a75e15492ba9cf8bf3b72866b9a9
hebasto:
ACK 3c3bd9022026a75e15492ba9cf8bf3b72866b9a9, tested that bitcoin/bitcoin#23655 has been resolved.
Tree-SHA512: abc95ab68d3973c89d421ee7a5b795f6fa802dc665db47529d5f9aee5b92b8a7b55f9a45c634b9be6e917038e67e785f1809cc189c84be13f089f4e7fa1029f9
|
|
fa76b2fbe343af5679263ac9bb3f1bd72fd82b5e ci: Avoid boost test warnings (MarcoFalke)
Pull request description:
This removes boost test warnings from the CI log.
For example https://cirrus-ci.com/task/6029158399606784?logs=ci#L4060:
```
Boost.Test WARNING: token "/tmp/cirrus-build/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src/test/test_bitcoin-addrman_tests.o" does not correspond to the Boost.Test argument
and should be placed after all Boost.Test arguments and the -- separator.
For example: test_bitcoin --random -- /tmp/cirrus-build/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src/test/test_bitcoin-addrman_tests.o
Boost.Test WARNING: token "/tmp/cirrus-build/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src/test/test_bitcoin-allocator_tests.o" does not correspond to the Boost.Test argument
and should be placed after all Boost.Test arguments and the -- separator.
For example: test_bitcoin --random -- /tmp/cirrus-build/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src/test/test_bitcoin-allocator_tests.o
Boost.Test WARNING: token "/tmp/cirrus-build/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src/test/test_bitcoin-amount_tests.o" does not correspond to the Boost.Test argument
and should be placed after all Boost.Test arguments and the -- separator.
...
ACKs for top commit:
fanquake:
ACK fa76b2fbe343af5679263ac9bb3f1bd72fd82b5e - checked that tests are also still being run in other jobs.
Tree-SHA512: c00fe1242ee6b9ef92d511f1e86305c1731d8894bb89ec8fcdf30069959831483933a93a6bfd33d9f2d15706bdeedbba29e82c409eed266abfc57aabfdaf4841
|
|
3a53927f037bb4ab72a2900c6d0a5d7577a669ed ci: Integrate ccache into MSVC build (Hennadii Stepanov)
Pull request description:
[ccache 4.6](https://ccache.dev/releasenotes.html#_ccache_4_6):
> Added support for caching calls to Microsoft Visual C++ (MSVC)
Integrated into our native Windows CI task.
[On master](url) (c109e7d51c9c5614aafce184c63b52ad2e859eb2):
![Screenshot from 2022-03-12 10-17-58](https://user-images.githubusercontent.com/32963518/158012098-7ac9d441-2eb0-481e-bcc5-3700c1ce2b15.png)
[This PR](https://cirrus-ci.com/task/6572984340054016):
![Screenshot from 2022-03-12 10-25-33](https://user-images.githubusercontent.com/32963518/158012361-d6bf88bc-f98d-4771-8b4f-31bf5673d085.png)
```
Summary:
Hits: 222 / 222 (100.0 %)
Direct: 222 / 222 (100.0 %)
Preprocessed: 0 / 0
Misses: 0
Direct: 0
Preprocessed: 0
Errors: 7
Uncacheable: 9
Primary storage:
Hits: 444 / 444 (100.0 %)
Misses: 0
Cache size (GB): 0.04 / 5.00 (0.86 %)
Use the -v/--verbose option for more details.
```
Top commit has no ACKs.
Tree-SHA512: d8cf91d8e75a5187cf456960bdf759f857fb9a9b0c4087e5e46ccbe2202aca5f1b9b38a47ec54d98e885c0f5d78de93a3188fb966fa5b346e81907c211ba1e79
|
|
|
|
|
|
This isn't required to enable sqlite wallets, as support is
automatically detected when sqlite is available.
|
|
This job doesn't run any security / symbol checks, so lief isn't needed.
|
|
|
|
|
|
|
|
fae20e6b50306f91c74037e915aa0ab75a0a6b3b Revert "Avoid the use of P0083R3 std::set::merge" (MarcoFalke)
fab53b5fd45cf55a1d4d313e46ffce7396c9590e ci/doc: Set minimum required clang/libc++ version to 8.0 (MarcoFalke)
Pull request description:
This is not for 23.0, but for 24.0. It comes with the following benefits:
* Can use C++17 P0083R3 std::set::merge from libc++ 8.0
* No longer need to provide support for clang-7, which already fails to compile on some architectures (https://github.com/bitcoin/bitcoin/issues/21294#issuecomment-998098483)
This should be fine, given that all supported operating systems ship with at least clang-10:
* CentOS 8: clang-12
* Stretch: https://packages.debian.org/stretch/clang-11
* Buster: https://packages.debian.org/buster-backports/clang-11
* Bionic: https://packages.ubuntu.com/bionic-updates/clang-10
* Focal: https://packages.ubuntu.com/focal/clang-10
ACKs for top commit:
fanquake:
ACK fae20e6b50306f91c74037e915aa0ab75a0a6b3b - I think this is fine to do. I would be surprised if in another 6 months time someone was stuck on a system we supported, needing to compile Core, and only had access to Clang 7 or older. As mentioned in the PR description, all systems we currently support, already support multiple newer versions of Clang.
hebasto:
ACK fae20e6b50306f91c74037e915aa0ab75a0a6b3b, I have reviewed the code and it looks OK, I agree it can be merged.
Tree-SHA512: 3b4c6c130ff40dd7e84934af076863415e5dd661d823c72e3e3832566c65be6e877a7ef9164bbcf394bcea4b897fc29a48db0f231c22ace0e2c9b5638659a628
|
|
|
|
Self-compiled BDB was added to this job as opposed to using depends BDB
due to linking issues, however the compiled BDB is not actually used.
Remove it for now, given we don't actually lose any coverage (note that
BDB is also no used the MSAN fuzz job), and in future, we can use
depends BDB.
|
|
|
|
956f7322f60db7b8be551c9074b4c633e514079d build: Bump minimum Qt version to 5.11.3 (Hennadii Stepanov)
e22d10b936eb7563b2b6611332d9e4c73a2f59d4 ci: Switch from bionic to buster (Hennadii Stepanov)
Pull request description:
The current minimum Qt version is 5.9.5 which has been set in bitcoin/bitcoin#21286.
Distro support:
- centos 7 -- unsupported since bitcoin/bitcoin#23511
- centos 8 -- [5.15.2](http://mirror.centos.org/centos/8/AppStream/x86_64/os/Packages/qt5-qtbase-5.15.2-3.el8.x86_64.rpm)
- buster -- [5.11.3](https://packages.debian.org/buster/libqt5core5a)
- bullseye -- [5.15.2](https://packages.debian.org/bullseye/libqt5core5a)
- _bionic_ -- [5.9.5](https://packages.ubuntu.com/bionic/libqt5core5a)
- focal -- [5.12.8](https://packages.ubuntu.com/focal/libqt5core5a)
As another Ubuntu LTS is coming soon, it seems unreasonable to stick to Qt 5.9 which support [ended](https://www.qt.io/blog/2017/06/07/renewed-qt-support-services) on 2020-05-31. Anyway, it's still possible to build Bitcoin Core GUI with depends on bionic system.
Bumping the minimum Qt version allows to make code safer and more reliable, e.g.:
- functor-parameter overload of [`QMetaObject::invokeMethod`](https://doc.qt.io/qt-5/qmetaobject.html#invokeMethod-4)
- fixed https://bugreports.qt.io/browse/QTBUG-10907
An example of the patch using the functor-overload of `QMetaObject::invokeMethod`:
```diff
--- a/src/qt/walletmodel.cpp
+++ b/src/qt/walletmodel.cpp
@@ -349,7 +349,7 @@ bool WalletModel::changePassphrase(const SecureString &oldPass, const SecureStri
static void NotifyUnload(WalletModel* walletModel)
{
qDebug() << "NotifyUnload";
- bool invoked = QMetaObject::invokeMethod(walletModel, "unload");
+ bool invoked = QMetaObject::invokeMethod(walletModel, &WalletModel::unload);
assert(invoked);
}
```
It uses the same new syntax as signal-slot connection with compile-time check. Also see bitcoin/bitcoin#16348.
This PR is intended to be merged early [after](https://github.com/bitcoin/bitcoin/issues/22969) branching `23.x` off.
ACKs for top commit:
MarcoFalke:
cr ACK 956f7322f60db7b8be551c9074b4c633e514079d
fanquake:
ACK 956f7322f60db7b8be551c9074b4c633e514079d
Tree-SHA512: 3d652bcdcd990ce785ad412ed70234d4f27743895e535a53ed44b35d4afc3052e066c4c84f417e30bc53d0a3dd9ebed62444c57b7c765cb1e9aa687fbf866877
|
|
|
|
2c03cec2ff8cdbfd5da92bfb507d218e5c6435b0 ci: Build bitcoin-chainstate (Carl Dong)
095aa6ca37bf0bd5c5e221bab779978a99b2a34c build: Add example bitcoin-chainstate executable (Carl Dong)
Pull request description:
Part of: #24303
This PR introduces an example/demo `bitcoin-chainstate` executable using said library which can print out information about a datadir and take in new blocks on stdin.
Please read the commit messages for more details.
-----
#### You may ask: WTF?! Why is `index/*.cpp`, etc. being linked in?
This PR is meant only to capture the state of dependencies in our consensus engine as of right now. There are many things to decouple from consensus, which will be done in subsequent PRs. Listing the files out right now in `bitcoin_chainstate_SOURCES` is purely to give us a clear picture of the task at hand, it is **not** to say that these dependencies _belongs_ there in any way.
### TODO
1. Clean up `bitcoin-chainstate.cpp`
It is quite ugly, with a lot of comments I've left for myself, I should clean it up to the best of my abilities (the ugliness of our init/shutdown might be the upper bound on cleanliness here...)
ACKs for top commit:
ajtowns:
ACK 2c03cec2ff8cdbfd5da92bfb507d218e5c6435b0
ryanofsky:
Code review ACK 2c03cec2ff8cdbfd5da92bfb507d218e5c6435b0. Just rebase, comments, formatting change since last review
MarcoFalke:
re-ACK 2c03cec2ff8cdbfd5da92bfb507d218e5c6435b0 🏔
Tree-SHA512: 86e7fb5718caa577df8abc8288c754f4a590650d974df9d2f6476c87ed25c70f923c4db651c6963f33498fc7a3a31f6692b9a75cbc996bf4888c5dac2f34a13b
|
|
and older
774323e378acea998069980edf50e1a26f4b6b9e ci: Force `--enable-external-signer` to prevent future regressions (Hennadii Stepanov)
69978858a4d8a9c34070f96133b8f95737a6505b build: Fix Boost.Process check for Boost 1.73 and older (Hennadii Stepanov)
2199ef79cba865af7949c3a55938ad54519ca5b8 build: Fix a non-portable use of `test` (Hennadii Stepanov)
d436c488d4216298016b09f8f97e10eada489bda build, refactor: Replace tabs with spaces (Hennadii Stepanov)
Pull request description:
On master (5f44c5c428b696af4214b2519cb2bbeb0e4a1027) Boost.Process check false fails without the `-lpthread` flag.
```
$ grep -C 2 pthread_detach config.log
/usr/bin/ld: /tmp/cczCQfQv.o: in function `boost::asio::detail::posix_global_impl<boost::asio::system_context>::~posix_global_impl()':
conftest.cpp:(.text._ZN5boost4asio6detail17posix_global_implINS0_14system_contextEED2Ev[_ZN5boost4asio6detail17posix_global_implINS0_14system_contextEED5Ev]+0xa3): undefined reference to `pthread_join'
/usr/bin/ld: conftest.cpp:(.text._ZN5boost4asio6detail17posix_global_implINS0_14system_contextEED2Ev[_ZN5boost4asio6detail17posix_global_implINS0_14system_contextEED5Ev]+0xc4): undefined reference to `pthread_detach'
collect2: error: ld returned 1 exit status
configure:26674: $? = 1
```
Not required for Boost 1.74+.
ACKs for top commit:
laanwj:
Code review ACK 774323e378acea998069980edf50e1a26f4b6b9e, is a bugfix/workaround, seems fine to merge last minute for 23.0.
Tree-SHA512: 2a9d4b67fd8910e107af972d8c223286b7c933bc310616f86c8b6d8c903438916980fc76bd7e37f2698f6ce5361dc706cbf2933d1ac2c081bcabe1b83ca7d6b6
|
|
backwards compatibility test
24cec4b5c02e12cf0b6b56ba5055b8f5758627a5 test: Fix intermittent test failure in feature_backwards_compatibility (MarcoFalke)
d8b705f1caeb3b4a6790cb26e4e5584ca791d965 test: previous releases: add v22.0 (Sjors Provoost)
40849eebd9c7a92f6b670b30c9338358d8306cfe test: bump sandbox argument minimum version (Sjors Provoost)
8a57a06a5062dd8dfdefca4e404d0ddbd2a3da1d test: previous releases: add v0.21.0 (Sjors Provoost)
8cba75f5fd758d7e59bd0a84dbd17b59fb8a5dd2 test: v0.20.1 backwards compatibility (Sjors Provoost)
0e4b695b6aee276005dc3dd6faaa1d9cb3abeacf test: backwards compatibility: misc fixes (Sjors Provoost)
76557cbe4cd067feb04bd270aa6ba532eae84963 test: Remove i686 from test/get_previous_releases.py (MarcoFalke)
Pull request description:
This also simplifies the tests a bit.
ACKs for top commit:
ryanofsky:
Code review ACK 24cec4b5c02e12cf0b6b56ba5055b8f5758627a5. Only change since last review is rebasing and adding comment and whitelist args.
Tree-SHA512: 85a603ddd70fd8f0180d00fb84eb2ad2f92d6199b7d3f7c1abd660bfba53f869faf40f1a4183a8ce15dbd496ee3132d879c1258651c9d443ece69e5fe328bd26
|
|
|
|
branch only"
fa27745ccbdf8df7949a2e79dba18de49dc89169 ci: Bump fuzz tasks to jammy (MarcoFalke)
fab8cd5f8764883dc48695c0e0916bae42f1cfdc Revert "ci: Run fuzzer task for the master branch only" (MarcoFalke)
Pull request description:
This reverts commit 5a9e255e5a324e7aa0b63a9634aa3cfda9a300bd.
I think we should attempt to maintain the fuzz tasks for release branches as well.
If it is too difficult for one branch, it could make sense to disable it for that branch, but not for all branches unconditionally.
Also, bump to jammy.
ACKs for top commit:
fanquake:
ACK fa27745ccbdf8df7949a2e79dba18de49dc89169 - we'll see how we go with the 23.x release branch.
Tree-SHA512: d6d08e7dce0884b556c51ff1896aebbbb5a805c22decd58af81a04192d19876978696017b489ec55886ddfd5c022963baaab5f11022369ae5291016826ff8017
|
|
cross-compilation CI
a1515cdd9683942d733ff509b785cb3ca73c7a30 ci: use Ubuntu Jammy for Windows CI (fanquake)
Pull request description:
This means we'll compile using [GCC 10.3.x](https://packages.ubuntu.com/jammy/g++-mingw-w64) and [mingw-w64 8.0.0](https://packages.ubuntu.com/jammy/mingw-w64) which better matches our Guix release environment.
ACKs for top commit:
MarcoFalke:
cr ACK a1515cdd9683942d733ff509b785cb3ca73c7a30
hebasto:
ACK a1515cdd9683942d733ff509b785cb3ca73c7a30, I have reviewed the code and it looks OK, I agree it can be merged.
Tree-SHA512: a57cce1874324c9dd00e5d8989996d214facbdd561440471c15e6cc1808bca1c6fd758abe7a1b87378b2e7f9c25e7c9d8242df911cd1ef6cfbe49718adc3be5d
|
|
This means we'll compile using GCC 10.3.x and mingw-w64 8.0.0 which
better matches our Guix release environment.
|
|
These are present in the other MSAN job.
|
|
No-longer needed after #24301.
|
|
...to make sure that the linker errors that arise from coupling
regressions are caught by CI.
Adding to the "no wallet" ci job as suggested by MarcoFalke.
|
|
|
|
This gives them a newer clang version, which may have more sanitizers
available.
|
|
This change is a prerequisite for the following bumping Qt minimum
version to 5.11.3. It is required as bionic has Qt 5.9.5.
Effectively, this also changes:
- gcc from 8.4.0 to 8.3.0
- python from 3.6.5 to 3.7.3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-BEGIN VERIFY SCRIPT-
sed -i "s/DOCKER_EXEC/CI_EXEC/g" $(git grep -l DOCKER_EXEC)
-END VERIFY SCRIPT-
|
|
|
|
This should be sufficient to support building for Apple ARM when
cross-compiling.
|
|
|
|
only when run fuzzing
0b7c55f157514e1845934fff3f9c66e862c526ca ci: Clone entire bitcoin-core/qa-assets repo only when run fuzzing (Hennadii Stepanov)
Pull request description:
This PR speeds up CI tasks that run unit tests but do not run fuzzing.
On my machine:
```
$ time git clone --depth=1 https://github.com/bitcoin-core/qa-assets
Cloning into 'qa-assets'...
remote: Enumerating objects: 289750, done.
remote: Counting objects: 100% (289750/289750), done.
remote: Compressing objects: 100% (207687/207687), done.
remote: Total 289750 (delta 16863), reused 275449 (delta 12092), pack-reused 0
Receiving objects: 100% (289750/289750), 1.39 GiB | 4.79 MiB/s, done.
Resolving deltas: 100% (16863/16863), done.
Updating files: 100% (294515/294515), done.
real7m43,417s
user2m39,771s
sys0m43,272s
```
ACKs for top commit:
MarcoFalke:
cr ACK 0b7c55f157514e1845934fff3f9c66e862c526ca
Tree-SHA512: 8f8dd63e361c3d9c64a2b31f207f59beea7d2e4142363f7762ec724a61152323fda0c6b98a36386e15f2ca4ef3f7412da763baef65e862fc7f48cdeda8c40e09
|
|
|
|
Co-authored-by: Pavol Rusnak <pavol@rusnak.io>
|
|
1362d6173f863428de17c4017f4e3bb6883b0be8 scripted-diff: Insert missed copyright headers (Hennadii Stepanov)
f47dda2c58b5d8d623e0e7ff4e74bc352dfa83d7 scripted-diff: Bump copyright headers (Hennadii Stepanov)
c29105efdc3daac0e8c43138f7c0a50535556455 script: Fix copyright_header.py (Hennadii Stepanov)
Pull request description:
This PR is an alternative to #23903.
It bumps the existing copyright headers as we did every year, and adds the missed copyright headers.
A small fix has been applied to the `copyright_header.py` in order to prevent such weird bumping as `2021` --> `2021-2017`.
ACKs for top commit:
MarcoFalke:
ACK 1362d6173f863428de17c4017f4e3bb6883b0be8
Tree-SHA512: 204d970fe8c51546b26b8f03fe4297db8a9bef5101df851540b7b9eddbd3a09677ee81fdd882c60937d732407f42c9883165bd978272200cff8f90190f075905
|