From b98670a3bfc91906c6ce6b32e2748f93e0a56ca9 Mon Sep 17 00:00:00 2001 From: Jesse Abrahams Date: Tue, 10 Oct 2023 12:44:46 -0700 Subject: [PATCH 01/11] Upgraded to .NET 6 --- global.json | 5 - .../HarSharp.UnitTests.csproj | 10 +- src/HarSharp.UnitTests/packages.config | 4 - src/HarSharp.sln | 108 +++++++++--------- src/HarSharp/HarSharp.csproj | 7 +- 5 files changed, 57 insertions(+), 77 deletions(-) delete mode 100644 global.json delete mode 100644 src/HarSharp.UnitTests/packages.config diff --git a/global.json b/global.json deleted file mode 100644 index 5876fd4..0000000 --- a/global.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "sdk": { - "version": "2.2.108" - } -} \ No newline at end of file diff --git a/src/HarSharp.UnitTests/HarSharp.UnitTests.csproj b/src/HarSharp.UnitTests/HarSharp.UnitTests.csproj index 4480ddd..ef0ce51 100644 --- a/src/HarSharp.UnitTests/HarSharp.UnitTests.csproj +++ b/src/HarSharp.UnitTests/HarSharp.UnitTests.csproj @@ -1,11 +1,8 @@  - - netcoreapp2.1 - + net6.0 false - all @@ -15,15 +12,12 @@ - - PreserveNewest - + - \ No newline at end of file diff --git a/src/HarSharp.UnitTests/packages.config b/src/HarSharp.UnitTests/packages.config deleted file mode 100644 index d4e241a..0000000 --- a/src/HarSharp.UnitTests/packages.config +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/src/HarSharp.sln b/src/HarSharp.sln index 63ed1c8..8097d6a 100644 --- a/src/HarSharp.sln +++ b/src/HarSharp.sln @@ -1,54 +1,54 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.26124.0 -MinimumVisualStudioVersion = 15.0.26124.0 -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{70A15BB4-14C0-449C-B0A7-B06506F2ED43}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HarSharp", "HarSharp\HarSharp.csproj", "{22FBDC05-C3A1-44E1-867E-737E59A3F4E3}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HarSharp.UnitTests", "HarSharp.UnitTests\HarSharp.UnitTests.csproj", "{41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Debug|x64 = Debug|x64 - Debug|x86 = Debug|x86 - Release|Any CPU = Release|Any CPU - Release|x64 = Release|x64 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Debug|x64.ActiveCfg = Debug|Any CPU - {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Debug|x64.Build.0 = Debug|Any CPU - {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Debug|x86.ActiveCfg = Debug|Any CPU - {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Debug|x86.Build.0 = Debug|Any CPU - {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Release|Any CPU.Build.0 = Release|Any CPU - {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Release|x64.ActiveCfg = Release|Any CPU - {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Release|x64.Build.0 = Release|Any CPU - {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Release|x86.ActiveCfg = Release|Any CPU - {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Release|x86.Build.0 = Release|Any CPU - {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Debug|x64.ActiveCfg = Debug|Any CPU - {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Debug|x64.Build.0 = Debug|Any CPU - {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Debug|x86.ActiveCfg = Debug|Any CPU - {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Debug|x86.Build.0 = Debug|Any CPU - {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Release|Any CPU.Build.0 = Release|Any CPU - {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Release|x64.ActiveCfg = Release|Any CPU - {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Release|x64.Build.0 = Release|Any CPU - {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Release|x86.ActiveCfg = Release|Any CPU - {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Release|x86.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(NestedProjects) = preSolution - {22FBDC05-C3A1-44E1-867E-737E59A3F4E3} = {70A15BB4-14C0-449C-B0A7-B06506F2ED43} - {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3} = {70A15BB4-14C0-449C-B0A7-B06506F2ED43} - EndGlobalSection -EndGlobal + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26124.0 +MinimumVisualStudioVersion = 15.0.26124.0 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{70A15BB4-14C0-449C-B0A7-B06506F2ED43}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HarSharp", "HarSharp\HarSharp.csproj", "{22FBDC05-C3A1-44E1-867E-737E59A3F4E3}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HarSharp.UnitTests", "HarSharp.UnitTests\HarSharp.UnitTests.csproj", "{41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Debug|x64.ActiveCfg = Debug|Any CPU + {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Debug|x64.Build.0 = Debug|Any CPU + {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Debug|x86.ActiveCfg = Debug|Any CPU + {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Debug|x86.Build.0 = Debug|Any CPU + {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Release|Any CPU.Build.0 = Release|Any CPU + {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Release|x64.ActiveCfg = Release|Any CPU + {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Release|x64.Build.0 = Release|Any CPU + {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Release|x86.ActiveCfg = Release|Any CPU + {22FBDC05-C3A1-44E1-867E-737E59A3F4E3}.Release|x86.Build.0 = Release|Any CPU + {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Debug|x64.ActiveCfg = Debug|Any CPU + {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Debug|x64.Build.0 = Debug|Any CPU + {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Debug|x86.ActiveCfg = Debug|Any CPU + {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Debug|x86.Build.0 = Debug|Any CPU + {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Release|Any CPU.Build.0 = Release|Any CPU + {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Release|x64.ActiveCfg = Release|Any CPU + {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Release|x64.Build.0 = Release|Any CPU + {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Release|x86.ActiveCfg = Release|Any CPU + {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3}.Release|x86.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {22FBDC05-C3A1-44E1-867E-737E59A3F4E3} = {70A15BB4-14C0-449C-B0A7-B06506F2ED43} + {41BAC9B8-18EC-4781-AF33-4D0B820DF9B3} = {70A15BB4-14C0-449C-B0A7-B06506F2ED43} + EndGlobalSection +EndGlobal diff --git a/src/HarSharp/HarSharp.csproj b/src/HarSharp/HarSharp.csproj index d166d6e..9fb53d2 100644 --- a/src/HarSharp/HarSharp.csproj +++ b/src/HarSharp/HarSharp.csproj @@ -1,10 +1,5 @@  - - netstandard2.0 + net6.0 - - - - \ No newline at end of file From bbab603aa2fb5455b2c77a573116d785455781f0 Mon Sep 17 00:00:00 2001 From: Jesse Abrahams Date: Tue, 10 Oct 2023 12:45:16 -0700 Subject: [PATCH 02/11] Switch to System.Text.Json --- src/HarSharp/HarConvert.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/HarSharp/HarConvert.cs b/src/HarSharp/HarConvert.cs index 10c02af..a46ef9d 100644 --- a/src/HarSharp/HarConvert.cs +++ b/src/HarSharp/HarConvert.cs @@ -1,7 +1,7 @@ using System; using System.IO; using System.Linq; -using Newtonsoft.Json; +using System.Text.Json; namespace HarSharp { @@ -22,7 +22,7 @@ public static Har Deserialize(string harJson) throw new ArgumentNullException(nameof(harJson)); } - var result = JsonConvert.DeserializeObject(harJson); + var result = JsonSerializer.Deserialize(harJson); TransformPartialRedirectUrlToFull(result); From 2e36081d1cdda2fafd3dd87c0db975cc6d3e2bb1 Mon Sep 17 00:00:00 2001 From: Jesse Abrahams Date: Tue, 10 Oct 2023 12:47:31 -0700 Subject: [PATCH 03/11] Added stream-based read to help with larger files --- src/HarSharp/HarConvert.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/HarSharp/HarConvert.cs b/src/HarSharp/HarConvert.cs index a46ef9d..edfbc26 100644 --- a/src/HarSharp/HarConvert.cs +++ b/src/HarSharp/HarConvert.cs @@ -36,7 +36,12 @@ public static Har Deserialize(string harJson) /// The HAR entity. public static Har DeserializeFromFile(string fileName) { - return Deserialize(File.ReadAllText(fileName)); + using var stream = File.OpenRead(fileName); + var result = JsonSerializer.Deserialize(stream); + + TransformPartialRedirectUrlToFull(result); + + return result; } /// From 7c59b0530cef50aedb88e17b11084e12030d12ef Mon Sep 17 00:00:00 2001 From: Jesse Abrahams Date: Tue, 10 Oct 2023 13:04:24 -0700 Subject: [PATCH 04/11] Added System.Text.Json serializer options, which is required in particular for case insensitivity --- src/HarSharp/HarConvert.cs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/HarSharp/HarConvert.cs b/src/HarSharp/HarConvert.cs index edfbc26..21673c4 100644 --- a/src/HarSharp/HarConvert.cs +++ b/src/HarSharp/HarConvert.cs @@ -10,6 +10,12 @@ namespace HarSharp /// public static class HarConvert { + private static readonly JsonSerializerOptions _options = new() + { + PropertyNameCaseInsensitive = true, + DefaultIgnoreCondition = System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull + }; + /// /// Deserialize HAR content to a HAR entity. /// @@ -22,7 +28,7 @@ public static Har Deserialize(string harJson) throw new ArgumentNullException(nameof(harJson)); } - var result = JsonSerializer.Deserialize(harJson); + var result = JsonSerializer.Deserialize(harJson, _options); TransformPartialRedirectUrlToFull(result); @@ -37,7 +43,7 @@ public static Har Deserialize(string harJson) public static Har DeserializeFromFile(string fileName) { using var stream = File.OpenRead(fileName); - var result = JsonSerializer.Deserialize(stream); + var result = JsonSerializer.Deserialize(stream, _options); TransformPartialRedirectUrlToFull(result); From 91df632a841c29455f836ef4e68efc4e40a4de81 Mon Sep 17 00:00:00 2001 From: Jesse Abrahams Date: Tue, 10 Oct 2023 13:05:10 -0700 Subject: [PATCH 05/11] Changed `private set` lists to public so the deserializer could work properly --- src/HarSharp/Log.cs | 4 ++-- src/HarSharp/MessageBase.cs | 4 ++-- src/HarSharp/PostData.cs | 2 +- src/HarSharp/Request.cs | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/HarSharp/Log.cs b/src/HarSharp/Log.cs index 072331f..d7a8e37 100644 --- a/src/HarSharp/Log.cs +++ b/src/HarSharp/Log.cs @@ -42,12 +42,12 @@ public Log() /// /// Gets the pages. /// - public IList Pages { get; private set; } + public IList Pages { get; set; } /// /// Gets the entries. /// - public IList Entries { get; private set; } + public IList Entries { get; set; } #endregion } } diff --git a/src/HarSharp/MessageBase.cs b/src/HarSharp/MessageBase.cs index 07efd84..9e89afd 100644 --- a/src/HarSharp/MessageBase.cs +++ b/src/HarSharp/MessageBase.cs @@ -27,12 +27,12 @@ protected MessageBase() /// /// Gets the list of cookie objects. /// - public IList Cookies { get; private set; } + public IList Cookies { get; set; } /// /// Gets the list of header objects. /// - public IList
Headers { get; private set; } + public IList
Headers { get; set; } /// /// Gets or sets the total number of bytes from the start of the HTTP request message until (and including) the double CRLF before the body. diff --git a/src/HarSharp/PostData.cs b/src/HarSharp/PostData.cs index 7455aad..00660a5 100644 --- a/src/HarSharp/PostData.cs +++ b/src/HarSharp/PostData.cs @@ -31,7 +31,7 @@ public PostData() /// /// Gets the list of posted parameters (in case of URL encoded parameters). /// - public IList Params { get; private set; } + public IList Params { get; set; } /// /// Gets or sets the plain text posted data. diff --git a/src/HarSharp/Request.cs b/src/HarSharp/Request.cs index e9d4143..fc7be17 100644 --- a/src/HarSharp/Request.cs +++ b/src/HarSharp/Request.cs @@ -37,7 +37,7 @@ public Request() /// /// Gets the list of query parameter objects. /// - public IList QueryString { get; private set; } + public IList QueryString { get; set; } /// /// Gets or sets the posted data info. From c6f3fee860cb5dd82a72205704ef0cc25366a344 Mon Sep 17 00:00:00 2001 From: Jesse Abrahams <31041350+jabberhams@users.noreply.github.com> Date: Fri, 25 Oct 2024 08:30:10 -0400 Subject: [PATCH 06/11] Update appveyor.yml os set to VS 2022, file patching changed to dotnet_csproj --- appveyor.yml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 2326409..54bd4c1 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,12 +1,14 @@ -version: 2.0.{build} -os: Visual Studio 2017 +version: 3.0.{build} +os: Visual Studio 2022 configuration: Release -assembly_info: +dotnet_csproj: patch: true - file: '**\AssemblyInfo.*' + file: '**\*.csproj' + version: '{version}' + package_version: '{version}' assembly_version: '{version}' - assembly_file_version: '{version}' - assembly_informational_version: '{version}' + file_version: '{version}' + informational_version: '{version}' before_build: - cmd: dotnet --version @@ -23,4 +25,4 @@ test: off artifacts: - path: .\src\nuget\*.nupkg - name: Libraries NuGet packages \ No newline at end of file + name: Libraries NuGet packages From 2bd6ae64beb1eae2dfc3ea9a022bc79434e600b7 Mon Sep 17 00:00:00 2001 From: Jesse Abrahams <31041350+jabberhams@users.noreply.github.com> Date: Fri, 25 Oct 2024 10:46:28 -0400 Subject: [PATCH 07/11] Update build.cake tools and addins to latest --- build.cake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/build.cake b/build.cake index 215f3e6..2fcfd85 100644 --- a/build.cake +++ b/build.cake @@ -1,6 +1,6 @@ -#tool nuget:?package=MSBuild.SonarQube.Runner.Tool&version=4.6.0 -#addin nuget:?package=Cake.Sonar&version=1.1.22 -#addin nuget:?package=Cake.Git&version=0.19.0 +#tool nuget:?package=MSBuild.SonarQube.Runner.Tool&version=4.8.0 +#addin nuget:?package=Cake.Sonar&version=1.1.33 +#addin nuget:?package=Cake.Git&version=4.0.0 var target = Argument("target", "Default"); var solutionDir = "src"; @@ -64,4 +64,4 @@ Task("Default") .Does(()=> { }); -RunTarget(target); \ No newline at end of file +RunTarget(target); From def505d7694f9bbd6e5411dc1205bb43acbe7263 Mon Sep 17 00:00:00 2001 From: Jesse Abrahams <31041350+jabberhams@users.noreply.github.com> Date: Fri, 25 Oct 2024 12:00:59 -0400 Subject: [PATCH 08/11] Update build.cake --- build.cake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.cake b/build.cake index 2fcfd85..94e3b84 100644 --- a/build.cake +++ b/build.cake @@ -1,5 +1,5 @@ -#tool nuget:?package=MSBuild.SonarQube.Runner.Tool&version=4.8.0 #addin nuget:?package=Cake.Sonar&version=1.1.33 +#tool nuget:?package=MSBuild.SonarQube.Runner.Tool&version=4.8.0 #addin nuget:?package=Cake.Git&version=4.0.0 var target = Argument("target", "Default"); From 1351cb5dad6e6b08a2a589e98ad67d69759b3baf Mon Sep 17 00:00:00 2001 From: Jesse Abrahams <31041350+jabberhams@users.noreply.github.com> Date: Fri, 25 Oct 2024 12:05:13 -0400 Subject: [PATCH 09/11] Update build.cake --- build.cake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/build.cake b/build.cake index 94e3b84..5a4a124 100644 --- a/build.cake +++ b/build.cake @@ -1,6 +1,6 @@ -#addin nuget:?package=Cake.Sonar&version=1.1.33 -#tool nuget:?package=MSBuild.SonarQube.Runner.Tool&version=4.8.0 -#addin nuget:?package=Cake.Git&version=4.0.0 +#tool nuget:?package=MSBuild.SonarQube.Runner.Tool +#addin nuget:?package=Cake.Sonar +#addin nuget:?package=Cake.Git var target = Argument("target", "Default"); var solutionDir = "src"; From 8056d7f624e42925971d9f6b8ac81b628aa389ed Mon Sep 17 00:00:00 2001 From: Jesse Abrahams <31041350+jabberhams@users.noreply.github.com> Date: Fri, 25 Oct 2024 12:08:27 -0400 Subject: [PATCH 10/11] Update build.cake --- build.cake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/build.cake b/build.cake index 5a4a124..4da17e8 100644 --- a/build.cake +++ b/build.cake @@ -1,6 +1,6 @@ -#tool nuget:?package=MSBuild.SonarQube.Runner.Tool -#addin nuget:?package=Cake.Sonar -#addin nuget:?package=Cake.Git +#tool nuget:?package=MSBuild.SonarQube.Runner.Tool&version=4.6.0 +#addin nuget:?package=Cake.Sonar&version=1.1.22 +#addin nuget:?package=Cake.Git&version=4.0.0 var target = Argument("target", "Default"); var solutionDir = "src"; From dd34de5bdf9f05088d49a7a47d785a701d5789f3 Mon Sep 17 00:00:00 2001 From: Jesse Abrahams <31041350+jabberhams@users.noreply.github.com> Date: Sat, 26 Oct 2024 15:14:51 -0400 Subject: [PATCH 11/11] Update build.cake --- build.cake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.cake b/build.cake index 4da17e8..9bd6d53 100644 --- a/build.cake +++ b/build.cake @@ -1,6 +1,6 @@ #tool nuget:?package=MSBuild.SonarQube.Runner.Tool&version=4.6.0 #addin nuget:?package=Cake.Sonar&version=1.1.22 -#addin nuget:?package=Cake.Git&version=4.0.0 +#addin nuget:?package=Cake.Git&version=0.19.0 var target = Argument("target", "Default"); var solutionDir = "src";