Skip to content

Remove supporting of net framework target#17

Merged
nvborisenko merged 1 commit intodevelopfrom
net4-obsolete
Jan 23, 2026
Merged

Remove supporting of net framework target#17
nvborisenko merged 1 commit intodevelopfrom
net4-obsolete

Conversation

@nvborisenko
Copy link
Member

@nvborisenko nvborisenko commented Jan 23, 2026

Fixes #8

This pull request updates the build environment and supported target frameworks for both the main plugin and its integration tests, focusing on modernization and simplification.

Build configuration update:

  • Changed the CI workflow to run on ubuntu-latest instead of windows-latest in .github/workflows/ci.yml, aligning the build environment with modern standards and potentially improving build speed and compatibility.

Target framework changes:

  • Removed support for net462 from the ReportPortal.ReqnrollPlugin project, now targeting only netstandard2.0 for improved cross-platform compatibility and reduced maintenance overhead. (src/ReportPortal.ReqnrollPlugin/ReportPortal.ReqnrollPlugin.csproj)
  • Updated the integration tests project to target only net10.0, dropping support for net471 and netcoreapp3.1, which streamlines testing and leverages the latest .NET features. (test/ReportPortal.ReqnrollPlugin.Tests/ReportPortal.ReqnrollPlugin.IntegrationTests.csproj)

Summary by CodeRabbit

  • Chores
    • Updated CI pipeline to run on Linux environment
    • Removed .NET Framework 4.6.2 from library compatibility; now exclusively targets .NET Standard 2.0
    • Updated test infrastructure for .NET 10.0 support

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Jan 23, 2026

Walkthrough

The pull request updates the project's build infrastructure and framework targeting: the CI workflow switches execution platform from Windows to Linux, the main library removes net462 support retaining only netstandard2.0, and the test project changes target framework from net471/netcoreapp3.1 to net10.0.

Changes

Cohort / File(s) Change Summary
CI Platform Update
.github/workflows/ci.yml
Updated CI runner platform from windows-latest to ubuntu-latest
Target Framework Consolidation
src/ReportPortal.ReqnrollPlugin/ReportPortal.ReqnrollPlugin.csproj, test/ReportPortal.ReqnrollPlugin.Tests/ReportPortal.ReqnrollPlugin.IntegrationTests.csproj
Main library: removed net462 target, retains netstandard2.0. Test project: replaced net471;netcoreapp3.1 with net10.0

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Poem

🐰 Hopping from Windows to Linux we go,
Framework targets pruned clean, old growth shed,
netstandard and ten join the show,
While older frameworks rest their heads,
A nimble shift, our pipelines fly! 🚀

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main objective of the pull request: removing support for .NET Framework targets (net462 and net471) while updating to newer frameworks.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch net4-obsolete

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In
`@test/ReportPortal.ReqnrollPlugin.Tests/ReportPortal.ReqnrollPlugin.IntegrationTests.csproj`:
- Line 4: The project file sets TargetFrameworks to "net10.0;" (note the
trailing semicolon) and CI must explicitly install the .NET 10 SDK; update the
csproj to remove the trailing semicolon so TargetFrameworks reads "net10.0" and
update your GitHub Actions workflow to add a setup-dotnet step (uses:
actions/setup-dotnet@v5 with dotnet-version: '10.0.x') before any restore/build
steps so the .NET 10 SDK is available in CI.
🧹 Nitpick comments (1)
src/ReportPortal.ReqnrollPlugin/ReportPortal.ReqnrollPlugin.csproj (1)

4-4: LGTM!

Dropping net462 and retaining netstandard2.0 is a sensible simplification. Since netstandard2.0 is compatible with .NET Framework 4.6.1+, existing .NET Framework consumers can still reference this package.

Minor nit: the trailing semicolon in netstandard2.0; is unnecessary when there's only one target framework.

Suggested fix
-    <TargetFrameworks>netstandard2.0;</TargetFrameworks>
+    <TargetFramework>netstandard2.0</TargetFramework>


<PropertyGroup>
<TargetFrameworks>net471;netcoreapp3.1;</TargetFrameworks>
<TargetFrameworks>net10.0;</TargetFrameworks>
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check for GitHub Actions workflow files
fd -e yml -e yaml .github/workflows/ 2>/dev/null | head -20

Repository: reportportal/agent-dotnet-reqnroll

Length of output: 60


🏁 Script executed:

#!/bin/bash
# Check for setup-dotnet steps in workflows
rg 'setup-dotnet|dotnet-version' .github/workflows/ -A 2 2>/dev/null | head -30

Repository: reportportal/agent-dotnet-reqnroll

Length of output: 60


🏁 Script executed:

#!/bin/bash
# Read the full project file to understand context
cat -n test/ReportPortal.ReqnrollPlugin.Tests/ReportPortal.ReqnrollPlugin.IntegrationTests.csproj 2>/dev/null || echo "File not found or path may differ"

Repository: reportportal/agent-dotnet-reqnroll

Length of output: 1235


🌐 Web query:

.NET 10 SDK availability GitHub Actions ubuntu-latest runner 2025

💡 Result:

  • ubuntu-latest in 2025: GitHub began moving ubuntu-latest to Ubuntu 24.04 on Dec 5, 2024, and the rollout completed Jan 17, 2025. So “ubuntu-latest (2025)” effectively means ubuntu-24.04. [1]
  • .NET 10 SDK “availability” on the runner in 2025: .NET 10 became a runner-image update request on Nov 11, 2025 (marked “awaiting-deployment”), which indicates it was not yet reliably present across hosted images at that time. [2] Because preinstalled SDKs can vary and change, you shouldn’t assume .NET 10 exists on ubuntu-latest during 2025. [3][4]
  • Recommended approach (works regardless of what’s preinstalled): explicitly install it in your workflow using actions/setup-dotnet. [3]

Example:

- uses: actions/setup-dotnet@v5
  with:
    dotnet-version: '10.0.x'

Sources: [1] [2] [3] [4]


Add `.NET 10 SDK setup to CI workflow.

Targeting net10.0 requires explicit SDK installation in CI—the ubuntu-latest runner does not include .NET 10 SDK by default. Add a setup-dotnet step to your workflow:

- uses: actions/setup-dotnet@v5
  with:
    dotnet-version: '10.0.x'

Also, fix the trailing semicolon in TargetFrameworks:

-    <TargetFrameworks>net10.0;</TargetFrameworks>
+    <TargetFramework>net10.0</TargetFramework>
🤖 Prompt for AI Agents
In
`@test/ReportPortal.ReqnrollPlugin.Tests/ReportPortal.ReqnrollPlugin.IntegrationTests.csproj`
at line 4, The project file sets TargetFrameworks to "net10.0;" (note the
trailing semicolon) and CI must explicitly install the .NET 10 SDK; update the
csproj to remove the trailing semicolon so TargetFrameworks reads "net10.0" and
update your GitHub Actions workflow to add a setup-dotnet step (uses:
actions/setup-dotnet@v5 with dotnet-version: '10.0.x') before any restore/build
steps so the .NET 10 SDK is available in CI.

@nvborisenko nvborisenko merged commit d874bcf into develop Jan 23, 2026
2 checks passed
@nvborisenko nvborisenko deleted the net4-obsolete branch January 23, 2026 17:54
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.

Remove .NETFramework 4.6.2 as a dependency

1 participant