Align repo with TemplateDotNetLibrary and run agent cleanups#109
Align repo with TemplateDotNetLibrary and run agent cleanups#109Malcolmnixon merged 7 commits intomainfrom
Conversation
This commit updates SpdxModel to follow the patterns and best practices from the TemplateDotNetLibrary template repository. Key changes: - Updated .editorconfig to match template (LF line endings, simplified config) - Updated .gitignore to match template structure - Renamed .markdownlint.json to .markdownlint-cli2.jsonc - Updated .yamllint.yaml to ignore .git/ directory - Updated .cspell.json with complete word list from template - Added .versionmark.yaml for version capture - Added build scripts (build.sh, build.bat, lint.sh, lint.bat) - Updated .config/dotnet-tools.json (buildmark 0.3.0, added versionmark) - Added SBOM configuration to library csproj - Updated GitHub workflows: - Added versionmark capture to quality-checks job - Added descriptive comments to build and release workflows - Aligned workflow names and structure with template - Updated release workflow to match template pattern - Updated pull request template (minor wording updates) All changes maintain SpdxModel-specific customizations (e.g., SPDX-specific tools, workflows steps, and terminology) while adopting common template patterns.
Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
…enamed tests Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
| **/manifest.spdx.json.sha256 | ||
| *summary.md | ||
|
|
||
| codeql: |
There was a problem hiding this comment.
Can you check for consistency on this file against the template - I think there should be comments in front of the jobs.
There was a problem hiding this comment.
Fixed in a51032d. Added the leading comment matching the template pattern (# Runs CodeQL security and quality analysis, gathering results to include in the code quality report.). Also aligned the job with template: added fetch-depth: 0 on checkout, moved Initialize CodeQL before Setup dotnet, removed build-mode: manual, cleaned up inline permission comments, and renamed Upload SARIF to Upload CodeQL SARIF.
| name: codeql-sarif | ||
| path: sarif-results/csharp.sarif | ||
|
|
||
| build-docs: |
There was a problem hiding this comment.
Can you check for consistency against the template for this job - both in leading comments, display name, artifacts, and comments breaking the order of operations into discrete sections for maintenance.
There was a problem hiding this comment.
Fixed in a51032d. Restructured the build-docs job to match the template pattern:
- Added leading comment describing the job purpose
- Renamed to
Build Documents(matching template) - Added section comments (
=== CHECKOUT AND DOWNLOAD ARTIFACTS ===,=== INSTALL DEPENDENCIES ===,=== GENERATE MARKDOWN REPORTS ===,=== GENERATE HTML DOCUMENTS WITH PANDOC ===,=== GENERATE PDF DOCUMENTS WITH WEASYPRINT ===,=== UPLOAD ARTIFACTS ===) - Grouped all markdown reports, then HTML generation, then PDF generation (matching template order)
- Switched from
pwshtobashshell to match template - Renamed artifact from
documentationtodocuments - Added
--pdf-variant pdf/a-3uto all Weasyprint steps
.github/workflows/release.yaml
Outdated
| - name: Download documents artifact | ||
| uses: actions/download-artifact@v7 | ||
| with: | ||
| name: documentation |
There was a problem hiding this comment.
Check for consistency against the template for the documentation/documents artifact.
There was a problem hiding this comment.
Fixed in a51032d. Changed the artifact name from documentation to documents in both build.yaml (upload) and release.yaml (download) to match the template.
…rtifact to documents Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Pull Request
Description
Runs all GitHub agents against the repository to align with the TemplateDotNetLibrary template and perform automated cleanups.
Repo consistency alignment:
.editorconfig(stricter brace rules, simplified config),.gitignore,.cspell.json,.yamllint.yaml.markdownlint.jsonwith.markdownlint-cli2.jsonc.versionmark.yaml,build.sh/bat,lint.sh/batbuild.yaml,build_on_push.yaml,release.yaml) to match template patternsGenerateSBOM,Microsoft.Sbom.Targets) to project fileCI workflow alignment with template:
codeqljob: Added leading comment,fetch-depth: 0on checkout, reordered steps (CodeQL init before dotnet setup), removedbuild-mode: manual, cleaned up inline permission comments, renamed upload step toUpload CodeQL SARIFbuild-docsjob: Renamed toBuild Documents, added leading comment, restructured with section comments (=== CHECKOUT AND DOWNLOAD ARTIFACTS ===,=== INSTALL DEPENDENCIES ===,=== GENERATE MARKDOWN REPORTS ===,=== GENERATE HTML DOCUMENTS WITH PANDOC ===,=== GENERATE PDF DOCUMENTS WITH WEASYPRINT ===,=== UPLOAD ARTIFACTS ===), grouped steps by type, switched frompwshtobashshell, added--pdf-variant pdf/a-3uto all Weasyprint stepsdocumentationtodocumentsin bothbuild.yamlandrelease.yamlCode style (IDE0011):
if/else/foreachstatements across source and test files to comply with the newcsharp_prefer_braces = true:warning+TreatWarningsAsErrorsFramework-specific test references:
net8.0@,net9.0@,net10.0@prefixed test references inrequirements.yaml— these work correctly becausedotnet test --logger "trx;LogFilePrefix=..."on multi-target projects generates per-framework TRX files (e.g.,ubuntu-latest_net8.0_*.trx) whichreqstreammatches againstDocumentation:
CONTRIBUTING.md,SECURITY.md,docs/guide/guide.mdSpdxSnippetfield names)Tests:
Bad*→Invalid*for naming consistencySpdxReferenceCategoryExtensions(153 → 154 tests)Type of Change
Related Issues
Pre-Submission Checklist
Before submitting this pull request, ensure you have completed the following:
Build and Test
dotnet build --configuration Releasedotnet test --configuration ReleaseCode Quality
dotnet format --verify-no-changesQuality Checks
Please run the following checks before submitting:
cspell "**/*.{md,cs}"markdownlint "**/*.md"yamllint .Testing
Documentation
Additional Notes
reqstream --enforcepasses with framework-specific test references validated against TRX output from multi-target test runs💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.