Commit graph

32875 commits

Author SHA1 Message Date
laanwj
5f8635541e
build: Bump rc to 23.0rc4
Tree-SHA512: 18e4560c9b04d1270449ed1938b4c3ce9a903b1b65257e92947884f12a2d45e64e4074f8e7738c7ccb7076f696f9e7fb2056a55f856335a98eed143e0c1167f3
2022-04-08 15:53:50 +02:00
laanwj
308a2022c0
Merge bitcoin/bitcoin#24807: [23.x] Final rc4 backports
e3e4be9cd5 RPC: Switch getblockfrompeer back to standard param name blockhash (Luke Dashjr)
69cc83df69 Add DEBUG_LOCKCONTENTION documentation to the developer notes (Jon Atack)
6374e24887 Put lock logging behind DEBUG_LOCKCONTENTION preprocessor directive (Jon Atack)

Pull request description:

  Backports:
  * #24770
  * #24806

ACKs for top commit:
  laanwj:
    Commit list and code review ACK e3e4be9cd5
  jonatack:
    Code review and commit metadata ACK e3e4be9cd5

Tree-SHA512: eff2b506379a9396b12b42ed2858e3eb9403a55950d6dec0b5dcc95c4c2998cddf9e0ec88af2f8ac5a7bece4d4537acede1c75f59bbc6616bee273384f87f6b0
2022-04-08 15:53:08 +02:00
Luke Dashjr
e3e4be9cd5
RPC: Switch getblockfrompeer back to standard param name blockhash
This commit partially reverts 923312fbf6.

Github-Pull: #24806
Rebased-From: 88917f93cc
2022-04-08 13:27:19 +01:00
Jon Atack
69cc83df69
Add DEBUG_LOCKCONTENTION documentation to the developer notes
Github-Pull: #24770
Rebassedd-From: 4394733331
2022-04-08 13:27:02 +01:00
Jon Atack
6374e24887
Put lock logging behind DEBUG_LOCKCONTENTION preprocessor directive
Github-Pull: #24770
Rebased-From: 39a34b6877
2022-04-08 13:26:34 +01:00
MarcoFalke
1ea76767d0
Merge bitcoin/bitcoin#24755: [23.x] Further build backports
39396ab593 build: Fix "ERR: Unsigned tarballs do not exist" (Hennadii Stepanov)
db8a5d6094 guix: fix vmov alignment issues with gcc 10.3.0 & mingw-w64 (fanquake)

Pull request description:

  Backports:
  * https://github.com/bitcoin/bitcoin/pull/24733
  * https://github.com/bitcoin/bitcoin/pull/24736

ACKs for top commit:
  gruve-p:
    ACK 39396ab593
  hebasto:
    ACK 39396ab593, backported locally, got zero diff with the PR branch.
  jarolrod:
    ACK 39396ab593

Tree-SHA512: 3573870c48fbde538a490c8b7103779987d3cce1165ca639c164aaf8ef82290fb99fcd461d0fed0208b43174b21284b21eb032c00512b986ae824295cc7935a8
2022-04-05 08:51:54 +02:00
Hennadii Stepanov
39396ab593
build: Fix "ERR: Unsigned tarballs do not exist"
Github-Pull: #24733
Rebased-From: 7762c5683f
2022-04-04 10:49:17 +01:00
fanquake
db8a5d6094
guix: fix vmov alignment issues with gcc 10.3.0 & mingw-w64
This introduces a patch to our GCC (10.3.0) mingw-w64 compiler, in Guix, to make
it avoid using aligned vmov instructions. This works around a longstanding issue
in GCC, https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54412, which was recently
discovered to be causing issues, see #24726.

Note that distros like Debian are also patching around this issue, and that is
where this patch comes from. This would also explain why we haven't run into this
problem earlier, in development builds. See:
https://salsa.debian.org/mingw-w64-team/gcc-mingw-w64/-/blob/master/debian/patches/vmov-alignment.patch.

Fixes #24726.
Alternative to #24727.

See also:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=939559

Github-Pull: #24736
Rebased-From: d6fae988ef
2022-04-04 10:48:33 +01:00
MarcoFalke
e089c68aa1
Merge bitcoin/bitcoin#24725: 23.0: rc4 backport
1448c99380 wallet: Postpone NotifyWalletLoaded() for encrypted wallets (Hennadii Stepanov)
4f3ba8517a wallet, refactor: Add wallet::NotifyWalletLoaded() function (Hennadii Stepanov)

Pull request description:

ACKs for top commit:
  Sjors:
    ACK 1448c99380
  hebasto:
    ACK 1448c99380
  jarolrod:
    ACK 1448c99380

Tree-SHA512: 84d908ff40f0048394f74499a9640904eb244bae975648221a883ab6ef6c5d5d7c178c17e5e420b565000c6d9cea26769fa9dd7c53ae10e32fa15748940ea796
2022-04-01 08:48:42 +02:00
Hennadii Stepanov
1448c99380 wallet: Postpone NotifyWalletLoaded() for encrypted wallets
Too early NotifyWalletLoaded() call in CWallet::Create() results the
notification goes before DescriptorScriptPubKeyMans were created and
added to an encrypted wallet.

Co-authored-by: Andrew Chow <achow101-github@achow101.com>

Github-Pull: bitcoin/bitcoin#24711
Rebased-From: 0c12f0116c
2022-03-31 19:04:04 +02:00
Hennadii Stepanov
4f3ba8517a wallet, refactor: Add wallet::NotifyWalletLoaded() function
This change is a prerequisite for the following bugfix.

Github-Pull: bitcoin/bitcoin#24711
Rebased-From: aeee419c6a
2022-03-31 19:04:02 +02:00
laanwj
e181e94e86
doc: Update manual pages for 23.0rc3
Tree-SHA512: 5350255e4260b85b7f294e980f9c47fb0aa8370965711411e37c16702cd3eee010ea83c2135b1e4fe6241402b9b1b478bc7f6a181f3e6da2c261a024b45aa8ae
2022-03-31 16:13:45 +02:00
laanwj
752c9d82a6
qt: 23.0rc3 translations update
Tree-SHA512: 110fab39faae351f10a9bb3a8a852d29f1e8e4bae27b790a52198fc39c5e1a2261c0fe8f0289f4c626e3d39f237c9410ae80f311bdcf446f778c680bc0fdc367
2022-03-31 16:13:38 +02:00
laanwj
2a1d3a48c4
build: Bump rc to 23.0rc3
Tree-SHA512: 558379b8b0e9e12a84b563d673377712950b425fd5862f68dddcecde14090e9566917e30720a82ddf8cb1132f02e21bab1ab93594f507e9ca34d039408ca15b4
2022-03-31 16:13:25 +02:00
fanquake
c243e08351
Merge bitcoin/bitcoin#24512: 23.x backports
174af33d5d util: Add inotify_rm_watch to syscall sandbox (AllowFileSystem) (Hennadii Stepanov)
ded10fe3ea build: Fix Boost.Process test for Boost 1.78 (Hennadii Stepanov)
26c2f23f36 build: Fix Boost.Process detection on macOS arm64 (Hennadii Stepanov)
85f85c7e5f util: add linkat to syscall sandbox (AllowFileSystem) (fanquake)
eaa04194b9 contrib: fix signet miner (sighash mismatch) (Sebastian Falbesoner)
235b042594 rpc: Exclude descriptor when address is excluded (MarcoFalke)
b05a59b69f ci: Temporarily use clang-13 to work around clang-14 TSan bug (MarcoFalke)
65b966743c doc, init: add links to doc/cjdns.md (Jon Atack)
7a553d4e65 doc: update i2p.md with cjdns, improve local addresses section (Jon Atack)
4148396229 doc: update tor.md with cjdns and getnodeaddresses, fix tor grep, (Jon Atack)
4690e8af13 doc: create initial doc/cjdns.md for cjdns how-to documentation (Jon Atack)
5d24f612d1 Clarify in -maxtimeadjustment that only outbound peers influence time data (Jon Atack)
b1646f1bb5 test: set segwit height back to 0 on regtest (Martin Zumsande)
ef6a37b7c4 rpc: rename getdeploymentinfo status-next to status_next (Jon Atack)
2a6fcf9c13 init, doc: improve -onlynet help and tor/i2p documentation (Jon Atack)

