mirror of
https://github.com/changesets/action
synced 2026-10-26 16:39:56 +08:00
* fix: prevent hitting github secondary rate limits Adds the octokit plugin for throttling / rate-limiting to fix the problem where action runs get blocked with a 403 error[1]. The `github.getOctokit`[2] function accepts a list of plugins, so this passes in the `throttling` plugin[3] to be hooked into the octokit instance. It also needs some configuration to setup the `throttle` mechanisms, passed in to the `getOctokit` function. [1]: https://github.com/changesets/action/issues/192 [2]: https://github.com/actions/toolkit/blob/main/packages/github/src/github.ts#LL18C40-L18C40 [3]: https://github.com/octokit/plugin-throttling.js * refactor: change rate limit callback signatures Based on additional docs, the callbacks seem to have changes to their signatures[1]. This change aligns this implementation with the docs[2]. [1]: https://octokit.github.io/rest.js/v19#throttling [2]: https://github.com/octokit/plugin-throttling.js/blob/v5.1.1/src/index.ts#L90-L91 * chore: add changeset * wire up typed throttle options * Upgrade TS * refactor: use console based logging * Update .changeset/rotten-carrots-pump.md --------- Co-authored-by: Mateusz Burzyński <mateuszburzynski@gmail.com>
762 B
762 B
@changesets/action
| @changesets/action |
|---|
| patch |
This patch implements the @octokit/plugin-throttling plugin and wires
it up with the internal GitHub Octokit instance.
This plugin is recommended by the Octokit docs as it implements all the GitHub best practices for integrators.
This should help with changesets/action gitting spurious secondary rate limits and failing CI jobs, for which the only known workaround is to simply re-run the job.