Use the same hash factory for an algorithm-typed using resource

Proprietary

Replace a parameterless MD5 CSP or SHA Managed/CSP constructor in a using block or declaration whose local already has that algorithm's abstract type with its Create() factory. Retain disposal boundaries and every bound ComputeHash call. Skip generic hash bases, escapes, configuration, captures, initialization, async/iterators and conditional snapshots. Opt-in modern-.NET compatibility port; no algorithm strengthening.

OpenRewrite.Recipes.CSharp.Migration.Dotnet.Net6.UseBaseTypedScopedHashFactory
mod run . --recipe=OpenRewrite.Recipes.CSharp.Migration.Dotnet.Net6.UseBaseTypedScopedHashFactory

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