Skip to content
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

Merged
merged 3 commits into from
Apr 12, 2023
Merged

Conversation

BrettDong
Copy link
Contributor

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'
  <- '@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 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.

@BrettDong BrettDong requested a review from a team as a code owner March 26, 2023 11:30
dscho added a commit to dscho/git-for-windows-automation that referenced this pull request Mar 26, 2023
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Copy link
Contributor

@dscho dscho left a 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!

@briantist
Copy link

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.

@briantist
Copy link

I've been using this and it was faster, but I just had a run with it that took 1m41s 😖

src/github-api-helper.ts Outdated Show resolved Hide resolved
@BrettDong
Copy link
Contributor Author

Hi @thboop , could you please re-approve the CI checks? Thanks!

@fhammerl fhammerl self-assigned this Apr 6, 2023
src/github-api-helper.ts Outdated Show resolved Hide resolved
@fhammerl
Copy link
Contributor

fhammerl commented Apr 6, 2023

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 windows-release by removing universal-user-agent all together, so thanks for taking that approach :)

A few notes / questions:

  1. Do you have a minimal repro that only requires one of windows-release? E.g. I tried to run console.log(windowsRelease()) on a larger runner but it did not cause the same stalling behaviour. Running (Get-CimInstance -ClassName Win32_OperatingSystem).caption directly in powershell is also instantaneous
  2. I could only reproduce this issue on larger runners, not on windows-latest or windows-2019. Do you experience it there too?

@BrettDong
Copy link
Contributor Author

The delay from windows-release is only part of the reason checkout is slow on Windows. This pull request solves specifically this single issue. In majority of cases the delay of windows-release is of single digit seconds; in rarer cases it takes longer time. I don't know why the time is indeterministic. But at least this pull request completely eliminates the PowerShell invocation and saves at least a couple of seconds in each checkout run.

Apart from the windows-release problem discovered by @dscho, another source of stall I discovered is extremely slow disk I/O for loading NodeJS and Git executable and libraries: #1186 (comment). But I don't think it's something can be improved by external users like us.

…/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.
@BrettDong
Copy link
Contributor Author

I could only reproduce this issue on larger runners, not on windows-latest or windows-2019. Do you experience it there too?

I never used large runners and I don't understand what issue you are referring to.

@thboop
Copy link
Contributor

thboop commented Apr 10, 2023

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 actions/github is causing this new behavior to fail. Do you have some time to update this pr, or should we take it over?

@BrettDong
Copy link
Contributor Author

I did not run npm build last time and it might be the cause of test failures. @thboop: Could you approve CI checks?

Copy link
Contributor

@fhammerl fhammerl left a comment

Choose a reason for hiding this comment

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

LGTM!

@fhammerl fhammerl merged commit 40a16eb into actions:main Apr 12, 2023
@fhammerl
Copy link
Contributor

Thanks for your contribution @BrettDong

Small side-note, did you need to manually recognise the MIT license of .licenses/npm/@actions/http-client-1.0.8.dep.yml or did licensed work the first time?

@BrettDong
Copy link
Contributor Author

Thanks for your contribution @BrettDong

Small side-note, did you need to manually recognise the MIT license of .licenses/npm/@actions/http-client-1.0.8.dep.yml or did licensed work the first time?

I manually updated the yaml, following licensed documentation.

ZauberNerd added a commit to ZauberNerd/checkout that referenced this pull request Apr 13, 2023
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>
@ZauberNerd
Copy link

This PR breaks GHES compatibility in case actions/checkout is used in an environment where no git binary exists. See also: #1288

falken42 added a commit to coldfusionjp/ghaction-checkout-plus that referenced this pull request Apr 18, 2023
…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)
falken42 added a commit to coldfusionjp/ghaction-checkout-plus that referenced this pull request Apr 18, 2023
…dfusionjp/main

