Skip to content

chore(deps): bump github.com/grokify/gogithub from 0.17.0 to 0.18.0 - #19

Merged
grokify merged 1 commit into
mainfrom
dependabot/go_modules/github.com/grokify/gogithub-0.18.0
Oct 13, 2026
Merged

grokify merged 1 commit into
mainfrom
dependabot/go_modules/github.com/grokify/gogithub-0.18.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

Bumps github.com/grokify/gogithub from 0.17.0 to 0.18.0.

Release notes

Sourced from github.com/grokify/gogithub's releases.

v0.18.0

Release Notes: v0.18.0

Full Changelog: grokify/gogithub@v0.17.0...v0.18.0

Changelog

Sourced from github.com/grokify/gogithub's changelog.

[v0.18.0] - 2026-10-03

Highlights

  • Repository health for dashboards: the new health package collects open issues, open pull requests, and the latest run of every GitHub Actions workflow for a set of repositories in four API requests per repository, with a passing/failing/running state per workflow and per repository; exposed as the gogithub health CLI command
  • Conditional requests: the new etagcache transport sends If-None-Match on repeat requests and returns GitHub's 304 Not Modified as the cached response, so polling consumers such as dashboards spend no rate limit on unchanged data; clientv1.ClientOptions.Transport accepts it and gogithub health --cache-dir persists the cache between runs
  • Repository access listing: repo.ListNonMemberOrgRepos answers "which repositories have I been granted access to in organizations I don't belong to?", backed by new clientv1 methods for the authenticated user's repositories and organization memberships, and exposed as the gogithub repo-access CLI command
  • OAuth app authentication via goauth: organizations can forbid personal access tokens; the new auth/credentialsset package obtains an OAuth app token from a goauth credentials set file using the authorization code grant, and errors.IsTokenPolicyError plus repo.CheckAccess make the policy block visible instead of looking like a missing repository

Added

  • [clientv1] ListAuthenticatedUserRepos(ctx, opts) wraps GET /user/repos, including private and collaborator-granted repositories, with Visibility and Affiliations filters; results include Repository.Permissions (1d900fb)
  • [clientv1] ListOrgMemberships(ctx, opts) wraps GET /user/memberships/orgs, with a State filter (1d900fb)
  • [types] Repository.Permissions with RepositoryPermissions.Highest(), OrgMembership, and constants for owner types, permission levels, membership states, and repository affiliations (1d900fb)
  • [errors] IsTokenPolicyError(err) detects a 403 caused by an organization policy that rejects the token type (e.g. classic PATs forbidden); Message(err) extracts the message GitHub returned (f6f98a8)
  • [repo] ListNonMemberOrgRepos, FilterNonMemberOrgRepos, and MembershipOrgLogins list and filter repositories owned by organizations the user is not an active member of (1016187)
  • [repo] CheckAccess(ctx, client, owner, name) reports access to one repository as granted, not_visible, or blocked_by_token_policy, probing the owner on a 404 to tell the last two apart (1016187)
  • [auth/credentialsset] NewClient and NewToken create clients from a goauth credentials set account, using a stored token or the authorization code grant via an AuthCodePrompt; PromptReadWriter provides a command-line prompt and RedirectURL the hosted redirect page (22a3ee7)
  • [cli] gogithub repo-access lists accessible repositories with permission levels; --non-member-orgs filters to organizations the user is not a member of, --repo owner/name checks specific repositories, --creds/--account authenticate as an OAuth app, and -f json emits JSON (2def571)
  • [clientv1] CountPullRequests(ctx, owner, repo, state) counts pull requests in one request by reading the pagination header; ListRepositoryWorkflowRuns(ctx, owner, repo, opts) returns one page of recent runs across all workflows (d645c2a)
  • [health] Collect and CollectAll gather open issue and pull request counts and every workflow's latest run per repository, concurrently across a repository set with partial results; RunState and OverallState derive passing, failing, running, inconclusive, or none; RunsURL derives the all-runs page for a workflow; Options select the branch, any branch, concurrency, and page size (57b805e)
  • [cli] gogithub health reports repository health for --repo and --repos-file lists as text tables or JSON with workflow names, paths, run details, and links to the workflow file, all runs, the latest run, and the badge; --branch, --any-branch, and --concurrency control collection (5c19e84)
  • [etagcache] Transport makes conditional requests and serves 304s from a Store; MemoryStore (LRU) and FileStore (owner-only files, atomic writes) are provided; Stats counts hits, misses, and uncacheable requests; entries are keyed by URL and a credential hash (a16c73f)
  • [clientv1] ClientOptions.Transport sets the transport that performs requests after the token is attached (a16c73f)
  • [cli] gogithub health --cache-dir caches responses between runs and prints hit statistics (6f16de8)

