Documentation
¶
Index ¶
- func CheckDeleteRepoPermissions(ctx context.Context, client *github.Client) (bool, error)
- func DisplayRateLimit(ctx context.Context, client *github.Client)
- func ExtractLinks(text string) []string
- func FetchCommits(ctx context.Context, client *github.Client, owner, repo string, isFork bool, ...) ([]models.CommitInfo, error)
- func FetchGists(ctx context.Context, client *github.Client, username string, cfg *Config) ([]*github.Gist, error)
- func FetchOrgRepos(ctx context.Context, client *github.Client, orgName string, cfg *Config) ([]*github.Repository, error)
- func FetchRepos(ctx context.Context, client *github.Client, username string, cfg *Config) ([]*github.Repository, error)
- func FetchReposWithUser(ctx context.Context, client *github.Client, username string, cfg *Config, ...) ([]*github.Repository, error)
- func GetGithubClient(token string) *github.Client
- func GetToken(c *cli.Context) string
- func GetUserByEmail(ctx context.Context, client *github.Client, email string) (*github.User, error)
- func GetUsernameForEmail(ctx context.Context, client *github.Client, email string) (string, error)
- func GetUsernameFromEmailSpoof(ctx context.Context, client *github.Client, email string, token string) (string, error)
- func IsOrganization(ctx context.Context, client *github.Client, name string) (bool, error)
- func IsValidEmail(input string) bool
- func ProcessCommit(commit *gh.RepositoryCommit, checkSecrets bool, cfg *Config) models.CommitInfo
- func ProcessGists(ctx context.Context, client *gh.Client, gists []*gh.Gist, checkSecrets bool, ...) map[string]*models.EmailDetails
- func ProcessRepos(ctx context.Context, client *gh.Client, repos []*gh.Repository, ...) map[string]*models.EmailDetails
- func ProcessReposLimited(ctx context.Context, client *gh.Client, repos []*gh.Repository, ...) map[string]*models.EmailDetails
- func ProcessUserEvents(ctx context.Context, client *gh.Client, username string, checkSecrets bool, ...) map[string]*models.EmailDetails
- func RateLimitedProcessRepos(ctx context.Context, client *gh.Client, repos []*gh.Repository, ...) map[string]*models.EmailDetails
- func UserExists(ctx context.Context, client *github.Client, username string) (bool, error)
- func ValidateToken(ctx context.Context, client *github.Client) error
- type Config
- type RateLimit
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FetchCommits ¶
func FetchGists ¶
func FetchGists(ctx context.Context, client *github.Client, username string, cfg *Config) ([]*github.Gist, error)
FetchGists retrieves all public gists for a given username
func FetchOrgRepos ¶
func FetchOrgRepos(ctx context.Context, client *github.Client, orgName string, cfg *Config) ([]*github.Repository, error)
based: unified repo fetching for orgs
func FetchRepos ¶
func FetchReposWithUser ¶
func GetGithubClient ¶
func GetUserByEmail ¶
func GetUsernameForEmail ¶
func IsOrganization ¶
IsOrganization checks if the given name belongs to a GitHub organization
func IsValidEmail ¶
func ProcessCommit ¶
func ProcessCommit(commit *gh.RepositoryCommit, checkSecrets bool, cfg *Config) models.CommitInfo
func ProcessGists ¶
func ProcessGists(ctx context.Context, client *gh.Client, gists []*gh.Gist, checkSecrets bool, cfg *Config) map[string]*models.EmailDetails
ProcessGists processes gists for commit information
func ProcessRepos ¶
func ProcessReposLimited ¶
func ProcessReposLimited(ctx context.Context, client *gh.Client, repos []*gh.Repository, checkSecrets bool, cfg *Config, targetUserIdentifiers map[string]bool, showTargetOnly bool) map[string]*models.EmailDetails
ProcessReposLimited processes only recent commits from repos (API-friendly fallback)
func ProcessUserEvents ¶
func ProcessUserEvents(ctx context.Context, client *gh.Client, username string, checkSecrets bool, cfg *Config, targetUserIdentifiers map[string]bool, showTargetOnly bool) map[string]*models.EmailDetails
ProcessUserEvents processes user events using the GitHub Events API (more efficient)
func RateLimitedProcessRepos ¶
func RateLimitedProcessRepos(ctx context.Context, client *gh.Client, repos []*gh.Repository, checkSecrets bool, cfg *Config, targetUserIdentifiers map[string]bool, showTargetOnly bool) map[string]*models.EmailDetails
RateLimitedProcessRepos performs comprehensive contributor enumeration for --deep mode
func UserExists ¶
Types ¶
Click to show internal directories.
Click to hide internal directories.