Daily DevOps & .NET - Where Code Meets Culture

Opinionated .NET, Azure and DevOps engineering. Hard-won lessons from production, no tutorials.

What Actually Changed Inside the .NET 11 JIT Compiler

What Actually Changed Inside the .NET 11 JIT Compiler

.NET 11’s JIT ships real codegen wins: guarded devirtualization, wider escape analysis, a smaller delegate layout, and sharper bounds-check elimination. All of them are conditional on shapes the JIT can prove, not blanket speedups; here is what changed, why, and how to check whether your hot path qualifies.
Closed Hierarchies in C# 15: Exhaustive Switches and Versioning

Closed Hierarchies in C# 15: Exhaustive Switches and Versioning

Closed hierarchies let the compiler prove a switch over a class tree is exhaustive, no discard arm required. Genuinely useful for internal domain models, and something to think through carefully before using it in a public library API, where adding a subtype breaks every consumer’s build.
C# 15 Union Types and Closed Hierarchies in Preview

C# 15 Union Types and Closed Hierarchies in Preview

C# 15 preview ships union types with real compiler-checked exhaustiveness, no more hand-rolled sealed hierarchies for a Result type. The catch: it is a union of pre-existing types, not F#-style discriminated cases, and value-type cases box unless you write non-boxing boilerplate yourself. The quieter sibling feature, closed hierarchies, may be the safer bet for enterprise teams right now.
My Analyzer Shipped Without Checking Its Own Source

My Analyzer Shipped Without Checking Its Own Source

NetEvolve.Analyzer enforces null-check idioms and file organization on other people’s code, but had never run against its own. Fixing that surfaced 39 warnings, a silent Visual Studio MEF failure, and a follow-up NE0008 bug where DateOnly and TimeOnly got flagged blind to which target framework actually has them, the same multi-targeting blindness in a different corner of the codebase.
Cyber Resilience Act for .NET Library Authors: Read the Fine Print

Cyber Resilience Act for .NET Library Authors: Read the Fine Print

The EU Cyber Resilience Act’s headline deadline is December 2027, but the reporting clock starts more than a year earlier. Article 14 vulnerability reporting applies from September 2026. Here is the engineering map I built for my own NuGet release pipeline: what the CRA regulates, the 24/72-hour cadence, SBOM tooling for .NET, and where the open-source carve-out holds.