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

depends: build libevent with -D_GNU_SOURCE #30743

Merged
merged 1 commit into from
Sep 5, 2024

Conversation

fanquake
Copy link
Member

@fanquake fanquake commented Aug 28, 2024

Currently, builds of libevent in depends, using CMake, fail on some systems, like Alpine, with the following:

/bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c: In function 'evmap_signal_add_':
/bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c:456:31: error: 'NSIG' undeclared (first use in this function)
  456 |         if (sig < 0 || sig >= NSIG)

From what I can tell the GNU_SOURCE "detection" in libevents CMake build system, never? really worked, primarily relies on looking for a deprecated define, and it's not clear what a nice fix is. For now, always build with _GNU_SOURCE, to match the autotools behaviour.

@fanquake fanquake added this to the 28.0 milestone Aug 28, 2024
@DrahtBot
Copy link
Contributor

DrahtBot commented Aug 28, 2024

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Code Coverage

For detailed information about the code coverage, see the test coverage report.

Reviews

See the guideline for information on the review process.

Type Reviewers
ACK TheCharlatan

If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

@luke-jr
Copy link
Member

luke-jr commented Aug 28, 2024

In any case, we'll need to do something for the 28.x branch.

Would be nice if this was a clean merge to both branches.

@DrahtBot
Copy link
Contributor

Guix builds (on x86_64) [untrusted test-only build, possibly unsafe, not for production use]

File commit 4ee1940
(master)
commit 9652a0a
(master and this pull)
SHA256SUMS.part f3173a955837e725... 42f17cbf3c9d4449...
*-aarch64-linux-gnu-debug.tar.gz ca91ba66849cd58f... aa78b9d7f5b6ed1f...
*-aarch64-linux-gnu.tar.gz 5f891b41807d5124... 431a03575eec8fa7...
*-arm-linux-gnueabihf-debug.tar.gz 5a7f53b22d19af93... 122011af17befd69...
*-arm-linux-gnueabihf.tar.gz 3cebdcfaab00b068... f64abf27692aba21...
*-arm64-apple-darwin-unsigned.tar.gz dbfb6b46a8ba5601... d5d9df05e12dc81f...
*-arm64-apple-darwin-unsigned.zip bbf23c3e0a6bb897... b410551ede373a4c...
*-arm64-apple-darwin.tar.gz fcf2ac36cb51fc58... 27c9c370ace1832c...
*-powerpc64-linux-gnu-debug.tar.gz 5384d0a1095cecac... 20901afebad4df25...
*-powerpc64-linux-gnu.tar.gz 0c1db8af0050158d... 783f66c351ec8483...
*-riscv64-linux-gnu-debug.tar.gz 662af641aae75368... 773c1df0b5016f61...
*-riscv64-linux-gnu.tar.gz 4a1d77dfe3bf89ea... 82ebf79693e8e05f...
*-x86_64-apple-darwin-unsigned.tar.gz 60cf6ab775c9521a... c09e3d906ccaa13d...
*-x86_64-apple-darwin-unsigned.zip 995e263afed6fad5... cc783eddc59a5a1a...
*-x86_64-apple-darwin.tar.gz 71db56e0ac166e7b... 4c019135921cab64...
*-x86_64-linux-gnu-debug.tar.gz 989ef754130c891f... 631b293e3086776e...
*-x86_64-linux-gnu.tar.gz 122343653b28d0df... ea797e7a10ddc388...
*.tar.gz 2703b1ee9e245685... 5cf201cab0a74807...
guix_build.log e0e95dae7d26fe3d... dce5218d2d82c028...
guix_build.log.diff 7f0986b7c4be593f...

Currently, builds of libevent in depends, using CMake, fail on some
systems, like Alpine, with the following:
```bash
/bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c: In function 'evmap_signal_add_':
/bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c:456:31: error: 'NSIG' undeclared (first use in this function)
  456 |         if (sig < 0 || sig >= NSIG)
```

From what I can tell the `_GNU_SOURCE` "detection" in libevents CMake build
system, never? really worked, and it's not clear what a nice fix is.

For now, always use `_GNU_SOURCE` when building libevent in depends.
@fanquake fanquake marked this pull request as ready for review September 3, 2024 09:19
@fanquake
Copy link
Member Author

fanquake commented Sep 3, 2024

For now I've opted with matching the prior Autotools behaviour, and always building with -D_GNU_SOURCE, which is also easy to backport to 28.x.

@fanquake
Copy link
Member Author

fanquake commented Sep 3, 2024

Guix Build (aarch64):

27bc371752bd40a5f634cc8769c860dae2faec5f71976dba4fef0b0b22c69dc4  guix-build-556775408797/output/aarch64-linux-gnu/SHA256SUMS.part
a0e74a766c104f2e64196c6711e9eb895786847ff08a92a2c3b253f8b2611725  guix-build-556775408797/output/aarch64-linux-gnu/bitcoin-556775408797-aarch64-linux-gnu-debug.tar.gz
0c2099f20a86aff4766e6762b3a69780d72af0f5b26a8579e614085035461a90  guix-build-556775408797/output/aarch64-linux-gnu/bitcoin-556775408797-aarch64-linux-gnu.tar.gz
17c4667a2bd29b9047ae0bf584ec941863a87f03d4a393dd87dd7dd490d81648  guix-build-556775408797/output/arm-linux-gnueabihf/SHA256SUMS.part
f860041992811b28e062165c9c5f7f92d37def1499311085d8d2f21c06ff1422  guix-build-556775408797/output/arm-linux-gnueabihf/bitcoin-556775408797-arm-linux-gnueabihf-debug.tar.gz
f61fd740d0c0b4b1c8ab2a685912468fe57955a24c3e3d3321e2b14a5f2b1c41  guix-build-556775408797/output/arm-linux-gnueabihf/bitcoin-556775408797-arm-linux-gnueabihf.tar.gz
7bea7e36fac612e42fd1c8a9bef4b7ebc78e5fc77c3a34fd5a91082095cc8a26  guix-build-556775408797/output/arm64-apple-darwin/SHA256SUMS.part
339856fc647e493ab319b45b0c568983d65d9f75fde20f6db7eaa80c6791daeb  guix-build-556775408797/output/arm64-apple-darwin/bitcoin-556775408797-arm64-apple-darwin-unsigned.tar.gz
52ed8abe119ff367ece79e5e674518ef03ef98b4ab9bcb7666d0cad60d251ed1  guix-build-556775408797/output/arm64-apple-darwin/bitcoin-556775408797-arm64-apple-darwin-unsigned.zip
ce5cc292bfc02d060cc980956b2e315bea6fc4cc46b330ac6d0166e7f64c1d74  guix-build-556775408797/output/arm64-apple-darwin/bitcoin-556775408797-arm64-apple-darwin.tar.gz
9f3a94acc607e2bc9b8672d68e7a9ab9209b48061f77d1067d879ee3a81eaed3  guix-build-556775408797/output/dist-archive/bitcoin-556775408797.tar.gz
882e87f052d42a176552d94982c43c18abe6a9a5fa29c410bfb02a7d908da178  guix-build-556775408797/output/powerpc64-linux-gnu/SHA256SUMS.part
6d30763eb286e1f734044817f1fa6c024ee792e532336306fc8411f2284d3848  guix-build-556775408797/output/powerpc64-linux-gnu/bitcoin-556775408797-powerpc64-linux-gnu-debug.tar.gz
a92ffbeee15451b5d978846b43f77e3664676405071e52a684b2660008a2bb8c  guix-build-556775408797/output/powerpc64-linux-gnu/bitcoin-556775408797-powerpc64-linux-gnu.tar.gz
5f71dc0f9b5dcf09de03c59dbec548da8c8bc59080c327add70086f3463043ee  guix-build-556775408797/output/riscv64-linux-gnu/SHA256SUMS.part
2f0c196e5f1c1e6a9c5e679b8e7f4327f4ad46755d805149cfde10eedafe2974  guix-build-556775408797/output/riscv64-linux-gnu/bitcoin-556775408797-riscv64-linux-gnu-debug.tar.gz
b4f69d8d771784bd0e6889c2fe6fd8a9730f63df2dcfd73f9315d26cdfe6ca6b  guix-build-556775408797/output/riscv64-linux-gnu/bitcoin-556775408797-riscv64-linux-gnu.tar.gz
087063ae2cb6bf25e14b88c05f97b1d9b1d54449ab0ac041a6e8d029d393f45d  guix-build-556775408797/output/x86_64-apple-darwin/SHA256SUMS.part
56d05d7777b9e6e8e231981b4b8847098425e424cc180600ca90df209652a2a7  guix-build-556775408797/output/x86_64-apple-darwin/bitcoin-556775408797-x86_64-apple-darwin-unsigned.tar.gz
06aff0440e8fb9b35909bd9065202e3bf13a1b79e12ab5d04ee1fd2c93caffc6  guix-build-556775408797/output/x86_64-apple-darwin/bitcoin-556775408797-x86_64-apple-darwin-unsigned.zip
3aff43590e92bd61d5689e7c6af6ad1d0f5efd5186f9da9bb3911b437e588a68  guix-build-556775408797/output/x86_64-apple-darwin/bitcoin-556775408797-x86_64-apple-darwin.tar.gz
5a8d19a2ddbe4840577d6edc8c6bfa38d456b830f5e5852463ba6abec20972c6  guix-build-556775408797/output/x86_64-linux-gnu/SHA256SUMS.part
c8946988dd323f11b34b3b8cb04995383e2388231ca05b821d99365e243c520c  guix-build-556775408797/output/x86_64-linux-gnu/bitcoin-556775408797-x86_64-linux-gnu-debug.tar.gz
931fc8ec94d6a2b79a59a4f1db7d11b60fd9ee1a09958e8d0dba39e5b42aed30  guix-build-556775408797/output/x86_64-linux-gnu/bitcoin-556775408797-x86_64-linux-gnu.tar.gz
c0b229fab608e0606ccbe2987d71c0e1905b98e836c5b54bbd63c88414b139c3  guix-build-556775408797/output/x86_64-w64-mingw32/SHA256SUMS.part
83edda7cc86720b970ba4e4377ec83b34a38c3418f74bf5aa7fe6c19c866edea  guix-build-556775408797/output/x86_64-w64-mingw32/bitcoin-556775408797-win64-debug.zip
df21af6d87a5c841e7f7598f117a9c578d990af82ba22f1d1fff917639be684e  guix-build-556775408797/output/x86_64-w64-mingw32/bitcoin-556775408797-win64-setup-unsigned.exe
b43678bff7b4edf1befdcbb142837cb839bbf9a9a66a261affed55d5cafe6a46  guix-build-556775408797/output/x86_64-w64-mingw32/bitcoin-556775408797-win64-unsigned.tar.gz
3c2da3d4dc7b2c96d2e5a390bfb85a2852bad286329dae2d18d5834f6abbe85b  guix-build-556775408797/output/x86_64-w64-mingw32/bitcoin-556775408797-win64.zip

@TheCharlatan
Copy link
Contributor

TheCharlatan commented Sep 3, 2024

bitcoin-556775408797-arm64-apple-darwin-unsigned.zip
Guix build (aarch64):

27bc371752bd40a5f634cc8769c860dae2faec5f71976dba4fef0b0b22c69dc4  guix-build-556775408797/output/aarch64-linux-gnu/SHA256SUMS.part
a0e74a766c104f2e64196c6711e9eb895786847ff08a92a2c3b253f8b2611725  guix-build-556775408797/output/aarch64-linux-gnu/bitcoin-556775408797-aarch64-linux-gnu-debug.tar.gz
0c2099f20a86aff4766e6762b3a69780d72af0f5b26a8579e614085035461a90  guix-build-556775408797/output/aarch64-linux-gnu/bitcoin-556775408797-aarch64-linux-gnu.tar.gz
17c4667a2bd29b9047ae0bf584ec941863a87f03d4a393dd87dd7dd490d81648  guix-build-556775408797/output/arm-linux-gnueabihf/SHA256SUMS.part
f860041992811b28e062165c9c5f7f92d37def1499311085d8d2f21c06ff1422  guix-build-556775408797/output/arm-linux-gnueabihf/bitcoin-556775408797-arm-linux-gnueabihf-debug.tar.gz
f61fd740d0c0b4b1c8ab2a685912468fe57955a24c3e3d3321e2b14a5f2b1c41  guix-build-556775408797/output/arm-linux-gnueabihf/bitcoin-556775408797-arm-linux-gnueabihf.tar.gz
2bb981ce80f1f90b830cec2b034b06a41f9293fee1064f27810a510b33e2e42d  guix-build-556775408797/output/arm64-apple-darwin/SHA256SUMS.part
339856fc647e493ab319b45b0c568983d65d9f75fde20f6db7eaa80c6791daeb  guix-build-556775408797/output/arm64-apple-darwin/bitcoin-556775408797-arm64-apple-darwin-unsigned.tar.gz
d4eaa466c7bbf960e1afbad3112032b8b366894ba27b083d71bbf5ec04acf194  guix-build-556775408797/output/arm64-apple-darwin/bitcoin-556775408797-arm64-apple-darwin-unsigned.zip
ce5cc292bfc02d060cc980956b2e315bea6fc4cc46b330ac6d0166e7f64c1d74  guix-build-556775408797/output/arm64-apple-darwin/bitcoin-556775408797-arm64-apple-darwin.tar.gz
9f3a94acc607e2bc9b8672d68e7a9ab9209b48061f77d1067d879ee3a81eaed3  guix-build-556775408797/output/dist-archive/bitcoin-556775408797.tar.gz
882e87f052d42a176552d94982c43c18abe6a9a5fa29c410bfb02a7d908da178  guix-build-556775408797/output/powerpc64-linux-gnu/SHA256SUMS.part
6d30763eb286e1f734044817f1fa6c024ee792e532336306fc8411f2284d3848  guix-build-556775408797/output/powerpc64-linux-gnu/bitcoin-556775408797-powerpc64-linux-gnu-debug.tar.gz
a92ffbeee15451b5d978846b43f77e3664676405071e52a684b2660008a2bb8c  guix-build-556775408797/output/powerpc64-linux-gnu/bitcoin-556775408797-powerpc64-linux-gnu.tar.gz
5f71dc0f9b5dcf09de03c59dbec548da8c8bc59080c327add70086f3463043ee  guix-build-556775408797/output/riscv64-linux-gnu/SHA256SUMS.part
2f0c196e5f1c1e6a9c5e679b8e7f4327f4ad46755d805149cfde10eedafe2974  guix-build-556775408797/output/riscv64-linux-gnu/bitcoin-556775408797-riscv64-linux-gnu-debug.tar.gz
b4f69d8d771784bd0e6889c2fe6fd8a9730f63df2dcfd73f9315d26cdfe6ca6b  guix-build-556775408797/output/riscv64-linux-gnu/bitcoin-556775408797-riscv64-linux-gnu.tar.gz
54d4939799b36457c9e382e72f169a56a1581828913c0b3d75fad2ed45374ec1  guix-build-556775408797/output/x86_64-apple-darwin/SHA256SUMS.part
56d05d7777b9e6e8e231981b4b8847098425e424cc180600ca90df209652a2a7  guix-build-556775408797/output/x86_64-apple-darwin/bitcoin-556775408797-x86_64-apple-darwin-unsigned.tar.gz
4638f5bf46cf885d5f6069afdb60afb6f2d8ed64357b6acc6387d686ae966681  guix-build-556775408797/output/x86_64-apple-darwin/bitcoin-556775408797-x86_64-apple-darwin-unsigned.zip
3aff43590e92bd61d5689e7c6af6ad1d0f5efd5186f9da9bb3911b437e588a68  guix-build-556775408797/output/x86_64-apple-darwin/bitcoin-556775408797-x86_64-apple-darwin.tar.gz
5a8d19a2ddbe4840577d6edc8c6bfa38d456b830f5e5852463ba6abec20972c6  guix-build-556775408797/output/x86_64-linux-gnu/SHA256SUMS.part
c8946988dd323f11b34b3b8cb04995383e2388231ca05b821d99365e243c520c  guix-build-556775408797/output/x86_64-linux-gnu/bitcoin-556775408797-x86_64-linux-gnu-debug.tar.gz
931fc8ec94d6a2b79a59a4f1db7d11b60fd9ee1a09958e8d0dba39e5b42aed30  guix-build-556775408797/output/x86_64-linux-gnu/bitcoin-556775408797-x86_64-linux-gnu.tar.gz
c0b229fab608e0606ccbe2987d71c0e1905b98e836c5b54bbd63c88414b139c3  guix-build-556775408797/output/x86_64-w64-mingw32/SHA256SUMS.part
83edda7cc86720b970ba4e4377ec83b34a38c3418f74bf5aa7fe6c19c866edea  guix-build-556775408797/output/x86_64-w64-mingw32/bitcoin-556775408797-win64-debug.zip
df21af6d87a5c841e7f7598f117a9c578d990af82ba22f1d1fff917639be684e  guix-build-556775408797/output/x86_64-w64-mingw32/bitcoin-556775408797-win64-setup-unsigned.exe
b43678bff7b4edf1befdcbb142837cb839bbf9a9a66a261affed55d5cafe6a46  guix-build-556775408797/output/x86_64-w64-mingw32/bitcoin-556775408797-win64-unsigned.tar.gz
3c2da3d4dc7b2c96d2e5a390bfb85a2852bad286329dae2d18d5834f6abbe85b  guix-build-556775408797/output/x86_64-w64-mingw32/bitcoin-556775408797-win64.zip

Seeing a reproducibility issue with the apple binaries now.

EDIT: Probably something with the zipping again?

@fanquake
Copy link
Member Author

fanquake commented Sep 4, 2024

EDIT: Probably something with the zipping again?

Yea, looks like a permissions issue:

Comparing bitcoin-556775408797-arm64-apple-darwin-unsigned.zip.fanquake & bitcoin-556775408797-arm64-apple-darwin-unsigned.zip.thecharlatan

zipinfo {}

@@ -1,18 +1,18 @@
 Zip file size: 16309329 bytes, number of entries: 46
 drwxr-xr-x  3.0 unx        0 b- stor 24-Aug-28 16:35 Bitcoin-Qt.app/
 drwxr-xr-x  3.0 unx        0 b- stor 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/
--rw-rw-r--  3.0 unx     1613 t- defN 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Info.plist
+-rw-r--r--  3.0 unx     1613 t- defN 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Info.plist
 drwxr-xr-x  3.0 unx        0 b- stor 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/MacOS/
 -rwxr-xr-x  3.0 unx 30234116 b- defN 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/MacOS/Bitcoin-Qt
 -rw-r--r--  3.0 unx        8 t- stor 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/PkgInfo
 drwxr-xr-x  3.0 unx        0 b- stor 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Resources/
 drwxr-xr-x  3.0 unx        0 b- stor 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Resources/Base.lproj/
 -rw-r--r--  3.0 unx       72 t- defN 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Resources/Base.lproj/InfoPlist.strings
--rw-rw-r--  3.0 unx   919273 b- defN 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Resources/bitcoin.icns
+-rw-r--r--  3.0 unx   919273 b- defN 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Resources/bitcoin.icns
 -rw-r--r--  3.0 unx        0 b- stor 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Resources/empty.lproj
 -rw-r--r--  3.0 unx       47 t- defN 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Resources/qt.conf
 -rw-r--r--  3.0 unx      130 b- defN 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Resources/qt_ar.qm
 -rw-r--r--  3.0 unx      153 b- defN 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Resources/qt_bg.qm
 -rw-r--r--  3.0 unx      153 b- defN 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Resources/qt_ca.qm
 -rw-r--r--  3.0 unx      157 b- defN 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Resources/qt_cs.qm
 -rw-r--r--  3.0 unx      153 b- defN 24-Aug-28 16:35 Bitcoin-Qt.app/Contents/Resources/qt_da.qm

zipdetails --redact --scan --utc {}

@@ -832,15 +832,15 @@
 F8CD33 Uncompressed Length   0000064D
 F8CD37 Filename Length       0022
 F8CD39 Extra Length          0000
 F8CD3B Comment Length        0000
 F8CD3D Disk Start            0000
 F8CD3F Int File Attributes   0001
        [Bit 0]               1 Text Data
-F8CD41 Ext File Attributes   81B40000
+F8CD41 Ext File Attributes   81A40000
 F8CD45 Local Header Offset   00000063
 F8CD49 Filename              'XXXXXXXXXXXXXX/XXXXXXXX/XXXXXXXXXX'
 
 F8CD6B CENTRAL HEADER #4     02014B50
 F8CD6F Created Zip Spec      1E '3.0'
 F8CD70 Created OS            03 'Unix'
 F8CD71 Extract Zip Spec      0A '1.0'
@@ -988,15 +988,15 @@
 F8CF89 Uncompressed Length   000E06E9
 F8CF8D Filename Length       002E
 F8CF8F Extra Length          0000
 F8CF91 Comment Length        0000
 F8CF93 Disk Start            0000
 F8CF95 Int File Attributes   0000
        [Bit 0]               0 'Binary Data'
-F8CF97 Ext File Attributes   81B40000
+F8CF97 Ext File Attributes   81A40000
 F8CF9B Local Header Offset   00E74C26
 F8CF9F Filename              'XXXXXXXXXXXXXX/XXXXXXXX/XXXXXXXXX/XXXXX
                              XXXXXXX'
 
 F8CFCD CENTRAL HEADER #B     02014B50
 F8CFD1 Created Zip Spec      1E '3.0'
 F8CFD2 Created OS            03 'Unix'

Note that this shouldn't be related to the change here, so if you're happy with this change, I'd like to try move forward with it, so we can backport it to 28.x. I'll open a new issue to track the macOS zipping non-determinism we seem to be seeing, if we don't have it fixed before that.

Edit: opened #30815.

Copy link
Contributor

@TheCharlatan TheCharlatan left a comment

Choose a reason for hiding this comment

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

ACK 5567754

The reproducibility issues seems to be unrelated to this change, so I don't think this should be blocked by it.

@fanquake fanquake merged commit 79772cd into bitcoin:master Sep 5, 2024
16 checks passed
@fanquake fanquake deleted the libevent_non_gnu_c branch September 5, 2024 09:36
fanquake added a commit to fanquake/bitcoin that referenced this pull request Sep 5, 2024
Currently, builds of libevent in depends, using CMake, fail on some
systems, like Alpine, with the following:
```bash
/bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c: In function 'evmap_signal_add_':
/bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c:456:31: error: 'NSIG' undeclared (first use in this function)
  456 |         if (sig < 0 || sig >= NSIG)
```

From what I can tell the `_GNU_SOURCE` "detection" in libevents CMake build
system, never? really worked, and it's not clear what a nice fix is.

For now, always use `_GNU_SOURCE` when building libevent in depends.

Github-Pull: bitcoin#30743
Rebased-From: 5567754
@fanquake
Copy link
Member Author

fanquake commented Sep 5, 2024

Backported to 28.x in #30762.

achow101 added a commit that referenced this pull request Sep 5, 2024
b2a1379 depends: build libevent with -D_GNU_SOURCE (fanquake)
199bb09 test: fixing failing system_tests/run_command under some Locales (Jadi)
342baab test: Avoid intermittent timeout in p2p_headers_sync_with_minchainwork.py (MarcoFalke)
5577d5a test: fix `TestShell` initialization (late follow-up for #30463) (Sebastian Falbesoner)

Pull request description:

  Backports:
  * #30714
  * #30743
  * #30761
  * #30788

ACKs for top commit:
  willcl-ark:
    ACK b2a1379
  achow101:
    ACK b2a1379
  stickies-v:
    ACK b2a1379

Tree-SHA512: bf08ac0c613395def974a1b287345d4a64edc066c14f8c9f0184478b0e33e48333760eeb6e96b6b5fbafbb21b40d01875e3f526213a2734e226b2e111d71f3a3
TheCharlatan added a commit to TheCharlatan/rust-bitcoinkernel that referenced this pull request Sep 16, 2024
…6e67b2a

d8b6e67b2a kernel: Add check if the chainstate maanger is busy loading blocks
f12a131af8 kernel: Process transactions
75d48e6718 kernel: Add optional mempool
889632bb70 kernel: Add support for handling transactions
476c754f3b kernel: Add check for when a block has been mutated.
ebef1b465b kernel: Add support for handling block headers
a56c79a2b5 kernel: Add utxo set iteration and value retrieval
33c71843e3 kernel: Add pure kernel bitcoin-chainstate
ccb2bb59f9 kernel: Add block index utility functions to C header
c953e1f530 kernel: Add function to read block undo data from disk to C header
55673f7f70 kernel: Add functions to read block from disk to C header
348e1c0a22 kernel: Add function for copying  block data to C header
4c71ffbef6 kernel: Add functions for the block validation state to C header
160343c9c2 kernel: Add validation interface and task runner to C header
55a60d8c3f kernel: Add interrupt function to C header
0d59e95b82 kernel: Add import blocks function to C header
804e064ff6 kernel: Add chainstate load options for in-memory dbs in C header
1c829ce9f4 kernel: Add options for reindexing in C header
c8a2917004 kernel: Add block validation to C header
8015b8374c Kernel: Add chainstate loading to kernel C header
b3c8467b62 kernel: Add chainstate manager object to C header
07c55185c2 kernel: Add notifications context option to C header
71c45c0680 kerenl: Add chain params context option to C header
d2ad67bd5f kernel: Add kernel library context object
1c6716c609 kernel: Add logging to kernel library C header
63a83b8dad kernel: Introduce initial kernel C header API
REVERT: 8777c555fc kernel: Add pure kernel bitcoin-chainstate
REVERT: fcc69abdb9 kernel: Add block index utility functions to C header
REVERT: 266d21c9c6 kernel: Add function to read block undo data from disk to C header
REVERT: 62b2926c0a kernel: Add functions to read block from disk to C header
REVERT: 440d7a7a86 kernel: Add function for copying  block data to C header
REVERT: 8827ebd5ea kernel: Add functions for the block validation state to C header
REVERT: 1ad10251b4 kernel: Add validation interface and task runner to C header
REVERT: b96eb0c49c kernel: Add interrupt function to C header
REVERT: d96ffb9165 kernel: Add import blocks function to C header
REVERT: 28dc294a13 kernel: Add chainstate load options for in-memory dbs in C header
REVERT: 7de1202a01 kernel: Add options for reindexing in C header
REVERT: 2e28c5516d kernel: Add block validation to C header
REVERT: f511ce1489 Kernel: Add chainstate loading to kernel C header
REVERT: 7ed0a89a3e kernel: Add chainstate manager object to C header
REVERT: 3fb9cec5d4 kernel: Add notifications context option to C header
REVERT: d71bbbab94 kerenl: Add chain params context option to C header
REVERT: 7cfc892152 kernel: Add kernel library context object
REVERT: ba01b6bd0e kernel: Add logging to kernel library C header
REVERT: 17b98b95eb kernel: Introduce initial kernel C header API
REVERT: 0c4ff18ee9 Merge bitcoin/bitcoin#30896: kernel: Move background load thread to node context
REVERT: 87d54500bf Merge bitcoin/bitcoin#30892: test: Check already deactivated network stays suspended after dumptxoutset
REVERT: 71af7435ef Merge bitcoin/bitcoin#30233: refactor: move m_is_inbound out of CNodeState
REVERT: 1d5b2406bb Merge bitcoin/bitcoin#30877: code style: update .editorconfig file
REVERT: fea550b480 Merge bitcoin/bitcoin#30890: doc: unit test runner help fixup and improvements
REVERT: 95560616fb code style: update .editorconfig file
REVERT: 282f0e9255 Unit test runner documentation fix and improvements
REVERT: 06a9f7789e Merge bitcoin/bitcoin#30433: build: add `standard branch-protection` to hardening flags for aarch64-linux
REVERT: bc7900f33d kernel: Move background load thread to node context
REVERT: e43ce250c6 Merge bitcoin-core/gui#835: Fix crash when closing wallet
REVERT: 001b1cf010 build: use standard branch-protection for aarch64-linux
REVERT: a965f2bc07 gui: fix crash when closing wallet
REVERT: 72c9a1fe94 test: Check that network stays suspended after dumptxoutset if it was off before
REVERT: cf0120ff02 Merge bitcoin/bitcoin#30880: test: Wait for local services to update in feature_assumeutxo
REVERT: e46bebb444 Merge bitcoin/bitcoin#30546: util: Use consteval checked format string in FatalErrorf, LogConnectFailure
REVERT: be768dbd18 Merge bitcoin/bitcoin#30618: test: support std::optional in BOOST_CHECK_* and increase FromUserHex fuzz feature coverage
REVERT: 07c7c96022 Merge bitcoin/bitcoin#30883: build: Revert "Minimize I/O operations in `GenerateHeaderFrom{Json,Raw}.cmake`"
REVERT: 24817e8b15 Merge bitcoin/bitcoin#30814: kernel: Create usable static kernel library
REVERT: fdeb717e78 Revert "build: Minimize I/O operations in `GenerateHeaderFrom{Json,Raw}.cmake`"
REVERT: 07f4cebe57 refactor: move m_is_inbound out of CNodeState
REVERT: 19f4a7c95a test: Wait for local services to update in feature_assumeutxo
REVERT: 7d43bca052 Merge bitcoin/bitcoin#30872: test: fix exclude parsing for functional runner
REVERT: cf786eccd7 Merge bitcoin/bitcoin#30865: build: Skip secp256k1 ctime tests when tests are not being built
REVERT: 23eedc5d1e build: Skip secp256k1 ctime tests when tests are not being built
REVERT: fa5bc450d5 util: Use compile-time check for LogConnectFailure
REVERT: fa7087b896 util: Use compile-time check for FatalErrorf
REVERT: faa62c0112 util: Add ConstevalFormatString
REVERT: 72b46f28bf test: fix exclude parsing for functional runner
REVERT: a5e99669cc Merge bitcoin/bitcoin#30733: test: remove unused src_dir param from run_tests after CMake migration
REVERT: 0c1e507278 Merge bitcoin/bitcoin#30871: build: Add more cmake presets
REVERT: fcb61bbc8d Merge bitcoin/bitcoin#27038: security-check: test for `_FORTIFY_SOURCE` usage in release binaries
REVERT: 85833cf05f Merge bitcoin/bitcoin#30847: test: Drop no longer needed workarounds
REVERT: 11e2f9fff4 Merge bitcoin/bitcoin#30835: build: Introduce "Kernel" installation component
REVERT: db8350b0e3 Merge bitcoin/bitcoin#30803: build: Minor build system fixes and amendments
REVERT: a86e7a476d Merge bitcoin/bitcoin#30838: build: Use CMake's default permissions in macOS `deploy` target
REVERT: f0eb63399a Merge bitcoin/bitcoin#30841: ci: Post CMake-migration fixes and amendments
REVERT: 155963768a Merge bitcoin/bitcoin#30842: build: Minimize I/O operations in `GenerateHeaderFrom{Json,Raw}.cmake`
REVERT: c773618886 Merge bitcoin/bitcoin#30867: build: Fix `ENABLE_WALLET` option
REVERT: 349632e022 Merge bitcoin/bitcoin#30807: Fix peers abruptly disconnecting from AssumeUTXO nodes during IBD
REVERT: f6298a878f Merge bitcoin/bitcoin#30840: docs: Updated debug build instructions for cmake
REVERT: a8809aeb6e Merge bitcoin/bitcoin#30870: docs: updated developer notes for --with-sanitizers to -DSANITIZERS
REVERT: f15e817811 build: add more CMake presets (dev-mode, libfuzzer, libfuzzer-nosan)
REVERT: fae7b83eb5 lint: Remove forbidden functions from lint-format-strings.py
REVERT: 4b1ce3cac8 docs: updated developer notes for --with-sanitizers to -DSANITIZERS and removed resource for -fsanitze flags
REVERT: 1eac96a503 Compare FromUserHex result against other hex validators and parsers
REVERT: 19947863e1 Use BOOST_CHECK_EQUAL for optional, arith_uint256, uint256, uint160
REVERT: 0725a37494 Merge bitcoin/bitcoin#30805: test: Add explicit onion bind to p2p_permissions
REVERT: 0037d53d1a build: Fix `ENABLE_WALLET` option
REVERT: 992f83bb6f test: add coverage for assumeUTXO honest peers disconnection
REVERT: 6d5812e5c8 assumeUTXO: fix peers disconnection during sync
REVERT: 082779d606 test: Add explicit onion bind to p2p_permissions
REVERT: c66c68345e Merge bitcoin/bitcoin#30773: Remove unsafe uint256S() and test-only uint160S()
REVERT: 2756797eca Merge bitcoin/bitcoin#30065: init: fixes file descriptor accounting
REVERT: 5ba03e7d35 build: Use CMake's default permissions in macOS `deploy` target
REVERT: e4fb97a512 Merge bitcoin/bitcoin#30791: build: Use correct variable name
REVERT: df3f63ccfa Merge bitcoin/bitcoin#30509: multiprocess: Add -ipcbind option to bitcoin-node
REVERT: 743ac30e34 Add std::optional support to Boost's equality check
REVERT: 712a2b5453 Merge bitcoin/bitcoin#30817: test: Add coverage for dumptxoutset failure robustness
REVERT: fb52023ee6 Merge bitcoin/bitcoin#30684: init: fix init fatal error on invalid negated option value
REVERT: 746f88000e Merge bitcoin/bitcoin#30401: fix: increase consistency of rpcauth parsing
REVERT: 2d68c3b1c2 build: Use correct variables when passing `-fsanitize` to libsecp256k1
REVERT: df86a4f333 Merge bitcoin/bitcoin#30845: Update libsecp256k1 subtree to latest master
REVERT: be4f78275f contrib: test for FORTIFY_SOURCE in security-check.py
REVERT: 94bc3c4cc0 Merge bitcoin/bitcoin#30824: cmake: decouple `FORTIFY_SOURCE` check from `Debug` build type
REVERT: ba84c2774d Merge bitcoin/bitcoin#30823: cmake: add `USE_SOURCE_PERMISSIONS` to all `configure_file()` usage
REVERT: da3f4cb8ee Merge bitcoin/bitcoin#30850: doc: fix minor typo
REVERT: 7a669fde18 docs: Fix minor typo
REVERT: 1cc93fe7b4 build: Delete dead code that implements `IF_CHECK_FAILED` option
REVERT: 0b003e1ff7 docs: Updated debug build instructions for cmake
REVERT: 341ad23809 build: Delete MSVC special case for `BUILD_FOR_FUZZING` option
REVERT: 5c80192ff6 test: Drop no longer needed workarounds
REVERT: ff54395de4 Update secp256k1 subtree to latest master
REVERT: 611562806c Squashed 'src/secp256k1/' changes from 642c885b61..2f2ccc4695
REVERT: b07fe666f2 build: Minimize I/O operations in `GenerateHeaderFrom{Json,Raw}.cmake`
REVERT: c45186ca54 ci: Switch from `make` to `cmake --build`
REVERT: 6e5f33af58 ci: Handle log files regardless of CMake's version
REVERT: fdad128b52 build: Stop enabling CMake's CMP0141 policy
REVERT: b2a6f545b4 doc: Drop `ctest` command from Windows cross-compiling instructions
REVERT: 73b618582d build: Print `CMAKE_CXX_COMPILER_ARG1` in summary
REVERT: f03c942095 build, test: Add missed log options
REVERT: 6f2cb0eafd doc: Amend comment about ZeroMQ config files
REVERT: 0dd16d7118 build: Add a pkg-config file for libbitcoinkernel
REVERT: 45be32f838 build: Produce a usable static kernel library
REVERT: 43cd83b0c7 test: move uint256_tests/operator_with_self to arith_uint256_tests
REVERT: c6c994cb2b test: remove test-only uint160S
REVERT: 62cc4656e2 test: remove test-only uint256S
REVERT: adc00ad728 test: remove test-only arith_uint256S
REVERT: a5fa90706a Merge bitcoin/bitcoin#30834: test: Work around boost compilation error
REVERT: 7b04fabe2d build: Introduce "Kernel" installation component
REVERT: fa9d7d5d20 test: Work around boost compilation error
REVERT: fa3ecdf778 Revert "build: work around issue with Boost <= 1.80 and Clang >= 18"
REVERT: 30073e6b3a multiprocess: Add -ipcbind option to bitcoin-node
REVERT: bbf95c0cc5 Merge bitcoin/bitcoin#30755: ci: Add missed configuration options to "Win64 native" job
REVERT: 73fe7d7230 multiprocess: Add unit tests for connect, serve, and listen functions
REVERT: 955d4077aa multiprocess: Add IPC connectAddress and listenAddress methods
REVERT: 4da20434d4 depends: Update libmultiprocess library for CustomMessage function and ThreadContext bugfix
REVERT: ee22bf55e3 doc: Update and amend MSVC build guide
REVERT: c07fdd6546 fuzz: Don't compile BDB-specific code on MSVC in `wallet_bdb_parser.cpp`
REVERT: e07a3ede52 ci: Add missed configuration options to "Win64 native" job
REVERT: 1f054eca4e cmake: add USE_SOURCE_PERMISSIONS to all configure_file usage
REVERT: 0e5cd608da Merge bitcoin/bitcoin#30415: contrib: fix check-deps.sh to check for weak symbols
REVERT: 118b55c462 Merge bitcoin/bitcoin#30790: bench: Remove redundant logging benchmarks
REVERT: c0cbe26a86 Merge bitcoin/bitcoin#30748: test: Pin and document TEST_DIR_PATH_ELEMENT, SeedRand::FIXED_SEED
REVERT: c3af4b1ec3 Merge bitcoin/bitcoin#30822: cmake: scope Boost Test check to `vcpkg`
REVERT: 7f472e9bcd Merge bitcoin/bitcoin#30821: build: work around issue with Boost <= 1.80 and Clang >= 18
REVERT: d4c7c4009d init: error out if -maxconnections is negative
REVERT: c773649481 init: improves file descriptors accounting and docs
REVERT: 29008a7ff4 init: fixes fd accounting regarding poll/select
REVERT: 30803a35d5 cmake: decouple FORTIFY_SOURCE check from Debug build type
REVERT: a7a4e11db8 cmake: scope Boost Test check to vcpkg
REVERT: d661e2b1b7 Merge bitcoin/bitcoin#30812: lint: Check for release note snippets in the wrong folder
REVERT: cd062d6684 build: work around issue with Boost <= 1.80 and Clang >= 18
REVERT: d6a1b94ffd Merge bitcoin-core/gui#834: qt, build: remove unneeded `Q_IMPORT_PLUGIN` macro calls
REVERT: 6852d1d487 Merge bitcoin/bitcoin#30796: test: Use std::span and std::string_view for raw data
REVERT: fa3a7ebe5b lint: Check for release note snippets in the wrong folder
REVERT: fa05ee0517 Merge bitcoin/bitcoin#30772: build: Fix / improve coverage scripts
REVERT: 79772cd26e Merge bitcoin/bitcoin#30743: depends: build libevent with `-D_GNU_SOURCE`
REVERT: faecca9a85 test: Use span for raw data
REVERT: c2b779da4e refactor: Manage dumptxoutset RAII classes with std::optional
REVERT: 4b5bf335ad test: Add coverage for failing dumptxoutset behavior
REVERT: f794a0d5f4 Merge bitcoin/bitcoin#30819: doc: fix assumeutxo design doc link
REVERT: fadbcd51fc bench: Remove redundant logging benchmarks
REVERT: fa8dd952e2 bench: Use LogInfo instead of the deprecated alias LogPrintf
REVERT: e5f7272ad3 doc: fix assumeutxo design doc link
REVERT: 93e48240bf Merge bitcoin/bitcoin#30244: ci: parse TEST_RUNNER_EXTRA into an array
REVERT: f640b323bd Merge bitcoin/bitcoin#30723: lint: Speed up and fix flake8 checks
REVERT: 3ae35b427f ci: run check-deps.sh as part of clang-tidy job
REVERT: 0aaa1298a0 contrib: fix check-deps.sh when libraries do not import symbols
REVERT: 3c99f5a38a contrib: fix check-deps.sh to check for weak symbols
REVERT: 86c80e9cf2 contrib: make check-deps.sh script work with cmake
REVERT: 5373aa30e2 Merge bitcoin/bitcoin#30788: test: fixing failing system_tests/run_command under some Locales
REVERT: 3210d87dfc Merge bitcoin/bitcoin#29043: fuzz: make FuzzedDataProvider usage deterministic
REVERT: 81276540d3 Merge bitcoin/bitcoin#30148: cli: restrict multiple exclusive argument usage in bitcoin-cli
REVERT: 210210c923 Merge bitcoin/bitcoin#29566: test: update satoshi_round function
REVERT: b0c3de6847 Merge bitcoin/bitcoin#28417: contrib/signet/miner updates
REVERT: cb65ac469a Merge bitcoin/bitcoin#29605: net: Favor peers from addrman over fetching seednodes
REVERT: b8d2f58e06 Merge bitcoin/bitcoin#30808: rpc: dumptxoutset height parameter follow-ups (29553)
REVERT: f51b237723 refactor: rpc: use uint256::FromHex for ParseHashV
REVERT: d9fcbfc372 build: Add `JOBS` variable support to `CoverageFuzz.cmake` script
REVERT: e7cf4a6f27 build: Add missed `-g` for "Coverage" build configuration
REVERT: fe2003ab12 build: Add `COMMAND_ERROR_IS_FATAL` to every process in coverage scrips
REVERT: a3108a7c56 rpc: Manage dumptxoutset rollback with RAII class
REVERT: c5eaae3b89 doc: Add -rpcclienttimeout=0 to loadtxoutset examples
REVERT: 598b9bba5a rpc: Don't re-enable previously disabled network after dumptxoutset
REVERT: ae48a22a3d test: fixing failing system_tests/run_command under some Locales
REVERT: fac973647d test: Use string_view for json_tests
REVERT: 5567754087 depends: build libevent with -D_GNU_SOURCE
REVERT: 7346b01092 qt, build: remove unneeded `Q_IMPORT_PLUGIN` macro calls
REVERT: fa84f9decd test: Pin and document TEST_DIR_PATH_ELEMENT
REVERT: 2ad560139b Remove unused src_dir param from run_tests
REVERT: 2222f7a874 test: Rename SeedRand::SEED to FIXED_SEED for clarity
REVERT: fafdb7df34 lint: Speed up flake8 checks
REVERT: faf17df7fb lint: Document missing py_lint dependency
REVERT: faebeb828f lint: Remove python whitespace and shadowing lint rules
REVERT: 7777047835 lint: Remove python lint rules that are SyntaxError
REVERT: faaf3e53f0 test: [refactor] Fix F841 flake8
REVERT: 444421db69 test: [refactor] Fix E714 pycodestyle
REVERT: ee47ca29d6 init: fix fatal error on '-wallet' negated option value
REVERT: 27c976d11a fix: increase consistency of rpcauth parsing
REVERT: 2ad3689512 test: add norpcauth test
REVERT: 67df0dec1a test: blank rpcauth CLI interaction
REVERT: fb6d51eb25 signet/miner: Use argparse exclusive groups
REVERT: ec317bc44b test: update satoshi_round function
REVERT: ecc98ccff2 test: add cases for blank rpcauth
REVERT: c8e6771af0 test: restrict multiple CLI arguments
REVERT: 8838c4f171 common/args.h: automate check for multiple cli commands
REVERT: 6eeb188d40 test: adds seednode functional tests
REVERT: 3270f0adad net: Favor peers from addrman over fetching seednodes
REVERT: 8131bf7483 ci: parse TEST_RUNNER_EXTRA into an array
REVERT: c4762b0aa0 test: allow excluding func test by name and arg
REVERT: 338a266a9a signet/miner: add support for a poolnum/poolid tag in mined blocks
REVERT: 409ab7d35b signet/miner: add Generate.mine function
REVERT: 7b31332370 signet/miner: add Generate.gbt function
REVERT: 85c5c0bea9 signet/miner: add Generate.next_block_time function
REVERT: 5540e6ca49 signet/miner: move next_block_* functions into new Generator class
REVERT: 35f4631196 signet/miner: rename do_decode_psbt to decode_psbt
REVERT: aac040b439 signet/miner: drop create_coinbase function
REVERT: 16951f549e signet/miner: drop do_createpsbt function
REVERT: 3aed0a4284 signet/miner: drop get_reward_address function
REVERT: 01960c53c7 fuzz: make FuzzedDataProvider usage deterministic

git-subtree-dir: libbitcoinkernel-sys/bitcoin
git-subtree-split: d8b6e67b2a12332f188320e90262e2d741e27f7b
TheCharlatan added a commit to TheCharlatan/rust-bitcoinkernel that referenced this pull request Sep 16, 2024
…e7b1f5e

d5ee7b1f5e kernel: Add check if the chainstate maanger is busy loading blocks
604752a1da kernel: Process transactions
37d74344e8 kernel: Add optional mempool
fdfb45e273 kernel: Add support for handling transactions
5ed4aa699c kernel: Add check for when a block has been mutated.
b8f6a2740d kernel: Add support for handling block headers
1aad96a695 kernel: Add utxo set iteration and value retrieval
8777c555fc kernel: Add pure kernel bitcoin-chainstate
fcc69abdb9 kernel: Add block index utility functions to C header
266d21c9c6 kernel: Add function to read block undo data from disk to C header
62b2926c0a kernel: Add functions to read block from disk to C header
440d7a7a86 kernel: Add function for copying  block data to C header
8827ebd5ea kernel: Add functions for the block validation state to C header
1ad10251b4 kernel: Add validation interface and task runner to C header
b96eb0c49c kernel: Add interrupt function to C header
d96ffb9165 kernel: Add import blocks function to C header
28dc294a13 kernel: Add chainstate load options for in-memory dbs in C header
7de1202a01 kernel: Add options for reindexing in C header
2e28c5516d kernel: Add block validation to C header
f511ce1489 Kernel: Add chainstate loading to kernel C header
7ed0a89a3e kernel: Add chainstate manager object to C header
3fb9cec5d4 kernel: Add notifications context option to C header
d71bbbab94 kerenl: Add chain params context option to C header
7cfc892152 kernel: Add kernel library context object
ba01b6bd0e kernel: Add logging to kernel library C header
17b98b95eb kernel: Introduce initial kernel C header API
0c4ff18ee9 Merge bitcoin/bitcoin#30896: kernel: Move background load thread to node context
87d54500bf Merge bitcoin/bitcoin#30892: test: Check already deactivated network stays suspended after dumptxoutset
71af7435ef Merge bitcoin/bitcoin#30233: refactor: move m_is_inbound out of CNodeState
1d5b2406bb Merge bitcoin/bitcoin#30877: code style: update .editorconfig file
fea550b480 Merge bitcoin/bitcoin#30890: doc: unit test runner help fixup and improvements
95560616fb code style: update .editorconfig file
282f0e9255 Unit test runner documentation fix and improvements
06a9f7789e Merge bitcoin/bitcoin#30433: build: add `standard branch-protection` to hardening flags for aarch64-linux
bc7900f33d kernel: Move background load thread to node context
e43ce250c6 Merge bitcoin-core/gui#835: Fix crash when closing wallet
001b1cf010 build: use standard branch-protection for aarch64-linux
a965f2bc07 gui: fix crash when closing wallet
72c9a1fe94 test: Check that network stays suspended after dumptxoutset if it was off before
cf0120ff02 Merge bitcoin/bitcoin#30880: test: Wait for local services to update in feature_assumeutxo
e46bebb444 Merge bitcoin/bitcoin#30546: util: Use consteval checked format string in FatalErrorf, LogConnectFailure
be768dbd18 Merge bitcoin/bitcoin#30618: test: support std::optional in BOOST_CHECK_* and increase FromUserHex fuzz feature coverage
07c7c96022 Merge bitcoin/bitcoin#30883: build: Revert "Minimize I/O operations in `GenerateHeaderFrom{Json,Raw}.cmake`"
24817e8b15 Merge bitcoin/bitcoin#30814: kernel: Create usable static kernel library
fdeb717e78 Revert "build: Minimize I/O operations in `GenerateHeaderFrom{Json,Raw}.cmake`"
07f4cebe57 refactor: move m_is_inbound out of CNodeState
19f4a7c95a test: Wait for local services to update in feature_assumeutxo
7d43bca052 Merge bitcoin/bitcoin#30872: test: fix exclude parsing for functional runner
cf786eccd7 Merge bitcoin/bitcoin#30865: build: Skip secp256k1 ctime tests when tests are not being built
23eedc5d1e build: Skip secp256k1 ctime tests when tests are not being built
fa5bc450d5 util: Use compile-time check for LogConnectFailure
fa7087b896 util: Use compile-time check for FatalErrorf
faa62c0112 util: Add ConstevalFormatString
72b46f28bf test: fix exclude parsing for functional runner
a5e99669cc Merge bitcoin/bitcoin#30733: test: remove unused src_dir param from run_tests after CMake migration
0c1e507278 Merge bitcoin/bitcoin#30871: build: Add more cmake presets
fcb61bbc8d Merge bitcoin/bitcoin#27038: security-check: test for `_FORTIFY_SOURCE` usage in release binaries
85833cf05f Merge bitcoin/bitcoin#30847: test: Drop no longer needed workarounds
11e2f9fff4 Merge bitcoin/bitcoin#30835: build: Introduce "Kernel" installation component
db8350b0e3 Merge bitcoin/bitcoin#30803: build: Minor build system fixes and amendments
a86e7a476d Merge bitcoin/bitcoin#30838: build: Use CMake's default permissions in macOS `deploy` target
f0eb63399a Merge bitcoin/bitcoin#30841: ci: Post CMake-migration fixes and amendments
155963768a Merge bitcoin/bitcoin#30842: build: Minimize I/O operations in `GenerateHeaderFrom{Json,Raw}.cmake`
c773618886 Merge bitcoin/bitcoin#30867: build: Fix `ENABLE_WALLET` option
349632e022 Merge bitcoin/bitcoin#30807: Fix peers abruptly disconnecting from AssumeUTXO nodes during IBD
f6298a878f Merge bitcoin/bitcoin#30840: docs: Updated debug build instructions for cmake
a8809aeb6e Merge bitcoin/bitcoin#30870: docs: updated developer notes for --with-sanitizers to -DSANITIZERS
f15e817811 build: add more CMake presets (dev-mode, libfuzzer, libfuzzer-nosan)
fae7b83eb5 lint: Remove forbidden functions from lint-format-strings.py
4b1ce3cac8 docs: updated developer notes for --with-sanitizers to -DSANITIZERS and removed resource for -fsanitze flags
1eac96a503 Compare FromUserHex result against other hex validators and parsers
19947863e1 Use BOOST_CHECK_EQUAL for optional, arith_uint256, uint256, uint160
0725a37494 Merge bitcoin/bitcoin#30805: test: Add explicit onion bind to p2p_permissions
0037d53d1a build: Fix `ENABLE_WALLET` option
992f83bb6f test: add coverage for assumeUTXO honest peers disconnection
6d5812e5c8 assumeUTXO: fix peers disconnection during sync
082779d606 test: Add explicit onion bind to p2p_permissions
c66c68345e Merge bitcoin/bitcoin#30773: Remove unsafe uint256S() and test-only uint160S()
2756797eca Merge bitcoin/bitcoin#30065: init: fixes file descriptor accounting
5ba03e7d35 build: Use CMake's default permissions in macOS `deploy` target
e4fb97a512 Merge bitcoin/bitcoin#30791: build: Use correct variable name
df3f63ccfa Merge bitcoin/bitcoin#30509: multiprocess: Add -ipcbind option to bitcoin-node
743ac30e34 Add std::optional support to Boost's equality check
712a2b5453 Merge bitcoin/bitcoin#30817: test: Add coverage for dumptxoutset failure robustness
fb52023ee6 Merge bitcoin/bitcoin#30684: init: fix init fatal error on invalid negated option value
746f88000e Merge bitcoin/bitcoin#30401: fix: increase consistency of rpcauth parsing
2d68c3b1c2 build: Use correct variables when passing `-fsanitize` to libsecp256k1
df86a4f333 Merge bitcoin/bitcoin#30845: Update libsecp256k1 subtree to latest master
be4f78275f contrib: test for FORTIFY_SOURCE in security-check.py
94bc3c4cc0 Merge bitcoin/bitcoin#30824: cmake: decouple `FORTIFY_SOURCE` check from `Debug` build type
ba84c2774d Merge bitcoin/bitcoin#30823: cmake: add `USE_SOURCE_PERMISSIONS` to all `configure_file()` usage
da3f4cb8ee Merge bitcoin/bitcoin#30850: doc: fix minor typo
7a669fde18 docs: Fix minor typo
1cc93fe7b4 build: Delete dead code that implements `IF_CHECK_FAILED` option
0b003e1ff7 docs: Updated debug build instructions for cmake
341ad23809 build: Delete MSVC special case for `BUILD_FOR_FUZZING` option
5c80192ff6 test: Drop no longer needed workarounds
ff54395de4 Update secp256k1 subtree to latest master
611562806c Squashed 'src/secp256k1/' changes from 642c885b61..2f2ccc4695
b07fe666f2 build: Minimize I/O operations in `GenerateHeaderFrom{Json,Raw}.cmake`
c45186ca54 ci: Switch from `make` to `cmake --build`
6e5f33af58 ci: Handle log files regardless of CMake's version
fdad128b52 build: Stop enabling CMake's CMP0141 policy
b2a6f545b4 doc: Drop `ctest` command from Windows cross-compiling instructions
73b618582d build: Print `CMAKE_CXX_COMPILER_ARG1` in summary
f03c942095 build, test: Add missed log options
6f2cb0eafd doc: Amend comment about ZeroMQ config files
0dd16d7118 build: Add a pkg-config file for libbitcoinkernel
45be32f838 build: Produce a usable static kernel library
43cd83b0c7 test: move uint256_tests/operator_with_self to arith_uint256_tests
c6c994cb2b test: remove test-only uint160S
62cc4656e2 test: remove test-only uint256S
adc00ad728 test: remove test-only arith_uint256S
a5fa90706a Merge bitcoin/bitcoin#30834: test: Work around boost compilation error
7b04fabe2d build: Introduce "Kernel" installation component
fa9d7d5d20 test: Work around boost compilation error
fa3ecdf778 Revert "build: work around issue with Boost <= 1.80 and Clang >= 18"
30073e6b3a multiprocess: Add -ipcbind option to bitcoin-node
bbf95c0cc5 Merge bitcoin/bitcoin#30755: ci: Add missed configuration options to "Win64 native" job
73fe7d7230 multiprocess: Add unit tests for connect, serve, and listen functions
955d4077aa multiprocess: Add IPC connectAddress and listenAddress methods
4da20434d4 depends: Update libmultiprocess library for CustomMessage function and ThreadContext bugfix
ee22bf55e3 doc: Update and amend MSVC build guide
c07fdd6546 fuzz: Don't compile BDB-specific code on MSVC in `wallet_bdb_parser.cpp`
e07a3ede52 ci: Add missed configuration options to "Win64 native" job
1f054eca4e cmake: add USE_SOURCE_PERMISSIONS to all configure_file usage
0e5cd608da Merge bitcoin/bitcoin#30415: contrib: fix check-deps.sh to check for weak symbols
118b55c462 Merge bitcoin/bitcoin#30790: bench: Remove redundant logging benchmarks
c0cbe26a86 Merge bitcoin/bitcoin#30748: test: Pin and document TEST_DIR_PATH_ELEMENT, SeedRand::FIXED_SEED
c3af4b1ec3 Merge bitcoin/bitcoin#30822: cmake: scope Boost Test check to `vcpkg`
7f472e9bcd Merge bitcoin/bitcoin#30821: build: work around issue with Boost <= 1.80 and Clang >= 18
d4c7c4009d init: error out if -maxconnections is negative
c773649481 init: improves file descriptors accounting and docs
29008a7ff4 init: fixes fd accounting regarding poll/select
30803a35d5 cmake: decouple FORTIFY_SOURCE check from Debug build type
a7a4e11db8 cmake: scope Boost Test check to vcpkg
d661e2b1b7 Merge bitcoin/bitcoin#30812: lint: Check for release note snippets in the wrong folder
cd062d6684 build: work around issue with Boost <= 1.80 and Clang >= 18
d6a1b94ffd Merge bitcoin-core/gui#834: qt, build: remove unneeded `Q_IMPORT_PLUGIN` macro calls
6852d1d487 Merge bitcoin/bitcoin#30796: test: Use std::span and std::string_view for raw data
fa3a7ebe5b lint: Check for release note snippets in the wrong folder
fa05ee0517 Merge bitcoin/bitcoin#30772: build: Fix / improve coverage scripts
79772cd26e Merge bitcoin/bitcoin#30743: depends: build libevent with `-D_GNU_SOURCE`
faecca9a85 test: Use span for raw data
c2b779da4e refactor: Manage dumptxoutset RAII classes with std::optional
4b5bf335ad test: Add coverage for failing dumptxoutset behavior
f794a0d5f4 Merge bitcoin/bitcoin#30819: doc: fix assumeutxo design doc link
fadbcd51fc bench: Remove redundant logging benchmarks
fa8dd952e2 bench: Use LogInfo instead of the deprecated alias LogPrintf
e5f7272ad3 doc: fix assumeutxo design doc link
93e48240bf Merge bitcoin/bitcoin#30244: ci: parse TEST_RUNNER_EXTRA into an array
f640b323bd Merge bitcoin/bitcoin#30723: lint: Speed up and fix flake8 checks
3ae35b427f ci: run check-deps.sh as part of clang-tidy job
0aaa1298a0 contrib: fix check-deps.sh when libraries do not import symbols
3c99f5a38a contrib: fix check-deps.sh to check for weak symbols
86c80e9cf2 contrib: make check-deps.sh script work with cmake
5373aa30e2 Merge bitcoin/bitcoin#30788: test: fixing failing system_tests/run_command under some Locales
3210d87dfc Merge bitcoin/bitcoin#29043: fuzz: make FuzzedDataProvider usage deterministic
81276540d3 Merge bitcoin/bitcoin#30148: cli: restrict multiple exclusive argument usage in bitcoin-cli
210210c923 Merge bitcoin/bitcoin#29566: test: update satoshi_round function
b0c3de6847 Merge bitcoin/bitcoin#28417: contrib/signet/miner updates
cb65ac469a Merge bitcoin/bitcoin#29605: net: Favor peers from addrman over fetching seednodes
b8d2f58e06 Merge bitcoin/bitcoin#30808: rpc: dumptxoutset height parameter follow-ups (29553)
f51b237723 refactor: rpc: use uint256::FromHex for ParseHashV
d9fcbfc372 build: Add `JOBS` variable support to `CoverageFuzz.cmake` script
e7cf4a6f27 build: Add missed `-g` for "Coverage" build configuration
fe2003ab12 build: Add `COMMAND_ERROR_IS_FATAL` to every process in coverage scrips
a3108a7c56 rpc: Manage dumptxoutset rollback with RAII class
c5eaae3b89 doc: Add -rpcclienttimeout=0 to loadtxoutset examples
598b9bba5a rpc: Don't re-enable previously disabled network after dumptxoutset
ae48a22a3d test: fixing failing system_tests/run_command under some Locales
fac973647d test: Use string_view for json_tests
5567754087 depends: build libevent with -D_GNU_SOURCE
7346b01092 qt, build: remove unneeded `Q_IMPORT_PLUGIN` macro calls
fa84f9decd test: Pin and document TEST_DIR_PATH_ELEMENT
2ad560139b Remove unused src_dir param from run_tests
2222f7a874 test: Rename SeedRand::SEED to FIXED_SEED for clarity
fafdb7df34 lint: Speed up flake8 checks
faf17df7fb lint: Document missing py_lint dependency
faebeb828f lint: Remove python whitespace and shadowing lint rules
7777047835 lint: Remove python lint rules that are SyntaxError
faaf3e53f0 test: [refactor] Fix F841 flake8
444421db69 test: [refactor] Fix E714 pycodestyle
ee47ca29d6 init: fix fatal error on '-wallet' negated option value
27c976d11a fix: increase consistency of rpcauth parsing
2ad3689512 test: add norpcauth test
67df0dec1a test: blank rpcauth CLI interaction
fb6d51eb25 signet/miner: Use argparse exclusive groups
ec317bc44b test: update satoshi_round function
ecc98ccff2 test: add cases for blank rpcauth
c8e6771af0 test: restrict multiple CLI arguments
8838c4f171 common/args.h: automate check for multiple cli commands
6eeb188d40 test: adds seednode functional tests
3270f0adad net: Favor peers from addrman over fetching seednodes
8131bf7483 ci: parse TEST_RUNNER_EXTRA into an array
c4762b0aa0 test: allow excluding func test by name and arg
338a266a9a signet/miner: add support for a poolnum/poolid tag in mined blocks
409ab7d35b signet/miner: add Generate.mine function
7b31332370 signet/miner: add Generate.gbt function
85c5c0bea9 signet/miner: add Generate.next_block_time function
5540e6ca49 signet/miner: move next_block_* functions into new Generator class
35f4631196 signet/miner: rename do_decode_psbt to decode_psbt
aac040b439 signet/miner: drop create_coinbase function
16951f549e signet/miner: drop do_createpsbt function
3aed0a4284 signet/miner: drop get_reward_address function
01960c53c7 fuzz: make FuzzedDataProvider usage deterministic
REVERT: d8b6e67b2a kernel: Add check if the chainstate maanger is busy loading blocks
REVERT: f12a131af8 kernel: Process transactions
REVERT: 75d48e6718 kernel: Add optional mempool
REVERT: 889632bb70 kernel: Add support for handling transactions
REVERT: 476c754f3b kernel: Add check for when a block has been mutated.
REVERT: ebef1b465b kernel: Add support for handling block headers
REVERT: a56c79a2b5 kernel: Add utxo set iteration and value retrieval
REVERT: 33c71843e3 kernel: Add pure kernel bitcoin-chainstate
REVERT: ccb2bb59f9 kernel: Add block index utility functions to C header
REVERT: c953e1f530 kernel: Add function to read block undo data from disk to C header
REVERT: 55673f7f70 kernel: Add functions to read block from disk to C header
REVERT: 348e1c0a22 kernel: Add function for copying  block data to C header
REVERT: 4c71ffbef6 kernel: Add functions for the block validation state to C header
REVERT: 160343c9c2 kernel: Add validation interface and task runner to C header
REVERT: 55a60d8c3f kernel: Add interrupt function to C header
REVERT: 0d59e95b82 kernel: Add import blocks function to C header
REVERT: 804e064ff6 kernel: Add chainstate load options for in-memory dbs in C header
REVERT: 1c829ce9f4 kernel: Add options for reindexing in C header
REVERT: c8a2917004 kernel: Add block validation to C header
REVERT: 8015b8374c Kernel: Add chainstate loading to kernel C header
REVERT: b3c8467b62 kernel: Add chainstate manager object to C header
REVERT: 07c55185c2 kernel: Add notifications context option to C header
REVERT: 71c45c0680 kerenl: Add chain params context option to C header
REVERT: d2ad67bd5f kernel: Add kernel library context object
REVERT: 1c6716c609 kernel: Add logging to kernel library C header
REVERT: 63a83b8dad kernel: Introduce initial kernel C header API

git-subtree-dir: libbitcoinkernel-sys/bitcoin
git-subtree-split: d5ee7b1f5ee19e454a74d00502a0bf7be849c260
PastaPastaPasta pushed a commit to PastaPastaPasta/dash that referenced this pull request Sep 27, 2024
5567754 depends: build libevent with -D_GNU_SOURCE (fanquake)

Pull request description:

  Currently, builds of libevent in depends, using CMake, fail on some systems, like Alpine, with the following:
  ```bash
  /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c: In function 'evmap_signal_add_':
  /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c:456:31: error: 'NSIG' undeclared (first use in this function)
    456 |         if (sig < 0 || sig >= NSIG)
  ```

  From what I can tell the `GNU_SOURCE` "detection" in libevents CMake build system, never? really worked, primarily relies on looking for a deprecated define, and it's not clear what a nice fix is. For now, always build with `_GNU_SOURCE`, to match the autotools behaviour.

ACKs for top commit:
  TheCharlatan:
    ACK 5567754

Tree-SHA512: 4552b4a92867e8fa2af0ffa39b2be6c994bf739de7ce6a7c581590be486da81f7d93fca816854548c1e912347d33a35218c441b5058c3cbd3e82c74a9b7c78d9
PastaPastaPasta pushed a commit to PastaPastaPasta/dash that referenced this pull request Sep 27, 2024
5567754 depends: build libevent with -D_GNU_SOURCE (fanquake)

Pull request description:

  Currently, builds of libevent in depends, using CMake, fail on some systems, like Alpine, with the following:
  ```bash
  /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c: In function 'evmap_signal_add_':
  /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c:456:31: error: 'NSIG' undeclared (first use in this function)
    456 |         if (sig < 0 || sig >= NSIG)
  ```

  From what I can tell the `GNU_SOURCE` "detection" in libevents CMake build system, never? really worked, primarily relies on looking for a deprecated define, and it's not clear what a nice fix is. For now, always build with `_GNU_SOURCE`, to match the autotools behaviour.

ACKs for top commit:
  TheCharlatan:
    ACK 5567754

Tree-SHA512: 4552b4a92867e8fa2af0ffa39b2be6c994bf739de7ce6a7c581590be486da81f7d93fca816854548c1e912347d33a35218c441b5058c3cbd3e82c74a9b7c78d9
PastaPastaPasta pushed a commit to PastaPastaPasta/dash that referenced this pull request Sep 27, 2024
5567754 depends: build libevent with -D_GNU_SOURCE (fanquake)

Pull request description:

  Currently, builds of libevent in depends, using CMake, fail on some systems, like Alpine, with the following:
  ```bash
  /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c: In function 'evmap_signal_add_':
  /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c:456:31: error: 'NSIG' undeclared (first use in this function)
    456 |         if (sig < 0 || sig >= NSIG)
  ```

  From what I can tell the `GNU_SOURCE` "detection" in libevents CMake build system, never? really worked, primarily relies on looking for a deprecated define, and it's not clear what a nice fix is. For now, always build with `_GNU_SOURCE`, to match the autotools behaviour.

ACKs for top commit:
  TheCharlatan:
    ACK 5567754

Tree-SHA512: 4552b4a92867e8fa2af0ffa39b2be6c994bf739de7ce6a7c581590be486da81f7d93fca816854548c1e912347d33a35218c441b5058c3cbd3e82c74a9b7c78d9
PastaPastaPasta pushed a commit to PastaPastaPasta/dash that referenced this pull request Sep 28, 2024
5567754 depends: build libevent with -D_GNU_SOURCE (fanquake)

Pull request description:

  Currently, builds of libevent in depends, using CMake, fail on some systems, like Alpine, with the following:
  ```bash
  /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c: In function 'evmap_signal_add_':
  /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c:456:31: error: 'NSIG' undeclared (first use in this function)
    456 |         if (sig < 0 || sig >= NSIG)
  ```

  From what I can tell the `GNU_SOURCE` "detection" in libevents CMake build system, never? really worked, primarily relies on looking for a deprecated define, and it's not clear what a nice fix is. For now, always build with `_GNU_SOURCE`, to match the autotools behaviour.

ACKs for top commit:
  TheCharlatan:
    ACK 5567754

Tree-SHA512: 4552b4a92867e8fa2af0ffa39b2be6c994bf739de7ce6a7c581590be486da81f7d93fca816854548c1e912347d33a35218c441b5058c3cbd3e82c74a9b7c78d9
PastaPastaPasta pushed a commit to PastaPastaPasta/dash that referenced this pull request Oct 1, 2024
5567754 depends: build libevent with -D_GNU_SOURCE (fanquake)

Pull request description:

  Currently, builds of libevent in depends, using CMake, fail on some systems, like Alpine, with the following:
  ```bash
  /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c: In function 'evmap_signal_add_':
  /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c:456:31: error: 'NSIG' undeclared (first use in this function)
    456 |         if (sig < 0 || sig >= NSIG)
  ```

  From what I can tell the `GNU_SOURCE` "detection" in libevents CMake build system, never? really worked, primarily relies on looking for a deprecated define, and it's not clear what a nice fix is. For now, always build with `_GNU_SOURCE`, to match the autotools behaviour.

ACKs for top commit:
  TheCharlatan:
    ACK 5567754

Tree-SHA512: 4552b4a92867e8fa2af0ffa39b2be6c994bf739de7ce6a7c581590be486da81f7d93fca816854548c1e912347d33a35218c441b5058c3cbd3e82c74a9b7c78d9
PastaPastaPasta pushed a commit to PastaPastaPasta/dash that referenced this pull request Oct 2, 2024
5567754 depends: build libevent with -D_GNU_SOURCE (fanquake)

Pull request description:

  Currently, builds of libevent in depends, using CMake, fail on some systems, like Alpine, with the following:
  ```bash
  /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c: In function 'evmap_signal_add_':
  /bitcoin/depends/work/build/aarch64-unknown-linux-musl/libevent/2.1.12-stable-1516ed47ea8/evmap.c:456:31: error: 'NSIG' undeclared (first use in this function)
    456 |         if (sig < 0 || sig >= NSIG)
  ```

  From what I can tell the `GNU_SOURCE` "detection" in libevents CMake build system, never? really worked, primarily relies on looking for a deprecated define, and it's not clear what a nice fix is. For now, always build with `_GNU_SOURCE`, to match the autotools behaviour.

ACKs for top commit:
  TheCharlatan:
    ACK 5567754

Tree-SHA512: 4552b4a92867e8fa2af0ffa39b2be6c994bf739de7ce6a7c581590be486da81f7d93fca816854548c1e912347d33a35218c441b5058c3cbd3e82c74a9b7c78d9
PastaPastaPasta added a commit to dashpay/dash that referenced this pull request Oct 3, 2024
1b62294 Merge bitcoin#30743: depends: build libevent with `-D_GNU_SOURCE` (merge-script)
0f135dd Merge bitcoin#30522: ci: Add missing qttools5-dev install to Asan task (merge-script)
d46e16c Merge bitcoin#30490: depends: bump libmultiprocess for CMake fixes (merge-script)
7a63c20 Merge bitcoin#29276: depends: Update libmultiprocess library to fix C++20 macos build error (fanquake)
630e767 Merge bitcoin#28907: depends: bump libmultiprocess to fix capnproto deprecation warnings (fanquake)
318471d Merge bitcoin#28735: depends: Bump to capnproto-c++-1.0.1 (fanquake)
ad0c279 Merge bitcoin#26672: build: Update libmultiprocess library (fanquake)

Pull request description:

  ## Issue being fixed or feature implemented
  depends on #6294

  ## What was done?
  Batch of backports

  ## How Has This Been Tested?

  ## Breaking Changes

  ## Checklist:
    _Go over all the following points, and put an `x` in all the boxes that apply._
  - [ ] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

ACKs for top commit:
  UdjinM6:
    utACK 1b62294

Tree-SHA512: a0a01b1b4844725aa6c96304a4cddae61ec29b677a760f35648e7f39fb36f6f462d3a6d5e411e99f4db1fa59c01f6fffd87158cbef5e1ba1edb43e68fc362c77
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.

5 participants