Commit graph

354 commits

Author SHA1 Message Date
Byron Hambly
1006327a13 Merge 9eaef10801 into merged_master (Bitcoin PR bitcoin/bitcoin#25707) 2024-11-04 11:26:40 +02:00
Byron Hambly
a1f37eeae6 Merge e09ad284c7 into merged_master (Bitcoin PR bitcoin/bitcoin#24675) 2024-10-25 11:37:05 +02:00
Byron Hambly
068f46b4f5 Merge 5c82ca3365 into merged_master (Bitcoin PR bitcoin/bitcoin#25493) 2024-10-17 18:03:37 +02:00
James Dorfman
1e24510c7e Merge b91055ea55 into merged_master (Bitcoin PR bitcoin/bitcoin#25251) 2024-09-10 18:10:02 +00:00
James Dorfman
7ec702f8f0 Merge 44037a2912 into merged_master (Bitcoin PR bitcoin/bitcoin#25176) 2024-09-06 05:45:13 +00:00
James Dorfman
e940df7e48 Merge 6407c0e8a3 into merged_master (Bitcoin PR bitcoin/bitcoin#25101) 2024-08-13 06:33:14 +00:00
James Dorfman
06a6044137 Merge 0de36941ec into merged_master (Bitcoin PR bitcoin/bitcoin#25153) 2024-08-13 06:00:38 +00:00
James Dorfman
31df518140 Merge 7b3343f300 into merged_master (Bitcoin PR bitcoin/bitcoin#25108) 2024-08-13 04:20:55 +00:00
James Dorfman
0027999db1 Merge 002411dc53 into merged_master (Bitcoin PR bitcoin/bitcoin#25157) 2024-08-13 04:12:31 +00:00
James Dorfman
cac4a07224 Merge dd9f61a184 into merged_master (Bitcoin PR bitcoin/bitcoin#25102) 2024-08-09 21:19:15 +00:00
James Dorfman
1fda45d8e8 Merge 3bbc46ddaf into merged_master (Bitcoin PR bitcoin/bitcoin#24632) 2024-07-30 05:26:33 +00:00
James Dorfman
5499524906 Merge d906329c28 into merged_master (Bitcoin PR bitcoin/bitcoin#24681) 2024-07-29 19:05:12 +00:00
Byron Hambly
51fbed170b Merge 3c565302aa into merged_master (Bitcoin PR bitcoin/bitcoin#24409) 2023-07-02 13:45:31 +00:00
Byron Hambly
d8cfd68e37 Merge 48a90c61e2 into merged_master (Bitcoin PR bitcoin/bitcoin#24370) 2023-07-02 06:36:21 +00:00
Byron Hambly
545d29ca21 Merge 85ae549a46 into merged_master (Bitcoin PR bitcoin/bitcoin#24137) 2023-07-02 05:40:27 +00:00
Byron Hambly
d66042de13 Merge 66636ca438 into merged_master (Bitcoin PR bitcoin/bitcoin#24360) 2023-07-01 06:06:18 +00:00
Byron Hambly
47626b5a64 Merge 623745ca74 into merged_master (Bitcoin PR bitcoin/bitcoin#23912) 2023-06-14 15:44:11 +00:00
Byron Hambly
acd5824106 Merge caf8b26b52 into merged_master (Bitcoin PR bitcoin/bitcoin#23175) 2023-05-26 09:24:30 +00:00
Byron Hambly
0486fef47e Merge 3fc3641043 into merged_master (Bitcoin PR bitcoin/bitcoin#22766) 2023-05-16 13:26:27 +00:00
Byron Hambly
177c708c84 Merge ee1294f155 into merged_master (Bitcoin PR bitcoin/bitcoin#23324) 2023-05-14 09:41:42 +00:00
Byron Hambly
2b8eef42dd Merge 1884ce2f4c into merged_master (Bitcoin PR bitcoin/bitcoin#22937) 2023-05-11 12:38:50 +00:00
Byron Hambly
eea9829aa6 Merge 825f4a64e6 into merged_master (Bitcoin PR bitcoin/bitcoin#22976) 2023-04-24 11:40:49 +00:00
James Dorfman
0508c357e9 Merge d809d8bf12 into merged_master (Bitcoin PR bitcoin/bitcoin#22959) 2023-04-21 18:56:41 +00:00
Byron Hambly
d5914ae484 Merge 0de84b7328 into merged_master (Bitcoin PR bitcoin/bitcoin#22544) 2023-04-21 12:12:15 +00:00
James Dorfman
62c3446ccb Merge 1d0c57a05c into merged_master (Bitcoin PR bitcoin/bitcoin#22914) 2023-04-21 05:15:56 +00:00
James Dorfman
24ea38c570 Merge 4bd56bc291 into merged_master (Bitcoin PR bitcoin/bitcoin#22894) 2023-04-20 21:12:16 +00:00
Byron Hambly
d0a717ca58 Merge a70768d159 into merged_master (Bitcoin PR bitcoin/bitcoin#22501) 2023-04-13 12:26:40 +00:00
Byron Hambly
e2ccc3a707 Merge cea38b491f into merged_master (Bitcoin PR bitcoin/bitcoin#22183) 2023-04-11 06:15:07 +00:00
Byron Hambly
e43446ce3d Merge ce0913148b into merged_master (Bitcoin PR bitcoin/bitcoin#22547) 2023-04-09 05:27:10 +00:00
Glenn Willen
72a0ba0291 Merge cac38cdd02 into merged_master (Bitcoin PR bitcoin/bitcoin#21832) 2023-03-21 03:59:44 +00:00
MacroFake
9eaef10801
Merge bitcoin/bitcoin#25707: refactor: Make const references to avoid unnecessarily copying objects and enable two clang-tidy checks
ae7ae36d31 tidy: Enable two clang-tidy checks (Aurèle Oulès)
081b0e53e3 refactor: Make const refs vars where applicable (Aurèle Oulès)

Pull request description:

  I added const references to some variables to avoid unnecessarily copying objects.

  Also added two clang-tidy checks : [performance-for-range-copy](https://releases.llvm.org/11.1.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-for-range-copy.html) and [performance-unnecessary-copy-initialization](https://releases.llvm.org/12.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-unnecessary-copy-initialization.html).

ACKs for top commit:
  vasild:
    ACK ae7ae36d31
  MarcoFalke:
    review ACK ae7ae36d31

Tree-SHA512: f6ac6b0cd0eee1e0c34d2f186484bc0f7ec6071451cccb33fa88a67d93d92b304e2fac378b88f087e94657745bca4e966dbc443759587400eb01b1f3061fde8c
2022-08-19 17:11:06 +02:00
fanquake
e09ad284c7
Merge bitcoin/bitcoin#24675: util: Use ArgsManager::GetPathArg more widely
b01f336708 util, refactor: Drop explicit conversion to fs::path (Hennadii Stepanov)
138c668e2b util, refactor: Use GetPathArg to read "-rpccookiefile" value (Hennadii Stepanov)
1276090705 util, refactor: Use GetPathArg to read "-conf" value (Hennadii Stepanov)

Pull request description:

  This PR is a continuation of bitcoin/bitcoin#24265 and bitcoin/bitcoin#24306.

  Now the following command-line arguments / configure options been read with the `GetPathArg` method:
  - `-conf`, also `includeconf` values been normalized
  - `-rpccookiefile`

ACKs for top commit:
  jarolrod:
    Code Review ACK b01f336708
  ryanofsky:
    Code review ACK b01f336708. Changes since last review: just dropping first commit (NormalizedPathFromString) as suggested

Tree-SHA512: 2d26d50b73542acdbcc63a32068977b2a49a017d31ca337471a0446f964eb0a6e3e4e3bb1ebe6771566a260f2cae3bc2ebe93b4b523183cea0d51768daab85c9
2022-08-04 16:58:01 +01:00
Aurèle Oulès
081b0e53e3 refactor: Make const refs vars where applicable
This avoids initializing variables with the copy-constructor of a
non-trivially copyable type.
2022-07-27 13:27:57 +02:00
fanquake
cc7b2fdd70
refactor: move compat.h into compat/ 2022-07-20 10:34:46 +01:00
fanquake
fbae8c59a2
compat: Consolidate mingw-w64 ASLR workaround for upstream libsecp changes
Achieve this by adding a MAIN_FUNCTION macro, consolidating the docs, and
introducing the macro across our distributed binaries.

Also update the docs to explain that anyone using binutils < 2.36 is
effected by this issue. Release builds are not, because they use binutils
2.37. Currently LTS Linux distros, like Ubuntu Focal, ship with 2.34.

https://packages.ubuntu.com/focal/binutils
2022-06-11 14:55:13 +01:00
Jon Atack
a17c5e96b6 Rename NetinfoRequestHandler::is_block_relay data member to is_tx_relay
and inverse its logic.

The naming is out of date and incorrect, as lack of request of tx relay does not
imply block relay, and a preference for tx relay doesn't imply that block relay
isn't happening.
2022-05-20 16:06:07 +02:00
Jon Atack
f0bb7db34c Fix frequent -netinfo JSON errors from null getpeerinfo#relaytxes
"error: JSON value is not a boolean as expected"

due to fRelayTxes/m_relay_txs being moved in PR 21160 from CNodeStats to
CNodeStateStats, which made getpeerinfo#relaytxes an optional field that
can return UniValue IsNull().
2022-05-20 14:33:12 +02:00
fanquake
6407c0e8a3
Merge bitcoin/bitcoin#25101: Add mockable clock type
fa305fd92c Add mockable clock type and TicksSinceEpoch helper (MarcoFalke)

Pull request description:

  This will be used primarily by the addr time refactor (https://github.com/bitcoin/bitcoin/pull/24697) to make addr relay time type safe. However, it can also be used in other places, and can be reviewed independently, so I split it up.

ACKs for top commit:
  jonatack:
    ACK fa305fd92c per `git range-diff 7b3343f fa20781 fa305fd`
  ajtowns:
    ACK fa305fd92c

Tree-SHA512: da00200126833c1f55b1b1e68f596eab5c9254e82b188ad17779c08ffd685e198a7c5270791b4b69a858dc6ba4e051fe0c8b445d203d356d0c884f6365ee1cfe
2022-05-20 07:48:07 +01:00
fanquake
0de36941ec
Merge bitcoin/bitcoin#25153: scripted-diff: Use getInt<T> over get_int/get_int64
fa9af21878 scripted-diff: Use getInt<T> over get_int/get_int64 (MacroFake)

Pull request description:

  Seems better to see the return type directly and be able to modify it easier, as the return type is used for exceptions (in-range checking and parsing feedback).

ACKs for top commit:
  fanquake:
    ACK fa9af21878

Tree-SHA512: 284aa2527d0f663ca01550115025c9c64c787531d595f866c718f6ad09b9b0cac1e683a7d77f8009b75de990fd37166b44063ffa83fba8a04e9a31600b4c2725
2022-05-19 16:32:56 +01:00
MacroFake
7b3343f300
Merge bitcoin/bitcoin#25108: tidy: add modernize-use-default-member-init
ac6fbf2c83 tidy: use modernize-use-default-member-init (fanquake)
7aa40f5563 refactor: use C++11 default initializers (fanquake)

Pull request description:

  Refactor and then enable [`modernize-use-default-member-init`](https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-default-member-init.html) in our `clang-tidy` job.

Top commit has no ACKs.

Tree-SHA512: 536b406f20639f8c588fe9e96175ec60c7bb825506b2670b562370b2f572801c24203c483443be3c199e1b958c0765d4532e57c57a4e78689162a1dd422d844f
2022-05-18 19:19:55 +02:00
MacroFake
fa9af21878
scripted-diff: Use getInt<T> over get_int/get_int64
-BEGIN VERIFY SCRIPT-
 sed -i 's|\<get_int64\>|getInt<int64_t>|g' $(git grep -l get_int ':(exclude)src/univalue')
 sed -i 's|\<get_int\>|getInt<int>|g'       $(git grep -l get_int ':(exclude)src/univalue')
-END VERIFY SCRIPT-
2022-05-18 19:15:03 +02:00
MarcoFalke
fa305fd92c
Add mockable clock type and TicksSinceEpoch helper 2022-05-18 18:58:05 +02:00
fanquake
7aa40f5563
refactor: use C++11 default initializers 2022-05-17 17:18:58 +01:00
Jon Atack
3a998d2e37 Use steady_clock in ConnectAndCallRPC and inline time call in loop conditional
to avoid unnecessary invocations and an unneeded local variable allocation.
2022-05-17 16:56:50 +02:00
Jon Atack
3799d2dcdd Fix -rpcwait with -netinfo printing negative time durations
Fixes negative time duration values in the "send", "recv",
and "age" columns (potentially the "txn" and "blk" columns also)
for the first run of -rpcwait -netinfo after bitcoind startup.

To reproduce, start bitcoind on mainnet and run
`bitcoin-cli -rpcwait -netinfo <n>` where n is 1 or larger.

The negative times will be larger/more apparent with a slower
CPU speed or e.g. higher checkblocks/checklevel config option
settings.
2022-05-17 16:18:22 +02:00
MacroFake
fab9e8a29c
Remove unused GetTimeSeconds 2022-05-11 16:39:23 +02:00
Hennadii Stepanov
1276090705
util, refactor: Use GetPathArg to read "-conf" value
Also "includeconf" values been normalized.
2022-04-21 12:55:31 +02:00
laanwj
3bbc46ddaf
Merge bitcoin/bitcoin#24632: add (none) in -getinfo Warnings: if no warning returned
0cea7b10f1 print `(none)` if no warnings in -getinfo (/dev/fd0)

Pull request description:

  Adds `(none)` in warnings when no warnings returned by -getinfo

  Reviewers can test this by making the following change in `/src/warnings.cpp`:

  ```diff
  bilingual_str GetWarnings(bool verbose)
  {
      bilingual_str warnings_concise;
      std::vector<bilingual_str> warnings_verbose;

      LOCK(g_warnings_mutex);

      // Pre-release build warning
      if (!CLIENT_VERSION_IS_RELEASE) {
  -        warnings_concise = _("This is a pre-release test build - use at your own risk - do not use for mining or merchant applications");;
  +        warnings_concise = _("");;
  ```

  Before this pull request:

  ```
  $ bitcoin-cli -getinfo
  Chain: regtest
  Blocks: 0
  Headers: 0
  Verification progress: 100.0000%
  Difficulty: 4.656542373906925e-10

  Network: in 0, out 0, total 0
  Version: 239900
  Time offset (s): 0
  Proxies: n/a
  Min tx relay fee rate (BTC/kvB): 0.00001000

  Warnings:
  ```

  After this pull request:

  ```diff
  $ bitcoin-cli -getinfo
  Chain: regtest
  Blocks: 0
  Headers: 0
  Verification progress: 100.0000%
  Difficulty: 4.656542373906925e-10

  Network: in 0, out 0, total 0
  Version: 239900
  Time offset (s): 0
  Proxies: n/a
  Min tx relay fee rate (BTC/kvB): 0.00001000

  Warnings: (none)
  ```

ACKs for top commit:
  jonatack:
    ACK 0cea7b10f1
  laanwj:
    Tested ACK 0cea7b10f1

Tree-SHA512: a12499d11ff84bc954db354f968eb1f5ee4999d8b80581fe0bdf604732b2e2f608cb5c35c4ca8cb5a430f3991954a6207f0758302618662e6b9505044cf2dc95
2022-04-13 21:49:22 +02:00
/dev/fd0
0cea7b10f1 print (none) if no warnings in -getinfo 2022-04-08 20:33:07 +05:30
fanquake
0598f36852
refactor: account for requiring libevent 2.1.8+ 2022-03-30 14:00:12 +02:00