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.
Release status
Section titled “Release status”Supported runtimes
Section titled “Supported runtimes”| Component | Target framework | Notes |
|---|---|---|
| Runtime libraries & generated code | net10.0 | .NET 10 (LTS) is required to consume the packages. |
| Source generators / analyzers | netstandard2.0 | Required by Roslyn; runs inside the compiler regardless of your app’s TFM. |
| SDK used to build | 10.0.201 (rollForward: latestPatch) | See global.json. |
| C# language version | 14 (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.
Database providers
Section titled “Database providers”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.
Package versioning
Section titled “Package versioning”- 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.Nsuffix. 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.
Stability expectations before v1.0
Section titled “Stability expectations before v1.0”- 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.
Upgrading
Section titled “Upgrading”There is no automated migration tooling yet. When upgrading a preview:
- Update all
Pragmatic.*packages to the same new version together. - Re-build with
dotnet buildand address any new analyzer diagnostics. - Review each touched module’s
CHANGELOG.mdfor breaking notes.
A consolidated upgrade guide will land closer to v1.0.