Skip to contents

ghclass (development version)

ghclass 0.4.2

CRAN release: 2026-08-31

  • Added github_token_sitrep() to report a token’s type, source, scopes, and rate limit, and flag missing scopes that ghclass needs (#144).

  • API error reports now flag possible token-scope mismatches for authorization-like failures, and include the API’s documentation link (#144).

  • org_sitrep() no longer fails when workflow permissions or admin-only org settings cannot be retrieved, and org_workflow_permissions() and org_allows_forking() now report the underlying API error instead of “Failed to find org” (#144).

  • API requests now bypass gh’s response cache (gh >= 1.5), which could otherwise return stale results for recently changed settings or report on a different (or invalid) token (#144).

  • Added repo_tree() to print the file tree of a repository, similar to fs::dir_tree().

ghclass 0.4.1

CRAN release: 2026-07-25

  • Added team_roster() to assign roster members to teams of a given size, optionally within groups.

  • Added experimental local_repo_anonymize() to scrub roster-derived student PII from the files of a local repo or grading project and delete (or keep) their git history.

  • Fixed bugs in repo_prs(), action_runs(), and action_runtime() that produced wrong or missing values.

  • Fixed several bugs in the local_repo_*() functions.

  • GraphQL-based functions now escape special characters in names and filters and report API errors instead of failing silently.

  • Improved argument validation and error reporting.

  • team_invite() now de-duplicates repeated user / team pairs before inviting.

  • Various fixes to the action_*() functions and file downloads.

  • action_artifact_download() now treats unzip warnings as failures and removes partially extracted files (and the downloaded zip, unless keep_zip).

  • org_repo_search() and org_repo_stats() now warn when a search exceeds GitHub’s 1000-result limit.

  • team_members(), team_pending(), and team_repos() gain a slug column; the team column now echoes the supplied team values.

  • Added github_set_max_wait() and github_set_max_rate() (and getters) to control how long requests wait when rate limited and to throttle the request rate.

  • GraphQL (v4) requests now retry with backoff when rate limited instead of failing immediately.

ghclass 0.4.0

CRAN release: 2026-05-08

ghclass 0.3.1

CRAN release: 2025-05-06

ghclass 0.3.0

CRAN release: 2024-03-26

ghclass 0.2.1

CRAN release: 2022-01-06

  • ghclass is now on CRAN!

  • improved action support with action_runs() and action_status()

  • revised how GitHub PATs are handled - now uses gitcreds by way of gh::gh_token()

  • users are now warned about PATs in .Renviron a-la usethis:::scold_for_renviron()

  • Added version dependency on cli 3.0.0

  • Added support for default branches with org_repo_stats()

ghclass 0.2.0

  • First official release of ghclass

  • Switched underlying ui tools to use cli instead of usethis

  • Major cleanup and rewrite of many functions

  • Basic support for GitHub actions added

  • peer_* functions are moved to the peer_review branch for now, coming back in 0.2.1. See README for details if you need them before the next release.

  • The use of “master” as the default value for branch arguments has been removed across the package. Most functions with a branch argument will continue to function in the same way and will use whatever is defined as the default branch for that repository. In a small handful of cases where the API does not allow this, the argument will now require the user to provide an explicit value. These changes were made in anticipation of GitHub moving the default branch from “master” to “main” in October (see https://github.com/github/renaming for details).