Skip to content

Conversation

@gimlichael
Copy link
Member

@gimlichael gimlichael commented Sep 15, 2024

PR Classification

Deprecation and framework update to support .NET 9.0.

PR Summary

This PR updates the project to support .NET 9.0 and removes support for .NET 6.0, including necessary changes to CI pipeline, project files, and documentation.

  • pipelines.yml: Updated to use .NET 9.0 and removed .NET 6.0 support.
  • Directory.Build.props and project files (.csproj): Target .NET 9.0 and updated package references.
  • README.md and PackageReleaseNotes.txt: Updated for .NET 9.0 readiness and improved formatting.
  • AspNetCoreHostFixture.cs and HostFixture.cs: Updated type validation method.
  • testenvironments.json: Included new Docker image for .NET 9.0.

Summary by CodeRabbit

  • New Features

    • Upgraded support to .NET 9.0 across multiple packages.
    • Enhanced compatibility with the latest .NET ecosystem.
  • Bug Fixes

    • Updated Docker image for improved testing environment stability.
  • Documentation

    • Release notes updated to reflect new versioning and framework support.
  • Chores

    • Updated dependencies to latest versions for various packages.
    • Corrected repository URL for NuGet package source.

@gimlichael gimlichael self-assigned this Sep 15, 2024
@coderabbitai
Copy link

coderabbitai bot commented Sep 15, 2024

Walkthrough

The changes primarily involve updating various project files to support .NET 9.0, including modifications to target frameworks, package dependencies, and configuration settings. Key updates include the removal of .NET 6 support, enhancements to the validation logic in specific classes, and adjustments to the GitHub Actions workflow for building and testing. Additionally, release notes and changelogs have been updated to reflect these changes, ensuring that the documentation aligns with the new versioning and compatibility.

Changes

Files Change Summary
.github/workflows/pipelines.yml Updated framework array to include net9.0, replacing net6.0.
.nuget/Codebelt.Extensions.Xunit.App/PackageReleaseNotes.txt Version updated from 8.4.0 to 9.0.0, removed support for .NET 6, added support for .NET 9.
.nuget/Codebelt.Extensions.Xunit.Hosting.AspNetCore/PackageReleaseNotes.txt Version updated to 9.0.0, removed support for .NET 6, added support for .NET 9.
.nuget/Codebelt.Extensions.Xunit.Hosting/PackageReleaseNotes.txt Version updated to 9.0.0, removed support for .NET 6, added support for .NET 9.
.nuget/Codebelt.Extensions.Xunit/PackageReleaseNotes.txt Version updated to 9.0.0, removed support for .NET 6, added support for .NET 9.
CHANGELOG.md Added entry for version 9.0.0, focusing on compatibility with .NET 9 preview releases.
Directory.Build.props Updated target frameworks to include net9.0, corrected repository URL for NuGet package source.
README.md Minor formatting change in the contributions section header.
src/Codebelt.Extensions.Xunit.App/Codebelt.Extensions.Xunit.App.csproj Target frameworks updated to net9.0;net8.0.
src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/AspNetCoreHostFixture.cs Updated validation logic in ConfigureHost method.
src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/Codebelt.Extensions.Xunit.Hosting.AspNetCore.csproj Target frameworks updated to net9.0;net8.0, package references updated to align with new frameworks.
src/Codebelt.Extensions.Xunit.Hosting/Codebelt.Extensions.Xunit.Hosting.csproj Added new dependencies for .NET 9, removed support for .NET 6.
src/Codebelt.Extensions.Xunit.Hosting/HostFixture.cs Updated validation logic in ConfigureHost method.
src/Codebelt.Extensions.Xunit/Codebelt.Extensions.Xunit.csproj Updated Cuemon.Core package dependency to 9.0.0-preview.5.
test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests.csproj Target frameworks updated to net9.0;net8.0, package references updated to preview versions.
testenvironments.json Updated dockerImage for "Docker-Ubuntu" environment to a newer version.

Possibly related PRs

  • 🎉 migrated Cuemon.Xunit.* to Codebelt.Xunit.* #1: The changes in the .github/workflows/pipelines.yml file involve updating the framework array to include net9.0, which is directly related to the modifications made in the main PR that also updates the framework to support .NET 9.

Poem

🐰 In the garden where code does bloom,
.NET 9 arrives, dispelling the gloom.
With frameworks anew, we hop and we cheer,
Old versions fade, but progress is near!
So let’s dance in the fields of bright code,
For every new feature, our joy will explode! 🎉


Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 5d7646b and 5ca20e6.

