Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: update minimum required version of glibc to 2.28 #5448

Merged
merged 15 commits into from
Aug 1, 2023

Conversation

kwvg
Copy link
Collaborator

@kwvg kwvg commented Jun 20, 2023

Additional Information

Motivation

Ubuntu focal (our current CI base) ships with glibc 2.31 (source) and while we will soon drop support for xenial (which uses glibc 2.23), Debian 10 (buster) and CentOS Stream 8 both support glibc 2.28.

bitcoin#27029 consolidates support towards glibc 2.27, which means we simply use a CI image that bundles 2.27. Except, that we have to use 2.28 is that it's the minimum version required to build 32-bit ARM, due to a need to import the fcntl64 symbol (see build).

This was discussed in bitcoin#22287 where one of the proposed fixes has already made it into develop with 90c7f16. But that only resolves fcntl64 SQLite usage, not 32-bit ARM symbol usage. The proposed solution for that was to bump the minimum glibc version or to exclude it from builds altogether (the latter being unacceptable due to widespread adoption of the architecture).

Theoretically building on a newer version of glibc shouldn't prevent builds from running on older glibcs as long as newer symbols aren't used, which means we could simply continue with focal instead of downgrading to buster (a distribution that comes with the minimum required glibc version, which allows us to consolidate our build environment around glibc 2.28).

Except, symbols are subject to versioning and can be "upgraded", breaking backwards compatibility (see build).

dashd: symbol log from unsupported version GLIBC_2.29(8)
dashd: symbol exp2 from unsupported version GLIBC_2.29(8)
dashd: symbol log2 from unsupported version GLIBC_2.29(8) 
[...]

This is a documented problem that has been faced by different projects and maintainers, see here and here for examples.

This hasn't been a problem in the past because of the glibc compatibility layer but in its absence (we do not have the option to retain it as future Guix backports include modifications to the build system that assume its absence), bumps in symbol versioning will cause symbol tests to fail as the binary doesn't strictly contain the subset of symbols supported by the minimum version.

Bitcoin at the time of these backports, deprecated Gitian and didn't intend to ship releases built by them, making their breakage acceptable. This is in contrast to our continued usage of Gitian, for at least one more major release.

This leaves us with limited options and the most straightforward one is to downgrade the base CI image to the lowest glibc version shipped by a non-EOL distro (which in this case is glibc 2.28 with buster).

Notes

Special thanks to @UdjinM6 for contributing significantly and testing this PR, through f801973, a218119 and e948e0a and helping me out with getting Gitian working properly

@github-actions
Copy link

This pull request has conflicts, please rebase.

@kwvg kwvg force-pushed the glibc_update branch 3 times, most recently from ef3d7db to 457a1aa Compare June 30, 2023 09:09
@kwvg
Copy link
Collaborator Author

kwvg commented Jun 30, 2023

Guix Binaries:

99f5b28281da86602c7c677318aee35ec4f8ba60ee52fb2ce1bafc1a5cc112ee  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-aarch64-linux-gnu/src/dash-cli
23f9b82a9a59bea1cfd13c8a0e1fe990a20d1cf0c004841b5633b4853ebc9d52  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-aarch64-linux-gnu/src/dashd
8a41d4243857bfbd65ffbae5dd339c078409857908466c57af7b734c59539a26  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-aarch64-linux-gnu/src/dash-tx
7855e3345d37158909f208607e681b7f4b8103d1571eefc4a67a7c8b81724833  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-aarch64-linux-gnu/src/dash-wallet
5b76a0c6c8c2a80df98c1aec5f5a028c60bb68108be3c9751a2eb438061673dc  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-aarch64-linux-gnu/src/qt/dash-qt
7a42531b7e810d413de88915ad79a6b46c22c312ae35672c6585b3c0a9240401  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-aarch64-linux-gnu/src/test/test_dash
09849f298e7087d30336776d92f57ab28299a2ddba677a2083ff51841f886ee3  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-arm64-apple-darwin/src/dash-cli
26269be9ae79494986422f1f9774d83c637a4e87fe62073fad98d729723b1dfc  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-arm64-apple-darwin/src/dashd
d0d5ec04256c750b475b7a2d71b7a027d93af83bc04c94024d8244b1d9f842b8  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-arm64-apple-darwin/src/dash-tx
494e4eff08c50d90cac83bd3a7a37d247616c865e3088088ba48e6beed8a4b5f  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-arm64-apple-darwin/src/dash-wallet
8846d73189edd443fcb2b2a630728df1a51189989dbf5e421f373533b9d08463  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-arm64-apple-darwin/src/qt/dash-qt
d69fb6ab2bd3f6f172c95f55bc9a9475a576e70a9370e8189f89be1a15a02fad  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-arm64-apple-darwin/src/test/test_dash
cc38f7f67ffa4ba7064bade0d5c9f3b7610b688063933fc37151b95a3d86071b  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-arm-linux-gnueabihf/src/dash-cli
9a575cdcabfab6150fd7a1815cf22a0f94184dbbc39b94eec29c6af46539e51e  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-arm-linux-gnueabihf/src/dashd
04d43992b5fbeae6a99da1895cfb4c5586d2678b4cb119417e497a002aba20fa  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-arm-linux-gnueabihf/src/dash-tx
a7734cd3e0f2a238a75ed0824671214a7a67688e613e7bd87fe0d4ac994b1eb6  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-arm-linux-gnueabihf/src/dash-wallet
44e65648f952ea70f771189cdcc0183585b7df11e91b225430735f692f4145ae  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-arm-linux-gnueabihf/src/qt/dash-qt
a62ecb39573ed0c8ab0c6c33908eb43ca0559c4614e46628267b386af88eb44f  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-arm-linux-gnueabihf/src/test/test_dash
6035700ffbd0ae3948fa3044d8ed6358342512df7951ca21c7337f080bcddaab  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-riscv64-linux-gnu/src/dash-cli
9a7b4397051d613fafd99919e01bdff58c9ad39d2c5612648cf95933f1396b27  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-riscv64-linux-gnu/src/dashd
57a44d05cf32cac6e8e186b92c16256f195705c866aec2f41f8fd156d3e85798  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-riscv64-linux-gnu/src/dash-tx
607e0931ab1f6327fbbb6571a5de5b24e508cc64d1b44b0afc37fe0e10334a64  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-riscv64-linux-gnu/src/dash-wallet
47796a59d54fc980acdae9eb1419c1dc4c29e01101ea80108cef256114f37177  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-riscv64-linux-gnu/src/qt/dash-qt
2f54a79bfbaf93e980d273c5967ddc17a81a19a64940ee372b736b25eb6aaa44  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-riscv64-linux-gnu/src/test/test_dash
4dc4437ade39a352450f5a95208618f29e4747f856252e1eb2c5e651576dca9a  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-apple-darwin/src/dash-cli
7548effa6453822f3e7f857bf1f2e6193fce9836849f89be991f07bd325d6386  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-apple-darwin/src/dashd
63a02316a6bf14a50256b112bcfde553674f1905104409b4c8b18b9993e92b91  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-apple-darwin/src/dash-tx
345a58675a76a75eb96772de94f28c1ab1bb3fc377687ced00c1dd6f0d41741d  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-apple-darwin/src/dash-wallet
517115abc6ba5504182bd6b58c93bff368f257ec331edec6d8c8ca941e548db0  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-apple-darwin/src/qt/dash-qt
f2eea31ba489a17e4c41e28a50ec544a91225d5b47738999161166b3a06571a2  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-apple-darwin/src/test/test_dash
2533aaa5367622f3d8d7ee08b23c489e9c576142f6b8f5a1bc32bea3d3a18e49  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-linux-gnu/src/dash-cli
60339ba7a48ebc97b83bf811ed3df8deb3af4291aa4d1194a6f438f86a409d38  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-linux-gnu/src/dashd
bddffd4e8802b32739eac59625695709bfa7ea188f32763fd116c4f8aa6a6b4e  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-linux-gnu/src/dash-tx
8d1f721f57de1ef591047da391d58dd2fca67b3c76874c69e688cc485f3359b5  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-linux-gnu/src/dash-wallet
7c576d25ea6bf8f9e1fa49e7a14ea80780edb8c5d71a127b905daadfe52bf180  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-linux-gnu/src/qt/dash-qt
6e475a0c223a94b9d244588d3f9cbceb14085370ed3b44f2041f62e9525f4803  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-linux-gnu/src/test/test_dash
8004ac047f7d1be70feea911331dc566a0172cd04316d119ef0d6e22cd9ebd2f  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-w64-mingw32/src/dash-cli.exe
9099e76df898b6e9bbe6c892f7fa8b3b1967eeb18d0487c403cead6c4b3bed9d  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-w64-mingw32/src/dashd.exe
ba8ed15758cdc03c14b03a7aeb73468dfea9ab038135481a5f8afda7781e4a3f  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-w64-mingw32/src/dash-tx.exe
fe458053cc2b67caad4ed240626c7b8c49088495417022dcf685643822d392cf  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-w64-mingw32/src/dash-wallet.exe
19a6bbc27c186623596f592706af98cd6cc737d2edfa6884d9e50ff3c021f0ec  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-w64-mingw32/src/qt/dash-qt.exe
f1f689a1a4389ce7d8cf5feece251230b777640367e8d2cf01b02cca7b205d7c  guix-build-457a1aa3d90c/distsrc-457a1aa3d90c-x86_64-w64-mingw32/src/test/test_dash.exe

Guix Archives:

73dff16825c9b90a07ef47b3da32dc67e289332a4f5624f9ad565739bcc0d210  guix-build-457a1aa3d90c/output/aarch64-linux-gnu/dashcore-457a1aa3d90c-aarch64-linux-gnu-debug.tar.gz
a8205c633798e0c3a222d26a95fca46ba2e9dfa9c3ded6870b25be8daea034f9  guix-build-457a1aa3d90c/output/aarch64-linux-gnu/dashcore-457a1aa3d90c-aarch64-linux-gnu.tar.gz
92395fb08b57adf68446353d5605fa7c3af5e7944da94c9f6ed6d8e1f52bef46  guix-build-457a1aa3d90c/output/arm64-apple-darwin/dashcore-457a1aa3d90c-arm64-apple-darwin.tar.gz
89e830bb1f7d7b0354631f21c12b5a9a52d5ba60a23108e19c7db086c2ae66d7  guix-build-457a1aa3d90c/output/arm64-apple-darwin/dashcore-457a1aa3d90c-arm64-apple-darwin-unsigned.dmg
7d235d7edf14a4b9e5529be5954a38e9480fd72f06a8f80bfb35439bca09e369  guix-build-457a1aa3d90c/output/arm64-apple-darwin/dashcore-457a1aa3d90c-arm64-apple-darwin-unsigned.tar.gz
2cfab36a23690f73d764460a7c7d5823d363a5b7e8ce4a7b2b301db5e729ddd5  guix-build-457a1aa3d90c/output/arm-linux-gnueabihf/dashcore-457a1aa3d90c-arm-linux-gnueabihf-debug.tar.gz
5c577fe34eed96c1910c65ee9f5105126f03f62bd13fbac66e3ada0e9f378053  guix-build-457a1aa3d90c/output/arm-linux-gnueabihf/dashcore-457a1aa3d90c-arm-linux-gnueabihf.tar.gz
07d357c48e38d0f8aa598d4c108de3dee44504a8b187617e414c585ada24f7d1  guix-build-457a1aa3d90c/output/dist-archive/dashcore-457a1aa3d90c.tar.gz
93c6e113fa193dd53dbfae2210906cda37ba92cec49fd8d5b4975690b28cc3e9  guix-build-457a1aa3d90c/output/riscv64-linux-gnu/dashcore-457a1aa3d90c-riscv64-linux-gnu-debug.tar.gz
4b14b56a44b853fc843311329c1babbac83fef91f2cb6fea4730421f2edc4e77  guix-build-457a1aa3d90c/output/riscv64-linux-gnu/dashcore-457a1aa3d90c-riscv64-linux-gnu.tar.gz
6a2107d6f2839817858d919d1ef31b8f398768b7862f985da623712af3fe0de3  guix-build-457a1aa3d90c/output/x86_64-apple-darwin/dashcore-457a1aa3d90c-x86_64-apple-darwin.tar.gz
4c8af2657925a1e3cfc0c60a433e026e58fc60f4e803fd86a85b32958cef06ef  guix-build-457a1aa3d90c/output/x86_64-apple-darwin/dashcore-457a1aa3d90c-x86_64-apple-darwin-unsigned.dmg
bc49b47364d6b5211b19ef8b402623d3f1bb73bf294adf9e0bac8bbe80d340a7  guix-build-457a1aa3d90c/output/x86_64-apple-darwin/dashcore-457a1aa3d90c-x86_64-apple-darwin-unsigned.tar.gz
a25098cf5f76d328d680d43e0ad3775dc761fee12c9c502bfb73afa0e0688622  guix-build-457a1aa3d90c/output/x86_64-linux-gnu/dashcore-457a1aa3d90c-x86_64-linux-gnu-debug.tar.gz
daf6c21049efc9f0edb212e077d2260b6e0f692be58c1e931b8fc0f234bab81f  guix-build-457a1aa3d90c/output/x86_64-linux-gnu/dashcore-457a1aa3d90c-x86_64-linux-gnu.tar.gz
aaef3ed1ee69b1ab2bcc99dfc858892ef68d4b196b604f4b8e1288069570f570  guix-build-457a1aa3d90c/output/x86_64-w64-mingw32/dashcore-457a1aa3d90c-win64-debug.zip
3a3dd0a0318144e29aa94e17d7655571ddb590b36c34921b2c43b97499503093  guix-build-457a1aa3d90c/output/x86_64-w64-mingw32/dashcore-457a1aa3d90c-win64-setup-unsigned.exe
1f488ad70e6f65a9f5a48f984f7702ece4cc53c0472f983e744865efff504ce9  guix-build-457a1aa3d90c/output/x86_64-w64-mingw32/dashcore-457a1aa3d90c-win64-unsigned.tar.gz
9b065f9308ed1944b512e9aaee5f9152e5b09f36b28664a7745592539cf6b6cc  guix-build-457a1aa3d90c/output/x86_64-w64-mingw32/dashcore-457a1aa3d90c-win64.zip

