From d5d107715b9b31903cef64ceb97df603c98d8c68 Mon Sep 17 00:00:00 2001 From: Michiel Oda Date: Mon, 9 Mar 2026 08:44:29 +0100 Subject: [PATCH] Fix invalid reference when using DevPacks inside DevPacks with different versions --- .../PackageReferenceProcessor.cs | 4 ++-- .../PackageReferenceProcessorTests.cs | 23 +++---------------- 2 files changed, 5 insertions(+), 22 deletions(-) diff --git a/Assemblers.Common/PackageReferenceProcessor.cs b/Assemblers.Common/PackageReferenceProcessor.cs index eb3c831..dce02fc 100644 --- a/Assemblers.Common/PackageReferenceProcessor.cs +++ b/Assemblers.Common/PackageReferenceProcessor.cs @@ -271,7 +271,7 @@ private async Task ProcessResolvedPackagesAsync(IEnumerable res nugetPackageAssemblies.ProcessedAssemblies.Add(assemblyName); - if (!resolvedPackage.Id.StartsWith(DevPackHelper.FilesPrefix)) + if (!resolvedPackage.Id.StartsWith(DevPackHelper.FilesPrefix) && !NuGetHelper.IsSolutionLibraryNuGetPackage(resolvedPackage.Id, out _)) { nugetPackageAssemblies.ImplicitDllImportDirectoryReferences.Add(dllImportDirectory); } @@ -456,7 +456,7 @@ private async Task ProcessRemainingPackagesAsync(HashSetC:\Skyline DataMiner\ProtocolScripts\DllImport\alphafs.new\2.3.0\lib\net47\AlphaFS.dll + C:\Skyline DataMiner\ProtocolScripts\DllImport\alphafs.new\2.3.0\lib\net47\AlphaFS.dll C:\Skyline DataMiner\ProtocolScripts\DllImport\newtonsoft.json\13.0.3\lib\net45\Newtonsoft.Json.dll C:\Skyline DataMiner\ProtocolScripts\DllImport\sharpziplib\1.3.3\lib\net45\ICSharpCode.SharpZipLib.dll C:\Skyline DataMiner\ProtocolScripts\DllImport\skyline.dataminer.cicd.filesystem\1.1.0\lib\netstandard2.0\Skyline.DataMiner.CICD.FileSystem.dll @@ -486,8 +485,6 @@ public async Task ProcessAsyncTest_SolutionLibraries2() C:\Skyline DataMiner\ProtocolScripts\DllImport\skyline.dataminer.connectorapi.skylinelockmanager\1.3.4\lib\net462\Skyline.DataMiner.ConnectorAPI.SkylineLockManager.dll C:\Skyline DataMiner\ProtocolScripts\DllImport\SolutionLibraries\Solutions.MediaOps.Live\Skyline.DataMiner.Dev.Utils.Solutions.MediaOps.Live.dll C:\Skyline DataMiner\ProtocolScripts\DllImport\SolutionLibraries\Solutions.MediaOps.Plan\Skyline.DataMiner.Dev.Utils.Solutions.MediaOps.Plan.dll - - * */ const string pathAlphaFs = "alphafs.new\\2.3.0\\lib\\net47"; @@ -522,11 +519,6 @@ public async Task ProcessAsyncTest_SolutionLibraries2() const string pathCoreInterapp = "skyline.dataminer.core.interappcalls.common\\1.1.1.1\\lib\\net462"; const string pathConnectorApiLock = "skyline.dataminer.connectorapi.skylinelockmanager\\1.3.4\\lib\\net462"; - const string pathSolLibSdmAbstractions = "skyline.dataminer.dev.utils.sdm.abstractions\\1.0.1\\lib\\net48"; - const string pathSolLibCategories = "skyline.dataminer.dev.utils.solutions.categories\\1.1.0\\lib\\net48"; - const string pathSolLibMediaOpsLive = "skyline.dataminer.dev.utils.solutions.mediaops.live\\1.0.0\\lib\\net48"; - const string pathSolLibMediaOpsPlan = "skyline.dataminer.dev.utils.solutions.mediaops.plan\\1.5.0\\lib\\net48"; - const string scriptPathSolLibSdmAbstractions = "SolutionLibraries\\SDM.Abstractions\\Skyline.DataMiner.Dev.Utils.SDM.Abstractions.dll"; const string scriptPathSolLibCategories = "SolutionLibraries\\Solutions.Categories\\Skyline.DataMiner.Dev.Utils.Solutions.Categories.dll"; const string scriptPathSolLibMediaOpsLive = "SolutionLibraries\\Solutions.MediaOps.Live\\Skyline.DataMiner.Dev.Utils.Solutions.MediaOps.Live.dll"; @@ -567,11 +559,6 @@ public async Task ProcessAsyncTest_SolutionLibraries2() pathSecureCoding, pathCoreInterapp, pathConnectorApiLock, - - pathSolLibSdmAbstractions, - pathSolLibCategories, - pathSolLibMediaOpsLive, - pathSolLibMediaOpsPlan }, DllImportNugetAssemblyReferences = { @@ -689,7 +676,7 @@ public async Task ProcessAsyncTest_SolutionLibraries2() "Skyline.DataMiner.Utils.SecureCoding.dll", "Skyline.DataMiner.Core.InterAppCalls.Common.dll", "Skyline.DataMiner.ConnectorAPI.SkylineLockManager.dll", - + "Skyline.DataMiner.Dev.Utils.SDM.Abstractions.dll", "Skyline.DataMiner.Dev.Utils.Solutions.Categories.dll", "Skyline.DataMiner.Dev.Utils.Solutions.MediaOps.Live.dll", @@ -709,8 +696,6 @@ public async Task ProcessAsyncTest_SolutionLibraries2() ["system.runtime.compilerservices.unsafe\\4.5.3\\lib\\net461\\"] = "system.runtime.compilerservices.unsafe\\4.5.3\\lib\\net461\\System.Runtime.CompilerServices.Unsafe.dll", ["skyline.dataminer.core.dataminersystem.common\\1.1.3.5\\lib\\net462\\"] = "skyline.dataminer.core.dataminersystem.common\\1.1.3.5\\lib\\net462\\Skyline.DataMiner.Core.DataMinerSystem.Common.dll", ["skyline.dataminer.core.dataminersystem.common\\1.1.3.3\\lib\\net462\\"] = "skyline.dataminer.core.dataminersystem.common\\1.1.3.3\\lib\\net462\\Skyline.DataMiner.Core.DataMinerSystem.Common.dll", - - ["skyline.dataminer.dev.utils.solutions.mediaops.live\\0.0.0\\lib\\net48\\"] = "skyline.dataminer.dev.utils.solutions.mediaops.live\\0.0.0\\lib\\net48\\Skyline.DataMiner.Dev.Utils.Solutions.MediaOps.Live.dll", }, DllImportDirectoryReferences = { @@ -719,8 +704,6 @@ public async Task ProcessAsyncTest_SolutionLibraries2() "system.runtime.compilerservices.unsafe\\4.5.3\\lib\\net461\\", "skyline.dataminer.core.dataminersystem.common\\1.1.3.5\\lib\\net462\\", "skyline.dataminer.core.dataminersystem.common\\1.1.3.3\\lib\\net462\\", - - "skyline.dataminer.dev.utils.solutions.mediaops.live\\0.0.0\\lib\\net48\\" }, DllImportFrameworkAssemblyReferences = {