From e51f95a24994cc681c7837e65e746ede9747a1d9 Mon Sep 17 00:00:00 2001 From: Craig Oates Date: Sat, 1 Sep 2018 19:35:56 +0100 Subject: [PATCH 01/24] add console project. Update NuGets in console project. --- SmoulderingBeachBall.sln | 8 ++- SmoulderingBeachBallCLI/App.config | 6 ++ SmoulderingBeachBallCLI/AssemblyInfo.fs | 41 +++++++++++ SmoulderingBeachBallCLI/Program.fs | 7 ++ .../SmoulderingBeachBallCLI.fsproj | 72 +++++++++++++++++++ SmoulderingBeachBallCLI/packages.config | 5 ++ 6 files changed, 138 insertions(+), 1 deletion(-) create mode 100644 SmoulderingBeachBallCLI/App.config create mode 100644 SmoulderingBeachBallCLI/AssemblyInfo.fs create mode 100644 SmoulderingBeachBallCLI/Program.fs create mode 100644 SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj create mode 100644 SmoulderingBeachBallCLI/packages.config diff --git a/SmoulderingBeachBall.sln b/SmoulderingBeachBall.sln index d7de6b3..8328c68 100644 --- a/SmoulderingBeachBall.sln +++ b/SmoulderingBeachBall.sln @@ -3,7 +3,9 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 VisualStudioVersion = 15.0.28010.2016 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "SmoulderingBeachBall", "SmoulderingBeachBall\SmoulderingBeachBall.fsproj", "{DFC3CBCA-3DA7-4CF4-A8BC-BCCB740FA6CD}" +Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "SmoulderingBeachBall", "SmoulderingBeachBall\SmoulderingBeachBall.fsproj", "{DFC3CBCA-3DA7-4CF4-A8BC-BCCB740FA6CD}" +EndProject +Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "SmoulderingBeachBallCLI", "SmoulderingBeachBallCLI\SmoulderingBeachBallCLI.fsproj", "{5C00D583-EF09-4FE6-A3FE-EB01454C0607}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -15,6 +17,10 @@ Global {DFC3CBCA-3DA7-4CF4-A8BC-BCCB740FA6CD}.Debug|Any CPU.Build.0 = Debug|Any CPU {DFC3CBCA-3DA7-4CF4-A8BC-BCCB740FA6CD}.Release|Any CPU.ActiveCfg = Release|Any CPU {DFC3CBCA-3DA7-4CF4-A8BC-BCCB740FA6CD}.Release|Any CPU.Build.0 = Release|Any CPU + {5C00D583-EF09-4FE6-A3FE-EB01454C0607}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5C00D583-EF09-4FE6-A3FE-EB01454C0607}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5C00D583-EF09-4FE6-A3FE-EB01454C0607}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5C00D583-EF09-4FE6-A3FE-EB01454C0607}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/SmoulderingBeachBallCLI/App.config b/SmoulderingBeachBallCLI/App.config new file mode 100644 index 0000000..787dcbe --- /dev/null +++ b/SmoulderingBeachBallCLI/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/SmoulderingBeachBallCLI/AssemblyInfo.fs b/SmoulderingBeachBallCLI/AssemblyInfo.fs new file mode 100644 index 0000000..df772e6 --- /dev/null +++ b/SmoulderingBeachBallCLI/AssemblyInfo.fs @@ -0,0 +1,41 @@ +namespace SmoulderingBeachBallCLI.AssemblyInfo + +open System.Reflection +open System.Runtime.CompilerServices +open System.Runtime.InteropServices + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[] +[] +[] +[] +[] +[] +[] +[] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [] +[] +[] + +do + () \ No newline at end of file diff --git a/SmoulderingBeachBallCLI/Program.fs b/SmoulderingBeachBallCLI/Program.fs new file mode 100644 index 0000000..2bcf7f9 --- /dev/null +++ b/SmoulderingBeachBallCLI/Program.fs @@ -0,0 +1,7 @@ +// Learn more about F# at http://fsharp.org +// See the 'F# Tutorial' project for more help. + +[] +let main argv = + printfn "%A" argv + 0 // return an integer exit code diff --git a/SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj b/SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj new file mode 100644 index 0000000..cbbb1c4 --- /dev/null +++ b/SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj @@ -0,0 +1,72 @@ + + + + + Debug + AnyCPU + 2.0 + 5c00d583-ef09-4fe6-a3fe-eb01454c0607 + Exe + SmoulderingBeachBallCLI + SmoulderingBeachBallCLI + v4.7.1 + true + true + SmoulderingBeachBallCLI + + + true + full + false + false + bin\$(Configuration)\ + DEBUG;TRACE + 3 + AnyCPU + bin\$(Configuration)\$(AssemblyName).XML + true + + + pdbonly + true + true + bin\$(Configuration)\ + TRACE + 3 + AnyCPU + bin\$(Configuration)\$(AssemblyName).XML + true + + + 11 + + + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\FSharp\Microsoft.FSharp.Targets + + + + + + + + + + + ..\packages\FSharp.Core.4.5.2\lib\net45\FSharp.Core.dll + + + + + + + True + + + + \ No newline at end of file diff --git a/SmoulderingBeachBallCLI/packages.config b/SmoulderingBeachBallCLI/packages.config new file mode 100644 index 0000000..d2de1a6 --- /dev/null +++ b/SmoulderingBeachBallCLI/packages.config @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file From 7c8032722e5b92cb97f25ebfe94405d5e45f0e6f Mon Sep 17 00:00:00 2001 From: Craig Oates Date: Sat, 1 Sep 2018 21:39:15 +0100 Subject: [PATCH 02/24] setup Console.Waterwork in the CLI project. --- SmoulderingBeachBallCLI/AssemblyInfo.fs | 10 +++++----- SmoulderingBeachBallCLI/ConsoleCommands.fs | 6 ++++++ SmoulderingBeachBallCLI/Program.fs | 6 +++--- SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj | 4 ++++ SmoulderingBeachBallCLI/packages.config | 1 + 5 files changed, 19 insertions(+), 8 deletions(-) create mode 100644 SmoulderingBeachBallCLI/ConsoleCommands.fs diff --git a/SmoulderingBeachBallCLI/AssemblyInfo.fs b/SmoulderingBeachBallCLI/AssemblyInfo.fs index df772e6..1fedc7e 100644 --- a/SmoulderingBeachBallCLI/AssemblyInfo.fs +++ b/SmoulderingBeachBallCLI/AssemblyInfo.fs @@ -7,12 +7,12 @@ open System.Runtime.InteropServices // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. -[] +[] [] [] [] -[] -[] +[] +[] [] [] @@ -34,8 +34,8 @@ open System.Runtime.InteropServices // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [] -[] -[] +[] +[] do () \ No newline at end of file diff --git a/SmoulderingBeachBallCLI/ConsoleCommands.fs b/SmoulderingBeachBallCLI/ConsoleCommands.fs new file mode 100644 index 0000000..81dbc25 --- /dev/null +++ b/SmoulderingBeachBallCLI/ConsoleCommands.fs @@ -0,0 +1,6 @@ +namespace Commands + + module ConsoleCommands = + + let test() = "This program is working." + diff --git a/SmoulderingBeachBallCLI/Program.fs b/SmoulderingBeachBallCLI/Program.fs index 2bcf7f9..c43a2d1 100644 --- a/SmoulderingBeachBallCLI/Program.fs +++ b/SmoulderingBeachBallCLI/Program.fs @@ -1,7 +1,7 @@ -// Learn more about F# at http://fsharp.org -// See the 'F# Tutorial' project for more help. +open Console.Waterworks [] let main argv = - printfn "%A" argv + let liaison = new CW_Liaison () + liaison.Run ("Commands", true) 0 // return an integer exit code diff --git a/SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj b/SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj index cbbb1c4..1d40fe5 100644 --- a/SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj +++ b/SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj @@ -46,11 +46,15 @@ + + + ..\packages\Console.Waterworks.0.1.0.0-alpha1\lib\Console.Waterworks.dll + ..\packages\FSharp.Core.4.5.2\lib\net45\FSharp.Core.dll diff --git a/SmoulderingBeachBallCLI/packages.config b/SmoulderingBeachBallCLI/packages.config index d2de1a6..daebccc 100644 --- a/SmoulderingBeachBallCLI/packages.config +++ b/SmoulderingBeachBallCLI/packages.config @@ -1,5 +1,6 @@  + \ No newline at end of file From 10ffb67ea7890f9ee22ad4bb05a29ed18bbcde25 Mon Sep 17 00:00:00 2001 From: Craig Oates Date: Sat, 1 Sep 2018 21:41:15 +0100 Subject: [PATCH 03/24] reference library project in CLI project. --- SmoulderingBeachBallCLI/ConsoleCommands.fs | 4 +++- SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj | 7 +++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/SmoulderingBeachBallCLI/ConsoleCommands.fs b/SmoulderingBeachBallCLI/ConsoleCommands.fs index 81dbc25..2a803a0 100644 --- a/SmoulderingBeachBallCLI/ConsoleCommands.fs +++ b/SmoulderingBeachBallCLI/ConsoleCommands.fs @@ -2,5 +2,7 @@ module ConsoleCommands = - let test() = "This program is working." + open Console.Waterworks + + let test () = "This program is working." diff --git a/SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj b/SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj index 1d40fe5..6aaefd4 100644 --- a/SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj +++ b/SmoulderingBeachBallCLI/SmoulderingBeachBallCLI.fsproj @@ -66,6 +66,13 @@ True + + + SmoulderingBeachBall + {dfc3cbca-3da7-4cf4-a8bc-bccb740fa6cd} + True + +