@kwvg kwvg marked this pull request as ready for review June 30, 2023 10:30
@kwvg kwvg requested review from knst, UdjinM6 and PastaPastaPasta June 30, 2023 13:32
@kwvg kwvg requested a review from knst June 30, 2023 18:42
@github-actions
Copy link

github-actions bot commented Jul 4, 2023

This pull request has conflicts, please rebase.

@UdjinM6 UdjinM6 added this to the 20 milestone Jul 4, 2023
@UdjinM6
Copy link

UdjinM6 commented Jul 31, 2023

Guix GH action is live again! Thanks @strophy! 👍

Copy link

@UdjinM6 UdjinM6 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK

Guix binaries 0d6c757ee5f8c939fe6feea9818a5c2d2c0279dfeed40fd4567d7a521ff3cd0c guix-build-4fbd043a2448/distsrc-4fbd043a2448-aarch64-linux-gnu/src/dash-cli db0177ca1fd3f3415fe4709c63baaf7b948829732fff998a85b410588c26853c guix-build-4fbd043a2448/distsrc-4fbd043a2448-aarch64-linux-gnu/src/dash-tx 9cbe991bb730d462837cb5971e948c13f57f38fd1d0303e1703747e2f004fd19 guix-build-4fbd043a2448/distsrc-4fbd043a2448-aarch64-linux-gnu/src/dash-wallet 33799f224fb9cd282b8d27b38b27b4f4c2380193ace4c7ec35df95c13074b516 guix-build-4fbd043a2448/distsrc-4fbd043a2448-aarch64-linux-gnu/src/dashd f11ed369a86d920deb5e23dac9ec717ea53038f0b3b208df4412b73ea21d43e6 guix-build-4fbd043a2448/distsrc-4fbd043a2448-aarch64-linux-gnu/src/qt/dash-qt 1357a42617c69c59299045f7594355062c945c02ca244b244560560a31aa8f20 guix-build-4fbd043a2448/distsrc-4fbd043a2448-aarch64-linux-gnu/src/test/test_dash bd74dc2bca88be1c22fd80870147afc716d4f4e49a9084ebe9df7e71b1d2c242 guix-build-4fbd043a2448/distsrc-4fbd043a2448-arm-linux-gnueabihf/src/dash-cli 590799331a033c2fd9903a2bef79d87401315f03b3f7ddc94ec34594d404b73a guix-build-4fbd043a2448/distsrc-4fbd043a2448-arm-linux-gnueabihf/src/dash-tx 43766adea175b9b910e2cb15e0741c299aa339d0259091c11f3072e0bf78b726 guix-build-4fbd043a2448/distsrc-4fbd043a2448-arm-linux-gnueabihf/src/dash-wallet a02bae2472125470563d6a6b77774e420d2307e701ac2ad566fdb4efbe671e73 guix-build-4fbd043a2448/distsrc-4fbd043a2448-arm-linux-gnueabihf/src/dashd d02336d7f35add83fd93194fb2860957cf9877ba8bd892e9733e4d790dc76398 guix-build-4fbd043a2448/distsrc-4fbd043a2448-arm-linux-gnueabihf/src/qt/dash-qt 276b9701f0c87d7d1b5e0036923bb049b00f40ccf13a958430ee57b936391ea8 guix-build-4fbd043a2448/distsrc-4fbd043a2448-arm-linux-gnueabihf/src/test/test_dash 1e58b24c0554c76822b06c4e886d05cd470ffd6fa1f2fb8056cf966af658792b guix-build-4fbd043a2448/distsrc-4fbd043a2448-arm64-apple-darwin/src/dash-cli 836a9eda6dcb884f1ed5964e471ed2aa4a7f6c6906af0a0159c3a5a61dd03ddd guix-build-4fbd043a2448/distsrc-4fbd043a2448-arm64-apple-darwin/src/dash-tx 954e35ef29adb55d9499cd4ee49f9ade6656cf98c138f90aba64008f94087b39 guix-build-4fbd043a2448/distsrc-4fbd043a2448-arm64-apple-darwin/src/dash-wallet 028effae72303f1150d275bff954b10332eefa12f8f32bb1cc73dc64b18006c0 guix-build-4fbd043a2448/distsrc-4fbd043a2448-arm64-apple-darwin/src/dashd 555c371a73f8f2afb40e43b45e4c376c5f61acc9f1acb14c9c4273fb7697efa2 guix-build-4fbd043a2448/distsrc-4fbd043a2448-arm64-apple-darwin/src/qt/dash-qt def39bbd134988b553fc5d8139ef59d9dfd000203ac18904f6681d5f968310db guix-build-4fbd043a2448/distsrc-4fbd043a2448-arm64-apple-darwin/src/test/test_dash b281a5644a53c6901de979b0508641999a4f0b6446c795ad5279f8a7a75a406d guix-build-4fbd043a2448/distsrc-4fbd043a2448-riscv64-linux-gnu/src/dash-cli 3c01a5e82cbb25599ed35f7bc13a0a71686887c4530ea0568c1458d6ee6d6253 guix-build-4fbd043a2448/distsrc-4fbd043a2448-riscv64-linux-gnu/src/dash-tx 93fae700066ecfbd4344005781abb305904ecf119ddc9bb1f5ee8f457942b576 guix-build-4fbd043a2448/distsrc-4fbd043a2448-riscv64-linux-gnu/src/dash-wallet 19edf4db48e4a078ffb9ad9d1bd061a7ec71444bfb9f9de69de8288e15caf896 guix-build-4fbd043a2448/distsrc-4fbd043a2448-riscv64-linux-gnu/src/dashd f80e4332683f70c0d89843b2984199b9c02c0722ec9a2a9a58dbf3029722d8a7 guix-build-4fbd043a2448/distsrc-4fbd043a2448-riscv64-linux-gnu/src/qt/dash-qt 869dfa7db10bf632c4e30e978b2b2d81eb38b064a43e183c4e702f1e818c5d34 guix-build-4fbd043a2448/distsrc-4fbd043a2448-riscv64-linux-gnu/src/test/test_dash d46f6e170b935565cb9994f3bb42a214512c16e55363d589d69ad68e56ffc4b7 guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-apple-darwin/src/dash-cli 2ce085c74faf9250f3f057e1bc9fc45e8ec6cf5fc7af9c63c4eafb3c3f193f69 guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-apple-darwin/src/dash-tx 3619897e2bc650c0d9e05ee84e80d43c2bf868175f131b577d331a303dfbff8b guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-apple-darwin/src/dash-wallet b5c629f6beaf0ea3066bb8f7df0982482a7979c9a5c461f78d8b0c5ecbc3934b guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-apple-darwin/src/dashd e5910eaa8376a5d409f10b719d7e24414b3f1eb337546402b0551df6e41268d1 guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-apple-darwin/src/qt/dash-qt dff1667782e21a64c36fda98688ec0e6eadb3b8bac4279a3a3651e901d930b39 guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-apple-darwin/src/test/test_dash 853ce18346b448182173eb8a23a00a7b81d254d1196deebc372ea5ae57bb1db9 guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-linux-gnu/src/dash-cli cc44f389f4d7ac18eafde96fd2fd27af5784316de16303e14bdf3beab3a88715 guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-linux-gnu/src/dash-tx 7c994a7c7cf37f5ffabf2b88d432bf1275b5eb67fc27f3a1d3ae3fee31eabfb2 guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-linux-gnu/src/dash-wallet fc8ecee4a14ec3883ef24303ab4d7878fc4b6a5c2651b93caacc410d46bbd0ac guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-linux-gnu/src/dashd 088e1b3df5370769addf4a4fe306d64beb0ac7a4da9f4cca95355a5deec234a4 guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-linux-gnu/src/qt/dash-qt 25839fac7d324e24553a7916e8cb5af147ed875424b171918ce06d7610549f4b guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-linux-gnu/src/test/test_dash 698502ea44e900d93017ca5a5c2361a5d50265194a2f71e6f61a8e9e09ddb903 guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-w64-mingw32/src/dash-cli.exe ba1d2480f07fec3c3b0ca9f1c937bb5e510b0f6797168101b0ab22c452c04acb guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-w64-mingw32/src/dash-tx.exe 0c3b319eda891b96846fa80eba4efea9ed761987c3ca9210bddf46d651d09601 guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-w64-mingw32/src/dash-wallet.exe 1eab94d8f24865f7a7b75541804742b0d28676d432a5fa72ae9097b109f947e8 guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-w64-mingw32/src/dashd.exe 946602034f8c3718c9cac4db055801f01c3736bb9b1b0bcd4398d9cd714d5d27 guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-w64-mingw32/src/qt/dash-qt.exe 9b67191775eff16f972c740bc70c161059092b82ce5cf19255ba7e4fdb7d6ac5 guix-build-4fbd043a2448/distsrc-4fbd043a2448-x86_64-w64-mingw32/src/test/test_dash.exe
Guix archives a30a40086d6a5aa1b54a6ab966acafb4d061eeb0d5344112e5fe45cbc206fa77 guix-build-4fbd043a2448/output/aarch64-linux-gnu/dashcore-4fbd043a2448-aarch64-linux-gnu-debug.tar.gz 0f4ae03b07633e41145d77ab7824649df89c4e93369a9fd09cd6c7b6cba1b405 guix-build-4fbd043a2448/output/aarch64-linux-gnu/dashcore-4fbd043a2448-aarch64-linux-gnu.tar.gz cf694dca10ac629ebbbb5b7066bf0b9c08bbce5b80572d3906945d9a7ee0eed0 guix-build-4fbd043a2448/output/arm-linux-gnueabihf/dashcore-4fbd043a2448-arm-linux-gnueabihf-debug.tar.gz b5b4c4aa5af7b9cd34b414d30d5ac1f81670bbc4416a51774c4175bc8f8347c9 guix-build-4fbd043a2448/output/arm-linux-gnueabihf/dashcore-4fbd043a2448-arm-linux-gnueabihf.tar.gz 9c7bca2d1e23e6325b1dc2b6b9d477a3766ed6c0f3dc543d8370799e798223dd guix-build-4fbd043a2448/output/arm64-apple-darwin/dashcore-4fbd043a2448-arm64-apple-darwin-unsigned.dmg 8242d3b8ef196e9a0a81da0f1b0e95eb8d117d4b0c40d3ff454fb8313a08d4c2 guix-build-4fbd043a2448/output/arm64-apple-darwin/dashcore-4fbd043a2448-arm64-apple-darwin-unsigned.tar.gz 56b9bdc27b9f09404bd614e35abd4d8bf55a035d8129cbc20cfd427512512201 guix-build-4fbd043a2448/output/arm64-apple-darwin/dashcore-4fbd043a2448-arm64-apple-darwin.tar.gz 59bc99d5acf2f16b67e5971d569bf28f16698adead7f247a00dc2f45a05b4b38 guix-build-4fbd043a2448/output/dist-archive/dashcore-4fbd043a2448.tar.gz fb7a41f1366887099cd889e73c24f9831036e8e06cd6edb04cf30c4c1522c589 guix-build-4fbd043a2448/output/riscv64-linux-gnu/dashcore-4fbd043a2448-riscv64-linux-gnu-debug.tar.gz 9efc286d56dfefb7c4c45895571e311869bf7c7b704f72fa208d8027965bef94 guix-build-4fbd043a2448/output/riscv64-linux-gnu/dashcore-4fbd043a2448-riscv64-linux-gnu.tar.gz 5959cac421619fdc0825e514e36c25ee878f92b038ed93056cbebf0185e9fc31 guix-build-4fbd043a2448/output/x86_64-apple-darwin/dashcore-4fbd043a2448-x86_64-apple-darwin-unsigned.dmg 52878e1970e97319295a38604975ff6cd44aed3b71054b88ec561e99dbffdf16 guix-build-4fbd043a2448/output/x86_64-apple-darwin/dashcore-4fbd043a2448-x86_64-apple-darwin-unsigned.tar.gz eeae1ca01d0845fdd24b64127f388609b384d80f8677e54f9153e96bee6323a9 guix-build-4fbd043a2448/output/x86_64-apple-darwin/dashcore-4fbd043a2448-x86_64-apple-darwin.tar.gz 32e22c39e1c9c66d7615560f6f262a631ef84276c35e40828b7abf6a0f1b71a7 guix-build-4fbd043a2448/output/x86_64-linux-gnu/dashcore-4fbd043a2448-x86_64-linux-gnu-debug.tar.gz 8235a78efcbe184ce72c0aab3a4dd792b0abbb3efb0cf81448b43093ada37082 guix-build-4fbd043a2448/output/x86_64-linux-gnu/dashcore-4fbd043a2448-x86_64-linux-gnu.tar.gz 8122c27096df4f18db96c55413732f1963e48dedfeb13a890a5dc9f477e1a058 guix-build-4fbd043a2448/output/x86_64-w64-mingw32/dashcore-4fbd043a2448-win64-debug.zip 34c01cc49172636141dcb3faa2fbcca31873653aca5aeabf397aae7c7f5dbed1 guix-build-4fbd043a2448/output/x86_64-w64-mingw32/dashcore-4fbd043a2448-win64-setup-unsigned.exe 7a6e160ab2f14c1666d33be39cfc6e9d4f0084fca6f2f1311e059eb9d59f1544 guix-build-4fbd043a2448/output/x86_64-w64-mingw32/dashcore-4fbd043a2448-win64-unsigned.tar.gz f04912d018e8f64037f0e12ecef96238a57a58842a6cef02458682be7de79a3e guix-build-4fbd043a2448/output/x86_64-w64-mingw32/dashcore-4fbd043a2448-win64.zip
Gitian a427a29e8cce8501c547f52e42158ecf3b2d0dc064e403bb2b9b5af87389daba dashcore-4fbd043a2448-aarch64-linux-gnu-debug.tar.gz 49f0012b0dc2546ee892f7f212920da479111a04a68d4224bd996470f77f8556 dashcore-4fbd043a2448-aarch64-linux-gnu.tar.gz 97d2120f2dac57d57f07665fce3db612a908096020938fed14337ac55e4e0d4b dashcore-4fbd043a2448-osx64-debug.tar.gz 3d5de810bf5802c8fb4993863920963b868f5e27292e40bc9be790be47ff873f dashcore-4fbd043a2448-osx64.tar.gz 37d6a410a29889f8c58a93b712684a06a5c1afeccfaba59864256e142bcc02ca dashcore-4fbd043a2448-osx-unsigned.dmg f174b8e3ec0a6bdda8585d10b43bf7cdd34eb19ae5b63a02fd4b323febb319da dashcore-4fbd043a2448-riscv64-linux-gnu-debug.tar.gz c3f6de679aa88ce102acd32bc7bac0be185281076268532e517da67262d1841c dashcore-4fbd043a2448-riscv64-linux-gnu.tar.gz 59bc99d5acf2f16b67e5971d569bf28f16698adead7f247a00dc2f45a05b4b38 dashcore-4fbd043a2448.tar.gz 096bf512bc2419b63af43a0480d706523553edfee507c6257a1d0abd5dd05b4f dashcore-4fbd043a2448-win64-debug.zip 227e08ad1bba34a3eea1ffe3acedceaecf63d52d7e57bca6524094cc5dda4b7e dashcore-4fbd043a2448-win64-setup-unsigned.exe 0fce7527fd463ef3acc4b5f5763a893f28953903c67246ed070cd9ffea9e88fd dashcore-4fbd043a2448-win64.zip 7b2955b1e3e6a263a18a8a622a1eab308fbff874626fd16ef56639ff25ef8539 dashcore-4fbd043a2448-x86_64-linux-gnu-debug.tar.gz bf83a74b38ad004fb832035c8944e8f5a4a47a0d7ece85d08dfed7be661fd7c3 dashcore-4fbd043a2448-x86_64-linux-gnu.tar.gz

