skycoin / skywire-services

0 stars 4 forks source link

skywire-services can't use dmsg v1.3.11 #29

Closed 0pcom closed 5 months ago

0pcom commented 1 year ago

when go.,mod is updated to the latest commits to dmsg, or even to the tagged version v1.3.11; skywire-services won't work with it, producing the following error:

# github.com/skycoin/skywire-services/cmd/route-finder/commands
vendor/github.com/skycoin/skywire-services/cmd/route-finder/commands/root.go:174:102: too many arguments in call to dmsghttp.ListenAndServe
    have (context.Context, "github.com/skycoin/skywire-utilities/pkg/cipher".PubKey, "github.com/skycoin/skywire-utilities/pkg/cipher".SecKey, *api.API, disc.APIClient, uint16, *dmsg.Config, *dmsg.Client, *"github.com/skycoin/skywire-utilities/pkg/logging".Logger)
    want (context.Context, "github.com/skycoin/skywire-utilities/pkg/cipher".SecKey, http.Handler, disc.APIClient, uint16, *dmsg.Client, *"github.com/skycoin/skywire-utilities/pkg/logging".Logger)
# github.com/skycoin/skywire-services/cmd/transport-discovery/commands
vendor/github.com/skycoin/skywire-services/cmd/transport-discovery/commands/root.go:209:103: too many arguments in call to dmsghttp.ListenAndServe
    have (context.Context, "github.com/skycoin/skywire-utilities/pkg/cipher".PubKey, "github.com/skycoin/skywire-utilities/pkg/cipher".SecKey, *api.API, disc.APIClient, uint16, *dmsg.Config, *dmsg.Client, *"github.com/skycoin/skywire-utilities/pkg/logging".Logger)
    want (context.Context, "github.com/skycoin/skywire-utilities/pkg/cipher".SecKey, http.Handler, disc.APIClient, uint16, *dmsg.Client, *"github.com/skycoin/skywire-utilities/pkg/logging".Logger)
# github.com/skycoin/skywire-services/cmd/address-resolver/commands
vendor/github.com/skycoin/skywire-services/cmd/address-resolver/commands/root.go:213:102: too many arguments in call to dmsghttp.ListenAndServe
    have (context.Context, "github.com/skycoin/skywire-utilities/pkg/cipher".PubKey, "github.com/skycoin/skywire-utilities/pkg/cipher".SecKey, *api.API, disc.APIClient, uint16, *dmsg.Config, *dmsg.Client, *"github.com/skycoin/skywire-utilities/pkg/logging".Logger)
    want (context.Context, "github.com/skycoin/skywire-utilities/pkg/cipher".SecKey, http.Handler, disc.APIClient, uint16, *dmsg.Client, *"github.com/skycoin/skywire-utilities/pkg/logging".Logger)

PubKey was removed as an input to the function as its easily possible to derive the public key from the secret key.

dmsg.Config was removed as it was unused, but it should be used at some point as the services should attempt to connect to all dmsg servers by setting min_sessions to 0 in the dmsg.Config

https://github.com/skycoin/skywire-services/pull/28 demonstrates this issue

mrpalide commented 5 months ago

Fixed and now skywire-service use dmsg v1.3.14