aboutsummaryrefslogtreecommitdiff
path: root/ci
AgeCommit message (Collapse)Author
2024-04-24Merge bitcoin/bitcoin#29837: ci: disable `_FORTIFY_SOURCE` with MSANmerge-script
08ff17d1420a3d1c14c6b1a5436678fbb1dd9cbc ci: disable _FORTIFY_SOURCE with MSAN (fanquake) Pull request description: By undefining `_FORTIFY_SOURCE` we can drop`--disable-hardening`. ACKs for top commit: maflcko: lgtm ACK 08ff17d1420a3d1c14c6b1a5436678fbb1dd9cbc hernanmarino: utACK 08ff17d1420a3d1c14c6b1a5436678fbb1dd9cbc . Relevant CI test seems to be working OK. Tree-SHA512: 948fd075aa648a7e34c37376fb913074ebc07d1c3cb0737d5fcbe7eac0b35c4152139773e4515ccb80f2d11b1ced6c6984da1757c2bcf8dd90e8ff6f664dae8e
2024-04-21ci: Drop no longer needed `-I` flag in "tidy" taskHennadii Stepanov
2024-04-15Merge bitcoin/bitcoin#29848: ci: use Clang 16 for Valgrindmerge-script
ad21f2294821d7c436e58a8f199fb555b11a56ad ci: use clang-16 for Valgrind (fanquake) Pull request description: Switch to Ubuntu Noble. Valgrind 3.19 -> 3.22 Clang 14 -> Clang 16 ACKs for top commit: maflcko: lgtm ACK ad21f2294821d7c436e58a8f199fb555b11a56ad Tree-SHA512: ec79ef9faaec97e34529ae36fff7798f859daca6a1e3563bc50e5d56a56ee4525c736976158a6e950c5b9f810c498d54ab128df984f42441e706033906c2ea3e
2024-04-14ci: use clang-16 for Valgrindfanquake
Switch to Ubuntu Noble.
2024-04-12ci: Bump s390x to ubuntu:24.04MarcoFalke
Re-enable feature_init
2024-04-09ci: disable _FORTIFY_SOURCE with MSANfanquake
2024-04-09Revert "ci: Temporarily disable bpfcc-tools"fanquake
This reverts commit fac012c7262f036e9b6f5800e57dcd63870a871c.
2024-04-06ci: remove --with-asm usage (secp256k1)fanquake
2024-04-06ci: use LLVM 18.1.3 in MSAN jobsfanquake
2024-04-05Merge bitcoin/bitcoin#29800: ci: Drop duplicated compiler flagsfanquake
a3485af67da4949c72c45acc608f8746ed0e0848 ci: Drop duplicated compiler flags (Hennadii Stepanov) Pull request description: On the master branch @ 0d509bab45d292caeaf34600e57b5928757c6005, it is easy to check the _"Options used to compile and link"_ section in the `configure` script output and observe duplicated compiler flags. This PR cleans such cases up. ACKs for top commit: maflcko: re-ACK a3485af67da4949c72c45acc608f8746ed0e0848 fanquake: ACK a3485af67da4949c72c45acc608f8746ed0e0848 - no-longer a change in behaviour. Tree-SHA512: 7e644fcfad7be48af3b18edd2994c0c78a21ac3f9fff497724be80f74c9e859d156de15ca4024c5c50d1080435576ce63402b48aba5c2fd556e2ed7e318e0e34
2024-04-05ci: Drop duplicated compiler flagsHennadii Stepanov
2024-04-04Merge bitcoin/bitcoin#29788: ci: Temporarily disable bpfcc-toolsfanquake
fac012c7262f036e9b6f5800e57dcd63870a871c ci: Temporarily disable bpfcc-tools (MarcoFalke) Pull request description: This works around package install errors, such as https://github.com/bitcoin/bitcoin/runs/23354020361. Should be possible to reproduce locally via `apt update && apt install bpfcc-tools` on noble: ``` python3-bpfcc : Depends: libbpfcc (>= 0.29.1+ds-1ubuntu4) but it is not going to be installed ACKs for top commit: hebasto: ACK fac012c7262f036e9b6f5800e57dcd63870a871c, I have reviewed the code, it looks OK. And CI is green. TheCharlatan: ACK fac012c7262f036e9b6f5800e57dcd63870a871c Tree-SHA512: 369e89bc0fbf4d75455c7c047ae904849267f82e647eeadd7ee6045393bd9812a5e682a58eb8d2ccd8c89a030e6665f054596fdcd0708f591ed4c693398125d1
2024-04-02ci: Temporarily disable bpfcc-toolsMarcoFalke
2024-04-01Merge bitcoin/bitcoin#29648: Remove libbitcoinconsensusfanquake
80f8b92f4f2311b9e9a25361c9dd973244e6f95c remove libbitcoinconsensus (fanquake) Pull request description: This was deprecated in `v27.0`, for removal in `v28.0`. See discussion in PR #29189. ACKs for top commit: theuni: Concept ACK and light review ACK 80f8b92f4f2311b9e9a25361c9dd973244e6f95c. My only hesitation here is that (afaics?) there's now nothing keeping undesired features like threading or globals from working their way into the interpreter in future commits. m3dwards: Concept ACK https://github.com/bitcoin/bitcoin/pull/29648/commits/80f8b92f4f2311b9e9a25361c9dd973244e6f95c TheCharlatan: ACK 80f8b92f4f2311b9e9a25361c9dd973244e6f95c hebasto: ACK 80f8b92f4f2311b9e9a25361c9dd973244e6f95c, I have reviewed the code and it looks OK. Tree-SHA512: 17a62118aeb088f2695c892bb32794dfea3061e3cb7d9e8e9f1c06c3ff6f63a7587fa532e37edbb91fbc5a19b12c9a0f8e05fa9e8864aa07f92665375d847e80
2024-04-01Merge bitcoin/bitcoin#29765: ci: Use clang-18fanquake
fa75220ac5e0ea401a26dd2f16a88627e51c240a ci: Use clang-18 in asan/fuzz/tsan task (MarcoFalke) fad23a06469607689c4f637bb407c96af4902a27 ci: Bump clang+llvm in i686_multiprocess task (MarcoFalke) Pull request description: Use clang-18, which comes with bugfixes and sanitizer upgrades. ACKs for top commit: fanquake: ACK fa75220ac5e0ea401a26dd2f16a88627e51c240a Tree-SHA512: da251eb55d3a7e537110b03fb0fc10fc6e2f4406d55bdb33bdc91459daabfd3b8d1d20859a66718bb1b09126e11495f6584c52504a85eb09bde9eafafdaf0b0b
2024-04-01Merge bitcoin/bitcoin#29764: doc: Suggest installing dev packages for ↵fanquake
debian/ubuntu qt5 build 6c2990416e2dabd845f5ec50ec6ff138136c9b08 ci: Pull in qtbase5-dev instead of seperate low-level libraries (laanwj) a3c6a13cb23999fa70c428f1229acbf1b3883f11 doc: Suggest installing dev packages for debian/ubuntu qt5 build (laanwj) Pull request description: Pretty much all library packages were renamed in the 64-bit time_t migration to add `t64` (even on 64-bit platforms). Instead of complicating the doc with conditional package names, suggest installing the `-dev` packages which still have the same name, and besides that, are the right way to go about it as they contain the "user facing" C++ headers needed to build against Qt5. They pull in the necessary library packages through dependencies. For Fedora, devel packages are already suggested. This affects Ubuntu 24.04 and Debian Testing. ACKs for top commit: maflcko: lgtm ACK 6c2990416e2dabd845f5ec50ec6ff138136c9b08 hebasto: ACK 6c2990416e2dabd845f5ec50ec6ff138136c9b08. Tree-SHA512: dae21b7d08fdb221b7b72c323fdaaa6d1a8b014f90e24d2beae64b1ae229fdbeb93d726a61e826447813e52a3cb9775426aefc6c44a4c5ccc541afabb89cb135
2024-04-01Merge bitcoin/bitcoin#29738: doc: fix typosfanquake
601edd8ee8810b5c6b2184ce8d7f7b45e70913cf ci: use codespell 2.2.6 (fanquake) 52fa0d285f4e8109ebdd8b1e43c897f6bfaa8e65 doc: fix some typos (crazeteam) b5ed13a2408a141d737341137b26b2f0249c8167 doc: Fix typos (RoboSchmied) Pull request description: Combines the recent PRs to fix typos so they can be merged. ACKs for top commit: brunoerg: crACK 601edd8ee8810b5c6b2184ce8d7f7b45e70913cf tdb3: crACK 601edd8ee8810b5c6b2184ce8d7f7b45e70913cf kristapsk: cr utACK 601edd8ee8810b5c6b2184ce8d7f7b45e70913cf Tree-SHA512: d054b1dad1336d6b9291cc5d5252d4debf6424a993d4edd6a97d7c15055a7fc48a333d30967f72e7dc9c6c1d9a9038ca8bb5e219c529f4c2365ea48404a508d0
2024-03-29ci: Use clang-18 in asan/fuzz/tsan taskMarcoFalke
2024-03-29ci: Bump clang+llvm in i686_multiprocess taskMarcoFalke
2024-03-29ci: Pull in qtbase5-dev instead of seperate low-level librarieslaanwj
Fix CI build for t64 migration.
2024-03-26ci: Print tsan errors to stderrMarcoFalke
2024-03-26ci: use codespell 2.2.6fanquake
2024-03-21lint: Fix COMMIT_RANGE issuesMarcoFalke
2024-03-19ci: Bump msan to llvm-18MarcoFalke
2024-03-19Merge bitcoin/bitcoin#29094: ci: Better tidy errorsfanquake
fae70ba00da27ca5734c88e9964c872c7faa0f78 ci: Better tidy errors (MarcoFalke) Pull request description: Currently tidy errors are not nice, because the user may have to scroll up to see them in a large block of text. See for example (before) https://github.com/bitcoin/bitcoin/runs/19670551485 Fix that by `tee`ing the output to a file and summarizing the errors in the end again. See for example (after): https://github.com/bitcoin/bitcoin/runs/22647850662 ACKs for top commit: hebasto: ACK fae70ba00da27ca5734c88e9964c872c7faa0f78, logs with errors look cleaner. TheCharlatan: ACK fae70ba00da27ca5734c88e9964c872c7faa0f78 Tree-SHA512: dcaea557fed40089409d16ce2cbaa8a9cfbf047f601d5daadfee0823b0eed7badc12d803addc0b7b6bb3f1eaf5c787fccb2488475d32c4efd80835f386f761dd
2024-03-18remove libbitcoinconsensusfanquake
This was deprecated in v27.0, for removal in v28.0. See discussion in PR #29189.
2024-03-18Merge bitcoin/bitcoin#29669: ci: Drop `--enable-c++20` optionfanquake
64722e4359bc101682d73e5a1a04ef2c68716d4c ci: Drop `--enable-c++20` option (Hennadii Stepanov) Pull request description: This option has ceased to exist since https://github.com/bitcoin/bitcoin/pull/28349. ACKs for top commit: maflcko: ACK 64722e4359bc101682d73e5a1a04ef2c68716d4c Tree-SHA512: bd392c331f775605615e1b236682269b83a1e6363a4d3f09c4d8d54495cf3d22973a921ebf6b8a9f813ba6c024d3324761f3291aaf7f473995f5eaa4c195bc43
2024-03-18Merge bitcoin/bitcoin#29659: ci: Bump `TIDY_LLVM_V`fanquake
636c9862cfc8b3facc84eb62b51e18877f2022a9 ci: Bump `TIDY_LLVM_V` (Hennadii Stepanov) Pull request description: This PR switches to the latest [IWYU 0.22](https://github.com/include-what-you-use/include-what-you-use/releases/tag/0.22), which is compatible with Clang 18. ACKs for top commit: fanquake: ACK 636c9862cfc8b3facc84eb62b51e18877f2022a9 Tree-SHA512: 78ce89244c5e487dd1be8b4bd2ca6f06d19b04b78289ebc21985110574053545dcce5eb622edf2bede2cf7bb58360170e976d30a4484a127d34dd17b1c604e9c
2024-03-17ci: Drop `--enable-c++20` optionHennadii Stepanov
This option has ceased to exist since https://github.com/bitcoin/bitcoin/pull/28349.
2024-03-15ci: Bump `TIDY_LLVM_V`Hennadii Stepanov
This change switches to the latest IWYU 0.22, which is compatible with Clang 18.
2024-03-14build: Bump g++ minimum supported version to 11MarcoFalke
2024-03-14ci: Better tidy errorsMarcoFalke
2024-03-12ci: use Debian Bookworm (GCC 12) for ARM ci jobfanquake
Co-authored-by: MarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz>
2024-03-12ci: use Debian Bookworm (GCC 12) for win64 jobfanquake
Co-authored-by: MarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz>
2024-03-12Merge bitcoin/bitcoin#29610: ci: Fix "macOS native" jobfanquake
acc06bc91f80ddf4e015dcdf0b984bbdbfcb5ca3 ci, macos: Use `--break-system-packages` with Homebrew's python (Hennadii Stepanov) ae5f72027f1776f815a6637c594f0f725a6ccb55 ci: Add workaround for Homebrew's python link error (Hennadii Stepanov) Pull request description: Homebrew [promoted](https://github.com/Homebrew/homebrew-core/pull/150390) `python@3.12` to the default `python3`. Now, our "macOS native" CI job is facing the following issues: 1. Installing `qt@5` [requires](https://github.com/bitcoin/bitcoin/actions/runs/8216848118/job/22471875454#step:4:51) re-installing `python@3.12`: ``` ==> Fetching dependencies for qt@5: readline, python@3.12 and gettext ``` 2. Re-installing `python@3.12` [fails](https://github.com/bitcoin/bitcoin/actions/runs/8216848118/job/22471875454#step:4:127) due to symbolic link conflicts on macOS `x86_64`: ``` ==> Pouring python@3.12--3.12.2_1.ventura.bottle.tar.gz Error: The `brew link` step did not complete successfully ``` 3. Homebrew's `python@3.12` is marked as externally managed (according to PEP 668), necessitating different approaches for installing Python packages. This pull request resolves all the issues mentioned above. ACKs for top commit: m3dwards: reACK https://github.com/bitcoin/bitcoin/pull/29610/commits/acc06bc91f80ddf4e015dcdf0b984bbdbfcb5ca3 to get the CI passing again. Tree-SHA512: 82cf72bff328f1e0725342431ac14ad4bae7a758186d97db6c7a558e4b661dcbf3fabe536978e26e709c5f6f7f5c11aac46642634c6685f1291592d8d825ad87
2024-03-11ci, macos: Use `--break-system-packages` with Homebrew's pythonHennadii Stepanov
Homebrew's python@3.12 is marked as externally managed (PEP 668), necessitating different approaches for installing Python packages. For more details, please refer to https://github.com/orgs/Homebrew/discussions/3404.
2024-02-29ci: add --v2transport to an existing CI jobMartin Zumsande
2024-02-26Merge bitcoin/bitcoin#29408: lint: Check for missing bitcoin-config.h includesfanquake
fa58ae74ea67485495dbc2d003adfbca68d6869b refactor: Add missing include for USE_BDB, USE_SQLITE to bench/wallet_ismine.cpp (MarcoFalke) fa31908ea848488ff842f1b9fce6235bb8855ec7 lint: Check for missing or redundant bitcoin-config.h includes (MarcoFalke) fa63b0e351dee4782ee19ad46603957ef8d020eb lint: Make lint error easier to spot in output (MarcoFalke) fa770fd368e32950dd727e111a5d66e1dbb93716 doc: Add missing RUST_BACKTRACE=1 (MarcoFalke) fa100512677587b4e84a8be2235cf6d49b6a0134 lint: Add get_subtrees() helper (MarcoFalke) Pull request description: Missing `bitcoin-config.h` includes are problematic, because the build could silently pass, but produce an unintended result. For example, a slower fallback algorithm could be picked, even though `bitcoin-config.h` indicates that a faster feature is available and should be used. As the build succeeds silently, this problem is not possible to detect with iwyu. Thus, fix this by using a linter based on grepping the source code. ACKs for top commit: theuni: Weak ACK fa58ae74ea67485495dbc2d003adfbca68d6869b. TheCharlatan: ACK fa58ae74ea67485495dbc2d003adfbca68d6869b hebasto: ACK fa58ae74ea67485495dbc2d003adfbca68d6869b, tested on Ubuntu 23.10 -- it catches bugs properly. I didn't review rust code changes. Tree-SHA512: cf4346f81ea5b8c215da6004cb2403d1aaf569589613c305d8ba00329b82b3841da94fe1a69815ce15f2edecbef9b031758ec9b6433564976190e3cf91ec8181
2024-02-21ci: avoid running git diff after patchingRyan Ofsky
Drop `git diff` command so it is easier to run CI locally if git checkout is a worktree. Currently it fails because the directory is not recognized as a git repository. The `git diff` command was added recently in #28359 commit fa07ac48d804beac38a98d23be2167f78cadefae and can be avoided just by teeing the patch to stdout
2024-02-21Merge bitcoin/bitcoin#29456: docs: ci multi-arch requires qemufanquake
540282905dc6137a307273188d6d9291809f0ee9 docs: ci multi-arch requires qemu (Max Edwards) Pull request description: On a fresh Debian system qemu isn't installed and therefore the multi-architecture CI system doesn't run. This documentation notes that qemu is required and how to install it. ACKs for top commit: maflcko: lgtm ACK 540282905dc6137a307273188d6d9291809f0ee9 willcl-ark: utACK 540282905dc6137a307273188d6d9291809f0ee9 Tree-SHA512: 903c12cf7b16f2146b99a952577c5550d60faf65f9e72b9f4d9479b52228118ab46349e5130de5281b39da05d3bc0b4ae8a8165601e62ce145647a98ef197131
2024-02-20lint: Check for missing or redundant bitcoin-config.h includesMarcoFalke
2024-02-20docs: ci multi-arch requires qemuMax Edwards
2024-02-20Merge bitcoin/bitcoin#29441: ci: Avoid CI failures from temp env file reusefanquake
fa91bf2559d2e839592bf1dc1d423d5fb1c3573e ci: Skip git install if it is already installed (MarcoFalke) c65fde483133a04964cc8757c96005b78d9e8ca8 ci: vary /tmp/env (Sjors Provoost) Pull request description: * Currently, running separate CI tasks at the same time may intermittently fail, because they race to read/write `/tmp/env`. Fix this by adding `$CONTAINER_NAME` to the file name. * Also, add `$USER`, while touching the line, to allow different users to run the same CI task at the same time. * Also, skip the git install if there is no need. Ref: https://github.com/bitcoin/bitcoin/pull/29274 ACKs for top commit: Sjors: ACK fa91bf2559d2e839592bf1dc1d423d5fb1c3573e BrandonOdiwuor: ACK fa91bf2559d2e839592bf1dc1d423d5fb1c3573e hebasto: ACK fa91bf2559d2e839592bf1dc1d423d5fb1c3573e. Tree-SHA512: 9a8479255a2afb6618f9d0796488d9430ba95266b90ce39536a9817c1974ca4049beeaab5355a38b25171f76fc386dbec06b1919aaa079f08a5a0c0a146232c8
2024-01-26ci: Use DEBUG=1 in depends for MSAN jobsfanquake
Followup to #27448, which was deffered, as it produces #27448 and another similar issue in sqlite, see comment here: https://github.com/bitcoin/bitcoin/pull/27448#issuecomment-1514902450.
2024-01-26ci: use LLVM 17.0.6 in MSAN jobsfanquake
2024-01-18ci: vary /tmp/envSjors Provoost
2024-01-16ci: cleanup C*FLAG usage in Valgrind jobsfanquake
This was being used to avoid a missing -O2. After the previous commits, this is no-longer an issue.
2024-01-15Merge bitcoin/bitcoin#29237: depends: Allow PATH with spaces in directory names.fanquake
4756114e505cff8848fb6344ef9a48d8822066c1 [depends] Allow PATH with spaces in directory names. (Mark Friedenbach) Pull request description: The goal of this PR is to help close https://github.com/bitcoin/bitcoin/pull/28733. I reverted the change on `depends/config.guess` based on the feedback provided in the previous PR. I've also incorporated the test mentioned by maflcko ACKs for top commit: maflcko: lgtm ACK 4756114e505cff8848fb6344ef9a48d8822066c1 hebasto: ACK 4756114e505cff8848fb6344ef9a48d8822066c1, successfully built depends on Ubuntu 22.04. TheCharlatan: ACK 4756114e505cff8848fb6344ef9a48d8822066c1 Tree-SHA512: ee257f6efd235839156bc236384f08d77b91debc3c257168368a71e70742639f28a3289572b8693609c1109062dc9968e461103d1f4f5679906506e94b54e649
2024-01-12Merge bitcoin/bitcoin#29208: build: Bump clang minimum supported version to 14fanquake
aaaace2fd1299939c755c281b787df0bbf1747a0 fuzz: Assume presence of __builtin_*_overflow, without checks (MarcoFalke) fa223ba5eb764fe822229a58d4d44d3ea83d0793 Revert "build: Fix undefined reference to __mulodi4" (MarcoFalke) fa7c751bd923cd9fb4790fe7fb51fafa2faa1db6 build: Bump clang minimum supported version to 14 (MarcoFalke) Pull request description: Most supported operating systems ship with clang-14 (or later), so bump the minimum to that and allow new code to drop workarounds for previous clang bugs. For reference: * https://packages.debian.org/bookworm/clang (`clang-14`) * https://packages.ubuntu.com/jammy/clang (`clang-14`) * CentOS-like 8/9 Stream: All Clang versions from 15 to 17 * FreeBSD 12/13: All Clang versions from 15 to 16 * OpenSuse Tumbleweed ships with https://software.opensuse.org/package/clang (`clang17`); No idea about OpenSuse Leap On operating systems where the clang version is not shipped by default, the user would have to use GCC, or install clang in a different way. For example: * https://packages.debian.org/bullseye/g++ (g++-10) * https://packages.ubuntu.com/focal/g++-10 * https://apt.llvm.org/, or nix, or guix, or compile clang from source, ... ACKs for top commit: fanquake: ACK aaaace2fd1299939c755c281b787df0bbf1747a0 Tree-SHA512: 81d066b14cc568d27312f1cc814b09540b038a10a0a8e9d71fc9745b024fb6c32a959af673e6819b817ea7cef98da4abfa63dff16cffb7821b40083016b0291f
2024-01-11[depends] Allow PATH with spaces in directory names.Mark Friedenbach
added test and update code based on feedback