Skip to content

Commit d693172

Browse files
committed
fix(github): upgrade go-github to v89 to remove unmaintained openpgp
Bumps the github and github-ee source drivers from go-github/v39 to v89, which removes golang.org/x/crypto/openpgp from the module graph entirely (go mod why golang.org/x/crypto/openpgp now reports the package is not needed). v89 reworked client construction, so this is an API adaptation rather than a plain version bump: - github: NewClient(*http.Client) becomes options-based NewClient(...ClientOptionsFunc) (*Client, error). The token path uses github.WithAuthToken(...), which drops the driver's direct golang.org/x/oauth2 dependency (now indirect via other sources). - github-ee: NewEnterpriseClient was removed in favor of NewClient(WithHTTPClient(...), WithEnterpriseURLs(...)). URL handling is equivalent; https://host/api/v3 still resolves to /api/v3/. No behavior or URL-contract change for github:// or github-ee://. Fixes golang-migrate#1410.
1 parent 18966c7 commit d693172

4 files changed

Lines changed: 21 additions & 21 deletions

File tree

‎go.mod‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ require (
1616
github.com/go-sql-driver/mysql v1.5.0
1717
github.com/gobuffalo/here v0.6.0
1818
github.com/gocql/gocql v0.0.0-20210515062232-b7ef815b4556
19-
github.com/google/go-github/v39 v39.2.0
19+
github.com/google/go-github/v89 v89.0.0
2020
github.com/jackc/pgconn v1.14.3
2121
github.com/jackc/pgerrcode v0.0.0-20220416144525-469b46aa5efa
2222
github.com/jackc/pgx/v4 v4.18.2
@@ -35,7 +35,6 @@ require (
3535
github.com/stretchr/testify v1.11.1
3636
github.com/xanzy/go-gitlab v0.15.0
3737
go.mongodb.org/mongo-driver v1.7.5
38-
golang.org/x/oauth2 v0.34.0
3938
golang.org/x/tools/godoc v0.1.0-deprecated
4039
google.golang.org/api v0.247.0
4140
modernc.org/ql v1.0.0
@@ -76,6 +75,7 @@ require (
7675
go.opentelemetry.io/otel/sdk v1.40.0 // indirect
7776
go.opentelemetry.io/otel/sdk/metric v1.40.0 // indirect
7877
go.opentelemetry.io/otel/trace v1.40.0 // indirect
78+
golang.org/x/oauth2 v0.34.0 // indirect
7979
golang.org/x/telemetry v0.0.0-20251111182119-bc8e575c7b54 // indirect
8080
golang.org/x/tools v0.39.0 // indirect
8181
)
@@ -133,7 +133,7 @@ require (
133133
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
134134
github.com/golang/snappy v0.0.4 // indirect
135135
github.com/google/flatbuffers v2.0.8+incompatible // indirect
136-
github.com/google/go-querystring v1.1.0 // indirect
136+
github.com/google/go-querystring v1.2.0 // indirect
137137
github.com/google/s2a-go v0.1.9 // indirect
138138
github.com/google/uuid v1.6.0 // indirect
139139
github.com/googleapis/enterprise-certificate-proxy v0.3.6 // indirect

‎go.sum‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -954,13 +954,14 @@ github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/
954954
github.com/google/go-cmp v0.5.7/go.mod h1:n+brtR0CgQNWTVd5ZUFpTBC8YFBDLK/h/bpaJ8/DtOE=
955955
github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
956956
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
957+
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
957958
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
958959
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
959-
github.com/google/go-github/v39 v39.2.0 h1:rNNM311XtPOz5rDdsJXAp2o8F67X9FnROXTvto3aSnQ=
960-
github.com/google/go-github/v39 v39.2.0/go.mod h1:C1s8C5aCC9L+JXIYpJM5GYytdX52vC1bLvHEF1IhBrE=
960+
github.com/google/go-github/v89 v89.0.0 h1:35bEK5XoEcF3PZrlVbl9XN63f5BcJRA/UGkxeC9xPg0=
961+
github.com/google/go-github/v89 v89.0.0/go.mod h1:QLcbU0ipeAqQuR5KSg8c2lql4Qk1EwJ2dWz/0rP4Nho=
961962
github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck=
962-
github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8=
963-
github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU=
963+
github.com/google/go-querystring v1.2.0 h1:yhqkPbu2/OH+V9BfpCVPZkNmUXhb2gBxJArfhIxNtP0=
964+
github.com/google/go-querystring v1.2.0/go.mod h1:8IFJqpSRITyJ8QhQ13bmbeMBDfmeEJZD5A0egEOmkqU=
964965
github.com/google/martian v2.1.0+incompatible h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no=
965966
github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs=
966967
github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0=
@@ -1413,7 +1414,6 @@ golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm
14131414
golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4=
14141415
golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
14151416
golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
1416-
golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
14171417
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
14181418
golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
14191419
golang.org/x/crypto v0.0.0-20220511200225-c6db032c6c88/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=

‎source/github/github.go‎

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,13 @@ import (
44
"context"
55
"fmt"
66
"io"
7-
"net/http"
87
nurl "net/url"
98
"os"
109
"path"
1110
"strings"
1211

13-
"golang.org/x/oauth2"
14-
1512
"github.com/golang-migrate/migrate/v4/source"
16-
"github.com/google/go-github/v39/github"
13+
"github.com/google/go-github/v89/github"
1714
)
1815

1916
func init() {
@@ -48,22 +45,22 @@ func (g *Github) Open(url string) (source.Driver, error) {
4845
return nil, err
4946
}
5047

51-
// client defaults to http.DefaultClient
52-
var client *http.Client
48+
var opts []github.ClientOptionsFunc
5349
if u.User != nil {
5450
password, ok := u.User.Password()
5551
if !ok {
5652
return nil, ErrNoUserInfo
5753
}
58-
ts := oauth2.StaticTokenSource(
59-
&oauth2.Token{AccessToken: password},
60-
)
61-
client = oauth2.NewClient(context.Background(), ts)
54+
opts = append(opts, github.WithAuthToken(password))
55+
}
6256

57+
client, err := github.NewClient(opts...)
58+
if err != nil {
59+
return nil, err
6360
}
6461

6562
gn := &Github{
66-
client: github.NewClient(client),
63+
client: client,
6764
migrations: source.NewMigrations(),
6865
options: &github.RepositoryContentGetOptions{Ref: u.Fragment},
6966
}

‎source/github_ee/github_ee.go‎

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import (
1111
"github.com/golang-migrate/migrate/v4/source"
1212
gh "github.com/golang-migrate/migrate/v4/source/github"
1313

14-
"github.com/google/go-github/v39/github"
14+
"github.com/google/go-github/v89/github"
1515
)
1616

1717
func init() {
@@ -84,7 +84,10 @@ func (g *GithubEE) createGithubClient(host, username, password string, verifyTLS
8484
apiHost := fmt.Sprintf("https://%s/api/v3", host)
8585
uploadHost := fmt.Sprintf("https://uploads.%s", host)
8686

87-
return github.NewEnterpriseClient(apiHost, uploadHost, tr.Client())
87+
return github.NewClient(
88+
github.WithHTTPClient(tr.Client()),
89+
github.WithEnterpriseURLs(apiHost, uploadHost),
90+
)
8891
}
8992

9093
func parseBool(val string, fallback bool) bool {

0 commit comments

Comments
 (0)