Skip to content

Commit

Permalink
Merge branch 'master' into issue_3225
Browse files Browse the repository at this point in the history
  • Loading branch information
zepeng811 authored Aug 28, 2024
2 parents 1cf99cb + c96ef95 commit 02f3dc8
Show file tree
Hide file tree
Showing 54 changed files with 356 additions and 152 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
shell: bash
strategy:
matrix:
go-version: [1.x, 1.21.x]
go-version: [1.x, 1.22.x]
platform: [ubuntu-latest]
include:
# include windows, but only with the latest Go version, since there
Expand Down
6 changes: 4 additions & 2 deletions .golangci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ linters-settings:
# performance issue: see https://github.com/golangci/golangci-lint/issues/4039
# and https://github.com/securego/gosec/issues/1007
- G602
# int(os.Stdin.Fd())
- G115
issues:
exclude-use-default: false
exclude-rules:
Expand All @@ -43,9 +45,9 @@ issues:
text: 'G505: Blocklisted import crypto/sha1: weak cryptographic primitive'

# This is adapted from golangci-lint's default exclusions. It disables linting for error checks on
# os.RemoveAll and any function ending in "Close".
# os.RemoveAll, fmt.Fprint*, fmt.Scanf, and any function ending in "Close".
- linters: [ errcheck ]
text: Error return value of .(.*Close|os\.Remove(All)?). is not checked
text: Error return value of .(.*Close|fmt\.Fprint.*|fmt\.Scanf|os\.Remove(All)?). is not checked

# We don't care about file inclusion via variable in examples or internal tools.
- linters: [ gosec ]
Expand Down
17 changes: 9 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# go-github #

[![go-github release (latest SemVer)](https://img.shields.io/github/v/release/google/go-github?sort=semver)](https://github.com/google/go-github/releases)
[![GoDoc](https://img.shields.io/static/v1?label=godoc&message=reference&color=blue)](https://pkg.go.dev/github.com/google/go-github/v63/github)
[![GoDoc](https://img.shields.io/static/v1?label=godoc&message=reference&color=blue)](https://pkg.go.dev/github.com/google/go-github/v64/github)
[![Test Status](https://github.com/google/go-github/workflows/tests/badge.svg)](https://github.com/google/go-github/actions?query=workflow%3Atests)
[![Test Coverage](https://codecov.io/gh/google/go-github/branch/master/graph/badge.svg)](https://codecov.io/gh/google/go-github)
[![Discuss at [email protected]](https://img.shields.io/badge/discuss-go--github%40googlegroups.com-blue.svg)](https://groups.google.com/group/go-github)
Expand All @@ -24,29 +24,29 @@ If you're interested in using the [GraphQL API v4][], the recommended library is
go-github is compatible with modern Go releases in module mode, with Go installed:

```bash
go get github.com/google/go-github/v63
go get github.com/google/go-github/v64
```

will resolve and add the package to the current development module, along with its dependencies.

Alternatively the same can be achieved if you use import in a package:

```go
import "github.com/google/go-github/v63/github"
import "github.com/google/go-github/v64/github"
```

and run `go get` without parameters.

Finally, to use the top-of-trunk version of this repo, use the following command:

```bash
go get github.com/google/go-github/v63@master
go get github.com/google/go-github/v64@master
```

## Usage ##

```go
import "github.com/google/go-github/v63/github" // with go modules enabled (GO111MODULE=on or outside GOPATH)
import "github.com/google/go-github/v64/github" // with go modules enabled (GO111MODULE=on or outside GOPATH)
import "github.com/google/go-github/github" // with go modules disabled
```

Expand Down Expand Up @@ -119,7 +119,7 @@ import (
"net/http"

"github.com/bradleyfalzon/ghinstallation/v2"
"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
)

func main() {
Expand Down Expand Up @@ -153,7 +153,7 @@ import (
"os"
"strconv"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
"github.com/jferrl/go-githubauth"
"golang.org/x/oauth2"
)
Expand Down Expand Up @@ -361,7 +361,7 @@ For complete usage of go-github, see the full [package docs][].

[GitHub API v3]: https://docs.github.com/en/rest
[personal access token]: https://github.com/blog/1509-personal-api-tokens
[package docs]: https://pkg.go.dev/github.com/google/go-github/v63/github
[package docs]: https://pkg.go.dev/github.com/google/go-github/v64/github
[GraphQL API v4]: https://developer.github.com/v4/
[shurcooL/githubv4]: https://github.com/shurcooL/githubv4
[GitHub webhook events]: https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads
Expand Down Expand Up @@ -434,6 +434,7 @@ Versions prior to 48.2.0 are not listed.

| go-github Version | GitHub v3 API Version |
| ----------------- | --------------------- |
| 64.0.0 | 2022-11-28 |
| 63.0.0 | 2022-11-28 |
| 62.0.0 | 2022-11-28 |
| 61.0.0 | 2022-11-28 |
Expand Down
2 changes: 1 addition & 1 deletion example/actionpermissions/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import (
"log"
"os"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
)

var (
Expand Down
2 changes: 1 addition & 1 deletion example/appengine/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import (
"net/http"
"os"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
"google.golang.org/appengine"
"google.golang.org/appengine/log"
)
Expand Down
2 changes: 1 addition & 1 deletion example/basicauth/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ import (
"os"
"strings"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
"golang.org/x/term"
)

Expand Down
2 changes: 1 addition & 1 deletion example/codespaces/newreposecretwithxcrypto/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ import (
"log"
"os"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
"golang.org/x/crypto/nacl/box"
)

Expand Down
2 changes: 1 addition & 1 deletion example/codespaces/newusersecretwithxcrypto/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ import (
"log"
"os"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
"golang.org/x/crypto/nacl/box"
)

Expand Down
2 changes: 1 addition & 1 deletion example/commitpr/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ import (
"time"

"github.com/ProtonMail/go-crypto/openpgp"
"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
)

var (
Expand Down
6 changes: 3 additions & 3 deletions example/go.mod
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
module github.com/google/go-github/v63/example
module github.com/google/go-github/v64/example

go 1.21

require (
github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371
github.com/bradleyfalzon/ghinstallation/v2 v2.0.4
github.com/gofri/go-github-ratelimit v1.0.3
github.com/google/go-github/v63 v63.0.0
github.com/google/go-github/v64 v64.0.0
golang.org/x/crypto v0.21.0
golang.org/x/term v0.18.0
google.golang.org/appengine v1.6.7
Expand All @@ -24,4 +24,4 @@ require (
)

// Use version at HEAD, not the latest published.
replace github.com/google/go-github/v63 => ../
replace github.com/google/go-github/v64 => ../
2 changes: 1 addition & 1 deletion example/listenvironments/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import (
"log"
"os"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
)

func main() {
Expand Down
2 changes: 1 addition & 1 deletion example/migrations/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import (
"context"
"fmt"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
)

func fetchAllUserMigrations() ([]*github.UserMigration, error) {
Expand Down
2 changes: 1 addition & 1 deletion example/newfilewithappauth/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import (
"time"

"github.com/bradleyfalzon/ghinstallation/v2"
"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
)

func main() {
Expand Down
2 changes: 1 addition & 1 deletion example/newrepo/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import (
"log"
"os"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
)

var (
Expand Down
4 changes: 2 additions & 2 deletions example/newreposecretwithlibsodium/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ toolchain go1.22.0

require (
github.com/GoKillers/libsodium-go v0.0.0-20171022220152-dd733721c3cb
github.com/google/go-github/v63 v63.0.0
github.com/google/go-github/v64 v64.0.0
)

require github.com/google/go-querystring v1.1.0 // indirect

// Use version at HEAD, not the latest published.
replace github.com/google/go-github/v63 => ../..
replace github.com/google/go-github/v64 => ../..
2 changes: 1 addition & 1 deletion example/newreposecretwithlibsodium/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ import (
"os"

sodium "github.com/GoKillers/libsodium-go/cryptobox"
"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
)

var (
Expand Down
2 changes: 1 addition & 1 deletion example/newreposecretwithxcrypto/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ import (
"log"
"os"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
"golang.org/x/crypto/nacl/box"
)

Expand Down
2 changes: 1 addition & 1 deletion example/ratelimit/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import (
"fmt"

"github.com/gofri/go-github-ratelimit/github_ratelimit"
"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
)

func main() {
Expand Down
2 changes: 1 addition & 1 deletion example/simple/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import (
"context"
"fmt"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
)

// Fetch all the public organizations' membership of a user.
Expand Down
2 changes: 1 addition & 1 deletion example/tagprotection/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import (
"os"
"strings"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
"golang.org/x/term"
)

Expand Down
2 changes: 1 addition & 1 deletion example/tokenauth/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import (
"log"
"os"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
"golang.org/x/term"
)

Expand Down
2 changes: 1 addition & 1 deletion example/topics/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import (
"context"
"fmt"

"github.com/google/go-github/v63/github"
"github.com/google/go-github/v64/github"
)

// Fetch and lists all the public topics associated with the specified GitHub topic
Expand Down
82 changes: 42 additions & 40 deletions github/apps.go
Original file line number Diff line number Diff line change
Expand Up @@ -77,46 +77,48 @@ type InstallationTokenListRepoOptions struct {
// https://docs.github.com/[email protected]/rest/apps#create-an-installation-access-token-for-an-app
// https://docs.github.com/rest/apps#create-an-installation-access-token-for-an-app
type InstallationPermissions struct {
Actions *string `json:"actions,omitempty"`
ActionsVariables *string `json:"actions_variables,omitempty"`
Administration *string `json:"administration,omitempty"`
Blocking *string `json:"blocking,omitempty"`
Checks *string `json:"checks,omitempty"`
Contents *string `json:"contents,omitempty"`
ContentReferences *string `json:"content_references,omitempty"`
Deployments *string `json:"deployments,omitempty"`
Emails *string `json:"emails,omitempty"`
Environments *string `json:"environments,omitempty"`
Followers *string `json:"followers,omitempty"`
Issues *string `json:"issues,omitempty"`
Metadata *string `json:"metadata,omitempty"`
Members *string `json:"members,omitempty"`
OrganizationAdministration *string `json:"organization_administration,omitempty"`
OrganizationCustomProperties *string `json:"organization_custom_properties,omitempty"`
OrganizationCustomRoles *string `json:"organization_custom_roles,omitempty"`
OrganizationCustomOrgRoles *string `json:"organization_custom_org_roles,omitempty"`
OrganizationHooks *string `json:"organization_hooks,omitempty"`
OrganizationPackages *string `json:"organization_packages,omitempty"`
OrganizationPlan *string `json:"organization_plan,omitempty"`
OrganizationPreReceiveHooks *string `json:"organization_pre_receive_hooks,omitempty"`
OrganizationProjects *string `json:"organization_projects,omitempty"`
OrganizationSecrets *string `json:"organization_secrets,omitempty"`
OrganizationSelfHostedRunners *string `json:"organization_self_hosted_runners,omitempty"`
OrganizationUserBlocking *string `json:"organization_user_blocking,omitempty"`
Packages *string `json:"packages,omitempty"`
Pages *string `json:"pages,omitempty"`
PullRequests *string `json:"pull_requests,omitempty"`
RepositoryHooks *string `json:"repository_hooks,omitempty"`
RepositoryProjects *string `json:"repository_projects,omitempty"`
RepositoryPreReceiveHooks *string `json:"repository_pre_receive_hooks,omitempty"`
Secrets *string `json:"secrets,omitempty"`
SecretScanningAlerts *string `json:"secret_scanning_alerts,omitempty"`
SecurityEvents *string `json:"security_events,omitempty"`
SingleFile *string `json:"single_file,omitempty"`
Statuses *string `json:"statuses,omitempty"`
TeamDiscussions *string `json:"team_discussions,omitempty"`
VulnerabilityAlerts *string `json:"vulnerability_alerts,omitempty"`
Workflows *string `json:"workflows,omitempty"`
Actions *string `json:"actions,omitempty"`
ActionsVariables *string `json:"actions_variables,omitempty"`
Administration *string `json:"administration,omitempty"`
Blocking *string `json:"blocking,omitempty"`
Checks *string `json:"checks,omitempty"`
Contents *string `json:"contents,omitempty"`
ContentReferences *string `json:"content_references,omitempty"`
Deployments *string `json:"deployments,omitempty"`
Emails *string `json:"emails,omitempty"`
Environments *string `json:"environments,omitempty"`
Followers *string `json:"followers,omitempty"`
Issues *string `json:"issues,omitempty"`
Metadata *string `json:"metadata,omitempty"`
Members *string `json:"members,omitempty"`
OrganizationAdministration *string `json:"organization_administration,omitempty"`
OrganizationCustomProperties *string `json:"organization_custom_properties,omitempty"`
OrganizationCustomRoles *string `json:"organization_custom_roles,omitempty"`
OrganizationCustomOrgRoles *string `json:"organization_custom_org_roles,omitempty"`
OrganizationHooks *string `json:"organization_hooks,omitempty"`
OrganizationPackages *string `json:"organization_packages,omitempty"`
OrganizationPersonalAccessTokens *string `json:"organization_personal_access_tokens,omitempty"`
OrganizationPersonalAccessTokenRequests *string `json:"organization_personal_access_token_requests,omitempty"`
OrganizationPlan *string `json:"organization_plan,omitempty"`
OrganizationPreReceiveHooks *string `json:"organization_pre_receive_hooks,omitempty"`
OrganizationProjects *string `json:"organization_projects,omitempty"`
OrganizationSecrets *string `json:"organization_secrets,omitempty"`
OrganizationSelfHostedRunners *string `json:"organization_self_hosted_runners,omitempty"`
OrganizationUserBlocking *string `json:"organization_user_blocking,omitempty"`
Packages *string `json:"packages,omitempty"`
Pages *string `json:"pages,omitempty"`
PullRequests *string `json:"pull_requests,omitempty"`
RepositoryHooks *string `json:"repository_hooks,omitempty"`
RepositoryProjects *string `json:"repository_projects,omitempty"`
RepositoryPreReceiveHooks *string `json:"repository_pre_receive_hooks,omitempty"`
Secrets *string `json:"secrets,omitempty"`
SecretScanningAlerts *string `json:"secret_scanning_alerts,omitempty"`
SecurityEvents *string `json:"security_events,omitempty"`
SingleFile *string `json:"single_file,omitempty"`
Statuses *string `json:"statuses,omitempty"`
TeamDiscussions *string `json:"team_discussions,omitempty"`
VulnerabilityAlerts *string `json:"vulnerability_alerts,omitempty"`
Workflows *string `json:"workflows,omitempty"`
}

// InstallationRequest represents a pending GitHub App installation request.
Expand Down
Loading

0 comments on commit 02f3dc8

Please sign in to comment.