Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@dameng324
Copy link
Owner

Remove .NET 9.0 and 10.0 test runs from the CI workflow, keeping only .NET 8.0. Add .NET 10.0 test runs to the publish workflow. Also, remove the --no-build flag from the dotnet pack command in the CI workflow.

Remove .NET 9.0 and 10.0 test runs from the CI workflow, keeping only .NET 8.0. Add .NET 10.0 test runs to the publish workflow. Also, remove the --no-build flag from the dotnet pack command in the CI workflow.
Copilot AI review requested due to automatic review settings December 23, 2025 12:03
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR streamlines the CI workflow testing strategy by focusing on .NET 8.0 LTS while ensuring comprehensive multi-version testing in the publish workflow. The changes reduce CI runtime while maintaining thorough pre-release validation.

  • Simplified CI workflow to test only .NET 8.0 for AOT compatibility
  • Enhanced publish workflow by adding .NET 10.0 AOT test coverage
  • Removed --no-build flag from dotnet pack command in CI to ensure proper package creation

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
.github/workflows/ci.yml Removed .NET 9.0 and 10.0 AOT test runs, keeping only .NET 8.0; removed --no-build flag from package creation
.github/workflows/publish.yml Added .NET 10.0 AOT test execution to ensure all target frameworks are validated before publishing

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


- name: Run Benchmarks
run: |
dotnet run -c Release -f net8.0 net9.0 net10.0 --project ./tests/Benchmark -- --filter "*" --exporters github --artifacts ./BenchmarkResults
Copy link

Copilot AI Dec 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The benchmark command references target frameworks net9.0 and net10.0, but the AOT tests for these frameworks have been removed from the CI workflow. This creates an inconsistency where the benchmarks will run for frameworks that aren't being tested for AOT compatibility in the same workflow. Consider either removing net9.0 and net10.0 from the benchmark command to match the removed AOT tests, or keeping the multi-framework testing approach consistent across both benchmarks and AOT tests.

Suggested change
dotnet run -c Release -f net8.0 net9.0 net10.0 --project ./tests/Benchmark -- --filter "*" --exporters github --artifacts ./BenchmarkResults
dotnet run -c Release -f net8.0 --project ./tests/Benchmark -- --filter "*" --exporters github --artifacts ./BenchmarkResults

Copilot uses AI. Check for mistakes.
@codecov
Copy link

codecov bot commented Dec 23, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 98.46%. Comparing base (a5c1ea4) to head (5917995).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #134   +/-   ##
=======================================
  Coverage   98.46%   98.46%           
=======================================
  Files          99       99           
  Lines        2281     2281           
  Branches      241      241           
=======================================
  Hits         2246     2246           
  Misses         23       23           
  Partials       12       12           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@github-actions
Copy link


BenchmarkDotNet v0.15.3, Linux Ubuntu 24.04.3 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.101
  [Host]    : .NET 8.0.22 (8.0.22, 8.0.2225.52707), X64 RyuJIT x86-64-v3
  .NET 10.0 : .NET 10.0.1 (10.0.1, 10.0.125.57005), X64 RyuJIT x86-64-v3
  .NET 8.0  : .NET 8.0.22 (8.0.22, 8.0.2225.52707), X64 RyuJIT x86-64-v3
  .NET 9.0  : .NET 9.0.11 (9.0.11, 9.0.1125.51716), X64 RyuJIT x86-64-v3


Method Job Runtime Mean Error StdDev Ratio RatioSD Allocated Alloc Ratio
Deserialize_ProtoBuf_net .NET 10.0 .NET 10.0 839.4 μs 4.78 μs 4.47 μs 1.46 0.01 562 KB 0.88
Deserialize_GoogleProtoBuf .NET 10.0 .NET 10.0 614.3 μs 2.17 μs 1.81 μs 1.07 0.00 648.7 KB 1.01
Deserialize_LightProto .NET 10.0 .NET 10.0 575.1 μs 1.20 μs 0.94 μs 1.00 0.00 639.98 KB 1.00
Deserialize_ProtoBuf_net .NET 8.0 .NET 8.0 909.5 μs 1.43 μs 1.34 μs 1.45 0.01 562 KB 0.88
Deserialize_GoogleProtoBuf .NET 8.0 .NET 8.0 827.3 μs 1.58 μs 1.40 μs 1.32 0.01 648.7 KB 1.01
Deserialize_LightProto .NET 8.0 .NET 8.0 626.0 μs 3.93 μs 3.48 μs 1.00 0.01 639.98 KB 1.00
Deserialize_ProtoBuf_net .NET 9.0 .NET 9.0 825.8 μs 2.98 μs 2.49 μs 1.36 0.02 562 KB 0.88
Deserialize_GoogleProtoBuf .NET 9.0 .NET 9.0 752.3 μs 2.21 μs 1.96 μs 1.24 0.02 648.7 KB 1.01
Deserialize_LightProto .NET 9.0 .NET 9.0 606.3 μs 8.66 μs 7.68 μs 1.00 0.02 639.98 KB 1.00

BenchmarkDotNet v0.15.3, Linux Ubuntu 24.04.3 LTS (Noble Numbat)
AMD EPYC 7763 2.45GHz, 1 CPU, 4 logical and 2 physical cores
.NET SDK 10.0.101
  [Host]    : .NET 8.0.22 (8.0.22, 8.0.2225.52707), X64 RyuJIT x86-64-v3
  .NET 10.0 : .NET 10.0.1 (10.0.1, 10.0.125.57005), X64 RyuJIT x86-64-v3
  .NET 8.0  : .NET 8.0.22 (8.0.22, 8.0.2225.52707), X64 RyuJIT x86-64-v3
  .NET 9.0  : .NET 9.0.11 (9.0.11, 9.0.1125.51716), X64 RyuJIT x86-64-v3


Method Job Runtime Mean Error StdDev Ratio Allocated Alloc Ratio
Serialize_ProtoBuf_net .NET 10.0 .NET 10.0 903.1 μs 9.50 μs 7.93 μs 1.31 526.41 KB 1.03
Serialize_GoogleProtoBuf .NET 10.0 .NET 10.0 803.4 μs 1.54 μs 1.44 μs 1.17 512.95 KB 1.00
Serialize_LightProto .NET 10.0 .NET 10.0 688.5 μs 1.65 μs 1.54 μs 1.00 512.95 KB 1.00
Serialize_ProtoBuf_net .NET 8.0 .NET 8.0 1,005.2 μs 2.00 μs 1.87 μs 1.28 526.4 KB 1.03
Serialize_GoogleProtoBuf .NET 8.0 .NET 8.0 810.2 μs 3.78 μs 3.35 μs 1.03 512.95 KB 1.00
Serialize_LightProto .NET 8.0 .NET 8.0 788.3 μs 4.93 μs 4.61 μs 1.00 512.95 KB 1.00
Serialize_ProtoBuf_net .NET 9.0 .NET 9.0 1,018.9 μs 2.90 μs 2.57 μs 1.37 526.4 KB 1.03
Serialize_GoogleProtoBuf .NET 9.0 .NET 9.0 800.1 μs 1.82 μs 1.42 μs 1.08 512.95 KB 1.00
Serialize_LightProto .NET 9.0 .NET 9.0 741.1 μs 4.61 μs 4.08 μs 1.00 512.95 KB 1.00

@dameng324 dameng324 merged commit 83d6661 into main Dec 23, 2025
14 checks passed
@dameng324 dameng324 deleted the ci-workflow branch December 23, 2025 12:16
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