diff --git a/build/params_nerpanet.go b/build/params_nerpanet.go deleted file mode 100644 index 4621a7271..000000000 --- a/build/params_nerpanet.go +++ /dev/null @@ -1,93 +0,0 @@ -//go:build nerpanet -// +build nerpanet - -package build - -import ( - "github.com/filecoin-project/go-state-types/abi" - "github.com/filecoin-project/go-state-types/network" - "github.com/filecoin-project/lotus/chain/actors/policy" - "github.com/ipfs/go-cid" - - builtin2 "github.com/filecoin-project/specs-actors/v2/actors/builtin" -) - -var DrandSchedule = map[abi.ChainEpoch]DrandEnum{ - 0: DrandMainnet, -} - -const GenesisNetworkVersion = network.Version0 - -const BootstrappersFile = "nerpanet.pi" -const GenesisFile = "nerpanet.car" - -const UpgradeBreezeHeight = -1 -const BreezeGasTampingDuration = 0 - -const UpgradeSmokeHeight = -1 - -const UpgradeIgnitionHeight = -2 -const UpgradeRefuelHeight = -3 - -const UpgradeLiftoffHeight = -5 - -const UpgradeAssemblyHeight = 30 // critical: the network can bootstrap from v1 only -const UpgradeTapeHeight = 60 - -const UpgradeKumquatHeight = 90 - -const UpgradeCalicoHeight = 100 -const UpgradePersianHeight = UpgradeCalicoHeight + (builtin2.EpochsInHour * 1) - -const UpgradeClausHeight = 250 - -const UpgradeOrangeHeight = 300 - -const UpgradeTrustHeight = 600 -const UpgradeNorwegianHeight = 201000 -const UpgradeTurboHeight = 203000 -const UpgradeHyperdriveHeight = 379178 - -const UpgradeChocolateHeight = 999999999 - -var SupportedProofTypes = []abi.RegisteredSealProof{ - abi.RegisteredSealProof_StackedDrg512MiBV1, - abi.RegisteredSealProof_StackedDrg32GiBV1, - abi.RegisteredSealProof_StackedDrg64GiBV1, -} - -// Minimum block production power is set to 4 TiB -// Rationale is to discourage small-scale miners from trying to take over the network -// One needs to invest in ~2.3x the compute to break consensus, making it not worth it -// -// DOWNSIDE: the fake-seals need to be kept alive/protected, otherwise network will seize -// -var ConsensusMinerMinPower = abi.NewStoragePower(4 << 40) -var MinVerifiedDealSize = abi.NewStoragePower(1 << 20) - -// Lower the most time-consuming parts of PoRep -var PreCommitChallengeDelay = abi.ChainEpoch(10) - -func init() { - policy.SetSupportedProofTypes(SupportedProofTypes...) - policy.SetConsensusMinerMinPower(ConsensusMinerMinPower) - policy.SetMinVerifiedDealSize(MinVerifiedDealSize) - policy.SetPreCommitChallengeDelay(PreCommitChallengeDelay) - - // TODO - make this a variable - //miner.WPoStChallengeLookback = abi.ChainEpoch(2) - - Devnet = false - - BuildType = BuildNerpanet - -} - -const BlockDelaySecs = uint64(builtin2.EpochDurationSeconds) - -const PropagationDelaySecs = uint64(6) - -// BootstrapPeerThreshold is the minimum number peers we need to track for a sync worker to start -const BootstrapPeerThreshold = 4 - -var WhitelistedBlock = cid.Undef diff --git a/extern/storage-sealing/currentdealinfo_test.go b/extern/storage-sealing/currentdealinfo_test.go index 8dbc5c496..5f889467a 100644 --- a/extern/storage-sealing/currentdealinfo_test.go +++ b/extern/storage-sealing/currentdealinfo_test.go @@ -8,11 +8,14 @@ import ( "testing" "time" + "github.com/filecoin-project/go-bitfield" + markettypes "github.com/filecoin-project/go-state-types/builtin/v8/market" - market0 "github.com/filecoin-project/specs-actors/actors/builtin/market" "github.com/filecoin-project/go-state-types/network" + market0 "github.com/filecoin-project/specs-actors/actors/builtin/market" + "golang.org/x/net/context" "golang.org/x/xerrors" @@ -38,10 +41,14 @@ func TestGetCurrentDealInfo(t *testing.T) { other, err := markettypes.NewLabelFromString("other") require.NoError(t, err) + another, err := markettypes.NewLabelFromString("another") + require.NoError(t, err) + ctx := context.Background() dummyCid, _ := cid.Parse("bafkqaaa") dummyCid2, _ := cid.Parse("bafkqaab") zeroDealID := abi.DealID(0) + anotherDealID := abi.DealID(8) earlierDealID := abi.DealID(9) successDealID := abi.DealID(10) proposal := market.DealProposal{ @@ -64,6 +71,16 @@ func TestGetCurrentDealInfo(t *testing.T) { ClientCollateral: abi.NewTokenAmount(1), Label: other, } + anotherProposal := market.DealProposal{ + PieceCID: dummyCid2, + PieceSize: abi.PaddedPieceSize(100), + Client: tutils.NewActorAddr(t, "client"), + Provider: tutils.NewActorAddr(t, "provider"), + StoragePricePerEpoch: abi.NewTokenAmount(1), + ProviderCollateral: abi.NewTokenAmount(1), + ClientCollateral: abi.NewTokenAmount(1), + Label: another, + } successDeal := &api.MarketDeal{ Proposal: proposal, State: market.DealState{ @@ -78,6 +95,13 @@ func TestGetCurrentDealInfo(t *testing.T) { LastUpdatedEpoch: 2, }, } + anotherDeal := &api.MarketDeal{ + Proposal: anotherProposal, + State: market.DealState{ + SectorStartEpoch: 1, + LastUpdatedEpoch: 2, + }, + } type testCaseData struct { searchMessageLookup *MsgLookup @@ -88,6 +112,7 @@ func TestGetCurrentDealInfo(t *testing.T) { expectedDealID abi.DealID expectedMarketDeal *api.MarketDeal expectedError error + networkVersion network.Version } testCases := map[string]testCaseData{ "deal lookup succeeds": { @@ -95,7 +120,7 @@ func TestGetCurrentDealInfo(t *testing.T) { searchMessageLookup: &MsgLookup{ Receipt: MessageReceipt{ ExitCode: exitcode.Ok, - Return: makePublishDealsReturnBytes(t, []abi.DealID{successDealID}), + Return: makePublishDealsReturnBytesOldVersion(t, []abi.DealID{successDealID}), }, }, marketDeals: map[abi.DealID]*api.MarketDeal{ @@ -110,7 +135,7 @@ func TestGetCurrentDealInfo(t *testing.T) { searchMessageLookup: &MsgLookup{ Receipt: MessageReceipt{ ExitCode: exitcode.Ok, - Return: makePublishDealsReturnBytes(t, []abi.DealID{earlierDealID, successDealID}), + Return: makePublishDealsReturnBytesOldVersion(t, []abi.DealID{earlierDealID, successDealID}), }, }, marketDeals: map[abi.DealID]*api.MarketDeal{ @@ -126,7 +151,7 @@ func TestGetCurrentDealInfo(t *testing.T) { searchMessageLookup: &MsgLookup{ Receipt: MessageReceipt{ ExitCode: exitcode.Ok, - Return: makePublishDealsReturnBytes(t, []abi.DealID{earlierDealID}), + Return: makePublishDealsReturnBytesOldVersion(t, []abi.DealID{earlierDealID}), }, }, marketDeals: map[abi.DealID]*api.MarketDeal{ @@ -136,12 +161,12 @@ func TestGetCurrentDealInfo(t *testing.T) { expectedDealID: zeroDealID, expectedError: xerrors.Errorf("could not find deal in publish deals message %s", dummyCid), }, - "deal lookup fails mismatch count of deals and return values": { + "deal lookup handles invalid actor output with mismatched count of deals and return values": { publishCid: dummyCid, searchMessageLookup: &MsgLookup{ Receipt: MessageReceipt{ ExitCode: exitcode.Ok, - Return: makePublishDealsReturnBytes(t, []abi.DealID{earlierDealID}), + Return: makePublishDealsReturnBytesOldVersion(t, []abi.DealID{earlierDealID}), }, }, marketDeals: map[abi.DealID]*api.MarketDeal{ @@ -150,14 +175,52 @@ func TestGetCurrentDealInfo(t *testing.T) { }, targetProposal: &proposal, expectedDealID: zeroDealID, - expectedError: xerrors.Errorf("deal index 1 out of bounds of deals (len 1) in publish deals message %s", dummyCid), + expectedError: xerrors.Errorf("invalid publish storage deals ret marking 1 as valid while only returning 1 valid deals in publish deal message %s", dummyCid), }, + + "deal lookup fails when deal was not valid and index exceeds output array": { + publishCid: dummyCid, + searchMessageLookup: &MsgLookup{ + Receipt: MessageReceipt{ + ExitCode: exitcode.Ok, + Return: makePublishDealsReturn(t, []abi.DealID{earlierDealID}, []uint64{0}), + }, + }, + marketDeals: map[abi.DealID]*api.MarketDeal{ + earlierDealID: earlierDeal, + successDealID: successDeal, + }, + targetProposal: &proposal, + expectedDealID: zeroDealID, + expectedError: xerrors.Errorf("deal was invalid at publication"), + networkVersion: network.Version14, + }, + + "deal lookup succeeds when theres a separate deal failure": { + publishCid: dummyCid, + searchMessageLookup: &MsgLookup{ + Receipt: MessageReceipt{ + ExitCode: exitcode.Ok, + Return: makePublishDealsReturn(t, []abi.DealID{anotherDealID, successDealID}, []uint64{0, 2}), + }, + }, + marketDeals: map[abi.DealID]*api.MarketDeal{ + anotherDealID: anotherDeal, + earlierDealID: earlierDeal, + successDealID: successDeal, + }, + targetProposal: &proposal, + expectedDealID: successDealID, + expectedMarketDeal: successDeal, + networkVersion: network.Version14, + }, + "deal lookup succeeds, target proposal nil, single deal in message": { publishCid: dummyCid, searchMessageLookup: &MsgLookup{ Receipt: MessageReceipt{ ExitCode: exitcode.Ok, - Return: makePublishDealsReturnBytes(t, []abi.DealID{successDealID}), + Return: makePublishDealsReturnBytesOldVersion(t, []abi.DealID{successDealID}), }, }, marketDeals: map[abi.DealID]*api.MarketDeal{ @@ -172,7 +235,7 @@ func TestGetCurrentDealInfo(t *testing.T) { searchMessageLookup: &MsgLookup{ Receipt: MessageReceipt{ ExitCode: exitcode.Ok, - Return: makePublishDealsReturnBytes(t, []abi.DealID{earlierDealID, successDealID}), + Return: makePublishDealsReturnBytesOldVersion(t, []abi.DealID{earlierDealID, successDealID}), }, }, marketDeals: map[abi.DealID]*api.MarketDeal{ @@ -234,6 +297,7 @@ func TestGetCurrentDealInfo(t *testing.T) { SearchMessageLookup: data.searchMessageLookup, SearchMessageErr: data.searchMessageErr, MarketDeals: marketDeals, + Version: data.networkVersion, } dealInfoMgr := CurrentDealInfoManager{mockApi} @@ -262,13 +326,21 @@ type CurrentDealInfoMockAPI struct { SearchMessageErr error MarketDeals map[marketDealKey]*api.MarketDeal + Version network.Version } func (mapi *CurrentDealInfoMockAPI) ChainGetMessage(ctx context.Context, c cid.Cid) (*types.Message, error) { - var dealIDs []abi.DealID + var keys []marketDealKey + for k := range mapi.MarketDeals { + keys = append(keys, k) + } + sort.SliceStable(keys, func(i, j int) bool { + return keys[i].DealID < keys[j].DealID + }) + var deals []markettypes.ClientDealProposal - for k, dl := range mapi.MarketDeals { - dealIDs = append(dealIDs, k.DealID) + for _, k := range keys { + dl := mapi.MarketDeals[k] deals = append(deals, markettypes.ClientDealProposal{ Proposal: dl.Proposal, ClientSignature: crypto.Signature{ @@ -277,15 +349,14 @@ func (mapi *CurrentDealInfoMockAPI) ChainGetMessage(ctx context.Context, c cid.C }, }) } - sort.SliceStable(deals, func(i, j int) bool { - return dealIDs[i] < dealIDs[j] - }) + buf := new(bytes.Buffer) params := markettypes.PublishStorageDealsParams{Deals: deals} err := params.MarshalCBOR(buf) if err != nil { panic(err) } + return &types.Message{ Params: buf.Bytes(), }, nil @@ -316,15 +387,28 @@ func (mapi *CurrentDealInfoMockAPI) StateSearchMsg(ctx context.Context, c cid.Ci } func (mapi *CurrentDealInfoMockAPI) StateNetworkVersion(ctx context.Context, tok TipSetToken) (network.Version, error) { - return network.Version0, nil + return mapi.Version, nil } -func makePublishDealsReturnBytes(t *testing.T, dealIDs []abi.DealID) []byte { +func makePublishDealsReturnBytesOldVersion(t *testing.T, dealIDs []abi.DealID) []byte { buf := new(bytes.Buffer) dealsReturn := market0.PublishStorageDealsReturn{ IDs: dealIDs, } err := dealsReturn.MarshalCBOR(buf) require.NoError(t, err) + + return buf.Bytes() +} + +func makePublishDealsReturn(t *testing.T, dealIDs []abi.DealID, validIdxs []uint64) []byte { + buf := new(bytes.Buffer) + dealsReturn := markettypes.PublishStorageDealsReturn{ + IDs: dealIDs, + ValidDeals: bitfield.NewFromSet(validIdxs), + } + err := dealsReturn.MarshalCBOR(buf) + require.NoError(t, err) + return buf.Bytes() } diff --git a/go.mod b/go.mod index ffe58c045..e89acbd3d 100644 --- a/go.mod +++ b/go.mod @@ -46,6 +46,7 @@ require ( github.com/filecoin-project/go-statestore v0.2.0 github.com/filecoin-project/go-storedcounter v0.1.0 github.com/filecoin-project/index-provider v0.5.0 + github.com/filecoin-project/pubsub v1.0.0 github.com/filecoin-project/specs-actors v0.9.15-0.20220514164640-94e0d5e123bd github.com/filecoin-project/specs-actors/v2 v2.3.6 github.com/filecoin-project/specs-actors/v3 v3.1.2 @@ -167,8 +168,6 @@ require ( gotest.tools v2.2.0+incompatible ) -require github.com/filecoin-project/pubsub v1.0.0 - require ( github.com/DataDog/zstd v1.4.1 // indirect github.com/GeertJohan/go.incremental v1.0.0 // indirect diff --git a/testplans/lotus-soup/go.mod b/testplans/lotus-soup/go.mod index 0da2cb5ea..e041a48d8 100644 --- a/testplans/lotus-soup/go.mod +++ b/testplans/lotus-soup/go.mod @@ -27,7 +27,7 @@ require ( github.com/ipfs/go-unixfs v0.3.1 github.com/ipld/go-car v0.3.3 github.com/kpacha/opencensus-influxdb v0.0.0-20181102202715-663e2683a27c - github.com/libp2p/go-libp2p v0.19.0 + github.com/libp2p/go-libp2p v0.19.3 github.com/libp2p/go-libp2p-core v0.15.1 github.com/libp2p/go-libp2p-pubsub-tracer v0.0.0-20200626141350-e730b32bf1e6 github.com/multiformats/go-multiaddr v0.5.0 @@ -100,6 +100,7 @@ require ( github.com/filecoin-project/go-statemachine v1.0.2 // indirect github.com/filecoin-project/go-statestore v0.2.0 // indirect github.com/filecoin-project/index-provider v0.5.0 // indirect + github.com/filecoin-project/pubsub v1.0.0 // indirect github.com/filecoin-project/specs-actors/v2 v2.3.6 // indirect github.com/filecoin-project/specs-actors/v3 v3.1.2 // indirect github.com/filecoin-project/specs-actors/v4 v4.0.2 // indirect @@ -107,7 +108,7 @@ require ( github.com/filecoin-project/specs-actors/v6 v6.0.2-0.20220511204807-569c6d12432b // indirect github.com/filecoin-project/specs-actors/v7 v7.0.1-0.20220511223846-637436c27154 // indirect github.com/filecoin-project/specs-actors/v8 v8.0.0-20220422153930-0afe155bfffa // indirect - github.com/filecoin-project/specs-storage v0.4.0 // indirect + github.com/filecoin-project/specs-storage v0.4.1 // indirect github.com/filecoin-project/storetheindex v0.3.5 // indirect github.com/flynn/noise v1.0.0 // indirect github.com/francoispqt/gojay v1.2.13 // indirect @@ -236,7 +237,7 @@ require ( github.com/libp2p/go-tcp-transport v0.5.1 // indirect github.com/libp2p/go-ws-transport v0.6.0 // indirect github.com/libp2p/go-yamux/v3 v3.1.1 // indirect - github.com/lucas-clemente/quic-go v0.27.0 // indirect + github.com/lucas-clemente/quic-go v0.27.1 // indirect github.com/lucasb-eyer/go-colorful v1.0.3 // indirect github.com/magefile/mage v1.9.0 // indirect github.com/marten-seemann/qtls-go1-16 v0.1.5 // indirect @@ -293,7 +294,7 @@ require ( github.com/sirupsen/logrus v1.8.1 // indirect github.com/spacemonkeygo/spacelog v0.0.0-20180420211403-2296661a0572 // indirect github.com/spaolacci/murmur3 v1.1.0 // indirect - github.com/stretchr/testify v1.7.0 // indirect + github.com/stretchr/testify v1.7.1 // indirect github.com/syndtr/goleveldb v1.0.0 // indirect github.com/uber/jaeger-client-go v2.28.0+incompatible // indirect github.com/uber/jaeger-lib v2.4.1+incompatible // indirect @@ -309,7 +310,6 @@ require ( github.com/whyrusleeping/go-keyspace v0.0.0-20160322163242-5b898ac5add1 // indirect github.com/whyrusleeping/ledger-filecoin-go v0.9.1-0.20201010031517-c3dcc1bddce4 // indirect github.com/whyrusleeping/multiaddr-filter v0.0.0-20160516205228-e903e4adabd7 // indirect - github.com/whyrusleeping/pubsub v0.0.0-20190708150250-92bcb0691325 // indirect github.com/whyrusleeping/timecache v0.0.0-20160911033111-cfcb2f1abfee // indirect github.com/zondax/hid v0.9.0 // indirect github.com/zondax/ledger-go v0.12.1 // indirect diff --git a/testplans/lotus-soup/go.sum b/testplans/lotus-soup/go.sum index d611bec91..e978e5c7d 100644 --- a/testplans/lotus-soup/go.sum +++ b/testplans/lotus-soup/go.sum @@ -499,17 +499,12 @@ github.com/filecoin-project/specs-actors/v6 v6.0.1/go.mod h1:V1AYfi5GkHXipx1mnVi github.com/filecoin-project/specs-actors/v6 v6.0.2-0.20220511204807-569c6d12432b h1:UaMSIWqvyBAkM5/hA/iVcTrnwI7IOgQI0Xi4wEkmYM4= github.com/filecoin-project/specs-actors/v6 v6.0.2-0.20220511204807-569c6d12432b/go.mod h1:UkunB8pzBOV5Rzx0BmvVB2mxMV6CXEnHAC5VlMokOVE= github.com/filecoin-project/specs-actors/v7 v7.0.0/go.mod h1:TA5FwCna+Yi36POaT7SLKXsgEDvJwc0V/L6ZsO19B9M= -<<<<<<< HEAD github.com/filecoin-project/specs-actors/v7 v7.0.1-0.20220511223846-637436c27154 h1:NKA2mpz3GAksmrP7P13zLufvoYG9DlasgKxdhrk9gGM= github.com/filecoin-project/specs-actors/v7 v7.0.1-0.20220511223846-637436c27154/go.mod h1:2pWr2Soyl4yfOkoMThzj41l2lPIRC+CUgU5cW3wI+K4= github.com/filecoin-project/specs-actors/v8 v8.0.0-20220422153930-0afe155bfffa h1:P9l2WQMvWUJ450esBttbAaqH8Lhe1hu1W2J6cQsiZcA= github.com/filecoin-project/specs-actors/v8 v8.0.0-20220422153930-0afe155bfffa/go.mod h1:UYIPg65iPWoFw5NEftREdJwv9b/5yaLKdCgTvNI/2FA= -github.com/filecoin-project/specs-storage v0.4.0 h1:Gima+B0dNwtsLJrvpg40W3HgHOgWTYyl8lPEYeOxuPk= -github.com/filecoin-project/specs-storage v0.4.0/go.mod h1:Z2eK6uMwAOSLjek6+sy0jNV2DSsMEENziMUz0GHRFBw= -======= -github.com/filecoin-project/specs-storage v0.2.3-0.20220426183226-1a0a63c5990f h1:+suJFu4RJt7aZRXvE+Innrpacap+Z8N87y6a1Cgkuqc= -github.com/filecoin-project/specs-storage v0.2.3-0.20220426183226-1a0a63c5990f/go.mod h1:6cc/lncmAxMUocPi0z1EPCX63beIX7F7UnlmUZ3hLQo= ->>>>>>> release/v1.15.3 +github.com/filecoin-project/specs-storage v0.4.1 h1:yvLEaLZj8f+uByhNC4mFOtCUyL2wQku+NGBp6hjTe9M= +github.com/filecoin-project/specs-storage v0.4.1/go.mod h1:Z2eK6uMwAOSLjek6+sy0jNV2DSsMEENziMUz0GHRFBw= github.com/filecoin-project/storetheindex v0.3.5 h1:KoS9TvjPm6zIZfUH8atAHJbVHOO7GTP1MdTG+v0eE+Q= github.com/filecoin-project/storetheindex v0.3.5/go.mod h1:0r3d0kSpK63O6AvLr1CjAINLi+nWD49clzcnKV+GLpI= github.com/filecoin-project/test-vectors/schema v0.0.5/go.mod h1:iQ9QXLpYWL3m7warwvK1JC/pTri8mnfEmKygNDqqY6E= @@ -1340,12 +1335,9 @@ github.com/libp2p/go-libp2p v0.16.0/go.mod h1:ump42BsirwAWxKzsCiFnTtN1Yc+DuPu76f github.com/libp2p/go-libp2p v0.17.0/go.mod h1:Fkin50rsGdv5mm5BshBUtPRZknt9esfmYXBOYcwOTgw= github.com/libp2p/go-libp2p v0.18.0-rc1/go.mod h1:RgYlH7IIWHXREimC92bw5Lg1V2R5XmSzuLHb5fTnr+8= github.com/libp2p/go-libp2p v0.18.0-rc3/go.mod h1:WYL+Xw1iuwi6rdfzw5VIEpD+HqzYucHZ6fcUuumbI3M= -<<<<<<< HEAD github.com/libp2p/go-libp2p v0.18.0-rc5/go.mod h1:aZPS5l84bDvCvP4jkyEUT/J6YOpUq33Fgqrs3K59mpI= -======= ->>>>>>> release/v1.15.3 -github.com/libp2p/go-libp2p v0.19.0 h1:zosskMbaobL7UDCVLEe1m5CGs1TaFNFoN/M5XLiKg0U= -github.com/libp2p/go-libp2p v0.19.0/go.mod h1:Ki9jJXLO2YqrTIFxofV7Twyd3INWPT97+r8hGt7XPjI= +github.com/libp2p/go-libp2p v0.19.3 h1:LqjvuBWdyYSqvkH4VVYxA78Fkphzg2Pq86VMnilqgkw= +github.com/libp2p/go-libp2p v0.19.3/go.mod h1:AGlPVLjh0+6jvEtf+a2gZEux7yHJrYXnG9IC7wcQ2NY= github.com/libp2p/go-libp2p-asn-util v0.0.0-20200825225859-85005c6cf052/go.mod h1:nRMRTab+kZuk0LnKZpxhOVH/ndsdr2Nr//Zltc/vwgo= github.com/libp2p/go-libp2p-asn-util v0.1.0 h1:rABPCO77SjdbJ/eJ/ynIo8vWICy1VEnL5JAxJbQLo1E= github.com/libp2p/go-libp2p-asn-util v0.1.0/go.mod h1:wu+AnM9Ii2KgO5jMmS1rz9dvzTdj8BXqsPR9HR0XB7I= @@ -1520,10 +1512,7 @@ github.com/libp2p/go-libp2p-quic-transport v0.13.0/go.mod h1:39/ZWJ1TW/jx1iFkKzz github.com/libp2p/go-libp2p-quic-transport v0.15.0/go.mod h1:wv4uGwjcqe8Mhjj7N/Ic0aKjA+/10UnMlSzLO0yRpYQ= github.com/libp2p/go-libp2p-quic-transport v0.15.2/go.mod h1:wv4uGwjcqe8Mhjj7N/Ic0aKjA+/10UnMlSzLO0yRpYQ= github.com/libp2p/go-libp2p-quic-transport v0.16.0/go.mod h1:1BXjVMzr+w7EkPfiHkKnwsWjPjtfaNT0q8RS3tGDvEQ= -<<<<<<< HEAD github.com/libp2p/go-libp2p-quic-transport v0.16.1/go.mod h1:1BXjVMzr+w7EkPfiHkKnwsWjPjtfaNT0q8RS3tGDvEQ= -======= ->>>>>>> release/v1.15.3 github.com/libp2p/go-libp2p-quic-transport v0.17.0 h1:yFh4Gf5MlToAYLuw/dRvuzYd1EnE2pX3Lq1N6KDiWRQ= github.com/libp2p/go-libp2p-quic-transport v0.17.0/go.mod h1:x4pw61P3/GRCcSLypcQJE/Q2+E9f4X+5aRcZLXf20LM= github.com/libp2p/go-libp2p-record v0.0.1/go.mod h1:grzqg263Rug/sRex85QrDOLntdFAymLDLm7lxMgU79Q= @@ -1619,10 +1608,7 @@ github.com/libp2p/go-libp2p-yamux v0.6.0/go.mod h1:MRhd6mAYnFRnSISp4M8i0ClV/j+mW github.com/libp2p/go-libp2p-yamux v0.7.0/go.mod h1:fMyA0CsPfHkIuBU0wjRGrCjTBFiXTXxG0k5M4ETv+08= github.com/libp2p/go-libp2p-yamux v0.8.0/go.mod h1:yTkPgN2ib8FHyU1ZcVD7aelzyAqXXwEPbyx+aSKm9h8= github.com/libp2p/go-libp2p-yamux v0.8.1/go.mod h1:rUozF8Jah2dL9LLGyBaBeTQeARdwhefMCTQVQt6QobE= -<<<<<<< HEAD github.com/libp2p/go-libp2p-yamux v0.8.2/go.mod h1:rUozF8Jah2dL9LLGyBaBeTQeARdwhefMCTQVQt6QobE= -======= ->>>>>>> release/v1.15.3 github.com/libp2p/go-libp2p-yamux v0.9.1 h1:oplewiRix8s45SOrI30rCPZG5mM087YZp+VYhXAh4+c= github.com/libp2p/go-libp2p-yamux v0.9.1/go.mod h1:wRc6wvyxQINFcKe7daL4BeQ02Iyp+wxyC8WCNfngBrA= github.com/libp2p/go-maddr-filter v0.0.1/go.mod h1:6eT12kSQMA9x2pvFQa+xesMKUBlj9VImZbj3B9FBH/Q= @@ -1737,8 +1723,9 @@ github.com/lucas-clemente/quic-go v0.21.2/go.mod h1:vF5M1XqhBAHgbjKcJOXY3JZz3GP0 github.com/lucas-clemente/quic-go v0.23.0/go.mod h1:paZuzjXCE5mj6sikVLMvqXk8lJV2AsqtJ6bDhjEfxx0= github.com/lucas-clemente/quic-go v0.24.0/go.mod h1:paZuzjXCE5mj6sikVLMvqXk8lJV2AsqtJ6bDhjEfxx0= github.com/lucas-clemente/quic-go v0.25.0/go.mod h1:YtzP8bxRVCBlO77yRanE264+fY/T2U9ZlW1AaHOsMOg= -github.com/lucas-clemente/quic-go v0.27.0 h1:v6WY87q9zD4dKASbG8hy/LpzAVNzEQzw8sEIeloJsc4= github.com/lucas-clemente/quic-go v0.27.0/go.mod h1:AzgQoPda7N+3IqMMMkywBKggIFo2KT6pfnlrQ2QieeI= +github.com/lucas-clemente/quic-go v0.27.1 h1:sOw+4kFSVrdWOYmUjufQ9GBVPqZ+tu+jMtXxXNmRJyk= +github.com/lucas-clemente/quic-go v0.27.1/go.mod h1:AzgQoPda7N+3IqMMMkywBKggIFo2KT6pfnlrQ2QieeI= github.com/lucasb-eyer/go-colorful v1.0.3 h1:QIbQXiugsb+q10B+MI+7DI1oQLdmnep86tWFlaaUAac= github.com/lucasb-eyer/go-colorful v1.0.3/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= github.com/lufia/iostat v1.1.0/go.mod h1:rEPNA0xXgjHQjuI5Cy05sLlS2oRcSlWHRLrvh/AQ+Pg=