Age | Commit message (Collapse) | Author |
|
4b9f49da2b120e81516ddc3dc577d7a2e58e02d3 doc: fix broken relative md links (willcl-ark)
Pull request description:
These relative links in our documentation are broken, fix them.
ACKs for top commit:
maflcko:
ACK 4b9f49da2b120e81516ddc3dc577d7a2e58e02d3
ryanofsky:
Code review ACK 4b9f49da2b120e81516ddc3dc577d7a2e58e02d3. Thanks for the updates!
ismaelsadeeq:
Re ACK 4b9f49da2b120e81516ddc3dc577d7a2e58e02d3
Tree-SHA512: df4ef5ddece6c21125ce719ed6a4f69aba4f884c353ff7a8445ecb6438ed6bf0ff8268a1ae19cdd910adaadc189c6861c445b4d469f92ee81874d810dcbd0846
|
|
just a single one
42fb5311b19582361409d65c6fddeadbee14bb97 rpc: return warnings as an array instead of just a single one (stickies-v)
Pull request description:
The RPC documentation for `getblockchaininfo`, `getmininginfo` and `getnetworkinfo` states that "warnings" returns "any network and blockchain warnings". In practice, only a single warning (i.e. the latest one that is set) is returned, the other ones are ignored.
Fix that by returning all warnings as an array.
As a side benefit, clean up the GetWarnings() logic.
Since this PR changes the RPC result schema, I've added release notes. Users can temporarily revert to the old results by using `-deprecatedrpc=warnings`, until it's removed in a future version.
---
Some historical context from git log:
- when `GetWarnings` was introduced in 401926283a200994ecd7df8eae8ced8e0b067c46, it was used in the `getinfo` RPC, where only a [single error/warning was returned](https://github.com/bitcoin/bitcoin/commit/401926283a200994ecd7df8eae8ced8e0b067c46#diff-7442c48d42cd5455a79915a0f00cce5e13359db46437a32b812876edb0a5ccddR250) (similar to how it is now).
- later on, "warnings" RPC response fields were introduced, e.g. in ef2a3de25c882396e1776b554878d2784b6b7391, with the description [stating](https://github.com/bitcoin/bitcoin/commit/ef2a3de25c882396e1776b554878d2784b6b7391#diff-1021bd3c74415ad9719bd764ad6ca35af5dfb33b1cd863c0be49bdf52518af54R411) that it returned "any network warnings" but in practice still only a single warning was returned
ACKs for top commit:
achow101:
re-ACK 42fb5311b19582361409d65c6fddeadbee14bb97
tdb3:
Re ACK for 42fb5311b19582361409d65c6fddeadbee14bb97
TheCharlatan:
ACK 42fb5311b19582361409d65c6fddeadbee14bb97
maflcko:
ACK 42fb5311b19582361409d65c6fddeadbee14bb97 🔺
Tree-SHA512: 4225ed8979cd5f030dec785a80e7452a041ad5703445da79d2906ada983ed0bbe7b15889d663d75aae4a77d92e302c93e93eca185c7bd47c9cce29e12f752bd3
|
|
These relative links in our documentation are broken, fix them.
|
|
22574046c90c0662f3aa9b1baea074aff54f92a9 doc: add LLVM instruction for macOS < 13 (Sjors Provoost)
Pull request description:
#29208 bumped clang to 14, which users of old macOS versions need to install manually. This PR adds instructions.
Xcode 14.3.1 ships clang 14.0.3 (14.0.0 is broken, see #29918):
https://en.wikipedia.org/wiki/Xcode#Xcode_11.0_-_14.x_(since_SwiftUI_framework)
The system requirements for that is macOS Ventura 13.0 or later: https://developer.apple.com/documentation/xcode-release-notes/xcode-14_3_1-release-notes#
Homebrew itself officially supports macOS 12 or later, but _may_ still work on macOS 11: https://docs.brew.sh/Installation
Fwiw macOS 11 Big Sur last got an update in September 2023, so Apple has not _entirely_ written it off: https://en.wikipedia.org/wiki/MacOS_Big_Sur
ACKs for top commit:
maflcko:
utACK 22574046c90c0662f3aa9b1baea074aff54f92a9
TheCharlatan:
ACK 22574046c90c0662f3aa9b1baea074aff54f92a9
Tree-SHA512: 5b4bcc71966d1da84bc4da32da89e0dea9f519f37d9e14e169140c92af044b33f404f01ae7d10f53ab5345dd51ac404c161389efef93da5cacbfd52a43881695
|
|
5195baa60087ee366290887ad982fc491e14c111 depends: fix miniupnpc snprintf usage on Windows (fanquake)
3c2d440f1497f60bb444326f51383df244dcdfe9 depends: switch miniupnpc to CMake (Cory Fields)
f5618c79d9e7af05c2987044dc2da03697f8bb89 depends: add upstream CMake patch to miniupnpc (fanquake)
6866b571ab96f03ca0775424e45458c5731f230f depends: miniupnpc 2.2.7 (fanquake)
Pull request description:
This picks up one of the changes from #29232, which is a switch to building miniupnpc with CMake. It includes an update to the most recent version of miniupnpc (2.2.7), which means we can drop one patch from that commit, and includes a new patch for a change I've upstreamed https://github.com/miniupnp/miniupnp/pull/721, as well as some suggestions from the previous PR.
ACKs for top commit:
theuni:
ACK 5195baa60087ee366290887ad982fc491e14c111.
TheCharlatan:
utACK 5195baa60087ee366290887ad982fc491e14c111
Tree-SHA512: 5b27e132cd5eed285e9be34c8b96893417d92a1ae55c99345c9a89e1c1c5e40e4bc840bc061b879758b2b11fcb520cd98c3da985c1e153f2e5380cf63efe2d69
|
|
The RPC documentation for `getblockchaininfo`, `getmininginfo` and
`getnetworkinfo` states that "warnings" returns "any network and
blockchain warnings". In practice, only a single warning is returned.
Fix that by returning all warnings as an array.
As a side benefit, cleans up the GetWarnings() logic.
|
|
1ea8674316f2dce0005f6094b6ee111b045dd770 [doc] update release-process.md and backports section of CONTRIBUTING (glozow)
Pull request description:
While doing various release process things for the first time, I noticed some of our docs are outdated and/or confusing.
ACKs for top commit:
achow101:
ACK 1ea8674316f2dce0005f6094b6ee111b045dd770
Tree-SHA512: 4ad10d4ce2c33fe15cb02599353107bb72ecb867aefc6c120cfd5cdea42aa8fa3783f9e0218c2f3815f030e0694cc8fb24011ce88358a0206cb07416a256a962
|
|
2179e2c3209a41c1419f1f5ed6270a0dad68b50d doc: i2p: improve `-i2pacceptincoming` mention (brunoerg)
Pull request description:
In i2p documentation, it says that "the first time Bitcoin Core connects to the I2P router,
it automatically generates a persistent I2P address and its corresponding private key by
default _**or if `-i2pacceptincoming=1` is set**_". This is weird, because `-i2pacceptincoming=1`
by itself does not have any effect. Moreover, `-i2pacceptincoming` is 1 by default anyway.
ACKs for top commit:
laanwj:
This documentation change is correct and makes the documentation slightly shorter, thus easier to read. ACK 2179e2c3209a41c1419f1f5ed6270a0dad68b50d
davidgumberg:
ACK https://github.com/bitcoin/bitcoin/pull/29813/commits/2179e2c3209a41c1419f1f5ed6270a0dad68b50d
achow101:
ACK 2179e2c3209a41c1419f1f5ed6270a0dad68b50d
byaye:
ACK 2179e2c3209a41c1419f1f5ed6270a0dad68b50d
Tree-SHA512: 18a6a627343fb0aa824029d99df8a232153ba288ce94ec8c5da25693885237381fba505ea1e71c756b2a611243a302d319ca7ae03b526020cd6588710fc2ac17
|
|
Includes a temporary patch to fix the Windows Autotools build.
See
https://miniupnp.tuxfamily.org/files/changelog.php?file=miniupnpc-2.2.7.tar.gz.
|
|
|
|
|
|
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
|
|
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
|
|
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]:
```
|
|
The currently suggested `qt5` installs many unneeded dependencies, for
example, `qtsensors`, `qtspeech` etc.
|
|
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
|
|
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
|
|
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
|
|
|
|
- Mention which directories contain the respective unsigned tarballs
- Clarify that bitcoin.conf might not need to be updated
- Specify where to put historical release notes if there is already
something in release-notes.md
- Clarify what exactly is the problem with running guix-codesign more
than once
- Correct number: 6 codesigned attestations are needed before uploading
binaries
- Remove scp command which is outdated
- Remove server path which is outdated
- Specify that translations update should happen before branch-off, not
before each release candidate
- Mention that you should notify lists when RCs are available
- Put "Archive the release notes" as a separate step, since creating the
github release has a dependency on it.
- Put bitcoincore.org website updates as a separate step, since
updating packaging repos may have a dependency on it.
- Update "bitcoin-dev mailing list" to "bitcoin-dev group"
- Document that maintainers should create PRs to collect backports
- Remove section about not uploading `*-debug` files, reader should
upload all build artifacts.
- Torrent is created automatically, so delete instructions.
- Mention that server also generates ots file automatically.
|
|
keys in descriptors
24b67fa9f602cdeac0e9736256f77d048f616c48 doc: Add example of mixing private and public keys in descriptors (Anton A)
Pull request description:
closes: #27414
ACKs for top commit:
achow101:
ACK 24b67fa9f602cdeac0e9736256f77d048f616c48
alfonsoromanz:
Re ACK 24b67fa9f602cdeac0e9736256f77d048f616c48
Tree-SHA512: 8c063f23199ac0ff35909f786a5b0de1b4a9b15d1e93bdcdac10cb4bd2002c12e99b6fb1c2e56d16971e7622b67d910b79088429df92c48279be2d7797049911
|
|
|
|
Update external signer documentation to reflect this requirement, which HWI already implements.
|
|
|
|
78407b99ed6dd17f687fcbfb0486ecc433302287 [clang-tidy] Enable the misc-no-recursion check (dergoegge)
Pull request description:
Recursion is a frequent source of stack overflow bugs. Secondly, introduction of recursion can be non-obvious.
This PR proposes to use the clang-tidy `misc-no-recursion` check to make introduction of new recursion obvious. We don't make use of recursion a lot in our code base but there are a few places that need suppressions anyway (mostly the descriptor and univalue/rpc code).
ACKs for top commit:
stickies-v:
ACK 78407b99ed6dd17f687fcbfb0486ecc433302287
TheCharlatan:
Re-ACK 78407b99ed6dd17f687fcbfb0486ecc433302287
fanquake:
ACK 78407b99ed6dd17f687fcbfb0486ecc433302287
Tree-SHA512: 34126d704c46086fe7371906ca852c25ced1dbd5fcfd85bf623810cd171a797569a92a33c7e26b8dc01c30c7bbf81aa326718926e8354585091411989a4edb14
|
|
|
|
Co-authored-by: stickies-v <stickies-v@protonmail.com>
Co-authored-by: Gloria Zhao <gloriajzhao@gmail.com>
|
|
This includes once CMake related change I upstreamed:
https://github.com/miniupnp/libnatpmp/pull/43.
|
|
|
|
0ead466a0c72bef0a8622749b84e9c7c5c37144f Update the developer mailing list address. (Edil Medeiros)
Pull request description:
The developer mailing list was migrated to Google Groups in February 2024 as announced in https://groups.google.com/g/bitcoindev/c/aewBuV6k-LI.
In this patch, I decided to add a link to the [archives maintained by the Linux Foundation](https://lists.linuxfoundation.org/pipermail/bitcoin-dev/) as linked in the [old mailing list page](https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev).
A reasonable alternative would be link to the [new archives](https://gnusha.org/pi/bitcoindev/) linked in the [migration announcement message](https://groups.google.com/g/bitcoindev/c/aewBuV6k-LI). I'm not sure about the status of the archive migration, probably the old archives are more comprehensive to this date.
ACKs for top commit:
josibake:
reACK https://github.com/bitcoin/bitcoin/commit/0ead466a0c72bef0a8622749b84e9c7c5c37144f
Sjors:
ACK 0ead466a0c72bef0a8622749b84e9c7c5c37144f
Zero-1729:
crACK 0ead466a0c72bef0a8622749b84e9c7c5c37144f
Tree-SHA512: c29296a45a65f342df03faffa49e7dc1469d78e96074a7dbc82d89fc3f45179e4828015cbb6400b44830d6bb7fc23869abf2b8a7070196b03f99fbb0158bb343
|
|
The developer mailing list was migrated to Google Groups in February 2024
as announced in https://groups.google.com/g/bitcoindev/c/aewBuV6k-LI.
The archives maintained by the Linux Foundation stopped updating in December
2024. Thus, we point to the new archive maintained by gnusha.org.
The codebase refers to old discussions linked to the Linux Foundation archives.
Since all links are still active to this date, we keep them as they are.
See #29782.
|
|
|
|
80f8b92f4f2311b9e9a25361c9dd973244e6f95c remove libbitcoinconsensus (fanquake)
Pull request description:
This was deprecated in `v27.0`, for removal in `v28.0`. See discussion in PR #29189.
ACKs for top commit:
theuni:
Concept ACK and light review ACK 80f8b92f4f2311b9e9a25361c9dd973244e6f95c. My only hesitation here is that (afaics?) there's now nothing keeping undesired features like threading or globals from working their way into the interpreter in future commits.
m3dwards:
Concept ACK https://github.com/bitcoin/bitcoin/pull/29648/commits/80f8b92f4f2311b9e9a25361c9dd973244e6f95c
TheCharlatan:
ACK 80f8b92f4f2311b9e9a25361c9dd973244e6f95c
hebasto:
ACK 80f8b92f4f2311b9e9a25361c9dd973244e6f95c, I have reviewed the code and it looks OK.
Tree-SHA512: 17a62118aeb088f2695c892bb32794dfea3061e3cb7d9e8e9f1c06c3ff6f63a7587fa532e37edbb91fbc5a19b12c9a0f8e05fa9e8864aa07f92665375d847e80
|
|
information
f8f5cece4dfda5c614e087be75af074181a36c39 doc: Override `-g` properly to skip debugging information (Hennadii Stepanov)
Pull request description:
Fix https://github.com/bitcoin/bitcoin/issues/29755.
ACKs for top commit:
TheCharlatan:
ACK f8f5cece4dfda5c614e087be75af074181a36c39
Tree-SHA512: 02bff5fc41859deb914531ef01ea1ac88ab2e138219fe175472962192b11feefe772128da03f466ec765c1b35b21eead31a42cc76e62ecb7ea5dc947cf568d61
|
|
430f319f73894499c56021b70f2827475c3f0433 depends: qt 5.15.13 (fanquake)
Pull request description:
I need to try and patch around Qts buildsystem to keep #21778 moving along (the issue being that even when you tell Qt to build using Clang on Linux, it still calls out to GCC, breaking our ability to have a macOS release build env that doesn't have a GCC toolchain installed, and thus no `ld` binary).
Before trying to patch Qt any further, update to the latest LTS release, and update the current patch set.
ACKs for top commit:
TheCharlatan:
Re-ACK 430f319f73894499c56021b70f2827475c3f0433
hebasto:
re-ACK 430f319f73894499c56021b70f2827475c3f0433.
Tree-SHA512: 11122c04d63f4ec79e5d7945e1686eaf308cb1f98c3ff8bc52e265d7353cd4f1a532f4d78d55b43183245aeebf93cc1092087d9fe83e42eefa8a69ad9017d2da
|
|
Pretty much all library packages were renamed in the 64-bit time_t
migration to add `t64` (even on 64-bit platforms).
Instead of complicating the doc with conditional package names, suggest
installing the `-dev` packages which still have the same name, and
besides that, are the right way to go about it as they contain the
"user facing" C++ headers needed to build against Qt5.
For Fedora, devel packages are already suggested.
This affects Ubuntu 24.04 and Debian Testing.
|
|
|
|
I need to try and patch around Qts buildsystem to keep #21778 moving
along (the issue being that even when you tell Qt to build using
Clang on Linux, it still calls out to GCC, breaking our ability to have
a macOS release build env that doesn't have a GCC toolchain installed,
and thus no ld binary).
Before trying to patch Qt any further, update to the latest LTS
release, and update the current patch set.
|
|
|
|
This was deprecated in v27.0, for removal in v28.0.
See discussion in PR #29189.
|
|
Flag adds complexity and is not currently used for anything.
|
|
|
|
|
|
-onion
567cec9a05e1261e955535f734826b12341684b6 doc: add release notes and help text for unix sockets (Matthew Zipkin)
bfe51928911daf484ae07deb52a7ff0bcb2526ae test: cover UNIX sockets in feature_proxy.py (Matthew Zipkin)
c65c0d01630b44fa71321ea7ad68d5f9fbb7aefb init: allow UNIX socket path for -proxy and -onion (Matthew Zipkin)
c3bd43142eba77dcf1acd4984e437759f65e237a gui: accomodate unix socket Proxy in updateDefaultProxyNets() (Matthew Zipkin)
a88bf9dedd1d8c1db0a9c8b663dab3e3c2f0f030 i2p: construct Session with Proxy instead of CService (Matthew Zipkin)
d9318a37ec09fe0b002815a7e48710e530620ae2 net: split ConnectToSocket() from ConnectDirectly() for unix sockets (Matthew Zipkin)
ac2ecf3182fb5ad9bcd41540b19382376114d6ee proxy: rename randomize_credentials to m_randomize_credentials (Matthew Zipkin)
a89c3f59dc44eaf4f59912c1accfc0ce5d61933a netbase: extend Proxy class to wrap UNIX socket as well as TCP (Matthew Zipkin)
3a7d6548effa6cd9a4a5413b690c2fd85da4ef65 net: move CreateSock() calls from ConnectNode() to netbase methods (Matthew Zipkin)
74f568cb6fd5c74b7b9bf0ce69876430746a53b1 netbase: allow CreateSock() to create UNIX sockets if supported (Matthew Zipkin)
bae86c8d318d06818aa75a9ebe3db864197f0bc6 netbase: refactor CreateSock() to accept sa_family_t (Matthew Zipkin)
adb3a3e51de205cc69b1a58647c65c04fa6c6362 configure: test for unix domain sockets (Matthew Zipkin)
Pull request description:
Closes https://github.com/bitcoin/bitcoin/issues/27252
UNIX domain sockets are a mechanism for inter-process communication that are faster than local TCP ports (because there is no need for TCP overhead) and potentially more secure because access is managed by the filesystem instead of serving an open port on the system.
There has been work on [unix domain sockets before](https://github.com/bitcoin/bitcoin/pull/9979) but for now I just wanted to start on this single use-case which is enabling unix sockets from the client side, specifically connecting to a local Tor proxy (Tor can listen on unix sockets and even enforces strict curent-user-only access permission before binding) configured by `-onion=` or `-proxy=`
I copied the prefix `unix:` usage from Tor. With this patch built locally you can test with your own filesystem path (example):
`tor --SocksPort unix:/Users/matthewzipkin/torsocket/x`
`bitcoind -proxy=unix:/Users/matthewzipkin/torsocket/x`
Prep work for this feature includes:
- Moving where and how we create `sockaddr` and `Sock` to accommodate `AF_UNIX` without disturbing `CService`
- Expanding `Proxy` class to represent either a `CService` or a UNIX socket (by its file path)
Future work:
- Enable UNIX sockets for ZMQ (https://github.com/bitcoin/bitcoin/pull/27679)
- Enable UNIX sockets for I2P SAM proxy (some code is included in this PR but not tested or exposed to user options yet)
- Enable UNIX sockets on windows where supported
- Update Network Proxies dialog in GUI to support UNIX sockets
ACKs for top commit:
Sjors:
re-ACK 567cec9a05e1261e955535f734826b12341684b6
tdb3:
re ACK for 567cec9a05e1261e955535f734826b12341684b6.
achow101:
ACK 567cec9a05e1261e955535f734826b12341684b6
vasild:
ACK 567cec9a05e1261e955535f734826b12341684b6
Tree-SHA512: de81860e56d5de83217a18df4c35297732b4ad491e293a0153d2d02a0bde1d022700a1131279b187ef219651487537354b9d06d10fde56225500c7e257df92c1
|
|
0a533613fb44207053796fd01a9f4b523a3153d4 docs: add release notes for #27114 (brunoerg)
e6b8f19de9a6d1c477d0bbda18d17794cd81a6f4 test: add coverage for whitelisting manual connections (brunoerg)
c985eb854cc86deb747caea5283c17cf51b6a983 test: add option to speed up tx relay/mempool sync (brunoerg)
66bc6e2d1749f43d7b314aa2784a06af78440170 Accept "in" and "out" flags to -whitelist to allow whitelisting manual connections (Luke Dashjr)
8e06be347c5e14cbe75256eba170e0867f95f360 net_processing: Move extra service flag into InitializeNode (Luke Dashjr)
9133fd69a5cc9a0ab1a06a60d09f1b7e1039018e net: Move `NetPermissionFlags::Implicit` verification to `AddWhitelistPermissionFlags` (Luke Dashjr)
2863d7dddb62d987b3e1c3b8bfad7083f0f774b2 net: store `-whitelist{force}relay` values in `CConnman` (brunoerg)
Pull request description:
Revives #17167. It allows whitelisting manual connections. Fixes #9923
Since there are some PRs/issues around this topic, I'll list some motivations/comments for whitelisting outbound connections from them:
- Speed-up tx relay/mempool sync for testing purposes (my personal motivation for this) - In #26970, theStack pointed out that we whitelist peers to speed up tx relay for fast mempool synchronization, however, since it applies only for inbound connections and considering the topology `node0 <--- node1 <---- node2 <--- ... <-- nodeN`, if a tx is submitted from any node other than node0, the mempool synchronization can take quite long.
- https://github.com/bitcoin/bitcoin/pull/29058#issuecomment-1865155764 - "Before enabling -v2transport by default (which I'd image may happen after https://github.com/bitcoin/bitcoin/pull/24748) we could consider a way to force manual connections to be only-v1 or even only-v2 (disabling reconnect-with-v1). A possibility could be through a net permission flag, if https://github.com/bitcoin/bitcoin/pull/27114 makes it in."
- https://github.com/bitcoin/bitcoin/pull/17167#issuecomment-1168606032 - "This would allow us to use https://github.com/bitcoin/bitcoin/pull/25355 when making outgoing connections to all nodes, except to whitelisted ones for which we would use our persistent I2P address."
- Force-relay/mempool permissions for a node you intentionally connected to.
ACKs for top commit:
achow101:
ACK 0a533613fb44207053796fd01a9f4b523a3153d4
sr-gi:
re-ACK [0a53361](https://github.com/bitcoin/bitcoin/pull/27114/commits/0a533613fb44207053796fd01a9f4b523a3153d4)
pinheadmz:
ACK 0a533613fb44207053796fd01a9f4b523a3153d4
Tree-SHA512: 97a79bb854110da04540897d2619eda409d829016aafdf1825ab5515334b0b42ef82f33cd41587af235b3af6ddcec3f2905ca038b5ab22e4c8a03d34f27aebe1
|
|
|
|
offline-signing-tutorial.md
990b348912ac8cf107d7111632d3f6fb7298f36b doc: update signet faucet link in offline-signing-tutorial.md (Supachai Kheawjuy)
Pull request description:
https://signet.bc-2.jp is broken and https://signetfaucet.com is the same as before.
https://signet.bc-2.jp from archive.org
<img width="1258" alt="image" src="https://github.com/bitcoin/bitcoin/assets/73651621/36817aa6-95ea-427d-8d1d-93e21af86dce">
https://signetfaucet.com
<img width="1242" alt="image" src="https://github.com/bitcoin/bitcoin/assets/73651621/e3248fb0-8a6d-45b3-9268-d883d2385c8f">
reference: https://en.bitcoin.it/wiki/Signet#Faucets
ACKs for top commit:
fanquake:
ACK 990b348912ac8cf107d7111632d3f6fb7298f36b
Tree-SHA512: 482c931168a162cc666ecbe610e80d94ae433ebdc6bc52832bcc40c58592f9d9b8c7f1aea6faa2739873e80c6d4ea70c8a4f78d18067d1739e8070effce83062
|
|
These have been added to
https://github.com/bitcoin-core/bitcoin-devwiki/wiki/27.0-Release-Notes-Draft,
where they can be improved further.
|
|
|
|
|