Skip to content

GH-50532: [R][CI] R nightly binary upload broken since github3 to pygithub migration#50533

Open
thisisnic wants to merge 1 commit into
apache:mainfrom
thisisnic:broken-r-uploads
Open

GH-50532: [R][CI] R nightly binary upload broken since github3 to pygithub migration#50533
thisisnic wants to merge 1 commit into
apache:mainfrom
thisisnic:broken-r-uploads

Conversation

@thisisnic

@thisisnic thisisnic commented Jul 17, 2026

Copy link
Copy Markdown
Member

Rationale for this change

#48886 replaced github3 with pygithub in archery. Unlike github3, pygithub's Auth.Token requires a non-None string, so _github_login() crashes when no token is provided. The r_nightly.yml workflow doesn't pass CROSSBOW_GITHUB_TOKEN to archery, so it has been failing since June 19 (#50532). No R nightly binaries have been uploaded for a month.

What changes are included in this PR?

Fall back to unauthenticated Github() when no token is provided, restoring the pre-migration behavior. The crossbow repo is public so auth isn't required for downloading artifacts.

Are these changes tested?

Tested locally by running archery crossbow download-artifacts without a token set.

Are there any user-facing changes?

No.

@github-actions github-actions Bot added the awaiting committer review Awaiting committer review label Jul 17, 2026
@github-actions

Copy link
Copy Markdown

⚠️ GitHub issue #50532 has been automatically assigned in GitHub to PR creator.

@thisisnic
thisisnic marked this pull request as ready for review July 17, 2026 15:56
@thisisnic
thisisnic requested a review from pitrou as a code owner July 17, 2026 15:56
@thisisnic
thisisnic requested review from Copilot and raulcd July 17, 2026 15:56

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Fixes a regression in Archery Crossbow’s GitHub client initialization so CI workflows (notably r_nightly.yml) can download artifacts from the public crossbow repository even when no CROSSBOW_GITHUB_TOKEN is provided, restoring the pre-migration unauthenticated behavior.

Changes:

  • Add a fallback to create an unauthenticated PyGithub.Github() client when the token is None.
  • Prevent the Auth.Token(None) assertion failure introduced by the github3 → PyGithub migration.

Comment on lines 454 to 457
github_token = github_token or self.github_token
if github_token is None:
return Github(timeout=30)
return Github(auth=GithubAuth.Token(github_token), timeout=30)
Comment thread dev/archery/archery/crossbow/core.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

awaiting committer review Awaiting committer review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants