Commit Graph

635 Commits

Author SHA1 Message Date
Steven Allen
176275267b Merge branch 'feat/nv18' into feat/nv18-fevm 2022-11-22 10:32:26 -08:00
Steven Allen
2651a38f89 Merge branch 'master' into feat/nv18 2022-11-22 10:08:54 -08:00
Steven Allen
e78d1306ee
feat: fvm: add support for looking up past tipset CIDs (#9687)
* feat: add support for generating tipset CIDs

(cherry-picked from feat/nv18-fevm)

* feat: fvm: add support for looking up past tipset CIDs

We do this by adding yet another "getter" to the VM that resolves an
epoch into a TipSetKey.

Co-authored-by: Kevin Li <ychiaoli18@users.noreply.github.com>
2022-11-22 12:41:03 -05:00
vyzo
1d8ebe96bc fix error message when actor doesn't have predictable address 2022-11-11 05:21:08 +02:00
vyzo
6e149d5406 lint 2022-11-10 05:23:55 +02:00
vyzo
6e72910d31 fix account address resolution
it's in the actor state only if it is a v5 (or later) state tree
2022-11-10 05:01:44 +02:00
Steven Allen
b3b9da5bbc fix: avoid returning an error when getting embryo state (#9550)
We need to add full FEVM state support, but that will require merging
master. This is enough for now.

fixes https://github.com/filecoin-project/ref-fvm/issues/1022
2022-11-09 19:47:24 +02:00
Steven Allen
7f81780ffb hack: allow sending from f4 addresses (#9533) 2022-11-09 19:40:02 +02:00
vyzo
a2a9147790 thread epoch timestamp through vmopts 2022-11-09 19:30:08 +02:00
Kevin Li
6c7fd94aa7 api: ethrpc: implement eth_sendRawTransaction (#9334)
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
2022-11-09 19:28:17 +02:00
Steven Allen
ef90ba7cef feat: make actor debugging a build param
And enable for wallaby.

fix build.
2022-11-09 19:22:43 +02:00
vyzo
0b6d1ad20b set predictable address when creating account actors 2022-11-09 11:15:16 +02:00
Steven Allen
c6f2710e1c feat: future proof against new address protocols
This lets us add new address protocols to go-address without implicitly
accepting them in messages on the network.
2022-11-08 12:28:23 -08:00
Steven Allen
8df5b81f24 fix: make test vector extraction work with the FVM
This also ignores the VM "Flush" option and instead, flushes
unconditionally (in the FVM):

1. In the FVM, we don't read blocks on flush (ever).
2. All _uses_ of TVX use a "proxy" blockstore that buffers writes, so
nothing should actually get flushed to lotus.
2022-11-07 16:09:44 -05:00
Aayush
c0b7343e60 Merge branch 'release/v1.18.0' into asr/merge-release-into-master 2022-11-06 14:40:13 -05:00
Aayush
13b59c9c23 Invoker: Use MethodMeta from go-state-types 2022-10-19 15:53:26 -04:00
Geoff Stuart
cdd7f26fb3 Allow setting local bundles for Debug FVM for av 9+ 2022-10-18 12:48:24 -04:00
Geoff Stuart
37be57610c
feat: actors: Integrate datacap actor into lotus (#9348)
* Integrate datacap actor

* Implement datacap actor in chain/builtin
2022-09-21 15:51:28 -04:00
Geoff Stuart
94add978b0
chore: actors: Allow builtin-actors to return a map of methods (#9342)
* Allow builtin-actors to return a map of methods

* go mod

* Fix tests

* Fix tests, check carefully please
2022-09-21 10:56:58 -04:00
Łukasz Magiera
9be712de99 deps: Use latest cbor-gen 2022-09-20 17:30:07 +02:00
Aayush
c0bbaebaf4 more fixes 2022-09-09 21:40:15 -04:00
Aayush
92cc24fca2 support fvm gas tracing 2022-09-09 21:40:15 -04:00
Aayush
e9a3235291 more fixes 2022-09-09 21:40:15 -04:00
Geoff Stuart
642555d0fb Fix discrepancies, run fiximports 2022-09-09 21:40:15 -04:00
Aayush
0efca4d266 introduce v9 actors and nv17 2022-09-09 21:40:15 -04:00
Łukasz Magiera
08b22edd89 fix make gen 2022-08-29 16:25:30 +02:00
Aayush
9812792d46 fix: verifreg: serialize RmDcProposalID as int, not tuple 2022-08-23 16:58:10 -04:00
Aayush
279b1f4317 FVM: record message applied metrics 2022-07-18 10:50:58 -04:00
Aayush Rajasekaran
e950421e87
Merge pull request #9037 from filecoin-project/asr/implicit-limit
FVM: Use MaxInt64 for Implicit Message gas limits
2022-07-15 15:28:31 -04:00
Aayush
7cd0ce4010 FVM: Use MaxInt64 for Implicit Message gas limits 2022-07-15 15:09:12 -04:00
Aayush
474a50252b FVM: always enable tracing for user-triggered executions 2022-07-14 15:41:26 -04:00
Aayush
af525a4cf2 VM: Remove v15 FVM support 2022-07-14 14:55:48 -04:00
Aayush
f9cf25f966 address review 2022-06-29 11:57:46 -04:00
Aayush
a52d584d0c an attempt at cleanup 2022-06-28 19:24:47 -04:00
vyzo
3ad2fc5c4a feat: FVM Debug Dual Execution 2022-06-28 18:00:04 -04:00
Aayush
866693f3d5 fix: fvm: make exectraces match legacyVM some more 2022-06-22 11:29:14 -04:00
Łukasz Magiera
db676acdf8 storage: Cleanup interfaces a bit 2022-06-17 13:52:19 +02:00
Jennifer Wang
51b6b07110 Merge branch 'release/v1.16.0' into jen/master16 2022-06-16 14:24:44 -04:00
Jiaying Wang
3465f3aba3
Merge pull request #8837 from filecoin-project/jen/refactor
chore: refactor:  rename var name for syncing mainnet v15 using FVM
2022-06-16 14:16:52 -04:00
Łukasz Magiera
05cdeb80c3 chore: remove redundant import prefixes 2022-06-15 12:06:22 +02:00
Łukasz Magiera
a9600b8a6f storage: Move extern/sector-storage to storage/sealer 2022-06-14 20:03:38 +02:00
Łukasz Magiera
422f66776f
Merge pull request #8859 from filecoin-project/chore/import-fix
chore: Fix imports
2022-06-14 18:54:03 +02:00
Łukasz Magiera
e65fae28de chore: fix imports 2022-06-14 17:00:51 +02:00
Steven Allen
ddc9425c07 feat: refactor: actor bundling system (#8838)
1. Include the builtin-actors in the lotus source tree.
2. Embed the bundle on build instead of downloading at runtime.
3. Avoid reading the bundle whenever possible by including bundle
   metadata (the bundle CID, the actor CIDs, etc.).
4. Remove everything related to dependency injection.
    1. We're no longer downloading the bundle, so doing anything ahead
       of time doesn't really help.
    2. We register the manifests on init because, unfortunately, they're
       global.
    3. We explicitly load the current actors bundle in the genesis
       state-tree method.
    4. For testing, we just change the in-use bundle with a bit of a
       hack. It's not great, but using dependency injection doesn't make
       any sense either because, again, the manifest information is
       global.
    5. Remove the bundle.toml file. Bundles may be overridden by
       specifying an override path in the parameters file, or an
       environment variable.

fixes #8701
2022-06-13 10:51:49 -07:00
Steven Allen
30981d0fdd
feat: refactor: actor bundling system (#8838)
1. Include the builtin-actors in the lotus source tree.
2. Embed the bundle on build instead of downloading at runtime.
3. Avoid reading the bundle whenever possible by including bundle
   metadata (the bundle CID, the actor CIDs, etc.).
4. Remove everything related to dependency injection.
    1. We're no longer downloading the bundle, so doing anything ahead
       of time doesn't really help.
    2. We register the manifests on init because, unfortunately, they're
       global.
    3. We explicitly load the current actors bundle in the genesis
       state-tree method.
    4. For testing, we just change the in-use bundle with a bit of a
       hack. It's not great, but using dependency injection doesn't make
       any sense either because, again, the manifest information is
       global.
    5. Remove the bundle.toml file. Bundles may be overridden by
       specifying an override path in the parameters file, or an
       environment variable.

fixes #8701
2022-06-13 10:15:00 -07:00
Aayush
d32ed4440d Drop actor meta shimming for testing 2022-06-10 17:30:07 -04:00
jennijuju
41e325e822 chore: refactor: rename var name for syncing mainnet v15 using FVM 2022-06-09 16:53:16 -05:00
Aayush Rajasekaran
fbefd617a2
refactor: rename LOTUS_USE_FVM_EXPERIMENTAL 2022-06-09 11:21:22 -04:00
Aayush
82e439172e Drop actor meta shimming for testing 2022-06-08 13:41:30 -04:00
Geoff Stuart
0c789b06dc Call with no subcalls is nil instead of empty array for backwards compatibility 2022-06-03 15:21:47 -04:00