Commit Graph

25120 Commits

Author SHA1 Message Date
pasta
19512988c6
Merge #5969: chore: backport items to 20.1.x and release v20.1.1
b96b20283d chore: bump version to 20.1.1 (pasta)
83cac77335 docs: add v20.1.1 release notes (pasta)
e58c7c443c Merge #5970: guix: exclude debug symbols for apple from list of hashes due to its non-determinism (pasta)
2bde1ddca4 Merge #5927: fix: check if message can be handled before attempting to deserialize (pasta)
1637fa5a9e Merge #5968: docs: add v20.0.4 release notes (pasta)
fd46c4ccda Merge #5962: fix: deadlock over cs_main and contributionsCacheCs in dkssessionmgr (pasta)

Pull request description:

  ## Issue being fixed or feature implemented
  Backport to v20.1.x and release v20.1.1

  ## What was done?
  Backports and release

  ## How Has This Been Tested?

  ## Breaking Changes
  None

  ## Checklist:
    _Go over all the following points, and put an `x` in all the boxes that apply._
  - [ ] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

Top commit has no ACKs.

Tree-SHA512: 40574df3349bf1c653a50b4efbf78d1654eb048eeeb483eb657eec5f2af102f95cff8f978a98c174925d2672d56426238a1b7ec3e8cd2a53ec28c0fca42c1293
2024-04-03 13:31:31 -05:00
pasta
b96b20283d
chore: bump version to 20.1.1 2024-04-03 13:12:29 -05:00
pasta
83cac77335
docs: add v20.1.1 release notes
Co-authored-by: UdjinM6 <UdjinM6@users.noreply.github.com>
Co-authored-by: thephez <thephez@users.noreply.github.com>
2024-04-03 13:12:29 -05:00
pasta
e58c7c443c
Merge #5970: guix: exclude debug symbols for apple from list of hashes due to its non-determinism
a29f82670b guix: exclude debug symbols for apple from list of hash sums due to its undeterminism (Konstantin Akimov)

Pull request description:

  ## Issue being fixed or feature implemented
  Debug symbols for apples are non-deterministic. Due to that all list of hash sums differ between build.
  It causes to impossible to merge all GPG signatures to one file *.asc, because different files are signed.
  For example these hash lists: https://github.com/dashpay/guix.sigs/blob/master/20.1.0/knst/all.SHA256SUMS#L6 and https://github.com/dashpay/guix.sigs/blob/master/20.1.0/thephez/all.SHA256SUMS#L6
  are different:
  ```
  ac87fd17eb19edcaa83b2cbf02e6d74ec12b1eaab50fc73789413bb04f1e04b5  dashcore-20.1.0-arm64-apple-darwin-debug.tar.gz
  e16eaa02e24cdf643b58831c96bf1494c02602651e977994c8317f752b4c3ae3  dashcore-20.1.0-arm64-apple-darwin-debug.tar.gz
  ```

  ## What was done?
  It excludes the line with hash of apples's debug artefact from the final list.

  ## How Has This Been Tested?
  Run guix build and guix attest locally for 2 targets. There's output:
  ```
  $ cat ~/projects/guix.sigs/20.1.0-317-ga29f82670b96/knst/noncodesigned.SHA256SUMS
  f20cee2e348a850d39f79a6f06ce8019aca577bf5da0e81a3eb1d06013c0d3d9  dashcore-20.1.0-317-ga29f82670b96.tar.gz
  e01c18b817793a7d71173c9b2d84b32d7bdc27e67fbd2ac35ad85457bed5b5c3  dashcore-20.1.0-317-ga29f82670b96-x86_64-apple-darwin-unsigned.dmg
  0987f99859a4a7c5c1676a754f022f97dfe1dd8fdd8a35170e3144f43d317270  dashcore-20.1.0-317-ga29f82670b96-x86_64-apple-darwin-unsigned.tar.gz
  2afdffd9e5b959dd1f54baadf2e8c7159147050ea032074b6d606945621e9a28  dashcore-20.1.0-317-ga29f82670b96-x86_64-apple-darwin.tar.gz
  2f3af85fddb12cb6ff6f9c370b9bbb7b4893ed90748cefbb55fc4ce4d22cb3e9  dashcore-20.1.0-317-ga29f82670b96-x86_64-linux-gnu-debug.tar.gz
  19daa1c8310d3097bf25713a551f2bcd59eccfa882b3b413db36591d6ec7c204  dashcore-20.1.0-317-ga29f82670b96-x86_64-linux-gnu.tar.gz
  ```
  linux's debug is still here, apple's debug is not here as expected

  ## Breaking Changes
  N/A

  ## Checklist:
  - [x] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone

ACKs for top commit:
  PastaPastaPasta:
    utACK a29f826

Tree-SHA512: d3b85ffea440b1b1d13b19373a9928e2881120747363844d4a9293d19afd986b98f096f3cdeee46acc93ca213200be44cadd867c3c77b9be55b7b81ecfcc156d
2024-04-03 13:04:39 -05:00
pasta
2bde1ddca4
Merge #5927: fix: check if message can be handled before attempting to deserialize
afbae06520 fix: check if message can be handled before attempting to deserialize (thephez)

