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