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

clean/mv-actors-bundle #11889

Draft
wants to merge 76 commits into
base: master
Choose a base branch
from
Draft

clean/mv-actors-bundle #11889

wants to merge 76 commits into from

Conversation

snadrus
Copy link
Contributor

@snadrus snadrus commented Apr 17, 2024

Related Issues

The 40MB+ of actors bundle content should not be implicitly included in everything that wants to know the build version.

Proposed Changes

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

@snadrus
Copy link
Contributor Author

snadrus commented Apr 17, 2024

All present dependencies of curio, broken down by package:
deps.json

Following the goal of removing lotus/build/actors:
It's imported by:

github.com/filecoin-project/lotus/chain/consensus/filcns
   github.com/filecoin-project/lotus/node 
      github.com/filecoin-project/lotus/curiosrc/market/lmrpc <-- TODO Use the node.* resources without node
   github.com/filecoin-project/lotus/chain/gen
      github.com/filecoin-project/lotus/curiosrc/winning <--- TODO Use the gen.* resources without node
      github.com/filecoin-project/lotus/storage
          github.com/filecoin-project/lotus/node

github.com/filecoin-project/lotus/node/bundle
   github.com/filecoin-project/lotus/chain/gen/genesis
        github.com/filecoin-project/lotus/node/modules/testing  
            github.com/filecoin-project/lotus/node <-- already set to prune
   github.com/filecoin-project/lotus/chain/vm
        github.com/filecoin-project/lotus/chain/consensus
        github.com/filecoin-project/lotus/chain/messagepool
        github.com/filecoin-project/lotus/chain/stmgr
        github.com/filecoin-project/lotus/node/impl/full
        github.com/filecoin-project/lotus/chain

These last 5 aren't fully investigated, but mostly appear to connect back to the 3 "prune points" identified.

@snadrus
Copy link
Contributor Author

snadrus commented Apr 18, 2024

lprpc.go:  impl.StorageMinerAPI

node/modules is needed by: 
    curio/deps:  SealProofType()
    guidedsetup: JWTSecretName
    tasks: GetParams()

Plan of attack:

  • Get chain/gen out of node/modules
  • lprpc.go: impl.StorageMinerAPI (define this elsewhere)

@snadrus
Copy link
Contributor Author

snadrus commented Apr 18, 2024

This'll get rid of the actors bundle. Other weight loss could include:
sqlite
wasmparser
Rust appears huge as well
go-fil-markets comes along for the ride

According to: go tool nm -size -sort size curio|less

@rjan90
Copy link
Contributor

rjan90 commented Apr 18, 2024

@snadrus Is this part of decoupling/moving curio to a seperate repo? Lotus the chain still needs the actor-bundle so its unclear if this is something that should be merged in this repo

@snadrus
Copy link
Contributor Author

snadrus commented Apr 18, 2024 via email

@jennijuju jennijuju requested a review from rvagg April 18, 2024 16:46
Base automatically changed from feat/sector-ui to master April 18, 2024 19:57
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

3 participants