aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-04-25Merge bitcoin/bitcoin#29953: doc: Bash is needed in gen_id and is not ↵merge-script
installed on FreeBSD by default 9381052194a78024b3994cc6ad906858c477b88f doc: Bash is needed in gen_id and is not installed on FreeBSD by default (Hennadii Stepanov) Pull request description: On FreeBSD 14.0, in the `depends` directory: - without `bash`: ``` $ gmake print-bdb_build_id_long env: bash: No such file or directory env: bash: No such file or directory bdb_build_id_long=bdb-4.8.30-4b0c6f8e95251b9c6731844fc34111c04b75fd9f15c671d6e34f2a4d014ec1be-release $ gmake print-final_build_id env: bash: No such file or directory env: bash: No such file or directory final_build_id=722b2d3e264 ``` - with `bash`: ``` $ gmake print-bdb_build_id_long bdb_build_id_long=bdb-4.8.30-4b0c6f8e95251b9c6731844fc34111c04b75fd9f15c671d6e34f2a4d014ec1be-release 1ed47cefe468014c79dedb275cf921f44ab28d91dd56bf94712409b81326d765 $ gmake print-final_build_id final_build_id=7b4f9aaa683 ``` ACKs for top commit: vasild: ACK 9381052194a78024b3994cc6ad906858c477b88f kristapsk: ACK 9381052194a78024b3994cc6ad906858c477b88f alfonsoromanz: ACK 9381052194a78024b3994cc6ad906858c477b88f Tree-SHA512: da3f3469ac416518180194f09fb054fb352a2793848fb9a7982439de08244ff6149a7f449ad21fcdf0e9bd79b6949a91751f9cc35833953d2b6a35cea5c6ae21
2024-04-25Merge bitcoin/bitcoin#29890: deploy: remove some tools when cross-compiling ↵merge-script
for macOS 1a9aa8d4eedff3788c792799328ad599132e0da1 build: better scope usage of -Wl,-headerpad_max_install_names (fanquake) 3bee51427a05075150721f0a05ead8f92e1ba019 build: don't use install_name_tool for macOS deploy when cross-compiling (fanquake) 78b6b5c485191b85ae201df9d5ef0bcdaaa9c190 build: don't pass strip to macOS deploy if cross-compiling (fanquake) Pull request description: Neither of these tools are actually used when we are cross-compiling for macOS. They are used when we have to adjust non-static libs during a deploy after building on a macOS machine. Simplies #29739 (will be rebased on top). Guix (aarch64): ```bash 8f29bce75d7f574306a0e38d793e0e4e145b547a4b9e5a755a54976121d8ac41 guix-build-5afd3c302051/output/arm64-apple-darwin/SHA256SUMS.part 9ba01fe46be715adcbe80f39dc7dbe449f32ca9d9b660da698f933aef3e6d80b guix-build-5afd3c302051/output/arm64-apple-darwin/bitcoin-5afd3c302051-arm64-apple-darwin-unsigned.tar.gz 37719437e951449341d0e10dcc4afe93e955d59de5312ce6351e1fa01b4927ac guix-build-5afd3c302051/output/arm64-apple-darwin/bitcoin-5afd3c302051-arm64-apple-darwin-unsigned.zip 06a79fc871dcd4290f5f7e7e9de19a5a535203d20279f4555d1c319d07abe2d0 guix-build-5afd3c302051/output/arm64-apple-darwin/bitcoin-5afd3c302051-arm64-apple-darwin.tar.gz 98d2b8b37197dcad36a04eb2f3ff2130b859220a17b83a4186a78dcf0af4eafd guix-build-5afd3c302051/output/dist-archive/bitcoin-5afd3c302051.tar.gz df63ff44ef41565ff13ce6dde5485173a18d5866ebc316df86f9ebd91fda18f5 guix-build-5afd3c302051/output/x86_64-apple-darwin/SHA256SUMS.part 28362ce9e80d5e78db198efa5f89434fbe76ca91df5fde7455da4d50ceb8523a guix-build-5afd3c302051/output/x86_64-apple-darwin/bitcoin-5afd3c302051-x86_64-apple-darwin-unsigned.tar.gz 534745b679eb9e8e408dd251a6bf0829e62e12f7a41772b8a57a044ded14208c guix-build-5afd3c302051/output/x86_64-apple-darwin/bitcoin-5afd3c302051-x86_64-apple-darwin-unsigned.zip f53d0c9a1bb83d548c7d274c7d39653a3989fb1b4efec49e73dd1cac7c92074c guix-build-5afd3c302051/output/x86_64-apple-darwin/bitcoin-5afd3c302051-x86_64-apple-darwin.tar.gz ``` ACKs for top commit: TheCharlatan: ACK 1a9aa8d4eedff3788c792799328ad599132e0da1 Tree-SHA512: 0aa77ea4d6dc45c226806bb1758b6aa7e8ca17f91045bab4fc6891af7b9de476211cd5692c11cb9d5bcf59744fd86a2534812a77fe304ae10c3518e08fc412be
2024-04-25Merge bitcoin/bitcoin#29938: Fix typos in description.md and wallet_util.pymerge-script
03e36b3da093e2c23cf51b46f6901cb84ddbf867 Fix typos in description.md and wallet_util.py (hanmz) Pull request description: Fix typos in description.md. `digestable` => `digestible` `lenghts` => `lengths` ACKs for top commit: maflcko: ACK 03e36b3da093e2c23cf51b46f6901cb84ddbf867 kristapsk: ACK 03e36b3da093e2c23cf51b46f6901cb84ddbf867 brunoerg: utACK 03e36b3da093e2c23cf51b46f6901cb84ddbf867 alfonsoromanz: ACK 03e36b3da093e2c23cf51b46f6901cb84ddbf867 Tree-SHA512: 592b85f92459e96d35ddb41f2913f950a2ef9b9b74ef85af03a72553893b32e76cc6630091199359140a1d403e61c7354b61f6e09fd122c7c9fb677ce4bd48d6
2024-04-25Merge bitcoin/bitcoin#29708: depends: build libnatpmp with CMakemerge-script
3c1ae3ee33d4d9dbea046d5ab8ee924a12982759 depends: switch libnatpmp to CMake (Cory Fields) 72ba7b5d263b6d909ae59040536a499a596237c2 depends: libnatpmp f2433bec24ca3d3f22a8a7840728a3ac177f94ba (fanquake) Pull request description: This picks up one of the changes from https://github.com/bitcoin/bitcoin/pull/29232, which is a switch to building libnatpmp with CMake. It includes an update to the most recent version of libnatpmp (https://github.com/miniupnp/libnatpmp/commit/f2433bec24ca3d3f22a8a7840728a3ac177f94ba), which includes (https://github.com/miniupnp/libnatpmp/pull/43). From an initial look I couldn't find any significant difference between the Autotools and CMake produced libs. ACKs for top commit: m3dwards: ACK https://github.com/bitcoin/bitcoin/pull/29708/commits/3c1ae3ee33d4d9dbea046d5ab8ee924a12982759 hebasto: ACK 3c1ae3ee33d4d9dbea046d5ab8ee924a12982759. TheCharlatan: ACK 3c1ae3ee33d4d9dbea046d5ab8ee924a12982759 Tree-SHA512: 1dd9d9933a5fceb9f8c4e1d68cd5cb4456a10a6dd27a6f6316f14493f9d2efad981ef8be9570c09ca82d45163aebd7f4cb2b2449989ec6084268ddba9a564c83
2024-04-25Fix typos in description.md and wallet_util.pyhanmz
Signed-off-by: hanmz <hanmzarsenal@gmail.com>
2024-04-24common: Don't terminate on null character in UrlDecodeFabian Jahr
The previous behavior was the result of casting the result returned from the libevent function evhttp_uridecode to std:string but this was probably not intended.
2024-04-24scripted-diff: Modernize name of urlDecode function and paramFabian Jahr
-BEGIN VERIFY SCRIPT- sed -i 's/urlDecode/UrlDecode/g' $(git grep -l 'urlDecode' ./src) sed -i 's/urlEncoded/url_encoded/g' $(git grep -l 'urlEncoded' ./src) -END VERIFY SCRIPT-
2024-04-24refactor: Remove hooking code for urlDecodeFabian Jahr
The point of this was to be able to build bitcoin-tx and bitcoin-wallet without libevent, see #18504. Now that we use our own implementation of urlDecode this is not needed anymore. Co-authored-by: stickies-v <stickies-v@protonmail.com>
2024-04-24refactor: Replace libevent use in urlDecode with our own codeFabian Jahr
2024-04-24test: Add unit tests for urlDecodeFabian Jahr
Co-authored-by: Lőrinc <pap.lorinc@gmail.com>
2024-04-24Merge bitcoin/bitcoin#29757: feefrac: avoid explicitly computing diagram; ↵glozow
compare based on chunks b22901dfa9cc3af94bf13163a28300eb1ab25b22 Avoid explicitly computing diagram; compare based on chunks (Pieter Wuille) Pull request description: This merges the `BuildDiagramFromChunks` and `CompareFeeRateDiagram` introduced in #29242 into a single `CompareChunks` function, which operates on sorted chunk data rather than diagrams, instead computing the diagram on the fly. This avoids the need for the construction of an intermediary diagram object, and removes the slightly arbitrary "all diagrams must start at (0, 0)" requirement. Not a big deal, but I think the result is a bit cleaner and not really more complicated. ACKs for top commit: glozow: reACK b22901d instagibbs: reACK https://github.com/bitcoin/bitcoin/pull/29757/commits/b22901dfa9cc3af94bf13163a28300eb1ab25b22 Tree-SHA512: ca37bdf61d9a9cb5435f4da73e97ead33bf65828ad9af49b87336b1ece70db8ced1c21f517fc6eb6d616311c91f3da75ecae6b9bd42547133e3a3c5320b7816d
2024-04-24Merge bitcoin/bitcoin#29910: refactor: Rename `subprocess.hpp` to follow our ↵merge-script
header name conventions 08f756bd370c3e100b186c7e24bef6a033575b29 Replace locale-dependent `std::strerror` with `SysErrorString` (Hennadii Stepanov) d8e4ba4d0568769782b8c19c82e955c4aee73477 refactor: Rename `subprocess.hpp` to follow our header name conventions (Hennadii Stepanov) Pull request description: This PR renames the header `*.hpp` --> `*.h` and adjusts the header guard name, which makes it available for processing by linters. Fixed the following linter warning: ``` The locale dependent function strerror(...) appears to be used: src/util/subprocess.h: std::runtime_error( err_msg + ": " + std::strerror(err_code) ) Unnecessary locale dependence can cause bugs that are very tricky to isolate and fix. Please avoid using locale-dependent functions if possible. Advice not applicable in this specific case? Add an exception by updating the ignore list in /bitcoin/test/lint/lint-locale-dependence.py ^---- failure generated from lint-locale-dependence.py ``` ACKs for top commit: TheCharlatan: ACK 08f756bd370c3e100b186c7e24bef6a033575b29 Tree-SHA512: 57a2f01c20eb9552481e428a4969bd59e9ada9f784fe1a45cb62aa9c9152c8e950d336854f45af0e2e5dc7c7b2a1fb216c8f832e3d6ccfb457ad71b6e423231e
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-24doc: Bash is needed in gen_id and is not installed on FreeBSD by defaultHennadii Stepanov
2024-04-24Merge bitcoin/bitcoin#29585: contrib: list other binaries in manpage outputmerge-script
7c3ac598dd9a1f1a506c4931249ff6c9f1c949ba contrib: list other binaries in manpage output (fanquake) Pull request description: Add a `SEE ALSO` section to the manpages. Master: ![master](https://github.com/bitcoin/bitcoin/assets/863730/da6f0151-e43a-4578-983d-4f2def80a8eb) This PR: ![pr](https://github.com/bitcoin/bitcoin/assets/863730/d57a1c9a-50c7-4f1a-834e-0f8af8520921) Should be enough to close #29558. ACKs for top commit: jarolrod: tACK 7c3ac598dd9a1f1a506c4931249ff6c9f1c949ba willcl-ark: ACK 7c3ac598dd9a1f1a506c4931249ff6c9f1c949ba pablomartin4btc: utACK 7c3ac598dd9a1f1a506c4931249ff6c9f1c949ba laanwj: Code review ACK 7c3ac598dd9a1f1a506c4931249ff6c9f1c949ba Tree-SHA512: 0df13ed5d736aa514a1192115728314fc676714f4cb9131f37b5d9a9bfc8f85f98c21b859d6b62745211f3de16b33ff60888e7f6a4eca66fc0c52442503f4336
2024-04-24Merge bitcoin/bitcoin#29853: sign: don't assume we are parsing a sane ↵merge-script
TapMiniscript 4d8d21320eba54571ff63931509cd515c3e20339 sign: don't assume we are parsing a sane Miniscript (Antoine Poinsot) Pull request description: The script provided for signature might be externally provided, for instance by way of 'finalizepsbt'. Therefore the script might be ill-crafted, so don't assume pubkeys are always 32 bytes. Thanks to Niklas for finding this. FIxes https://github.com/bitcoin/bitcoin/issues/29851. ACKs for top commit: achow101: ACK 4d8d21320eba54571ff63931509cd515c3e20339 furszy: ACK 4d8d21320eba54571ff63931509cd515c3e20339 with a small nuance that could be tackled in a follow-up by someone else (or never). Tree-SHA512: 29b7948b56e6dc05eac1014d684f2129ab1d19cb1e5d304216c826b7057c0e1d84ceb18731b91124b680e17d90e38de9f9a5526e4f6ecc3ea816881a6599bb47
2024-04-24Merge bitcoin/bitcoin#29932: doc: suggest only necessary Qt packages for ↵merge-script
installation on FreeBSD dace02f99d4a8785567732c0d687517175765bfd doc: suggest only necessary Qt packages for installation on FreeBSD (Vasil Dimov) Pull request description: The previously suggested `qt5` package is a meta package that does not install anything itself but depends on a bunch of others and is used as a convenience to install "everything" Qt5 related: 270 packages / 3 GiB. We only need a subset of those which amounts to 79 packages / 381 MiB, so suggest just that. For comparison: ``` pkg install qt5 Updating local repository catalogue... local repository is up to date. All repositories are up to date. Checking integrity... done (0 conflicting) The following 270 package(s) will be affected (of 0 checked): New packages to be INSTALLED: Imath: 3.1.11 abseil: 20230125.3 alsa-lib: 1.2.11 alsa-plugins: 1.2.7.1_3 aom: 3.8.2 assimp: 5.4.0 avahi-app: 0.8_2 brotli: 1.1.0,1 consolekit2: 1.2.6_3 cups: 2.4.7_2 curl: 8.7.1 cyrus-sasl: 2.1.28_4 dav1d: 1.4.1 dbus: 1.14.10_5,1 dbus-glib: 0.112_1 dejavu: 2.37_3 dotconf: 1.3_1 double-conversion: 3.3.0 duktape-lib: 2.7.0 encodings: 1.1.0,1 espeak-ng: 1.51.1_5 expat: 2.6.2 ffmpeg: 6.1.1_5,1 fftw3: 3.3.10_5 fftw3-float: 3.3.10_5 flac: 1.4.3_1,1 font-bh-ttf: 1.0.3_5 font-misc-ethiopic: 1.0.4 font-misc-meltho: 1.0.3_5 fontconfig: 2.15.0_2,1 freetds: 1.4.12,1 freetype2: 2.13.2 fribidi: 1.0.13_1 gdbm: 1.23 gdk-pixbuf2: 2.42.10_2 gettext-runtime: 0.22.5 giflib: 5.2.1_1 glib: 2.80.0,2 gmp: 6.3.0 gnome_subr: 1.0 gnutls: 3.8.5_1 graphite2: 1.3.14 groff: 1.23.0_3 gstreamer1: 1.22.10 gstreamer1-plugins: 1.22.10_1 gstreamer1-plugins-bad: 1.22.10_2 harfbuzz: 8.4.0 hicolor-icon-theme: 0.17 hidapi: 0.14.0 highway: 1.1.0 hunspell: 1.7.2_1 icu: 74.2_1,1 indexinfo: 0.3.1 iso-codes: 4.15.0 jasper: 4.2.3 jbigkit: 2.1_2 jpeg-turbo: 3.0.2 jsoncpp: 1.9.5 lame: 3.100_5 lcms2: 2.16_1 libICE: 1.1.0_2,1 libSM: 1.2.3_1,1 libX11: 1.8.9,1 libXScrnSaver: 1.2.4_1 libXau: 1.0.9_1 libXcomposite: 0.4.6_1,1 libXcursor: 1.2.2 libXdamage: 1.1.6 libXdmcp: 1.1.5 libXext: 1.3.6,1 libXfixes: 6.0.0_1 libXi: 1.8_1,1 libXmu: 1.1.4,1 libXrandr: 1.5.2_1 libXrender: 0.9.10_2 libXt: 1.3.0,1 libXtst: 1.2.3_3 libXv: 1.0.12_1,1 libass: 0.17.1_2 libcbor: 0.11.0 libcjson: 1.7.17 libdaemon: 0.14_1 libdeflate: 1.20 libdrm: 2.4.120_1,1 libedit: 3.1.20230828_1,1 libepoll-shim: 0.0.20230411 libevdev: 1.13.1 libevent: 2.1.12 libffi: 3.4.4_1 libfido2: 1.14.0 libfontenc: 1.1.8 libgcrypt: 1.10.3_1 libglvnd: 1.7.0 libgpg-error: 1.48 libgudev: 237 libiconv: 1.17_1 libidn2: 2.3.7 libinput: 1.25.0 libjxl: 0.10.2 libltdl: 2.4.7 liblz4: 1.9.4_1,1 libmng: 2.0.3_1 libmtdev: 1.1.6_1 libmysofa: 1.3.2 libnghttp2: 1.61.0 libnice: 0.1.21_2 libogg: 1.3.5,4 libpaper: 1.1.28_1 libpci: 3.12.0 libpciaccess: 0.18 libplacebo: 6.338.2 libpsl: 0.21.5 libsndfile: 1.2.2_1 libsoxr: 0.1.3_3 libssh2: 1.11.0_1,3 libtasn1: 4.19.0_1 libudev-devd: 0.5.2 libunibreak: 6.1,1 libunistring: 1.2 libunwind: 20240221 libv4l: 1.23.0_4 libva: 2.21.0 libvdpau: 1.5 libvorbis: 1.3.7_2,3 libvpx: 1.14.0 libwacom: 1.5_1 libx264: 0.164.3095 libxcb: 1.17.0 libxkbcommon: 1.6.0_2 libxkbfile: 1.1.3 libxml2: 2.11.7 libxslt: 1.1.37_1 llvm15: 15.0.7_10 lua53: 5.3.6_1 minizip: 1.2.11_1 mkfontscale: 1.2.3 mpdecimal: 4.0.0 mpg123: 1.32.5 mysql80-client: 8.0.35 nettle: 3.9.1 nspr: 4.35 nss: 3.99 openal-soft: 1.21.1_4 openexr: 3.2.4 openh264: 2.3.0,2 openldap26-client: 2.6.7 opus: 1.5.2 orc: 0.4.36 p11-kit: 0.25.3_2 pcaudiolib: 1.2_1 pciids: 20240331 pcre2: 10.43 perl5: 5.36.3_1 png: 1.6.43 polkit: 124_3 postgresql15-client: 15.6 psutils: 1.17_6 pulseaudio: 16.1_4 py39-evdev: 1.6.0 py39-packaging: 24.0 py39-pyudev: 0.22.0 py39-setuptools: 63.1.0_1 py39-six: 1.16.0 python39: 3.9.18_2 qt5: 5.15.13 qt5-3d: 5.15.13p0 qt5-assistant: 5.15.13p4 qt5-buildtools: 5.15.13p142 qt5-charts: 5.15.13p0 qt5-concurrent: 5.15.13p142 qt5-connectivity: 5.15.13p4 qt5-core: 5.15.13p142 qt5-datavis3d: 5.15.13p0 qt5-dbus: 5.15.13p142 qt5-declarative: 5.15.13p30 qt5-declarative-test: 5.15.13p30 qt5-designer: 5.15.13p4 qt5-doc: 5.12.2 qt5-examples: 5.15.13 qt5-gamepad: 5.15.13p0 qt5-graphicaleffects: 5.15.13p0 qt5-gui: 5.15.13p142 qt5-help: 5.15.13p4 qt5-imageformats: 5.15.13p7 qt5-l10n: 5.15.13p0 qt5-linguist: 5.15.13p4 qt5-linguisttools: 5.15.13p4 qt5-location: 5.15.13p6 qt5-multimedia: 5.15.13p2 qt5-network: 5.15.13p142 qt5-networkauth: 5.15.13p0 qt5-opengl: 5.15.13p142 qt5-pixeltool: 5.15.13p4 qt5-printsupport: 5.15.13p142 qt5-qdbus: 5.15.13p4 qt5-qdbusviewer: 5.15.13p4 qt5-qdoc: 5.15.13p4 qt5-qdoc-data: 5.15.13 qt5-qev: 5.15.13p4 qt5-qmake: 5.15.13p142 qt5-qtdiag: 5.15.13p4 qt5-qtpaths: 5.15.13p4 qt5-qtplugininfo: 5.15.13p4 qt5-quick3d: 5.15.13p1 qt5-quickcontrols: 5.15.13p0 qt5-quickcontrols2: 5.15.13p5 qt5-quicktimeline: 5.15.13p0 qt5-remoteobjects: 5.15.13p0 qt5-script: 5.15.16p0_2 qt5-scripttools: 5.15.16p0_1 qt5-scxml: 5.15.13p0 qt5-sensors: 5.15.13p0 qt5-serialbus: 5.15.13p0 qt5-serialport: 5.15.13p0 qt5-speech: 5.15.13p1 qt5-sql: 5.15.13p142 qt5-sqldrivers-mysql: 5.15.13p142 qt5-sqldrivers-odbc: 5.15.13p142 qt5-sqldrivers-pgsql: 5.15.13p142 qt5-sqldrivers-sqlite2: 5.15.13p142 qt5-sqldrivers-sqlite3: 5.15.13p142 qt5-sqldrivers-tds: 5.15.13p142 qt5-svg: 5.15.13p6 qt5-testlib: 5.15.13p142 qt5-uiplugin: 5.15.13p4 qt5-uitools: 5.15.13p4 qt5-virtualkeyboard: 5.15.13p0 qt5-webchannel: 5.15.13p3 qt5-webengine: 5.15.16.p9 qt5-webglplugin: 5.15.13p0 qt5-websockets: 5.15.13p2 qt5-websockets-qml: 5.15.13p2 qt5-webview: 5.15.13p0 qt5-widgets: 5.15.13p142 qt5-x11extras: 5.15.13p0 qt5-xml: 5.15.13p142 qt5-xmlpatterns: 5.15.13p0 re2: 20240401 readline: 8.2.10 shaderc: 2024.0 shared-mime-info: 2.2_2 snappy: 1.2.0 speech-dispatcher: 0.11.2_4 speexdsp: 1.2.1 sqlite: 2.8.17_5 sqlite3: 3.45.1,1 svt-av1: 2.0.0 tiff: 4.4.0_3 uchardet: 0.0.8_1 unixODBC: 2.3.12_1 vmaf: 3.0.0 vulkan-headers: 1.3.283 vulkan-loader: 1.3.283 wayland: 1.22.0 webp: 1.4.0 webrtc-audio-processing0: 0.3.1_3 x265: 3.5_1 xcb-util: 0.4.1,1 xcb-util-image: 0.4.1 xcb-util-keysyms: 0.4.1 xcb-util-renderutil: 0.3.10 xcb-util-wm: 0.4.2 xdg-utils: 1.1.3_4 xkeyboard-config: 2.41_4 xorg-fonts-truetype: 7.7_1 xorgproto: 2023.2 xprop: 1.2.7 xset: 1.2.5_1 xxhash: 0.8.2_1 zstd: 1.5.6 Number of packages to be installed: 270 The process will require 3 GiB more space. Proceed with this action? [y/N]: ``` ``` pkg install qt5-buildtools qt5-core qt5-gui qt5-linguisttools qt5-testlib qt5-widgets Updating local repository catalogue... local repository is up to date. All repositories are up to date. Checking integrity... done (0 conflicting) The following 79 package(s) will be affected (of 0 checked): New packages to be INSTALLED: brotli: 1.1.0,1 dbus: 1.14.10_5,1 dejavu: 2.37_3 double-conversion: 3.3.0 encodings: 1.1.0,1 expat: 2.6.2 font-bh-ttf: 1.0.3_5 font-misc-ethiopic: 1.0.4 font-misc-meltho: 1.0.3_5 fontconfig: 2.15.0_2,1 freetype2: 2.13.2 gettext-runtime: 0.22.5 glib: 2.80.0,2 graphite2: 1.3.14 harfbuzz: 8.4.0 hicolor-icon-theme: 0.17 icu: 74.2_1,1 indexinfo: 0.3.1 jpeg-turbo: 3.0.2 libICE: 1.1.0_2,1 libSM: 1.2.3_1,1 libX11: 1.8.9,1 libXau: 1.0.9_1 libXdmcp: 1.1.5 libXext: 1.3.6,1 libXfixes: 6.0.0_1 libXi: 1.8_1,1 libXmu: 1.1.4,1 libXrender: 0.9.10_2 libXt: 1.3.0,1 libepoll-shim: 0.0.20230411 libevdev: 1.13.1 libffi: 3.4.4_1 libfontenc: 1.1.8 libglvnd: 1.7.0 libgudev: 237 libiconv: 1.17_1 libinput: 1.25.0 liblz4: 1.9.4_1,1 libmtdev: 1.1.6_1 libudev-devd: 0.5.2 libwacom: 1.5_1 libxcb: 1.17.0 libxkbcommon: 1.6.0_2 libxml2: 2.11.7 mkfontscale: 1.2.3 mpdecimal: 4.0.0 pcre2: 10.43 png: 1.6.43 py39-evdev: 1.6.0 py39-packaging: 24.0 py39-pyudev: 0.22.0 py39-setuptools: 63.1.0_1 py39-six: 1.16.0 python39: 3.9.18_2 qt5-buildtools: 5.15.13p142 qt5-core: 5.15.13p142 qt5-dbus: 5.15.13p142 qt5-gui: 5.15.13p142 qt5-linguisttools: 5.15.13p4 qt5-network: 5.15.13p142 qt5-testlib: 5.15.13p142 qt5-widgets: 5.15.13p142 qt5-xml: 5.15.13p142 readline: 8.2.10 vulkan-headers: 1.3.283 wayland: 1.22.0 xcb-util: 0.4.1,1 xcb-util-image: 0.4.1 xcb-util-keysyms: 0.4.1 xcb-util-renderutil: 0.3.10 xcb-util-wm: 0.4.2 xdg-utils: 1.1.3_4 xkeyboard-config: 2.41_4 xorg-fonts-truetype: 7.7_1 xorgproto: 2023.2 xprop: 1.2.7 xset: 1.2.5_1 zstd: 1.5.6 Number of packages to be installed: 79 The process will require 381 MiB more space. Proceed with this action? [y/N]: ``` ACKs for top commit: hebasto: re-ACK dace02f99d4a8785567732c0d687517175765bfd. Tree-SHA512: 388fccb91ed677326592f5f73fa9ff7f341886a44b56364dfb1a683f29cd988e8751f64f645f200a01725086c789ebf9cabdaf412eb1cde742c8d7efc5165d94
2024-04-24Merge bitcoin/bitcoin#29947: doc: Suggest only necessary Qt packages for ↵merge-script
installation on OpenBSD 970cbc3172b73e1faf6bdb429400d3497cbb9d33 doc: Suggest only necessary Qt packages for installation on OpenBSD (Hennadii Stepanov) Pull request description: The currently suggested `qt5` installs many unneeded dependencies, for example, `qtsensors`, `qtspeech` etc. Similar to https://github.com/bitcoin/bitcoin/pull/29932. ACKs for top commit: theStack: re-ACK 970cbc3172b73e1faf6bdb429400d3497cbb9d33 Tree-SHA512: c680a4f88c27cae145822f30d9856fe76b856c6b11babe652c7171f4322dbe7af8725cccf8b45295067690ed98aa3f6329a8b65a59f31348854638ac375372d1
2024-04-24Merge bitcoin/bitcoin#29870: rpc: Reword SighashFromStr error messagemerge-script
fa6ab0d020d0b1492203f7eb2ccb8051812de086 rpc: Reword SighashFromStr error message (MarcoFalke) Pull request description: Put quotes around the parameter. In theory, `std::quoted` should be used, but that seems overkill. This should avoid error messages such as `A valid sighash parameter is not a valid sighash parameter. (code -8)`. Also, it should fix fuzz false positives when searching for internal bugs in the `rpc` fuzz target. For example, `ZGVzY3JpcHRvcnByb2Nlc3Nwc2J0XP9ce1tdXOVJbnRlcm5hbCBidWcgZGV0ZWN0ZWQAXQ0AHfcAXQ1p7TJv`. ACKs for top commit: dergoegge: ACK fa6ab0d020d0b1492203f7eb2ccb8051812de086 brunoerg: utACK fa6ab0d020d0b1492203f7eb2ccb8051812de086 Tree-SHA512: e2c0cc0126de61873a863af38b7b0a23d2dadd596ca0418dae2ad091e8acfb6a9d657c376d59187bb008989dc78c6b44fe518590e5217e4049a867b220c9fb18
2024-04-24doc: suggest only necessary Qt packages for installation on FreeBSDVasil Dimov
The previously suggested `qt5` package is a meta package that does not install anything itself but depends on a bunch of others and is used as a convenience to install "everything" Qt5 related: 270 packages / 3 GiB. We only need a subset of those which amounts to 79 packages / 381 MiB, so suggest just that. For comparison: ``` pkg install qt5 Updating local repository catalogue... local repository is up to date. All repositories are up to date. Checking integrity... done (0 conflicting) The following 270 package(s) will be affected (of 0 checked): New packages to be INSTALLED: Imath: 3.1.11 abseil: 20230125.3 alsa-lib: 1.2.11 alsa-plugins: 1.2.7.1_3 aom: 3.8.2 assimp: 5.4.0 avahi-app: 0.8_2 brotli: 1.1.0,1 consolekit2: 1.2.6_3 cups: 2.4.7_2 curl: 8.7.1 cyrus-sasl: 2.1.28_4 dav1d: 1.4.1 dbus: 1.14.10_5,1 dbus-glib: 0.112_1 dejavu: 2.37_3 dotconf: 1.3_1 double-conversion: 3.3.0 duktape-lib: 2.7.0 encodings: 1.1.0,1 espeak-ng: 1.51.1_5 expat: 2.6.2 ffmpeg: 6.1.1_5,1 fftw3: 3.3.10_5 fftw3-float: 3.3.10_5 flac: 1.4.3_1,1 font-bh-ttf: 1.0.3_5 font-misc-ethiopic: 1.0.4 font-misc-meltho: 1.0.3_5 fontconfig: 2.15.0_2,1 freetds: 1.4.12,1 freetype2: 2.13.2 fribidi: 1.0.13_1 gdbm: 1.23 gdk-pixbuf2: 2.42.10_2 gettext-runtime: 0.22.5 giflib: 5.2.1_1 glib: 2.80.0,2 gmp: 6.3.0 gnome_subr: 1.0 gnutls: 3.8.5_1 graphite2: 1.3.14 groff: 1.23.0_3 gstreamer1: 1.22.10 gstreamer1-plugins: 1.22.10_1 gstreamer1-plugins-bad: 1.22.10_2 harfbuzz: 8.4.0 hicolor-icon-theme: 0.17 hidapi: 0.14.0 highway: 1.1.0 hunspell: 1.7.2_1 icu: 74.2_1,1 indexinfo: 0.3.1 iso-codes: 4.15.0 jasper: 4.2.3 jbigkit: 2.1_2 jpeg-turbo: 3.0.2 jsoncpp: 1.9.5 lame: 3.100_5 lcms2: 2.16_1 libICE: 1.1.0_2,1 libSM: 1.2.3_1,1 libX11: 1.8.9,1 libXScrnSaver: 1.2.4_1 libXau: 1.0.9_1 libXcomposite: 0.4.6_1,1 libXcursor: 1.2.2 libXdamage: 1.1.6 libXdmcp: 1.1.5 libXext: 1.3.6,1 libXfixes: 6.0.0_1 libXi: 1.8_1,1 libXmu: 1.1.4,1 libXrandr: 1.5.2_1 libXrender: 0.9.10_2 libXt: 1.3.0,1 libXtst: 1.2.3_3 libXv: 1.0.12_1,1 libass: 0.17.1_2 libcbor: 0.11.0 libcjson: 1.7.17 libdaemon: 0.14_1 libdeflate: 1.20 libdrm: 2.4.120_1,1 libedit: 3.1.20230828_1,1 libepoll-shim: 0.0.20230411 libevdev: 1.13.1 libevent: 2.1.12 libffi: 3.4.4_1 libfido2: 1.14.0 libfontenc: 1.1.8 libgcrypt: 1.10.3_1 libglvnd: 1.7.0 libgpg-error: 1.48 libgudev: 237 libiconv: 1.17_1 libidn2: 2.3.7 libinput: 1.25.0 libjxl: 0.10.2 libltdl: 2.4.7 liblz4: 1.9.4_1,1 libmng: 2.0.3_1 libmtdev: 1.1.6_1 libmysofa: 1.3.2 libnghttp2: 1.61.0 libnice: 0.1.21_2 libogg: 1.3.5,4 libpaper: 1.1.28_1 libpci: 3.12.0 libpciaccess: 0.18 libplacebo: 6.338.2 libpsl: 0.21.5 libsndfile: 1.2.2_1 libsoxr: 0.1.3_3 libssh2: 1.11.0_1,3 libtasn1: 4.19.0_1 libudev-devd: 0.5.2 libunibreak: 6.1,1 libunistring: 1.2 libunwind: 20240221 libv4l: 1.23.0_4 libva: 2.21.0 libvdpau: 1.5 libvorbis: 1.3.7_2,3 libvpx: 1.14.0 libwacom: 1.5_1 libx264: 0.164.3095 libxcb: 1.17.0 libxkbcommon: 1.6.0_2 libxkbfile: 1.1.3 libxml2: 2.11.7 libxslt: 1.1.37_1 llvm15: 15.0.7_10 lua53: 5.3.6_1 minizip: 1.2.11_1 mkfontscale: 1.2.3 mpdecimal: 4.0.0 mpg123: 1.32.5 mysql80-client: 8.0.35 nettle: 3.9.1 nspr: 4.35 nss: 3.99 openal-soft: 1.21.1_4 openexr: 3.2.4 openh264: 2.3.0,2 openldap26-client: 2.6.7 opus: 1.5.2 orc: 0.4.36 p11-kit: 0.25.3_2 pcaudiolib: 1.2_1 pciids: 20240331 pcre2: 10.43 perl5: 5.36.3_1 png: 1.6.43 polkit: 124_3 postgresql15-client: 15.6 psutils: 1.17_6 pulseaudio: 16.1_4 py39-evdev: 1.6.0 py39-packaging: 24.0 py39-pyudev: 0.22.0 py39-setuptools: 63.1.0_1 py39-six: 1.16.0 python39: 3.9.18_2 qt5: 5.15.13 qt5-3d: 5.15.13p0 qt5-assistant: 5.15.13p4 qt5-buildtools: 5.15.13p142 qt5-charts: 5.15.13p0 qt5-concurrent: 5.15.13p142 qt5-connectivity: 5.15.13p4 qt5-core: 5.15.13p142 qt5-datavis3d: 5.15.13p0 qt5-dbus: 5.15.13p142 qt5-declarative: 5.15.13p30 qt5-declarative-test: 5.15.13p30 qt5-designer: 5.15.13p4 qt5-doc: 5.12.2 qt5-examples: 5.15.13 qt5-gamepad: 5.15.13p0 qt5-graphicaleffects: 5.15.13p0 qt5-gui: 5.15.13p142 qt5-help: 5.15.13p4 qt5-imageformats: 5.15.13p7 qt5-l10n: 5.15.13p0 qt5-linguist: 5.15.13p4 qt5-linguisttools: 5.15.13p4 qt5-location: 5.15.13p6 qt5-multimedia: 5.15.13p2 qt5-network: 5.15.13p142 qt5-networkauth: 5.15.13p0 qt5-opengl: 5.15.13p142 qt5-pixeltool: 5.15.13p4 qt5-printsupport: 5.15.13p142 qt5-qdbus: 5.15.13p4 qt5-qdbusviewer: 5.15.13p4 qt5-qdoc: 5.15.13p4 qt5-qdoc-data: 5.15.13 qt5-qev: 5.15.13p4 qt5-qmake: 5.15.13p142 qt5-qtdiag: 5.15.13p4 qt5-qtpaths: 5.15.13p4 qt5-qtplugininfo: 5.15.13p4 qt5-quick3d: 5.15.13p1 qt5-quickcontrols: 5.15.13p0 qt5-quickcontrols2: 5.15.13p5 qt5-quicktimeline: 5.15.13p0 qt5-remoteobjects: 5.15.13p0 qt5-script: 5.15.16p0_2 qt5-scripttools: 5.15.16p0_1 qt5-scxml: 5.15.13p0 qt5-sensors: 5.15.13p0 qt5-serialbus: 5.15.13p0 qt5-serialport: 5.15.13p0 qt5-speech: 5.15.13p1 qt5-sql: 5.15.13p142 qt5-sqldrivers-mysql: 5.15.13p142 qt5-sqldrivers-odbc: 5.15.13p142 qt5-sqldrivers-pgsql: 5.15.13p142 qt5-sqldrivers-sqlite2: 5.15.13p142 qt5-sqldrivers-sqlite3: 5.15.13p142 qt5-sqldrivers-tds: 5.15.13p142 qt5-svg: 5.15.13p6 qt5-testlib: 5.15.13p142 qt5-uiplugin: 5.15.13p4 qt5-uitools: 5.15.13p4 qt5-virtualkeyboard: 5.15.13p0 qt5-webchannel: 5.15.13p3 qt5-webengine: 5.15.16.p9 qt5-webglplugin: 5.15.13p0 qt5-websockets: 5.15.13p2 qt5-websockets-qml: 5.15.13p2 qt5-webview: 5.15.13p0 qt5-widgets: 5.15.13p142 qt5-x11extras: 5.15.13p0 qt5-xml: 5.15.13p142 qt5-xmlpatterns: 5.15.13p0 re2: 20240401 readline: 8.2.10 shaderc: 2024.0 shared-mime-info: 2.2_2 snappy: 1.2.0 speech-dispatcher: 0.11.2_4 speexdsp: 1.2.1 sqlite: 2.8.17_5 sqlite3: 3.45.1,1 svt-av1: 2.0.0 tiff: 4.4.0_3 uchardet: 0.0.8_1 unixODBC: 2.3.12_1 vmaf: 3.0.0 vulkan-headers: 1.3.283 vulkan-loader: 1.3.283 wayland: 1.22.0 webp: 1.4.0 webrtc-audio-processing0: 0.3.1_3 x265: 3.5_1 xcb-util: 0.4.1,1 xcb-util-image: 0.4.1 xcb-util-keysyms: 0.4.1 xcb-util-renderutil: 0.3.10 xcb-util-wm: 0.4.2 xdg-utils: 1.1.3_4 xkeyboard-config: 2.41_4 xorg-fonts-truetype: 7.7_1 xorgproto: 2023.2 xprop: 1.2.7 xset: 1.2.5_1 xxhash: 0.8.2_1 zstd: 1.5.6 Number of packages to be installed: 270 The process will require 3 GiB more space. Proceed with this action? [y/N]: ``` ``` pkg install qt5-buildtools qt5-core qt5-gui qt5-linguisttools qt5-testlib qt5-widgets Updating local repository catalogue... local repository is up to date. All repositories are up to date. Checking integrity... done (0 conflicting) The following 79 package(s) will be affected (of 0 checked): New packages to be INSTALLED: brotli: 1.1.0,1 dbus: 1.14.10_5,1 dejavu: 2.37_3 double-conversion: 3.3.0 encodings: 1.1.0,1 expat: 2.6.2 font-bh-ttf: 1.0.3_5 font-misc-ethiopic: 1.0.4 font-misc-meltho: 1.0.3_5 fontconfig: 2.15.0_2,1 freetype2: 2.13.2 gettext-runtime: 0.22.5 glib: 2.80.0,2 graphite2: 1.3.14 harfbuzz: 8.4.0 hicolor-icon-theme: 0.17 icu: 74.2_1,1 indexinfo: 0.3.1 jpeg-turbo: 3.0.2 libICE: 1.1.0_2,1 libSM: 1.2.3_1,1 libX11: 1.8.9,1 libXau: 1.0.9_1 libXdmcp: 1.1.5 libXext: 1.3.6,1 libXfixes: 6.0.0_1 libXi: 1.8_1,1 libXmu: 1.1.4,1 libXrender: 0.9.10_2 libXt: 1.3.0,1 libepoll-shim: 0.0.20230411 libevdev: 1.13.1 libffi: 3.4.4_1 libfontenc: 1.1.8 libglvnd: 1.7.0 libgudev: 237 libiconv: 1.17_1 libinput: 1.25.0 liblz4: 1.9.4_1,1 libmtdev: 1.1.6_1 libudev-devd: 0.5.2 libwacom: 1.5_1 libxcb: 1.17.0 libxkbcommon: 1.6.0_2 libxml2: 2.11.7 mkfontscale: 1.2.3 mpdecimal: 4.0.0 pcre2: 10.43 png: 1.6.43 py39-evdev: 1.6.0 py39-packaging: 24.0 py39-pyudev: 0.22.0 py39-setuptools: 63.1.0_1 py39-six: 1.16.0 python39: 3.9.18_2 qt5-buildtools: 5.15.13p142 qt5-core: 5.15.13p142 qt5-dbus: 5.15.13p142 qt5-gui: 5.15.13p142 qt5-linguisttools: 5.15.13p4 qt5-network: 5.15.13p142 qt5-testlib: 5.15.13p142 qt5-widgets: 5.15.13p142 qt5-xml: 5.15.13p142 readline: 8.2.10 vulkan-headers: 1.3.283 wayland: 1.22.0 xcb-util: 0.4.1,1 xcb-util-image: 0.4.1 xcb-util-keysyms: 0.4.1 xcb-util-renderutil: 0.3.10 xcb-util-wm: 0.4.2 xdg-utils: 1.1.3_4 xkeyboard-config: 2.41_4 xorg-fonts-truetype: 7.7_1 xorgproto: 2023.2 xprop: 1.2.7 xset: 1.2.5_1 zstd: 1.5.6 Number of packages to be installed: 79 The process will require 381 MiB more space. Proceed with this action? [y/N]: ```
2024-04-24Merge bitcoin/bitcoin#29882: netbase: clean up Proxy loggingmerge-script
fb4cc5f423ce587c1e97377e8afdf92fb4850f59 netbase: clean up Proxy logging (Matthew Zipkin) Pull request description: Follow up to #27375 and see https://github.com/bitcoin/bitcoin/pull/29649#issuecomment-2057456834 This removes an extra log message when we can't connect to our own proxy, and another when the proxy is invalid. ## Before #27375 if proxy is unreachable ``` 2024-04-15T17:54:51Z connect() to 127.0.0.1:9999 failed after wait: Connection refused (61) 2024-04-15T17:54:52Z connect() to 127.0.0.1:9999 failed after wait: Connection refused (61) 2024-04-15T17:54:52Z connect() to 127.0.0.1:9999 failed after wait: Connection refused (61) 2024-04-15T17:54:53Z connect() to 127.0.0.1:9999 failed after wait: Connection refused (61) 2024-04-15T17:54:53Z connect() to 127.0.0.1:9999 failed after wait: Connection refused (61) ``` ## After #27375 if unix proxy is unreachable: ``` 2024-04-15T17:54:03Z connect() to /Users/matthewzipkin/Desktop/tor failed: No such file or directory (2) 2024-04-15T17:54:03Z Cannot connect to socket for /Users/matthewzipkin/Desktop/tor 2024-04-15T17:54:04Z connect() to /Users/matthewzipkin/Desktop/tor failed: No such file or directory (2) 2024-04-15T17:54:04Z Cannot connect to socket for /Users/matthewzipkin/Desktop/tor 2024-04-15T17:54:04Z connect() to /Users/matthewzipkin/Desktop/tor failed: No such file or directory (2) 2024-04-15T17:54:04Z Cannot connect to socket for /Users/matthewzipkin/Desktop/tor 2024-04-15T17:54:05Z connect() to /Users/matthewzipkin/Desktop/tor failed: No such file or directory (2) 2024-04-15T17:54:05Z Cannot connect to socket for /Users/matthewzipkin/Desktop/tor ``` ## After this PR: ``` 2024-04-15T18:18:51Z connect() to /Users/matthewzipkin/Desktop/tor failed: No such file or directory (2) 2024-04-15T18:18:51Z connect() to /Users/matthewzipkin/Desktop/tor failed: No such file or directory (2) 2024-04-15T18:18:52Z connect() to /Users/matthewzipkin/Desktop/tor failed: No such file or directory (2) 2024-04-15T18:18:52Z connect() to /Users/matthewzipkin/Desktop/tor failed: No such file or directory (2) ``` ACKs for top commit: tdb3: CR ACK for fb4cc5f423ce587c1e97377e8afdf92fb4850f59 laanwj: ACK fb4cc5f423ce587c1e97377e8afdf92fb4850f59 Tree-SHA512: f07b9f7f2ea9f4bc01780c09f0b076547108294a1fa7d158a0dd48d6d7351569e461e5cccf232b7b1413ce2e3679668e523e5a7c89cd58c909da76d3dcbc34de
2024-04-24Merge bitcoin/bitcoin#29929: ci: Drop no longer needed `-I` flag in "tidy" taskmerge-script
6f5954acac2ced22dae7088e2b679bf663507d4c ci: Drop no longer needed `-I` flag in "tidy" task (Hennadii Stepanov) Pull request description: As title says. ACKs for top commit: maflcko: lgtm ACK 6f5954acac2ced22dae7088e2b679bf663507d4c Tree-SHA512: 4d1cf6eb93bb4b9c51637d182e1fa585263fd998077ec66f34909d69cea070f78fe706a01cca1704dbd1c80465270f874d68972e470506b6b2032dc8bfc20ccc
2024-04-24doc: Suggest only necessary Qt packages for installation on OpenBSDHennadii Stepanov
The currently suggested `qt5` installs many unneeded dependencies, for example, `qtsensors`, `qtspeech` etc.
2024-04-23test: Run framework unit tests in paralleltdb3
Reorganize functional test framework unit tests to run in parallel with other functional tests. The option `skipunit` is removed, since unit tests no longer delay functional test execution. Unit tests are run by default when running all tests, and can be run explicitly with `feature_framework_unit_tests.py` when running a subset of tests.
2024-04-23Merge bitcoin/bitcoin#24313: Improve display address handling for external ↵Ava Chow
signer 4357158c4712d479522d5cd441ad4dd1693fdd05 wallet: return and display signer error (Sjors Provoost) dc55531087478d01fbde4f5fbb75375b672960c3 wallet: compare address returned by displayaddress (Sjors Provoost) 6c1a2cc09a00baa6ff3ff34455c2243b43067fb5 test: use h marker for external signer mock (Sjors Provoost) Pull request description: * HWI returns the requested address: as a sanity check, we now compare that to what we expected * external signer documentation now reflects that HWI alternatives must implement this check * both RPC and GUI will now return an error text, rather than just fail (the GUI even failed silently in some cases) ACKs for top commit: brunoerg: ACK 4357158c4712d479522d5cd441ad4dd1693fdd05 achow101: ACK 4357158c4712d479522d5cd441ad4dd1693fdd05 Tree-SHA512: 4f56edf3846745c8e7d08ef55cf29e8bb468256457149377c5f02da097931f9ca0c06bdbd856dc2385cde4fd11e4dc3b634c5a48814ff27f5562c8a25d43da93
2024-04-23Merge bitcoin/bitcoin#29688: test: remove duplicated ban testAva Chow
e30e8625bbc42045b8b757a8d7e80c20cc61cebf test: remove duplicated ban test (brunoerg) Pull request description: Test the ban list is preserved through restart has been done by both `rpc_setban` and `p2p_disconnect_ban`. Since `p2p_disconnect_ban` does it in a more elegant way, we can keep only it and remove the other one. https://github.com/bitcoin/bitcoin/blob/bf1b6383dbbfdd0c96a161d4693a48bf3a6b6150/test/functional/p2p_disconnect_ban.py#L74-L110 ACKs for top commit: achow101: ACK e30e8625bbc42045b8b757a8d7e80c20cc61cebf tdb3: ACK for e30e8625bbc42045b8b757a8d7e80c20cc61cebf. hernanmarino: tested ACK e30e8625bbc42045b8b757a8d7e80c20cc61cebf BrandonOdiwuor: ACK e30e8625bbc42045b8b757a8d7e80c20cc61cebf alfonsoromanz: ACK e30e8625bbc42045b8b757a8d7e80c20cc61cebf Tree-SHA512: e89624f23011e6ffd76c31b2933b8386711e1d2c03366d6b3ea850484a4fd571f69971cdbc75ce2f546d541cb3fc7f4d495a5a011217d879746414e3286ac111
2024-04-23Merge bitcoin/bitcoin#28974: doc: explain what the wallet password doesAva Chow
55b13ecd2e00ad2dbfd44c34d7de6f616590adf8 doc: explain what the wallet password does (Brandon Odiwuor) Pull request description: Fixes https://github.com/bitcoin/bitcoin/issues/18085 Add a document explaining what the wallet `passphrase` does ACKs for top commit: fjahr: ACK 55b13ecd2e00ad2dbfd44c34d7de6f616590adf8 achow101: ACK 55b13ecd2e00ad2dbfd44c34d7de6f616590adf8 Tree-SHA512: 6cc621269fe51ba7bd5d859427906a520e989bebcb274b08017c9900a4d781a165fc62dea46ed45aa48239cacd3c1f6eb4dd0c916be940d680a03266109716b0
2024-04-23Replace locale-dependent `std::strerror` with `SysErrorString`Hennadii Stepanov
2024-04-23refactor: Rename `subprocess.hpp` to follow our header name conventionsHennadii Stepanov
2024-04-23Merge bitcoin/bitcoin#29865: util: remove unused cpp-subprocess optionsAva Chow
13adbf733f09c73c3cf0025d94c52f9cec5dba3b remove unneeded environment option from cpp-subprocess (Sebastian Falbesoner) 2088777ba0f9ad3f6d4ab8b0b6ff8aad71117307 remove unneeded cwd option from cpp-subprocess (Sebastian Falbesoner) 03ffb09c31aa04cc296c0ce10d07109e22a8dd75 remove unneeded bufsize option from cpp-subprocess (Sebastian Falbesoner) 79c30363733503a1fb7d4c98aa0d56ced0be6e32 remove unneeded close_fds option from cpp-subprocess (Sebastian Falbesoner) 62db8f8e5a6cfe19d905afc91731d6bc8a665f61 remove unneeded session_leader option from cpp-subprocess (Sebastian Falbesoner) 80d008c66d00d3496cd8549daee6775cf2c6b782 remove unneeded defer_spawn option from cpp-subprocess (Sebastian Falbesoner) cececad7b29e2ca3de1216db1c541dba6dc81bfa remove unneeded preexec function option from cpp-subprocess (Sebastian Falbesoner) 633e45b2e2728efcb0637afa94fcbd5756dfbe76 remove unneeded shell option from cpp-subprocess (Sebastian Falbesoner) Pull request description: The newly introduced cpp-subprocess library provides a good number of options for the `Popen` class: https://github.com/bitcoin/bitcoin/blob/0de63b8b46eff5cda85b4950062703324ba65a80/src/util/subprocess.hpp#L1009-L1020 Some of them are either not fully implemented (`shell`, missing an implementation on Windows), implemented in an ugly way (e.g. using "Impoverished, meager, needy, truly needy version of type erasure" for `preexec_func` according to the author's own words) or simply unlikely to be ever needed for our external signer use-case (`defer_spawn`). Instead of maintaining incomplete and/or unneeded code, I'd suggest to get rid of it and only keep support for options if there is a strong reason for it. ACKs for top commit: achow101: ACK 13adbf733f09c73c3cf0025d94c52f9cec5dba3b hebasto: re-ACK 13adbf733f09c73c3cf0025d94c52f9cec5dba3b. Tree-SHA512: 8270da27891cb659da2ef6062a23f4b86331859b15ac27b79ae7433b14f5bd7efaba621f2b3ba1953708d0f38377a8bd23ef1cc0f28b9c152ac8958dd9eec6b0
2024-04-23remove unneeded environment option from cpp-subprocessSebastian Falbesoner
2024-04-22Merge bitcoin/bitcoin#29777: test: refactor: introduce and use ↵Ava Chow
`calculate_input_weight` helper 6d91cb781c30966963f28e7577c7aa3829fa9390 test: add unit tests for `calculate_input_weight` (Sebastian Falbesoner) f81fad5e0f3be1f7aed59f9da00396c75c2a6406 test: introduce and use `calculate_input_weight` helper (Sebastian Falbesoner) Pull request description: Rather than manually estimating an input's weight by adding up all the involved components (fixed-size skeleton, compact-serialized lengths, and the actual scriptSig / witness stack items) we can simply take use of the serialization classes `CTxIn` / `CTxInWitness` instead, to achieve the same with significantly less code. The new helper is used in the functional tests rpc_psbt.py and wallet_send.py, where the previous manual estimation code was duplicated. Unit tests are added in the second commit. ACKs for top commit: kevkevinpal: tACK [6d91cb7](https://github.com/bitcoin/bitcoin/pull/29777/commits/6d91cb781c30966963f28e7577c7aa3829fa9390) QureshiFaisal: tACK [6d91cb7](https://github.com/bitcoin/bitcoin/pull/29777/commits/6d91cb781c30966963f28e7577c7aa3829fa9390) achow101: ACK 6d91cb781c30966963f28e7577c7aa3829fa9390 AngusP: tACK 6d91cb781c30966963f28e7577c7aa3829fa9390 rkrux: tACK [6d91cb7](https://github.com/bitcoin/bitcoin/pull/29777/commits/6d91cb781c30966963f28e7577c7aa3829fa9390) Tree-SHA512: 04424e4d94d0e13745a9c11df2dd3697c98552bbb0e792c4af67ecbb66060adc3cc0cefc202cdee2d9db0baf85b8bedf2eb339ac4b316d986b5f10f6b70c5a33
2024-04-22Merge bitcoin/bitcoin#29933: test: Fix intermittent timeout in ↵Ava Chow
p2p_tx_download.py fa6c300a9926a1d35fdd0a80f59ea39769bd2596 test: Fix intermittent timeout in p2p_tx_download.py (MarcoFalke) Pull request description: Currently the test passes, but may fail during shutdown, because blocks and transactions are synced with `NUM_INBOUND` * `self.num_nodes` peers, which may take a long time. There is no need for this test to have this amount of inbounds. So avoid the extraneous inbounds to speed up the test and avoid the intermittent test failures. ACKs for top commit: instagibbs: ACK fa6c300a9926a1d35fdd0a80f59ea39769bd2596 fjahr: Thanks, ACK fa6c300a9926a1d35fdd0a80f59ea39769bd2596 achow101: ACK fa6c300a9926a1d35fdd0a80f59ea39769bd2596 theStack: ACK fa6c300a9926a1d35fdd0a80f59ea39769bd2596 Tree-SHA512: 0a480fd1db293ed8571ae629557cf81d5a79ec883e9e635f22c8a7cf48427161249ad2180b66c67661306f696c977b8e06ad520bd11911f119c9c95b3ffc9134
2024-04-22Merge bitcoin/bitcoin#29657: Bugfix: bitcoin-cli: Check length of ↵Ava Chow
peer.transport_protocol_type c3e632b44153e314ef946f342c68c2758b1cbc4d Bugfix: bitcoin-cli: Check length of peer.transport_protocol_type (Luke Dashjr) Pull request description: "v" would dereference beyond the string length, and "v10" would show as '1' Turn both of these cases into a blank, like anything else unexpected currently is. ACKs for top commit: sipa: utACK c3e632b44153e314ef946f342c68c2758b1cbc4d. hernanmarino: utACK c3e632b44153e314ef946f342c68c2758b1cbc4d alfonsoromanz: ACK c3e632b44153e314ef946f342c68c2758b1cbc4d achow101: ACK c3e632b44153e314ef946f342c68c2758b1cbc4d Tree-SHA512: f641e4412521adae7c8c8e1f268bdaaa223d9048d8286e3df4b13905faaa0d601155ce581cd649f760cab2acc4122356fa94a44714f1f190845552100105eda0
2024-04-22Added seednode prioritization message to help outputtdb3
2024-04-22Gives seednode priority over dnsseed if both are providedSergi Delgado Segura
2024-04-22sign: don't assume we are parsing a sane MiniscriptAntoine Poinsot
The script provided for signature might be externally provided, for instance by way of 'finalizepsbt'. Therefore the script might be ill-crafted, so don't assume pubkeys are always 32 bytes. Thanks to Niklas for finding this.
2024-04-22Merge bitcoin/bitcoin#29850: net: Decrease nMaxIPs when learning from DNS seedsAva Chow
f2e3662e57eca1330962faf38ff428a564d50a11 net: Decrease nMaxIPs when learning from DNS seeds (laanwj) Pull request description: Limit number of IPs learned from a single DNS seed to 32, to prevent the results from one DNS seed from dominating AddrMan. Note that the number of results from a UDP DNS query is bounded to 33 already, but it is possible for it to use TCP where a larger number of results can be returned. Closes #16070. ACKs for top commit: Sjors: utACK f2e3662e57eca1330962faf38ff428a564d50a11 achow101: ACK f2e3662e57eca1330962faf38ff428a564d50a11 1440000bytes: utACK https://github.com/bitcoin/bitcoin/pull/29850/commits/f2e3662e57eca1330962faf38ff428a564d50a11 mzumsande: utACK f2e3662e57eca1330962faf38ff428a564d50a11 Tree-SHA512: 3f108c2baba7adfedb8019daaf60aa00e628b38d3942e1319c7183a4683670be01929ced9e6372c8e983c902e8633f81fbef12d7cdcaadd7f77ed729c1019942
2024-04-22Merge bitcoin/bitcoin#29898: test: Fix intermittent issue in p2p_handshake.pyglozow
6b02c11d667adff24daf611f9b14815d27963674 test: Fix intermittent issue in p2p_handshake.py (stratospher) Pull request description: When establishing outbound connections [`TestNode` --------> `P2PConnection`], `P2PConnection` listens for a single connection from `TestNode` on a [port which is fixed based on `p2p_idx`](https://github.com/bitcoin/bitcoin/blob/312f54278fd972ba3557c6a5b805fd244a063959/test/functional/test_framework/p2p.py#L746). If we reuse the same port when disconnecting and establishing connections again, we might hit this scenario where: - disconnection is done on python side for `P2PConnection` - disconnection not complete on c++ side for `TestNode` - we're trying to establish a new connection on same port again Prevent this scenario from happening by ensuring disconnection on c++ side for TestNode as well. One way to reproduce this on master would be adding a sleep statement before disconnection happens on c++ side. ```diff diff --git a/src/net.cpp b/src/net.cpp index e388f05b03..62507d1f39 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -2112,6 +2112,7 @@ void CConnman::SocketHandlerConnected(const std::vector<CNode*>& nodes, if (!pnode->fDisconnect) { LogPrint(BCLog::NET, "socket closed for peer=%d\n", pnode->GetId()); } + std::this_thread::sleep_for(std::chrono::milliseconds(1000)); pnode->CloseSocketDisconnect(); } else if (nBytes < 0) ``` ACKs for top commit: maflcko: lgtm ACK 6b02c11d667adff24daf611f9b14815d27963674 mzumsande: Tested ACK 6b02c11d667adff24daf611f9b14815d27963674 BrandonOdiwuor: Tested ACK 6b02c11d667adff24daf611f9b14815d27963674 theStack: Tested ACK 6b02c11d667adff24daf611f9b14815d27963674 glozow: ACK 6b02c11d667adff24daf611f9b14815d27963674 Tree-SHA512: 69509edb61ba45739fd585b6cc8a254f412975c124a5b5a52688288ecaaffd264dd76019b8290cc34c26c3ac2dfe477965ee5a11d7aabdd8e4d2a75229a4a068
2024-04-22Merge bitcoin/bitcoin#27679: ZMQ: Support UNIX domain socketsAva Chow
21d0e6c7b7c7af7f6e54a45829b4fbfba6923b86 doc: release notes for PR 27679 (Matthew Zipkin) 791dea204ecde9b500ec243b4e16fc601998ec84 test: cover unix sockets in zmq interface (Matthew Zipkin) c87b0a0ff4cb6d83bb59360ac4453f6daa871177 zmq: accept unix domain socket address for notifier (Matthew Zipkin) Pull request description: This is a follow-up to https://github.com/bitcoin/bitcoin/pull/27375, allowing ZMQ notifications to be published to a UNIX domain socket. Fortunately, libzmq handles unix sockets already, all we really have to do to support it is allow the format in the actual option. [libzmq](https://libzmq.readthedocs.io/en/latest/zmq_ipc.html) uses the prefix `ipc://` as opposed to `unix:` which is [used by Tor](https://gitlab.torproject.org/tpo/core/tor/-/blob/main/doc/man/tor.1.txt?ref_type=heads#L1475) and now also by [bitcoind](https://github.com/bitcoin/bitcoin/blob/a85e5a7c9ab75209bc88e49be6991ba0a467034e/doc/release-notes-27375.md?plain=1#L5) so we need to switch that internally. As far as I can tell, [LND](https://github.com/lightninglabs/gozmq/blob/d20a764486bf506bc045642e455bc7f0d21b232a/zmq.go#L38) supports `ipc://` and `unix://` (notice the double slashes). With this patch, LND can connect to bitcoind using unix sockets: Example: *bitcoin.conf*: ``` zmqpubrawblock=unix:/tmp/zmqsb zmqpubrawtx=unix:/tmp/zmqst ``` *lnd.conf*: ``` bitcoind.zmqpubrawblock=ipc:///tmp/zmqsb bitcoind.zmqpubrawtx=ipc:///tmp/zmqst ``` ACKs for top commit: laanwj: Code review ACK 21d0e6c7b7c7af7f6e54a45829b4fbfba6923b86 tdb3: crACK for 21d0e6c7b7c7af7f6e54a45829b4fbfba6923b86. Changes lgtm. Will follow up with some testing within the next few days as time allows. achow101: ACK 21d0e6c7b7c7af7f6e54a45829b4fbfba6923b86 guggero: Tested and code review ACK 21d0e6c7b7c7 Tree-SHA512: ffd50222e80dd029d903e5ddde37b83f72dfec1856a3f7ce49da3b54a45de8daaf80eea1629a30f58559f4b8ded0b29809548c0638cd1c2811b2736ad8b73030
2024-04-22doc: explain what the wallet password doesBrandon Odiwuor
2024-04-22Avoid explicitly computing diagram; compare based on chunksPieter Wuille
2024-04-22test: Fix intermittent timeout in p2p_tx_download.pyMarcoFalke
2024-04-22Merge bitcoin/bitcoin#29879: fuzz: explicitly cap the vsize of RBFs for ↵glozow
diagram checks 016ed248ba0ae64e3f0c93bb47a2cd9b5e49cd85 fuzz: explicitly cap the vsize of RBFs for diagram checks (Greg Sanders) Pull request description: In master we are hitting a case where vsize transactions much larger than max standard size are causing an overflow in not-yet-exposed RBF diagram checking code: https://github.com/bitcoin/bitcoin/pull/29757#issuecomment-2049220195 `ConsumeTxMemPoolEntry` is creating entries with tens of thousands of sigops cost, causing the resulting RBFs to be "overly large". To fix this I cause the fuzz test to stop adding transactions to the mempool when we reach a potential overflow of `int32_t`. ACKs for top commit: glozow: ACK 016ed248ba0ae64e3f0c93bb47a2cd9b5e49cd85 marcofleon: ACK 016ed248ba0ae64e3f0c93bb47a2cd9b5e49cd85. I ran libFuzzer on `package_rbf` on the current master branch until the overflow was encountered. Then I built the PR branch and ran the fuzzer using the crash input. Tree-SHA512: b3ffc98d2c4598eb3010edd58b9370aab1441aafbb1044c83b2b90c17dfe9135b8de9dba475dd0108863c1ffedede443cd978e95231a41cf1f0715629197fa51
2024-04-21ci: Drop no longer needed `-I` flag in "tidy" taskHennadii Stepanov
2024-04-19Merge bitcoin/bitcoin#29827: test: p2p: add test for rejected tx request ↵glozow
logic (`m_recent_rejects` filter) 60ca5d55081275a011ccfc9546e0c4a8c4030493 test: p2p: add test for rejected tx request logic (`m_recent_rejects` filter) (Sebastian Falbesoner) e9dc511a7e9a562f953ff93f358102f555f583e6 fixup: get all utxos up front in fill_mempool, discourage wallet mixing (glozow) Pull request description: Motivated by the discussion in #28970 (https://github.com/bitcoin/bitcoin/pull/28970#discussion_r1553911167), this PR adds test coverage for the logic around the `m_recent_rejects` filter, in particular that the filter is cleared after a new block comes in: https://github.com/bitcoin/bitcoin/blob/f0794cbd405636a7f528a60f2873050b865cf7e8/src/net_processing.cpp#L2199-L2206 As expected, the second part of the test fails if the following patch is applied: ```diff diff --git a/src/net_processing.cpp b/src/net_processing.cpp index 6996af38cb..5cb1090e70 100644 --- a/src/net_processing.cpp +++ b/src/net_processing.cpp @@ -2202,7 +2202,7 @@ bool PeerManagerImpl::AlreadyHaveTx(const GenTxid& gtxid) // or a double-spend. Reset the rejects filter and give those // txs a second chance. hashRecentRejectsChainTip = m_chainman.ActiveChain().Tip()->GetBlockHash(); - m_recent_rejects.reset(); + //m_recent_rejects.reset(); } const uint256& hash = gtxid.GetHash(); ``` I'm still not sure in which file this test fits best, and if there is already test coverage for the first part of the test somewhere. Happy for any suggestions. ACKs for top commit: maflcko: ACK 60ca5d55081275a011ccfc9546e0c4a8c4030493 🍳 glozow: code review ACK 60ca5d55081275a011ccfc9546e0c4a8c4030493 instagibbs: ACK 60ca5d55081275a011ccfc9546e0c4a8c4030493 Tree-SHA512: 9cab43858e8f84db04a708151e6775c9cfc68c20ff53096220eac0b2c406f31aaf9223e8e04be345e95bf0a3f6dd15efac50b0ebeb1582a48a4560b3ab0bcba5
2024-04-19guix: remove no-longer-used bzip2fanquake
2024-04-19depends: switch qrencode to .tar.gzfanquake
2024-04-19depends: switch libxcb_util_wm to .tar.gzfanquake
2024-04-19depends: switch libxcb_util_render to .tar.gzfanquake