Releases: PIVX-Project/PIVX
v5.6.1
v5.6.0
PIVX Core version 5.6.0 is now available from: https://github.com/pivx-project/pivx/releases
This is a new major version release, including various bug fixes and performance improvements, as well as updated translations.
Please report bugs using the issue tracker at github: https://github.com/pivx-project/pivx/issues
Mandatory Update
PIVX Core v5.6.0 is a mandatory update for all users. This release contains new consensus rules and improvements that are not backwards compatible with older versions. Users will need to update their clients before enforcement of this update goes into effect.
Exchange address activation is scheduled to go into effect at the following time:
Mainnet: block 4,281,680. ~Feb 29th 2024.
Masternodes will need to be restarted from the controller wallet once both the masternode daemon and the controller wallet have been upgraded.
Note: In preparation for the new address type activation, upgraded peers will start rejecting non-upgraded peers a few days before the exchange address activation block height noted above, we recommend everyone to be updated at least a week prior to this time.
How to Upgrade
If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), then run the installer (on Windows) or just copy over /Applications/PIVX-Qt (on Mac) or pivxd/pivx-qt (on Linux).
Notable Changes
New Exchange Address Type
A new address type has been added for use by exchanges that require additional regulatory compliance. This new "exchange address" functions similarly to a regular PIVX address, but with one distinct difference; transactions originating from a SHIELD address are not allowed to be sent to said exchange addresses.
Creation of these new exchange addresses is available via the new getnewexchangeaddress
RPC command. It takes an optional label (string)
to set a label for the address if necessary. Functionality is the same comparatively to getnewaddress
, getnewstakingaddress
and getnewshieldaddress
Command Name | Purpose | Requires Unlocked Wallet? |
---|---|---|
getnewexchangeaddress |
Creates a new exchange address | Yes |
Command is detailed below:
getnewexchangeaddress
Returns a new exchange address for receiving payments. Result: "address" (string) The new exchange address.
Use Coin Control for masternode collateral creation
It is now possible to use the GUI's Coin Control feature to manually select which inputs you would like to use when creating a new masternode. The previous functionality of automatically selecting sufficient inputs remains however.
Generate a proposal payout address on-the-fly
Proposal creators can now choose to generate a new PIVX address to be used as a proposal's payout address directly within the proposal creation wizard.
Lockable sapling notes (SHIELD UTXOs)
The ability to "lock" SHIELD UTXOs has been added to both the RPC's lockunspent
command as well as the GUI's Coin Control interface. This brings feature parity between SHIELD and Transparent UTXOs.
startmasternode RPC command cleanup
The startmasternode
RPC command has had some long-time non-working options removed as part of a cleanup. Notably; the local
and many
options no longer exist. This is not a change in functionality, as both options have essentially done nothing for quite some time, and only led to confusion amongst users.
5.6.0 Change log
Detailed release notes follow. For convenience in locating the code changes and accompanying discussion, both the pull request and git merge commit are mentioned.
Core Features
- #2895
d293ad272c1c6545a54a80e60c32142fcd455564
[Core][GUI][RPC] Exchange Address (Liquid369)
Build System
- #2758
3e2eb99bc82b7356a6dd779c5098a5336a55e22a
[Build] Update httpserver.cpp (andi448) - #2789
5c5565924a747e26264430dead72d509fafcded5
[Build] Add Liquid369 gpg key (Liquid369) - #2799
e8cf23395ebc83f6b5dde49f497ced0e40baf5dd
[Build] Bump master to 5.5.99 (pre-6.0) (Fuzzbawls) - #2803
ad9ecf88ab89a775fa18b4f52fdd6b5cdf170981
[Build] Bump copyright year to 2023 (Fuzzbawls) - #2816
c36e8c5b51cac3eae4be6cac4e5596876bc40ae1
[Build] Fix build with configure flag --enable-mining-rpc (PeterL73) - #2821
523877c255915567a6d09795c3cdb51a38c6ac98
[Build] Disable libsep256k1's openssl tests (Fuzzbawls) - #2839
aadf4bb2c2f578712b1050d29ad4b526ebb14297
[Build] Minor fixups and simplifications for macdeploy (Fuzzbawls) - #2868
30ae211daf009234d9e64ef7c4a8b0f06293ca15
[Build] Add header files (Duddino) - #2896
ea3d1d6b3f838043a5eaf438abb9adbfba39fde7
[Build] Further security and symbol checking updates (Fuzzbawls) - #2899
badb446e0b5c8ade5b26d4c944f96cb64afed44e
[Build] Update copyright year to 2024 (Fuzzbawls) - #2901
cdda6450ba6a16c71db62e66436b98471d9c8b8d
[Build] Add duddino GPG key (Duddino)
Depends System
- #2826
a161b1d31a0e15116fd8968790d97ce8d1be1a01
[Depends] Bump zlib to v1.2.13 (Fuzzbawls) - #2872
8c4ffa642981ccff126f9fe138117177861684cb
[Depends] Bump Rust toolchain to 1.69.0 (Fuzzbawls)
P2P Protocol and Network Code
- #2824
cfc110e0a0750cb8903a17704f9e9c59b344cf9a
[P2P] Rate limiting rumored address processing (Liquid369) - #2849
39656e39125ab0eea58459e1f295aa6122203298
[P2P] Do not fully sort all nodes for addr relay (Liquid369) - #2850
9ea6a1bd39951b33b9ece40b30642bda00d42524
[P2P] Increase performance of Good (Liquid369) - #2851
f07f32c09a99542f292154051fadd13c2cdee40f
[Net] Add Liquid DNS Seeder for mainnet (Liquid369)
GUI
- #2798
9e2a102f3d3f19c3259e7771d8a073308f3dc8db
[GUI] Adds copy button to proposal recipient address (Liquid369) - #2828
89f3f9853d414ae607a4b85055ee470735ba0447
[GUI] Proposal Generate Address (Liquid369) - #2829
106e72e59ef4c6ac116eca55b29adcce90b4212a
[GUI] Fix bug in proposal creation (panleone) - #2842
744b3241943006936bf9747d87982ec7f463c6d7
[GUI] Show memo in self s->s txs (panleone) - #2852
aca81a13cfb6f3e1cbb4999107d065510b61473c
[GUI] Fix ban actions in peer list (Liquid369) - #2854
a428bc28b645d0da77de4b40d19a7cfa6ff63af1
[GUI] Don't always clear coin control (panleone) - #2859
fec4cfe2af5d5474de4b6a70320057d19bd913e1
[GUI] CoinControl Change (panleone) - #2860
62d745982e96a48ecbaed364d1b055f9ad222719
[Bug] Fix toggle lock button (panleone) - #2862
1f0db3868ad577d72c44171e9d4f27f9aa923fc6
[GUI] CoinControl for masternodes (panleone) - #2863
6c26a0eb772dbfccbdbaff0129068f1427b4f843
[Bug] [GUI] Fix focus on send transaction (panleone) - #2865
559e4f1dc39e1e65029462d92d42e6c7e40d5697
[GUI] Add differentiation for Shielded Memos (Liquid369) - #2874
d0cf09312df121894803386757ac3ef3bc9d2f2c
[GUI] Periodic make translate (Fuzzbawls) - #2893
012387d563647a2a1898aa381dada16eba346761
[GUI] Remove unused addressbookpage references (Fuzzbawls)
RPC/REST
- #2833
25bcf8600faff97bb63e60440d65193d426bb9f2
[RPC] Cleanup startmasternode command (Fuzzbawls) - #2856
f02ab524131e79805910c846a8569ba3beea9145
[RPC] Fix Invalidateblock (panleone) - #2873
05fdf6040adf0b3517b294b3a8729400522ee06e
[RPC][MN] Serialize in ADDRV2 for TorV3 in RPC's (Liquid369)
Wallet
- #2782
0bd96c8a188547be8ce4bb5415610e0285ec76d2
[Wallet] Fix stake split output count calculation (PeterL73) - #2812
ac8a74dc2a946df609c6d200a9367f1264fb638f
[Wallet] Fix AutoCombineDust and improve setautocombinethreshold (panleone) - #2861
326321d511e600a0d6a75350eb6cfe9832604528
[Wallet] Locked sapling notes (panleone)
Testing Frameworks
- #2822
0d779aa53d7e67a73e968e5c04fe4446a1021d98
[Tests] Replace hashlib.ripemd160 with native implementation (Fuzzbawls) - #2832
6e50e49eea89b8ea15e4bcf8def69f4b36b4116a
[Tests] Run tiertwo and sapling functional tests by default (Fuzzbawls) - #2840
0d2051a82c5fa5fb28c43bc9e1fa2c92ae7b4d78
[Tests] Add further RPC test coverage for cold staking (Fuzzbawls) - #2867
3a7ab3d715e54ef9583b436a52315ec168193977
[Core][Tests] Cleanup HTTPServer start and stop (Liquid369) - #2877
42643088e5052faab4fb4fa9a53f7bdc05970e52
[Tests][Scripts] Bump Python version to 3.8 and add more linting (Fuzzbawls) - #2878
0ab665dfef9082acff0e32d62df46b7ca859d1d1
[Lint] lint spelling (Fuzzbawls) - #2881
6829cfd172b410e4de169bea3f9663f4b220c949
[Tests] Fix random fee generation (panleone)
Scripts and Tools
- #2806
e4634a5d53d24502056f22f95379b22c69275579
[Tools] Sanitize existing clang-format rules (Fuzzbawls) - #2827
38df19c2672b60c90ec315fd781dde3183bb81d1
[Tools] Fix case typo in .clang-format (Fuzzbawls) - #2855
616cc4823f6a04cdcf8790ab5d7766189064eaf3
[Scripts] Delete redundant util/fetch-params.sh (Liquid369) - #2892
658f2fe46e27b7db1b2b7df31725383cfcd13fa1
[Scripts][GUI] Overhaul translation ingestion script and update translations from Transifex (Fuzzbawls)
Continuous Integration
- #2787
286c318db2fc451bfdea2605ff11aabf68fb0298
[GA] Update depreciated actions (Fuzzbawls) - #2817
9240e153f3074cb0537e72c887e1715449e7b7a1
[GA] Bump GA linux workers to Ubuntu 20.04 (Fuzzbawls) - #2825
e1e376e494fab2fac33d85bb3477ef8f776e378e
[GA] Reorganize and optimize GA runner flow (Fuzzbawls) - #2857
05e73a0ef50c2886c48faf1d330d810f7112584b
[GA] Overhaul GA caches (Fuzzbawls) - #2891
028a1eaa1d8cdc1ff3ebe8463182189007092094
[GA] Fix macOS runs (Fuzzbawls) - #2897
c53095a9ed8b672c15d22f3ef21a15cbc427d3be
[GA] Update actions to node20 versions (Fuzzbawls) - #2903
03f038b82fa724978b112def30192abdfb279904
[GA] Link Boost 1.76 regardless of pre-existing version (Fuzzbawls)
Internal Libraries
v5.5.0
PIVX Core version v5.5.0 is now available from: https://github.com/pivx-project/pivx/releases
This is a new major version release, including various bug fixes and performance improvements.
Please report bugs using the issue tracker at github: https://github.com/pivx-project/pivx/issues
Mandatory Update
PIVX Core v5.5.0 is a mandatory update for all users. This release contains new consensus rules and improvements that are not backwards compatible with older versions. Users will need to update their clients before enforcement of this update goes into effect.
Network enforcement time is now set to epoch time of 1673568000
Date and time (GMT): Friday, January 13, 2023 12:00:00 AM
The "estimated" block height for this to occur is 3,701,423, which is only an estimate and surely to be inaccurate, but was requested to be stated here.
Reward changeover is currently scheduled to go into effect at the following time:
Mainnet: block 3,715,200. ~Jan 22nd 2023.
Masternodes will need to be restarted once both the masternode daemon and the controller wallet have been upgraded.
If you are running a Masternode over Tor, please read the "How To Upgrade" section.
Note: In preparation for the enforcement, upgraded peers will start rejecting non-upgraded peers few days before the changeover block height, we recommend everyone to be updated at minimum a week before the final time.
Please report bugs using the issue tracker at github: https://github.com/pivx-project/pivx/issues
How to Upgrade
If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), then run the installer (on Windows) or just copy over /Applications/PIVX-Qt (on Mac) or pivxd/pivx-qt (on Linux).
Sapling Parameters
In order to run, all versions after 5.0.0, PIVX Core requires two files, sapling-output.params
and sapling-spend.params
(with total size ~50 MB), to be saved in a specific location.
For the following packages, no action is required by the user:
- macOS release
dmg
binaries will use the params that are bundled into the .app bundle. - Windows installer
.exe
will automatically copy the files in the proper location. - Linux
PPA/Snap
installs will automatically copy the files in the proper location.
For the other packages, the user must save the param files in the proper location:
- macOS/Linux
tar.gz
tarballs include a bash script (install-params.sh
) to copy the parameters in the appropriate location. - Windows
.zip
users need to manually copy the files from theshare/pivx
folder to the%APPDATA%\PIVXParams
directory. - self compilers can run the script from the repository sources (
params/install-params.sh
), or copy the files directly from theparams
subdirectory to~/.pivx-params
.
Notable Changes
New Rewards Structure
Starting at block 3,715,200 The rewards structure is being adjusted after many months of discussion, analysis, and agreement from many in the community.
The new rewards are as follows:
Party | Current Rewards | New Rewards |
---|---|---|
Staker | 2 | 4 |
Masternode | 3 | 6 |
Budget1 | 1 | 10 |
1: Budget coins are ONLY created if there is a valid passing budget proposal requesting a specific amount of coins to be created. This occurs roughly once every 30 days.
Network Activity Toggle
The GUI wallet now allows for the user to enable/disable all network activity from the Settings page. This can be handy if, for example, you need to restart your router or modem.
RPC Changes
getblock additional verbosity
The getblock
command now has an additional verbosity level. The command's second parameter has been changed from a boolean to and integer to support this.
- If verbosity is 0, returns a string that is serialized, hex-encoded data for block 'hash'.
- If verbosity is 1, returns an Object with information about block
hash
. - If verbosity is 2, returns an Object with information about block
hash
and information about each transaction.
getnewshieldaddress label support
The getnewshieldaddress
command now supports an optional label
parameter. If specified, the text label will be added to the wallet's address book.
New setnetworkactive command
A new setnetworkactive
command has been added to enable/disable all network activity. The command specs are as follows:
setnetworkactive true|false
Enable/Disable all p2p network activity.
Result:
status: (boolean) The final network activity status
Examples:
setnetworkactive true
setnetworkactive false
New scantxoutset command
A new scantxoutset
command has been added that allows for advanced searching of the unspent transaction outputs (UTXOs). As this is a highly advanced and complex command that won't apply to most end users, the full command spec won't be detailed here.
Please refer to the detailed spec by running help scantxoutset
or refer to #2780.
v5.5.0 Change log
Detailed release notes follow. This is the complete list of PRs for this release version. For convenience in locating the code changes and accompanying discussion, both the pull request and git merge commit are mentioned.
Consensus
- #2763
f849beaf2c2
[Consensus] New block rewards (tohsnoom) - #2770
8d3f950bb40
[Consensus] Set testnet new rewards height (Fuzzbawls) - #2772
9be813c8c6d
bugfix new block reward payment and verification (PeterL73) - #2781
414be936487
[Consensus] Set v5.5 activation height for mainnet (Fuzzbawls) - #2784
3c63095b5fe
[Consensus] Bump v5.5 activation height for mainnet (Fuzzbawls)
RPC
- #2732
7216dc980f4
Remove cs_main lock from blockToJSON (random-zebra) - #2734
f79e009fe37
[RPC] Consistently use ParseHashV to validate hash inputs in rpc (random-zebra) - #2746
e3d54848845
Fix mnconnect missing parameter and rename cxxtimer.hpp (random-zebra) - #2774
768dfb5a5f1
[RPC] add include_delegated to vRPCConvertParams (PeterL73) - #2779
abb888b0ac7
[RPC] Backport getblock verbosity (tecnovert) - #2780
8cc21819d80
[RPC] Backport scantxoutset from BitCoin Core v0.17.2 (PeterL73)
Build Systems
- #2650
7e2d1aff1f8
Update bls-signatures subtree to latest version (furszy) - #2694
060a0a5656d
[Build] Bump master to 5.4.99 (furszy) - #2695
2d37006acb1
[CLI][Build] Guard libevent error messages (Fuzzbawls) - #2702
f2b45fded0c
[Core][Build] Fix atomic data races in BLS operations (Fuzzbawls) - #2710
5c5bb069aa9
[Build] Clean up additional coverage and test data (Fuzzbawls) - #2731
04ae0156cca
[Build] Add CMake option to compile with debug flags (Fuzzbawls) - #2738
37635f49076
[Build] Fix multi-line comment warning (Fuzzbawls) - #2740
0e757ad2c9b
[Lint] Introduce lint-includes.sh script (Fuzzbawls) - #2759
d2a30915ca2
[Build][CMake] Use CMake internal instead of custom command for moc (Fuzzbawls) - #2767
291ef05f538
[GA] Run unit/functional tests on native macOS 11 (Fuzzbawls) - #2769
bb8b073d108
[GA] Disable Unit tests for win64 build in GA (Fuzzbawls) - #2771
f656ea9f9e5
[GA] Use explicit llvm version for macOS CMake build. (Fuzzbawls)
GUI
- #2606
f6145532b57
[Net][GUI][RPC] Add enable/disable network activity feature (João Barbosa) - #2655
7d237ad71e8
[GUI] Clean not longer used addnewaddressdialog. (furszy) - #2673
0f3ecb76a96
[Cleanup] Remove unusedRecentRequestsTableModel
andPlatformStyle
(random-zebra) - #2705
5851e7574cf
[GUI][BugFix] Fix missing dashboard chart date filter initialization at startup (furszy) - #2716
2f8a0341b6b
[GUI] Don't error on zero amount for new cold staking address (Fuzzbawls) - #2717
6c33de8de9c
[GUI][Bug] Don't set a proposal's status to PASSING_NOT_FUNDED prematurely (Fuzzbawls) - #2721
bedf4de5948
[GUI] Decouple legacy MNs code from the GUI elements (furszy) - #2727
48759887441
[trivial] Fixing several QT related circular dependencies (furszy) - #2760
4c466f41984
[GUI][BUG] Properly validate proposal creation Name/URL (Fuzzbawls) - #2768
c439ec7a12c
[GUI] Fix Passing Not Funded logic (Fuzzbawls)
Testing Frameworks
- #2685
48741d8993d
[QA] Use single node in sapling_changeaddresses (random-zebra) - #2701
6ed103f2049
[test] sapling_key_import_export.py whitelist peers to speed up tx relay. (furszy) - #2711
73ac5f699e2
[Tests] Improve coverage for merkleblock and bloom code (Fuzzbawls) - #2724
bc3a9778ae3
[test] wallet_zapwallettxes.py whitelist peers to speed up tx relay. (furszy) - #2725
b6c6a8f36f2
[test] Rewrite rpc_wallet_encrypted_wallet_sapzkeys unit test as functional test (furszy) - #2747
4e46b143241
Add proper bech32 encoding/decoding utilities to python framework (random-zebra) - #2766
d10832cbc6b
[Tests] Native secp256k1 for functional tests (Fuzzbawls)
Tier Two / Budget
- #2394
d277bdffcd7
[budget] Clean pre-v5 consensus guards for proposal start block and max payment amount (furszy) - #2648
7937e8e2eb9
[wallet] Reopen CDBEnv after encryption instead of shutting down (furszy) - #2657
1709f6bf21d
[TierTwo] Fix more circular dependencies. (furszy) - #2658
5dc6b88fde4
[budget] Do not count votes twice after calling GetBudgetWithHighestVoteCount. (furszy) - #2684
ab30cd257ab
[Refactor] Move tier two managers initialization from init.cpp to tiertwo/init.cpp (furszy) - #2686
204770a6879
[TierTwo] Introduce network requests manager (furszy) - #2690
017953ee087
[Refactoring] Decouple and encapsulate tier two synchronization state (random-zebra) - #2699
da647d42e90
[Refactor] Deduplicate final commitment v...
v5.5.0rc1
First release candidate for the upcoming v5.5.0 release. This is primarily for use on testnet, and will be required to connect to testnet after Oct 6.
Full, finalized release notes will be available with the final release version.
v5.4.0
PIVX Core version v5.4.0 is now available from: https://github.com/pivx-project/pivx/releases
This is a new major version release, including a brand-new visual graphical interface for the Governance system, tier two network stability improvements, various bug fixes and performance enhancements, as well as updated translations.
Please report bugs using the issue tracker at github: https://github.com/pivx-project/pivx/issues
How to Upgrade
If you are running an older version, shut it down. Wait until it has completely shut down, then run the installer (on Windows) or just copy over /Applications/PIVX-Qt (on Mac) or pivxd/pivx-qt (on Linux).
Notable Changes
GUI
- Brand-new governance graphic user interface! Styled for both themes, light and dark! Now you will be able to:
- Watch and follow active proposals live.
- Create new proposal using a simple three steps wizard (The wallet will automatically create the transaction and relay the proposal to the network without any further interaction).
- Follow how many blocks left for the next superblock, the allocated and the available amounts.
- Vote for proposals functionality with a multi-masternode voting wizard and change vote on-demand.
- Filter proposals by status, votes count and more.
- Masternode rewards have been included into the dashboard chart.
- Address search functionality for cold-staking screen.
- More precise after-fee calculation.
- Wallet startup screen presenting needed disk space per-network.
- Fix "null" name for wallet automatic backups.
- Fix bug during restart process that blocked the wallet for being automatically restarted.
Wallet
-
Improved transaction inputs selection, preferring coins that have fewer ancestors (preventing tx rejection for long mempool chains).
-
Much faster shield transactions processing during block reception (faster synchronization for large wallets).
RPC Server
Deprecated 'autocombinerewards' Command
The autocombinerewards
RPC command was soft-deprecated in v5.3.0 and replaced with explicit setter/getter commands setautocombinethreshold
/getautocombinethreshold
. PIVX Core, by default, will no longer accept the autocombinerewards
command, returning a deprecation error, unless the pivxd
/pivx-qt
is started with the -deprecatedrpc=autocombinerewards
option.
This command will be fully removed in v6.0.0.
Shield address support for RPC label commands
The setlabel
RPC command now supports a shield address input argument to allow users to set labels for shield addresses. Additionally, the getaddressesbylabel
RPC command will also now return shield addresses with a matching label.
Specify optional label for getnewshieldaddress
The getnewshieldaddress
RPC command now takes an optional argument label (string)
to denote the desired label for the generated address.
P2P connection management
-
Peers manually added through the addnode option or addnode RPC now have their own
limit of sixteen connections which does not compete with other inbound or outbound
connection usage and is not subject to the maxconnections limitation. -
New connections to manually added peers are much faster.
v5.4.0 Change log
Block and transaction handling
- #2549 Remove temporary guard for 5.3 rules pre-enforcement (random-zebra)
- #2552 Restore pre-v5.3 guard for under-minting blocks rule (random-zebra)
- #2591 Clean zc transactions from check() method (furszy)
P2P protocol and network code
- #2587 Split resolve out of connect and add addnode parallel outbound connections limit (furszy)
- #2677 [net_processing] Fix ignoring get data requests when fPauseSend is set on a peer (furszy)
- #2682 [net] Remove assert(nMaxInbound > 0) (furszy)
Wallet
- #2539 Sapling, restructure increment witnesses workflow (furszy)
- #2625 Fix "null" backup file name (furszy)
- #2601 Prefer coins that have fewer ancestors, sanity check txn before ATMP and rebroadcast functional test (furszy)
Tier two network
- #2565 [BUG] Consider also DMNs in CountEnabled and CountNetworks (random-zebra)
- #2567 [BUG][TierTwo] MNB process refactor (furszy)
- #2659 [TierTwo] Fix and improve several synchronization problems (furszy)
GUI
- #2534 Add address search option in cold-staking widget (random-zebra)
- #2593 [BUG] set locked label invisible for shield notes (furszy)
- #2568 [BUG][GUI] Refine bytes/fee/"after fee" calculation in coin-control (random-zebra)
- #2406 New Governance Graphical User Interface (furszy)
- #2626 [BugFix] Schedule proposal broadcast only if the block has not passed yet (furszy)
- #2627 Correct proposal large title for being cut when the app window width isn't big enough (furszy)
- #2621 Show disk space requirement per-network (Fuzzbawls)
- #2635 [Cleanup] Stop translating placeholder strings (Fuzzbawls)
- #2577 Include MN Rewards in the dashboard chart (furszy)
- #2564 Clean restart process (furszy)
- #2661 [BUG] GUI: invalid locking of shield notes in coin control (random-zebra)
- #2662 [GUI] Don't show UTXO locking options for shield notes (Fuzzbawls)
- #2663 [Build] Sanitize governance UIs item naming (Fuzzbawls)
- #2671 [GUI] Differentiate Budget payment output records from MNs block reward records (furszy)
- #2664 [GUI] Fix proposal tooltip menu location skewing (Fuzzbawls)
- #2670 [GUI] Governance, do not open the proposal creation wizard if node is in IBD (furszy)
- #2665 [GUI] Fix governance nav button hover css (Fuzzbawls)
- #2672 [GUI] Fix proposal name and URL size limit validation (furszy)
Build system
- #2521 Add M1 mac homebrew path (Fuzzbawls)
- #2522 Use latest config guess/sub (Fuzzbawls)
- #2581 [Cleanup] Remove un-used TravisCI related files (Fuzzbawls)
- #2523 Bump gmp to v6.2.1 (Fuzzbawls)
- #2582 Fix Qt builds for M1 apple builds (Fuzzbawls)
- #2588 Remove unused cargo-checksum.sh script (Fuzzbawls)
- #2583 Bump Rust to v1.54.0 (Fuzzbawls)
- #2589 [CMake] Further Apple M1 path improvements (Fuzzbawls)
RPC and other APIs
- #2540 [Doc] Fix RPC/cli example in setautocombinethreshold help (random-zebra)
- #2600 getnewshieldaddress add 'label' argument (furszy)
- #2610 Remove auth cookie on shutdown (furszy)
- #2608 Fully deprecate the autocombinerewards method (Fuzzbawls)
- #2609 Shield address setlabel/getaddressesbylabel (Fuzzbawls)
Tests and QA
- #2494 [Test] Script tests updates (furszy)
- #2420 [BLS] Add wrapper around chiabls lib, worker, benchmarks and unit tests (random-zebra)
- #2550 Add MN payments test coverage (furszy)
- #2538 Improve benchmark precision (furszy)
- #2616 Replace usage of tostring() with tobytes() (Fuzzbawls)
- #2585 Secondary chains acceptance test coverage (furszy)
- #2590 ci: Enable shellcheck linting (Fuzzbawls)
- #2633 sapling_wallet_nullifiers.py whitelist peers to speed up tx relay (furszy)
- #2634 fix coinstake input selection on secondary chains (furszy)
- #2638 Fix intermittent mempool sync failures in sapling_wallet_nullifiers (random-zebra)
- #2619 Add test case for node with a full "ask for" inv set (furszy)
- #2641 Add linter for circular dependencies and start fixing them (random-zebra)
Miscellaneous
- #2493 Locked memory manager updates (furszy)
- #2547 util: Replace logprintf (but not logprint) macro with regular function (random-zebra)
- #2545 util: Better url validation (random-zebra)
- #2548 util: Add validation interface logging (random-zebra)
- #2558 Cleaning unused code (furszy)
- #2629 util: Support serialization of std::vector (random-zebra)
- #2586 [Cleanup] Remove fNetworkNode and pnodeLocalHost, and encapsulate CNode id. (furszy)
- #2579 pivx-cli better error handling + libevent RAII upstream backports (furszy)
Refactoring and cleanups
- #2569 [Cleanup] Remove and deglobalize system.h global variables (furszy)
- #2603 [Cleanup] Remove unused chain params (furszy)
- #2630 [Cleanup] Remove unused variables and private fields (random-zebra)
- #2642 scripted-diff: replace boost::optional with Optional<> wrapper (random-zebra)
- #2646 [Refactoring] Break circ dependency init -> * -> init by extracting shutdown.h
- #2643 [Refactoring] Remove checkpoints circular dependencies (random-zebra)
- #2644 [Refactoring] remove circular dependency primitives/transaction <-> script/standard (random-zebra)
Credits
Thanks to everyone who directly contributed to this release:
- Alexander Block
- Anthony Towns
- Carl Dong
- Chris Stewart
- Cory Fields
- furszy
- Fuzzbawls
- gmaxwell
- Gregory Maxwell
- Gregory Sanders
- Gregory Solarte
- instagibbs
- Jeffrey Czyz
- Jim Posen
- John Newbery
- Kalle Alm
- Karl-Johan Alm
- Kaz Wesley
- Luke Dashjr
- MarcoFalke
- Martin Ankerl
- Matt Corallo
- Nikolay Mitev
- Pavel Janík
- Pieter Wuille
- practicalswift
- Puru
- random-zebra
- Russell Yanofsky
- Suhas Daftuar
- Wladimir J. van der Laan
As well as everyone that helped translating on Transifex, and every single person who tested the release candidates.
v5.4.0rc2
v5.4.0rc1
v5.3.3
PIVX Core version v5.3.3 is now available from: https://github.com/pivx-project/pivx/releases.
This is a new optional but highly recommended point version release focused on solving the tier two network synchronization issues affecting v5.3 branch releases.
Technical details can be found in #2611 and #2622
How to Upgrade
If you are running an older version, shut it down. Wait until it has completely shut down then run the installer (on Windows) or just copy over /Applications/PIVX-Qt (on Mac) or pivxd/pivx-qt (on Linux).
Important Note
Masternodes will need to be restarted once both the masternode daemon and the controller wallet have been upgraded.
Extra GUI changes
The non-translated "Welcome to %1 wallet" in the welcome wizard dialog bug has been solved by #2617.
Credits
Thanks to everyone who directly contributed to this release:
- furszy
- fuzzbawls
- random-zebra
As well as everyone that helped translating on Transifex.
v5.3.2.1
PIVX Core version v5.3.2.1 is now available from: https://github.com/pivx-project/pivx/releases.
This is a new optional patch version release focused on solving specific issues reported by the community.
Notable Changes
GUI
-
The dashboard staking chart "last day of the month not being shown" bug was fixed.
-
The non-refreshed locked coins label, in the coin control dialog, for shield notes selection bug was fixed.
-
More accurate bytes, fee and "after fee" calculation in coin control.
-
The invalid presentation of non available translatable strings such as "Welcome to %1 wallet" bug was fixed.
RPC
- The RPC
sendmany
command selecting, by default, non-confirmed utxo bug was fixed.
v5.3.2.1 Change log
GUI
- #2568 [BUG][GUI] Refine bytes/fee/"after fee" calculation in coin-control (random-zebra)
- #2578 [GUI] dashboard chart, fix last day of the month not being shown (furszy)
- #2593 [GUI] [BUG] set locked label invisible for shield notes (furszy)
- #2604 [GUI] Update translations from transifex for v5.3.2.1 (fuzzbawls)
RPC
- #2592 [RPC][BUG] fix missing minimum depth set for legacy transactions. (furszy)
Credits
Thanks to everyone who directly contributed to this release:
- furszy
- fuzzbawls
- random-zebra
As well as everyone that helped translating on Transifex.
v5.3.2
PIVX Core version v5.3.2 is now available from: https://github.com/pivx-project/pivx/releases
This is an important release that fixes a forking scenario where the node rejects and marks as invalid a valid block in a parallel branch.
We recommend everyone to update your node/wallet as soon as possible to not be affected by this issue.
Please report bugs using the issue tracker at github: https://github.com/pivx-project/pivx/issues