You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Drop netstandard2.0 target, support net8.0+ only #161
Drop netstandard2.0 from the main library's target frameworks, retaining only net8.0;net9.0;net10.0.
Previous NuGet releases will remain available for consumers on .NET Framework or older .NET Core runtimes.
Motivation
net8.0 is the current LTS floor. .NET 6 and 7 are already end-of-life. net8.0 as the lowest target is standard practice.
Performance. This is an instrumentation library where performance matters. The netstandard2.0 code path uses a slower, lookup-table-based LeadingZeroCount instead of the hardware intrinsic (BitOperations.LeadingZeroCount).
Simplification. Removing netstandard2.0 eliminates conditional compilation and dead code paths.
Legacy users are covered. Previously published NuGet packages remain available for anyone who needs netstandard2.0 support.
Scope of changes
HdrHistogram.csproj — Remove netstandard2.0 from <TargetFrameworks>, remove the netstandard2.0 PropertyGroup condition.
Utilities/Bitwise.cs — Remove #if NET5_0_OR_GREATER guards and the entire Bitwise.Imperative class. Use BitOperations.LeadingZeroCount unconditionally.
HistogramLogReader.cs — Remove #if NETSTANDARD2_0 block (line ~243), keep the modern StartsWith(char) overload.
Activity
leecampbell-codeagent commentedon Mar 23, 2026
PR created: #164
plan(HdrHistogram#161): initial brief from issue
plan(HdrHistogram#161): review brief
plan(HdrHistogram#161): apply brief review feedback
plan(HdrHistogram#161): review brief
plan(HdrHistogram#161): create task breakdown
feat(HdrHistogram#161): implement tasks
feat(HdrHistogram#161): complete implementation
fix(HdrHistogram#161): address PR HdrHistogram#164 review feedback
chore(#161): Drop netstandard2.0 target, support net8.0+ only (#164)