Repository navigation
Expand file tree
/
Copy pathNumSharp.Tests.Interop.csproj
More file actions
49 lines (44 loc) · 2.76 KB
/
Copy pathNumSharp.Tests.Interop.csproj
File metadata and controls
49 lines (44 loc) · 2.76 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net10.0</TargetFrameworks>
<OutputType>Exe</OutputType>
<IsPackable>false</IsPackable>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<LangVersion>latest</LangVersion>
<Platforms>AnyCPU</Platforms>
<!-- Strong-naming is set repo-wide in ../../Directory.Build.props. Signed because
NumSharp.Interop.pythonnet grants it InternalsVisibleTo, which now names a PublicKey. -->
<Configurations>Debug;Release;Publish</Configurations>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Publish|AnyCPU'">
<DocumentationFile />
<Optimize>true</Optimize>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="MSTest" Version="3.8.3" />
<PackageReference Include="AwesomeAssertions" Version="9.3.0" />
<!-- Addition over NumSharp.Tests: the embedded Python engine. This pin is exactly the
library's floor (see NumSharp.Interop.pythonnet.csproj), so CI exercises the version a
default `dotnet add package` actually resolves — NuGet takes lowest-applicable, not latest.
3.0.5 drives Python 3.7-3.13; a Python 3.14 host needs 3.1.0 here (the library allows it,
and the source compiles clean against all of 3.0.0-3.1.0). Tests self-skip without numpy. -->
<PackageReference Include="pythonnet" Version="3.0.5" />
<!-- Numpy.NET compatibility proof (NumpyNetInteropTests): the Bare flavor binds to whatever
engine is already initialized (no Python.Included download) and depends on pythonnet 3.0.1,
which NuGet unifies with the pin above. NEVER also reference "Numpy" here — both packages
ship the same types in different assemblies (CS0433). -->
<PackageReference Include="Numpy.Bare" Version="3.11.1.33" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\src\NumSharp.Core\NumSharp.Core.csproj" />
<ProjectReference Include="..\..\src\NumSharp.Interop.pythonnet\NumSharp.Interop.pythonnet.csproj" />
<!-- The optional external-CBLAS/LAPACK engine. Unlike NumSharp.Tests — which SUPPRESSES the
module-load auto-install because most of its tiers assert NumSharp's own managed kernels —
this interop suite deliberately runs with OpenBLAS as the DEFAULT backend (enabled in
PythonSession.Start), so np.dot/matmul/linalg go through the bundled scipy-openblas. The
bundled runtimes/<rid>/native/ asset flows to the output via this reference, and the
host-pinned differential tests compare NumSharp's OpenBLAS results against live numpy.linalg
over the same exported bytes. -->
<ProjectReference Include="..\..\src\NumSharp.Interop.OpenBLAS\NumSharp.Interop.OpenBLAS.csproj" />
</ItemGroup>
</Project>