@joebigelow / wix-1 / commits / 5065bf99

Remove dependency on NuGet.Versioning from Core

Now that WixVersion can do comparison logic, we can remove the dependency on NuGet.Versioning from WixToolset.Core. The NuGet.Versioning assembly gets included by many build process tools so not being dependent on it in core WiX scenarios reduces the chances of assembly version collisions.

Rob Mensching committed Oct 3, 2022 at 10:06 UTC 5065bf991b76a6484d11d867b53fd2fe3e6a2fad
2 files changed +6 -6
src/wix/WixToolset.Core/ExtensibilityServices/ExtensionManager.cs
+6 -5
@@ -11,6 +11,7 @@ namespace WixToolset.Core.ExtensibilityServices
11 using WixToolset.Extensibility;
12 using WixToolset.Extensibility.Data;
13 using WixToolset.Extensibility.Services;
14 + using WixToolset.Versioning;
15
16 internal class ExtensionManager : IExtensionManager
17 {
@@ -169,7 +170,7 @@ namespace WixToolset.Core.ExtensibilityServices
170 extensionVersion = extensionReference.Substring(index + 1);
171 extensionId = extensionReference.Substring(0, index);
172
172 - if (!NuGet.Versioning.NuGetVersion.TryParse(extensionVersion, out _))
173 + if (!WixVersion.TryParse(extensionVersion, out _))
174 {
175 return false;
176 }
@@ -189,15 +190,15 @@ namespace WixToolset.Core.ExtensibilityServices
190
191 try
192 {
192 - NuGet.Versioning.NuGetVersion version = null;
193 + WixVersion highestVersion = null;
194 foreach (var versionPath in Directory.GetDirectories(basePath))
195 {
196 var versionFolder = Path.GetFileName(versionPath);
196 - if (NuGet.Versioning.NuGetVersion.TryParse(versionFolder, out var checkVersion) &&
197 - (version == null || version < checkVersion))
197 + if (WixVersion.TryParse(versionFolder, out var checkVersion) &&
198 + (highestVersion == null || highestVersion < checkVersion))
199 {
200 foundVersionFolder = versionFolder;
200 - version = checkVersion;
201 + highestVersion = checkVersion;
202 }
203 }
204 }
src/wix/WixToolset.Core/WixToolset.Core.csproj
-1
@@ -23,6 +23,5 @@
23 <ItemGroup>
24 <PackageReference Include="System.IO.FileSystem.AccessControl" />
25 <PackageReference Include="System.Text.Encoding.CodePages" />
26 - <PackageReference Include="NuGet.Versioning" />
26 </ItemGroup>
27 </Project>