Pull request description:

  ## Issue being fixed or feature implemented
  Currently `message-capture-parser.py` crashes when encountering certain messages (e.g. mnauth). This at least makes it possible to run the script without crashing. There may be better options for solving this.

  ## What was done?
  Check if the dictionary is going to return `None` before we attempt to do something further with it. Hide whitespace changes to see the few lines that were added: https://github.com/dashpay/dash/pull/5927/files?diff=unified&w=1

  ## How Has This Been Tested?
  Running script locally

  ## Breaking Changes
  N/A

  ## Checklist:
    _Go over all the following points, and put an `x` in all the boxes that apply._
  - [x] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [ ] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

Top commit has no ACKs.

Tree-SHA512: 041af57afcfd1d93487fd41d34a50e3a99f7fa129563dfe1e1cf2498974c8e658bd6acb9c810887c841160074056ba999e9b6607ac9336b98b9d42806682c607
2024-04-03 11:21:15 -05:00
pasta
1637fa5a9e
Merge #5968: docs: add v20.0.4 release notes
7f57516d04 docs: add v20.0.4 release notes (pasta)

Pull request description:

  ## Issue being fixed or feature implemented
  We didn't archive v20.0.4 release notes somehow in #5910

  ## What was done?
  Archive 20.0.4 release notes

  ## How Has This Been Tested?

  ## Breaking Changes
  None

  ## Checklist:
    _Go over all the following points, and put an `x` in all the boxes that apply._
  - [ ] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

Top commit has no ACKs.

Tree-SHA512: d703dedf1aad2afb5eb8af291f89e38fa2dfb4185ef9e25194c273bb9f04ae8075ea87318552b468b1a487b39b95cf1dee794d3d3c5b8a863dbfd6d458ee8e72
2024-04-03 11:15:17 -05:00
pasta
fd46c4ccda
Merge #5962: fix: deadlock over cs_main and contributionsCacheCs in dkssessionmgr
ded1b5a3df fix: deadlock over cs_main and contributionsCacheCs in dkssessionmgr (Konstantin Akimov)

Pull request description:

  ## Issue being fixed or feature implemented
  **It fixes rpc failure: "Work queue depth exceeded"**

  As I checked on running `dashd` in deadlock condition:
  Thread 78 is a thread that keep `cs_main`:
  ```
  #14 0x0000aaaad1f8d604 in BuildSimplifiedMNListDiff () at evo/simplifiedmns.cpp:364
  ```
  but it is locked by `contributionsCacheCs`
  ```
  #8  llmq::CDKGSessionManager::GetVerifiedContributions () at llmq/dkgsessionmgr.cpp:392
  ```

  On other hand, `contributionsCacheCs` is blocked by Thread 59
  ```
  #17 0x0000aaaad1ba1940 in llmq::CDKGSessionManager::GetVerifiedContributions () at llmq/dkgsessionmgr.cpp:393
  ```
  and it makes circuit lock by waiting `cs_main` in
  ```
  #9  ReadBlockFromDisk () at node/blockstorage.cpp:75
  ```

  See https://github.com/dashpay/dash-issues/issues/69 for more details

  Seems introduced there: dashpay/dash#3911

  ## What was done?
  Deadlock is removed by reducing scope of mutex

  ## How Has This Been Tested?
  I reviewed 2 different servers which have status `work queue exceeded`, both have same deadlock, so, this patch should fix this issue. Once this fix is merged, we can test it on testnet.

  ## Breaking Changes
  N/A

  ## Checklist:
  - [x] I have performed a self-review of my own code
  - [x] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone

Top commit has no ACKs.

Tree-SHA512: 4fe5c03c464ee6934fb927b897f007b65a8995723196edaffdae067edee7067da151130d4c4bac47d3418fdad5c8e130682f42d7ef9c044380a8c8fff78ee008
2024-04-03 10:55:46 -05:00
pasta
ab7bc12e81
Merge #5921: chore: set IS_RELEASE to true
0737d7e8db chore: set IS_RELEASE to true (pasta)

Pull request description:

  ## Issue being fixed or feature implemented
  Release v20.1.0 final

  ## What was done?

  ## How Has This Been Tested?

  ## Breaking Changes

  ## Checklist:
    _Go over all the following points, and put an `x` in all the boxes that apply._
  - [ ] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

Top commit has no ACKs.

Tree-SHA512: a83e8fea96d3d9106984be7f1a235116d99a98dc7a2fb436c58690731dbb2221ba691081ff2afd7d99f444baa02ff147e0d5a467c3213e33cf0f173db2b96e53
2024-03-04 15:39:21 -06:00
pasta
0737d7e8db
chore: set IS_RELEASE to true 2024-03-04 15:20:41 -06:00
pasta
032c8fa395
Merge #5910: docs: add release notes for 20.1.0
a4edab66a3 docs: add release notes for 20.1.0 (pasta)

Pull request description:

  ## Issue being fixed or feature implemented
  Added release notes for 20.1.0

  ## What was done?
  Wrote release notes from WIP release-notes; trimmed some fat from release notes

  ## How Has This Been Tested?
  Ran linters

  ## Breaking Changes
  None; docs only

  ## Checklist:
    _Go over all the following points, and put an `x` in all the boxes that apply._
  - [ ] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

Top commit has no ACKs.

