Commit Graph

23702 Commits

Author SHA1 Message Date
UdjinM6
9e862c16d1 fix(test): drop duplicates and add missing test cases in evo_utils_tests 2023-06-12 10:56:10 +03:00
UdjinM6
d2bdc4275e fix(qt): actually open debug console and not info tab
this fix is for tray icon menu
2023-06-12 10:56:10 +03:00
UdjinM6
d8f2fe7d7a fix(qt): disable custom change address on CoinJoin tab 2023-06-12 10:56:10 +03:00
UdjinM6
fba5d06a8c fix(qt): don't crash in options when running with -disablewallet 2023-06-12 10:56:10 +03:00
UdjinM6
d53e657513 fix(wallet): truncate mnemonic passphrase instead of crashing 2023-06-12 10:56:10 +03:00
UdjinM6
6f639ea5f1 fix(wallet): do not count DBKeys::PRIVATESEND_SALT and DBKeys::COINJOIN_SALT keys as unknown
Before: `Unknown wallet records: 2`
After: `Unknown wallet records: 0`
2023-06-12 10:56:10 +03:00
UdjinM6
8a391189cc fix: mark sporkkey and masternodeblsprivkey args as SENSITIVE 2023-06-12 10:56:10 +03:00
UdjinM6
16418d3559 fix: respect fPowNoRetargeting for post-btc algos 2023-06-12 10:56:10 +03:00
UdjinM6
4921903663 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
2023-06-12 10:56:10 +03:00
UdjinM6
62540743ef fix: pass correct params into CHashWriter 2023-06-12 10:56:10 +03:00
UdjinM6
ad09590feb
fix: reset chainman to allow reindex on failure (#5405)
current develop fails to reindex whenever there is an issue at node
start (prints `should not be overwriting a chainstate` in `debug.log`)

reset chainman to allow it re-initialize chainstate

simulated an issue with
```
 if (!fReset) {
     strLoadError = _("DEBUG");
     break;
 }
```

should not be any but pls test

- [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)_
2023-06-11 12:35:47 -05:00
Konstantin Akimov
013445a304
fix: follow-up #5403: remove double serialization in CDeterministicMNState (#5413)
## Issue being fixed or feature implemented
Member obj.keyIDOwner is read & write twice



## What was done?
Fixed: it is serialized once

## How Has This Been Tested?
Unit/functional tests in CI


## Breaking Changes
Data format in database changed in incompatible way

## 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
2023-06-11 12:35:30 -05:00
UdjinM6
e0175b28d7
fix: Resolve mainnet v19 fork issues (#5403)
same as  #5392, alternative solution

~based on #5402 atm, will rebase later~

pls see individual commits

reorg mainnet around forkpoint with a patched client (to allow low
difficulty), run tests

Another evodb migration is required. Going back to an older version or
migrating after the fork requires reindexing.

- [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)_
2023-06-11 12:35:20 -05:00
PastaPastaPasta
35ccc8500c
Merge pull request #5415 from kittywhiskers/bp_26633
backport: bitcoin#26633 (update qt 5.12 url to archive location)
2023-06-11 12:33:06 -05:00
UdjinM6
76a96c29ed
Merge pull request #5410 from UdjinM6/fix_dmnl_cache_issues
fix: resolve two DMNL cache issues
2023-06-11 12:32:47 -05:00
thephez
ced5d5cbed
docs: correct createwallet help (#5407)
## Issue being fixed or feature implemented
Dash does not have `sethdseed`, but the help mentioned it.

## What was done?
Switched to `upgradetohd`.

## How Has This Been Tested?

## Breaking Changes
N/A

## Checklist:
_Go over all the following points, and put an `x` in all the boxes that
apply._
- [x] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have added or updated relevant unit/integration/functional/e2e
tests
- [ ] I have made corresponding changes to the documentation
- [ ] I have assigned this pull request to a milestone _(for repository
code-owners and collaborators only)_
2023-06-11 12:32:39 -05:00
Nathan Marley
5160db89bf
trivial: Fix typo in import electrum wallet help (#5406)
Removes extra 's' after import
2023-06-11 12:32:30 -05:00
UdjinM6
78bf7221ca
feat: use m_protxHash instead of masternodeOutpoint for hashing dsq and dstx after v19 activation (#5404)
## Issue being fixed or feature implemented
Should fix #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)_
2023-06-11 12:32:08 -05:00
UdjinM6
d13e9de34a
test: Fix dynamically_smth_masternode helpers, extend feature_dip3_v19.py (#5402)
## Issue being fixed or feature implemented
fix a couple of issues in helpers, extend feature_dip3_v19.py to check
more after v19 fork

## What was done?
pls see individual PRs


## How Has This Been Tested?
run 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 _(for repository
code-owners and collaborators only)_
2023-06-11 12:31:43 -05:00
PastaPastaPasta
843206348f
feat: ability to disable clsig creation while retaining clsig enforcement (#5398)
## Issue being fixed or feature implemented
Currently, Chainlocks are either enabled or disabled. This PR adds a
third state: enabled but we will not sign new ones.

Should probably backport this to v19.x

## What was done?
Spork state != 0 but active will now result in chain locks being
enforced but not created.

## How Has This Been Tested?

## Breaking Changes
None

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

---------

Co-authored-by: UdjinM6 <UdjinM6@users.noreply.github.com>
2023-06-11 12:31:35 -05:00
UdjinM6
a1ff8dcfdd
feat: calculate DISK_SNAPSHOTS at compile time (#5395)
## Issue being fixed or feature implemented
LLMQ_400_85 requires four days worth of LLMQs
https://github.com/dashpay/dash/blob/master/src/llmq/params.h#L416

## What was done?

## 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
- [ ] I have assigned this pull request to a milestone _(for repository
code-owners and collaborators only)_
2023-06-11 12:30:56 -05:00
UdjinM6
4510d2b4b0
build: fix gmp detection on macos when building with no depends (#5394)
## Issue being fixed or feature implemented
gmp can't be detected on macos when installed via `brew` atm

## What was done?
detect package prefix and adjust CPPFLAGS and LDFLAGS accordingly


## How Has This Been Tested?
`./configure`

before: `configure: error: libgmp headers missing`
after: passes

## 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)_
2023-06-11 12:30:47 -05:00
UdjinM6
3275953ebf
docs: actually add release-notes-19.0.0.md (#5389)
## Issue being fixed or feature implemented
we missed it in https://github.com/dashpay/dash/pull/5385

## 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)_
2023-06-11 12:30:36 -05:00
UdjinM6
a760e33236
feat: store protx version in CSimplifiedMNListEntry and use it to ser/deser pubKeyOperator (#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 ~#5392~ #5403 (changes that belong to this PR:
26f7e966500bdea4c604f1d16716b40b366fc707 and
4b42dc8fcee3354afd82ce7e3a72ebe1659f5f22) 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)_
2023-06-11 12:29:00 -05:00
UdjinM6
cc2479ab0c
fix: multiple 5403 followups (#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)_
2023-06-11 10:00:10 +03:00
UdjinM6
5e18a7f75d
Merge pull request #5410 from UdjinM6/fix_dmnl_cache_issues
fix: resolve two DMNL cache issues
2023-06-11 09:57:30 +03:00
UdjinM6
86e8556ecc fix: adjust llmq_max_blocks() 2023-06-11 09:57:09 +03:00
UdjinM6
35b0d5f7c8 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.
2023-06-11 09:57:09 +03:00
UdjinM6
599fd87723
feat: use m_protxHash instead of masternodeOutpoint for hashing dsq and dstx after v19 activation (#5404)
## Issue being fixed or feature implemented
Should fix #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)_
2023-06-11 00:41:02 -05:00
PastaPastaPasta
12d50c806d
Merge pull request #5421 from PastaPastaPasta/develop-trivial-2023-06-07
backport: trivial backports June 8th
2023-06-10 17:41:01 -05:00
Andrew Chow
8f5ffef6b4 Merge bitcoin/bitcoin#27172: guix: switch to some minimal versions of packages in our manifest
2c9eb4afe1f583aafa552b2711b149f17ef8320f guix: use cmake-minimal over cmake (fanquake)
1475515312856afe3f19a95f2c32bc80c7c54484 guix: use coreutils-minimal over coreutils (fanquake)
444562141504ff7f0bb071d6e7bf7f511517e372 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 2c9eb4afe1f5
  Sjors:
    tACK 2c9eb4afe1f583aafa552b2711b149f17ef8320f
  achow101:
    ACK 2c9eb4afe1f583aafa552b2711b149f17ef8320f
  hebasto:
    ACK 2c9eb4afe1f583aafa552b2711b149f17ef8320f,

Tree-SHA512: f91ca9e088b8346b20c2affc80870c31640de3aedcfcc0fb98a5e82c77ef64537870b88552f26759d31d8d0956b1fd685e6c25d5acbc92f5feaececd1a7dd37e
2023-06-10 17:40:23 -05:00
fanquake
14e18f8501 Merge bitcoin/bitcoin#27361: guix: use python-minimal (3.9)
d0e571ebb187d7c4c2821f1334cb2dd4222dd8ce guix: use python-minimal (3.9) (fanquake)

Pull request description:

  This further minifies the Guix release build environment.

ACKs for top commit:
  TheCharlatan:
    ACK d0e571ebb187
  hebasto:
    ACK d0e571ebb187d7c4c2821f1334cb2dd4222dd8ce

Tree-SHA512: 0a8aa9ae861107f106c3b9c41f78ffbaf0e71e3c61f6d96e5c82415b4570b8ac85d6578d37cd0df0ec315c1c9f35fc90b281f139271ccfd15a1495ba76166789
2023-06-10 17:40:23 -05:00
MarcoFalke
542fbdc545 Merge bitcoin/bitcoin#23128: doc: Remove TODO 'exclude peers with download permission'
2f97c1180b7eba2c48683a553ca166eba84e14c6 doc: Remove TODO 'exclude peers with download permission' (Douglas Chimento)

Pull request description:

  Following from PR https://github.com/bitcoin/bitcoin/pull/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
2023-06-10 17:40:23 -05:00
fanquake
c8ca9cd35a Merge bitcoin/bitcoin#23464: doc: remove mention of system univalue from build-unix.md
78e36700a0b42f558af2be567eab9fbf6c9ef0b1 doc: remove mention of system univalue (fanquake)

Pull request description:

  Should have been part of #22646.

ACKs for top commit:
  hebasto:
    ACK 78e36700a0b42f558af2be567eab9fbf6c9ef0b1

Tree-SHA512: a5d54d73526033825ce4467cc3c57c26064739eef546556975a4c6f1f5bea84004640acd426734f90f98bc7a76ec837d716aa31167f2bdce7ee3887ad92e3152
2023-06-10 17:40:23 -05:00
W. J. van der Laan
1965109429 Merge bitcoin/bitcoin#22420: doc: Specifiy how to set the value of TORGROUP
59840846104306febecf185f03a56c821ebb8642 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 59840846104306febecf185f03a56c821ebb8642
  Zero-1729:
    Concept ACK 59840846104306febecf185f03a56c821ebb8642

Tree-SHA512: af5cc0f87fa309201b5937a2741dea9374eafc09e84664ca138669c1827ce44fe6d25e3853d53ed2c838321aa4b28c6fd9d8dbe23f7194fdd6559d49453416e4
2023-06-10 17:40:23 -05:00
fanquake
e9490c8b94 Merge bitcoin/bitcoin#22631: doc: Add packages that provide Qt Wayland plugin for Linux
5559cf1460c98eb6998d99784f27de85f95f14d0 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 5559cf1460c98eb6998d99784f27de85f95f14d0 - 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
2023-06-10 17:40:23 -05:00
fanquake
a0984bb07c Merge bitcoin/bitcoin#22576: doc: Update high-level addrman description
036d7eadf5dd0e06e0734a5d78dbe28f4bfaa07f doc: Correct description of CAddrMan::Create() (Amiti Uttarwar)
318176aff1ded36d1fbc5977f288ac3bac1d8712 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 #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 036d7eadf5dd0e06e0734a5d78dbe28f4bfaa07f
  jnewbery:
    ACK 036d7eadf5dd0e06e0734a5d78dbe28f4bfaa07f

Tree-SHA512: 3f0635d765f5e580a1fae31187742a833cef66ef2286d40eeb28f2253521260038e16e5f1a65741464a2ddfdbeb5c0f1bc38bf73841e600639033d59c3c534e4
2023-06-10 17:40:23 -05:00
MarcoFalke
ddcaadd7a8 Merge bitcoin/bitcoin#22249: test: kill process group to avoid dangling processes when using --failfast
451b96f7d2796d00eabaec56d831f9e9b1a569cc test: kill process group to avoid dangling processes (S3RK)

Pull request description:

  This is an alternative to #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 451b96f7d2796d00eabaec56d831f9e9b1a569cc
  aitorjs:
    ACK 451b96f7d2796d00eabaec56d831f9e9b1a569cc. Manual testing with and without **--failfast**.

Tree-SHA512: 87e510a1411b9e7571e63cf7ffc8b9a8935daf9112ffc0f069d6c406ba87743ec439808181f7e13cb97bb200fad528589786c47f0b43cf3a2ef0d06a23cb86dd
2023-06-10 17:40:23 -05:00
MarcoFalke
d117a65f3a Merge #21585: Fix assumeutxo crash due to truncated file
fa73ce6e653d00824eb68f772fd29b7f8fb93d84 Fix assumeutxo crash due to truncated file (MarcoFalke)

Pull request description:

ACKs for top commit:
  jamesob:
    ACK fa73ce6e653d00824eb68f772fd29b7f8fb93d84
  ryanofsky:
    Code review ACK fa73ce6e653d00824eb68f772fd29b7f8fb93d84. Easy fix. It seems like this could have been caught in review, though.

Tree-SHA512: 3a98687c386e3995114ddf0ad7194fadd9520989290681ef703b578e3ca21aee51eadfb83aa38a489bac13d12709ea137b9b184b08e5bfa2919cca177aab90be
2023-06-10 17:40:23 -05:00
Wladimir J. van der Laan
487395c8f1 Merge #20906: contrib: embed C++11 patch in install_db4.sh
92370033a2606ee88f4d080193e0bf6da481dc2e contrib: embed C++11 patch in install_db4.sh (jackielove4u)

Pull request description:

  This is a continuation of https://github.com/bitcoin/bitcoin/pull/20665.

  Closes #20722.

ACKs for top commit:
  laanwj:
    ACK 92370033a2606ee88f4d080193e0bf6da481dc2e
  fanquake:
    ACK 92370033a2606ee88f4d080193e0bf6da481dc2e.

Tree-SHA512: ebfd16f5301158de1acc1b8eeca43b3d94f0a6d438832133a30648e5e8a88268b4af983be0bb57f3018e3af8459f32f0de676c1b4e8942e199a4497c776631c5
2023-06-10 17:40:23 -05:00
UdjinM6
c51ba63646
ci: more checksums in guix workflow (#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)_
2023-06-09 13:19:01 -05:00
PastaPastaPasta
66dfd36134
Merge pull request #5355 from kittywhiskers/guix_p1
backport: merge bitcoin#18434, #21664, #20608, #21871, #21255, #21428, #21889, #22070, #22392, #23535, #23811, #23838, #23839, #23148, #20422, #24561, #26075, #25458, partial #22381 (guix backports: part 1)
2023-06-07 22:30:33 -05:00
Kittywhiskers Van Gogh
3c8088f2e8 merge bitcoin#26075: remove 32bit linux code from release scripts 2023-06-07 14:42:02 +05:30
Kittywhiskers Van Gogh
ecb9ff8062 merge bitcoin#25458: parallelize LIEF build 2023-06-07 14:42:02 +05:30
Kittywhiskers Van Gogh
e91a62be3c merge bitcoin#24561: use LIEF 0.12.0 2023-06-07 14:42:02 +05:30
Kittywhiskers Van Gogh
77539574a7 merge bitcoin#20422: mac deployment unification 2023-06-07 14:42:02 +05:30
Kittywhiskers Van Gogh
f2a5b472fd merge bitcoin#23148: Fix guix linker-loader path and add check_ELF_interpreter 2023-06-07 14:42:02 +05:30
Kittywhiskers Van Gogh
e39a1de731 merge bitcoin#23839: build with and test for control flow instrumentation on x86_64 2023-06-07 14:42:02 +05:30
Kittywhiskers Van Gogh
38c3bd0b61 merge bitcoin#23838: make security checks architecture independent 2023-06-07 14:42:02 +05:30
Kittywhiskers Van Gogh
bd2135fbd5 merge bitcoin#23811: match on EXE_FORMATS rather than name string 2023-06-07 14:42:02 +05:30