-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve checkout performance on Windows runners by upgrading @actions/github dependency #1246
Conversation
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I confirm that this fixes the abysmal slowness on Windows that was reported in #1186 and that I was able to reproduce.
Well done, @BrettDong!
Eagerly awaiting a fix for this; for those of us paying for runners it's not just a convenience, we end up paying significantly more because the checkout step takes the majority of the runner's time, and with a workflow that has a lot of parallel runs, this adds up really quickly. |
I've been using this and it was faster, but I just had a run with it that took 1m41s 😖 |
Hi @thboop , could you please re-approve the CI checks? Thanks! |
Hi @BrettDong, thanks for this PR! Updating to actions/github@v5 is both something we want to do and it sidesteps the whole issue by eliminating our dependency on A few notes / questions:
|
The delay from Apart from the |
…/github dependency Re: #1186 @dscho discovered that the checkout action could stall for a considerable amount of time on Windows runners waiting for PowerShell invocations made from 'windows-release' npm package to complete. Then I studied the dependency chain to figure out where 'windows-release' was imported: '@actions/checkout'@main <- '@actions/github'@2.2.0 <- '@octokit/endpoint'@6.0.1 <- '@octokit/graphql'@4.3.1 <- '@octokit/request'@5.4.2 <- '@octokit/rest'@16.43.1 <- 'universal-user-agent'@4.0.1 <- 'os-name'@3.1.0 <- 'windows-release'@3.1.0 'universal-user-agent' package dropped its dependency on 'os-name' in https://github.com/gr2m/universal-user-agent/releases/tag/v6.0.0 . '@actions/github' v3 removed dependency on '@octokit/rest'@16.43.1 and allows users to move away from the old 'universal-user-agent' v4. (actions/toolkit#453) This pull request attempts to update the version of '@actions/github' used in the checkout action to avoid importing 'windows-release'. Based on testing in my own repositories, I can see an improvement in reduced wait time between entering the checkout action and git actually starts to do useful work.
I never used large runners and I don't understand what issue you are referring to. |
Hey @BrettDong , thanks for putting this together, I'd love to get this merged and released. It looks like the breaking change in the new major version of |
I did not run |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Thanks for your contribution @BrettDong Small side-note, did you need to manually recognise the MIT license of |
I manually updated the yaml, following licensed documentation. |
The PR actions#1246 replaced the `getOctokit` method from the `octokit-provider.ts` file with the `getOctokit` method from the `@actions/github` package. The octokit-provider was previously responsible for creating an Octokit instance and setting the `baseUrl` via the `getServerApiUrl` helper function. This function calls `getServerUrl` which reads the server url from the `GITHUB_SERVER_URL` environment variable, which on GHES is set to the enterprise instance. This commit restores the previous behaviour by calling `getServerApiUrl` in all places where an octokit instance is created. Co-authored-by: Markus Wolf <mail@markus-wolf.de>
This PR breaks GHES compatibility in case |
…dfusionjp/main * main: Fix: Checkout fail in self-hosted runners when faulty submodule are checked-in (actions#1196) Release v3.5.2 (actions#1291) Fix: convert baseUrl to serverApiUrl 'formatted' (actions#1289) Release v3.5.1 (actions#1284) Improve checkout performance on Windows runners by upgrading @actions/github dependency (actions#1246)
…dfusionjp/main * main: Release v3.5.1 (actions#1284) Improve checkout performance on Windows runners by upgrading @actions/github dependency (actions#1246)
…dfusionjp/main * main: Release v3.5.1 (actions#1284) Improve checkout performance on Windows runners by upgrading @actions/github dependency (actions#1246)
…dfusionjp/main * main: Fix: Checkout fail in self-hosted runners when faulty submodule are checked-in (actions#1196) Release v3.5.2 (actions#1291) Fix: convert baseUrl to serverApiUrl 'formatted' (actions#1289) Release v3.5.1 (actions#1284) Improve checkout performance on Windows runners by upgrading @actions/github dependency (actions#1246)
Bumps actions/checkout from 3 to 4. Release notes Sourced from actions/checkout's releases. v4.0.0 What's Changed Update default runtime to node20 by @takost in actions/checkout#1436 Support fetching without the --progress option by @simonbaird in actions/checkout#1067 Release 4.0.0 by @takost in actions/checkout#1447 New Contributors @takost made their first contribution in actions/checkout#1436 @simonbaird made their first contribution in actions/checkout#1067 Full Changelog: actions/checkout@v3...v4.0.0 v3.6.0 What's Changed Mark test scripts with Bash'isms to be run via Bash by @dscho in actions/checkout#1377 Add option to fetch tags even if fetch-depth > 0 by @RobertWieczoreck in actions/checkout#579 Release 3.6.0 by @luketomlinson in actions/checkout#1437 New Contributors @RobertWieczoreck made their first contribution in actions/checkout#579 @luketomlinson made their first contribution in actions/checkout#1437 Full Changelog: actions/checkout@v3.5.3...v3.6.0 v3.5.3 What's Changed Fix: Checkout Issue in self hosted runner due to faulty submodule check-ins by @megamanics in actions/checkout#1196 Fix typos found by codespell by @DimitriPapadopoulos in actions/checkout#1287 Add support for sparse checkouts by @dscho and @dfdez in actions/checkout#1369 Release v3.5.3 by @TingluoHuang in actions/checkout#1376 New Contributors @megamanics made their first contribution in actions/checkout#1196 @DimitriPapadopoulos made their first contribution in actions/checkout#1287 @dfdez made their first contribution in actions/checkout#1369 Full Changelog: actions/checkout@v3...v3.5.3 v3.5.2 What's Changed Fix: Use correct API url / endpoint in GHES by @fhammerl in actions/checkout#1289 based on #1286 by @1newsr Full Changelog: actions/checkout@v3.5.1...v3.5.2 v3.5.1 What's Changed Improve checkout performance on Windows runners by upgrading @actions/github dependency by @BrettDong in actions/checkout#1246 New Contributors @BrettDong made their first contribution in actions/checkout#1246 ... (truncated) Changelog Sourced from actions/checkout's changelog. Changelog v4.0.0 Support fetching without the --progress option Update to node20 v3.6.0 Fix: Mark test scripts with Bash'isms to be run via Bash Add option to fetch tags even if fetch-depth > 0 v3.5.3 Fix: Checkout fail in self-hosted runners when faulty submodule are checked-in Fix typos found by codespell Add support for sparse checkouts v3.5.2 Fix api endpoint for GHES v3.5.1 Fix slow checkout on Windows v3.5.0 Add new public key for known_hosts v3.4.0 Upgrade codeql actions to v2 Upgrade dependencies Upgrade @actions/io v3.3.0 Implement branch list using callbacks from exec function Add in explicit reference to private checkout options [Fix comment typos (that got added in #770)](actions/checkout#1057) v3.2.0 Add GitHub Action to perform release Fix status badge Replace datadog/squid with ubuntu/squid Docker image Wrap pipeline commands for submoduleForeach in quotes Update @actions/io to 1.1.2 Upgrading version to 3.2.0 v3.1.0 Use @actions/core saveState and getState Add github-server-url input v3.0.2 Add input set-safe-directory v3.0.1 ... (truncated) Commits 3df4ab1 Release 4.0.0 (#1447) 8b5e8b7 Support fetching without the --progress option (#1067) 97a652b Update default runtime to node20 (#1436) See full diff in compare view Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase. Dependabot commands and options You can trigger Dependabot actions by commenting on this PR: @dependabot rebase will rebase this PR @dependabot recreate will recreate this PR, overwriting any edits that have been made to it @dependabot merge will merge this PR after your CI passes on it @dependabot squash and merge will squash and merge this PR after your CI passes on it @dependabot cancel merge will cancel a previously requested merge and block automerging @dependabot reopen will reopen this PR if it is closed @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
## [1.0.3](v1.0.2...v1.0.3) (2023-09-05) ### Dependencies and Other Build Updates * **deps-dev:** bump @commitlint/cli from 17.6.5 to 17.6.6 ([#53](#53)) ([22b8bbe](22b8bbe)) * **deps-dev:** bump @commitlint/cli from 17.6.6 to 17.6.7 ([#59](#59)) ([702df77](702df77)) * **deps-dev:** bump @commitlint/cli from 17.6.7 to 17.7.0 ([#61](#61)) ([043c953](043c953)) * **deps-dev:** bump @commitlint/cli from 17.7.0 to 17.7.1 ([#63](#63)) ([e58c315](e58c315)) * **deps-dev:** bump @commitlint/config-conventional from 17.6.5 to 17.6.6 ([#54](#54)) ([1d99376](1d99376)) * **deps-dev:** bump @commitlint/config-conventional from 17.6.6 to 17.6.7 ([#58](#58)) ([8a99190](8a99190)) * **deps-dev:** bump @commitlint/config-conventional from 17.6.7 to 17.7.0 ([#62](#62)) ([b9e2f9f](b9e2f9f)) * **deps-dev:** bump prettier from 2.8.8 to 3.0.0 ([#57](#57)) ([2bdc7df](2bdc7df)), closes [prettier/prettier#14435](prettier/prettier#14435) [prettier/prettier#14212](prettier/prettier#14212) [prettier/prettier#14391](prettier/prettier#14391) [prettier/prettier#13687](prettier/prettier#13687) [prettier/prettier#13732](prettier/prettier#13732) [prettier/prettier#13731](prettier/prettier#13731) [#15011](https://github.com/Th3S4mur41/demo-auto-security-release/issues/15011) [#15010](https://github.com/Th3S4mur41/demo-auto-security-release/issues/15010) [#15009](https://github.com/Th3S4mur41/demo-auto-security-release/issues/15009) [#14901](https://github.com/Th3S4mur41/demo-auto-security-release/issues/14901) [#14896](https://github.com/Th3S4mur41/demo-auto-security-release/issues/14896) [#14994](https://github.com/Th3S4mur41/demo-auto-security-release/issues/14994) [#14995](https://github.com/Th3S4mur41/demo-auto-security-release/issues/14995) [#15002](https://github.com/Th3S4mur41/demo-auto-security-release/issues/15002) [#15000](https://github.com/Th3S4mur41/demo-auto-security-release/issues/15000) * **deps-dev:** bump prettier from 3.0.0 to 3.0.1 ([#60](#60)) ([724d609](724d609)) * **deps-dev:** bump prettier from 3.0.1 to 3.0.2 ([#64](#64)) ([9783d95](9783d95)) * **deps-dev:** bump prettier from 3.0.2 to 3.0.3 ([#67](#67)) ([c9a7f2a](c9a7f2a)) * **deps-dev:** bump semantic-release from 21.0.5 to 21.0.6 ([#55](#55)) ([ff8e146](ff8e146)) * **deps-dev:** bump semantic-release from 21.0.6 to 21.0.7 ([#56](#56)) ([b601697](b601697)) * **deps-dev:** bump semantic-release from 21.0.7 to 21.0.9 ([#65](#65)) ([72e37ac](72e37ac)) * **deps-dev:** bump semantic-release from 21.0.9 to 21.1.1 ([#66](#66)) ([d3d00f0](d3d00f0)) * **deps:** bump actions/checkout from 3 to 4 ([#68](#68)) ([14f006f](14f006f)), closes [actions/checkout#1436](actions/checkout#1436) [actions/checkout#1067](actions/checkout#1067) [actions/checkout#1447](actions/checkout#1447) [actions/checkout#1436](actions/checkout#1436) [actions/checkout#1067](actions/checkout#1067) [actions/checkout#1377](actions/checkout#1377) [actions/checkout#579](actions/checkout#579) [actions/checkout#1437](actions/checkout#1437) [actions/checkout#579](actions/checkout#579) [actions/checkout#1437](actions/checkout#1437) [actions/checkout#1196](actions/checkout#1196) [actions/checkout#1287](actions/checkout#1287) [actions/checkout#1369](actions/checkout#1369) [actions/checkout#1376](actions/checkout#1376) [actions/checkout#1196](actions/checkout#1196) [actions/checkout#1287](actions/checkout#1287) [actions/checkout#1369](actions/checkout#1369) [actions/checkout#1289](actions/checkout#1289) [#1286](https://github.com/Th3S4mur41/demo-auto-security-release/issues/1286) [actions/checkout#1246](actions/checkout#1246) [actions/checkout#1246](actions/checkout#1246) [#770](https://github.com/Th3S4mur41/demo-auto-security-release/issues/770) [actions/checkout#1057](actions/checkout#1057) [#1447](https://github.com/Th3S4mur41/demo-auto-security-release/issues/1447) [#1067](https://github.com/Th3S4mur41/demo-auto-security-release/issues/1067) [#1436](https://github.com/Th3S4mur41/demo-auto-security-release/issues/1436)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/actions/checkout/releases">actions/checkout's releases</a>.</em></p> <blockquote> <h2>v4.0.0</h2> <h2>What's Changed</h2> <ul> <li>Update default runtime to node20 by <a href="https://github.com/takost"><code>@takost</code></a> in <a href="h ttps://redirect.github.com/actions/checkout/pull/1436">actions/checkout# 1436</a></li> <li>Support fetching without the --progress option by <a href="https://github.com/simonbaird"><code>@simonbaird</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1067">actions/ch eckout#1067</a></li> <li>Release 4.0.0 by <a href="https://github.com/takost"><code>@takost</code></a> in <a href="h ttps://redirect.github.com/actions/checkout/pull/1447">actions/checkout# 1447</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/takost"><code>@takost</code></a> made their first contribution in <a href="https://redirect.github.com/actions /checkout/pull/1436">actions/checkout#1436</a></li> <li><a href="https://github.com/simonbaird"><code>@simonbaird</code></a> made their first contribution in <a href="https://redirect.github.com/actions /checkout/pull/1067">actions/checkout#1067</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/ checkout/compare/v3...v4.0.0">https://github.com/actions/checkout/compar e/v3...v4.0.0</a></p> <h2>v3.6.0</h2> <h2>What's Changed</h2> <ul> <li>Mark test scripts with Bash'isms to be run via Bash by <a href="https://github.com/dscho"><code>@dscho</code></a> in <a href="htt ps://redirect.github.com/actions/checkout/pull/1377">actions/checkout#13 77</a></li> <li>Add option to fetch tags even if fetch-depth > 0 by <a href="http s://github.com/RobertWieczoreck"><code>@RobertWieczoreck</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/579">actions/ checkout#579</a></li> <li>Release 3.6.0 by <a href="https://github.com/luketomlinson"><code>@luketomlinson</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1437">acti ons/checkout#1437</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/RobertWieczoreck"><code>@RobertWieczore ck</code></a> made their first contribution in <a href="https://redirect .gh.neting.cc/actions/checkout/pull/579">actions/checkout#579</a></li> <li><a href="https://github.com/luketomlinson"><code>@luketomlinson</code></a> made their first contribution in <a href="https://redirect.github.com/ac tions/checkout/pull/1437">actions/checkout#1437</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/ checkout/compare/v3.5.3...v3.6.0">https://github.com/actions/checkout/co mpare/v3.5.3...v3.6.0</a></p> <h2>v3.5.3</h2> <h2>What's Changed</h2> <ul> <li>Fix: Checkout Issue in self hosted runner due to faulty submodule check-ins by <a href="https://github.com/megamanics"><code>@megamanics</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1196">actions/ch eckout#1196</a></li> <li>Fix typos found by codespell by <a href="https://github.com/DimitriP apadopoulos"><code>@DimitriPapadopoulos</code></a> in <a href="https:// redirect.github.com/actions/checkout/pull/1287">actions/checkout#1287</a ></li> <li>Add support for sparse checkouts by <a href="https://github.com/dscho"><code>@dscho</code></a> and <a href="https://github.com/dfdez"><code>@dfdez</code></a> in <a href="htt ps://redirect.github.com/actions/checkout/pull/1369">actions/checkout#13 69</a></li> <li>Release v3.5.3 by <a href="https://github.com/TingluoHuang"><code>@TingluoHuang</code></a> in <a href="https://redirect.github.com/actions/checkout/pull/1376">acti ons/checkout#1376</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/megamanics"><code>@megamanics</code></a> made their first contribution in <a href="https://redirect.github.com/actions /checkout/pull/1196">actions/checkout#1196</a></li> <li><a href="https://github.com/DimitriPapadopoulos"><code>@DimitriPapa dopoulos</code></a> made their first contribution in <a href="https://re direct.github.com/actions/checkout/pull/1287">actions/checkout#1287</a>< /li> <li><a href="https://github.com/dfdez"><code>@dfdez</code></a> made their first contribution in <a href="https://redirect.github.com/actions /checkout/pull/1369">actions/checkout#1369</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/ checkout/compare/v3...v3.5.3">https://github.com/actions/checkout/compar e/v3...v3.5.3</a></p> <h2>v3.5.2</h2> <h2>What's Changed</h2> <ul> <li>Fix: Use correct API url / endpoint in GHES by <a href="https://github.com/fhammerl"><code>@fhammerl</code></a> in <a hre f="https://redirect.github.com/actions/checkout/pull/1289">actions/check out#1289</a> based on <a href="https://redirect.github.com/actions/check out/issues/1286">sagemath#1286</a> by <a href="https://github.com/1newsr"><code>@1newsr</code></a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/ checkout/compare/v3.5.1...v3.5.2">https://github.com/actions/checkout/co mpare/v3.5.1...v3.5.2</a></p> <h2>v3.5.1</h2> <h2>What's Changed</h2> <ul> <li>Improve checkout performance on Windows runners by upgrading <code>@actions/github</code> dependency by <a href="https://github.com/BrettDong"><code>@BrettDong</code></a> in <a h ref="https://redirect.github.com/actions/checkout/pull/1246">actions/che ckout#1246</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/BrettDong"><code>@BrettDong</code></a> made their first contribution in <a href="https://redirect.github.com/ac tions/checkout/pull/1246">actions/checkout#1246</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/actions/checkout/blob/ma in/CHANGELOG.md">actions/checkout's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> <h2>v4.0.0</h2> <ul> <li><a href="https://redirect.github.com/actions/checkout/pull/1067">Support fetching without the --progress option</a></li> <li><a href="https://redirect.github.com/actions/checkout/pull/1436">Update to node20</a></li> </ul> <h2>v3.6.0</h2> <ul> <li><a href="https://redirect.github.com/actions/checkout/pull/1377">Fix: Mark test scripts with Bash'isms to be run via Bash</a></li> <li><a href="https://redirect.github.com/actions/checkout/pull/579">Add option to fetch tags even if fetch-depth > 0</a></li> </ul> <h2>v3.5.3</h2> <ul> <li><a href="https://redirect.github.com/actions/checkout/pull/1196">Fix: Checkout fail in self-hosted runners when faulty submodule are checked- in</a></li> <li><a href="https://redirect.github.com/actions/checkout/pull/1287">Fix typos found by codespell</a></li> <li><a href="https://redirect.github.com/actions/checkout/pull/1369">Add support for sparse checkouts</a></li> </ul> <h2>v3.5.2</h2> <ul> <li><a href="https://redirect.github.com/actions/checkout/pull/1289">Fix api endpoint for GHES</a></li> </ul> <h2>v3.5.1</h2> <ul> <li><a href="https://redirect.github.com/actions/checkout/pull/1246">Fix slow checkout on Windows</a></li> </ul> <h2>v3.5.0</h2> <ul> <li><a href="https://redirect.github.com/actions/checkout/pull/1237">Add new public key for known_hosts</a></li> </ul> <h2>v3.4.0</h2> <ul> <li><a href="https://redirect.github.com/actions/checkout/pull/1209">Upgrade codeql actions to v2</a></li> <li><a href="https://redirect.github.com/actions/checkout/pull/1210">Upgrade dependencies</a></li> <li><a href="https://redirect.github.com/actions/checkout/pull/1225">Upgrade <code>@actions/io</code></a></li> </ul> <h2>v3.3.0</h2> <ul> <li><a href="https://redirect.github.com/actions/checkout/pull/1045">Implement branch list using callbacks from exec function</a></li> <li><a href="https://redirect.github.com/actions/checkout/pull/1050">Add in explicit reference to private checkout options</a></li> <li>[Fix comment typos (that got added in <a href="https://redirect.gith ub.com/actions/checkout/issues/770">sagemath#770</a>)](<a href="https://redirect .gh.neting.cc/actions/checkout/pull/1057">actions/checkout#1057</a>)</li> </ul> <h2>v3.2.0</h2> <ul> <li><a href="https://redirect.github.com/actions/checkout/pull/942">Add GitHub Action to perform release</a></li> <li><a href="https://redirect.github.com/actions/checkout/pull/967">Fix status badge</a></li> <li><a href="https://redirect.github.com/actions/checkout/pull/1002">Replace datadog/squid with ubuntu/squid Docker image</a></li> <li><a href="https://redirect.github.com/actions/checkout/pull/964">Wrap pipeline commands for submoduleForeach in quotes</a></li> <li><a href="https://redirect.github.com/actions/checkout/pull/1029">Update <code>@actions/io</code> to 1.1.2</a></li> <li><a href="https://redirect.github.com/actions/checkout/pull/1039">Upgrading version to 3.2.0</a></li> </ul> <h2>v3.1.0</h2> <ul> <li><a href="https://redirect.github.com/actions/checkout/pull/939">Use <code>@actions/core</code> <code>saveState</code> and <code>getState</code></a></li> <li><a href="https://redirect.github.com/actions/checkout/pull/922">Add <code>github-server-url</code> input</a></li> </ul> <h2>v3.0.2</h2> <ul> <li><a href="https://redirect.github.com/actions/checkout/pull/770">Add input <code>set-safe-directory</code></a></li> </ul> <h2>v3.0.1</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="actions/checkout@3df4ab11eba7bda6 032a0b82a6bb43b11571feac"><code>3df4ab1</code></a> Release 4.0.0 (<a hre f="https://redirect.github.com/actions/checkout/issues/1447">#1447</a>)< /li> <li><a href="actions/checkout@8b5e8b768746b503 94015010d25e690bfab9dfbc"><code>8b5e8b7</code></a> Support fetching without the --progress option (<a href="https://redirect.github.com/acti ons/checkout/issues/1067">sagemath#1067</a>)</li> <li><a href="actions/checkout@97a652b80035363d f47baee5031ec8670b8878ac"><code>97a652b</code></a> Update default runtime to node20 (<a href="https://redirect.github.com/actions/checkout sagemath/issues/1436">sagemath#1436</a>)</li> <li>See full diff in <a href="https://github.com/actions/checkout/compare/v3...v4">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot- badges.githubapp.com/badges/compatibility_score?dependency- name=actions/checkout&package-manager=github_actions&previous- version=3&new-version=4)](https://docs.github.com/en/github/managing- security-vulnerabilities/about-dependabot-security-updates#about- compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> URL: sagemath#36243 Reported by: dependabot[bot] Reviewer(s):
## [3.17.1](v3.17.0...v3.17.1) (2023-10-24) ### 🐛 Bug Fixes * **deps:** bump actions/checkout from 3 to 4 ([#61](#61)) ([c38d3a3](c38d3a3)), closes [actions/checkout#1436](actions/checkout#1436) [actions/checkout#1067](actions/checkout#1067) [actions/checkout#1447](actions/checkout#1447) [actions/checkout#1436](actions/checkout#1436) [actions/checkout#1067](actions/checkout#1067) [actions/checkout#1377](actions/checkout#1377) [actions/checkout#579](actions/checkout#579) [actions/checkout#1437](actions/checkout#1437) [actions/checkout#579](actions/checkout#579) [actions/checkout#1437](actions/checkout#1437) [actions/checkout#1196](actions/checkout#1196) [actions/checkout#1287](actions/checkout#1287) [actions/checkout#1369](actions/checkout#1369) [actions/checkout#1376](actions/checkout#1376) [actions/checkout#1196](actions/checkout#1196) [actions/checkout#1287](actions/checkout#1287) [actions/checkout#1369](actions/checkout#1369) [actions/checkout#1289](actions/checkout#1289) [#1286](https://github.com/myparcelnl/actions/issues/1286) [actions/checkout#1246](actions/checkout#1246) [actions/checkout#1246](actions/checkout#1246) [#770](https://github.com/myparcelnl/actions/issues/770) [actions/checkout#1057](actions/checkout#1057) [#1447](https://github.com/myparcelnl/actions/issues/1447) [#1067](https://github.com/myparcelnl/actions/issues/1067) [#1436](https://github.com/myparcelnl/actions/issues/1436)
## [1.0.1](v1.0.0...v1.0.1) (2024-03-15) ### chore * dependabot updates setup ([#2](#2)) ([7e71810](7e71810)) * **deps-dev:** bump [@commitlint](https://github.com/commitlint)/cli from 19.1.0 to 19.2.0 ([#5](#5)) ([737d89b](737d89b)) * **deps-dev:** bump [@types](https://github.com/types)/node from 20.11.26 to 20.11.27 ([#8](#8)) ([ba41253](ba41253)) * **deps-dev:** bump semantic-release from 23.0.2 to 23.0.3 ([#6](#6)) ([7d29884](7d29884)) * **deps:** bump actions/checkout from 2 to 4 ([#4](#4)) ([f35995a](f35995a)), closes [actions/checkout#1436](actions/checkout#1436) [actions/checkout#1067](actions/checkout#1067) [actions/checkout#1447](actions/checkout#1447) [actions/checkout#1436](actions/checkout#1436) [actions/checkout#1067](actions/checkout#1067) [actions/checkout#1377](actions/checkout#1377) [actions/checkout#579](actions/checkout#579) [actions/checkout#1437](actions/checkout#1437) [actions/checkout#579](actions/checkout#579) [actions/checkout#1437](actions/checkout#1437) [actions/checkout#1196](actions/checkout#1196) [actions/checkout#1287](actions/checkout#1287) [actions/checkout#1369](actions/checkout#1369) [actions/checkout#1376](actions/checkout#1376) [actions/checkout#1196](actions/checkout#1196) [actions/checkout#1287](actions/checkout#1287) [actions/checkout#1369](actions/checkout#1369) [actions/checkout#1289](actions/checkout#1289) [#1286](https://github.com/capitnflam/eslint-plugin/issues/1286) [actions/checkout#1246](actions/checkout#1246) [actions/checkout#1246](actions/checkout#1246) [actions/checkout#1598](actions/checkout#1598) [actions/checkout#1511](actions/checkout#1511) [actions/checkout#1514](actions/checkout#1514) [#770](https://github.com/capitnflam/eslint-plugin/issues/770) [actions/checkout#1057](actions/checkout#1057) [#1514](https://github.com/capitnflam/eslint-plugin/issues/1514) [#1511](https://github.com/capitnflam/eslint-plugin/issues/1511) [#1510](https://github.com/capitnflam/eslint-plugin/issues/1510) [#1496](https://github.com/capitnflam/eslint-plugin/issues/1496) [#1396](https://github.com/capitnflam/eslint-plugin/issues/1396) [#1452](https://github.com/capitnflam/eslint-plugin/issues/1452) [#1447](https://github.com/capitnflam/eslint-plugin/issues/1447) [#1067](https://github.com/capitnflam/eslint-plugin/issues/1067) [#1436](https://github.com/capitnflam/eslint-plugin/issues/1436) [#1437](https://github.com/capitnflam/eslint-plugin/issues/1437) * **deps:** bump actions/setup-node from 2 to 4 ([#3](#3)) ([b003245](b003245)), closes [actions/setup-node#866](actions/setup-node#866) [actions/setup-node#868](actions/setup-node#868) [actions/setup-node#876](actions/setup-node#876) [actions/setup-node#868](actions/setup-node#868) [actions/setup-node#861](actions/setup-node#861) [actions/setup-node#859](actions/setup-node#859) [actions/setup-node#870](actions/setup-node#870) [actions/setup-node#872](actions/setup-node#872) [actions/setup-node#875](actions/setup-node#875) [actions/setup-node#831](actions/setup-node#831) [actions/setup-node#803](actions/setup-node#803) [actions/setup-node#809](actions/setup-node#809) [actions/setup-node#816](actions/setup-node#816) [actions/setup-node#794](actions/setup-node#794) [actions/setup-node#710](actions/setup-node#710) [actions/setup-node#812](actions/setup-node#812) [actions/setup-node#808](actions/setup-node#808) [actions/setup-node#804](actions/setup-node#804) [actions/setup-node#802](actions/setup-node#802) [actions/setup-node#807](actions/setup-node#807) [#927](https://github.com/capitnflam/eslint-plugin/issues/927) [#921](https://github.com/capitnflam/eslint-plugin/issues/921) [#865](https://github.com/capitnflam/eslint-plugin/issues/865) [#879](https://github.com/capitnflam/eslint-plugin/issues/879) [#898](https://github.com/capitnflam/eslint-plugin/issues/898) [#917](https://github.com/capitnflam/eslint-plugin/issues/917) [#889](https://github.com/capitnflam/eslint-plugin/issues/889) [#884](https://github.com/capitnflam/eslint-plugin/issues/884) [#882](https://github.com/capitnflam/eslint-plugin/issues/882) [#876](https://github.com/capitnflam/eslint-plugin/issues/876) * **deps:** bump eslint-plugin-react from 7.33.2 to 7.34.0 ([#7](#7)) ([cc5ea82](cc5ea82))
Re: #1186
@dscho discovered that the checkout action could stall for a considerable amount of time on Windows runners waiting for PowerShell invocations made from 'windows-release' npm package to complete.
Then I studied the dependency chain to figure out where 'windows-release' was imported:
'universal-user-agent' package dropped its dependency on 'os-name' in v6 (https://github.com/gr2m/universal-user-agent/releases/tag/v6.0.0).
'@actions/github' v3 removed dependency on '@octokit/rest'@16.43.1 and allows users to move away from the old 'universal-user-agent' v4. (actions/toolkit#453)
This pull request attempts to update the version of '@actions/github' used in the checkout action to avoid importing 'windows-release'.
Based on testing in my own repositories, I can see an improvement in reduced wait time between entering the checkout action and git actually starts to do useful work.