Skip to content

Conversation

@randlee
Copy link
Owner

@randlee randlee commented Jan 16, 2026

Summary

This PR adds CI/CD enhancements and sets up NuGet package publishing.

CI/CD Improvements

  • Cross-platform testing: Matrix strategy for Ubuntu, macOS, and Windows
  • CodeQL security scanning: Weekly scans + on push/PR to main/develop
  • Dependabot: Automated dependency updates for NuGet and GitHub Actions

NuGet Publishing

  • Single CLI tool package: roslyn-diff bundles Core + Output assemblies
  • Tag-triggered publishing: Push v* tags to publish to GitHub Packages
  • Install command: dotnet tool install --global roslyn-diff

Security

  • Updated SECURITY.md with project-specific information
  • Supported version: 0.5.x
  • Vulnerability reporting guidelines

Changes

  • .github/workflows/ci.yml - Multi-platform matrix
  • .github/workflows/codeql.yml - Security scanning
  • .github/workflows/publish.yml - NuGet publishing on tags
  • .github/dependabot.yml - Dependency updates
  • SECURITY.md - Security policy
  • Project files configured for single CLI package

Test plan

  • CI passes on all platforms (Ubuntu, macOS, Windows)
  • CodeQL workflow runs successfully
  • All 674 tests pass
  • Local pack creates single roslyn-diff.nupkg with all assemblies

🤖 Generated with Claude Code

randlee and others added 5 commits January 15, 2026 19:34
- Set supported version to 0.5.x
- Add vulnerability reporting guidelines with response timeline
- Document security considerations for the tool
- Add HTML report security notes (XSS prevention, sandboxed JS)
- Define scope of security policy

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add matrix strategy to CI workflow to run builds and tests on all three
major platforms. Update artifact names to include OS for uniqueness.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add CodeQL workflow for C# security vulnerability scanning
- Configure to run on push to main/develop, pull requests, and weekly schedule
- Add Dependabot for NuGet packages and GitHub Actions updates

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add NuGet package publishing to GitHub Packages with tag-based triggers:
- Create publish.yml workflow that triggers on v* tags
- Update all .csproj files with NuGet metadata (PackageId, Description, Tags)
- Add PackageReadmeFile to include README.md in packages
- Centralize common properties (Authors, PackageLicenseExpression) in Directory.Build.props
- CLI project configured as dotnet tool with PackAsTool and ToolCommandName

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Adjust NuGet publishing to create a single package (roslyn-diff) that
bundles all assemblies. Core and Output projects are no longer packaged
separately as they are automatically included via project references.

Changes:
- Set PackageId to 'roslyn-diff' in CLI project
- Mark Core and Output projects as IsPackable=false
- Update publish workflow to pack only CLI project
- Remove unnecessary NuGet metadata from library projects

Users can now install via: dotnet tool install roslyn-diff

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@github-advanced-security
Copy link

This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation.

@randlee randlee merged commit 219ec02 into main Jan 16, 2026
9 checks passed
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.

2 participants