Skip to content
This repository has been archived by the owner on Dec 22, 2023. It is now read-only.

Potential import collision: import path should be "gopkg.in/h2non/gock.v1", not "github.com/h2non/gock". #1512

Open
KateGo520 opened this issue Aug 11, 2020 · 3 comments

Comments

@KateGo520
Copy link

Background

The h2non/gock has already renamed it’s import path from "github.com/h2non/gock" to "gopkg.in/h2non/gock.v1".
As README of h2non/gock v1.0.12 said, downstream repos should use "gopkg.in/h2non/gock.v1" to get or import h2non/gock.

Installation
> go get -u gopkg.in/h2non/gock.v1

Examples
See examples directory for more featured use cases.
Simple mocking via tests
package test
import (
  "github.com/nbio/st"
  "gopkg.in/h2non/gock.v1"
  "io/ioutil"
  "net/http"
  "testing"
)
…

But SkygearIO/skygear-server still used the old path:
https://github.com/SkygearIO/skygear-server/blob/master/go.mod#L24

github.com/h2non/gock v1.0.12

When you use the old path "github.com/h2non/gock" to import the h2non/gock, it will be very easy to reintroduce h2non/gock through the import statements "import gopkg.in/h2non/gock.v1" in the go source file of h2non/gock`.
https://github.com/h2non/gock/blob/v1.0.14/_examples/custom_matcher/matcher.go#L5

package main
import (
	"fmt"
	"gopkg.in/h2non/gock.v1"
	"net/http"
)
…

The "gopkg.in/h2non/gock.v1" and "github.com/h2non/gock" are the same repos. This will work in isolation, bring about potential risks and problems.

So, why not get rid of the old import path "github.com/h2non/gock ", use "gopkg.in/h2non/gock.v1" instead.

Solution

Replace all the old import paths, change "github.com/h2non/gock" to "gopkg.in/h2non/gock.v1".
Where did you import it: https://github.com/SkygearIO/skygear-server/search?q=github.com%2Fh2non%2Fgock&unscoped_q=github.com%2Fh2non%2Fgock

@KateGo520
Copy link
Author

@louischan-oursky @kiootic Could you help me review this issue? Thx :p

@louischan-oursky
Copy link
Contributor

@KateGo520 Thanks for telling us this and being interested in Skygear! I am sorry that Skygear is no longer in active development. Instead, we are developing Authgear. Check it out!

@KateGo520
Copy link
Author

@louischan-oursky Thank you for your reply and advice! I'll try.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants