Commit graph

32300 commits

Author SHA1 Message Date
MarcoFalke
fa98b6f644
rpc: Add EnsureArgsman helper 2022-01-02 10:29:11 +01:00
MarcoFalke
8b5a4de904
Merge bitcoin/bitcoin#23795: refactor: Remove implicit-integer-sign-change suppressions in validation
fadd73037e refactor: Remove implicit-integer-sign-change suppressions in validation.cpp (MarcoFalke)

Pull request description:

  A file-wide suppression is problematic because it will wave through future violations, potentially bugs.

  Fix that by using per-statement casts.

ACKs for top commit:
  shaavan:
    ACK fadd73037e
  theStack:
    Code-review ACK fadd73037e

Tree-SHA512: a8a05613be35382b92d7970f958a4e8f4332432056eaa9d72f6719495134b93aaaeea692899d9035654d0e0cf56bcd759671eeeacfd0535582c0ea048ab58a56
2022-01-02 10:24:02 +01:00
fanquake
e09773d20a
build: use a static .tiff for macOS .dmg over generating
Co-authored-by: Pavol Rusnak <pavol@rusnak.io>
2022-01-02 15:38:19 +08:00
fanquake
9d099b02d8
Merge bitcoin/bitcoin#23836: rest: Expose block filters follow-ups
4523d28b6b [test] compare filter and header with the result of the getblockfilter RPC (Niklas Gögge)
3a2464f216 [rest] drop superfluous rpc serializations flags for block filters (Niklas Gögge)
064abd14a5 [rest] add a more verbose error message for invalid header counts (Niklas Gögge)
83b8f3a896 [refactor] various style fix-ups (Niklas Gögge)

Pull request description:

  This PR addresses unresolved review comments from [#17631](https://github.com/bitcoin/bitcoin/pull/17631).
  This includes:
  * various style fix-ups
  * returning a more verbose error message for invalid header counts
  * removing superfluous rpc serializations flags for block filters
  * improving the test to include comparing the block filters returned from the rest  with the ones returned from the `getblockfilter` RPC.

ACKs for top commit:
  jnewbery:
    ACK 4523d28b6b
  brunoerg:
    tACK 4523d28b6b

Tree-SHA512: 634e6b2ae3e1d5f31675a50cfe11a5e74bf5a51b9e7b512d9e18879bf2ed424fc0ac6ec633023f192e3ad12cf0c73b0b51de79dd7ec00844dba3e1493d823b8c
2022-01-02 08:37:12 +08:00
fanquake
6535772510
Merge bitcoin/bitcoin#23882: doc: testnet3 was not reset and is doing BIP30 checks again
fa1a51cbc1 doc: testnet3 was not reset and is doing BIP30 checks again (MarcoFalke)

Pull request description:

ACKs for top commit:
  theStack:
    ACK fa1a51cbc1

Tree-SHA512: 793eccda583a3edb056b142c36a09a5c867f61d90b96e15e6643417d62eb651eb2f3429c5f245bdb062d18ab9bb05b5048c0888aa5a492cb7bb21a2f3f52324e
2022-01-02 08:14:34 +08:00
fanquake
e9ee023f6e
Merge bitcoin/bitcoin#23929: doc: fix undo data filename (s/undo???.dat/rev???.dat/)
2e42050b7f doc: fix undo data filename (s/undo???.dat/rev???.dat/) (Sebastian Falbesoner)

Pull request description:

  This typo was discovered in the course of a review club to #20827, see https://bitcoincore.reviews/20827#l-31.

ACKs for top commit:
  shaavan:
    ACK 2e42050b7f

Tree-SHA512: 0c7a00dce24c03bee6d37265d5b4bc97e976c3f3910af1113f967f6298940f892d6fb517f7b154f32ccedb365060314d4d78d5eb2a9c68b25f0859a628209cd3
2022-01-02 08:11:42 +08:00
Sebastian Falbesoner
2e42050b7f doc: fix undo data filename (s/undo???.dat/rev???.dat/) 2022-01-01 13:00:07 +01:00
w0xlt
1831d43e8f Change 'Show' icon 2021-12-31 14:13:20 -03:00
MarcoFalke
a1e04e1079
Merge bitcoin/bitcoin#23926: rpc: Quote user supplied descriptor in error msg
fa4c599145 rpc: Quote user supplied descriptor in error msg (MarcoFalke)

Pull request description:

  Follow-up to commit fa24a3df87

  Forgotten in https://github.com/bitcoin/bitcoin/pull/23755

ACKs for top commit:
  hebasto:
    ACK fa4c599145, tested locally.
  prayank23:
    tACK fa4c599145

Tree-SHA512: bff07bfe95644c94eeb1d27579bf9ffe33df5e709bf6e08cd24f9235f9348dc271ccc868724bcda63b94179bde55625b102cf0b783fad805d0055219743e8e5e
2022-01-01 02:43:27 +13:00
MarcoFalke
fa4c599145
rpc: Quote user supplied descriptor in error msg 2022-01-01 00:26:08 +13:00
MarcoFalke
623745ca74
Merge bitcoin/bitcoin#23912: Insert and bump copyright headers
1362d6173f scripted-diff: Insert missed copyright headers (Hennadii Stepanov)
f47dda2c58 scripted-diff: Bump copyright headers (Hennadii Stepanov)
c29105efdc script: Fix copyright_header.py (Hennadii Stepanov)

Pull request description:

  This PR is an alternative to #23903.

  It bumps the existing copyright headers as we did every year, and adds the missed copyright headers.

  A small fix has been applied to the `copyright_header.py` in order to prevent such weird bumping as `2021` --> `2021-2017`.

ACKs for top commit:
  MarcoFalke:
    ACK 1362d6173f

Tree-SHA512: 204d970fe8c51546b26b8f03fe4297db8a9bef5101df851540b7b9eddbd3a09677ee81fdd882c60937d732407f42c9883165bd978272200cff8f90190f075905
2021-12-31 12:08:49 +01:00
Hennadii Stepanov
1362d6173f
scripted-diff: Insert missed copyright headers
-BEGIN VERIFY SCRIPT-
./contrib/devtools/copyright_header.py insert contrib/guix/libexec/build.sh
./contrib/devtools/copyright_header.py insert contrib/guix/libexec/codesign.sh
./contrib/devtools/copyright_header.py insert contrib/tracing/log_raw_p2p_msgs.py
./contrib/devtools/copyright_header.py insert contrib/tracing/log_utxocache_flush.py
./contrib/devtools/copyright_header.py insert contrib/tracing/p2p_monitor.py
./contrib/devtools/copyright_header.py insert test/lint/lint-files.sh
-END VERIFY SCRIPT-
2021-12-30 19:46:41 +02:00
Hennadii Stepanov
f47dda2c58
scripted-diff: Bump copyright headers
-BEGIN VERIFY SCRIPT-
./contrib/devtools/copyright_header.py update ./
-END VERIFY SCRIPT-

Commits of previous years:
* 2020: fa0074e2d8
* 2019: aaaaad6ac9
2021-12-30 19:36:57 +02:00
Hennadii Stepanov
c29105efdc
script: Fix copyright_header.py
This change prevents updating copyright years from "2021" to
"2021-2017".
2021-12-30 19:33:20 +02:00
MarcoFalke
5d91133699
Merge bitcoin/bitcoin#22815: ci: Enable the gui in the tsan build
ec7b7d4a36 ci: Enable the gui in the TSan build (Hennadii Stepanov)

Pull request description:

  This PR is a reincarnation of #19162.

ACKs for top commit:
  MarcoFalke:
    review ACK ec7b7d4a36

Tree-SHA512: b68a25edce546a538f0ec6e929940ad9c4ea94c9af1cabae5475bc04dd536615a9709444c2f2994b7aaa400d2375bf628b5edefb911ed2a2bedd30138d681c1d
2021-12-30 12:23:35 +01:00
MarcoFalke
f3d6a5ce77
Merge bitcoin/bitcoin#23879: test: check ban_duration and time_remaining after setting ban
da349f131a test: check ban_duration and time_remaining after setting ban (brunoerg)

Pull request description:

  This PR adds functional test coverage for `ban_duration` and `time_remaining` introduced in #21602

ACKs for top commit:
  shaavan:
    ACK da349f131a
  theStack:
    Tested ACK da349f131a

Tree-SHA512: 51e63f3a36adb1c81e4d49426486af2cd9c8c4319f94e06a47fa7da8100a8b53c029d28d4a4771bdbf4e0a2bfb4ddd3740b9974bd08d8ff06f2a0fc2b6d8a6b5
2021-12-30 11:10:46 +01:00
Hennadii Stepanov
ec7b7d4a36
ci: Enable the gui in the TSan build 2021-12-30 10:53:19 +02:00
fanquake
de28c348a0
Merge bitcoin/bitcoin#22814: build: Add ability to build qt in depends with -stdlib=libc++
33796a964a build: Add ability to build qt in depends with -stdlib=libc++ (Hennadii Stepanov)

Pull request description:

  This PR makes possible to build the `qt` package in depends against `libc++` for x86_64 platform.

  Fixes #22344.

  Required for #22815.

  Also this PR [fixes](https://github.com/bitcoin/bitcoin/pull/23060#discussion_r716077050) the `[no wallet] [bionic]` task on CI:
  - on master (a8bbd4cc81), https://api.cirrus-ci.com/v1/task/5558609250615296/logs/ci.log:
  ```
  Options used to compile and link:
    external signer = yes
    multiprocess    = no
    with libs       = yes
    with wallet     = no
    with gui / qt   = no
  ```
  - this PR, https://api.cirrus-ci.com/v1/task/5502605561430016/logs/ci.log:
  ```
  Options used to compile and link:
    external signer = yes
    multiprocess    = no
    with libs       = yes
    with wallet     = no
    with gui / qt   = yes
  ```

ACKs for top commit:
  fanquake:
    ACK 33796a964a - While this sort of string matching is fragile, I think the risk of this causing any actual issues is low.

Tree-SHA512: 586dde2e9864cec7a49aeb4f2b77fb8c4ae96bd10b51f9c6de0cfe8512ad61db15bb7f8d1b0eb6a5a66fd2deee52ac52218f01eb6be107ac12f1a956190de54b
2021-12-30 11:36:30 +08:00
fanquake
3c40355d63
Merge bitcoin/bitcoin#23887: Include patches for Guix
1fa2e80190 Include patches for Guix (Rojar Smith)

Pull request description:

  Fix .gitignore exclude the patches at 'contrib/guix/patches/'.

ACKs for top commit:
  hebasto:
    ACK 1fa2e80190

Tree-SHA512: 41ca0db2d2ea355341ab5e66516854e6dd91767a9499006c636fff96babf824c7f302c3a6cb9db2374593fcc55b98d06f7c0d5a04f21ebe65fb1239ffdbaad2f
2021-12-30 11:10:22 +08:00
fanquake
7e0cbc8ca4
Merge bitcoin/bitcoin#20201: build: pkg-config related cleanup
c236f2e228 build: Drop redundant AC_SUBST macros (Hennadii Stepanov)
9049812106 build: Drop redundant check of PKG_CHECK_MODULES presence (Hennadii Stepanov)

Pull request description:

  This PR:
  - does not change behavior
  - drops redundant `AC_SUBST` macros

  Also checks of PKG_CHECK_MODULES presence are removed because they are redundant due to the following code ab1feadf4e/configure.ac (L16-L20)

ACKs for top commit:
  fanquake:
    ACK c236f2e228 - I see no difference in `config.log`s.

Tree-SHA512: 7ebbfc37123d693e034b8eea4aecbd9ef52b0ea5706b90bd282474e2d61ab0fedc8bca38aa3c9aa88cf2938339b7a491231b11865d39c682d60ef362082f22c5
2021-12-30 11:08:24 +08:00
Hennadii Stepanov
c236f2e228
build: Drop redundant AC_SUBST macros
Variables that are declared with AC_ARG_VAR macro are substituted via
AC_SUBST macro.
PKG_CHECK_MODULES macro already has AC_ARG_VAR(${PACKAGE}_CFLAGS) and
AC_ARG_VAR(${PACKAGE}_LIBS).
2021-12-29 23:14:45 +02:00
Hennadii Stepanov
9049812106
build: Drop redundant check of PKG_CHECK_MODULES presence 2021-12-29 23:14:14 +02:00
Sebastian Falbesoner
8bd34dc774 test: check that bitcoin-tx detects missing input amount for segwit transactions 2021-12-29 21:25:09 +01:00
Ben Woosley
c337b27d7c Require that input amount is provided for bitcoin-tx witness transactions
Co-authored-by: Sebastian Falbesoner <sebastian.falbesoner@gmail.com>
2021-12-29 21:12:12 +01:00
James O'Beirne
8904f17ea7
test: enable txindex in feature_init
Now that #23365 is merged.
2021-12-29 13:21:24 -05:00
James O'Beirne
93db6d8422
test: feature_init: retain debug.log and improve detection
This test sporadically fails due to the Python test missing log lines
for reasons that are poorly understood. The problem is made worse by the
fact that this test does not retain the log files from iteration to
iteration.

Change the test to do logline detection in a more robust manner (by
using `re.search` on the whole log content) in a way that is comparable
to the existing `assert_debug_log` utility, and retain all debug.log
content from case to case.
2021-12-29 13:04:36 -05:00
James O'Beirne
24fcf6e435
test: feature_init: tweak all .ldb files of a certain type
This part of the test sporadically fails on CI infrastructure. Instead
of perturbing a single .ldb file of each type, move all .ldb files of a
given type to ensure a bad startup.
2021-12-29 13:04:35 -05:00
James O'Beirne
a8ffbc01db
test: add TestNode.wait_for_debug_log 2021-12-29 13:04:34 -05:00
James O'Beirne
a2fb62b632
test: introduce TestNode.debug_log_bytes 2021-12-29 13:04:29 -05:00
Martin Zumsande
e880bb7836 test: Add test for updating addrman entries
This covers Connected() which updates nTime, and SetServices()
which updates nServices
2021-12-28 21:54:51 +01:00
Martin Zumsande
f02eee8c87 test: introduce utility function to retrieve an addrman 2021-12-28 21:54:51 +01:00
Martin Zumsande
f0e5efb824 test: Remove unused AddrManTest class 2021-12-28 21:54:51 +01:00
Martin Zumsande
b696d7870b test: Remove tests for internal helper functions
The logic of these functions is already covered by existing unit tests
using publicly exposed functions of the interface.
Therefore, removing them does not decrease test coverage.
2021-12-28 21:54:51 +01:00
Martin Zumsande
0538520091 test: use AddrMan instead of AddrManTest where possible
Switches to AddrMan for tests that use no features of AddrManTest.
Also removes unusued AddrManTest variables

Co-Authored-By: Amiti Uttarwar <amiti@uttarwar.org>
2021-12-28 21:54:49 +01:00
Martin Zumsande
1c65d427bb test: Inline SimConnFail function
No need for a function, since it is only used once.

Co-Authored-By: Amiti Uttarwar <amiti@uttarwar.org>
2021-12-28 19:36:22 +01:00
Amiti Uttarwar
5b7aac34f2 test: delete unused GetBucketAndEntry function 2021-12-28 17:26:24 +01:00
Amiti Uttarwar
2ba1e74e59 test: Update addrman_serialization unit test to use AddrMan's interface
By updating the test to use FindEntry, it no longer needs to reach into
AddrMan's internals (via GetBucketAndEntry) to assert expected
behaviors.
2021-12-28 17:26:24 +01:00
Amiti Uttarwar
dad5f76021 addrman: Introduce a test-only function to lookup addresses
Co-Authored-By: Martin Zumsande <mzumsande@gmail.com>
2021-12-28 17:26:24 +01:00
Rojar Smith
1fa2e80190 Include patches for Guix 2021-12-28 23:02:29 +08:00
MarcoFalke
587cbca826
Merge bitcoin/bitcoin#23873: test: use MiniWallet for p2p_compactblocks.py
d2efb66458 test: use MiniWallet for p2p_compactblocks.py (Sebastian Falbesoner)

Pull request description:

  This PR enables one more of the non-wallet functional tests (p2p_compactblocks.py) to be run even with the Bitcoin Core wallet disabled by using the MiniWallet instead, as proposed in #20078.

  The wallet RPCs calls (`getnewaddress`/`sendtoaddress`) can easily be substituted by generating/sending to the MiniWallet's internal address instead (`self.generate(self.wallet, ...)`/`self.wallet.send_self_transfer(...)`).

ACKs for top commit:
  josibake:
    ACK d2efb66458
  brunoerg:
    tACK d2efb66458

Tree-SHA512: 25340d95199ffd1fa734231c22b7710aad1ed4cda78c8c533c19cea90dc4eab65832f043d20e4fc5c0869692b1f300ad79af4e7fd3c4af8f2578ac9ccbbc9aeb
2021-12-28 13:39:05 +01:00
fanquake
1292334bf5
Merge bitcoin/bitcoin#23878: doc: Remove TODO comment in tx_verify
fa50d8b66e doc: Remove TODO comment in tx_verify (MarcoFalke)

Pull request description:

  The comment has no clear motivation, so it seems better to remove it and fix it when there is a reason.

  An alternative (if a fix isn't possible when there is a clear motivation) would be to create an issue thread for easier discussion.

ACKs for top commit:
  fanquake:
    ACK fa50d8b66e

Tree-SHA512: e9c25bab46a73b7c2db288c62ed9838a5e794b3b72db494173f4502da60b58dec4383064964c0842932cd30e4251fc01ad0c28681e2ef6cb442482eea2bad595
2021-12-28 20:31:46 +08:00
fanquake
5d2344885b
Merge bitcoin/bitcoin#23840: doc: Fix -changetype help text
fa993d0e7e doc: Fix -changetype help text (MarcoFalke)

Pull request description:

  This was forgotten in commit 3ac38058ce

ACKs for top commit:
  shaavan:
    ACK fa993d0e7e
  w0xlt:
    ACK fa993d0
  josibake:
    ACK fa993d0e7e

Tree-SHA512: 9f84b1168e3b3ab06e5c1f4915a1874598b273099eb5878ed28c3a66f1484e34c836fd3c68c4131bee541f3428052f6b66e02b192170752d1082de689d44cd4d
2021-12-28 20:23:31 +08:00
fanquake
bb655a6aac
Merge bitcoin/bitcoin#23883: doc: Remove fixed TODO from wallet/feebumper
fa562fdd5e doc: Remove fixed TODO from wallet/feebumper (MarcoFalke)

Pull request description:

  Fixed in commit 9522b53a91

ACKs for top commit:
  shaavan:
    ACK fa562fdd5e

Tree-SHA512: 968fda0994020c369b7acfc01db109d0f50d4c137fadf533ae55d0e14a353ebbde4320e798cf89e5489f1020c459712631b3967976c1f73d99db8a2d1cbad982
2021-12-28 20:22:38 +08:00
fanquake
45249e70d9
Merge bitcoin/bitcoin#23881: doc: Remove TODO from block fuzz test
fa5d0b6ecd doc: Remove TODO from block fuzz test (MarcoFalke)

Pull request description:

  I don't see a reason to fix the TODO, as all call sites assume at least one tx in `vtx`. So remove it.

ACKs for top commit:
  fanquake:
    ACK fa5d0b6ecd

Tree-SHA512: 8fe03a5bdebf4d6dad00f410a1dc6449c485a4d61afb79ebcaa221489cde2a465fea981742fde130238ebed6d2f1f032aa4976726ee07b23fe7fb745b2728d46
2021-12-28 20:21:38 +08:00
MarcoFalke
fa8e01a5b8
doc: Remove outdated scriptChange TODO comment 2021-12-27 19:35:22 +01:00
MarcoFalke
fa562fdd5e
doc: Remove fixed TODO from wallet/feebumper
Fixed in commit 9522b53a91
2021-12-27 19:26:33 +01:00
MarcoFalke
fa1a51cbc1
doc: testnet3 was not reset and is doing BIP30 checks again 2021-12-27 18:56:54 +01:00
MarcoFalke
fa5d0b6ecd
doc: Remove TODO from block fuzz test 2021-12-27 18:40:01 +01:00
MarcoFalke
fa50d8b66e
doc: Remove TODO comment in tx_verify 2021-12-27 16:47:24 +01:00
brunoerg
da349f131a test: check ban_duration and time_remaining after setting ban 2021-12-27 11:39:07 -03:00