From e8c691eb46c866a858199797c979b7d30bdaf4df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=BChlhaus?= Date: Tue, 13 Dec 2016 16:01:10 +0100 Subject: [PATCH] Add FSharp.Plotly support for docu --- FSharp.Stats.sln | 6 +- docs/files/img/logo.png | Bin 1581 -> 43218 bytes docs/tools/formatters.fsx | 54 ++++++ docs/tools/generate.fsx | 7 +- paket.dependencies | 2 + paket.lock | 240 +++++++++++++++++++++++++++ src/FSharp.Stats/App.config | 20 +-- src/FSharp.Stats/FSharp.Stats.fsproj | 14 +- tests/FSharp.Stats.Tests/App.config | 20 +-- 9 files changed, 318 insertions(+), 45 deletions(-) create mode 100644 docs/tools/formatters.fsx diff --git a/FSharp.Stats.sln b/FSharp.Stats.sln index b76b590b..d509233d 100644 --- a/FSharp.Stats.sln +++ b/FSharp.Stats.sln @@ -1,6 +1,7 @@ - Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 2012 +# Visual Studio 14 +VisualStudioVersion = 14.0.25420.1 +MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".paket", ".paket", "{63297B98-5CED-492C-A5B7-A5B4F73CF142}" ProjectSection(SolutionItems) = preProject paket.dependencies = paket.dependencies @@ -20,6 +21,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "project", "project", "{BF60 EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tools", "tools", "{83F16175-43B1-4C90-A1EE-8E351C33435D}" ProjectSection(SolutionItems) = preProject + docs\tools\formatters.fsx = docs\tools\formatters.fsx docs\tools\generate.fsx = docs\tools\generate.fsx docs\tools\templates\template.cshtml = docs\tools\templates\template.cshtml EndProjectSection diff --git a/docs/files/img/logo.png b/docs/files/img/logo.png index 8a2b81b9eb60b9bd48e50daed8ab02a46ee4992f..5712278587c37da39a15ec3d9d1624ec7887ddfb 100644 GIT binary patch literal 43218 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 z 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 F{sgIYh8h3> literal 1581 zcmXw3dr%W+5Wl3S(FfL4WtA!Y%7hEfB!WB|b8zRyCiVIVTx zNzPm!kts^~A#+bmdOVOCle8;y)vowVJNH%WRc?h-Y9RnDXcF+bn z*li~;306aP%Y%y_0u+mAh&qS~58j$LH~q#G z(!AI7P7v@a;K4anPh1DRbFD{?CC`k4tH9`WpLUy8FJIZ&Ii50G%=g!EI`_@yHw=Ec z=jKi23khOhIw@uVsAYKr)=cunp1k<@G3BZAvlAk{wfW3t?TVfRh!}mVDil!J0WWlD z3%}LeE(WSh7j%QSNvLtZ*W;c&roXfii2sXub+u%OU|XU6CK6!I2&}+Z!O@)L}$~ZX;#W(qagHT z71H?4SU^yr9j8p=&f*U4Zmu~(<4}3Q;KhMCgk57OH1o0=vDbDeJlhOG@UYRlcj+!l zR&kXeG(uh~Dg6&&i4w;(*$!rzE7IKcSk_Fcs{m23@{D*jhIsVppUhHARrKQ8LG?u4 zBN}BZGVz8uIDpY5SyqBT1w7x8>wYC08jB2q```#kF{@YG6v&H^H%LlYy`>Lm6d!~= zwvWFNr!zcrtVJc)x(<`~S%g(V^^`H3H-vys4vLDLzqg6~&tQRa|$R z*ku3G;X1JCE!AJi>b+b~bDZw6)-bzsN%$Mo<7GMX4DNP3ZJGzWN+Ev!2aC;4_T+%$ zO5<9xc7at4lw5qc=hm2AI>c`C+NDdVQ31~@o&`(4jfL2awpVp;-xQ5cP|s2$A$C3V zMAwipYc*(j1|)}^U}J6}h-^9xa^P53gAXH*EXSG*^dYYk z3FpKeKWJt&mSHllRRb)R9CL6@hh~O%{5`-~ce$*}_97@*b9fu}#3XxVg~|?omiifh+Hsmj>=l_z6AzHj%P zh9}7VaJVZ*w+<*dGr}Yk37JWCJiXKDFk<0meCm1n1*b!Zh2hMsABR7*2lEj%fRFdH zVWE_cr~s-Bsw)*rRP*%zFHtiJ&C|ofM4a4m VXWV0Pq6A; incr count; !count) + + let transformation (value:obj, typ:System.Type) = + match value with + | :? System.Drawing.Image as img -> + // Pretty print image - save the image to the "images" directory + // and return a DirectImage reference to the appropriate location + let id = imageCounter().ToString() + let file = "chart" + id + ".png" + ensureDirectory (output @@ "images") + img.Save(output @@ "images" @@ file, System.Drawing.Imaging.ImageFormat.Png) + Some [ Paragraph [DirectImage ("", (root + "/images/" + file, None))] ] + + | :? GenericChart.GenericChart as ch -> + // Just return the inline HTML for a Plotly chart + let html = GenericChart.toChartHtmlWithSize 700 500 ch + Some [InlineBlock <| html] + + | _ -> None + + // Create FSI evaluator, register transformations & return + let fsiEvaluator = FsiEvaluator() + fsiEvaluator.RegisterTransformation(transformation) + fsiEvaluator \ No newline at end of file diff --git a/docs/tools/generate.fsx b/docs/tools/generate.fsx index 9a3b166a..6b2e02c6 100644 --- a/docs/tools/generate.fsx +++ b/docs/tools/generate.fsx @@ -26,6 +26,7 @@ let info = // -------------------------------------------------------------------------------------- // For typical project, no changes are needed below // -------------------------------------------------------------------------------------- +#load "formatters.fsx" #load "../../packages/build/FSharp.Formatting/FSharp.Formatting.fsx" #I "../../packages/build/FAKE/tools/" @@ -107,11 +108,13 @@ let buildReference () = // Build documentation from `fsx` and `md` files in `docs/content` let buildDocumentation () = + // Create evaluator and parse script + let fsi = Formatters.createFsiEvaluator root output // First, process files which are placed in the content root directory. Literate.ProcessDirectory - ( content, docTemplate, output, replacements = ("root", root)::info, + ( content, docTemplate, output, fsiEvaluator = fsi, replacements = ("root", root)::info, layoutRoots = layoutRootsAll.["en"], generateAnchors = true, processRecursive = false) @@ -131,7 +134,7 @@ let buildDocumentation () = | None -> layoutRootsAll.["en"] // "en" is the default language Literate.ProcessDirectory - ( dir, docTemplate, output @@ dirname, replacements = ("root", root)::info, + ( dir, docTemplate, output @@ dirname, fsiEvaluator = fsi, replacements = ("root", root)::info, layoutRoots = layoutRoots, generateAnchors = true ) diff --git a/paket.dependencies b/paket.dependencies index ef4a0744..286a1203 100644 --- a/paket.dependencies +++ b/paket.dependencies @@ -14,6 +14,8 @@ group Build github fsharp/FAKE modules/Octokit/Octokit.fsx + nuget FSharp.Plotly + group Test source https://nuget.org/api/v2 diff --git a/paket.lock b/paket.lock index cf2d3116..9b34f401 100644 --- a/paket.lock +++ b/paket.lock @@ -10,20 +10,260 @@ NUGET remote: https://www.nuget.org/api/v2 FAKE (4.46.1) FSharp.Compiler.Service (2.0.0.6) + FSharp.Core (4.0.0.1) FSharp.Formatting (2.14.4) FSharp.Compiler.Service (2.0.0.6) FSharpVSPowerTools.Core (>= 2.3 < 2.4) + FSharp.Plotly (1.0.2) + FSharp.Core + Newtonsoft.Json FSharpVSPowerTools.Core (2.3) FSharp.Compiler.Service (>= 2.0.0.3) Microsoft.Bcl (1.1.10) - framework: net10, net11, net20, net30, net35, net40, net40-full Microsoft.Bcl.Build (>= 1.0.14) Microsoft.Bcl.Build (1.0.21) - import_targets: false, framework: net10, net11, net20, net30, net35, net40, net40-full + Microsoft.CSharp (4.3) - framework: >= netstandard10 + System.Collections (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Diagnostics.Debug (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Dynamic.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Globalization (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Linq (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Linq.Expressions (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.ObjectModel (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Reflection (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Reflection.Extensions (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Reflection.Primitives (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Reflection.TypeExtensions (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Resources.ResourceManager (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Runtime.Extensions (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Runtime.InteropServices (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Threading (>= 4.3) - framework: dnxcore50, >= netstandard13 Microsoft.Net.Http (2.2.29) - framework: net10, net11, net20, net30, net35, net40, net40-full Microsoft.Bcl (>= 1.1.10) Microsoft.Bcl.Build (>= 1.0.14) + Microsoft.NETCore.Platforms (1.1) - framework: >= netstandard10 + Microsoft.NETCore.Targets (1.1) - framework: >= netstandard10 + Newtonsoft.Json (9.0.1) + Microsoft.CSharp (>= 4.0.1) - framework: >= netstandard10 + System.Collections (>= 4.0.11) - framework: >= netstandard10 + System.Diagnostics.Debug (>= 4.0.11) - framework: >= netstandard10 + System.Dynamic.Runtime (>= 4.0.11) - framework: >= netstandard10 + System.Globalization (>= 4.0.11) - framework: >= netstandard10 + System.IO (>= 4.1) - framework: >= netstandard10 + System.Linq (>= 4.1) - framework: >= netstandard10 + System.Linq.Expressions (>= 4.1) - framework: >= netstandard10 + System.ObjectModel (>= 4.0.12) - framework: >= netstandard10 + System.Reflection (>= 4.1) - framework: >= netstandard10 + System.Reflection.Extensions (>= 4.0.1) - framework: >= netstandard10 + System.Resources.ResourceManager (>= 4.0.1) - framework: >= netstandard10 + System.Runtime (>= 4.1) - framework: >= netstandard10 + System.Runtime.Extensions (>= 4.1) - framework: >= netstandard10 + System.Runtime.Serialization.Primitives (>= 4.1.1) - framework: >= netstandard10 + System.Text.Encoding (>= 4.0.11) - framework: >= netstandard10 + System.Text.Encoding.Extensions (>= 4.0.11) - framework: >= netstandard10 + System.Text.RegularExpressions (>= 4.1) - framework: >= netstandard10 + System.Threading (>= 4.0.11) - framework: >= netstandard10 + System.Threading.Tasks (>= 4.0.11) - framework: >= netstandard10 + System.Xml.ReaderWriter (>= 4.0.11) - framework: >= netstandard10 + System.Xml.XDocument (>= 4.0.11) - framework: >= netstandard10 Octokit (0.23) Microsoft.Net.Http - framework: net10, net11, net20, net30, net35, net40, net40-full SourceLink.Fake (1.1) + System.Collections (4.3) - framework: >= netstandard10 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, netstandard10, >= netstandard13 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Diagnostics.Debug (4.3) - framework: >= netstandard10 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, netstandard10, >= netstandard13 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Diagnostics.Tools (4.3) - framework: >= netstandard13 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, >= netstandard10 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, >= netstandard10 + System.Runtime (>= 4.3) - framework: dnxcore50, >= netstandard10 + System.Dynamic.Runtime (4.3) - framework: >= netstandard10 + System.Collections (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Diagnostics.Debug (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Linq (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Linq.Expressions (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.ObjectModel (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Reflection (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Reflection.Emit (>= 4.3) - framework: >= netstandard13 + System.Reflection.Emit.ILGeneration (>= 4.3) - framework: >= netstandard13 + System.Reflection.Primitives (>= 4.3) - framework: >= netstandard13 + System.Reflection.TypeExtensions (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Resources.ResourceManager (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Runtime.Extensions (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Threading (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Globalization (4.3) - framework: >= netstandard10 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, netstandard10, >= netstandard13 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.IO (4.3) - framework: >= netstandard10 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard15 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard15 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard15 + System.Text.Encoding (>= 4.3) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard15 + System.Threading.Tasks (>= 4.3) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard15 + System.IO.FileSystem (4.3) - framework: >= netstandard13 + Microsoft.NETCore.Platforms (>= 1.1) - framework: >= netstandard13 + Microsoft.NETCore.Targets (>= 1.1) - framework: >= netstandard13 + System.IO (>= 4.3) - framework: >= netstandard13 + System.IO.FileSystem.Primitives (>= 4.3) - framework: >= net46, >= netstandard13 + System.Runtime (>= 4.3) - framework: >= netstandard13 + System.Runtime.Handles (>= 4.3) - framework: >= netstandard13 + System.Text.Encoding (>= 4.3) - framework: >= netstandard13 + System.Threading.Tasks (>= 4.3) - framework: >= netstandard13 + System.IO.FileSystem.Primitives (4.3) - framework: >= netstandard13 + System.Runtime (>= 4.3) - framework: >= netstandard13 + System.Linq (4.3) - framework: >= netstandard10 + System.Collections (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard16 + System.Diagnostics.Debug (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Resources.ResourceManager (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard16 + System.Runtime.Extensions (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Linq.Expressions (4.3) - framework: >= netstandard10 + System.Collections (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Diagnostics.Debug (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Globalization (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.IO (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Linq (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.ObjectModel (>= 4.3) - framework: >= netstandard16 + System.Reflection (>= 4.3) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard16 + System.Reflection.Emit (>= 4.3) - framework: >= netstandard16 + System.Reflection.Emit.ILGeneration (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Reflection.Emit.Lightweight (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Reflection.Extensions (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Reflection.Primitives (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Reflection.TypeExtensions (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Resources.ResourceManager (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard16 + System.Runtime.Extensions (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Threading (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.ObjectModel (4.3) - framework: >= netstandard10 + System.Collections (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Diagnostics.Debug (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Resources.ResourceManager (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Threading (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Reflection (4.3) - framework: >= netstandard10 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard15 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard15 + System.IO (>= 4.3) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard15 + System.Reflection.Primitives (>= 4.3) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard15 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard15 + System.Reflection.Emit (4.3) - framework: >= netstandard13 + System.IO (>= 4.3) - framework: >= netstandard11 + System.Reflection (>= 4.3) - framework: >= netstandard11 + System.Reflection.Emit.ILGeneration (>= 4.3) - framework: >= netstandard11 + System.Reflection.Primitives (>= 4.3) - framework: >= netstandard11 + System.Runtime (>= 4.3) - framework: >= netstandard11 + System.Reflection.Emit.ILGeneration (4.3) - framework: >= netstandard13 + System.Reflection (>= 4.3) - framework: >= netstandard10 + System.Reflection.Primitives (>= 4.3) - framework: >= netstandard10 + System.Runtime (>= 4.3) - framework: >= netstandard10 + System.Reflection.Emit.Lightweight (4.3) - framework: >= netstandard16 + System.Reflection (>= 4.3) - framework: >= netstandard10 + System.Reflection.Emit.ILGeneration (>= 4.3) - framework: >= netstandard10 + System.Reflection.Primitives (>= 4.3) - framework: >= netstandard10 + System.Runtime (>= 4.3) - framework: >= netstandard10 + System.Reflection.Extensions (4.3) - framework: >= netstandard10 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, >= netstandard10 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, >= netstandard10 + System.Reflection (>= 4.3) - framework: dnxcore50, >= netstandard10 + System.Runtime (>= 4.3) - framework: dnxcore50, >= netstandard10 + System.Reflection.Primitives (4.3) - framework: netstandard10, >= netstandard13 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, >= netstandard10 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, >= netstandard10 + System.Runtime (>= 4.3) - framework: dnxcore50, >= netstandard10 + System.Reflection.TypeExtensions (4.3) - framework: >= netstandard13 + System.Reflection (>= 4.3) - framework: >= net462, dnxcore50, netstandard13, >= netstandard15 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard13, >= netstandard15 + System.Resources.ResourceManager (4.3) - framework: >= netstandard10 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, >= netstandard10 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, >= netstandard10 + System.Globalization (>= 4.3) - framework: dnxcore50, >= netstandard10 + System.Reflection (>= 4.3) - framework: dnxcore50, >= netstandard10 + System.Runtime (>= 4.3) - framework: dnxcore50, >= netstandard10 + System.Runtime (4.3) - framework: >= netstandard10 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, netstandard10, netstandard12, netstandard13, >= netstandard15 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, netstandard10, netstandard12, netstandard13, >= netstandard15 + System.Runtime.Extensions (4.3) - framework: >= netstandard10 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard15 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard15 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard15 + System.Runtime.Handles (4.3) - framework: >= netstandard13 + Microsoft.NETCore.Platforms (>= 1.1) - framework: >= netstandard13 + Microsoft.NETCore.Targets (>= 1.1) - framework: >= netstandard13 + System.Runtime (>= 4.3) - framework: >= netstandard13 + System.Runtime.InteropServices (4.3) - framework: >= netstandard13 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, netstandard11, netstandard12, netstandard13, >= netstandard15 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, netstandard11, netstandard12, netstandard13, >= netstandard15 + System.Reflection (>= 4.3) - framework: dnxcore50, netstandard11, netstandard12, netstandard13, >= netstandard15 + System.Reflection.Primitives (>= 4.3) - framework: dnxcore50, netstandard11, netstandard12, netstandard13, >= netstandard15 + System.Runtime (>= 4.3) - framework: net462, >= net463, dnxcore50, netstandard11, netstandard12, netstandard13, >= netstandard15 + System.Runtime.Handles (>= 4.3) - framework: dnxcore50, netstandard13, >= netstandard15 + System.Runtime.Serialization.Primitives (4.3) - framework: >= netstandard10 + System.Resources.ResourceManager (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Text.Encoding (4.3) - framework: >= netstandard10 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, netstandard10, >= netstandard13 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Text.Encoding.Extensions (4.3) - framework: >= netstandard10 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, netstandard10, >= netstandard13 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Text.Encoding (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Text.RegularExpressions (4.3) - framework: >= netstandard10 + System.Collections (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Globalization (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Resources.ResourceManager (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, netstandard13, >= netstandard16 + System.Runtime.Extensions (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Threading (>= 4.3) - framework: dnxcore50, >= netstandard16 + System.Threading (4.3) - framework: >= netstandard10 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Threading.Tasks (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Threading.Tasks (4.3) - framework: >= netstandard10 + Microsoft.NETCore.Platforms (>= 1.1) - framework: dnxcore50, netstandard10, >= netstandard13 + Microsoft.NETCore.Targets (>= 1.1) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Threading.Tasks.Extensions (4.3) - framework: >= netstandard13 + System.Collections (>= 4.3) - framework: >= netstandard10 + System.Runtime (>= 4.3) - framework: >= netstandard10 + System.Threading.Tasks (>= 4.3) - framework: >= netstandard10 + System.Xml.ReaderWriter (4.3) - framework: >= netstandard10 + System.Collections (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Diagnostics.Debug (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Globalization (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.IO (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.IO.FileSystem (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.IO.FileSystem.Primitives (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Resources.ResourceManager (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Runtime.Extensions (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Runtime.InteropServices (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Text.Encoding (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Text.Encoding.Extensions (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Text.RegularExpressions (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Threading.Tasks (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Threading.Tasks.Extensions (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Xml.XDocument (4.3) - framework: >= netstandard10 + System.Collections (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Diagnostics.Debug (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Diagnostics.Tools (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Globalization (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.IO (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Reflection (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Resources.ResourceManager (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Runtime (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 + System.Runtime.Extensions (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Text.Encoding (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Threading (>= 4.3) - framework: dnxcore50, >= netstandard13 + System.Xml.ReaderWriter (>= 4.3) - framework: dnxcore50, netstandard10, >= netstandard13 GITHUB remote: fsharp/FAKE modules/Octokit/Octokit.fsx (ab0bacd2f21ee486879a3ea2a765f15b536181fb) diff --git a/src/FSharp.Stats/App.config b/src/FSharp.Stats/App.config index e242013e..3d5a3efa 100644 --- a/src/FSharp.Stats/App.config +++ b/src/FSharp.Stats/App.config @@ -3,25 +3,11 @@ - - - + + True - - - - - - - - - - - - - - \ No newline at end of file + \ No newline at end of file diff --git a/src/FSharp.Stats/FSharp.Stats.fsproj b/src/FSharp.Stats/FSharp.Stats.fsproj index 1b8fcc6e..a9a3daf0 100644 --- a/src/FSharp.Stats/FSharp.Stats.fsproj +++ b/src/FSharp.Stats/FSharp.Stats.fsproj @@ -65,13 +65,13 @@ - + - + @@ -84,6 +84,10 @@ + + xcopy /Y "$(TargetDir)*.dll" "$(SolutionDir)bin\" +xcopy /Y "$(TargetDir)*.xml" "$(SolutionDir)bin\" + @@ -100,14 +104,10 @@ ..\..\packages\System.Numerics.Vectors\ref\net46\System.Numerics.Vectors.dll - True + False True - - xcopy /Y "$(TargetDir)*.dll" "$(SolutionDir)bin\" -xcopy /Y "$(TargetDir)*.xml" "$(SolutionDir)bin\" - \ No newline at end of file diff --git a/tests/FSharp.Stats.Tests/App.config b/tests/FSharp.Stats.Tests/App.config index e242013e..3d5a3efa 100644 --- a/tests/FSharp.Stats.Tests/App.config +++ b/tests/FSharp.Stats.Tests/App.config @@ -3,25 +3,11 @@ - - - + + True - - - - - - - - - - - - - - \ No newline at end of file + \ No newline at end of file