Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update the wallet GUI look and feel, fixed scaling on menu and splash screen (New Icons), Removed NavTech references, Added multi theme support #557

Merged
merged 160 commits into from Feb 20, 2020

Conversation

mxaddict
Copy link
Contributor

@mxaddict mxaddict commented Jul 5, 2019

closes #548
closes #563
closes #465
closes #252
closes #424

  • Removed Deprecated NavTech Code
  • Move menu to the side (From top)
  • Add new Dao Count Badge
  • Remove Dao pop up notification
  • Update menu icons to SVG from PNG
  • Update qt depends to compile SVG support
  • Update Dao count on change of proposal vote settings
  • Update Dao count on change of payment request vote settings
  • Update qt depends to compile SVG support (OSX Support)
  • Integrate new icons (SVG)
  • Add new Dao warning
  • Update Readme logo
  • Update ./share/pixmaps logos
  • Update doxygen logo
  • Add new animation to splash screen
  • Fix scaling on QR Code on Receive / Request / Generate Cold Staking (HDPI screens)
  • Better looking tooltips
  • Add Multi Wallet Theme Support
  • Move status bar icons over to top right of the wallet
  • Update the overview page to look better and scale with HDPI screens
  • Make the TX list look better (Home page)
  • Add a GUI scaling option
  • Add Coin Control Toggle to send dialog/page
  • Integrate the theme into the new setup wizard
  • Make better use of the tx list space
  • Create new bottom notifcations area
  • Move dao warning to notifications area
  • Move wallet sync warning to notifications area
  • Move NTP off warning to notifications area

@mxaddict mxaddict force-pushed the updated-main-menu branch 4 times, most recently from 2532a82 to e2defaa Compare Jul 7, 2019
@mxaddict
Copy link
Contributor Author

@mxaddict mxaddict commented Jul 7, 2019

Screenshot from 2019-07-07 18-58-18

@mxaddict mxaddict force-pushed the updated-main-menu branch 6 times, most recently from 3d765ee to f521dfd Compare Jul 7, 2019
@mxaddict
Copy link
Contributor Author

@mxaddict mxaddict commented Jul 7, 2019

out

@mxaddict mxaddict force-pushed the updated-main-menu branch 11 times, most recently from ec56d42 to 75a2346 Compare Jul 11, 2019
@mxaddict
Copy link
Contributor Author

@mxaddict mxaddict commented Jul 11, 2019

This is what it looks like with the new icons from @onlyoneAdam !

Screenshot from 2019-07-11 14-31-06

@mxaddict mxaddict force-pushed the updated-main-menu branch 4 times, most recently from 6561e1c to 5e16194 Compare Jul 12, 2019
@navbuilder
Copy link

@navbuilder navbuilder commented Feb 19, 2020

A new build of f51b2a0 has completed succesfully!
Binaries available at https://build.nav.community/binaries/updated-main-menu

Copy link
Contributor

@chasingkirkjufell chasingkirkjufell left a comment

Ubuntu 19.04 64 GB RAM

  • Review appearances of all pages
  • Create a proposal to see DAO notification
  • Vote on a proposal to see DAO notification going away
  • Cancel proposal vote to see DAO notification coming back up
  • Create a payment request to see DAO notification
  • Vote on a payment request to see DAO notification going away
  • Cancel payment request vote to see DAO notification coming back up
  • Create transactions to other nodes
  • Change display currency
  • Enabling/disabling coin control feature
  • Switch to dark/light mode

Windows 10 pro 64GB RAM

  • Review appearances of all pages
  • Dark/light mode
  • Sync up with mainnet from a week behind
  • Vote on a proposal to see DAO notification going away
  • Cancel proposal vote to see DAO notification coming back up
  • Encrypt wallet
  • Unlock wallet
  • Create new wallet with welcome GUI window

@navbuilder
Copy link

@navbuilder navbuilder commented Feb 19, 2020

A new build of ab56ee2 has completed succesfully!
Binaries available at https://build.nav.community/binaries/updated-main-menu

@navbuilder
Copy link

@navbuilder navbuilder commented Feb 19, 2020

A new build of 3c69993 has completed succesfully!
Binaries available at https://build.nav.community/binaries/updated-main-menu

@mxaddict
Copy link
Contributor Author

@mxaddict mxaddict commented Feb 20, 2020

Better use of the TX list space.
Capture2
Capture

@navbuilder
Copy link

@navbuilder navbuilder commented Feb 20, 2020

A new build of 37a891b has completed succesfully!
Binaries available at https://build.nav.community/binaries/updated-main-menu

@navbuilder
Copy link

@navbuilder navbuilder commented Feb 20, 2020

A new build of 95e1c7d has completed succesfully!
Binaries available at https://build.nav.community/binaries/updated-main-menu

@chasingkirkjufell chasingkirkjufell self-requested a review Feb 20, 2020
@navbuilder
Copy link

@navbuilder navbuilder commented Feb 20, 2020

A new build of 553c46b has completed succesfully!
Binaries available at https://build.nav.community/binaries/updated-main-menu

@navbuilder
Copy link

@navbuilder navbuilder commented Feb 20, 2020

A new build of b49e758 has completed succesfully!
Binaries available at https://build.nav.community/binaries/updated-main-menu

@mxaddict mxaddict merged commit 7c8e25c into navcoin:master Feb 20, 2020
1 check failed
@zanuka
Copy link
Contributor

@zanuka zanuka commented Feb 23, 2020

looking good, nice work 🚀

@mxaddict
Copy link
Contributor Author

@mxaddict mxaddict commented Mar 3, 2020

looking good, nice work 🚀

Thanks!

dantudor added a commit to NavPool/navcoin-core that referenced this issue Jun 11, 2020
* Added an additional LOCK for cs_main in communityfunddisplay

* Added -print flag as alias to -printtoconsole (navcoin#555)

* updating release notes

* Set pindexDelete to nullptr on intialize

* new SVG icons (navcoin#562)

* new SVG icons

* renamed and changed inout

* replaced about

* centered about

* Added a lock before we call GetTxStakeAmount()

* added more PRs to the release notes

* Add new strings

* Fixed crash when selecting a currency with no price data

* vector logo and icon

* Replaced push_back(Pair) with pushKV

* [cfund] Added a lock (Wash crashing the wallet when voting from details dialog)

* check for all inputs

* check deployment

* sortByCoinAgeDescending

* impl

* chmod +x test

* clean

* fix logs

* batchwrite simplification

* add missing check

* optimize cfundvote function

* Updated a lock on LoadWallet to fix a crash on wallet rescan (Existing Datadir) (navcoin#582)

* only enforce equal scripts for cs

* Check CS script in every input

* flush db after migration and set flag

* fix typo

* do not use flag

* flush not necessary

* add support for raw script addresses

* check rpc command createrawscriptaddress

* copy data structure

* Dandelion support

* updated PNG's and changed border-image to background

* adding bg colors

* removing repeat-y

* move include to header

* extern declaration

* script sanity check

* updated release notes

* Fix to staking parameter "-mininputvalue"

The nMinimumInputValue variable controls the minimum value
that can be selected for staking.
However, when the variable is defined, the parameter "-mininputvalue"
is not yet available. This makes the parameter irrelevant.

To correct this, the value of the variable is refreshed later, just
before it is actually used.

The correction does not seem to have any side effects, apart from
the improper use of the parameter itself.

Resolve: navcoin#585

* fix lock

* dandelion enabled by default

* dandelion thread interrupt

* add missing lock

* stempoolinfo rpc

* CheckSequenceLocks lock

* fill block with stempool

* tests

* fix test

* revert block filled from stempool

* tests do not use dandelion by default

* Fixed permission issue that was causing travis to fail
Fix for NTP causing some tests to fail and also be slower

* update mininode.py

* fix stem relay and test

* gui for splitting staking rewards

* skip invalid address/empty json object

* combobox with addresses

* fix dialog

* show coldstaking by staking address

* Updated depends to use winssl for windows and darwinssl for osx

* fix gui tx list

* fix listtransactions rpc accounting

* fix line wrap

* ignore 0% addresses

* fix typo

* ignore empty entries

* move some checks

* populate list from AvailableCoinsForStaking

* fix lookup key

* undo remove getobjmap

* remove log

* fix lookup key

* show popup when no coins left

* fix text

* Added the stakingsortbycoinage flag for coin sorting on stake

* fix calculation reward

* add mxaddict address

* check for dandelion outbound

* use different logic

* map by inv and not only hash

* added "setup staking rewards" button on the overview page and also my donation address

* fix cfund proposal reorg

* changed pushbutton name to be more descriptive

* Remove unnecessary check

* chmod +x

* Updated test to use connect_node_bi as it speed up the test execution time (Not sure why it was slow with plain connect_nodes call)

* Updated some NULL -> nullptr

* Replaced Q_FOREACH with for from c++11 standard

* correcting assertion

* Fixed errorLog loading in Debug Window

* added (failing) test for checking reorg of payment requests

* only check when adding new proposals/prequests
- a previously accepted block can only contain valid entries
- a payment request could fail to be removed when a reorg
  happens if its checked for validity as the original amount
  is not available back in the proposal

* merge and fix tests

* fix types

* fix test name

* add missing test

* Removed some deprecated code

* Replaced all BOOST_FOREACH with new for() syntax (c++11)

* coldstaking_spending.py

* stakingaddress.py

* coldstaking_fee.py

* Fixed some gitignore permissions and added new file to main gitignore (navcoin#561)

* Updated qa/rpc-tests/coldstaking_fee.py

* Updated includes syntax based on discussion on navcoin#503 (navcoin#566)

* Update rpcconsole.cpp

changed comment from 2 -> 1 as per the code change

* added assertion & logs

* cover same hash block scenario

* cover same hash block scenario

* check for blockhash still is correct

* Added new -allindex option (navcoin#546)

* Added new -allindex option

* Added help text for allindex

* Updated the custom 'change' address to be a persistent setting

* Patch for staking redirect gui (navcoin#614)

* OCD

* Fix for the NAMED addresses

* Bump version number (navcoin#615)

* Added release notes

* Added the missing PRs to release notes

* Added another PR to release notes

* Update release-notes-4.7.1.md

* Update release-notes-4.7.1.md (navcoin#620)

* Update release-notes-4.7.1.md

updated release notes

* Update release-notes-4.7.1.md

* Added clearer error messages for the nRequest amount validation (navcoin#609)

* Added clearer error messages for the nRequest amount validation

* Added fix for tr calls

* Disable CFund client functionality (navcoin#623)

* disable cfund client functionality

* enable vote

* new testnet

* new testnet (navcoin#628)

* update hardcoded seed nodes

* fix reference to chain tip

* add second dns seeder

* CFundDB extra log and ensure read before modify (navcoin#622)

* add extra log

* add __func__

* ensure read before modify

* fix log

* optimize log

* do not access modifier

* only set dirty when necessary

* check for nullified

* add extra log

* do not insert nullified entries

* HaveProposalInCache/HavePaymentRequestInCache

* add cfunddb_tests.cpp

* add 250 rounds and random remove

* Added new test for cfund reorg scenario

* Updates to the test as per aguycalled's suggestions

* update  qa/rpc-tests/cfund-fork-reorg.py

* Added new test to the suite

* move mprequest

* adding (failing) test for proposal reorg

* removed 5th cycle

* fixed preq voting, removed logs added final payout check

* Set DEFAULT_SCRIPTCHECK_THREADS to auto

* Only count stakes in main chain (navcoin#636)

* Only count stakes in main chain

* Fixed a function call

* Updated the test to include the scenario for navcoin#636

* Updates to make the wallet.py and stakeimmaturebalance.py test more reliable (navcoin#624)

* Updates to make the wallet.py test more reliable

* Updated qa/rpc-tests/stakeimmaturebalance.py to be more reliable

* Fixed freezing GUI on reindex (navcoin#638)

* Add count stats to getblock

* Update blockchain.cpp

* CPaymentRequest fields incorrect in diff

* Adds proposalHash to json output of PaymentRequest

* Adds root flag to switch toggle proposalHash depending on if the paymentRequest is the root JSON child

* include rpcwallet

* hash to string and votingCycle uses %d identifier

* Fix for verifychain (navcoin#634)

* fix coins view instead of coins tip

* recount votes when verifying database

* fix boolean

* write instead of insert if it already exists

* use mapState instead of fState and blockhash

* add missing txblockhash to ser function

* fix log

* getstate string for paid state

* update paidOnblock to stateChangedOnBlock from cfund tests

* check statedb hash in verifychain

* fix v452 fork

* fix %d->%s

* add log

* use formatmoney

* prevent undefined behavior

* show cf supply in getblockheader

* check for paid state

* fix some tests

* fix diff prequest

* GetLastStateBlockIndexForState()

* fix cfund-paymentrequest-hardfork-452.py

* consider status changes from same block

* fix heights for testnet

* notRequestedYet

* notRequestedYet

* detect old db struct

* add statehash to updatetip log

* check old structure bootstrap

* only do reindex-chainstate when rebuilding db struct

* only calculate statehash if debug=statehash

* include cfsupply and cflocked in statehash

* add mine filter to listproposals

* support multiple filters

* remove duplicate declaration

* add cfund test unit

* fix call to old var

* setup consistency

* fix loop condition

* assert statehash

* remove old reference after master merge

* remove old reference after master merge

* fDirty

* Revert "fDirty"

This reverts commit 561339d.

* add extra log

* reactivate cfund

* update qt strings

* version bump, release notes & updated release process.

* Delete navccoin-core.code-workspace

* updated release notes

* update translations

* Remove popup (navcoin#652)

* release notes updated

* added 651

* Anti Header Spam v2 (navcoin#656)

* anti header spam v2

* add missing new line

* add missing __func__

* fix check

* use MAX_HEADERS_RESULTS

* use MAX_HEADERS_RESULTS*2

* do not use inserter

* unused var

* change return type to void

* v4.7.3 bump version and release notes

* Update Doxyfile

* add salmonskinroll's address

* added qa/rpc-tests/test_framework/siphash.py

* See you in a hundred years

* Welcome to wallet GUI for mnemonic (navcoin#659)

* update translations (navcoin#661)

* Rescan when importing mnemonic (navcoin#662)

* rescan when importing mnemonic

* fix for mnemonic wizard

* Fixed words being cut off in mnemonic ui (navcoin#665)

* update curl to v7.68.0 (navcoin#663)

* Updated qa/rpc-tests/cfunddb-statehash.py to use connect_nodes_bi (navcoin#666)

* Update the wallet GUI look and feel, fixed scaling on menu and splash screen (New Icons), Removed NavTech references, Added multi theme support (navcoin#557)

* Removed translations

* Removed navtech source and makefile references

* Removed key generation code from init.cpp

* Removed navtech buttons from sendcoinsdialog

* Removed default anonserver values from config file

* Removed navtech intro '-firstrun'

* Removed a navtech string

* Removed navtech style

* Removed anonsend values from vRPCConvertParams

* Removed -addanonserver from util

* Removed *anonserver rpc commands

* Removed anonsend and getanondestination from rcpwallet code

* These if else statements were iffy

* Removed navtech code from wallet.cpp

* Removed navtech code from sendcoinsdailog.cpp

* Removed AddedAnonServers variables

* Removed unused dzeel

* Removed more navtech related anon code from wallet model

* Removed s*Key vars

* Replaced anon-destination with strdzeel

* Fixed helper text for sendtoaddress rpc command

* Removed more navtech related code

* Renamed fonts to be all lowercase

* Added new main menu vector logos

* Moved menu to the left side (Used to be on top)

* Fixed scaling for splash screen on HDPI/Retina screens

* Integrated qtsvg to the qt depends build

* Update the counter when changing votes

* Updated icons

* Added the new staking icons to the status bar

* Force colorize for all platforms

* Fixed transactions icons to work with SVG

* Updated the wallet layout to have header with padding so we can show notices on top of wallet

* Updated the NTP sync to cancel faster when shutdown is requested

* Moved updateAlerts into the header

* Added DAO warning to header

* Moved out of sync warning into the header

* Fixed windows build

* Updated staking off to change icon as well

* Fixed splash screen font scaling

* Fix the bubbles on OSX

* Updated the menu look

* Updated icons

* Moved code indentation

* Optimized SVGs

* Updated other ico files

* Updated doxygen icon

* Updated README to use new logo

* Updated more logos in the /share/pixmaps dir

* Updated nsis bitmaps

* Updated menu colors

* Refector skinize to use external stylesheet instead of embedded into the function

* Fixed encryption icon color

* Added qt creator files to gitignore

* Removed skinize and applied stylesheet to whole QApplication

* Removed curlCode as it was unsused

* Refactored styles into external sheet

* Moved version to menu

* Link main menu logo to overviewpage

* Updated some styles

* Added splashscreen animation

* DRYer scale() implementation

* fixed QR_CODE scaling for HDPI screens
Fixed on receive page
Fixed on request page
Fixed on coldstakingwizard

* Cleaner looking assignment and return

* OCD FTW, just had to remove that extra space once I SAW IT...

* Updated styles for flat buttons

* Better looking tooltips

* Re-orged some styles

* Added new multitheme support

* Fixed background color on some input fields
Better spacing and padding for some elements

* Updated transaction view to use scale factor

* Resized the status column to fit the icon size better

* Refactored themes

* Moved loadTheme into navcoinapplication.cpp to update application palette before platformStyle is init

* Unified the look and feel of the platforms fully (No more custom styles/icons for different OSs

* Replaced theme qDebug call with info() call

* Fixed tooltip

* Added tooltip for staking icon

* Added scaling to the status bar icons

* Refactored some functions in platformStyle

* Fixed debug console prompt icon

* Icons in debug window scalable size

* Updated address label to be readOnly line edit

* Fixed size for address on receive page

* Fixed tree view icons on mac

* Added padding to buttons and lineedit

* Updated dao page buttons look and feel

* Fixed theme loading to use correct config

* Updated layout for receive page

* Moved statusBar icons/widgets to top of wallet

* Refactored wallet header and overview page

* Removed some QT generated files

* More deprecated code

* Better sync UI (Some changes came from upstream)

* Fixed mac nap inhibitor

* Updated progress dialog to be scalale and follow theme colors

* Updated the icon for sync

* Updated the URL for repo in copyright section

* Overview page layout changes

* Adjusted the staking destination button on overviewpage

* Updated the Makefile.qt.include to try and fix build issue with windows and osx

* Updated translation base

* Added scaling to options

* Removed the headerbar

* Adjusted the splash screen font size

* Removed some redundant styling

* Added balance to header of wallet to make use of the extra space

* Lucky # 7

* Prettier listview

* Removed balance from bottom of wallet send page, changed "Use full amount" into a "Send available coins" checkbox

* Removed deprecated code

* Updates for the wallet GUI

* UI updates (Moved some size values to the style sheet

* Applied the app theme before the intro wizard

* Changed sizing of the coin control UI

* Fixed currency issue on create payment request and create proposal dialogs

* Fixed history column widths

* Better sendcoins page spacing

* Added spacer above setup staking button

* Aligned balances and staking reports

* Fixed missing border on warning alerts

* Added cold staking balance to header staking balance display

* Added new coin control toggle to send dialog and removed some redundant
spacers

* Added the logo to setup wizard

* Implemented the new THEME into the setup wizard

* Fixed bug with the coin control toggle

* Updated overview page to load 25 recent TX instead of just 5

* Added more space in the address area for txwallet

* Replaced the hack with a worst hackaround

* Made the setup screen logo smaller

* Fixed bug with the coin control dialog

* Better looking tx list

* Updated the header balance layout to look a bit better and also have the staked all, 24 hours and last 7 days

* Better looking TX list

* Forced the new pretty format to not round the decimals, just chop it off

* Fixed a bug with the scaling slider not triggering the 'showRestartWarning'

* do not use stempool if devnet and no peers (navcoin#667)

* Updated wallet.py to disable staking on self.nodes restart (navcoin#670)

* Removed intro wizard and fixed testnet/devnet setting from conf file (navcoin#669)

* fix fork length detection (navcoin#671)

* Added skip dialog for seed backup step (navcoin#672)

* Added skip dialog for seed backup step

* Change the button text on certain steps

* Fix sequencelocks stempool (navcoin#673)

* fix stempool sequencelocks

* xtra log

* Update main.cpp

* Add tools page/dialog for running common commands for wallet repair/maintenance (navcoin#675)

* DAO Extension (navcoin#530)

* rename

* rename

* only read from coinbase without vote cache

* update qa/rpc-tests/dao-consultations-with-answers-staking.py

* revert miner.cpp

* only read from coinbase without vote cache

* declare pointer

* read cached voter before modifier

* set limits for Consensus::TYPE_NUMBER

* reflection and voting cycles start at 1

* do not exclude consultations not fully finished

* require support for range consultations

* do not show cycle status for finished votings

* allow higher limit for gui consultation range

* fix proposal with negative values

* catch exception

* propose answer context menu

* wrap for question consultation

* bigger chart size and many windows at the same time fix

* fix range consultation abstain vote

* fix first block rane consultation

* change text status description

* check for active consensus consultation in mempool

* check cycle count for range consultation

* check for correct status

* check for correct status staking

* base view has priority over mempool view

* consultation.tostring()

* catch exception

* catch more exceptions

* fix duplicated answers

* fix multiple reorg consultations

* fix reorg for staker votes

* fix text for CONSENSUS_PARAM_CONSULTATION_MIN_SUPPORT

* remove propose change from consultation contextual menu

* fix reflection length

* last cycle status text

* check CONSENSUS_PARAM_CONSULTATION_MAX_SUPPORT_CYCLES against CONSENSUS_PARAM_CONSULTATION_MIN_CYCLES

* prevent simultaneous voting of CONSENSUS_PARAM_CONSULTATION_MIN_CYCLES and CONSENSUS_PARAM_CONSULTATION_MAX_SUPPORT_CYCLES

* fix consultation answer hash

* remove old cfund files

* getstakervote rpc

* fix restore staker vote

* text font size

* remove propose change for cfund context menu

* fix abstain text

* show abstain votes

* clear parent when view is empty

* change votes data struct

* fix layout when no weight

* prevent 100% minimums

* payment request fee

* update test

* fix qa/rpc-tests/dao-consultations-with-answers-staking.py

* fix fund voting last cycle

* fix consultation range creation

* fix consultation range check

* fix range consultation support reset

* remove trailing zeros

* show support chart when supported

* fix supported consultations

* read voter before clearing

* fix 65

* break text lines

* fix 0 voting range

* fix log

* fix createpaymentrequest

* fix tests

* check for daoextension entries in cfunddb-statehash.py

* move GetCFundDBStateHash out of coins.cpp

* default showall for listconsultations

* fix merge patches

* fix qa/rpc-tests/cfund-fork-reorg-proposal.py

* fix qa/rpc-tests/dao-consultations.py

* fix qa/rpc-tests/dao-consultation-consensus.py

* fix missing comma

* fix statehash votes

* add extra log for modifiers

* fdirty adjustments

* votelist clear

* fdirty fixes

* HaveEnoughAnswers use view

* votelist diff

* fix tx for txRead

* set default value

* use correct tip when verifychain

* store consensus parameter in state view

* fix nversion r/w

* proposal payment address jsonizer fix

* allow new answers when supported phase

* fix == operator proposals

* fix coins_tests.cpp

* better diff log

* fix operator== proposal

* fix typo

* do not allow support votes when supported state

* read prequest from map

* do not look at chainActive

* look back in whole cycle when length changes

* fix typo

* restart votes when scanning whole cycle

* leave to votestep to roll back votes

* look back in cycles for every consensus change

* cleaner votelist diff log

* add more log

* missing height

* add daoconsensusparams.h to Makefile.am

* reverse 62e59b8

* some extra temp log

* only reset votes at the end of votestep

* recalculate voting cycle when looking at the whole cycle

* CanVote consistency

* CanVote consistency

* revert prev patch

* logic consistency

* some extra log

* add consensus/dao/flags.h to Makefile.am

* extra logging

* only change consensus parameters at the end of votestep()

* consensus parameter change take effect the block after the voting

* add dao-consultation-consensus-cycle-length.py test

* fix log

* revert edc0cea

* do not assume inserted votes can still vote

* recalc votingcycle before recalc votes

* fix gui support button

* wait until status change for not letting vote because of voting cycles

* fix 75

* fix 76

* fix 78

* fix 77

* remove log

* merge abstain and consultation deployments

* invert r/w order

* read staker script

* use uint512 for TransactionGetCoinAge

* fix after merge

* correct SendMoney params

* qt fixes after merge

* fix makefile.qt.include

* fix qt depends

* update .gitmodules

* fix missing line concatenator

* Updated the buttons to work with new theme

* Updated label for proposal

* fix cfund_tests.cpp

* fix deployment gui

* do not show proposals which are completely paid

* fix 81

* fix testnet proposal min fee

* restart testnet

* count all dao entries for the menu icon

* Addinga a stresser script to test wallet functions (navcoin#59)

* adding stresser to test NavCoin wallet functions

* update info

added info

* changed file name, delimiter of best block hash and state hash from null to new line, pulling consensus parameter name from commmand

* changed file name, delimiter of best block hash and state hash from null to new line, pulling consensus parameter name from commmand

* make assert state double check permanent

* checking if consensus paraamter correctly being output from node before updating

* fix network density limit logic

* Revert "fix network density limit logic"

This reverts commit fe78f2b.

* fix issues with 1 node network in network splitting phase

* fix network split phase connection logic

* add assert state dual checks for network splitting phase

* turn on -debug=statehash

* reduce block cycle length upper limit

* Modify descriptions

* imrpove statehash logic in network splitting and performance boost

* tidy up output

* reduce sleep time

* print user, password, and rpc port on launch

* add stressor prupose description

* remove extra log

* fixed read coinage txprev

* fix coin age order

* check for max number of answers

* do not show cycle info for paid prequests

* ask for confirmation of fee

* fix payment request detailed dialog

* remove non existent signals

* add missing max

* type cast

* fix count abstain votes

* fix length names

* fix dao gui exclude finished filtering

* add log to test

* fix typo

* include prequest votes in blockheader

* format votes

* fix range consultation

* ranges can't have more answers

* fix proposal exclue filter

* do not show proposals without available coins

* fix look for active consultation in forked chain

* show support button for supported consensus consultations

* allow abstain vote rpc command

* change cfund description gui label

* Update stressor (navcoin#60)

* add abstain votes for range consultations

* disable dandelion

* fix abstain vote reorg

* do not clear again mapVotes

* fix logic abstain IsValidVote

* fix logic

* consider vote in CanBeVoted

* clear mapVotes when new cycle

* Fix min upper range for consultation gui

* some extra log

* more log

* fix mapSeen

* change consultations json

* more changes consultation json

* update strings

* trim long strings

* when consensus changes, reset votes of new cycle with old state

* move vClearAnswers declaration

* check before committing

* mark dirty if not broadcasted

* fix consensus description

* fix consensus description

* light wallet voting

* do not unnecessary remove vote outputs for delegated voting

* ignore empty scripts

* fix parent title prequest gui

* fix wrapping

* clean up code and remove rpc user (navcoin#62)

* update dao light voting tests

* prevent double voting

* fix qa/rpc-tests/dao-light-voting-cfund.py

* remove log

* show warning if vote is not valid

* push missing header update

* mark blockindex in nStatus for dao data structures

* Fix light voting rpc test (navcoin#66)

* fix wrong logic of dual voting

* remove status output

* add light vote range consultation rpc test (navcoin#65)

* bench dao state

* fix logic

* increase height for title

* move extended dao log to category daoextra

* take title out of qchart into qlabel

* checks conditional to deployment being active

* move check to ContextualCheckBlock

* use pindexprev instead of chainactive

* reset testnet

* message start

* admit csv2 address as change

* fix typo

* voting cycle fixes and extra info in jsonifier

* fixes max cycles

* fixes current cycles for state

* fix max cycles for accepted state

* reverse mapState k/v

* fix expired for consensus consultation

* fix tests

* fix qa/rpc-tests/dao-consultation-consensus-cycle-length.py

* tests

* bump version to 5.0.0

* Update 5.0.0 release notes

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>
Co-authored-by: chasingkirkjufell <38635377+chasingkirkjufell@users.noreply.github.com>

* Update the response code for the httpserver response when http work queue depth exceeded (navcoin#681)

* persist votes (navcoin#680)

* prevent duplicated insert (navcoin#679)

* [DAO] Fix for last voting cycle of proposals and payment requests (navcoin#678)

* fix max voting cycles for proposals and preqs

* fix cap cycles

* Updated the default path for stress test script to be relative to the project root (navcoin#683)

* Optimize memory use for blockindex (navcoin#682)

* optimize memory use for blockindex

* use function reference

* Resolve conflicts with pool mods

* Remove touch

* Update proposalvotelist and paymentrequestvotelist

* Use CPaymentRequest

* Adds poolPaymentRequestList log

* extra log

* extra log

* Remove logging

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>
Co-authored-by: Craig M <craig.b.macgregor@gmail.com>
Co-authored-by: onlyoneAdam <52450856+onlyoneAdam@users.noreply.github.com>
Co-authored-by: alex v <alex@encrypt-s.com>
Co-authored-by: Adam <adam@monomedialab.com>
Co-authored-by: R-Marino <n286cpuML@mail2mypc.com>
Co-authored-by: Dan Tudor <dtudor01@gmaiol.com>
Co-authored-by: chasingkirkjufell <38635377+chasingkirkjufell@users.noreply.github.com>
Co-authored-by: chasingkirkjufell <you@example.com>
Co-authored-by: Kolby Moroz Liebl <31669092+mrmetech@users.noreply.github.com>
dantudor added a commit to NavPool/navcoin-core that referenced this issue Nov 6, 2020
* Added a lock before we call GetTxStakeAmount()

* added more PRs to the release notes

* Add new strings

* Fixed crash when selecting a currency with no price data

* vector logo and icon

* Replaced push_back(Pair) with pushKV

* [cfund] Added a lock (Wash crashing the wallet when voting from details dialog)

* check for all inputs

* check deployment

* sortByCoinAgeDescending

* impl

* chmod +x test

* clean

* fix logs

* batchwrite simplification

* add missing check

* optimize cfundvote function

* Updated a lock on LoadWallet to fix a crash on wallet rescan (Existing Datadir) (navcoin#582)

* only enforce equal scripts for cs

* Check CS script in every input

* flush db after migration and set flag

* fix typo

* do not use flag

* flush not necessary

* add support for raw script addresses

* check rpc command createrawscriptaddress

* copy data structure

* Dandelion support

* updated PNG's and changed border-image to background

* adding bg colors

* removing repeat-y

* move include to header

* extern declaration

* script sanity check

* updated release notes

* Fix to staking parameter "-mininputvalue"

The nMinimumInputValue variable controls the minimum value
that can be selected for staking.
However, when the variable is defined, the parameter "-mininputvalue"
is not yet available. This makes the parameter irrelevant.

To correct this, the value of the variable is refreshed later, just
before it is actually used.

The correction does not seem to have any side effects, apart from
the improper use of the parameter itself.

Resolve: navcoin#585

* fix lock

* dandelion enabled by default

* dandelion thread interrupt

* add missing lock

* stempoolinfo rpc

* CheckSequenceLocks lock

* fill block with stempool

* tests

* fix test

* revert block filled from stempool

* tests do not use dandelion by default

* Fixed permission issue that was causing travis to fail
Fix for NTP causing some tests to fail and also be slower

* update mininode.py

* fix stem relay and test

* gui for splitting staking rewards

* skip invalid address/empty json object

* combobox with addresses

* fix dialog

* show coldstaking by staking address

* Updated depends to use winssl for windows and darwinssl for osx

* fix gui tx list

* fix listtransactions rpc accounting

* fix line wrap

* ignore 0% addresses

* fix typo

* ignore empty entries

* move some checks

* populate list from AvailableCoinsForStaking

* fix lookup key

* undo remove getobjmap

* remove log

* fix lookup key

* show popup when no coins left

* fix text

* Added the stakingsortbycoinage flag for coin sorting on stake

* fix calculation reward

* add mxaddict address

* check for dandelion outbound

* use different logic

* map by inv and not only hash

* added "setup staking rewards" button on the overview page and also my donation address

* fix cfund proposal reorg

* changed pushbutton name to be more descriptive

* Remove unnecessary check

* chmod +x

* Updated test to use connect_node_bi as it speed up the test execution time (Not sure why it was slow with plain connect_nodes call)

* Updated some NULL -> nullptr

* Replaced Q_FOREACH with for from c++11 standard

* correcting assertion

* Fixed errorLog loading in Debug Window

* added (failing) test for checking reorg of payment requests

* only check when adding new proposals/prequests
- a previously accepted block can only contain valid entries
- a payment request could fail to be removed when a reorg
  happens if its checked for validity as the original amount
  is not available back in the proposal

* merge and fix tests

* fix types

* fix test name

* add missing test

* Removed some deprecated code

* Replaced all BOOST_FOREACH with new for() syntax (c++11)

* coldstaking_spending.py

* stakingaddress.py

* coldstaking_fee.py

* Fixed some gitignore permissions and added new file to main gitignore (navcoin#561)

* Updated qa/rpc-tests/coldstaking_fee.py

* Updated includes syntax based on discussion on navcoin#503 (navcoin#566)

* Update rpcconsole.cpp

changed comment from 2 -> 1 as per the code change

* added assertion & logs

* cover same hash block scenario

* cover same hash block scenario

* check for blockhash still is correct

* Added new -allindex option (navcoin#546)

* Added new -allindex option

* Added help text for allindex

* Updated the custom 'change' address to be a persistent setting

* Patch for staking redirect gui (navcoin#614)

* OCD

* Fix for the NAMED addresses

* Bump version number (navcoin#615)

* Added release notes

* Added the missing PRs to release notes

* Added another PR to release notes

* Update release-notes-4.7.1.md

* Update release-notes-4.7.1.md (navcoin#620)

* Update release-notes-4.7.1.md

updated release notes

* Update release-notes-4.7.1.md

* Added clearer error messages for the nRequest amount validation (navcoin#609)

* Added clearer error messages for the nRequest amount validation

* Added fix for tr calls

* Disable CFund client functionality (navcoin#623)

* disable cfund client functionality

* enable vote

* new testnet

* new testnet (navcoin#628)

* update hardcoded seed nodes

* fix reference to chain tip

* add second dns seeder

* CFundDB extra log and ensure read before modify (navcoin#622)

* add extra log

* add __func__

* ensure read before modify

* fix log

* optimize log

* do not access modifier

* only set dirty when necessary

* check for nullified

* add extra log

* do not insert nullified entries

* HaveProposalInCache/HavePaymentRequestInCache

* add cfunddb_tests.cpp

* add 250 rounds and random remove

* Added new test for cfund reorg scenario

* Updates to the test as per aguycalled's suggestions

* update  qa/rpc-tests/cfund-fork-reorg.py

* Added new test to the suite

* move mprequest

* adding (failing) test for proposal reorg

* removed 5th cycle

* fixed preq voting, removed logs added final payout check

* Set DEFAULT_SCRIPTCHECK_THREADS to auto

* Only count stakes in main chain (navcoin#636)

* Only count stakes in main chain

* Fixed a function call

* Updated the test to include the scenario for navcoin#636

* Updates to make the wallet.py and stakeimmaturebalance.py test more reliable (navcoin#624)

* Updates to make the wallet.py test more reliable

* Updated qa/rpc-tests/stakeimmaturebalance.py to be more reliable

* Fixed freezing GUI on reindex (navcoin#638)

* Add count stats to getblock

* Update blockchain.cpp

* CPaymentRequest fields incorrect in diff

* Adds proposalHash to json output of PaymentRequest

* Adds root flag to switch toggle proposalHash depending on if the paymentRequest is the root JSON child

* include rpcwallet

* hash to string and votingCycle uses %d identifier

* Fix for verifychain (navcoin#634)

* fix coins view instead of coins tip

* recount votes when verifying database

* fix boolean

* write instead of insert if it already exists

* use mapState instead of fState and blockhash

* add missing txblockhash to ser function

* fix log

* getstate string for paid state

* update paidOnblock to stateChangedOnBlock from cfund tests

* check statedb hash in verifychain

* fix v452 fork

* fix %d->%s

* add log

* use formatmoney

* prevent undefined behavior

* show cf supply in getblockheader

* check for paid state

* fix some tests

* fix diff prequest

* GetLastStateBlockIndexForState()

* fix cfund-paymentrequest-hardfork-452.py

* consider status changes from same block

* fix heights for testnet

* notRequestedYet

* notRequestedYet

* detect old db struct

* add statehash to updatetip log

* check old structure bootstrap

* only do reindex-chainstate when rebuilding db struct

* only calculate statehash if debug=statehash

* include cfsupply and cflocked in statehash

* add mine filter to listproposals

* support multiple filters

* remove duplicate declaration

* add cfund test unit

* fix call to old var

* setup consistency

* fix loop condition

* assert statehash

* remove old reference after master merge

* remove old reference after master merge

* fDirty

* Revert "fDirty"

This reverts commit 561339d.

* add extra log

* reactivate cfund

* update qt strings

* version bump, release notes & updated release process.

* Delete navccoin-core.code-workspace

* updated release notes

* update translations

* Remove popup (navcoin#652)

* release notes updated

* added 651

* Anti Header Spam v2 (navcoin#656)

* anti header spam v2

* add missing new line

* add missing __func__

* fix check

* use MAX_HEADERS_RESULTS

* use MAX_HEADERS_RESULTS*2

* do not use inserter

* unused var

* change return type to void

* v4.7.3 bump version and release notes

* Update Doxyfile

* add salmonskinroll's address

* added qa/rpc-tests/test_framework/siphash.py

* See you in a hundred years

* Welcome to wallet GUI for mnemonic (navcoin#659)

* update translations (navcoin#661)

* Rescan when importing mnemonic (navcoin#662)

* rescan when importing mnemonic

* fix for mnemonic wizard

* Fixed words being cut off in mnemonic ui (navcoin#665)

* update curl to v7.68.0 (navcoin#663)

* Updated qa/rpc-tests/cfunddb-statehash.py to use connect_nodes_bi (navcoin#666)

* Update the wallet GUI look and feel, fixed scaling on menu and splash screen (New Icons), Removed NavTech references, Added multi theme support (navcoin#557)

* Removed translations

* Removed navtech source and makefile references

* Removed key generation code from init.cpp

* Removed navtech buttons from sendcoinsdialog

* Removed default anonserver values from config file

* Removed navtech intro '-firstrun'

* Removed a navtech string

* Removed navtech style

* Removed anonsend values from vRPCConvertParams

* Removed -addanonserver from util

* Removed *anonserver rpc commands

* Removed anonsend and getanondestination from rcpwallet code

* These if else statements were iffy

* Removed navtech code from wallet.cpp

* Removed navtech code from sendcoinsdailog.cpp

* Removed AddedAnonServers variables

* Removed unused dzeel

* Removed more navtech related anon code from wallet model

* Removed s*Key vars

* Replaced anon-destination with strdzeel

* Fixed helper text for sendtoaddress rpc command

* Removed more navtech related code

* Renamed fonts to be all lowercase

* Added new main menu vector logos

* Moved menu to the left side (Used to be on top)

* Fixed scaling for splash screen on HDPI/Retina screens

* Integrated qtsvg to the qt depends build

* Update the counter when changing votes

* Updated icons

* Added the new staking icons to the status bar

* Force colorize for all platforms

* Fixed transactions icons to work with SVG

* Updated the wallet layout to have header with padding so we can show notices on top of wallet

* Updated the NTP sync to cancel faster when shutdown is requested

* Moved updateAlerts into the header

* Added DAO warning to header

* Moved out of sync warning into the header

* Fixed windows build

* Updated staking off to change icon as well

* Fixed splash screen font scaling

* Fix the bubbles on OSX

* Updated the menu look

* Updated icons

* Moved code indentation

* Optimized SVGs

* Updated other ico files

* Updated doxygen icon

* Updated README to use new logo

* Updated more logos in the /share/pixmaps dir

* Updated nsis bitmaps

* Updated menu colors

* Refector skinize to use external stylesheet instead of embedded into the function

* Fixed encryption icon color

* Added qt creator files to gitignore

* Removed skinize and applied stylesheet to whole QApplication

* Removed curlCode as it was unsused

* Refactored styles into external sheet

* Moved version to menu

* Link main menu logo to overviewpage

* Updated some styles

* Added splashscreen animation

* DRYer scale() implementation

* fixed QR_CODE scaling for HDPI screens
Fixed on receive page
Fixed on request page
Fixed on coldstakingwizard

* Cleaner looking assignment and return

* OCD FTW, just had to remove that extra space once I SAW IT...

* Updated styles for flat buttons

* Better looking tooltips

* Re-orged some styles

* Added new multitheme support

* Fixed background color on some input fields
Better spacing and padding for some elements

* Updated transaction view to use scale factor

* Resized the status column to fit the icon size better

* Refactored themes

* Moved loadTheme into navcoinapplication.cpp to update application palette before platformStyle is init

* Unified the look and feel of the platforms fully (No more custom styles/icons for different OSs

* Replaced theme qDebug call with info() call

* Fixed tooltip

* Added tooltip for staking icon

* Added scaling to the status bar icons

* Refactored some functions in platformStyle

* Fixed debug console prompt icon

* Icons in debug window scalable size

* Updated address label to be readOnly line edit

* Fixed size for address on receive page

* Fixed tree view icons on mac

* Added padding to buttons and lineedit

* Updated dao page buttons look and feel

* Fixed theme loading to use correct config

* Updated layout for receive page

* Moved statusBar icons/widgets to top of wallet

* Refactored wallet header and overview page

* Removed some QT generated files

* More deprecated code

* Better sync UI (Some changes came from upstream)

* Fixed mac nap inhibitor

* Updated progress dialog to be scalale and follow theme colors

* Updated the icon for sync

* Updated the URL for repo in copyright section

* Overview page layout changes

* Adjusted the staking destination button on overviewpage

* Updated the Makefile.qt.include to try and fix build issue with windows and osx

* Updated translation base

* Added scaling to options

* Removed the headerbar

* Adjusted the splash screen font size

* Removed some redundant styling

* Added balance to header of wallet to make use of the extra space

* Lucky # 7

* Prettier listview

* Removed balance from bottom of wallet send page, changed "Use full amount" into a "Send available coins" checkbox

* Removed deprecated code

* Updates for the wallet GUI

* UI updates (Moved some size values to the style sheet

* Applied the app theme before the intro wizard

* Changed sizing of the coin control UI

* Fixed currency issue on create payment request and create proposal dialogs

* Fixed history column widths

* Better sendcoins page spacing

* Added spacer above setup staking button

* Aligned balances and staking reports

* Fixed missing border on warning alerts

* Added cold staking balance to header staking balance display

* Added new coin control toggle to send dialog and removed some redundant
spacers

* Added the logo to setup wizard

* Implemented the new THEME into the setup wizard

* Fixed bug with the coin control toggle

* Updated overview page to load 25 recent TX instead of just 5

* Added more space in the address area for txwallet

* Replaced the hack with a worst hackaround

* Made the setup screen logo smaller

* Fixed bug with the coin control dialog

* Better looking tx list

* Updated the header balance layout to look a bit better and also have the staked all, 24 hours and last 7 days

* Better looking TX list

* Forced the new pretty format to not round the decimals, just chop it off

* Fixed a bug with the scaling slider not triggering the 'showRestartWarning'

* do not use stempool if devnet and no peers (navcoin#667)

* Updated wallet.py to disable staking on self.nodes restart (navcoin#670)

* Removed intro wizard and fixed testnet/devnet setting from conf file (navcoin#669)

* fix fork length detection (navcoin#671)

* Added skip dialog for seed backup step (navcoin#672)

* Added skip dialog for seed backup step

* Change the button text on certain steps

* Fix sequencelocks stempool (navcoin#673)

* fix stempool sequencelocks

* xtra log

* Update main.cpp

* Add tools page/dialog for running common commands for wallet repair/maintenance (navcoin#675)

* DAO Extension (navcoin#530)

* rename

* rename

* only read from coinbase without vote cache

* update qa/rpc-tests/dao-consultations-with-answers-staking.py

* revert miner.cpp

* only read from coinbase without vote cache

* declare pointer

* read cached voter before modifier

* set limits for Consensus::TYPE_NUMBER

* reflection and voting cycles start at 1

* do not exclude consultations not fully finished

* require support for range consultations

* do not show cycle status for finished votings

* allow higher limit for gui consultation range

* fix proposal with negative values

* catch exception

* propose answer context menu

* wrap for question consultation

* bigger chart size and many windows at the same time fix

* fix range consultation abstain vote

* fix first block rane consultation

* change text status description

* check for active consensus consultation in mempool

* check cycle count for range consultation

* check for correct status

* check for correct status staking

* base view has priority over mempool view

* consultation.tostring()

* catch exception

* catch more exceptions

* fix duplicated answers

* fix multiple reorg consultations

* fix reorg for staker votes

* fix text for CONSENSUS_PARAM_CONSULTATION_MIN_SUPPORT

* remove propose change from consultation contextual menu

* fix reflection length

* last cycle status text

* check CONSENSUS_PARAM_CONSULTATION_MAX_SUPPORT_CYCLES against CONSENSUS_PARAM_CONSULTATION_MIN_CYCLES

* prevent simultaneous voting of CONSENSUS_PARAM_CONSULTATION_MIN_CYCLES and CONSENSUS_PARAM_CONSULTATION_MAX_SUPPORT_CYCLES

* fix consultation answer hash

* remove old cfund files

* getstakervote rpc

* fix restore staker vote

* text font size

* remove propose change for cfund context menu

* fix abstain text

* show abstain votes

* clear parent when view is empty

* change votes data struct

* fix layout when no weight

* prevent 100% minimums

* payment request fee

* update test

* fix qa/rpc-tests/dao-consultations-with-answers-staking.py

* fix fund voting last cycle

* fix consultation range creation

* fix consultation range check

* fix range consultation support reset

* remove trailing zeros

* show support chart when supported

* fix supported consultations

* read voter before clearing

* fix 65

* break text lines

* fix 0 voting range

* fix log

* fix createpaymentrequest

* fix tests

* check for daoextension entries in cfunddb-statehash.py

* move GetCFundDBStateHash out of coins.cpp

* default showall for listconsultations

* fix merge patches

* fix qa/rpc-tests/cfund-fork-reorg-proposal.py

* fix qa/rpc-tests/dao-consultations.py

* fix qa/rpc-tests/dao-consultation-consensus.py

* fix missing comma

* fix statehash votes

* add extra log for modifiers

* fdirty adjustments

* votelist clear

* fdirty fixes

* HaveEnoughAnswers use view

* votelist diff

* fix tx for txRead

* set default value

* use correct tip when verifychain

* store consensus parameter in state view

* fix nversion r/w

* proposal payment address jsonizer fix

* allow new answers when supported phase

* fix == operator proposals

* fix coins_tests.cpp

* better diff log

* fix operator== proposal

* fix typo

* do not allow support votes when supported state

* read prequest from map

* do not look at chainActive

* look back in whole cycle when length changes

* fix typo

* restart votes when scanning whole cycle

* leave to votestep to roll back votes

* look back in cycles for every consensus change

* cleaner votelist diff log

* add more log

* missing height

* add daoconsensusparams.h to Makefile.am

* reverse 62e59b8

* some extra temp log

* only reset votes at the end of votestep

* recalculate voting cycle when looking at the whole cycle

* CanVote consistency

* CanVote consistency

* revert prev patch

* logic consistency

* some extra log

* add consensus/dao/flags.h to Makefile.am

* extra logging

* only change consensus parameters at the end of votestep()

* consensus parameter change take effect the block after the voting

* add dao-consultation-consensus-cycle-length.py test

* fix log

* revert edc0cea

* do not assume inserted votes can still vote

* recalc votingcycle before recalc votes

* fix gui support button

* wait until status change for not letting vote because of voting cycles

* fix 75

* fix 76

* fix 78

* fix 77

* remove log

* merge abstain and consultation deployments

* invert r/w order

* read staker script

* use uint512 for TransactionGetCoinAge

* fix after merge

* correct SendMoney params

* qt fixes after merge

* fix makefile.qt.include

* fix qt depends

* update .gitmodules

* fix missing line concatenator

* Updated the buttons to work with new theme

* Updated label for proposal

* fix cfund_tests.cpp

* fix deployment gui

* do not show proposals which are completely paid

* fix 81

* fix testnet proposal min fee

* restart testnet

* count all dao entries for the menu icon

* Addinga a stresser script to test wallet functions (navcoin#59)

* adding stresser to test NavCoin wallet functions

* update info

added info

* changed file name, delimiter of best block hash and state hash from null to new line, pulling consensus parameter name from commmand

* changed file name, delimiter of best block hash and state hash from null to new line, pulling consensus parameter name from commmand

* make assert state double check permanent

* checking if consensus paraamter correctly being output from node before updating

* fix network density limit logic

* Revert "fix network density limit logic"

This reverts commit fe78f2b.

* fix issues with 1 node network in network splitting phase

* fix network split phase connection logic

* add assert state dual checks for network splitting phase

* turn on -debug=statehash

* reduce block cycle length upper limit

* Modify descriptions

* imrpove statehash logic in network splitting and performance boost

* tidy up output

* reduce sleep time

* print user, password, and rpc port on launch

* add stressor prupose description

* remove extra log

* fixed read coinage txprev

* fix coin age order

* check for max number of answers

* do not show cycle info for paid prequests

* ask for confirmation of fee

* fix payment request detailed dialog

* remove non existent signals

* add missing max

* type cast

* fix count abstain votes

* fix length names

* fix dao gui exclude finished filtering

* add log to test

* fix typo

* include prequest votes in blockheader

* format votes

* fix range consultation

* ranges can't have more answers

* fix proposal exclue filter

* do not show proposals without available coins

* fix look for active consultation in forked chain

* show support button for supported consensus consultations

* allow abstain vote rpc command

* change cfund description gui label

* Update stressor (navcoin#60)

* add abstain votes for range consultations

* disable dandelion

* fix abstain vote reorg

* do not clear again mapVotes

* fix logic abstain IsValidVote

* fix logic

* consider vote in CanBeVoted

* clear mapVotes when new cycle

* Fix min upper range for consultation gui

* some extra log

* more log

* fix mapSeen

* change consultations json

* more changes consultation json

* update strings

* trim long strings

* when consensus changes, reset votes of new cycle with old state

* move vClearAnswers declaration

* check before committing

* mark dirty if not broadcasted

* fix consensus description

* fix consensus description

* light wallet voting

* do not unnecessary remove vote outputs for delegated voting

* ignore empty scripts

* fix parent title prequest gui

* fix wrapping

* clean up code and remove rpc user (navcoin#62)

* update dao light voting tests

* prevent double voting

* fix qa/rpc-tests/dao-light-voting-cfund.py

* remove log

* show warning if vote is not valid

* push missing header update

* mark blockindex in nStatus for dao data structures

* Fix light voting rpc test (navcoin#66)

* fix wrong logic of dual voting

* remove status output

* add light vote range consultation rpc test (navcoin#65)

* bench dao state

* fix logic

* increase height for title

* move extended dao log to category daoextra

* take title out of qchart into qlabel

* checks conditional to deployment being active

* move check to ContextualCheckBlock

* use pindexprev instead of chainactive

* reset testnet

* message start

* admit csv2 address as change

* fix typo

* voting cycle fixes and extra info in jsonifier

* fixes max cycles

* fixes current cycles for state

* fix max cycles for accepted state

* reverse mapState k/v

* fix expired for consensus consultation

* fix tests

* fix qa/rpc-tests/dao-consultation-consensus-cycle-length.py

* tests

* bump version to 5.0.0

* Update 5.0.0 release notes

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>
Co-authored-by: chasingkirkjufell <38635377+chasingkirkjufell@users.noreply.github.com>

* Update the response code for the httpserver response when http work queue depth exceeded (navcoin#681)

* persist votes (navcoin#680)

* prevent duplicated insert (navcoin#679)

* [DAO] Fix for last voting cycle of proposals and payment requests (navcoin#678)

* fix max voting cycles for proposals and preqs

* fix cap cycles

* Updated the default path for stress test script to be relative to the project root (navcoin#683)

* Optimize memory use for blockindex (navcoin#682)

* optimize memory use for blockindex

* use function reference

* add missing votestatecache to getblockchaininfo (navcoin#686)

* Fixed bug with RPC call `proposeanswer` rejecting string values (navcoin#688)

Updated according to alex's suggestion

* Update rpcwallet.cpp (navcoin#689)

* Update blockchain.cpp (navcoin#690)

* Updated price update timer to respect shutdown request (navcoin#696)

* [TEST] Fixed some functional tests that were checking for state == 0 for expired proposals or prequests (navcoin#698)

* Fixed cfund-paymentrequest-state-expired.py

* Fixed cfund-proposal-state-expired.py

* Updated the encrypt wallet logic to not replace master key (navcoin#697)

* [TEST] Fixed qa/rpc-tests/dao-consultation-consensus.py (navcoin#703)

* Fixed qa/rpc-tests/dao-consultation-consensus.py

* Fixed another test, similar issue as previous one

* [GUI] Added new show/dump mnemonic UI, similar to the dumpmnemonic RPC call (navcoin#692)

* Added new show/dump mnemonic UI, similar to the dumpmnemonic RPC call

* Changed label as per suggestion

* Update communityfunddisplaypaymentrequestdetailed.cpp (navcoin#706)

* [GUI][SETUP] Added a password step to setup wizard (navcoin#700)

* [GUI][SETUP] Added a password step to setup wizard

* Updated some wording based on suggestions

* Updated the password message

* Added more progress indicators during wallet start up, also shows via RPC commands (navcoin#702)

* [RPC] Updated the message that RPC command returns after encrypting the wallet (navcoin#708)

* [INDEX] Fix address balance (navcoin#691)

* fix address balance index

* fix spends bool

* Bump to 5.0.1 and release notes (navcoin#711)

* We dont log here

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>
Co-authored-by: Craig M <craig.b.macgregor@gmail.com>
Co-authored-by: alex v <alex@encrypt-s.com>
Co-authored-by: Adam <adam@monomedialab.com>
Co-authored-by: R-Marino <n286cpuML@mail2mypc.com>
Co-authored-by: Dan Tudor <dtudor01@gmaiol.com>
Co-authored-by: chasingkirkjufell <38635377+chasingkirkjufell@users.noreply.github.com>
Co-authored-by: chasingkirkjufell <you@example.com>
Co-authored-by: Kolby Moroz Liebl <31669092+mrmetech@users.noreply.github.com>
dantudor added a commit to NavPool/navcoin-core that referenced this issue Mar 1, 2021
* revert block filled from stempool

* tests do not use dandelion by default

* Fixed permission issue that was causing travis to fail
Fix for NTP causing some tests to fail and also be slower

* update mininode.py

* fix stem relay and test

* gui for splitting staking rewards

* skip invalid address/empty json object

* combobox with addresses

* fix dialog

* show coldstaking by staking address

* Updated depends to use winssl for windows and darwinssl for osx

* fix gui tx list

* fix listtransactions rpc accounting

* fix line wrap

* ignore 0% addresses

* fix typo

* ignore empty entries

* move some checks

* populate list from AvailableCoinsForStaking

* fix lookup key

* undo remove getobjmap

* remove log

* fix lookup key

* show popup when no coins left

* fix text

* Added the stakingsortbycoinage flag for coin sorting on stake

* fix calculation reward

* add mxaddict address

* check for dandelion outbound

* use different logic

* map by inv and not only hash

* added "setup staking rewards" button on the overview page and also my donation address

* fix cfund proposal reorg

* changed pushbutton name to be more descriptive

* Remove unnecessary check

* chmod +x

* Updated test to use connect_node_bi as it speed up the test execution time (Not sure why it was slow with plain connect_nodes call)

* Updated some NULL -> nullptr

* Replaced Q_FOREACH with for from c++11 standard

* correcting assertion

* Fixed errorLog loading in Debug Window

* added (failing) test for checking reorg of payment requests

* only check when adding new proposals/prequests
- a previously accepted block can only contain valid entries
- a payment request could fail to be removed when a reorg
  happens if its checked for validity as the original amount
  is not available back in the proposal

* merge and fix tests

* fix types

* fix test name

* add missing test

* Removed some deprecated code

* Replaced all BOOST_FOREACH with new for() syntax (c++11)

* coldstaking_spending.py

* stakingaddress.py

* coldstaking_fee.py

* Fixed some gitignore permissions and added new file to main gitignore (navcoin#561)

* Updated qa/rpc-tests/coldstaking_fee.py

* Updated includes syntax based on discussion on navcoin#503 (navcoin#566)

* Update rpcconsole.cpp

changed comment from 2 -> 1 as per the code change

* added assertion & logs

* cover same hash block scenario

* cover same hash block scenario

* check for blockhash still is correct

* Added new -allindex option (navcoin#546)

* Added new -allindex option

* Added help text for allindex

* Updated the custom 'change' address to be a persistent setting

* Patch for staking redirect gui (navcoin#614)

* OCD

* Fix for the NAMED addresses

* Bump version number (navcoin#615)

* Added release notes

* Added the missing PRs to release notes

* Added another PR to release notes

* Update release-notes-4.7.1.md

* Update release-notes-4.7.1.md (navcoin#620)

* Update release-notes-4.7.1.md

updated release notes

* Update release-notes-4.7.1.md

* Added clearer error messages for the nRequest amount validation (navcoin#609)

* Added clearer error messages for the nRequest amount validation

* Added fix for tr calls

* Disable CFund client functionality (navcoin#623)

* disable cfund client functionality

* enable vote

* new testnet

* new testnet (navcoin#628)

* update hardcoded seed nodes

* fix reference to chain tip

* add second dns seeder

* CFundDB extra log and ensure read before modify (navcoin#622)

* add extra log

* add __func__

* ensure read before modify

* fix log

* optimize log

* do not access modifier

* only set dirty when necessary

* check for nullified

* add extra log

* do not insert nullified entries

* HaveProposalInCache/HavePaymentRequestInCache

* add cfunddb_tests.cpp

* add 250 rounds and random remove

* Added new test for cfund reorg scenario

* Updates to the test as per aguycalled's suggestions

* update  qa/rpc-tests/cfund-fork-reorg.py

* Added new test to the suite

* move mprequest

* adding (failing) test for proposal reorg

* removed 5th cycle

* fixed preq voting, removed logs added final payout check

* Set DEFAULT_SCRIPTCHECK_THREADS to auto

* Only count stakes in main chain (navcoin#636)

* Only count stakes in main chain

* Fixed a function call

* Updated the test to include the scenario for navcoin#636

* Updates to make the wallet.py and stakeimmaturebalance.py test more reliable (navcoin#624)

* Updates to make the wallet.py test more reliable

* Updated qa/rpc-tests/stakeimmaturebalance.py to be more reliable

* Fixed freezing GUI on reindex (navcoin#638)

* Add count stats to getblock

* Update blockchain.cpp

* CPaymentRequest fields incorrect in diff

* Adds proposalHash to json output of PaymentRequest

* Adds root flag to switch toggle proposalHash depending on if the paymentRequest is the root JSON child

* include rpcwallet

* hash to string and votingCycle uses %d identifier

* Fix for verifychain (navcoin#634)

* fix coins view instead of coins tip

* recount votes when verifying database

* fix boolean

* write instead of insert if it already exists

* use mapState instead of fState and blockhash

* add missing txblockhash to ser function

* fix log

* getstate string for paid state

* update paidOnblock to stateChangedOnBlock from cfund tests

* check statedb hash in verifychain

* fix v452 fork

* fix %d->%s

* add log

* use formatmoney

* prevent undefined behavior

* show cf supply in getblockheader

* check for paid state

* fix some tests

* fix diff prequest

* GetLastStateBlockIndexForState()

* fix cfund-paymentrequest-hardfork-452.py

* consider status changes from same block

* fix heights for testnet

* notRequestedYet

* notRequestedYet

* detect old db struct

* add statehash to updatetip log

* check old structure bootstrap

* only do reindex-chainstate when rebuilding db struct

* only calculate statehash if debug=statehash

* include cfsupply and cflocked in statehash

* add mine filter to listproposals

* support multiple filters

* remove duplicate declaration

* add cfund test unit

* fix call to old var

* setup consistency

* fix loop condition

* assert statehash

* remove old reference after master merge

* remove old reference after master merge

* fDirty

* Revert "fDirty"

This reverts commit 561339d.

* add extra log

* reactivate cfund

* update qt strings

* version bump, release notes & updated release process.

* Delete navccoin-core.code-workspace

* updated release notes

* update translations

* Remove popup (navcoin#652)

* release notes updated

* added 651

* Anti Header Spam v2 (navcoin#656)

* anti header spam v2

* add missing new line

* add missing __func__

* fix check

* use MAX_HEADERS_RESULTS

* use MAX_HEADERS_RESULTS*2

* do not use inserter

* unused var

* change return type to void

* v4.7.3 bump version and release notes

* Update Doxyfile

* add salmonskinroll's address

* added qa/rpc-tests/test_framework/siphash.py

* See you in a hundred years

* Welcome to wallet GUI for mnemonic (navcoin#659)

* update translations (navcoin#661)

* Rescan when importing mnemonic (navcoin#662)

* rescan when importing mnemonic

* fix for mnemonic wizard

* Fixed words being cut off in mnemonic ui (navcoin#665)

* update curl to v7.68.0 (navcoin#663)

* Updated qa/rpc-tests/cfunddb-statehash.py to use connect_nodes_bi (navcoin#666)

* Update the wallet GUI look and feel, fixed scaling on menu and splash screen (New Icons), Removed NavTech references, Added multi theme support (navcoin#557)

* Removed translations

* Removed navtech source and makefile references

* Removed key generation code from init.cpp

* Removed navtech buttons from sendcoinsdialog

* Removed default anonserver values from config file

* Removed navtech intro '-firstrun'

* Removed a navtech string

* Removed navtech style

* Removed anonsend values from vRPCConvertParams

* Removed -addanonserver from util

* Removed *anonserver rpc commands

* Removed anonsend and getanondestination from rcpwallet code

* These if else statements were iffy

* Removed navtech code from wallet.cpp

* Removed navtech code from sendcoinsdailog.cpp

* Removed AddedAnonServers variables

* Removed unused dzeel

* Removed more navtech related anon code from wallet model

* Removed s*Key vars

* Replaced anon-destination with strdzeel

* Fixed helper text for sendtoaddress rpc command

* Removed more navtech related code

* Renamed fonts to be all lowercase

* Added new main menu vector logos

* Moved menu to the left side (Used to be on top)

* Fixed scaling for splash screen on HDPI/Retina screens

* Integrated qtsvg to the qt depends build

* Update the counter when changing votes

* Updated icons

* Added the new staking icons to the status bar

* Force colorize for all platforms

* Fixed transactions icons to work with SVG

* Updated the wallet layout to have header with padding so we can show notices on top of wallet

* Updated the NTP sync to cancel faster when shutdown is requested

* Moved updateAlerts into the header

* Added DAO warning to header

* Moved out of sync warning into the header

* Fixed windows build

* Updated staking off to change icon as well

* Fixed splash screen font scaling

* Fix the bubbles on OSX

* Updated the menu look

* Updated icons

* Moved code indentation

* Optimized SVGs

* Updated other ico files

* Updated doxygen icon

* Updated README to use new logo

* Updated more logos in the /share/pixmaps dir

* Updated nsis bitmaps

* Updated menu colors

* Refector skinize to use external stylesheet instead of embedded into the function

* Fixed encryption icon color

* Added qt creator files to gitignore

* Removed skinize and applied stylesheet to whole QApplication

* Removed curlCode as it was unsused

* Refactored styles into external sheet

* Moved version to menu

* Link main menu logo to overviewpage

* Updated some styles

* Added splashscreen animation

* DRYer scale() implementation

* fixed QR_CODE scaling for HDPI screens
Fixed on receive page
Fixed on request page
Fixed on coldstakingwizard

* Cleaner looking assignment and return

* OCD FTW, just had to remove that extra space once I SAW IT...

* Updated styles for flat buttons

* Better looking tooltips

* Re-orged some styles

* Added new multitheme support

* Fixed background color on some input fields
Better spacing and padding for some elements

* Updated transaction view to use scale factor

* Resized the status column to fit the icon size better

* Refactored themes

* Moved loadTheme into navcoinapplication.cpp to update application palette before platformStyle is init

* Unified the look and feel of the platforms fully (No more custom styles/icons for different OSs

* Replaced theme qDebug call with info() call

* Fixed tooltip

* Added tooltip for staking icon

* Added scaling to the status bar icons

* Refactored some functions in platformStyle

* Fixed debug console prompt icon

* Icons in debug window scalable size

* Updated address label to be readOnly line edit

* Fixed size for address on receive page

* Fixed tree view icons on mac

* Added padding to buttons and lineedit

* Updated dao page buttons look and feel

* Fixed theme loading to use correct config

* Updated layout for receive page

* Moved statusBar icons/widgets to top of wallet

* Refactored wallet header and overview page

* Removed some QT generated files

* More deprecated code

* Better sync UI (Some changes came from upstream)

* Fixed mac nap inhibitor

* Updated progress dialog to be scalale and follow theme colors

* Updated the icon for sync

* Updated the URL for repo in copyright section

* Overview page layout changes

* Adjusted the staking destination button on overviewpage

* Updated the Makefile.qt.include to try and fix build issue with windows and osx

* Updated translation base

* Added scaling to options

* Removed the headerbar

* Adjusted the splash screen font size

* Removed some redundant styling

* Added balance to header of wallet to make use of the extra space

* Lucky # 7

* Prettier listview

* Removed balance from bottom of wallet send page, changed "Use full amount" into a "Send available coins" checkbox

* Removed deprecated code

* Updates for the wallet GUI

* UI updates (Moved some size values to the style sheet

* Applied the app theme before the intro wizard

* Changed sizing of the coin control UI

* Fixed currency issue on create payment request and create proposal dialogs

* Fixed history column widths

* Better sendcoins page spacing

* Added spacer above setup staking button

* Aligned balances and staking reports

* Fixed missing border on warning alerts

* Added cold staking balance to header staking balance display

* Added new coin control toggle to send dialog and removed some redundant
spacers

* Added the logo to setup wizard

* Implemented the new THEME into the setup wizard

* Fixed bug with the coin control toggle

* Updated overview page to load 25 recent TX instead of just 5

* Added more space in the address area for txwallet

* Replaced the hack with a worst hackaround

* Made the setup screen logo smaller

* Fixed bug with the coin control dialog

* Better looking tx list

* Updated the header balance layout to look a bit better and also have the staked all, 24 hours and last 7 days

* Better looking TX list

* Forced the new pretty format to not round the decimals, just chop it off

* Fixed a bug with the scaling slider not triggering the 'showRestartWarning'

* do not use stempool if devnet and no peers (navcoin#667)

* Updated wallet.py to disable staking on self.nodes restart (navcoin#670)

* Removed intro wizard and fixed testnet/devnet setting from conf file (navcoin#669)

* fix fork length detection (navcoin#671)

* Added skip dialog for seed backup step (navcoin#672)

* Added skip dialog for seed backup step

* Change the button text on certain steps

* Fix sequencelocks stempool (navcoin#673)

* fix stempool sequencelocks

* xtra log

* Update main.cpp

* Add tools page/dialog for running common commands for wallet repair/maintenance (navcoin#675)

* DAO Extension (navcoin#530)

* rename

* rename

* only read from coinbase without vote cache

* update qa/rpc-tests/dao-consultations-with-answers-staking.py

* revert miner.cpp

* only read from coinbase without vote cache

* declare pointer

* read cached voter before modifier

* set limits for Consensus::TYPE_NUMBER

* reflection and voting cycles start at 1

* do not exclude consultations not fully finished

* require support for range consultations

* do not show cycle status for finished votings

* allow higher limit for gui consultation range

* fix proposal with negative values

* catch exception

* propose answer context menu

* wrap for question consultation

* bigger chart size and many windows at the same time fix

* fix range consultation abstain vote

* fix first block rane consultation

* change text status description

* check for active consensus consultation in mempool

* check cycle count for range consultation

* check for correct status

* check for correct status staking

* base view has priority over mempool view

* consultation.tostring()

* catch exception

* catch more exceptions

* fix duplicated answers

* fix multiple reorg consultations

* fix reorg for staker votes

* fix text for CONSENSUS_PARAM_CONSULTATION_MIN_SUPPORT

* remove propose change from consultation contextual menu

* fix reflection length

* last cycle status text

* check CONSENSUS_PARAM_CONSULTATION_MAX_SUPPORT_CYCLES against CONSENSUS_PARAM_CONSULTATION_MIN_CYCLES

* prevent simultaneous voting of CONSENSUS_PARAM_CONSULTATION_MIN_CYCLES and CONSENSUS_PARAM_CONSULTATION_MAX_SUPPORT_CYCLES

* fix consultation answer hash

* remove old cfund files

* getstakervote rpc

* fix restore staker vote

* text font size

* remove propose change for cfund context menu

* fix abstain text

* show abstain votes

* clear parent when view is empty

* change votes data struct

* fix layout when no weight

* prevent 100% minimums

* payment request fee

* update test

* fix qa/rpc-tests/dao-consultations-with-answers-staking.py

* fix fund voting last cycle

* fix consultation range creation

* fix consultation range check

* fix range consultation support reset

* remove trailing zeros

* show support chart when supported

* fix supported consultations

* read voter before clearing

* fix 65

* break text lines

* fix 0 voting range

* fix log

* fix createpaymentrequest

* fix tests

* check for daoextension entries in cfunddb-statehash.py

* move GetCFundDBStateHash out of coins.cpp

* default showall for listconsultations

* fix merge patches

* fix qa/rpc-tests/cfund-fork-reorg-proposal.py

* fix qa/rpc-tests/dao-consultations.py

* fix qa/rpc-tests/dao-consultation-consensus.py

* fix missing comma

* fix statehash votes

* add extra log for modifiers

* fdirty adjustments

* votelist clear

* fdirty fixes

* HaveEnoughAnswers use view

* votelist diff

* fix tx for txRead

* set default value

* use correct tip when verifychain

* store consensus parameter in state view

* fix nversion r/w

* proposal payment address jsonizer fix

* allow new answers when supported phase

* fix == operator proposals

* fix coins_tests.cpp

* better diff log

* fix operator== proposal

* fix typo

* do not allow support votes when supported state

* read prequest from map

* do not look at chainActive

* look back in whole cycle when length changes

* fix typo

* restart votes when scanning whole cycle

* leave to votestep to roll back votes

* look back in cycles for every consensus change

* cleaner votelist diff log

* add more log

* missing height

* add daoconsensusparams.h to Makefile.am

* reverse 62e59b8

* some extra temp log

* only reset votes at the end of votestep

* recalculate voting cycle when looking at the whole cycle

* CanVote consistency

* CanVote consistency

* revert prev patch

* logic consistency

* some extra log

* add consensus/dao/flags.h to Makefile.am

* extra logging

* only change consensus parameters at the end of votestep()

* consensus parameter change take effect the block after the voting

* add dao-consultation-consensus-cycle-length.py test

* fix log

* revert edc0cea

* do not assume inserted votes can still vote

* recalc votingcycle before recalc votes

* fix gui support button

* wait until status change for not letting vote because of voting cycles

* fix 75

* fix 76

* fix 78

* fix 77

* remove log

* merge abstain and consultation deployments

* invert r/w order

* read staker script

* use uint512 for TransactionGetCoinAge

* fix after merge

* correct SendMoney params

* qt fixes after merge

* fix makefile.qt.include

* fix qt depends

* update .gitmodules

* fix missing line concatenator

* Updated the buttons to work with new theme

* Updated label for proposal

* fix cfund_tests.cpp

* fix deployment gui

* do not show proposals which are completely paid

* fix 81

* fix testnet proposal min fee

* restart testnet

* count all dao entries for the menu icon

* Addinga a stresser script to test wallet functions (navcoin#59)

* adding stresser to test NavCoin wallet functions

* update info

added info

* changed file name, delimiter of best block hash and state hash from null to new line, pulling consensus parameter name from commmand

* changed file name, delimiter of best block hash and state hash from null to new line, pulling consensus parameter name from commmand

* make assert state double check permanent

* checking if consensus paraamter correctly being output from node before updating

* fix network density limit logic

* Revert "fix network density limit logic"

This reverts commit fe78f2b.

* fix issues with 1 node network in network splitting phase

* fix network split phase connection logic

* add assert state dual checks for network splitting phase

* turn on -debug=statehash

* reduce block cycle length upper limit

* Modify descriptions

* imrpove statehash logic in network splitting and performance boost

* tidy up output

* reduce sleep time

* print user, password, and rpc port on launch

* add stressor prupose description

* remove extra log

* fixed read coinage txprev

* fix coin age order

* check for max number of answers

* do not show cycle info for paid prequests

* ask for confirmation of fee

* fix payment request detailed dialog

* remove non existent signals

* add missing max

* type cast

* fix count abstain votes

* fix length names

* fix dao gui exclude finished filtering

* add log to test

* fix typo

* include prequest votes in blockheader

* format votes

* fix range consultation

* ranges can't have more answers

* fix proposal exclue filter

* do not show proposals without available coins

* fix look for active consultation in forked chain

* show support button for supported consensus consultations

* allow abstain vote rpc command

* change cfund description gui label

* Update stressor (navcoin#60)

* add abstain votes for range consultations

* disable dandelion

* fix abstain vote reorg

* do not clear again mapVotes

* fix logic abstain IsValidVote

* fix logic

* consider vote in CanBeVoted

* clear mapVotes when new cycle

* Fix min upper range for consultation gui

* some extra log

* more log

* fix mapSeen

* change consultations json

* more changes consultation json

* update strings

* trim long strings

* when consensus changes, reset votes of new cycle with old state

* move vClearAnswers declaration

* check before committing

* mark dirty if not broadcasted

* fix consensus description

* fix consensus description

* light wallet voting

* do not unnecessary remove vote outputs for delegated voting

* ignore empty scripts

* fix parent title prequest gui

* fix wrapping

* clean up code and remove rpc user (navcoin#62)

* update dao light voting tests

* prevent double voting

* fix qa/rpc-tests/dao-light-voting-cfund.py

* remove log

* show warning if vote is not valid

* push missing header update

* mark blockindex in nStatus for dao data structures

* Fix light voting rpc test (navcoin#66)

* fix wrong logic of dual voting

* remove status output

* add light vote range consultation rpc test (navcoin#65)

* bench dao state

* fix logic

* increase height for title

* move extended dao log to category daoextra

* take title out of qchart into qlabel

* checks conditional to deployment being active

* move check to ContextualCheckBlock

* use pindexprev instead of chainactive

* reset testnet

* message start

* admit csv2 address as change

* fix typo

* voting cycle fixes and extra info in jsonifier

* fixes max cycles

* fixes current cycles for state

* fix max cycles for accepted state

* reverse mapState k/v

* fix expired for consensus consultation

* fix tests

* fix qa/rpc-tests/dao-consultation-consensus-cycle-length.py

* tests

* bump version to 5.0.0

* Update 5.0.0 release notes

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>
Co-authored-by: chasingkirkjufell <38635377+chasingkirkjufell@users.noreply.github.com>

* Update the response code for the httpserver response when http work queue depth exceeded (navcoin#681)

* persist votes (navcoin#680)

* prevent duplicated insert (navcoin#679)

* [DAO] Fix for last voting cycle of proposals and payment requests (navcoin#678)

* fix max voting cycles for proposals and preqs

* fix cap cycles

* Updated the default path for stress test script to be relative to the project root (navcoin#683)

* Optimize memory use for blockindex (navcoin#682)

* optimize memory use for blockindex

* use function reference

* add missing votestatecache to getblockchaininfo (navcoin#686)

* Fixed bug with RPC call `proposeanswer` rejecting string values (navcoin#688)

Updated according to alex's suggestion

* Update rpcwallet.cpp (navcoin#689)

* Update blockchain.cpp (navcoin#690)

* Updated price update timer to respect shutdown request (navcoin#696)

* [TEST] Fixed some functional tests that were checking for state == 0 for expired proposals or prequests (navcoin#698)

* Fixed cfund-paymentrequest-state-expired.py

* Fixed cfund-proposal-state-expired.py

* Updated the encrypt wallet logic to not replace master key (navcoin#697)

* [TEST] Fixed qa/rpc-tests/dao-consultation-consensus.py (navcoin#703)

* Fixed qa/rpc-tests/dao-consultation-consensus.py

* Fixed another test, similar issue as previous one

* [GUI] Added new show/dump mnemonic UI, similar to the dumpmnemonic RPC call (navcoin#692)

* Added new show/dump mnemonic UI, similar to the dumpmnemonic RPC call

* Changed label as per suggestion

* Update communityfunddisplaypaymentrequestdetailed.cpp (navcoin#706)

* [GUI][SETUP] Added a password step to setup wizard (navcoin#700)

* [GUI][SETUP] Added a password step to setup wizard

* Updated some wording based on suggestions

* Updated the password message

* Added more progress indicators during wallet start up, also shows via RPC commands (navcoin#702)

* [RPC] Updated the message that RPC command returns after encrypting the wallet (navcoin#708)

* [INDEX] Fix address balance (navcoin#691)

* fix address balance index

* fix spends bool

* Bump to 5.0.1 and release notes (navcoin#711)

* [GUI] Replace PRICE API with coingecko as cryptocompare prices were not as accurate (navcoin#712)

* Fixed qa/rpc-tests/cfunddb-statehash.py (navcoin#715)

* [TEST] 639 CFund Tests (navcoin#640)

* basic framework up

* first two tests added

* tidy up whitespace

* more tests added

* updated readme

* Fixed qa/rpc-tests/cfunddb-statehash.py

* Fixed failing test

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>

* [RPC][GUI] Fixed `netstakeweight` value in `getstakinginfo` rpc call (navcoin#699)

* Fixed `netstakeweight` value in `getstakinginfo` rpc call

* Added the expected daily reward to the GUI

* [DB][BLOCKS] Leveldb upgrade (navcoin#717)

* Prep changes for leveldb subtree

* Squashed 'src/leveldb/' content from commit f8ae182c

git-subtree-dir: src/leveldb
git-subtree-split: f8ae182c1e5176d12e816fb2217ae33a5472fdd7

* Squashed 'src/crc32c/' content from commit 22498868

git-subtree-dir: src/crc32c
git-subtree-split: 224988680f7673cd7c769963d4035cb315aa3388

* getaddressbalance return staked value (navcoin#723)

* [RPC] Correctly label isstakable in the validateaddress help response (navcoin#727)

* Correctly label isstakebale in the validateaddress help response

* fix the label

* One more space

* [GUI] Added config menu button and moved options dialog into it's own page (navcoin#676)

* Added config menu button and moved options dialog into it's own page

* Fixed some issues with the loading/saving of settings from the new config page

* Updated how the save button behaves

* Added alert to confirm that settings were saved

* Updated the config link on sidebar

* Fixed the duplicate shortcut keys

* Added confirmation dialog when leaving options page without saving

* Update navcoingui.cpp

* Update optionsdialog.cpp

* [RPC] Address history index (navcoin#724)

* address history

* add GetAddressHistory() definition

* fixes

* getaddresshistory rpc

* rpc help

* discern delegated from undelegated

* fix for transactions to oneself

* add staking address balance info to getstakinginfo

* formatmoney

* fix spend of tx in same block for light wallet volet

* [GUI] Disabled DAO notification if not staking (navcoin#726)

* Updated links to dao (navcoin#725)

* [GUI] Add voting address to the cold staking wizard (navcoin#728)

* add voting address to cold staking wizard

* Update coldstakingwizard.cpp

* Fix -wallet issue navcoin#729 (navcoin#730)

* [CLEAN] Remove declaration of undefined function (navcoin#734)

* [RPC] getaddresshistory counts balance for whole history even when range (navcoin#732)

* Update httpserver.cpp header (navcoin#740)

httpserver.cpp:73:10: error: 'deque' in namespace 'std' does not name a template type
   73 |     std::deque<std::unique_ptr<WorkItem>> queue;
      |          ^~~~~
httpserver.cpp:32:1: note: 'std::deque' is defined in header '<deque>'; did you forget to '#include <deque>'?

* Update getaddresstoreceive.cpp (navcoin#733)

* [RPC] Fix for getaddresshistory balance of multiple addresses (navcoin#735)

* [RPC] Fix for getaddresshistory balance of multiple addresses

* Update misc.cpp

* fix too late declaration

* Add my address to team list :D (navcoin#744)

* index coldstaking utxos by spending address in spendindex (navcoin#731)

* show 0 value txes in address history (navcoin#746)

* [DAO] Exclude inactive stakers from votings (navcoin#745)

* exclude inactive stakers from votings

* fix versions

* dao.cpp patches

* add rpc and fix exclude count

* show pending for incomplete cycles

* check for preqs

* fix tests

* [RPC][GUI] Adds encryption to the wallet txdata and addressbook (navcoin#709)

* Added wallet encryption for the whole database file

* Updated the bdb.mk to work cross platform

* Fixed a compile issue on mingw

* Updated the way the pin was passed around

* Removed a back call

* Updates

* Fixed a bug that caused encrypting the wallet keys to decrypt the main database file

* Implemented the new encrypttxdata rpc call

* Fixed a bug that caused wallet to crash when using wrong password for db encryption

* Removed unused string

* Added checking for older wallet formats

* Removed an unused method

* Added GUI support for changing txdata encryption

* Updated the message when encrypting wallet and txdata

* Removed a duplicate entry for "DEFAULT_WALLET_DAT"

* Fixed the intermitent crash with clicking the ok button

* Updated the text for the warning

* Updated warning messages for wallet encryption

* Updated to require -pin value when running as daemon

* [DAO] Do not transition to EXPIRED if previous state is ACCEPTED or REJECTED (navcoin#747)

* [DAO] Do not transition to EXPIRED if previous state is ACCEPTED or REJECTED

* Update dao.cpp

* Update flags.h

* Update dao.cpp

* Update flags.h

* fix managing new state

* fix test

* fix test

* fix tests

* [WIP] blsCT: Boneh–Lynn–Shacham Confidential Transactions (navcoin#743)

* Accounting blsCT public->private

* move random to libsodium

* fix winshutdown

* BLSCT fee accounting

* sodium_libs

* sodium_cflags

* flag for libbls

* use sodium_libs

* no more verbose

* add to other makefiles

* Fix check of previous outputs

* Check for vector size overflow

* Revert "move random to libsodium"

This reverts commit 0f6b6bb.

* Restore DARWIN flags

* Revert "Restore DARWIN flags"

This reverts commit c15e5cb.

* Fix DARWIN path

* Use darwin16

* Revert "fix winshutdown"

This reverts commit 494593b.

* Fix public to private

* Accounting

* check for uninit tx

* Save mixing choice and add combo box in wallet options

* xNAV

* fix private coincontrol

* are inptus available

* fix branch

* xN address prefix

* fix

* fix selecting coins from mempool

* negative private pool checks

* GUI options and RPC commands to set mixing fees

* Update build-unix.md

* use --enable-endomorphism for secp2561k

* reset testnet

* issue 11

* issue 13

* change rpc help message

* issue 15

* fix issues 12 & 14

* mix timeout option in gui

* fix broadcast session

* aggregation thread

* getbalance private rpc

* patches

* exclude inactive stakers from votings

* fix versions

* dao.cpp patches

* fix tor sock port

* fix mainnet versionbit deployment

* SWAP and other GUI changes

* encrypt after blsct

* testnet by default

* fix testnet versionbit

* use CBasicKeyStore

* fix key name for erase

* listprivateaddresses rpc command

* fix default testnet

* fix default testnet bug

* fix typo

* fix typo

* fix too long message crash

* fix swap 0 nav

* no flat swap button

* fix coincontrol tree mode blsct

* use full amount private checkbox fix

* tor control log protocol

* more tor log

* split tor params

* remove log

* private address book

* include address in listprivateunspent

* ConnectSocketDirectly

* missing header

* update icons

* add missing new line

* show alert fi too long encrypted msg

* remove tor

* Squashed 'src/tor/' content from commit adf81fb757

git-subtree-dir: src/tor
git-subtree-split: adf81fb757853b0185873e251b8620d05f15cee1

* ignore ct outputs in availablecoins

* missing rust dep

* restore netbase.cpp

* dumpviewprivkey rpc

* check isvalid for blsct secret key

* scanviewkey rpc

* fix available coins

* fix swap units

* fix

* fix supply calc fee

* split long address

* show encrypted message for outgoing txs

* fix fee private to private

* remove log

* allow staking to xnav

* reject proposals to xnav address

* fix for crash when empty datadir and -reindex

* cache ismine for private

* do not collect candidates if not synced

* fix movedtobls

* change log string

* remove double declaration

* fix slow getstakinginfo

* mixing reward filter

* add time to scanviewkey

* upgrade tor

* missing rust

* remove tor

* Squashed 'src/tor/' content from commit 75fc33f33

git-subtree-dir: src/tor
git-subtree-split: 75fc33f3372b1098d46452b320ef5548d02053a9

* remove libtor-llharden

* mix count for coincontrol

* show state error

* shuffle inputs and outputs after combining

* shuffle vector instead of set

* store nonces and tx history

* do not use netbase for connection to tor

* remove code from reverted commit

* ephemeral server log

* remove log

* fix outputnonce records

* show xnav unit in popup

* Squashed 'src/bls/' changes from 064c9109..632f3aa1

632f3aa1 src: Drop CheckRelicErrorsInvalidArgument, use CheckRelicErrors instead
35b878b2 src: Throw proper exceptions instead of std::string
6359c47f flake
0316d595 version info fix
4bed72b0 Default to dynamically linking libsodium, static link on wheels (navcoin#145)
ee71adc0 delete assignment operators on PrivateKey
8ac7fca5 fix resource management in PrivateKey class. add assignment operators to properly copy value (instead of pointer) or move (instead of copying pointer, resulting in double-free)
597be36c no more free NULLs
c85c395a call free on relic objects. doesn't seem to affect libsodium but probably should be done
e20d2bfa yal
af78644b add missing bn_free() calls when destructing the BNWrapper's value
295f1f24 Publish to PyPI first in case test PyPI is down
891a75ed fix self-assignment on BNWrapper, as well as move construction and move assignment. Bumps C++ version to 17
2ba6435e get rid of floating point
ed900b11 remove cout
bcebe157 copy and assignment
55b3c8f7 hmm
8a42b0bf leak fix and debug info
01a1a7d0 Try relic fix
68e2b6bf Add fast pub aggregation
1139ecc6 regress relic
7fafd92c Remove curl install and confirm manylinux2010 image
72056533 Is curl missing?
5ea3a784 Back to 1.6.1
65e45b4d Back to 1.5.5
16de0c41 Track ubuntu build failure
4c01f016 Move to cibuildwheel 1.6.1
553f515f python needs SETUPTOOLS_USE_DISTUTILS=stdlib
465ee2c0 bump cancel-workflow-action@0.5.0
b278363b Update instructions to link library
d1e8f892 Run python impl tests, and copyright year
b75dde63 Add Pop test vector and fix lgtm
5fddc5aa Aggregate any number of signatures, finish python implementation
bf4c680a Start adding test vectors to python-impl
27cead53 Finish refactor
396a623f Prevent construction of elements without membership check, and python-impl tests
597c2202 Remove `git submodules init`
ce2f4417 Ensure membership check is always called, and add map_to_g1 to python-impl
a9038430 Fix tests
a9dddf02 Tweaks, and start rewrite of python implementation
7f0bdc94 extern C real relic repo include
5e8d846d Fix lgtm libsodium build failure
552ac73b Pull relic from relic/master
629f2164 Add cassert for ubuntu
4b946e1a Fix lint issues
5846dd75 New derive child API
561dc7aa Add const where necessary
9d98b5eb Re-enable benchmarks
4695b42f Update README
b94e545c Add more tests
a34347ce Start translation of tests
3e46c713 HD unhardened keys, and more tests
28e73103 Start refactor and add unhardened keys

git-subtree-dir: src/bls
git-subtree-split: 632f3aa1672100f2693244654712a78086900a03

* fix lock

* for last blssigs lib

* update for last chia lib

* point to prev commit relic

* back to relic master

* prev commit relic

* check for IsSelectableSocket

* const in comparator

* CIBUILDWHEEL

* candidate transactions write order and log

* static sodium

* static sodium

* increase candidate thread freq

* back to cxx11

* close socket if non selectable

* fix staking when output is mixed private and public

* update icons

* ignore sigpipe

* correct label of stake unit in overview page

* sig_ign

* revert last commits

* Extend encrypted message length to 54 bytes

* restart testnet

* check if socket is selectable

* use same nonce for min amount proof

* update currency icons

* remove check for isselectable

* add connection manager to ephemeral server

* set ARCH to ARM for BLS

* remove arch arm

* fix dialog unit

* fix missing bool

* fix accounting

* fix tab order

* fix copy label bug

* stop tor controller

* fix check

* arch arm with timer hreal

* disconnect tor control

* update description of privatesendmixtoaddress and privatesendtoaddress

* shared pointer for tcpconn

* disconnect after timeout

* parse setaggregationfee rpc argument

* use connmngr

* reset testnet, substract instead of xor

* reset testnet

* fix eph server

* return true startaggregationsession

* fix moved to public

* fix sendmoney

* libcap no go

* fix missing balance when output locked

* fix rpc

* fix tab order

* fix accounting public to public

* check if subaddress key is present

* remove breakpoint

* fix GetUint64

* fix cast getint64

* changes in send tab

* preference for spending coins with more mixes

* fix accounting public->private

* added log

* tooltips

* add tooltip

* fix crash when selecting coins

* change labels to reflect unlock wallet for mixing

* tx with ctout flag does not need a ct output

* missing __func__

* broadcast candidates in multithread

* new mixing protocol without tor

* keep 3 last keys

* scalar_T

* int cast

* int cast

* edit Makefile.am

* use thread for candidate verification

* remove log

* use set instead of vector to prevent duplicates

* revert net* changes

* missing coins in coincontrol

* fix accounting

* remove mixincount setting from options

* use vgammas instead of ismine for efficiency

* more optimization

* wrong cmp sign

* criticalsections mempool

* blsct in mainnet

* fix locks

* swap dialog mainnet

* no votestep if early block

* fix topup after unlocking without blsct keys

* mempool criticalsections

* fix

* fix

* remove assert

* dandelion embargo locks

* rmeove from options gui

* fix start time

* allow more than 1 input for candidates

* ignore exclude if p2cs2

* ignore exclude if p2cs2

* fix mistakenly removed line

* cs2 flag in pindex

* optimize scanviewkey

* default tor false

* 6.0 release notes

* scrip cs/cs2 checks

* check script size

* fix gen blsct keys encrypted wallet gui

* add softfork descriptions

* blsct script check

* check duplicated bls output

* update protocol ugprade voting start dates

* do not allow blsct in coinbase

* release candidate

* do not start blsct threads if blsct is disabled

Co-authored-by: alex v <alex@encrypt-s.com>

* fix mainnet when no test release (navcoin#749)

* Fixed a crash caused by system tray icon not being available on certain linux distros (navcoin#750)

* Added tilde support to the datadir param for navcoin (navcoin#751)

* Fixed the missing transaction size in send coins dialog (navcoin#752)

* update warning message (navcoin#753)

* update copyright years (navcoin#754)

* fix navcoin#755

* Fix for a wallet crash related to encryption detection (navcoin#761)

* final version 6.0 (navcoin#758)

* Add codesign to gitian (navcoin#757)

* add codesign to gitian

* grep does not use color

* update suite to bionic

* grep without color

* update sig-apply

* output to signature-osx.tar.gz

* update docs

* Update release notes doc 6.0 (navcoin#760)

* update doc 6.0

* Update release-notes-6.0.md

* Update release-notes-6.0.md

* Changed 'NavCoin' to 'Navcoin' (navcoin#763)

* Changed 'NavCoin' to 'Navcoin'

* Fixed some references in docs and contrib

* Removes embedded tor (navcoin#765)

* remove embedded tor

* fix makefile.am

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>

* Add codesign for Windows (navcoin#762)

* update doc 6.0

* windows codesign

* Update gitian-win.yml

* fix targz name

* fixes navcoin#767 (navcoin#772)

* add new strings for translations (navcoin#771)

* [FIX] Transaction amount in popup window incorrect (navcoin#773)

* fix navcoin#768

* fix

* [FIX] Wallet false positive on txdata encryption (navcoin#774)

* Fix for wallet false positive on txdata encryption

* This should fix the issue on windows, seems that ifstream is not in binary mode by default for the windows build

* Apply -blsctmix to threads and gui/rpc send (navcoin#778)

* apply -blsctmix to threads and gui send

* fix

* update icons

* Optimise initial sync speed (navcoin#766)

* optimize initial sync speed

* update checkpoints mainnet

* remove start timestamp

* optimizations dao

* optimise dao disk r/w

* fix kernelhashtarget

* debug daostatehash

* fix sync past 2750000

* do not build i686 windows gitian (navcoin#782)

* fix proposal filter accepted expired (navcoin#777)

* bump version 6.0.1

* Updated gitian descriptors as well to 6.0.1

* Remove i686 commands (navcoin#784)

* Tx structure memory optimisation (navcoin#785)

* bprp optimisation

* test serialization

* only check blsct if tx is blsct

* add cleanse.cpp to libnavcoin_consensus

* link ssl

* do not use openssl for mem clean

* add extra data in some rpcs (navcoin#776)

* only run xnav threads if privatebalance > 0 (navcoin#786)

* This removed linux 32bit from gitian, and removes `dirty` from gitian version name builds (navcoin#787)

* Remove linux 32bit, remove GZIP warnings, remove the need for SUDO in gitian windows build, removed 'dirty' from gitian build versions

* Removed 32bit windows and linux builds on travis ci

* Added kitware apt repo for newer cmake version

* Removed wine from travis setup

* Add the missing headers that windows builds need

* Release notes 6.0.1 (navcoin#788)

* Remove linux 32bit, remove GZIP warnings, remove the need for SUDO in gitian windows build, removed 'dirty' from gitian build versions

* Removed 32bit windows and linux builds on travis ci

* Added kitware apt repo for newer cmake version

* Removed wine from travis setup

* Add the missing headers that windows builds need

* release notes 6.0.1

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>

* Removed missed referrence to TOR_LIBS (navcoin#789)

* Fixed a reference to BLS (navcoin#790)

* Fix for osx build running out of log space travis (navcoin#792)

* Added a new run with dots script to lessen the output of depends build on travis

* Added verbose build if depends fails to build

* Removed the run with dots call from the verbose build of failed depends build

* Updated the run with dots script

* Removed unnecesary fold on travis

* Updated the deploy step to build libbls.a as it was failing on deploy step for osx travis build

* Added back the recursive install and check commands

* Removed a tor reference in the clean-local command

* xNAV transaction mempool policy (navcoin#794)

* op_1 transactions are standard

* second commit

* bump version 6.0.2 (navcoin#795)

* release notes 6.0.2 (navcoin#796)

* check inputs standard xnav (navcoin#797)

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>

* Prevent adding duplicated inputs from candidates (navcoin#798)

* Remove rust submodule

Co-authored-by: alex v <alex@encrypt-s.com>
Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>
Co-authored-by: Craig M <craig.b.macgregor@gmail.com>
Co-authored-by: Dan Tudor <dtudor01@gmaiol.com>
Co-authored-by: chasingkirkjufell <38635377+chasingkirkjufell@users.noreply.github.com>
Co-authored-by: chasingkirkjufell <you@example.com>
Co-authored-by: Kolby Moroz Liebl <31669092+mrmetech@users.noreply.github.com>
Co-authored-by: Garret Laxton <16290508+garretlaxton@users.noreply.github.com>
Co-authored-by: 0x2830 <60476194+0x2830@users.noreply.github.com>
dantudor added a commit to NavPool/navcoin-core that referenced this issue May 12, 2021
* changed pushbutton name to be more descriptive

* Remove unnecessary check

* chmod +x

* Updated test to use connect_node_bi as it speed up the test execution time (Not sure why it was slow with plain connect_nodes call)

* Updated some NULL -> nullptr

* Replaced Q_FOREACH with for from c++11 standard

* correcting assertion

* Fixed errorLog loading in Debug Window

* added (failing) test for checking reorg of payment requests

* only check when adding new proposals/prequests
- a previously accepted block can only contain valid entries
- a payment request could fail to be removed when a reorg
  happens if its checked for validity as the original amount
  is not available back in the proposal

* merge and fix tests

* fix types

* fix test name

* add missing test

* Removed some deprecated code

* Replaced all BOOST_FOREACH with new for() syntax (c++11)

* coldstaking_spending.py

* stakingaddress.py

* coldstaking_fee.py

* Fixed some gitignore permissions and added new file to main gitignore (navcoin#561)

* Updated qa/rpc-tests/coldstaking_fee.py

* Updated includes syntax based on discussion on navcoin#503 (navcoin#566)

* Update rpcconsole.cpp

changed comment from 2 -> 1 as per the code change

* added assertion & logs

* cover same hash block scenario

* cover same hash block scenario

* check for blockhash still is correct

* Added new -allindex option (navcoin#546)

* Added new -allindex option

* Added help text for allindex

* Updated the custom 'change' address to be a persistent setting

* Patch for staking redirect gui (navcoin#614)

* OCD

* Fix for the NAMED addresses

* Bump version number (navcoin#615)

* Added release notes

* Added the missing PRs to release notes

* Added another PR to release notes

* Update release-notes-4.7.1.md

* Update release-notes-4.7.1.md (navcoin#620)

* Update release-notes-4.7.1.md

updated release notes

* Update release-notes-4.7.1.md

* Added clearer error messages for the nRequest amount validation (navcoin#609)

* Added clearer error messages for the nRequest amount validation

* Added fix for tr calls

* Disable CFund client functionality (navcoin#623)

* disable cfund client functionality

* enable vote

* new testnet

* new testnet (navcoin#628)

* update hardcoded seed nodes

* fix reference to chain tip

* add second dns seeder

* CFundDB extra log and ensure read before modify (navcoin#622)

* add extra log

* add __func__

* ensure read before modify

* fix log

* optimize log

* do not access modifier

* only set dirty when necessary

* check for nullified

* add extra log

* do not insert nullified entries

* HaveProposalInCache/HavePaymentRequestInCache

* add cfunddb_tests.cpp

* add 250 rounds and random remove

* Added new test for cfund reorg scenario

* Updates to the test as per aguycalled's suggestions

* update  qa/rpc-tests/cfund-fork-reorg.py

* Added new test to the suite

* move mprequest

* adding (failing) test for proposal reorg

* removed 5th cycle

* fixed preq voting, removed logs added final payout check

* Set DEFAULT_SCRIPTCHECK_THREADS to auto

* Only count stakes in main chain (navcoin#636)

* Only count stakes in main chain

* Fixed a function call

* Updated the test to include the scenario for navcoin#636

* Updates to make the wallet.py and stakeimmaturebalance.py test more reliable (navcoin#624)

* Updates to make the wallet.py test more reliable

* Updated qa/rpc-tests/stakeimmaturebalance.py to be more reliable

* Fixed freezing GUI on reindex (navcoin#638)

* Add count stats to getblock

* Update blockchain.cpp

* CPaymentRequest fields incorrect in diff

* Adds proposalHash to json output of PaymentRequest

* Adds root flag to switch toggle proposalHash depending on if the paymentRequest is the root JSON child

* include rpcwallet

* hash to string and votingCycle uses %d identifier

* Fix for verifychain (navcoin#634)

* fix coins view instead of coins tip

* recount votes when verifying database

* fix boolean

* write instead of insert if it already exists

* use mapState instead of fState and blockhash

* add missing txblockhash to ser function

* fix log

* getstate string for paid state

* update paidOnblock to stateChangedOnBlock from cfund tests

* check statedb hash in verifychain

* fix v452 fork

* fix %d->%s

* add log

* use formatmoney

* prevent undefined behavior

* show cf supply in getblockheader

* check for paid state

* fix some tests

* fix diff prequest

* GetLastStateBlockIndexForState()

* fix cfund-paymentrequest-hardfork-452.py

* consider status changes from same block

* fix heights for testnet

* notRequestedYet

* notRequestedYet

* detect old db struct

* add statehash to updatetip log

* check old structure bootstrap

* only do reindex-chainstate when rebuilding db struct

* only calculate statehash if debug=statehash

* include cfsupply and cflocked in statehash

* add mine filter to listproposals

* support multiple filters

* remove duplicate declaration

* add cfund test unit

* fix call to old var

* setup consistency

* fix loop condition

* assert statehash

* remove old reference after master merge

* remove old reference after master merge

* fDirty

* Revert "fDirty"

This reverts commit 561339d.

* add extra log

* reactivate cfund

* update qt strings

* version bump, release notes & updated release process.

* Delete navccoin-core.code-workspace

* updated release notes

* update translations

* Remove popup (navcoin#652)

* release notes updated

* added 651

* Anti Header Spam v2 (navcoin#656)

* anti header spam v2

* add missing new line

* add missing __func__

* fix check

* use MAX_HEADERS_RESULTS

* use MAX_HEADERS_RESULTS*2

* do not use inserter

* unused var

* change return type to void

* v4.7.3 bump version and release notes

* Update Doxyfile

* add salmonskinroll's address

* added qa/rpc-tests/test_framework/siphash.py

* See you in a hundred years

* Welcome to wallet GUI for mnemonic (navcoin#659)

* update translations (navcoin#661)

* Rescan when importing mnemonic (navcoin#662)

* rescan when importing mnemonic

* fix for mnemonic wizard

* Fixed words being cut off in mnemonic ui (navcoin#665)

* update curl to v7.68.0 (navcoin#663)

* Updated qa/rpc-tests/cfunddb-statehash.py to use connect_nodes_bi (navcoin#666)

* Update the wallet GUI look and feel, fixed scaling on menu and splash screen (New Icons), Removed NavTech references, Added multi theme support (navcoin#557)

* Removed translations

* Removed navtech source and makefile references

* Removed key generation code from init.cpp

* Removed navtech buttons from sendcoinsdialog

* Removed default anonserver values from config file

* Removed navtech intro '-firstrun'

* Removed a navtech string

* Removed navtech style

* Removed anonsend values from vRPCConvertParams

* Removed -addanonserver from util

* Removed *anonserver rpc commands

* Removed anonsend and getanondestination from rcpwallet code

* These if else statements were iffy

* Removed navtech code from wallet.cpp

* Removed navtech code from sendcoinsdailog.cpp

* Removed AddedAnonServers variables

* Removed unused dzeel

* Removed more navtech related anon code from wallet model

* Removed s*Key vars

* Replaced anon-destination with strdzeel

* Fixed helper text for sendtoaddress rpc command

* Removed more navtech related code

* Renamed fonts to be all lowercase

* Added new main menu vector logos

* Moved menu to the left side (Used to be on top)

* Fixed scaling for splash screen on HDPI/Retina screens

* Integrated qtsvg to the qt depends build

* Update the counter when changing votes

* Updated icons

* Added the new staking icons to the status bar

* Force colorize for all platforms

* Fixed transactions icons to work with SVG

* Updated the wallet layout to have header with padding so we can show notices on top of wallet

* Updated the NTP sync to cancel faster when shutdown is requested

* Moved updateAlerts into the header

* Added DAO warning to header

* Moved out of sync warning into the header

* Fixed windows build

* Updated staking off to change icon as well

* Fixed splash screen font scaling

* Fix the bubbles on OSX

* Updated the menu look

* Updated icons

* Moved code indentation

* Optimized SVGs

* Updated other ico files

* Updated doxygen icon

* Updated README to use new logo

* Updated more logos in the /share/pixmaps dir

* Updated nsis bitmaps

* Updated menu colors

* Refector skinize to use external stylesheet instead of embedded into the function

* Fixed encryption icon color

* Added qt creator files to gitignore

* Removed skinize and applied stylesheet to whole QApplication

* Removed curlCode as it was unsused

* Refactored styles into external sheet

* Moved version to menu

* Link main menu logo to overviewpage

* Updated some styles

* Added splashscreen animation

* DRYer scale() implementation

* fixed QR_CODE scaling for HDPI screens
Fixed on receive page
Fixed on request page
Fixed on coldstakingwizard

* Cleaner looking assignment and return

* OCD FTW, just had to remove that extra space once I SAW IT...

* Updated styles for flat buttons

* Better looking tooltips

* Re-orged some styles

* Added new multitheme support

* Fixed background color on some input fields
Better spacing and padding for some elements

* Updated transaction view to use scale factor

* Resized the status column to fit the icon size better

* Refactored themes

* Moved loadTheme into navcoinapplication.cpp to update application palette before platformStyle is init

* Unified the look and feel of the platforms fully (No more custom styles/icons for different OSs

* Replaced theme qDebug call with info() call

* Fixed tooltip

* Added tooltip for staking icon

* Added scaling to the status bar icons

* Refactored some functions in platformStyle

* Fixed debug console prompt icon

* Icons in debug window scalable size

* Updated address label to be readOnly line edit

* Fixed size for address on receive page

* Fixed tree view icons on mac

* Added padding to buttons and lineedit

* Updated dao page buttons look and feel

* Fixed theme loading to use correct config

* Updated layout for receive page

* Moved statusBar icons/widgets to top of wallet

* Refactored wallet header and overview page

* Removed some QT generated files

* More deprecated code

* Better sync UI (Some changes came from upstream)

* Fixed mac nap inhibitor

* Updated progress dialog to be scalale and follow theme colors

* Updated the icon for sync

* Updated the URL for repo in copyright section

* Overview page layout changes

* Adjusted the staking destination button on overviewpage

* Updated the Makefile.qt.include to try and fix build issue with windows and osx

* Updated translation base

* Added scaling to options

* Removed the headerbar

* Adjusted the splash screen font size

* Removed some redundant styling

* Added balance to header of wallet to make use of the extra space

* Lucky # 7

* Prettier listview

* Removed balance from bottom of wallet send page, changed "Use full amount" into a "Send available coins" checkbox

* Removed deprecated code

* Updates for the wallet GUI

* UI updates (Moved some size values to the style sheet

* Applied the app theme before the intro wizard

* Changed sizing of the coin control UI

* Fixed currency issue on create payment request and create proposal dialogs

* Fixed history column widths

* Better sendcoins page spacing

* Added spacer above setup staking button

* Aligned balances and staking reports

* Fixed missing border on warning alerts

* Added cold staking balance to header staking balance display

* Added new coin control toggle to send dialog and removed some redundant
spacers

* Added the logo to setup wizard

* Implemented the new THEME into the setup wizard

* Fixed bug with the coin control toggle

* Updated overview page to load 25 recent TX instead of just 5

* Added more space in the address area for txwallet

* Replaced the hack with a worst hackaround

* Made the setup screen logo smaller

* Fixed bug with the coin control dialog

* Better looking tx list

* Updated the header balance layout to look a bit better and also have the staked all, 24 hours and last 7 days

* Better looking TX list

* Forced the new pretty format to not round the decimals, just chop it off

* Fixed a bug with the scaling slider not triggering the 'showRestartWarning'

* do not use stempool if devnet and no peers (navcoin#667)

* Updated wallet.py to disable staking on self.nodes restart (navcoin#670)

* Removed intro wizard and fixed testnet/devnet setting from conf file (navcoin#669)

* fix fork length detection (navcoin#671)

* Added skip dialog for seed backup step (navcoin#672)

* Added skip dialog for seed backup step

* Change the button text on certain steps

* Fix sequencelocks stempool (navcoin#673)

* fix stempool sequencelocks

* xtra log

* Update main.cpp

* Add tools page/dialog for running common commands for wallet repair/maintenance (navcoin#675)

* DAO Extension (navcoin#530)

* rename

* rename

* only read from coinbase without vote cache

* update qa/rpc-tests/dao-consultations-with-answers-staking.py

* revert miner.cpp

* only read from coinbase without vote cache

* declare pointer

* read cached voter before modifier

* set limits for Consensus::TYPE_NUMBER

* reflection and voting cycles start at 1

* do not exclude consultations not fully finished

* require support for range consultations

* do not show cycle status for finished votings

* allow higher limit for gui consultation range

* fix proposal with negative values

* catch exception

* propose answer context menu

* wrap for question consultation

* bigger chart size and many windows at the same time fix

* fix range consultation abstain vote

* fix first block rane consultation

* change text status description

* check for active consensus consultation in mempool

* check cycle count for range consultation

* check for correct status

* check for correct status staking

* base view has priority over mempool view

* consultation.tostring()

* catch exception

* catch more exceptions

* fix duplicated answers

* fix multiple reorg consultations

* fix reorg for staker votes

* fix text for CONSENSUS_PARAM_CONSULTATION_MIN_SUPPORT

* remove propose change from consultation contextual menu

* fix reflection length

* last cycle status text

* check CONSENSUS_PARAM_CONSULTATION_MAX_SUPPORT_CYCLES against CONSENSUS_PARAM_CONSULTATION_MIN_CYCLES

* prevent simultaneous voting of CONSENSUS_PARAM_CONSULTATION_MIN_CYCLES and CONSENSUS_PARAM_CONSULTATION_MAX_SUPPORT_CYCLES

* fix consultation answer hash

* remove old cfund files

* getstakervote rpc

* fix restore staker vote

* text font size

* remove propose change for cfund context menu

* fix abstain text

* show abstain votes

* clear parent when view is empty

* change votes data struct

* fix layout when no weight

* prevent 100% minimums

* payment request fee

* update test

* fix qa/rpc-tests/dao-consultations-with-answers-staking.py

* fix fund voting last cycle

* fix consultation range creation

* fix consultation range check

* fix range consultation support reset

* remove trailing zeros

* show support chart when supported

* fix supported consultations

* read voter before clearing

* fix 65

* break text lines

* fix 0 voting range

* fix log

* fix createpaymentrequest

* fix tests

* check for daoextension entries in cfunddb-statehash.py

* move GetCFundDBStateHash out of coins.cpp

* default showall for listconsultations

* fix merge patches

* fix qa/rpc-tests/cfund-fork-reorg-proposal.py

* fix qa/rpc-tests/dao-consultations.py

* fix qa/rpc-tests/dao-consultation-consensus.py

* fix missing comma

* fix statehash votes

* add extra log for modifiers

* fdirty adjustments

* votelist clear

* fdirty fixes

* HaveEnoughAnswers use view

* votelist diff

* fix tx for txRead

* set default value

* use correct tip when verifychain

* store consensus parameter in state view

* fix nversion r/w

* proposal payment address jsonizer fix

* allow new answers when supported phase

* fix == operator proposals

* fix coins_tests.cpp

* better diff log

* fix operator== proposal

* fix typo

* do not allow support votes when supported state

* read prequest from map

* do not look at chainActive

* look back in whole cycle when length changes

* fix typo

* restart votes when scanning whole cycle

* leave to votestep to roll back votes

* look back in cycles for every consensus change

* cleaner votelist diff log

* add more log

* missing height

* add daoconsensusparams.h to Makefile.am

* reverse 62e59b8

* some extra temp log

* only reset votes at the end of votestep

* recalculate voting cycle when looking at the whole cycle

* CanVote consistency

* CanVote consistency

* revert prev patch

* logic consistency

* some extra log

* add consensus/dao/flags.h to Makefile.am

* extra logging

* only change consensus parameters at the end of votestep()

* consensus parameter change take effect the block after the voting

* add dao-consultation-consensus-cycle-length.py test

* fix log

* revert edc0cea

* do not assume inserted votes can still vote

* recalc votingcycle before recalc votes

* fix gui support button

* wait until status change for not letting vote because of voting cycles

* fix 75

* fix 76

* fix 78

* fix 77

* remove log

* merge abstain and consultation deployments

* invert r/w order

* read staker script

* use uint512 for TransactionGetCoinAge

* fix after merge

* correct SendMoney params

* qt fixes after merge

* fix makefile.qt.include

* fix qt depends

* update .gitmodules

* fix missing line concatenator

* Updated the buttons to work with new theme

* Updated label for proposal

* fix cfund_tests.cpp

* fix deployment gui

* do not show proposals which are completely paid

* fix 81

* fix testnet proposal min fee

* restart testnet

* count all dao entries for the menu icon

* Addinga a stresser script to test wallet functions (navcoin#59)

* adding stresser to test NavCoin wallet functions

* update info

added info

* changed file name, delimiter of best block hash and state hash from null to new line, pulling consensus parameter name from commmand

* changed file name, delimiter of best block hash and state hash from null to new line, pulling consensus parameter name from commmand

* make assert state double check permanent

* checking if consensus paraamter correctly being output from node before updating

* fix network density limit logic

* Revert "fix network density limit logic"

This reverts commit fe78f2b.

* fix issues with 1 node network in network splitting phase

* fix network split phase connection logic

* add assert state dual checks for network splitting phase

* turn on -debug=statehash

* reduce block cycle length upper limit

* Modify descriptions

* imrpove statehash logic in network splitting and performance boost

* tidy up output

* reduce sleep time

* print user, password, and rpc port on launch

* add stressor prupose description

* remove extra log

* fixed read coinage txprev

* fix coin age order

* check for max number of answers

* do not show cycle info for paid prequests

* ask for confirmation of fee

* fix payment request detailed dialog

* remove non existent signals

* add missing max

* type cast

* fix count abstain votes

* fix length names

* fix dao gui exclude finished filtering

* add log to test

* fix typo

* include prequest votes in blockheader

* format votes

* fix range consultation

* ranges can't have more answers

* fix proposal exclue filter

* do not show proposals without available coins

* fix look for active consultation in forked chain

* show support button for supported consensus consultations

* allow abstain vote rpc command

* change cfund description gui label

* Update stressor (navcoin#60)

* add abstain votes for range consultations

* disable dandelion

* fix abstain vote reorg

* do not clear again mapVotes

* fix logic abstain IsValidVote

* fix logic

* consider vote in CanBeVoted

* clear mapVotes when new cycle

* Fix min upper range for consultation gui

* some extra log

* more log

* fix mapSeen

* change consultations json

* more changes consultation json

* update strings

* trim long strings

* when consensus changes, reset votes of new cycle with old state

* move vClearAnswers declaration

* check before committing

* mark dirty if not broadcasted

* fix consensus description

* fix consensus description

* light wallet voting

* do not unnecessary remove vote outputs for delegated voting

* ignore empty scripts

* fix parent title prequest gui

* fix wrapping

* clean up code and remove rpc user (navcoin#62)

* update dao light voting tests

* prevent double voting

* fix qa/rpc-tests/dao-light-voting-cfund.py

* remove log

* show warning if vote is not valid

* push missing header update

* mark blockindex in nStatus for dao data structures

* Fix light voting rpc test (navcoin#66)

* fix wrong logic of dual voting

* remove status output

* add light vote range consultation rpc test (navcoin#65)

* bench dao state

* fix logic

* increase height for title

* move extended dao log to category daoextra

* take title out of qchart into qlabel

* checks conditional to deployment being active

* move check to ContextualCheckBlock

* use pindexprev instead of chainactive

* reset testnet

* message start

* admit csv2 address as change

* fix typo

* voting cycle fixes and extra info in jsonifier

* fixes max cycles

* fixes current cycles for state

* fix max cycles for accepted state

* reverse mapState k/v

* fix expired for consensus consultation

* fix tests

* fix qa/rpc-tests/dao-consultation-consensus-cycle-length.py

* tests

* bump version to 5.0.0

* Update 5.0.0 release notes

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>
Co-authored-by: chasingkirkjufell <38635377+chasingkirkjufell@users.noreply.github.com>

* Update the response code for the httpserver response when http work queue depth exceeded (navcoin#681)

* persist votes (navcoin#680)

* prevent duplicated insert (navcoin#679)

* [DAO] Fix for last voting cycle of proposals and payment requests (navcoin#678)

* fix max voting cycles for proposals and preqs

* fix cap cycles

* Updated the default path for stress test script to be relative to the project root (navcoin#683)

* Optimize memory use for blockindex (navcoin#682)

* optimize memory use for blockindex

* use function reference

* add missing votestatecache to getblockchaininfo (navcoin#686)

* Fixed bug with RPC call `proposeanswer` rejecting string values (navcoin#688)

Updated according to alex's suggestion

* Update rpcwallet.cpp (navcoin#689)

* Update blockchain.cpp (navcoin#690)

* Updated price update timer to respect shutdown request (navcoin#696)

* [TEST] Fixed some functional tests that were checking for state == 0 for expired proposals or prequests (navcoin#698)

* Fixed cfund-paymentrequest-state-expired.py

* Fixed cfund-proposal-state-expired.py

* Updated the encrypt wallet logic to not replace master key (navcoin#697)

* [TEST] Fixed qa/rpc-tests/dao-consultation-consensus.py (navcoin#703)

* Fixed qa/rpc-tests/dao-consultation-consensus.py

* Fixed another test, similar issue as previous one

* [GUI] Added new show/dump mnemonic UI, similar to the dumpmnemonic RPC call (navcoin#692)

* Added new show/dump mnemonic UI, similar to the dumpmnemonic RPC call

* Changed label as per suggestion

* Update communityfunddisplaypaymentrequestdetailed.cpp (navcoin#706)

* [GUI][SETUP] Added a password step to setup wizard (navcoin#700)

* [GUI][SETUP] Added a password step to setup wizard

* Updated some wording based on suggestions

* Updated the password message

* Added more progress indicators during wallet start up, also shows via RPC commands (navcoin#702)

* [RPC] Updated the message that RPC command returns after encrypting the wallet (navcoin#708)

* [INDEX] Fix address balance (navcoin#691)

* fix address balance index

* fix spends bool

* Bump to 5.0.1 and release notes (navcoin#711)

* [GUI] Replace PRICE API with coingecko as cryptocompare prices were not as accurate (navcoin#712)

* Fixed qa/rpc-tests/cfunddb-statehash.py (navcoin#715)

* [TEST] 639 CFund Tests (navcoin#640)

* basic framework up

* first two tests added

* tidy up whitespace

* more tests added

* updated readme

* Fixed qa/rpc-tests/cfunddb-statehash.py

* Fixed failing test

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>

* [RPC][GUI] Fixed `netstakeweight` value in `getstakinginfo` rpc call (navcoin#699)

* Fixed `netstakeweight` value in `getstakinginfo` rpc call

* Added the expected daily reward to the GUI

* [DB][BLOCKS] Leveldb upgrade (navcoin#717)

* Prep changes for leveldb subtree

* Squashed 'src/leveldb/' content from commit f8ae182c

git-subtree-dir: src/leveldb
git-subtree-split: f8ae182c1e5176d12e816fb2217ae33a5472fdd7

* Squashed 'src/crc32c/' content from commit 22498868

git-subtree-dir: src/crc32c
git-subtree-split: 224988680f7673cd7c769963d4035cb315aa3388

* getaddressbalance return staked value (navcoin#723)

* [RPC] Correctly label isstakable in the validateaddress help response (navcoin#727)

* Correctly label isstakebale in the validateaddress help response

* fix the label

* One more space

* [GUI] Added config menu button and moved options dialog into it's own page (navcoin#676)

* Added config menu button and moved options dialog into it's own page

* Fixed some issues with the loading/saving of settings from the new config page

* Updated how the save button behaves

* Added alert to confirm that settings were saved

* Updated the config link on sidebar

* Fixed the duplicate shortcut keys

* Added confirmation dialog when leaving options page without saving

* Update navcoingui.cpp

* Update optionsdialog.cpp

* [RPC] Address history index (navcoin#724)

* address history

* add GetAddressHistory() definition

* fixes

* getaddresshistory rpc

* rpc help

* discern delegated from undelegated

* fix for transactions to oneself

* add staking address balance info to getstakinginfo

* formatmoney

* fix spend of tx in same block for light wallet volet

* [GUI] Disabled DAO notification if not staking (navcoin#726)

* Updated links to dao (navcoin#725)

* [GUI] Add voting address to the cold staking wizard (navcoin#728)

* add voting address to cold staking wizard

* Update coldstakingwizard.cpp

* Fix -wallet issue navcoin#729 (navcoin#730)

* [CLEAN] Remove declaration of undefined function (navcoin#734)

* [RPC] getaddresshistory counts balance for whole history even when range (navcoin#732)

* Update httpserver.cpp header (navcoin#740)

httpserver.cpp:73:10: error: 'deque' in namespace 'std' does not name a template type
   73 |     std::deque<std::unique_ptr<WorkItem>> queue;
      |          ^~~~~
httpserver.cpp:32:1: note: 'std::deque' is defined in header '<deque>'; did you forget to '#include <deque>'?

* Update getaddresstoreceive.cpp (navcoin#733)

* [RPC] Fix for getaddresshistory balance of multiple addresses (navcoin#735)

* [RPC] Fix for getaddresshistory balance of multiple addresses

* Update misc.cpp

* fix too late declaration

* Add my address to team list :D (navcoin#744)

* index coldstaking utxos by spending address in spendindex (navcoin#731)

* show 0 value txes in address history (navcoin#746)

* [DAO] Exclude inactive stakers from votings (navcoin#745)

* exclude inactive stakers from votings

* fix versions

* dao.cpp patches

* add rpc and fix exclude count

* show pending for incomplete cycles

* check for preqs

* fix tests

* [RPC][GUI] Adds encryption to the wallet txdata and addressbook (navcoin#709)

* Added wallet encryption for the whole database file

* Updated the bdb.mk to work cross platform

* Fixed a compile issue on mingw

* Updated the way the pin was passed around

* Removed a back call

* Updates

* Fixed a bug that caused encrypting the wallet keys to decrypt the main database file

* Implemented the new encrypttxdata rpc call

* Fixed a bug that caused wallet to crash when using wrong password for db encryption

* Removed unused string

* Added checking for older wallet formats

* Removed an unused method

* Added GUI support for changing txdata encryption

* Updated the message when encrypting wallet and txdata

* Removed a duplicate entry for "DEFAULT_WALLET_DAT"

* Fixed the intermitent crash with clicking the ok button

* Updated the text for the warning

* Updated warning messages for wallet encryption

* Updated to require -pin value when running as daemon

* [DAO] Do not transition to EXPIRED if previous state is ACCEPTED or REJECTED (navcoin#747)

* [DAO] Do not transition to EXPIRED if previous state is ACCEPTED or REJECTED

* Update dao.cpp

* Update flags.h

* Update dao.cpp

* Update flags.h

* fix managing new state

* fix test

* fix test

* fix tests

* [WIP] blsCT: Boneh–Lynn–Shacham Confidential Transactions (navcoin#743)

* Accounting blsCT public->private

* move random to libsodium

* fix winshutdown

* BLSCT fee accounting

* sodium_libs

* sodium_cflags

* flag for libbls

* use sodium_libs

* no more verbose

* add to other makefiles

* Fix check of previous outputs

* Check for vector size overflow

* Revert "move random to libsodium"

This reverts commit 0f6b6bb.

* Restore DARWIN flags

* Revert "Restore DARWIN flags"

This reverts commit c15e5cb.

* Fix DARWIN path

* Use darwin16

* Revert "fix winshutdown"

This reverts commit 494593b.

* Fix public to private

* Accounting

* check for uninit tx

* Save mixing choice and add combo box in wallet options

* xNAV

* fix private coincontrol

* are inptus available

* fix branch

* xN address prefix

* fix

* fix selecting coins from mempool

* negative private pool checks

* GUI options and RPC commands to set mixing fees

* Update build-unix.md

* use --enable-endomorphism for secp2561k

* reset testnet

* issue 11

* issue 13

* change rpc help message

* issue 15

* fix issues 12 & 14

* mix timeout option in gui

* fix broadcast session

* aggregation thread

* getbalance private rpc

* patches

* exclude inactive stakers from votings

* fix versions

* dao.cpp patches

* fix tor sock port

* fix mainnet versionbit deployment

* SWAP and other GUI changes

* encrypt after blsct

* testnet by default

* fix testnet versionbit

* use CBasicKeyStore

* fix key name for erase

* listprivateaddresses rpc command

* fix default testnet

* fix default testnet bug

* fix typo

* fix typo

* fix too long message crash

* fix swap 0 nav

* no flat swap button

* fix coincontrol tree mode blsct

* use full amount private checkbox fix

* tor control log protocol

* more tor log

* split tor params

* remove log

* private address book

* include address in listprivateunspent

* ConnectSocketDirectly

* missing header

* update icons

* add missing new line

* show alert fi too long encrypted msg

* remove tor

* Squashed 'src/tor/' content from commit adf81fb757

git-subtree-dir: src/tor
git-subtree-split: adf81fb757853b0185873e251b8620d05f15cee1

* ignore ct outputs in availablecoins

* missing rust dep

* restore netbase.cpp

* dumpviewprivkey rpc

* check isvalid for blsct secret key

* scanviewkey rpc

* fix available coins

* fix swap units

* fix

* fix supply calc fee

* split long address

* show encrypted message for outgoing txs

* fix fee private to private

* remove log

* allow staking to xnav

* reject proposals to xnav address

* fix for crash when empty datadir and -reindex

* cache ismine for private

* do not collect candidates if not synced

* fix movedtobls

* change log string

* remove double declaration

* fix slow getstakinginfo

* mixing reward filter

* add time to scanviewkey

* upgrade tor

* missing rust

* remove tor

* Squashed 'src/tor/' content from commit 75fc33f33

git-subtree-dir: src/tor
git-subtree-split: 75fc33f3372b1098d46452b320ef5548d02053a9

* remove libtor-llharden

* mix count for coincontrol

* show state error

* shuffle inputs and outputs after combining

* shuffle vector instead of set

* store nonces and tx history

* do not use netbase for connection to tor

* remove code from reverted commit

* ephemeral server log

* remove log

* fix outputnonce records

* show xnav unit in popup

* Squashed 'src/bls/' changes from 064c9109..632f3aa1

632f3aa1 src: Drop CheckRelicErrorsInvalidArgument, use CheckRelicErrors instead
35b878b2 src: Throw proper exceptions instead of std::string
6359c47f flake
0316d595 version info fix
4bed72b0 Default to dynamically linking libsodium, static link on wheels (navcoin#145)
ee71adc0 delete assignment operators on PrivateKey
8ac7fca5 fix resource management in PrivateKey class. add assignment operators to properly copy value (instead of pointer) or move (instead of copying pointer, resulting in double-free)
597be36c no more free NULLs
c85c395a call free on relic objects. doesn't seem to affect libsodium but probably should be done
e20d2bfa yal
af78644b add missing bn_free() calls when destructing the BNWrapper's value
295f1f24 Publish to PyPI first in case test PyPI is down
891a75ed fix self-assignment on BNWrapper, as well as move construction and move assignment. Bumps C++ version to 17
2ba6435e get rid of floating point
ed900b11 remove cout
bcebe157 copy and assignment
55b3c8f7 hmm
8a42b0bf leak fix and debug info
01a1a7d0 Try relic fix
68e2b6bf Add fast pub aggregation
1139ecc6 regress relic
7fafd92c Remove curl install and confirm manylinux2010 image
72056533 Is curl missing?
5ea3a784 Back to 1.6.1
65e45b4d Back to 1.5.5
16de0c41 Track ubuntu build failure
4c01f016 Move to cibuildwheel 1.6.1
553f515f python needs SETUPTOOLS_USE_DISTUTILS=stdlib
465ee2c0 bump cancel-workflow-action@0.5.0
b278363b Update instructions to link library
d1e8f892 Run python impl tests, and copyright year
b75dde63 Add Pop test vector and fix lgtm
5fddc5aa Aggregate any number of signatures, finish python implementation
bf4c680a Start adding test vectors to python-impl
27cead53 Finish refactor
396a623f Prevent construction of elements without membership check, and python-impl tests
597c2202 Remove `git submodules init`
ce2f4417 Ensure membership check is always called, and add map_to_g1 to python-impl
a9038430 Fix tests
a9dddf02 Tweaks, and start rewrite of python implementation
7f0bdc94 extern C real relic repo include
5e8d846d Fix lgtm libsodium build failure
552ac73b Pull relic from relic/master
629f2164 Add cassert for ubuntu
4b946e1a Fix lint issues
5846dd75 New derive child API
561dc7aa Add const where necessary
9d98b5eb Re-enable benchmarks
4695b42f Update README
b94e545c Add more tests
a34347ce Start translation of tests
3e46c713 HD unhardened keys, and more tests
28e73103 Start refactor and add unhardened keys

git-subtree-dir: src/bls
git-subtree-split: 632f3aa1672100f2693244654712a78086900a03

* fix lock

* for last blssigs lib

* update for last chia lib

* point to prev commit relic

* back to relic master

* prev commit relic

* check for IsSelectableSocket

* const in comparator

* CIBUILDWHEEL

* candidate transactions write order and log

* static sodium

* static sodium

* increase candidate thread freq

* back to cxx11

* close socket if non selectable

* fix staking when output is mixed private and public

* update icons

* ignore sigpipe

* correct label of stake unit in overview page

* sig_ign

* revert last commits

* Extend encrypted message length to 54 bytes

* restart testnet

* check if socket is selectable

* use same nonce for min amount proof

* update currency icons

* remove check for isselectable

* add connection manager to ephemeral server

* set ARCH to ARM for BLS

* remove arch arm

* fix dialog unit

* fix missing bool

* fix accounting

* fix tab order

* fix copy label bug

* stop tor controller

* fix check

* arch arm with timer hreal

* disconnect tor control

* update description of privatesendmixtoaddress and privatesendtoaddress

* shared pointer for tcpconn

* disconnect after timeout

* parse setaggregationfee rpc argument

* use connmngr

* reset testnet, substract instead of xor

* reset testnet

* fix eph server

* return true startaggregationsession

* fix moved to public

* fix sendmoney

* libcap no go

* fix missing balance when output locked

* fix rpc

* fix tab order

* fix accounting public to public

* check if subaddress key is present

* remove breakpoint

* fix GetUint64

* fix cast getint64

* changes in send tab

* preference for spending coins with more mixes

* fix accounting public->private

* added log

* tooltips

* add tooltip

* fix crash when selecting coins

* change labels to reflect unlock wallet for mixing

* tx with ctout flag does not need a ct output

* missing __func__

* broadcast candidates in multithread

* new mixing protocol without tor

* keep 3 last keys

* scalar_T

* int cast

* int cast

* edit Makefile.am

* use thread for candidate verification

* remove log

* use set instead of vector to prevent duplicates

* revert net* changes

* missing coins in coincontrol

* fix accounting

* remove mixincount setting from options

* use vgammas instead of ismine for efficiency

* more optimization

* wrong cmp sign

* criticalsections mempool

* blsct in mainnet

* fix locks

* swap dialog mainnet

* no votestep if early block

* fix topup after unlocking without blsct keys

* mempool criticalsections

* fix

* fix

* remove assert

* dandelion embargo locks

* rmeove from options gui

* fix start time

* allow more than 1 input for candidates

* ignore exclude if p2cs2

* ignore exclude if p2cs2

* fix mistakenly removed line

* cs2 flag in pindex

* optimize scanviewkey

* default tor false

* 6.0 release notes

* scrip cs/cs2 checks

* check script size

* fix gen blsct keys encrypted wallet gui

* add softfork descriptions

* blsct script check

* check duplicated bls output

* update protocol ugprade voting start dates

* do not allow blsct in coinbase

* release candidate

* do not start blsct threads if blsct is disabled

Co-authored-by: alex v <alex@encrypt-s.com>

* fix mainnet when no test release (navcoin#749)

* Fixed a crash caused by system tray icon not being available on certain linux distros (navcoin#750)

* Added tilde support to the datadir param for navcoin (navcoin#751)

* Fixed the missing transaction size in send coins dialog (navcoin#752)

* update warning message (navcoin#753)

* update copyright years (navcoin#754)

* fix navcoin#755

* Fix for a wallet crash related to encryption detection (navcoin#761)

* final version 6.0 (navcoin#758)

* Add codesign to gitian (navcoin#757)

* add codesign to gitian

* grep does not use color

* update suite to bionic

* grep without color

* update sig-apply

* output to signature-osx.tar.gz

* update docs

* Update release notes doc 6.0 (navcoin#760)

* update doc 6.0

* Update release-notes-6.0.md

* Update release-notes-6.0.md

* Changed 'NavCoin' to 'Navcoin' (navcoin#763)

* Changed 'NavCoin' to 'Navcoin'

* Fixed some references in docs and contrib

* Removes embedded tor (navcoin#765)

* remove embedded tor

* fix makefile.am

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>

* Add codesign for Windows (navcoin#762)

* update doc 6.0

* windows codesign

* Update gitian-win.yml

* fix targz name

* fixes navcoin#767 (navcoin#772)

* add new strings for translations (navcoin#771)

* [FIX] Transaction amount in popup window incorrect (navcoin#773)

* fix navcoin#768

* fix

* [FIX] Wallet false positive on txdata encryption (navcoin#774)

* Fix for wallet false positive on txdata encryption

* This should fix the issue on windows, seems that ifstream is not in binary mode by default for the windows build

* Apply -blsctmix to threads and gui/rpc send (navcoin#778)

* apply -blsctmix to threads and gui send

* fix

* update icons

* Optimise initial sync speed (navcoin#766)

* optimize initial sync speed

* update checkpoints mainnet

* remove start timestamp

* optimizations dao

* optimise dao disk r/w

* fix kernelhashtarget

* debug daostatehash

* fix sync past 2750000

* do not build i686 windows gitian (navcoin#782)

* fix proposal filter accepted expired (navcoin#777)

* bump version 6.0.1

* Updated gitian descriptors as well to 6.0.1

* Remove i686 commands (navcoin#784)

* Tx structure memory optimisation (navcoin#785)

* bprp optimisation

* test serialization

* only check blsct if tx is blsct

* add cleanse.cpp to libnavcoin_consensus

* link ssl

* do not use openssl for mem clean

* add extra data in some rpcs (navcoin#776)

* only run xnav threads if privatebalance > 0 (navcoin#786)

* This removed linux 32bit from gitian, and removes `dirty` from gitian version name builds (navcoin#787)

* Remove linux 32bit, remove GZIP warnings, remove the need for SUDO in gitian windows build, removed 'dirty' from gitian build versions

* Removed 32bit windows and linux builds on travis ci

* Added kitware apt repo for newer cmake version

* Removed wine from travis setup

* Add the missing headers that windows builds need

* Release notes 6.0.1 (navcoin#788)

* Remove linux 32bit, remove GZIP warnings, remove the need for SUDO in gitian windows build, removed 'dirty' from gitian build versions

* Removed 32bit windows and linux builds on travis ci

* Added kitware apt repo for newer cmake version

* Removed wine from travis setup

* Add the missing headers that windows builds need

* release notes 6.0.1

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>

* Removed missed referrence to TOR_LIBS (navcoin#789)

* Fixed a reference to BLS (navcoin#790)

* Fix for osx build running out of log space travis (navcoin#792)

* Added a new run with dots script to lessen the output of depends build on travis

* Added verbose build if depends fails to build

* Removed the run with dots call from the verbose build of failed depends build

* Updated the run with dots script

* Removed unnecesary fold on travis

* Updated the deploy step to build libbls.a as it was failing on deploy step for osx travis build

* Added back the recursive install and check commands

* Removed a tor reference in the clean-local command

* xNAV transaction mempool policy (navcoin#794)

* op_1 transactions are standard

* second commit

* bump version 6.0.2 (navcoin#795)

* release notes 6.0.2 (navcoin#796)

* check inputs standard xnav (navcoin#797)

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>

* Prevent adding duplicated inputs from candidates (navcoin#798)

* restart testnet (navcoin#799)

* Updated how NTP sync at wallet start works (navcoin#791)

* Update aggregationsession.cpp (navcoin#802)

* Update aggregationsession.cpp

* Update aggregationsession.cpp

* Added a missing style for QWizard background color (navcoin#804)

* GUI lock up optimization (navcoin#801)

* Optimized how the GUI stake report is generated

* Updated some wallet start up messages

* Removed some unused lines of code:

* Updated some default text for values

* Update staking status every 5 seconds

* Updated the polling rate to be 500ms instead of 250ms

* Updated transaction filter logic based on btc upstream changes

* Optimized code from upstream BTC

* Optimized the stake report on gui to not calculate the daily for 1 month

* OCD

* Fixed the non range date filters for tx history

* Changed the logic for daopage loading, and increased sleep time in blsCT threads

* added -blsctsleepagg and -blsctsleepver params

* Update random.cpp

* Fixed with-pic flag for libsodium build (navcoin#813)

* Fix navcoin#807 (navcoin#816)

* Fixed: Syntax Error (navcoin#820)

Line 483: Semicolon missing

* check for null pointer in BuildMixCounters (navcoin#819)

* show encrypted msg in transaction details (navcoin#818)

* fix navcoin#803 (navcoin#817)

* Update wallet with new logos (navcoin#821)

* update new logos

* white bg

* Fix memory exhaustion from candidates storage (navcoin#823)

* Fix memory exhaustion from candidates

* Update aggregationsession.cpp

* fix navcoin#807 (navcoin#809)

* prevent mixed use of nav and recently swapped (navcoin#806)

* prevent duplicate remove vote (navcoin#805)

* Prevent excessive remove votes (navcoin#827)

* prevent excessive remove votes

* remove log

* Recognise multisig coldstaking output as stakable (navcoin#826)

* Optimises multiexp operation (navcoin#775)

* multiexp exponentiation

* move init

* add mcl

* fix mcl Makefile

* use path

* mcl include

* include mcl in flags

* include mcl when dist

* include mcl in subdirs

* fix gitian

* mcl makefile

* Added some new ignore entries

* Moved some makefile commands from configure step into makefile

* Ignore src/mcl/obj dir

* Revert "Ignore src/mcl/obj dir"

This reverts commit 7c7513d.

* Revert "Revert "Ignore src/mcl/obj dir""

This reverts commit 186fbd6.

* Added the dir for mcl/obj

* update mcl from https://github.com/herumi/mcl

* make verbose

* Revert "make verbose"

This reverts commit 64efbdd.

* build mcl in configure

* remove echo

* Switched to using cmake to build mcl

* Added gitkeep files

* Updated gitian to use focal instead of bionic for builds

* Updated travis to use 20.04 ubuntu

* Disabled interactive CLI when installing apt packages

* Missed OSX gitian when changing bionic to focal

* Removed 32bit linux gitian build support

* Removed sudo commands from gitian config on windows build

* Updated the patch for bls relic code

* Updated distdir to include working DIR changes via a temp stash

* Updated GLIBC requirement to be 2.29

* Removed  -march=native as it was causing a compile issue on arm builds via gitian

* Fixed deprecation notice with gzip variable

* Removed the relic patch so gitian builds will no longer be 'DIRTY'

* Revert "Updated distdir to include working DIR changes via a temp stash"

This reverts commit 59740c9.

* Revert "Removed sudo commands from gitian config on windows build"

This reverts commit 77cc2f9.

* Updated GMP to 6.2.1

* Revert "Updated travis to use 20.04 ubuntu"

This reverts commit c50442d.

* Revert "Missed OSX gitian when changing bionic to focal"

This reverts commit 2e587e6.

* Revert "Updated gitian to use focal instead of bionic for builds"

This reverts commit 13a3e2c.

* Removed torlibs that was missed

* Copies the needed headers into prefix location instead of the system location so no more sudo

* Small fix

* remove unnecessary w variable

* Fixed linking to mcl libs

* Updated mcl to not compile with ASM for windows builds

* Disabled ASM for all builds

* use c++ interface

* fixes c++ interface

* fixes interface

* Updated fp_* methods to have prefix of mcl_fp_*

* Disabled XBLYAT

* Revert "Updated GLIBC requirement to be 2.29"

This reverts commit 8ff1700.

* set serialization for both fr and fp

* bench

* Removed non static version of libmcl which was causing issue with osx build

* Disabled runbench and runtest for bls lib as it was causing an error on windows build on travis

* Updated to build linux with ASM support

* Revert "Updated to build linux with ASM support"

This reverts commit 1da7b19.

Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>

* fixes navcoin#814

* remove bench log (navcoin#835)

* fix coin control issue navcoin#822 (navcoin#832)

* fixes navcoin#748 (navcoin#834)

* Only broadcast xnav when received version (navcoin#829)

* only broadcast xnav when received version

* do not ban for too early xnav

* Use inventory for aggregation sessions and encrypted candidates (navcoin#836)

* first changes before merge upstream master

* second set of changes

* remove log

* optimize privatebalance

* keep cache for 15min

* fix private balance

* private balance cache flag reset when spent

* use AvailablePrivateCreditCached

* always create change output for xnav

* remove duplicated verification

* remove more duplicated code

* optimizations

* bump version 6.1.0

* Release notes v6.1.0

* protocol version 80021 (navcoin#837)

* add missing lock (navcoin#841)

* fees.cpp

* txmempool.h

* txmempool.h

* rest.cpp

* policyestimator_tests.cpp

Co-authored-by: Craig <craig.b.macgregor@gmail.com>
Co-authored-by: alex v <alex@encrypt-s.com>
Co-authored-by: Barry Deeney <mxaddict@codedmaster.com>
Co-authored-by: Dan Tudor <dtudor01@gmaiol.com>
Co-authored-by: chasingkirkjufell <38635377+chasingkirkjufell@users.noreply.github.com>
Co-authored-by: chasingkirkjufell <you@example.com>
Co-authored-by: Kolby Moroz Liebl <31669092+mrmetech@users.noreply.github.com>
Co-authored-by: Garret Laxton <16290508+garretlaxton@users.noreply.github.com>
Co-authored-by: 0x2830 <60476194+0x2830@users.noreply.github.com>
Co-authored-by: Ari <15141940+arirudd@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment