This consensus-breaking release of Lotus is designed to test a network upgrade on the space race testnet. The changes that break consensus are:
- Tweaking of some cryptoecon parameters in specs-actors 0.9.7 (https://github.com/filecoin-project/specs-actors/releases/tag/v0.9.7)
- Rebalancing FIL distribution to make testnet FIL scarce, which prevents base fee spikes and sets better expectations for mainnet
This release also introduces many improvements to Lotus! Among them are a new version of go-fil-markets that supports non-blocking retrieval, various spam reduction measures in the messagepool and p2p logic, and UX improvements to payment channels, dealmaking, and state inspection.
Changes
Core Lotus and dependencies
- Implement faucet funds reallocation logic (#3632)
- Network upgrade: Upgrade to correct fork threshold (#3628)
- Update to specs 0.9.7 and markets 0.6.0 (#3627)
- Network upgrade: Perform base fee tamping (#3623)
- Chain events: if cache best() is nil, return chain head (#3611)
- Update to specs actors v0.9.6 (#3603)
Messagepool
- Temporarily allow negative chains (#3625)
- Improve publish/republish logic (#3592)
- Fix selection bug; priority messages were not included if other chains were negative (#3580)
- Add defensive check for minimum GasFeeCap for inclusion within the next 20 blocks (#3579)
- Add additional info about gas premium (#3578)
- Fix GasPremium capping logic (#3552)
Payment channels
- Get available funds by address or by from/to (#3547)
- Create
lotus paych status
command (#3523) - Rename CLI command from "paych get" to "paych add-funds" (#3520)
Peer-to-peer
- Only subscribe to pubsub topics once we are synced (#3602)
- Reduce mpool add failure log spam (#3562)
- Republish messages even if the chains have negative performance(#3557)
- Adjust gossipsub gossip factor (#3556)
- Integrate pubsub Random Early Drop (#3518)
Miscellaneous
- Fix panic in OnDealExpiredSlashed (#3553)
- Robustify state manager against holes in actor method numbers (#3538)
UX
- VM: Fix an error message (#3608)
- Documentation: Batch replacement,update lotus-storage-miner to lotus-miner (#3571)
- CLI: Robust actor lookup (#3535)
- Add agent flag to net peers (#3534)
- Add watch option to storage-deals list (#3527)
Testing & tooling
- Decommission chain-validation (#3606)
- Metrics: add expected height metric (#3586)
- PCR: Use current tipset during refund (#3570)
- Lotus-shed: Add math command (#3568)
- PCR: Add tipset aggergation (#3565 Fix broken paych tests (#3551)
- Make chain export ~1000x times faster (#3533)
- Chainwatch: Stop SyncIncomingBlocks from leaking into chainwatch processing; No panics during processing (#3526)
- Conformance: various changes (#3521)