KAGOME v0.9.1
TL;DR
- Disputes resolution
- State pruning
- Parallel grandpa
- Runtime performance boost
- Native C++ Erasure coding
Breaking changes
- KAGOME database is incompatible with previous versions
- WS port was merged with RPC port
Docker image
The docker image for this release can be found at Docker hub
You may pull this version of KAGOME with command:
docker pull soramitsu/kagome:v0.9.1
Added
RPC
BABE
- babe backoff by @turuslan in #1575
- babe indexer by @turuslan in #1661
- simplify babe genesis slot by @turuslan in #1700
- Improve error handling in babe_config_repository_impl by @kamilsa in #1749
GRANDPA
Networking
- verify warp justification by @turuslan in #1553
- warp sync by @turuslan in #1567
- Restrict neighbor messages processing when sync by @kamilsa in #1597
- publish localhost by @turuslan in #1666
- broadcast block announce by @turuslan in #1728
- broadcast neighbor by @turuslan in #1735
- broadcast grandpa votes/commit by @turuslan in #1752
- broadcast backing statement to group and lucky by @turuslan in #1760
Host API
Runtime
- enable extended name section by @turuslan in #1585
- Fix binaryen memory initalization by @Harrm in #1704
- Cache of runtime call results by @xDimon in #1680
- Parachain runtime instance cache by @Harrm in #1687
- disable wavm signals by @turuslan in #1748
- lru put mutex by @turuslan in #1765
- lru runtime by @turuslan in #1769
- debug: disable runtime lru by @turuslan in #1774
- Disable failing MetadataTest due to LRU cache issue by @kamilsa in #1776
Storage
- Topper cursor by @turuslan in #1546
- Kagome db-editor update by @igor-egorov in #1552
- Implement db-cache cmd line parameter by @igor-egorov in #1628
- Dynamic trie pruning by @Harrm in #1556
- Auto removal of non pruned forks by @xDimon in #1675
- 'prune-discarded' mode by @Harrm in #1702
Parachains
getApprovalSignaturesForCandidate
impl by @iceseer in #1622- Erasure-coding cpp integration by @iceseer in #1632
- pvf precheck by @turuslan in #1705
- approval lag metric by @turuslan in #1727
- pvf time metric by @turuslan in #1726
- Disputes by @xDimon in #1663
- Add dispute tests by @esganesh in #1745
- Fix/explicit implicit disbalance by @iceseer in #1722
- parachain_candidate_validation_code_size by @turuslan in #1753
Transaction Pool
Offchain workers
BEEFY
Misc
- Refactor app state manager and injections by @xDimon in #1549
- injector rpc metrics by @turuslan in #1572
- Refactoring thread pool by @iceseer in #1565
- Enable parachains only if synchronized by @iceseer in #1566
- Refactor keystore by @turuslan in #1584
- Make block benchmark by @Harrm in #1569
- Refactor session keys by @turuslan in #1605
- Set validator flag when use dev account by @kamilsa in #1625
- Thread pool size by @iceseer in #1633
- embed chainspec by @turuslan in #1649
- Auto selection of sync method by @xDimon in #1668
- Meaningful thread names for threads of pool by @xDimon in #1699
- update hunter (fix wavm) by @turuslan in #1715
- update hunter (fix wavm) by @turuslan in #1716
- Help vars in Synchronizer by @kamilsa in #1733
- Add missing metrics by @igor-egorov in #1724
- simplify reinvoke by @turuslan in #1754
- Update README.md by @kamilsa in #1778
Fixed
RPC
- fix rpc session by @turuslan in #1616
- fix rpc timeout by @turuslan in #1621
- RPC response fix by @iceseer in #1626
- Fix incorrect parsing of optional JSON RPC params by @Harrm in #1703
- Fix incorrect parsing of optional JSON RPC params (#1703) by @Harrm in #1771
BABE
- Babe/time by @turuslan in #1568
- remove babe delay by @turuslan in #1629
- fix babe start by @turuslan in #1681
- fix genesis not found by @turuslan in #1695
- fix babe catch up by @turuslan in #1709
- fix babe epoch by @turuslan in #1711
GRANDPA
- Fix mem-leak in with grandpa protocol by @xDimon in #1581
- Grandpa finalization fix by @iceseer in #1620
- fix prevote precommit by @turuslan in #1642
- AuthorityManager mutex by @turuslan in #1719
- Remove unused function call in grandpa chain test by @kamilsa in #1741
- Lock handling in AuthorityManagerImpl by @kamilsa in #1743
Networking
- regress: continue state sync from last key by @turuslan in #1559
- Fix audi publish by @turuslan in #1618
- fix synchronizer (grandpa) by @turuslan in #1635
- fix audi ws by @turuslan in #1644
- fix kusama warp by @turuslan in #1647
- Fix null-stream chash by @xDimon in #1777
Host API
Runtime
Storage
- fix BlockTree deadlock by @turuslan in #1599
- Fix/deactivated leaf fix by @iceseer in #1674
- don't loop finalized addExistingBlock by @turuslan in #1721
- Fix trie pruner restore from genesis test by @Harrm in #1747
- Fast pruner start by @Harrm in #1756
Parachains
- Candidate backing fixup by @iceseer in #1564
- Clear recovery and approval status caches by @iceseer in #1571
- Fix/Tranches to approve fixup by @iceseer in #1582
- Recovery deadlock fixup by @iceseer in #1613
- Approval trigger assignment fixup by @iceseer in #1617
- Tranche timer fixup by @iceseer in #1627
- Approval send in main thread by @iceseer in #1640
- Parachains view update by @iceseer in #1665
- Parachain stuck fixup by @iceseer in #1676
- Fix/approval send by @iceseer in #1718
- Fix some dispute's mechanisms by @xDimon in #1740
- Fix/Finalization freeze by @iceseer in #1739
Transaction pool
Documentation
Misc
- fix recursion by @turuslan in #1574
- fix telemetry by @turuslan in #1579
- Fixed division by zero by @iceseer in #1588
- Fix --db-cache default value issue by @igor-egorov in #1639
- Performace fixups by @iceseer in #1655
- Memory allocator performance refactoring by @iceseer in #1645
- Fix atomic linking error on GCC by @Harrm in #1684
- Add libatomic to Dockerfile by @Harrm in #1685
- Hotfix: use after move by @xDimon in #1696
- remove redundant logs by @iceseer in #1713
- gcc lru by @turuslan in #1736
Infrastructure
- Introduce custom docker build by @kamilsa in #1557
- Update hunter and fix build by @kamilsa in #1562
- Update threads number for release build by @safinsaf in #1580
- Add first zombienet tests by @esganesh in #1634
- Feature/dops 2490/zombienet by @safinsaf in #1660
- Feature/dops 2490/zombienet by @safinsaf in #1678
- Add and update zombienet tests by @esganesh in #1698
- Fix zombie-tester branch by @safinsaf in #1710
- Add zombienet runtime upgrade tests by @safinsaf in #1725
- Allow manual runs for builder by @safinsaf in #1730
- Bump gitpython from 3.1.31 to 3.1.32 in /zombienet/docker by @dependabot in #1731
- Fix 3.25 cmake to Mac by @safinsaf in #1742
- Update hunter by @kamilsa in #1737
- Decrease threads by @safinsaf in #1750
- Try max threads by @safinsaf in #1755
- Test second push tag by @safinsaf in #1759
- Feature/dops 2705 kagome tags by @safinsaf in #1762
- Change owner of db dirs by @safinsaf in #1767
New Contributors
- @esganesh made their first contribution in #1634
- @dependabot made their first contribution in #1731
Full Changelog: v0.9.0...v0.9.1