Tree-SHA512: 47efb01e839f9357f6af372806350ac3cc3f6f18a7437afa670306050cb93c4a5ce7fd91256ae39c3febaabb9b078824e75d85792da37c063e74f8e13f0e465c
2024-03-04 15:16:20 -06:00
pasta
a4edab66a3
docs: add release notes for 20.1.0
Co-authored-by: thephez <thephez@users.noreply.github.com>
Co-authored-by: Konstantin Akimov <knstqq@gmail.com>
Co-authored-by: UdjinM6 <UdjinM6@users.noreply.github.com>
2024-03-04 15:15:38 -06:00
pasta
149f72e651
Merge #5920: docs: update manpages for 20.1
e746c698fb docs: update manpages for 20.1 (UdjinM6)

Pull request description:

  ## Issue being fixed or feature implemented
  update man pages

  ## What was done?
  run `./contrib/devtools/gen-manpages.sh`, skip local-dependent changes

  ## How Has This Been Tested?

  ## Breaking Changes
  n/a

  ## Checklist:
  - [x] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

Top commit has no ACKs.

Tree-SHA512: 22bcd824fa391d044a9924c9135aca9ed346312cfcba7f74fda5e9ae1b5d5e33e405ba51a4ab2024f3b110d3bd303e4368a567ef6069eb2fc74e32adef81380f
2024-03-04 09:58:51 -06:00
UdjinM6
e746c698fb
docs: update manpages for 20.1
run `./contrib/devtools/gen-manpages.sh`, skip local-dependent changes
2024-03-04 18:44:18 +03:00
pasta
39c1778add
Merge #5918: refactor: actually move out of previousQuarters.quarterHMinus*C and nquorumMembers
a701a8d5c9 refactor: actually move out of previousQuarters.quarterHMinus*C and newQuarterMembers into quorumMembers (pasta)

Pull request description:

  ## Issue being fixed or feature implemented
  we use std::move; but it doesn't actually move

  ## What was done?
  refactor in order to actually move

  ## How Has This Been Tested?
  Waiting for CI / tests; built locally + unit tests

  ## Breaking Changes
  Should be none

  ## Checklist:
    _Go over all the following points, and put an `x` in all the boxes that apply._
  - [ ] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [ ] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

Top commit has no ACKs.

Tree-SHA512: ff2065724aaa1f1c5b29bd56dc005fd95f8c28ea813af10de20ae1c07810e2e73f72d676fa5b1c353db32ee499b8351035c0a252a16bd6f182da1c1d5479bea9
2024-03-04 09:02:59 -06:00
pasta
a701a8d5c9
refactor: actually move out of previousQuarters.quarterHMinus*C and newQuarterMembers into quorumMembers 2024-03-04 09:02:03 -06:00
pasta
a59c91c6dc
Merge #5912: chore: Translations 2024-03
9c92392ef3 ci: exclude translation files from clang-diff analysis (UdjinM6)
65f55b8aa5 99%+: it (UdjinM6)
9b441132fc 80%+: bg (UdjinM6)
19ecd79c2e 88%+: ar, de, es, fi, fr, ja, ko, nl, pt, sk, tr, zh_TW (UdjinM6)
d541448eee 90%+: it, pl, th, zh_CN (UdjinM6)
cfc4aa8470 100%: ru (UdjinM6)
26a377da5c chore: update `dashstrings.cpp` and `dash_en.ts`/`dash_en.xlf` (UdjinM6)

Pull request description:

  ## Issue being fixed or feature implemented
  Update strings and translations. Also added d3dc0e5386 to skip clang-diff for auto-generated `src/qt/dashstrings.cpp` and translation files in `src/qt/locale/`.

  ## What was done?

  ## How Has This Been Tested?

  ## Breaking Changes
  n/a

  ## Checklist:
  - [x] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

Top commit has no ACKs.

Tree-SHA512: fe99b4cc9ac1c88eb29a72a6b9c90c5e99a86d2996b1e1747a1b6bf4ba7ffd6b62ceb11c8b01be3e2c872bbb18d8343e7b4bd9cde4caa3256316e8190bc8353f
2024-03-04 08:55:19 -06:00
UdjinM6
9c92392ef3
ci: exclude translation files from clang-diff analysis 2024-03-04 08:54:53 -06:00
UdjinM6
65f55b8aa5
99%+: it 2024-03-04 08:54:52 -06:00
UdjinM6
9b441132fc
80%+: bg 2024-03-04 08:54:52 -06:00
UdjinM6
19ecd79c2e
88%+: ar, de, es, fi, fr, ja, ko, nl, pt, sk, tr, zh_TW 2024-03-04 08:54:52 -06:00
UdjinM6
d541448eee
90%+: it, pl, th, zh_CN 2024-03-04 08:54:51 -06:00
UdjinM6
cfc4aa8470
100%: ru 2024-03-04 08:54:51 -06:00
UdjinM6
26a377da5c
chore: update dashstrings.cpp and dash_en.ts/dash_en.xlf 2024-03-04 08:54:49 -06:00
pasta
1ec3802901
Merge #5915: docs: fix transifex link for Dash Core
df59a8dd04 docs: fix transifex link for Dash Core (Konstantin Akimov)

Pull request description:

  ## Issue being fixed or feature implemented
  Current link to transifex is dead: https://www.transifex.com/projects/p/dash/

  ## What was done?
  Link to transifex is updated to https://explore.transifex.com/dash/dash/

  ## How Has This Been Tested?
  Click and see what is open in browser.

  ## Breaking Changes
  N/A

  ## Checklist:
  - [x] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone

