actions / actions/setup-python
Rate limits cause a hard failure instead of retry
まだ誰も着手していません。
- 主要言語
- TypeScript
- スター
- 2.2k
- フォーク
- 739
- 平均マージ
- 6日 18時間
- マージ済み PR(30日)
- 1
説明
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.
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
リンクされた setup-python workflow の失敗から始め、Python のインストールに使用される action の GitHub API リクエスト経路を追跡します。rate-limit のレスポンスを再現し、その後、action が backoff を伴って再試行し、即座にハード失敗するのではなく retry-after ヘッダーに従うことを確認します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- github-actions, typescript
- 領域
- ci-cd
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 48/100