Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

.NET 8 SDK Upgrade #56

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open

Conversation

pedropaulovc
Copy link

@pedropaulovc pedropaulovc commented Mar 19, 2024

This PR updates repo to build with the latest .NET 8 SDK and NuGet packages. Fixes #55.

@pedropaulovc pedropaulovc changed the title .NET 8 SDK Upgrade (Fixes #55) .NET 8 SDK Upgrade Fixes #55 Mar 19, 2024
@pedropaulovc pedropaulovc changed the title .NET 8 SDK Upgrade Fixes #55 .NET 8 SDK Upgrade Mar 19, 2024
Copy link
Owner

@jviau jviau left a comment

Choose a reason for hiding this comment

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

Major version-reving Microsoft.Extensions.* dependencies to 8.0.0 is a breaking change for customers (as it can introduce package conflicts or be an environment restriction for them).

I see this is a dependency of your other PR though (at least the 6.0 packages) though. I think what will need to happen is one of two things:

  1. Multi-target all these packages, adding at least net6.0 TFM and then only in those versions do we add the new IHostApplicationBuilder APIs
    OR
  2. Update to the minimal version that includes the IHostApplicationBuilder (net6.0?) and then will also need to major version rev these packages.

<!-- Global -->
<ItemGroup>
<GlobalPackageReference Include="Nerdbank.GitVersioning" Version="3.6.133" Condition="'$(EnableGitVersioning)' != 'false'" />
<GlobalPackageReference Include="StyleCop.Analyzers" Version="1.2.0-beta.406" Condition="'$(EnableStyleCop)' != 'false'" />
<GlobalPackageReference Include="StyleCop.CSharp.Async.Rules" Version="6.1.41" Condition="'$(EnableStyleCop)' != 'false'" />
<GlobalPackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1" Condition="'$(IsPackable)' != 'false'" />
</ItemGroup>

</Project>
</Project>
Copy link
Owner

Choose a reason for hiding this comment

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

nit: add newline at end of file.

<!-- Azure -->
<ItemGroup>
<PackageVersion Include="Microsoft.Azure.DurableTask.Core" Version="2.13.0" />
<PackageVersion Include="Microsoft.Azure.DurableTask.Core" Version="2.16.1" />
Copy link
Owner

Choose a reason for hiding this comment

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

Does this need to be upgraded? I prefer to leave dependencies of a library at a minimum for what the code base needs directly. End users can then decide to pin transitive dependencies at a higher version if they need.

This lets this library capture the widest customer base possible: if a project for some reason cannot update a transitive dependency, this will not force them to.

@@ -8,7 +8,7 @@
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<EnableStyleCop>true</EnableStyleCop>
<EnableNETAnalyzers>true</EnableNETAnalyzers>
<ExtensionsPackageVersion Condition="'$(ExtensionsPackageVersion)' == ''">2.1.0</ExtensionsPackageVersion>
<ExtensionsPackageVersion Condition="'$(ExtensionsPackageVersion)' == ''">8.0.0</ExtensionsPackageVersion>
Copy link
Owner

Choose a reason for hiding this comment

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

I'd prefer not to force all users of this library onto 8.0.0 versions of Microsoft.Extensions.*. Upgrading major versions of a transitive dependency is a breaking change to users.

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.

Update to .NET 8 SDK
2 participants