-
Notifications
You must be signed in to change notification settings - Fork 1
Bump actions/checkout from 4 to 5 #13
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
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
This file was deleted.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,18 @@ | ||
| <Solution> | ||
| <Folder Name="/Solution Items/"> | ||
| <File Path=".config/dotnet-tools.json" /> | ||
| <File Path=".github/workflows/main.yml" /> | ||
| <File Path="Build/build-rules.xml" /> | ||
| <File Path="Build/Directory.Build.props" /> | ||
| <File Path="Directory.Build.props" /> | ||
| <File Path="Directory.Build.targets" /> | ||
| <File Path="Directory.Packages.props" /> | ||
| <File Path="OutputBuildProps.props" /> | ||
| <File Path="OutputBuildTargets.props" /> | ||
| <File Path="README.md" /> | ||
| <File Path="ReleaseNotes - Previously.md" /> | ||
| <File Path="ReleaseNotes.md" /> | ||
| </Folder> | ||
| <Project Path="Build/Build.fsproj" /> | ||
| <Project Path="Build/Setup.fsproj" /> | ||
|
Comment on lines
+3
to
+17
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 💡 Verification agent 🧩 Analysis chainVerify referenced paths exist and that actions/checkout is bumped to v5 in workflows This manifest references many files (including .github/workflows/main.yml). Let’s verify all referenced paths resolve and that workflows use actions/checkout@v5 and suitable runners. 🏁 Script executed: #!/bin/bash
set -euo pipefail
echo "Checking that all referenced .slnx paths exist..."
python - << 'PY'
import xml.etree.ElementTree as ET, glob, os, sys
slnx_files = glob.glob('**/*.slnx', recursive=True)
missing = []
for slx in slnx_files:
tree = ET.parse(slx)
root = tree.getroot()
for elem in root.iter():
if elem.tag in ('File','Project'):
p = elem.get('Path')
if p and not os.path.exists(p):
missing.append((slx, p))
if elem.tag == 'BuildDependency':
p = elem.get('Project')
if p and not os.path.exists(p):
missing.append((slx, p))
if missing:
print('Missing paths referenced in .slnx:')
for slx, p in missing:
print(f' {slx}: {p}')
sys.exit(1)
print('All referenced paths in .slnx exist.')
PY
echo
echo "Inspecting actions/checkout usage in workflows..."
if fd -t f -g '.github/workflows/*.yml' >/dev/null 2>&1; then
echo "All checkout usages (context lines shown):"
rg -nP --no-heading -C2 '\buses:\s*actions/checkout@[^ \t]+' .github/workflows || true
echo
echo "Checking for non-v5 usages of actions/checkout..."
if rg -nP --no-heading '\buses:\s*actions/checkout@(?!v5(?:\b|\.))\S+' .github/workflows >/dev/null; then
echo "Found non-v5 usages of actions/checkout:"
rg -nP --no-heading -C1 '\buses:\s*actions/checkout@(?!v5(?:\b|\.))\S+' .github/workflows
exit 2
else
echo "All actions/checkout usages are v5 (or none found)."
fi
echo
echo "Runner targets:"
rg -nP --no-heading '^\s*runs-on\s*:' .github/workflows || true
else
echo "No workflow files found at .github/workflows/*.yml"
fiLength of output: 330 Missing file references in The solution manifest is referencing Build/*.fsx files that don’t exist in the repo:
These must either be added to version control or their Once the manifest is corrected, also verify that your GitHub workflows in
|
||
| </Solution> | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| & dotnet tool update dotnet-reportgenerator-globaltool | ||
| & dotnet tool update altcode.gendarme-tool | ||
| & dotnet tool update dotnet-fsharplint | ||
| & dotnet tool update -g fantomas | ||
|
Comment on lines
+1
to
+4
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🛠️ Refactor suggestion Make tool updates deterministic and fail fast; bind to the local tool manifest explicitly As written, failures won’t stop the script, and updates depend on the current working directory implicitly containing the manifest. Tighten reliability and reproducibility. Apply this diff to add strict error handling, pin to the local manifest, and keep the global fantomas update: +Set-StrictMode -Version Latest
+$ErrorActionPreference = "Stop"
+
+Push-Location $PSScriptRoot
+try {
-& dotnet tool update dotnet-reportgenerator-globaltool
-& dotnet tool update altcode.gendarme-tool
-& dotnet tool update dotnet-fsharplint
-& dotnet tool update -g fantomas
+ & dotnet tool restore --tool-manifest .\.config\dotnet-tools.json
+ & dotnet tool update --tool-manifest .\.config\dotnet-tools.json dotnet-reportgenerator-globaltool
+ & dotnet tool update --tool-manifest .\.config\dotnet-tools.json altcode.gendarme-tool
+ & dotnet tool update --tool-manifest .\.config\dotnet-tools.json dotnet-fsharplint
+ & dotnet tool update -g fantomas
+}
+finally {
+ Pop-Location
+}🤖 Prompt for AI Agents |
||
This file was deleted.
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.
NUnit 4 vs NUnit 3 infrastructure mismatch likely to break test execution
You upgraded NUnit to 4.4.0 but still use NUnit3TestAdapter and nunit3-console (ConsoleRunner 3.x). NUnit 3 adapters/runners don’t execute NUnit 4 tests.
Two paths:
If you prefer to revert for now, change these lines:
If you want to proceed with NUnit 4, I can propose the compatible adapter/runner set.
📝 Committable suggestion
🤖 Prompt for AI Agents