Skip to content

Versioning & Compatibility

Pragmatic.Design is currently a v0.8 preview. This page states what that means for adopters: which runtimes are supported, how packages are versioned, and what stability to expect before v1.0.

ComponentTarget frameworkNotes
Runtime libraries & generated codenet10.0.NET 10 (LTS) is required to consume the packages.
Source generators / analyzersnetstandard2.0Required by Roslyn; runs inside the compiler regardless of your app’s TFM.
SDK used to build10.0.201 (rollForward: latestPatch)See global.json.
C# language version14 (latest)Primary constructors, field, extension members, collection expressions.

You need the .NET 10 SDK to build and the .NET 10 runtime to run. The generators target netstandard2.0 only so they load in the compiler — this does not change your app’s runtime requirement.

The EF Core integration supports PostgreSQL, SQL Server, and SQLite. Provider-specific behavior (e.g. recursive-CTE dialect, bulk SQL) is selected at runtime from the active provider.

  • Versions are driven by MinVer from git tags (e.g. nuget-v0.1.0-preview.1), so every package in a release shares one coherent version.
  • Preview builds carry a -preview.N suffix. Do not rely on * floating version ranges during preview — pin exact versions.
  • All Pragmatic.* packages are intended to be used at the same version; mixing versions across modules is unsupported.
  • Source-breaking changes to public APIs are possible between preview releases. They will be called out in the affected module’s CHANGELOG.md.
  • Generated-code shape (DTOs, invokers, endpoints) may change; treat generated files as build output, never edit them.
  • Diagnostic IDs (PRAG####) are stable once published; see Diagnostics.

There is no automated migration tooling yet. When upgrading a preview:

  1. Update all Pragmatic.* packages to the same new version together.
  2. Re-build with dotnet build and address any new analyzer diagnostics.
  3. Review each touched module’s CHANGELOG.md for breaking notes.

A consolidated upgrade guide will land closer to v1.0.