Top commit has no ACKs.

Tree-SHA512: 24f095493c63de72b8bcaa4952b8a00518c3427d80e004100244ce57c016c6528863ce83febbe68edce817b72160ac5bdcc0f984a4ea769cab9ffa20b87f87a5
2024-03-04 08:49:32 -06:00
Konstantin Akimov
df59a8dd04
docs: fix transifex link for Dash Core 2024-03-04 08:48:34 -06:00
pasta
499651045e
Merge #5881: backport: Merge bitcoin#20047, 20692, 20737, 20210, 21003, 22086, 22203, 21357, 22311, 20677
fdfe72bb75 Merge #20677: doc: Remove shouty enums in net_processing comments (Wladimir J. van der Laan)
27efa9918f Merge bitcoin/bitcoin#22311: test: Add missing syncwithvalidationinterfacequeue in p2p_blockfilters (MarcoFalke)
65045a0c9d Merge #21357: test: Unconditionally check for fRelay field in test framework (MarcoFalke)
fbd2722bb2 Merge bitcoin/bitcoin#22203: test: Use ConnmanTestMsg from test lib in denialofservice_tests (fanquake)
ec8e45b851 Merge bitcoin/bitcoin#22086: test: remove BasicTestingSetup from unit tests that don't need it (W. J. van der Laan)
27938659e3 Merge #21003: test: Move MakeNoLogFileContext to libtest_util, and use it in bench (fanquake)
5107598bf9 Merge #20210: net: assert CNode::m_inbound_onion is inbound in ctor, add getter, unit tests (MarcoFalke)
0b109bed58 Merge #20737: test: Add missing assignment in mempool_resurrect.py (MarcoFalke)
0193d482a6 Merge #20692: test: run mempool_resurrect.py even with wallet disabled (MarcoFalke)
39f08af18a Merge #20047: test: use wait_for_{block,header} helpers in p2p_fingerprint.py (Wladimir J. van der Laan)

Pull request description:

  bitcoin backport

Top commit has no ACKs.

Tree-SHA512: 9ba5e12170a5f92eefcea7a646a92a4f844b2d134ccc23060235ee8f0debb81280dd39cecec0d21f9d081376b88e6e1c0a15159ac5ac19ff4f4c99d4cd53271d
2024-03-04 00:27:16 -06:00
Wladimir J. van der Laan
fdfe72bb75
Merge #20677: doc: Remove shouty enums in net_processing comments
0c41c1083089efb158de828f97eb00e206f2869a doc: Remove shouty enums in net_processing comments (Suhas Daftuar)

Pull request description:

  This uses the `CNode::ConnectionTypeAsString()` strings in place of the all-caps enums in a couple of comments in `net_processing`, as suggested by ajtowns in https://github.com/bitcoin/bitcoin/pull/19858#discussion_r540821050.

ACKs for top commit:
  practicalswift:
    ACK 0c41c1083089efb158de828f97eb00e206f2869a
  jnewbery:
    ACK 0c41c1083089efb158de828f97eb00e206f2869a
  laanwj:
    ACK 0c41c1083089efb158de828f97eb00e206f2869a

Tree-SHA512: c8ab905e151ebb144c3f878277dc59d77591e4b39632658407b69b80b80d65825d5a391b01e2aea6af2fdf174c143dfe7d2f3eba84a020a58d7926458fdcd0a5
2024-03-04 00:21:22 -06:00
MarcoFalke
27efa9918f
Merge bitcoin/bitcoin#22311: test: Add missing syncwithvalidationinterfacequeue in p2p_blockfilters
fadddd13eef4428f5fa7237583d4be41a9335cd9 test: Add missing syncwithvalidationinterfacequeue (MarcoFalke)
faa211fc6e3d4984b8edff1d762dd4cba205d982 test: Misc cleanup (MarcoFalke)
fa1668bf5084a190b26b022b9e625a7be3defa6e test: Run pep-8 (MarcoFalke)
facd97ae0f0d816107aa3bc9de321244200636a0 scripted-diff: Renames (MarcoFalke)

Pull request description:

  The index on the block filters is running in the background on the validation interface. To avoid intermittent test failures, it needs to be synced.

  Also other cleanups.

ACKs for top commit:
  lsilva01:
    Tested ACK fadddd13ee on Ubuntu 20.04

Tree-SHA512: d858405db426a2f9d5620059dd88bcead4e3fba3ccc6bd8023f624b768fbcfa2203246fb0b2db620490321730d990f0e78063b21a26988c969cb126d4bd697bd
2024-03-04 00:21:21 -06:00
MarcoFalke
65045a0c9d
Merge #21357: test: Unconditionally check for fRelay field in test framework
39a9ec579f023ab262a1abd1f0c869be5b1f3f4d Unconditionally check for fRelay field in test framework (Troy Giorshev)

Pull request description:

  picking up #20411 (rebased onto master)

  There is a discrepancy in the implementation of our p2p protocol between
  bitcoind and the testing framework.  The fRelay field is an optional
  field at the end of a version message as of protocol version 70001.
  However, when deserializing a message in bitcoind, we don't check the
  version to see if it should have an fRelay field or not.  Instead, we
  unconditionally attempt to deserialize into the field.

  This commit brings the testing framework in line with the implementation
  in core.

  This matters for a version message with the following fields:

  Version = 60000
  fRelay = 1

  Bitcoind would deserialize this into a version message with
  Version=60000 and fRelay=1, whereas (before this commit) our testing
  framework would deserialize this into a version message with
  Version=60000 and fRelay=0.

ACKs for top commit:
  jnewbery:
    utACK 39a9ec579f023ab262a1abd1f0c869be5b1f3f4d

Tree-SHA512: 13a23f1180b7121ba41cb85baa38094b41f4607a7c88b3384775177cb116e76faf5514760624f98a4e8a830767407c46753a7e0285158c33e0c6ce395de8f15c
2024-03-04 00:21:21 -06:00
fanquake
fbd2722bb2
Merge bitcoin/bitcoin#22203: test: Use ConnmanTestMsg from test lib in denialofservice_tests
fa72fce7c948185752a01002000ea511809146ed test: Use ConnmanTestMsg from test lib in denialofservice_tests (MarcoFalke)

Pull request description:

  This allows to remove code.

  Also, required for https://github.com/bitcoin/bitcoin/pull/18470

ACKs for top commit:
  mjdietzx:
    crACK fa72fce7c948185752a01002000ea511809146ed 👍👍
  fanquake:
    ACK fa72fce7c948185752a01002000ea511809146ed

Tree-SHA512: 12aa68cde697c0f7c25d60bb0c02783e5462eb3ba39947b0d94a7798bc278e7d5f092f3ab2a3d0547947c3502cde7c4a599419055a57f78ef1f70f9f637e14c7
2024-03-04 00:21:21 -06:00
W. J. van der Laan
ec8e45b851
Merge bitcoin/bitcoin#22086: test: remove BasicTestingSetup from unit tests that don't need it
6c3fcd5591eb9947f35483014ecb0d8ab217b780 test: remove BasicTestingSetup from util_threadnames unit tests (fanquake)
b53d3c1b1fd739c314b0b34f361fcd992092fc29 test: remove BasicTestingSetup from uint256 unit tests (fanquake)
c0497a49281e68b57e2a1e6c48c950b2edc80821 test: remove BasicTestingSetup from torcontrol unit tests (fanquake)
ef8bb0473be62c07f96eb269b927dcec86c1e862 test: remove BasicTestingSetup from sync unit tests (fanquake)
1aee83421fe2128757b48f6317a3e7fed784adb6 test: remove BasicTestingSetup from reverse_lock unit tests (fanquake)
57ba949ef585f8124914c43ea9a53afee201b998 test: remove BasicTestingSetup from policy_fee unit tests (fanquake)
3974c962b61a1e18f8177ffa30791ad9ad2ba6e4 test: remove BasicTestingSetup from merkleblock tests (fanquake)
cd5bc4b4708b28cabcfabbcd7f5ba1155f5b1517 test: remove BasicTestingSetup from hash unit tests (fanquake)
39cec22935302418963cc2e7db4ad2fa9656849d test: remove BasicTestingSetup from compilerbug unit tests (fanquake)
6d3b78c0e2f427d3a7431885cc175464a527a12a test: remove BasicTestingSetup from bswap unit tests (fanquake)
a13dc24831e4a2d8e16a41d8c95cdaa8afdec783 test: remove BasicTestingSetup from bech32 unit tests (fanquake)
f4dcbe4498e55d2ed818b35cd15652fd427b7a7b test: remove BasicTestingSetup from base64 unit tests (fanquake)
fd144f64265a4752fe36391c51bb6b8ccdff838f test: remove BasicTestingSetup from base32 unit tests (fanquake)
4c389ba04b36cc2916d49435e07155144882a637 test: remove BasicTestingSetup from arith_uint256 unit tests (fanquake)
05590651a0b9ebc5f5fdbdcbbc1efe4bf64888d0 test: remove BasicTestingSetup from amount unit tests (fanquake)
883a5c7d021fe29539d417796a5b07e265f1c696 test: remove BasicTestingSetup from allocator unit tests (fanquake)

Pull request description:

  * Less setup/overhead for tests that don't need it. Some naive bench-marking would suggest that a full `test_bitcoin` run is a few % faster after this change.
  * Tests which don't need the BasicTestingSetup can't accidentally end up depending on it somehow.
  * Already the case in at least the scheduler and block_filter tests.

  This adds missing includes, but more significant is the removal of `setup_common.h` from tests where it isn't needed. This saves recompiling those tests when changes are made in the header.

ACKs for top commit:
  practicalswift:
    cr ACK 6c3fcd5591eb9947f35483014ecb0d8ab217b780: patch looks correct
  laanwj:
    ACK 6c3fcd5591eb9947f35483014ecb0d8ab217b780

Tree-SHA512: 69b891e2b4740402d62b86a4fc98c329a432d125971342a6f97334e166b3537ed3d4cdbb2531fa05c1feae32339c9fcb2dceda9afeeaed4edc70e8caa0962161
2024-03-04 00:21:21 -06:00
fanquake
27938659e3
Merge #21003: test: Move MakeNoLogFileContext to libtest_util, and use it in bench
fa576b4532814b4bca1936d170cabd01fbc51960 Move MakeNoLogFileContext to common libtest_util, and use it in bench (MarcoFalke)

Pull request description:

  To avoid verbose code duplication, which may lead to accidental mishaps https://github.com/bitcoin/bitcoin/pull/20998/files#r563624041.

  Also fix a nit I found in https://github.com/bitcoin/bitcoin/pull/20946#discussion_r561949731.

ACKs for top commit:
  dongcarl:
    Light Code-Review ACK fa576b4532814b4bca1936d170cabd01fbc51960
  fanquake:
    ACK fa576b4532814b4bca1936d170cabd01fbc51960

Tree-SHA512: d39ac9c0957813ebb20ed13bd25a8ef8469377ce2651245638bd761c796feac2a17e30dd16f1e5c8db57737fb918c81d56a3d784c33258275e426a1b11e69eb2
2024-03-04 00:21:20 -06:00
MarcoFalke
5107598bf9
Merge #20210: net: assert CNode::m_inbound_onion is inbound in ctor, add getter, unit tests
86c495223f048e5ca2cf0d8730af7db3b76f7aba net: add CNode::IsInboundOnion() public getter and unit tests (Jon Atack)
6609eb8cb50fe92c7317b5db9e72d4333b3aab1b net: assert CNode::m_inbound_onion is inbound in ctor (Jon Atack)
993d1ecd191a7d9161082d4026f020cbf00835bb test, fuzz: fix constructing CNode with invalid inbound_onion (Jon Atack)

Pull request description:

  The goal of this PR is to be able to depend on `m_inbound_onion` in AttemptToEvictConnection in #20197:

  - asserts `CNode::m_inbound_onion` is inbound in the CNode ctor to have a validity check at the class boundary
  - fixes a unit test and a fuzz utility that were passing invalid inbound onion values to the CNode ctor
  - drops an unneeded check in `CNode::ConnectedThroughNetwork()` for its inbound status
  - adds a public getter `IsInboundOnion()` that also allows unit testing it
  - adds unit test coverage

ACKs for top commit:
  sipa:
    utACK 86c495223f048e5ca2cf0d8730af7db3b76f7aba
  LarryRuane:
    ACK 86c495223f048e5ca2cf0d8730af7db3b76f7aba
  vasild:
    ACK 86c495223f048e5ca2cf0d8730af7db3b76f7aba
  MarcoFalke:
    review ACK 86c495223f048e5ca2cf0d8730af7db3b76f7aba 🐍

Tree-SHA512: 21109105bc4e5e03076fadd489204be00eac710c9de0127708ca2d0a10a048ff81f640f589a7429967ac3eb51d35fe24bb2b12e53e7aa3efbc47aaff6396d204
2024-03-04 00:21:20 -06:00
MarcoFalke
0b109bed58
Merge #20737: test: Add missing assignment in mempool_resurrect.py
fada8b019af104a0df7659ede2618f594bb3e78a test: Add missing assignment in mempool_resurrect.py (MarcoFalke)

Pull request description:

Top commit has no ACKs.

Tree-SHA512: f438d85cd14a91eabfc380d9ee120cc7a7f9103cf0cd1cf565f675f386f82d966901c0ad3f60b8c462642fbf0a3791dbbd774f9b07668d22b58eb575c8d702c1
2024-03-04 00:21:20 -06:00
MarcoFalke
0193d482a6
Merge #20692: test: run mempool_resurrect.py even with wallet disabled
11a32722f09f1d81f34bd09b26248ba99f2e7f07 test: run mempool_resurrect.py even with wallet disabled (Michael Dietz)

Pull request description:

  Another functional test rewritten as proposed in #20078

  **Request for help:**
  `node.gettransaction(txid)` fails for transactions sent with `wallet.send_self_transfer`. Even though the `txid`s look correct, are added to the mempool correctly, and removed from the mempool when a block is mined - all as expected.

  However, `node.gettransaction(txid)` throws the error:
  ```sh
  Traceback (most recent call last):
    File "/Users/michaeldietz/Documents/bitcoin/test/functional/test_framework/test_framework.py", line 126, in main
      self.run_test()
    File "/Users/michaeldietz/Documents/bitcoin/test/functional/mempool_resurrect.py", line 43, in run_test
      assert_equal(len(list(filter(lambda txid: node.gettransaction(txid)["confirmations"] > 0, spends_ids))), len(spends_ids))
    File "/Users/michaeldietz/Documents/bitcoin/test/functional/mempool_resurrect.py", line 43, in <lambda>
      assert_equal(len(list(filter(lambda txid: node.gettransaction(txid)["confirmations"] > 0, spends_ids))), len(spends_ids))
    File "/Users/michaeldietz/Documents/bitcoin/test/functional/test_framework/coverage.py", line 47, in __call__
      return_val = self.auth_service_proxy_instance.__call__(*args, **kwargs)
    File "/Users/michaeldietz/Documents/bitcoin/test/functional/test_framework/authproxy.py", line 146, in __call__
      raise JSONRPCException(response['error'], status)
  test_framework.authproxy.JSONRPCException: Invalid or non-wallet transaction id (-5)
  ```

  Anyone know what's going wrong / can point me in the right direction if I'm making a mistake, or `MiniWallet` needs to be improved for this to work correctly?

ACKs for top commit:
  MarcoFalke:
    ACK 11a32722f09f1d81f34bd09b26248ba99f2e7f07

Tree-SHA512: 13d83a13ec23920db716e99b68670e61329d1cc73b12063d85bc1679ee6425a9951da4d2e392ca1f27760be7be049ccdc6f504e192ed5cd24ed0ba003b66fab3
2024-03-04 00:21:20 -06:00
Wladimir J. van der Laan
39f08af18a
Merge #20047: test: use wait_for_{block,header} helpers in p2p_fingerprint.py
6b56c1f4d0d5857d9d61a81dc96db1b603c368b5 test: remove last_{block,header}_equals() in p2p_fingerprint.py (Sebastian Falbesoner)
136d96b71f94bde2c7471ed852d447ec008e3a30 test: use wait_for_{block,header} helpers in p2p_fingerprint.py (Sebastian Falbesoner)

Pull request description:

  This small PR takes use of the message receiving helper functions `wait_for_block()` and `wait_for_header()` (from module `test_framework.p2p`) in the test `p2p_fingerprint.py`.  It also simplifies the checks for very old stale blocks/headers requests by getting rid of the functions `last_block_equals()` and `last_header_equals()` and rather only testing that not any blocks/headers message is received at all. Unneeded sending of requests are also removed and calls to time.sleep(...) substituted by ping syncs.

ACKs for top commit:
  guggero:
    ACK 6b56c1f4

Tree-SHA512: 9114db70f3804adad4ab658236762d4fa73fef91158c5756dd1af2d24196ea740451b0028667e0c4047f1f89fe1355031921d3dfb973acc1370052a4bc12c2ab
2024-03-04 00:21:17 -06:00
pasta
9d8b06e2c3
Merge #5907: fix: actually run rpc_fundrawtransaction with and without HD feature
a392be6cf0 fix: actually run rpc_fundrawtransaction with and without HD feature (Konstantin Akimov)

Pull request description:

  ## Issue being fixed or feature implemented
  Due to double initialization of `extra_args` rpc_fundrawtransaction always test with enabled or disabled HD wallets (which is enabled by default).

  ## What was done?
  Fixes double initialization and inversion of condition due to hd wallets enabled by default since #5807

  ## How Has This Been Tested?
  Run functional tests and watch `ps aux` during running to ensure that `-usehd` is set properly.

  ## Breaking Changes
  N/A

  ## Checklist:
  - [x] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone

Top commit has no ACKs.

Tree-SHA512: 6e595b4073c50f0355d9f64b966b1a0613a7bb8dae3406523fae737e54725ffc652aa9db30daf46c9640d98f44883780bd075074d56b7e8baeeb0a1d2d007c20
2024-03-03 23:39:25 -06:00
Konstantin Akimov
a392be6cf0
fix: actually run rpc_fundrawtransaction with and without HD feature 2024-03-03 23:39:11 -06:00
pasta
2f7f67831d
Merge #5905: chore: bump protocol version to 70231
30331a2b61 chore: bump protocol version to 70231 (UdjinM6)

Pull request description:

  ## Issue being fixed or feature implemented
  To be merged closer to 20.1 release

  ## What was done?

  ## How Has This Been Tested?

  ## Breaking Changes
  n/a

  ## Checklist:
    _Go over all the following points, and put an `x` in all the boxes that apply._
  - [x] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

Top commit has no ACKs.

Tree-SHA512: 63f559df96b3ed1d1cd4b7650d07795fa3b212cb81937f57795b0b46d40f6fc1598b1a8c2f981348653f7b6eb514fa98a7ccd48ffbd691b279114dc0927de1e0
2024-03-03 23:37:06 -06:00
UdjinM6
30331a2b61
chore: bump protocol version to 70231 2024-03-03 23:36:44 -06:00
pasta
5e95f8dda5
Merge #5914: chore: blockchain updates for v20.1: chainparams, seeds
97a331c523 chore: update chainparams for testnet (Konstantin Akimov)
ca0c04d769 docs: update release process for generating seeds: new PR as a reference (Konstantin Akimov)
151b56eacd fix: uninitialized variable onions in makeseeds script (Konstantin Akimov)
b8395aa4e6 chore: update seeds for v20.1 (Konstantin Akimov)
89f3a24517 chore: update chainparams for v20.1 release (Konstantin Akimov)

Pull request description:

  ## Issue being fixed or feature implemented
  Part of release process to update seeds and chainparams: https://github.com/dashpay/dash/blob/develop/doc/release-process.md

  ## Breaking Changes
  N/A

  ## Checklist:
  - [x] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [x] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone

Top commit has no ACKs.

