Merge pull request #1989 from filecoin-project/feat/merge-master
Merge in master into the next
This commit is contained in:
commit
7e7fac05e0
13
README.md
13
README.md
@ -4,14 +4,19 @@
|
|||||||
|
|
||||||
Lotus is an implementation of the Filecoin Distributed Storage Network. For more details about Filecoin, check out the [Filecoin Spec](https://github.com/filecoin-project/specs).
|
Lotus is an implementation of the Filecoin Distributed Storage Network. For more details about Filecoin, check out the [Filecoin Spec](https://github.com/filecoin-project/specs).
|
||||||
|
|
||||||
## Development
|
|
||||||
|
|
||||||
All work is tracked via issues. An attempt at keeping an up-to-date view on remaining work is in the [lotus testnet github project board](https://github.com/filecoin-project/lotus/projects/1).
|
|
||||||
|
|
||||||
## Building & Documentation
|
## Building & Documentation
|
||||||
|
|
||||||
For instructions on how to build lotus from source, please visit [https://docs.lotu.sh](https://docs.lotu.sh) or read the source [here](https://github.com/filecoin-project/lotus/tree/master/documentation).
|
For instructions on how to build lotus from source, please visit [https://docs.lotu.sh](https://docs.lotu.sh) or read the source [here](https://github.com/filecoin-project/lotus/tree/master/documentation).
|
||||||
|
|
||||||
|
## Development
|
||||||
|
|
||||||
|
All work is tracked via issues. An attempt at keeping an up-to-date view on remaining work is in the [lotus testnet github project board](https://github.com/filecoin-project/lotus/projects/1).
|
||||||
|
|
||||||
|
The main branches under development at the moment are:
|
||||||
|
* [`master`](https://github.com/filecoin-project/lotus): current testnet.
|
||||||
|
* [`next`](https://github.com/filecoin-project/lotus/tree/next): working branch with chain-breaking changes.
|
||||||
|
* [`interopnet`](https://github.com/filecoin-project/lotus/tree/interopnet): devnet running one of `next` commits.
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
Dual-licensed under [MIT](https://github.com/filecoin-project/lotus/blob/master/LICENSE-MIT) + [Apache 2.0](https://github.com/filecoin-project/lotus/blob/master/LICENSE-APACHE)
|
Dual-licensed under [MIT](https://github.com/filecoin-project/lotus/blob/master/LICENSE-MIT) + [Apache 2.0](https://github.com/filecoin-project/lotus/blob/master/LICENSE-APACHE)
|
||||||
|
@ -242,6 +242,9 @@ func SetupStorageMiners(ctx context.Context, cs *store.ChainStore, sroot cid.Cid
|
|||||||
st.TotalQualityAdjPower = big.Sub(st.TotalQualityAdjPower, big.NewInt(1))
|
st.TotalQualityAdjPower = big.Sub(st.TotalQualityAdjPower, big.NewInt(1))
|
||||||
return nil
|
return nil
|
||||||
})
|
})
|
||||||
|
if err != nil {
|
||||||
|
return cid.Undef, xerrors.Errorf("mutating state: %w", err)
|
||||||
|
}
|
||||||
|
|
||||||
c, err := vm.Flush(ctx)
|
c, err := vm.Flush(ctx)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -221,6 +221,9 @@ var chainStatObjCmd = &cli.Command{
|
|||||||
base := cid.Undef
|
base := cid.Undef
|
||||||
if cctx.IsSet("base") {
|
if cctx.IsSet("base") {
|
||||||
base, err = cid.Decode(cctx.String("base"))
|
base, err = cid.Decode(cctx.String("base"))
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
stats, err := api.ChainStatObj(ctx, obj, base)
|
stats, err := api.ChainStatObj(ctx, obj, base)
|
||||||
|
11
cli/state.go
11
cli/state.go
@ -351,7 +351,7 @@ var stateReplaySetCmd = &cli.Command{
|
|||||||
return fmt.Errorf("message cid was invalid: %s", err)
|
return fmt.Errorf("message cid was invalid: %s", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
api, closer, err := GetFullNodeAPI(cctx)
|
fapi, closer, err := GetFullNodeAPI(cctx)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -373,7 +373,7 @@ var stateReplaySetCmd = &cli.Command{
|
|||||||
if len(tscids) > 0 {
|
if len(tscids) > 0 {
|
||||||
var headers []*types.BlockHeader
|
var headers []*types.BlockHeader
|
||||||
for _, c := range tscids {
|
for _, c := range tscids {
|
||||||
h, err := api.ChainGetBlock(ctx, c)
|
h, err := fapi.ChainGetBlock(ctx, c)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -383,12 +383,13 @@ var stateReplaySetCmd = &cli.Command{
|
|||||||
|
|
||||||
ts, err = types.NewTipSet(headers)
|
ts, err = types.NewTipSet(headers)
|
||||||
} else {
|
} else {
|
||||||
r, err := api.StateWaitMsg(ctx, mcid, build.MessageConfidence)
|
var r *api.MsgLookup
|
||||||
|
r, err = fapi.StateWaitMsg(ctx, mcid, build.MessageConfidence)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return xerrors.Errorf("finding message in chain: %w", err)
|
return xerrors.Errorf("finding message in chain: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
ts, err = api.ChainGetTipSet(ctx, r.TipSet.Parents())
|
ts, err = fapi.ChainGetTipSet(ctx, r.TipSet.Parents())
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
@ -396,7 +397,7 @@ var stateReplaySetCmd = &cli.Command{
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
res, err := api.StateReplay(ctx, ts.Key(), mcid)
|
res, err := fapi.StateReplay(ctx, ts.Key(), mcid)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return xerrors.Errorf("replay call failed: %w", err)
|
return xerrors.Errorf("replay call failed: %w", err)
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,8 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
var provingCmd = &cli.Command{
|
var provingCmd = &cli.Command{
|
||||||
Name: "proving",
|
Name: "proving",
|
||||||
|
Usage: "View proving information",
|
||||||
Subcommands: []*cli.Command{
|
Subcommands: []*cli.Command{
|
||||||
provingInfoCmd,
|
provingInfoCmd,
|
||||||
provingDeadlinesCmd,
|
provingDeadlinesCmd,
|
||||||
@ -29,7 +30,8 @@ var provingCmd = &cli.Command{
|
|||||||
}
|
}
|
||||||
|
|
||||||
var provingInfoCmd = &cli.Command{
|
var provingInfoCmd = &cli.Command{
|
||||||
Name: "info",
|
Name: "info",
|
||||||
|
Usage: "View current state information",
|
||||||
Action: func(cctx *cli.Context) error {
|
Action: func(cctx *cli.Context) error {
|
||||||
nodeApi, closer, err := lcli.GetStorageMinerAPI(cctx)
|
nodeApi, closer, err := lcli.GetStorageMinerAPI(cctx)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -151,7 +153,8 @@ func epochTime(curr, e abi.ChainEpoch) string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var provingDeadlinesCmd = &cli.Command{
|
var provingDeadlinesCmd = &cli.Command{
|
||||||
Name: "deadlines",
|
Name: "deadlines",
|
||||||
|
Usage: "View the current proving period deadlines information",
|
||||||
Action: func(cctx *cli.Context) error {
|
Action: func(cctx *cli.Context) error {
|
||||||
nodeApi, closer, err := lcli.GetStorageMinerAPI(cctx)
|
nodeApi, closer, err := lcli.GetStorageMinerAPI(cctx)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
Loading…
Reference in New Issue
Block a user