Pull request description:

  Backport the following to 23.x:

  - #24468
  - #24528
  - #24527
  - #24609
  - #24555
  - #24663
  - #24572
  - #24636
  - #24553
  - #24659
  - #24521
  - #24523
  - #24690
  - #24710

  Possibly also:
  - #24579
  - #24691

ACKs for top commit:
  laanwj:
    List-of-commits ACK 174af33d5d, I think we should merge this and move forward with rc3..
  hebasto:
    ACK 174af33d5d

Tree-SHA512: 5a493e1652b780b527767d6ca9e67012abd2fa5573496e85e0d8aa4bed3eb332bfcd72610b8dfb954ff274d42450623233c96c479de2085b9c8344ba5abf1935
2022-03-31 12:19:22 +01:00
Hennadii Stepanov
174af33d5d
util: Add inotify_rm_watch to syscall sandbox (AllowFileSystem)
Github-Pull: bitcoin#24690
Rebased-From: f05a4cd
2022-03-31 10:38:11 +02:00
Hennadii Stepanov
ded10fe3ea
build: Fix Boost.Process test for Boost 1.78
Github-Pull: bitcoin#24523
Rebased-From: 532c64a
2022-03-31 10:38:09 +02:00
Hennadii Stepanov
26c2f23f36
build: Fix Boost.Process detection on macOS arm64
Could be tested as follows:
```
% brew install boost@1.76
% ./autogen.sh
% ./configure --with-boost='/opt/homebrew/opt/boost@1.76'
```

Github-Pull: bitcoin#24521
Rebased-From: 1d4157a
2022-03-31 10:37:15 +02:00
fanquake
85f85c7e5f
util: add linkat to syscall sandbox (AllowFileSystem)
Github-Pull: bitcoin#24659
Rebased-From: 9809db3
2022-03-31 10:30:14 +02:00
Sebastian Falbesoner
eaa04194b9
contrib: fix signet miner (sighash mismatch)
PSBT signing was changed to use SIGHASH_DEFAULT by default in #22514.
The signet miner script sets the sighash type of the created PSBT to
SIGHASH_ALL, hence this leads to a sighash mismatch when the
`walletprocesspsbt` RPC is called. Fix this by explicitly passing the
correct sighash type.

Note that the same change was needed in one of our functional tests,
see commit d3992669df.

Reported by gruve-p.

Github-Pull: bitcoin#24553
Rebased-From: 12cc020
2022-03-31 10:30:12 +02:00
MarcoFalke
235b042594
rpc: Exclude descriptor when address is excluded
Github-Pull: bitcoin#24636
Rebased-From: faf37c2
2022-03-31 10:30:10 +02:00
MarcoFalke
b05a59b69f
ci: Temporarily use clang-13 to work around clang-14 TSan bug
Github-Pull: bitcoin#24572
Rebased-From: fa43933
2022-03-31 10:30:07 +02:00
Jon Atack
65b966743c
doc, init: add links to doc/cjdns.md
Github-Pull: bitcoin#24663
Rebased-From: daae288
2022-03-31 10:30:05 +02:00
Jon Atack
7a553d4e65
doc: update i2p.md with cjdns, improve local addresses section
Github-Pull: bitcoin#24555
Rebased-From: f44efc3
2022-03-31 10:30:02 +02:00
Jon Atack
4148396229
doc: update tor.md with cjdns and getnodeaddresses, fix tor grep,
and improve local addresses section

Github-Pull: bitcoin#24555
Rebased-From: 3bf6f0c
2022-03-31 10:29:25 +02:00
Jon Atack
4690e8af13
doc: create initial doc/cjdns.md for cjdns how-to documentation
Adapted in part from the CJDNS description in #23077 by Vasil Dimov
and from CJDNS documentation and feedback by Caleb James DeLisle.

Co-authored-by: Vasil Dimov <vd@FreeBSD.org>

Github-Pull: bitcoin#24555
Rebased-From: ed15848
2022-03-31 10:28:29 +02:00
Jon Atack
5d24f612d1
Clarify in -maxtimeadjustment that only outbound peers influence time data
Github-Pull: bitcoin#24609
Rebased-From: 1bba72d
2022-03-28 12:49:51 +02:00
MarcoFalke
7d03cf632d
Merge bitcoin/bitcoin#24596: [23.x] GUI backports
70f2c579b9 options: flip listenonion to false if not listening (Vasil Dimov)
642f2726de gui: restore Send for external signer (Sjors Provoost)
940694664d refactor: helper function signWithExternalSigner() (Sjors Provoost)
fc421d4c8c move-only: helper function to present PSBT (Sjors Provoost)

Pull request description:

  Backports from the GUI repo:
  - bitcoin-core/gui#555
  - bitcoin-core/gui#568

ACKs for top commit:
  Sjors:
    utACK 70f2c579b9
  gruve-p:
    ACK 70f2c579b9

Tree-SHA512: 883c442f8b789a9d11c949179e4382843cbb979a89a625bef3f481c7070421681d9db2af0e5b2449abca362c8ba05cf61db5893aeb6a9237b02088c2fb71e93e
2022-03-24 08:12:11 +01:00
Vasil Dimov
70f2c579b9
options: flip listenonion to false if not listening
If the user has unchecked "Allow incoming connections" in
`Settings->Options...->Network` then `fListen=false` is saved in
`~/.config/Bitcoin/Bitcoin-Qt.conf`. This flips `-listen` to `false`
during startup, but leaves `-listenonion` to `true`.

This flipping of `-listen` is done in `OptionsModel::Init()` after
`InitParameterInteraction()` has been executed which would have flipped
`-listenonion`, should it have seen `-listen` being `false`
(this is a difference between `bitcoind` and `bitcoin-qt`).

Fixes: https://github.com/bitcoin-core/gui/issues/567

Github-Pull: bitcoin-core/gui#568
Rebased-From: 7f90dc26c8
2022-03-23 17:26:19 +01:00
laanwj
55a60b9718
Merge bitcoin/bitcoin#24593: [23.x] macOS / build backports
61c021605f doc, guix: Include arm64-apple-darwin into codesigned archs (Hennadii Stepanov)
f541a252f6 doc: Drop a note about Intel-based Macs (Hennadii Stepanov)
dd2c7f71fd guix: Use "win64" for Windows artifacts consistently (Hennadii Stepanov)
2e7cde8f68 guix: Drop "-signed" suffix for signed macOS .dmg files (Hennadii Stepanov)
7f6420c833 guix: Use $HOST instead of generic osx{64} for macOS artifacts (Hennadii Stepanov)
de528793b6 Update signapple for platform identifier fix (Andrew Chow)

Pull request description:

  Backports:
  * #24549
  * #24573
  * #24588
  * #24597

ACKs for top commit:
  laanwj:
    Code review ACK 61c021605f

Tree-SHA512: 023bfe6f1a31cec66f0255fb8e9c186f44a50a900a9f22c65b2da672b413fec7570f0f11626317344b6f91e74610006ffe0e35243af510de1eb8a3ceb8e8d37f
2022-03-17 09:47:42 +01:00
Hennadii Stepanov
61c021605f
doc, guix: Include arm64-apple-darwin into codesigned archs
Github-Pull: #24597
Rebased-From: 1f4801b6b1
2022-03-17 08:38:58 +00:00
Sjors Provoost
642f2726de
gui: restore Send for external signer
Before this change the send confirmation dialog would keep the Send option disabled. The Create Unsigned choice would actually send. This is potentially confusing.

With this change the Create Unsigned button will not attempt to sign and always produce a PSBT. The Send button will attempt to sign, and only return a PSBT if more signatures are needed.

When using an external signer, the Create Unsigned option only appears when PSBT controls are enabled in the wallet settings.

This commit maintains the pre-existing behavior of filling the PSBT (without signing) even when not using an external signer.

Closes #551

Co-authored-by: Jon Atack <jon@atack.com>

Github-Pull: bitcoin-core/gui#555
Rebased-From: 2efdfb88aa
2022-03-17 07:28:50 +01:00
Sjors Provoost
940694664d
refactor: helper function signWithExternalSigner()
Does not change behavior.

Review hint:
git show --color-moved --color-moved-ws=allow-indentation-change

Github-Pull: bitcoin-core/gui#555
Rebased-From: 4b5a6cd149
2022-03-17 07:28:50 +01:00
Sjors Provoost
fc421d4c8c
move-only: helper function to present PSBT
This commit does not change behavior.

Review hint:
git show --color-moved --color-moved-ws=allow-indentation-change

Github-Pull: bitcoin-core/gui#555
Rebased-From: 026b5b4523
2022-03-17 07:28:50 +01:00
Hennadii Stepanov
f541a252f6
doc: Drop a note about Intel-based Macs
Github-Pull: #24588
Rebased-From: e359ba6b35
2022-03-16 20:51:32 +00:00
Hennadii Stepanov
dd2c7f71fd
guix: Use "win64" for Windows artifacts consistently
Github-Pull: #24549
Rebased-From: 53dd6165b8
2022-03-16 20:50:30 +00:00
Hennadii Stepanov
2e7cde8f68
guix: Drop "-signed" suffix for signed macOS .dmg files
This change makes naming of the signed artifacts consistent across
different OSes, including Windows.

Github-Pull: #24549
Rebased-From: 4b4b04a66d
2022-03-16 20:49:47 +00:00
Hennadii Stepanov
7f6420c833
guix: Use $HOST instead of generic osx{64} for macOS artifacts
Github-Pull: #24549
Rebased-From: 933a43018f
2022-03-16 20:49:19 +00:00
Andrew Chow
de528793b6
Update signapple for platform identifier fix
Github-Pull: #24573
Rebased-From: 3c74f775ac
2022-03-16 20:47:58 +00:00
Martin Zumsande
b1646f1bb5
test: set segwit height back to 0 on regtest
This was changed in #22818 from 0 to 1. Since it changes
BLOCK_OPT_WIT of the genesis block, older versions of bitcoin
core would not read regtest directories created with newer versions
without a reindex.

Github-Pull: bitcoin#24527
Rebased-From: 5ce3057
2022-03-13 17:43:36 +01:00
Jon Atack
ef6a37b7c4
rpc: rename getdeploymentinfo status-next to status_next
Github-Pull: bitcoin#24528
Rebased-From: 5d7c69b
2022-03-13 17:41:05 +01:00
Jon Atack
2a6fcf9c13
init, doc: improve -onlynet help and tor/i2p documentation
and harmonize them as follows

- s/outgoing/automatic outbound/
- s/Incoming/Inbound and manual/ (are not affected by this option.)
- s/only through network/only to network/
- s/this option. This option/this option. It/
- s/network types/networks/

and also pick up a few nits in doc/p2p-bad-ports.md

Github-Pull: bitcoin#24468
Rebased-From: a1db99a
2022-03-13 17:35:56 +01:00
laanwj
71866d8566
doc: Update manual pages for rc2
Tree-SHA512: c0ded71cf1dc0b0727f7b87ad353b149fd0c53fdcccf6c058bbcaf3d4bdbf70290b3296f3a93af6f442cbcb1a007f4f8784941fdfd930e389dc5a229c6ee632a
2022-03-10 11:55:00 +01:00
laanwj
60ca24a506
build: Bump to 23.0rc2
Tree-SHA512: 6432a93c0f7cca96e548b1a12958b5812621b74c05de581b94fe6a2b2f5958c42bdbc6c1bbe0ab34829d3942784fc811d270fb95b6f64b8228d4b3ec4ccc163f
2022-03-10 11:51:12 +01:00
fanquake
2bd5fdbced
Merge bitcoin/bitcoin#24514: [23.x] Second round signapple backports (M1)
1fd91da454 build, mac: Include arch in codesignature tarball (Andrew Chow)
eba46583ed guix: use latest signapple (Andrew Chow)

Pull request description:

  This backports additional signapple and macOS codesigning changes from #24506 for 23.x (skipping #24503, which is an interim signapple update, and the certvalidator change, which is not strictly necessary), and should complete the changes required to perform M1 codesigning for the 23.x release.

ACKs for top commit:
  hebasto:
    ACK 1fd91da454, I have reviewed the code and it looks OK, I agree it can be merged.

Tree-SHA512: 55b7e0680058203744dc491da060ef56a880270a01c10e475b7a171457902410806895dbe7332a323ce47c2a776337fa29eb811d2511fce84ede13aeacbe2a02
2022-03-10 09:46:49 +00:00
fanquake
430808ab13
Merge bitcoin/bitcoin#24511: [23.x] qt: Avoid crash on startup if int specified in settings.json
7e1b968f61 qt: Avoid crash on startup if int specified in settings.json (Ryan Ofsky)
4607f700d0 test: Add tests for GetArg methods / settings.json type coercion (Ryan Ofsky)

Pull request description:

  Backport of #24498

ACKs for top commit:
  jonatack:
    ACK 7e1b968f61

Tree-SHA512: efe6ec4361858e50fd524db64141ad3622ecef321b99567da9650575558a9a9bdec0fc43113967cae2f23a1375132eed2d6ebf64d4aa91ac1c5f2f591a26ba74
2022-03-10 09:44:50 +00:00
Andrew Chow
1fd91da454
build, mac: Include arch in codesignature tarball
Github-Pull: #24506
Rebased-From: 0189df1d31
2022-03-09 18:06:18 +00:00
Andrew Chow
eba46583ed
guix: use latest signapple
Github-Pull: #24506
Rebased-From: 6e9308c6d4
2022-03-09 18:06:14 +00:00
Ryan Ofsky
7e1b968f61
qt: Avoid crash on startup if int specified in settings.json
Fix GUI startup crash reported by Rspigler in
https://github.com/bitcoin/bitcoin/issues/24457 that happens if
settings.json contains an integer value for any of the configuration
options which GUI settings can currently clash with (-dbcache, -par,
-spendzeroconfchange, -signer, -upnp, -natpmp, -listen, -server, -proxy,
-proxy, -onion, -onion, -lang, and -prune).

Fix is a one-line change in ArgsManager::GetArg.

Github-Pull: bitcoin/bitcoin#24498
Rebased-From: 5b1aae12ca
2022-03-09 11:03:05 -05:00
Ryan Ofsky
4607f700d0
test: Add tests for GetArg methods / settings.json type coercion
Just add tests. No changes to application behavior. Tests will be
updated in the next commit changing & improving current behavior.

Include a Qt test for GUI startup crash reported by Rspigler in
https://github.com/bitcoin/bitcoin/issues/24457 caused by GetArg
behavior that happens if settings.json contains an integer value for any
of the configuration options which GUI settings can currently clash with
(-dbcache, -par, -spendzeroconfchange, -signer, -upnp, -natpmp, -listen,
-server, -proxy, -proxy, -onion, -onion, -lang, and -prune).

Github-Pull: bitcoin/bitcoin#24498
Rebased-From: 84b0973e35
2022-03-09 11:03:00 -05:00