Documentation
¶
Overview ¶
Package gogithub provides a Go client for the GitHub API.
This package is organized into subpackages by operation type:
- auth: Authentication utilities
- search: Search API (issues, PRs, code, etc.)
- repo: Repository operations (fork, branch, commit)
- pr: Pull request operations
Example usage:
package main
import (
"context"
"fmt"
"github.com/grokify/gogithub/auth"
"github.com/grokify/gogithub/search"
)
func main() {
ctx := context.Background()
gh := auth.NewGitHubClient(ctx, "your-token")
client := search.NewClient(gh)
issues, err := client.SearchIssuesAll(ctx, search.Query{
search.ParamUser: "grokify",
search.ParamState: search.ParamStateValueOpen,
}, nil)
if err != nil {
panic(err)
}
fmt.Printf("Found %d issues\n", len(issues))
}
Index ¶
- Constants
- type Client
- func (c *Client) SearchIssues(ctx context.Context, qry Query, opts *github.SearchOptions) (*github.IssuesSearchResult, *github.Response, error)
- func (c *Client) SearchIssuesAll(ctx context.Context, qry Query, opts *github.SearchOptions) (Issues, error)
- func (c *Client) SearchOpenPullRequests(ctx context.Context, username string, opts *github.SearchOptions) (*github.IssuesSearchResult, *github.Response, error)
- type Issue
- type Issues
- type Query
Constants ¶
const ( ParamUser = search.ParamUser ParamState = search.ParamState ParamStateValueOpen = search.ParamStateValueOpen ParamIs = search.ParamIs ParamIsValuePR = search.ParamIsValuePR ParamPerPageValueMax = search.ParamPerPageValueMax UsernameDependabot = search.UsernameDependabot UserIDDependabot = search.UserIDDependabot BaseURLRepoAPI = search.BaseURLRepoAPI BaseURLRepoHTML = search.BaseURLRepoHTML )
Re-export constants for backward compatibility. Deprecated: Import from subpackages directly.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
Client wraps the GitHub client with convenience methods. For new code, prefer using the subpackages directly.
func NewClient ¶
NewClient creates a new client from an HTTP client. Deprecated: Use auth.NewGitHubClient and search.NewClient directly.
func NewClientWithToken ¶ added in v0.3.0
NewClientWithToken creates a new client authenticated with a token.
func (*Client) SearchIssues ¶
func (c *Client) SearchIssues(ctx context.Context, qry Query, opts *github.SearchOptions) (*github.IssuesSearchResult, *github.Response, error)
SearchIssues is a wrapper for SearchService.Issues(). Deprecated: Use search.Client.SearchIssues directly.
func (*Client) SearchIssuesAll ¶
func (c *Client) SearchIssuesAll(ctx context.Context, qry Query, opts *github.SearchOptions) (Issues, error)
SearchIssuesAll retrieves all issues matching the query with pagination. Deprecated: Use search.Client.SearchIssuesAll directly.
func (*Client) SearchOpenPullRequests ¶
func (c *Client) SearchOpenPullRequests(ctx context.Context, username string, opts *github.SearchOptions) (*github.IssuesSearchResult, *github.Response, error)
SearchOpenPullRequests searches for open pull requests by username. Deprecated: Use search.Client.SearchOpenPullRequests directly.
type Issue ¶
Re-export types for backward compatibility. Deprecated: Import from subpackages directly.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package auth provides GitHub authentication utilities.
|
Package auth provides GitHub authentication utilities. |
|
cmd/bulk_git_rm
command
|
|
|
cmd
|
|
|
searchuserpr
command
|
|
|
Package config provides configuration utilities for GitHub API clients.
|
Package config provides configuration utilities for GitHub API clients. |
|
Package errors provides error types and translation utilities for GitHub API errors.
|
Package errors provides error types and translation utilities for GitHub API errors. |
|
Package pathutil provides path validation and normalization utilities for GitHub repository paths.
|
Package pathutil provides path validation and normalization utilities for GitHub repository paths. |
|
Package pr provides GitHub pull request operations.
|
Package pr provides GitHub pull request operations. |
|
Package release provides GitHub release operations.
|
Package release provides GitHub release operations. |
|
Package repo provides GitHub repository operations.
|
Package repo provides GitHub repository operations. |
|
Package search provides GitHub search API functionality.
|
Package search provides GitHub search API functionality. |