From 2d5bf6f42c291b9103884c4fbb3e688e78d4f9f6 Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Fri, 16 Oct 2026 14:54:44 -0400 Subject: [PATCH] build(io): drop OpenNest.IO's reference to the engine IO only needed Engine for the best-fit cache, which now goes through IBestFitStore. Removing the reference stops every IO consumer pulling in the engine and ONNX Runtime. A guard test keeps the assembly from referencing it again; IO.Tests references Engine itself for its whole-job round-trip tests. Co-Authored-By: Claude Opus 5.5 --- OpenNest.IO.Tests/IoDependencyTests.cs | 12 ++++++++++++ OpenNest.IO.Tests/OpenNest.IO.Tests.csproj | 2 ++ OpenNest.IO/OpenNest.IO.csproj | 1 - 3 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 OpenNest.IO.Tests/IoDependencyTests.cs diff --git a/OpenNest.IO.Tests/IoDependencyTests.cs b/OpenNest.IO.Tests/IoDependencyTests.cs new file mode 100644 index 00000000..58668cc5 --- /dev/null +++ b/OpenNest.IO.Tests/IoDependencyTests.cs @@ -0,0 +1,12 @@ +namespace OpenNest.IO.Tests; + +public class IoDependencyTests +{ + [Fact] + public void IoAssembly_DoesNotReferenceTheEngine() + { + var references = typeof(NestReader).Assembly.GetReferencedAssemblies().Select(a => a.Name); + + Assert.DoesNotContain("OpenNest.Engine", references); + } +} diff --git a/OpenNest.IO.Tests/OpenNest.IO.Tests.csproj b/OpenNest.IO.Tests/OpenNest.IO.Tests.csproj index 4d96dc06..5806137b 100644 --- a/OpenNest.IO.Tests/OpenNest.IO.Tests.csproj +++ b/OpenNest.IO.Tests/OpenNest.IO.Tests.csproj @@ -12,5 +12,7 @@ + + diff --git a/OpenNest.IO/OpenNest.IO.csproj b/OpenNest.IO/OpenNest.IO.csproj index f6782ef5..e49adae9 100644 --- a/OpenNest.IO/OpenNest.IO.csproj +++ b/OpenNest.IO/OpenNest.IO.csproj @@ -9,7 +9,6 @@ -