Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,26 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

---

## [0.3.0] — 2026-07-24

### Changed

- Runtime-aligned Microsoft platform dependencies now carry per-target-framework
version floors instead of a single shared floor. In a library a
`PackageReference` version is a minimum NuGet forces on every consumer
(lowest-applicable-version resolution), so the previous single `10.0.x` floor on
`Microsoft.Extensions.DependencyInjection.Abstractions` forced `net8.0` consumers
off their own LTS servicing line. The `net8.0` assembly now floors it at `8.0.2`
and the `net10.0` assembly at `10.0.10`, each on its own runtime-aligned line.
`Spectre.Console` and `Spectre.Console.Cli` version independently of the
runtime and remain single common floors.
- Updated NuGet dependencies to their latest stable versions: `Spectre.Console`
0.57.2 (and the test-only `Spectre.Console.Testing` 0.57.2) and
`Microsoft.SourceLink.GitHub` 10.0.301, plus the test-only
`Microsoft.Extensions.DependencyInjection` 10.0.10 and `Microsoft.NET.Test.Sdk`
18.8.1. `Spectre.Console.Cli` remains 0.55.0 — its latest stable, which only
requires `Spectre.Console >= 0.55.0`.

## [0.2.0] — 2026-06-20

### Added
Expand Down Expand Up @@ -72,6 +92,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- `TreatWarningsAsErrors=true`, `AnalysisLevel=latest` — zero-warning public API.
- Package icon, with the editable source vector kept under `design/icons/`.

[0.3.0]: https://github.com/StuartMeeks/NextIteration.SpectreConsole.Settings/releases/tag/v0.3.0
[0.2.0]: https://github.com/StuartMeeks/NextIteration.SpectreConsole.Settings/releases/tag/v0.2.0
[0.1.1]: https://github.com/StuartMeeks/NextIteration.SpectreConsole.Settings/releases/tag/v0.1.1
[0.1.0]: https://github.com/StuartMeeks/NextIteration.SpectreConsole.Settings/releases/tag/v0.1.0
36 changes: 26 additions & 10 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,36 @@
</PropertyGroup>

<ItemGroup>
<!-- Library -->
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="10.0.9" />
<PackageVersion Include="Spectre.Console" Version="0.56.0" />
<!-- Spectre.Console.Cli's latest stable is 0.55.0 (no 0.56.0 exists); it only
requires Spectre.Console >= 0.55.0, so the 0.56.0 above satisfies it. -->
<!-- Library — runtime-independent deps floored at a single common version.
Spectre.Console(.Cli) are pre-1.0 and version independently of the .NET
runtime, so a per-TFM floor would be meaningless (breaking changes land
between minors) — keep the version actually built/tested against. -->
<PackageVersion Include="Spectre.Console" Version="0.57.2" />
<!-- Spectre.Console.Cli's latest stable is 0.55.0 (no 0.56.0/0.57.0 exists); it
only requires Spectre.Console >= 0.55.0, so the 0.57.2 above satisfies it. -->
<PackageVersion Include="Spectre.Console.Cli" Version="0.55.0" />
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="10.0.300" />
<!-- Build-time only (PrivateAssets=All), never a consumer dependency. -->
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="10.0.301" />

<!-- Tests -->
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="10.0.9" />
<PackageVersion Include="Spectre.Console.Testing" Version="0.56.0" />
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.6.0" />
<!-- Tests (IsPackable=false) — single common floor, not shipped. -->
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="10.0.10" />
<PackageVersion Include="Spectre.Console.Testing" Version="0.57.2" />
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.8.1" />
<PackageVersion Include="xunit" Version="2.9.3" />
<PackageVersion Include="xunit.runner.visualstudio" Version="3.1.5" />
<PackageVersion Include="coverlet.collector" Version="10.0.1" />
</ItemGroup>

<!-- Runtime-aligned Microsoft platform deps: each target framework floors these
at its own major's latest stable servicing version. In a library a
PackageReference version is a minimum floor NuGet forces on every consumer
(lowest-applicable-version resolution); a single high floor would force
lower-TFM consumers (e.g. net8 LTS) off their runtime-aligned servicing
line. Per-TFM floors keep each consumer on its own line. -->
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="8.0.2" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net10.0'">
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="10.0.10" />
</ItemGroup>
</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

<PropertyGroup>
<PackageId>NextIteration.SpectreConsole.Settings</PackageId>
<Version>0.2.0</Version>
<Version>0.3.0</Version>
<Authors>Stuart Meeks</Authors>
<Description>Strongly-typed, JSON-persisted settings for CLI tools, with automatic or explicit persistence and ready-made Spectre.Console settings commands.</Description>
<GeneratePackageOnBuild Condition="'$(Configuration)' == 'Release'">true</GeneratePackageOnBuild>
Expand Down