Jens-G opened a new pull request, #3481:
URL: https://github.com/apache/thrift/pull/3481

   ## Summary
   
   - Adds `lib/netstd/Tests/codegen/run-NetStd-Codegen-Tests.ps1`: a PowerShell 
script that tests the netstd code generator by compiling every `.thrift` file 
in the repository against the Thrift library for each target .NET version
   - Extends the script with optional parameters `-TargetVersions`, 
`-TargetFolder`, `-ExtraThriftFiles` (backward-compatible; default behaviour 
unchanged when called without arguments)
   - Adds `lib-netstd-codegen` job to `.github/workflows/build.yml` as a matrix 
over .NET 8, 9, 10 — uses the pre-built `thrift-compiler` artifact and 
`actions/setup-dotnet`
   
   ## How the test works
   
   For each `.thrift` file:
   1. Run `thrift --gen netstd:<version>` to produce C# code
   2. Generate a minimal solution (`.sln` for net8, `.slnx` for net9+) and 
`.csproj` referencing `lib/netstd/Thrift/Thrift.csproj`
   3. Run `dotnet build` — any compile error is a codegen regression
   4. Execute the compiled binary — any crash is a serious code quality issue
   
   Known-failure lists in the script handle files that are intentionally 
expected to fail.
   
   ## Test plan
   
   - [ ] CI passes for all three matrix jobs (net8, net9, net10)
   - [ ] Job names show as `lib-netstd-codegen (8)`, `lib-netstd-codegen (9)`, 
`lib-netstd-codegen (10)` in Actions UI
   - [ ] No existing jobs in `build.yml` are affected
   - [ ] Script called without arguments locally defaults to system temp dir 
and all three .NET versions
   
   ## Notes
   
   - Script uses `.slnx` format (XML solution file) for net9+ and classic 
`.sln` for net8, since SLNX support was introduced with .NET 9 SDK
   - `actions/setup-dotnet` pinned to SHA 
`67a3573c9a986a3f9c594539f4ab511d57bb3ce9` (v4.3.1)
   
   🤖 Generated with [Claude Code](https://claude.ai/claude-code)
   
   Co-Authored-By: Claude Sonnet 4.6 <[email protected]>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to