From 7f4e3166ab647f852948b22342fdb6bf8ff3e5c8 Mon Sep 17 00:00:00 2001 From: Piotr Galar Date: Fri, 14 Jun 2024 08:20:50 +0200 Subject: [PATCH 01/10] fix: ci: do not use deprecated --debug goreleaser flag (#12086) --- .github/workflows/release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ce3ba6e98..12ea6e3f9 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -119,8 +119,8 @@ jobs: - uses: goreleaser/goreleaser-action@7ec5c2b0c6cdda6e8bbb49444bc797dd33d74dd8 # v5.0.0 with: distribution: goreleaser-pro - version: latest - args: release --clean --debug ${{ env.PUBLISH == 'false' && '--snapshot' || '' }} + version: 2.0.1 + args: release --clean ${{ env.PUBLISH == 'false' && '--snapshot' || '' }} workdir: lotus env: GITHUB_TOKEN: ${{ env.PUBLISH == 'true' && secrets.GORELEASER_GITUB_TOKEN || github.token || '' }} From 6f1fc67f7857cc2c0edfaf8c44cb4e8c3aabc013 Mon Sep 17 00:00:00 2001 From: Peter Rabbitson Date: Fri, 14 Jun 2024 03:33:31 +0200 Subject: [PATCH 02/10] chore: deals: remove forgotten graphsync references (#12084) --- metrics/metrics.go | 79 ---------------------------------------------- node/builder.go | 1 - 2 files changed, 80 deletions(-) diff --git a/metrics/metrics.go b/metrics/metrics.go index 85b9d82ec..c47642dc4 100644 --- a/metrics/metrics.go +++ b/metrics/metrics.go @@ -74,22 +74,6 @@ var ( PeerCount = stats.Int64("peer/count", "Current number of FIL peers", stats.UnitDimensionless) APIRequestDuration = stats.Float64("api/request_duration_ms", "Duration of API requests", stats.UnitMilliseconds) - // graphsync - - GraphsyncReceivingPeersCount = stats.Int64("graphsync/receiving_peers", "number of peers we are receiving graphsync data from", stats.UnitDimensionless) - GraphsyncReceivingActiveCount = stats.Int64("graphsync/receiving_active", "number of active receiving graphsync transfers", stats.UnitDimensionless) - GraphsyncReceivingCountCount = stats.Int64("graphsync/receiving_pending", "number of pending receiving graphsync transfers", stats.UnitDimensionless) - GraphsyncReceivingTotalMemoryAllocated = stats.Int64("graphsync/receiving_total_allocated", "amount of block memory allocated for receiving graphsync data", stats.UnitBytes) - GraphsyncReceivingTotalPendingAllocations = stats.Int64("graphsync/receiving_pending_allocations", "amount of block memory on hold being received pending allocation", stats.UnitBytes) - GraphsyncReceivingPeersPending = stats.Int64("graphsync/receiving_peers_pending", "number of peers we can't receive more data from cause of pending allocations", stats.UnitDimensionless) - - GraphsyncSendingPeersCount = stats.Int64("graphsync/sending_peers", "number of peers we are sending graphsync data to", stats.UnitDimensionless) - GraphsyncSendingActiveCount = stats.Int64("graphsync/sending_active", "number of active sending graphsync transfers", stats.UnitDimensionless) - GraphsyncSendingCountCount = stats.Int64("graphsync/sending_pending", "number of pending sending graphsync transfers", stats.UnitDimensionless) - GraphsyncSendingTotalMemoryAllocated = stats.Int64("graphsync/sending_total_allocated", "amount of block memory allocated for sending graphsync data", stats.UnitBytes) - GraphsyncSendingTotalPendingAllocations = stats.Int64("graphsync/sending_pending_allocations", "amount of block memory on hold from sending pending allocation", stats.UnitBytes) - GraphsyncSendingPeersPending = stats.Int64("graphsync/sending_peers_pending", "number of peers we can't send more data to cause of pending allocations", stats.UnitDimensionless) - // chain ChainNodeHeight = stats.Int64("chain/node_height", "Current Height of the node", stats.UnitDimensionless) ChainNodeHeightExpected = stats.Int64("chain/node_height_expected", "Expected Height of the node", stats.UnitDimensionless) @@ -580,56 +564,6 @@ var ( Aggregation: view.Sum(), } - // graphsync - GraphsyncReceivingPeersCountView = &view.View{ - Measure: GraphsyncReceivingPeersCount, - Aggregation: view.LastValue(), - } - GraphsyncReceivingActiveCountView = &view.View{ - Measure: GraphsyncReceivingActiveCount, - Aggregation: view.LastValue(), - } - GraphsyncReceivingCountCountView = &view.View{ - Measure: GraphsyncReceivingCountCount, - Aggregation: view.LastValue(), - } - GraphsyncReceivingTotalMemoryAllocatedView = &view.View{ - Measure: GraphsyncReceivingTotalMemoryAllocated, - Aggregation: view.LastValue(), - } - GraphsyncReceivingTotalPendingAllocationsView = &view.View{ - Measure: GraphsyncReceivingTotalPendingAllocations, - Aggregation: view.LastValue(), - } - GraphsyncReceivingPeersPendingView = &view.View{ - Measure: GraphsyncReceivingPeersPending, - Aggregation: view.LastValue(), - } - GraphsyncSendingPeersCountView = &view.View{ - Measure: GraphsyncSendingPeersCount, - Aggregation: view.LastValue(), - } - GraphsyncSendingActiveCountView = &view.View{ - Measure: GraphsyncSendingActiveCount, - Aggregation: view.LastValue(), - } - GraphsyncSendingCountCountView = &view.View{ - Measure: GraphsyncSendingCountCount, - Aggregation: view.LastValue(), - } - GraphsyncSendingTotalMemoryAllocatedView = &view.View{ - Measure: GraphsyncSendingTotalMemoryAllocated, - Aggregation: view.LastValue(), - } - GraphsyncSendingTotalPendingAllocationsView = &view.View{ - Measure: GraphsyncSendingTotalPendingAllocations, - Aggregation: view.LastValue(), - } - GraphsyncSendingPeersPendingView = &view.View{ - Measure: GraphsyncSendingPeersPending, - Aggregation: view.LastValue(), - } - // rcmgr RcmgrAllowConnView = &view.View{ Measure: RcmgrAllowConn, @@ -710,19 +644,6 @@ var views = []*view.View{ PeerCountView, APIRequestDurationView, - GraphsyncReceivingPeersCountView, - GraphsyncReceivingActiveCountView, - GraphsyncReceivingCountCountView, - GraphsyncReceivingTotalMemoryAllocatedView, - GraphsyncReceivingTotalPendingAllocationsView, - GraphsyncReceivingPeersPendingView, - GraphsyncSendingPeersCountView, - GraphsyncSendingActiveCountView, - GraphsyncSendingCountCountView, - GraphsyncSendingTotalMemoryAllocatedView, - GraphsyncSendingTotalPendingAllocationsView, - GraphsyncSendingPeersPendingView, - RcmgrAllowConnView, RcmgrBlockConnView, RcmgrAllowStreamView, diff --git a/node/builder.go b/node/builder.go index cadd5c64c..2ea9dcac5 100644 --- a/node/builder.go +++ b/node/builder.go @@ -99,7 +99,6 @@ const ( RunHelloKey RunChainExchangeKey - RunChainGraphsync RunPeerMgrKey HandleIncomingBlocksKey From ab1cd85afdb550cae7f1b3224b413a9668b554a5 Mon Sep 17 00:00:00 2001 From: Peter Rabbitson Date: Mon, 17 Jun 2024 08:01:20 +0200 Subject: [PATCH 03/10] chore: types: remove more items forgotten after markets (#12095) * chore: cleanup: remove more items forgotten after markets * .gz somehow reappeared after https://github.com/filecoin-project/lotus/pull/11625 --- .github/pull_request_template.md | 2 +- api/api_full.go | 23 ----------- api/docgen/docgen.go | 6 --- api/types.go | 30 -------------- build/openrpc/full.json.gz | Bin 35935 -> 0 bytes build/openrpc/gateway.json.gz | Bin 12258 -> 0 bytes build/openrpc/miner.json.gz | Bin 16475 -> 0 bytes build/openrpc/worker.json.gz | Bin 6048 -> 0 bytes cmd/lotus-miner/main.go | 38 +----------------- go.mod | 1 - go.sum | 12 ------ itests/kit/node_opts.go | 9 ----- lib/promise/promise.go | 53 ------------------------- lib/promise/promise_test.go | 65 ------------------------------- node/modules/storageminer.go | 4 -- node/repo/fsrepo.go | 36 ----------------- node/repo/fsrepo_ds.go | 17 ++++---- node/repo/memrepo.go | 8 ---- scripts/generate-lotus-cli.py | 2 +- 19 files changed, 14 insertions(+), 292 deletions(-) delete mode 100644 build/openrpc/full.json.gz delete mode 100644 build/openrpc/gateway.json.gz delete mode 100644 build/openrpc/miner.json.gz delete mode 100644 build/openrpc/worker.json.gz delete mode 100644 lib/promise/promise.go delete mode 100644 lib/promise/promise_test.go diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index b5843c5b3..642209350 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -15,7 +15,7 @@ Before you mark the PR ready for review, please make sure that: - [ ] PR title is in the form of of `: : ` - example: ` fix: mempool: Introduce a cache for valid signatures` - `PR type`: fix, feat, build, chore, ci, docs, perf, refactor, revert, style, test - - `area`, e.g. api, chain, state, market, mempool, multisig, networking, paych, proving, sealing, wallet, deps + - `area`, e.g. api, chain, state, mempool, multisig, networking, paych, proving, sealing, wallet, deps - [ ] If the PR affects users (e.g., new feature, bug fix, system requirements change), update the CHANGELOG.md and add details to the UNRELEASED section. - [ ] New features have usage guidelines and / or documentation updates in - [ ] [Lotus Documentation](https://lotus.filecoin.io) diff --git a/api/api_full.go b/api/api_full.go index b82b172eb..5d2f6d417 100644 --- a/api/api_full.go +++ b/api/api_full.go @@ -6,7 +6,6 @@ import ( "fmt" "time" - "github.com/google/uuid" blocks "github.com/ipfs/go-block-format" "github.com/ipfs/go-cid" @@ -1052,8 +1051,6 @@ type MarketDeal struct { State MarketDealState } -type RemoteStoreID = uuid.UUID - type InvocResult struct { MsgCid cid.Cid Msg *types.Message @@ -1064,11 +1061,6 @@ type InvocResult struct { Duration time.Duration } -type MethodCall struct { - types.MessageReceipt - Error string -} - type IpldObject struct { Cid cid.Cid Obj interface{} @@ -1180,21 +1172,6 @@ type BlockTemplate struct { WinningPoStProof []builtin.PoStProof } -type DataSize struct { - PayloadSize int64 - PieceSize abi.PaddedPieceSize -} - -type DataCIDSize struct { - PayloadSize int64 - PieceSize abi.PaddedPieceSize - PieceCID cid.Cid -} - -type CommPRet struct { - Root cid.Cid - Size abi.UnpaddedPieceSize -} type HeadChange struct { Type string Val *types.TipSet diff --git a/api/docgen/docgen.go b/api/docgen/docgen.go index eace7a9a1..cba7bb6b5 100644 --- a/api/docgen/docgen.go +++ b/api/docgen/docgen.go @@ -16,7 +16,6 @@ import ( "github.com/google/uuid" blocks "github.com/ipfs/go-block-format" "github.com/ipfs/go-cid" - textselector "github.com/ipld/go-ipld-selector-text-lite" pubsub "github.com/libp2p/go-libp2p-pubsub" "github.com/libp2p/go-libp2p/core/metrics" "github.com/libp2p/go-libp2p/core/network" @@ -91,9 +90,6 @@ func init() { addExample(pid) addExample(&pid) - textSelExample := textselector.Expression("Links/21/Hash/Links/42/Hash") - apiSelExample := api.Selector("Links/21/Hash/Links/42/Hash") - block := blocks.Block(&blocks.BasicBlock{}) ExampleValues[reflect.TypeOf(&block).Elem()] = block @@ -124,8 +120,6 @@ func init() { addExample(api.PCHInbound) addExample(time.Minute) - addExample(&textSelExample) - addExample(&apiSelExample) addExample(network.ReachabilityPublic) addExample(build.TestNetworkVersion) allocationId := verifreg.AllocationId(0) diff --git a/api/types.go b/api/types.go index a79615f12..61f6cb8ba 100644 --- a/api/types.go +++ b/api/types.go @@ -1,7 +1,6 @@ package api import ( - "encoding/json" "time" "github.com/google/uuid" @@ -9,7 +8,6 @@ import ( pubsub "github.com/libp2p/go-libp2p-pubsub" "github.com/libp2p/go-libp2p/core/network" "github.com/libp2p/go-libp2p/core/peer" - ma "github.com/multiformats/go-multiaddr" "github.com/filecoin-project/go-address" "github.com/filecoin-project/go-state-types/abi" @@ -19,27 +17,6 @@ import ( "github.com/filecoin-project/lotus/node/modules/dtypes" ) -type MultiaddrSlice []ma.Multiaddr - -func (m *MultiaddrSlice) UnmarshalJSON(raw []byte) (err error) { - var temp []string - if err := json.Unmarshal(raw, &temp); err != nil { - return err - } - - res := make([]ma.Multiaddr, len(temp)) - for i, str := range temp { - res[i], err = ma.NewMultiaddr(str) - if err != nil { - return err - } - } - *m = res - return nil -} - -var _ json.Unmarshaler = new(MultiaddrSlice) - type ObjStat struct { Size uint64 Links uint64 @@ -158,13 +135,6 @@ type MessagePrototype struct { ValidNonce bool } -// Selector specifies ipld selector string -// - if the string starts with '{', it's interpreted as json selector string -// see https://ipld.io/specs/selectors/ and https://ipld.io/specs/selectors/fixtures/selector-fixtures-1/ -// - otherwise the string is interpreted as ipld-selector-text-lite (simple ipld path) -// see https://github.com/ipld/go-ipld-selector-text-lite -type Selector string - type MinerInfo struct { Owner address.Address // Must be an ID-address. Worker address.Address // Must be an ID-address. diff --git a/build/openrpc/full.json.gz b/build/openrpc/full.json.gz deleted file mode 100644 index 08dda7784c666f634566edc12e0a9ce7f8908c37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35935 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 GW|mFzH5i0Jg&5vrzzQ5b7V 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%0AaDkS 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 B3_kz> diff --git a/build/openrpc/worker.json.gz b/build/openrpc/worker.json.gz deleted file mode 100644 index 0f3cb11c7a3140dc8227754c0ab7a27965626b96..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6048 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 aQBSD`W4K)2F8@CO0RR7_KxV9MSOEZJF2+Ov diff --git a/cmd/lotus-miner/main.go b/cmd/lotus-miner/main.go index fd0ea62db..76b8c0deb 100644 --- a/cmd/lotus-miner/main.go +++ b/cmd/lotus-miner/main.go @@ -23,8 +23,7 @@ import ( var log = logging.Logger("main") const ( - FlagMinerRepo = "miner-repo" - FlagMarketsRepo = "markets-repo" + FlagMinerRepo = "miner-repo" ) // TODO remove after deprecation period @@ -77,21 +76,6 @@ func main() { } } - // adapt the Net* commands to always hit the node running the markets - // subsystem, as that is the only one that runs a libp2p node. - netCmd := *lcli.NetCmd // make a copy. - netCmd.Hidden = true - prev := netCmd.Before - netCmd.Before = func(c *cli.Context) error { - if prev != nil { - if err := prev(c); err != nil { - return err - } - } - c.App.Metadata["repoType"] = repo.Markets - return nil - } - app := &cli.App{ Name: "lotus-miner", Usage: "Filecoin decentralized storage network miner", @@ -129,27 +113,9 @@ func main() { Value: "~/.lotusminer", // TODO: Consider XDG_DATA_HOME Usage: fmt.Sprintf("Specify miner repo path. flag(%s) and env(LOTUS_STORAGE_PATH) are DEPRECATION, will REMOVE SOON", FlagMinerRepoDeprecation), }, - &cli.StringFlag{ - Name: FlagMarketsRepo, - EnvVars: []string{"LOTUS_MARKETS_PATH"}, - Hidden: true, - }, - &cli.BoolFlag{ - Name: "call-on-markets", - Usage: "(experimental; may be removed) call this command against a markets node; use only with common commands like net, auth, pprof, etc. whose target may be ambiguous", - Hidden: true, - }, cliutil.FlagVeryVerbose, }, - Commands: append(local, append(lcli.CommonCommands, &netCmd)...), - Before: func(c *cli.Context) error { - // this command is explicitly called on markets, inform - // common commands by overriding the repoType. - if c.Bool("call-on-markets") { - c.App.Metadata["repoType"] = repo.Markets - } - return nil - }, + Commands: append(local, lcli.CommonCommands...), After: func(c *cli.Context) error { if r := recover(); r != nil { // Generate report in LOTUS_PATH and re-raise panic diff --git a/go.mod b/go.mod index d47529e54..76d5bb8c4 100644 --- a/go.mod +++ b/go.mod @@ -92,7 +92,6 @@ require ( github.com/ipld/go-car v0.6.2 github.com/ipld/go-car/v2 v2.13.1 github.com/ipld/go-ipld-prime v0.21.0 - github.com/ipld/go-ipld-selector-text-lite v0.0.1 github.com/ipni/go-libipni v0.0.8 github.com/jackc/pgerrcode v0.0.0-20240316143900-6e2875d9b438 github.com/kelseyhightower/envconfig v1.4.0 diff --git a/go.sum b/go.sum index 43c6e4085..d1d535430 100644 --- a/go.sum +++ b/go.sum @@ -328,7 +328,6 @@ github.com/flynn/noise v1.1.0 h1:KjPQoQCEFdZDiP03phOvGi11+SVVhBG2wOWAorLsstg= github.com/flynn/noise v1.1.0/go.mod h1:xbMo+0i6+IGbYdJhF31t2eR1BIU0CYc12+BNAKwUTag= github.com/francoispqt/gojay v1.2.13 h1:d2m3sFjloqoIUQU3TsHBgj6qg/BVGlTBeHDUmyJnXKk= github.com/francoispqt/gojay v1.2.13/go.mod h1:ehT5mTG4ua4581f1++1WLG0vPdaA9HaiDsoyrBGkyDY= -github.com/frankban/quicktest v1.11.3/go.mod h1:wRf/ReqHper53s+kmmSZizM8NamnL3IM0I9ntUbOk+k= github.com/frankban/quicktest v1.14.3/go.mod h1:mgiwOwqx65TmIk1wJ6Q7wvnVMocbUorkibMOrVTHZps= github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= @@ -581,7 +580,6 @@ github.com/ipfs/go-cid v0.0.1/go.mod h1:GHWU/WuQdMPmIosc4Yn1bcCT7dSeX4lBafM7iqUP github.com/ipfs/go-cid v0.0.2/go.mod h1:GHWU/WuQdMPmIosc4Yn1bcCT7dSeX4lBafM7iqUPQvM= github.com/ipfs/go-cid v0.0.3/go.mod h1:GHWU/WuQdMPmIosc4Yn1bcCT7dSeX4lBafM7iqUPQvM= github.com/ipfs/go-cid v0.0.4-0.20191112011718-79e75dffeb10/go.mod h1:/BYOuUoxkE+0f6tGzlzMvycuN+5l35VOR4Bpg2sCmds= -github.com/ipfs/go-cid v0.0.4/go.mod h1:4LLaPOQwmk5z9LBgQnpkivrx8BJjUyGwTXCd5Xfj6+M= github.com/ipfs/go-cid v0.0.5/go.mod h1:plgt+Y5MnOey4vO4UlUazGqdbEXuFYitED67FexhXog= github.com/ipfs/go-cid v0.0.6-0.20200501230655-7c82f3b81c00/go.mod h1:plgt+Y5MnOey4vO4UlUazGqdbEXuFYitED67FexhXog= github.com/ipfs/go-cid v0.0.6/go.mod h1:6Ux9z5e+HpkQdckYoX1PG/6xqKspzlEIR5SDmgqgC/I= @@ -594,9 +592,7 @@ github.com/ipfs/go-cidutil v0.1.0 h1:RW5hO7Vcf16dplUU60Hs0AKDkQAVPVplr7lk97CFL+Q github.com/ipfs/go-cidutil v0.1.0/go.mod h1:e7OEVBMIv9JaOxt9zaGEmAoSlXW9jdFZ5lP/0PwcfpA= github.com/ipfs/go-datastore v0.0.1/go.mod h1:d4KVXhMt913cLBEI/PXAy6ko+W7e9AhyAKBGh803qeE= github.com/ipfs/go-datastore v0.0.5/go.mod h1:d4KVXhMt913cLBEI/PXAy6ko+W7e9AhyAKBGh803qeE= -github.com/ipfs/go-datastore v0.1.0/go.mod h1:d4KVXhMt913cLBEI/PXAy6ko+W7e9AhyAKBGh803qeE= github.com/ipfs/go-datastore v0.1.1/go.mod h1:w38XXW9kVFNp57Zj5knbKWM2T+KOZCGDRVNdgPHtbHw= -github.com/ipfs/go-datastore v0.3.1/go.mod h1:w38XXW9kVFNp57Zj5knbKWM2T+KOZCGDRVNdgPHtbHw= github.com/ipfs/go-datastore v0.5.0/go.mod h1:9zhEApYMTl17C8YDp7JmU7sQZi2/wqiYh73hakZ90Bk= github.com/ipfs/go-datastore v0.5.1/go.mod h1:9zhEApYMTl17C8YDp7JmU7sQZi2/wqiYh73hakZ90Bk= github.com/ipfs/go-datastore v0.6.0 h1:JKyz+Gvz1QEZw0LsX1IBn+JFCJQH4SJVFtM4uWU0Myk= @@ -617,7 +613,6 @@ github.com/ipfs/go-fs-lock v0.0.6/go.mod h1:OTR+Rj9sHiRubJh3dRhD15Juhd/+w6VPOY28 github.com/ipfs/go-fs-lock v0.0.7 h1:6BR3dajORFrFTkb5EpCUFIAypsoxpGpDSVUdFwzgL9U= github.com/ipfs/go-fs-lock v0.0.7/go.mod h1:Js8ka+FNYmgQRLrRXzU3CB/+Csr1BwrRilEcvYrHhhc= github.com/ipfs/go-ipfs-blockstore v0.0.1/go.mod h1:d3WClOmRQKFnJ0Jz/jj/zmksX0ma1gROTlovZKBmN08= -github.com/ipfs/go-ipfs-blockstore v0.1.0/go.mod h1:5aD0AvHPi7mZc6Ci1WCAhiBQu2IsfTduLl+422H6Rqw= github.com/ipfs/go-ipfs-blockstore v1.2.0/go.mod h1:eh8eTFLiINYNSNawfZOC7HOxNTxpB1PFuA5E1m/7exE= github.com/ipfs/go-ipfs-blockstore v1.3.1 h1:cEI9ci7V0sRNivqaOr0elDsamxXFxJMMMy7PTTDQNsQ= github.com/ipfs/go-ipfs-blockstore v1.3.1/go.mod h1:KgtZyc9fq+P2xJUiCAzbRdhhqJHvsw8u2Dlqy2MyRTE= @@ -662,7 +657,6 @@ github.com/ipfs/go-ipld-cbor v0.1.0 h1:dx0nS0kILVivGhfWuB6dUpMa/LAwElHPw1yOGYopo github.com/ipfs/go-ipld-cbor v0.1.0/go.mod h1:U2aYlmVrJr2wsUBU67K4KgepApSZddGRDWBYR0H4sCk= github.com/ipfs/go-ipld-format v0.0.1/go.mod h1:kyJtbkDALmFHv3QR6et67i35QzO3S0dCDnkOJhcZkms= github.com/ipfs/go-ipld-format v0.0.2/go.mod h1:4B6+FM2u9OJ9zCV+kSbgFAZlOrv1Hqbf0INGQgiKf9k= -github.com/ipfs/go-ipld-format v0.2.0/go.mod h1:3l3C1uKoadTPbeNfrDi+xMInYKlx2Cvg1BuydPSdzQs= github.com/ipfs/go-ipld-format v0.3.0/go.mod h1:co/SdBE8h99968X0hViiw1MNlh6fvxxnHpvVLnH7jSM= github.com/ipfs/go-ipld-format v0.4.0/go.mod h1:co/SdBE8h99968X0hViiw1MNlh6fvxxnHpvVLnH7jSM= github.com/ipfs/go-ipld-format v0.6.0 h1:VEJlA2kQ3LqFSIm5Vu6eIlSxD/Ze90xtc4Meten1F5U= @@ -685,7 +679,6 @@ github.com/ipfs/go-log/v2 v2.5.1 h1:1XdUzF7048prq4aBjDQQ4SL5RxftpRGdXhNRwKSAlcY= github.com/ipfs/go-log/v2 v2.5.1/go.mod h1:prSpmC1Gpllc9UYWxDiZDreBYw7zp4Iqp1kOLU9U5UI= github.com/ipfs/go-merkledag v0.2.3/go.mod h1:SQiXrtSts3KGNmgOzMICy5c0POOpUNQLvB3ClKnBAlk= github.com/ipfs/go-merkledag v0.2.4/go.mod h1:SQiXrtSts3KGNmgOzMICy5c0POOpUNQLvB3ClKnBAlk= -github.com/ipfs/go-merkledag v0.3.2/go.mod h1:fvkZNNZixVW6cKSZ/JfLlON5OlgTXNdRLz0p6QG/I2M= github.com/ipfs/go-merkledag v0.11.0 h1:DgzwK5hprESOzS4O1t/wi6JDpyVQdvm9Bs59N/jqfBY= github.com/ipfs/go-merkledag v0.11.0/go.mod h1:Q4f/1ezvBiJV0YCIXvt51W/9/kqJGH4I1LsA7+djsM4= github.com/ipfs/go-metrics-interface v0.0.1 h1:j+cpbjYvu4R8zbleSs36gvB7jR+wsL2fGD6n0jO4kdg= @@ -706,20 +699,15 @@ github.com/ipld/go-car v0.6.2 h1:Hlnl3Awgnq8icK+ze3iRghk805lu8YNq3wlREDTF2qc= github.com/ipld/go-car v0.6.2/go.mod h1:oEGXdwp6bmxJCZ+rARSkDliTeYnVzv3++eXajZ+Bmr8= github.com/ipld/go-car/v2 v2.13.1 h1:KnlrKvEPEzr5IZHKTXLAEub+tPrzeAFQVRlSQvuxBO4= github.com/ipld/go-car/v2 v2.13.1/go.mod h1:QkdjjFNGit2GIkpQ953KBwowuoukoM75nP/JI1iDJdo= -github.com/ipld/go-codec-dagpb v1.2.0/go.mod h1:6nBN7X7h8EOsEejZGqC7tej5drsdBAXbMHyBT+Fne5s= github.com/ipld/go-codec-dagpb v1.6.0 h1:9nYazfyu9B1p3NAgfVdpRco3Fs2nFC72DqVsMj6rOcc= github.com/ipld/go-codec-dagpb v1.6.0/go.mod h1:ANzFhfP2uMJxRBr8CE+WQWs5UsNa0pYtmKZ+agnUw9s= github.com/ipld/go-ipld-prime v0.0.2-0.20191108012745-28a82f04c785/go.mod h1:bDDSvVz7vaK12FNvMeRYnpRFkSUPNQOiCYQezMD/P3w= -github.com/ipld/go-ipld-prime v0.9.0/go.mod h1:KvBLMr4PX1gWptgkzRjVZCrLmSGcZCb/jioOQwCqZN8= -github.com/ipld/go-ipld-prime v0.10.0/go.mod h1:KvBLMr4PX1gWptgkzRjVZCrLmSGcZCb/jioOQwCqZN8= github.com/ipld/go-ipld-prime v0.19.0/go.mod h1:Q9j3BaVXwaA3o5JUDNvptDDr/x8+F7FG6XJ8WI3ILg4= github.com/ipld/go-ipld-prime v0.21.0 h1:n4JmcpOlPDIxBcY037SVfpd1G+Sj1nKZah0m6QH9C2E= github.com/ipld/go-ipld-prime v0.21.0/go.mod h1:3RLqy//ERg/y5oShXXdx5YIp50cFGOanyMctpPjsvxQ= github.com/ipld/go-ipld-prime-proto v0.0.0-20191113031812-e32bd156a1e5/go.mod h1:gcvzoEDBjwycpXt3LBE061wT9f46szXGHAmj9uoP6fU= github.com/ipld/go-ipld-prime/storage/bsadapter v0.0.0-20230102063945-1a409dc236dd h1:gMlw/MhNr2Wtp5RwGdsW23cs+yCuj9k2ON7i9MiJlRo= github.com/ipld/go-ipld-prime/storage/bsadapter v0.0.0-20230102063945-1a409dc236dd/go.mod h1:wZ8hH8UxeryOs4kJEJaiui/s00hDSbE37OKsL47g+Sw= -github.com/ipld/go-ipld-selector-text-lite v0.0.1 h1:lNqFsQpBHc3p5xHob2KvEg/iM5dIFn6iw4L/Hh+kS1Y= -github.com/ipld/go-ipld-selector-text-lite v0.0.1/go.mod h1:U2CQmFb+uWzfIEF3I1arrDa5rwtj00PrpiwwCO+k1RM= github.com/ipni/go-libipni v0.0.8 h1:0wLfZRSBG84swmZwmaLKul/iB/FlBkkl9ZcR1ub+Z+w= github.com/ipni/go-libipni v0.0.8/go.mod h1:paYP9U4N3/vOzGCuN9kU972vtvw9JUcQjOKyiCFGwRk= github.com/ipsn/go-secp256k1 v0.0.0-20180726113642-9d62b9f0bc52 h1:QG4CGBqCeuBo6aZlGAamSkxWdgWfZGeE49eUOWJPA4c= diff --git a/itests/kit/node_opts.go b/itests/kit/node_opts.go index 89aee322a..89c04b1c7 100644 --- a/itests/kit/node_opts.go +++ b/itests/kit/node_opts.go @@ -43,7 +43,6 @@ type nodeOpts struct { disableLibp2p bool optBuilders []OptBuilder sectorSize abi.SectorSize - maxStagingDealsBytes int64 minerNoLocalSealing bool // use worker minerAssigner string disallowRemoteFinalize bool @@ -107,14 +106,6 @@ func WithSubsystems(systems ...MinerSubsystem) NodeOpt { return nil } } - -func WithMaxStagingDealsBytes(size int64) NodeOpt { - return func(opts *nodeOpts) error { - opts.maxStagingDealsBytes = size - return nil - } -} - func WithNoLocalSealing(nope bool) NodeOpt { return func(opts *nodeOpts) error { opts.minerNoLocalSealing = nope diff --git a/lib/promise/promise.go b/lib/promise/promise.go deleted file mode 100644 index 02e917ca1..000000000 --- a/lib/promise/promise.go +++ /dev/null @@ -1,53 +0,0 @@ -package promise - -import ( - "context" - "sync" -) - -type Promise[T any] struct { - val T - done chan struct{} - mu sync.Mutex -} - -func (p *Promise[T]) Set(val T) { - p.mu.Lock() - defer p.mu.Unlock() - - // Set value - p.val = val - - // Initialize the done channel if it hasn't been initialized - if p.done == nil { - p.done = make(chan struct{}) - } - - // Signal that the value is set - close(p.done) -} - -func (p *Promise[T]) Val(ctx context.Context) T { - p.mu.Lock() - // Initialize the done channel if it hasn't been initialized - if p.done == nil { - p.done = make(chan struct{}) - } - p.mu.Unlock() - - select { - case <-ctx.Done(): - return *new(T) - case <-p.done: - p.mu.Lock() - val := p.val - p.mu.Unlock() - return val - } -} - -func (p *Promise[T]) IsSet() bool { - p.mu.Lock() - defer p.mu.Unlock() - return p.done != nil -} diff --git a/lib/promise/promise_test.go b/lib/promise/promise_test.go deleted file mode 100644 index c2e9b656e..000000000 --- a/lib/promise/promise_test.go +++ /dev/null @@ -1,65 +0,0 @@ -package promise - -import ( - "context" - "sync" - "testing" - "time" -) - -func TestPromiseSet(t *testing.T) { - p := &Promise[int]{} - - p.Set(42) - if p.val != 42 { - t.Fatalf("expected 42, got %v", p.val) - } -} - -func TestPromiseVal(t *testing.T) { - p := &Promise[int]{} - - p.Set(42) - - ctx := context.Background() - val := p.Val(ctx) - - if val != 42 { - t.Fatalf("expected 42, got %v", val) - } -} - -func TestPromiseValWaitsForSet(t *testing.T) { - p := &Promise[int]{} - var val int - - var wg sync.WaitGroup - wg.Add(1) - - go func() { - defer wg.Done() - ctx := context.Background() - val = p.Val(ctx) - }() - - time.Sleep(100 * time.Millisecond) // Give some time for the above goroutine to execute - p.Set(42) - wg.Wait() - - if val != 42 { - t.Fatalf("expected 42, got %v", val) - } -} - -func TestPromiseValContextCancel(t *testing.T) { - p := &Promise[int]{} - ctx, cancel := context.WithCancel(context.Background()) - cancel() // Cancel the context - - val := p.Val(ctx) - - var zeroValue int - if val != zeroValue { - t.Fatalf("expected zero-value, got %v", val) - } -} diff --git a/node/modules/storageminer.go b/node/modules/storageminer.go index dd39ec2ae..01f293b8f 100644 --- a/node/modules/storageminer.go +++ b/node/modules/storageminer.go @@ -44,10 +44,6 @@ import ( "github.com/filecoin-project/lotus/storage/wdpost" ) -var ( - StagingAreaDirName = "deal-staging" -) - type UuidWrapper struct { v1api.FullNode } diff --git a/node/repo/fsrepo.go b/node/repo/fsrepo.go index 1ffc1509f..98d0bd01b 100644 --- a/node/repo/fsrepo.go +++ b/node/repo/fsrepo.go @@ -74,11 +74,6 @@ type RepoType interface { APIInfoEnvVars() (string, []string, []string) } -// SupportsStagingDeals is a trait for services that support staging deals -type SupportsStagingDeals interface { - SupportsStagingDeals() -} - var FullNode fullNode type fullNode struct { @@ -108,8 +103,6 @@ var StorageMiner storageMiner type storageMiner struct{} -func (storageMiner) SupportsStagingDeals() {} - func (storageMiner) Type() string { return "StorageMiner" } @@ -131,35 +124,6 @@ func (storageMiner) APIInfoEnvVars() (primary string, fallbacks []string, deprec return "MINER_API_INFO", nil, []string{"STORAGE_API_INFO"} } -var Markets markets - -type markets struct{} - -func (markets) SupportsStagingDeals() {} - -func (markets) Type() string { - return "Markets" -} - -func (markets) Config() interface{} { - return config.DefaultStorageMiner() -} - -func (markets) APIFlags() []string { - // support split markets-miner and monolith deployments. - return []string{"markets-api-url", "miner-api-url"} -} - -func (markets) RepoFlags() []string { - // support split markets-miner and monolith deployments. - return []string{"markets-repo", "miner-repo"} -} - -func (markets) APIInfoEnvVars() (primary string, fallbacks []string, deprecated []string) { - // support split markets-miner and monolith deployments. - return "MARKETS_API_INFO", []string{"MINER_API_INFO"}, nil -} - type worker struct { } diff --git a/node/repo/fsrepo_ds.go b/node/repo/fsrepo_ds.go index a4415692a..87dd2b052 100644 --- a/node/repo/fsrepo_ds.go +++ b/node/repo/fsrepo_ds.go @@ -5,9 +5,7 @@ import ( "os" "path/filepath" - dgbadger "github.com/dgraph-io/badger/v2" "github.com/ipfs/go-datastore" - badger "github.com/ipfs/go-ds-badger2" levelds "github.com/ipfs/go-ds-leveldb" measure "github.com/ipfs/go-ds-measure" ldbopts "github.com/syndtr/goleveldb/leveldb/opt" @@ -18,13 +16,16 @@ type dsCtor func(path string, readonly bool) (datastore.Batching, error) var fsDatastores = map[string]dsCtor{ "metadata": levelDs, - - // Those need to be fast for large writes... but also need a really good GC :c - "staging": badgerDs, // miner specific - - "client": badgerDs, // client specific } +// Helper badgerDs() and its imports are unused +// Leaving here for completeness +// +/* + +dgbadger "github.com/dgraph-io/badger/v2" +badger "github.com/ipfs/go-ds-badger2" + func badgerDs(path string, readonly bool) (datastore.Batching, error) { opts := badger.DefaultOptions opts.ReadOnly = readonly @@ -34,6 +35,8 @@ func badgerDs(path string, readonly bool) (datastore.Batching, error) { return badger.NewDatastore(path, &opts) } +*/ + func levelDs(path string, readonly bool) (datastore.Batching, error) { return levelds.NewDatastore(path, &levelds.Options{ Compression: ldbopts.NoCompression, diff --git a/node/repo/memrepo.go b/node/repo/memrepo.go index 6a4b416e2..d1e9b214b 100644 --- a/node/repo/memrepo.go +++ b/node/repo/memrepo.go @@ -107,14 +107,6 @@ func (lmem *lockedMemRepo) Path() string { panic(err) // only used in tests, probably fine } - if _, ok := lmem.t.(SupportsStagingDeals); ok { - // this is required due to the method makeDealStaging from cmd/lotus-storage-miner/init.go - // deal-staging is the directory deal files are staged in before being sealed into sectors - // for offline deal flow. - if err := os.MkdirAll(filepath.Join(t, "deal-staging"), 0755); err != nil { - panic(err) - } - } if lmem.t == StorageMiner || lmem.t == Worker { lmem.initSectorStore(t) } diff --git a/scripts/generate-lotus-cli.py b/scripts/generate-lotus-cli.py index f7ec70bbb..9158dc2e9 100644 --- a/scripts/generate-lotus-cli.py +++ b/scripts/generate-lotus-cli.py @@ -48,7 +48,7 @@ if __name__ == "__main__": # When --help is generated one needs to make sure none of the # urfave-cli `EnvVars:` defaults get triggered # Unset everything we can find via: grep -ho 'EnvVars:.*' -r * | sort -u - for e in [ "LOTUS_PATH", "LOTUS_MARKETS_PATH", "LOTUS_MINER_PATH", "LOTUS_STORAGE_PATH", "LOTUS_WORKER_PATH", "WORKER_PATH", "LOTUS_PANIC_REPORT_PATH", "WALLET_PATH" ]: + for e in [ "LOTUS_PATH", "LOTUS_MINER_PATH", "LOTUS_STORAGE_PATH", "LOTUS_WORKER_PATH", "WORKER_PATH", "LOTUS_PANIC_REPORT_PATH", "WALLET_PATH" ]: os.environ.pop(e, None) # Set env var telling the binaries that we're generating docs From 9772b1c1a5689226c888aef197b32e6277c94357 Mon Sep 17 00:00:00 2001 From: Aarsh Shah Date: Tue, 11 Jun 2024 19:07:17 +0400 Subject: [PATCH 04/10] fix: ETH RPC API: ETH Call should use the parent state root of the subsequent tipset (#11905) * fix eth call * tests * changes as per review * changes as per review * Update node/impl/full/eth.go Co-authored-by: Rod Vagg * fix as per review --------- Co-authored-by: Rod Vagg --- chain/stmgr/call.go | 96 +++++++++++++++++++++++++++---------------- chain/stmgr/forks.go | 2 +- node/impl/full/eth.go | 31 +++++++------- 3 files changed, 77 insertions(+), 52 deletions(-) diff --git a/chain/stmgr/call.go b/chain/stmgr/call.go index 61056528f..7f2a57a61 100644 --- a/chain/stmgr/call.go +++ b/chain/stmgr/call.go @@ -25,6 +25,14 @@ import ( "github.com/filecoin-project/lotus/chain/vm" ) +type execMessageStrategy int + +const ( + execNoMessages execMessageStrategy = iota // apply no prior or current tipset messages + execAllMessages // apply all prior and current tipset messages + execSameSenderMessages // apply all prior messages and any current tipset messages from the same sender +) + var ErrExpensiveFork = errors.New("refusing explicit call due to state fork at epoch") // Call applies the given message to the given tipset's parent state, at the epoch following the @@ -48,12 +56,24 @@ func (sm *StateManager) Call(ctx context.Context, msg *types.Message, ts *types. msg.Value = types.NewInt(0) } - return sm.callInternal(ctx, msg, nil, ts, cid.Undef, sm.GetNetworkVersion, false, false) + return sm.callInternal(ctx, msg, nil, ts, cid.Undef, sm.GetNetworkVersion, false, execSameSenderMessages) +} + +// ApplyOnStateWithGas applies the given message on top of the given state root with gas tracing enabled +func (sm *StateManager) ApplyOnStateWithGas(ctx context.Context, stateCid cid.Cid, msg *types.Message, ts *types.TipSet) (*api.InvocResult, error) { + return sm.callInternal(ctx, msg, nil, ts, stateCid, sm.GetNetworkVersion, true, execNoMessages) } // CallWithGas calculates the state for a given tipset, and then applies the given message on top of that state. func (sm *StateManager) CallWithGas(ctx context.Context, msg *types.Message, priorMsgs []types.ChainMsg, ts *types.TipSet, applyTsMessages bool) (*api.InvocResult, error) { - return sm.callInternal(ctx, msg, priorMsgs, ts, cid.Undef, sm.GetNetworkVersion, true, applyTsMessages) + var strategy execMessageStrategy + if applyTsMessages { + strategy = execAllMessages + } else { + strategy = execSameSenderMessages + } + + return sm.callInternal(ctx, msg, priorMsgs, ts, cid.Undef, sm.GetNetworkVersion, true, strategy) } // CallAtStateAndVersion allows you to specify a message to execute on the given stateCid and network version. @@ -64,14 +84,14 @@ func (sm *StateManager) CallAtStateAndVersion(ctx context.Context, msg *types.Me nvGetter := func(context.Context, abi.ChainEpoch) network.Version { return v } - - return sm.callInternal(ctx, msg, nil, nil, stateCid, nvGetter, true, false) + return sm.callInternal(ctx, msg, nil, nil, stateCid, nvGetter, true, execSameSenderMessages) } // - If no tipset is specified, the first tipset without an expensive migration or one in its parent is used. // - If executing a message at a given tipset or its parent would trigger an expensive migration, the call will // fail with ErrExpensiveFork. -func (sm *StateManager) callInternal(ctx context.Context, msg *types.Message, priorMsgs []types.ChainMsg, ts *types.TipSet, stateCid cid.Cid, nvGetter rand.NetworkVersionGetter, checkGas, applyTsMessages bool) (*api.InvocResult, error) { +func (sm *StateManager) callInternal(ctx context.Context, msg *types.Message, priorMsgs []types.ChainMsg, ts *types.TipSet, stateCid cid.Cid, + nvGetter rand.NetworkVersionGetter, checkGas bool, strategy execMessageStrategy) (*api.InvocResult, error) { ctx, span := trace.StartSpan(ctx, "statemanager.callInternal") defer span.End() @@ -95,7 +115,7 @@ func (sm *StateManager) callInternal(ctx context.Context, msg *types.Message, pr return nil, xerrors.Errorf("failed to find a non-forking epoch: %w", err) } // Checks for expensive forks from the parents to the tipset, including nil tipsets - if !sm.hasExpensiveForkBetween(pts.Height(), ts.Height()+1) { + if !sm.HasExpensiveForkBetween(pts.Height(), ts.Height()+1) { break } @@ -106,7 +126,7 @@ func (sm *StateManager) callInternal(ctx context.Context, msg *types.Message, pr if err != nil { return nil, xerrors.Errorf("failed to find a non-forking epoch: %w", err) } - if sm.hasExpensiveForkBetween(pts.Height(), ts.Height()+1) { + if sm.HasExpensiveForkBetween(pts.Height(), ts.Height()+1) { return nil, ErrExpensiveFork } } @@ -117,24 +137,6 @@ func (sm *StateManager) callInternal(ctx context.Context, msg *types.Message, pr if stateCid == cid.Undef { stateCid = ts.ParentState() } - tsMsgs, err := sm.cs.MessagesForTipset(ctx, ts) - if err != nil { - return nil, xerrors.Errorf("failed to lookup messages for parent tipset: %w", err) - } - - if applyTsMessages { - priorMsgs = append(tsMsgs, priorMsgs...) - } else { - var filteredTsMsgs []types.ChainMsg - for _, tsMsg := range tsMsgs { - //TODO we should technically be normalizing the filecoin address of from when we compare here - if tsMsg.VMMessage().From == msg.VMMessage().From { - filteredTsMsgs = append(filteredTsMsgs, tsMsg) - } - } - priorMsgs = append(filteredTsMsgs, priorMsgs...) - } - // Technically, the tipset we're passing in here should be ts+1, but that may not exist. stateCid, err = sm.HandleStateForks(ctx, stateCid, ts.Height(), nil, ts) if err != nil { @@ -169,18 +171,40 @@ func (sm *StateManager) callInternal(ctx context.Context, msg *types.Message, pr if err != nil { return nil, xerrors.Errorf("failed to set up vm: %w", err) } - for i, m := range priorMsgs { - _, err = vmi.ApplyMessage(ctx, m) - if err != nil { - return nil, xerrors.Errorf("applying prior message (%d, %s): %w", i, m.Cid(), err) - } - } - // We flush to get the VM's view of the state tree after applying the above messages - // This is needed to get the correct nonce from the actor state to match the VM - stateCid, err = vmi.Flush(ctx) - if err != nil { - return nil, xerrors.Errorf("flushing vm: %w", err) + switch strategy { + case execNoMessages: + // Do nothing + case execAllMessages, execSameSenderMessages: + tsMsgs, err := sm.cs.MessagesForTipset(ctx, ts) + if err != nil { + return nil, xerrors.Errorf("failed to lookup messages for parent tipset: %w", err) + } + if strategy == execAllMessages { + priorMsgs = append(tsMsgs, priorMsgs...) + } else if strategy == execSameSenderMessages { + var filteredTsMsgs []types.ChainMsg + for _, tsMsg := range tsMsgs { + //TODO we should technically be normalizing the filecoin address of from when we compare here + if tsMsg.VMMessage().From == msg.VMMessage().From { + filteredTsMsgs = append(filteredTsMsgs, tsMsg) + } + } + priorMsgs = append(filteredTsMsgs, priorMsgs...) + } + for i, m := range priorMsgs { + _, err = vmi.ApplyMessage(ctx, m) + if err != nil { + return nil, xerrors.Errorf("applying prior message (%d, %s): %w", i, m.Cid(), err) + } + } + + // We flush to get the VM's view of the state tree after applying the above messages + // This is needed to get the correct nonce from the actor state to match the VM + stateCid, err = vmi.Flush(ctx) + if err != nil { + return nil, xerrors.Errorf("flushing vm: %w", err) + } } stTree, err := state.LoadStateTree(cbor.NewCborStore(buffStore), stateCid) diff --git a/chain/stmgr/forks.go b/chain/stmgr/forks.go index 9a2361961..c6c513e3a 100644 --- a/chain/stmgr/forks.go +++ b/chain/stmgr/forks.go @@ -227,7 +227,7 @@ func (sm *StateManager) HandleStateForks(ctx context.Context, root cid.Cid, heig // Returns true executing tipsets between the specified heights would trigger an expensive // migration. NOTE: migrations occurring _at_ the target height are not included, as they're // executed _after_ the target height. -func (sm *StateManager) hasExpensiveForkBetween(parent, height abi.ChainEpoch) bool { +func (sm *StateManager) HasExpensiveForkBetween(parent, height abi.ChainEpoch) bool { for h := parent; h < height; h++ { if _, ok := sm.expensiveUpgrades[h]; ok { return true diff --git a/node/impl/full/eth.go b/node/impl/full/eth.go index 3b6bb408f..82f272c6c 100644 --- a/node/impl/full/eth.go +++ b/node/impl/full/eth.go @@ -1028,25 +1028,26 @@ func (a *EthModule) applyMessage(ctx context.Context, msg *types.Message, tsk ty return nil, xerrors.Errorf("cannot get tipset: %w", err) } - applyTsMessages := true - if os.Getenv("LOTUS_SKIP_APPLY_TS_MESSAGE_CALL_WITH_GAS") == "1" { - applyTsMessages = false + if ts.Height() > 0 { + pts, err := a.Chain.GetTipSetFromKey(ctx, ts.Parents()) + if err != nil { + return nil, xerrors.Errorf("failed to find a non-forking epoch: %w", err) + } + // Check for expensive forks from the parents to the tipset, including nil tipsets + if a.StateManager.HasExpensiveForkBetween(pts.Height(), ts.Height()+1) { + return nil, stmgr.ErrExpensiveFork + } } - // Try calling until we find a height with no migration. - for { - res, err = a.StateManager.CallWithGas(ctx, msg, []types.ChainMsg{}, ts, applyTsMessages) - if err != stmgr.ErrExpensiveFork { - break - } - ts, err = a.Chain.GetTipSetFromKey(ctx, ts.Parents()) - if err != nil { - return nil, xerrors.Errorf("getting parent tipset: %w", err) - } - } + st, _, err := a.StateManager.TipSetState(ctx, ts) if err != nil { - return nil, xerrors.Errorf("CallWithGas failed: %w", err) + return nil, xerrors.Errorf("cannot get tipset state: %w", err) } + res, err = a.StateManager.ApplyOnStateWithGas(ctx, st, msg, ts) + if err != nil { + return nil, xerrors.Errorf("ApplyWithGasOnState failed: %w", err) + } + if res.MsgRct.ExitCode.IsError() { reason := parseEthRevert(res.MsgRct.Return) return nil, xerrors.Errorf("message execution failed: exit %s, revert reason: %s, vm error: %s", res.MsgRct.ExitCode, reason, res.Error) From 5414ca990b6b592dcc1032dade5be888809160c0 Mon Sep 17 00:00:00 2001 From: Phi Date: Mon, 17 Jun 2024 10:50:42 +0200 Subject: [PATCH 05/10] Update changelog to RC2 Update changelog to RC2 --- CHANGELOG.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c52494ed2..b9d19b83f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,13 +6,14 @@ ## Improvements -# v1.27.1 / 2024-06-10 +# v1.27.1-rc2 / 2024-06-17 This is the first release candidate of the upcoming optional release of Lotus v1.27.1 ## ☢️ Upgrade Warnings ☢️ -There are no upgrade warnings for this release candidate. +- This Lotus release completely removes the Legacy Lotus/Lotus-Miner Markets sub-system from the codebase, which was announced to reach EOL on January 31, 2023. +- The **Curio Storage** software, designed to simplify the setup and operation of storage providers, has moved to their own Github-repository: https://github.com/filecoin-project/curio. ### JSON-RPC 2.0 Specification Conformance @@ -56,6 +57,7 @@ There is no change in the behaviour when a call returns an error, as the error o - chore: remove unmaintained bootstrappers (#11983) ([filecoin-project/lotus#11983](https://github.com/filecoin-project/lotus/pull/11983)) - feat: api: add SectorNumber to MarketDealState (nv22) - fix: copy Flags field from SectorOnChainInfo +- fix: ETH RPC API: ETH Call should use the parent state root of the subsequent tipset ([filecoin-project/lotus#11905](https://github.com/filecoin-project/lotus/pull/11905)) ## Dependencies @@ -124,6 +126,9 @@ There is no change in the behaviour when a call returns an error, as the error o - chore: pin golanglint-ci to v1.58.2 (#12054) ([filecoin-project/lotus#12054](https://github.com/filecoin-project/lotus/pull/12054)) - chore: fix some function names (#12031) ([filecoin-project/lotus#12031](https://github.com/filecoin-project/lotus/pull/12031)) - src: lint: bump golangci-lint to 1.59, address unchecked fmt.Fprint* +- fix: ci: do not use deprecated --debug goreleaser flag ([filecoin-project/lotus#12086](https://github.com/filecoin-project/lotus/pull/12086)) +- chore: Remove forgotten graphsync references ([filecoin-project/lotus#12084](https://github.com/filecoin-project/lotus/pull/12084)) +- chore: types: remove more items forgotten after markets ([filecoin-project/lotus#12095](https://github.com/filecoin-project/lotus/pull/12095)) ## Contributors From 608184cb83f60ea8a13d6d547bfba2843d1fe0db Mon Sep 17 00:00:00 2001 From: Phi Date: Mon, 17 Jun 2024 11:05:45 +0200 Subject: [PATCH 06/10] Make gen / make docsgen-cli Make gen / make docsgen-cli --- build/openrpc/full.json | 2 +- build/openrpc/gateway.json | 2 +- build/openrpc/miner.json | 2 +- build/openrpc/worker.json | 2 +- build/version.go | 4 ++-- documentation/en/cli-lotus-miner.md | 2 +- documentation/en/cli-lotus-worker.md | 2 +- documentation/en/cli-lotus.md | 2 +- 8 files changed, 9 insertions(+), 9 deletions(-) diff --git a/build/openrpc/full.json b/build/openrpc/full.json index a209bbc29..07aae7b31 100644 --- a/build/openrpc/full.json +++ b/build/openrpc/full.json @@ -2,7 +2,7 @@ "openrpc": "1.2.6", "info": { "title": "Lotus RPC API", - "version": "1.27.1-rc1" + "version": "1.27.1-rc2" }, "methods": [ { diff --git a/build/openrpc/gateway.json b/build/openrpc/gateway.json index 1519f023a..55b903249 100644 --- a/build/openrpc/gateway.json +++ b/build/openrpc/gateway.json @@ -2,7 +2,7 @@ "openrpc": "1.2.6", "info": { "title": "Lotus RPC API", - "version": "1.27.1-rc1" + "version": "1.27.1-rc2" }, "methods": [ { diff --git a/build/openrpc/miner.json b/build/openrpc/miner.json index d740c8189..7154ab200 100644 --- a/build/openrpc/miner.json +++ b/build/openrpc/miner.json @@ -2,7 +2,7 @@ "openrpc": "1.2.6", "info": { "title": "Lotus RPC API", - "version": "1.27.1-rc1" + "version": "1.27.1-rc2" }, "methods": [ { diff --git a/build/openrpc/worker.json b/build/openrpc/worker.json index b5d90356c..0014c9a55 100644 --- a/build/openrpc/worker.json +++ b/build/openrpc/worker.json @@ -2,7 +2,7 @@ "openrpc": "1.2.6", "info": { "title": "Lotus RPC API", - "version": "1.27.1-rc1" + "version": "1.27.1-rc2" }, "methods": [ { diff --git a/build/version.go b/build/version.go index 6914c70ec..b4271e6e5 100644 --- a/build/version.go +++ b/build/version.go @@ -39,7 +39,7 @@ func BuildTypeString() string { } // NodeBuildVersion is the local build version of the Lotus daemon -const NodeBuildVersion string = "1.27.1-rc1" +const NodeBuildVersion string = "1.27.1-rc2" func NodeUserVersion() BuildVersion { if os.Getenv("LOTUS_VERSION_IGNORE_COMMIT") == "1" { @@ -50,7 +50,7 @@ func NodeUserVersion() BuildVersion { } // MinerBuildVersion is the local build version of the Lotus miner -const MinerBuildVersion = "1.27.1-rc1" +const MinerBuildVersion = "1.27.1-rc2" func MinerUserVersion() BuildVersion { if os.Getenv("LOTUS_VERSION_IGNORE_COMMIT") == "1" { diff --git a/documentation/en/cli-lotus-miner.md b/documentation/en/cli-lotus-miner.md index d8f15e823..db536a4dd 100644 --- a/documentation/en/cli-lotus-miner.md +++ b/documentation/en/cli-lotus-miner.md @@ -7,7 +7,7 @@ USAGE: lotus-miner [global options] command [command options] [arguments...] VERSION: - 1.27.1-rc1 + 1.27.1-rc2 COMMANDS: init Initialize a lotus miner repo diff --git a/documentation/en/cli-lotus-worker.md b/documentation/en/cli-lotus-worker.md index af55aea04..6bc4ef6fa 100644 --- a/documentation/en/cli-lotus-worker.md +++ b/documentation/en/cli-lotus-worker.md @@ -7,7 +7,7 @@ USAGE: lotus-worker [global options] command [command options] [arguments...] VERSION: - 1.27.1-rc1 + 1.27.1-rc2 COMMANDS: run Start lotus worker diff --git a/documentation/en/cli-lotus.md b/documentation/en/cli-lotus.md index b3bfea70c..65454899a 100644 --- a/documentation/en/cli-lotus.md +++ b/documentation/en/cli-lotus.md @@ -7,7 +7,7 @@ USAGE: lotus [global options] command [command options] [arguments...] VERSION: - 1.27.1-rc1 + 1.27.1-rc2 COMMANDS: daemon Start a lotus daemon process From 03fb2e21e52d0efd59d55280e9cb7e0831d60249 Mon Sep 17 00:00:00 2001 From: Peter Rabbitson Date: Sun, 16 Jun 2024 20:15:11 +0200 Subject: [PATCH 07/10] chore: api: the Net API/CLI now remains only on daemon The only part of this repository that does lp2p is now lotus-daemon Remove the CommonNet type, used exclusively bu the CLI stack Adjust the rest of struct-memebership to match what went where End result best seen in diff of `documentation/en/api-v0-methods-miner.md` --- api/api_net.go | 5 - api/api_storage.go | 1 - api/client/client.go | 4 +- api/proxy_gen.go | 22 - api/v0api/latest.go | 3 - build/openrpc/full.json | 438 +++++++++--------- build/openrpc/gateway.json | 198 ++++----- build/openrpc/miner.json | 176 ++++---- build/openrpc/worker.json | 74 ++-- cli/net.go | 44 +- cli/util/api.go | 2 +- documentation/en/api-v0-methods-curio.md | 369 --------------- documentation/en/api-v0-methods-miner.md | 542 ----------------------- 13 files changed, 468 insertions(+), 1410 deletions(-) delete mode 100644 documentation/en/api-v0-methods-curio.md diff --git a/api/api_net.go b/api/api_net.go index cfcd8d87e..3dc19dbed 100644 --- a/api/api_net.go +++ b/api/api_net.go @@ -66,11 +66,6 @@ type Net interface { ID(context.Context) (peer.ID, error) //perm:read } -type CommonNet interface { - Common - Net -} - type NatInfo struct { Reachability network.Reachability PublicAddrs []string diff --git a/api/api_storage.go b/api/api_storage.go index ae1c7ae36..fa10d28fc 100644 --- a/api/api_storage.go +++ b/api/api_storage.go @@ -39,7 +39,6 @@ import ( // StorageMiner is a low-level interface to the Filecoin network storage miner node type StorageMiner interface { Common - Net ActorAddress(context.Context) (address.Address, error) //perm:read diff --git a/api/client/client.go b/api/client/client.go index 8b159c5b1..9722c4126 100644 --- a/api/client/client.go +++ b/api/client/client.go @@ -16,8 +16,8 @@ import ( ) // NewCommonRPCV0 creates a new http jsonrpc client. -func NewCommonRPCV0(ctx context.Context, addr string, requestHeader http.Header) (api.CommonNet, jsonrpc.ClientCloser, error) { - var res v0api.CommonNetStruct +func NewCommonRPCV0(ctx context.Context, addr string, requestHeader http.Header) (api.Common, jsonrpc.ClientCloser, error) { + var res v0api.CommonStruct closer, err := jsonrpc.NewMergeClient(ctx, addr, "Filecoin", api.GetInternalStructs(&res), requestHeader, jsonrpc.WithErrors(api.RPCErrors)) diff --git a/api/proxy_gen.go b/api/proxy_gen.go index e41b4fcba..1881a6f9d 100644 --- a/api/proxy_gen.go +++ b/api/proxy_gen.go @@ -91,23 +91,6 @@ type CommonMethods struct { type CommonStub struct { } -type CommonNetStruct struct { - CommonStruct - - NetStruct - - Internal CommonNetMethods -} - -type CommonNetMethods struct { -} - -type CommonNetStub struct { - CommonStub - - NetStub -} - type EthSubscriberStruct struct { Internal EthSubscriberMethods } @@ -865,8 +848,6 @@ type SignableStub struct { type StorageMinerStruct struct { CommonStruct - NetStruct - Internal StorageMinerMethods } @@ -1050,8 +1031,6 @@ type StorageMinerMethods struct { type StorageMinerStub struct { CommonStub - - NetStub } type WalletStruct struct { @@ -6629,7 +6608,6 @@ func (s *WorkerStub) WaitQuiet(p0 context.Context) error { var _ ChainIO = new(ChainIOStruct) var _ Common = new(CommonStruct) -var _ CommonNet = new(CommonNetStruct) var _ EthSubscriber = new(EthSubscriberStruct) var _ FullNode = new(FullNodeStruct) var _ Gateway = new(GatewayStruct) diff --git a/api/v0api/latest.go b/api/v0api/latest.go index d423f57bc..d5da794eb 100644 --- a/api/v0api/latest.go +++ b/api/v0api/latest.go @@ -6,14 +6,11 @@ import ( type Common = api.Common type Net = api.Net -type CommonNet = api.CommonNet type CommonStruct = api.CommonStruct type CommonStub = api.CommonStub type NetStruct = api.NetStruct type NetStub = api.NetStub -type CommonNetStruct = api.CommonNetStruct -type CommonNetStub = api.CommonNetStub type StorageMiner = api.StorageMiner type StorageMinerStruct = api.StorageMinerStruct diff --git a/build/openrpc/full.json b/build/openrpc/full.json index 07aae7b31..3c0931647 100644 --- a/build/openrpc/full.json +++ b/build/openrpc/full.json @@ -37,7 +37,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1328" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1307" } }, { @@ -60,7 +60,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1339" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1318" } }, { @@ -103,7 +103,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1350" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1329" } }, { @@ -214,7 +214,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1372" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1351" } }, { @@ -454,7 +454,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1383" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1362" } }, { @@ -685,7 +685,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1394" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1373" } }, { @@ -784,7 +784,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1405" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1384" } }, { @@ -816,7 +816,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1416" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1395" } }, { @@ -922,7 +922,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1427" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1406" } }, { @@ -1019,7 +1019,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1438" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1417" } }, { @@ -1078,7 +1078,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1449" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1428" } }, { @@ -1171,7 +1171,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1460" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1439" } }, { @@ -1255,7 +1255,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1471" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1450" } }, { @@ -1355,7 +1355,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1482" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1461" } }, { @@ -1411,7 +1411,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1493" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1472" } }, { @@ -1484,7 +1484,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1504" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1483" } }, { @@ -1557,7 +1557,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1515" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1494" } }, { @@ -1604,7 +1604,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1526" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1505" } }, { @@ -1636,7 +1636,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1537" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1516" } }, { @@ -1691,7 +1691,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1548" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1527" } }, { @@ -1743,7 +1743,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1570" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1549" } }, { @@ -1780,7 +1780,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1581" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1560" } }, { @@ -1827,7 +1827,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1592" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1571" } }, { @@ -1874,7 +1874,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1603" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1582" } }, { @@ -1954,7 +1954,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1614" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1593" } }, { @@ -2006,7 +2006,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1625" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1604" } }, { @@ -2045,7 +2045,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1636" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1615" } }, { @@ -2092,7 +2092,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1647" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1626" } }, { @@ -2147,7 +2147,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1658" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1637" } }, { @@ -2176,7 +2176,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1669" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1648" } }, { @@ -2313,7 +2313,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1680" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1659" } }, { @@ -2342,7 +2342,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1691" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1670" } }, { @@ -2396,7 +2396,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1702" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1681" } }, { @@ -2487,7 +2487,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1713" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1692" } }, { @@ -2515,7 +2515,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1724" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1703" } }, { @@ -2605,7 +2605,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1735" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1714" } }, { @@ -2861,7 +2861,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1746" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1725" } }, { @@ -3106,7 +3106,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1757" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1736" } }, { @@ -3162,7 +3162,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1768" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1747" } }, { @@ -3209,7 +3209,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1779" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1758" } }, { @@ -3307,7 +3307,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1790" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1769" } }, { @@ -3373,7 +3373,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1801" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1780" } }, { @@ -3439,7 +3439,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1812" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1791" } }, { @@ -3548,7 +3548,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1823" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1802" } }, { @@ -3606,7 +3606,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1834" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1813" } }, { @@ -3728,7 +3728,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1845" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1824" } }, { @@ -3937,7 +3937,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1856" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1835" } }, { @@ -4137,7 +4137,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1867" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1846" } }, { @@ -4329,7 +4329,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1878" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1857" } }, { @@ -4538,7 +4538,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1889" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1868" } }, { @@ -4629,7 +4629,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1900" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1879" } }, { @@ -4687,7 +4687,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1911" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1890" } }, { @@ -4945,7 +4945,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1922" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1901" } }, { @@ -5220,7 +5220,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1933" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1912" } }, { @@ -5248,7 +5248,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1944" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1923" } }, { @@ -5286,7 +5286,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1955" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1934" } }, { @@ -5394,7 +5394,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1966" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1945" } }, { @@ -5432,7 +5432,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1977" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1956" } }, { @@ -5461,7 +5461,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1988" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1967" } }, { @@ -5524,7 +5524,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1999" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1978" } }, { @@ -5587,7 +5587,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2010" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L1989" } }, { @@ -5632,7 +5632,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2021" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2000" } }, { @@ -5754,7 +5754,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2032" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2011" } }, { @@ -5909,7 +5909,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2043" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2022" } }, { @@ -6031,7 +6031,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2054" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2033" } }, { @@ -6085,7 +6085,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2065" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2044" } }, { @@ -6139,7 +6139,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2076" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2055" } }, { @@ -6194,7 +6194,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2087" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2066" } }, { @@ -6337,7 +6337,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2098" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2077" } }, { @@ -6464,7 +6464,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2109" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2088" } }, { @@ -6566,7 +6566,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2120" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2099" } }, { @@ -6789,7 +6789,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2131" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2110" } }, { @@ -6972,7 +6972,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2142" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2121" } }, { @@ -7052,7 +7052,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2153" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2132" } }, { @@ -7097,7 +7097,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2164" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2143" } }, { @@ -7153,7 +7153,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2175" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2154" } }, { @@ -7233,7 +7233,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2186" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2165" } }, { @@ -7313,7 +7313,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2197" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2176" } }, { @@ -7798,7 +7798,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2208" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2187" } }, { @@ -7992,7 +7992,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2219" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2198" } }, { @@ -8147,7 +8147,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2230" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2209" } }, { @@ -8396,7 +8396,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2241" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2220" } }, { @@ -8551,7 +8551,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2252" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2231" } }, { @@ -8728,7 +8728,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2263" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2242" } }, { @@ -8826,7 +8826,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2274" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2253" } }, { @@ -8991,7 +8991,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2285" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2264" } }, { @@ -9030,7 +9030,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2296" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2275" } }, { @@ -9095,7 +9095,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2307" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2286" } }, { @@ -9141,7 +9141,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2318" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2297" } }, { @@ -9291,7 +9291,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2329" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2308" } }, { @@ -9428,7 +9428,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2340" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2319" } }, { @@ -9659,7 +9659,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2351" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2330" } }, { @@ -9796,7 +9796,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2362" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2341" } }, { @@ -9961,7 +9961,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2373" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2352" } }, { @@ -10038,7 +10038,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2384" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2363" } }, { @@ -10233,7 +10233,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2406" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2385" } }, { @@ -10412,7 +10412,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2417" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2396" } }, { @@ -10574,7 +10574,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2428" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2407" } }, { @@ -10722,7 +10722,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2439" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2418" } }, { @@ -10950,7 +10950,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2450" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2429" } }, { @@ -11098,7 +11098,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2461" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2440" } }, { @@ -11310,7 +11310,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2472" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2451" } }, { @@ -11516,7 +11516,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2483" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2462" } }, { @@ -11584,7 +11584,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2494" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2473" } }, { @@ -11701,7 +11701,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2505" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2484" } }, { @@ -11792,7 +11792,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2516" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2495" } }, { @@ -11878,7 +11878,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2527" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2506" } }, { @@ -12073,7 +12073,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2538" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2517" } }, { @@ -12235,7 +12235,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2549" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2528" } }, { @@ -12431,7 +12431,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2560" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2539" } }, { @@ -12611,7 +12611,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2571" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2550" } }, { @@ -12774,7 +12774,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2582" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2561" } }, { @@ -12801,7 +12801,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2593" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2572" } }, { @@ -12828,7 +12828,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2604" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2583" } }, { @@ -12927,7 +12927,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2615" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2594" } }, { @@ -12973,7 +12973,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2626" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2605" } }, { @@ -13073,7 +13073,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2637" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2616" } }, { @@ -13189,7 +13189,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2648" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2627" } }, { @@ -13237,7 +13237,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2659" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2638" } }, { @@ -13329,7 +13329,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2670" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2649" } }, { @@ -13444,7 +13444,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2681" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2660" } }, { @@ -13492,7 +13492,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2692" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2671" } }, { @@ -13529,7 +13529,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2703" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2682" } }, { @@ -13801,7 +13801,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2714" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2693" } }, { @@ -13849,7 +13849,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2725" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2704" } }, { @@ -13907,7 +13907,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2736" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2715" } }, { @@ -14112,7 +14112,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2747" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2726" } }, { @@ -14315,7 +14315,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2758" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2737" } }, { @@ -14484,7 +14484,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2769" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2748" } }, { @@ -14688,7 +14688,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2780" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2759" } }, { @@ -14855,7 +14855,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2791" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2770" } }, { @@ -15062,7 +15062,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2802" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2781" } }, { @@ -15130,7 +15130,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2813" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2792" } }, { @@ -15182,7 +15182,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2824" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2803" } }, { @@ -15231,7 +15231,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2835" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2814" } }, { @@ -15322,7 +15322,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2846" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2825" } }, { @@ -15828,7 +15828,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2857" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2836" } }, { @@ -15934,7 +15934,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2868" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2847" } }, { @@ -15986,7 +15986,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2879" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2858" } }, { @@ -16538,7 +16538,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2890" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2869" } }, { @@ -16652,7 +16652,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2901" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2880" } }, { @@ -16749,7 +16749,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2912" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2891" } }, { @@ -16849,7 +16849,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2923" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2902" } }, { @@ -16937,7 +16937,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2934" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2913" } }, { @@ -17037,7 +17037,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2945" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2924" } }, { @@ -17124,7 +17124,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2956" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2935" } }, { @@ -17215,7 +17215,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2967" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2946" } }, { @@ -17340,7 +17340,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2978" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2957" } }, { @@ -17449,7 +17449,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2989" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2968" } }, { @@ -17519,7 +17519,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3000" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2979" } }, { @@ -17622,7 +17622,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3011" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L2990" } }, { @@ -17683,7 +17683,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3022" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3001" } }, { @@ -17813,7 +17813,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3033" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3012" } }, { @@ -17920,7 +17920,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3044" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3023" } }, { @@ -18134,7 +18134,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3055" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3034" } }, { @@ -18211,7 +18211,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3066" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3045" } }, { @@ -18288,7 +18288,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3077" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3056" } }, { @@ -18397,7 +18397,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3088" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3067" } }, { @@ -18506,7 +18506,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3099" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3078" } }, { @@ -18567,7 +18567,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3110" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3089" } }, { @@ -18677,7 +18677,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3121" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3100" } }, { @@ -18738,7 +18738,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3132" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3111" } }, { @@ -18806,7 +18806,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3143" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3122" } }, { @@ -18874,7 +18874,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3154" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3133" } }, { @@ -18955,7 +18955,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3165" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3144" } }, { @@ -19109,7 +19109,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3176" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3155" } }, { @@ -19181,7 +19181,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3187" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3166" } }, { @@ -19345,7 +19345,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3198" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3177" } }, { @@ -19510,7 +19510,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3209" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3188" } }, { @@ -19580,7 +19580,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3220" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3199" } }, { @@ -19648,7 +19648,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3231" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3210" } }, { @@ -19741,7 +19741,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3242" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3221" } }, { @@ -19812,7 +19812,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3253" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3232" } }, { @@ -20013,7 +20013,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3264" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3243" } }, { @@ -20145,7 +20145,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3275" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3254" } }, { @@ -20282,7 +20282,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3286" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3265" } }, { @@ -20393,7 +20393,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3297" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3276" } }, { @@ -20525,7 +20525,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3308" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3287" } }, { @@ -20656,7 +20656,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3319" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3298" } }, { @@ -20727,7 +20727,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3330" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3309" } }, { @@ -20811,7 +20811,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3341" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3320" } }, { @@ -20897,7 +20897,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3352" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3331" } }, { @@ -21080,7 +21080,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3363" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3342" } }, { @@ -21107,7 +21107,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3374" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3353" } }, { @@ -21160,7 +21160,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3385" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3364" } }, { @@ -21248,7 +21248,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3396" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3375" } }, { @@ -21699,7 +21699,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3407" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3386" } }, { @@ -21866,7 +21866,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3418" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3397" } }, { @@ -21964,7 +21964,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3429" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3408" } }, { @@ -22137,7 +22137,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3440" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3419" } }, { @@ -22235,7 +22235,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3451" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3430" } }, { @@ -22386,7 +22386,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3462" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3441" } }, { @@ -22471,7 +22471,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3473" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3452" } }, { @@ -22539,7 +22539,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3484" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3463" } }, { @@ -22591,7 +22591,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3495" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3474" } }, { @@ -22659,7 +22659,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3506" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3485" } }, { @@ -22820,7 +22820,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3517" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3496" } }, { @@ -22867,7 +22867,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3539" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3518" } }, { @@ -22914,7 +22914,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3550" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3529" } }, { @@ -22957,7 +22957,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3572" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3551" } }, { @@ -23053,7 +23053,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3583" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3562" } }, { @@ -23319,7 +23319,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3594" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3573" } }, { @@ -23342,7 +23342,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3605" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3584" } }, { @@ -23385,7 +23385,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3616" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3595" } }, { @@ -23436,7 +23436,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3627" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3606" } }, { @@ -23481,7 +23481,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3638" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3617" } }, { @@ -23509,7 +23509,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3649" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3628" } }, { @@ -23549,7 +23549,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3660" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3639" } }, { @@ -23608,7 +23608,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3671" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3650" } }, { @@ -23652,7 +23652,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3682" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3661" } }, { @@ -23711,7 +23711,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3693" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3672" } }, { @@ -23748,7 +23748,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3704" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3683" } }, { @@ -23792,7 +23792,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3715" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3694" } }, { @@ -23832,7 +23832,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3726" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3705" } }, { @@ -23907,7 +23907,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3737" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3716" } }, { @@ -24115,7 +24115,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3748" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3727" } }, { @@ -24159,7 +24159,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3759" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3738" } }, { @@ -24249,7 +24249,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3770" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3749" } }, { @@ -24276,7 +24276,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3781" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3760" } } ] diff --git a/build/openrpc/gateway.json b/build/openrpc/gateway.json index 55b903249..bbd7f4b6b 100644 --- a/build/openrpc/gateway.json +++ b/build/openrpc/gateway.json @@ -242,7 +242,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3792" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3771" } }, { @@ -473,7 +473,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3803" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3782" } }, { @@ -572,7 +572,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3814" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3793" } }, { @@ -604,7 +604,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3825" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3804" } }, { @@ -710,7 +710,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3836" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3815" } }, { @@ -803,7 +803,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3847" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3826" } }, { @@ -887,7 +887,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3858" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3837" } }, { @@ -987,7 +987,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3869" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3848" } }, { @@ -1043,7 +1043,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3880" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3859" } }, { @@ -1116,7 +1116,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3891" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3870" } }, { @@ -1189,7 +1189,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3902" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3881" } }, { @@ -1236,7 +1236,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3913" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3892" } }, { @@ -1268,7 +1268,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3924" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3903" } }, { @@ -1305,7 +1305,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3946" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3925" } }, { @@ -1352,7 +1352,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3957" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3936" } }, { @@ -1392,7 +1392,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3968" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3947" } }, { @@ -1439,7 +1439,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3979" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3958" } }, { @@ -1494,7 +1494,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3990" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3969" } }, { @@ -1523,7 +1523,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4001" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3980" } }, { @@ -1660,7 +1660,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4012" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L3991" } }, { @@ -1689,7 +1689,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4023" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4002" } }, { @@ -1743,7 +1743,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4034" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4013" } }, { @@ -1834,7 +1834,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4045" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4024" } }, { @@ -1862,7 +1862,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4056" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4035" } }, { @@ -1952,7 +1952,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4067" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4046" } }, { @@ -2208,7 +2208,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4078" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4057" } }, { @@ -2453,7 +2453,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4089" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4068" } }, { @@ -2509,7 +2509,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4100" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4079" } }, { @@ -2556,7 +2556,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4111" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4090" } }, { @@ -2654,7 +2654,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4122" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4101" } }, { @@ -2720,7 +2720,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4133" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4112" } }, { @@ -2786,7 +2786,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4144" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4123" } }, { @@ -2895,7 +2895,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4155" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4134" } }, { @@ -2953,7 +2953,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4166" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4145" } }, { @@ -3075,7 +3075,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4177" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4156" } }, { @@ -3267,7 +3267,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4188" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4167" } }, { @@ -3476,7 +3476,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4199" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4178" } }, { @@ -3567,7 +3567,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4210" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4189" } }, { @@ -3625,7 +3625,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4221" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4200" } }, { @@ -3883,7 +3883,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4232" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4211" } }, { @@ -4158,7 +4158,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4243" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4222" } }, { @@ -4186,7 +4186,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4254" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4233" } }, { @@ -4224,7 +4224,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4265" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4244" } }, { @@ -4332,7 +4332,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4276" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4255" } }, { @@ -4370,7 +4370,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4287" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4266" } }, { @@ -4399,7 +4399,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4298" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4277" } }, { @@ -4462,7 +4462,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4309" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4288" } }, { @@ -4525,7 +4525,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4320" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4299" } }, { @@ -4570,7 +4570,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4331" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4310" } }, { @@ -4692,7 +4692,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4342" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4321" } }, { @@ -4847,7 +4847,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4353" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4332" } }, { @@ -4969,7 +4969,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4364" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4343" } }, { @@ -5023,7 +5023,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4375" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4354" } }, { @@ -5077,7 +5077,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4386" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4365" } }, { @@ -5132,7 +5132,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4397" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4376" } }, { @@ -5234,7 +5234,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4408" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4387" } }, { @@ -5457,7 +5457,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4419" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4398" } }, { @@ -5640,7 +5640,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4430" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4409" } }, { @@ -5834,7 +5834,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4441" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4420" } }, { @@ -5880,7 +5880,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4452" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4431" } }, { @@ -6030,7 +6030,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4463" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4442" } }, { @@ -6167,7 +6167,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4474" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4453" } }, { @@ -6235,7 +6235,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4485" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4464" } }, { @@ -6352,7 +6352,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4496" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4475" } }, { @@ -6443,7 +6443,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4507" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4486" } }, { @@ -6529,7 +6529,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4518" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4497" } }, { @@ -6556,7 +6556,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4529" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4508" } }, { @@ -6583,7 +6583,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4540" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4519" } }, { @@ -6651,7 +6651,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4551" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4530" } }, { @@ -7157,7 +7157,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4562" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4541" } }, { @@ -7254,7 +7254,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4573" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4552" } }, { @@ -7354,7 +7354,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4584" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4563" } }, { @@ -7454,7 +7454,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4595" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4574" } }, { @@ -7579,7 +7579,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4606" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4585" } }, { @@ -7688,7 +7688,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4617" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4596" } }, { @@ -7791,7 +7791,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4628" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4607" } }, { @@ -7921,7 +7921,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4639" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4618" } }, { @@ -8028,7 +8028,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4650" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4629" } }, { @@ -8089,7 +8089,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4661" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4640" } }, { @@ -8157,7 +8157,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4672" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4651" } }, { @@ -8238,7 +8238,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4683" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4662" } }, { @@ -8402,7 +8402,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4694" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4673" } }, { @@ -8495,7 +8495,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4705" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4684" } }, { @@ -8696,7 +8696,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4716" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4695" } }, { @@ -8807,7 +8807,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4727" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4706" } }, { @@ -8938,7 +8938,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4738" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4717" } }, { @@ -9024,7 +9024,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4749" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4728" } }, { @@ -9051,7 +9051,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4760" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4739" } }, { @@ -9104,7 +9104,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4771" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4750" } }, { @@ -9192,7 +9192,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4782" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4761" } }, { @@ -9643,7 +9643,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4793" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4772" } }, { @@ -9810,7 +9810,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4804" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4783" } }, { @@ -9983,7 +9983,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4815" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4794" } }, { @@ -10051,7 +10051,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4826" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4805" } }, { @@ -10119,7 +10119,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4837" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4816" } }, { @@ -10280,7 +10280,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4848" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4827" } }, { @@ -10325,7 +10325,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4870" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4849" } }, { @@ -10370,7 +10370,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4881" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4860" } }, { @@ -10397,7 +10397,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4892" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L4871" } } ] diff --git a/build/openrpc/miner.json b/build/openrpc/miner.json index 7154ab200..77259c3e9 100644 --- a/build/openrpc/miner.json +++ b/build/openrpc/miner.json @@ -30,7 +30,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5178" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5157" } }, { @@ -109,7 +109,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5189" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5168" } }, { @@ -155,7 +155,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5200" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5179" } }, { @@ -203,7 +203,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5211" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5190" } }, { @@ -251,7 +251,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5222" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5201" } }, { @@ -354,7 +354,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5233" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5212" } }, { @@ -428,7 +428,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5244" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5223" } }, { @@ -591,7 +591,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5255" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5234" } }, { @@ -742,7 +742,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5266" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5245" } }, { @@ -781,7 +781,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5277" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5256" } }, { @@ -913,7 +913,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5288" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5267" } }, { @@ -945,7 +945,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5299" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5278" } }, { @@ -986,7 +986,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5310" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5289" } }, { @@ -1054,7 +1054,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5321" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5300" } }, { @@ -1185,7 +1185,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5332" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5311" } }, { @@ -1316,7 +1316,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5343" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5322" } }, { @@ -1416,7 +1416,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5354" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5333" } }, { @@ -1516,7 +1516,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5365" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5344" } }, { @@ -1616,7 +1616,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5376" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5355" } }, { @@ -1716,7 +1716,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5387" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5366" } }, { @@ -1816,7 +1816,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5398" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5377" } }, { @@ -1916,7 +1916,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5409" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5388" } }, { @@ -2040,7 +2040,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5420" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5399" } }, { @@ -2164,7 +2164,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5431" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5410" } }, { @@ -2279,7 +2279,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5442" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5421" } }, { @@ -2379,7 +2379,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5453" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5432" } }, { @@ -2512,7 +2512,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5464" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5443" } }, { @@ -2636,7 +2636,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5475" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5454" } }, { @@ -2760,7 +2760,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5486" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5465" } }, { @@ -2884,7 +2884,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5497" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5476" } }, { @@ -3017,7 +3017,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5508" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5487" } }, { @@ -3117,7 +3117,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5519" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5498" } }, { @@ -3157,7 +3157,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5530" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5509" } }, { @@ -3229,7 +3229,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5541" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5520" } }, { @@ -3279,7 +3279,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5552" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5531" } }, { @@ -3323,7 +3323,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5563" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5542" } }, { @@ -3364,7 +3364,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5574" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5553" } }, { @@ -3608,7 +3608,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5585" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5564" } }, { @@ -3682,7 +3682,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5596" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5575" } }, { @@ -3732,7 +3732,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5607" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5586" } }, { @@ -3761,7 +3761,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5618" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5597" } }, { @@ -3790,7 +3790,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5629" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5608" } }, { @@ -3846,7 +3846,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5640" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5619" } }, { @@ -3869,7 +3869,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5651" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5630" } }, { @@ -3929,7 +3929,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5662" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5641" } }, { @@ -3968,7 +3968,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5673" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5652" } }, { @@ -4008,7 +4008,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5684" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5663" } }, { @@ -4081,7 +4081,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5695" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5674" } }, { @@ -4145,7 +4145,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5706" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5685" } }, { @@ -4208,7 +4208,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5717" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5696" } }, { @@ -4258,7 +4258,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5728" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5707" } }, { @@ -4817,7 +4817,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5739" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5718" } }, { @@ -4858,7 +4858,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5750" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5729" } }, { @@ -4899,7 +4899,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5761" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5740" } }, { @@ -4940,7 +4940,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5772" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5751" } }, { @@ -4981,7 +4981,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5783" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5762" } }, { @@ -5022,7 +5022,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5794" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5773" } }, { @@ -5053,7 +5053,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5805" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5784" } }, { @@ -5103,7 +5103,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5816" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5795" } }, { @@ -5144,7 +5144,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5827" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5806" } }, { @@ -5183,7 +5183,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5838" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5817" } }, { @@ -5247,7 +5247,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5849" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5828" } }, { @@ -5305,7 +5305,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5860" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5839" } }, { @@ -5752,7 +5752,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5871" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5850" } }, { @@ -5788,7 +5788,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5882" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5861" } }, { @@ -5931,7 +5931,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5893" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5872" } }, { @@ -5987,7 +5987,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5904" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5883" } }, { @@ -6026,7 +6026,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5915" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5894" } }, { @@ -6203,7 +6203,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5926" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5905" } }, { @@ -6255,7 +6255,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5937" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5916" } }, { @@ -6447,7 +6447,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5948" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5927" } }, { @@ -6547,7 +6547,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5959" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5938" } }, { @@ -6601,7 +6601,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5970" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5949" } }, { @@ -6640,7 +6640,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5981" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5960" } }, { @@ -6725,7 +6725,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5992" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5971" } }, { @@ -6919,7 +6919,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6003" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5982" } }, { @@ -7017,7 +7017,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6014" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L5993" } }, { @@ -7149,7 +7149,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6025" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6004" } }, { @@ -7203,7 +7203,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6036" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6015" } }, { @@ -7237,7 +7237,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6047" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6026" } }, { @@ -7324,7 +7324,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6058" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6037" } }, { @@ -7378,7 +7378,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6069" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6048" } }, { @@ -7478,7 +7478,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6080" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6059" } }, { @@ -7555,7 +7555,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6091" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6070" } }, { @@ -7646,7 +7646,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6102" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6081" } }, { @@ -7685,7 +7685,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6113" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6092" } }, { @@ -7801,7 +7801,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6124" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6103" } }, { @@ -9901,7 +9901,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6135" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6114" } } ] diff --git a/build/openrpc/worker.json b/build/openrpc/worker.json index 0014c9a55..201dec42c 100644 --- a/build/openrpc/worker.json +++ b/build/openrpc/worker.json @@ -161,7 +161,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6223" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6202" } }, { @@ -252,7 +252,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6234" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6213" } }, { @@ -420,7 +420,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6245" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6224" } }, { @@ -447,7 +447,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6256" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6235" } }, { @@ -597,7 +597,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6267" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6246" } }, { @@ -700,7 +700,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6278" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6257" } }, { @@ -803,7 +803,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6289" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6268" } }, { @@ -925,7 +925,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6300" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6279" } }, { @@ -1135,7 +1135,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6311" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6290" } }, { @@ -1306,7 +1306,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6322" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6301" } }, { @@ -3350,7 +3350,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6333" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6312" } }, { @@ -3470,7 +3470,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6344" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6323" } }, { @@ -3531,7 +3531,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6355" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6334" } }, { @@ -3569,7 +3569,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6366" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6345" } }, { @@ -3729,7 +3729,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6377" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6356" } }, { @@ -3913,7 +3913,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6388" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6367" } }, { @@ -4054,7 +4054,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6399" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6378" } }, { @@ -4107,7 +4107,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6410" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6389" } }, { @@ -4250,7 +4250,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6421" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6400" } }, { @@ -4474,7 +4474,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6432" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6411" } }, { @@ -4601,7 +4601,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6443" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6422" } }, { @@ -4768,7 +4768,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6454" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6433" } }, { @@ -4895,7 +4895,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6465" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6444" } }, { @@ -4933,7 +4933,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6476" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6455" } }, { @@ -4972,7 +4972,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6487" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6466" } }, { @@ -4995,7 +4995,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6498" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6477" } }, { @@ -5034,7 +5034,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6509" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6488" } }, { @@ -5057,7 +5057,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6520" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6499" } }, { @@ -5096,7 +5096,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6531" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6510" } }, { @@ -5130,7 +5130,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6542" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6521" } }, { @@ -5184,7 +5184,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6553" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6532" } }, { @@ -5223,7 +5223,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6564" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6543" } }, { @@ -5262,7 +5262,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6575" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6554" } }, { @@ -5297,7 +5297,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6586" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6565" } }, { @@ -5477,7 +5477,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6597" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6576" } }, { @@ -5506,7 +5506,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6608" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6587" } }, { @@ -5529,7 +5529,7 @@ "deprecated": false, "externalDocs": { "description": "Github remote link", - "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6619" + "url": "https://github.com/filecoin-project/lotus/blob/master/api/proxy_gen.go#L6598" } } ] diff --git a/cli/net.go b/cli/net.go index 38a271a29..249a6c4b7 100644 --- a/cli/net.go +++ b/cli/net.go @@ -66,7 +66,7 @@ var NetPeers = &cli.Command{ }, }, Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -146,7 +146,7 @@ var NetPing = &cli.Command{ return IncorrectNumArgs(cctx) } - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -211,7 +211,7 @@ var NetScores = &cli.Command{ }, }, Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -244,7 +244,7 @@ var NetListen = &cli.Command{ Name: "listen", Usage: "List listen addresses", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -268,7 +268,7 @@ var NetDisconnect = &cli.Command{ Usage: "Disconnect from a peer", ArgsUsage: "[peerID]", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -299,7 +299,7 @@ var NetConnect = &cli.Command{ Usage: "Connect to a peer", ArgsUsage: "[peerMultiaddr|minerActorAddress]", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -374,7 +374,7 @@ var NetId = &cli.Command{ Name: "id", Usage: "Get node identity", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -408,7 +408,7 @@ var NetFindPeer = &cli.Command{ return err } - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -431,7 +431,7 @@ var NetReachability = &cli.Command{ Name: "reachability", Usage: "Print information about reachability from the internet", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -466,7 +466,7 @@ var NetBandwidthCmd = &cli.Command{ }, }, Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -585,7 +585,7 @@ var NetBlockAddPeer = &cli.Command{ Usage: "Block a peer", ArgsUsage: " ...", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -611,7 +611,7 @@ var NetBlockAddIP = &cli.Command{ Usage: "Block an IP address", ArgsUsage: " ...", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -627,7 +627,7 @@ var NetBlockAddSubnet = &cli.Command{ Usage: "Block an IP subnet", ArgsUsage: " ...", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -653,7 +653,7 @@ var NetBlockRemovePeer = &cli.Command{ Usage: "Unblock a peer", ArgsUsage: " ...", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -679,7 +679,7 @@ var NetBlockRemoveIP = &cli.Command{ Usage: "Unblock an IP address", ArgsUsage: " ...", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -695,7 +695,7 @@ var NetBlockRemoveSubnet = &cli.Command{ Usage: "Unblock an IP subnet", ArgsUsage: " ...", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -710,7 +710,7 @@ var NetBlockListCmd = &cli.Command{ Name: "list", Usage: "list connection gating rules", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -799,7 +799,7 @@ var NetStatCmd = &cli.Command{ - all -- reports the resource usage for all currently active scopes. `, Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -906,7 +906,7 @@ var NetLimitCmd = &cli.Command{ }, }, Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -951,7 +951,7 @@ var NetProtectAdd = &cli.Command{ Usage: "Add one or more peer IDs to the list of protected peer connections", ArgsUsage: " [...]", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -981,7 +981,7 @@ var NetProtectRemove = &cli.Command{ Usage: "Remove one or more peer IDs from the list of protected peer connections.", ArgsUsage: " [...]", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } @@ -1033,7 +1033,7 @@ var NetProtectList = &cli.Command{ Name: "list-protected", Usage: "List the peer IDs with protected connection.", Action: func(cctx *cli.Context) error { - api, closer, err := GetAPI(cctx) + api, closer, err := GetFullNodeAPI(cctx) if err != nil { return err } diff --git a/cli/util/api.go b/cli/util/api.go index a734b2337..39077e98e 100644 --- a/cli/util/api.go +++ b/cli/util/api.go @@ -179,7 +179,7 @@ func GetRawAPI(ctx *cli.Context, t repo.RepoType, version string) (string, http. return heads[0].addr, heads[0].header, nil } -func GetCommonAPI(ctx *cli.Context) (api.CommonNet, jsonrpc.ClientCloser, error) { +func GetCommonAPI(ctx *cli.Context) (api.Common, jsonrpc.ClientCloser, error) { ti, ok := ctx.App.Metadata["repoType"] if !ok { log.Errorf("unknown repo type, are you sure you want to use GetCommonAPI?") diff --git a/documentation/en/api-v0-methods-curio.md b/documentation/en/api-v0-methods-curio.md deleted file mode 100644 index 0bfe09af5..000000000 --- a/documentation/en/api-v0-methods-curio.md +++ /dev/null @@ -1,369 +0,0 @@ -# Groups -* [](#) - * [Shutdown](#Shutdown) - * [Version](#Version) -* [Allocate](#Allocate) - * [AllocatePieceToSector](#AllocatePieceToSector) -* [Log](#Log) - * [LogList](#LogList) - * [LogSetLevel](#LogSetLevel) -* [Storage](#Storage) - * [StorageAddLocal](#StorageAddLocal) - * [StorageDetachLocal](#StorageDetachLocal) - * [StorageFindSector](#StorageFindSector) - * [StorageInfo](#StorageInfo) - * [StorageInit](#StorageInit) - * [StorageList](#StorageList) - * [StorageLocal](#StorageLocal) - * [StorageStat](#StorageStat) -## - - -### Shutdown -Trigger shutdown - - -Perms: admin - -Inputs: `null` - -Response: `{}` - -### Version - - -Perms: admin - -Inputs: `null` - -Response: `131840` - -## Allocate - - -### AllocatePieceToSector - - -Perms: write - -Inputs: -```json -[ - "f01234", - { - "PublishCid": { - "/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4" - }, - "DealID": 5432, - "DealProposal": { - "PieceCID": { - "/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4" - }, - "PieceSize": 1032, - "VerifiedDeal": true, - "Client": "f01234", - "Provider": "f01234", - "Label": "", - "StartEpoch": 10101, - "EndEpoch": 10101, - "StoragePricePerEpoch": "0", - "ProviderCollateral": "0", - "ClientCollateral": "0" - }, - "DealSchedule": { - "StartEpoch": 10101, - "EndEpoch": 10101 - }, - "PieceActivationManifest": { - "CID": { - "/": "bafy2bzacea3wsdh6y3a36tb3skempjoxqpuyompjbmfeyf34fi3uy6uue42v4" - }, - "Size": 2032, - "VerifiedAllocationKey": null, - "Notify": null - }, - "KeepUnsealed": true - }, - 9, - { - "Scheme": "string value", - "Opaque": "string value", - "User": {}, - "Host": "string value", - "Path": "string value", - "RawPath": "string value", - "OmitHost": true, - "ForceQuery": true, - "RawQuery": "string value", - "Fragment": "string value", - "RawFragment": "string value" - }, - { - "Authorization": [ - "Bearer ey.." - ] - } -] -``` - -Response: -```json -{ - "Sector": 9, - "Offset": 1032 -} -``` - -## Log - - -### LogList - - -Perms: read - -Inputs: `null` - -Response: -```json -[ - "string value" -] -``` - -### LogSetLevel - - -Perms: admin - -Inputs: -```json -[ - "string value", - "string value" -] -``` - -Response: `{}` - -## Storage - - -### StorageAddLocal - - -Perms: admin - -Inputs: -```json -[ - "string value" -] -``` - -Response: `{}` - -### StorageDetachLocal - - -Perms: admin - -Inputs: -```json -[ - "string value" -] -``` - -Response: `{}` - -### StorageFindSector - - -Perms: admin - -Inputs: -```json -[ - { - "Miner": 1000, - "Number": 9 - }, - 1, - 34359738368, - true -] -``` - -Response: -```json -[ - { - "ID": "76f1988b-ef30-4d7e-b3ec-9a627f4ba5a8", - "URLs": [ - "string value" - ], - "BaseURLs": [ - "string value" - ], - "Weight": 42, - "CanSeal": true, - "CanStore": true, - "Primary": true, - "AllowTypes": [ - "string value" - ], - "DenyTypes": [ - "string value" - ], - "AllowMiners": [ - "string value" - ], - "DenyMiners": [ - "string value" - ] - } -] -``` - -### StorageInfo - - -Perms: admin - -Inputs: -```json -[ - "76f1988b-ef30-4d7e-b3ec-9a627f4ba5a8" -] -``` - -Response: -```json -{ - "ID": "76f1988b-ef30-4d7e-b3ec-9a627f4ba5a8", - "URLs": [ - "string value" - ], - "Weight": 42, - "MaxStorage": 42, - "CanSeal": true, - "CanStore": true, - "Groups": [ - "string value" - ], - "AllowTo": [ - "string value" - ], - "AllowTypes": [ - "string value" - ], - "DenyTypes": [ - "string value" - ], - "AllowMiners": [ - "string value" - ], - "DenyMiners": [ - "string value" - ] -} -``` - -### StorageInit - - -Perms: admin - -Inputs: -```json -[ - "string value", - { - "ID": "76f1988b-ef30-4d7e-b3ec-9a627f4ba5a8", - "Weight": 42, - "CanSeal": true, - "CanStore": true, - "MaxStorage": 42, - "Groups": [ - "string value" - ], - "AllowTo": [ - "string value" - ], - "AllowTypes": [ - "string value" - ], - "DenyTypes": [ - "string value" - ], - "AllowMiners": [ - "string value" - ], - "DenyMiners": [ - "string value" - ] - } -] -``` - -Response: `{}` - -### StorageList - - -Perms: admin - -Inputs: `null` - -Response: -```json -{ - "76f1988b-ef30-4d7e-b3ec-9a627f4ba5a8": [ - { - "Miner": 1000, - "Number": 100, - "SectorFileType": 2 - } - ] -} -``` - -### StorageLocal - - -Perms: admin - -Inputs: `null` - -Response: -```json -{ - "76f1988b-ef30-4d7e-b3ec-9a627f4ba5a8": "/data/path" -} -``` - -### StorageStat - - -Perms: admin - -Inputs: -```json -[ - "76f1988b-ef30-4d7e-b3ec-9a627f4ba5a8" -] -``` - -Response: -```json -{ - "Capacity": 9, - "Available": 9, - "FSAvailable": 9, - "Reserved": 9, - "Max": 9, - "Used": 9 -} -``` - diff --git a/documentation/en/api-v0-methods-miner.md b/documentation/en/api-v0-methods-miner.md index ce09667e5..0bf4d3325 100644 --- a/documentation/en/api-v0-methods-miner.md +++ b/documentation/en/api-v0-methods-miner.md @@ -23,8 +23,6 @@ * [ComputeWindowPoSt](#ComputeWindowPoSt) * [Create](#Create) * [CreateBackup](#CreateBackup) -* [I](#I) - * [ID](#ID) * [Log](#Log) * [LogAlerts](#LogAlerts) * [LogList](#LogList) @@ -33,30 +31,6 @@ * [MarketListDeals](#MarketListDeals) * [Mining](#Mining) * [MiningBase](#MiningBase) -* [Net](#Net) - * [NetAddrsListen](#NetAddrsListen) - * [NetAgentVersion](#NetAgentVersion) - * [NetAutoNatStatus](#NetAutoNatStatus) - * [NetBandwidthStats](#NetBandwidthStats) - * [NetBandwidthStatsByPeer](#NetBandwidthStatsByPeer) - * [NetBandwidthStatsByProtocol](#NetBandwidthStatsByProtocol) - * [NetBlockAdd](#NetBlockAdd) - * [NetBlockList](#NetBlockList) - * [NetBlockRemove](#NetBlockRemove) - * [NetConnect](#NetConnect) - * [NetConnectedness](#NetConnectedness) - * [NetDisconnect](#NetDisconnect) - * [NetFindPeer](#NetFindPeer) - * [NetLimit](#NetLimit) - * [NetPeerInfo](#NetPeerInfo) - * [NetPeers](#NetPeers) - * [NetPing](#NetPing) - * [NetProtectAdd](#NetProtectAdd) - * [NetProtectList](#NetProtectList) - * [NetProtectRemove](#NetProtectRemove) - * [NetPubsubScores](#NetPubsubScores) - * [NetSetLimit](#NetSetLimit) - * [NetStat](#NetStat) * [Pledge](#Pledge) * [PledgeSector](#PledgeSector) * [Recover](#Recover) @@ -507,18 +481,6 @@ Inputs: Response: `{}` -## I - - -### ID - - -Perms: read - -Inputs: `null` - -Response: `"12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf"` - ## Log @@ -639,510 +601,6 @@ Response: } ``` -## Net - - -### NetAddrsListen - - -Perms: read - -Inputs: `null` - -Response: -```json -{ - "ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf", - "Addrs": [ - "/ip4/52.36.61.156/tcp/1347/p2p/12D3KooWFETiESTf1v4PGUvtnxMAcEFMzLZbJGg4tjWfGEimYior" - ] -} -``` - -### NetAgentVersion - - -Perms: read - -Inputs: -```json -[ - "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf" -] -``` - -Response: `"string value"` - -### NetAutoNatStatus - - -Perms: read - -Inputs: `null` - -Response: -```json -{ - "Reachability": 1, - "PublicAddrs": [ - "string value" - ] -} -``` - -### NetBandwidthStats - - -Perms: read - -Inputs: `null` - -Response: -```json -{ - "TotalIn": 9, - "TotalOut": 9, - "RateIn": 12.3, - "RateOut": 12.3 -} -``` - -### NetBandwidthStatsByPeer - - -Perms: read - -Inputs: `null` - -Response: -```json -{ - "12D3KooWSXmXLJmBR1M7i9RW9GQPNUhZSzXKzxDHWtAgNuJAbyEJ": { - "TotalIn": 174000, - "TotalOut": 12500, - "RateIn": 100, - "RateOut": 50 - } -} -``` - -### NetBandwidthStatsByProtocol - - -Perms: read - -Inputs: `null` - -Response: -```json -{ - "/fil/hello/1.0.0": { - "TotalIn": 174000, - "TotalOut": 12500, - "RateIn": 100, - "RateOut": 50 - } -} -``` - -### NetBlockAdd - - -Perms: admin - -Inputs: -```json -[ - { - "Peers": [ - "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf" - ], - "IPAddrs": [ - "string value" - ], - "IPSubnets": [ - "string value" - ] - } -] -``` - -Response: `{}` - -### NetBlockList - - -Perms: read - -Inputs: `null` - -Response: -```json -{ - "Peers": [ - "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf" - ], - "IPAddrs": [ - "string value" - ], - "IPSubnets": [ - "string value" - ] -} -``` - -### NetBlockRemove - - -Perms: admin - -Inputs: -```json -[ - { - "Peers": [ - "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf" - ], - "IPAddrs": [ - "string value" - ], - "IPSubnets": [ - "string value" - ] - } -] -``` - -Response: `{}` - -### NetConnect - - -Perms: write - -Inputs: -```json -[ - { - "ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf", - "Addrs": [ - "/ip4/52.36.61.156/tcp/1347/p2p/12D3KooWFETiESTf1v4PGUvtnxMAcEFMzLZbJGg4tjWfGEimYior" - ] - } -] -``` - -Response: `{}` - -### NetConnectedness - - -Perms: read - -Inputs: -```json -[ - "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf" -] -``` - -Response: `1` - -### NetDisconnect - - -Perms: write - -Inputs: -```json -[ - "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf" -] -``` - -Response: `{}` - -### NetFindPeer - - -Perms: read - -Inputs: -```json -[ - "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf" -] -``` - -Response: -```json -{ - "ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf", - "Addrs": [ - "/ip4/52.36.61.156/tcp/1347/p2p/12D3KooWFETiESTf1v4PGUvtnxMAcEFMzLZbJGg4tjWfGEimYior" - ] -} -``` - -### NetLimit - - -Perms: read - -Inputs: -```json -[ - "string value" -] -``` - -Response: -```json -{ - "Memory": 123, - "Streams": 3, - "StreamsInbound": 1, - "StreamsOutbound": 2, - "Conns": 4, - "ConnsInbound": 3, - "ConnsOutbound": 4, - "FD": 5 -} -``` - -### NetPeerInfo - - -Perms: read - -Inputs: -```json -[ - "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf" -] -``` - -Response: -```json -{ - "ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf", - "Agent": "string value", - "Addrs": [ - "string value" - ], - "Protocols": [ - "string value" - ], - "ConnMgrMeta": { - "FirstSeen": "0001-01-01T00:00:00Z", - "Value": 123, - "Tags": { - "name": 42 - }, - "Conns": { - "name": "2021-03-08T22:52:18Z" - } - } -} -``` - -### NetPeers - - -Perms: read - -Inputs: `null` - -Response: -```json -[ - { - "ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf", - "Addrs": [ - "/ip4/52.36.61.156/tcp/1347/p2p/12D3KooWFETiESTf1v4PGUvtnxMAcEFMzLZbJGg4tjWfGEimYior" - ] - } -] -``` - -### NetPing - - -Perms: read - -Inputs: -```json -[ - "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf" -] -``` - -Response: `60000000000` - -### NetProtectAdd - - -Perms: admin - -Inputs: -```json -[ - [ - "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf" - ] -] -``` - -Response: `{}` - -### NetProtectList - - -Perms: read - -Inputs: `null` - -Response: -```json -[ - "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf" -] -``` - -### NetProtectRemove - - -Perms: admin - -Inputs: -```json -[ - [ - "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf" - ] -] -``` - -Response: `{}` - -### NetPubsubScores - - -Perms: read - -Inputs: `null` - -Response: -```json -[ - { - "ID": "12D3KooWGzxzKZYveHXtpG6AsrUJBcWxHBFS2HsEoGTxrMLvKXtf", - "Score": { - "Score": 12.3, - "Topics": { - "/blocks": { - "TimeInMesh": 60000000000, - "FirstMessageDeliveries": 122, - "MeshMessageDeliveries": 1234, - "InvalidMessageDeliveries": 3 - } - }, - "AppSpecificScore": 12.3, - "IPColocationFactor": 12.3, - "BehaviourPenalty": 12.3 - } - } -] -``` - -### NetSetLimit - - -Perms: admin - -Inputs: -```json -[ - "string value", - { - "Memory": 123, - "Streams": 3, - "StreamsInbound": 1, - "StreamsOutbound": 2, - "Conns": 4, - "ConnsInbound": 3, - "ConnsOutbound": 4, - "FD": 5 - } -] -``` - -Response: `{}` - -### NetStat - - -Perms: read - -Inputs: -```json -[ - "string value" -] -``` - -Response: -```json -{ - "System": { - "NumStreamsInbound": 123, - "NumStreamsOutbound": 123, - "NumConnsInbound": 123, - "NumConnsOutbound": 123, - "NumFD": 123, - "Memory": 9 - }, - "Transient": { - "NumStreamsInbound": 123, - "NumStreamsOutbound": 123, - "NumConnsInbound": 123, - "NumConnsOutbound": 123, - "NumFD": 123, - "Memory": 9 - }, - "Services": { - "abc": { - "NumStreamsInbound": 1, - "NumStreamsOutbound": 2, - "NumConnsInbound": 3, - "NumConnsOutbound": 4, - "NumFD": 5, - "Memory": 123 - } - }, - "Protocols": { - "abc": { - "NumStreamsInbound": 1, - "NumStreamsOutbound": 2, - "NumConnsInbound": 3, - "NumConnsOutbound": 4, - "NumFD": 5, - "Memory": 123 - } - }, - "Peers": { - "abc": { - "NumStreamsInbound": 1, - "NumStreamsOutbound": 2, - "NumConnsInbound": 3, - "NumConnsOutbound": 4, - "NumFD": 5, - "Memory": 123 - } - } -} -``` - ## Pledge From 26235d753e92ec081fb2e3291e52c933bf4a3afc Mon Sep 17 00:00:00 2001 From: Phi Date: Mon, 17 Jun 2024 11:54:19 +0200 Subject: [PATCH 08/10] Update changelog Update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b9d19b83f..e41e67f98 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -129,6 +129,7 @@ There is no change in the behaviour when a call returns an error, as the error o - fix: ci: do not use deprecated --debug goreleaser flag ([filecoin-project/lotus#12086](https://github.com/filecoin-project/lotus/pull/12086)) - chore: Remove forgotten graphsync references ([filecoin-project/lotus#12084](https://github.com/filecoin-project/lotus/pull/12084)) - chore: types: remove more items forgotten after markets ([filecoin-project/lotus#12095](https://github.com/filecoin-project/lotus/pull/12095)) +- chore: api: the Net API/CLI now remains only on daemon ([filecoin-project/lotus#12100](https://github.com/filecoin-project/lotus/pull/12100)) ## Contributors From 2e781e6f64a5c1a5e4a9cb62e1b4641dc49884aa Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Sat, 15 Jun 2024 01:09:35 +1000 Subject: [PATCH 09/10] fix: events: sqlite db improvements (#12090) * fix: events: sqlite db improvements * fix unclosed multi-row query * tune options to limit wal growth Ref: https://github.com/filecoin-project/lotus/issues/12089 * fix: events: use correct context for CollectEvents transaction * fix: events: close prepared read statement * fix: events: close initial query; handle lint failures --- chain/events/filter/index.go | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/chain/events/filter/index.go b/chain/events/filter/index.go index 98cc54d20..5ebb8fb58 100644 --- a/chain/events/filter/index.go +++ b/chain/events/filter/index.go @@ -26,10 +26,11 @@ var pragmas = []string{ "PRAGMA temp_store = memory", "PRAGMA mmap_size = 30000000000", "PRAGMA page_size = 32768", - "PRAGMA auto_vacuum = NONE", // not useful until we implement GC + "PRAGMA auto_vacuum = NONE", "PRAGMA automatic_index = OFF", "PRAGMA journal_mode = WAL", - "PRAGMA read_uncommitted = ON", + "PRAGMA wal_autocheckpoint = 256", // checkpoint @ 256 pages + "PRAGMA journal_size_limit = 0", // always reset journal and wal files } // Any changes to this schema should be matched for the `lotus-shed indexes backfill-events` command @@ -438,6 +439,9 @@ func NewEventIndex(ctx context.Context, path string, chainStore *store.ChainStor eventIndex := EventIndex{db: db} q, err := db.QueryContext(ctx, "SELECT name FROM sqlite_master WHERE type='table' AND name='_meta';") + if q != nil { + defer func() { _ = q.Close() }() + } if errors.Is(err, sql.ErrNoRows) || !q.Next() { // empty database, create the schema for _, ddl := range ddls { @@ -521,7 +525,7 @@ func (ei *EventIndex) Close() error { } func (ei *EventIndex) CollectEvents(ctx context.Context, te *TipSetEvents, revert bool, resolver func(ctx context.Context, emitter abi.ActorID, ts *types.TipSet) (address.Address, bool)) error { - tx, err := ei.db.Begin() + tx, err := ei.db.BeginTx(ctx, nil) if err != nil { return xerrors.Errorf("begin transaction: %w", err) } @@ -743,6 +747,7 @@ func (ei *EventIndex) prefillFilter(ctx context.Context, f *eventFilter, exclude if err != nil { return xerrors.Errorf("prepare prefill query: %w", err) } + defer func() { _ = stmt.Close() }() q, err := stmt.QueryContext(ctx, values...) if err != nil { @@ -751,6 +756,7 @@ func (ei *EventIndex) prefillFilter(ctx context.Context, f *eventFilter, exclude } return xerrors.Errorf("exec prefill query: %w", err) } + defer func() { _ = q.Close() }() var ces []*CollectedEvent var currentID int64 = -1 @@ -839,7 +845,6 @@ func (ei *EventIndex) prefillFilter(ctx context.Context, f *eventFilter, exclude Codec: row.codec, Value: row.value, }) - } if ce != nil { From c0d760a9ca71387721222a3fe38d0a153795bc43 Mon Sep 17 00:00:00 2001 From: Phi Date: Mon, 17 Jun 2024 19:51:44 +0200 Subject: [PATCH 10/10] Update CHANGELOG.md --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e41e67f98..a2b0b791d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -58,6 +58,7 @@ There is no change in the behaviour when a call returns an error, as the error o - feat: api: add SectorNumber to MarketDealState (nv22) - fix: copy Flags field from SectorOnChainInfo - fix: ETH RPC API: ETH Call should use the parent state root of the subsequent tipset ([filecoin-project/lotus#11905](https://github.com/filecoin-project/lotus/pull/11905)) +- fix: events: sqlite db improvements ([filecoin-project/lotus#12090](https://github.com/filecoin-project/lotus/pull/12090)) ## Dependencies