Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: merge feat/nv21 into master #11336

Merged
merged 108 commits into from
Oct 17, 2023
Merged

chore: merge feat/nv21 into master #11336

merged 108 commits into from
Oct 17, 2023

Conversation

arajasek
Copy link
Contributor

Related Issues

Now that 1.24.0-rc1 exists, we have enough confidence in the nv21 changes to land them in master. With that, we will be able to use master to sync calibnet / mainnet over the network upgrades.

Proposed Changes

Merge feat/nv21 into master.

Additional Info

Checklist

Before you mark the PR ready for review, please make sure that:

  • Commits have a clear commit message.
  • PR title is in the form of of <PR type>: <area>: <change being made>
    • example: fix: mempool: Introduce a cache for valid signatures
    • PR type: fix, feat, build, chore, ci, docs, perf, refactor, revert, style, test
    • area, e.g. api, chain, state, market, mempool, multisig, networking, paych, proving, sealing, wallet, deps
  • If the PR affects users (e.g., new feature, bug fix, system requirements change), update the CHANGELOG.md and add details to the UNRELEASED section.
  • New features have usage guidelines and / or documentation updates in
  • Tests exist for new functionality or change in behavior
  • CI is green

rjan90 and others added 30 commits July 13, 2023 15:47
Introduce nv21 skeleton for local testing:

- Use local go-state-types with actor_version_checklist changes: https://github.com/filecoin-project/go-state-types/blob/master/actors_version_checklist.md
- Imports mock v12-actors bundle
- Define upgrade heights
- Generate adapters
- Add upgrade schedule and migration
- Add actorstype to the NewActorRegistry in /chain/consensus/computestate.go
- Add upgrade field to api/types.go/ForkUpgradeParams
- Add upgrade to node/impl/full/state.go
- Add network version to chain/state/statetree.go
- make jen
- make docsgen-cli
Set local devnet-genesis to nv20
We've now lost 2 recursive calls, but that really shouldn't make a
difference.
Update butterfly-schedule
Add butterfly artifacts
Update butterfly-bootstraps
This commit includes the following updates:

- Imported v12 of the filecoin state types in migrations.go. This allows the system to interpret and operate on the latest structure of filecoin state information, ensuring compatibility with the latest version of the Filecoin network.

- Updated the 'getMigrationFuncsForNetwork' function to include a case for network.Version21, enabling the use of the UpgradeActorsV12 and PreUpgradeActorsV12 functions for network migration. These changes ensure the system correctly handles migrations when the network upgrades to version 21.

- Implemented a new 'checkNv21Invariants' function to check the invariants for version 21 of the Filecoin network. This function:

  1. Loads the new state root from the actor store.
  2. Retrieves the actor code IDs for the current state version (v12).
  3. Loads the actor tree from the state root and checks state invariants using the actor code IDs.
  4. Logs any error messages generated during the invariant check.
  5. Finally, prints a message with the time taken to complete the checks.

By checking these invariants, we can ensure the system's state is consistent and valid after migrating to network version 21.
mb1896 and others added 19 commits October 2, 2023 16:56
Feat: Lotus cli: actor: Support move partition command to move partitions' deadline
chore: deps: update FFI, FVM, and actors
Add nv21 butterfly assets
chore: butterfly: Update Butterfly Assets
Update SectorLifetime duration comment to be in line with FIP-0052: https://fips.filecoin.io/FIPS/fip-0052.html
Make clear that 1278 days are applicable in nv21 not before.
…-comment

fix: docs: Update SectorLifetime to be in line with FIP-0052
chore: build: set calibration upgrade height
chore: deps: update to latest actors and FFI
…height

chore: release: Set calibration upgrade height
@arajasek arajasek requested a review from a team as a code owner October 16, 2023 15:06
Comment on lines +13 to +14
## New features
- feat: Add move-partition command ([filecoin-project/lotus#11290](https://github.com/filecoin-project/lotus/pull/11290))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We're getting v1.24 into master later, right?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, when it's actually released.

@arajasek arajasek merged commit 0374c50 into master Oct 17, 2023
87 checks passed
@arajasek arajasek deleted the asr/merge-feat-nv21 branch October 17, 2023 13:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants