[PR #1049] Drop .NET 6, .NET Standard 2.0, .NET 4.8.1, add .NET 10 support #1470

Open
opened 2026-01-29 22:20:43 +00:00 by claunia · 0 comments
Owner

Original Pull Request: https://github.com/adamhathcock/sharpcompress/pull/1049

State: closed
Merged: Yes


.NET 6 reached end-of-life November 2024. This updates target frameworks to drop net6.0, netstandard2.0, and net481, and add net10.0.

Target Frameworks

  • SharpCompress: net48;net8.0;net10.0 (removed net6.0, netstandard2.0, net481)
  • Test/Performance/Build projects: Updated to net10.0

SDK & CI

  • global.json: SDK 10.0.100
  • GitHub Actions: dotnet-version 10.0.x

.NET 10 Compatibility Fix

Rfc2898DeriveBytes constructor is obsolete in .NET 10 (SYSLIB0060). Updated to use static Pbkdf2 method:

#elif NET10_0_OR_GREATER
    var derivedKey = Rfc2898DeriveBytes.Pbkdf2(
        passwordBytes, salt, RFC2898_ITERATIONS,
        HashAlgorithmName.SHA1, derivedKeySize);
    KeyBytes = derivedKey.AsSpan(0, KeySizeInBytes).ToArray();
    IvBytes = derivedKey.AsSpan(KeySizeInBytes, KeySizeInBytes).ToArray();

Package Updates

Original prompt

This section details on the original issue you should resolve

<issue_title>TargetFrameworks</issue_title>
<issue_description>Now that dotnet 10 is out, dotnet 6 should be dropped.

Probably dropping net standard too?

Should double check supported frameworks against windows.</issue_description>

Comments on the Issue (you are @copilot in this section)


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

**Original Pull Request:** https://github.com/adamhathcock/sharpcompress/pull/1049 **State:** closed **Merged:** Yes --- .NET 6 reached end-of-life November 2024. This updates target frameworks to drop net6.0, netstandard2.0, and net481, and add net10.0. ### Target Frameworks - **SharpCompress**: `net48;net8.0;net10.0` (removed net6.0, netstandard2.0, net481) - **Test/Performance/Build projects**: Updated to net10.0 ### SDK & CI - global.json: SDK 10.0.100 - GitHub Actions: dotnet-version 10.0.x ### .NET 10 Compatibility Fix `Rfc2898DeriveBytes` constructor is obsolete in .NET 10 (SYSLIB0060). Updated to use static `Pbkdf2` method: ```csharp #elif NET10_0_OR_GREATER var derivedKey = Rfc2898DeriveBytes.Pbkdf2( passwordBytes, salt, RFC2898_ITERATIONS, HashAlgorithmName.SHA1, derivedKeySize); KeyBytes = derivedKey.AsSpan(0, KeySizeInBytes).ToArray(); IvBytes = derivedKey.AsSpan(KeySizeInBytes, KeySizeInBytes).ToArray(); ``` ### Package Updates - Microsoft.NET.ILLink.Tasks: 8.0.21 → 10.0.0 - Fixes adamhathcock/sharpcompress#1048 <!-- START COPILOT CODING AGENT SUFFIX --> <details> <summary>Original prompt</summary> > > ---- > > *This section details on the original issue you should resolve* > > <issue_title>TargetFrameworks</issue_title> > <issue_description>Now that dotnet 10 is out, dotnet 6 should be dropped. > > Probably dropping net standard too? > > Should double check supported frameworks against windows.</issue_description> > > ## Comments on the Issue (you are @copilot in this section) > > <comments> > </comments> > </details> - Fixes adamhathcock/sharpcompress#1048 <!-- START COPILOT CODING AGENT TIPS --> --- 💬 We'd love your input! Share your thoughts on Copilot coding agent in our [2 minute survey](https://gh.io/copilot-coding-agent-survey).
claunia added the pull-request label 2026-01-29 22:20:43 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/sharpcompress#1470