Skip to content

Releases: navcoin/navcoin-core

Community Fund Stability Patches

19 Dec 01:39
6151044
Compare
Choose a tag to compare

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 test cfunddb-statehash.py
  • New state for payment requests 6 when those are paid.
  • The payment request parameter paidOnBlock is substituted by stateChangedOnBlock when state is 6
  • 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

For additional information about new features, check https://navcoin.org/en/notices/

4.7.2 Release Candidate 1

13 Dec 23:13
23cd3db
Compare
Choose a tag to compare
Pre-release

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 test cfunddb-statehash.py
  • New state for payment requests 6 when those are paid.
  • The payment request parameter paidOnBlock is substituted by stateChangedOnBlock when state is 6
  • 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

For additional information about new features, check https://navcoin.org/en/notices/

Community Fund Nullified Entry Patch

29 Oct 03:50
8786e32
Compare
Choose a tag to compare

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

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

13 Sep 00:58
c8d9d72
Compare
Choose a tag to compare

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

Read more

NavCoin Core v4.6.0 - Community Fund UI

03 May 21:15
bb51359
Compare
Choose a tag to compare

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 to all 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

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

11 Feb 23:06
d4c8c5e
Compare
Choose a tag to compare

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.

Other updates to the NavCoin client, docs and codebase

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

18 Dec 04:52
913dc25
Compare
Choose a tag to compare

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

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

13 Dec 02:34
5a15433
Compare
Choose a tag to compare

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 and paymentrequestvotelist.
  • 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

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

25 Oct 14:19
0a3023c
Compare
Choose a tag to compare

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

03 Sep 22:11
6544ea3
Compare
Choose a tag to compare

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