v3.0.1 - Grand Central
Mandatory Upgrade
This is a mandatory update for the upcoming Grand Central chain upgrade. It contains key upgrades for the protocol.
Grand Central upgrade is set for block 2479000 (approx. ETA Dec 8th, 2022. UTC) on mainnet.
Update of mainnet node to v3.0.x
before the chain upgrade block is REQUIRED.
Upgrade Notes
- For nodes >= 2.11.1, reindex is recommended but optional.
- What works without reindex: Consensus, fund related contracts are 100% compatible and reindex isn't required.
- What requires reindex: bug fixes for statistical information like
getburninfo
and live attributes. (listgov attrs
). Without reindex, they'll continue to follow older accounting semantics. - For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.
- For other nodes, one of the following is required: a fresh sync, the most recent snapshot.
Key Highlights
- On-chain governance
- Token consortium framework
- Support for masternode parameter updates (owner, operator, reward address)
- Pool commission and reward fixes
Testnet Info
The following are informational updates that apply only for development on testnet:
- Testnet has been rolled back to
1366000
prior to this release. - Reference blockhash of testnet 1366000:
3b353a200ebee7aec49f5acc41d7711ceea7bfa63474d00fcff674a859aa9e13
- Note: Same upgrade notes as mainnet apply to testnet. Please reindex / restore as necessary.
Note: Certain test related infrastructure components (like defiscan.live) could take a while to reflect this change, due to the re-indexing constraints on the specific applications.
Testnet rollback tips (if needed):
$ defi-cli -testnet invalidateblock $(defi-cli -testnet getblockhash 1366000)
$ defi-cli -testnet clearbanned
$ defi-cli -testnet reconsiderblock 3b353a200ebee7aec49f5acc41d7711ceea7bfa63474d00fcff674a859aa9e13
What's Changed
- Allow ICX fix on RegTest by @Bushstar in #1479
- Track negative interest in collateral payback by @Bushstar in #1489
- Replace hashlib.ripemd160 with an pure Python implementation by @shohamc1 in #1483
- Update CODEOWNERS by @uzyn in #1498
- Fix compositeswap to use direct pool when available and fix testpoolswap calculation by @Jouzo in #1481
- Exclude accountchange debug category from python test by @Jouzo in #1466
- Do not suppress errors for simple swaps on testpoolswap by @shohamc1 in #1516
- Skip collateral factor check by @shohamc1 in #1515
- Run Dev Build and Jellyfish tests on
epic/*
branches by @shohamc1 in #1527 - Skip jellyfish tests on master by @shohamc1 in #1530
- Add feature flags and GrandCentral fork by @Bushstar in #1538
- Update CI full sync to use available snapshots by @Jouzo in #1523
- Pull bdb, libevent, miniupnpc upstream updates by @prasannavl in #1542
- Unset Governance variables by @Bushstar in #1522
- Add empty string check for tokenTo and tokenFrom in testpoolswap by @shohamc1 in #1544
- Update Bitcoin DNS seeds by @shohamc1 in #1545
- Backport of
Throw error on pairSymbol larger than expected
(#1069) by @shohamc1 in #1546 - Change OP_RETURN data size by @Bushstar in #1520
- Reject swaps when output token does not match toToken by @shohamc1 in #1547
- Update repository on jellyfish test workflow by @hidiego in #1501
- Fix collateral factor not taken into account on vault requirement checks by @hidiego in #1512
- Provide better error message for max pool swaps by @Bushstar in #1484
- Migrate stored Gov var unlock on split by @Bushstar in #1550
- Migrate foundation addresses to Governance variables by @Bushstar in #1540
- Skip token locked check by @hidiego in #1552
- Fix CI deprecation warnings by @Jouzo in #1553
- Run generate-matrix job on ci/sync tag by @Jouzo in #1554
- Poolswap to empty to address swaps to from address making to optional by @Bushstar in #1534
- Add updatemasternode RPC call by @Bushstar in #1537
- Track loan DUSD in live economy by @Bushstar in #1551
- Fix incorrect start index behaviour in listprices RPC by @shohamc1 in #1486
- Track DUSD minted components by @Bushstar in #1487
- On-chain Governance by @Bushstar in #1535
- Add versionSuffix getversioninfo by @hidiego in #1339
- Consortium implementation by @Mixa84 in #1541
- v3.0.0 by @Bushstar in #1555
- Mark Grand Central Testnet by @prasannavl in #1556
- Revert "Add versionSuffix getversioninfo" by @prasannavl in #1557
- Update full sync CI by @Jouzo in #1560
- Fix full sync issues by @Bushstar in #1562
- Do not check cumulative before FCC by @Bushstar in #1559
- Migrate tokens in futures live economy balances by @Bushstar in #1548
- Move Gov var to feature category by @Bushstar in #1567
- Revert change to stake modifier by @Bushstar in #1566
- Discard reconsiderblock failure on full sync CI by @Jouzo in #1563
- Fix percentage support in attributes by @Mixa84 in #1569
- Move test to extended and increase timeout by @Bushstar in #1564
- Full sync CI generate-matrix job remove last available snapshot by @Jouzo in #1570
- Use correct key to computer stake modifier by @Bushstar in #1572
- Mint tokens rules adaptation by @Mixa84 in #1568
- Fix failing test on CI by @Bushstar in #1573
- Throw better errors when invalid global mint limits are set by @shohamc1 in #1574
- Add benchmarking for custom transactions by @Bushstar in #1571
- Allow Consortium mint limits to be zero by @shohamc1 in #1576
- Pool commission and reward fixes by @Bushstar in #1533
- Do not require input from new owner address by @Bushstar in #1575
- Rename minVoters to quorum by @Jouzo in #1578
- Fix minting rule by @Mixa84 in #1580
- Adapt autoauth tests for minttoken changes by @prasannavl in #1581
- Import and export consortium and foundation members as UniValue by @Bushstar in #1579
- Move to clang 14 and add experimental musl builds by @prasannavl in #1422
- Proposal changes by @hidiego in #1577
- Fix CI builds, add rc4, upgrade proto by @prasannavl in #1582
- Add missing ownerAddress to getcustomtx by @Bushstar in #1584
- Send unused emission to address by @Bushstar in #1587
- Add fields to
getgovproposal
by @hidiego in #1583 - Version 3.0.0-rc5 by @prasannavl in #1590
- Fix BurnTokenMessage token accounting by @Mixa84 in #1594
- Enable clang-format on existing code by @prasannavl in #1593
- Print full sync CI info by @Jouzo in #1596
- Rename daliyMintLimit to mintLimitDaily in consortium members by @Mixa84 in #1595
- Fix testpoolswap flaky test assertion by @Jouzo in #1603
- Fix missing env variable in full sync CI by @Jouzo in #1599
- Add proposal creationHeight to listgovproposals and getgovproposal by @Jouzo in #1604
- Add emergencyPeriod and feeBurnPct to chainparams by @Jouzo in #1597
- Save quorum and majorityThreshold in proposal. by @Jouzo in #1607
- On-chain governance refinements and fixes by @prasannavl in #1608
- Set GrandCentral hard fork by @Jouzo in #1600
- Fix coinbase tests by @Bushstar in #1610
- Restore testnet fork height back to rc height by @prasannavl in #1612
Full Changelog: v2.11.1...v3.0.1