* Fix cache usage in SelectCoinsGroupedByAddresses
* Reset cache flags in SelectCoinsGroupedByAddresses when a block is (dis)connected
* MakeCollateralAmounts should call SelectCoinsGroupedByAddresses with a limited number of inputs
* Always check for expired queues on masternodes
* Check if a queue is too old or too far into the future
Instead of only checking that it's to old
* Check that no masternode can spam us with dsqs regardless of dsq readiness
* Ignore recent rejects filter for locked txes
If we had a conflicting tx in the mempool before the locked tx arrived and the locked one arrived before the corresponding islock (i.e. we don't really know it's the one that should be included yet), the locked one is going to be rejected due to a mempool conflict. The old tx is going to be removed from the mempool by an incoming islock a bit later, however, we won't be able to re-request the locked tx until the tip changes because of the recentRejects filter. This patch fixes it.
* Add some explanation
* Fix combobox popup style
* Unify margins/paddings/height for lineedits/comboboxes/spinboxes
* Drop walletframe_background
* Add transparency to unchecked.png
* Alternative solution for comboboxes (no border for popups, add paddings in QListView)
Turned out that this causes SelectCoinsMinConf to (unnecessary) lean towards selecting mempool txes which can cause "too long mempool chain" error even when there are more funds to spend.
* Fix "out of sync" label
* Fix fallback fee warning label
It's too long in some languages (e.g. ru) and this breaks ui
* Drop sub-tabs on the Masternode tab
* Hold cs_main/cs_wallet in main MakeCollateralAmounts
Otherwise smth else can alter wallet state and we might end up creating conflicting txes.
* AssertLockHeld
* Move "bip147" softfork up in getblockchaininfo to match the actual order of activation
* Fix typo
* Use CURRENCY_UNIT instead of BTC
* Add simple descriptions in `quorum` rpcs
* Unify the look of `quorum` cmd options (drop `.`)
* Clarify the order softforks are sorted in getblockchaininfo
The "masternode-tx" name is kinda confusing since ProTxes exist now. This is a
small rename to clarify that it is referring to the MN collateral txid and
index.
* Detect masternode mode from privkey arg
The `masternode` argument seems redundant. This change enables masternode mode
based on the presence (and validity) of the `masternodeblsprivkey` argument.
* Deprecate -masternode option
* Remove -masternode switch from functional tests
* Move -masternode deprecate warning to better place
* From 2 best sets with the same `nTotal` in ApproximateBestSubset prefer the one with less inputs
* There is no reason to run ApproximateBestSubset again if nMinChange is 0
* Apply review suggestions
cc879675e1 depends: Remove ccache (fanquake)
Pull request description:
After discussion with @theuni, we can possibly just remove ccache from depends entirely.
Related to #12606
Tree-SHA512: ae0a60c8d97467fa41d617daa48ed22159cf32613808634a983304901dd5ed27124e77868d2314004e5144f7b35ba1333f720bb12daec4c5ca03aaf29d593ef2
* It should not be possible to change settings for additional indexes without reindex
* Should write db flags for additional indexes on reindex
* Add tests to make sure index settings can't be changed without reindex
* Update Dash app and toolbar icons
* Update icons and images
* Remove menubar icons
* Add Dash logo to top-right of menubar
* Remove the small PrivateSend buttons
* Remove image entirely from About modal
* Update CSS for new theme changes
* Restore splash testnet image
* Make entire toolbar button clickable
* Fix address book and shrink transaction icons
* Revert "Restore splash testnet image"
This reverts commit 2df07ff7d3.
* Restore original direction for tx in/out arrows
* Add transparency to icons
* Remove unused icons
* Resize way too small icons
* `mogrify src/qt/res/*/*.png`
* Drop `light` from `optimize-pngs.py`
* `python3 contrib/devtools/optimize-pngs.py`
"Total reduction: 42507 bytes"
* Restore old remove icon as console_remove
* Update activemn if protx info changed
* Add `==` and `!=` operators to CDeterministicMNState
* Only re-init active MN if its IP changed, changes to payout, voting etc. can be done without it
* Test `masternode status` updates
* Don't track mnListEntry anymore and instead get the DMN on demand
* Revert "Add `==` and `!=` operators to CDeterministicMNState"
This reverts commit fba4687581.
* Allow empty strings in `protx update_registrar` as an option to re-use current values
* Update src/rpc/rpcevo.cpp
Co-Authored-By: Alexander Block <ablock84@gmail.com>
b86a42077 when clearing addrman clear mapInfo and mapAddr (Gregory Sanders)
Pull request description:
Power failure on my machine resulted in a corrupted addrman that would hit bad assertions when trying to serialize the "cleared" addrman to disk: 6866b4912b/src/addrman.h (L320)
Tree-SHA512: 07ca8b6cbd88407e5f3f0dccb346ae31bd1392f4210b2d5c5647c853986bfec95cf70240b92bafdc61b90e452a5d8315962738d10c10c2b53fdabff10503d05a
This avoids locking up the whole Desktop on some systems where messages
are sent through DBUS.
Instead of showing each message, we'll now consolidate all TXs into a single
message when more then 9 arrive at once (in 100ms).
* Remove dataChanged call for ToAddress
This call is redundant since a long time already. It comes from a time
where there was no ToAddress column, but only a Description column which
also contained status information for coinbases. This is gone for a long
time already, so the ToAddress column has nothing included which might
change when confirmations change.
For the history:
34fa178243 splitted the Description column
into Type and ToAddress
e599246803 removed last traces of status from
the ToAddress column
* Avoid call to labelForAddress in formatTxToAddress
This speeds up sorting by address
5a67c0524e [tests] Fix intermittent rpc_net.py failure. (John Newbery)
Pull request description:
rpc_net.py would intermittently fail on Travis, probably
due to assuming that two consecutive RPC calls were atomic.
Fix this by trying the test up to three times and only failing
if all three attempts fail.
fixes#11778
Tree-SHA512: f2f5047e05114ad2110377e6221ce057680c240952971fb33863834587d2250896c6b697ba27eef739cd0ab23faf47dfae8cafadc9833cbfab5a6f7e36dae5e2
* Disable move ctor/operator for CKeyHolder
Also fixes these warnings:
```
In file included from dsnotificationinterface.cpp:12:
In file included from ./privatesend/privatesend-client.h:8:
./privatesend/privatesend-util.h:18:5: warning: explicitly defaulted move constructor is implicitly deleted [-Wdefaulted-function-deleted]
CKeyHolder(CKeyHolder&&) = default;
^
./privatesend/privatesend-util.h:13:17: note: move constructor of 'CKeyHolder' is implicitly deleted because field 'reserveKey' has a deleted move constructor
CReserveKey reserveKey;
^
./wallet/wallet.h:1282:5: note: 'CReserveKey' has been explicitly marked deleted here
CReserveKey(const CReserveKey&) = delete;
^
In file included from dsnotificationinterface.cpp:12:
In file included from ./privatesend/privatesend-client.h:8:
./privatesend/privatesend-util.h:19:17: warning: explicitly defaulted move assignment operator is implicitly deleted [-Wdefaulted-function-deleted]
CKeyHolder& operator=(CKeyHolder&&) = default;
^
./privatesend/privatesend-util.h:13:17: note: move assignment operator of 'CKeyHolder' is implicitly deleted because field 'reserveKey' has a deleted move assignment operator
CReserveKey reserveKey;
^
./wallet/wallet.h:1283:18: note: 'operator=' has been explicitly marked deleted here
CReserveKey& operator=(const CReserveKey&) = delete;
^
2 warnings generated.
```
* Slightly refactor `CKeyHolderStorage::AddKey()` to clarify that it's ptr and not the object itself that we are moving
a0daea459cf4812fbdda9a7ead131a73f5856c09 [build] depends macOS: point --sysroot to SDK (Sjors Provoost)
Pull request description:
Fixes errors like `fatal error: 'unistd.h' file not found` when building depends on macOS.
Replaces #14352 (which doesn't work on Catalina).
ACKs for top commit:
jonasschnelli:
utACK a0daea459cf4812fbdda9a7ead131a73f5856c09
Tree-SHA512: 995b1e1e84e635b32d1d4038bc63730c94a7c318b7240f6d62825977e5c97fe52c5aa5a0f39070beb0df8271dd294b36d6b5cf7f09ad07494fb15d5bd4d77f68