Files selected for processing (1)
  • .github/workflows/pipelines.yml (2 hunks)
Files skipped from review as they are similar to previous changes (1)
  • .github/workflows/pipelines.yml

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share
Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    -- I pushed a fix in commit <commit_id>, please review it.
    -- Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    -- @coderabbitai generate unit testing code for this file.
    -- @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    -- @coderabbitai generate interesting stats about this repository and render them as a table.
    -- @coderabbitai read src/utils.ts and generate unit testing code.
    -- @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    -- @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@codecov
Copy link

codecov bot commented Sep 15, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 74.89%. Comparing base (f242a60) to head (5ca20e6).
Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main       #3      +/-   ##
==========================================
+ Coverage   74.84%   74.89%   +0.05%     
==========================================
  Files          26       26              
  Lines         493      494       +1     
  Branches       42       42              
==========================================
+ Hits          369      370       +1     
  Misses        120      120              
  Partials        4        4              

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

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

Outside diff range and nitpick comments (3)
testenvironments.json (1)

12-12: Update aligns with .NET 9.0 support, but exercise caution with the release candidate version.

This Docker image update is a significant step towards supporting .NET 9.0, which aligns with the overall objective of this PR. However, please note that the image currently includes a release candidate (RC) version of .NET 9.0, which may have some instability or unresolved issues.

Recommendations:

  1. Thoroughly test the application and its dependencies within this updated Docker environment to identify any potential breaking changes or compatibility issues introduced by the .NET version updates.
  2. Once .NET 9.0 is officially released, consider updating the image to use the stable version instead of the release candidate.
  3. If .NET 6.0 and .NET 8.0 are no longer needed after the .NET 9.0 update, consider removing them from the image to reduce the image size and potential attack surface.
src/Codebelt.Extensions.Xunit.Hosting/Codebelt.Extensions.Xunit.Hosting.csproj (1)

Line range hint 1-50: Update documentation and release notes.

The removal of the <ItemGroup> for .NET 6 aligns with the PR objective of deprecating support for that framework version. This change is justified given that the project now supports the latest framework version (.NET 9).

However, please ensure that the documentation and release notes are updated to reflect the deprecation of .NET 6 support, so that users are aware of this change.

CHANGELOG.md (1)

10-13: Changelog entry looks good! Consider adding a comma for better readability.

The new changelog entry for version 9.0.0 is a great addition. It clearly communicates the focus on ensuring compatibility with the final release of .NET 9.

To improve readability, consider adding a comma before "so" to connect the two independent clauses, as suggested by the static analysis hint:

-This major release is first and foremost focused on ironing out any wrinkles that have been introduced with .NET 9 preview releases so the final release is production ready together with the official launch from Microsoft.
+This major release is first and foremost focused on ironing out any wrinkles that have been introduced with .NET 9 preview releases, so the final release is production ready together with the official launch from Microsoft.
Tools
LanguageTool

[uncategorized] ~12-~12: Use a comma before ‘so’ if it connects two independent clauses (unless they are closely connected and short).
Context: ... introduced with .NET 9 preview releases so the final release is production ready t...

(COMMA_COMPOUND_SENTENCE_2)

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between f242a60 and 5d7646b.

Files selected for processing (16)
  • .github/workflows/pipelines.yml (1 hunks)
  • .nuget/Codebelt.Extensions.Xunit.App/PackageReleaseNotes.txt (1 hunks)
  • .nuget/Codebelt.Extensions.Xunit.Hosting.AspNetCore/PackageReleaseNotes.txt (1 hunks)
  • .nuget/Codebelt.Extensions.Xunit.Hosting/PackageReleaseNotes.txt (1 hunks)
  • .nuget/Codebelt.Extensions.Xunit/PackageReleaseNotes.txt (1 hunks)
  • CHANGELOG.md (1 hunks)
  • Directory.Build.props (3 hunks)
  • README.md (1 hunks)
  • src/Codebelt.Extensions.Xunit.App/Codebelt.Extensions.Xunit.App.csproj (1 hunks)
  • src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/AspNetCoreHostFixture.cs (2 hunks)
  • src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/Codebelt.Extensions.Xunit.Hosting.AspNetCore.csproj (2 hunks)
  • src/Codebelt.Extensions.Xunit.Hosting/Codebelt.Extensions.Xunit.Hosting.csproj (1 hunks)
  • src/Codebelt.Extensions.Xunit.Hosting/HostFixture.cs (2 hunks)
  • src/Codebelt.Extensions.Xunit/Codebelt.Extensions.Xunit.csproj (1 hunks)
  • test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests.csproj (1 hunks)
  • testenvironments.json (1 hunks)
