Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

backport: #5509

Closed
wants to merge 865 commits into from
Closed

backport: #5509

wants to merge 865 commits into from
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Jun 6, 2023

  1. Configuration menu
    Copy the full SHA
    42f2756 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    87b8acf View commit details
    Browse the repository at this point in the history

Commits on Jun 7, 2023

  1. ci: use PR's HEAD in guix workflow (dashpay#5416)

    ## Issue being fixed or feature implemented
    Our guix workflow creates a merge commit instead of using HEAD from a PR
    itself which is why commit hash is different. That's exactly what is
    described in actions/checkout#27 imo.
    
    related:
    dashpay#5355 (comment)
    
    ## What was done?
    adjust guix workflow
    
    ## How Has This Been Tested?
    see this PR results: the HEAD looks correct now
    this PR:
    https://github.com/dashpay/dash/actions/runs/5191152453/jobs/9358590629?pr=5416#step:2:482
    dashpay#5355:
    https://github.com/dashpay/dash/actions/runs/5187698039/jobs/9350381761?pr=5355#step:2:489
    
    ## Breaking Changes
    n/a hopefully 
    
    ## 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
    - [ ] I have assigned this pull request to a milestone _(for repository
    code-owners and collaborators only)_
    UdjinM6 authored Jun 7, 2023
    Configuration menu
    Copy the full SHA
    49ca1aa View commit details
    Browse the repository at this point in the history
  2. Merge bitcoin#17725: ci: Add valgrind run

    facb416 ci: Add valgrind run (MarcoFalke)
    
    Pull request description:
    
      Fixes bitcoin#17460
    
    ACKs for top commit:
      practicalswift:
        ACK facb416
    
    Tree-SHA512: 55396e548a76f976d7b7170b68bc5f93cfd44656162267172f66db7eb549699a2a22d3b1bb0d5f180fe0697931939e652c8cdb86b435e81e7ce572485798009d
    MarcoFalke authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    86094b6 View commit details
    Browse the repository at this point in the history
  3. Merge bitcoin#18304: ci: Enable all functional tests in valgrind

    4444edc ci: Enable all functional tests in valgrind (MarcoFalke)
    
    Pull request description:
    
      The travis timeout for our repo has been bumped to 2h, so we can run all tests in valgrind now
    
    ACKs for top commit:
      practicalswift:
        ACK 4444edc -- regarding the three disabled cases (`feature_abortnode`, `feature_block` and `rpc_bind`): not a big deal since MSan will take care of those once bitcoin#18288 is merged. More is more :)
    
    Tree-SHA512: ea2f798112911b6d1f3d88cfcdf0a7cdb698687248343703d6fe55da144542c961c15d888bffb41672c10aa76765615cb7c7ff93d468bfad3c51f962f24e7abb
    MarcoFalke authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    c2554ab View commit details
    Browse the repository at this point in the history
  4. Merge bitcoin#18392: ci: Run feature_block in valgrind

    fa92af5 ci: Run feature_block and feature_abortnode in valgrind (MarcoFalke)
    fa01feb test: Remove ci timeout restriction in test_runner (MarcoFalke)
    
    Pull request description:
    
      Also revert commit 0a4912e, because some tests take too long for this to be useful anymore.
    
    Top commit has no ACKs.
    
    Tree-SHA512: 363f14766e1f4a5860ab668a516b41acebc6fbdf11d8defb3a95a772dbf82304ca1f5f14b1dbad97f2029503e03d92e8c69df0466a8872409c20665838f617ed
    MarcoFalke authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    32b4f8d View commit details
    Browse the repository at this point in the history
  5. Merge bitcoin#19159: test: Make valgrind.supp work on aarch64

    fab7d95 test: Make valgrind.supp work on aarch64 (MarcoFalke)
    
    Pull request description:
    
      Was easy to fix by simply removing a line
    
    ACKs for top commit:
      practicalswift:
        ACK fab7d95 -- diff looks correct
    
    Tree-SHA512: d2d7c6cac453a3177c20e256ec50a03066f8dbf5ae45299077ccf4a2b45a3a40252b1b5fcaf9224a59bb5c3df5bd90ac58af27eb0f47dc87c2640df5b2b460ca
    fanquake authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    316f6b1 View commit details
    Browse the repository at this point in the history
  6. Merge bitcoin#18899: travis: Remove valgrind

    fa082d0 travis: Remove valgrind (MarcoFalke)
    
    Pull request description:
    
      When the valgrind run was added, it took 2 hours. Travis kindly raised the timeout limit to the maximum possible of 3 hours.
    
      Today, a full build of Bitcoin Core with all tests takes more than three hours. Thus, it is impossible to run all tests on travis.
    
      Moreover, the feedback loop for developers that create a pull request takes at least 2 hours, but in some cases (when the travis queue is full) until the next day. This is unacceptable.
    
      Fix both issues by removing the build from travis.
    
      Please note that the `ci/test/` configurations are *not* removed. They will stay in the repo and can be executed anywhere (just not on travis).
    
    ACKs for top commit:
      jamesob:
        ACK bitcoin@fa082d0
      jnewbery:
        utACK fa082d0
    
    Tree-SHA512: 9acaa0e2d3926014fadb7dd2e86c4e01df382e9399f6ae99f989fa609da66a77bdd1b75d6ff42d2686f38f730b8564e6dc722aa597a473290c9d30c2abe7ef0f
    MarcoFalke authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    3d141a8 View commit details
    Browse the repository at this point in the history
  7. Merge bitcoin#18430: ci: Only clone bitcoin-core/qa-assets when fuzzing

    fae1e99 ci: Only clone bitcoin-core/qa-assets when fuzzing (MarcoFalke)
    
    Pull request description:
    
      Currently the only content of that repo are some seeds, so we can speed up some ci builds
    
    ACKs for top commit:
      laanwj:
        ACK fae1e99 (provided this passes travis)
    
    Tree-SHA512: ed813738e7f24bb56a2f12aa3b398e414eb4f0ba98379836a33ff3e5602cbf42a28e89aad10e346468191ecddc03e60d5b236097112e27c07cb1c2293533ea58
    MarcoFalke authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    cd16cf9 View commit details
    Browse the repository at this point in the history
  8. Merge bitcoin#18438: ci: Use Homebrew addon on native macOS

    25c8b73 ci: Use Homebrew addon on native macOS (Hennadii Stepanov)
    596c627 ci: Fix brew in Travis (Hennadii Stepanov)
    
    Pull request description:
    
      Recently almost every macOS image update on Travis breaks our builds:
      - bitcoin#17848
      - bitcoin#18436
    
      This PR:
      - fixes the error caused by the recent [update](https://changelog.travis-ci.com/xcode-11-3-1-xcode-11-2-1-xcode-11-1-and-xcode11-images-updated-142286) from 10.14.4 (18E226) to 10.14.6 (18G3020) on March 25
      - leverages [Homebrew addon](https://config.travis-ci.com/ref/job/addons/homebrew) to install packages
    
      Homebrew is not told to install `automake` and `pkg-config` packages, as the [docs](https://docs.travis-ci.com/user/reference/osx/#compilers-and-build-toolchain) states that they are pre-installed:
      >    - automake 1.16.1
      >    - pkg-config 0.29.2
    
    Top commit has no ACKs.
    
    Tree-SHA512: 1a70c06468fbe162503081b03dcf54614d67abf8ff0ce07d118b5bb50bbb92c182a76f769bea586c691aa82b9281a29cdef88091acc16895817a2e7cddafec6e
    MarcoFalke authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    548d63e View commit details
    Browse the repository at this point in the history
  9. Merge bitcoin#18441: ci: Remove misplaced comments from folded block …

    …scalar
    
    e41e46c ci: Remove misplaced comments from folded block scalar (Hennadii Stepanov)
    
    Pull request description:
    
      On master (f3a91ab) the [build log for ARM](https://travis-ci.org/github/bitcoin/bitcoin/jobs/667247758) contains:
      ```
      $ export FILE_ENV="./ci/test/00_setup_env_arm.sh"
      $ export QEMU_USER_CMD=""
      $ export Can=
      $ export run=
      $ export the=
      $ export tests=
      $ export natively=
      $ export without=
      $ export qemu=
    
      Setting up build cache
      ...
      ```
      and
      ![Screenshot from 2020-03-26 18-58-50](https://user-images.githubusercontent.com/32963518/77674223-e28d2d00-6f93-11ea-82a1-7f805ccb678d.png)
    
      With this PR:
      ```
      $ export FILE_ENV="./ci/test/00_setup_env_arm.sh"
      $ export QEMU_USER_CMD=""
    
      Setting up build cache
      ...
      ```
    
      and
      ![Screenshot from 2020-03-26 19-01-56](https://user-images.githubusercontent.com/32963518/77674456-4d3e6880-6f94-11ea-9c83-546c81f1cdf7.png)
    
      ---
    
      Also Travis [build config validation](https://docs.travis-ci.com/user/build-config-validation) added:
      ![Screenshot from 2020-03-26 19-04-19](https://user-images.githubusercontent.com/32963518/77674686-9ee6f300-6f94-11ea-900f-fdef8a673113.png)
    
    Top commit has no ACKs.
    
    Tree-SHA512: a3ea05d543a4d46c65fffd7c67df9bbd4ca8d426fa215c5ce26653de34145edd419a54884da0416608a2c90bf5b421cab3ec32290c8916f10399354b44ddeb99
    MarcoFalke authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    385b9a8 View commit details
    Browse the repository at this point in the history
  10. Merge bitcoin#18477: ci: Use Focal for fuzzers

    faa9491 ci: Use Focal for fuzzers (MarcoFalke)
    
    Pull request description:
    
      This gives us access to clang-10, as well as a newer version of valgrind
    
    ACKs for top commit:
      fanquake:
        ACK faa9491 - [Clang 10](https://packages.ubuntu.com/focal/clang) and [valgrind 3.15](https://packages.ubuntu.com/focal/valgrind).
      practicalswift:
        ACK faa9491 -- diff looks correct & contemporary clang is better than vintage clang
    
    Tree-SHA512: 0e67232673434c0309db79c1054e3e981115083585945967e346f4d58792635832100f89911428aab928155e44e5f401207a023681ae008fdb5280cf02c4d427
    fanquake authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    3ddc17a View commit details
    Browse the repository at this point in the history
  11. Merge bitcoin#18562: ci: Run unit tests sequential once

    fa7af33 ci: Run unit tests sequential once (MarcoFalke)
    fa68a3e appveyor: Enable minimal unit test logging to aid debugging (MarcoFalke)
    
    Pull request description:
    
      Fixes bitcoin#16976
    
    Top commit has no ACKs.
    
    Tree-SHA512: 1f1ee8776a67afa8c1c5a16ef170c9975b6a486c087c8eba12e97d23382befd1c2801622ec70ca8e4cd1fbedce1dec46be67677ceaf07f35f1d3f3bead0200f0
    MarcoFalke authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    85be06a View commit details
    Browse the repository at this point in the history
  12. Merge bitcoin#18569: ci: Add big endian native s390x build

    6136a96 ci: Rename RUN_CI_ON_HOST to DANGER_RUN_CI_ON_HOST (Hennadii Stepanov)
    97ba77a ci: Add native s390x (Hennadii Stepanov)
    
    Pull request description:
    
      Unlike the Docker wrapped solution (bitcoin#17591) this PR suggests running on host system directly.
    
      This approach makes builds quick and stable (see: bitcoin#18106).
    
      The excerpt from the Travis log:
      ```
      ...
      Running on host system without docker wrapper
      ...
      Byte Order: Big Endian
      ...
      ```
    
    ACKs for top commit:
      MarcoFalke:
        ACK 6136a96
    
    Tree-SHA512: 1b591de13e38d10a35217e1de11cbd648a359d18d16eed166fac18ea5788b58cc9fc6d407086ed342b99e57e479efd951a0ea693710177e500eb116316b9a788
    MarcoFalke authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    01fc1af View commit details
    Browse the repository at this point in the history
  13. Merge bitcoin#18683: ci: Disable valgrind functionl tests on forked r…

    …epos to avoid timeouts
    
    faceeae ci: Disable valgrind functionl tests on forked repos to avoid timeouts (MarcoFalke)
    
    Pull request description:
    
      Allows people to fork our repo and run the tests again
    
      Also print more cache stats
    
    ACKs for top commit:
      hebasto:
        ACK faceeae, tested on my own repo: https://travis-ci.org/github/hebasto/bitcoin/jobs/676257500
    
    Tree-SHA512: 50e44edf94fcb997438eeaf7308b2b58a0854141ecb1fbb0ba7bf5ed662f19b60899f966f579cca90ad5e789234d0e90122d8c2c854da70339058adc3a475fa6
    MarcoFalke authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    04a707a View commit details
    Browse the repository at this point in the history
  14. Merge bitcoin#18912: ci: Run fuzz testing test cases (bitcoin-core/qa…

    …-assets) under valgrind to catch memory errors
    
    3f686d1 ci: Run fuzz testing test cases (bitcoin-core/qa-assets) under valgrind to catch memory errors (practicalswift)
    
    Pull request description:
    
      Re-introduce the Travis valgrind fuzzing job which was removed by PR bitcoin#18899. The removal seems to have been made by accident since the removed job does not appear to be the source of the problem the PR set out to fix.
    
      ---
    
      Run fuzz testing [test cases (bitcoin-core/qa-assets)](https://github.com/bitcoin-core/qa-assets) under `valgrind`.
    
      This would have caught `util: Avoid potential uninitialized read in FormatISO8601DateTime(int64_t) by checking gmtime_s/gmtime_r return value` (bitcoin#18162) and similar cases.
    
      This fuzzing job was introduced in bitcoin#18166.
    
    Top commit has no ACKs.
    
    Tree-SHA512: 6e2681eb0ade6af465c5ea91ac163a337465d2130ec9880ba57a36d9af7c25682734586a32977dc25972d4f78483f339d680ea48c0ae13cf1dfa52b617aae401
    MarcoFalke authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    f935747 View commit details
    Browse the repository at this point in the history
  15. Merge bitcoin#19669: contrib: Fixup valgrind suppressions file

    fa5288c contrib: Fixup valgrind suppressions file (MarcoFalke)
    
    Pull request description:
    
      I am observing this one on bionic with system boost::fs:
    
      ```
      {
         <insert_a_suppression_name_here>
         Memcheck:Cond
         fun:__wcsnlen_avx2
         fun:wcsnrtombs
         fun:_ZNKSt7codecvtIwc11__mbstate_tE6do_outERS0_PKwS4_RS4_PcS6_RS6_
         fun:_ZN5boost10filesystem11path_traits7convertEPKwS3_RNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt7codecvtIwc11__mbstate_tE
         fun:_ZN5boost10filesystem6detail11unique_pathERKNS0_4pathEPNS_6system10error_codeE
      ...
    
    ACKs for top commit:
      practicalswift:
        ACK fa5288c -- patch looks correct
    
    Tree-SHA512: 067e10e932a7f5b13e516134e0cfd3030265c1b582cdfde1cea97042e31399aa40c4590710a39429854c68ad703a0ae9f0b06e9af4cdd81e3cacb042939a84b6
    fanquake authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    50cac39 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    a3c59cc View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    028281a View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    6b87c21 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    c357460 View commit details
    Browse the repository at this point in the history
  20. fix: disable ASAN because currently it fails with unknown memory leaks

    ```
    ********* Finished testing of TrafficGraphDataTests *********
    ~BitcoinApplication : Stopping thread
    ~BitcoinApplication : Stopped thread
    ==28475==WARNING: invalid path to external symbolizer!
    ==28475==WARNING: Failed to use and restart external symbolizer!
    =================================================================
    ==28475==ERROR: LeakSanitizer: detected memory leaks
    Direct leak of 520 byte(s) in 13 object(s) allocated from:
        #0 0x55fc08e2353d  (/builds/dashpay/dash/build-ci/dashcore-linux64_asan/src/qt/test/test_dash-qt+0x779153d)
        dashpay#1 0x7f7a7724bd85  (<unknown module>)
    Direct leak of 432 byte(s) in 2 object(s) allocated from:
        #0 0x55fc08e2353d  (/builds/dashpay/dash/build-ci/dashcore-linux64_asan/src/qt/test/test_dash-qt+0x779153d)
        dashpay#1 0x55fc0dc63b63  (/builds/dashpay/dash/build-ci/dashcore-linux64_asan/src/qt/test/test_dash-qt+0xc5d1b63)
        dashpay#2 0x8604597ff0e8feff  (<unknown module>)
    Direct leak of 176 byte(s) in 2 object(s) allocated from:
        #0 0x55fc08e52cad  (/builds/dashpay/dash/build-ci/dashcore-linux64_asan/src/qt/test/test_dash-qt+0x77c0cad)
        dashpay#1 0x55fc0d822372  (/builds/dashpay/dash/build-ci/dashcore-linux64_asan/src/qt/test/test_dash-qt+0xc190372)
    Direct leak of 66 byte(s) in 3 object(s) allocated from:
        #0 0x55fc08e2353d  (/builds/dashpay/dash/build-ci/dashcore-linux64_asan/src/qt/test/test_dash-qt+0x779153d)
        dashpay#1 0x7f7a77243633  (<unknown module>)
    Direct leak of 24 byte(s) in 1 object(s) allocated from:
        #0 0x55fc08e2353d  (/builds/dashpay/dash/build-ci/dashcore-linux64_asan/src/qt/test/test_dash-qt+0x779153d)
        dashpay#1 0x7f7a77245449  (<unknown module>)
    ```
    knst authored and PastaPastaPasta committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    844ede2 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    ae9abb9 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    994fb57 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    0024743 View commit details
    Browse the repository at this point in the history
  24. fix: move test-security-check call

    UdjinM6 authored and kwvg committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    101cb67 View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    ef9300a View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    067d4a4 View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    ef65f61 View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    1be3afd View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    d4a8d49 View commit details
    Browse the repository at this point in the history
  30. partial bitcoin#22381: Test security-check sanity before performing t…

    …hem (with macOS)
    
    excludes:
    - d6ef354
    kwvg committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    24a6642 View commit details
    Browse the repository at this point in the history
  31. fix: add exception for 32-bit ARM builds which need glibc 2.28

    note: focal uses glibc 2.31, which is used by gitian, so our build
          environment has support for a version of glibc that far exceeds
          our maximum supported version (2.28). this could be remedied by
          switching to debian buster (oldstable) which uses 2.28.
    kwvg committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    8535830 View commit details
    Browse the repository at this point in the history
  32. Configuration menu
    Copy the full SHA
    cdedbea View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    8dab702 View commit details
    Browse the repository at this point in the history
  34. Configuration menu
    Copy the full SHA
    d28ba33 View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    110dbf8 View commit details
    Browse the repository at this point in the history
  36. Configuration menu
    Copy the full SHA
    1e9278e View commit details
    Browse the repository at this point in the history
  37. Configuration menu
    Copy the full SHA
    bd2135f View commit details
    Browse the repository at this point in the history
  38. Configuration menu
    Copy the full SHA
    38c3bd0 View commit details
    Browse the repository at this point in the history
  39. Configuration menu
    Copy the full SHA
    e39a1de View commit details
    Browse the repository at this point in the history
  40. Configuration menu
    Copy the full SHA
    f2a5b47 View commit details
    Browse the repository at this point in the history
  41. Configuration menu
    Copy the full SHA
    7753957 View commit details
    Browse the repository at this point in the history
  42. Configuration menu
    Copy the full SHA
    e91a62b View commit details
    Browse the repository at this point in the history
  43. Configuration menu
    Copy the full SHA
    ecb9ff8 View commit details
    Browse the repository at this point in the history
  44. Configuration menu
    Copy the full SHA
    3c8088f View commit details
    Browse the repository at this point in the history

Commits on Jun 8, 2023

  1. Configuration menu
    Copy the full SHA
    66dfd36 View commit details
    Browse the repository at this point in the history

Commits on Jun 9, 2023

  1. ci: more checksums in guix workflow (dashpay#5417)

    ## Issue being fixed or feature implemented
    1. not all binaries were covered with checksums
    2. there were no checksums for archives
    
    ## What was done?
    add missing checksums, also group and sort them
    
    ## How Has This Been Tested?
    run commands after local guix build
    see this PR results
    
    ## 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)_
    UdjinM6 authored Jun 9, 2023
    Configuration menu
    Copy the full SHA
    c51ba63 View commit details
    Browse the repository at this point in the history

Commits on Jun 10, 2023

  1. Merge bitcoin#20906: contrib: embed C++11 patch in install_db4.sh

    9237003 contrib: embed C++11 patch in install_db4.sh (jackielove4u)
    
    Pull request description:
    
      This is a continuation of bitcoin#20665.
    
      Closes bitcoin#20722.
    
    ACKs for top commit:
      laanwj:
        ACK 9237003
      fanquake:
        ACK 9237003.
    
    Tree-SHA512: ebfd16f5301158de1acc1b8eeca43b3d94f0a6d438832133a30648e5e8a88268b4af983be0bb57f3018e3af8459f32f0de676c1b4e8942e199a4497c776631c5
    laanwj authored and PastaPastaPasta committed Jun 10, 2023
    Configuration menu
    Copy the full SHA
    487395c View commit details
    Browse the repository at this point in the history
  2. Merge bitcoin#21585: Fix assumeutxo crash due to truncated file

    fa73ce6 Fix assumeutxo crash due to truncated file (MarcoFalke)
    
    Pull request description:
    
    ACKs for top commit:
      jamesob:
        ACK fa73ce6
      ryanofsky:
        Code review ACK fa73ce6. Easy fix. It seems like this could have been caught in review, though.
    
    Tree-SHA512: 3a98687c386e3995114ddf0ad7194fadd9520989290681ef703b578e3ca21aee51eadfb83aa38a489bac13d12709ea137b9b184b08e5bfa2919cca177aab90be
    MarcoFalke authored and PastaPastaPasta committed Jun 10, 2023
    Configuration menu
    Copy the full SHA
    d117a65 View commit details
    Browse the repository at this point in the history
  3. Merge bitcoin#22249: test: kill process group to avoid dangling proce…

    …sses when using `--failfast`
    
    451b96f test: kill process group to avoid dangling processes (S3RK)
    
    Pull request description:
    
      This is an alternative to bitcoin#19281
    
      This PR fixes a problem when after test failure with `--failfast` option there could be dangling nodes. The nodes will continue to occupy rpc/p2p ports on the machine and will cause further test failures.
    
      If there are any dangling nodes left at the end of the test run we kill the whole process group.
      Pros: the operations is immediate and won't lead to CI timeout
      Cons: the test_runner process is also killed and exit code is 137
    
      Example output:
      ```
      ...
      Early exiting after test failure
    
      TEST                           | STATUS    | DURATION
    
      rpc_decodescript.py            | ✓ Passed  | 2 s
      rpc_deprecated.py              | ✓ Passed  | 2 s
      rpc_deriveaddresses.py         | ✓ Passed  | 2 s
      rpc_dumptxoutset.py            | ✖ Failed  | 2 s
    
      ALL                            | ✖ Failed  | 8 s (accumulated)
      Runtime: 4 s
    
      Killed: 9
      > echo $?
      137
      ```
    
    ACKs for top commit:
      MarcoFalke:
        review ACK 451b96f
      aitorjs:
        ACK 451b96f. Manual testing with and without **--failfast**.
    
    Tree-SHA512: 87e510a1411b9e7571e63cf7ffc8b9a8935daf9112ffc0f069d6c406ba87743ec439808181f7e13cb97bb200fad528589786c47f0b43cf3a2ef0d06a23cb86dd
    MarcoFalke authored and PastaPastaPasta committed Jun 10, 2023
    Configuration menu
    Copy the full SHA
    ddcaadd View commit details
    Browse the repository at this point in the history
  4. Merge bitcoin#22576: doc: Update high-level addrman description

    036d7ea doc: Correct description of CAddrMan::Create() (Amiti Uttarwar)
    318176a doc: Update high-level addrman description (Martin Zumsande)
    
    Pull request description:
    
      The high-level description of `addrman` has outdated information with respect to the eviction behavior, both for the New and Tried tables (at least since dashpay#5941) - this has confused me in the past.
    
      This PR corrects this and also adds basic info about the bucket size and position.
    
    ACKs for top commit:
      amitiuttarwar:
        reACK 036d7ea
      jnewbery:
        ACK 036d7ea
    
    Tree-SHA512: 3f0635d765f5e580a1fae31187742a833cef66ef2286d40eeb28f2253521260038e16e5f1a65741464a2ddfdbeb5c0f1bc38bf73841e600639033d59c3c534e4
    fanquake authored and PastaPastaPasta committed Jun 10, 2023
    Configuration menu
    Copy the full SHA
    a0984bb View commit details
    Browse the repository at this point in the history
  5. Merge bitcoin#22631: doc: Add packages that provide Qt Wayland plugin…

    … for Linux
    
    5559cf1 doc: Add packages that provide Qt Wayland plugin for Linux (Hennadii Stepanov)
    
    Pull request description:
    
      When building on Linux using system packages (without depends) the support of Wayland protocol for modern desktop environments (e.g., GNOME, KDE Plasma) depends on the presence of the installed Qt Wayland plugin which is loaded dynamically at the GUI startup.
    
      1. On Debian/Ubuntu, the [`qtwayland5`](https://packages.ubuntu.com/focal/qtwayland5) package is required (also see this [patch](https://codereview.qt-project.org/c/qt/qtbase/+/231227), and this [doc](https://wiki.debian.org/Wayland#Qt_.28supported_since_5.29)):
      - with `qtwayland5` installed:
      ```
      $ QT_QPA_PLATFORM="wayland;xcb" ./src/qt/bitcoin-qt -printtoconsole
      Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
      2021-08-05T09:51:31Z Bitcoin Core version v22.99.0-c4b42aa4ffa1 (release build)
      2021-08-05T09:51:31Z Qt 5.11.3 (dynamic), plugin=wayland (dynamic)
      2021-08-05T09:51:31Z No static plugins.
      2021-08-05T09:51:31Z Style: fusion / QFusionStyle
      2021-08-05T09:51:31Z System: Debian GNU/Linux 10 (buster), x86_64-little_endian-lp64
      ...
      ```
    
      - without `qtwayland5`:
      ```
      $ QT_QPA_PLATFORM="wayland;xcb" ./src/qt/bitcoin-qt -printtoconsole
      Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
      qt.qpa.plugin: Could not find the Qt platform plugin "wayland" in ""
      2021-08-05T09:48:55Z Bitcoin Core version v22.99.0-c4b42aa4ffa1 (release build)
      2021-08-05T09:48:55Z Qt 5.11.3 (dynamic), plugin=xcb (dynamic)
      2021-08-05T09:48:55Z No static plugins.
      2021-08-05T09:48:55Z Style: fusion / QFusionStyle
      2021-08-05T09:48:55Z System: Debian GNU/Linux 10 (buster), x86_64-little_endian-lp64
      2021-08-05T09:48:55Z Screen: XWAYLAND0 1920x1200, pixel ratio=1.0
      ...
      ```
    
      2. On Fedora, the [`qt5-qtwayland`](https://fedora.pkgs.org/34/fedora-x86_64/qt5-qtwayland-5.15.2-4.fc34.x86_64.rpm.html) package is required:
      - with `qt5-qtwayland` installed:
      ```
      $ ./src/qt/bitcoin-qt -printtoconsole
      QSocketNotifier: Can only be used with threads started with QThread
      2021-08-05T08:41:03Z Bitcoin Core version v22.99.0-c4b42aa4ffa1 (release build)
      2021-08-05T08:41:03Z Qt 5.15.2 (dynamic), plugin=wayland (dynamic)
      2021-08-05T08:41:03Z No static plugins.
      2021-08-05T08:41:03Z Style: fusion / QFusionStyle
      2021-08-05T08:41:03Z System: Fedora 34 (Workstation Edition), x86_64-little_endian-lp64
      ...
      ```
      - without `qt5-qtwayland`:
      ```
      $ ./src/qt/bitcoin-qt -printtoconsole
      qt.qpa.plugin: Could not find the Qt platform plugin "wayland" in ""
      2021-08-05T07:50:41Z Bitcoin Core version v22.99.0-c4b42aa4ffa1 (release build)
      2021-08-05T07:50:41Z Qt 5.15.2 (dynamic), plugin=xcb (dynamic)
      2021-08-05T07:50:41Z No static plugins.
      2021-08-05T07:50:41Z Style: fusion / QFusionStyle
      2021-08-05T07:50:41Z System: Fedora 34 (Workstation Edition), x86_64-little_endian-lp64
      2021-08-05T07:50:41Z Screen: XWAYLAND0 1920x1200, pixel ratio=1.0
      ...
      ```
    
    ACKs for top commit:
      fanquake:
        ACK 5559cf1 - I don't think there's any harm to point this out in our Linux build docs. It's not changing our binaries or dependencies in any way.
    
    Tree-SHA512: e26856586b29540b55c12905a091408e95ce59ea2c952520086b41138c955fba1b78e95e868f75205af07c6eccae51644177f7165d837ae058aaf0c0abf3ccf5
    fanquake authored and PastaPastaPasta committed Jun 10, 2023
    Configuration menu
    Copy the full SHA
    e9490c8 View commit details
    Browse the repository at this point in the history
  6. Merge bitcoin#22420: doc: Specifiy how to set the value of TORGROUP

    5984084 Specifies how to set the value of TORGROUP (lsilva01)
    
    Pull request description:
    
      This change just makes it more explicit how to assign the value to the TORGROUP variable.
    
    ACKs for top commit:
      laanwj:
        ACK 5984084
      Zero-1729:
        Concept ACK 5984084
    
    Tree-SHA512: af5cc0f87fa309201b5937a2741dea9374eafc09e84664ca138669c1827ce44fe6d25e3853d53ed2c838321aa4b28c6fd9d8dbe23f7194fdd6559d49453416e4
    laanwj authored and PastaPastaPasta committed Jun 10, 2023
    Configuration menu
    Copy the full SHA
    1965109 View commit details
    Browse the repository at this point in the history
  7. Merge bitcoin#23464: doc: remove mention of system univalue from buil…

    …d-unix.md
    
    78e3670 doc: remove mention of system univalue (fanquake)
    
    Pull request description:
    
      Should have been part of bitcoin#22646.
    
    ACKs for top commit:
      hebasto:
        ACK 78e3670
    
    Tree-SHA512: a5d54d73526033825ce4467cc3c57c26064739eef546556975a4c6f1f5bea84004640acd426734f90f98bc7a76ec837d716aa31167f2bdce7ee3887ad92e3152
    fanquake authored and PastaPastaPasta committed Jun 10, 2023
    Configuration menu
    Copy the full SHA
    c8ca9cd View commit details
    Browse the repository at this point in the history
  8. Merge bitcoin#23128: doc: Remove TODO 'exclude peers with download pe…

    …rmission'
    
    2f97c11 doc: Remove TODO 'exclude peers with download permission' (Douglas Chimento)
    
    Pull request description:
    
      Following from PR bitcoin#23109
      The [TODO](https://github.com/bitcoin/bitcoin/blob/master/src/net.cpp#L2872)  is no longer necessary.
      Removing it to  prevent future confusion.
    
    Top commit has no ACKs.
    
    Tree-SHA512: c2f4c3eae951d13d623e1b4bd9315804ec33473e501367f89edae80fa446674edc71549e145f058fe7126b8588790dc895d6ea3dfb4347ceeca61f5e5f2f95cc
    MarcoFalke authored and PastaPastaPasta committed Jun 10, 2023
    Configuration menu
    Copy the full SHA
    542fbdc View commit details
    Browse the repository at this point in the history
  9. Merge bitcoin#27361: guix: use python-minimal (3.9)

    d0e571e guix: use python-minimal (3.9) (fanquake)
    
    Pull request description:
    
      This further minifies the Guix release build environment.
    
    ACKs for top commit:
      TheCharlatan:
        ACK d0e571e
      hebasto:
        ACK d0e571e
    
    Tree-SHA512: 0a8aa9ae861107f106c3b9c41f78ffbaf0e71e3c61f6d96e5c82415b4570b8ac85d6578d37cd0df0ec315c1c9f35fc90b281f139271ccfd15a1495ba76166789
    fanquake authored and PastaPastaPasta committed Jun 10, 2023
    Configuration menu
    Copy the full SHA
    14e18f8 View commit details
    Browse the repository at this point in the history
  10. Merge bitcoin#27172: guix: switch to some minimal versions of packa…

    …ges in our manifest
    
    2c9eb4a guix: use cmake-minimal over cmake (fanquake)
    1475515 guix: use coreutils-minimal over coreutils (fanquake)
    4445621 guix: use bash-minimal over bash (fanquake)
    
    Pull request description:
    
      Minimal versions of the same packages, that should still be sufficient for our use:
    
      > (define-public bash-minimal
        ;; A stripped-down Bash for non-interactive use.
    
      > (define-public coreutils-minimal
        ;; Coreutils without its optional dependencies.
    
      > ;;; This minimal variant of CMake does not include the documentation.  It is
      ;;; used by the cmake-build-system.
      (define-public cmake-minimal
    
    ACKs for top commit:
      TheCharlatan:
        ACK 2c9eb4a
      Sjors:
        tACK 2c9eb4a
      achow101:
        ACK 2c9eb4a
      hebasto:
        ACK 2c9eb4a,
    
    Tree-SHA512: f91ca9e088b8346b20c2affc80870c31640de3aedcfcc0fb98a5e82c77ef64537870b88552f26759d31d8d0956b1fd685e6c25d5acbc92f5feaececd1a7dd37e
    achow101 authored and PastaPastaPasta committed Jun 10, 2023
    Configuration menu
    Copy the full SHA
    8f5ffef View commit details
    Browse the repository at this point in the history
  11. Merge pull request dashpay#5421 from PastaPastaPasta/develop-trivial-…

    …2023-06-07
    
    backport: trivial backports June 8th
    PastaPastaPasta authored Jun 10, 2023
    Configuration menu
    Copy the full SHA
    12d50c8 View commit details
    Browse the repository at this point in the history

Commits on Jun 11, 2023

  1. feat: use m_protxHash instead of masternodeOutpoint for hashing dsq a…

    …nd dstx after v19 activation (dashpay#5404)
    
    ## Issue being fixed or feature implemented
    Should fix dashpay#5401 with minimal potential coinjoin service interruption
    (~1 minute around v19 fork point) for up to date clients. Fully
    backwards compatible prior to v19 activation. Old clients won't be able
    to mix after v19 activation though until they implement similar changes.
    _EDIT: Actually, this is already the case cause bls sigs are going to
    change too._ And I think we should also be able to finally drop
    `masternodeOutpoint` from `CCoinJoinQueue` and `CCoinJoinBroadcastTx`
    once v19 is active because of that which would be a nice bonus.
    
    cc @HashEngineering
    
    ## What was done?
    re-use v19 activation to switch `GetSignatureHash` logic
    
    ## How Has This Been Tested?
    mixing on mainnet
    
    ## Breaking Changes
    mixing won't work on current testnet until MNs are updated 
    
    ## 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)_
    UdjinM6 authored Jun 11, 2023
    Configuration menu
    Copy the full SHA
    599fd87 View commit details
    Browse the repository at this point in the history
  2. fix: simplify/fix CleanupCache logic

    tip: it was originally designed to be called for every block but 4743 changed that so the old logic no longer applies.
    the second condition: well, it's just wrong.
    UdjinM6 committed Jun 11, 2023
    Configuration menu
    Copy the full SHA
    35b0d5f View commit details
    Browse the repository at this point in the history
  3. fix: adjust llmq_max_blocks()

    UdjinM6 committed Jun 11, 2023
    Configuration menu
    Copy the full SHA
    86e8556 View commit details
    Browse the repository at this point in the history
  4. Merge pull request dashpay#5410 from UdjinM6/fix_dmnl_cache_issues

    fix: resolve two DMNL cache issues
    UdjinM6 authored Jun 11, 2023
    Configuration menu
    Copy the full SHA
    5e18a7f View commit details
    Browse the repository at this point in the history
  5. fix: multiple 5403 followups (dashpay#5424)

    ## Issue being fixed or feature implemented
    - CBLSLazyWrapper is doing to much and not enough at the same time
    - nVersion assignment in CDeterministicMNState(Diff) is incomplete
    - pubKeyOperator deserialization needs nVersion but nVersion is deser-ed
    much later
    - protx rpcs are implicitly converting pubKeyOperator (by forcing
    nVersion=2), they shouldn't do that
    
    ## What was done?
    pls see individual commits
    
    ## How Has This Been Tested?
    - [x] run tests locally 
    - [x] reindex on testnet:
      - [x] with and without `--assumevalid=0` to the tip
      - [x] with 19.1 almost to the forkpoint, then with this version
    - [x] reindex on mainnet:
      - [x] with and without `--assumevalid=0` to the tip
      - [x] with 19.1 to height 1100000+, then with this version
    
    ## Breaking Changes
    might need reindexing if you were running develop on testnet already
    
    ## 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 _(for repository
    code-owners and collaborators only)_
    UdjinM6 authored Jun 11, 2023
    Configuration menu
    Copy the full SHA
    cc2479a View commit details
    Browse the repository at this point in the history
  6. feat: store protx version in CSimplifiedMNListEntry and use it to ser…

    …/deser pubKeyOperator (dashpay#5397)
    
    ## Issue being fixed or feature implemented
    Mobile wallets would have to convert 4k+ pubkeys at the V19 fork point
    and it's a pretty hard job for them that can easily take 10-15 seconds
    if not more. Also after the HF, if a masternode list is requested from
    before the HF, the operator keys come in basic scheme, but the
    merkelroot was calculated with legacy. From mobile team work it wasn't
    possible to convert all operator keys to legacy and then calculate the
    correct merkleroot.
    
    ~This PR builds on top of ~dashpay#5392~ dashpay#5403 (changes that belong to this PR:
    26f7e96 and
    4b42dc8) and aims to solve both of
    these issues.~
    
    cc @HashEngineering @QuantumExplorer 
    
    ## What was done?
    Introduce `nVersion` on p2p level for every CSimplifiedMNListEntry. Set
    `nVersion` to the same value we have it in CDeterministicMNState i.e.
    pubkey serialization would not be via basic scheme only after the V19
    fork, it would match the way it’s serialized on-chain/in
    CDeterministicMNState for that specific MN.
    
    ## How Has This Been Tested?
    run tests
    
    ## Breaking Changes
    NOTE: `testnet` is going to re-fork at v19 forkpoint because
    `merkleRootMNList` is not going to match
    
    ## 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
    - [ ] I have assigned this pull request to a milestone _(for repository
    code-owners and collaborators only)_
    UdjinM6 authored Jun 11, 2023
    Configuration menu
    Copy the full SHA
    a760e33 View commit details
    Browse the repository at this point in the history

Commits on Jun 12, 2023

  1. Configuration menu
    Copy the full SHA
    6254074 View commit details
    Browse the repository at this point in the history
  2. fix: off-by-1 in unordered_lru_cache

    we should be truncating after (potentially) adding new element, not before we even tried to do so
    UdjinM6 committed Jun 12, 2023
    Configuration menu
    Copy the full SHA
    4921903 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    16418d3 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    8a39118 View commit details
    Browse the repository at this point in the history
  5. fix(wallet): do not count DBKeys::PRIVATESEND_SALT and `DBKeys::COI…

    …NJOIN_SALT` keys as unknown
    
    Before: `Unknown wallet records: 2`
    After: `Unknown wallet records: 0`
    UdjinM6 committed Jun 12, 2023
    Configuration menu
    Copy the full SHA
    6f639ea View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    d53e657 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    fba5d06 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    d8f2fe7 View commit details
    Browse the repository at this point in the history
  9. fix(qt): actually open debug console and not info tab

    this fix is for tray icon menu
    UdjinM6 committed Jun 12, 2023
    Configuration menu
    Copy the full SHA
    d2bdc42 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    9e862c1 View commit details
    Browse the repository at this point in the history
  11. Merge pull request dashpay#5425 from UdjinM6/multi_fixes

    fix: Various small fixes
    UdjinM6 authored Jun 12, 2023
    Configuration menu
    Copy the full SHA
    a99fd92 View commit details
    Browse the repository at this point in the history
  12. chore: update defaultAssumeValid, nMinimumChainWork, checkpointData a…

    …nd chainTxData for testnet (dashpay#5428)
    
    ## Issue being fixed or feature implemented
    Having these above v19 forkpoint (850100) would result in v19.2 nodes
    forking at the wrong height (864000) when reindexing without
    `--assumevalid=<0 or some pre-v19 block height>`
    
    ## What was done?
    Go back to pre-v19 block (850000) in chainparams
    
    ## How Has This Been Tested?
    reindex
    
    ## 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)_
    UdjinM6 authored Jun 12, 2023
    Configuration menu
    Copy the full SHA
    492b1c1 View commit details
    Browse the repository at this point in the history
  13. chore: update defaultAssumeValid, nMinimumChainWork, checkpointData a…

    …nd chainTxData for testnet (again) (dashpay#5430)
    
    ## Issue being fixed or feature implemented
    Same as dashpay#5428 but with a lower block number this time. This should let
    us simply reorg testnet with 18.2.2 at deeper blocks instead of bumping
    v19 testnet activation params for 19.2.
    
    ## 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)_
    UdjinM6 authored Jun 12, 2023
    Configuration menu
    Copy the full SHA
    f5ba5f5 View commit details
    Browse the repository at this point in the history

Commits on Jun 13, 2023

  1. fix: off-by-one in the way we use v19 activation helpers (dashpay#5431)

    ## Issue being fixed or feature implemented
    Some conditions won't trigger when reorging exactly from the forkpoint
    
    ## What was done?
    pls see individual commits, tl;dr: you can't get correct results with
    `GetAncestor` cause the answer is in the future
    
    ## How Has This Been Tested?
    reorg to 850000 and back on testnet
    ```
    invalidateblock 0000003eddb94218e7a3f41b2ac6e26143f8a748b50cd26e86bdbbab9ebe50aa
    reconsiderblock 0000003eddb94218e7a3f41b2ac6e26143f8a748b50cd26e86bdbbab9ebe50aa
    ```
    this fails on develop and work with this patch
    
    ## 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)_
    UdjinM6 authored Jun 13, 2023
    Configuration menu
    Copy the full SHA
    aa91946 View commit details
    Browse the repository at this point in the history

Commits on Jun 17, 2023

  1. chore(rpc): remove collateral amount from help (dashpay#5438)

    ## Issue being fixed or feature implemented
    Removed collateral amount from help text for `protx register_fund_hpmn`
    RPC.
    
    ## What was done?
    
    ## 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)_
    ogabrielides authored Jun 17, 2023
    Configuration menu
    Copy the full SHA
    43067a7 View commit details
    Browse the repository at this point in the history
  2. chore(rpc): few cleanups in evo rpc help texts (dashpay#5439)

    ## Issue being fixed or feature implemented
    fix a couple of issues in help texts
    
    develop:
    ```
    protx register "collateralHash" collateralIndex "ipAndPort" "ownerAddress" "operatorPubKey_register" "votingAddress_register" "operatorReward" "payoutAddress_register" ( "feeSourceAddress" submit )
    ...
    3. ipAndPort                  (string, required) IP and port in the form "IP:PORT".
                                  Must be unique on the network. Can be set to 0, which will require a ProUpServTx afterwards.
    ...
    5. operatorPubKey_register    (string, required) The operator BLS public key. The BLS private key does not have to be known.
                                  It has to match the BLS private key which is later used when operating the masternode.
    6. votingAddress_register     (string, required) The voting key address. The private key does not have to be known by your wallet.
                                  It has to match the private key which is later used when voting on proposals.
                                  If set to an empty string, ownerAddress will be used.
    7. operatorReward             (string, required) The fraction in %% to share with the operator. The value must be
                                  between 0.00 and 100.00.
    8. payoutAddress_register     (string, required) The dash address to use for masternode reward payments.
    ...
    ```
    ```
    protx update_service "proTxHash" "ipAndPort" "operatorKey" ( "operatorPayoutAddress" "feeSourceAddress" )
    ...
    2. ipAndPort                (string, required) IP and port in the form "IP:PORT".
                                Must be unique on the network. Can be set to 0, which will require a ProUpServTx afterwards.
    ...
    ```
    fe95dfd:
    ```
    protx register "collateralHash" collateralIndex "ipAndPort" "ownerAddress" "operatorPubKey" "votingAddress" "operatorReward" "payoutAddress" ( "feeSourceAddress" submit )
    ...
    3. ipAndPort           (string, required) IP and port in the form "IP:PORT". Must be unique on the network.
                           Can be set to an empty string, which will require a ProUpServTx afterwards.
    ...
    5. operatorPubKey      (string, required) The operator BLS public key. The BLS private key does not have to be known.
                           It has to match the BLS private key which is later used when operating the masternode.
    6. votingAddress       (string, required) The voting key address. The private key does not have to be known by your wallet.
                           It has to match the private key which is later used when voting on proposals.
                           If set to an empty string, ownerAddress will be used.
    7. operatorReward      (string, required) The fraction in %% to share with the operator.
                           The value must be between 0 and 10000.
    8. payoutAddress       (string, required) The dash address to use for masternode reward payments.
    ...
    ```
    ```
    protx update_service "proTxHash" "ipAndPort" "operatorKey" ( "operatorPayoutAddress" "feeSourceAddress" )
    ...
    2. ipAndPort                (string, required) IP and port in the form "IP:PORT". Must be unique on the network.
    ...
    ```
    ## What was done?
    pls see individual commits
    
    ## How Has This Been Tested?
    run `dash-qt`, check `help <cmd>` response
    
    ## 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)_
    UdjinM6 authored Jun 17, 2023
    Configuration menu
    Copy the full SHA
    35d3cb9 View commit details
    Browse the repository at this point in the history
  3. chore: prettify json representations of CSimplifiedMNListEntry and CS…

    …implifiedMNListDiff (dashpay#5434)
    
    ## Issue being fixed or feature implemented
    Should fix
    dashpay#5424 (comment) and
    make `CSimplifiedMNListEntry`'s json a bit more human-friendly (imo) by
    having `nVersion` and `nType` at the top of it.
    
    Move `nVersion` up for `CSimplifiedMNListDiff` too.
    
    NOTE: `nVersion` wasn't actually duplicated in rpc results, it was
    simply assigned twice inside. still not nice though.
    
    Thanks @thephez ! 👍 
    
    ## 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)_
    UdjinM6 authored Jun 17, 2023
    Configuration menu
    Copy the full SHA
    b3f1d1c View commit details
    Browse the repository at this point in the history
  4. chore: update chainparams for v19.2 release (dashpay#5441)

    ## Issue being fixed or feature implemented
    bump chainparams to some post failed-v19-fork block on mainnet and post
    recent-v19-fork block on testnet
    
    ## What was done?
    
    
    ## 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)_
    UdjinM6 authored Jun 17, 2023
    Configuration menu
    Copy the full SHA
    5fa9d32 View commit details
    Browse the repository at this point in the history
  5. chore: run gen-manpages.sh for v19.2 (dashpay#5442)

    ## Issue being fixed or feature implemented
    
    ## What was done?
    
    ## 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)_
    UdjinM6 authored Jun 17, 2023
    Configuration menu
    Copy the full SHA
    7e23098 View commit details
    Browse the repository at this point in the history

Commits on Jun 18, 2023

  1. Configuration menu
    Copy the full SHA
    b1dd417 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1158ebb View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    569188e View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    1aa7bdd View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    cceee36 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    80d06e8 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    f739811 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    f4799b1 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    51db005 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    7110c36 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    7900670 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    817eb46 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    cc9f59d View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    17103b9 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    edf48e4 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    808367d View commit details
    Browse the repository at this point in the history
  17. merge bitcoin#25006: consolidate kernel headers to 5.15, specify 3.2.…

    …0 as minimum supported
    kwvg authored and PastaPastaPasta committed Jun 18, 2023
    Configuration menu
    Copy the full SHA
    4a36086 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    fe4b87c View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    cc1fcb0 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    51675ee View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    a283002 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    7031688 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    d159340 View commit details
    Browse the repository at this point in the history

Commits on Jun 19, 2023

  1. Configuration menu
    Copy the full SHA
    36399cc View commit details
    Browse the repository at this point in the history
  2. Merge pull request dashpay#5445 from UdjinM6/merge_master_19.2.0

    chore: Merge master 19.2.0 back into develop
    UdjinM6 authored Jun 19, 2023
    Configuration menu
    Copy the full SHA
    66d0981 View commit details
    Browse the repository at this point in the history
  3. feat: Allow mining blocks of a specific version on non-mainnet networ…

    …ks (dashpay#5433)
    
    ## Issue being fixed or feature implemented
    Mining blocks with a specific version can be useful on testnet and
    devnets too
    
    ## What was done?
    lift restrictions for `-blockversion`
    
    ## How Has This Been Tested?
    it should just work :)
    
    ## 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)_
    UdjinM6 authored Jun 19, 2023
    Configuration menu
    Copy the full SHA
    ce60071 View commit details
    Browse the repository at this point in the history
  4. docs: add 2 more contributors to 19.2.0 release notes (dashpay#5446)

    ## Issue being fixed or feature implemented
    @ogabrielides @kittywhiskers I somehow failed to add you guys to the
    list of v19.2 contributors 🙈 sorry!
    
    ## What was done?
    
    
    ## 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)_
    UdjinM6 authored Jun 19, 2023
    Configuration menu
    Copy the full SHA
    33d5161 View commit details
    Browse the repository at this point in the history

Commits on Jun 21, 2023

  1. fix: do not check chainlock state in IsTxSafeForMining (dashpay#5444)

    ## Issue being fixed or feature implemented
    Disabled or non-enforced Chainlocks does not mean you can safely mine
    non-locked txes, you could end up mining a block that is going to be
    rejected by everyone else if a conflicting tx (missing on your node)
    would be IS-locked. I can't find any reason why we have this besides "if
    Chainlocks are disabled then smth is wrong so let them all be mined" but
    we have spork_2 and spork_3 to control IS behaviour and we check them in
    `IsTxSafeForMining` already, that would be a much more straightforward
    way to deal with a potential issue.
    
    Noticed this while reviewing dashpay#5150 and also while testing v19.2 during
    recent testnet v19 re-fork.
    
    ## What was done?
    Drop this check, adjust tests
    
    ## How Has This Been Tested?
    Run tests locally
    
    ## Breaking Changes
    Not quote breaking changes but a change in behaviour: with CLs disabled
    it will now take 10 minutes for non-locked txes to be mined, same as
    when CLs are enabled.
    
    ## 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)_
    UdjinM6 authored Jun 21, 2023
    Configuration menu
    Copy the full SHA
    55008b0 View commit details
    Browse the repository at this point in the history

Commits on Jun 22, 2023

  1. feat(rpc): Ability to filter HPMNs in masternodelist and protx list r…

    …pcs (dashpay#5447)
    
    ## Issue being fixed or feature implemented
    Added the filter `hpmn` for both `masternodelist` and `protx list` rpcs.
    
    ## What was done?
    
    ## How Has This Been Tested?
    
    Calling this RPC on Testnet.
    
    ## 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
    - [x] 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)_
    
    ---------
    
    Co-authored-by: UdjinM6 <[email protected]>
    ogabrielides and UdjinM6 authored Jun 22, 2023
    Configuration menu
    Copy the full SHA
    3e29e8f View commit details
    Browse the repository at this point in the history

Commits on Jun 26, 2023

  1. feat: mnlistdiff move nversion to first position (dashpay#5450)

    ## Issue being fixed or feature implemented
    
    Version field should always be the first field of a message for better
    readibility.
    
    ## What was done?
    
    - Introduced new protocol version `MNLISTDIFF_VERSION_ORDER` (`70229`).
    - `nVersion` serialisation order is changed for clients with protocol
    version greater than or equal to `70229`.
    - For clients with protocol version >= `70225` and < `70229` the old
    order is used: can be deprecated in the future.
    - Increased functional test P2P mininode's protocol version to `70229`.
    
    ## How Has This Been Tested?
    `feature_llmq_rotation.py` with new protocol version.
    
    ## 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
    - [x] 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)_
    ogabrielides authored Jun 26, 2023
    Configuration menu
    Copy the full SHA
    0e53540 View commit details
    Browse the repository at this point in the history

Commits on Jun 27, 2023

  1. Configuration menu
    Copy the full SHA
    38b8344 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ddb38f4 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    7399ea5 View commit details
    Browse the repository at this point in the history
  4. Merge pull request dashpay#5449 from kittywhiskers/alpine_guix

    build: add ability to interactively run guix builds, use container that has unprivileged user
    PastaPastaPasta authored Jun 27, 2023
    Configuration menu
    Copy the full SHA
    e1e07c3 View commit details
    Browse the repository at this point in the history
  5. feat: introduce wipewallettxes RPC and wipetxes command for `dash…

    …-wallet` tool (dashpay#5451)
    
    ## Issue being fixed or feature implemented
    Given the hard fork that happened on testnet, there is now lots of the
    transactions that were made on the fork that is no longer valid. Some
    transactions could be relayed and mined again but some like coinjoin
    mixing won't be relayed because of 0 fee and transactions spending
    coinbases from the forked branch are no longer valid at all.
    
    ## What was done?
    Introduce `wipewallettxes` RPC and `wipetxes` command for `dash-wallet`
    tool to be able to get rid of some/all txes in the wallet.
    
    ## How Has This Been Tested?
    run tests, use rpc/command on testnet wallet
    
    ## 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)_
    UdjinM6 authored Jun 27, 2023
    Configuration menu
    Copy the full SHA
    78fa019 View commit details
    Browse the repository at this point in the history

Commits on Jun 28, 2023

  1. feat(wallet): try batching multiple wallet db operations when possibl…

    …e, avoid wasting cpu cycles in AddToWalletIfInvolvingMe (dashpay#5452)
    
    ## Issue being fixed or feature implemented
    It's super slow for wallets with 100.000s of keys and txes to reindex
    and to rescan. Batching multiple operations fixes it. In my case (300K+
    keys and 500k+ txes testnet wallet) `rescanblockchain` time is down from
    6+ hours to ~10 minutes.
    
    Re-calculating `block_time` over and over again inside of the loop in
    `AddToWalletIfInvolvingMe` is wasteful, move it out.
    
    ## What was done?
    batch what's possible, optimize `AddToWalletIfInvolvingMe`
    
    ## How Has This Been Tested?
    running on top of dashpay#5451 , wiping and rescanning w/ and w/out this patch.
    
    ## Breaking Changes
    should be none
    
    ## 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)_
    UdjinM6 authored Jun 28, 2023
    Configuration menu
    Copy the full SHA
    9138ff7 View commit details
    Browse the repository at this point in the history
  2. feat(qt): refresh the whole wallet instead of processing individual u…

    …pdates for huge notification queues (dashpay#5453)
    
    ## Issue being fixed or feature implemented
    It's super slow for wallets with 100.000s of txes to process lots of
    notifications produced by rescan. Skip them all and simply refresh the
    whole wallet instead. In my case (500k+ txes testnet wallet) gui update
    after `rescanblockchain` time is down from _forever_ to ~30 seconds.
    Same for `wipewallettxes true` (dashpay#5451 ). Gui update after
    `wipewallettxes`/`wipewallettxes false` is instant (cause there are no
    txes anymore) vs _forever_ before the patch.
    
    
    ## What was done?
    refresh the whole wallet when notification queue is above 10K operations
    
    actual changes (ignoring whitespaces):
    dashpay@d013cb4?w=1
    
    ## How Has This Been Tested?
    running on top of dashpay#5451 and dashpay#5452 , wiping and rescanning w/ and w/out
    this patch.
    
    ## Breaking Changes
    should be none
    
    
    ## 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)_
    UdjinM6 authored Jun 28, 2023
    Configuration menu
    Copy the full SHA
    7f40682 View commit details
    Browse the repository at this point in the history
  3. fix: Allow tx index to catch up with the block index in TestChainSetu…

    …p dtor (dashpay#5454)
    
    ## Issue being fixed or feature implemented
    TL;DR: Should hopefully fix crashes like
    https://gitlab.com/dashpay/dash/-/jobs/4522256293
    
    In dashd we flush all callbacks first and then destroy `g_txindex`. In
    tests we had to move `g_txindex` to `TestChainSetup` and its dtor is
    executed first, so the order is broken. It also explains why this crash
    happens so rare. In most cases tx index is up to date and you need some
    kind of a hiccup for scheduler to lag behind a bit. Basically, between
    `g_txindex.reset()` and `FlushBackgroundCallbacks`
    `BaseIndex::BlockConnected` finally arrives. But it’s processed on a
    (now) null instance hence a crash. If it’s earlier - it’s processed
    normally, if it’s later - it’s flushed without execution, so there is a
    tiny window to catch this crash.
    
    ## What was done?
    Give tx index a bit of time to process everything
    
    ## How Has This Been Tested?
    run tests (but this crash is rare 🤷‍♂️ )
    
    ## 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 _(for repository
    code-owners and collaborators only)_
    UdjinM6 authored Jun 28, 2023
    Configuration menu
    Copy the full SHA
    a65b1fb View commit details
    Browse the repository at this point in the history
  4. feat(wallet): TopUpKeyPool improvements (dashpay#5456)

    ## Issue being fixed or feature implemented
    - make progress calculations sane
    - show progress in GUI but only when you need 100+ new keys
    - make it stop on shutdown request
    - spam less in debug.log
    
    ## What was done?
    
    
    ## How Has This Been Tested?
    run tests, run `keypoolrefill` with `1100` (add 100 keys, no gui popup)
    and `10000` (100+ keys, progress bar) on testnet wallet, check logs,
    verify it can be interrupted on shutdown
    
    ## 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)_
    UdjinM6 authored Jun 28, 2023
    Configuration menu
    Copy the full SHA
    bfa585d View commit details
    Browse the repository at this point in the history
  5. feat(wallet): make mnemonic bits tweakable, default to 128 bit / 12 w…

    …ords (dashpay#5457)
    
    ## Issue being fixed or feature implemented
    Allow generating 12, 18, 24 words mnemonics. Default to 12 words as it's
    the most popular option/de-facto a standard now imo.
    
    ## What was done?
    Add `-mnemonicbits` option, add tests
    
    ## How Has This Been Tested?
    run tests, play with wallets on regtest
    
    ## Breaking Changes
    n/a, old wallets should not be affected
    
    ## 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 _(for repository
    code-owners and collaborators only)_
    UdjinM6 authored Jun 28, 2023
    Configuration menu
    Copy the full SHA
    d97ec35 View commit details
    Browse the repository at this point in the history
  6. build: follow up to dashpay#5449. implementing suggestions and dedupl…

    …ication (dashpay#5464)
    
    ## Additional Information
    
    * Based on suggestions by @knst made
    [here](dashpay#5449 (comment))
    and
    [here](dashpay#5426 (comment))
    kwvg authored Jun 28, 2023
    Configuration menu
    Copy the full SHA
    63c4e24 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    0b3ab8d View commit details
    Browse the repository at this point in the history
  8. Squashed 'src/dashbls/' changes from 9329803969..795660db76

    795660db76 chore: bump version to 1.3.0 (dashpay#84)
    e8743b0139 Merge pull request dashpay#83 from UdjinM6/bp_370_371
    72f0ad2d37 fix: add missing destructor for CoreMPL and final for nested classes (dashpay#371)
    2f05059c60 Fix a typo in class PrivateKey testcase. (dashpay#370)
    851c2c8f68 fix: reading unitialized memory from Util::HasOnlyZeros in G2Element deserialization (dashpay#77)
    4dd28e9016 fix: js bindings build (dashpay#82)
    3697c51521 fix: dash is no more pretending being a 'libdashbls' (dashpay#76)
    37c53141d3 feat: implement memory-copy only of G1Element and G2Element (dashpay#74)
    97ac99e8e6 build(bls-dash-sys): ignore wasm32 target arch (dashpay#70)
    2d494d351e Merge pull request dashpay#71 from dashpay/feat/threshold_bindings
    67fb70d40b chore: revert permission changes in bcce0b214876c0d9e668baaa30a48542b496cda2
    5a58fce0ea fix: resolve rust-bindings compilation failure
    8604e03761 build: fix cmake build error
    c25957edf0 Merge remote-tracking branch 'dash/develop' into feat/threshold_bindings2
    198e246f07 added a helper for verifying a message
    a4b8a5dd6e added a helper for verifying a message
    2d783c985e added a helper for signing from the private key
    16f7873d6a changed to using a slice for recovery
    a23d9708c0 feat: clone
    0cf8a8eb96 feat: serde
    47829e3e75 threshold_recovery functions
    a5589e6fc8 fix: bls extended private key size
    1ceaab56e3 [add cpp targts]
    86eb28e2d7 [fix linker path for cpp]
    85debcab29 [include 'src' into build]
    f956c66b90 [switch into cc]
    9ecb59bf9b [test linker]
    3651a0fd79 [linker change]
    d8564679eb [fix: iossim]
    c829d4b6f1 [fix: aarch64-apple-darwin trigger]
    fc3509e901 [chore: silence warning]
    79ce6ded50 [feat: apple build for single platform+arch]
    e580cb76db [feat: build for apple target]
    17b2168955 feat: verifySecure method for BasicSchemeMPL in js bindings (dashpay#69)
    4613425b60 chore: silence rust warnings
    136d762607 [fix: target_arch]
    0d8c8e9d41 [try to use ios.toolchain]
    bd441623df [back]
    8137f48897 [change relic src]
    bdcba81d41 test: check patched relic
    32b7f56d94 Merge pull request dashpay#1 from dashevo/rust-bindings-enhancement
    6d359c6201 chore: test for extended private key from short seed
    1cbeffe159 chore: add binding
    dace793a1a fix: same as previous: BIP32ExtendedPrivateKeyFromSeed with len
    65c84d063c fix: ok now add second blank line
    24b25bac2d fix: now try from typing import Union
    fe16287182 fix: try Union[Fq2, None]
    3ffc96d409 fix: None
    2d669a2cf8 chore: up version
    fbb5a43b19 fix: pass length PrivateKeyFromSeedBIP32
    5822076d1a chore: cargo:fmt
    a8d3a7e956 test: add keys multiplication test
    4b85f08937 fix: exchange keys when multiply
    0bcefc68cb chore: add imports
    7380332123 [chore: add binding for G1ElementMul]
    881e6d7676 patch relic to be compatible with wasm
    bcce0b2148 chore: fix mode
    02801cf973 add deeper checks to example project
    6d25c60ee5 compilation fixes
    a4cebb4025 refactor: remove "C" prefix
    995ef3796f refactor: bip32 feature
    7ea0c34938 style: remove `get` prefix from getters
    e316c00f7b add VerifySecure
    da5536e1c5 feat: introduce PrivateKey::from_bip32_seed
    4f03a1a1ae export legacy scheme
    5c19e314d4 add extended private key
    cc081c0956 feat: add G1 element's fingerprint and generate methods
    f3e85b46d0 refactor: move back re-exports
    e8155b4bdb refactor: move legacy code to submodule
    f6e173242e add extendedpublickey
    4f823249fb feat: legacy serialize and deserialize methods
    90fd9f9c2c fix: comparison int with size_t
    57237e5e87 Merge branch 'rust-bindings' of github.com:dashevo/bls-signatures into rust-bindings
    a1f862480b refactor: implement Deref trait for SecureBox
    0b6f94e41f add LegacySchemeMPL
    aa19a77a40 refactor: small refactoring
    dae8b31042 make schemes public
    827d1ed162 add hdkeys
    7b4ffae5ec improve agg sig test
    18057687be add basic scheme
    3e4fdda2bd aggregates
    61a4d791c9 elements ser/de
    8b5b6301f3 wip
    126b7becea wip
    c49514176e chore: remove autocxx variant
    477c014bb7 refactor: increase `c_err_to_result` readability
    5d52d0e59d Merge remote-tracking branch 'dashevo/rust-bindings' into rust-bindings
    31724b39d1 chore: add example crate
    c04c2941db safe wrappers for simple case
    844779cd81 chore: remove cdylib from bls-signatures
    d622625de4 chore: move all rust stuff into one
    0d3c51106a Merge remote-tracking branch 'dashevo/rust-bindings' into rust-bindings
    ecf0271950 revert: bring back necessary c binding files :)
    20e1cfe37b wip
    654fc5e6a6 chore: remove unnecessary files from c binding
    92ffd63c28 refactor: cargo build script
    1d4d76fb05 chore: remove wrapper.h
    20cc668708 qfix
    abb38804c7 Merge remote-tracking branch 'dashevo/rust-bindings' into rust-bindings
    760a267ab7 build: fix mac related issues
    8b083794a4 add destructors to bls-dash-sys basic test
    6c54f0a01a Merge remote-tracking branch 'dashevo/rust-bindings' into rust-bindings
    fd526ab0db build: pass gmp lib path to build.rs
    a8aaccb510 rust-bindings sign and verify test simple
    8447c1c112 wip bindings test
    9390162e3c wip add rust-bindings tests
    26ab7216c0 revert: bls header path
    db55e40cb0 rename to sys
    96188a6d52 build qfix
    965ac58df4 build: automate build process part 2
    05636207a0 build: automate build process part 1
    73b146a961 experiment cross compiling with autocxx and bindgen
    969e5e2102 experiment cross compiling with autocxx and bindgen
    88ee9d0519 chore: WIP
    525b4d49d9 feat: rust bindings
    
    git-subtree-dir: src/dashbls
    git-subtree-split: 795660db76636c92bea3bfccfee621f1aba371a3
    UdjinM6 committed Jun 28, 2023
    Configuration menu
    Copy the full SHA
    730efde View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    c9d4100 View commit details
    Browse the repository at this point in the history
  10. build: stop tracking cmake dependency relic_conf.h.in

    This reverts commit 0b3ab8d.
    UdjinM6 committed Jun 28, 2023
    Configuration menu
    Copy the full SHA
    a891c78 View commit details
    Browse the repository at this point in the history

Commits on Jun 29, 2023

  1. fix: gcc8 compatibility changes for guix (dashpay#5468)

    ## Issue being fixed or feature implemented
    
    As reported by @kittywhiskers, GCC version 8 complains with `error:
    'this' was not captured for this lambda function`
    
    In order to support old GCC compilers, `this` should be captured
    explicitly.
    
    ## What was done?
    
    Captured `this` explicitly in affected functions: `GetValidMNsCount`,
    `GetAllHPMNsCount`, `GetValidHPMNsCount` and `GetValidWeightedMNsCount`.
    
    ## How Has This Been Tested?
    
    `feature_llmq_hpmn.py` checks MNs count
    
    ## 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)_
    ogabrielides authored Jun 29, 2023
    Configuration menu
    Copy the full SHA
    13d8f41 View commit details
    Browse the repository at this point in the history
  2. fix: Fix trivial validation typo and test (dashpay#5465)

    ## Issue being fixed or feature implemented
    `GetVersion` expects `is_basic_scheme_active`, not
    `is_bls_legacy_scheme`
    
    ## What was done?
    see commits
    
    ## How Has This Been Tested?
    `make check`
    
    ## Breaking Changes
    luckily only tests are affected
    
    ## 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)_
    UdjinM6 authored Jun 29, 2023
    Configuration menu
    Copy the full SHA
    1bd4449 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f686992 View commit details
    Browse the repository at this point in the history
  4. merge bitcoin#25643: compile FastFixedDtoa with -O1 to fix cross-arch…

    … reproducibility for arm32
    kwvg authored and PastaPastaPasta committed Jun 29, 2023
    Configuration menu
    Copy the full SHA
    30cd5ef View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    2ed704b View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    7d9a5d6 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    13c2a9b View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    19a8164 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    14f6e37 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    6169e20 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    a812926 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    9c5d657 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    fc6252b View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    205aa83 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    ab8c26a View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    9600020 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    b7d688e View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    96e8ad8 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    f16a29a View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    6751b13 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    ba2f56d View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    1a49f48 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    f3dd5d7 View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    8dc99a4 View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    be2eb53 View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    66e1541 View commit details
    Browse the repository at this point in the history
  27. merge bitcoin#25389: use libtool 2.4.7

    kwvg authored and PastaPastaPasta committed Jun 29, 2023
    Configuration menu
    Copy the full SHA
    6243a71 View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    0a7b8bd View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    bfb3f4b View commit details
    Browse the repository at this point in the history

Commits on Jul 1, 2023

  1. fix(rpc): Improve upgradetohd (dashpay#5455)

    ## Issue being fixed or feature implemented
    Allow `upgradetohd` in IBD, better errors, no GUI lock-up
    
    ## What was done?
    Pls see individual commits. Most of it is changes in whitespaces, might
    want to use ?w=1 to review i.e.
    https://github.com/dashpay/dash/pull/5455/files?w=1
    
    ## How Has This Been Tested?
    run tests, try `upgradetohd` on testnet
    
    ## 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)_
    UdjinM6 authored Jul 1, 2023
    Configuration menu
    Copy the full SHA
    5e99e3f View commit details
    Browse the repository at this point in the history
  2. refactor: deglobalization of bls_legacy_scheme 2/N (dashpay#5443)

    ## Issue being fixed or feature implemented
    Many usages of `CBLS{Signature,PrivateKey,PublicKey}` assume using
    global variable, even if can be specified explicitly.
    Some of these usages have been deglobalized in this PR.
    
    Some prior improvements and fixes are here:
    [dashpay#5403](dashpay#5403)
    
    ## What was done?
    - Refactored the uses of global variable of `bls_legacy_scheme` from
    `SetHex`, `SetByteVector`, some rpc calls.
    - Removed flag `checkMalleable` to simplify code because it's always
    `true`.
    - Removed dependency from `txmempool.h` on `bls.h` to speed up
    compilation.
    
    ## How Has This Been Tested?
    Run unit/functional tests.
    
    
    
    ## Breaking Changes
    No breaking changes assumed. But in theory behaviour of some RPC can be
    more explicit and predictable.
    
    ## Checklist:
    - [x] I have performed a self-review of my own code
    - [x] I have commented my code, particularly in hard-to-understand areas
    - [x] 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
    knst authored Jul 1, 2023
    Configuration menu
    Copy the full SHA
    07fd889 View commit details
    Browse the repository at this point in the history
  3. Merge pull request dashpay#5466 from UdjinM6/dashbls_1.3.0

    chore: bump `dashbls` subtree to 1.3.0
    UdjinM6 authored Jul 1, 2023
    Configuration menu
    Copy the full SHA
    d0d4514 View commit details
    Browse the repository at this point in the history
  4. fix: follow-up backport bitcoin#14380 - remove debug logs (dashpay#5399)

    ## Issue being fixed or feature implemented
    There are useless debug logs "CDEF" in `wallet_tests` unit tests.
    
    ## What was done?
    removes it
    
    ## How Has This Been Tested?
    Run unit/functional tests
    
    ## 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
    knst authored Jul 1, 2023
    Configuration menu
    Copy the full SHA
    4251d5a View commit details
    Browse the repository at this point in the history
  5. fix: follow-up dashpay#5393 - should be used [dash.dash_ents] (dash…

    …pay#5472)
    
    ## Issue being fixed or feature implemented
    As noticed by Udjin in dashpay#5393, there should be `dash_ents` in the config.
    
    ## What was done?
    Updated config `.tx/config`
    
    
    ## How Has This Been Tested?
    @UdjinM6 please help to test, I have no access to
    `https://www.transifex.com` translations
    
    
    
    ## 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
    knst authored Jul 1, 2023
    Configuration menu
    Copy the full SHA
    bf284e3 View commit details
    Browse the repository at this point in the history

Commits on Jul 3, 2023

  1. refactor: removed flag checkMalleable from bls's related code (dash…

    …pay#5462)
    
    ## Issue being fixed or feature implemented
    Current implementation of BLS wrapper has an unclear interface related
    to `checkMalleable` flag.
    
    There are 2 methods Unserialize, that has both default arguments:
    
    ```
    template
    inline void Unserialize(Stream& s, const bool specificLegacyScheme, bool checkMalleable = true);
    template
    inline void Unserialize(Stream& s, bool checkMalleable = true);
    ```
    
    Let's assume that I am calling `Unserialize(s, true)` - it's very
    non-obvious which one will be called and not error prune at all.
    
    It should be re-implemented, and there should not be default argument. 
    
    Pasta noticed that this flag can be useful from performance point of
    view - let's have better new method such as `UnserializeNoMalleable` or
    similar and use it when reindexing/etc. It should be specified explicit.
    
    Reverting this change and adding new interface in future won't be
    difficult task so far as changes are quite trivial.
    
    
    ## What was done?
    Removed flag checkMalleable to simplify code because it's always true.
    It splits from dashpay#5443
    
    
    ## How Has This Been Tested?
    Run unit functional tests.
    
    ## Breaking Changes
    No breaking changes - flag is always true.
    
    ## 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
    knst authored Jul 3, 2023
    Configuration menu
    Copy the full SHA
    96554c8 View commit details
    Browse the repository at this point in the history

Commits on Jul 4, 2023

  1. refactor: cleanup CChainParams unused data and functions (dashpay#5474)

    ## Issue being fixed or feature implemented
    During implementation dashpay#5469 (master node hard-fork) I noticed that some
    parts of `CChainParams` are deprecated and can be removed.
    
    ## What was done?
    1. removed methods from `CChainParams` that have no implementation at
    all:
     - UpdateSubsidyAndDiffParams
     - UpdateLLMQChainLocks
     - UpdateLLMQTestParams
     - UpdateLLMQDevnetParams
    2. removed method `BIP9CheckMasternodesUpgraded` from `CChainParams` and
    a flag `check_mn_protocol` from `versionbitsinfo`.
    (to follow-up dashpay#2594)
    
    
    ## How Has This Been Tested?
    Run functional/unit tests.
    
    ## 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)_
    knst authored Jul 4, 2023
    Configuration menu
    Copy the full SHA
    e4c7f38 View commit details
    Browse the repository at this point in the history
  2. fix: start client-side CoinJoin scheduler even when CoinJoin is disab…

    …led (dashpay#5476)
    
    ## Issue being fixed or feature implemented
    `IsEnabled()` is checked inside anyway. Not starting the scheduler on
    init results in no mixing on nodes with dynamically loaded wallets.
    
    ## What was done?
    
    
    ## 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)_
    UdjinM6 authored Jul 4, 2023
    Configuration menu
    Copy the full SHA
    2d24016 View commit details
    Browse the repository at this point in the history
  3. build: simple modification to allow docker develop builds on aarch64 (d…

    …ashpay#5475)
    
    ## Issue being fixed or feature implemented
    Building with develop docker container on aarch64
    
    ## What was done?
    Only install i386 stuff on non-arm builders
    
    ## How Has This Been Tested?
    Building on aarch64 / m1 
    
    ## 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)_
    PastaPastaPasta authored Jul 4, 2023
    Configuration menu
    Copy the full SHA
    f6131b9 View commit details
    Browse the repository at this point in the history

Commits on Jul 7, 2023

  1. perf: avoid rehashing block; use stored hash (dashpay#5435)

    before 12%
    <img width="1538" alt="image"
    src="https://github.com/dashpay/dash/assets/6443210/fa5043fb-4e48-4728-bfaf-8636d5c20a8c">
    after 10%
    <img width="1544" alt="image"
    src="https://github.com/dashpay/dash/assets/6443210/1df6aff4-2901-4af1-b421-3604f54df157">
    
    ## Issue being fixed or feature implemented
    Redundant rehash
    
    ## What was done?
    Avoid redundant rehash
    
    ## How Has This Been Tested?
    Reindexed 0-500000 on testnet
    
    
    ## 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)_
    PastaPastaPasta authored Jul 7, 2023
    Configuration menu
    Copy the full SHA
    24919e7 View commit details
    Browse the repository at this point in the history
  2. fix: Resolve warnings in Guix GitHub workflow (dashpay#5478)

    ## Issue being fixed or feature implemented
    see warnings in https://github.com/dashpay/dash/actions/runs/5462770856
    
    ## What was done?
    
    https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
    
    ## How Has This Been Tested?
    n/a
    
    ## 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)_
    UdjinM6 authored Jul 7, 2023
    Configuration menu
    Copy the full SHA
    d2dfac6 View commit details
    Browse the repository at this point in the history

Commits on Jul 9, 2023

  1. Merge bitcoin#20139: Wallet: do not return warnings from UpgradeWallet()

    9636962 [upgradewallet] removed unused warning param (Sishir Giri)
    
    Pull request description:
    
      The `warning` variable was unused in `upgradewallet` so I removed it
    
    ACKs for top commit:
      practicalswift:
        ACK 9636962: diff looks correct
      MarcoFalke:
        review ACK 9636962
      jonatack:
        ACK 9636962
    
    Tree-SHA512: 1d63186ce1e05e86a778340f2d7986c2cee1523de0a11cea39e8d148ac7ee26c49741dfa302b5c1cd1c8d74e67c1f9baee2763720c2d850b57da9a3fdce24565
    MarcoFalke authored and vijaydasmp committed Jul 9, 2023
    Configuration menu
    Copy the full SHA
    f53f7fb View commit details
    Browse the repository at this point in the history
  2. Merge bitcoin#19005: doc: Add documentation for 'checklevel' argument…

    … in 'verifychain' RPC…
    
    501e6ab doc: Add documentation for 'checklevel' argument in 'verifychain' RPC call (Calvin Kim)
    
    Pull request description:
    
      Rationale: When ```bitcoin-cli help verifychain``` is called, the user doesn't get any documentation about the ```checklevel``` argument, leading to issues like bitcoin#18995.
    
      This PR addresses that issue and adds documentation for what each level does, and that each level includes the checks of the previous levels.
    
    ACKs for top commit:
      jonatack:
        ACK 501e6ab `git diff 292ed3c 501e6ab` shows only change since last review is the verifychain RPCHelpMan edit; rebuild and retested manually anyway
      MarcoFalke:
        ACK 501e6ab 🚝
    
    Tree-SHA512: 09239f79c25b5c3022b8eb1f76198ba681305d7e8775038e46becffe5f6a14c572e0c5d06b0723fe9d4a015ec42c9f7ca7b80a2a93df0b1b66f5a84a80eeeeb1
    MarcoFalke authored and vijaydasmp committed Jul 9, 2023
    Configuration menu
    Copy the full SHA
    3144f87 View commit details
    Browse the repository at this point in the history
  3. Merge bitcoin#19634: rpc: Document getwalletinfo's unlocked_until fie…

    …ld as optional
    
    f916847 rpc: Document getwalletinfo's unlocked_until field as optional (Justin Moon)
    
    Pull request description:
    
      The `getwalletinfo` RPC command's `unlocked_until` field is [optional in the code](https://github.com/justinmoon/bitcoin/blob/f916847d2b56f2935c169e1b95b350a477c804cc/src/wallet/rpcwallet.cpp#L2397), but wasn't marked as optional in the docs.
    
    ACKs for top commit:
      theStack:
        ACK bitcoin@f916847
      achow101:
        ACK f916847
      kristapsk:
        ACK f916847
    
    Tree-SHA512: 8d82f0992fdaf8160000acf4a6e7e7f9ff289a90a983be2e078cf754f4b03601637e5f405afa66bd55adef9b347fa5eac5cc1822033b2ac08c587609cf3dfe0f
    fanquake authored and vijaydasmp committed Jul 9, 2023
    Configuration menu
    Copy the full SHA
    845ceac View commit details
    Browse the repository at this point in the history
  4. Merge bitcoin#19644: rpc: document returned error fields as optional …

    …if applicable
    
    f110b7c rpc: document returned error fields as optional if applicable (Sebastian Falbesoner)
    
    Pull request description:
    
      The following RPCs return error fields (named `"error"` or `"errors"`) that are optional, but don't show up as optional in the help text yet:
      * `analyzepsbt`
      * `estimatesmartfee`
      * `signrawtransactionwithkey`
      * `signrawtransactionwithwallet`
    
      The following RPC has the errors field already marked as optional, but doesn't match the usual format in the description (like `"if there are any"` in parantheses):
      * `estimaterawfee`
    
      This PR adds the missing optional flags and adapts the description strings. Inspired by a recent PR bitcoin#19634 by justinmoon.
    
      The instances were found via `git grep "RPCResult.*\"error"`. Note that there is one RPC so far where the return error is not optional (i.e. in case of no error, the field is included in the result, but is just empty), namely `bumpfee`.
    
    ACKs for top commit:
      adaminsky:
        ACK `f110b7c`
      laanwj:
        ACK f110b7c, new documentation looks consistent with actual behavior
      achow101:
        ACK f110b7c
      meshcollider:
        utACK f110b7c
    
    Tree-SHA512: 30c00f78a575b60e32b4536496af986d53a25f33e6ebbf553adcdcf825ad21a44f90267f3d1ea53326dac83bcfa9983fdb3dad6d3126e20f97f3c08ce286e188
    meshcollider authored and vijaydasmp committed Jul 9, 2023
    Configuration menu
    Copy the full SHA
    9885228 View commit details
    Browse the repository at this point in the history
  5. Merge bitcoin#19786: doc: Remove label from good first issue template

    fa30d52 doc: Remove label from good first issue template (MarcoFalke)
    
    Pull request description:
    
      Good first issues aren't that frequent that manually assigning the label is a problem, but this fixes the spam problem (e.g. https://twitter.com/GoodFirstIssues/status/1295455089491161088 )
    
    ACKs for top commit:
      jnewbery:
        ACK fa30d52
    
    Tree-SHA512: 59e7c707637cc328e2443c2b7e5d2c82ef151739ad5afb6cea1a60501318dc8c4c81c95591eed8172581ac99d43cf826dcdd547e096eff1038137853af67a975
    fanquake authored and vijaydasmp committed Jul 9, 2023
    Configuration menu
    Copy the full SHA
    da32d13 View commit details
    Browse the repository at this point in the history
  6. Merge bitcoin#19646: doc: Updated outdated help command for getblockt…

    …emplate
    
    c91b241 Updated outdated help command for getblocktemplate (fixes bitcoin#19625) (Jake Leventhal)
    
    Pull request description:
    
      **Summary of Changes**
      * Removed coinbasetxn from the help outputs
      * Added the missing name for transactions in the help outputs
      * Added help outputs for longpollid and default_witness_commitment
      * Added more clarity to capabilities, rules, and coinbaseaux
    
      **Rationale**
      The outputs from the help command for `getblocktemplate` are outdated and don't reflect the actual results from `getblocktemplate` (see bitcoin#19625 for more details)
    
      Fixes bitcoin#19625.
    
    ACKs for top commit:
      laanwj:
        ACK c91b241
      fjahr:
        utACK c91b241
    
    Tree-SHA512: ee443af4bc3b2838dfd92e2705f344256ee785ae720e505fffea9b0ec5b75930e3b1374bae59b36d5da57c85c9aefe4d62504b028b893d6f2914dccf1e34c658
    laanwj authored and vijaydasmp committed Jul 9, 2023
    Configuration menu
    Copy the full SHA
    298b28a View commit details
    Browse the repository at this point in the history
  7. Merge bitcoin#20462: RPC/Wallet: unloadwallet: Clarify docs/error whe…

    …n both the RPC request and wallet_name parameter specify a wallet
    
    b1f59d5 RPC/Wallet: unloadwallet: Clarify docs/error when both the RPC endpoint and wallet_name parameter specify a wallet (Luke Dashjr)
    
    Pull request description:
    
      Just documentation clarifications from bitcoin#20448
    
    ACKs for top commit:
      MarcoFalke:
        review ACK b1f59d5
      jonatack:
        re-ACK b1f59d5  per `git diff e8303a0 b1f59d5`
    
    Tree-SHA512: ac068b0aa7ceed49496367fdd9425b59dbba18b56e89b26afc22a6c8ece51f0b92a169cacd55740b1cadab2b32f4f8e8700e609066ab7e59d3b53c7891da585e
    MarcoFalke authored and vijaydasmp committed Jul 9, 2023
    Configuration menu
    Copy the full SHA
    91c6a8e View commit details
    Browse the repository at this point in the history

Commits on Jul 10, 2023

  1. Merge pull request dashpay#5283 from vijaydasmp/21_16

    backport: Merge bitcoin#20462,20139,19005,19634,19644,19786,19646
    UdjinM6 authored Jul 10, 2023
    Configuration menu
    Copy the full SHA
    3b3f717 View commit details
    Browse the repository at this point in the history
  2. refactor: trivial refactorings of llmq/ (dashpay#5486)

    ## Issue being fixed or feature implemented
    It splits from dashpay#5150 by
    @PastaPastaPasta request.
    
    
    ## What was done?
    See commits
    
    ## How Has This Been Tested?
    Run unit/functional tests
    
    
    ## 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
    knst authored Jul 10, 2023
    Configuration menu
    Copy the full SHA
    32a2543 View commit details
    Browse the repository at this point in the history
  3. feat: mnlistdiff v20 CL sig quorums (dashpay#5377)

    ## Issue being fixed or feature implemented
    Implementation of Randomness Beacon Part 3.
    
    Starting from v20 activation fork, members for quorums are sorted using
    (if available) the best CL signature found in Coinbase.
    If no CL signature is present yet, then the usual way is used (By using
    Blockhash instead)
    
    The actual new way to shuffle is already implemented in
    dashpay#5366.
    
    SPV clients also need to calculate members, but they only know block
    headers.
    Since Coinbase is in the actual block, then they lack the required
    information to correctly calculate quorum members.
    
    ## What was done?
    - Message `MNLISTIDFF` is enriched with a new field `quorumsCLSigs`.
    This field holds the Chainlock Signature required for each set of
    indexes corresponding to quorums in field `newQuorums`.
    -  Protocol version has been bumped to `70230`.
    - Clients with protocol version greater or equal to `70230` will receive
    the new field `quorumsCLSigs`.
    - The same field is returned in `protx diff` RPC.
    
    Note:
    - Field `quorumsCLSigs` will populated only after v20 activation
    - If for one or more quorums, no non-null CL sig was found in CbTx then
    a null signature is returned in `quorumsCLSigs`.
    
    ## How Has This Been Tested?
    - Functional test mininode's protocol version was bumped to `70230`.
    - `feature_llmq_rotation.py` checks that `quorumsCLSigs` match in both
    P2P and RPC messages.
    
    ## Breaking Changes
    No
    
    ## Checklist:
    - [x] I have performed a self-review of my own code
    - [x] I have commented my code, particularly in hard-to-understand areas
    - [x] 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 _(for repository
    code-owners and collaborators only)_
    
    ---------
    
    Co-authored-by: thephez <[email protected]>
    Co-authored-by: UdjinM6 <[email protected]>
    Co-authored-by: pasta <[email protected]>
    4 people authored Jul 10, 2023
    Configuration menu
    Copy the full SHA
    494b5c7 View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2023

  1. perf: actually only process each dsq once (dashpay#5484)

    5 minute profiling shows previous usage around ~7% and current usage
    around ~2%
    
    ## Issue being fixed or feature implemented
    Due to us rapidly receiving multiple duplicates of DSQueue's, we start
    processing them before it's added the the vector of processed ones, we
    probably at one point tried to minimize locked time, but that's not
    productive here
    
    ## What was done?
    Expand the locked scope to ensure we don't double process. 
    
    ## How Has This Been Tested?
    Ran full node for 5-10 minutes
    
    ## 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
    - [x] I have assigned this pull request to a milestone _(for repository
    code-owners and collaborators only)_
    
    ---------
    
    Co-authored-by: UdjinM6 <[email protected]>
    PastaPastaPasta and UdjinM6 authored Jul 16, 2023
    Configuration menu
    Copy the full SHA
    0cf9410 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e087a78 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    591da75 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    73f28b6 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4fcc1ab View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    921c28c View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    e9287f4 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    64f39fc View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    8a04fae View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    075d02b View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    dc4f3a3 View commit details
    Browse the repository at this point in the history
  12. refactor: Drop IsConflicted()

    UdjinM6 committed Jul 16, 2023
    Configuration menu
    Copy the full SHA
    596fd4b View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    5a48c8b View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    639d7d2 View commit details
    Browse the repository at this point in the history
  15. Merge pull request dashpay#5482 from UdjinM6/trivial_fixes_chore

    chore: Trivial cleanups/fixes/refactoring
    UdjinM6 authored Jul 16, 2023
    Configuration menu
    Copy the full SHA
    222fc92 View commit details
    Browse the repository at this point in the history
  16. chore: Drop MSG_LEGACY_TXLOCK_REQUEST/LEGACYTXLOCKREQUEST (dashpa…

    …y#5483)
    
    ## Issue being fixed or feature implemented
    Legacy IS messages are gone long time ago, no need to keep them in code.
    
    ## What was done?
    Drop `MSG_LEGACY_TXLOCK_REQUEST`/`LEGACYTXLOCKREQUEST`
    
    ## How Has This Been Tested?
    Run tests
    
    ## 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)_
    UdjinM6 authored Jul 16, 2023
    Configuration menu
    Copy the full SHA
    4fb7cdb View commit details
    Browse the repository at this point in the history

Commits on Jul 17, 2023

  1. fix: write in logs of TxMempool tx's hashes instead whole txes (dashp…

    …ay#5495)
    
    ## What was done?
    write in logs of TxMempool tx's hashes instead whole txes
    
    
    ## How Has This Been Tested?
    Run unit/functional tests
    
    ## 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
    knst authored Jul 17, 2023
    Configuration menu
    Copy the full SHA
    e0252bb View commit details
    Browse the repository at this point in the history

Commits on Jul 21, 2023

  1. refactor: hide some payments methods, replace a class to namespace (d…

    …ashpay#5494)
    
    ## Issue being fixed or feature implemented
    Here's TODO that seems out-dated
    ```
    /// TODO: all 4 functions do not belong here really, they should be refactored/moved somewhere (main.cpp ?)
    ```
    This changes are extracted from this PR:
    dashpay#5342
    
    
    ## What was done?
    This changes hides some methods from global namespace (making local
    static function), hiding other functions to the namespace
    
    
    
    ## How Has This Been Tested?
    Run unit/functional tests
    
    ## 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
    knst authored Jul 21, 2023
    Configuration menu
    Copy the full SHA
    be1ca25 View commit details
    Browse the repository at this point in the history
  2. Merge bitcoin#18875: fuzz: Stop nodes in process_message* fuzzers

    fab860a fuzz: Stop nodes in process_message* fuzzers (MarcoFalke)
    6666c82 fuzz: Give CNode ownership to ConnmanTestMsg in process_message fuzz harness (MarcoFalke)
    
    Pull request description:
    
      Background is that I saw an integer overflow in net_processing
    
      ```
      #30629113	REDUCE cov: 25793 ft: 142917 corp: 3421/2417Kb lim: 4096 exec/s: 89 rss: 614Mb L: 1719/4096 MS: 1 EraseBytes-
      net_processing.cpp:977:25: runtime error: signed integer overflow: 2147483624 + 100 cannot be represented in type 'int'
      SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior net_processing.cpp:977:25 in
      net_processing.cpp:985:9: runtime error: signed integer overflow: -2147483572 - 100 cannot be represented in type 'int'
      SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior net_processing.cpp:985:9 in
      ```
    
      Telling from the line numbers, it looks like `nMisbehavior` wrapped around.
    
      Fix that by calling `StopNodes` after each exec, which should clear the node state and thus `nMisbehavior`.
    
    ACKs for top commit:
      practicalswift:
        ACK fab860a
    
    Tree-SHA512: 891c081d5843565d891aec028b6c27ef3fa39bc40ae78238e81d8f784b4d4b49cb870998574725a5159dd03aeeb2e0b9bc3d3bb51d57d1231ef42e3394b2d639
    MarcoFalke authored and PastaPastaPasta committed Jul 21, 2023
    Configuration menu
    Copy the full SHA
    c585d57 View commit details
    Browse the repository at this point in the history
  3. Merge bitcoin#11413: [wallet] [rpc] sendtoaddress/sendmany: Add expli…

    …cit feerate option
    
    25dac9f doc: add release notes for explicit fee estimators and bumpfee change (Karl-Johan Alm)
    05227a3 tests for bumpfee / estimate_modes (Karl-Johan Alm)
    3404c1b policy: optional FeeEstimateMode param to CFeeRate::ToString (Karl-Johan Alm)
    6fcf448 rpc/wallet: add two explicit modes to estimate_mode (Karl-Johan Alm)
    b188d80 MOVEONLY: Make FeeEstimateMode available to CFeeRate (Karl-Johan Alm)
    5d1a411 fees: add FeeModes doc helper function (Karl-Johan Alm)
    91f6d2b rpc/wallet: add conf_target as alias to confTarget in bumpfee (Karl-Johan Alm)
    69158b4 added CURRENCY_ATOM to express minimum indivisible unit (Karl-Johan Alm)
    
    Pull request description:
    
      This lets users pick their own fees when using `sendtoaddress`/`sendmany` if they prefer this over the estimators.
    
    ACKs for top commit:
      Sjors:
        re-utACK 25dac9f: rebased, more fancy C++,
      jonatack:
        ACK 25dac9f I think this should be merged after all this time, even though it looks to me like there are needed follow-ups, fixes and test coverage to be added (see further down), which I don't mind helping out with, if wanted.
      fjahr:
        Code review ACK 25dac9f
    
    Tree-SHA512: f31177e6cabf3187a43cdfe93477144f8e8385c7344613743cbbd16e8490d53ff5144aec7b9de6c9a65eb855b55e0f99d7f164dee4b6bf3cfea4dce51cf11d33
    laanwj authored and PastaPastaPasta committed Jul 21, 2023
    Configuration menu
    Copy the full SHA
    2c5cb24 View commit details
    Browse the repository at this point in the history
  4. Merge bitcoin#16946: wallet: include a checksum of encrypted private …

    …keys
    
    d67055e Upgrade or rewrite encrypted key checksums (Andrew Chow)
    c9a9ddb Set fDecryptionThoroughlyChecked based on whether crypted key checksums are valid (Andrew Chow)
    a8334f7 Read and write a checksum for encrypted keys (Andrew Chow)
    
    Pull request description:
    
      Adds a checksum to the encrypted key record in the wallet database so that encrypted keys can be checked for corruption on wallet loading, in the same way that unencrypted keys are. This allows for us to skip the full decryption of keys upon the first unlocking of the wallet in that session as any key corruption will have already been detected. The checksum is just the double SHA256 of the encrypted key and it is appended to the record after the encrypted key itself.
    
      This is backwards compatible as old wallets will be able to read the encrypted key and ignore that there is more data in the stream. Additionally, old wallets will be upgraded upon their first unlocking (so that key decryption is checked before we commit to a checksum of the encrypted key) and a wallet flag set indicating that. The presence of the wallet flag lets us skip the full decryption as if `fDecryptionThoroughlyChecked` were true.
    
      This does mean that the first time an old wallet is unlocked in a new version will take much longer, but subsequent unlocks will be instantaneous. Furthermore, corruption will be detected upon loading rather than on trying to send so wallet corruption will be detected sooner.
    
      Fixes bitcoin#12423
    
    ACKs for top commit:
      laanwj:
        code review ACK d67055e
      jonatack:
        Code review ACK d67055e
      meshcollider:
        Code review ACK d67055e
    
    Tree-SHA512: d5c1c10cfcb5db9e10dcf2326423565a9f499290b81f3155ec72254ed5bd7491e2ff5c50e98590eb07842c20d7797b4efa1c3475bae64971d500aad3b4e711d4
    laanwj authored and PastaPastaPasta committed Jul 21, 2023
    Configuration menu
    Copy the full SHA
    c0c00f9 View commit details
    Browse the repository at this point in the history
  5. Merge bitcoin#17824: wallet: Prefer full destination groups in coin s…

    …election
    
    a2324e4 test: Improve naming and logging of avoid_reuse tests (Fabian Jahr)
    1abbdac wallet: Prefer full destination groups in coin selection (Fabian Jahr)
    
    Pull request description:
    
      Fixes bitcoin#17603 (together with bitcoin#17843)
    
      In the case of destination groups of >10 outputs existing in a wallet with `avoid_reuse` enabled, the grouping algorithm is adding left-over outputs as an "incomplete" group to the list of groups even when a full group has already been added. This leads to the strange behavior that if there are >10 outputs for a destination the transaction spending from that will effectively use `len(outputs) % 10` as inputs for that transaction.
    
      From the original PR and the code comment I understand the correct behavior should be the usage of 10 outputs. I opted for minimal changes in the current code although there maybe optimizations possible for cases with >20 outputs on a destination this sounds like too much of an edge case right now.
    
    ACKs for top commit:
      jonatack:
        Re-ACK a2324e4
      achow101:
        ACK a2324e4
      kallewoof:
        ACK a2324e4
      meshcollider:
        Tested ACK a2324e4 (verified the new test fails on master without this change)
    
    Tree-SHA512: 4743779c5d469fcd16df5baf166024b1d3c8eaca151df1e8281b71df62b29541cf7bfee3f8ab48d83e3b34c9256e53fd38a7b146a54c79f9caa44cce3636971a
    meshcollider authored and PastaPastaPasta committed Jul 21, 2023
    Configuration menu
    Copy the full SHA
    f83b4bf View commit details
    Browse the repository at this point in the history
  6. Merge bitcoin#18601: wallet: Refactor WalletRescanReserver to use wal…

    …let reference
    
    fc289b7 wallet: Refactor WalletRescanReserver to use wallet reference (João Barbosa)
    
    Pull request description:
    
      Simple refactor to `WalletRescanReserver` to use wallet reference instead of pointer.
    
      Complements bitcoin#18259.
    
    ACKs for top commit:
      MarcoFalke:
        ACK fc289b7
    
    Tree-SHA512: b03e33f2d9df2870436aa3284137fd022dd89ea96a1b170fa27f8685ad4f986e6c4ba5975a84966c30d18430a4014d7d8740a1dff2f985c9ef8226ed18e69db9
    MarcoFalke authored and PastaPastaPasta committed Jul 21, 2023
    Configuration menu
    Copy the full SHA
    281d222 View commit details
    Browse the repository at this point in the history
  7. Merge bitcoin#18585: test: use zero-argument super() shortcut (Python…

    … 3.0+)
    
    0956e46 test: use zero-argument super() shortcut (Python 3.0+) (Sebastian Falbesoner)
    
    Pull request description:
    
      This mini-PR replaces all calls to `super(...)` with arguments with the zero-argument shortcut `super()` where applicable. See [PEP 3135](https://www.python.org/dev/peps/pep-3135/#specification):
    
      > The new syntax:
      >
      >     super()
      >
      > is equivalent to:
      >
      >     super(__class__, <firstarg>)
      >
      > where __class__ is the class that the method was defined in, and <firstarg> is
      > the first parameter of the method (normally self for instance methods, and cls
      > for class methods).
    
    ACKs for top commit:
      fanquake:
        ACK 0956e46
    
    Tree-SHA512: 4ac66fe7ab2be2e8a514e5fcfc41dbb298f21b23ebb7b7b0310d704b0b3cef8adf287a8d80346d1ea9418998c597b4f0ff1f66148d0d806bb43db6607e0fe1cf
    MarcoFalke authored and PastaPastaPasta committed Jul 21, 2023
    Configuration menu
    Copy the full SHA
    4e7cb26 View commit details
    Browse the repository at this point in the history
  8. Merge bitcoin#20271: doc: Document that wallet salvage is experimental

    fab9453 doc: Document that wallet salvage is experimental (MarcoFalke)
    
    Pull request description:
    
      See bitcoin#20151
    
    ACKs for top commit:
      practicalswift:
        ACK fab9453: user safety first
      hebasto:
        ACK fab9453, maybe capitalize into "WARNING"?
      meshcollider:
        Trivial ACK fab9453
    
    Tree-SHA512: 94912c491facc485293e4333066057933d706d84c7172f615296e7ba998c583c8bd07e751e6f00cd6576e7791007ace321f959181f7bf6a4e15e10d7ec8a1b7e
    meshcollider authored and PastaPastaPasta committed Jul 21, 2023
    Configuration menu
    Copy the full SHA
    4f3a1ef View commit details
    Browse the repository at this point in the history
  9. Merge bitcoin#19871: doc: Clarify scope of eviction protection of out…

    …bound block-relay peers
    
    d769254 [doc] Clarify semantic of peer's m_protect w.r.t to outbound eviction logics (Antoine Riard)
    ac71fe9 [doc] Clarify scope of eviction protection of outbound block-relay peers (Antoine Riard)
    
    Pull request description:
    
      Block-relay-only peers were introduced by bitcoin#15759. According to its
      author, it was intented to make them only immune to outbound peer
      rotation-based eviction and not from all eviction as modified comment
      leans to think of.
    
      Clearly indicate that outbound block-relay peers aren't protected
      from eviction by the bad/lagging chain logic.
    
      Fix bitcoin#19863
    
    ACKs for top commit:
      naumenkogs:
        ACK d769254
      jonatack:
        ACK d769254
    
    Tree-SHA512: 597fbd62838a6e39276024165b11514cad20a2e9d33cf9202d261cbadcb62b2df427c858e0cb57e585840d4c1d4600104aa53916bb868541f2580e4eed9b4b52
    laanwj authored and PastaPastaPasta committed Jul 21, 2023
    Configuration menu
    Copy the full SHA
    7caec1d View commit details
    Browse the repository at this point in the history
  10. Merge bitcoin#20039: test: Convert amounts from float to decimal

    5aadd4b Convert amounts from float to decimal (Prayank)
    
    Pull request description:
    
      > decimal is preferred in accounting applications
    
      https://docs.python.org/3.8/library/decimal.html
    
      Decimal type saves an exact value so better than using float.
    
      ~~3 variables declared with type as 'Decimal' in [test/functional/mempool_accept.py](https://github.com/bitcoin/bitcoin/blob/master/test/functional/mempool_accept.py): fee, fee_expected, output_amount~~
    
      ~~Not required to convert to string anymore for using the above variables as decimal~~
    
      + fee, fee_expected, output_amount
      ~~+ 8 decimal places~~
      + Using value of coin['amount'] as decimal and removed 'int'
      + Removed unnecessary parentheses
      + Remove str() and use quotes
    
      Fixes bitcoin#20011
    
    ACKs for top commit:
      guggero:
        ACK 5aadd4b
    
    Tree-SHA512: 5877cf3837e5b65bec0fc8909de141a720bfa02a747513e21d20f3c41ec0cfecc524d2c347a96596b0a1a97900da2acf08b799f26b11d537e4dcddc6ce45f38e
    MarcoFalke authored and PastaPastaPasta committed Jul 21, 2023
    Configuration menu
    Copy the full SHA
    945aca8 View commit details
    Browse the repository at this point in the history
  11. Merge pull request dashpay#5360 from vijaydasmp/21_17

    backport: bitcoin#18875,11413,16946,17824,18601,18585,20271,19871,20039
    PastaPastaPasta authored Jul 21, 2023
    Configuration menu
    Copy the full SHA
    b3bdcd0 View commit details
    Browse the repository at this point in the history

Commits on Jul 23, 2023

  1. feat: bury v19 activation (dashpay#5496)

    ## Issue being fixed or feature implemented
    V19 is active on mainnet/testnet now, no need to check activation bits
    anymore. This PR also bumps `MinBIP9WarningHeight` to
    post-v19-activation height which should stop `unknown new rules
    activated (versionbit 8)` warning from appearing.
    
    ## What was done?
    Bury v19, bump `MinBIP9WarningHeight`
    
    ## How Has This Been Tested?
    Run tests, reindex on mainnet/testnet.
    
    ## 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)_
    UdjinM6 authored Jul 23, 2023
    Configuration menu
    Copy the full SHA
    5382d05 View commit details
    Browse the repository at this point in the history

Commits on Jul 24, 2023

  1. fix: Process dsq messages even when CJ is disabled locally or disk …

    …space is low (dashpay#5498)
    
    ## Issue being fixed or feature implemented
    Refusing to process `dsq` will result in node not being able to process
    `dstx`es later.
    
    ## 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)_
    UdjinM6 authored Jul 24, 2023
    Configuration menu
    Copy the full SHA
    3c65626 View commit details
    Browse the repository at this point in the history
  2. feat!: add an implementation of DIP 0027 Credit Asset Locks (dashpay#…

    …5026)
    
    ## Issue being fixed or feature implemented
    This is an implementation of DIP0027 "Credit Asset Locks".
    It's a mechanism to fluidly exchange between Dash and credits.
    
    ## What was done?
    This pull request includes:
          - Asset Lock transaction
          - Asset Unlock transaction (withdrawal)
          - Credit Pool in coinbase
          - Unit tests for Asset Lock/Unlock tx
          - New functional test `feature_asset_locks.py`
    
    RPC: currently locked amount (credit pool) is available through rpc call
    `getblock`.
    
    ## How Has This Been Tested?
    There added new unit tests for basic checks of transaction validity
    (asset lock/unlock).
    Also added new functional test "feature_asset_locks.py" that cover
    typical cases, but not all corner cases yet.
    
    ## Breaking Changes
    This feature should be activated as hard-fork because:
    - It adds 2 new special transaction and one of them [asset unlock tx]
    requires update consensus rulels
     - It adds new data in coinbase tx (credit pool)
    
    ## Checklist:
    - [x] I have performed a self-review of my own code
    - [x] I have commented my code, particularly in hard-to-understand areas
    - [x] I have added or updated relevant unit/integration/functional/e2e
    tests
    - [ ] I have made corresponding changes to the documentation
    **To release DIP 0027**
    - [x] I have assigned this pull request to a milestone
    
    ---------
    
    Co-authored-by: UdjinM6 <[email protected]>
    knst and UdjinM6 authored Jul 24, 2023
    Configuration menu
    Copy the full SHA
    8a0e681 View commit details
    Browse the repository at this point in the history
  3. Merge bitcoin#18660: test: Verify findCommonAncestor always initializ…

    …es outputs
    
    9986608 test: Verify findCommonAncestor always initializes outputs (Russell Yanofsky)
    
    Pull request description:
    
      Also add code comment to clarify surprising code noted by practicalswift
      bitcoin#18657 (comment)
    
    ACKs for top commit:
      MarcoFalke:
        ACK 9986608
      jonatack:
        ACK 9986608 modulo @practicalswift's bitcoin#18660 (comment)
    
    Tree-SHA512: d79c910291d68b770ef4b09564d274c0e19a6acf43ef1a6691dc889e3944ab3462b86056eeb794fd0c6f2464cfad6cc00711a833f84b32079c69ef9b3c8da24c
    MarcoFalke authored and PastaPastaPasta committed Jul 24, 2023
    Configuration menu
    Copy the full SHA
    41ac29d View commit details
    Browse the repository at this point in the history
  4. Merge bitcoin#18712: test: display command line options passed to sen…

    …d_cli() in debug log
    
    8f5dc88 test: display command line options passed to send_cli() in debug log (Jon Atack)
    
    Pull request description:
    
      as per bitcoin#18691 (comment), and revert two cli calls changed in bitcoin#18691 from rpc commands back to command line options (these were the only occurrences).
    
    ACKs for top commit:
      MarcoFalke:
        ACK 8f5dc88
    
    Tree-SHA512: fcb3eca00aa4099066028c90d5e50a02e074366e09a17f5f5b937d9f7562dd054ff65681aa0ad4c94f6de1e98b1e2b9ac4cd084ddc297010253989a80483b1b9
    MarcoFalke authored and PastaPastaPasta committed Jul 24, 2023
    Configuration menu
    Copy the full SHA
    e9311d8 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    75d939b View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    7f2fb78 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    49805c1 View commit details
    Browse the repository at this point in the history
  8. partial bitcoin#20789: Rework strong and weak net enum fuzzing

    excludes:
    - faaef94
    kwvg authored and UdjinM6 committed Jul 24, 2023
    Configuration menu
    Copy the full SHA
    0644b9b View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    31b7169 View commit details
    Browse the repository at this point in the history
  10. merge bitcoin#20995: Avoid initializing version to less than MIN_PEER…

    …_PROTO_VERSION
    kwvg authored and UdjinM6 committed Jul 24, 2023
    Configuration menu
    Copy the full SHA
    58bea6a View commit details
    Browse the repository at this point in the history
  11. partial bitcoin#21843: enable GetAddr, GetAddresses, and getnodeaddre…

    …sses by network
    
    excludes:
    - 6c98c09
    - 3f89c0e
    - ce6bca8
    kwvg authored and UdjinM6 committed Jul 24, 2023
    Configuration menu
    Copy the full SHA
    cf27db8 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    bf31070 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    184bbf5 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    08a6f3f View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    bff4d9b View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    7cd28bf View commit details
    Browse the repository at this point in the history
  17. merge bitcoin#22112: Force port 0 in I2P

    kwvg authored and UdjinM6 committed Jul 24, 2023
    Configuration menu
    Copy the full SHA
    5088da9 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    1b82b4f View commit details
    Browse the repository at this point in the history
  19. merge bitcoin#21677: Avoid use of low file descriptor ids (which may …

    …be in use) in FuzzedSock
    kwvg authored and UdjinM6 committed Jul 24, 2023
    Configuration menu
    Copy the full SHA
    4972126 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    9b36ac6 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    0a58aba View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    2253990 View commit details
    Browse the repository at this point in the history
  23. fix: implement missing logic for additional indexes, fix bugs and log…

    …ging (dashpay#5477)
    
    ## Issue being fixed or feature implemented
    The logic for additional indexes is incomplete, handling of P2PK on
    block disconnect is broken (luckily no one is using P2PK and reorgs are
    rare) and there are a few other small issues that would be nice to have
    fixed.
    
    ## What was done?
    Pls see individual commits
    
    ## How Has This Been Tested?
    Run `feature_dbcrash.py`, it should succeed (NOTE: it takes ~30 minutes
    to complete, that's normal).
    Run `feature_addressindex.py`, `feature_timestampindex.py` and
    `feature_spentindex.py` (and other tests) should still succeed too.
    
    ## 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
    - [x] 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)_
    UdjinM6 authored Jul 24, 2023
    Configuration menu
    Copy the full SHA
    48a1632 View commit details
    Browse the repository at this point in the history
  24. feat: Check if settings file is empty (dashpay#5504)

    ## Issue being fixed or feature implemented
    Fixes issue dashpay#5497.
    
    ## What was done?
    Checks if settings file is empty, and deletes it if that's the case.
    
    It will will be generated with default value `{}` afterwards.
    
    ## How Has This Been Tested?
    Running Dash Qt on regtest masternode with `--nocleanup` and
    `./src/qt/dash-qt --regtest --datadir=`
    
    ## Breaking Changes
    No
    
    ## 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 _(for repository
    code-owners and collaborators only)_
    ogabrielides authored Jul 24, 2023
    Configuration menu
    Copy the full SHA
    92e5f9f View commit details
    Browse the repository at this point in the history

Commits on Jul 25, 2023

  1. Merge bitcoin#20408: CConnman: move initialization to declaration

    9d09132 CConnman: initialise at declaration rather than in Start() (Anthony Towns)
    
    Pull request description:
    
      Ensure nMaxOutboundTotalBytesSentInCycle and nMaxOutboundCycleStartTime are initialized even if CConnman::Start() is not called. Prevents failures in test/fuzz/connman when run under valgrind.
    
    ACKs for top commit:
      practicalswift:
        ACK 9d09132: patch looks correct!
      MarcoFalke:
        review ACK 9d09132 , checked that we call Start only once and in the same scope where connman is constructed (AppInitMain) 💸
      jnewbery:
        Code review ACK 9d09132
    
    Tree-SHA512: 1c6c893e8c616a91947a8cc295b0ba508af3ecfcdcd94cdc5f95d808cc93c6d1a71fd24dcc194dc583854e9889fb522ca8523043367fb0263370fbcab08c6aaa
    fanquake authored and PastaPastaPasta committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    1bd4d8d View commit details
    Browse the repository at this point in the history
  2. Merge bitcoin#19836: rpc: Properly deserialize txs with witness befor…

    …e signing
    
    3333077 rpc: Adjust witness-tx deserialize error message (MarcoFalke)
    cccc752 rpc: Properly deserialize txs with witness before signing (MarcoFalke)
    
    Pull request description:
    
      Signing a transaction can only happen when the transaction has inputs. A transaction with inputs can always be deserialized as witness-transaction. If `try_no_witness` decoding is attempted, this will lead to rare intermittent failures.
    
      Fixes bitcoin#18803
    
    ACKs for top commit:
      achow101:
        ACK 3333077
      ajtowns:
        ACK 3333077
    
    Tree-SHA512: 73f8a5cdfe03fb0e68908d2fa09752c346406f455694a020ec0dd1267ef8f0a583b8e84063ea74aac127106dd193b72623ca6d81469a94b3f5b3c766ebf2c42b
    fanquake authored and PastaPastaPasta committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    afb8f35 View commit details
    Browse the repository at this point in the history
  3. Merge bitcoin#19851: refactor: Extract ParseOpCode from ParseScript

    c923872 refactor: Extract ParseOpCode from ParseScript (João Barbosa)
    
    Pull request description:
    
      Seems more natural to have `mapOpNames` "hidden" in `ParseOpCode` than in `ParseScript`.
    
      A second lookup in `mapOpNames` is also removed.
    
    ACKs for top commit:
      laanwj:
        ACK c923872
      theStack:
        re-ACK c923872
    
    Tree-SHA512: d59d1964760622cf365479d44e3e676aa0bf46b60e77160140d967e012042df92121d3224c7551dc96eff5ff3294598cc6bade82adb3f60d28810e18e60e1257
    laanwj authored and PastaPastaPasta committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    5e20e69 View commit details
    Browse the repository at this point in the history
  4. (partial) Merge bitcoin#21424: Net processing: Tidy up CNodeState ctor

    6927933 [net processing] Add ChainSyncTimeoutState default initializers (John Newbery)
    55966e0 [net processing] Remove CNodeState ctor body (John Newbery)
    
    Pull request description:
    
      This addresses the two outstanding review comments from bitcoin#21370.
    
    ACKs for top commit:
      practicalswift:
        cr ACK 6927933: patch looks correct
      hebasto:
        ACK 6927933, I have reviewed the code and it looks OK, I agree it can be merged.
    
    Tree-SHA512: b3ef5c8a096e447887df255406b3a760f01c73e2b942374595416b4b4031fc69b89cd93168c45040489d581f340b2a62d3fbabd207d4307f587c00a7a7daacd1
    MarcoFalke authored and PastaPastaPasta committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    aec81cd View commit details
    Browse the repository at this point in the history
  5. Merge bitcoin#21948: test: Fix off-by-one in mockscheduler test RPC

    fa2e614 test: Fix off-by-one in mockscheduler test RPC (MarcoFalke)
    
    Pull request description:
    
      Fixes:
    
      ```
      fuzz: scheduler.cpp:83: void CScheduler::MockForward(std::chrono::seconds): Assertion `delta_seconds.count() > 0 && delta_seconds < std::chrono::hours{1}' failed.
      ==1059066== ERROR: libFuzzer: deadly signal
          #0 0x558f75449c10 in __sanitizer_print_stack_trace (/root/fuzz_dir/scratch/fuzz_gen/code/src/test/fuzz/fuzz+0x5fec10)
          dashpay#1 0x558f753f32b8 in fuzzer::PrintStackTrace() fuzzer.o
          dashpay#2 0x558f753d68d3 in fuzzer::Fuzzer::CrashCallback() fuzzer.o
          dashpay#3 0x7f4a3cbbb3bf  (/lib/x86_64-linux-gnu/libpthread.so.0+0x153bf)
          dashpay#4 0x7f4a3c7ff18a in raise (/lib/x86_64-linux-gnu/libc.so.6+0x4618a)
          dashpay#5 0x7f4a3c7de858 in abort (/lib/x86_64-linux-gnu/libc.so.6+0x25858)
          dashpay#6 0x7f4a3c7de728  (/lib/x86_64-linux-gnu/libc.so.6+0x25728)
          dashpay#7 0x7f4a3c7eff35 in __assert_fail (/lib/x86_64-linux-gnu/libc.so.6+0x36f35)
          dashpay#8 0x558f7588a913 in CScheduler::MockForward(std::chrono::duration<long, std::ratio<1l, 1l> >) scheduler.cpp:83:5
          dashpay#9 0x558f75b0e5b1 in mockscheduler()::$_7::operator()(RPCHelpMan const&, JSONRPCRequest const&) const rpc/misc.cpp:435:30
          dashpay#10 0x558f75b0e5b1 in std::_Function_handler<UniValue (RPCHelpMan const&, JSONRPCRequest const&), mockscheduler()::$_7>::_M_invoke(std::_Any_data const&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9
          dashpay#11 0x558f7587a141 in std::function<UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator()(RPCHelpMan const&, JSONRPCRequest const&) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14
          dashpay#12 0x558f7587a141 in RPCHelpMan::HandleRequest(JSONRPCRequest const&) const rpc/util.cpp:565:26
          dashpay#13 0x558f756c0086 in CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const ./rpc/server.h:110:91
          dashpay#14 0x558f756c0086 in std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:285:9
          dashpay#15 0x558f756b8592 in std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14
          dashpay#16 0x558f756b8592 in ExecuteCommand(CRPCCommand const&, JSONRPCRequest const&, UniValue&, bool) rpc/server.cpp:480:20
          dashpay#17 0x558f756b8592 in ExecuteCommands(std::vector<CRPCCommand const*, std::allocator<CRPCCommand const*> > const&, JSONRPCRequest const&, UniValue&) rpc/server.cpp:444:13
          dashpay#18 0x558f756b8017 in CRPCTable::execute(JSONRPCRequest const&) const rpc/server.cpp:464:13
          dashpay#19 0x558f7552457a in (anonymous namespace)::RPCFuzzTestingSetup::CallRPC(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) test/fuzz/rpc.cpp:50:25
          dashpay#20 0x558f7552457a in rpc_fuzz_target(Span<unsigned char const>) test/fuzz/rpc.cpp:354:28
          dashpay#21 0x558f7544cf0f in std::_Function_handler<void (Span<unsigned char const>), void (*)(Span<unsigned char const>)>::_M_invoke(std::_Any_data const&, Span<unsigned char const>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:300:2
          dashpay#22 0x558f75c05197 in std::function<void (Span<unsigned char const>)>::operator()(Span<unsigned char const>) const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/std_function.h:688:14
          dashpay#23 0x558f75c05197 in LLVMFuzzerTestOneInput test/fuzz/fuzz.cpp:74:5
          dashpay#24 0x558f753d8073 in fuzzer::Fuzzer::ExecuteCallback(unsigned char const*, unsigned long) fuzzer.o
          dashpay#25 0x558f753c1f72 in fuzzer::RunOneTest(fuzzer::Fuzzer*, char const*, unsigned long) fuzzer.o
          dashpay#26 0x558f753c7d6a in fuzzer::FuzzerDriver(int*, char***, int (*)(unsigned char const*, unsigned long)) fuzzer.o
          dashpay#27 0x558f753f3a92 in main (/root/fuzz_dir/scratch/fuzz_gen/code/src/test/fuzz/fuzz+0x5a8a92)
          dashpay#28 0x7f4a3c7e00b2 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x270b2)
          dashpay#29 0x558f7539cc9d in _start (/root/fuzz_dir/scratch/fuzz_gen/code/src/test/fuzz/fuzz+0x551c9d)
    
    ACKs for top commit:
      practicalswift:
        cr ACK fa2e614
    
    Tree-SHA512: cfa120265261f0ad019b46c426b915c1c007806b37aecb27016ce780a0ddea5e6fc9b09065fd40684b11183dcd3bf543558d7a655e604695021653540266baf7
    MarcoFalke authored and PastaPastaPasta committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    994ce01 View commit details
    Browse the repository at this point in the history
  6. Merge bitcoin#20056: net: Use Span in ReceiveMsgBytes

    fa5ed3b net: Use Span in ReceiveMsgBytes (MarcoFalke)
    
    Pull request description:
    
      Pass a data pointer and a size as span in `ReceiveMsgBytes` to get the benefits of a span
    
    ACKs for top commit:
      jonatack:
        ACK fa5ed3b code review, rebased to current master 12a1c3a, debug build, unit tests, ran bitcoind/-netinfo/getpeerinfo
      theStack:
        ACK fa5ed3b
    
    Tree-SHA512: 89bf111323148d6e6e50185ad20ab39f73ab3a58a27e46319e3a08bcf5dcf9d6aa84faff0fd6afb90cb892ac2f557a237c144560986063bc736a69ace353ab9d
    laanwj authored and PastaPastaPasta committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    21a6b17 View commit details
    Browse the repository at this point in the history
  7. Merge bitcoin#20432: net: Treat raw message bytes as uint8_t

    fabecce net: Treat raw message bytes as uint8_t (MarcoFalke)
    
    Pull request description:
    
      Using `uint8_t` from the beginning when messages are `recv`ed has two style benefits:
      * The signedness is clear from reading the code, as it does not depend on the architecture
      * When passing the bytes on, the need for static signedness casts is dropped, making the code a bit less verbose and more coherent
    
    ACKs for top commit:
      laanwj:
        Code review ACK fabecce
      theStack:
        Code Review ACK fabecce
      jonatack:
        Tested ACK fabecce
    
    Tree-SHA512: e6d9803c78633fde3304faf592afa961ff9462a7912d1da97a24720265274aa10ab4168d71b6ec2756b7448dd42585321afee0e5c889e705be778ce9a330d145
    laanwj authored and PastaPastaPasta committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    c1b5ec6 View commit details
    Browse the repository at this point in the history
  8. Merge bitcoin#19337: sync: detect double lock from the same thread

    95975dd sync: detect double lock from the same thread (Vasil Dimov)
    4df6567 sync: make EnterCritical() & push_lock() type safe (Vasil Dimov)
    
    Pull request description:
    
      Double lock of the same (non-recursive) mutex from the same thread would produce an undefined behavior. Detect this from `DEBUG_LOCKORDER` and react similarly to the deadlock detection.
    
      This came up during discussion in another, related PR: bitcoin#19238 (comment).
    
    ACKs for top commit:
      laanwj:
        code review ACK 95975dd
      hebasto:
        re-ACK 95975dd
    
    Tree-SHA512: 375c62db7819e348bfaecc3bd82a7907fcd8f5af24f7d637ac82f3f16789da9fc127dbd0e37158a08e0dcbba01a55c6635caf1d8e9e827cf5a3747f7690a498e
    laanwj authored and PastaPastaPasta committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    8fee13e View commit details
    Browse the repository at this point in the history
  9. Merge bitcoin#20448: RPC/Wallet: unloadwallet: Allow specifying walle…

    …t_name param matching RPC endpoint wallet
    
    89bdad5 RPC/Wallet: unloadwallet: Allow specifying wallet_name param matching RPC endpoint (Luke Dashjr)
    
    Pull request description:
    
      Allow specifying the `wallet_name` param to `unloadwallet` on RPC wallet endpoints, so long as it matches the endpoint wallet.
    
    ACKs for top commit:
      jonatack:
        ACK 89bdad5
      MarcoFalke:
        review ACK 89bdad5
    
    Tree-SHA512: efb399c33f7b5596870a26a8680f453ca47aa7a6db4e550f9435d13044f1c4bad0ae11e8f0205213409d08b75c4188c3be782e54aafab1f65b97eb8cf5c252a9
    MarcoFalke authored and PastaPastaPasta committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    8b4982b View commit details
    Browse the repository at this point in the history
  10. Merge bitcoin#21010: refactor: remove straggling boost::mutex usage

    f827e15 refactor: remove straggling boost::mutex usage (fanquake)
    
    Pull request description:
    
      After the merge of bitcoin#18710, the linter is warning:
      ```bash
      A new Boost dependency in the form of "boost/thread/mutex.hpp" appears to have been introduced:
      src/sync.cpp:#include <boost/thread/mutex.hpp>
      src/test/sync_tests.cpp:#include <boost/thread/mutex.hpp>
    
      ^---- failure generated from test/lint/lint-includes.sh
      ```
    
      bitcoin#18710 removed `boost/thread/mutex.hpp` from lint-includes, however in the interim bitcoin#19337 was merged, which introduced more `boost::mutex` usage.
    
      Given we no longer use `boost::mutex`, just remove the double lock test and remaining includes.
    
    ACKs for top commit:
      laanwj:
        Code review ACK f827e15
      hebasto:
        ACK f827e15
    
    Tree-SHA512: f738b12189fe5b39db3e8f8231e9002714413a962eaf98adc84a6614fa474df5616358cfb1c89b92a2b0564efa9b704a774c49d4a25dca18a0ccc3cd9eabfc0a
    MarcoFalke authored and PastaPastaPasta committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    5d91734 View commit details
    Browse the repository at this point in the history
  11. Merge pull request dashpay#5488 from vijaydasmp/bp22_1

    backport: Merge bitcoin#20408,19836,19851,(partial)21424, 21948, 20056,20432,19337,20448, 21010
    PastaPastaPasta authored Jul 25, 2023
    Configuration menu
    Copy the full SHA
    00cb31c View commit details
    Browse the repository at this point in the history
  12. chore: Added missing sources files in CMake (dashpay#5503)

    ## Issue being fixed or feature implemented
    Added missing sources files (index, interfaces, node, logging, util) in
    CMake so they can be indexed by IDE.
    
    ## What was done?
    
    ## 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)_
    ogabrielides authored Jul 25, 2023
    Configuration menu
    Copy the full SHA
    c96edec View commit details
    Browse the repository at this point in the history
  13. fix!: making MnEhfTx to comply DIP-0023 (dashpay#5505)

    ## Issue being fixed or feature implemented
    Current implementation of MnEhfTx is not matched with DIP-0023, this PR
    fixes it. It is a prior work for
    dashpay#5469
    
    ## What was done?
    - requestID is fixed from `clsig{quorumHeight}` to `mnhf{versionBit}` +
    fixes for signature validation properly
     - v20 is minimal height to accept MnEHF special transactions
    - versionBit is not BLS version - removed unrelated wrong code and
    validations
    - TxMempool will accept MnEHF transaction even if inputs/outputs are
    zeroes and no fee
    - implemented python's serialization/deserialization of MnEHF
    transactions for future using in functional tests
     
    
    ## How Has This Been Tested?
    Run functional/unit tests. Beside that there's new functional test in
    dashpay#5469 that actually test format of
    transaction and signature validation - to be merged later.
    
    ## Breaking Changes
    Payload of MnEhf tx is changed, related consensus rules are changed.
    
    
    ## Checklist:
    - [x] I have performed a self-review of my own code
    - [x] I have commented my code, particularly in hard-to-understand areas
    - [x] 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
    knst authored Jul 25, 2023
    Configuration menu
    Copy the full SHA
    42dcb3d View commit details
    Browse the repository at this point in the history

Commits on Jul 26, 2023

  1. Merge bitcoin#20609: configure: output notice that test binary is dis…

    …abled by fuzzing
    
    904d875 configure: output notice that test binary is disabled by fuzzing (Andrew Poelstra)
    
    Pull request description:
    
      I wasted a bit of time today running a stale `test_bitcoin` and not understanding why, until I remembered that I'd ./configured my working directory with --enable-fuzz.
    
    Top commit has no ACKs.
    
    Tree-SHA512: 6cbe30547332114ad3fe61c67e224f5a28aac4b1b58e0acecb29cb04f5a34f792c927797aa8000449aae076435bd45acf209b7323b0b48fa971705d6ed3e6529
    MarcoFalke authored and vijaydasmp committed Jul 26, 2023
    Configuration menu
    Copy the full SHA
    449e105 View commit details
    Browse the repository at this point in the history
  2. Merge bitcoin#20731: rpc: Add missing description of vout in getrawtr…

    …ansaction help text
    
    b23349b rpc: Add missing description of vout in getrawtransaction help text (Ben Carman)
    
    Pull request description:
    
      In `getrawtransaction` the vout did not have a description. I gave it the same description as the one used in `decoderawtransaction`.
    
    ACKs for top commit:
      MarcoFalke:
        ACK b23349b 🏯
    
    Tree-SHA512: 3833b97c82a46dfeb7ac825d4b2514b4b05ce54ac41f2144a8e2f2093b3411fe1d090c1e5b0c3d09200a2ea164c8d17ece12cdb43bbaeaeccc51a9da6dd7b7a3
    MarcoFalke authored and vijaydasmp committed Jul 26, 2023
    Configuration menu
    Copy the full SHA
    2f852cc View commit details
    Browse the repository at this point in the history
  3. Merge bitcoin#20683: test: Fix restart node race

    fab46b3 test: Fix restart node race (MarcoFalke)
    
    Pull request description:
    
      It is not allowed to start a node before it has been fully stopped. Otherwise it could lead to intermittent issues due to access issues (e.g. cookie file https://cirrus-ci.com/task/6409665024098304?command=ci#L4793)
    
      Fix that by waiting for the node to fully stop.
    
    ACKs for top commit:
      laanwj:
        code review ACK fab46b3
    
    Tree-SHA512: 7605cac0573a7b04f05ff110d0131e8940d87f7baf6d698505ed16b363d4d15b1e552c5ffd1a187c8fe5639f7e265c3122734c85283275746e46bd789614fd21
    laanwj authored and vijaydasmp committed Jul 26, 2023
    Configuration menu
    Copy the full SHA
    5f6d0ef View commit details
    Browse the repository at this point in the history
  4. Merge bitcoin#20747: net processing: Remove dropmessagestest

    176325a [net processing] Remove dropmessagestest (John Newbery)
    
    Pull request description:
    
      -dropmessagestest is a command line option that causes 1 in n received
      messages to be dropped. The Bitcoin P2P protocol is stateful and in
      general cannot handle messages being dropped. Dropped
      version/verack/ping/pong messages will cause the connection to time out
      and be torn down. Other dropped messages may also cause the peer to
      believe that the peer has stalled and tear down the connection.
    
      It seems difficult to uncover any actual issues with -dropmessagestest,
      and any coverage that could be generated would probably be easier to
      trigger with fuzz testing.
    
    ACKs for top commit:
      MarcoFalke:
        cr ACK 176325a
      practicalswift:
        cr ACK 176325a
      dhruv:
        cr ACK 176325a
      amitiuttarwar:
        ACK 176325a
    
    Tree-SHA512: bd582e5e8c9eb272a5d8ec01ff07c36c0033fbb84c30d1c72c87a7a6c7290021dcaf7bf549179a8b95aeb4f7243158d5593bc7fcf1ec16213782e470fe36bb89
    fanquake authored and vijaydasmp committed Jul 26, 2023
    Configuration menu
    Copy the full SHA
    8b6b275 View commit details
    Browse the repository at this point in the history
  5. Merge bitcoin#20761: fuzz: Check that NULL_DATA is unspendable

    fa26303 fuzz: Check that NULL_DATA is unspendable (MarcoFalke)
    
    Pull request description:
    
      * Every script of type NULL_DATA must be unspendable
      * The only know types of unspendable scripts are NULL_DATA and certain NONSTANDARD scripts
    
    ACKs for top commit:
      sipa:
        utACK fa26303
    
    Tree-SHA512: 8297fbacf32b4868b12accc1c052d352d02d96540a1fc883de9d04a3df8734116deecc33046495c9a3af6d79fec7f8d63afbfa5e401a2ca8d7c70f0f13735c0d
    MarcoFalke authored and vijaydasmp committed Jul 26, 2023
    Configuration menu
    Copy the full SHA
    adfe2c3 View commit details
    Browse the repository at this point in the history