Commit Graph

421 Commits

Author SHA1 Message Date
Steven Allen
0ab2459fce convert multisig to new actor abstractions 2020-09-21 13:13:38 -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
Steven Allen
025663118f non-destructive diff 2020-09-21 10:30:33 -07:00
Łukasz Magiera
0b5e4a9612 Make GetSectorsForWinningPoSt fast again 2020-09-21 18:28:32 +02:00
Aayush Rajasekaran
b355eb75eb Add compile-time checks that actors interfaces are correctly implemented 2020-09-21 02:19:32 -04:00
Aayush Rajasekaran
a95e34f742 Fix build 2020-09-21 02:02:33 -04:00
Aayush Rajasekaran
ed285f1114 Abstract SectorOnChainInfo and SectorPreCommitOnChainInfo 2020-09-21 01:09:42 -04:00
Łukasz Magiera
b25dd2a00d More correct / fasterer GetSectorsForWinningPoSt 2020-09-20 23:04:45 +02:00
Aayush Rajasekaran
7c3f638f68 Abstract FilterEstimate, PreCommitDepositForPower, and InitialPledgeForPower 2020-09-19 00:41:24 -04:00
Steven Allen
35bce5a5c6 revert post changes
1. Calling the specific partition/deadline APIs is faster.
2. It's _much_ easier to test this way.
2020-09-18 15:40:49 -07: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
8285eda8e5 migrate storage miner info 2020-09-18 14:46:42 -07:00
Steven Allen
8747c6083e abstract over account actor 2020-09-18 14:20:53 -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
37de154a7c Fixup tests 2020-09-18 01:56:21 -04:00
Steven Allen
daa441b989 simplify market diff 2020-09-17 21:48:50 -07:00
Steven Allen
b2ee59024f improve diff logic
* Make diffing work across versions.
* Start porting more chainwatch logic.
2020-09-17 21:39:34 -07:00
Steven Allen
5bcfee0042 make market diffs work across version upgrades 2020-09-17 16:08:54 -07:00
Steven Allen
dc58f71604 remove unnecessary code
Go does have some nice features, once in a while.
2020-09-17 14:59:10 -07:00
Steven Allen
ae38970526 remove WpostProvignPeriod function 2020-09-17 14:56:11 -07:00
Dirk McCormick
c40c1361f0 fix: paych To() 2020-09-17 18:14:07 +02: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
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
e2295c372a Migrate multisig actor 2020-09-17 02:57:45 -04:00
Aayush Rajasekaran
b60614982e Migrate reward actor 2020-09-17 02:42:39 -04:00
Aayush Rajasekaran
9e48dd211a Fixups 2020-09-17 02:34:15 -04:00
Aayush Rajasekaran
b5ba7a0fad Miner migration 2020-09-17 02:21:16 -04:00
hannahhoward
80b6994fe2 feat(market): update state diffing for market actor
Update to abstract actor for markets state diffing. Also move the diff adt functions inside the
abstract actors
2020-09-16 19:14:07 -07:00
Aayush Rajasekaran
b530f25f09 Migrate miner actor 2020-09-16 17:20:25 -04:00
Łukasz Magiera
ccce1a9715
Merge pull request #3877 from filecoin-project/refactor/net-upgrade-paych
Support Network Upgrades: Payment Channel
2020-09-16 20:25:16 +02:00
Aayush Rajasekaran
b4ee519282 Partial progress towards switching to miner and power interfaces 2020-09-16 01:37:49 -04:00
hannahhoward
05c11531b1 feat(paych): convert paych actor
build abstraction for paych actor and switch to using it in payment channel manager and state
predicates
2020-09-15 21:06:04 -07:00
Steven Allen
92471d41d6 migrate precommit deposit function 2020-09-15 16:47:58 -07:00
Steven Allen
02bc5fab26 add power actor address alias 2020-09-15 14:56:00 -07:00
Steven Allen
e1ba4eb5c4 sub reward actor 2020-09-15 14:55:48 -07:00
Steven Allen
4e01fad0d4 start multisig abstraction 2020-09-15 14:44:03 -07:00
Steven Allen
91e9573863 Compile fixes 2020-09-15 12:13:13 -07:00
Steven Allen
6bf7976add fix decode 2020-09-15 10:51:18 -07:00
Steven Allen
00c6397ec9 more progress 2020-09-15 10:46:44 -07:00
Łukasz Magiera
9dad38c9a5 gofmt 2020-09-15 15:29:39 +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
Steven Allen
36f920bcd7 progress 2020-09-14 21:55:49 -07:00
Steven Allen
7fa6c1e8d0 add info method to miner state API 2020-09-14 15:45:00 -07:00
Steven Allen
cc4d5306eb Progress 2020-09-14 15:43:12 -07:00
Łukasz Magiera
683a58195e More terraforming in chain/ 2020-09-14 14:46:38 +02:00
Łukasz Magiera
38f87981c1 Fix some build errors 2020-09-14 13:14:06 +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
39755a294a Update to specs v0.9.6 2020-09-07 15:48:41 -04:00
Jakub Sztandera
d6615b6286
Cleanup many lint warnings
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-05-27 22:53:20 +02:00
Jeromy
8a265a0e8d use exitcode type from specs actors instead of byte 2020-04-02 11:24:38 -07:00
whyrusleeping
767392332e WIP: update sectorbuilder 2020-02-26 14:54:34 -08:00
Łukasz Magiera
cb09e48e8c Some test fixes 2020-02-26 10:05:22 +01:00
Łukasz Magiera
ae634ef7df actors: Remove addrass aliases 2020-02-25 21:54:58 +01:00
Łukasz Magiera
cd10a3126b actors: drop a bunch of type aliases 2020-02-25 21:35:15 +01:00
Łukasz Magiera
ba6d1091f2 pond: Fix node startup 2020-02-24 00:39:45 +01:00
Łukasz Magiera
9f7bd983b3 vm: implement NewActorAddress 2020-02-17 08:59:53 +01:00
Łukasz Magiera
22047d20ef actors: Wire up specs-actors init 2020-02-12 03:13:19 +01:00
Łukasz Magiera
23b662fe7d actors: Remove cborgen for old types 2020-02-12 03:12:39 +01:00
Łukasz Magiera
a4f6b739be genesis: Change template types 2020-02-12 01:58:55 +01:00
Łukasz Magiera
63e801e00f genesis: Cleanup the structure 2020-02-11 21:48:03 +01:00
Łukasz Magiera
4d5c4d89ce stmgr: Update stmgr utils 2020-02-11 03:33:27 +01:00
Łukasz Magiera
91ca4a841a specs-actors: Import miner/power/cron/paych code 2020-02-11 02:43:26 +01:00
Łukasz Magiera
fa2c6605c2 Fix compilation after dep updates 2020-02-11 02:11:58 +01:00
Łukasz Magiera
6dce181314 Update specs-actors 2020-02-10 22:25:22 +01:00
Łukasz Magiera
c0ed0dda8e specs-actors: Fis some test compilation errors 2020-02-10 20:16:36 +01:00
Łukasz Magiera
7e70536bf1 specs-actors: Finish type cleanup 2020-02-10 19:21:10 +01:00
Łukasz Magiera
c72727b4fd specs-actors: Fix most compilation errors 2020-02-09 07:06:32 +01:00
Łukasz Magiera
41daf5ad28 gofmt 2020-02-08 03:18:37 +01:00
Łukasz Magiera
13435aebdc Spec Actors integration 2020-02-08 03:18:32 +01:00
Łukasz Magiera
1d0d429435 actors: Drop refs to multisig_actor.go 2020-02-06 20:49:21 +01:00
Łukasz Magiera
604c234484 Merge remote-tracking branch 'origin/master' into testnet/3 2020-02-06 20:32:25 +01:00
Łukasz Magiera
72c89ab89b Merge pull request #1223 from filecoin-project/fix/squash-forks
squash forks and use correct amt library everywhere
2020-02-06 20:14:55 +01:00
steven004
709fd12b7f better power show 2020-02-06 14:25:30 +08:00
whyrusleeping
411a69233b merge miner and miner2 files 2020-02-05 17:07:29 -08:00
Łukasz Magiera
cbf63aab1e Merge branch 'master' into testnet/3 2020-02-05 21:27:04 +01:00
whyrusleeping
faf05cafcf squash forks and use correct amt library everywhere 2020-02-04 18:26:42 -08:00
whyrusleeping
028a113737 Make it all build 2020-02-04 14:19:05 -08:00
Jakub Sztandera
ad9e4db3d6
Reduce sig import locations
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-04 15:12:10 +01:00
Jakub Sztandera
5e6ab42cb8
Don't depend on ffi
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-04 15:12:04 +01:00
Jakub Sztandera
54076e9a6b Invoker autoshim
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-04 07:46:24 +01:00
whyrusleeping
9cee31193c clean up tests and fix cli commands 2020-02-03 19:37:55 -08:00
whyrusleeping
30a922513b finish the shimming, pull shim code into separate file 2020-02-03 18:52:18 -08:00
whyrusleeping
8c169bb236 add to the shim, get tests passing 2020-02-03 18:52:18 -08:00
whyrusleeping
cd976ad79f tests are mostly passing! 2020-02-03 18:52:18 -08:00
whyrusleeping
baa3d09577 WIP: one more step before distraction 2020-02-03 18:52:18 -08:00
whyrusleeping
c73c5987c7 WIP: integrate multisig actor from specs-actors 2020-02-03 18:52:18 -08:00
whyrusleeping
dfe87c9f6f update to latest hamt changes 2020-02-03 18:52:18 -08:00
whyrusleeping
01b6ddbbd3 add a test to ensure there are no off-by-one errors in fork activation logic 2020-01-31 15:52:39 -08:00
whyrusleeping
d117cb61b6 change withUpdates to match fork height logic 2020-01-30 21:20:57 -08:00
whyrusleeping
d70ebd2ba5 some code review 2020-01-30 21:10:37 -08:00
whyrusleeping
cda7f08b76 use less than, not equals 2020-01-30 21:05:41 -08:00
Whyrusleeping
7402b14df3
Update chain/actors/actor_miner2.go
Co-Authored-By: Łukasz Magiera <magik6k@users.noreply.github.com>
2020-01-30 17:51:19 -08:00
whyrusleeping
0622eb7634 put miner changes behind a fork switch 2020-01-30 17:36:33 -08:00
whyrusleeping
8ad8fa902d extra careful power checks on slashing 2020-01-30 16:36:18 -08:00
Jakub Sztandera
f2340579a5
Fix power calculations
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-01-30 14:01:47 -08:00
whyrusleeping
16523c2ef9 fixup tests 2020-01-22 12:56:40 -08:00
whyrusleeping
6d9ac84359 add a CLI for multisig wallets 2020-01-21 11:02:51 -08:00