-
Notifications
You must be signed in to change notification settings - Fork 44
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* deps: update to lotus v0.16.0 * refactor: remove unused actor gen code * chore: update actor code generator for v8 * gen: init actor accessors * gen: market actor accessors * gen: multisig actor accessors * gen: power actor accessors * gen: reward actor accessors * gen verifreg actor accessors * gen: miner actor accessors * chore: update miner state extractors - required due to changes in miner actor gen accessors * chore: update market actor extractors - required for market actor gen accessors * gen: builtin accessors * refactor: remove unused map opts lookup - actor accessors now return map opt values * chore: update message test deps - use v8 actor structs * feat: add actor CID lookups - replace with filecoin-project/lotus#8941 when lotus v1.17.0 is cut * chore: update lens interface to match lotus api - required due to lotus update v1.16.0 * refactor: register new actor code in processor * fix: update parsed message extractor with new exitcode * fix: only init VM for network version prior to 13 - ensures we can process message on FVM upgrade boundary * Add is_string column to market_deal_proposal model (#1015) * chore: add is_string column to market_deal_proposal model * fix: many incorrect pointer equality comparisons (#1018) * fix: many incorrect pointer equality comparisons
- Loading branch information
Showing
160 changed files
with
6,411 additions
and
7,026 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,332 @@ | ||
package actors | ||
|
||
import ( | ||
"github.com/filecoin-project/lotus/chain/actors" | ||
builtin0 "github.com/filecoin-project/specs-actors/actors/builtin" | ||
builtin2 "github.com/filecoin-project/specs-actors/v2/actors/builtin" | ||
builtin3 "github.com/filecoin-project/specs-actors/v3/actors/builtin" | ||
builtin4 "github.com/filecoin-project/specs-actors/v4/actors/builtin" | ||
builtin5 "github.com/filecoin-project/specs-actors/v5/actors/builtin" | ||
builtin6 "github.com/filecoin-project/specs-actors/v6/actors/builtin" | ||
builtin7 "github.com/filecoin-project/specs-actors/v7/actors/builtin" | ||
"github.com/ipfs/go-cid" | ||
) | ||
|
||
type Version int | ||
|
||
var LatestVersion = 8 | ||
|
||
var Versions = []int{0, 2, 3, 4, 5, 6, 7, 8} | ||
|
||
const ( | ||
Version0 Version = 0 | ||
Version2 Version = 2 | ||
Version3 Version = 3 | ||
Version4 Version = 4 | ||
Version5 Version = 5 | ||
Version6 Version = 6 | ||
Version7 Version = 7 | ||
Version8 Version = 8 | ||
) | ||
const ( | ||
AccountKey = "account" | ||
CronKey = "cron" | ||
InitKey = "init" | ||
MarketKey = "storagemarket" | ||
MinerKey = "storageminer" | ||
MultisigKey = "multisig" | ||
PaychKey = "paymentchannel" | ||
PowerKey = "storagepower" | ||
RewardKey = "reward" | ||
SystemKey = "system" | ||
VerifregKey = "verifiedregistry" | ||
) | ||
|
||
// GetActorCodeID looks up a builtin actor's code CID by actor version and canonical actor name. | ||
func GetActorCodeID(av Version, name string) (cid.Cid, bool) { | ||
// Actors V8 and above | ||
if c, ok := actors.GetActorCodeID(actors.Version(av), name); ok { | ||
return c, true | ||
} | ||
|
||
// Actors V7 and lower | ||
switch name { | ||
|
||
case AccountKey: | ||
switch av { | ||
|
||
case Version0: | ||
return builtin0.AccountActorCodeID, true | ||
|
||
case Version2: | ||
return builtin2.AccountActorCodeID, true | ||
|
||
case Version3: | ||
return builtin3.AccountActorCodeID, true | ||
|
||
case Version4: | ||
return builtin4.AccountActorCodeID, true | ||
|
||
case Version5: | ||
return builtin5.AccountActorCodeID, true | ||
|
||
case Version6: | ||
return builtin6.AccountActorCodeID, true | ||
|
||
case Version7: | ||
return builtin7.AccountActorCodeID, true | ||
} | ||
|
||
case CronKey: | ||
switch av { | ||
|
||
case Version0: | ||
return builtin0.CronActorCodeID, true | ||
|
||
case Version2: | ||
return builtin2.CronActorCodeID, true | ||
|
||
case Version3: | ||
return builtin3.CronActorCodeID, true | ||
|
||
case Version4: | ||
return builtin4.CronActorCodeID, true | ||
|
||
case Version5: | ||
return builtin5.CronActorCodeID, true | ||
|
||
case Version6: | ||
return builtin6.CronActorCodeID, true | ||
|
||
case Version7: | ||
return builtin7.CronActorCodeID, true | ||
} | ||
|
||
case InitKey: | ||
switch av { | ||
|
||
case Version0: | ||
return builtin0.InitActorCodeID, true | ||
|
||
case Version2: | ||
return builtin2.InitActorCodeID, true | ||
|
||
case Version3: | ||
return builtin3.InitActorCodeID, true | ||
|
||
case Version4: | ||
return builtin4.InitActorCodeID, true | ||
|
||
case Version5: | ||
return builtin5.InitActorCodeID, true | ||
|
||
case Version6: | ||
return builtin6.InitActorCodeID, true | ||
|
||
case Version7: | ||
return builtin7.InitActorCodeID, true | ||
} | ||
|
||
case MarketKey: | ||
switch av { | ||
|
||
case Version0: | ||
return builtin0.StorageMarketActorCodeID, true | ||
|
||
case Version2: | ||
return builtin2.StorageMarketActorCodeID, true | ||
|
||
case Version3: | ||
return builtin3.StorageMarketActorCodeID, true | ||
|
||
case Version4: | ||
return builtin4.StorageMarketActorCodeID, true | ||
|
||
case Version5: | ||
return builtin5.StorageMarketActorCodeID, true | ||
|
||
case Version6: | ||
return builtin6.StorageMarketActorCodeID, true | ||
|
||
case Version7: | ||
return builtin7.StorageMarketActorCodeID, true | ||
} | ||
|
||
case MinerKey: | ||
switch av { | ||
|
||
case Version0: | ||
return builtin0.StorageMinerActorCodeID, true | ||
|
||
case Version2: | ||
return builtin2.StorageMinerActorCodeID, true | ||
|
||
case Version3: | ||
return builtin3.StorageMinerActorCodeID, true | ||
|
||
case Version4: | ||
return builtin4.StorageMinerActorCodeID, true | ||
|
||
case Version5: | ||
return builtin5.StorageMinerActorCodeID, true | ||
|
||
case Version6: | ||
return builtin6.StorageMinerActorCodeID, true | ||
|
||
case Version7: | ||
return builtin7.StorageMinerActorCodeID, true | ||
} | ||
|
||
case MultisigKey: | ||
switch av { | ||
|
||
case Version0: | ||
return builtin0.MultisigActorCodeID, true | ||
|
||
case Version2: | ||
return builtin2.MultisigActorCodeID, true | ||
|
||
case Version3: | ||
return builtin3.MultisigActorCodeID, true | ||
|
||
case Version4: | ||
return builtin4.MultisigActorCodeID, true | ||
|
||
case Version5: | ||
return builtin5.MultisigActorCodeID, true | ||
|
||
case Version6: | ||
return builtin6.MultisigActorCodeID, true | ||
|
||
case Version7: | ||
return builtin7.MultisigActorCodeID, true | ||
} | ||
|
||
case PaychKey: | ||
switch av { | ||
|
||
case Version0: | ||
return builtin0.PaymentChannelActorCodeID, true | ||
|
||
case Version2: | ||
return builtin2.PaymentChannelActorCodeID, true | ||
|
||
case Version3: | ||
return builtin3.PaymentChannelActorCodeID, true | ||
|
||
case Version4: | ||
return builtin4.PaymentChannelActorCodeID, true | ||
|
||
case Version5: | ||
return builtin5.PaymentChannelActorCodeID, true | ||
|
||
case Version6: | ||
return builtin6.PaymentChannelActorCodeID, true | ||
|
||
case Version7: | ||
return builtin7.PaymentChannelActorCodeID, true | ||
} | ||
|
||
case PowerKey: | ||
switch av { | ||
|
||
case Version0: | ||
return builtin0.StoragePowerActorCodeID, true | ||
|
||
case Version2: | ||
return builtin2.StoragePowerActorCodeID, true | ||
|
||
case Version3: | ||
return builtin3.StoragePowerActorCodeID, true | ||
|
||
case Version4: | ||
return builtin4.StoragePowerActorCodeID, true | ||
|
||
case Version5: | ||
return builtin5.StoragePowerActorCodeID, true | ||
|
||
case Version6: | ||
return builtin6.StoragePowerActorCodeID, true | ||
|
||
case Version7: | ||
return builtin7.StoragePowerActorCodeID, true | ||
} | ||
|
||
case RewardKey: | ||
switch av { | ||
|
||
case Version0: | ||
return builtin0.RewardActorCodeID, true | ||
|
||
case Version2: | ||
return builtin2.RewardActorCodeID, true | ||
|
||
case Version3: | ||
return builtin3.RewardActorCodeID, true | ||
|
||
case Version4: | ||
return builtin4.RewardActorCodeID, true | ||
|
||
case Version5: | ||
return builtin5.RewardActorCodeID, true | ||
|
||
case Version6: | ||
return builtin6.RewardActorCodeID, true | ||
|
||
case Version7: | ||
return builtin7.RewardActorCodeID, true | ||
} | ||
|
||
case SystemKey: | ||
switch av { | ||
|
||
case Version0: | ||
return builtin0.SystemActorCodeID, true | ||
|
||
case Version2: | ||
return builtin2.SystemActorCodeID, true | ||
|
||
case Version3: | ||
return builtin3.SystemActorCodeID, true | ||
|
||
case Version4: | ||
return builtin4.SystemActorCodeID, true | ||
|
||
case Version5: | ||
return builtin5.SystemActorCodeID, true | ||
|
||
case Version6: | ||
return builtin6.SystemActorCodeID, true | ||
|
||
case Version7: | ||
return builtin7.SystemActorCodeID, true | ||
} | ||
|
||
case VerifregKey: | ||
switch av { | ||
|
||
case Version0: | ||
return builtin0.VerifiedRegistryActorCodeID, true | ||
|
||
case Version2: | ||
return builtin2.VerifiedRegistryActorCodeID, true | ||
|
||
case Version3: | ||
return builtin3.VerifiedRegistryActorCodeID, true | ||
|
||
case Version4: | ||
return builtin4.VerifiedRegistryActorCodeID, true | ||
|
||
case Version5: | ||
return builtin5.VerifiedRegistryActorCodeID, true | ||
|
||
case Version6: | ||
return builtin6.VerifiedRegistryActorCodeID, true | ||
|
||
case Version7: | ||
return builtin7.VerifiedRegistryActorCodeID, true | ||
} | ||
} | ||
|
||
return cid.Undef, false | ||
} |
Oops, something went wrong.