Releases: gridcoin-community/Gridcoin-Research
5.2.0.0-mandatory
[5.2.0.0] 2021-03-01, mandatory, "Hilda"
The core team is proud to present the Hilda milestone release, which is a mandatory upgrade.
The mandatory aspect of the upgrade here is the complete fix for the "newbie bug" that was
not completely fixed in Gladys. This mandatory provides a permanent fix for the bug, and
also will pay newbie's back accrual when they stake post-fix to the point of their original
beacon confirmation superblock, as long as they have not already staked with their CPID. (For
reference, the "newbie bug" is where newly confirmed beacons would have their accruals
reset to zero at each superblock instead of continuing like they are supposed to.)
The transition height ("hard fork") is at 2197000, which will be approximately Sunday, March 14.
All nodes MUST be upgraded by then or face disconnection from the network. There is a disconnection
grace period of 2000 blocks higher than the hard fork, or 2199000. Any node not on 5.2.0.0 at that
time will automatically be disconnected.
In addition to the mandatory inducing changes, this release contains LOTS of goodies that should
improve the experience with the wallet. Some highlights:
-
A Port of the data directory dialog box from Bitcoin Core for a brand new installation, allowing
a different directory than the default to be specified. This will be memorized by the wallet as
an alternative to providing a -datadir value on the command line. This should be especially useful
for MacOS folks. -
Another goodie for the MacOS folks is the implementation of the AppNap manager ported from Bitcoin Core,
which suspends AppNap when the wallet is staking to avoid lost stake opportunities. -
Significant optimizations were done to memory usage that reduce memory requirements by 30% or more.
This should really help using the wallet on SBCs and also reduce hardware requirements on other
platforms. It also results in another modest improvement in sync speed, although we are getting
to the point of diminishing returns there. Mainnet can sync from zero in less than 2 hours on a
fast machine. -
Several bottlenecks were removed in the GUI code that caused the wallet to bog down very badly
if the wallet has a lot of transactions or a lot of UTXOs. This drastically improves the GUI experience,
especially if resyncing an existing wallet from zero with the blockchain, or on a slower SBC. -
The GUI now remembers the size and position of the wallet window for both mainnet and testnet, and some
font work was done to improve scaling on various displays. (The font and scaling work is still a
work in progress, but it is much better than before.) -
A big bug was fixed in CreateTransaction that was causing insufficent fee transaction rejections
and driving everyone crazy! This bug has actually been in there forever and is finally slayed! -
Related to #3, but also generally useful for folks interested in monitoring their staking
efficiency are new measures in the getmininginfo RPC: staking_loop_efficiency measures the percent
of elapsed time that is covered by an active staking loop, and staking_efficiency measures the overall
staking efficiency, which takes into account staking_loop_efficiency and the UTXO's that are on
cooldown. -
The beacon registry in the wallet, which holds in memory the beacons for the network, has received
enhancements that solve some thorny problems related to contract lookback and beacon renewals, and
does this with high performance by using leveldb for specialized storage of the beacon structures. -
Consolidateunspent has been enhanced. The function now allows the consolidation of ALL addresses
to the specified address, and also allows the sweeping of associated change addresses. -
The wallet no longer depends on external IP resolvers, but instead uses the Bitcoin Core style of
IP resolution. This also means the wallet will correctly update its IP if a notebook is put to sleep
on one network and then awoken on another with a different IP. Before the wallet would have to be restarted
to accept incoming connections. Note that UPNP can still be an issue though. -
Other bugfixes and enhancements too.
This was a pretty hefty release. We hope you enjoy it! :)
[5.2.0.0] 2021-03-01, mandatory, "Hilda"
Added
- gui: Add RAC column to wizard summary page projects table #1951 (@cyrossignol)
- rpc: clean up the superblocks function and add magnitude to getmininginfo #1966 (@jamescowens)
- rpc: Add transaction size to RPC output #1971 (@cyrossignol)
- voting: Add user-facing support for poll response types #1976 (@cyrossignol)
- gui: Port Bitcoin Intro class (implement the ability to choose a data directory via the GUI) #1978 (@jamescowens)
- gui: Port Bitcoin MacOS app nap manager #1991 (@jamescowens)
- mining, rpc: Implement staking efficiency measure and improve SelectCoinsForStaking and CreateCoinStake #1992 (@jamescowens)
- accrual, rpc: Implement auditsnapshotaccruals #2001 (@jamescowens)
- docs: add doxygen support #2000 (@div72)
- beacon: Specialized beacon storage in leveldb #2009 (@jamescowens)
- rpc: Add a call to dump contracts in binary form #2011 (@div72)
- rpc: Add boolean option to report active beacons only in beaconreport #2013 (@jamescowens)
- consensus: Set Hilda mainnet hardfork height to 2197000 #2022 (@jamescowens)
Changed
- refactor: [Memory optimization] Block index duplicate PoS state #1945 (@cyrossignol)
- refactor: [Memory optimization] Block index superblock and contract flags #1950 (@cyrossignol)
- refactor: [Memory optimization] Remove stake modifier checksums #1954 (@cyrossignol)
- refactor: [Memory optimization] Block index allocation overhead #1957 (@cyrossignol)
- refactor: [Memory optimization] Remove block index subsidy fields #1960 (@cyrossignol)
- refactor: [Memory optimization] Separate chain trust from the block index #1961 (@cyrossignol)
- refactor: [Memory optimization] Eliminate padding between block index fields #1962 (@cyrossignol)
- beacon, gui: Add check for presence of beacon private key to updateBeacon() #1968 (@jamescowens)
- util: Enhance ETTS calculation #1973 (@jamescowens)
- refactor: Use new clamp in util.h #1975 (@jamescowens)
- gui: Redo global status for overview #1983 (@jamescowens)
- util: Improvements to MilliTimer class and use in the miner and init #1987 (@jamescowens)
- rpc: Move rpc files to directory #1995 (@Pythonix)
- rpc: Enhance consolidateunspent and fix fee calculation #1994 (@jamescowens)
- contract: Double the lookback scope of contract replay #1998 (@jamescowens)
- net: Don't rely on external IP resolvers #2002 (@Tetrix42)
- beacon: Change beacon map to pointers #2008 (@jamescowens)
- gui: Update bitcoin_sv.ts #2014 (@sweede-se)
- util: Update snapshot URLs and add accrual directory #2019 (@jamescowens)
- beacon: Tweak BeaconRegistry::Revert #2020 (@jamescowens)
- rpc, qt: bump fees @2023 (@div72)
Removed
- researcher: Remove automatic legacy beacon key import #1963 (@cyrossignol)
- util: Revert "Close LevelDB after loading the block index" #1969 (@cyrossignol)
- ci: Fix python symlink issue & remove travis #1990 (@div72)
- ci: remove python workaround #2005 (@div72)
Fixed
- gui: fix mandatory/leisure detection of upgrade check #1959 (@Pythonix)
- voting: Fix title in "gettransaction" RPC for legacy poll contracts @1970 (@cyrossignol)
- gui: Fix missing menu items on macOS #1972 (@scribblemaniac)
- rpc: Fix answer offset in "votedetails" #1974 (@cyrossignol)
- voting: Implement missing try-catch in VotingVoteDialog::vote #1980 (@jamescowens)
- scraper: Add check for minimum housekeeping complete in scraper #1977 (@jamescowens)
- voting: Fix nonsense vote weights for legacy polls #1988 (@cyrossignol)
- voting: Fix incorrect field returned in ResolveMoneySupplyForPoll() #1989 (@cyrossignol)
- consensus, accrual: Fix newbie accrual #2004 (@jamescowens)
- log: grammar correction #2016 (@nathanielcwm)
- wallet: Correct nMinFee fee calculation in CreateTransaction #2021 (@jamescowens)
- rpc, miner: Correct GetLastStake #2026 (@jamescowens)
- wallet: Fix bug in CreateTransaction causing insufficient fees #2029 (@jamescowens)
5.1.0.0-mandatory
[5.1.0.0] 2020-11-01, mandatory, "Gladys"
The core team is proud to present the Gladys milestone release, which is a
mandatory upgrade.
This release should really be considered a continuation of the un-milestoned
5.0.1.0 and 5.0.2.0 leisure releases.
The mandatory aspect of the upgrade here is the repair of the "newbie" CPID bug, which
was causing problems for new CPID holders to get paid their rewards. This is fixed
in #1944 and #1947 below.
The transition height ("hard fork") for this mandatory is block 2104000, which
is approximately one month from now. This release may, and should be installed
by everyone as soon as possible because it fixes some other bugs that can cause
problems with individual nodes. In particular, without #1941, a node could reject
scraper messages and then fail to achieve convergence, which could lead to a stall
or forking. Another corner-case that leads to forking is also resolved by #1934.
Bottom-line.... upgrade!
Enjoy!
Added
- rpc: Add out-of-sync status to "getinfo" and "getblockchaininfo" #1925 (@cyrossignol)
- gui: add autocomplete to rpc console #1927 (@Pythonix)
- consensus: Add checkpoint post block v11 transition #1919 (@cyrossignol)
- researcher: Add -forcecpid configuration option #1935 (@cyrossignol)
- gui: Adds detection if version is below last mandatory #1939 (@jamescowens)
- contract: Reimplement legacy administrative contract validation #1943 (@cyrossignol)
- voting: Add poll choices to "gettransaction" RPC contract output #1948 (@cyrossignol)
Changed
- doc: Fix link in build-openbsd.md #1924 (@Pythonix)
- voting: Decrease poll duration to 90 days #1936 (@cyrossignol)
- refactor: Revert init order to fix rejected net messages #1941 (@cyrossignol)
- refactor: port amount.h #1937 (@div72)
- refactor: Normalize boost::filesystem to fs namespace #1942 (@cyrossignol)
- accrual: Apply accrual for new CPIDs from existing snapshots #1944 (@cyrossignol)
- accrual: Reset research account when disconnecting first block #1947 (@cyrossignol)
Removed
- refactor: Clean up transitional code for block version 11 #1933 (@cyrossignol)
Fixed
- Modify depends packages for openSUSE and other Redhat like distributions and fix mingw bdb53 compile #1932 (@jamescowens)
- contract: Fix ability to reorganize contracts #1934 (@cyrossignol)
- accrual: Fix snapshot accrual for new CPIDs #1931 (@cyrossignol)
- rpc: Clean up getblockstats #1938 (@jamescowens)
- scraper, rpc: Correct missing mScraperStats initialization in ConvergedScraperStats (@jamescowens)
5.0.2.0-Leisure
[5.0.2.0] 2020-10-08, leisure
Added
- trivial: Add and update copyright headers in Gridcoin files #1897 (@cyrossignol)
- refactor: port chainparams #1878 (@div72)
- gui: Update default font to Inter-Regular and console font to Inconsolata (@opsinphark, @jamescowens)
- gui: Add "review beacon verification" button to wizard summary page #1912 (@cyrossignol)
- rpc, wallet: Implement liststakes #1909 (@jamescowens)
- rpc: Add "getlaststake" RPC function #1913 (@cyrossignol)
- gui: Install bold variant of Inter font #1914 (@cyrossignol)
Changed
- refactor: Consolidate Gridcoin-specific code #1894 (@cyrossignol)
- script: Setup improvements #1895 (@nathanielcwm)
- gui: Diagnostics refresh #1899 (@jamescowens)
- superblock: Optimize superblock size calculation #1906 (@cyrossignol)
- gui: Adjust stylesheets and scale icons to improve HiDPI side toolbar display #1911 (@jamescowens)
- doc: Tell user to disable win32 application support in WSL (for building) #1917 (@nathanielcwm)
- rpc: Revise and expand help for beaconconvergence rpc call #1918 (@jamescowens)
- scheduler: Increase default update check interval to 5 days #1920 (@cyrossignol)
- gui: Prevent multiple dialogs from being open at the same time #1922 (@scribblemaniac)
Removed
- refactor: Clean up remaining legacy timer code #1892 (@cyrossignol)
Fixed
- build: Add --without-brotli option to curl.mk #1902 (@G_UK)
- test: Remove fs_tests... file after the fs test #1903 (@div72)
- util, gui: Fix shutdown segfault and repair broken overview page staking status #1901 (@jamescowens)
- scraper: Fix order of destruction for global scraper objects #1904 (@cyrossignol)
- scraper: Fix global object destruction order for MacOS #1905 (@cyrossignol)
- util: Decouple out-of-sync state from block acceptance #1921 (@cyrossignol)
5.0.1.0-Leisure
[5.0.1.0] 2020-09-20, leisure
Added
- wallet, rpc: Implement backup file management functionality #1735 (@jamescowens)
- build: Add support for building with musl and Alpine Linux #1866 (@cyrossignol)
- rpc: Display local IP addresses in "getnetworkinfo" output #1884 (@cyrossignol)
Changed
- refactor: Implement std::atomic_bool OutOfSyncByAge #1877 (@jamescowens)
- net: Optimize locator construction for "getblocks" messages #1880 (@cyrossignol)
- refactor: Combine GetOrphanRoot() and WantedByOrphan() functions #1883 (@cyrossignol)
- refactor: Convert beacon and backup timers to scheduled jobs #1885 (@cyrossignol, @jamescowens)
- refactor: Rename "neural network" project-wide #1886 (@cyrossignol)
Fixed
- collection of post Fern hotfixes (@jamescowens):
- Change QDateTime::toSecsSinceEpoch() to QDateTime::toMSecsSinceEpoch()
- Change QDateTime::fromSecsSinceEpoch() to QDateTime::fromMSecsSinceEpoch()
- Ensure boost placeholders are compatible
- Fix subtle bug in GetEstimatedStakingFrequency
- test, ci: xenial support #1867 (@div72)
- lib: Fix compatibility with Boost 1.74 #1869 (@theMarix)
- test: Fix tests for _GLIBCXX_ASSERTIONS #1870 (@cyrossignol)
- util: fix Windows API for default data directory with wide characters #1871 (@cyrossignol)
- gui: Fix OP_RETURN filter to avoid hiding transactions with messages #1873 (@cyrossignol)
- net: Fix stalled blockchain progression #1876 (@cyrossignol)
- superblock: Fix regression for superblock builder optimization #1881 (@cyrossignol)
- util: Fix scheduler crash after waking from sleep #1888 (@cyrossignol)
5.0.0.0-Mandatory
[5.0.0.0] 2020-09-03, mandatory, "Fern"
Added
- Backport newer uint256 types from Bitcoin #1570 (@cyrossignol)
- Implement project level rain for rainbymagnitude #1580 (@jamescowens)
- Upgrade utilities (Update checker and snapshot downloader/application) #1576 (@iFoggz)
- Provide fees collected in the block by the miner #1601 (@iFoggz)
- Add support for generating legacy superblocks from scraper stats #1603 (@cyrossignol)
- Port of the Bitcoin Logger to Gridcoin #1600 (@jamescowens)
- Implement zapwallettxes #1605 (@jamescowens)
- Implements a global event filter to suppress help question mark #1609 (@jamescowens)
- Add next target difficulty to RPC output #1615 (@cyrossignol)
- Add caching for block hashes to CBlock #1624 (@cyrossignol)
- Make toolbars and tray icon red for testnet #1637 (@jamescowens)
- Add an rpc call convergencereport #1643 (@jamescowens)
- Implement newline filter on config file read in #1645 (@jamescowens)
- Implement beacon status icon/button #1646 (@jamescowens)
- Add gridcointestnet.png #1649 (@caraka)
- Add precision to support magnitudes less than 1 #1651 (@cyrossignol)
- Replace research accrual calculations with superblock snapshots #1657 (@cyrossignol)
- Publish example gridcoinresearch.conf as a md document to the doc directory #1662 (@jamescowens)
- Add options checkbox to disable transaction notifications #1666 (@jamescowens)
- Add support for self-service beacon deletion #1695 (@cyrossignol)
- Add support for type-specific contract fee amounts #1698 (@cyrossignol)
- Add verifiedbeaconreport and pendingbeaconreport #1696 (@jamescowens)
- Add preliminary testing option for block v11 height on testnet #1706 (@cyrossignol)
- Add verified beacons manifest part to superblock validator #1711 (@cyrossignol)
- Implement beacon, vote, and superblock display categories/icons in UI transaction model #1717 (@jamescowens)
- neuralnet: Add integrity checking to researcher accrual snapshot registry #1727 (@jamescowens)
- Add workaround for scrypt assembly on macOS #1740 (@cyrossignol)
- gui: Build onboarding/beacon wizard #1739 (@cyrossignol)
- doc: Add CONTRIBUTING.md from bitcoin #1723 (@div72)
- rpc: Implement inspectaccrualsnapshot and parseaccrualsnapshotfile #1744 (@jamescowens)
- scraper: Add disk based state backing for verified beacon list in scraper #1751 (@jamescowens)
- Add ability to recover beacon in block version 11+ #1768 (@cyrossignol)
- refactor: Add transaction context to contract handlers #1777 (@cyrossignol)
- gui: Add context for when BOINC is attached to a pool #1775 (@cyrossignol)
- doc: Clarify what to do if PR in multiple categories (for CONTRIBUTING.md) #1798 (@RoboticMind)
- qt: Add option to choose not to start the wallet minimized #1804 (@jamescowens)
- superblock: Add check for OutOfSyncByAge to SuperblockValidator::Validate #1806 (@jamescowens)
- contract: Standardize contract validation and add block context #1808 (@cyrossignol)
- add seed.gridcoin.pl to default config #1812 (@wilkart)
- gui: Implement sidestake send display #1813 (@jamescowens)
- gui: Add pool/investor pages to researcher wizard #1819 (@cyrossignol)
- ci: Port lint scripts from Bitcoin #1823 (@div72)
- doc: Create basic readme in contrib #1826 (@RoboticMind)
- gui: Implement TransactionRecord::Message #1829 (@jamescowens)
- rpc: Add private_key_available to beaconstatus #1833 (@a123b)
- gui: Validate email address in researcher wizard #1840 (@a123b)
- rpc: Add "getrawwallettransaction" RPC function #1842 (@cyrossignol)
- consensus: Set block version 11 threshold height for mainnet #1862 (@cyrossignol)
Changed
- Upgrade LevelDB from v1.17 to v1.20 #1562 (@cyrossignol)
- Re-enable scrypt optimizations #1450 (@denravonska)
- Derive CScript from prevector type (optimization) #1554 (@cyrossignol)
- Disable quorum for grandfathered blocks to speed up sync #1568 (@cyrossignol)
- Refactor hashBoinc for binary claim contexts #1558 (@cyrossignol)
- integrated_scraper_2 branch tracking PR #1559 (@jamescowens)
- Upgrade depends - OpenSSL to 1.1.1d #1581 (@jamescowens)
- Ubuntu 19.10 fixes #1590 (@denravonska)
- Force a re-parse of legacy claims in generated blocks #1592 (@cyrossignol)
- Improve the "versionreport" RPC output #1595 (@cyrossignol)
- Overhaul the core tally and accrual system #1583 (@cyrossignol)
- Overhaul the superblock quorum system #1597 (@cyrossignol)
- Add more data to the "superblocks" RPC output #1599 (@cyrossignol)
- Update Windows Build doc #1606 (@barton2526)
- Change the order of calls in gridcoinresearchd.cpp to optimize rpc shunt path #1610 (@jamescowens)
- Change staking tooltip to display frequency #1611 (@jamescowens)
- Enhancements to ETTS #1442 (@jamescowens)
- Standardize money values as integers #1614 (@cyrossignol)
- Clean up and optimize legacy coin age code #1616 (@cyrossignol)
- Some scraper cleanups #1620 (@jamescowens)
- Reorganize accrual code and fix 6-month cutoff #1630 (@cyrossignol)
- Update Copyright years #1633 (@barton2526)
- Change team whitelist delimiter to <> for CPID detection #1634 (@cyrossignol)
- Change team whitelist separator to <> to accomodate more team names #1632 (@jamescowens)
- Change Curl download speed type to support older environments #1640 (@cyrossignol)
- Optimize logo SVGs used for tray icons #1638 (@cyrossignol)
- Tweak consolidateunspent rpc function #1644 (@jamescowens)
- ETTS and staking icon enhancements #1650 (@jamescowens)
- Implement new transaction fees for block version 11 #1652 (@jamescowens)
- Optimize in-memory storage of superblock data #1653 (@cyrossignol)
- Miscellaneous superblock API improvements and housekeeping #1654 (@cyrossignol)
- Update openssl to 1.1.1f compatibility #1660 (@jamescowens)
- Optimize bdb to avoid synchronous flush of database #1659 (@jamescowens)
- Add support for CPID input to "lifetime" RPC function #1668 (@cyrossignol)
- Overhaul the contract handling system #1669 (@cyrossignol)
- Make the autostart mainnet/testnet aware #1671 (@jamescowens)
- Remove slashes from User Agent in peers tab #1674 (@div72)
- Refactor contracts for polymorphic binary payloads #1676 (@cyrossignol)
- Overhaul the beacon system #1678 (@cyrossignol)
- Replace boost::optional<T&> with non-owning pointers #1680 (@cyrossignol)
- Optimize proof-of-stake validation #1681 (@cyrossignol)
- Updated Slack link #1683 (@NeuralMiner)
- Update build-unix.md #1686 (@Quezacoatl1)
- Replace deprecated QT methods #1693 (@Pythonix)
- Made protocol.h more similar to bitcoin #1688 (@Pythonix)
- Touch up some details for block version 11 #1697 (@cyrossignol)
- More tweaks for block version 11 #1700 (@cyrossignol)
- Finish the conversion to the BCLog class based logger #1699 (@jamescowens)
- Move claim version transitional code in miner for proper signature #1712 (@cyrossignol)
- doc: Update threads in coding.txt #1730 (@div72)
- qt: Include QPainterPath in trafficgraphwidget.cpp #1733 (@div72)
- doc: Update doc/build-unix.md #1731 (@div72)
- gui: Show peers tab on connections icon click #1734 (@div72)
- refactor: Change return type of IsMine to isminetype && move wallet files to wallet directory #1722 (@div72)
- build: Updates boost to 1.73.0 for depends #1673 (@jamescowens)
- doc: Update Unit Test Readme #1743 (@RoboticMind)
- wallet: Change Assert To Error Message In kernel.cpp #1748 (@RoboticMind)
- scraper: Shorten display representation of verification codes #1754 (@cyrossignol)
- log: Change ".B." to Clear Message #1758 (@RoboticMind)
- util: Fix braindamage in GetDefaultDataDir() #1737 (@jamescowens)
- scraper: Improve scraper processing of beacon verifications #1760 (@jamescowens)
- scraper: Add instrumentation to convergencereport #1763 (@jamescowens)
- rpc: Improve rpc stress test script #1767 (@tunisiano187)
- Generalize enum serialization #1770 (@cyrossignol)
- scraper: Improve handling of ETags in http class and tweak verified beacon logic #1776 (@jamescowens)
- scraper: Improve ProcessNetworkWideFromProjectStats and other tweaks #1778 (@jamescowens)
- researcher: Automate beacon advertisement for renewals only #1781 (@cyrossignol)
- gui: Tweak behavior of beacon page in researcher wizard #1784 (@cyrossignol)
- Prepare for block version 11 hard-fork on testnet #1787 (@cyrossignol)
- scraper: Modify UpdateVerifiedBeaconsFromConsensus #1791 (@jamescowens)
- gui: Optimize OverviewPage::updateTransactions() #1794 (@jamescowens)
- ci: Adopt ci changes from Bitcoin #1795 (@div72)
- consensus: switch snapshot accrual calculation to integer arithmetic #1799 (@cyrossignol)
- voting: Overhaul the voting system #1809 (@cyrossignol)
- contract: Optimize contract replay after chain reorganization #1815 (@cyrossignol)
- contract: Reimplement transaction messages as contracts #1816 (@cyrossignol)
- staking: Sign claim contracts with coinstake transaction #1817 (@cyrossignol)
- gui: Change research wizard text #1820 (@div72)
- net: Update protocol version and clean up net messaging #1824 (@cyrossignol)
- rpc, wallet: Corrections to GetAmounts #1825 (@jamescowens)
- gui: Tweak some minor researcher wizard details #1830 (@cyrossignol)
- gui: Change GetEstimatedStakingFrequency text #1836 (@jamescowens)
- scraper: Scraper global statistics cache optimization #1837 (@jamescowens)
- doc: Update Vulnerability Response Process #1843 (@RoboticMind)
- scraper: Optimization of manifest and parts sharing between ConvergedScraperStatsCache, mapManifest, and mapParts #1851 (@jamescowens)
- consensus: Update Checkpoints #1855 (@barton2526)
- docs: Update docs to build off master #1856 (@barton2526)
- gui: Fix and improve GUI combo box styles #1858 (@cyrossignol)
- build: Tweak Gridcoin installer for Fern release #1863 (@jamescowens)
Removed
- Remove old re...
4.0.6.0-Leisure
[4.0.6.0] 2019-10-22, leisure, "Ernestine"
Added
- Add testnet desktop launcher action for Linux #1516 (@caraka)
- Shuffle vSideStakeAlloc if necessary to support sidestaking to more than 6 destinations #1532 (@jamescowens)
- New Superblock format preparations for Fern #1526, #1542 (@jamescowens, @cyrossignol)
- Multisigtools
- New banning misbehavior handling and Peers Tab on Debug Console #1537 (@jamescowens)
- Reimplement getunconfirmedbalance rpc #1548 (@jamescowens)
- Add CLI switch to display binary version #1553 (@cyrossignol)
Changed
- Select smallest coins for contracts #1519 (@iFoggz)
- Move some functionality from miner to SelectCoinsForStaking + Respect the coin reserve setting + Randomize UTXO order #1525 (@iFoggz)
- For voting - if url does not contain http then add it #1531 (@iFoggz)
- Backport newer serialization facilities from Bitcoin #1535 (@cyrossignol)
- Refactor ThreadSocketHandler2() Inactivity checks #1538 (@iFoggz)
- Update outdated checkpoints #1539 (@barton2526)
- Change needed to build Gridcoin for OSX using homebrew #1540 (@Git-Jiro)
- Optimize scraper traffic for expiring manifests #1542 (@jamescowens)
- Move legacy neural vote warnings to debug log level #1560 (@cyrossignol)
- Change banlist save interval to 5 minutes #1564 (@jamescowens)
- Change default rpcconsole.ui window size to better support new Peers tab #1566 (@jamescowens)
Removed
- Remove deprecated RSA weight and legacy kernel #1507 (@cyrossignol)
Fixed
- Clean up compiler warnings #1521 (@cyrossignol)
- Handle missing external CPID in client_state.xml #1530 (@cyrossignol)
- Support boost 1.70+ #1533 (@iFoggz)
- Fix diagnostics failed to make connection to NTP server #1545 (@Git-Jiro)
- Install manpages in correct system location #1546 (@Git-Jiro)
- Fix ability to show help and version without a config file #1553 (@cyrossignol)
- Refactor QT UI variable names to be more consistent, Fix Difficulty default #1563 (@barton2526)
- Fix two regressions in previous UI refactor #1565 (@barton2526)
- Fix "Owed" amount in output of "magnitude" RPC method #1569 (@cyrossignol)
4.0.5.0-Leisure
Added
- Add freedesktop.org desktop file and icon set #1438 (@a123b)
- Add warning in help for blockchain scan for importprivkey #1469 (@jamescowens)
- Consolidateunspent rpc function #1472 (@jamescowens)
- Scraper 2.0 improvements #1481, #1488, #1509, and #1514 (@jamescowens, @cyrossignol)
- explorer mode operation
- simplified explainmagnitude output
- improved convergence reporting, including scraper information in the tooltip when fDebug3 is set
- improved statistics and SB contract core caching based on a bClean flag in the cache global
- new SB format and packing for bv11
- new SB contract hashing (native) for bv11
- changes to accomodate new beacon approach
- Implement in memory versioning for team file ETags
- Implement local dynamic team requirement removal and whitelist #1502 (@cyrossignol)
Changed
- Quiet logging for getmininginfo and scraper INFO logging level #1460 (@jamescowens)
- Spelling corrections #1461, #1462 (@caraka)
- Update crypto module #1453 (@denravonska)
- Update .travis.yml for Bionic #1475 (@jamescowens)
- Create CPID classes and clean up CPID code #1477 (@cyrossignol)
- Refactor researcher context and CPID harvesting #1480 (@cyrossignol)
- Remove boinckey export RPC method and import handler
- Notify when wallet locked in advertisebeacon RPC method #1504 (@cyrossignol)
- Notify when wallet locked in beaconstatus RPC method #1506 (@cyrossignol)
- Change spacer minimum height hint #1511 (@jamescowens)
Removed
- Remove safe mode #1434 (@denravonska)
- Remove bitcoin.moc in Makefile.qt.include #1444 (@RoboticMind)
- Clean up legacy Proof-of-Work functions #1497 (@cyrossignol)
Fixed
- Constrain walletpassphrase to 10000000 seconds #1459 (@jamescowens)
- Straighten out localization in the scraper. #1471 (@jamescowens)
- Quick fix for rainbymagnitude #1473 (@jamescowens)
- Correct negation error in scraper tooltip for vScrapersNotPublishing #1484 (@jamescowens)
- Fix staked block rejection when active researcher #1485 (@cyrossignol)
- Add back informational magnitude to generated blocks #1489 (@cyrossignol)
- Add back in the in sync check in ScraperGetNeuralContract #1492 (@jamescowens)
- Scraper correct team file processing. #1501 (@jamescowens)
- Have importwallet file path default to datadir #1508 (@jamescowens)
- Scraper add Beacon Map size check to ensure convergence #1515 (@jamescowens)
4.0.4.0-Leisure
Fixed
- Adds back the new user wizard inadvertently removed #1464 (@jamescowens).
- Repair scraper team filtering #1466 (@jamescowens)
4.0.3.0-Leisure
Added
- Replace NeuralNetwork with portable C++ scraper #1387 (@jamescowens,
@tomasbrod, @Cycy, @TheCharlatan, @denravonska). - Allow compile flags to be used for depends #1423 (@G-UK).
- Add stake splitting and side staking info to getmininginfo #1424
(@jamescowens). - Add freedesktop.org desktop file and icon set #1438 (@a123b).
Changed
- Disable Qt for windows Travis builds #1276 (@TheCharlatan).
- Replace use of AppCache PROJECT section with strongly-typed structures #1415
(@cyrossignol). - Change dumpwallet to use appropriate data directory #1416 (@jamescowens).
- Optimize ExtractXML() calls by avoiding unnecessary string copies #1419
(@cyrossignol). - Change signature of IsLockTimeWithinMinutes #1422 (@jamescowens).
- Restore old poll output for getmininginfo RPC #1437 (@a123b).
- Prevent segfault when using rpc savescraperfilemanifest #1439 (@jamescowens).
- Improve miner status messages for ineligible staking balances #1447
(@cyrossignol). - Enhance scraper log archiving #1449 (@jamescowens).
Fixed
- Re-enable full GUI 32-bit Windows builds - part of #1387 (@jamescowens).
- Re-activate Windows Installer #1409 (@TheCharlatan).
- Fix Depends and Travis build issues for ARM #1417 (@jamescowens).
- Fix syncupdate icons #1421 (@jamescowens).
- Fix potential BOINC crash when reading projects #1426 (@cyrossignol).
- Fix freeze when unlocking wallet #1428 (@denravonska).
- Fix RPC after high priority alert #1432 (@denravonska).
- Fix missing poll in GUI when most recent poll expired #1455 (@cyrossignol).
Removed
- Remove old, rudimentary side staking implementation #1381 (@denravonska).
- Remove auto unlock #1402 (@denravonska).
- Remove superblock forwarding #1430 (@denravonska).
4.0.2.0-Leisure
Added
- Add
rainbymagnitude
RPC command #1235 (@Foggyx420). - Add stake splitting and side staking #1265 (@jamescowens).
- Detect and block Windows shutdown so wallet can exit cleanly #1309
(@jamescowens). - Add message support to sendfrom and sendtoaddress #1400 (@denravonska).
Changed
- Configuration options are now case insensitive #294 (@Foggyx420).
- Update command in beaconstatus help message #1312 (@chrstphrchvz).
- Improve synchronization speeds:
- Refactor superblock pack/unpack #1194 (@denravonska).
- Optimize neuralsecurity calculations #1255 (@denravonska).
- Reduce hash calculations when checking blocks #1206 (@denravonska).
- Make display of private key in beaconstatus OPT-IN only #1275 (@Foggyx420).
- Store Beacon keys in Wallet #1088 (@tomasbrod).
- Use default colors for pie chart #1333 (@chrstphrchvz).
- Show hand cursor when hovering clickable labels #1332 (@chrstphrchvz).
- Update README.md #1337 (@Peppernrino).
- Fix integer overflow with displayed nonce #1297 (@personthingman2).
- Improve application cache performance #1317 (@denravonska).
- Improve reorg speeds #1263 (@denravonska).
- Update Polish translation #1375 (@michalkania).
Fixed
- Remove expired polls from overview page #1250 (@personthingman2).
- Fix plural text on block age #1304 (@scribblemaniac).
- Fix researcher staking issue if your chain head was staked by you,
#1299 (@denravonska). - Fix incorrect address to grcpool node #1314 (@wilkart).
- Do not replace underscores by spaces in Qt Poll URLs #1327 (@tomasbrod).
- Fix scraper SSL issues #1330 (@Foggyx420).
Removed
- Remove or merged several RPC commands #1228 (@Foggyx420):
newburnaddress
, removed.burn2
: Removed.cpid
: Merged intoprojects
.mymagnitude
: Merged intomagnitude
.rsa
: Removed, usemagnitude
.rsaweight
: Removed, usemagnitude
.proveownership
: Removed.encrypt
: Removed.
- Remove obsolete POW fields from RPC responses #1358 (@jamescowens).
- Remove obsolete netsoft fields for slight RAM requirement reduction
#1336 (@denravonska). - Remove unused attachment functionality #1345 (@denravonska).