Skip to content

Commit 57532ac

Browse files
committed
Native with VS2022, Tools 143, Code Analysis, Build Props
1 parent cfd79ab commit 57532ac

25 files changed

Lines changed: 405 additions & 374 deletions

.editorconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ indent_style = space
88
indent_size = 4
99
insert_final_newline = true
1010
trim_trailing_whitespace = true
11+
tab_width=4
1112

1213
[*.md]
1314
trim_trailing_whitespace = false

Directory.Build.props

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,11 @@
1515
<StrongName Condition="'$(StrongName)' == ''">False</StrongName>
1616
<PackageIdSuffix Condition="'$(PackageIdSuffix)' == ''"></PackageIdSuffix>
1717
<TitleSuffix Condition="'$(TitleSuffix)' == ''"></TitleSuffix>
18+
<GenerateDocumentationFile>true</GenerateDocumentationFile>
19+
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
20+
<Nullable>disable</Nullable>
21+
<EnableNETAnalyzers>True</EnableNETAnalyzers>
22+
<AnalysisLevel>5.0</AnalysisLevel>
1823
</PropertyGroup>
1924
<PropertyGroup Condition="'$(StrongName)'=='True'">
2025
<SignAssembly>true</SignAssembly>

MathNet.Numerics.sln

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
Microsoft Visual Studio Solution File, Format Version 12.00
3-
# Visual Studio Version 16
4-
VisualStudioVersion = 16.0.28729.10
3+
# Visual Studio Version 17
4+
VisualStudioVersion = 17.0.32112.339
55
MinimumVisualStudioVersion = 10.0.40219.1
66
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Readme", "Readme", "{C2F37492-38AE-4186-8A7F-17B0B080942C}"
77
ProjectSection(SolutionItems) = preProject
@@ -27,37 +27,36 @@ EndProject
2727
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Build", "Build", "{B54A0B40-DE22-49FB-B1C0-6E5BDA3B0B2F}"
2828
ProjectSection(SolutionItems) = preProject
2929
appveyor.yml = appveyor.yml
30-
build.fsx = build.fsx
31-
global.json = global.json
32-
paket.dependencies = paket.dependencies
33-
paket.lock = paket.lock
3430
Directory.Build.props = Directory.Build.props
31+
global.json = global.json
3532
build\MathNet.Numerics.CUDA.Win.nuspec = build\MathNet.Numerics.CUDA.Win.nuspec
36-
build\MathNet.Numerics.MKL.Linux.nuspec = build\MathNet.Numerics.MKL.Linux.nuspec
3733
build\MathNet.Numerics.MKL.Linux-x64.nuspec = build\MathNet.Numerics.MKL.Linux-x64.nuspec
3834
build\MathNet.Numerics.MKL.Linux-x86.nuspec = build\MathNet.Numerics.MKL.Linux-x86.nuspec
39-
build\MathNet.Numerics.MKL.Win.nuspec = build\MathNet.Numerics.MKL.Win.nuspec
35+
build\MathNet.Numerics.MKL.Linux.nuspec = build\MathNet.Numerics.MKL.Linux.nuspec
4036
build\MathNet.Numerics.MKL.Win-x64.nuspec = build\MathNet.Numerics.MKL.Win-x64.nuspec
4137
build\MathNet.Numerics.MKL.Win-x86.nuspec = build\MathNet.Numerics.MKL.Win-x86.nuspec
38+
build\MathNet.Numerics.MKL.Win.nuspec = build\MathNet.Numerics.MKL.Win.nuspec
4239
build\MathNet.Numerics.OpenBLAS.Win.nuspec = build\MathNet.Numerics.OpenBLAS.Win.nuspec
4340
build\NativeProvider.targets = build\NativeProvider.targets
41+
paket.dependencies = paket.dependencies
42+
paket.lock = paket.lock
4443
EndProjectSection
4544
EndProject
4645
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TestData", "src\TestData\TestData.csproj", "{AF3253C9-4DB5-45A0-98CF-C105FDA9DA47}"
4746
EndProject
4847
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Benchmark", "src\Benchmark\Benchmark.csproj", "{82444930-9FD7-41B6-B476-CCE41A0C0A0B}"
4948
EndProject
50-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Providers.MKL", "src\Providers.MKL\Providers.MKL.csproj", "{0B5FAFAA-4286-4D92-B5AB-CBA75ADDA0BB}"
49+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Providers.MKL", "src\Providers.MKL\Providers.MKL.csproj", "{0B5FAFAA-4286-4D92-B5AB-CBA75ADDA0BB}"
5150
EndProject
52-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Providers.CUDA", "src\Providers.CUDA\Providers.CUDA.csproj", "{3C0D4A87-CC89-43B6-B028-4122099D692F}"
51+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Providers.CUDA", "src\Providers.CUDA\Providers.CUDA.csproj", "{3C0D4A87-CC89-43B6-B028-4122099D692F}"
5352
EndProject
54-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Providers.OpenBLAS", "src\Providers.OpenBLAS\Providers.OpenBLAS.csproj", "{FBE18DF3-EEC3-4812-9FB4-B9EA6EAEC029}"
53+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Providers.OpenBLAS", "src\Providers.OpenBLAS\Providers.OpenBLAS.csproj", "{FBE18DF3-EEC3-4812-9FB4-B9EA6EAEC029}"
5554
EndProject
56-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Data.Matlab", "src\Data.Matlab\Data.Matlab.csproj", "{2AA6CF31-96A1-4BB5-AD2E-7840167FE4DA}"
55+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Data.Matlab", "src\Data.Matlab\Data.Matlab.csproj", "{2AA6CF31-96A1-4BB5-AD2E-7840167FE4DA}"
5756
EndProject
58-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Data.Text", "src\Data.Text\Data.Text.csproj", "{B626F8B8-51A5-4FB6-BE5A-E94B27B1A050}"
57+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Data.Text", "src\Data.Text\Data.Text.csproj", "{B626F8B8-51A5-4FB6-BE5A-E94B27B1A050}"
5958
EndProject
60-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Data.Tests", "src\Data.Tests\Data.Tests.csproj", "{1FBB8988-3F40-4FCE-BEA8-2C705888804A}"
59+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Data.Tests", "src\Data.Tests\Data.Tests.csproj", "{1FBB8988-3F40-4FCE-BEA8-2C705888804A}"
6160
EndProject
6261
Global
6362
GlobalSection(SolutionConfigurationPlatforms) = preSolution

build/Building.fs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ let inline private packOptions args (p:DotNet.PackOptions) = { p with NoRestore
1414

1515
let private normal = { MSBuild.CliArguments.Create() with NodeReuse = false; Properties = [ ("StrongName", "False") ] }
1616
let private strongNamed = { MSBuild.CliArguments.Create() with NodeReuse = false; Properties = [ ("StrongName", "True") ] }
17-
17+
1818
let restore (solution:Solution) = DotNet.restore minimal solution.SolutionFile
1919

2020
let build (solution:Solution) = DotNet.build (minimal >> buildOptions normal) solution.SolutionFile
@@ -23,17 +23,17 @@ let buildStrongNamed (solution:Solution) = DotNet.build (minimal >> buildOptions
2323
let pack (solution:Solution) = DotNet.pack (minimal >> packOptions normal) solution.SolutionFile
2424
let packStrongNamed (solution:Solution) = DotNet.pack (minimal >> packOptions strongNamed) solution.SolutionFile
2525

26-
let buildVS2019x86 config isIncremental subject =
26+
let buildVS2022x86 config isIncremental subject =
2727
MSBuild.run
28-
(fun p -> {p with ToolPath = Environment.environVar "VS2019INSTALLDIR" </> @"MSBuild\Current\Bin\MSBuild.exe"})
28+
(fun p -> {p with ToolPath = Environment.environVar "VS2022INSTALLDIR" </> @"MSBuild\Current\Bin\MSBuild.exe"})
2929
""
3030
(if isIncremental then "Build" else "Rebuild")
3131
[("Configuration", config); ("Platform","Win32")]
3232
subject
3333
|> ignore<string list>
34-
let buildVS2019x64 config isIncremental subject =
34+
let buildVS2022x64 config isIncremental subject =
3535
MSBuild.run
36-
(fun p -> {p with ToolPath = Environment.environVar "VS2019INSTALLDIR" </> @"MSBuild\Current\Bin\MSBuild.exe"})
36+
(fun p -> {p with ToolPath = Environment.environVar "VS2022INSTALLDIR" </> @"MSBuild\Current\Bin\MSBuild.exe"})
3737
""
3838
(if isIncremental then "Build" else "Rebuild")
3939
[("Configuration", config); ("Platform","x64")]

build/Testing.fs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@
33
open FSharp.Core
44
open Fake.Core
55
open Fake.DotNet
6+
//open Fake.DotNet.DotNet.Options
67

78
let test testsDir testsProj framework =
9+
//DotNet.test (withWorkingDirectory testsDir >> (fun o -> { o with Framework = Some framework; NoRestore = true; NoBuild = true; Configuration = DotNet.BuildConfiguration.Release })) testsProj
810
DotNet.exec
911
(fun c -> { c with WorkingDirectory = testsDir })
1012
(sprintf "run --project %s --configuration Release --framework %s --no-restore --no-build" testsProj framework)

build/build.fs

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@ let ``Apply Version`` _ =
180180

181181
let ``Restore`` _ =
182182
allSolutions |> List.iter restore
183-
183+
184184
let fingerprint = "490408de3618bed0a28e68dc5face46e5a3a97dd"
185185
let timeserver = "http://time.certum.pl/"
186186

@@ -196,7 +196,7 @@ let ``Build`` isStrongname isSign _ =
196196
zip numericsStrongNameZipPackage header numericsSolution.OutputZipDir numericsSolution.OutputLibStrongNameDir (fun f -> f.Contains("MathNet.Numerics.") || f.Contains("System.Threading.") || f.Contains("FSharp.Core."))
197197
packStrongNamed numericsSolution
198198
collectNuGetPackages numericsSolution
199-
199+
200200
// Normal Build (without strong name, with certificate signature)
201201
Shell.cleanDirs (!! "src/**/obj/" ++ "src/**/bin/" )
202202
restore numericsSolution
@@ -206,7 +206,7 @@ let ``Build`` isStrongname isSign _ =
206206
zip numericsZipPackage header numericsSolution.OutputZipDir numericsSolution.OutputLibDir (fun f -> f.Contains("MathNet.Numerics.") || f.Contains("System.Threading.") || f.Contains("FSharp.Core."))
207207
pack numericsSolution
208208
collectNuGetPackages numericsSolution
209-
209+
210210
// NuGet Sign (all or nothing)
211211
if isSign then signNuGet fingerprint timeserver [numericsSolution]
212212

@@ -218,40 +218,40 @@ let ``Build MKL Windows`` isIncremental isSign _ =
218218
// |> CreateProcess.withTimeout (TimeSpan.FromMinutes 10.)
219219
// |> Proc.run
220220
//if result.ExitCode <> 0 then failwith "Error while setting oneAPI environment variables."
221-
221+
222222
restore mklSolution
223-
buildVS2019x86 "Release-MKL" isIncremental !! "MathNet.Numerics.MKL.sln"
224-
buildVS2019x64 "Release-MKL" isIncremental !! "MathNet.Numerics.MKL.sln"
223+
buildVS2022x86 "Release-MKL" isIncremental !! "MathNet.Numerics.MKL.sln"
224+
buildVS2022x64 "Release-MKL" isIncremental !! "MathNet.Numerics.MKL.sln"
225225
Directory.create mklSolution.OutputZipDir
226226
zip mklWinZipPackage header mklSolution.OutputZipDir "out/MKL/Windows" (fun f -> f.Contains("MathNet.Numerics.Providers.MKL.") || f.Contains("MathNet.Numerics.MKL.") || f.Contains("libiomp5md.dll"))
227227
Directory.create mklSolution.OutputNuGetDir
228228
nugetPackManually mklSolution [ mklWinPack; mklWin32Pack; mklWin64Pack ] header
229-
229+
230230
// NuGet Sign (all or nothing)
231231
if isSign then signNuGet fingerprint timeserver [mklSolution]
232232

233233
let ``Build CUDA Windows`` isIncremental isSign _ =
234234

235235
restore cudaSolution
236-
buildVS2019x64 "Release-CUDA" isIncremental !! "MathNet.Numerics.CUDA.sln"
236+
buildVS2022x64 "Release-CUDA" isIncremental !! "MathNet.Numerics.CUDA.sln"
237237
Directory.create cudaSolution.OutputZipDir
238238
zip cudaWinZipPackage header cudaSolution.OutputZipDir "out/CUDA/Windows" (fun f -> f.Contains("MathNet.Numerics.Providers.CUDA.") || f.Contains("MathNet.Numerics.CUDA.") || f.Contains("cublas") || f.Contains("cudart") || f.Contains("cusolver"))
239239
Directory.create cudaSolution.OutputNuGetDir
240240
nugetPackManually cudaSolution [ cudaWinPack ] header
241-
241+
242242
// NuGet Sign (all or nothing)
243243
if isSign then signNuGet fingerprint timeserver [cudaSolution]
244244

245245
let ``Build OpenBLAS Windows`` isIncremental isSign _ =
246-
246+
247247
restore openBlasSolution
248-
buildVS2019x86 "Release-OpenBLAS" isIncremental !! "MathNet.Numerics.OpenBLAS.sln"
249-
buildVS2019x64 "Release-OpenBLAS" isIncremental !! "MathNet.Numerics.OpenBLAS.sln"
248+
buildVS2022x86 "Release-OpenBLAS" isIncremental !! "MathNet.Numerics.OpenBLAS.sln"
249+
buildVS2022x64 "Release-OpenBLAS" isIncremental !! "MathNet.Numerics.OpenBLAS.sln"
250250
Directory.create openBlasSolution.OutputZipDir
251251
zip openBlasWinZipPackage header openBlasSolution.OutputZipDir "out/OpenBLAS/Windows" (fun f -> f.Contains("MathNet.Numerics.Providers.OpenBLAS.") || f.Contains("MathNet.Numerics.OpenBLAS.") || f.Contains("libgcc") || f.Contains("libgfortran") || f.Contains("libopenblas") || f.Contains("libquadmath"))
252252
Directory.create openBlasSolution.OutputNuGetDir
253253
nugetPackManually openBlasSolution [ openBlasWinPack ] header
254-
254+
255255
// NuGet Sign (all or nothing)
256256
if isSign then signNuGet fingerprint timeserver [openBlasSolution]
257257

@@ -320,7 +320,7 @@ let initTargets strongname sign incremental =
320320
"Start" =?> ("Clean", not incremental) ==> "Restore" |> ignore
321321
Target.create "Prepare" ignore
322322
"Start" =?> ("Clean", not incremental) ==> "ApplyVersion" ==> "Prepare" |> ignore
323-
323+
324324
// BUILD, SIGN, COLLECT
325325
Target.create "Build" (``Build`` strongname sign)
326326
"Prepare" ==> "Build" |> ignore
@@ -330,7 +330,7 @@ let initTargets strongname sign incremental =
330330
"Prepare" ==> "CudaWinBuild" |> ignore
331331
Target.create "OpenBlasWinBuild" (``Build OpenBLAS Windows`` incremental sign)
332332
"Prepare" ==> "OpenBlasWinBuild" |> ignore
333-
333+
334334
// TEST
335335
Target.create "TestNumerics" ignore
336336
Target.create "TestNumericsNET50" (``Test Numerics`` "net5.0")
@@ -419,13 +419,13 @@ let initTargets strongname sign incremental =
419419

420420
Target.create "All" ignore
421421
"All" <== [ "Build"; "Docs"; "Api"; "Test" ]
422-
422+
423423
Target.create "MklWinAll" ignore
424424
"MklWinAll" <== [ "MklWinBuild"; "MklTest" ]
425-
425+
426426
Target.create "CudaWinAll" ignore
427427
"CudaWinAll" <== [ "CudaWinBuild"; "CudaTest" ]
428-
428+
429429
Target.create "OpenBlasWinAll" ignore
430430
"OpenBlasWinAll" <== [ "OpenBlasWinBuild"; "OpenBlasTest" ]
431431

@@ -460,7 +460,7 @@ let main argv =
460460
args |> Seq.contains "--sign" && Environment.isWindows,
461461
args |> Seq.contains "--incremental"
462462
| None -> false, false, false
463-
463+
464464
if isStrongname then Trace.log " Option: Strongnamed"
465465
if isSign then Trace.log " Option: Signed"
466466
if isIncremental then Trace.log " Option: Incremental"

src/Benchmark/Benchmark.csproj

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,29 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project Sdk="Microsoft.NET.Sdk">
3-
<PropertyGroup>
4-
<OutputType>Exe</OutputType>
5-
<TargetFrameworks>net5.0;net48</TargetFrameworks>
6-
<AssemblyName>Benchmark</AssemblyName>
7-
<RootNamespace>Benchmark</RootNamespace>
8-
<IsPackable>false</IsPackable>
9-
<VersionPrefix>5.0.0</VersionPrefix>
10-
<VersionSuffix>alpha02</VersionSuffix>
11-
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
12-
</PropertyGroup>
13-
<ItemGroup>
14-
<Compile Remove="BenchmarkDotNet.Artifacts\**" />
15-
<EmbeddedResource Remove="BenchmarkDotNet.Artifacts\**" />
16-
<None Remove="BenchmarkDotNet.Artifacts\**" />
17-
</ItemGroup>
18-
<ItemGroup>
19-
<ProjectReference Include="..\Numerics\Numerics.csproj" />
20-
<ProjectReference Include="..\Providers.MKL\Providers.MKL.csproj" />
21-
</ItemGroup>
22-
<ItemGroup>
23-
<PackageReference Include="BenchmarkDotNet" Version="0.13.1" />
24-
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.2">
25-
<PrivateAssets>all</PrivateAssets>
26-
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
27-
</PackageReference>
28-
</ItemGroup>
3+
<PropertyGroup>
4+
<OutputType>Exe</OutputType>
5+
<TargetFrameworks>net5.0;net48</TargetFrameworks>
6+
<AssemblyName>Benchmark</AssemblyName>
7+
<RootNamespace>Benchmark</RootNamespace>
8+
<IsPackable>false</IsPackable>
9+
<VersionPrefix>5.0.0</VersionPrefix>
10+
<VersionSuffix>alpha02</VersionSuffix>
11+
<GenerateDocumentationFile>false</GenerateDocumentationFile>
12+
</PropertyGroup>
13+
<ItemGroup>
14+
<Compile Remove="BenchmarkDotNet.Artifacts\**" />
15+
<EmbeddedResource Remove="BenchmarkDotNet.Artifacts\**" />
16+
<None Remove="BenchmarkDotNet.Artifacts\**" />
17+
</ItemGroup>
18+
<ItemGroup>
19+
<ProjectReference Include="..\Numerics\Numerics.csproj" />
20+
<ProjectReference Include="..\Providers.MKL\Providers.MKL.csproj" />
21+
</ItemGroup>
22+
<ItemGroup>
23+
<PackageReference Include="BenchmarkDotNet" Version="0.13.1" />
24+
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.2">
25+
<PrivateAssets>all</PrivateAssets>
26+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
27+
</PackageReference>
28+
</ItemGroup>
2929
</Project>

src/Data.Matlab/Data.Matlab.csproj

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,17 @@ Control.Describe now includes CPU architecture and family identifier if know</Pa
4242
<NeutralLanguage>en</NeutralLanguage>
4343
<NoPackageAnalysis>false</NoPackageAnalysis>
4444
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>
45-
<GenerateDocumentationFile>true</GenerateDocumentationFile>
4645
<EnableDefaultCompileItems>true</EnableDefaultCompileItems>
4746
<NoWarn>1701;1702;1705;1591;1573</NoWarn>
48-
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
4947
</PropertyGroup>
5048
<ItemGroup>
5149
<ProjectReference Include="..\Numerics\Numerics.csproj" />
5250
</ItemGroup>
5351
<ItemGroup>
52+
<PackageReference Include="Microsoft.CodeAnalysis.NetAnalyzers" Version="6.0.0">
53+
<PrivateAssets>all</PrivateAssets>
54+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
55+
</PackageReference>
5456
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.2">
5557
<PrivateAssets>all</PrivateAssets>
5658
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>

src/Data.Tests/Data.Tests.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
<IsPackable>false</IsPackable>
1010
<VersionPrefix>5.0.0</VersionPrefix>
1111
<VersionSuffix>alpha02</VersionSuffix>
12-
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
12+
<GenerateDocumentationFile>false</GenerateDocumentationFile>
1313
</PropertyGroup>
1414
<ItemGroup>
1515
<ProjectReference Include="..\Numerics\Numerics.csproj" />

src/Data.Text/Data.Text.csproj

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,17 @@ Control.Describe now includes CPU architecture and family identifier if know</Pa
4242
<NeutralLanguage>en</NeutralLanguage>
4343
<NoPackageAnalysis>false</NoPackageAnalysis>
4444
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>
45-
<GenerateDocumentationFile>true</GenerateDocumentationFile>
4645
<EnableDefaultCompileItems>true</EnableDefaultCompileItems>
4746
<NoWarn>1701;1702;1705;1591;1573</NoWarn>
48-
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
4947
</PropertyGroup>
5048
<ItemGroup>
5149
<ProjectReference Include="..\Numerics\Numerics.csproj" />
5250
</ItemGroup>
5351
<ItemGroup>
52+
<PackageReference Include="Microsoft.CodeAnalysis.NetAnalyzers" Version="6.0.0">
53+
<PrivateAssets>all</PrivateAssets>
54+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
55+
</PackageReference>
5456
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.2">
5557
<PrivateAssets>all</PrivateAssets>
5658
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>

0 commit comments

Comments
 (0)