@PastaPastaPasta
Copy link
Member

My gitian hashes

a427a29e8cce8501c547f52e42158ecf3b2d0dc064e403bb2b9b5af87389daba  dashcore-4fbd043a2448-aarch64-linux-gnu-debug.tar.gz
49f0012b0dc2546ee892f7f212920da479111a04a68d4224bd996470f77f8556  dashcore-4fbd043a2448-aarch64-linux-gnu.tar.gz
37d6a410a29889f8c58a93b712684a06a5c1afeccfaba59864256e142bcc02ca  dashcore-4fbd043a2448-osx-unsigned.dmg
97d2120f2dac57d57f07665fce3db612a908096020938fed14337ac55e4e0d4b  dashcore-4fbd043a2448-osx64-debug.tar.gz
3d5de810bf5802c8fb4993863920963b868f5e27292e40bc9be790be47ff873f  dashcore-4fbd043a2448-osx64.tar.gz
f174b8e3ec0a6bdda8585d10b43bf7cdd34eb19ae5b63a02fd4b323febb319da  dashcore-4fbd043a2448-riscv64-linux-gnu-debug.tar.gz
c3f6de679aa88ce102acd32bc7bac0be185281076268532e517da67262d1841c  dashcore-4fbd043a2448-riscv64-linux-gnu.tar.gz
096bf512bc2419b63af43a0480d706523553edfee507c6257a1d0abd5dd05b4f  dashcore-4fbd043a2448-win64-debug.zip
227e08ad1bba34a3eea1ffe3acedceaecf63d52d7e57bca6524094cc5dda4b7e  dashcore-4fbd043a2448-win64-setup-unsigned.exe
0fce7527fd463ef3acc4b5f5763a893f28953903c67246ed070cd9ffea9e88fd  dashcore-4fbd043a2448-win64.zip
7b2955b1e3e6a263a18a8a622a1eab308fbff874626fd16ef56639ff25ef8539  dashcore-4fbd043a2448-x86_64-linux-gnu-debug.tar.gz
bf83a74b38ad004fb832035c8944e8f5a4a47a0d7ece85d08dfed7be661fd7c3  dashcore-4fbd043a2448-x86_64-linux-gnu.tar.gz
59bc99d5acf2f16b67e5971d569bf28f16698adead7f247a00dc2f45a05b4b38  dashcore-4fbd043a2448.tar.gz

