ionide / ionide/FsAutoComplete
[Repo Assist] ci: update GitHub Actions to Node.js 24-compatible versions
- Dominant language
- F#
- Stars
- 486
- Forks
- 169
- Avg merge
- 2d 8h
- Merged PRs (30d)
- 5
Description
🤖 *This PR was created by Repo Assist, an automated AI assistant.*
## Summary
Updates GitHub Actions action versions to address Node.js 20 deprecation warnings appearing in CI logs.
**Changed files:**
| Workflow | Before | After |
|---|---|---|
| `build.yml` (build + analyze jobs) | `actions/checkout@v3` | `actions/checkout@v4` |
| `build-and-pack-nightly.yml` | `actions/checkout@v3`, `actions/setup-dotnet@v2` | `actions/checkout@v4`, `actions/setup-dotnet@v4` |
| `bump-fcs.yml` | `actions/checkout@v3`, `actions/setup-dotnet@v2` | `actions/checkout@v4`, `actions/setup-dotnet@v4` |
| `release.yml` | `actions/checkout@v3` | `actions/checkout@v4` |
## Motivation
Every CI run currently shows this deprecation warning:
> Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: **actions/checkout@v3**, **actions/setup-dotnet@v4** (for v2 instances). Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026.
`actions/checkout@v4` and `actions/setup-dotnet@v4` are the stable current major versions. `auto-merge-main-to-nightly.yml` and `copilot-setup-steps.yml` were already using `@v4` variants.
## Test Status
No functional changes — only CI infrastructure updates. The changes affect GitHub Actions runner environment versions, not the F# code or test logic.
---
> [!WARNING]
> **Protected Files — Push Permission Denied**
>
> This was originally intended as a pull request, but the patch modifies protected files. A human must create the pull request manually.
>
>
> Protected files
>
> - [.github/workflows/build-and-pack-nightly.yml](https://github.com/ionide/FsAutoComplete/blob/main/.github/workflows/build-and-pack-nightly.yml)
- [.github/workflows/build.yml](https://github.com/ionide/FsAutoComplete/blob/main/.github/workflows/build.yml)
- [.github/workflows/bump-fcs.yml](https://github.com/ionide/FsAutoComplete/blob/main/.github/workflows/bump-fcs.yml)
- [.github/workflows/release.yml](https://github.com/ionide/FsAutoComplete/blob/main/.github/workflows/release.yml)
>
> The push was rejected because GitHub Actions does not have `workflows` permission to push these changes, and is never allowed to make such changes, or other authorization being used does not have this permission.
>
>
Create the pull request manually
```sh
# Download the patch from the workflow run
gh run download 23883457100 -n agent -D /tmp/agent-23883457100
# Create a new branch
git checkout -b repo-assist/eng-update-github-actions-20260402-afa3bc44e4fa35f6 main
# Apply the patch (--3way handles cross-repo patches)
git am --3way /tmp/agent-23883457100/aw-repo-assist-eng-update-github-actions-20260402.patch
# Push the branch and create the pull request
git push origin repo-assist/eng-update-github-actions-20260402-afa3bc44e4fa35f6
gh pr create --title '[Repo Assist] ci: update GitHub Actions to Node.js 24-compatible versions' --base main --head repo-assist/eng-update-github-actions-20260402-afa3bc44e4fa35f6 --repo ionide/FsAutoComplete
```
> Generated by 🌈 Repo Assist, see [workflow run](https://github.com/ionide/FsAutoComplete/actions/runs/23883457100). [Learn more](https://github.com/githubnext/agentics/blob/main/docs/repo-assist.md).
>
> To install this [agentic workflow](https://github.com/githubnext/agentics/blob/e1ecf341a90b7bc2021e77c58685d7e269e20b99/workflows/repo-assist.md), run
> ```
> gh aw add githubnext/agentics/workflows/repo-assist.md@e1ecf341a90b7bc2021e77c58685d7e269e20b99
> ```
Contributor guide
Assessment
This issue has not been assessed yet.