Łukasz Magiera
c41777dcd2
API proxy struct codegen ( #5854 )
...
* mostly working api proxy gen
* api: Consistent api names
* fix docsgen
* regenerate api struct
* api: expand external interfaces
* Add missing gen files
* apigen: fix perm detection
* api: Move perm tags to the interface
* gofmt
* worker perms
* docsgen
* docsgen: ignore tag comments
* apigen: add codegen warning
* gofmt
* missing actor type
* docsgen
* make linter happy
* fix lint
* apigen: use directives for tags
* docsgen
* regen openrpc docs
2021-03-23 13:42:56 +01:00
Łukasz Magiera
448813d2fe
Merge pull request #5695 from filecoin-project/feat/segregate-blockstores
...
segregate chain and state blockstores
2021-03-03 10:53:46 +01:00
Raúl Kripalani
3795cc2bd2
segregate chain and state blockstores.
...
This paves the way for better object lifetime management.
Concretely, it makes it possible to:
- have different stores backing chain and state data.
- having the same datastore library, but using different parameters.
- attach different caching layers/policies to each class of data, e.g.
sizing caches differently.
- specifying different retention policies for chain and state data.
This separation is important because:
- access patterns/frequency of chain and state data are different.
- state is derivable from chain, so one could never expunge the chain
store, and only retain state objects reachable from the last finality
in the state store.
2021-02-28 22:49:44 +00:00
Raúl Kripalani
9f0c68bb70
fix unused import post-merge.
2021-02-28 19:57:37 +00:00
Raúl Kripalani
7f0f7d0b36
Merge branch 'master' into refactor/lib/blockstore
2021-02-28 19:55:23 +00:00
Aayush Rajasekaran
48bce386cd
Correct some logs
2021-02-28 01:18:29 -05:00
whyrusleeping
e387f3810e
add code cid to stateReadState output
2021-02-09 14:18:19 -08:00
Łukasz Magiera
8f603717a6
Merge remote-tracking branch 'origin/master' into steb/refactor-consistent-tipset-methods
2021-02-05 13:08:49 +01:00
whyrusleeping
0efb4ca3a7
add an api endpoint to get pending transactions for multisigs
2021-02-03 20:46:10 -08:00
Łukasz Magiera
332ea8a126
Merge remote-tracking branch 'origin/master' into feat/deal-batch-publish
2021-02-02 18:21:14 +01:00
Łukasz Magiera
56a9d05491
Merge remote-tracking branch 'origin/master' into steb/refactor-consistent-tipset-methods
2021-01-30 12:05:21 +01:00
Raúl Kripalani
b0cbc932bd
consolidate all blockstores in blockstore package.
2021-01-29 20:01:00 +00:00
Aayush Rajasekaran
29d3d746a3
Build a WindowPoSt disputer
2021-01-25 17:26:09 -05:00
Dirk McCormick
adac340f3f
feat: batch publish deal messages
2021-01-25 14:25:57 +01:00
Aayush Rajasekaran
ab90a3b2bc
Actors update: MinerInfo.SealProofType has been removed
2021-01-21 15:21:19 -08:00
Aayush Rajasekaran
82635f2515
Rename Deadline.PoStSubmissions to PartitionsPoSted
2021-01-21 15:21:19 -08:00
Dirk McCormick
827a473391
feat: expose StateSearchMessage on gateway
2021-01-19 11:27:43 +01:00
Steven Allen
b8e3808c4f
Make state tipset usage consistent in the API
...
_Always_ (almost) use the tipset's parent state, instead of computing.
Exceptions:
* MinerGetBaseInfo. Fixing this would break things so we need to be
careful (although we could bump the API version, fix it, then fix the call
sites).
* StateReplay. This is replaying a message on top of the given tipset.
* GasEstimateGasLimit. This executes the message on-top-of the tipset's
computed state (unlike call which executes it on the tipset's parent state).
* Having this method and Call apply the message at different heights is really
weird.
2020-12-09 11:29:40 -08:00
Dirk McCormick
239e180683
feat: markets - separate watching for pre-commit from prove-commit
2020-11-24 13:24:41 -08:00
Łukasz Magiera
7d540905ac
Don't return nil in StateSectorPreCommitInfo
2020-11-23 12:14:49 +01:00
leviok
9fe3649dd2
correct it
2020-11-23 11:08:21 +08:00
leviok
9b199f0476
fix nil pointer
2020-11-23 11:08:21 +08:00
Steven Allen
869867e92e
fix compile
2020-11-16 19:04:17 +01:00
Steven Allen
508375a55c
Upgrade seal proof version in miner info after the upgrade.
...
This is terrible, but we don't (currently) update this in the miner info.
Q: Maybe we should delay this by a few epochs? Some pre-commits could fail if we
get a reorg.
2020-11-16 19:04:17 +01:00
Aayush Rajasekaran
5ff42505e8
Add a StateDecodeParams method
2020-10-29 22:04:33 -04:00
Łukasz Magiera
660236b224
Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers
2020-10-23 23:25:35 +02:00
Łukasz Magiera
36816fb4f3
Fix list-asks, deals with non-genesis miners in lite-mode
2020-10-23 17:08:21 +02:00
Dirk McCormick
906286fdbe
feat: lite-mode - CLI tests for lotus client
commands
2020-10-23 15:02:49 +02:00
Dirk McCormick
92942d44d1
feat: lite-mode - market storage and retrieval clients
2020-10-23 15:02:26 +02:00
Aayush Rajasekaran
d24d3e420d
Fix StateReplay to use provided tipset
2020-10-19 14:27:04 -04:00
Łukasz Magiera
7ac5dc55d0
Merge remote-tracking branch 'origin/master' into feat/async-restartable-workers
2020-10-17 13:45:11 +02:00
Łukasz Magiera
4a057d84b8
Merge pull request #4422 from filecoin-project/fix/message-list
...
fix message list api
2020-10-16 20:52:34 +02:00
Aayush Rajasekaran
2fd4a97698
Remove StateTransplant, modify StateReplay
2020-10-15 22:54:29 -04:00
Aayush Rajasekaran
6f86b95f62
Remove StateMsgGasCost
2020-10-15 21:03:02 -04:00
Aayush Rajasekaran
99c07703f8
Add a new StateReplay CLI/API endpoint
2020-10-15 19:47:02 -04:00
Aayush Rajasekaran
7826cc0bab
Rename StateReplay to StateTransplant
2020-10-15 19:14:53 -04:00
Aayush Rajasekaran
cb801d47c7
Add GasCost to InvocResult
2020-10-15 18:48:51 -04:00
whyrusleeping
a931ff94e9
fix message list api
2020-10-15 08:54:36 -07:00
Aayush Rajasekaran
ce54110228
Add message CID to InvocResult
2020-10-14 00:06:22 -04:00
Łukasz Magiera
b74a3229f8
fsm: process expired-ticket sectors
2020-10-13 21:35:41 +02:00
Aayush Rajasekaran
83624a8858
Rename StateVMCirculatingSupply to StateVMCirculatingSupplyInternal
2020-10-12 16:41:27 -04:00
Aayush Rajasekaran
96e1dfd8d7
Add an endpoint for precise circulating supply
2020-10-12 16:38:29 -04:00
Łukasz Magiera
fdaa9c14ad
Merge remote-tracking branch 'origin/master' into feat/signing-backends
2020-10-09 20:36:51 +02:00
Dirk McCormick
b2834baa4b
feat: add msig available balance and vested to lite mode
2020-10-09 11:51:20 +02:00
Dirk McCormick
767611247c
feat: add RPC for StateWaitMsg
2020-10-09 11:45:16 +02:00
Dirk McCormick
2719adc1b1
feat: lite-mode - thin client for chan & state
2020-10-09 11:43:03 +02:00
Dirk McCormick
00a14de094
feat: gateway - StateLookupID
2020-10-09 11:43:03 +02:00
Łukasz Magiera
6e8efb9d2c
gofmt
2020-10-09 01:27:49 +02:00
Łukasz Magiera
f3dc730b05
wallet: Add metadata to WalletAPI.WalletSign
2020-10-09 01:27:38 +02:00
Łukasz Magiera
8783c7434e
Merge remote-tracking branch 'origin/master' into feat/signing-backends
2020-10-09 00:50:41 +02:00
Aayush Rajasekaran
fe5b32026a
Add some new endpoints for querying Msig info
2020-10-08 15:51:21 -04:00
Steven Allen
e8253d22c6
only forbid Call* at expensive forks
2020-10-07 16:14:11 -07:00
Steven Allen
a4e954197c
retry StateCall at different height if we're at an expensive fork height
2020-10-07 16:03:42 -07:00
Steven Allen
8292d60196
Merge branch 'master' into asr/spec-v1
2020-10-02 18:03:03 -07:00
Aayush Rajasekaran
93e4eae94c
Some helpers for verifreg work
2020-10-01 04:49:38 -04:00
Steven Allen
8dcbd525da
abstract over deal collateral
2020-09-30 13:30:24 -07:00
Steven Allen
8b35f480c4
initial vm conversion
...
We're probably going to want to change some of these design decisions down the
road, but this is a good starting point.
* We may want to use a more general test for "is actor valid at epoch". Maybe
just a function?
* I'd like to push some of the actor metadata down into the actor types
themselves. Ideally, we'd be able to register actors with a simple
`Register(validation, manyActors...)` call.
2020-09-25 12:49:39 -07:00
Aayush Rajasekaran
476e7992e8
Add an error return to all actor state interface methods
2020-09-23 01:51:38 -04:00
Aayush Rajasekaran
d56da1b014
Refinements to stmgr and utils
2020-09-22 01:34:20 -04:00
Steven Allen
d33dd4f7bc
more renames
2020-09-21 16:01:29 -07:00
Steven Allen
f9a896f6f2
fix compile
2020-09-21 13:10:41 -07:00
Steven Allen
24ae9205fe
cross-version state tree diff
2020-09-21 12:50:12 -07:00
Steven Allen
4cf0c105eb
optimize sector loading
...
And avoid exposing "arrays" via the miner abstraction. We may change these
structures later.
2020-09-21 12:12:08 -07:00
Aayush Rajasekaran
7c3f638f68
Abstract FilterEstimate, PreCommitDepositForPower, and InitialPledgeForPower
2020-09-19 00:41:24 -04:00
Steven Allen
1bf3b4989d
rename imports to match actors code
...
`sed -i 's/\bv0\(\w\)\(\w*\)/\L\1\E\20/g' **/*.go`
2020-09-18 14:59:27 -07:00
Steven Allen
fb2b25c297
finish upgrading chainwatch
2020-09-18 13:43:30 -07:00
Łukasz Magiera
70faa36b7f
Merge remote-tracking branch 'origin/master' into refactor/net-upgrade
2020-09-18 19:29:06 +02:00
Aayush Rajasekaran
fce423c743
Appease the linter and get everything building
2020-09-18 02:14:18 -04:00
Łukasz Magiera
6eda53565f
Most tests passing
2020-09-17 17:30:24 +02:00
Aayush Rajasekaran
31ff5230bb
Get State API almost working
2020-09-17 05:05:32 -04:00
Aayush Rajasekaran
053cfc1cc7
Migrate verifreg actor
2020-09-17 03:55:23 -04:00
hannahhoward
691bd9f442
feat(markets): complete markets conversion
...
complete markets conversion to using chain/actors types, also replacing DealProposal/DealState
interfaces with structs
2020-09-17 00:43:14 -07:00
Aayush Rajasekaran
7115485b0a
Add a getter for network version
2020-09-16 21:56:02 -04:00
Aayush Rajasekaran
b530f25f09
Migrate miner actor
2020-09-16 17:20:25 -04:00
Aayush Rajasekaran
90853e24cf
Add a boolean HasMinPower to return of GetPower
2020-09-16 01:47:24 -04:00
Steven Allen
454c382e7e
migrate StateMinerInitialPledgeCollateral
2020-09-15 18:05:33 -07:00
Steven Allen
92471d41d6
migrate precommit deposit function
2020-09-15 16:47:58 -07:00
Steven Allen
4e01fad0d4
start multisig abstraction
2020-09-15 14:44:03 -07:00
Steven Allen
c64f983900
migrate StateMinserSectorCount
2020-09-15 12:09:39 -07:00
Steven Allen
00c6397ec9
more progress
2020-09-15 10:46:44 -07:00
Łukasz Magiera
d4a7732d0a
Merge pull request #3800 from filecoin-project/asr/gascost
...
Add an API to get detailed gas costs for a message
2020-09-15 19:13:20 +02:00
Łukasz Magiera
4419850195
state api impl fixes
2020-09-15 15:29:25 +02:00
Łukasz Magiera
4dabab5ce6
state manager progress
2020-09-15 13:04:45 +02:00
Aayush Rajasekaran
6acd3d6028
Fix MsigGetAvailableBalance
2020-09-14 21:12:32 -04:00
Steven Allen
cc4d5306eb
Progress
2020-09-14 15:43:12 -07:00
Steven Allen
02dcb5e182
Merge branch 'master' into refactor/net-upgrade
2020-09-14 14:53:57 -07:00
Steven Allen
9804310cc8
Update specs-actors to 0.9.10
...
Moves the Keyer type (and helpers) into go-state-types.
2020-09-14 14:32:57 -07:00
Aayush Rajasekaran
0edcae9e04
Fixup new command
2020-09-14 14:40:38 -04:00
Aayush Rajasekaran
d1850ea27d
Add an API to get detailed gas costs for a message
2020-09-14 14:40:13 -04:00
Łukasz Magiera
06ec571c20
Merge remote-tracking branch 'origin/master' into refactor/net-upgrade
2020-09-14 15:09:52 +02:00
Steven Allen
d3594835c4
[WIP] Network upgrade support
...
This patch starts adding support for network upgrades.
* It adds an actors abstraction layer for loading abstract (cross-version) actors.
* It starts switching over to a shared deadline type.
* It adds an abstraction for ADTs (hamt/amt).
* It removes the callback-based API in the StateManager (difficult to abstract
across actor versions).
* It _does not_ actually add support for actors v2. We can do that in a followup
patch but that should be relatively easy.
This patch is heavily WIP and does not compile. Feel free to push changes
directly to this branch.
Notes:
* State tree access now needs a network version, because the HAMT type will change.
* I haven't figured out a nice way to abstract over changes to the _message_
types. However, many of them will be type aliased to actors v0 in actors v2 so
we can likely continue using the v0 versions (or use the v2 versions
everywhere). I've been renaming imports to `v0*` to make it clear that we're
importing types from a _specific_ actors version.
TODO:
* Consider merging incremental improvements? We'd have to get this compiling
again first but we could merge in the new abstractions, and slowly switch over.
* Finish migrating to the new abstractions.
* Remove all actor state types from the public API. See `miner.State.Info()` for
the planned approach here.
* Fix the tests. This is likely going to be a massive pain.
2020-09-11 20:16:29 -07:00
Aayush Rajasekaran
774e068436
Update to specs-actors v0.9.8
2020-09-10 17:41:55 -04:00
Jakub Sztandera
2d3f92aeed
Introduce beacon Schedule
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
Łukasz Magiera
9e9856bb45
Merge pull request #3590 from filecoin-project/asr/multisig
...
Multisig API additions
2020-09-10 17:04:48 +02:00
Aayush Rajasekaran
6eea5dd109
Update to specs 0.9.7 and markets 0.6.0
2020-09-07 17:11:32 -04:00
Aayush Rajasekaran
39755a294a
Update to specs v0.9.6
2020-09-07 15:48:41 -04:00
Aayush Rajasekaran
aaad01105e
Msig: Introduce an API & CLI to calculate amount that vests between 2 tipsets
2020-09-05 23:42:31 -04:00
Łukasz Magiera
f90cfda2e6
wallet: Add interface layer
2020-09-04 22:18:03 +02:00
Steven Allen
5733c71c50
Lint everything
...
We were ignoring quite a few error cases, and had one case where we weren't
actually updating state where we wanted to. Unfortunately, if the linter doesn't
pass, nobody has any reason to actually check lint failures in CI.
There are three remaining XXXs marked in the code for lint.
2020-08-20 20:46:36 -07:00
Sami Mäkelä
74f35c88ad
checking verifreg handling
2020-08-19 15:27:50 +03:00