Changed

  • [cliutil] GitStatusShortLines runs git in the target directory with -C instead of changing the process working directory, uses the stable porcelain format, and omits empty lines; GitRmDeletedLines returns commands without trailing newlines and GitRmDeletedFile replaces the output file (29efed1)

Fixed

  • [cliutil] bulk_git_rm takes the repository directory as --dir (default: current directory) instead of a hardcoded local path, and prints git rm commands to stdout or to --out (bdf2ea3)

Dependencies

  • 4 dependency updates

Documentation

  • Documented repository access listing, CheckAccess, OAuth app authentication, token policy errors, and the repo-access CLI command across the clientv1, repo, auth, errors, and CLI guides (6f9b0cf)
  • Added coverage badge to README (bacd650)
  • Added the Repository Health guide and documented the health command and new clientv1 methods (3cc088b)
  • Added the Conditional Requests guide, documented ClientOptions.Transport and --cache-dir, and recorded v0.18.0 follow-ups in TASKS.md (1512f73)

Tests

  • Covered the new clientv1 methods against a stubbed GitHub API, the repo access filter and CheckAccess, the token policy error helpers, and the credentials set authorization code flow (118d1e3)
  • Covered cliutil git status and rm command generation against a temporary repository (423eb20)
  • Covered pull request counting and repository-wide run listing against a stubbed GitHub API, and health state derivation, collection, fallbacks, and concurrent partial results against a stubbed client (57b805e)

... (truncated)

Commits
  • 22a1dd9 chore(deps): go mod: update dependencies
  • 627720e docs: add health, access, and conditional requests to overview pages
  • 6f022eb test(etagcache): skip permission assertions on Windows
  • 63f1683 docs: add conditional requests to v0.18.0 changelog
  • 1512f73 docs: add conditional requests guide and v0.18.0 follow-up tasks
  • 6f16de8 feat(cli): add --cache-dir to health for conditional requests
  • a16c73f feat(etagcache): add conditional request transport
  • 2162be6 docs: describe workflow link fields in health output
  • 6558052 feat(health): add workflow file and all-runs links to health output
  • 02f9a0c docs: add repository health to v0.18.0 changelog
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file go Pull requests that update go code labels Oct 13, 2026
@coderabbitai

coderabbitai Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: b6f7ba35-0ff3-420d-b4aa-37dbcdae63c1

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Bumps [github.com/grokify/gogithub](https://github.com/grokify/gogithub) from 0.17.0 to 0.18.0.
- [Release notes](https://github.com/grokify/gogithub/releases)
- [Changelog](https://github.com/grokify/gogithub/blob/main/CHANGELOG.md)
- [Commits](grokify/gogithub@v0.17.0...v0.18.0)

---
updated-dependencies:
- dependency-name: github.com/grokify/gogithub
  dependency-version: 0.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/go_modules/github.com/grokify/gogithub-0.18.0 branch from 2765a49 to e33d43c Compare October 13, 2026 08:17
@grokify
grokify merged commit 78d5bf0 into main Oct 13, 2026
7 checks passed
@dependabot
dependabot Bot deleted the dependabot/go_modules/github.com/grokify/gogithub-0.18.0 branch October 13, 2026 08:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file go Pull requests that update go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant