Skip to content

Releases: filecoin-project/lotus

v0.8.1

01 Oct 01:43
1ebad94
Compare
Choose a tag to compare

This optional release of Lotus introduces a new version of markets which switches to CBOR-map encodings, and allows datastore migrations. The release also introduces several improvements to the mining process, a few performance optimizations, and a battery of UX additions and enhancements.

Changes

Dependencies

  • Markets 0.7.0 with updated data stores (#4089)
  • Update ffi to code with blst fixes (#3998)

Core Lotus

  • Fix GetPower with no miner address (#4049)
  • Refactor: Move nonce generation out of mpool (#3970)

Performance

  • Implement caching syscalls for import-bench (#3888)
  • Fetch tipset blocks in parallel (#4074)
  • Optimize Tipset equals() (#4056)
  • Make state transition in validation async (#3868)

Mining

  • Add trace window post (#4020)
  • Use abstract types for Dont recompute post on revert (#4022)
  • Fix injectNulls logic in test miner (#4058)
  • Fix potential panic in FinalizeSector (#4092)
  • Don't recompute post on revert (#3924)
  • Fix some failed precommit handling (#3445)
  • Add --no-swap flag for worker (#4107)
  • Allow some single-thread tasks to run in parallel with PC2/C2 (#4116)

UX

  • Add an envvar to set address network version (#4028)
  • Add logging to chain export (#4030)
  • Add JSON output to state compute (#4038)
  • Wallet list CLI: Print balances/nonces (#4088)
  • Added an option to show or not show sector info for lotus-miner info (#4003)
  • Add a command to import an ipld object into the chainstore (#3434)
  • Improve the lotus-shed dealtracker (#4051)
  • Docs review and re-organization (#3431)
  • Fix wallet list (#4104)
  • Add an endpoint to validate whether a string is a well-formed address (#4106)
  • Add an option to set config path (#4103)
  • Add printf in TestWindowPost (#4043)
  • Improve miner sectors list UX (#4108)

Tooling

  • Move policy change to seal bench (#4032)
  • Add back network power to stats (#4050)
  • Conformance: Record and feed circulating supply (#4078)
  • Snapshot import progress bar, add HTTP support (#4070)
  • Add lotus shed util to validate a tipset (#4065)
  • tvx: a test vector extraction and execution tool (#4064)

Bootstrap

  • Add new bootstrappers (#4007)
  • Add Glif node to bootstrap peers (#4004)
  • Add one more node located in China (#4041)
  • Add ipfsmain bootstrapper (#4067)

v0.8.0

26 Sep 07:18
2c1d96b
Compare
Choose a tag to compare

This consensus-breaking release of Lotus introduces an upgrade to the network. The changes that break consensus are:

  • Upgrading to specs-actors v0.9.11, which reduces WindowPoSt faults per FIP 0002 to reduce cost for honest miners with occasional faults (see filecoin-project/specs-actors#1181)
  • Revisions to some cryptoeconomics and network params

This release also updates go-fil-markets to fix an incompatibility issue between v0.7.2 and earlier versions.

Changes

Dependencies

  • Update spec actors to 0.9.11 (#4039)
  • Update markets to 0.6.3 (#4013)

Core Lotus

  • Network upgrade (#4039)
  • Fix AddSupportedProofTypes (#4033)
  • Return an error when we fail to find a sector when checking sector expiration (#4026)
  • Batch blockstore copies after block validation (#3980)
  • Remove a misleading miner actor abstraction (#3977)
  • Fix out-of-bounds when loading all sector infos (#3976)
  • Fix break condition in the miner (#3953)

UX

  • Correct helptext around miners setting ask (#4009)
  • Make sync wait nicer (#3991)

Tooling and validation

  • Small adjustments following network upgradability changes (#3996)
  • Add some more big pictures stats to stateroot stat (#3995)
  • Add some actors policy setters for testing (#3975)

Contributors

The following contributors had 5 or more commits go into this release.
We are grateful for every contribution!

Contributor Commits Lines ±
arajasek 66 +3140/-1261
Stebalien 64 +3797/-3434
magik6k 48 +1892/-976
raulk 40 +2412/-1549
vyzo 22 +287/-196
alanshaw 15 +761/-146
whyrusleeping 15 +736/-52
hannahhoward 14 +1237/837-
anton 6 +32/-8
travisperson 5 +502/-6
Frank 5 +78/-39
jennijuju 5 +148/-41

v0.7.2

24 Sep 00:50
efd2dff
Compare
Choose a tag to compare

This optional release of Lotus introduces a major refactor around how a Lotus node interacts with code from the specs-actors repo. We now use interfaces to read the state of actors, which is required to be able to reason about different versions of actors code at the same time.

Additionally, this release introduces various improvements to the sync process, as well as changes to better the overall UX experience.

Changes

Core Lotus

  • Network upgrade support (#3781)
  • Upgrade markets to v0.6.2 (#3974)
  • Validate chain sync response indices when fetching messages (#3939)
  • Add height diff to sync wait (#3926)
  • Replace Requires with Wants (#3898)
  • Update state diffing for market actor (#3889)
  • Parallel fetch for sync (#3887)
  • Fix SectorState (#3881)

User Experience

  • Add basic deal stats api server for spacerace slingshot (#3963)
  • When doing sectors update-state, show a list of existing states if user inputs an invalid one (#3944)
  • Fix lotus-miner storage find error (#3927)
  • Log shutdown method for lotus daemon and miner (#3925)
  • Update build and setup instruction link (#3919)
  • Add an option to hide removed sectors from sectors list output (#3903)

Testing and validation

  • Add init.State#Remove() for testing (#3971)
  • lotus-shed: add consensus check command (#3933)
  • Add keyinfo verify and jwt token command to lotus-shed (#3914)
  • Fix conformance gen (#3892)

v0.7.1

18 Sep 01:34
4121063
Compare
Choose a tag to compare

This release of Lotus introduces some critical fixes to the window PoSt process. It also upgrades some core dependencies, and introduces many improvements to the mining process, deal-making cycle, and overall User Experience.

Changes

Some notable improvements:

  • Correctly construct params for SubmitWindowedPoSt messages (#3909)
  • Skip sectors correctly for Window PoSt (#3839)
  • Split window PoST submission into multiple messages (#3689)
  • Improve journal coverage (#2455)
  • Allow retrievals while sealing (#3778)
  • Don't prune locally published messages (#3772)
  • Add get-ask, set-ask retrieval commands (#3886)
  • Consistently name winning and window post in logs (#3873)
  • Add auto flag to mpool replace (#3752)

Dependencies

  • Upgrade markets to v0.6.1 (#3906)
  • Upgrade specs-actors to v0.9.10 (#3846)
  • Upgrade badger (#3739)

v0.7.0

10 Sep 22:07
232cc32
Compare
Choose a tag to compare

This consensus-breaking release of Lotus is designed to test a network upgrade on the space race testnet. The changes that break consensus are:

  • Upgrading the Drand network used from the test Drand network to the League of Entropy main drand network. This is the same Drand network that will be used in the Filecoin mainnet.
  • Upgrading to specs-actors v0.9.8, which adds a new method to the Multisig actor.

Changes

Core Lotus

  • Fix IsAncestorOf (#3717)
  • Update to specs-actors v0.9.8 (#3725)
  • Increase chain throughput by 20% (#3732)
  • Updare to go-libp2p-pubsub master (#3735)
  • Drand upgrade (#3670)
  • Multisig API additions (#3590)

Storage Miner

  • Increase the number of times precommit2 is attempted before moving back to precommit1 (#3720)

Message pool

  • Relax mpool add strictness checks for local pushes (#3724)

Maintenance

  • Fix devnets (#3712)
  • Fix(chainwatch): compare prev miner with cur miner (#3715)
  • CI: fix statediff build; make optional (#3729)
  • Feat: Chaos abort (#3733)

Contributors

The following contributors had commits go into this release.
We are grateful for every contribution!

Contributor Commits Lines ±
arajasek 28 +1144/-239
Kubuxu 19 +452/-261
whyrusleeping 13 +456/-87
vyzo 11 +318/-20
raulk 10 +1289/-350
magik6k 6 +188/-55
dirkmc 3 +31/-8
alanshaw 3 +176/-37
Stebalien 2 +9/-12
lanzafame 1 +1/-1
frrist 1 +1/-1
mishmosh 1 +1/-1
nonsense 1 +1/-0

0.7.0-rc1

10 Sep 19:47
cd9a8ec
Compare
Choose a tag to compare
0.7.0-rc1 Pre-release
Pre-release

Release candidate for Lotus 0.7.0, a network-upgrading release to be run on the space-race testnet.

v0.6.2

09 Sep 20:46
8b2862a
Compare
Choose a tag to compare

This release introduces some critical fixes to message selection and gas estimation logic. It also adds the ability for nodes to mark a certain tipset as checkpointed, as well as various minor improvements and bugfixes.

Miners competing in the space-race competition should upgrade to this release to ensure their PoSt messages land on-chain.

Changes

Messagepool

  • Warn when optimal selection fails to pack a block and we fall back to random selection (#3708)
  • Add basic command for printing gas performance of messages in the mpool (#3701)
  • Adjust optimal selection to always try to fill blocks (#3685)
  • Fix very minor bug in repub baseFeeLowerBound (#3663)
  • Add an auto flag to mpool replace (#3676)
  • Fix mpool optimal selection packing failure (#3698)

Core Lotus

  • Don't use latency as initital estimate for blocksync (#3648)
  • Add niceSleep 1 second when drand errors (#3664)
  • Fix isChainNearSync check in block validator (#3650)
  • Add peer to peer manager before fetching the tipset (#3667)
  • Add StageFetchingMessages to sync status (#3668)
  • Pass tipset through upgrade logic (#3673)
  • Allow nodes to mark tipsets as checkpointed (#3680)
  • Remove hard-coded late-fee in window PoSt (#3702)
  • Gas: Fix median calc (#3686)

Storage

  • Storage manager: bail out with an error if unsealed cid is undefined (#3655)
  • Storage: return true from Sealer.ReadPiece() on success (#3657)

Maintenance

  • Resolve lotus, test-vectors, statediff dependency cycle (#3688)
  • Paych: add docs on how to use paych status (#3690)
  • Initial CODEOWNERS (#3691)

v0.6.2-rc1

09 Sep 11:10
de654de
Compare
Choose a tag to compare
v0.6.2-rc1 Pre-release
Pre-release
Merge pull request #3687 from filecoin-project/misc/v0.6.2-rc1

Bump version to 0.6.2-rc1

v0.6.1

08 Sep 07:15
4045ffe
Compare
Choose a tag to compare

This optional release introduces a minor improvement to the sync process, ensuring nodes don't fall behind and then resync.

Changes

  • Update test-vectors (#3645)
  • Revert "only subscribe to pubsub topics once we are synced" (#3643)

v0.6.0

07 Sep 23:31
60cae87
Compare
Choose a tag to compare

This consensus-breaking release of Lotus is designed to test a network upgrade on the space race testnet. The changes that break consensus are:

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)