* main:
Release v3.5.1 (actions#1284)
Improve checkout performance on Windows runners by upgrading @actions/github dependency (actions#1246)
falken42 pushed a commit to coldfusionjp/ghaction-checkout-plus that referenced this pull request Apr 18, 2023
…dfusionjp/main

* main:
Release v3.5.1 (actions#1284)
Improve checkout performance on Windows runners by upgrading @actions/github dependency (actions#1246)
falken42 added a commit to coldfusionjp/ghaction-checkout-plus that referenced this pull request Apr 18, 2023
…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)
kodiakhq bot pushed a commit to pdylanross/fatigue that referenced this pull request Sep 5, 2023
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)
Th3S4mur41 pushed a commit to Th3S4mur41/demo-auto-security-release that referenced this pull request Sep 5, 2023
## [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)
vbraun pushed a commit to vbraun/sage that referenced this pull request Sep 16, 2023
    
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://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://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://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://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://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://github.com/actions/checkout/pull/1377">actions/checkout#13
77</a></li>
<li>Add option to fetch tags even if fetch-depth &gt; 0 by <a href="http
s://github.com/RobertWieczoreck"><code>@​RobertWieczoreck</code></a> in
<a href="https://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://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
.git.luolix.top/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://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://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://
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://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://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://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://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://github.com/actions/checkout/pull/1289">actions/check
out#1289</a> based on <a href="https://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://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://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://github.com/actions/checkout/pull/1067">Support
fetching without the --progress option</a></li>
<li><a
href="https://github.com/actions/checkout/pull/1436">Update to
node20</a></li>
</ul>
<h2>v3.6.0</h2>
<ul>
<li><a
href="https://github.com/actions/checkout/pull/1377">Fix: Mark
test scripts with Bash'isms to be run via Bash</a></li>
<li><a href="https://github.com/actions/checkout/pull/579">Add
option to fetch tags even if fetch-depth &gt; 0</a></li>
</ul>
<h2>v3.5.3</h2>
<ul>
<li><a
href="https://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://github.com/actions/checkout/pull/1287">Fix
typos found by codespell</a></li>
<li><a href="https://github.com/actions/checkout/pull/1369">Add
support for sparse checkouts</a></li>
</ul>
<h2>v3.5.2</h2>
<ul>
<li><a href="https://github.com/actions/checkout/pull/1289">Fix
api endpoint for GHES</a></li>
</ul>
<h2>v3.5.1</h2>
<ul>
<li><a href="https://github.com/actions/checkout/pull/1246">Fix
slow checkout on Windows</a></li>
</ul>
<h2>v3.5.0</h2>
<ul>
<li><a href="https://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://github.com/actions/checkout/pull/1209">Upgrade
codeql actions to v2</a></li>
<li><a
href="https://github.com/actions/checkout/pull/1210">Upgrade
dependencies</a></li>
<li><a
href="https://github.com/actions/checkout/pull/1225">Upgrade
<code>@​actions/io</code></a></li>
</ul>
<h2>v3.3.0</h2>
<ul>
<li><a
href="https://github.com/actions/checkout/pull/1045">Implement
branch list using callbacks from exec function</a></li>
<li><a href="https://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
.git.luolix.top/actions/checkout/pull/1057">actions/checkout#1057</a>)</li>
</ul>
<h2>v3.2.0</h2>
<ul>
<li><a href="https://github.com/actions/checkout/pull/942">Add
GitHub Action to perform release</a></li>
<li><a href="https://github.com/actions/checkout/pull/967">Fix
status badge</a></li>
<li><a
href="https://github.com/actions/checkout/pull/1002">Replace
datadog/squid with ubuntu/squid Docker image</a></li>
<li><a href="https://github.com/actions/checkout/pull/964">Wrap
pipeline commands for submoduleForeach in quotes</a></li>
<li><a
href="https://github.com/actions/checkout/pull/1029">Update
<code>@​actions/io</code> to 1.1.2</a></li>
<li><a
href="https://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://github.com/actions/checkout/pull/939">Use
<code>@​actions/core</code> <code>saveState</code> and
<code>getState</code></a></li>
<li><a href="https://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://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://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://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://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):
myparcel-bot bot added a commit to myparcelnl/actions that referenced this pull request Oct 24, 2023
github-actions bot pushed a commit to capitnflam/eslint-plugin that referenced this pull request Mar 15, 2024
## [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))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants