Browse Source

Migrate to .NET SDK 3.1 LTS and update dependencies

pull/697/head
Christoph Ruegg 6 years ago
parent
commit
15298fbc5f
  1. 91
      .paket/Paket.Restore.targets
  2. 4
      .travis.yml
  3. 1
      MathNet.Numerics.sln
  4. 4
      appveyor.yml
  5. 20
      azure-pipelines.yml
  6. 24
      build.fsx
  7. 4
      build/build-framework.fsx
  8. 3
      global.json
  9. 40
      paket.dependencies
  10. 613
      paket.lock
  11. 2
      src/Benchmark/Benchmark.csproj
  12. 6
      src/Benchmark/LinearAlgebra/DenseMatrixProduct.cs
  13. 6
      src/Benchmark/LinearAlgebra/DenseVector.cs
  14. 6
      src/Benchmark/Transforms/FFT.cs
  15. 2
      src/Data/Matlab/Matlab.csproj
  16. 2
      src/Data/Text/Text.csproj
  17. 8
      src/Directory.Build.props
  18. 2
      src/FSharp.Tests/FSharp.Tests.fsproj
  19. 7
      src/FSharp/FSharp.fsproj
  20. 2
      src/Numerics.Tests/Numerics.Tests.csproj
  21. 2
      src/Numerics.Tests/Random/RandomSerializationTests.cs
  22. 5
      src/Numerics/Numerics.csproj
  23. BIN
      src/icon.png

91
.paket/Paket.Restore.targets

@ -20,18 +20,18 @@
<PaketBootstrapperStyle Condition="Exists('$(PaketToolsPath)paket.bootstrapper.proj')">proj</PaketBootstrapperStyle>
<PaketExeImage>assembly</PaketExeImage>
<PaketExeImage Condition=" '$(PaketBootstrapperStyle)' == 'proj' ">native</PaketExeImage>
<MonoPath Condition="'$(MonoPath)' == '' And Exists('/Library/Frameworks/Mono.framework/Commands/mono')">/Library/Frameworks/Mono.framework/Commands/mono</MonoPath>
<MonoPath Condition="'$(MonoPath)' == '' AND Exists('/Library/Frameworks/Mono.framework/Commands/mono')">/Library/Frameworks/Mono.framework/Commands/mono</MonoPath>
<MonoPath Condition="'$(MonoPath)' == ''">mono</MonoPath>
<!-- PaketBootStrapper -->
<PaketBootStrapperExePath Condition=" '$(PaketBootStrapperExePath)' == '' AND Exists('$(PaketRootPath)paket.bootstrapper.exe')">$(PaketRootPath)paket.bootstrapper.exe</PaketBootStrapperExePath>
<PaketBootStrapperExePath Condition=" '$(PaketBootStrapperExePath)' == '' ">$(PaketToolsPath)paket.bootstrapper.exe</PaketBootStrapperExePath>
<PaketBootStrapperExeDir Condition=" Exists('$(PaketBootStrapperExePath)') " >$([System.IO.Path]::GetDirectoryName("$(PaketBootStrapperExePath)"))\</PaketBootStrapperExeDir>
<PaketBootStrapperCommand Condition=" '$(OS)' == 'Windows_NT'">"$(PaketBootStrapperExePath)"</PaketBootStrapperCommand>
<PaketBootStrapperCommand Condition=" '$(OS)' == 'Windows_NT' ">"$(PaketBootStrapperExePath)"</PaketBootStrapperCommand>
<PaketBootStrapperCommand Condition=" '$(OS)' != 'Windows_NT' ">$(MonoPath) --runtime=v4.0.30319 "$(PaketBootStrapperExePath)"</PaketBootStrapperCommand>
<!-- Disable automagic references for F# dotnet sdk -->
<!-- Disable automagic references for F# DotNet SDK -->
<!-- This will not do anything for other project types -->
<!-- see https://github.com/fsharp/fslang-design/blob/master/tooling/FST-1002-fsharp-in-dotnet-sdk.md -->
<DisableImplicitFSharpCoreReference>true</DisableImplicitFSharpCoreReference>
@ -40,55 +40,68 @@
<!-- Disable Paket restore under NCrunch build -->
<PaketRestoreDisabled Condition="'$(NCrunch)' == '1'">True</PaketRestoreDisabled>
<!-- Disable test for CLI tool completely - overrideable via properties in projects or via environment variables -->
<PaketDisableCliTest Condition=" '$(PaketDisableCliTest)' == '' ">False</PaketDisableCliTest>
<PaketIntermediateOutputPath Condition=" '$(PaketIntermediateOutputPath)' == '' ">$(BaseIntermediateOutputPath.TrimEnd('\').TrimEnd('\/'))</PaketIntermediateOutputPath>
</PropertyGroup>
<!-- Check if paket is available as local dotnet cli tool -->
<!-- Resolve how paket should be called -->
<!-- Current priority is: local (1: repo root, 2: .paket folder) => 3: as CLI tool => as bootstrapper (4: proj Bootstrapper style, 5: BootstrapperExeDir) => 6: global path variable -->
<Target Name="SetPaketCommand" >
<!-- Call 'dotnet paket' and see if it returns without an error. Mute all the output. -->
<Exec Command="dotnet paket --version" IgnoreExitCode="true" StandardOutputImportance="low" StandardErrorImportance="low" >
<Output TaskParameter="ExitCode" PropertyName="LocalPaketToolExitCode" />
</Exec>
<!-- Test if paket is available in the standard locations. If so, that takes priority. Case 1/2 - non-windows specific -->
<PropertyGroup Condition=" '$(OS)' != 'Windows_NT' ">
<!-- no windows, try native paket as default, root => tool -->
<PaketExePath Condition=" '$(PaketExePath)' == '' AND Exists('$(PaketRootPath)paket') ">$(PaketRootPath)paket</PaketExePath>
<PaketExePath Condition=" '$(PaketExePath)' == '' AND Exists('$(PaketToolsPath)paket') ">$(PaketToolsPath)paket</PaketExePath>
</PropertyGroup>
<!-- If local paket tool is found, use that -->
<PropertyGroup Condition=" '$(LocalPaketToolExitCode)' == '0' ">
<InternalPaketCommand>dotnet paket</InternalPaketCommand>
<!-- Test if paket is available in the standard locations. If so, that takes priority. Case 2/2 - same across platforms -->
<PropertyGroup>
<!-- root => tool -->
<PaketExePath Condition=" '$(PaketExePath)' == '' AND Exists('$(PaketRootPath)paket.exe') ">$(PaketRootPath)paket.exe</PaketExePath>
<PaketExePath Condition=" '$(PaketExePath)' == '' AND Exists('$(PaketToolsPath)paket.exe') ">$(PaketToolsPath)paket.exe</PaketExePath>
</PropertyGroup>
<!-- If not, then we go through our normal steps of setting the Paket command. -->
<PropertyGroup Condition=" '$(LocalPaketToolExitCode)' != '0' ">
<!-- windows, root => tool => proj style => bootstrapper => global -->
<PaketExePath Condition=" '$(PaketExePath)' == '' AND '$(OS)' == 'Windows_NT' AND Exists('$(PaketRootPath)paket.exe') ">$(PaketRootPath)paket.exe</PaketExePath>
<PaketExePath Condition=" '$(PaketExePath)' == '' AND '$(OS)' == 'Windows_NT' AND Exists('$(PaketToolsPath)paket.exe') ">$(PaketToolsPath)paket.exe</PaketExePath>
<PaketExePath Condition=" '$(PaketExePath)' == '' AND '$(OS)' == 'Windows_NT' AND '$(PaketBootstrapperStyle)' == 'proj' ">$(PaketToolsPath)paket.exe</PaketExePath>
<PaketExePath Condition=" '$(PaketExePath)' == '' AND '$(OS)' == 'Windows_NT' AND Exists('$(PaketBootStrapperExeDir)') ">$(_PaketBootStrapperExeDir)paket.exe</PaketExePath>
<PaketExePath Condition=" '$(PaketExePath)' == '' AND '$(OS)' == 'Windows_NT' ">paket.exe</PaketExePath>
<!-- If paket hasn't be found in standard locations, test for CLI tool usage. -->
<!-- First test: Is CLI configured to be used in "dotnet-tools.json"? - can result in a false negative; only a positive outcome is reliable. -->
<PropertyGroup Condition=" '$(PaketExePath)' == '' ">
<_DotnetToolsJson Condition="Exists('$(PaketRootPath)/.config/dotnet-tools.json')">$([System.IO.File]::ReadAllText("$(PaketRootPath)/.config/dotnet-tools.json"))</_DotnetToolsJson>
<_ConfigContainsPaket Condition=" '$(_DotnetToolsJson)' != ''">$(_DotnetToolsJson.Contains('"paket"'))</_ConfigContainsPaket>
<_ConfigContainsPaket Condition=" '$(_ConfigContainsPaket)' == ''">false</_ConfigContainsPaket>
</PropertyGroup>
<!-- no windows, try native paket as default, root => tool => proj style => mono paket => bootstrpper => global -->
<PaketExePath Condition=" '$(PaketExePath)' == '' AND '$(OS)' != 'Windows_NT' AND Exists('$(PaketRootPath)paket') ">$(PaketRootPath)paket</PaketExePath>
<PaketExePath Condition=" '$(PaketExePath)' == '' AND '$(OS)' != 'Windows_NT' AND Exists('$(PaketToolsPath)paket') ">$(PaketToolsPath)paket</PaketExePath>
<PaketExePath Condition=" '$(PaketExePath)' == '' AND '$(OS)' != 'Windows_NT' AND '$(PaketBootstrapperStyle)' == 'proj' ">$(PaketToolsPath)paket</PaketExePath>
<!-- Second test: Call 'dotnet paket' and see if it returns without an error. Mute all the output. Only run if previous test failed and the test has not been disabled. -->
<!-- WARNING: This method can lead to processes hanging forever, and should be used as little as possible. See https://github.com/fsprojects/Paket/issues/3705 for details. -->
<Exec Condition=" '$(PaketExePath)' == '' AND !$(PaketDisableCliTest) AND !$(_ConfigContainsPaket)" Command="dotnet paket --version" IgnoreExitCode="true" StandardOutputImportance="low" StandardErrorImportance="low" >
<Output TaskParameter="ExitCode" PropertyName="LocalPaketToolExitCode" />
</Exec>
<!-- no windows, try mono paket -->
<PaketExePath Condition=" '$(PaketExePath)' == '' AND '$(OS)' != 'Windows_NT' AND Exists('$(PaketRootPath)paket.exe') ">$(PaketRootPath)paket.exe</PaketExePath>
<PaketExePath Condition=" '$(PaketExePath)' == '' AND '$(OS)' != 'Windows_NT' AND Exists('$(PaketToolsPath)paket.exe') ">$(PaketToolsPath)paket.exe</PaketExePath>
<!-- If paket is installed as CLI use that. Again, only if paket haven't already been found in standard locations. -->
<PropertyGroup Condition=" '$(PaketExePath)' == '' AND ($(_ConfigContainsPaket) OR '$(LocalPaketToolExitCode)' == '0') ">
<_PaketCommand>dotnet paket</_PaketCommand>
</PropertyGroup>
<!-- no windows, try bootstrapper -->
<PaketExePath Condition=" '$(PaketExePath)' == '' AND '$(OS)' != 'Windows_NT' AND Exists('$(PaketBootStrapperExeDir)') ">$(PaketBootStrapperExeDir)paket.exe</PaketExePath>
<!-- If neither local files nor CLI tool can be found, final attempt is searching for boostrapper config before falling back to global path variable. -->
<PropertyGroup Condition=" '$(PaketExePath)' == '' AND '$(_PaketCommand)' == '' ">
<!-- Test for bootstrapper setup -->
<PaketExePath Condition=" '$(PaketExePath)' == '' AND '$(PaketBootstrapperStyle)' == 'proj' ">$(PaketToolsPath)paket</PaketExePath>
<PaketExePath Condition=" '$(PaketExePath)' == '' AND Exists('$(PaketBootStrapperExeDir)') ">$(PaketBootStrapperExeDir)paket</PaketExePath>
<!-- no windows, try global native paket -->
<PaketExePath Condition=" '$(PaketExePath)' == '' AND '$(OS)' != 'Windows_NT' ">paket</PaketExePath>
<!-- If all else fails, use global path approach. -->
<PaketExePath Condition=" '$(PaketExePath)' == ''">paket</PaketExePath>
</PropertyGroup>
<!-- If not using CLI, setup correct execution command. -->
<PropertyGroup Condition=" '$(_PaketCommand)' == '' ">
<_PaketExeExtension>$([System.IO.Path]::GetExtension("$(PaketExePath)"))</_PaketExeExtension>
<InternalPaketCommand Condition=" '$(InternalPaketCommand)' == '' AND '$(_PaketExeExtension)' == '.dll' ">dotnet "$(PaketExePath)"</InternalPaketCommand>
<InternalPaketCommand Condition=" '$(InternalPaketCommand)' == '' AND '$(OS)' != 'Windows_NT' AND '$(_PaketExeExtension)' == '.exe' ">$(MonoPath) --runtime=v4.0.30319 "$(PaketExePath)"</InternalPaketCommand>
<InternalPaketCommand Condition=" '$(InternalPaketCommand)' == '' ">"$(PaketExePath)"</InternalPaketCommand>
<_PaketCommand Condition=" '$(_PaketCommand)' == '' AND '$(_PaketExeExtension)' == '.dll' ">dotnet "$(PaketExePath)"</_PaketCommand>
<_PaketCommand Condition=" '$(_PaketCommand)' == '' AND '$(OS)' != 'Windows_NT' AND '$(_PaketExeExtension)' == '.exe' ">$(MonoPath) --runtime=v4.0.30319 "$(PaketExePath)"</_PaketCommand>
<_PaketCommand Condition=" '$(_PaketCommand)' == '' ">"$(PaketExePath)"</_PaketCommand>
</PropertyGroup>
<!-- The way to get a property to be available outside the target is to use this task. -->
<CreateProperty Value="$(InternalPaketCommand)">
<CreateProperty Value="$(_PaketCommand)">
<Output TaskParameter="Value" PropertyName="PaketCommand"/>
</CreateProperty>
@ -123,7 +136,7 @@
<!-- Parse our simple 'paket.restore.cached' json ...-->
<PaketRestoreCachedSplitObject Include="$([System.Text.RegularExpressions.Regex]::Split(`$(PaketRestoreCachedContents)`, `{|}|,`))"></PaketRestoreCachedSplitObject>
<!-- Keep Key, Value ItemGroup-->
<PaketRestoreCachedKeyValue Include="@(PaketRestoreCachedSplitObject)"
<PaketRestoreCachedKeyValue Include="@(PaketRestoreCachedSplitObject)"
Condition=" $([System.Text.RegularExpressions.Regex]::Split(`%(Identity)`, `&quot;: &quot;`).Length) &gt; 1 ">
<Key>$([System.Text.RegularExpressions.Regex]::Split(`%(Identity)`, `": "`)[0].Replace(`"`, ``).Replace(` `, ``))</Key>
<Value>$([System.Text.RegularExpressions.Regex]::Split(`%(Identity)`, `": "`)[1].Replace(`"`, ``).Replace(` `, ``))</Value>
@ -156,7 +169,7 @@
<Exec Command='$(PaketBootStrapperCommand)' Condition=" '$(PaketBootstrapperStyle)' == 'classic' AND Exists('$(PaketBootStrapperExePath)') AND !(Exists('$(PaketExePath)'))" ContinueOnError="false" />
<Error Text="Stop build because of PAKET_ERROR_ON_MSBUILD_EXEC and we need a full restore (hashes don't match)" Condition=" '$(PAKET_ERROR_ON_MSBUILD_EXEC)' == 'true' AND '$(PaketRestoreRequired)' == 'true' AND '$(PaketDisableGlobalRestore)' != 'true'" />
<Exec Command='$(PaketCommand) restore' Condition=" '$(PaketRestoreRequired)' == 'true' AND '$(PaketDisableGlobalRestore)' != 'true' " ContinueOnError="false" />
<!-- Step 2 Detect project specific changes -->
<ItemGroup>
<MyTargetFrameworks Condition="'$(TargetFramework)' != '' " Include="$(TargetFramework)"></MyTargetFrameworks>

4
.travis.yml

@ -5,7 +5,7 @@ env:
sudo: required #false
dist: bionic
dotnet: 2.2.105
dotnet: 3.1.101
mono:
- latest
os:
@ -19,4 +19,4 @@ script:
- ./build.sh Test quick
global:
- DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true
- DOTNET_CLI_TELEMETRY_OPTOUT=1
- DOTNET_CLI_TELEMETRY_OPTOUT=1

1
MathNet.Numerics.sln

@ -35,7 +35,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Build", "Build", "{B54A0B40
global.json = global.json
paket.dependencies = paket.dependencies
paket.lock = paket.lock
azure-pipelines.yml = azure-pipelines.yml
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TestData", "src\TestData\TestData.csproj", "{AF3253C9-4DB5-45A0-98CF-C105FDA9DA47}"

4
appveyor.yml

@ -2,8 +2,8 @@ image: Visual Studio 2017
init:
- git config --global core.autocrlf true
install:
# Download .NET Core SDK 2.2.106 and add to PATH
- ps: $urlCurrent = "https://dotnetcli.azureedge.net/dotnet/Sdk/2.2.106/dotnet-sdk-2.2.106-win-x64.zip"
# Download .NET Core SDK 3.0.100 and add to PATH
- ps: $urlCurrent = "https://dotnetcli.azureedge.net/dotnet/Sdk/3.1.101/dotnet-sdk-3.1.101-win-x64.zip"
- ps: $env:DOTNET_INSTALL_DIR = "$pwd\.dotnetsdk"
- ps: mkdir $env:DOTNET_INSTALL_DIR -Force | Out-Null
- ps: $tempFileCurrent = [System.IO.Path]::GetTempFileName()

20
azure-pipelines.yml

@ -1,20 +0,0 @@
# Starter pipeline
# Start with a minimal pipeline that you can customize to build and deploy your code.
# Add steps that build, run tests, deploy, and more:
# https://aka.ms/yaml
trigger:
- master
pool:
vmImage: 'windows-2019'
steps:
- task: UseDotNet@2
displayName: 'Use .NET Core SDK'
inputs:
packageType: sdk
version: 2.2.106
installationPath: $(Agent.ToolsDirectory)/dotnet
- script: build.cmd test
displayName: 'Build & Test'

24
build.fsx

@ -314,23 +314,23 @@ Target "OpenBlasWinBuild" (fun _ ->
let testNumerics framework = test "src/Numerics.Tests" "Numerics.Tests.csproj" framework
Target "TestNumerics" DoNothing
Target "TestNumericsCore2.2" (fun _ -> testNumerics "netcoreapp2.2")
Target "TestNumericsCore3.1" (fun _ -> testNumerics "netcoreapp3.1")
Target "TestNumericsNET40" (fun _ -> testNumerics "net40")
Target "TestNumericsNET45" (fun _ -> testNumerics "net45")
Target "TestNumericsNET461" (fun _ -> testNumerics "net461")
Target "TestNumericsNET47" (fun _ -> testNumerics "net47")
"Build" ==> "TestNumericsCore2.2" ==> "TestNumerics"
"Build" ==> "TestNumericsCore3.1" ==> "TestNumerics"
"Build" =?> ("TestNumericsNET40", isWindows)
"Build" =?> ("TestNumericsNET45", isWindows)
"Build" =?> ("TestNumericsNET461", isWindows) ==> "TestNumerics"
"Build" =?> ("TestNumericsNET47", isWindows)
let testFsharp framework = test "src/FSharp.Tests" "FSharp.Tests.fsproj" framework
Target "TestFsharp" DoNothing
Target "TestFsharpCore2.2" (fun _ -> testFsharp "netcoreapp2.2")
Target "TestFsharpCore3.1" (fun _ -> testFsharp "netcoreapp3.1")
Target "TestFsharpNET45" (fun _ -> testFsharp "net45")
Target "TestFsharpNET461" (fun _ -> testFsharp "net461")
Target "TestFsharpNET47" (fun _ -> testFsharp "net47")
"Build" ==> "TestFsharpCore2.2" ==> "TestFsharp"
"Build" ==> "TestFsharpCore3.1" ==> "TestFsharp"
"Build" =?> ("TestFsharpNET45", isWindows)
"Build" =?> ("TestFsharpNET461", isWindows) ==> "TestFsharp"
"Build" =?> ("TestFsharpNET47", isWindows)
@ -340,30 +340,30 @@ Target "Test" DoNothing
let testMKL framework = test "src/Numerics.Tests" "Numerics.Tests.MKL.csproj" framework
Target "MklTest" DoNothing
Target "MklTestCore2.2" (fun _ -> testMKL "netcoreapp2.2")
Target "MklTestCore3.1" (fun _ -> testMKL "netcoreapp3.1")
Target "MklTestNET40" (fun _ -> testMKL "net40")
"MklWinBuild" ==> "MklTestCore2.2" ==> "MklTest"
"MklWinBuild" ==> "MklTestCore3.1" ==> "MklTest"
"MklWinBuild" =?> ("MklTestNET40", isWindows) ==> "MklTest"
let testOpenBLAS framework = test "src/Numerics.Tests" "Numerics.Tests.OpenBLAS.csproj" framework
Target "OpenBlasTest" DoNothing
Target "OpenBlasTestCore2.2" (fun _ -> testOpenBLAS "netcoreapp2.2")
Target "OpenBlasTestCore3.1" (fun _ -> testOpenBLAS "netcoreapp3.1")
Target "OpenBlasTestNET40" (fun _ -> testOpenBLAS "net40")
"OpenBlasWinBuild" ==> "OpenBlasTestCore2.2" ==> "OpenBlasTest"
"OpenBlasWinBuild" ==> "OpenBlasTestCore3.1" ==> "OpenBlasTest"
"OpenBlasWinBuild" =?> ("OpenBlasTestNET40", isWindows) ==> "OpenBlasTest"
let testCUDA framework = test "src/Numerics.Tests" "Numerics.Tests.CUDA.csproj" framework
Target "CudaTest" DoNothing
Target "CudaTestCore2.2" (fun _ -> testCUDA "netcoreapp2.2")
Target "CudaTestCore3.1" (fun _ -> testCUDA "netcoreapp3.1")
Target "CudaTestNET40" (fun _ -> testCUDA "net40")
"CudaWinBuild" ==> "CudaTestCore2.2" ==> "CudaTest"
"CudaWinBuild" ==> "CudaTestCore3.1" ==> "CudaTest"
"CudaWinBuild" =?> ("CudaTestNET40", isWindows) ==> "CudaTest"
let testData framework = test "src/Data.Tests" "Data.Tests.csproj" framework
Target "DataTest" DoNothing
Target "DataTestCore2.2" (fun _ -> testData "netcoreapp2.2")
Target "DataTestCore3.1" (fun _ -> testData "netcoreapp3.1")
Target "DataTestNET461" (fun _ -> testData "net461")
"DataBuild" ==> "DataTestCore2.2" ==> "DataTest"
"DataBuild" ==> "DataTestCore3.1" ==> "DataTest"
"DataBuild" =?> ("DataTestNET461", isWindows) ==> "DataTest"

4
build/build-framework.fsx

@ -314,8 +314,8 @@ let restoreStrong (solution:Solution) = msbuildStrong [ "Restore" ] "Release" so
let buildWeak (solution:Solution) = msbuildWeak [ (if hasBuildParam "incremental" then "Build" else "Rebuild") ] "Release" solution.SolutionFile
let buildStrong (solution:Solution) = msbuildStrong [ (if hasBuildParam "incremental" then "Build" else "Rebuild") ] "Release" solution.SolutionFile
let packWeak (solution:Solution) = dotnetWeak rootDir (sprintf "pack %s --configuration Release --no-restore --no-build" solution.SolutionFile)
let packStrong (solution:Solution) = dotnetStrong rootDir (sprintf "pack %s --configuration Release --no-restore --no-build" solution.SolutionFile)
let packWeak (solution:Solution) = dotnetWeak rootDir (sprintf "pack %s --configuration Release --no-restore" solution.SolutionFile)
let packStrong (solution:Solution) = dotnetStrong rootDir (sprintf "pack %s --configuration Release --no-restore" solution.SolutionFile)
let packProjectWeak = function
| VisualStudio p -> dotnetWeak rootDir (sprintf "pack %s --configuration Release --no-restore --no-build" p.ProjectFile)

3
global.json

@ -1,5 +1,6 @@
{
"sdk": {
"version": "2.2.106"
"version": "3.1.101",
"rollForward": "latestPatch"
}
}

40
paket.dependencies

@ -2,11 +2,12 @@ source https://api.nuget.org/v3/index.json
storage: packages
nuget FSharp.Core 4.3.3
nuget Microsoft.CSharp
// Testing
nuget NUnit ~> 3.0 framework:net461,netcoreapp2.2
nuget NUnitLite ~> 3.0 framework:net461,netcoreapp2.2
nuget FsUnit 3.0 framework:net461,netcoreapp2.2
nuget NUnit ~> 3.0 framework:net461,netcoreapp3.1
nuget NUnitLite ~> 3.0 framework:net461,netcoreapp3.1
nuget FsUnit ~> 3.0 framework:net461,netcoreapp3.1
nuget Microsoft.NET.Test.Sdk
nuget NUnit3TestAdapter
@ -14,24 +15,25 @@ nuget NUnit3TestAdapter
nuget MathNet.Numerics 4.0.0
// Benchmarks
nuget BenchmarkDotNet content:none, strategy:min, framework:net461,netcoreapp2.2
nuget BenchmarkDotNet content:none, strategy:min, framework:net461,netcoreapp3.1
nuget System.Runtime strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget System.Runtime.Numerics strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget System.Runtime.Serialization.Xml strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget System.Runtime.Serialization.Primitives strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget System.Runtime.Serialization.Formatters strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget System.Security.Cryptography.Algorithms strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget System.Runtime strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget System.Runtime.Numerics strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget System.Runtime.Serialization.Xml strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget System.Runtime.Serialization.Primitives strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget System.Runtime.Serialization.Formatters strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget System.Security.Cryptography.Algorithms strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget NETStandard.Library 2.0.3 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget Microsoft.NETCore.Platforms 2.2.0 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget Microsoft.NETCore.App 2.2.4 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget Microsoft.NETCore.DotNetHost 2.2.4 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget Microsoft.NETCore.DotNetAppHost 2.2.4 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget Microsoft.NETCore.DotNetHostPolicy 2.2.4 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget Microsoft.NETCore.DotNetHostResolver 2.2.4 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget Microsoft.NETCore.Jit 2.0.8 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget Microsoft.NETCore.Runtime.CoreCLR 2.0.8 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp2.2
nuget NETStandard.Library 2.0.3 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget Microsoft.NETCore.Platforms 3.1.0 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget Microsoft.NETCore.App 2.2.8 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget Microsoft.NETCore.DotNetHost 3.1.1 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget Microsoft.NETCore.DotNetAppHost 3.1.1 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget Microsoft.NETCore.DotNetHostPolicy 3.1.1 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget Microsoft.NETCore.DotNetHostResolver 3.1.1 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget Microsoft.NETCore.Jit 2.0.8 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget Microsoft.NETCore.Runtime.CoreCLR 2.0.8 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
nuget Microsoft.DotNet.PlatformAbstractions 3.1.1 strategy:min, framework:netstandard1.3,netstandard1.6,netstandard2.0,netcoreapp3.1
group Build
source https://api.nuget.org/v3/index.json

613
paket.lock

File diff suppressed because it is too large

2
src/Benchmark/Benchmark.csproj

@ -2,7 +2,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFrameworks>net461;netcoreapp2.2</TargetFrameworks>
<TargetFrameworks>net461;netcoreapp3.1</TargetFrameworks>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<AssemblyName>Benchmark</AssemblyName>
<RootNamespace>Benchmark</RootNamespace>

6
src/Benchmark/LinearAlgebra/DenseMatrixProduct.cs

@ -16,10 +16,10 @@ namespace Benchmark.LinearAlgebra
{
public Config()
{
Add(Job.Clr.With(Platform.X64).With(Jit.RyuJit));
Add(Job.Clr.With(Platform.X86).With(Jit.LegacyJit));
AddJob(Job.Default.WithRuntime(ClrRuntime.Net461).WithPlatform(Platform.X64).WithJit(Jit.RyuJit));
AddJob(Job.Default.WithRuntime(ClrRuntime.Net461).WithPlatform(Platform.X86).WithJit(Jit.LegacyJit));
#if !NET461
Add(Job.Core.With(Platform.X64).With(Jit.RyuJit));
AddJob(Job.Default.WithRuntime(CoreRuntime.Core31).WithPlatform(Platform.X64).WithJit(Jit.RyuJit));
#endif
}
}

6
src/Benchmark/LinearAlgebra/DenseVector.cs

@ -17,10 +17,10 @@ namespace Benchmark.LinearAlgebra
{
public Config()
{
Add(Job.Clr.With(Platform.X64).With(Jit.RyuJit));
Add(Job.Clr.With(Platform.X86).With(Jit.LegacyJit));
AddJob(Job.Default.WithRuntime(ClrRuntime.Net461).WithPlatform(Platform.X64).WithJit(Jit.RyuJit));
AddJob(Job.Default.WithRuntime(ClrRuntime.Net461).WithPlatform(Platform.X86).WithJit(Jit.LegacyJit));
#if !NET461
Add(Job.Core.With(Platform.X64).With(Jit.RyuJit));
AddJob(Job.Default.WithRuntime(CoreRuntime.Core31).With(Platform.X64).WithJit(Jit.RyuJit));
#endif
}
}

6
src/Benchmark/Transforms/FFT.cs

@ -16,10 +16,10 @@ namespace Benchmark.Transforms
{
public Config()
{
Add(Job.Clr.With(Platform.X64).With(Jit.RyuJit));
Add(Job.Clr.With(Platform.X86).With(Jit.LegacyJit));
AddJob(Job.Default.WithRuntime(ClrRuntime.Net461).WithPlatform(Platform.X64).WithJit(Jit.RyuJit));
AddJob(Job.Default.WithRuntime(ClrRuntime.Net461).WithPlatform(Platform.X86).WithJit(Jit.LegacyJit));
#if !NET461
Add(Job.Core.With(Platform.X64).With(Jit.RyuJit));
AddJob(Job.Default.WithRuntime(CoreRuntime.Core31).WithPlatform(Platform.X64).WithJit(Jit.RyuJit));
#endif
}
}

2
src/Data/Matlab/Matlab.csproj

@ -20,8 +20,6 @@ In addition to .Net 4.0 and newer now also targets .Net Standard 1.3 and 2.0.</P
<RepositoryType>git</RepositoryType>
<NeutralLanguage>en</NeutralLanguage>
<NoPackageAnalysis>false</NoPackageAnalysis>
<IncludeBuildOutput>true</IncludeBuildOutput>
<IncludeContentInPack>false</IncludeContentInPack>
<GenerateAssemblyInfo>true</GenerateAssemblyInfo>
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>
<GenerateDocumentationFile>true</GenerateDocumentationFile>

2
src/Data/Text/Text.csproj

@ -20,8 +20,6 @@ In addition to .Net 4.0 and newer now also targets .Net Standard 1.3 and 2.0.</P
<RepositoryType>git</RepositoryType>
<NeutralLanguage>en</NeutralLanguage>
<NoPackageAnalysis>false</NoPackageAnalysis>
<IncludeBuildOutput>true</IncludeBuildOutput>
<IncludeContentInPack>false</IncludeContentInPack>
<GenerateAssemblyInfo>true</GenerateAssemblyInfo>
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>
<GenerateDocumentationFile>true</GenerateDocumentationFile>

8
src/Directory.Build.props

@ -1,15 +1,14 @@
<Project>
<PropertyGroup>
<RuntimeFrameworkVersion>2.2.4</RuntimeFrameworkVersion>
<NetStandardImplicitPackageVersion>2.0.3</NetStandardImplicitPackageVersion>
<Company>Math.NET Project</Company>
<Product>Math.NET Numerics</Product>
<Authors>Christoph Ruegg, Marcus Cuda, Jurgen Van Gael</Authors>
<Copyright>Copyright Math.NET Project</Copyright>
<PackageRequireLicenseAcceptance>false</PackageRequireLicenseAcceptance>
<PackageLicenseUrl>https://numerics.mathdotnet.com/License.html</PackageLicenseUrl>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<PackageProjectUrl>https://numerics.mathdotnet.com/</PackageProjectUrl>
<PackageIconUrl>https://www.mathdotnet.com/images/MathNet128.png</PackageIconUrl>
<PackageIcon>icon.png</PackageIcon>
<RepositoryUrl>https://github.com/mathnet/mathnet-numerics</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<NeutralLanguage>en</NeutralLanguage>
@ -28,4 +27,7 @@
<PropertyGroup Condition="'$(TargetFramework)'!='netstandard1.3'">
<DefineConstants>NATIVE;$(CommonConstants)</DefineConstants>
</PropertyGroup>
<ItemGroup>
<None Include="$(MSBuildThisFileDirectory)icon.png" Pack="true" Visible="false" PackagePath="\" />
</ItemGroup>
</Project>

2
src/FSharp.Tests/FSharp.Tests.fsproj

@ -3,7 +3,7 @@
<PropertyGroup>
<OutputType>Exe</OutputType>
<GenerateProgramFile>false</GenerateProgramFile>
<TargetFrameworks>net461;netcoreapp2.2</TargetFrameworks>
<TargetFrameworks>net461;netcoreapp3.1</TargetFrameworks>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<AssemblyName>MathNet.Numerics.FSharp.Tests</AssemblyName>
<RootNamespace>MathNet.Numerics.Tests</RootNamespace>

7
src/FSharp/FSharp.fsproj

@ -19,11 +19,6 @@ Distributions: Inverse Gaussian ~Philip Gruber
Distributions: Truncated Pareto ~Philip Gruber
Optimization: Detect early completion in BFGS-B minimizer ~Tom McTiernan</PackageReleaseNotes>
<PackageTags>fsharp F# math numeric statistics probability integration interpolation regression solve fit linear algebra matrix fft</PackageTags>
<IsTool>false</IsTool>
<NeutralLanguage>en</NeutralLanguage>
<NoPackageAnalysis>false</NoPackageAnalysis>
<IncludeBuildOutput>true</IncludeBuildOutput>
<IncludeContentInPack>false</IncludeContentInPack>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
@ -51,8 +46,6 @@ Optimization: Detect early completion in BFGS-B minimizer ~Tom McTiernan</Packag
<Compile Include="FindRoots.fs" />
<Compile Include="RandomVariable.fs" />
<Compile Include="Quaternion.fs" />
<None Include="MathNet.Numerics.fsx" />
<None Include="MathNet.Numerics.IfSharp.fsx" />
</ItemGroup>
<Import Project="..\..\.paket\Paket.Restore.targets" />
</Project>

2
src/Numerics.Tests/Numerics.Tests.csproj

@ -3,7 +3,7 @@
<PropertyGroup>
<OutputType>Exe</OutputType>
<GenerateProgramFile>false</GenerateProgramFile>
<TargetFrameworks>net461;netcoreapp2.2</TargetFrameworks>
<TargetFrameworks>net461;netcoreapp3.1</TargetFrameworks>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<AssemblyName>MathNet.Numerics.Tests</AssemblyName>
<RootNamespace>MathNet.Numerics.Tests</RootNamespace>

2
src/Numerics.Tests/Random/RandomSerializationTests.cs

@ -27,7 +27,7 @@
// OTHER DEALINGS IN THE SOFTWARE.
// </copyright>
#if !NETCOREAPP2_2
#if !NETCOREAPP3_1
// Rationale: System.Random is no longer serializable in .Net Core
using System;

5
src/Numerics/Numerics.csproj

@ -19,11 +19,6 @@ Distributions: Inverse Gaussian ~Philip Gruber
Distributions: Truncated Pareto ~Philip Gruber
Optimization: Detect early completion in BFGS-B minimizer ~Tom McTiernan</PackageReleaseNotes>
<PackageTags>math numeric statistics probability integration interpolation regression solve fit linear algebra matrix fft</PackageTags>
<IsTool>false</IsTool>
<NeutralLanguage>en</NeutralLanguage>
<NoPackageAnalysis>false</NoPackageAnalysis>
<IncludeBuildOutput>true</IncludeBuildOutput>
<IncludeContentInPack>false</IncludeContentInPack>
<GenerateAssemblyInfo>true</GenerateAssemblyInfo>
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>
<GenerateDocumentationFile>true</GenerateDocumentationFile>

BIN
src/icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Loading…
Cancel
Save