Retarget .NET Framework 4.6 to 4.6.1

Proprietary

Retargets a .NET Framework 4.6 project to 4.6.1. Updates <TargetFrameworkVersion> to v4.6.1, <TargetFramework> to net461, the app.config <supportedRuntime sku>, and the web.config targetFramework. Includes all earlier steps (4.0 -> 4.6). Notable retargeting changes at 4.6.1: ZipArchiveEntry.FullName uses / separators (Switch.System.IO.Compression.ZipFile.UseBackslash=true to revert); WCF transport security supports CNG-stored certificates; X509CertificateClaimSet.FindClaims matches all SAN DNS entries (Switch.System.IdentityModel.DisableMultipleDNSEntriesInSANCertificate=true). See https://learn.microsoft.com/en-us/dotnet/framework/migration-guide/retargeting/4.6.x.

OpenRewrite.Recipes.CSharp.Migration.Dotnet.NetFramework.UpgradeToNetFramework461
mod run . --recipe=OpenRewrite.Recipes.CSharp.Migration.Dotnet.NetFramework.UpgradeToNetFramework461

Install it once, then run it on every repository under the current directory. New to the Moderne CLI? Set it up.

Recipe list

It runs these recipes, in this order.

  1. Retarget .NET Framework 4.5.2 to 4.6
  2. Change .NET Framework version
  3. Change .NET target framework
  4. Change web.config target framework
  5. Ensure csproj attestation
  6. Find ZipFile/ZipArchiveEntry usage (path separator change)