Files skipped from review due to trivial changes (1)
  • README.md
Additional context used
LanguageTool
CHANGELOG.md

[uncategorized] ~12-~12: Use a comma before ‘so’ if it connects two independent clauses (unless they are closely connected and short).
Context: ... introduced with .NET 9 preview releases so the final release is production ready t...

(COMMA_COMPOUND_SENTENCE_2)

Additional comments not posted (26)
test/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests/Codebelt.Extensions.Xunit.Hosting.AspNetCore.Tests.csproj (3)

4-4: Breaking change: .NET 6.0 support has been removed.

The update to the target frameworks is a breaking change as it removes support for .NET 6.0. This is a necessary step to move the project forward and leverage the latest features and improvements in .NET 9.0.

Please ensure that:

  1. The documentation is updated to reflect this change.
  2. The breaking change is communicated to existing consumers of this project who might still be on .NET 6.0, as they will need to upgrade their framework version.

9-9: Using a preview version of the Cuemon.AspNetCore package.

The update to the Cuemon.AspNetCore package reference is necessary to align with the .NET 9.0 upgrade. However, please note that 9.0.0-preview.5 is a preview version, which might be less stable and could contain bugs or breaking changes.

Please monitor the package closely for any issues or breaking changes as it progresses towards a stable release. Be prepared to update to the stable version once it becomes available.


10-10: Using a preview version of the Cuemon.Extensions.IO package.

The update to the Cuemon.Extensions.IO package reference is necessary to align with the .NET 9.0 upgrade. However, please note that 9.0.0-preview.5 is a preview version, which might be less stable and could contain bugs or breaking changes.

Please monitor the package closely for any issues or breaking changes as it progresses towards a stable release. Be prepared to update to the stable version once it becomes available.

src/Codebelt.Extensions.Xunit/Codebelt.Extensions.Xunit.csproj (1)

13-13: Verify compatibility and stability of the pre-release package version.

The update to the Cuemon.Core package version aligns with the PR objective of supporting .NET 9.0. However, please note that 9.0.0-preview.5 is a pre-release version, which could potentially introduce instability or breaking changes.

Ensure that the updated package version is thoroughly tested for compatibility and stability within the context of this project before merging the changes to production.

src/Codebelt.Extensions.Xunit.App/Codebelt.Extensions.Xunit.App.csproj (1)

4-4: LGTM!

The target frameworks have been correctly updated to include .NET 9.0 and remove .NET 6.0, aligning with the PR objective of updating the project to support .NET 9.0 and deprecating .NET 6.0.

.nuget/Codebelt.Extensions.Xunit.App/PackageReleaseNotes.txt (2)

1-2: LGTM!

The version and availability updates align with the PR objective of updating the project to support .NET 9.0 while deprecating support for .NET 6.0.


6-6: Verify the removal of .NET 6 support.

Removing support for .NET 6 aligns with the PR objective of deprecating support for .NET 6.0. Please ensure that all references to .NET 6 have been removed from the project files and documentation.

Run the following script to verify the removal of .NET 6 support:

src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/Codebelt.Extensions.Xunit.Hosting.AspNetCore.csproj (4)

4-4: LGTM!

The change in target frameworks aligns with the PR objective of updating the project to support .NET 9.0 while deprecating support for .NET 6.0.


18-19: LGTM!

The addition of a specific package reference for Microsoft.AspNetCore.TestHost targeting .NET 9.0 aligns with the PR objective of updating package dependencies to support .NET 9.0.


22-23: LGTM!

Updating the package reference for Microsoft.AspNetCore.TestHost to version 8.0.8 for .NET 8.0 ensures compatibility while aligning with the removal of .NET 6.0 support.


27-28: LGTM!

Updating the package references for Cuemon.Extensions.DependencyInjection and Cuemon.IO to version 9.0.0-preview.5 enhances compatibility with .NET 9.0 and potentially brings new features or improvements from the referenced packages.

.nuget/Codebelt.Extensions.Xunit/PackageReleaseNotes.txt (2)

1-2: LGTM!

The version and availability changes align with the PR objectives of updating the project to support .NET 9.0 and deprecating support for .NET 6.0.


