diff --git a/CHANGELOG.md b/CHANGELOG.md index fca0c89..e2e8631 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -76,6 +76,18 @@ floor. - Adopted the canonical `.gitignore` and `.editorconfig`. The `.editorconfig` change scopes the private-field naming rule to instance fields — a `const` is a field, so the rule previously demanded `_nonceSize` for `private const int NonceSize`. +- Moved the build properties shared by both projects out of the individual csprojs + and into the root `Directory.Build.props`. Both projects previously restated the + same fifteen properties, which is fifteen chances for one copy to drift silently. + Each csproj now carries only what is specific to it. `Directory.Packages.props` + also gains `CentralPackageVersionOverrideEnabled=false`, so a stray inline + `Version=` on a `PackageReference` is now an `NU1008` restore failure instead of + being silently ignored in favour of the central version. Verified to be a + no-op for consumers: packing at the same commit from a clean `obj/` before and + after produces a byte-identical `.nuspec`, byte-identical `net8.0` and `net10.0` + assemblies and XML docs, and identical `README.md`, icon and package metadata — + the only difference anywhere in the package is the `.psmdcp` filename, which NuGet + regenerates on every pack. ### Added diff --git a/Directory.Build.props b/Directory.Build.props index 08993bb..d216bf1 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -1,8 +1,40 @@ - - enable - true - Stuart Meeks - Next Iteration - + + + + enable + enable + en + latest + true + true + true + snupkg + portable + true + true + true + MIT + © Stuart Meeks + true + Stuart Meeks + Next Iteration + + diff --git a/Directory.Packages.props b/Directory.Packages.props index 29313ff..a874583 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -1,6 +1,13 @@ true + + false diff --git a/src/NextIteration.SpectreConsole.Settings/NextIteration.SpectreConsole.Settings.csproj b/src/NextIteration.SpectreConsole.Settings/NextIteration.SpectreConsole.Settings.csproj index fe0e712..f3070e7 100644 --- a/src/NextIteration.SpectreConsole.Settings/NextIteration.SpectreConsole.Settings.csproj +++ b/src/NextIteration.SpectreConsole.Settings/NextIteration.SpectreConsole.Settings.csproj @@ -1,37 +1,26 @@ + net8.0;net10.0 - enable - enable - en - true - latest NextIteration.SpectreConsole.Settings 0.3.0 - Stuart Meeks Strongly-typed, JSON-persisted settings for CLI tools, with automatic or explicit persistence and ready-made Spectre.Console settings commands. true $(MSBuildThisFileDirectory)..\..\artifacts\packages true - MIT README.md https://github.com/StuartMeeks/NextIteration.SpectreConsole.Settings https://github.com/StuartMeeks/NextIteration.SpectreConsole.Settings.git git spectre;cli;settings;configuration;json icon.png - © Stuart Meeks - true - true - true - true - snupkg - portable - true diff --git a/tests/NextIteration.SpectreConsole.Settings.Tests/NextIteration.SpectreConsole.Settings.Tests.csproj b/tests/NextIteration.SpectreConsole.Settings.Tests/NextIteration.SpectreConsole.Settings.Tests.csproj index 62fd542..d3429cd 100644 --- a/tests/NextIteration.SpectreConsole.Settings.Tests/NextIteration.SpectreConsole.Settings.Tests.csproj +++ b/tests/NextIteration.SpectreConsole.Settings.Tests/NextIteration.SpectreConsole.Settings.Tests.csproj @@ -10,10 +10,11 @@ Exe - enable - enable false true + false