Releases: navcoin/navcoin-core
Community Fund Stability Patches
NavCoin v4.7.2 Release Notes
Fix for Verify Chain
<Pull Request 634>
<Commit 049978e>
This patch fixes Issue 630 and introduces several important changes.
- New RPC command
getcfunddbstatehash
covered by functional testcfunddb-statehash.py
- New state for payment requests
6
when those are paid. - The payment request parameter paidOnBlock is substituted by
stateChangedOnBlock
when state is6
- New structure for storing the state history of CFundDB entries. Those are stored in a map associating blockhash and state, allowing to directly revert state transitions when reorganizations are seen.
verifychain
now checks for the consistency of the CFundDB state hash when level 4 is specified.
IMPORTANT
This set of changes will require older clients to reindex on launch, keeping the node offline for some hours at best. In order to reduce downtime, node operators can proceed as follows if needed:
- Close node with old version.
mkdir /tmp/reindexdata; cp -rf <data_folder>/blocks /tmp/reindexdata/; cp -rf <data_folder>/chainstate /tmp/reindexdata/
- Reopen node with old version. It will be again online
- Launch in parallel a second instance of the node, this time using the new version with the parameters
-reindex -datadir=/tmp/reindexdata/
- Once the reindex finishes, close both nodes and copy back the reindexed data.
rm -rf <data_folder>/blocks <data_folder>/chainstate; cp -rf /tmp/reindexdata/* <data_folder>
- Relaunch new version of the node.
CFundDB extra log and ensure read before modify
<Pull Request 622>
<Commit 37fa72e>
This PR adds extra log for all the modifications of the CFundDB and ensures entries are read in the memory cache before being modified.
Restart testnet
<Pull Request 628>
<Commit b8ed018>
This pull request starts a new NavCoin testnet. If you're running a testnet node you will need to will need to wipe your testnet data directory and connect to the new testnet nodes. A list of some of the testnet nodes operated by NavCoin Core developers can be found on Issue 626. If you need testnet coins or want to be added to the list of nodes, please comment on the issue or join the #dev-testnet channel in Discord.
Full list of Merged PRs
Pull Request 652
Commit 0cde809
Remove new version popupPull Request 651
Commit 95b524e
Update translationsPull Request 648
Commit 09f0531
Update QT stringsPull Request 647
Commit 0eafc3b
Reactivate CFundPull Request 641
Commit 494d4e2
Add extra stats to getblockPull Request 634
Commit 049978e
Fix for verifychainPull Request 644
Commit 5d59483
Adds proposalHash to the RPC getpaymentrequestPull Request 643
Commit d501c89
CPaymentRequest fields incorrect in diffPull Request 638
Commit 8131b42
Fixed freezing GUI on reindexPull Request 632
Commit 2ad3391
Fix reference to chain tipPull Request 629
Commit 2a6c64f
Seed nodesPull Request 637
Commit ad883cd
Set DEFAULT_SCRIPTCHECK_THREADS to autoPull Request 624
Commit 7058550
Updates to make the wallet.py and stakeimmaturebalance.py test more reliablePull Request 636
Commit e6f3c23
Only count stakes in main chainPull Request 633
Commit bfe9071
Add second dns seederPull Request 622
Commit 37fa72e
CFundDB extra log and ensure read before modifyPull Request 628
Commit b8ed018
Restart testnetPull Request 623
Commit 09ea936
Disable CFund client functionalityPull Request 609
Commit 1e73c05
Added clearer error messages for the nRequest amount validation
For additional information about new features, check https://navcoin.org/en/notices/
4.7.2 Release Candidate 1
NavCoin Core 4.7.2 Release Candidate 1
This tag is for Release Candidate 1 of NavCoin Core 4.7.2. This version should not be considered ready for production until all tests have been completed and the full public release has been published.
Fix for Verify Chain
<Pull Request 634>
<Commit 049978e>
This patch fixes Issue 630 and introduces several important changes.
- New RPC command
getcfunddbstatehash
covered by functional testcfunddb-statehash.py
- New state for payment requests
6
when those are paid. - The payment request parameter paidOnBlock is substituted by
stateChangedOnBlock
when state is6
- New structure for storing the state history of CFundDB entries. Those are stored in a map associating blockhash and state, allowing to directly revert state transitions when reorganizations are seen.
verifychain
now checks for the consistency of the CFundDB state hash when level 4 is specified.
IMPORTANT
This set of changes will require older clients to reindex on launch, keeping the node offline for some hours at best. In order to reduce downtime, node operators can proceed as follows if needed:
- Close node with old version.
mkdir /tmp/reindexdata; cp -rf <data_folder>/blocks /tmp/reindexdata/; cp -rf <data_folder>/chainstate /tmp/reindexdata/
- Reopen node with old version. It will be again online
- Launch in parallel a second instance of the node, this time using the new version with the parameters
-reindex -datadir=/tmp/reindexdata/
- Once the reindex finishes, close both nodes and copy back the reindexed data.
rm -rf <data_folder>/blocks <data_folder>/chainstate; cp -rf /tmp/reindexdata/* <data_folder>
- Relaunch new version of the node.
CFundDB extra log and ensure read before modify
<Pull Request 622>
<Commit 37fa72e>
This PR adds extra log for all the modifications of the CFundDB and ensures entries are read in the memory cache before being modified.
Restart testnet
<Pull Request 628>
<Commit b8ed018>
This pull request starts a new NavCoin testnet. If you're running a testnet node you will need to will need to wipe your testnet data directory and connect to the new testnet nodes. A list of some of the testnet nodes operated by NavCoin Core developers can be found on Issue 626. If you need testnet coins or want to be added to the list of nodes, please comment on the issue or join the #dev-testnet channel in Discord.
Full list of Merged PRs
Pull Request 648
Commit 09f0531
Update QT stringsPull Request 647
Commit 0eafc3b
Reactivate CFundPull Request 641
Commit 494d4e2
Add extra stats to getblockPull Request 634
Commit 049978e
Fix for verifychainPull Request 644
Commit 5d59483
Adds proposalHash to the RPC getpaymentrequestPull Request 643
Commit d501c89
CPaymentRequest fields incorrect in diffPull Request 638
Commit 8131b42
Fixed freezing GUI on reindexPull Request 632
Commit 2ad3391
Fix reference to chain tipPull Request 629
Commit 2a6c64f
Seed nodesPull Request 637
Commit ad883cd
Set DEFAULT_SCRIPTCHECK_THREADS to autoPull Request 624
Commit 7058550
Updates to make the wallet.py and stakeimmaturebalance.py test more reliablePull Request 636
Commit e6f3c23
Only count stakes in main chainPull Request 633
Commit bfe9071
Add second dns seederPull Request 622
Commit 37fa72e
CFundDB extra log and ensure read before modifyPull Request 628
Commit b8ed018
Restart testnetPull Request 623
Commit 09ea936
Disable CFund client functionalityPull Request 609
Commit 1e73c05
Added clearer error messages for the nRequest amount validation
For additional information about new features, check https://navcoin.org/en/notices/
Community Fund Nullified Entry Patch
NavCoin v4.7.1 Release Notes
Fix CFund DB read after nullified entry
<Pull Request 608>
<Commit 07d49bf2>
This patch fixes a bug where a cfund database entry that was previously deleted is still persisting, preventing future writes of the entry. This can happen in a scenario where a proposal is included in a block which is invalidated (because of a reorganization) which is then included in a new block as part of the new longest chain.
This fix is the main purpose of the 4.7.1 patch release, while preparing this bugfix there were several other PR's merged which are also included in this release.
Full List of Merged Pull Requests
-
Updated some NULL -> nullptr <Pull Request 509> <Commit 40eac7ab>
-
Replaced all BOOST_FOREACH calls with new for() syntax (c++11) <Pull Request 525> <Commit 8ed8cf87>
-
Updated the custom 'change' address to be a persistent setting #527 <Pull Request 527> <Commit b2921285>
-
Added new -allindex option <Pull Request 546> <Commit e1870814>
-
Replaced Q_FOREACH with for()> from c++11 standard <Pull Request 554> <Commit 82523147>
-
Set pindexDelete to nullptr on intialize <Pull Request 560> <Commit 762c3ffd>
-
Fixed some gitignore permissions and added new file to main gitignore <Pull Request 561> <Commit 130ddf4a>
-
Updated includes syntax based on discussion on #503 <Pull Request 566> <Commit 6de5f909>
-
Sort available coins for staking by coin age descending <Pull Request 578> <Commit c464383b>
-
Add support for raw script addresses <Pull Request 587> <Commit ff6f543e>
-
Updated depends to use winssl for windows and darwinssl for osx <Pull Request 603> <Commit f755e298>
-
Staking reward setup GUI <Pull Request 605> <Commit 5e0af830>
-
Fixed error.log loading in Debug Window (Windows) <Pull Request 611> <Commit 30401b32>
-
Fix random RPC tests failing <Pull Request 612> <Commit d5cfa467>
-
Patch for staking redirect gui <Pull Request 614> <Commit 80323b33>
-
Bump version number <Pull Request 615> <Commit 9e84d40a>
For additional information about new features, check https://navcoin.org/en/notices/
Known Issues
There is still one known issues with this release;
On some versions of OSX the background images of the menu buttons render incorrectly and appear pink.
This issue is cosmetic only and the navcoin core developers are working to resolve these issues in a forthcoming release.
SHA256 Hashes
navcoin-4.7.1-aarch64-linux-gnu.tar.gz
45d9b7f56ff96a165fee18a3fae20ae9966c37ee7365a8379508c434d6b377cb
navcoin-4.7.1-arm-linux-gnueabihf.tar.gz
847f0d32b4bdf4713142439426ff1848ea88cc80c2f2fb9bd42c1f34975cea64
navcoin-4.7.1-i686-pc-linux-gnu.tar.gz
e0351b0bc167bd20fad900c4034a773a89dfe462439e8919aaa275135f4d1cb3
navcoin-4.7.1-osx-unsigned.dmg
c5158388b310cf5a91829d7b68d138a033bfb7795cbdca4fe0f44a5545381a96
navcoin-4.7.1-osx-unsigned.tar.gz
999c44043ffe05361b58bc9cbf21e81221d0b0afd6d1e2377e8448ee7675c936
navcoin-4.7.1-osx64.tar.gz
ef3933cc443a0fead4069924aeaca016a21a5e2fb7e3b4423d65d80b64c98e82
navcoin-4.7.1-riscv64-linux-gnu.tar.gz
ae36dfc1cf2580bf74fa3cd67b5c351fa641d86a957dc1a44de380ce1b962716
navcoin-4.7.1-win32-setup-unsigned.exe
71ea6ab63e6cc4fc952d1755d4a4d031144194214e6cd2f7a799be78bf1ace6d
navcoin-4.7.1-win32.zip
daf777f623c7b58ba1b00575a5a14665848ffac075f8890211c671c2a6d7a262
navcoin-4.7.1-win64-setup-unsigned.exe
07a05bd3d0b373c296d3cbe0b00074070e80ac98fc895efa46ada8c2144f3c56
navcoin-4.7.1-win64.zip
5efce5cdad821fd804a6225c2e0b08508abaf32658cae86ec519daecb60ab890
navcoin-4.7.1-x86_64-linux-gnu.tar.gz
9b20702bf791462c1a5677e5efa96c2463db59299c82c9c8bf867cad74c4a803
navcoin-4.7.1.tar.gz
e76f528004f17f2e024e396327acc3da00137eb3d7975e8477e5556f96c04fe9
To check the validity of the hashes, visit the navcoin-sigs repository
NavCoin Core 4.7.0 - Purple Zebra
Purple Zebra Release Notes
Purple Zebra is the culmination of the last few months of work on NavCoin Core and includes 40 closed pull requests, many new features and important security updates & stability fixes. Due to the security patches, upgrading to Purple Zebra should be considered mandatory and performed as soon as possible, especially if you are staking.
Added password prompt for CFund payment/proposal dialogs
<Pull Request 474>
<Commit aa4bbaa>
Peviously you would have to unlock the wallet via the console or debug window before it was possible to create a proposal or payment request through the graphical interface. Now there is a dialog to unlock the wallet while using the Community Fund GUI.
Use of the CoinsDB for the Community Fund
<Pull Request 487>
<Commit a8f425b>
Previously the community fund data was stored in a seperate local database to the rest of the coin data. The data has now been migrated to be part of the CoinsDB which should increase performance and mitigate the data consistency issues that some users were experiencing.
Added error log tab in debug window
<Pull Request 466>
<Commit bed76b9>
You can now see errors which are logged to the debug.log file in the debug window of navcoin-qt. Users no longer have to manually read or search the debug.log via command line to find error messages.
Added some new FIAT currencies and enabled auto price update
<Pull Request 469>
<Commit 5ee24af>
30 Fiat can now be configured as the display units through of navcoin-qt. The issue causing the sockets polling for exchange rates not to close correctly has also been resolved which prevents the wallet from eventually crashing.
Added new progress ui for sync
<Pull Request 526>
<Commit 42769b2>
When the wallet starts and detects it is still catching up to the latest block a progress overlay will be presented to the user. The user can close the overlay but it is now clearer that the wallet is still syncing and the balances will be incorrect until syncing finishes.
Full List of merged pull requests
- Build: Compatibility with boost 1.67 <Pull Request 470> <Commit 47ac15f>
- Adds OP_POOL to scripts <Pull Request 464> <Commit 0c57840>
- Added a short bash command for dependencies to build-unix.md <Pull Request 452> <Commit ddba46d>
- Added the NavCoin Knowledge Base menu item <Pull Request 454> <Commit c9a1802>
- Currency Change now updates staking info as well <Pull Request 453> <Commit 4df0766>
- Removed some autogenerated files by QT <Pull Request 462> <Commit 8a638e9>
- Update copyright year and wallet version in clienversion.h <Pull Request 475> <Commit f00efb3>
- Added password prompt for CFund payment/proposal dialogs <Pull Request 474> <Commit aa4bbaa>
- Added new details for getstakinginfo error message <Pull Request 472> <Commit 4a62021>
- Updated all references to old Repo Address for NavCoin github current url <Pull Request 463> <Commit f31382f>
- Updated the navcoin.ico file to use new art <Pull Request 489> <Commit e9275a0>
- Updated navcoin.icns file with new assets <Pull Request 493> <Commit 342e29b>
- Updated other ico files <Pull Request 492> <Commit 926c49a>
- Fix for importaddress returning incorrect amounts <Pull Request 479> <Commit b115c2d>
- Added editorconfig file <Pull Request 497> <Commit f501b18>
- Fix for Coin Control "sorting" bug <Pull Request 461> <Commit a4c8eb6>
- Use of the CoinsDB for the Community Fund <Pull Request 487> <Commit a8f425b>
- TX_POOL missing in switch condition in the IsMine function <Pull Request 500> <Commit 498e75f>
- Fixed some file permissions <Pull Request 502> <Commit 7fac091>
- Added error log tab in debug window <Pull Request 466> <Commit bed76b9>
- Fix RPC Tests <Pull Request 480> <Commit c2855a7>
- Fixed a bug with the errorLogFile causing crashes <Pull Request 507> <Commit 9f40cbd>
- Prevent segfault on gui close <Pull Request 505> <Commit d4b23bf>
- Remove Bootstrap option from GUI <Pull Request 512> <Commit 79624cf>
- Use
-rescan
when-importmnemonic
<Pull Request 494> <Commit e061768> - Creates default config file <Pull Request 504> <Commit 940c669>
- Changes required for GLIBC backward compatibility with gitian builds <Pull Request 501> <Commit d3b5687>
- Fix potential deadlock <Pull Request 506> <Commit de6e167>
- Moved the checkboxes into the empty QGroupBox <Pull Request 484> <Commit 4fb8043>
- Added new attributes to the
getstakinginfo
andgetstakereport
commands <Pull Request 485> <Commit 82a2ba8> - Added some new FIAT currencies and enabled auto price update <Pull Request 469> <Commit 5ee24af>
- OSX DMG and Mac Deploy bug fixes <Pull Request 514> <[Commit e393fe4](e393fe494...
NavCoin Core v4.6.0 - Community Fund UI
NavCoin v4.6.0 Release Notes
Community Fund UI
<Pull Request 428>
<Commit cbffaee>
- Added a Community Fund tab to the core wallet
- Ability to view and filter proposals and payment request
- Proposals and payment requests can be voted on and created
- Removed the old Community Fund UI
Accumulation of staking rewards in different address
<Pull Request 401>
<Commit 2fb7b47>
This features introduces support for the -stakingaddress
launch argument which sets a NavCoin address where the staking rewards are accumulated. It also allows you to specify mappings from one address to another, such that the first address's staking rewards will be deposited in the second address.
stakingaddress
can take:
- one argument (i.e. one NavCoin address), e.g.
-stakingaddress=NxxxxMyNavCoinAddressxxxxxxxxxxxxx
; or - a JSON argument, mapping several staking addresses to corresponding receiving addresses, e.g.
-stakingaddress={"NxxxxMyStakingAddress1xxxxxxxxxxxx":"NxxxxMyReceivingAddress1xxxxxxxxxx","NxxxxMyStakingAddress2xxxxxxxxxxxx":"NxxxxMyReceivingAddress2xxxxxxxxxx","NxxxxMyStakingAddress3xxxxxxxxxxxx":"NxxxxMyReceivingAddress3xxxxxxxxxx"}
. One staking address in the JSON argument can also be set toall
and stakes from any staking address will be sent to the receiving address unless otherwise specified, e.g.-stakingaddress={"all":"NxxxxMyReceivingAddressALLxxxxxxxx",...}
Not compatible with cold staking.
Mnemonic seed phrase support
<Pull Request 400>
<Commit 375c657>
This PR adds a new RPC command to export the existing master private key encoded as a mnemonic:
dumpmnemonic
It admits an argument specifying the language.
Support for two new wallet options (-importmnemonic
and -mnemoniclanguage
) have also been added to allow to create a new wallet from the specified mnemonic.
Fix wrong balance after orphan stakes
<Pull Request 438>
<Commit 4041e3e>
This PR fixes an historical issue which made the wallet show a wrong balance after orphan stakes.
Index cold staking address unspent output by spending address
<Pull Request 434>
<Commit 404d85f>
When running a node with -addressindex=1 executing the RPC command “getaddressutxos” with the spending pubkeyhash of a cold staking address will now return any utxo’s available to spend by that key including those where the pubkeyhash is the spending key of a coldstaking transaction. Previously only regular utxo’s sent directly to that pubkeyhash were returned.
Fix for Payment Request reorganizations
<Pull Request 456>
<Commit 688bf4d>
This PR prevents payment requests with invalid hashes (not set yet or out of the main chain) to count for the already requested balance of a proposal.
Other updates to the NavCoin client, docs and codebase
- Missing increased buffer for cfund gui <Pull Request 459> <Commit 073ef14>
- Updated the help text for 'getcoldstakingaddress' RPC/cli call <Pull Request 458> <Commit b4a1db5>
- Combined fix for issues #445 and #446 <Pull Request 450> <Commit 96198f9>
- Fixes coldstake tx amount for spending wallets <Pull Request 447> <Commit 8c93c6b>
- Community Fund GUI date buffer increase <Pull Request 443> <Commit 8072efb>
- Use chainActive.Tip() instead of pindexBestHeader <Pull Request 442> <Commit 4de0827>
- Fix Gitian Build <Pull Request 441> <Commit afa2e8b>
- Adds arrayslice.h to Makefile.am <Pull Request 440> <Commit 5ba6b6a>
- Update FreeType depend file to 2.7.1 <Pull Request 433> <Commit 6025758>
- Fix crash with -banversion <Pull Request 432> <Commit a25b139>
- Fixed cold staking report RPC command <Pull Request 425> <Commit 765d5be>
- Fixed comment syntax in merkle_blocks.py <Pull Request 426><Commit f26e2a7>
- Fixed "GUI: libpng warning" in wallet <Pull Request 419> <Commit 0df065e>
- Fixed merkle_blocks.py test randomly failing <Pull Request 423> <Commit 52ed487>
- Fixed while loops of cfund tests causing random test fails <Pull Request 418> <Commit 66a4852>
SHA256 Hashes
To check the validity of the hashes, visit the navcoin-sigs repository
navcoin-4.6.0-aarch64-linux-gnu.tar.gz
5837fa19f4b5784871f081d06bcef14ff67b9b0bab1037333b7c514fa0e8e652
navcoin-4.6.0-arm-linux-gnueabihf.tar.gz
0ec939fa648a08583a40972d652af3d630f198a9eb38557b94bffabe5eb5b32f
navcoin-4.6.0.tar.gz
e8c56e47e99af1d41eb05ee961258c8ca4c1822b7a5e72c7961cb32650f2c72f
navcoin-4.6.0-osx.dmg
d99e812e574142913607a20ced1a6691018c15b53629a8ca62b2a383dd94b5b0
navcoin-4.6.0-osx64.tar.gz
b6fed840638e553f342ea439d33baf78b070b0b767651c156a7743ae6aa65c7d
navcoin-4.6.0-x86_64-linux-gnu.tar.gz
a82ca18c2a3767a1f895080632e43fe65c46465eaad8354ad983d44885f210ba
navcoin-4.6.0-i686-pc-linux-gnu.tar.gz
5cbba74983c5cdc39d29f726a62b1ad8e3de1c619d5e4117a68bd96883062e1d
navcoin-4.6.0-win32-setup.exe
a83e61e7a97d2247e3258909236a95fc84451c53ff83e756223f04e18798099b
*
navcoin-4.6.0-win32.zip
944f6fa5994a90b7fff90a7392d8f56c8ef5909527d12bfdeb120dc03a1eff8c
navcoin-4.6.0-win64-setup.exe
35aaa6f4ea30a525a36427cab5a517e407bcf2083d15daa45fd05712f452f55e
*
navcoin-4.6.0-win64.zip
e9937c91d7383fa540d350f3008813cd2adaa1795e20f224593cbde4b555627d
*The hashes of Windows .exe builds are currently nondeterministic. The hashes shown here will match the binaries attached to this release, but if you build from source you will end up with a different checksum. Users who are concerned with the checksums of .exe builds should compile their own builds to verify this.
NavCoin Core v4.5.2 - Further Community Fund hotfixes and faster blockchain sync
NavCoin v4.5.2 Release Notes
4.5.2 contains a hard fork which explicitly rejects blocks from obsolete versions (4.5.1 and below) signalled by version bit 21. Upgrading to 4.5.2 will avoid a potential network fork (as described below) and ensure you remain on the same blockchain as the rest of the network.
Community Fund Duplicate Payment Hard Fork
<Pull Request 413>
<Commit 7ef765b>
Fixes a bug where the Community Fund payment requests could be accepted by the network multiple times. Enforces version bit 21 for all blocks after blockheight 2882875 (approximately Saturday 16 February @ 1830 GMT) as well as rejecting duplicate payments after the fork height.
Voting Cycle Counter Hotfix
<Pull Request 396>
<Commit a6782c3>
Fixes a bug where the votingCycle
field of community fund proposals and payment requests would continue to increment after their terminal state if a user reorgs. Also for proposal/payment requests which change from pending to expired, when the voting cycle is 1 over the cycle limit, staker's votes would continue to be counted even though such proposal/payment request is expired. This bug did not affect network consensus on the status of proposal or payment requests.
Faster Blockchain Sync
<Pull Request 390>
<Commit 1990d92>
Keeps a cache of the community fund votes to avoid an unnecessary recalculation per block which was causing extreme slow synchronization per block. After applying the patch the CountVotes() function is significantly faster.
RPC Tests newly implemented and fixed
The RPC unit test work mainly involved fixing broken RPC tests inherited from Bitcoin as well as creating new ones. This expands our test suite allowing for greater coverage which provides quality checks to the existing codebase and future updates.
- Fixes to 17 rpc tests inherited from Bitcoin and implements 2 new tests <Pull Request 405><Commit ed3f590>
- Added rpc help test <Pull Request 392> <Commit 6707a98>
- Fixes to cfund rpc tests <Pull Request 376> <Commit 6f157e4>
Other updates to the NavCoin client, docs and codebase
- Restart of testnet <Pull Request 402> <Commit c821bad>
- RPC paymentrequestvotelist and proposalvotelist output changed to JSON <Pull Request 380> <Commit b2ed39a>
- Disables dark mode on MacOS Mojave <Pull Request 403> <Commit e436506>
- Updates to OS X building docs <Pull Request 406><Commit a1fc1fa>
- Updates to Unix building docs <Pull Request 408> <Commit aacbb3d>
- Updates to gitian building docs for Debian 9 <Pull Request 365> <Commit 732c257>
- Deletes duplicate Qt Creator files <Pull Request 382> <Commit 8eb4652>
SHA256 Hashes
To check the validity of the hashes, visit the navcoin-sigs repository
navcoin-4.5.2-aarch64-linux-gnu.tar.gz
64db8b6be1b4920802f0656573ab51204c8370ebdd0997ec0479815ff90605d2
navcoin-4.5.2-arm-linux-gnueabihf.tar.gz
2b3ccd8d08547ca78d2592f9511aa14b17eb492dd06c46683155c52d7095f5cc
navcoin-4.5.2.tar.gz
a9d19d11d447d8eaa01abfef885505bd3bd97ed8c3f146284fd696f4d1985010
navcoin-4.5.2-osx.dmg
943821afa20812d2b98c7c690f068a9300da090ce0cc372c44ebd4017b690897
navcoin-4.5.2-osx64.tar.gz
44d33cb9e6691a92161fa70ac93b9cee67e5de9b4ae2a7f13bee9f8bc347cdb6
navcoin-4.5.2-x86_64-linux-gnu.tar.gz
67906c701cf2ed8adaabfda89b1aa8edca71417724320941bcb048f21c4c0f6a
navcoin-4.5.2-i686-pc-linux-gnu.tar.gz
b5ff9a314519b580b8fa9edf7a4b13875b709c4d68d6a87e60a9eb2906b507ed
navcoin-4.5.2-win32-setup.exe
e466a24113c317ad8645543aa41b65f34d76846dddabc1be9e53a7046298b9af
*
navcoin-4.5.2-win32.zip
868bb4ac6c1035f667bc331ddd6d7c8cbe640e955953e53ee24356129f7eeefc
navcoin-4.5.2-win64-setup.exe
1014e98a0c7c7a264b370567885cbe39c39ecde806ea054440798123400fce8b
*
navcoin-4.5.2-win64.zip
a17e9dc383c4823ea67410111a836191a1c01bc81338da261e5a9df738f24ce8
*The hashes of Windows .exe builds are currently nondeterministic. The hashes shown here will match the binaries attached to this release, but if you build from source you will end up with a different checksum. Users who are concerned with the checksums of .exe builds should compile their own builds to verify this.
NavCoin Core v4.5.1 - Community Fund Hotfixes
4.5.1 contains a hard fork which explicitly rejects blocks from obsolete versions (4.5.0 and below) signalled by version bit 20. Upgrading to 4.5.1 will avoid a potential network fork (as described below) and ensure you remain on the same blockchain as the rest of the network.
Community Fund Hotfixes
Currently if a node reindexes their chainstate db, the node will recalculate the deadline of expired proposals and rewrite such proposals as accepted. A node which reindexes will end up with a different state and potentially reject blocks containing payment requests causing some users to end up on their own fork of the blockchain.
<Pull Request 367>
<Commit c59cd80>
- This patch ensures the state of previously expired proposals are not rewritten as accepted when a chainstate db is reindexed locally.
- Ensures proper expiry of proposals after their duration has been exceeded.
- Adds tests to check the proper expiry of proposals.
<Pull Request 370>
<Commit ddeeed6>
- Fixes the payout of payment requests when the proposal is already expired. Adds a new state for proposals (
PENDING_VOTING_PREQ
) to handle expired proposals with pending payment requests. - Adds tests to check the correct implementation of this state.
Static Rewards Hotfix
<Pull Request 369>
<Commit 88a9060>
Currently if a block included both a static reward and some transaction(s), the network will reject such blocks since the total amount of fees would be verified incorrectly. This patch fixes the verification and adds tests to check the blocks are correctly accepted.
Other modifications in the NavCoin client, docs and codebase
- Fixed output of
cfundstats
rpc command. <Pull Request 374> <Commit fe5f8c7>. - Improvements to core wallet CFund voting window. <Pull Request 368> <Commit 1b1077b>
- Minor typo fix to coldstaking wizard. <Pull Request 364> <Commit 769ff16>
SHA256 Hashes
To check the validity of the hashes, visit the navcoin-sigs repository
navcoin-4.5.1-aarch64-linux-gnu.tar.gz
030e5369b669208bb04c3007f6bb80eda2c0369d433750a324cf2e54cbf40bb0
navcoin-4.5.1-arm-linux-gnueabihf.tar.gz
3359cefe95cc2ed5bb37cf95053e79e3cafa4d4bafee3b51a9656e89cbc4fb74
navcoin-4.5.1.tar.gz
20be1daf5d46c97affd0b408728dc216281f1e4f9e4d214c9c4874bbab9a0074
navcoin-4.5.1-osx.dmg
cbda7e39d9803b9a8b5224d1d42c411ada79bccdd4a34bdd5840855b382072f1
navcoin-4.5.1-osx64.tar.gz
ec1c5822cf6fd961132909833ae81835e37fc72f670d87adcf9027cca4776500
navcoin-4.5.1-x86_64-linux-gnu.tar.gz
932dd964bfdeb90e12642ebf2bedfa77e682f99837978f188916ff2dd21e7f4b
navcoin-4.5.1-i686-pc-linux-gnu.tar.gz
c0378647cb2181c862d855ec1436eab439ddbe1e373d1e4473128c1d6d3829a1
navcoin-4.5.1-win32-setup.exe
3c80b01f0ecf90b6c8b19d2f175ac401305cea7132c873669c57688cc0a684b2
*
navcoin-4.5.1-win32.zip
dfa3680d8636a03f150148ce8ba39beea322706e2e918ef91367380ad9ac4987
navcoin-4.5.1-win64-setup.exe
0ff3e9a72a51a88d5c0dc8b6174ba81e77bf5a5e3484983f2d14a30a5fda7ebe
*
navcoin-4.5.1-win64.zip
37b45b2d6414e6190e5f806233f3dac584c2095eec3620f87c468368ca4c004a
*The hashes of Windows .exe builds are currently nondeterministic. The hashes shown here will match the binaries attached to this release, but if you build from source you will end up with a different checksum. Users who are concerned with the checksums of .exe builds should compile their own builds to verify this.
NavCoin Core v4.5.0 - Static Rewards, Cold Staking and CFund Voting GUI
NavCoin v4.5.0 Release Notes
Cold Staking Protocol Upgrade
<Pull Request 249>
<Commit b1c776c>
This Protocol Upgrade will implement the NPIP_0002 which will introduce a new opcode (OP_COINSTAKE) for the NavCoin scripting language and a new standard transaction type using the new opcode.
The wallet will vote this Protocol Upgrade with YES
by default.
- Adds support for Cold Staking Addresses.
- Signaled by version bit 3.
- Adds new rpc command
getcoldstakingaddress
. - Wizard to create Cold Staking Addresses in the Receiving tab of the wallet.
- Updates several RPC commands to provide results relating to Cold Staking.
- Adds new RPC tests to test Cold Staking Address creation and use.
- Added a 'Cold Staking' balance display to the wallet GUI.
Manual testing with a modified wallet client
We also performed a number of tests against the cold staking code using a modified wallet client in an attempt to exploit potential weakness in the code. None of these attempts managed to find an exploit.
Details can be found under release-notes-4.5.0-additional-testing-notes/modified-coldstaking-client-notes-4.5.0.md.
Reject this Protocol Upgrade
To not vote for this Protocol Upgrade, add the following line to your navcoin.conf
file:
rejectversionbit=3
Community Fund Voting GUI
- A GUI interface that can be used to vote for community fund proposals and payment requests.
- A new notification that will appear when a new community fund proposal or payment request is found on the blockchain.
- Also added a new warning to the wallet screen to inform users when their wallet is syncing that their balance may not be displaying accurately.
Static Rewards Protocol Upgrade
<Pull Request 328>
<Commit 9601f85>
This Protocol Upgrade will change the NavCoin Staking block reward to a fixed amount of 2 NAV per block. You can read more about this upgrade at its NPIP page, NPIP_0004.
The wallet will vote this Protocol Upgrade with YES
by default.
- Signaled by version bit 15.
- Adds RPC tests for Static Rewards.
Reject this Protocol Upgrade
To reject this Protocol Upgrade, add the following line to your navcoin.conf
file:
rejectversionbit=15
.
Dynamic Community Fund Quorum Protocol Upgrade
<Pull Request 328>
<Commit 9601f85>
This Protocol Upgrade would introduce a reduction of the required quorum for the Community Fund in the second half of the votings from 50% to 40%.
The wallet will vote this Protocol Upgrade with NO
by default.
- Signaled by version bit 17.
Accept this Protocol Upgrade
To accept this Protocol Upgrade, add the following line to your navcoin.conf
file:
acceptversionbit=17
.
Reject specific version bits by default
<Pull Request 336>
<Commit eb6a1a2>
By default the wallet votes yes for the Protocol Upgrades included in the wallet. This change adds a list of version bits which will be voted no by default, while also adding an option to manually vote yes for those bits.
To manually vote yes for a version bit add the following to your navcoin.conf
file:
acceptversionbit=17
Block header spam protection
<Pull Request 335>
<Commit 210a22d>
The wallet will now rate-limit the amount of block headers received from a single peer before banning them for misbehaving. This is an anti-spam measure and is customizable via the config file or via launch arguments.
The new launch arguments are:
-headerspamfilter=<0 or 1>
- 1 will turn the filter on (it is on by default), and 0 will turn it off.
-headerspamfiltermaxsize=<number>
- The number you wish to set as the new max size.
-headerspamfiltermaxavg=<number>
- The number you wish to set as the new max average.
Community Fund RPC commands
<Pull Request 334>
<Commit cc8e213>
- Shows help for
proposalvotelist
andpaymentrequestvotelist
. - Shows proposals and payment requests in pending state without vote.
- Categorises cfund rpc commands under own category.
- Updates RPC tests for these commands.
Other modifications in the NavCoin client, docs and codebase
- Added github issue and pull request templates. <Pull Request 347> <Commit ce2e282>.
- Updated link to bootstrap file in wallet gui. <Pull Request 338> <Commit 8aa7cdd>.
- Community Fund RPC Tests clean up. <Pull Request 318> <Commit 7730c7b>.
- Fixed changelog link to NPIP. <Pull Request 317> <Commit f0ea24c>.
- Updated link to NavCoin github repo. <Pull Request 314> <Commit dcdece2>
- New genesis block for testnet.
SHA256 Hashes
To check the validity of the hashes, visit the navcoin-sigs repository
navcoin-4.5.0-aarch64-linux-gnu.tar.gz
f95dcfccf69184a85573d0fe05a81aefa741fb13e9f08c7cb5ce46a8a6f0b5b5
navcoin-4.5.0-arm-linux-gnueabihf.tar.gz
546d8b49e68c95a7f222604f5fde28dcf7248269844b9c38a9ff0484ffd56e72
navcoin-4.5.0.tar.gz
30cd99b2c448962971616001ea0db31b2aa90910b9e49f5587f1e22ee1b6fb95
navcoin-4.5.0-osx.dmg
064dc35294106024d8a7bddb75d537e0e31ce5b42d9bd0b4601e89192a142da6
navcoin-4.5.0-osx64.tar.gz
c1d8e47409643bf02ba0e55cf3059e33fd78c06087083a2d64a5e6835bd6ddaf
navcoin-4.5.0-x86_64-linux-gnu.tar.gz
16c3350d2a59dac33a5945983329c6c9b5bda449cc62c1efd9fca45f42def649
navcoin-4.5.0-i686-pc-linux-gnu.tar.gz
c07b6322e37ff6fa78bb26b0c5e5953d0d7f3fd2a78a2e6a299827f64d3edda6
navcoin-4.5.0-win32-setup.exe
01af8aa60505544edb1e3d4bdf0da469330f9e5212529e8aaa69859c51cb6cd7
*
navcoin-4.5.0-win32.zip
f0f063fb4fc03190a72b4e2bc85c0af0fed393e0c04cd2da5548e4e1d881b61c
navcoin-4.5.0-win64-setup.exe
d744ef1787025650c1a2387ca31427ebfe1a69993fa079ae2c2fe5fe1e3a5567
*
navcoin-4.5.0-win64.zip
f13dd7c0f84bc0809a0cf53dcf95614ead6a6ee42e200fe48deff44bef85a269
*The hashes of Windows .exe builds are currently nondeterministic. Users who are concerned with the checksums of .exe builds should compile their own builds to verify this.
NavCoin Core v4.4.0 with Community Fund
NavCoin v4.4.0 Release Notes
Community Fund:
The deployment of the Community Fund on mainnet is signaled through Version Bit 6.
It introduces the changes neccesary in the protocol to activate the claims mechanism for the Community Fund with the following parameters:
- Voting cycle (Vc): 2880 * 7 blocks (Approx 1 week)
- Min Quorum per period: 50% of a voting cycle
- Proposals/Payment Requests min age: 50 blocks
- % of Positive votes to accept a Proposal: 75%
- % of Negative votes to reject a Proposal: 67.5%
- % of Positive votes to accept a Payment Request: 50%
- % of Negative votes to reject a Payment Request: 50%
- Fee to create a Proposal: 50 NAV
- Maximum number of full elapsed Voting Cycles for a Proposal: 6 Voting Cycles (1 month and a half)
- Maximum number of full elapsed Voting Cycles for a Payment Request: 8 Voting Cycles (2 months)
Community Fund Accumulation Spread
The Version Bit 14 will signal for the soft fork to activate NPIP0003.
This is largely a technical improvement which consolidates mined Community Fund contributions to every 500th block instead of every block to reduce blockchain bloat.
You can read more about NPIP0003 on the NPIP GitHub.
Community Fund Contribution Increase
The Version Bit 16 will signal for the soft fork to increase the Community Fund contribution from 0.25 NAV to 0.50 NAV per block.
You can read more about NPIP0005 on the NPIP GitHub.
Reject specific version bits
This release introduces the concept of bit version rejection.
It is designed to make it easier for the network to reject individual soft forks when they are bundled together in one release.
As soft forks come within the software signaling by default only the converse was needed for people to reject soft forks they did not agree with.
A new config concept has been added called rejectversionbit
. Users can signal all the soft forks they reject by adding the following to the config.
rejectversionbit=6
rejectversionbit=14
rejectversionbit=16
Community fund RPC commands
With the release of the community fund additional RPC commands are included
Create a community fund proposal
createproposal navcoinaddress amount duration "desc" fee
Arguments:
1. "navcoinaddress" (string, required) The navcoin address where coins would be sent if the proposal is approved.
2. "amount" The amount in NAV to request. eg 100
3. duration: Number of seconds the proposal will exist after being accepted.
4. "desc": Short description of the proposal.
5. fee (optional): Contribution to the fund used as a fee.
Result:
On success, the daemon responds with the hash(id) of the proposal that is used to reference it in other commands
Vote for a community fund proposal
proposalvote proposal_hash command
Arguments:
1. "proposal_hash" (string, required) The proposal hash
2. "command" (string, required) 'yes' to vote yes, 'no' to vote no,'remove' to remove a proposal from the list
Resp:
On success, the daemon responds with the hash(id) of the proposal that is used to reference it in other commands
Create a payment request
createpaymentrequest proposal_hash amount id
Arguments:
1. "hash" (string, required) The hash of the proposal from which you want to withdraw funds. It must be approved.
2. "amount" (numeric or string, required) The amount in NAV to withdraw. eg 10
3. "id" (string, required) Unique id to identify the payment request
Result:
{
hash: prequestid, (string) The payment request id.
strDZeel: string (string) The attached strdzeel property.
}
Vote a payment request
paymentrequestvote "request_hash" "command"
Adds/removes a proposal to the list of votes.
Arguments:
1. "request_hash" (string, required) The payment request hash
2. "command" (string, required) 'yes' to vote yes, 'no' to vote no, 'remove' to remove a proposal from the list
List the community fund proposals
listproposals filter
List the propsals and all the releaing datat including payment requests and status.
1. "filter" (string, optional) "accepted" | "rejected" | "expired" | "pending"
Donate to the community fund
donatefund amount
Donate NAV from your wallet to the commnuity fund
Arguments:
1. "amount" (string, required) The amount of NAV to donate
Community fund stats
cfundstats
Returns the current status of the Community Fund
Other modifications in the NavCoin client:
- RPC Tests fix.
SHA256 Hashes
To check the validity of the hashes, visit the navcoin-sigs repository
navcoin-4.4.0-aarch64-linux-gnu.tar.gz
42f5ca4ed893bcba854e879870906af99803507ed283fb155fe0d763b0624c8a
navcoin-4.4.0-arm-linux-gnueabihf.tar.gz
d724c014feef19ae0266f44196fe7b958f85bee54c4bcbc2bc985068028847ba
navcoin-4.4.0.tar.gz
87f402bdcc48127eef8cadafa240cc2ae4fad763eda0cd3f8e2770f60e0ca5ca
navcoin-4.4.0-osx.dmg
aa07d05d3a707d7dfac0e49c91e1569ea5cacf5c2fdb8ae6580bd3095dbf0a26
navcoin-4.4.0-osx64.tar.gz
e986be22d55b9f850efd61045aef5f5bf5bc3af288b318ad75597c270d111624
navcoin-4.4.0-x86_64-linux-gnu.tar.gz
d5ce247c5528c6c9227d43c1eb1e622d98786d2465c1619e55b15e4af0578df0
navcoin-4.4.0-i686-pc-linux-gnu.tar.gz
921faf28725765093afcc6a03c8ccbad76dded5dc0a49295812225f5b548f5f1
navcoin-4.4.0-win32.zip
aaad4e81ca609a9b7c62c5620e687ff40cde14fe2a104d49e1f636801963c237
navcoin-4.4.0-win64.zip
dc88058cbcd0348bdb9ca3948266e7ff53efb23bb4307bcb8e46c3f4f363e1f4
NavCoin Core v4.3.0 with OpenAlias support
NavCoin v4.3.0 Release Notes
Introduces OpenAlias:
This PR #213 completes the implementation of the OpenAlias protocol into the NavCoin Core client.
OpenAlias is an standard created by the Monero Core project used in the Monero wallet and some other clients like Bitcoin Electrum which allows the wallet to translate email addresses into cryptocurrency addresses using custom TXT entries in the DNS records of a domain.
More details about the specification can be found at www.openalias.org
Part of the code is based in the original Monero implementation. The main differences are:
- Prefix of the TXT entry is required to be set to oa1:nav
- The only parsed parameter is recipient_address
- NavCoin enforces by default the use of DNSSEC
OpenAlias registration
You can now register a OpenAlias address at http://openalias.nav.community/
Wallet support for bootstrapping
A new argument (-bootstrap) is can be passed on initialisation to specify an URL from where a copy of the blockchain in TAR format will be downloaded and extracted in the data folder.
Also adds a GUI submenu entry under FILE which lets you bootstrap using the GUI.
New gui tx status for orphans
In version 4.2.0 the wallet started hiding orphan stakes in the transactions list. This has caused some confusion with users as OS notifications were still showing while the stakes did not appear.
We now clasify orphan transactions with a new "Orphan" status and show them in the transactions list.
Remove BIGNUM use
This PR #214 completely removes the use of the OpenSSL's class BIGNUM, substituting the uses of CBigNum with the class uint256 with extended arithmetic capabilities (arith_uint256). OpenSSL deprecated some BIGNUM functions in version 1.1, making the wallet unable to compile in systems which use the newer version. This patch fixes this issue.
ZeroMQ Windows Patch
Applies https://github.com/bitcoin/bitcoin/pull/8238/files to fix ZeroMQ compatibility with Windows systems.
Staking
Staking can now be toggled "on-the-fly" without restarting the client through the GUI or using the staking
RPC command.
Updates secp256k1 Lib
The secp256k1 lib from bitcoin 16.2 release was included into the codebase. While there are a number of improvements, the update was mainly needed due to the better build options for developers and allows newer OS's to build. This reduces the friction in getting setup and working with NavCoin
Transalations
The Wallet GUI is now fully translated to Spanish and Italian.
Other modifications in the NavCoin client:
- New RPC command
resolveopenalias
resolves an OpenAlias address to a NavCoin address - Added support for sending to OpenAlias addresses in the GUI, when parsing URIs and the RPC commands validateaddress and sendtoaddress
- New argument
-requirednssec
to set whether DNSSEC validation is required to resolve openalias addresses (true by default) - New argument
-mininputvalue
to set the minimum value for an output to be considered as a possible coinstake input
-New argument-banversion
to ban nodes depending on their broadcasted version - Added support to ban nodes with determined wallet versions using the config parameter
banversion
- Blocks created with the rpc command
generate
now include a correct timestamp for the coinbase transaction - Using the regtest will create a new genesis block on runtime
- A new testnet has been initiated
- The development-focused networks regtest and devnet won't require peers for blocks generation
- Update copyright notice
- Updates automake to enable dev compilation on New OS's like Ubuntu 18.04
- Updates Payment request UI to handle new OpenSSL Lib
SHA256 Hashes
To check the validity of the hashes, visit the navcoin-sigs repository
navcoin-4.3.0-aarch64-linux-gnu.tar.gz
b15e6175a47e5ac9ce7abb9d1c2e529468cc25be2662b925f59dc3a372f2f42c
navcoin-4.3.0-arm-linux-gnueabihf.tar.gz
55c8e81054b7e661a3f9d4a47605718812aa952e373672d3cb541c5fb622c3ad
navcoin-4.3.0-i686-pc-linux-gnu.tar.gz
77825cfe03dbb81c45a51c862a4007b716e0456c258fd3e1c45d79c976487d76
navcoin-4.3.0-osx.dmg
75556fe1aa230d624450c63c03c7531380c5e905e32ade4662c70daecbaa8440
navcoin-4.3.0-osx64.tar.gz
c0b8ce632c5bd7669c8a46fa52423183d52649b8b042a8e9601710430a874900
navcoin-4.3.0-win32-setup.exe
aae036751955d0e4e81c4a8b4f8f10d1a526a769a401cb21be227de86b4f8ee3
navcoin-4.3.0-win32.zip
5d365ab0319fbd14068d55fcb06a6e58dd998577fb4b9e9e146d1e932165cf98
navcoin-4.3.0-win64-setup.exe
45e7f6913ad1cecebf2eb3757af552b5409b747bb953f4e24947ef75a84ce663
navcoin-4.3.0-win64.zip
23be804ce938a63ad68b4092b1d7d65beb63841a76e1b2c77f9dc6ec31841914
navcoin-4.3.0-x86_64-linux-gnu.tar.gz
2411ce5cafe486ab5d399621f8a88ce54b03a3737f0f1fabd4a73e82c6dba6c7
navcoin-4.3.0.tar.gz
6f83b8cd94d406086d5f1bd92ccf06ac275eb8418c8df0660b7966b9ec46dd57