4-6: LGTM!

Updating the dependencies to the latest versions and removing support for .NET 6 (LTS) aligns with the PR objectives and is a good practice.

.nuget/Codebelt.Extensions.Xunit.Hosting/PackageReleaseNotes.txt (2)

1-2: LGTM!

The version and availability updates align with the PR objective of adding .NET 9 support and removing .NET 6 support.


4-6: LGTM!

Updating the dependencies to the latest versions and removing support for .NET 6 aligns with the PR objectives and is a good practice.

src/Codebelt.Extensions.Xunit.Hosting/Codebelt.Extensions.Xunit.Hosting.csproj (1)

13-19: LGTM!

The addition of the new <ItemGroup> for .NET 9 is a welcome change that allows the project to support the latest framework version. The package references and versions are consistent with the existing <ItemGroup> for .NET 8, indicating a smooth transition to the new framework version.

.nuget/Codebelt.Extensions.Xunit.Hosting.AspNetCore/PackageReleaseNotes.txt (2)

1-3: LGTM!

The version number and availability are consistent with the PR objectives and AI-generated summary. The formatting looks good as well.


4-6: Verify the impact of removing .NET 6 (LTS) support.

The changes to update dependencies and remove support for .NET 6 (LTS) are consistent with the PR objectives and AI-generated summary.

However, removing support for .NET 6 (LTS) is a significant change that may impact users who are still relying on it. Please consider verifying the impact of this change on the user base and providing migration guidance if necessary.

To verify the impact, you can run the following script to search for .NET 6 usage in the codebase and dependent projects:

If the script finds any usage of .NET 6, it indicates that there might be a significant impact on the user base, and migration guidance should be provided.

Verification successful

Removal of .NET 6 (LTS) support is consistent with the codebase

The verification process confirms that the removal of .NET 6 (LTS) support, as mentioned in the release notes, is consistent with the current state of the codebase. The project files show that the supported target frameworks are .NET 8 and .NET 9.

To ensure a smooth transition for users:

  • Consider adding a migration guide in the documentation for users still on .NET 6, outlining the steps to upgrade to .NET 8 or 9.
  • Update any relevant documentation to clearly state the currently supported .NET versions (8 and 9).
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash

# Search for .NET 6 usage in the codebase
echo "Searching for .NET 6 usage in the codebase..."
rg --type-add project:*.csproj --type-add props:*.props --type project -e "net6\." -e "netcoreapp6\."

# Search for .NET 6 usage in dependent projects
echo "Searching for .NET 6 usage in dependent projects..."
rg --type-add sln:*.sln --type sln -e "net6\." -e "netcoreapp6\."

Length of output: 391


Script:

#!/bin/bash

# Check for the existence of relevant file types
echo "Checking for .csproj, .props, and .sln files..."
fd -e csproj -e props -e sln

# Perform a broader search for .NET version references
echo "Searching for .NET version references..."
rg -i "targetframework.*net\d+" --type-add project:*.csproj --type-add props:*.props --type project

# Verify the functionality of the rg command
echo "Verifying rg functionality..."
rg --version
rg "Codebelt\.Extensions\.Xunit\.Hosting\.AspNetCore" --type-add txt:*.txt --type txt

Length of output: 2424

Directory.Build.props (4)

18-18: LGTM!

The changes to the TargetFrameworks property for non-test projects align with the PR objective of updating the project to support .NET 9.0 and deprecate .NET 6.0. The addition of .NET Standard 2.0 as a target framework is also a good move to improve compatibility with other .NET Standard compliant libraries.


41-41: LGTM!

The correction of the RepositoryUrl attribute to point to the correct repository URL is important for proper package resolution and source linking. Good catch!


52-52: LGTM!

The changes to the TargetFrameworks property for test projects on Linux align with the PR objective of updating the project to support .NET 9.0 and deprecate .NET 6.0. Updating the target frameworks for test projects is important to ensure that the tests are run against the supported frameworks.


56-56: LGTM!

The changes to the TargetFrameworks property for test projects on Windows align with the PR objective of updating the project to support .NET 9.0 and deprecate .NET 6.0. Updating the target frameworks for test projects is important to ensure that the tests are run against the supported frameworks. Retaining the .NET Framework 4.8 target is also a good move to ensure backward compatibility for test projects on Windows.

src/Codebelt.Extensions.Xunit.Hosting.AspNetCore/AspNetCoreHostFixture.cs (2)

5-5: LGTM!

The using directive is correctly added to import types from the Cuemon.Collections.Generic namespace.


44-44: Verify the method usage in the codebase.

The change to the validation logic in the ConfigureHost method looks good. It enhances the flexibility of the type validation by allowing for a more dynamic approach to type checking.

Ensure that all calls to the ConfigureHost method pass the correct type of hostTest parameter that is assignable from AspNetCoreHostTest<>.

Run the following script to verify the method usage:

Verification successful

ConfigureHost method usage is correct and consistent

After analyzing the codebase, I can confirm that the usage of the ConfigureHost method is correct and consistent throughout the project. The changes made to the validation logic in AspNetCoreHostFixture.cs are properly implemented, and all calls to the method pass the correct type of hostTest parameter.

Key observations:

  1. The ConfigureHost method is correctly implemented in AspNetCoreHostFixture.cs using the new validation logic with Arguments.ToArrayOf.
  2. All calls to ConfigureHost are made with this as the argument, ensuring type consistency.
  3. The type validation logic is consistent across both HostFixture and AspNetCoreHostFixture, using the same pattern but with appropriate type checks for their respective contexts.

No issues were found with the usage of the ConfigureHost method in the codebase.

Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify all calls to `ConfigureHost` method pass the correct type of `hostTest` parameter.

# Test: Search for the method usage. Expect: Only occurrences with `AspNetCoreHostTest<>` type.
rg --type cs -A 5 $'ConfigureHost'

Length of output: 13432

src/Codebelt.Extensions.Xunit.Hosting/HostFixture.cs (1)

39-39: LGTM! The updated validation logic enhances maintainability.

The change from using a hardcoded string literal to dynamically generating the expected type array using Arguments.ToArrayOf(typeof(HostTest<>)) is a positive improvement. It enhances the flexibility and maintainability of the code by avoiding hardcoded type strings.

The updated validation logic aligns with the best practices of using strongly-typed validation and avoiding hardcoded strings. It allows for easier updates in the future if the expected type needs to be modified.

Overall, the change improves the robustness and maintainability of the validation logic without introducing any breaking changes or compatibility issues.

.github/workflows/pipelines.yml (1)

29-29: LGTM!

The change to update the target framework matrix to include net9.0 and remove net6.0 aligns with the PR objective to update the project to support .NET 9.0 while deprecating support for .NET 6.0. The change is localized to the build job and does not affect other parts of the workflow.

Availability: .NET 9 and .NET 8

# ALM
- CHANGED Dependencies to latest and greatest with respect to TFMs
Copy link

Choose a reason for hiding this comment

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

Tip

Codebase Verification

Update outdated package references and remove legacy framework support.

The dependency updates are mostly correct for .NET 8 and 9, but there are some issues that need attention:

  1. Update the following xUnit-related packages to their latest stable versions:

    • Xunit.Priority (currently 1.1.6)
    • xunit.extensibility.core (currently 2.9.0)
    • xunit.assert (currently 2.9.0)
    • xunit.abstractions (currently 2.0.3)
  2. Remove or update the project using very old Microsoft.Extensions.* packages (version 2.1.1). This appears to be targeting an outdated framework (netstandard2.0) which is not compatible with .NET 8 or 9.

  3. Ensure all projects are targeting only .NET 8 and/or .NET 9, removing any references to older frameworks.

Please make these updates to ensure full compatibility with .NET 8 and 9, and to take advantage of the latest features and bug fixes in the xUnit packages.

Analysis chain

Verify the dependency updates.

Updating the dependencies to align with the new TFMs is a necessary step when transitioning to a new .NET version. Please ensure that all the dependencies have been updated to the latest versions compatible with .NET 9 and .NET 8.

Run the following script to verify the dependency updates:

Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify that all the dependencies have been updated to the latest versions compatible with .NET 9 and .NET 8.

# Test: Search for outdated dependencies in the project files. Expect: No results.
rg --type csproj $'<PackageReference Include=".+" Version="[0-8]\.' 

Length of output: 99


Script:

#!/bin/bash
# Description: Find .csproj files and search for potentially outdated package references

# Find .csproj files and search for package references with versions < 9
fd -e csproj -x rg -i '<PackageReference Include=".+" Version="[0-8]\.' {}

# Additionally, let's check the contents of the .csproj files to see the target frameworks
fd -e csproj -x cat {}

Length of output: 8704

@sonarqubecloud
Copy link

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