Tree-SHA512: 9ba600bbc5aefe2b0ed031a7f1c39d2b105f90b6ecb843c3ab27f0668caaa381dc54cb794f74d6069a72d4d9a3f73dcca782422a98b606b192e65b51fd39b35d
2024-03-03 23:34:55 -06:00
Konstantin Akimov
97a331c523
chore: update chainparams for testnet 2024-03-03 23:34:35 -06:00
Konstantin Akimov
ca0c04d769
docs: update release process for generating seeds: new PR as a reference 2024-03-03 23:34:35 -06:00
Konstantin Akimov
151b56eacd
fix: uninitialized variable onions in makeseeds script
```
$ ./makeseeds.py protx.txt > nodes_main.txt
Traceback (most recent call last):
  File "DASH/contrib/seeds/./makeseeds.py", line 183, in <module>
    main()
  File "DASH/contrib/seeds/./makeseeds.py", line 167, in main
    for onion in onions:
                 ^^^^^^
UnboundLocalError: cannot access local variable 'onions' where it is not associated with a value
```
2024-03-03 23:34:34 -06:00
Konstantin Akimov
b8395aa4e6
chore: update seeds for v20.1
Don't forget to specify onion_seeds.txt:
```
cd contrib/seeds
dash-cli protx list valid 1 > protx.txt
./makeseeds.py protx.txt onion_seeds.txt > nodes_main.txt
./generate-seeds.py . > ../../src/chainparamsseeds.h
```
2024-03-03 23:34:34 -06:00
Konstantin Akimov
89f3a24517
chore: update chainparams for v20.1 release 2024-03-03 23:34:34 -06:00
pasta
533d82ca5a
Merge #5889: fix: fallback to a commit hash in codesign.sh
42decd3c68 fix: fallback to a commit hash in `codesign.sh` (UdjinM6)

Pull request description:

  ## Issue being fixed or feature implemented
  We don't use tags in https://github.com/dashpay/dash-detached-sigs repo, we use branches so `git describe` fails...

  ## What was done?
  Add `--always` option to fallback to commit hash. Could do
  ```
  git_head_version() {
      git -C "$1" rev-parse --short=12 HEAD`
  }
  ```
  instead but using `describe` allows us to start using tags one day with no additional patches.

  ## How Has This Been Tested?

  ## Breaking Changes

  ## Checklist:
  - [x] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

Top commit has no ACKs.

Tree-SHA512: 71c89641d1e4d81612c7d19d0724627f11b4a986d950483d6bf93d3071b5b0f1de6fd6359eea27a247dc403199d5221aebb2827e89f0bf67ba69a03b1570c668
2024-03-03 15:38:14 -06:00
UdjinM6
42decd3c68
fix: fallback to a commit hash in codesign.sh 2024-03-03 15:37:55 -06:00
pasta
5f6ae3ca14
Merge #5913: backport: trivial 2024 02 29
4c53a434d8 Merge bitcoin/bitcoin#26131: log: log RPC port on startup (MacroFake)
185cf8231e Merge bitcoin/bitcoin#26130: Bugfix: Wallet: Lock cs_wallet for SignMessage (MacroFake)
dc4e834d4a Merge bitcoin/bitcoin#25918: build: prune event2 compat headers (fanquake)
023eb917a8 Merge bitcoin/bitcoin#26090: fs: fully initialize `_OVERLAPPED` for win32 (fanquake)
8de9065a24 Merge bitcoin-core/gui#664: Prevent wrong handling of `%2` token by Transifex (Hennadii Stepanov)
252eae1395 Merge bitcoin/bitcoin#26054: test: verify best blockhash after invalidating an unknown block (MacroFake)
6731b10288 Merge bitcoin/bitcoin#26007: [contrib] message-capture-parser: fix AssertionError on parsing `headers` message (MacroFake)
fa7f8f2d60 Merge bitcoin/bitcoin#26002: build: sync ax_boost_base from upstream (fanquake)
3e24202f50 Merge bitcoin/bitcoin#26038: test: invalidating an unknown block throws an error (MacroFake)

Pull request description:

  ## Issue being fixed or feature implemented
  Trivial backport batch

  ## What was done?

  ## How Has This Been Tested?
  Ran tests locally; haven't properly reviewed

  ## Breaking Changes

  ## Checklist:
    _Go over all the following points, and put an `x` in all the boxes that apply._
  - [ ] I have performed a self-review of my own code
  - [ ] I have commented my code, particularly in hard-to-understand areas
  - [ ] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

Top commit has no ACKs.

Tree-SHA512: b6431432d7a4d3829f1212342cd1c5852baad2e6d42d37d80f40382ed12a05ebd1f580703ae4cada18d2ed84bf80269dd178a7c7e9ef6d43c26229c49d0eebeb
2024-03-01 10:21:45 -06:00
MacroFake
4c53a434d8
Merge bitcoin/bitcoin#26131: log: log RPC port on startup
9d14f27bddab351fe98a2ae197bd4cf8a092c4f3 log: log RPC port on startup (James O'Beirne)

Pull request description:

  I just spent a few hours trying to figure out why "18444" wasn't getting me to regtest's RPC server. I'm not the sharpest tool in the shed, but I was maybe understandably confused because "Bound to 127.0.0.1:18445" appears in the logs, which I assumed was the P2P port.

  This change logs the RPC listening address by default on startup, which seems like a basic piece of information that shouldn't be buried under `-debug`.

ACKs for top commit:
  dergoegge:
    ACK 9d14f27bddab351fe98a2ae197bd4cf8a092c4f3
  jarolrod:
    ACK 9d14f27bddab351fe98a2ae197bd4cf8a092c4f3
  aureleoules:
    ACK 9d14f27bddab351fe98a2ae197bd4cf8a092c4f3

Tree-SHA512: 5c86f018c0b8d6264abf878c921afe53033b23ab4cf289276bb1ed28fdf591c9d8871a4baa4098c363cb2aa9a637d2e4e18e56b14dfc7d767ee40757d7ff2e7c
2024-02-29 12:35:16 -06:00