Browse Source

Release v4.8.1

uap-experimental v4.8.1
Christoph Ruegg 7 years ago
parent
commit
83ab6ebd97
  1. 3
      RELEASENOTES.md
  2. 36
      build.fsx
  3. 49
      build/build-framework.fsx
  4. 6
      src/FSharp.Tests/AssemblyInfo.fs
  5. 6
      src/FSharp/AssemblyInfo.fs
  6. 8
      src/FSharp/FSharp.fsproj
  7. 6
      src/Numerics.Tests/Properties/AssemblyInfo.cs
  8. 8
      src/Numerics/Numerics.csproj
  9. 4
      src/TestData/Properties/AssemblyInfo.cs

3
RELEASENOTES.md

@ -1,3 +1,6 @@
### 4.8.1 - 2019-06-12
* Packaging fix - signed edition was not properly strong named.
### 4.8.0 - 2019-06-02 ### 4.8.0 - 2019-06-02
* Optimization: Levenberg-Marquardt, Trust-Region Dogleg *~Jong Hyun Kim* * Optimization: Levenberg-Marquardt, Trust-Region Dogleg *~Jong Hyun Kim*
* Optimization: Nelder-Mead-Simplex: Improve convergence for symmetrical functions *~Erik Ovegard* * Optimization: Nelder-Mead-Simplex: Improve convergence for symmetrical functions *~Erik Ovegard*

36
build.fsx

@ -177,7 +177,7 @@ Target "ApplyVersion" (fun _ ->
patchVersionInResource "src/NativeProviders/CUDA/resource.rc" cudaRelease patchVersionInResource "src/NativeProviders/CUDA/resource.rc" cudaRelease
patchVersionInResource "src/NativeProviders/OpenBLAS/resource.rc" openBlasRelease) patchVersionInResource "src/NativeProviders/OpenBLAS/resource.rc" openBlasRelease)
Target "Restore" (fun _ -> allSolutions |> List.iter restore) Target "Restore" (fun _ -> allSolutions |> List.iter restoreWeak)
"Start" "Start"
=?> ("Clean", not (hasBuildParam "incremental")) =?> ("Clean", not (hasBuildParam "incremental"))
==> "Restore" ==> "Restore"
@ -201,24 +201,24 @@ Target "Build" (fun _ ->
// Strong Name Build (with strong name, without certificate signature) // Strong Name Build (with strong name, without certificate signature)
if hasBuildParam "strongname" then if hasBuildParam "strongname" then
CleanDirs (!! "src/**/obj/" ++ "src/**/bin/" ) CleanDirs (!! "src/**/obj/" ++ "src/**/bin/" )
restoreSN numericsSolution restoreStrong numericsSolution
buildSN numericsSolution buildStrong numericsSolution
if isWindows && hasBuildParam "sign" then sign fingerprint timeserver numericsSolution if isWindows && hasBuildParam "sign" then sign fingerprint timeserver numericsSolution
collectBinariesSN numericsSolution collectBinariesSN numericsSolution
zip numericsStrongNameZipPackage numericsSolution.OutputZipDir numericsSolution.OutputLibStrongNameDir (fun f -> f.Contains("MathNet.Numerics.") || f.Contains("System.Threading.") || f.Contains("FSharp.Core.")) zip numericsStrongNameZipPackage numericsSolution.OutputZipDir numericsSolution.OutputLibStrongNameDir (fun f -> f.Contains("MathNet.Numerics.") || f.Contains("System.Threading.") || f.Contains("FSharp.Core."))
if isWindows then if isWindows then
packSN numericsSolution packStrong numericsSolution
collectNuGetPackages numericsSolution collectNuGetPackages numericsSolution
// Normal Build (without strong name, with certificate signature) // Normal Build (without strong name, with certificate signature)
CleanDirs (!! "src/**/obj/" ++ "src/**/bin/" ) CleanDirs (!! "src/**/obj/" ++ "src/**/bin/" )
restore numericsSolution restoreWeak numericsSolution
build numericsSolution buildWeak numericsSolution
if isWindows && hasBuildParam "sign" then sign fingerprint timeserver numericsSolution if isWindows && hasBuildParam "sign" then sign fingerprint timeserver numericsSolution
collectBinaries numericsSolution collectBinaries numericsSolution
zip numericsZipPackage numericsSolution.OutputZipDir numericsSolution.OutputLibDir (fun f -> f.Contains("MathNet.Numerics.") || f.Contains("System.Threading.") || f.Contains("FSharp.Core.")) zip numericsZipPackage numericsSolution.OutputZipDir numericsSolution.OutputLibDir (fun f -> f.Contains("MathNet.Numerics.") || f.Contains("System.Threading.") || f.Contains("FSharp.Core."))
if isWindows then if isWindows then
pack numericsSolution packWeak numericsSolution
collectNuGetPackages numericsSolution collectNuGetPackages numericsSolution
// NuGet Sign (all or nothing) // NuGet Sign (all or nothing)
@ -232,26 +232,26 @@ Target "DataBuild" (fun _ ->
// Strong Name Build (with strong name, without certificate signature) // Strong Name Build (with strong name, without certificate signature)
if hasBuildParam "strongname" then if hasBuildParam "strongname" then
CleanDirs (!! "src/**/obj/" ++ "src/**/bin/" ) CleanDirs (!! "src/**/obj/" ++ "src/**/bin/" )
restoreSN dataSolution restoreStrong dataSolution
buildSN dataSolution buildStrong dataSolution
if isWindows && hasBuildParam "sign" then sign fingerprint timeserver dataSolution if isWindows && hasBuildParam "sign" then sign fingerprint timeserver dataSolution
collectBinariesSN dataSolution collectBinariesSN dataSolution
zip dataStrongNameZipPackage dataSolution.OutputZipDir dataSolution.OutputLibStrongNameDir (fun f -> f.Contains("MathNet.Numerics.Data.")) zip dataStrongNameZipPackage dataSolution.OutputZipDir dataSolution.OutputLibStrongNameDir (fun f -> f.Contains("MathNet.Numerics.Data."))
if isWindows then if isWindows then
packProjectSN dataTextProject packProjectStrong dataTextProject
packProjectSN dataMatlabProject packProjectStrong dataMatlabProject
collectNuGetPackages dataSolution collectNuGetPackages dataSolution
// Normal Build (without strong name, with certificate signature) // Normal Build (without strong name, with certificate signature)
CleanDirs (!! "src/**/obj/" ++ "src/**/bin/" ) CleanDirs (!! "src/**/obj/" ++ "src/**/bin/" )
restore dataSolution restoreWeak dataSolution
build dataSolution buildWeak dataSolution
if isWindows && hasBuildParam "sign" then sign fingerprint timeserver dataSolution if isWindows && hasBuildParam "sign" then sign fingerprint timeserver dataSolution
collectBinaries dataSolution collectBinaries dataSolution
zip dataZipPackage dataSolution.OutputZipDir dataSolution.OutputLibDir (fun f -> f.Contains("MathNet.Numerics.Data.")) zip dataZipPackage dataSolution.OutputZipDir dataSolution.OutputLibDir (fun f -> f.Contains("MathNet.Numerics.Data."))
if isWindows then if isWindows then
packProject dataTextProject packProjectWeak dataTextProject
packProject dataMatlabProject packProjectWeak dataMatlabProject
collectNuGetPackages dataSolution collectNuGetPackages dataSolution
// NuGet Sign (all or nothing) // NuGet Sign (all or nothing)
@ -262,7 +262,7 @@ Target "DataBuild" (fun _ ->
Target "MklWinBuild" (fun _ -> Target "MklWinBuild" (fun _ ->
restore mklSolution restoreWeak mklSolution
buildConfig32 "Release-MKL" !! "MathNet.Numerics.MKL.sln" buildConfig32 "Release-MKL" !! "MathNet.Numerics.MKL.sln"
buildConfig64 "Release-MKL" !! "MathNet.Numerics.MKL.sln" buildConfig64 "Release-MKL" !! "MathNet.Numerics.MKL.sln"
CreateDir mklSolution.OutputZipDir CreateDir mklSolution.OutputZipDir
@ -278,7 +278,7 @@ Target "MklWinBuild" (fun _ ->
Target "CudaWinBuild" (fun _ -> Target "CudaWinBuild" (fun _ ->
restore cudaSolution restoreWeak cudaSolution
buildConfig64 "Release-CUDA" !! "MathNet.Numerics.CUDA.sln" buildConfig64 "Release-CUDA" !! "MathNet.Numerics.CUDA.sln"
CreateDir cudaSolution.OutputZipDir CreateDir cudaSolution.OutputZipDir
zip cudaWinZipPackage cudaSolution.OutputZipDir "out/CUDA/Windows" (fun f -> f.Contains("MathNet.Numerics.CUDA.") || f.Contains("cublas") || f.Contains("cudart") || f.Contains("cusolver")) zip cudaWinZipPackage cudaSolution.OutputZipDir "out/CUDA/Windows" (fun f -> f.Contains("MathNet.Numerics.CUDA.") || f.Contains("cublas") || f.Contains("cudart") || f.Contains("cusolver"))
@ -293,7 +293,7 @@ Target "CudaWinBuild" (fun _ ->
Target "OpenBlasWinBuild" (fun _ -> Target "OpenBlasWinBuild" (fun _ ->
restore openBlasSolution restoreWeak openBlasSolution
buildConfig32 "Release-OpenBLAS" !! "MathNet.Numerics.OpenBLAS.sln" buildConfig32 "Release-OpenBLAS" !! "MathNet.Numerics.OpenBLAS.sln"
buildConfig64 "Release-OpenBLAS" !! "MathNet.Numerics.OpenBLAS.sln" buildConfig64 "Release-OpenBLAS" !! "MathNet.Numerics.OpenBLAS.sln"
CreateDir openBlasSolution.OutputZipDir CreateDir openBlasSolution.OutputZipDir

49
build/build-framework.fsx

@ -32,6 +32,21 @@ trace rootDir
// -------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------
let msbuild targets configuration project = let msbuild targets configuration project =
let properties =
[
yield "Configuration", configuration
]
MSBuildHelper.build (fun p ->
{ p with
NoLogo = true
NodeReuse = false
Targets = targets
Properties = properties
RestorePackagesFlag = false
Verbosity = Some MSBuildVerbosity.Minimal
}) project
let msbuildWeak targets configuration project =
let properties = let properties =
[ [
yield "Configuration", configuration yield "Configuration", configuration
@ -47,7 +62,7 @@ let msbuild targets configuration project =
Verbosity = Some MSBuildVerbosity.Minimal Verbosity = Some MSBuildVerbosity.Minimal
}) project }) project
let msbuildSN targets configuration project = let msbuildStrong targets configuration project =
let properties = let properties =
[ [
yield "Configuration", configuration yield "Configuration", configuration
@ -72,7 +87,17 @@ let dotnet workingDir command =
(fun c -> { c with WorkingDir = workingDir}) (fun c -> { c with WorkingDir = workingDir})
(command + suffix) (command + suffix)
let dotnetSN workingDir command = let dotnetWeak workingDir command =
let properties =
[
yield "StrongName", "False"
]
let suffix = properties |> List.map (fun (name, value) -> sprintf """ /p:%s="%s" """ name value) |> String.concat ""
DotNetCli.RunCommand
(fun c -> { c with WorkingDir = workingDir})
(command + suffix)
let dotnetStrong workingDir command =
let properties = let properties =
[ [
yield "StrongName", "True" yield "StrongName", "True"
@ -283,20 +308,20 @@ let patchVersionInProjectFile (project:Project) =
let clean (solution:Solution) = msbuild [ "Clean" ] "Release" solution.SolutionFile let clean (solution:Solution) = msbuild [ "Clean" ] "Release" solution.SolutionFile
let restore (solution:Solution) = msbuild [ "Restore" ] "Release" solution.SolutionFile let restoreWeak (solution:Solution) = msbuildWeak [ "Restore" ] "Release" solution.SolutionFile
let restoreSN (solution:Solution) = msbuildSN [ "Restore" ] "Release" solution.SolutionFile let restoreStrong (solution:Solution) = msbuildStrong [ "Restore" ] "Release" solution.SolutionFile
let build (solution:Solution) = msbuild [ (if hasBuildParam "incremental" then "Build" else "Rebuild") ] "Release" solution.SolutionFile let buildWeak (solution:Solution) = msbuildWeak [ (if hasBuildParam "incremental" then "Build" else "Rebuild") ] "Release" solution.SolutionFile
let buildSN (solution:Solution) = msbuildSN [ (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 pack (solution:Solution) = dotnet 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 --no-build" solution.SolutionFile)
let packSN (solution:Solution) = dotnetSN 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 packProject = function let packProjectWeak = function
| VisualStudio p -> dotnet rootDir (sprintf "pack %s --configuration Release --no-restore --no-build" p.ProjectFile) | VisualStudio p -> dotnetWeak rootDir (sprintf "pack %s --configuration Release --no-restore --no-build" p.ProjectFile)
| _ -> failwith "Project type not supported" | _ -> failwith "Project type not supported"
let packProjectSN = function let packProjectStrong = function
| VisualStudio p -> dotnetSN rootDir (sprintf "pack %s --configuration Release --no-restore --no-build" p.ProjectFile) | VisualStudio p -> dotnetStrong rootDir (sprintf "pack %s --configuration Release --no-restore --no-build" p.ProjectFile)
| _ -> failwith "Project type not supported" | _ -> failwith "Project type not supported"
//let buildConfig config subject = MSBuild "" (if hasBuildParam "incremental" then "Build" else "Rebuild") [ "Configuration", config ] subject |> ignore //let buildConfig config subject = MSBuild "" (if hasBuildParam "incremental" then "Build" else "Rebuild") [ "Configuration", config ] subject |> ignore

6
src/FSharp.Tests/AssemblyInfo.fs

@ -10,9 +10,9 @@ open System.Runtime.InteropServices
[<assembly: AssemblyProduct("Math.NET Numerics")>] [<assembly: AssemblyProduct("Math.NET Numerics")>]
[<assembly: AssemblyCopyright("Copyright (c) Math.NET Project")>] [<assembly: AssemblyCopyright("Copyright (c) Math.NET Project")>]
[<assembly: AssemblyVersion("4.8.0.0")>] [<assembly: AssemblyVersion("4.8.1.0")>]
[<assembly: AssemblyFileVersion("4.8.0.0")>] [<assembly: AssemblyFileVersion("4.8.1.0")>]
[<assembly: AssemblyInformationalVersion("4.8.0")>] [<assembly: AssemblyInformationalVersion("4.8.1")>]
[<assembly: ComVisible(false)>] [<assembly: ComVisible(false)>]
[<assembly: Guid("C9AA6156-F799-42E4-B50D-2E88AD7D1750")>] [<assembly: Guid("C9AA6156-F799-42E4-B50D-2E88AD7D1750")>]

6
src/FSharp/AssemblyInfo.fs

@ -44,9 +44,9 @@ open System.Runtime.InteropServices
[<assembly: AssemblyCulture("")>] [<assembly: AssemblyCulture("")>]
[<assembly: NeutralResourcesLanguage("en")>] [<assembly: NeutralResourcesLanguage("en")>]
[<assembly: AssemblyVersion("4.8.0.0")>] [<assembly: AssemblyVersion("4.8.1.0")>]
[<assembly: AssemblyFileVersion("4.8.0.0")>] [<assembly: AssemblyFileVersion("4.8.1.0")>]
[<assembly: AssemblyInformationalVersion("4.8.0")>] [<assembly: AssemblyInformationalVersion("4.8.1")>]
[<assembly: ComVisible(false)>] [<assembly: ComVisible(false)>]
[<assembly: Guid("048BC4EB-CE2B-4040-9967-4784F5405B0F")>] [<assembly: Guid("048BC4EB-CE2B-4040-9967-4784F5405B0F")>]

8
src/FSharp/FSharp.fsproj

@ -7,15 +7,11 @@
<RootNamespace>MathNet.Numerics</RootNamespace> <RootNamespace>MathNet.Numerics</RootNamespace>
<IsPackable>true</IsPackable> <IsPackable>true</IsPackable>
<PackageId>MathNet.Numerics.FSharp$(PackageIdSuffix)</PackageId> <PackageId>MathNet.Numerics.FSharp$(PackageIdSuffix)</PackageId>
<VersionPrefix>4.8.0</VersionPrefix> <VersionPrefix>4.8.1</VersionPrefix>
<VersionSuffix></VersionSuffix> <VersionSuffix></VersionSuffix>
<Title>Math.NET Numerics for F#$(TitleSuffix)</Title> <Title>Math.NET Numerics for F#$(TitleSuffix)</Title>
<Description>F# Modules for Math.NET Numerics, the numerical foundation of the Math.NET project, aiming to provide methods and algorithms for numerical computations in science, engineering and every day use. Supports .Net Framework 4.5 or higher and .Net Standard 1.6 or higher, on Windows, Linux and Mac.$(DescriptionSuffix)</Description> <Description>F# Modules for Math.NET Numerics, the numerical foundation of the Math.NET project, aiming to provide methods and algorithms for numerical computations in science, engineering and every day use. Supports .Net Framework 4.5 or higher and .Net Standard 1.6 or higher, on Windows, Linux and Mac.$(DescriptionSuffix)</Description>
<PackageReleaseNotes>Optimization: Levenberg-Marquardt, Trust-Region Dogleg ~Jong Hyun Kim <PackageReleaseNotes>Packaging fix - signed edition was not properly strong named.</PackageReleaseNotes>
Optimization: Nelder-Mead-Simplex: Improve convergence for symmetrical functions ~Erik Ovegard
BUG: Optimization: Nelder-Mead-Simplex did not return the best evaluated point in some cases ~Eric Scott Salem
Factorial: first 170 values now constant (data segment) instead of precomputed on first use ~Portalez Regis
Window Functions: Tukey window ~Marco Ross</PackageReleaseNotes>
<PackageTags>fsharp F# math numeric statistics probability integration interpolation regression solve fit linear algebra matrix fft</PackageTags> <PackageTags>fsharp F# math numeric statistics probability integration interpolation regression solve fit linear algebra matrix fft</PackageTags>
<IsTool>false</IsTool> <IsTool>false</IsTool>
<NeutralLanguage>en</NeutralLanguage> <NeutralLanguage>en</NeutralLanguage>

6
src/Numerics.Tests/Properties/AssemblyInfo.cs

@ -9,8 +9,8 @@ using MathNet.Numerics.UnitTests;
[assembly: ComVisible(false)] [assembly: ComVisible(false)]
[assembly: Guid("04157581-63f3-447b-a277-83c6e69126a4")] [assembly: Guid("04157581-63f3-447b-a277-83c6e69126a4")]
[assembly: AssemblyVersion("4.8.0.0")] [assembly: AssemblyVersion("4.8.1.0")]
[assembly: AssemblyFileVersion("4.8.0.0")] [assembly: AssemblyFileVersion("4.8.1.0")]
[assembly: AssemblyInformationalVersion("4.8.0")] [assembly: AssemblyInformationalVersion("4.8.1")]
[assembly: UseLinearAlgebraProvider] [assembly: UseLinearAlgebraProvider]

8
src/Numerics/Numerics.csproj

@ -7,15 +7,11 @@
<RootNamespace>MathNet.Numerics</RootNamespace> <RootNamespace>MathNet.Numerics</RootNamespace>
<IsPackable>true</IsPackable> <IsPackable>true</IsPackable>
<PackageId>MathNet.Numerics$(PackageIdSuffix)</PackageId> <PackageId>MathNet.Numerics$(PackageIdSuffix)</PackageId>
<VersionPrefix>4.8.0</VersionPrefix> <VersionPrefix>4.8.1</VersionPrefix>
<VersionSuffix></VersionSuffix> <VersionSuffix></VersionSuffix>
<Title>Math.NET Numerics$(TitleSuffix)</Title> <Title>Math.NET Numerics$(TitleSuffix)</Title>
<Description>Math.NET Numerics is the numerical foundation of the Math.NET project, aiming to provide methods and algorithms for numerical computations in science, engineering and every day use. Supports .Net Framework 4.0 or higher and .Net Standard 1.3 or higher, on Windows, Linux and Mac.$(DescriptionSuffix)</Description> <Description>Math.NET Numerics is the numerical foundation of the Math.NET project, aiming to provide methods and algorithms for numerical computations in science, engineering and every day use. Supports .Net Framework 4.0 or higher and .Net Standard 1.3 or higher, on Windows, Linux and Mac.$(DescriptionSuffix)</Description>
<PackageReleaseNotes>Optimization: Levenberg-Marquardt, Trust-Region Dogleg ~Jong Hyun Kim <PackageReleaseNotes>Packaging fix - signed edition was not properly strong named.</PackageReleaseNotes>
Optimization: Nelder-Mead-Simplex: Improve convergence for symmetrical functions ~Erik Ovegard
BUG: Optimization: Nelder-Mead-Simplex did not return the best evaluated point in some cases ~Eric Scott Salem
Factorial: first 170 values now constant (data segment) instead of precomputed on first use ~Portalez Regis
Window Functions: Tukey window ~Marco Ross</PackageReleaseNotes>
<PackageTags>math numeric statistics probability integration interpolation regression solve fit linear algebra matrix fft</PackageTags> <PackageTags>math numeric statistics probability integration interpolation regression solve fit linear algebra matrix fft</PackageTags>
<IsTool>false</IsTool> <IsTool>false</IsTool>
<NeutralLanguage>en</NeutralLanguage> <NeutralLanguage>en</NeutralLanguage>

4
src/TestData/Properties/AssemblyInfo.cs

@ -14,5 +14,5 @@ using System.Runtime.InteropServices;
[assembly: Guid("a4a6a08e-5265-4608-a43d-e4f2e210ba2d")] [assembly: Guid("a4a6a08e-5265-4608-a43d-e4f2e210ba2d")]
[assembly: AssemblyVersion("4.8.0.0")] [assembly: AssemblyVersion("4.8.1.0")]
[assembly: AssemblyFileVersion("4.8.0.0")] [assembly: AssemblyFileVersion("4.8.1.0")]

Loading…
Cancel
Save