From df597a6bae00f0d278b0e93c0be01e061530f713 Mon Sep 17 00:00:00 2001 From: Eric Newton Date: Wed, 10 Jan 2018 17:27:07 -0500 Subject: [PATCH 01/14] build separately into base or fsharp --- build.cmd | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/build.cmd b/build.cmd index 79fc041d..595b806e 100644 --- a/build.cmd +++ b/build.cmd @@ -1,7 +1,12 @@ @echo off +setlocal cls +if "%1" == "" goto :USAGE +if "%1" == "base" set BUILD_TARGET=base +if "%1" == "fsharp" set BUILD_TARGET=fsharp + echo. echo SKIP_RESTORE=%SKIP_RESTORE% ^<^< Set to true if have already restored packages if "%SKIP_RESTORE%" == "" choice /T 5 /D Y /M "Continue?" @@ -19,8 +24,8 @@ if errorlevel 1 ( :BUILD_NET echo. -echo Fake build.fsx -.\packages\FAKE\tools\Fake %* + +msbuild CommandLine.sln /p:Configuration=Release /p:OutputPath=%~dp0\release\%BUILD_TARGET%\net4x if "%SKIP_RESTORE%" == "true" goto :BUILD_NETSTD echo. @@ -29,5 +34,16 @@ dotnet restore :BUILD_NETSTD echo. -echo dotnet build -dotnet build --configuration Release --output build\netstandard1.5 --framework netstandard1.5 src\commandline \ No newline at end of file +echo dotnet build --output %~dp0\release\%BUILD_TARGET%\netstandard1.5 +dotnet build --configuration Release --output %~dp0release\%BUILD_TARGET%\netstandard1.5 --framework netstandard1.5 src\commandline + +goto :END + +:USAGE +echo. +echo Invalid arguments specified. +echo. +echo Usage: build +echo where is base or fsharp + +:END From 807efb14930ce36ce40fa3f41e110881272bd381 Mon Sep 17 00:00:00 2001 From: Eric Newton Date: Wed, 10 Jan 2018 17:28:29 -0500 Subject: [PATCH 02/14] moving build outputs to a Release folder --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 5ab174bd..55f900a1 100644 --- a/.gitignore +++ b/.gitignore @@ -38,3 +38,4 @@ artifacts/* # Visual Studio 2015 cache/options directory .vs/ +[R|r]elease/** From 936fadce8e5bd323d3eb498f7ec4424008a969ef Mon Sep 17 00:00:00 2001 From: Eric Newton Date: Wed, 10 Jan 2018 17:29:55 -0500 Subject: [PATCH 03/14] copied nuspec to a new fsharp package variant --- Commandline-fsharp.nuspec | 44 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 Commandline-fsharp.nuspec diff --git a/Commandline-fsharp.nuspec b/Commandline-fsharp.nuspec new file mode 100644 index 00000000..21b2390e --- /dev/null +++ b/Commandline-fsharp.nuspec @@ -0,0 +1,44 @@ + + + + CommandLineParser + $version$ + Command Line Parser Library + gsscoder nemec ericnewton76 + Terse syntax C# command line parser for .NET with F# support. The Command Line Parser Library offers to CLR applications a clean and concise API for manipulating command line arguments and related tasks. + + Copyright (c) 2005 - 2018 Giacomo Stelluti Scala & Contributors + https://github.com/commandlineparser/commandline/blob/master/License.md + https://github.com/commandlineparser/commandline + Giacomo Stelluti Scala + https://raw.githubusercontent.com/commandlineparser/commandline/master/art/CommandLine20.png + false + command line commandline argument option parser parsing library syntax shell + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 069f1ffb5b91df5207cc868bba10e6a7626a9d69 Mon Sep 17 00:00:00 2001 From: Eric Newton Date: Wed, 10 Jan 2018 17:30:46 -0500 Subject: [PATCH 04/14] updates to nuspec --- CommandLine.nuspec | 12 ++++++------ Commandline-fsharp.nuspec | 18 ++++++++++++------ 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/CommandLine.nuspec b/CommandLine.nuspec index b0cf1e8e..ab0cfb05 100644 --- a/CommandLine.nuspec +++ b/CommandLine.nuspec @@ -33,12 +33,12 @@ - - - - - - + + + + + + diff --git a/Commandline-fsharp.nuspec b/Commandline-fsharp.nuspec index 21b2390e..6fb4ed83 100644 --- a/Commandline-fsharp.nuspec +++ b/Commandline-fsharp.nuspec @@ -30,15 +30,21 @@ + + + + + + - - - - - - + + + + + + From 47c17383a78e89409dd4bc9702ad0a2f4f72cbf8 Mon Sep 17 00:00:00 2001 From: Eric Newton Date: Wed, 10 Jan 2018 17:34:13 -0500 Subject: [PATCH 05/14] remove hard reference to FSharp, shifting a reference to FSharp into separate nuget package 'CommandLineParser.FSharp --- src/CommandLine/CommandLine.csproj | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/CommandLine/CommandLine.csproj b/src/CommandLine/CommandLine.csproj index 854d5e4a..0433eb88 100644 --- a/src/CommandLine/CommandLine.csproj +++ b/src/CommandLine/CommandLine.csproj @@ -21,7 +21,7 @@ full false bin\Debug\ - TRACE;DEBUG;CSX_EITHER_INTERNAL; CSX_REM_EITHER_BEYOND_2; CSX_ENUM_INTERNAL; ERRH_INTERNAL; ERRH_DISABLE_INLINE_METHODS; CSX_MAYBE_INTERNAL; CSX_REM_EITHER_FUNC;NET40 + TRACE;DEBUG;CSX_EITHER_INTERNAL; CSX_REM_EITHER_BEYOND_2; CSX_ENUM_INTERNAL; ERRH_INTERNAL; ERRH_DISABLE_INLINE_METHODS; CSX_MAYBE_INTERNAL; CSX_REM_EITHER_FUNC;NET40;SKIP_FSHARP prompt 4 bin\Debug\CommandLine.XML @@ -30,7 +30,7 @@ pdbonly true bin\Release\ - TRACE;CSX_EITHER_INTERNAL; CSX_REM_EITHER_BEYOND_2; CSX_ENUM_INTERNAL; ERRH_INTERNAL; ERRH_DISABLE_INLINE_METHODS; CSX_MAYBE_INTERNAL; CSX_REM_EITHER_FUNC;NET40 + TRACE;CSX_EITHER_INTERNAL; CSX_REM_EITHER_BEYOND_2; CSX_ENUM_INTERNAL; ERRH_INTERNAL; ERRH_DISABLE_INLINE_METHODS; CSX_MAYBE_INTERNAL; CSX_REM_EITHER_FUNC;NET40;SKIP_FSHARP prompt 4 bin\Release\CommandLine.XML @@ -57,7 +57,6 @@ - From 6541314637db067a41d5196c185416e48893d305 Mon Sep 17 00:00:00 2001 From: Eric Newton Date: Wed, 10 Jan 2018 17:36:17 -0500 Subject: [PATCH 06/14] removed references to FSharp.Core --- src/CommandLine/CommandLine.csproj | 33 +-- .../CommandLine.Tests.Properties.csproj | 189 +++++++++-------- .../packages.config | 2 +- .../CommandLine.Tests.csproj | 191 +++++++++--------- tests/CommandLine.Tests/packages.config | 2 +- 5 files changed, 193 insertions(+), 224 deletions(-) diff --git a/src/CommandLine/CommandLine.csproj b/src/CommandLine/CommandLine.csproj index 0433eb88..6e44996b 100644 --- a/src/CommandLine/CommandLine.csproj +++ b/src/CommandLine/CommandLine.csproj @@ -167,16 +167,8 @@ - - - - ..\..\packages\FSharp.Core\lib\net40\FSharp.Core.dll - True - True - - - - + + ..\..\packages\FSharp.Core\lib\portable-net45+netcore45\FSharp.Core.dll @@ -185,37 +177,28 @@ - - - - ..\..\packages\FSharp.Core\lib\portable-net45+monoandroid10+monotouch10+xamarinios10\FSharp.Core.dll - True - True - - - - + - ..\..\packages\FSharp.Core\lib\portable-net45+sl5+netcore45\FSharp.Core.dll + ..\..\packages\FSharp.Core\lib\portable-net45+netcore45+wp8\FSharp.Core.dll True True - + - ..\..\packages\FSharp.Core\lib\portable-net45+netcore45+wp8\FSharp.Core.dll + ..\..\packages\FSharp.Core\lib\portable-net45+netcore45+wpa81+wp8\FSharp.Core.dll True True - + - ..\..\packages\FSharp.Core\lib\portable-net45+netcore45+wpa81+wp8\FSharp.Core.dll + ..\..\packages\FSharp.Core\lib\portable-net45+sl5+netcore45\FSharp.Core.dll True True diff --git a/tests/CommandLine.Tests.Properties/CommandLine.Tests.Properties.csproj b/tests/CommandLine.Tests.Properties/CommandLine.Tests.Properties.csproj index 52ca0b2c..cb2b6b96 100644 --- a/tests/CommandLine.Tests.Properties/CommandLine.Tests.Properties.csproj +++ b/tests/CommandLine.Tests.Properties/CommandLine.Tests.Properties.csproj @@ -58,38 +58,43 @@ - + - <__paket__xunit_runner_visualstudio_props>win81\xunit.runner.visualstudio - <__paket__xunit_runner_visualstudio_targets>win81\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_props>net20\xunit.runner.visualstudio - + - <__paket__xunit_runner_visualstudio_props>net20\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_props>portable-net45+win8+wp8+wpa81\xunit.runner.visualstudio - + - <__paket__xunit_runner_visualstudio_props>wpa81\xunit.runner.visualstudio - <__paket__xunit_runner_visualstudio_targets>wpa81\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_props>uap10.0\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_targets>uap10.0\xunit.runner.visualstudio - + - <__paket__xunit_runner_visualstudio_props>portable-net45+win8+wp8+wpa81\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_props>win81\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_targets>win81\xunit.runner.visualstudio + + + + + <__paket__xunit_runner_visualstudio_props>wpa81\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_targets>wpa81\xunit.runner.visualstudio - + - + - <__paket__xunit_core_props>win8\xunit.core - <__paket__xunit_core_targets>win8\xunit.core + <__paket__xunit_core_props>Xamarin.iOS\xunit.core - + <__paket__xunit_core_props>monoandroid\xunit.core @@ -99,26 +104,27 @@ <__paket__xunit_core_props>monotouch\xunit.core - + - <__paket__xunit_core_props>wp8\xunit.core - <__paket__xunit_core_targets>wp8\xunit.core + <__paket__xunit_core_props>portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.core - + - <__paket__xunit_core_props>Xamarin.iOS\xunit.core + <__paket__xunit_core_props>portable-win81+wpa81\xunit.core + <__paket__xunit_core_targets>portable-win81+wpa81\xunit.core - + - <__paket__xunit_core_props>portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.core + <__paket__xunit_core_props>win8\xunit.core + <__paket__xunit_core_targets>win8\xunit.core - + - <__paket__xunit_core_props>portable-win81+wpa81\xunit.core - <__paket__xunit_core_targets>portable-win81+wpa81\xunit.core + <__paket__xunit_core_props>wp8\xunit.core + <__paket__xunit_core_targets>wp8\xunit.core @@ -131,117 +137,117 @@ --> - + - ..\..\packages\FluentAssertions\lib\net40\FluentAssertions.Core.dll - True - True - - - ..\..\packages\FluentAssertions\lib\net40\FluentAssertions.dll + ..\..\packages\FluentAssertions\lib\monoandroid\FluentAssertions.Core.dll True True - + - ..\..\packages\FluentAssertions\lib\net45\FluentAssertions.Core.dll + ..\..\packages\FluentAssertions\lib\monotouch\FluentAssertions.Core.dll True True + + + + - ..\..\packages\FluentAssertions\lib\net45\FluentAssertions.dll + ..\..\packages\FluentAssertions\lib\net40\FluentAssertions.dll True True - - - - - ..\..\packages\FluentAssertions\lib\monoandroid\FluentAssertions.Core.dll + ..\..\packages\FluentAssertions\lib\net40\FluentAssertions.Core.dll True True - + - - ..\..\packages\FluentAssertions\lib\monotouch\FluentAssertions.Core.dll + + ..\..\packages\FluentAssertions\lib\net45\FluentAssertions.dll True True - - - - - ..\..\packages\FluentAssertions\lib\sl5\FluentAssertions.Core.dll + ..\..\packages\FluentAssertions\lib\net45\FluentAssertions.Core.dll True True + + + + - ..\..\packages\FluentAssertions\lib\sl5\FluentAssertions.dll + ..\..\packages\FluentAssertions\lib\portable-net40+sl5+win8+wp8+wpa81\FluentAssertions.dll True True - - ..\..\packages\FluentAssertions\lib\sl5\Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.dll + + ..\..\packages\FluentAssertions\lib\portable-net40+sl5+win8+wp8+wpa81\FluentAssertions.Core.dll True True - + - - ..\..\packages\FluentAssertions\lib\wp8\FluentAssertions.Core.dll + + ..\..\packages\FluentAssertions\lib\portable-win81+wpa81\FluentAssertions.dll True True - - ..\..\packages\FluentAssertions\lib\wp8\FluentAssertions.dll + + ..\..\packages\FluentAssertions\lib\portable-win81+wpa81\FluentAssertions.Core.dll True True - + - - ..\..\packages\FluentAssertions\lib\xamarin.ios\FluentAssertions.Core.dll + + ..\..\packages\FluentAssertions\lib\sl5\FluentAssertions.dll True True - - - - - ..\..\packages\FluentAssertions\lib\portable-net40+sl5+win8+wp8+wpa81\FluentAssertions.Core.dll + ..\..\packages\FluentAssertions\lib\sl5\FluentAssertions.Core.dll True True - - ..\..\packages\FluentAssertions\lib\portable-net40+sl5+win8+wp8+wpa81\FluentAssertions.dll + + ..\..\packages\FluentAssertions\lib\sl5\Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.dll True True - + + + ..\..\packages\FluentAssertions\lib\wp8\FluentAssertions.dll + True + True + - ..\..\packages\FluentAssertions\lib\portable-win81+wpa81\FluentAssertions.Core.dll + ..\..\packages\FluentAssertions\lib\wp8\FluentAssertions.Core.dll True True - - ..\..\packages\FluentAssertions\lib\portable-win81+wpa81\FluentAssertions.dll + + + + + + ..\..\packages\FluentAssertions\lib\xamarin.ios\FluentAssertions.Core.dll True True @@ -249,7 +255,7 @@ - + ..\..\packages\FsCheck\lib\net45\FsCheck.dll @@ -258,7 +264,7 @@ - + ..\..\packages\FsCheck\lib\portable-net45+netcore45\FsCheck.dll @@ -267,7 +273,7 @@ - + ..\..\packages\FsCheck\lib\portable-net45+netcore45+wp8\FsCheck.dll @@ -276,7 +282,7 @@ - + ..\..\packages\FsCheck\lib\portable-net45+netcore45+wpa81+wp8\FsCheck.dll @@ -296,7 +302,7 @@ - + ..\..\packages\FSharp.Core\lib\net40\FSharp.Core.dll @@ -305,7 +311,7 @@ - + ..\..\packages\FSharp.Core\lib\portable-net45+netcore45\FSharp.Core.dll @@ -314,37 +320,28 @@ - - - - ..\..\packages\FSharp.Core\lib\portable-net45+monoandroid10+monotouch10+xamarinios10\FSharp.Core.dll - True - True - - - - + - ..\..\packages\FSharp.Core\lib\portable-net45+sl5+netcore45\FSharp.Core.dll + ..\..\packages\FSharp.Core\lib\portable-net45+netcore45+wp8\FSharp.Core.dll True True - + - ..\..\packages\FSharp.Core\lib\portable-net45+netcore45+wp8\FSharp.Core.dll + ..\..\packages\FSharp.Core\lib\portable-net45+netcore45+wpa81+wp8\FSharp.Core.dll True True - + - ..\..\packages\FSharp.Core\lib\portable-net45+netcore45+wpa81+wp8\FSharp.Core.dll + ..\..\packages\FSharp.Core\lib\portable-net45+sl5+netcore45\FSharp.Core.dll True True @@ -352,7 +349,7 @@ - + ..\..\packages\xunit.abstractions\lib\net35\xunit.abstractions.dll @@ -361,7 +358,7 @@ - + ..\..\packages\xunit.abstractions\lib\portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.abstractions.dll @@ -372,7 +369,7 @@ - + ..\..\packages\xunit.assert\lib\portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.assert.dll @@ -383,7 +380,7 @@ - + ..\..\packages\xunit.extensibility.core\lib\portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.core.dll @@ -394,5 +391,5 @@ - + \ No newline at end of file diff --git a/tests/CommandLine.Tests.Properties/packages.config b/tests/CommandLine.Tests.Properties/packages.config index 87777c53..27432dad 100644 --- a/tests/CommandLine.Tests.Properties/packages.config +++ b/tests/CommandLine.Tests.Properties/packages.config @@ -1,4 +1,4 @@ - + \ No newline at end of file diff --git a/tests/CommandLine.Tests/CommandLine.Tests.csproj b/tests/CommandLine.Tests/CommandLine.Tests.csproj index eb6e691e..5914a3a9 100644 --- a/tests/CommandLine.Tests/CommandLine.Tests.csproj +++ b/tests/CommandLine.Tests/CommandLine.Tests.csproj @@ -24,7 +24,7 @@ full false bin\Debug\ - DEBUG;TRACE + TRACE;DEBUG;SKIP_FSHARP prompt 4 false @@ -33,7 +33,7 @@ pdbonly true bin\Release\ - TRACE + TRACE;SKIP_FSHARP prompt 4 false @@ -140,38 +140,43 @@ - + - <__paket__xunit_runner_visualstudio_props>win81\xunit.runner.visualstudio - <__paket__xunit_runner_visualstudio_targets>win81\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_props>net20\xunit.runner.visualstudio - + - <__paket__xunit_runner_visualstudio_props>net20\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_props>portable-net45+win8+wp8+wpa81\xunit.runner.visualstudio - + - <__paket__xunit_runner_visualstudio_props>wpa81\xunit.runner.visualstudio - <__paket__xunit_runner_visualstudio_targets>wpa81\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_props>uap10.0\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_targets>uap10.0\xunit.runner.visualstudio - + - <__paket__xunit_runner_visualstudio_props>portable-net45+win8+wp8+wpa81\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_props>win81\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_targets>win81\xunit.runner.visualstudio + + + + + <__paket__xunit_runner_visualstudio_props>wpa81\xunit.runner.visualstudio + <__paket__xunit_runner_visualstudio_targets>wpa81\xunit.runner.visualstudio - + - + - <__paket__xunit_core_props>win8\xunit.core - <__paket__xunit_core_targets>win8\xunit.core + <__paket__xunit_core_props>Xamarin.iOS\xunit.core - + <__paket__xunit_core_props>monoandroid\xunit.core @@ -181,26 +186,27 @@ <__paket__xunit_core_props>monotouch\xunit.core - + - <__paket__xunit_core_props>wp8\xunit.core - <__paket__xunit_core_targets>wp8\xunit.core + <__paket__xunit_core_props>portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.core - + - <__paket__xunit_core_props>Xamarin.iOS\xunit.core + <__paket__xunit_core_props>portable-win81+wpa81\xunit.core + <__paket__xunit_core_targets>portable-win81+wpa81\xunit.core - + - <__paket__xunit_core_props>portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.core + <__paket__xunit_core_props>win8\xunit.core + <__paket__xunit_core_targets>win8\xunit.core - + - <__paket__xunit_core_props>portable-win81+wpa81\xunit.core - <__paket__xunit_core_targets>portable-win81+wpa81\xunit.core + <__paket__xunit_core_props>wp8\xunit.core + <__paket__xunit_core_targets>wp8\xunit.core @@ -211,182 +217,165 @@ --> - + - ..\..\packages\FluentAssertions\lib\net40\FluentAssertions.Core.dll - True - True - - - ..\..\packages\FluentAssertions\lib\net40\FluentAssertions.dll + ..\..\packages\FluentAssertions\lib\monoandroid\FluentAssertions.Core.dll True True - + - ..\..\packages\FluentAssertions\lib\net45\FluentAssertions.Core.dll + ..\..\packages\FluentAssertions\lib\monotouch\FluentAssertions.Core.dll True True + + + + - ..\..\packages\FluentAssertions\lib\net45\FluentAssertions.dll + ..\..\packages\FluentAssertions\lib\net40\FluentAssertions.dll True True - - - - - ..\..\packages\FluentAssertions\lib\monoandroid\FluentAssertions.Core.dll + ..\..\packages\FluentAssertions\lib\net40\FluentAssertions.Core.dll True True - + - - ..\..\packages\FluentAssertions\lib\monotouch\FluentAssertions.Core.dll + + ..\..\packages\FluentAssertions\lib\net45\FluentAssertions.dll True True - - - - - ..\..\packages\FluentAssertions\lib\sl5\FluentAssertions.Core.dll + ..\..\packages\FluentAssertions\lib\net45\FluentAssertions.Core.dll True True + + + + - ..\..\packages\FluentAssertions\lib\sl5\FluentAssertions.dll + ..\..\packages\FluentAssertions\lib\portable-net40+sl5+win8+wp8+wpa81\FluentAssertions.dll True True - - ..\..\packages\FluentAssertions\lib\sl5\Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.dll + + ..\..\packages\FluentAssertions\lib\portable-net40+sl5+win8+wp8+wpa81\FluentAssertions.Core.dll True True - + - - ..\..\packages\FluentAssertions\lib\wp8\FluentAssertions.Core.dll + + ..\..\packages\FluentAssertions\lib\portable-win81+wpa81\FluentAssertions.dll True True - - ..\..\packages\FluentAssertions\lib\wp8\FluentAssertions.dll + + ..\..\packages\FluentAssertions\lib\portable-win81+wpa81\FluentAssertions.Core.dll True True - + - - ..\..\packages\FluentAssertions\lib\xamarin.ios\FluentAssertions.Core.dll + + ..\..\packages\FluentAssertions\lib\sl5\FluentAssertions.dll True True - - - - - ..\..\packages\FluentAssertions\lib\portable-net40+sl5+win8+wp8+wpa81\FluentAssertions.Core.dll + ..\..\packages\FluentAssertions\lib\sl5\FluentAssertions.Core.dll True True - - ..\..\packages\FluentAssertions\lib\portable-net40+sl5+win8+wp8+wpa81\FluentAssertions.dll + + ..\..\packages\FluentAssertions\lib\sl5\Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.dll True True - + - - ..\..\packages\FluentAssertions\lib\portable-win81+wpa81\FluentAssertions.Core.dll - True - True - - ..\..\packages\FluentAssertions\lib\portable-win81+wpa81\FluentAssertions.dll + ..\..\packages\FluentAssertions\lib\wp8\FluentAssertions.dll True True - - - - - - - - ..\..\packages\FSharp.Core\lib\net20\FSharp.Core.dll + + ..\..\packages\FluentAssertions\lib\wp8\FluentAssertions.Core.dll True True - + - - ..\..\packages\FSharp.Core\lib\net40\FSharp.Core.dll + + ..\..\packages\FluentAssertions\lib\xamarin.ios\FluentAssertions.Core.dll True True - + + + - ..\..\packages\FSharp.Core\lib\portable-net45+netcore45\FSharp.Core.dll + ..\..\packages\FSharp.Core\lib\net20\FSharp.Core.dll True True - + + - ..\..\packages\FSharp.Core\lib\portable-net45+monoandroid10+monotouch10+xamarinios10\FSharp.Core.dll + ..\..\packages\FSharp.Core\lib\portable-net45+netcore45\FSharp.Core.dll True True - + - ..\..\packages\FSharp.Core\lib\portable-net45+sl5+netcore45\FSharp.Core.dll + ..\..\packages\FSharp.Core\lib\portable-net45+netcore45+wp8\FSharp.Core.dll True True - + - ..\..\packages\FSharp.Core\lib\portable-net45+netcore45+wp8\FSharp.Core.dll + ..\..\packages\FSharp.Core\lib\portable-net45+netcore45+wpa81+wp8\FSharp.Core.dll True True - + - ..\..\packages\FSharp.Core\lib\portable-net45+netcore45+wpa81+wp8\FSharp.Core.dll + ..\..\packages\FSharp.Core\lib\portable-net45+sl5+netcore45\FSharp.Core.dll True True @@ -394,7 +383,7 @@ - + ..\..\packages\xunit.abstractions\lib\net35\xunit.abstractions.dll @@ -403,7 +392,7 @@ - + ..\..\packages\xunit.abstractions\lib\portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.abstractions.dll @@ -414,7 +403,7 @@ - + ..\..\packages\xunit.assert\lib\portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.assert.dll @@ -425,7 +414,7 @@ - + ..\..\packages\xunit.extensibility.core\lib\portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.core.dll @@ -436,5 +425,5 @@ - + \ No newline at end of file diff --git a/tests/CommandLine.Tests/packages.config b/tests/CommandLine.Tests/packages.config index 36ce25b6..d6c88f8b 100644 --- a/tests/CommandLine.Tests/packages.config +++ b/tests/CommandLine.Tests/packages.config @@ -1,4 +1,4 @@ - + \ No newline at end of file From d5f25c7e335dcb1f90858f34e9d24a12c5d6a748 Mon Sep 17 00:00:00 2001 From: Eric Newton Date: Wed, 10 Jan 2018 17:37:22 -0500 Subject: [PATCH 07/14] turn on xml documentation generation in netstandard build --- src/CommandLine/CommandLine.csproj | 2 ++ src/CommandLine/project.json | 1 + 2 files changed, 3 insertions(+) diff --git a/src/CommandLine/CommandLine.csproj b/src/CommandLine/CommandLine.csproj index 6e44996b..8f829c9f 100644 --- a/src/CommandLine/CommandLine.csproj +++ b/src/CommandLine/CommandLine.csproj @@ -24,6 +24,7 @@ TRACE;DEBUG;CSX_EITHER_INTERNAL; CSX_REM_EITHER_BEYOND_2; CSX_ENUM_INTERNAL; ERRH_INTERNAL; ERRH_DISABLE_INLINE_METHODS; CSX_MAYBE_INTERNAL; CSX_REM_EITHER_FUNC;NET40;SKIP_FSHARP prompt 4 + true bin\Debug\CommandLine.XML @@ -33,6 +34,7 @@ TRACE;CSX_EITHER_INTERNAL; CSX_REM_EITHER_BEYOND_2; CSX_ENUM_INTERNAL; ERRH_INTERNAL; ERRH_DISABLE_INLINE_METHODS; CSX_MAYBE_INTERNAL; CSX_REM_EITHER_FUNC;NET40;SKIP_FSHARP prompt 4 + true bin\Release\CommandLine.XML diff --git a/src/CommandLine/project.json b/src/CommandLine/project.json index 6c9e0993..9a68f725 100644 --- a/src/CommandLine/project.json +++ b/src/CommandLine/project.json @@ -22,6 +22,7 @@ "define": [ "CSX_REM_EITHER_FUNC", "SKIP_FSHARP" ], + "xmlDoc": true, "compile": { "include": [ "../CommandLine/**/*.cs", From 8de3cd41b23a4f8ae3d7be757eff09bb778e7634 Mon Sep 17 00:00:00 2001 From: Eric Newton Date: Wed, 10 Jan 2018 17:37:55 -0500 Subject: [PATCH 08/14] paket updated this file --- .paket/Paket.Restore.targets | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.paket/Paket.Restore.targets b/.paket/Paket.Restore.targets index 71367734..a86be3a1 100644 --- a/.paket/Paket.Restore.targets +++ b/.paket/Paket.Restore.targets @@ -18,6 +18,11 @@ $(PaketToolsPath)paket.exe "$(PaketExePath)" $(MonoPath) --runtime=v4.0.30319 "$(PaketExePath)" + + + <_PaketExeExtension>$([System.IO.Path]::GetExtension("$(PaketExePath)")) + dotnet "$(PaketExePath)" + $(PaketRootPath)paket.bootstrapper.exe $(PaketToolsPath)paket.bootstrapper.exe "$(PaketBootStrapperExePath)" From 8b7c70d0f65d98f40037ec9da4c8ee814db8f911 Mon Sep 17 00:00:00 2001 From: Eric Newton Date: Wed, 10 Jan 2018 18:05:56 -0500 Subject: [PATCH 09/14] updates to appveyor to create a build matrix --- CommandLine.nuspec => CommandLine.base.nuspec | 0 appveyor.yml | 21 ++++++++++++------- build-nuget-pack.cmd | 17 +++++++++++++++ 3 files changed, 31 insertions(+), 7 deletions(-) rename CommandLine.nuspec => CommandLine.base.nuspec (100%) create mode 100644 build-nuget-pack.cmd diff --git a/CommandLine.nuspec b/CommandLine.base.nuspec similarity index 100% rename from CommandLine.nuspec rename to CommandLine.base.nuspec diff --git a/appveyor.yml b/appveyor.yml index 151a82c6..26010834 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -31,20 +31,27 @@ assembly_info: assembly_file_version: '{version}' assembly_informational_version: $(APPVEYOR_BUILD_VERSION) +environment: + matrix: + - BUILD_TARGET: base + NUSPEC_FILE: CommandLine + - BUILD_TARGET: fsharp + NUSPEC_FILE: CommandLine.fsharp + build_script: - - cmd: build.cmd + - cmd: build.cmd %BUILD_TARGET% after_build: - ps: | - get-childitem build\* -include *.dll | foreach-object { "{0}`t{1}" -f $_.Name, [System.Diagnostics.FileVersionInfo]::GetVersionInfo($_).FileVersion } + powershell get-childitem Release\* -include *.dll | foreach-object { "{0}`t{1}" -f $_.Path, [System.Diagnostics.FileVersionInfo]::GetVersionInfo($_).FileVersion } - nuget pack CommandLine.nuspec -version "$env:APPVEYOR_BUILD_VERSION" + .\build-nuget-pack.cmd $env:BUILD_TARGET $env:NUSPEC_FILE test: off #tests handled within FAKE artifacts: -- path: '*.nupkg' - name: NugetPackage +- path: 'Release/**/*.nupkg' + name: NugetPackages on_failure: - cmd: | @@ -55,8 +62,8 @@ deploy: - provider: NuGet api_key: secure: +Zxb8M5W+UJV1yd9n8seu3PvH/hGNPEmgriGBnsSmtxjKPQAJ4+iL7tKAmfPHAuG - artifact: 'NuGetPackage' + artifact: 'NuGetPackages' on: - branch: master + branch: /master|v\d+\.\d+\.\d+[.*]/ APPVEYOR_REPO_TAG: true diff --git a/build-nuget-pack.cmd b/build-nuget-pack.cmd new file mode 100644 index 00000000..b42debfd --- /dev/null +++ b/build-nuget-pack.cmd @@ -0,0 +1,17 @@ +@ECHO OFF +setlocal + +if "%1" == "" goto :USAGE + +pushd Release\%1 + +copy ..\..\README.md +copy ..\..\CommandLine.%1.nuspec . +nuget pack "CommandLine.%1.nuspec" -properties Version=%APPVEYOR_BUILD_VERSION% +if errorlevel 1 popd&exit 1 /b +goto :END + +:USAGE + +:END +popd From 9f78de8635fc07471249644a19f025999434d24b Mon Sep 17 00:00:00 2001 From: Eric Newton Date: Wed, 10 Jan 2018 18:33:12 -0500 Subject: [PATCH 10/14] appveyor build updates --- CommandLine.base.nuspec | 2 +- Commandline-fsharp.nuspec => Commandline.FSharp.nuspec | 2 +- appveyor.yml | 2 +- build-nuget-pack.cmd | 6 ++++-- 4 files changed, 7 insertions(+), 5 deletions(-) rename Commandline-fsharp.nuspec => Commandline.FSharp.nuspec (98%) diff --git a/CommandLine.base.nuspec b/CommandLine.base.nuspec index ab0cfb05..57368527 100644 --- a/CommandLine.base.nuspec +++ b/CommandLine.base.nuspec @@ -5,7 +5,7 @@ $version$ Command Line Parser Library gsscoder nemec ericnewton76 - Terse syntax C# command line parser for .NET with F# support. The Command Line Parser Library offers to CLR applications a clean and concise API for manipulating command line arguments and related tasks. + Terse syntax C# command line parser for .NET. For FSharp support see CommandLineParser.FSharp. The Command Line Parser Library offers to CLR applications a clean and concise API for manipulating command line arguments and related tasks. Copyright (c) 2005 - 2018 Giacomo Stelluti Scala & Contributors https://github.com/commandlineparser/commandline/blob/master/License.md diff --git a/Commandline-fsharp.nuspec b/Commandline.FSharp.nuspec similarity index 98% rename from Commandline-fsharp.nuspec rename to Commandline.FSharp.nuspec index 6fb4ed83..b08c9b35 100644 --- a/Commandline-fsharp.nuspec +++ b/Commandline.FSharp.nuspec @@ -1,7 +1,7 @@  - CommandLineParser + CommandLineParser.FSharp $version$ Command Line Parser Library gsscoder nemec ericnewton76 diff --git a/appveyor.yml b/appveyor.yml index 26010834..6d09dc2c 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -36,7 +36,7 @@ environment: - BUILD_TARGET: base NUSPEC_FILE: CommandLine - BUILD_TARGET: fsharp - NUSPEC_FILE: CommandLine.fsharp + NUSPEC_FILE: CommandLine.FSharp build_script: - cmd: build.cmd %BUILD_TARGET% diff --git a/build-nuget-pack.cmd b/build-nuget-pack.cmd index b42debfd..ef3af1f2 100644 --- a/build-nuget-pack.cmd +++ b/build-nuget-pack.cmd @@ -2,16 +2,18 @@ setlocal if "%1" == "" goto :USAGE +if "%2" == "" goto :USAGE pushd Release\%1 copy ..\..\README.md -copy ..\..\CommandLine.%1.nuspec . -nuget pack "CommandLine.%1.nuspec" -properties Version=%APPVEYOR_BUILD_VERSION% +copy ..\..\%2.nuspec . +nuget pack "%2.nuspec" -properties Version=%APPVEYOR_BUILD_VERSION% if errorlevel 1 popd&exit 1 /b goto :END :USAGE +echo build-nuget-pack :END popd From 76b2448e56cab1b91b1623f17b543fdad2fbb770 Mon Sep 17 00:00:00 2001 From: Eric Newton Date: Wed, 10 Jan 2018 18:37:55 -0500 Subject: [PATCH 11/14] restore appveyor auto testing --- appveyor.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index 6d09dc2c..32a96b1c 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -47,7 +47,7 @@ after_build: .\build-nuget-pack.cmd $env:BUILD_TARGET $env:NUSPEC_FILE -test: off #tests handled within FAKE +test: auto artifacts: - path: 'Release/**/*.nupkg' From 032489e5e4810227ffefd8573824852b9e6ab59e Mon Sep 17 00:00:00 2001 From: Eric Newton Date: Wed, 10 Jan 2018 18:38:15 -0500 Subject: [PATCH 12/14] align filename to NUSPEC_FILE variable in appveyoryml --- CommandLine.base.nuspec => CommandLine.nuspec | 88 +++++++++---------- 1 file changed, 44 insertions(+), 44 deletions(-) rename CommandLine.base.nuspec => CommandLine.nuspec (98%) diff --git a/CommandLine.base.nuspec b/CommandLine.nuspec similarity index 98% rename from CommandLine.base.nuspec rename to CommandLine.nuspec index 57368527..86eb1a0c 100644 --- a/CommandLine.base.nuspec +++ b/CommandLine.nuspec @@ -1,44 +1,44 @@ - - - - CommandLineParser - $version$ - Command Line Parser Library - gsscoder nemec ericnewton76 - Terse syntax C# command line parser for .NET. For FSharp support see CommandLineParser.FSharp. The Command Line Parser Library offers to CLR applications a clean and concise API for manipulating command line arguments and related tasks. - - Copyright (c) 2005 - 2018 Giacomo Stelluti Scala & Contributors - https://github.com/commandlineparser/commandline/blob/master/License.md - https://github.com/commandlineparser/commandline - Giacomo Stelluti Scala - https://raw.githubusercontent.com/commandlineparser/commandline/master/art/CommandLine20.png - false - command line commandline argument option parser parsing library syntax shell - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + CommandLineParser + $version$ + Command Line Parser Library + gsscoder nemec ericnewton76 + Terse syntax C# command line parser for .NET. For FSharp support see CommandLineParser.FSharp. The Command Line Parser Library offers to CLR applications a clean and concise API for manipulating command line arguments and related tasks. + + Copyright (c) 2005 - 2018 Giacomo Stelluti Scala & Contributors + https://github.com/commandlineparser/commandline/blob/master/License.md + https://github.com/commandlineparser/commandline + Giacomo Stelluti Scala + https://raw.githubusercontent.com/commandlineparser/commandline/master/art/CommandLine20.png + false + command line commandline argument option parser parsing library syntax shell + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 8ea031dc15954fade20586578a7d529df5647d7e Mon Sep 17 00:00:00 2001 From: Eric Newton Date: Wed, 10 Jan 2018 18:40:19 -0500 Subject: [PATCH 13/14] added appveyor dotnet csproj patching --- appveyor.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/appveyor.yml b/appveyor.yml index 32a96b1c..255504e9 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -24,12 +24,22 @@ init: Update-AppveyorBuild -Version "$ver-$commit" } +#version patching assembly_info: file: src\SharedAssemblyInfo.cs patch: true assembly_version: '{version}' assembly_file_version: '{version}' assembly_informational_version: $(APPVEYOR_BUILD_VERSION) +dotnet_csproj: + patch: true + file: '**\*.csproj' + version: '{version}' + package_version: '{version}' + assembly_version: '{version}' + file_version: '{version}' + informational_version: '{version}' + environment: matrix: From 6e52805a11a455396581b7b3d8a168ec1c6e1ff3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ce=CC=81dric=20Luthi?= Date: Mon, 8 Jan 2018 10:50:52 +0100 Subject: [PATCH 14/14] Update copyright in unit tests --- tests/CommandLine.Tests/Unit/ParserTests.cs | 16 ++++++++-------- .../CommandLine.Tests/Unit/Text/HelpTextTests.cs | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/tests/CommandLine.Tests/Unit/ParserTests.cs b/tests/CommandLine.Tests/Unit/ParserTests.cs index 5ecd085c..43b44e27 100644 --- a/tests/CommandLine.Tests/Unit/ParserTests.cs +++ b/tests/CommandLine.Tests/Unit/ParserTests.cs @@ -366,7 +366,7 @@ public void Implicit_help_screen_in_verb_scenario() var lines = result.ToNotEmptyLines().TrimStringArray(); #if !PLATFORM_DOTNET lines[0].Should().StartWithEquivalent("CommandLine"); - lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2015 Giacomo Stelluti Scala"); + lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2018 Giacomo Stelluti Scala & Contributors"); #else // Takes the name of the xUnit test program lines[0].Should().StartWithEquivalent("xUnit"); @@ -397,7 +397,7 @@ public void Double_dash_help_dispalys_verbs_index_in_verbs_scenario() var lines = result.ToNotEmptyLines().TrimStringArray(); #if !PLATFORM_DOTNET lines[0].Should().StartWithEquivalent("CommandLine"); - lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2015 Giacomo Stelluti Scala"); + lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2018 Giacomo Stelluti Scala & Contributors"); #else // Takes the name of the xUnit test program lines[0].Should().StartWithEquivalent("xUnit"); @@ -452,7 +452,7 @@ public void Errors_of_type_MutuallyExclusiveSetError_are_properly_formatted() var lines = result.ToNotEmptyLines().TrimStringArray(); #if !PLATFORM_DOTNET lines[0].Should().StartWithEquivalent("CommandLine"); - lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2015 Giacomo Stelluti Scala"); + lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2018 Giacomo Stelluti Scala & Contributors"); #else // Takes the name of the xUnit test program lines[0].Should().StartWithEquivalent("xUnit"); @@ -501,7 +501,7 @@ public void Properly_formatted_help_screen_is_displayed_when_usage_is_defined_in var lines = result.ToNotEmptyLines().TrimStringArray(); #if !PLATFORM_DOTNET lines[0].Should().StartWithEquivalent("CommandLine"); - lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2015 Giacomo Stelluti Scala"); + lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2018 Giacomo Stelluti Scala & Contributors"); #else // Takes the name of the xUnit test program lines[0].Should().StartWithEquivalent("xUnit"); @@ -541,7 +541,7 @@ public void Properly_formatted_help_screen_is_displayed_when_there_is_a_hidden_v var lines = result.ToNotEmptyLines().TrimStringArray(); #if !PLATFORM_DOTNET lines[0].Should().StartWithEquivalent("CommandLine"); - lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2015 Giacomo Stelluti Scala"); + lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2018 Giacomo Stelluti Scala & Contributors"); #else // Takes the name of the xUnit test program lines[0].Should().StartWithEquivalent("xUnit"); @@ -571,7 +571,7 @@ public void Properly_formatted_help_screen_is_displayed_when_there_is_a_hidden_v var lines = result.ToNotEmptyLines().TrimStringArray(); #if !PLATFORM_DOTNET lines[0].Should().StartWithEquivalent("CommandLine"); - lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2015 Giacomo Stelluti Scala"); + lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2018 Giacomo Stelluti Scala & Contributors"); #else // Takes the name of the xUnit test program lines[0].Should().StartWithEquivalent("xUnit"); @@ -639,7 +639,7 @@ public void Specific_verb_help_screen_should_be_displayed_regardless_other_argum var lines = result.ToNotEmptyLines().TrimStringArray(); #if !PLATFORM_DOTNET lines[0].Should().StartWithEquivalent("CommandLine"); - lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2015 Giacomo Stelluti Scala"); + lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2018 Giacomo Stelluti Scala & Contributors"); #else // Takes the name of the xUnit test program lines[0].Should().StartWithEquivalent("xUnit"); @@ -709,7 +709,7 @@ public void Properly_formatted_help_screen_excludes_help_as_unknown_option() var lines = result.ToNotEmptyLines().TrimStringArray(); #if !PLATFORM_DOTNET lines[0].Should().StartWithEquivalent("CommandLine"); - lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2015 Giacomo Stelluti Scala"); + lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2018 Giacomo Stelluti Scala & Contributors"); #else // Takes the name of the xUnit test program lines[0].Should().StartWithEquivalent("xUnit"); diff --git a/tests/CommandLine.Tests/Unit/Text/HelpTextTests.cs b/tests/CommandLine.Tests/Unit/Text/HelpTextTests.cs index e041026a..90ca41b5 100644 --- a/tests/CommandLine.Tests/Unit/Text/HelpTextTests.cs +++ b/tests/CommandLine.Tests/Unit/Text/HelpTextTests.cs @@ -390,7 +390,7 @@ public void Invoke_AutoBuild_for_Verbs_with_specific_verb_returns_appropriate_fo #if !PLATFORM_DOTNET lines[0].Should().StartWithEquivalent("CommandLine"); - lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2015 Giacomo Stelluti Scala"); + lines[1].ShouldBeEquivalentTo("Copyright (c) 2005 - 2018 Giacomo Stelluti Scala & Contributors"); #else // Takes the name of the xUnit test program lines[0].Should().StartWithEquivalent("xUnit");