@kwvg kwvg requested a review from knst August 1, 2023 08:56
@knst
Copy link
Collaborator

knst commented Aug 1, 2023

@kwvg kwvg requested a review from knst

I reviewed, each commit and particular change makes sense for me.
so, LGTM atm. I will provide hashes later.

Copy link
Member

@PastaPastaPasta PastaPastaPasta left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

light-ACK for merging via merge commit

kwvg and others added 15 commits August 1, 2023 12:07
clang warnings are quite noisy and easily cause gitlab's logs
to spill over, preventing logging of dash-specific warnings and errors
from making it to the CI logs.

our dependencies mostly track upstream so regardless, we cannot
act upon those warnings, so it's better to just suppress them if they're
too noisy.
Used to avoid the following error:

```
In file included from test/fuzz/addition_overflow.cpp:7:
In file included from ./test/fuzz/util.h:26:
In file included from ./test/util/setup_common.h:16:
In file included from ./txmempool.h:31:
In file included from /builds/dashpay/dash/depends/x86_64-pc-linux-gnu/include/boost/optional.hpp:15:
In file included from /builds/dashpay/dash/depends/x86_64-pc-linux-gnu/include/boost/optional/optional.hpp:47:
In file included from /builds/dashpay/dash/depends/x86_64-pc-linux-gnu/include/boost/type_traits/is_nothrow_move_assignable.hpp:16:
/builds/dashpay/dash/depends/x86_64-pc-linux-gnu/include/boost/type_traits/has_nothrow_assign.hpp:65:7: error: builtin __has_nothrow_assign is deprecated; use __is_nothrow_assignable instead [-Werror,-Wdeprecated-builtins]
      BOOST_HAS_NOTHROW_ASSIGN(T)
      ^
/builds/dashpay/dash/depends/x86_64-pc-linux-gnu/include/boost/type_traits/intrinsics.hpp:205:43: note: expanded from macro 'BOOST_HAS_NOTHROW_ASSIGN'
                                          ^
/builds/dashpay/dash/depends/x86_64-pc-linux-gnu/include/boost/serialization/serialization.hpp:61:1: note: in instantiation of template class 'boost::has_nothrow_assign<unsigned int>' requested here
BOOST_STRONG_TYPEDEF(unsigned int, version_type)
^
/builds/dashpay/dash/depends/x86_64-pc-linux-gnu/include/boost/serialization/strong_typedef.hpp:42:57: note: expanded from macro 'BOOST_STRONG_TYPEDEF'
    D& operator=(const D& rhs) BOOST_NOEXCEPT_IF(boost::has_nothrow_assign<T>::value) {t = rhs.t; return *this;} \
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants