Age | Commit message (Collapse) | Author |
|
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
|
|
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
|
|
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
|
|
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
|
|
Signed-off-by: hanmz <hanmzarsenal@gmail.com>
|
|
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.
|
|
-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-
|
|
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>
|
|
|
|
Co-authored-by: Lőrinc <pap.lorinc@gmail.com>
|
|
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
|
|
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
|
|
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
|
|
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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]:
```
|
|
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
|
|
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
|
|
The currently suggested `qt5` installs many unneeded dependencies, for
example, `qtsensors`, `qtspeech` etc.
|
|
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.
|
|
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
|
|
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
|
|
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
|
|
|
|
|
|
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
|
|
|
|
`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
|
|
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
|
|
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
|
|
|
|
|
|
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.
|
|
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
|
|
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
|
|
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
|
|
|
|
|
|
|
|
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
|
|
|
|
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
|
|
|
|
|
|
|
|
|