Skip to content

Rate limits cause a hard failure instead of retry #1232

@zanieb

Description

@zanieb

Description:

This action fails when a GitHub API rate limit is encountered, e.g., https://github.com/astral-sh/uv/actions/runs/18688106891/job/53286544594

Run actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065
Installed versions
  GraalPy version 24.1 was not found in the local cache
  Error: API rate limit exceeded for installation. If you reach out to GitHub Support for help, please include the request ID 5841:12068:2A62DF:B7984D:68F7A08C and timestamp 2025-10-21 15:02:36 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https://docs.github.com/en/site-policy/github-terms/github-terms-of-service)

GitHub's rate limits have recently been reduced, and we're seeing far more failures from this.

While I'd generally expect setup-python to avoid hitting a rate-limited API, I'd also expect it to retry on spurious HTTP errors and handle rate limiting, especially for a first-party API.

Action version:

5.6.0

Platform:

  • Ubuntu
  • macOS
  • Windows

Runner type:

  • Hosted
  • Self-hosted

Tools version:

Repro steps:

See description. Requires hitting a GitHub rate limit.

Expected behavior:

I expect the action to retry in a backoff, respecting the retry-after header.

Actual behavior:

The action hard fails.

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature requestNew feature or request to improve the current logic

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions