ipfs / go-graphsync

Initial Implementation Of GraphSync Wire Protocol
Other
100 stars 38 forks source link

Release v0.13.0 #366

Closed hannahhoward closed 2 years ago

hannahhoward commented 2 years ago

Notes on the new graphsync release, and direction of go-graphsync release version numbers going forward

github-actions[bot] commented 2 years ago

Suggested version: v0.13.0 Comparing to: v0.12.0 (diff)

Changes in go.mod file(s):

diff --git a/go.mod b/go.mod
index 8b7e783..42ce414 100644
--- a/go.mod
+++ b/go.mod
@@ -3,7 +3,8 @@ module github.com/ipfs/go-graphsync
 go 1.16

 require (
-   github.com/gopherjs/gopherjs v0.0.0-20190430165422-3e4dfb77656c // indirect
+   github.com/google/go-cmp v0.5.7
+   github.com/google/uuid v1.3.0
    github.com/hannahhoward/cbor-gen-for v0.0.0-20200817222906-ea96cece81f1
    github.com/hannahhoward/go-pubsub v0.0.0-20200423002714-8d62886cc36e
    github.com/ipfs/go-block-format v0.0.3
@@ -25,9 +26,9 @@ require (
    github.com/ipfs/go-merkledag v0.5.1
    github.com/ipfs/go-peertaskqueue v0.7.1
    github.com/ipfs/go-unixfs v0.3.1
-   github.com/ipfs/go-unixfsnode v1.2.0
+   github.com/ipfs/go-unixfsnode v1.4.0
    github.com/ipld/go-codec-dagpb v1.3.0
-   github.com/ipld/go-ipld-prime v0.14.4
+   github.com/ipld/go-ipld-prime v0.16.0
    github.com/jbenet/go-random v0.0.0-20190219211222-123a90aedc0c
    github.com/libp2p/go-buffer-pool v0.0.2
    github.com/libp2p/go-libp2p v0.16.0
@@ -37,13 +38,10 @@ require (
    github.com/libp2p/go-msgio v0.1.0
    github.com/multiformats/go-multiaddr v0.4.0
    github.com/multiformats/go-multihash v0.1.0
-   github.com/smartystreets/assertions v1.0.0 // indirect
    github.com/stretchr/testify v1.7.0
-   github.com/whyrusleeping/cbor-gen v0.0.0-20210219115102-f37d292932f2
    go.opentelemetry.io/otel v1.2.0
    go.opentelemetry.io/otel/sdk v1.2.0
    go.opentelemetry.io/otel/trace v1.2.0
    golang.org/x/sync v0.0.0-20210220032951-036812b2e83c
-   golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1
    google.golang.org/protobuf v1.27.1
 )

gorelease says:

# github.com/ipfs/go-graphsync
## incompatible changes
ExtensionData.Data: changed from []byte to github.com/ipld/go-ipld-prime/datamodel.Node
ExtensionMetadata: removed
GraphExchange.Cancel: added
GraphExchange.CancelRequest: removed
GraphExchange.CancelResponse: removed
GraphExchange.Pause: added
GraphExchange.PauseRequest: removed
GraphExchange.PauseResponse: removed
GraphExchange.SendUpdate: added
GraphExchange.Unpause: added
GraphExchange.UnpauseRequest: removed
GraphExchange.UnpauseResponse: removed
RemoteMissingBlockErr: old is comparable, new is not
RequestData.Extension: changed from func(ExtensionName) ([]byte, bool) to func(ExtensionName) (github.com/ipld/go-ipld-prime/datamodel.Node, bool)
RequestData.IsCancel: removed
RequestData.Type: added
RequestID: changed from int32 to struct{string}
ResponseData.Extension: changed from func(ExtensionName) ([]byte, bool) to func(ExtensionName) (github.com/ipld/go-ipld-prime/datamodel.Node, bool)
ResponseData.Metadata: added
## compatible changes
LinkAction: added
LinkActionDuplicateDAGSkipped: added
LinkActionDuplicateNotSent: added
LinkActionMissing: added
LinkActionPresent: added
LinkMetadata: added
LinkMetadataIterator: added
NewRequestID: added
ParseRequestID: added
RemoteIncorrectResponseError: added
RemoteMissingBlockErr.Path: added
RequestType: added
RequestTypeCancel: added
RequestTypeNew: added
RequestTypeUpdate: added

# github.com/ipfs/go-graphsync/cidset
## incompatible changes
DecodeCidSet: changed from func([]byte) (*github.com/ipfs/go-cid.Set, error) to func(github.com/ipld/go-ipld-prime/datamodel.Node) (*github.com/ipfs/go-cid.Set, error)
EncodeCidSet: changed from func(*github.com/ipfs/go-cid.Set) ([]byte, error) to func(*github.com/ipfs/go-cid.Set) github.com/ipld/go-ipld-prime/datamodel.Node

# github.com/ipfs/go-graphsync/dedupkey
## incompatible changes
DecodeDedupKey: changed from func([]byte) (string, error) to func(github.com/ipld/go-ipld-prime/datamodel.Node) (string, error)
EncodeDedupKey: changed from func(string) ([]byte, error) to func(string) (github.com/ipld/go-ipld-prime/datamodel.Node, error)

# github.com/ipfs/go-graphsync/donotsendfirstblocks
## incompatible changes
DecodeDoNotSendFirstBlocks: changed from func([]byte) (int64, error) to func(github.com/ipld/go-ipld-prime/datamodel.Node) (int64, error)
EncodeDoNotSendFirstBlocks: changed from func(int64) ([]byte, error) to func(int64) github.com/ipld/go-ipld-prime/datamodel.Node

# github.com/ipfs/go-graphsync/impl
## incompatible changes
(*GraphSync).CancelRequest: removed
(*GraphSync).CancelResponse: removed
(*GraphSync).PauseRequest: removed
(*GraphSync).PauseResponse: removed
(*GraphSync).UnpauseRequest: removed
(*GraphSync).UnpauseResponse: removed
## compatible changes
(*GraphSync).Cancel: added
(*GraphSync).Pause: added
(*GraphSync).SendUpdate: added
(*GraphSync).Unpause: added

# github.com/ipfs/go-graphsync/message
## incompatible changes
(*Builder).AddLink: changed from func(github.com/ipfs/go-graphsync.RequestID, github.com/ipld/go-ipld-prime/datamodel.Link, bool) to func(github.com/ipfs/go-graphsync.RequestID, github.com/ipld/go-ipld-prime/datamodel.Link, github.com/ipfs/go-graphsync.LinkAction)
CancelRequest: removed
Exportable: removed
FromMsgReader: removed
FromNet: removed
GraphSyncMessage.Loggable: removed
GraphSyncMessage.ToNet: removed
GraphSyncMessage.ToProto: removed
GraphSyncRequest.Extension: changed from func(github.com/ipfs/go-graphsync.ExtensionName) ([]byte, bool) to func(github.com/ipfs/go-graphsync.ExtensionName) (github.com/ipld/go-ipld-prime/datamodel.Node, bool)
GraphSyncRequest.ExtensionNames: changed from func() []string to func() []github.com/ipfs/go-graphsync.ExtensionName
GraphSyncRequest.IsCancel: removed
GraphSyncRequest.IsUpdate: removed
GraphSyncRequest.MergeExtensions: changed from func([]github.com/ipfs/go-graphsync.ExtensionData, func(name github.com/ipfs/go-graphsync.ExtensionName, oldData []byte, newData []byte) ([]byte, error)) (GraphSyncRequest, error) to func([]github.com/ipfs/go-graphsync.ExtensionData, func(name github.com/ipfs/go-graphsync.ExtensionName, oldData github.com/ipld/go-ipld-prime/datamodel.Node, newData github.com/ipld/go-ipld-prime/datamodel.Node) (github.com/ipld/go-ipld-prime/datamodel.Node, error)) (GraphSyncRequest, error)
GraphSyncResponse.Extension: changed from func(github.com/ipfs/go-graphsync.ExtensionName) ([]byte, bool) to func(github.com/ipfs/go-graphsync.ExtensionName) (github.com/ipld/go-ipld-prime/datamodel.Node, bool)
GraphSyncResponse.ExtensionNames: changed from func() []string to func() []github.com/ipfs/go-graphsync.ExtensionName
IsTerminalFailureCode: removed
IsTerminalResponseCode: removed
IsTerminalSuccessCode: removed
NewResponse: changed from func(github.com/ipfs/go-graphsync.RequestID, github.com/ipfs/go-graphsync.ResponseStatusCode, ...github.com/ipfs/go-graphsync.ExtensionData) GraphSyncResponse to func(github.com/ipfs/go-graphsync.RequestID, github.com/ipfs/go-graphsync.ResponseStatusCode, []GraphSyncLinkMetadatum, ...github.com/ipfs/go-graphsync.ExtensionData) GraphSyncResponse
UpdateRequest: removed
## compatible changes
GraphSyncLinkMetadata: added
GraphSyncLinkMetadatum: added
GraphSyncMessage.String: added
GraphSyncRequest.String: added
GraphSyncRequest.Type: added
GraphSyncResponse.Metadata: added
GraphSyncResponse.String: added
MessageHandler: added
MessagePartWithExtensions: added
NewCancelRequest: added
NewLinkMetadata: added
NewMessage: added
NewUpdateRequest: added

# github.com/ipfs/go-graphsync/message/bench
## compatible changes
package added

# github.com/ipfs/go-graphsync/message/ipldbind
## compatible changes
package added

# github.com/ipfs/go-graphsync/message/v1
## compatible changes
package added

# github.com/ipfs/go-graphsync/message/v1/metadata
## compatible changes
package added

# github.com/ipfs/go-graphsync/message/v2
## compatible changes
package added

# github.com/ipfs/go-graphsync/messagequeue
## incompatible changes
(*Builder).AddLink: changed from func(github.com/ipfs/go-graphsync.RequestID, github.com/ipld/go-ipld-prime/datamodel.Link, bool) to func(github.com/ipfs/go-graphsync.RequestID, github.com/ipld/go-ipld-prime/datamodel.Link, github.com/ipfs/go-graphsync.LinkAction)

# github.com/ipfs/go-graphsync/metadata
## incompatible changes
package removed

# github.com/ipfs/go-graphsync/network
## incompatible changes
NewFromLibp2pHost: changed from func(github.com/libp2p/go-libp2p-core/host.Host) GraphSyncNetwork to func(github.com/libp2p/go-libp2p-core/host.Host, ...Option) GraphSyncNetwork
ProtocolGraphsync: removed
## compatible changes
GraphsyncProtocols: added
Option: added
ProtocolGraphsync_1_0_0: added
ProtocolGraphsync_2_0_0: added

# github.com/ipfs/go-graphsync/persistenceoptions
## compatible changes
package added

# github.com/ipfs/go-graphsync/requestmanager
## incompatible changes
(*RequestManager).PauseRequest: changed from func(github.com/ipfs/go-graphsync.RequestID) error to func(context.Context, github.com/ipfs/go-graphsync.RequestID) error
(*RequestManager).UnpauseRequest: changed from func(github.com/ipfs/go-graphsync.RequestID, ...github.com/ipfs/go-graphsync.ExtensionData) error to func(context.Context, github.com/ipfs/go-graphsync.RequestID, ...github.com/ipfs/go-graphsync.ExtensionData) error
AsyncLoader.AsyncLoad: removed
AsyncLoader.CleanupRequest: removed
AsyncLoader.CompleteResponsesFor: removed
AsyncLoader.ProcessResponse: removed
AsyncLoader.StartRequest: removed
AsyncLoader: removed
PersistenceOptions.GetLinkSystem: added
RequestIDFromTaskTopic: removed
## compatible changes
(*RequestManager).UpdateRequest: added
PersistenceOptions: added

# github.com/ipfs/go-graphsync/requestmanager/asyncloader
## incompatible changes
package removed

# github.com/ipfs/go-graphsync/requestmanager/asyncloader/loadattemptqueue
## incompatible changes
package removed

# github.com/ipfs/go-graphsync/requestmanager/asyncloader/responsecache
## incompatible changes
package removed

# github.com/ipfs/go-graphsync/requestmanager/asyncloader/unverifiedblockstore
## incompatible changes
package removed

# github.com/ipfs/go-graphsync/requestmanager/executor
## incompatible changes
AsyncLoadFn: removed
NewExecutor: changed from func(Manager, BlockHooks, AsyncLoadFn) *Executor to func(Manager, BlockHooks) *Executor
RequestTask.InitialRequest: removed
## compatible changes
ReconciledLoader: added
RequestTask.ReconciledLoader: added

# github.com/ipfs/go-graphsync/requestmanager/reconciledloader
## compatible changes
package added

# github.com/ipfs/go-graphsync/requestmanager/reconciledloader/traversalrecord
## compatible changes
package added

# github.com/ipfs/go-graphsync/requestmanager/testloader
## incompatible changes
package removed

# github.com/ipfs/go-graphsync/responsemanager
## incompatible changes
(*ResponseManager).CancelResponse: changed from func(github.com/libp2p/go-libp2p-core/peer.ID, github.com/ipfs/go-graphsync.RequestID) error to func(context.Context, github.com/ipfs/go-graphsync.RequestID) error
(*ResponseManager).CloseWithNetworkError: changed from func(github.com/libp2p/go-libp2p-core/peer.ID, github.com/ipfs/go-graphsync.RequestID) to func(github.com/ipfs/go-graphsync.RequestID)
(*ResponseManager).FinishTask: changed from func(*github.com/ipfs/go-peertaskqueue/peertask.Task, error) to func(*github.com/ipfs/go-peertaskqueue/peertask.Task, github.com/libp2p/go-libp2p-core/peer.ID, error)
(*ResponseManager).GetUpdates: changed from func(github.com/libp2p/go-libp2p-core/peer.ID, github.com/ipfs/go-graphsync.RequestID, chan<- []github.com/ipfs/go-graphsync/message.GraphSyncRequest) to func(github.com/ipfs/go-graphsync.RequestID, chan<- []github.com/ipfs/go-graphsync/message.GraphSyncRequest)
(*ResponseManager).PauseResponse: changed from func(github.com/libp2p/go-libp2p-core/peer.ID, github.com/ipfs/go-graphsync.RequestID) error to func(context.Context, github.com/ipfs/go-graphsync.RequestID) error
(*ResponseManager).StartTask: changed from func(*github.com/ipfs/go-peertaskqueue/peertask.Task, chan<- github.com/ipfs/go-graphsync/responsemanager/queryexecutor.ResponseTask) to func(*github.com/ipfs/go-peertaskqueue/peertask.Task, github.com/libp2p/go-libp2p-core/peer.ID, chan<- github.com/ipfs/go-graphsync/responsemanager/queryexecutor.ResponseTask)
(*ResponseManager).TerminateRequest: changed from func(github.com/libp2p/go-libp2p-core/peer.ID, github.com/ipfs/go-graphsync.RequestID) to func(github.com/ipfs/go-graphsync.RequestID)
(*ResponseManager).UnpauseResponse: changed from func(github.com/libp2p/go-libp2p-core/peer.ID, github.com/ipfs/go-graphsync.RequestID, ...github.com/ipfs/go-graphsync.ExtensionData) error to func(context.Context, github.com/ipfs/go-graphsync.RequestID, ...github.com/ipfs/go-graphsync.ExtensionData) error
RequestCloser.CloseWithNetworkError: changed from func(github.com/libp2p/go-libp2p-core/peer.ID, github.com/ipfs/go-graphsync.RequestID) to func(github.com/ipfs/go-graphsync.RequestID)
RequestCloser.TerminateRequest: changed from func(github.com/libp2p/go-libp2p-core/peer.ID, github.com/ipfs/go-graphsync.RequestID) to func(github.com/ipfs/go-graphsync.RequestID)
## compatible changes
(*ResponseManager).UpdateResponse: added

# github.com/ipfs/go-graphsync/responsemanager/persistenceoptions
## incompatible changes
package removed

# github.com/ipfs/go-graphsync/responsemanager/queryexecutor
## incompatible changes
Manager.FinishTask: changed from func(*github.com/ipfs/go-peertaskqueue/peertask.Task, error) to func(*github.com/ipfs/go-peertaskqueue/peertask.Task, github.com/libp2p/go-libp2p-core/peer.ID, error)
Manager.GetUpdates: changed from func(github.com/libp2p/go-libp2p-core/peer.ID, github.com/ipfs/go-graphsync.RequestID, chan<- []github.com/ipfs/go-graphsync/message.GraphSyncRequest) to func(github.com/ipfs/go-graphsync.RequestID, chan<- []github.com/ipfs/go-graphsync/message.GraphSyncRequest)
Manager.StartTask: changed from func(*github.com/ipfs/go-peertaskqueue/peertask.Task, chan<- ResponseTask) to func(*github.com/ipfs/go-peertaskqueue/peertask.Task, github.com/libp2p/go-libp2p-core/peer.ID, chan<- ResponseTask)

# github.com/ipfs/go-graphsync/responsemanager/responseassembler
## incompatible changes
ResponseBuilder.SendUpdates: added

# github.com/ipfs/go-graphsync/testutil
## compatible changes
(*TestBlockChain).PathTipIndex: added

# summary
Suggested version: v0.13.0

gocompat says:

(empty)