From 0c36c87330bb89a4b39d69703263dc14f10831ab Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 17 Apr 2023 12:13:59 -0600 Subject: [PATCH 001/257] Copy the .config file when applying the template --- Apply-Template.ps1 | 1 + 1 file changed, 1 insertion(+) diff --git a/Apply-Template.ps1 b/Apply-Template.ps1 index 12bfaa129..1c7733558 100644 --- a/Apply-Template.ps1 +++ b/Apply-Template.ps1 @@ -31,6 +31,7 @@ try { Write-Host "Updating $Path" robocopy /mir $PSScriptRoot/azure-pipelines $Path/azure-pipelines +robocopy /mir $PSScriptRoot/.config $Path/.config robocopy /mir $PSScriptRoot/.devcontainer $Path/.devcontainer robocopy /mir $PSScriptRoot/.github $Path/.github robocopy /mir $PSScriptRoot/.vscode $Path/.vscode From 591d64ee9e9fbe3311308d3c57cdb80f66353086 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 25 Apr 2023 09:50:33 -0600 Subject: [PATCH 002/257] Upgrade `actions/checkout` GitHub action to v3 This resolves a warning about old node.js version based github actions. --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7718f84ad..3fc278de2 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -27,7 +27,7 @@ jobs: - windows-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: fetch-depth: 0 # avoid shallow clone so nbgv can do its work. - name: ⚙ Install prerequisites From cefcbc549e5e102b78ac6c702c4092b835464652 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 28 Apr 2023 20:01:45 -0600 Subject: [PATCH 003/257] Set version to '3.7-alpha' --- version.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/version.json b/version.json index f71e89462..a7f3c7f8a 100644 --- a/version.json +++ b/version.json @@ -1,6 +1,6 @@ { - "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/main/src/NerdBank.GitVersioning/version.schema.json", - "version": "3.6-alpha", + "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json", + "version": "3.7-alpha", "assemblyVersion": { "precision": "revision" }, @@ -15,4 +15,4 @@ "enabled": false } } -} +} \ No newline at end of file From e45848775d23805e530d9e0475307afc936a6d24 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sat, 29 Apr 2023 12:04:57 -0600 Subject: [PATCH 004/257] Elevate CA1062 for shipping code --- .editorconfig | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.editorconfig b/.editorconfig index 078687778..fce73c076 100644 --- a/.editorconfig +++ b/.editorconfig @@ -176,5 +176,8 @@ dotnet_diagnostic.DOC108.severity = warning dotnet_diagnostic.DOC200.severity = warning dotnet_diagnostic.DOC202.severity = warning +# CA1062: Validate arguments of public methods +dotnet_diagnostic.CA1062.severity = warning + [*.sln] indent_style = tab From c3c23f7e91194f845d8df92755edb6803f6cea47 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 1 May 2023 08:10:45 -0600 Subject: [PATCH 005/257] Bump Nerdbank.GitVersioning to 3.6.128 --- .config/dotnet-tools.json | 2 +- Directory.Packages.props | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 151689b63..54fc58866 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -21,7 +21,7 @@ ] }, "nbgv": { - "version": "3.5.119", + "version": "3.6.128", "commands": [ "nbgv" ] diff --git a/Directory.Packages.props b/Directory.Packages.props index b523e5c63..5758824bf 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -12,7 +12,7 @@ - + From 0cce97a6bee55561f1ba2ff2e6e4f32e9fc7a829 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 May 2023 20:37:54 +0000 Subject: [PATCH 006/257] Bump @types/node in /src/nerdbank-gitversioning.npm (#928) --- src/nerdbank-gitversioning.npm/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index 1ceb2a9fd..8359db655 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -50,9 +50,9 @@ camel-case "*" "@types/node@^18.7.14": - version "18.15.11" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.11.tgz#b3b790f09cb1696cffcec605de025b088fa4225f" - integrity sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q== + version "18.16.3" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.16.3.tgz#6bda7819aae6ea0b386ebc5b24bdf602f1b42b01" + integrity sha512-OPs5WnnT1xkCBiuQrZA4+YAV4HEJejmHneyraIaxsbev5yCEr6KMwINNFP9wQeFIw8FWcoTqF3vQsa5CDaI+8Q== acorn@^6.4.1: version "6.4.2" From 9298cf9cafa961db8c6d050629945affea041c86 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 May 2023 19:32:21 -0600 Subject: [PATCH 007/257] Bump Newtonsoft.Json from 13.0.1 to 13.0.3 (#931) Bumps [Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json) from 13.0.1 to 13.0.3. - [Release notes](https://github.com/JamesNK/Newtonsoft.Json/releases) - [Commits](https://github.com/JamesNK/Newtonsoft.Json/compare/13.0.1...13.0.3) --- updated-dependencies: - dependency-name: Newtonsoft.Json dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index c27742d90..496562c06 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -25,7 +25,7 @@ - + From ee96df4ee148a02b7ae693ce1dcc9cd1675fb0bd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 May 2023 01:56:09 +0000 Subject: [PATCH 008/257] Bump NuGet.PackageManagement from 6.3.1 to 6.5.0 (#929) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 496562c06..e7d07ea38 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -26,7 +26,7 @@ - + From e90465acd44c421921f48cca04fc4c7e73dd7034 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 1 May 2023 22:48:46 -0600 Subject: [PATCH 009/257] Update Dockerfile --- .devcontainer/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 7ffd07efb..01c94a90e 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,5 +1,5 @@ # Refer to https://hub.docker.com/_/microsoft-dotnet-sdk for available versions -FROM mcr.microsoft.com/dotnet/sdk:7.0.101-jammy +FROM mcr.microsoft.com/dotnet/sdk:7.0.203-jammy # Installing mono makes `dotnet test` work without errors even for net472. # But installing it takes a long time, so it's excluded by default. From 46b4f565e380906d043528f2442c0cb1591f585c Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 2 May 2023 07:41:53 -0600 Subject: [PATCH 010/257] Fix placement of $RestoreArguments construction --- init.ps1 | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/init.ps1 b/init.ps1 index 6211304f8..00a9589ba 100755 --- a/init.ps1 +++ b/init.ps1 @@ -83,13 +83,13 @@ Push-Location $PSScriptRoot try { $HeaderColor = 'Green' - if (!$NoRestore -and $PSCmdlet.ShouldProcess("NuGet packages", "Restore")) { - $RestoreArguments = @() - if ($Interactive) - { - $RestoreArguments += '--interactive' - } + $RestoreArguments = @() + if ($Interactive) + { + $RestoreArguments += '--interactive' + } + if (!$NoRestore -and $PSCmdlet.ShouldProcess("NuGet packages", "Restore")) { Write-Host "Restoring NuGet packages" -ForegroundColor $HeaderColor dotnet restore @RestoreArguments if ($lastexitcode -ne 0) { From e6b19fb1ce063f2b4b1ca530148870fba48889a4 Mon Sep 17 00:00:00 2001 From: kapsiR Date: Thu, 11 May 2023 00:36:45 +0200 Subject: [PATCH 011/257] Fix typo in the Cake extension documentation comment --- src/Cake.GitVersioning/GitVersioningAliases.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Cake.GitVersioning/GitVersioningAliases.cs b/src/Cake.GitVersioning/GitVersioningAliases.cs index 02303b15b..f0713c72d 100644 --- a/src/Cake.GitVersioning/GitVersioningAliases.cs +++ b/src/Cake.GitVersioning/GitVersioningAliases.cs @@ -29,7 +29,7 @@ public static class GitVersioningAliases /// Task("GetVersion") /// .Does(() => /// { - /// Information(GetVersioningGetVersion().SemVer2) + /// Information(GitVersioningGetVersion().SemVer2) /// }); /// ]]> /// From 4d4c330486ea2fe98d9ae70ed1c05fb5bba31c92 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 11 May 2023 08:51:17 -0600 Subject: [PATCH 012/257] Switch from `MSBuildTreatWarningsAsErrors` to `-warnaserror` This is per @rainersigwald's suggestion in https://github.com/dotnet/msbuild/issues/8735#issuecomment-1544076504 --- .github/workflows/build.yml | 3 +-- azure-pipelines.yml | 1 - azure-pipelines/dotnet.yml | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3fc278de2..33502820a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,7 +8,6 @@ on: pull_request: env: - MSBuildTreatWarningsAsErrors: true DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true BUILDCONFIGURATION: Release # codecov_token: 4dc9e7e2-6b01-4932-a180-847b52b43d35 # Get a new one from https://codecov.io/ @@ -44,7 +43,7 @@ jobs: run: azure-pipelines/variables/_pipelines.ps1 shell: pwsh - name: 🛠 build - run: dotnet build -t:build,pack --no-restore -c ${{ env.BUILDCONFIGURATION }} /v:m /bl:"${{ runner.temp }}/_artifacts/build_logs/build.binlog" + run: dotnet build -t:build,pack --no-restore -c ${{ env.BUILDCONFIGURATION }} -warnaserror /bl:"${{ runner.temp }}/_artifacts/build_logs/build.binlog" - name: 🧪 test run: azure-pipelines/dotnet-test-cloud.ps1 -Configuration ${{ env.BUILDCONFIGURATION }} -Agent ${{ runner.os }} shell: pwsh diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 521d4ce6b..9867b3db8 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -23,7 +23,6 @@ parameters: default: true variables: - MSBuildTreatWarningsAsErrors: true DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true BuildConfiguration: Release codecov_token: 4dc9e7e2-6b01-4932-a180-847b52b43d35 # Get a new one from https://codecov.io/ diff --git a/azure-pipelines/dotnet.yml b/azure-pipelines/dotnet.yml index 79babd4d4..512415497 100644 --- a/azure-pipelines/dotnet.yml +++ b/azure-pipelines/dotnet.yml @@ -3,7 +3,7 @@ parameters: steps: -- script: dotnet build -t:build,pack --no-restore -c $(BuildConfiguration) /bl:"$(Build.ArtifactStagingDirectory)/build_logs/build.binlog" +- script: dotnet build -t:build,pack --no-restore -c $(BuildConfiguration) -warnaserror /bl:"$(Build.ArtifactStagingDirectory)/build_logs/build.binlog" displayName: 🛠 dotnet build - powershell: azure-pipelines/dotnet-test-cloud.ps1 -Configuration $(BuildConfiguration) -Agent $(Agent.JobName) -PublishResults From c31493e10c3d8b0051b7ceaa7eba5e6832e6c4a3 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 11 May 2023 11:59:10 -0600 Subject: [PATCH 013/257] (Continue to) ignore CA1062 Nerdbank.GitVersioning isn't generally a public library for folks to reference, so if folks ignore nullability annotations when calling the library directly, that's on them. --- .editorconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.editorconfig b/.editorconfig index d381f5974..0938689ce 100644 --- a/.editorconfig +++ b/.editorconfig @@ -183,7 +183,7 @@ dotnet_diagnostic.DOC200.severity = warning dotnet_diagnostic.DOC202.severity = warning # CA1062: Validate arguments of public methods -dotnet_diagnostic.CA1062.severity = warning +dotnet_diagnostic.CA1062.severity = suggestion [*.sln] indent_style = tab From 2a7a3281b6969a61a354f4a64d07fc8984716ead Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 11 May 2023 11:28:50 -0600 Subject: [PATCH 014/257] Retarget from net462 to net472 This allows us to update our libgit2sharp dependency. And while projects that use NB.GV may *target* net462 without a problem, NB.GV requiring that build machines have at least net472 installed seems totally reasonable. --- .../ManagedGit/GitPackDeltafiedStream.cs | 2 +- .../ManagedGit/GitPackMemoryCacheStream.cs | 2 +- .../GitPackMemoryCacheViewStream.cs | 2 +- .../ManagedGit/GitPackPooledStream.cs | 2 +- .../ManagedGit/GitRepository.cs | 4 ++-- .../ManagedGit/MemoryMappedStream.cs | 2 +- .../ManagedGit/StreamExtensions.cs | 2 +- .../ManagedGit/ZLibStream.cs | 4 ++-- .../Nerdbank.GitVersioning.csproj | 2 +- .../AssemblyVersionInfo.cs | 8 +++---- .../NativeVersionInfo.cs | 2 +- .../Nerdbank.GitVersioning.Tasks.csproj | 7 ++---- .../Nerdbank.GitVersioning.Tasks.targets | 2 +- .../Nerdbank.GitVersioning.nuspec | 24 +++++++++---------- .../GetVersionBenchmarks.cs | 2 +- .../Nerdbank.GitVersioning.Benchmarks.csproj | 2 +- 16 files changed, 33 insertions(+), 36 deletions(-) diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackDeltafiedStream.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackDeltafiedStream.cs index 45c9db132..3c08112d0 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackDeltafiedStream.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackDeltafiedStream.cs @@ -65,7 +65,7 @@ public override long Position set => throw new NotImplementedException(); } -#if NETSTANDARD2_0 +#if NETFRAMEWORK /// /// Reads a sequence of bytes from the current and advances the position /// within the stream by the number of bytes read. diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCacheStream.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCacheStream.cs index 79dc845c1..703d3aa35 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCacheStream.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCacheStream.cs @@ -44,7 +44,7 @@ public override void Flush() throw new NotSupportedException(); } -#if NETSTANDARD2_0 +#if NETFRAMEWORK public int Read(Span buffer) #else /// diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCacheViewStream.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCacheViewStream.cs index 80f47b33e..9d97134da 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCacheViewStream.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCacheViewStream.cs @@ -42,7 +42,7 @@ public override int Read(byte[] buffer, int offset, int count) return this.Read(buffer.AsSpan(offset, count)); } -#if NETSTANDARD2_0 +#if NETFRAMEWORK public int Read(Span buffer) #else /// diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackPooledStream.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackPooledStream.cs index 53ca67696..efb80fb8a 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackPooledStream.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackPooledStream.cs @@ -62,7 +62,7 @@ public override void Flush() this.stream.Flush(); } -#if !NETSTANDARD2_0 +#if NET6_0_OR_GREATER /// public override int Read(Span buffer) { diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs b/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs index 183f04ef2..34961cf32 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs @@ -668,7 +668,7 @@ public void Dispose() private static string TrimEndingDirectorySeparator(string path) { -#if NETSTANDARD2_0 +#if NETFRAMEWORK if (string.IsNullOrEmpty(path) || path.Length == 1) { return path; @@ -699,7 +699,7 @@ private static bool TryConvertHexStringToByteArray(string hexString, Span Requires.Argument(data.Length == hexString.Length / 2, nameof(data), "Length must be exactly half that of " + nameof(hexString) + "."); for (int index = 0; index < data.Length; index++) { -#if !NETSTANDARD2_0 +#if NET6_0_OR_GREATER ReadOnlySpan byteValue = hexString.AsSpan(index * 2, 2); if (!byte.TryParse(byteValue, NumberStyles.HexNumber, CultureInfo.InvariantCulture, out data[index])) { diff --git a/src/NerdBank.GitVersioning/ManagedGit/MemoryMappedStream.cs b/src/NerdBank.GitVersioning/ManagedGit/MemoryMappedStream.cs index cecef5edd..70a298702 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/MemoryMappedStream.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/MemoryMappedStream.cs @@ -73,7 +73,7 @@ public override int Read(byte[] buffer, int offset, int count) return read; } -#if !NETSTANDARD2_0 +#if NET6_0_OR_GREATER /// public override int Read(Span buffer) { diff --git a/src/NerdBank.GitVersioning/ManagedGit/StreamExtensions.cs b/src/NerdBank.GitVersioning/ManagedGit/StreamExtensions.cs index 87ca6a1fc..142312e8f 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/StreamExtensions.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/StreamExtensions.cs @@ -78,7 +78,7 @@ public static int ReadMbsInt(this Stream stream) return value; } -#if NETSTANDARD2_0 +#if NETFRAMEWORK /// /// Reads a sequence of bytes from the current stream and advances the position within the stream by /// the number of bytes read. diff --git a/src/NerdBank.GitVersioning/ManagedGit/ZLibStream.cs b/src/NerdBank.GitVersioning/ManagedGit/ZLibStream.cs index 564380254..49d58afc3 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/ZLibStream.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/ZLibStream.cs @@ -92,7 +92,7 @@ public override int Read(byte[] array, int offset, int count) return read; } -#if !NETSTANDARD2_0 +#if NET6_0_OR_GREATER /// public override int Read(Span buffer) { @@ -110,7 +110,7 @@ public override async Task ReadAsync(byte[] array, int offset, int count, C return read; } -#if !NETSTANDARD2_0 +#if NET6_0_OR_GREATER /// public override async ValueTask ReadAsync(Memory buffer, CancellationToken cancellationToken = default) { diff --git a/src/NerdBank.GitVersioning/Nerdbank.GitVersioning.csproj b/src/NerdBank.GitVersioning/Nerdbank.GitVersioning.csproj index 54346b178..84cc1f758 100644 --- a/src/NerdBank.GitVersioning/Nerdbank.GitVersioning.csproj +++ b/src/NerdBank.GitVersioning/Nerdbank.GitVersioning.csproj @@ -1,6 +1,6 @@  - netstandard2.0;net6.0 + net472;net6.0 true Full false diff --git a/src/Nerdbank.GitVersioning.Tasks/AssemblyVersionInfo.cs b/src/Nerdbank.GitVersioning.Tasks/AssemblyVersionInfo.cs index 6ff17c7b5..1c7336c5c 100644 --- a/src/Nerdbank.GitVersioning.Tasks/AssemblyVersionInfo.cs +++ b/src/Nerdbank.GitVersioning.Tasks/AssemblyVersionInfo.cs @@ -37,7 +37,7 @@ the code is regenerated. ------------------------------------------------------------------------------ "; -#if NET462 +#if NETFRAMEWORK private static readonly CodeGeneratorOptions CodeGeneratorOptions = new CodeGeneratorOptions { BlankLinesBetweenMembers = false, @@ -136,7 +136,7 @@ public string BuildCode() return null; } -#if NET462 +#if NETFRAMEWORK /// public override bool Execute() { @@ -186,7 +186,7 @@ public override bool Execute() } #endif -#if !NET462 +#if !NETFRAMEWORK /// public override bool Execute() { @@ -233,7 +233,7 @@ private static byte[] GetPublicKeyFromKeyPair(byte[] keyPair) } } -#if NET462 +#if NETFRAMEWORK private static CodeMemberField CreateField(string name, T value) { return new CodeMemberField(typeof(T), name) diff --git a/src/Nerdbank.GitVersioning.Tasks/NativeVersionInfo.cs b/src/Nerdbank.GitVersioning.Tasks/NativeVersionInfo.cs index e6d9530f9..2dd70746f 100644 --- a/src/Nerdbank.GitVersioning.Tasks/NativeVersionInfo.cs +++ b/src/Nerdbank.GitVersioning.Tasks/NativeVersionInfo.cs @@ -177,7 +177,7 @@ private void CreateDefines() { if (!int.TryParse(this.AssemblyLanguage, out lcid)) { -#if NET462 +#if NETFRAMEWORK try { var cultureInfo = new CultureInfo(this.AssemblyLanguage); diff --git a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.csproj b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.csproj index da3e1629b..95df494c7 100644 --- a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.csproj +++ b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.csproj @@ -1,6 +1,6 @@  - net462;net6.0 + net472;net6.0 true Nerdbank.GitVersioning.nuspec @@ -41,16 +41,13 @@ + - - - - diff --git a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.targets b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.targets index f61154dfe..47becee3c 100644 --- a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.targets +++ b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.targets @@ -10,7 +10,7 @@ MSBuildCore\ - MSBuildFull\ + MSBuildFull\ diff --git a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec index 7cbd11177..9c825edd6 100644 --- a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec +++ b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec @@ -17,18 +17,18 @@ IMPORTANT: The 3.x release may produce a different version height than prior maj - - - - - - - - - - - - + + + + + + + + + + + + diff --git a/test/Nerdbank.GitVersioning.Benchmarks/GetVersionBenchmarks.cs b/test/Nerdbank.GitVersioning.Benchmarks/GetVersionBenchmarks.cs index b1bbda93e..f580c34e2 100644 --- a/test/Nerdbank.GitVersioning.Benchmarks/GetVersionBenchmarks.cs +++ b/test/Nerdbank.GitVersioning.Benchmarks/GetVersionBenchmarks.cs @@ -10,7 +10,7 @@ namespace Nerdbank.GitVersioning.Benchmarks { [SimpleJob(RuntimeMoniker.Net70)] - [SimpleJob(RuntimeMoniker.Net462, baseline: true)] + [SimpleJob(RuntimeMoniker.Net472, baseline: true)] public class GetVersionBenchmarks { // You must manually clone these repositories: diff --git a/test/Nerdbank.GitVersioning.Benchmarks/Nerdbank.GitVersioning.Benchmarks.csproj b/test/Nerdbank.GitVersioning.Benchmarks/Nerdbank.GitVersioning.Benchmarks.csproj index 6e0ed52af..71b136fb8 100644 --- a/test/Nerdbank.GitVersioning.Benchmarks/Nerdbank.GitVersioning.Benchmarks.csproj +++ b/test/Nerdbank.GitVersioning.Benchmarks/Nerdbank.GitVersioning.Benchmarks.csproj @@ -2,7 +2,7 @@ net7.0 - $(TargetFrameworks);net462 + $(TargetFrameworks);net472 Exe true AnyCPU From 6f200e34829a04cd2eb93238eb3f814bc888d3d8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 May 2023 20:08:41 +0000 Subject: [PATCH 015/257] Bump LibGit2Sharp from 0.27.0-preview-0182 to 0.27.2 Bumps [LibGit2Sharp](https://github.com/libgit2/libgit2sharp) from 0.27.0-preview-0182 to 0.27.2. - [Release notes](https://github.com/libgit2/libgit2sharp/releases) - [Changelog](https://github.com/libgit2/libgit2sharp/blob/master/CHANGES.md) - [Commits](https://github.com/libgit2/libgit2sharp/commits/0.27.2) --- updated-dependencies: - dependency-name: LibGit2Sharp dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index e7d07ea38..583a43569 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -12,7 +12,7 @@ - + From 942ba6d1baa48510122d6ad39e179d7e0401916b Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 11 May 2023 14:37:45 -0600 Subject: [PATCH 016/257] Update libgit2sharp native package version --- Directory.Build.props | 4 ---- Directory.Packages.props | 3 +++ .../Nerdbank.GitVersioning.Tasks.targets | 2 +- .../Nerdbank.GitVersioning.nuspec | 6 +++--- 4 files changed, 7 insertions(+), 8 deletions(-) diff --git a/Directory.Build.props b/Directory.Build.props index 22caf1d1c..574ce1764 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -38,10 +38,6 @@ true - - - 2.0.315-alpha.0.9 - diff --git a/Directory.Packages.props b/Directory.Packages.props index 583a43569..d304039f5 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,6 +6,8 @@ 0.13.5 16.9.0 15.9.20 + + 2.0.320 @@ -13,6 +15,7 @@ + diff --git a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.targets b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.targets index 47becee3c..6ccb82a1a 100644 --- a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.targets +++ b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.targets @@ -2,7 +2,7 @@ $(NuGetPackageRoot)libgit2sharp.nativebinaries\$(LibGit2SharpNativeVersion)\ - $(NuspecProperties);Version=$(Version);commit=$(GitCommitId);BaseOutputPath=$(OutputPath);LibGit2SharpNativeBinaries=$(LibGit2SharpNativeBinaries) + $(NuspecProperties);Version=$(Version);commit=$(GitCommitId);BaseOutputPath=$(OutputPath);LibGit2SharpNativeBinaries=$(LibGit2SharpNativeBinaries);libgit2_filename=$(libgit2_filename) $(NuspecProperties);LKGSuffix=.LKG diff --git a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec index 9c825edd6..bd92e87b9 100644 --- a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec +++ b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec @@ -32,9 +32,9 @@ IMPORTANT: The 3.x release may produce a different version height than prior maj - - - + + + From 567c7bcf40cfa85b96abeebe50f3c2e59736f7d9 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 11 May 2023 15:19:29 -0600 Subject: [PATCH 017/257] Workaround https://github.com/libgit2/libgit2sharp/issues/2037 --- test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs b/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs index 8098be4c3..aae31b8df 100644 --- a/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs @@ -604,16 +604,20 @@ public void Worktree_Support(bool detachedHead) string workTreePath = this.CreateDirectoryForNewRepo(); Directory.Delete(workTreePath); + Worktree worktree; if (detachedHead) { - this.LibGit2Repository.Worktrees.Add("HEAD~1", "myworktree", workTreePath, isLocked: false); + worktree = this.LibGit2Repository.Worktrees.Add("HEAD~1", "myworktree", workTreePath, isLocked: false); } else { this.LibGit2Repository.Branches.Add("wtbranch", "HEAD~1"); - this.LibGit2Repository.Worktrees.Add("wtbranch", "myworktree", workTreePath, isLocked: false); + worktree = this.LibGit2Repository.Worktrees.Add("wtbranch", "myworktree", workTreePath, isLocked: false); } + // Workaround for https://github.com/libgit2/libgit2sharp/issues/2037 + Commands.Checkout(worktree.WorktreeRepository, "HEAD", new CheckoutOptions { CheckoutModifiers = CheckoutModifiers.Force }); + GitContext context = this.CreateGitContext(workTreePath); var oracleWorkTree = new VersionOracle(context); Assert.Equal(oracleOriginal.Version, oracleWorkTree.Version); From 0b53771521c420bac289b822fc22c2144d01af72 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 11 May 2023 15:56:11 -0600 Subject: [PATCH 018/257] Bump Newtonsoft.Json.Schema from 3.0.14 to 3.0.15 (#932) Bumps [Newtonsoft.Json.Schema](https://github.com/JamesNK/Newtonsoft.Json.Schema) from 3.0.14 to 3.0.15. - [Release notes](https://github.com/JamesNK/Newtonsoft.Json.Schema/releases) - [Commits](https://github.com/JamesNK/Newtonsoft.Json.Schema/compare/3.0.14...3.0.15) --- updated-dependencies: - dependency-name: Newtonsoft.Json.Schema dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index d304039f5..b642bf8be 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -27,7 +27,7 @@ - + From d0aa014c98bb9e7f60ba70042db1992660f9f76d Mon Sep 17 00:00:00 2001 From: Georg Jung Date: Fri, 12 May 2023 17:07:31 +0200 Subject: [PATCH 019/257] Add objectType to GitPackCache's key --- src/NerdBank.GitVersioning/ManagedGit/GitPack.cs | 4 ++-- .../ManagedGit/GitPackCache.cs | 6 ++++-- .../ManagedGit/GitPackMemoryCache.cs | 14 +++++++------- .../ManagedGit/GitPackNullCache.cs | 4 ++-- .../ManagedGit/GitPackMemoryCacheTests.cs | 4 ++-- 5 files changed, 17 insertions(+), 15 deletions(-) diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs index 8b0934285..72fd6afaf 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs @@ -178,7 +178,7 @@ public Stream GetObject(long offset, string objectType) } #endif - if (this.cache.TryOpen(offset, out Stream? stream)) + if (this.cache.TryOpen(offset, objectType, out Stream? stream)) { return stream!; } @@ -216,7 +216,7 @@ public Stream GetObject(long offset, string objectType) throw; } - return this.cache.Add(offset, objectStream); + return this.cache.Add(offset, objectType, objectStream); } /// diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackCache.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackCache.cs index 50e054abe..7abf98341 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackCache.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackCache.cs @@ -22,6 +22,7 @@ public abstract class GitPackCache : IDisposable /// /// The offset of the Git object in the Git pack. /// + /// The object type of the object to retrieve. /// /// A which will be set to the cached Git object. /// @@ -29,7 +30,7 @@ public abstract class GitPackCache : IDisposable /// if the object was found in cache; otherwise, /// . /// - public abstract bool TryOpen(long offset, [NotNullWhen(true)] out Stream? stream); + public abstract bool TryOpen(long offset, string objectType, [NotNullWhen(true)] out Stream? stream); /// /// Gets statistics about the cache usage. @@ -45,6 +46,7 @@ public abstract class GitPackCache : IDisposable /// /// The offset of the Git object in the Git pack. /// + /// The object type of the object to add to the cache. /// /// A which represents the object to add. This stream /// will be copied to the cache. @@ -52,7 +54,7 @@ public abstract class GitPackCache : IDisposable /// /// A which represents the cached entry. /// - public abstract Stream Add(long offset, Stream stream); + public abstract Stream Add(long offset, string objectType, Stream stream); /// public void Dispose() diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCache.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCache.cs index c7f8c6eb8..b1d01c6da 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCache.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCache.cs @@ -21,27 +21,27 @@ namespace Nerdbank.GitVersioning.ManagedGit; /// twice, it is read from the , rather than the underlying . /// /// -/// and return +/// and return /// objects which may operate on the same underlying , but independently maintain /// their state. /// /// public class GitPackMemoryCache : GitPackCache { - private readonly Dictionary cache = new Dictionary(); + private readonly Dictionary<(long, string), GitPackMemoryCacheStream> cache = new Dictionary<(long, string), GitPackMemoryCacheStream>(); /// - public override Stream Add(long offset, Stream stream) + public override Stream Add(long offset, string objectType, Stream stream) { var cacheStream = new GitPackMemoryCacheStream(stream); - this.cache.Add(offset, cacheStream); + this.cache.Add((offset, objectType), cacheStream); return new GitPackMemoryCacheViewStream(cacheStream); } /// - public override bool TryOpen(long offset, [NotNullWhen(true)] out Stream? stream) + public override bool TryOpen(long offset, string objectType, [NotNullWhen(true)] out Stream? stream) { - if (this.cache.TryGetValue(offset, out GitPackMemoryCacheStream? cacheStream)) + if (this.cache.TryGetValue((offset, objectType), out GitPackMemoryCacheStream? cacheStream)) { stream = new GitPackMemoryCacheViewStream(cacheStream!); return true; @@ -64,7 +64,7 @@ protected override void Dispose(bool disposing) { while (this.cache.Count > 0) { - long key = this.cache.Keys.First(); + var key = this.cache.Keys.First(); GitPackMemoryCacheStream? stream = this.cache[key]; stream.Dispose(); this.cache.Remove(key); diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackNullCache.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackNullCache.cs index f96e8ba94..2cb5ac681 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackNullCache.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackNullCache.cs @@ -19,13 +19,13 @@ public class GitPackNullCache : GitPackCache public static GitPackNullCache Instance { get; } = new GitPackNullCache(); /// - public override Stream Add(long offset, Stream stream) + public override Stream Add(long offset, string objectType, Stream stream) { return stream; } /// - public override bool TryOpen(long offset, [NotNullWhen(true)] out Stream? stream) + public override bool TryOpen(long offset, string objectType, [NotNullWhen(true)] out Stream? stream) { stream = null; return false; diff --git a/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackMemoryCacheTests.cs b/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackMemoryCacheTests.cs index c03ae8582..b97b58135 100644 --- a/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackMemoryCacheTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackMemoryCacheTests.cs @@ -20,8 +20,8 @@ public void StreamsAreIndependent() { var cache = new GitPackMemoryCache(); - Stream stream1 = cache.Add(0, stream); - Assert.True(cache.TryOpen(0, out Stream stream2)); + Stream stream1 = cache.Add(0, "anObjectType", stream); + Assert.True(cache.TryOpen(0, "anObjectType", out Stream stream2)); using (stream1) using (stream2) From fafa498f17b87477917fc1d34853b3e105995212 Mon Sep 17 00:00:00 2001 From: Georg Jung Date: Fri, 12 May 2023 18:12:37 +0200 Subject: [PATCH 020/257] Move objectType to GitPackCache's value Otherwise, we would have I/O operations for every request for a wrong objectType. By having it as part of the value we can use the cache and aquire the information that the objectType does not match from the cache. --- src/NerdBank.GitVersioning/ManagedGit/GitPack.cs | 9 +++++++-- .../ManagedGit/GitPackCache.cs | 7 +++---- .../ManagedGit/GitPackMemoryCache.cs | 16 ++++++++-------- .../ManagedGit/GitPackNullCache.cs | 4 ++-- .../ManagedGit/GitPackMemoryCacheTests.cs | 6 ++++-- 5 files changed, 24 insertions(+), 18 deletions(-) diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs index 72fd6afaf..3ac505ebe 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs @@ -178,9 +178,14 @@ public Stream GetObject(long offset, string objectType) } #endif - if (this.cache.TryOpen(offset, objectType, out Stream? stream)) + if (this.cache.TryOpen(offset, out (Stream ContentStream, string ObjectType)? hit)) { - return stream!; + if (hit.Value.ObjectType != objectType) + { + throw new GitException($"An object of type {objectType} could not be located at offset {offset}.") { ErrorCode = GitException.ErrorCodes.ObjectNotFound }; + } + + return hit.Value.ContentStream; } GitPackObjectType packObjectType; diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackCache.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackCache.cs index 7abf98341..dbfb7ebd1 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackCache.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackCache.cs @@ -22,15 +22,14 @@ public abstract class GitPackCache : IDisposable /// /// The offset of the Git object in the Git pack. /// - /// The object type of the object to retrieve. - /// - /// A which will be set to the cached Git object. + /// + /// A (, ContentType) tuple which will be set to the cached data if found. /// /// /// if the object was found in cache; otherwise, /// . /// - public abstract bool TryOpen(long offset, string objectType, [NotNullWhen(true)] out Stream? stream); + public abstract bool TryOpen(long offset, [NotNullWhen(true)] out (Stream ContentStream, string ObjectType)? hit); /// /// Gets statistics about the cache usage. diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCache.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCache.cs index b1d01c6da..62a9d82ce 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCache.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCache.cs @@ -21,33 +21,33 @@ namespace Nerdbank.GitVersioning.ManagedGit; /// twice, it is read from the , rather than the underlying . /// /// -/// and return +/// and return /// objects which may operate on the same underlying , but independently maintain /// their state. /// /// public class GitPackMemoryCache : GitPackCache { - private readonly Dictionary<(long, string), GitPackMemoryCacheStream> cache = new Dictionary<(long, string), GitPackMemoryCacheStream>(); + private readonly Dictionary cache = new(); /// public override Stream Add(long offset, string objectType, Stream stream) { var cacheStream = new GitPackMemoryCacheStream(stream); - this.cache.Add((offset, objectType), cacheStream); + this.cache.Add(offset, (cacheStream, objectType)); return new GitPackMemoryCacheViewStream(cacheStream); } /// - public override bool TryOpen(long offset, string objectType, [NotNullWhen(true)] out Stream? stream) + public override bool TryOpen(long offset, [NotNullWhen(true)] out (Stream ContentStream, string ObjectType)? hit) { - if (this.cache.TryGetValue((offset, objectType), out GitPackMemoryCacheStream? cacheStream)) + if (this.cache.TryGetValue(offset, out (GitPackMemoryCacheStream Stream, string ObjectType) tuple)) { - stream = new GitPackMemoryCacheViewStream(cacheStream!); + hit = (new GitPackMemoryCacheViewStream(tuple.Stream), tuple.ObjectType); return true; } - stream = null; + hit = null; return false; } @@ -65,7 +65,7 @@ protected override void Dispose(bool disposing) while (this.cache.Count > 0) { var key = this.cache.Keys.First(); - GitPackMemoryCacheStream? stream = this.cache[key]; + (GitPackMemoryCacheStream? stream, _) = this.cache[key]; stream.Dispose(); this.cache.Remove(key); } diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackNullCache.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackNullCache.cs index 2cb5ac681..157930124 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackNullCache.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackNullCache.cs @@ -25,9 +25,9 @@ public override Stream Add(long offset, string objectType, Stream stream) } /// - public override bool TryOpen(long offset, string objectType, [NotNullWhen(true)] out Stream? stream) + public override bool TryOpen(long offset, [NotNullWhen(true)] out (Stream ContentStream, string ObjectType)? hit) { - stream = null; + hit = null; return false; } diff --git a/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackMemoryCacheTests.cs b/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackMemoryCacheTests.cs index b97b58135..78a4ede6f 100644 --- a/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackMemoryCacheTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackMemoryCacheTests.cs @@ -21,10 +21,12 @@ public void StreamsAreIndependent() var cache = new GitPackMemoryCache(); Stream stream1 = cache.Add(0, "anObjectType", stream); - Assert.True(cache.TryOpen(0, "anObjectType", out Stream stream2)); + Assert.True(cache.TryOpen(0, out (Stream ContentStream, string ObjectType)? hit)); + Assert.True(hit.HasValue); + Assert.Equal("anObjectType", hit.Value.ObjectType); using (stream1) - using (stream2) + using (Stream stream2 = hit.Value.ContentStream) { stream1.Seek(5, SeekOrigin.Begin); Assert.Equal(5, stream1.Position); From aefd199847243c1e0a6a8224db00ccb25a5bc9e0 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 17 May 2023 10:56:28 -0600 Subject: [PATCH 021/257] Bump .NET SDK to 7.0.302 --- .devcontainer/Dockerfile | 2 +- global.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 01c94a90e..6d2f30da6 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,5 +1,5 @@ # Refer to https://hub.docker.com/_/microsoft-dotnet-sdk for available versions -FROM mcr.microsoft.com/dotnet/sdk:7.0.203-jammy +FROM mcr.microsoft.com/dotnet/sdk:7.0.302-jammy # Installing mono makes `dotnet test` work without errors even for net472. # But installing it takes a long time, so it's excluded by default. diff --git a/global.json b/global.json index c7d7e468c..abde95a8b 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "7.0.203", + "version": "7.0.302", "rollForward": "patch", "allowPrerelease": false } From 354b522a12ab85fd819356484a63e7cf38ae2579 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sat, 20 May 2023 13:25:55 -0600 Subject: [PATCH 022/257] Bump NB.GV to 3.6.132 --- .config/dotnet-tools.json | 2 +- Directory.Packages.props | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 54fc58866..93547faf7 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -21,7 +21,7 @@ ] }, "nbgv": { - "version": "3.6.128", + "version": "3.6.132", "commands": [ "nbgv" ] diff --git a/Directory.Packages.props b/Directory.Packages.props index 5758824bf..7cf54cc17 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -12,7 +12,7 @@ - + From 4f2a6d8391ae5f2b9a577bd3c3bbb03a201a4ff8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 20 May 2023 13:28:47 -0600 Subject: [PATCH 023/257] Bump CSharpIsNullAnalyzer from 0.1.329 to 0.1.495 (#204) * Crank up dependabot * Bump CSharpIsNullAnalyzer from 0.1.329 to 0.1.495 Bumps [CSharpIsNullAnalyzer](https://github.com/AArnott/CSharpIsNull) from 0.1.329 to 0.1.495. - [Release notes](https://github.com/AArnott/CSharpIsNull/releases) - [Commits](https://github.com/AArnott/CSharpIsNull/commits) --- updated-dependencies: - dependency-name: CSharpIsNullAnalyzer dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --------- Signed-off-by: dependabot[bot] Co-authored-by: Andrew Arnott Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/dependabot.yml | 4 ++-- Directory.Packages.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index b9b0f54a2..63e3e890b 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,9 +1,9 @@ # Please see the documentation for all configuration options: -# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates +# https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file version: 2 updates: - package-ecosystem: nuget directory: / schedule: - interval: monthly + interval: weekly diff --git a/Directory.Packages.props b/Directory.Packages.props index 7cf54cc17..74916ca21 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -10,7 +10,7 @@ - + From 119ce0770abc0ad1a3b8bdab3ca622470579ec92 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 20 May 2023 13:29:01 -0600 Subject: [PATCH 024/257] Bump Microsoft.NET.Test.Sdk from 17.5.0 to 17.6.0 (#202) * Crank up dependabot * Bump Microsoft.NET.Test.Sdk from 17.5.0 to 17.6.0 Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.5.0 to 17.6.0. - [Release notes](https://github.com/microsoft/vstest/releases) - [Changelog](https://github.com/microsoft/vstest/blob/main/docs/releases.md) - [Commits](https://github.com/microsoft/vstest/compare/v17.5.0...v17.6.0) --- updated-dependencies: - dependency-name: Microsoft.NET.Test.Sdk dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --------- Signed-off-by: dependabot[bot] Co-authored-by: Andrew Arnott Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 74916ca21..061f8ed44 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -5,7 +5,7 @@ true - + From 0991fe932a245d50f30ebab193a3cd50dc520939 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 20 May 2023 13:29:13 -0600 Subject: [PATCH 025/257] Bump dotnet-coverage from 17.7.0 to 17.7.1 (#205) * Crank up dependabot * Bump dotnet-coverage from 17.7.0 to 17.7.1 Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.7.0 to 17.7.1. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --------- Signed-off-by: dependabot[bot] Co-authored-by: Andrew Arnott Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 93547faf7..5ed46cc1c 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "dotnet-coverage": { - "version": "17.7.0", + "version": "17.7.1", "commands": [ "dotnet-coverage" ] From e50278a744ac29ee6f066b9406d2933c898f3eea Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sat, 27 May 2023 07:48:43 -0600 Subject: [PATCH 026/257] Bump Nerdbank.GitVersioning to 3.6.133 --- .config/dotnet-tools.json | 2 +- Directory.Packages.props | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 5ed46cc1c..fa4ceb59c 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -21,7 +21,7 @@ ] }, "nbgv": { - "version": "3.6.132", + "version": "3.6.133", "commands": [ "nbgv" ] diff --git a/Directory.Packages.props b/Directory.Packages.props index 061f8ed44..738a2f99d 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -12,7 +12,7 @@ - + From 1579bbaf76e95e700c4aef5311fd5aefc0dd2e18 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 5 Jun 2023 07:21:57 -0600 Subject: [PATCH 027/257] Bump Microsoft.NET.Test.Sdk to 17.6.1 --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 738a2f99d..386c6eecb 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -5,7 +5,7 @@ true - + From e22efe97b08fa4795d834d7e16310143195345d6 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 7 Jun 2023 15:52:58 -0600 Subject: [PATCH 028/257] Bump Microsoft.NET.Test.Sdk to 17.6.2 --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 386c6eecb..1de332842 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -5,7 +5,7 @@ true - + From 4b4c23c578e3f66de462bbd671ff83d89fc19917 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 11 Jun 2023 17:07:52 -0600 Subject: [PATCH 029/257] Fix SDK version reference --- azure-pipelines.yml | 4 ++-- azure-pipelines/build.yml | 2 +- test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index fbd327a9d..11a58513f 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -105,10 +105,10 @@ stages: clean: true submodules: true # keep the warnings quiet about the wiki not being enlisted - task: UseDotNet@2 - displayName: Install .NET 7.0.203 SDK + displayName: Install .NET 7.0.302 SDK inputs: packageType: sdk - version: 7.0.203 + version: 7.0.302 - script: dotnet --info displayName: Show dotnet SDK info - bash: | diff --git a/azure-pipelines/build.yml b/azure-pipelines/build.yml index 021256aeb..fd06a63a1 100644 --- a/azure-pipelines/build.yml +++ b/azure-pipelines/build.yml @@ -23,7 +23,7 @@ jobs: - template: install-dependencies.yml - pwsh: | Invoke-WebRequest -Uri "https://dot.net/v1/dotnet-install.ps1" -OutFile dotnet-install.ps1 - & .\dotnet-install.ps1 -Architecture x86 -Version 7.0.203 -InstallDir "C:\Program Files (x86)\dotnet\" -NoPath -Verbose + & .\dotnet-install.ps1 -Architecture x86 -Version 7.0.302 -InstallDir "C:\Program Files (x86)\dotnet\" -NoPath -Verbose displayName: ⚙ Install 32-bit .NET SDK and runtimes - template: dotnet.yml diff --git a/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs b/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs index d77f7ba57..f06d05605 100644 --- a/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs +++ b/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs @@ -25,7 +25,7 @@ internal static void LoadMSBuild() if (IntPtr.Size == 4) { // 32-bit .NET runtime requires special code to find the x86 SDK (where MSBuild is). - MSBuildLocator.RegisterMSBuildPath(@"C:\Program Files (x86)\dotnet\sdk\7.0.203"); + MSBuildLocator.RegisterMSBuildPath(@"C:\Program Files (x86)\dotnet\sdk\7.0.302"); } else { From f999c4dac1c4a0475a366bee4e6c6458d2eef103 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 11 Jun 2023 17:42:11 -0600 Subject: [PATCH 030/257] Bump MSBuildPackageVersion from 16.9.0 to 16.11.0 (#952) Bumps `MSBuildPackageVersion` from 16.9.0 to 16.11.0. Updates `Microsoft.Build.Framework` from 16.9.0 to 16.11.0 - [Release notes](https://github.com/dotnet/msbuild/releases) - [Changelog](https://github.com/dotnet/msbuild/blob/main/documentation/Changelog.md) - [Commits](https://github.com/dotnet/msbuild/compare/v16.9.0...v16.11.0) Updates `Microsoft.Build.Utilities.Core` from 16.9.0 to 16.11.0 - [Release notes](https://github.com/dotnet/msbuild/releases) - [Changelog](https://github.com/dotnet/msbuild/blob/main/documentation/Changelog.md) - [Commits](https://github.com/dotnet/msbuild/compare/v16.9.0...v16.11.0) Updates `Microsoft.Build` from 16.9.0 to 16.11.0 - [Release notes](https://github.com/dotnet/msbuild/releases) - [Changelog](https://github.com/dotnet/msbuild/blob/main/documentation/Changelog.md) - [Commits](https://github.com/dotnet/msbuild/compare/v16.9.0...v16.11.0) Updates `Microsoft.Build.Tasks.Core` from 16.9.0 to 16.11.0 - [Release notes](https://github.com/dotnet/msbuild/releases) - [Changelog](https://github.com/dotnet/msbuild/blob/main/documentation/Changelog.md) - [Commits](https://github.com/dotnet/msbuild/compare/v16.9.0...v16.11.0) --- updated-dependencies: - dependency-name: Microsoft.Build.Framework dependency-type: direct:production update-type: version-update:semver-minor - dependency-name: Microsoft.Build.Utilities.Core dependency-type: direct:production update-type: version-update:semver-minor - dependency-name: Microsoft.Build dependency-type: direct:production update-type: version-update:semver-minor - dependency-name: Microsoft.Build.Tasks.Core dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index d8be7944b..cf887308c 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -4,7 +4,7 @@ true true 0.13.5 - 16.9.0 + 16.11.0 15.9.20 2.0.320 From 232c91dedd759635b614c36a11385d88f28916d3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 11 Jun 2023 17:42:45 -0600 Subject: [PATCH 031/257] Bump Microsoft.CodeAnalysis.CSharp from 4.3.1 to 4.6.0 (#953) Bumps [Microsoft.CodeAnalysis.CSharp](https://github.com/dotnet/roslyn) from 4.3.1 to 4.6.0. - [Release notes](https://github.com/dotnet/roslyn/releases) - [Changelog](https://github.com/dotnet/roslyn/blob/main/docs/Breaking%20API%20Changes.md) - [Commits](https://github.com/dotnet/roslyn/commits) --- updated-dependencies: - dependency-name: Microsoft.CodeAnalysis.CSharp dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index cf887308c..116d50076 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -21,7 +21,7 @@ - + From f9b3dbb8601e26d4d0522d48eec1aeed162a7754 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 11 Jun 2023 17:42:57 -0600 Subject: [PATCH 032/257] Bump typescript from 5.0.4 to 5.1.3 in /src/nerdbank-gitversioning.npm (#947) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.0.4 to 5.1.3. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/compare/v5.0.4...v5.1.3) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/nerdbank-gitversioning.npm/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index 8359db655..f0db7b1fa 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -2743,9 +2743,9 @@ typedarray@^0.0.6: integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= typescript@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.0.4.tgz#b217fd20119bd61a94d4011274e0ab369058da3b" - integrity sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw== + version "5.1.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.3.tgz#8d84219244a6b40b6fb2b33cc1c062f715b9e826" + integrity sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw== unc-path-regex@^0.1.2: version "0.1.2" From 5a7ce31fa8a9a4aba53bc853529bc7bf308e9111 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 13 Jun 2023 14:17:25 -0600 Subject: [PATCH 033/257] Fix symbol file selection for R2R outputs --- azure-pipelines/Get-SymbolFiles.ps1 | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/azure-pipelines/Get-SymbolFiles.ps1 b/azure-pipelines/Get-SymbolFiles.ps1 index 0ce229fc2..b5063cec6 100644 --- a/azure-pipelines/Get-SymbolFiles.ps1 +++ b/azure-pipelines/Get-SymbolFiles.ps1 @@ -43,8 +43,13 @@ $PDBs |% { } } |% { # Collect the DLLs/EXEs as well. - $dllPath = "$($_.Directory)/$($_.BaseName).dll" - $exePath = "$($_.Directory)/$($_.BaseName).exe" + $rootName = "$($_.Directory)/$($_.BaseName)" + if ($rootName.EndsWith('.ni')) { + $rootName = $rootName.Substring(0, $rootName.Length - 3) + } + + $dllPath = "$rootName.dll" + $exePath = "$rootName.exe" if (Test-Path $dllPath) { $BinaryImagePath = $dllPath } elseif (Test-Path $exePath) { From 18710500489c2cac5d146411be32e3fc8bf79a9e Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 19 Jun 2023 15:41:52 -0600 Subject: [PATCH 034/257] Bump dotnet-coverage to 17.7.2 --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index fa4ceb59c..a8478486c 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "dotnet-coverage": { - "version": "17.7.1", + "version": "17.7.2", "commands": [ "dotnet-coverage" ] From ba056964139aaa2ede6ce37019e1b9f2073c7484 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 26 Jun 2023 17:10:49 -0600 Subject: [PATCH 035/257] Bump StyleCop.Analyzers.Unstable from 1.2.0.435 to 1.2.0.507 (#207) Bumps [StyleCop.Analyzers.Unstable](https://github.com/DotNetAnalyzers/StyleCopAnalyzers) from 1.2.0.435 to 1.2.0.507. - [Release notes](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/releases) - [Changelog](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/KnownChanges.md) - [Commits](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/commits) --- updated-dependencies: - dependency-name: StyleCop.Analyzers.Unstable dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 1de332842..6942b31ec 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -14,7 +14,7 @@ - + From 03de5e6821c5b280fcd006eb240486a0df519b49 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 26 Jun 2023 17:10:58 -0600 Subject: [PATCH 036/257] Bump dotnet-coverage from 17.7.2 to 17.7.3 (#208) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.7.2 to 17.7.3. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index a8478486c..970744649 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "dotnet-coverage": { - "version": "17.7.2", + "version": "17.7.3", "commands": [ "dotnet-coverage" ] From 71f5f3617c3e64c99c0613c700bf227da2af37e6 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 28 Jun 2023 06:57:44 -0600 Subject: [PATCH 037/257] Bump Microsoft.NET.Test.Sdk to 17.6.3 --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 6942b31ec..c15928bee 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -5,7 +5,7 @@ true - + From 88e70184a887b05249cb829b8cefcca1b834b342 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 28 Jun 2023 07:01:02 -0600 Subject: [PATCH 038/257] Bump powershell to 7.3.5 --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 970744649..e344d8b0d 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "powershell": { - "version": "7.3.4", + "version": "7.3.5", "commands": [ "pwsh" ] From b0f343dba369555ef366435a8c7e9181fe98ea88 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 28 Jun 2023 09:06:47 -0600 Subject: [PATCH 039/257] Automatically include a README.md from the project directory --- src/Directory.Build.props | 8 ++++++++ src/Library/Library.csproj | 4 ---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Directory.Build.props b/src/Directory.Build.props index 052fe3ef0..5be1dd441 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -1,3 +1,11 @@ + + + README.md + + + + + diff --git a/src/Library/Library.csproj b/src/Library/Library.csproj index b6b926ab7..50aff9973 100644 --- a/src/Library/Library.csproj +++ b/src/Library/Library.csproj @@ -1,9 +1,5 @@ net6.0;netstandard2.0 - README.md - - - From 820e84381bfed93a09a3b78400b0c027b1b23ccd Mon Sep 17 00:00:00 2001 From: Georg Jung Date: Mon, 10 Jul 2023 11:46:46 +0200 Subject: [PATCH 040/257] Align parameter order with tuple --- src/NerdBank.GitVersioning/ManagedGit/GitPack.cs | 2 +- src/NerdBank.GitVersioning/ManagedGit/GitPackCache.cs | 4 ++-- src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCache.cs | 4 ++-- src/NerdBank.GitVersioning/ManagedGit/GitPackNullCache.cs | 2 +- .../ManagedGit/GitPackMemoryCacheTests.cs | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs index 3ac505ebe..6a6592c42 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs @@ -221,7 +221,7 @@ public Stream GetObject(long offset, string objectType) throw; } - return this.cache.Add(offset, objectType, objectStream); + return this.cache.Add(offset, objectStream, objectType); } /// diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackCache.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackCache.cs index dbfb7ebd1..eaefca928 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackCache.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackCache.cs @@ -45,15 +45,15 @@ public abstract class GitPackCache : IDisposable /// /// The offset of the Git object in the Git pack. /// - /// The object type of the object to add to the cache. /// /// A which represents the object to add. This stream /// will be copied to the cache. /// + /// The object type of the object to add to the cache. /// /// A which represents the cached entry. /// - public abstract Stream Add(long offset, string objectType, Stream stream); + public abstract Stream Add(long offset, Stream stream, string objectType); /// public void Dispose() diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCache.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCache.cs index 62a9d82ce..8043d87e1 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCache.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackMemoryCache.cs @@ -21,7 +21,7 @@ namespace Nerdbank.GitVersioning.ManagedGit; /// twice, it is read from the , rather than the underlying . /// /// -/// and return +/// and return /// objects which may operate on the same underlying , but independently maintain /// their state. /// @@ -31,7 +31,7 @@ public class GitPackMemoryCache : GitPackCache private readonly Dictionary cache = new(); /// - public override Stream Add(long offset, string objectType, Stream stream) + public override Stream Add(long offset, Stream stream, string objectType) { var cacheStream = new GitPackMemoryCacheStream(stream); this.cache.Add(offset, (cacheStream, objectType)); diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackNullCache.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackNullCache.cs index 157930124..67ffdc14e 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackNullCache.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackNullCache.cs @@ -19,7 +19,7 @@ public class GitPackNullCache : GitPackCache public static GitPackNullCache Instance { get; } = new GitPackNullCache(); /// - public override Stream Add(long offset, string objectType, Stream stream) + public override Stream Add(long offset, Stream stream, string objectType) { return stream; } diff --git a/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackMemoryCacheTests.cs b/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackMemoryCacheTests.cs index 78a4ede6f..32aaa85b6 100644 --- a/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackMemoryCacheTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackMemoryCacheTests.cs @@ -20,7 +20,7 @@ public void StreamsAreIndependent() { var cache = new GitPackMemoryCache(); - Stream stream1 = cache.Add(0, "anObjectType", stream); + Stream stream1 = cache.Add(0, stream, "anObjectType"); Assert.True(cache.TryOpen(0, out (Stream ContentStream, string ObjectType)? hit)); Assert.True(hit.HasValue); Assert.Equal("anObjectType", hit.Value.ObjectType); From 7d92b4ab86281d8f041d79c1b01018c98a211286 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Jul 2023 15:02:28 -0600 Subject: [PATCH 041/257] Bump xunit.runner.visualstudio from 2.4.5 to 2.5.0 (#210) Bumps [xunit.runner.visualstudio](https://github.com/xunit/visualstudio.xunit) from 2.4.5 to 2.5.0. - [Release notes](https://github.com/xunit/visualstudio.xunit/releases) - [Commits](https://github.com/xunit/visualstudio.xunit/compare/v2.4.5...2.5.0) --- updated-dependencies: - dependency-name: xunit.runner.visualstudio dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index c15928bee..3ac312f9d 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,7 +6,7 @@ - + From 2e19c89761d8d7f934250f4effca22136c48cf39 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Jul 2023 21:08:52 +0000 Subject: [PATCH 042/257] Bump xunit from 2.4.2 to 2.5.0 (#209) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 3ac312f9d..6af95c882 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -7,7 +7,7 @@ - + From 75b0953f6e91e66076030f20fa0bc4a2990ad906 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 10 Jul 2023 15:25:18 -0600 Subject: [PATCH 043/257] Remove `tool run` from `dotnet nbgv` invocation I have an Azure Pipeline where `InsertVersionsValues.ps1` (in the microbuild branch) works but this step fails, and the only difference is that one omits `tool run` from `dotnet nbgv`. I continue to believe this is a bug in the `dotnet tool` command. --- azure-pipelines/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azure-pipelines/build.yml b/azure-pipelines/build.yml index 2e2f426e0..9c445f727 100644 --- a/azure-pipelines/build.yml +++ b/azure-pipelines/build.yml @@ -17,7 +17,7 @@ jobs: clean: true - template: install-dependencies.yml - - script: dotnet tool run nbgv cloud -c + - script: dotnet nbgv cloud -c displayName: ⚙ Set build number - template: dotnet.yml From 442ca7c6e521a55a39351b9ef3a3b81207fa4ef5 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 10 Jul 2023 16:12:43 -0600 Subject: [PATCH 044/257] Dependabot to ignore dotnet-format --- .github/dependabot.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 63e3e890b..484f2bfcd 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -7,3 +7,7 @@ updates: directory: / schedule: interval: weekly + ignore: + # This package has unlisted versions on nuget.org that are not supported. Avoid them. + - dependency-name: dotnet-format + versions: ["6.x", "7.x", "8.x"] From b379933ef3581bd4904e883d92ebcd72a018a321 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 10 Jul 2023 19:46:17 -0600 Subject: [PATCH 045/257] Set tab settings for .ps1 files --- .editorconfig | 4 ++++ .vscode/settings.json | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.editorconfig b/.editorconfig index fce73c076..959801c2e 100644 --- a/.editorconfig +++ b/.editorconfig @@ -32,6 +32,10 @@ indent_size = 2 indent_size = 2 indent_style = space +[*.ps1] +indent_style = space +indent_size = 4 + # Dotnet code style settings: [*.{cs,vb}] # Sort using and Import directives with System.* appearing first diff --git a/.vscode/settings.json b/.vscode/settings.json index 3ae1371c6..54c5c6896 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -3,6 +3,6 @@ "files.insertFinalNewline": true, "files.trimFinalNewlines": true, "omnisharp.enableEditorConfigSupport": true, - "omnisharp.enableImportCompletion": true, - "omnisharp.enableRoslynAnalyzers": true + "omnisharp.enableRoslynAnalyzers": true, + "dotnet.completion.showCompletionItemsFromUnimportedNamespaces": true } From fb9ce11ac44a342856dccf79ea33bae3d02b8f37 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Jul 2023 21:36:32 -0600 Subject: [PATCH 046/257] Bump semver from 5.7.1 to 5.7.2 in /src/nerdbank-gitversioning.npm (#965) Bumps [semver](https://github.com/npm/node-semver) from 5.7.1 to 5.7.2. - [Release notes](https://github.com/npm/node-semver/releases) - [Changelog](https://github.com/npm/node-semver/blob/v5.7.2/CHANGELOG.md) - [Commits](https://github.com/npm/node-semver/compare/v5.7.1...v5.7.2) --- updated-dependencies: - dependency-name: semver dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/nerdbank-gitversioning.npm/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index f0db7b1fa..c8d8c60cf 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -2412,9 +2412,9 @@ semver-greatest-satisfied-range@^1.1.0: sver-compat "^1.5.0" "semver@2 || 3 || 4 || 5": - version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + version "5.7.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" + integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== set-blocking@^2.0.0: version "2.0.0" From 9631e3504847614443080f80d17312d81869e171 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 12 Jul 2023 20:51:41 -0600 Subject: [PATCH 047/257] Bump typescript from 5.1.3 to 5.1.6 in /src/nerdbank-gitversioning.npm (#962) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.1.3 to 5.1.6. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/commits) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/nerdbank-gitversioning.npm/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index c8d8c60cf..0ab6ed099 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -2743,9 +2743,9 @@ typedarray@^0.0.6: integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= typescript@^5.0.4: - version "5.1.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.3.tgz#8d84219244a6b40b6fb2b33cc1c062f715b9e826" - integrity sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw== + version "5.1.6" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.6.tgz#02f8ac202b6dad2c0dd5e0913745b47a37998274" + integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA== unc-path-regex@^0.1.2: version "0.1.2" From 0f7accdd5ed39690633bba7a7f9f83f3caf0b970 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jul 2023 07:37:40 -0600 Subject: [PATCH 048/257] Bump powershell from 7.3.5 to 7.3.6 (#212) Bumps [powershell](https://github.com/PowerShell/PowerShell) from 7.3.5 to 7.3.6. - [Release notes](https://github.com/PowerShell/PowerShell/releases) - [Commits](https://github.com/PowerShell/PowerShell/compare/v7.3.5...v7.3.6) --- updated-dependencies: - dependency-name: powershell dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index e344d8b0d..f8713e90a 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "powershell": { - "version": "7.3.5", + "version": "7.3.6", "commands": [ "pwsh" ] From 05a925a4be9598efcffce2fdd7fb3135d5f7f8be Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jul 2023 07:38:14 -0600 Subject: [PATCH 049/257] Bump dotnet-coverage from 17.7.3 to 17.8.0 (#211) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.7.3 to 17.8.0. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index f8713e90a..05b6b5bb1 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "dotnet-coverage": { - "version": "17.7.3", + "version": "17.8.0", "commands": [ "dotnet-coverage" ] From 0cc89db1dda3f9c7a436bea77e903f17baf7a989 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sat, 22 Jul 2023 11:14:58 -0600 Subject: [PATCH 050/257] Bump dotnet-coverage to 17.8.2 --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 05b6b5bb1..a20f90b96 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "dotnet-coverage": { - "version": "17.8.0", + "version": "17.8.2", "commands": [ "dotnet-coverage" ] From 2651c692388aa2e27213c7b89959de56b81f1ecb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 7 Aug 2023 10:09:53 -0600 Subject: [PATCH 051/257] Bump Microsoft.NET.Test.Sdk from 17.6.3 to 17.7.0 (#213) Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.6.3 to 17.7.0. - [Release notes](https://github.com/microsoft/vstest/releases) - [Changelog](https://github.com/microsoft/vstest/blob/main/docs/releases.md) - [Commits](https://github.com/microsoft/vstest/compare/v17.6.3...v17.7.0) --- updated-dependencies: - dependency-name: Microsoft.NET.Test.Sdk dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 6af95c882..58a5a2656 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -5,7 +5,7 @@ true - + From f764c84caec60eff9579c03ce16db43b142c2d74 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Aug 2023 09:15:30 -0600 Subject: [PATCH 052/257] Bump Microsoft.NET.Test.Sdk from 17.7.0 to 17.7.1 (#214) Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.7.0 to 17.7.1. - [Release notes](https://github.com/microsoft/vstest/releases) - [Changelog](https://github.com/microsoft/vstest/blob/main/docs/releases.md) - [Commits](https://github.com/microsoft/vstest/compare/v17.7.0...v17.7.1) --- updated-dependencies: - dependency-name: Microsoft.NET.Test.Sdk dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 58a5a2656..8d5408940 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -5,7 +5,7 @@ true - + From 05f9dd77512332bdd8a312db97bd07d26084b935 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Aug 2023 15:18:33 +0000 Subject: [PATCH 053/257] Bump dotnet-coverage from 17.8.2 to 17.8.4 (#215) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.8.2 to 17.8.4. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index a20f90b96..2b62ebce6 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "dotnet-coverage": { - "version": "17.8.2", + "version": "17.8.4", "commands": [ "dotnet-coverage" ] From c8abc41f0afd07c570d13d6ac41134da00485d91 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 31 Aug 2023 10:41:26 -0600 Subject: [PATCH 054/257] Align YAML indentation more consistently --- .github/dependabot.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 484f2bfcd..a0e8933bb 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -8,6 +8,6 @@ updates: schedule: interval: weekly ignore: - # This package has unlisted versions on nuget.org that are not supported. Avoid them. - - dependency-name: dotnet-format - versions: ["6.x", "7.x", "8.x"] + # This package has unlisted versions on nuget.org that are not supported. Avoid them. + - dependency-name: dotnet-format + versions: ["6.x", "7.x", "8.x"] From 295313bfbc59d3c6fe8fa4c9e5f080d86d236f95 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Aug 2023 11:27:21 -0600 Subject: [PATCH 055/257] Bump Microsoft.NET.Test.Sdk from 17.7.1 to 17.7.2 (#218) Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.7.1 to 17.7.2. - [Release notes](https://github.com/microsoft/vstest/releases) - [Changelog](https://github.com/microsoft/vstest/blob/main/docs/releases.md) - [Commits](https://github.com/microsoft/vstest/compare/v17.7.1...v17.7.2) --- updated-dependencies: - dependency-name: Microsoft.NET.Test.Sdk dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 8d5408940..76d18e0d8 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -5,7 +5,7 @@ true - + From 0a35e80ec55441fc0c10d2ea68cd03e6b4c64004 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 5 Sep 2023 15:31:49 -0600 Subject: [PATCH 056/257] Fix typo in comment --- src/Directory.Build.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Directory.Build.props b/src/Directory.Build.props index 5be1dd441..5e648d5ee 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -1,5 +1,5 @@ - + README.md From cf980d71f2dc30d777674b77a1afef6a1e8ddd72 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 8 Sep 2023 10:43:58 -0600 Subject: [PATCH 057/257] Bump dotnet-coverage to 17.8.6 --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 2b62ebce6..d93241f4c 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "dotnet-coverage": { - "version": "17.8.4", + "version": "17.8.6", "commands": [ "dotnet-coverage" ] From b9fb50c4cebf4dc9ec42a137d6bfeb255afa8a08 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 11 Sep 2023 06:55:37 -0600 Subject: [PATCH 058/257] Add option to include package version in `ThisAssembly` class Document this and other MSBuild properties and items that customize the build. Closes #409 --- doc/msbuild.md | 41 +++++++++++++++++++ .../build/Nerdbank.GitVersioning.targets | 3 ++ 2 files changed, 44 insertions(+) diff --git a/doc/msbuild.md b/doc/msbuild.md index 10b23e8a8..da1efa33c 100644 --- a/doc/msbuild.md +++ b/doc/msbuild.md @@ -38,6 +38,47 @@ You should only build with this property set from one release branch per major.minor version to avoid the risk of producing multiple unique NuGet packages with a colliding version spec. +## Customization through MSBuild + +### Properties + +The following MSBuild properties may be set in your project to customize certain Nerdbank.GitVersioning behaviors: + +Property | Default | Description +--|--|-- +`NBGV_ThisAssemblyNamespace` | `$(RootNamespace)` | Sets the namespace to use for the generated `ThisAssembly` class. +`NBGV_EmitThisAssemblyClass` | `true` | When `false`, suppresses generation of the `ThisAssembly` class. +`NBGV_ThisAssemblyIncludesPackageVersion` | `false` | When `true`, a `NuGetPackageVersion` property is added to the `ThisAssembly` class. + +### Custom `ThisAssembly` static fields and constants + +Custom constants may be added to the `ThisAssembly` class through `AdditionalThisAssemblyFields` items defined in your project. +The item name becomes the constant's name. The value of the constant may be defined by metadata whose name determines the type of the constant as follows: + +Metadata name | Property type | Notes +--|--|-- +`String` | `string` | These may also carry `EmitIfEmpty="true"` metadata to force generation of the constant even if the string value is empty. +`Boolean` | `bool` | +`Ticks` | `DateTime` | The integer specified in msbuild metadata will be interpreted as ticks to construct the `DateTime` value. + +For example, to the following MSBuild items: + +```xml + + + + + +``` + +Will add the following constants or static fields to the `ThisAssembly` class: + +```cs +internal const bool FinalRelease = true; +internal const string MyMessage = "Hello World"; +internal static readonly DateTime AGoodMoment = new System.DateTime(638300335845163552L, System.DateTimeKind.Utc); +``` + ## Custom build authoring If you are writing your own MSBuild targets or properties and need to consume version information, diff --git a/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets b/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets index f617e51ad..9444314c7 100644 --- a/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets +++ b/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets @@ -120,6 +120,9 @@ $([MSBuild]::NormalizePath('$(IntermediateOutputPath)', '$(AssemblyName).Version$(DefaultLanguageSourceExtension)')) $(VersionSourceFile).new + + + Date: Wed, 13 Sep 2023 18:55:15 -0600 Subject: [PATCH 059/257] Document MSBuild custom targets better Closes #975 --- doc/msbuild.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/doc/msbuild.md b/doc/msbuild.md index da1efa33c..1fc22d860 100644 --- a/doc/msbuild.md +++ b/doc/msbuild.md @@ -79,7 +79,7 @@ internal const string MyMessage = "Hello World"; internal static readonly DateTime AGoodMoment = new System.DateTime(638300335845163552L, System.DateTimeKind.Utc); ``` -## Custom build authoring +### Custom build authoring If you are writing your own MSBuild targets or properties and need to consume version information, Nerdbank.GitVersioning is there to help. @@ -101,6 +101,11 @@ In the above example, the `AssemblyVersion` property, which is set by the another property. It could also be used to define msbuild items or anything else you want. +Note that in the simple example above, `MyPropertySetter` will not execute unless explicitly requested from the command line with a `/t:MyPropertySetter` switch. +If you want your target to run as part of a build by default, you will need to add attributes to the `Target` or set other properties that influence existing targets to depend on this one. +For example, you might add `BeforeTargets="CoreCompile"` if your target sets properties that will be consumed by the compiler. +[Learn more about custom MSBuild targets from the Microsoft documentation](https://learn.microsoft.com/visualstudio/msbuild/msbuild-targets). + ### MSBuild properties defined in `GetBuildVersion` Many MSBuild properties are set by `GetBuildVersion` allowing you to define or redefine From c5fb275cd3172c51b793ed310995013c367dff64 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 14 Sep 2023 07:08:38 -0600 Subject: [PATCH 060/257] Add README to nbgv and cake packages --- src/Cake.GitVersioning/README.md | 14 ++++++++++++++ src/nbgv/README.md | 11 +++++++++++ 2 files changed, 25 insertions(+) create mode 100644 src/Cake.GitVersioning/README.md create mode 100644 src/nbgv/README.md diff --git a/src/Cake.GitVersioning/README.md b/src/Cake.GitVersioning/README.md new file mode 100644 index 000000000..4de5522e4 --- /dev/null +++ b/src/Cake.GitVersioning/README.md @@ -0,0 +1,14 @@ +This is a [Cake Build](https://cakebuild.net/) plugin that adds [Nerdbank.GitVersioning](https://github.com/dotnet/Nerdbank.GitVersioning#readme) functionality to your build. + +## Usage + +Add `#addin Cake.GitVersioning` to the top of your Cake Build script. See [here](https://github.com/dotnet/Nerdbank.GitVersioning/wiki/GitVersioningAliases) for usage. See [here](https://github.com/dotnet/Nerdbank.GitVersioning/wiki/VersionOracle) for the VersionOracle usage. + +### Example +~~~~csharp +Task("GetVersion") + .Does(() => +{ + Information(GitVersioningGetVersion().SemVer2) +}); +~~~~ diff --git a/src/nbgv/README.md b/src/nbgv/README.md new file mode 100644 index 000000000..da398a612 --- /dev/null +++ b/src/nbgv/README.md @@ -0,0 +1,11 @@ +This is a .NET tool that provides CLI access to [Nerdbank.GitVersioning](https://github.com/dotnet/Nerdbank.GitVersioning#readme) functions. + +Some operations supported by this tool: + +- Install Nerdbank.GitVersioning to an msbuild-based repo. +- Translate between computed versions and the commits that create them. +- Tag a commit with its computed version. +- Set variables in a CI build. +- Prepares for a stable release of your software. + +After installing, use `nbgv -?` to learn more. From 57c92e42f8b9766c9fde571f0223415df38eb23d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 14 Sep 2023 07:41:17 -0600 Subject: [PATCH 061/257] Bump del from 7.0.0 to 7.1.0 in /src/nerdbank-gitversioning.npm (#972) Bumps [del](https://github.com/sindresorhus/del) from 7.0.0 to 7.1.0. - [Release notes](https://github.com/sindresorhus/del/releases) - [Commits](https://github.com/sindresorhus/del/compare/v7.0.0...v7.1.0) --- updated-dependencies: - dependency-name: del dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/nerdbank-gitversioning.npm/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index 0ab6ed099..c7bcbb50e 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -624,9 +624,9 @@ define-property@^2.0.2: isobject "^3.0.1" del@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/del/-/del-7.0.0.tgz#79db048bec96f83f344b46c1a66e35d9c09fe8ac" - integrity sha512-tQbV/4u5WVB8HMJr08pgw0b6nG4RGt/tj+7Numvq+zqcvUFeMaIWWOUFltiU+6go8BSO2/ogsB4EasDaj0y68Q== + version "7.1.0" + resolved "https://registry.yarnpkg.com/del/-/del-7.1.0.tgz#0de0044d556b649ff05387f1fa7c885e155fd1b6" + integrity sha512-v2KyNk7efxhlyHpjEvfyxaAihKKK0nWCuf6ZtqZcFFpQRG0bJ12Qsr0RpvsICMjAAZ8DOVCxrlqpxISlMHC4Kg== dependencies: globby "^13.1.2" graceful-fs "^4.2.10" From 661c4e50c66c90ea71b1a8d7cfb47dbe46596e7c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 14 Sep 2023 07:42:13 -0600 Subject: [PATCH 062/257] Bump System.Text.Json from 7.0.2 to 7.0.3 (#960) Bumps [System.Text.Json](https://github.com/dotnet/runtime) from 7.0.2 to 7.0.3. - [Release notes](https://github.com/dotnet/runtime/releases) - [Commits](https://github.com/dotnet/runtime/compare/v7.0.2...v7.0.3) --- updated-dependencies: - dependency-name: System.Text.Json dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 45808870e..83d0c5a0c 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -34,7 +34,7 @@ - + From 2b780874bae84650dfe521853db8b4c23fceb89a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 14 Sep 2023 07:43:11 -0600 Subject: [PATCH 063/257] Bump typescript from 5.1.6 to 5.2.2 in /src/nerdbank-gitversioning.npm (#971) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.1.6 to 5.2.2. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/compare/v5.1.6...v5.2.2) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/nerdbank-gitversioning.npm/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index c7bcbb50e..a999c0fc5 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -2743,9 +2743,9 @@ typedarray@^0.0.6: integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= typescript@^5.0.4: - version "5.1.6" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.6.tgz#02f8ac202b6dad2c0dd5e0913745b47a37998274" - integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA== + version "5.2.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.2.2.tgz#5ebb5e5a5b75f085f22bc3f8460fba308310fa78" + integrity sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w== unc-path-regex@^0.1.2: version "0.1.2" From a909655d0ec1e9420b07286c0723d83d680df79e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 14 Sep 2023 14:09:49 +0000 Subject: [PATCH 064/257] Bump Xunit.Combinatorial from 1.5.25 to 1.6.24 (#978) Bumps [Xunit.Combinatorial](https://github.com/AArnott/Xunit.Combinatorial) from 1.5.25 to 1.6.24. - [Release notes](https://github.com/AArnott/Xunit.Combinatorial/releases) - [Commits](https://github.com/AArnott/Xunit.Combinatorial/compare/v1.5.25...v1.6.24) --- updated-dependencies: - dependency-name: Xunit.Combinatorial dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 83d0c5a0c..5325bc223 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -37,7 +37,7 @@ - + From 9675c18962384868bfc2cf46485ccea1db798f0d Mon Sep 17 00:00:00 2001 From: Georg Jung Date: Sat, 16 Sep 2023 02:07:33 +0200 Subject: [PATCH 065/257] Add git-based detection of tags at HEAD to improve PublicRelease detection (#876) * Add wip tag lookup * Managed git does not support annotated tags yet * json output reads: "NBGV_BuildingTags": "System.Collections.Generic.List`1[System.String]", * Add managed git support for annotated tags * Fix nullable warnings * Fix mistaken comment in GitCommitReader * Fix nullability issues and code style * Add workaround for improper GitPack.TryGetValue function * Make HeadTags return null instead of throwing if no HEAD Throwing was intentional to match HeadCanonicalName behaviour. Throwing fails the tests though. Maybe this is because the tests run in a cloud build environment and HeadCanonicalName isn't used there? this.BuildingRef = cloudBuild?.BuildingTag ?? cloudBuild?.BuildingBranch ?? context.HeadCanonicalName; This would mean that the tests would currently fail when executed locally. * Fix xml doc * Add some minor improvements * Fix packed-refs handling * Make LibGit2Context behave like ManagedGit Return null if no HEAD could be determined, return an empty collection if there are no matching tags. * Add [Ignore] to exclude BuildingTags from CloudBuildAllVars * Cache tags collections * Reduce allocations for `GitAnnotatedTag` equality checks * Skip tag candidate collection, reduce string operations * Fix handling of peel lines in packed-refs Without this fix we might have considered one level of transitive annotated tags, if a peel line is present in packed-refs. With this fix we also avoid reading the git pack of annotated tags that have peel lines and do not match the object id we are looking for. * Fix EnumeratePackedRefsWithPeelLines * Clarify EnumeratePackedRefsWithPeelLines * Speedup: Use packed-refs header, consider records peeled if applicable x * Fix: read from disposed StreamReader * Avoid exploring tags unless version.json needs it * Add first Tags test * Add annotated tag test * Capture failure drop in its entirety * Add runtime check on ParseHex argument * Collect .git directory too * Adapt to changes on main * Touch-ups --------- Co-authored-by: Andrew Arnott Co-authored-by: Andrew Arnott --- azure-pipelines/dotnet.yml | 7 + .../DisabledGit/DisabledGitContext.cs | 2 + src/NerdBank.GitVersioning/GitContext.cs | 5 + .../LibGit2/LibGit2Context.cs | 19 ++ .../Managed/ManagedGitContext.cs | 11 + .../ManagedGit/GitAnnotatedTag.cs | 53 +++++ .../ManagedGit/GitAnnotatedTagReader.cs | 133 +++++++++++ .../ManagedGit/GitCommitReader.cs | 4 +- .../ManagedGit/GitObjectId.cs | 32 ++- .../ManagedGit/GitPack.cs | 21 +- .../ManagedGit/GitRepository.cs | 209 +++++++++++++++--- .../NoGit/NoGitContext.cs | 3 + src/NerdBank.GitVersioning/VersionOracle.cs | 25 ++- .../VersionOracleTests.cs | 44 ++++ 14 files changed, 527 insertions(+), 41 deletions(-) create mode 100644 src/NerdBank.GitVersioning/ManagedGit/GitAnnotatedTag.cs create mode 100644 src/NerdBank.GitVersioning/ManagedGit/GitAnnotatedTagReader.cs diff --git a/azure-pipelines/dotnet.yml b/azure-pipelines/dotnet.yml index 4fd00fa80..323b2572a 100644 --- a/azure-pipelines/dotnet.yml +++ b/azure-pipelines/dotnet.yml @@ -23,6 +23,13 @@ steps: displayName: 🛠️ Build nerdbank-gitversioning NPM package workingDirectory: src/nerdbank-gitversioning.npm +- pwsh: | + md $(Build.ArtifactStagingDirectory)\drop + 7z a $(Build.ArtifactStagingDirectory)\drop\nbgv.7z * -r + Write-Host "##vso[artifact.upload containerfolder=drop;artifactname=drop;]$(Build.ArtifactStagingDirectory)\drop" + displayName: Capture .git directory + condition: and(failed(), eq(variables['Agent.OS'], 'Windows_NT')) + - powershell: azure-pipelines/dotnet-test-cloud.ps1 -Configuration $(BuildConfiguration) -Agent $(Agent.JobName) -PublishResults displayName: 🧪 dotnet test condition: and(succeeded(), ${{ parameters.RunTests }}) diff --git a/src/NerdBank.GitVersioning/DisabledGit/DisabledGitContext.cs b/src/NerdBank.GitVersioning/DisabledGit/DisabledGitContext.cs index baf180128..0b9c5ca6e 100644 --- a/src/NerdBank.GitVersioning/DisabledGit/DisabledGitContext.cs +++ b/src/NerdBank.GitVersioning/DisabledGit/DisabledGitContext.cs @@ -26,6 +26,8 @@ public DisabledGitContext(string workingTreePath) public override string? HeadCanonicalName => null; + public override IReadOnlyCollection? HeadTags => null; + private string DebuggerDisplay => $"\"{this.WorkingTreePath}\" (disabled-git)"; public override void ApplyTag(string name) => throw new NotSupportedException(); diff --git a/src/NerdBank.GitVersioning/GitContext.cs b/src/NerdBank.GitVersioning/GitContext.cs index 22e792f49..e7d30c1ae 100644 --- a/src/NerdBank.GitVersioning/GitContext.cs +++ b/src/NerdBank.GitVersioning/GitContext.cs @@ -118,6 +118,11 @@ public string RepoRelativeProjectDirectory /// public abstract string? HeadCanonicalName { get; } + /// + /// Gets a collection of the tags that reference HEAD. + /// + public abstract IReadOnlyCollection? HeadTags { get; } + /// /// Gets the path to the .git folder. /// diff --git a/src/NerdBank.GitVersioning/LibGit2/LibGit2Context.cs b/src/NerdBank.GitVersioning/LibGit2/LibGit2Context.cs index 1aa804c17..00294c7d5 100644 --- a/src/NerdBank.GitVersioning/LibGit2/LibGit2Context.cs +++ b/src/NerdBank.GitVersioning/LibGit2/LibGit2Context.cs @@ -14,6 +14,11 @@ namespace Nerdbank.GitVersioning.LibGit2; [DebuggerDisplay("{" + nameof(DebuggerDisplay) + ",nq}")] public class LibGit2Context : GitContext { + /// + /// Caching field behind property. + /// + private IReadOnlyCollection? headTags; + internal LibGit2Context(string workingTreeDirectory, string dotGitPath, string? committish = null) : base(workingTreeDirectory, dotGitPath) { @@ -51,6 +56,20 @@ internal LibGit2Context(string workingTreeDirectory, string dotGitPath, string? /// public override string HeadCanonicalName => this.Repository.Head.CanonicalName; + /// + public override IReadOnlyCollection? HeadTags + { + get + { + return this.headTags ??= this.Commit is not null + ? this.Repository.Tags + .Where(tag => tag.Target.Sha.Equals(this.Commit.Sha)) + .Select(tag => tag.CanonicalName) + .ToList() + : null; + } + } + private string DebuggerDisplay => $"\"{this.WorkingTreePath}\" (libgit2)"; /// Initializes a new instance of the class. diff --git a/src/NerdBank.GitVersioning/Managed/ManagedGitContext.cs b/src/NerdBank.GitVersioning/Managed/ManagedGitContext.cs index aa4cc1072..b21977995 100644 --- a/src/NerdBank.GitVersioning/Managed/ManagedGitContext.cs +++ b/src/NerdBank.GitVersioning/Managed/ManagedGitContext.cs @@ -15,6 +15,11 @@ namespace Nerdbank.GitVersioning.Managed; [DebuggerDisplay("{" + nameof(DebuggerDisplay) + ",nq}")] public class ManagedGitContext : GitContext { + /// + /// Caching field behind property. + /// + private IReadOnlyCollection? headTags; + internal ManagedGitContext(string workingDirectory, string dotGitPath, string? committish = null) : base(workingDirectory, dotGitPath) { @@ -53,6 +58,12 @@ internal ManagedGitContext(string workingDirectory, string dotGitPath, string? c /// public override string HeadCanonicalName => this.Repository.GetHeadAsReferenceOrSha().ToString() ?? throw new InvalidOperationException("Unable to determine the HEAD position."); + /// + public override IReadOnlyCollection? HeadTags + { + get => this.headTags ??= this.Repository.Lookup("HEAD") is GitObjectId head ? this.Repository.LookupTags(head) : null; + } + private string DebuggerDisplay => $"\"{this.WorkingTreePath}\" (managed)"; /// Initializes a new instance of the class. diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitAnnotatedTag.cs b/src/NerdBank.GitVersioning/ManagedGit/GitAnnotatedTag.cs new file mode 100644 index 000000000..6ca2ffa89 --- /dev/null +++ b/src/NerdBank.GitVersioning/ManagedGit/GitAnnotatedTag.cs @@ -0,0 +1,53 @@ +// Copyright (c) .NET Foundation and Contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +#nullable enable + +using System.Collections; + +namespace Nerdbank.GitVersioning.ManagedGit; + +/// +/// Represents a Git annotated tag, as stored in the Git object database. +/// +public struct GitAnnotatedTag : IEquatable +{ + /// + /// Gets or sets the of object this tag is pointing at. + /// + public GitObjectId Object { get; set; } + + /// + /// Gets or sets a which uniquely identifies the . + /// + public GitObjectId Sha { get; set; } + + /// + /// Gets or sets the tag name of this annotated tag. + /// + public string Tag { get; set; } + + /// + /// Gets or sets the type of the object this tag is pointing to, e.g. "commit" or, for nested tags, "tag". + /// + public string Type { get; set; } + + public static bool operator ==(GitAnnotatedTag left, GitAnnotatedTag right) => left.Equals(right); + + public static bool operator !=(GitAnnotatedTag left, GitAnnotatedTag right) => !(left == right); + + /// + public override bool Equals(object? obj) => obj is GitAnnotatedTag tag ? this.Equals(tag) : false; + + /// + public bool Equals(GitAnnotatedTag other) => this.Sha.Equals(other.Sha); + + /// + public override int GetHashCode() => this.Sha.GetHashCode(); + + /// + public override string ToString() + { + return $"Git Tag: {this.Tag} with id {this.Sha}"; + } +} diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitAnnotatedTagReader.cs b/src/NerdBank.GitVersioning/ManagedGit/GitAnnotatedTagReader.cs new file mode 100644 index 000000000..654bfee0a --- /dev/null +++ b/src/NerdBank.GitVersioning/ManagedGit/GitAnnotatedTagReader.cs @@ -0,0 +1,133 @@ +// Copyright (c) .NET Foundation and Contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +#nullable enable + +using System.Buffers; +using System.Diagnostics; +using System.Xml.Linq; +using LibGit2Sharp; +using Validation; + +namespace Nerdbank.GitVersioning.ManagedGit; + +/// +/// Reads a object. +/// +public static class GitAnnotatedTagReader +{ + private const int ObjectLineLength = 48; + + private static readonly byte[] ObjectStart = GitRepository.Encoding.GetBytes("object "); + private static readonly byte[] TypeStart = GitRepository.Encoding.GetBytes("type "); + private static readonly byte[] TagStart = GitRepository.Encoding.GetBytes("tag "); + + /// + /// Reads a object from a . + /// + /// + /// A which contains the in its text representation. + /// + /// + /// The of the commit. + /// + /// + /// The . + /// + public static GitAnnotatedTag Read(Stream stream, GitObjectId sha) + { + Requires.NotNull(stream, nameof(stream)); + + byte[] buffer = ArrayPool.Shared.Rent(checked((int)stream.Length)); + + try + { + Span span = buffer.AsSpan(0, (int)stream.Length); + stream.ReadAll(span); + + return Read(span, sha); + } + finally + { + ArrayPool.Shared.Return(buffer); + } + } + + /// + /// Reads a object from a . + /// + /// + /// A which contains the in its text representation. + /// + /// + /// The of the annotated tag. + /// + /// + /// The . + /// + public static GitAnnotatedTag Read(ReadOnlySpan tag, GitObjectId sha) + { + ReadOnlySpan buffer = tag; + + GitObjectId obj = ReadObject(buffer.Slice(0, ObjectLineLength)); + buffer = buffer.Slice(ObjectLineLength); + + (string type, int typeLen) = ReadType(buffer); + buffer = buffer.Slice(typeLen); + + (string tagName, _) = ReadTag(buffer); + + return new GitAnnotatedTag + { + Sha = sha, + Object = obj, + Type = type, + Tag = tagName, + }; + } + + private static GitObjectId ReadObject(ReadOnlySpan line) + { + // Format: object d8329fc1cc938780ffdd9f94e0d364e0ea74f579\n + // 48 bytes: + // object: 6 bytes + // space: 1 byte + // hash: 40 bytes + // \n: 1 byte + Debug.Assert(line.Slice(0, ObjectStart.Length).SequenceEqual(ObjectStart)); + Debug.Assert(line[ObjectLineLength - 1] == (byte)'\n'); + + return GitObjectId.ParseHex(line.Slice(ObjectStart.Length, 40)); + } + + private static (string Content, int BytesRead) ReadPrefixedString(ReadOnlySpan remaining, byte[] prefix) + { + Debug.Assert(remaining.Slice(0, prefix.Length).SequenceEqual(prefix)); + + int lineEnd = remaining.IndexOf((byte)'\n'); + ReadOnlySpan type = remaining.Slice(prefix.Length, lineEnd - prefix.Length); + return (GitRepository.GetString(type), lineEnd + 1); + } + + private static (string Content, int BytesRead) ReadType(ReadOnlySpan remaining) + { + // Format: type commit\n + // bytes: + // type: 4 bytes + // space: 1 byte + // : bytes + // \n: 1 byte + return ReadPrefixedString(remaining, TypeStart); + } + + private static (string Content, int BytesRead) ReadTag(ReadOnlySpan remaining) + { + // Format: tag someAnnotatedTag\n + // bytes: + // tag: 3 bytes + // space: 1 byte + // : bytes + // \n: 1 byte + return ReadPrefixedString(remaining, TagStart); + } +} diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitCommitReader.cs b/src/NerdBank.GitVersioning/ManagedGit/GitCommitReader.cs index e4629e2ad..a59ced3b9 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitCommitReader.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitCommitReader.cs @@ -123,8 +123,8 @@ public static GitCommit Read(ReadOnlySpan commit, GitObjectId sha, bool re private static GitObjectId ReadTree(ReadOnlySpan line) { // Format: tree d8329fc1cc938780ffdd9f94e0d364e0ea74f579\n - // 47 bytes: - // tree: 5 bytes + // 46 bytes: + // tree: 4 bytes // space: 1 byte // hash: 40 bytes // \n: 1 byte diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitObjectId.cs b/src/NerdBank.GitVersioning/ManagedGit/GitObjectId.cs index 9dc03ef0b..f8aeb63d2 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitObjectId.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitObjectId.cs @@ -67,17 +67,17 @@ public static GitObjectId Parse(ReadOnlySpan value) } /// - /// Parses a which contains the hexadecimal representation of a - /// . + /// Parses a of which contains the + /// hexadecimal representation of a . /// /// - /// A which contains the hexadecimal representation of the - /// . + /// A of which contains the + /// hexadecimal representation of the . /// /// /// A . /// - public static GitObjectId Parse(string value) + public static GitObjectId Parse(ReadOnlySpan value) { Debug.Assert(value.Length == 40); @@ -92,6 +92,23 @@ public static GitObjectId Parse(string value) bytes[i >> 1] = (byte)(c1 + c2); } + return objectId; + } + + /// + /// Parses a which contains the hexadecimal representation of a + /// . + /// + /// + /// A which contains the hexadecimal representation of the + /// . + /// + /// + /// A . + /// + public static GitObjectId Parse(string value) + { + GitObjectId objectId = Parse(value.AsSpan()); objectId.sha = value.ToLower(); return objectId; } @@ -109,7 +126,10 @@ public static GitObjectId Parse(string value) /// public static GitObjectId ParseHex(ReadOnlySpan value) { - Debug.Assert(value.Length == 40); + if (value.Length != 40) + { + throw new ArgumentException($"Length should be exactly 40, but was {value.Length}.", nameof(value)); + } var objectId = default(GitObjectId); Span bytes = objectId.Value; diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs index 6a6592c42..d8b94526b 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPack.cs @@ -3,6 +3,7 @@ #nullable enable +using System.Diagnostics.CodeAnalysis; using System.IO.MemoryMappedFiles; using System.Text; @@ -141,7 +142,7 @@ public GitPack(GetObjectFromRepositoryDelegate getObjectFromRepositoryDelegate, /// /// if the object was found; otherwise, . /// - public bool TryGetObject(GitObjectId objectId, string objectType, out Stream? value) + public bool TryGetObject(GitObjectId objectId, string objectType, [NotNullWhen(true)] out Stream? value) { long? offset = this.GetOffset(objectId); @@ -152,8 +153,18 @@ public bool TryGetObject(GitObjectId objectId, string objectType, out Stream? va } else { - value = this.GetObject(offset.Value, objectType); - return true; + // This try-catch should probably be replaced by a non-throwing GetObject implementation. + // This is in turn dependend on a proper GitPackReader.TryGetObject implementation. + try + { + value = this.GetObject(offset.Value, objectType); + return true; + } + catch (GitException gexc) when (gexc.ErrorCode == GitException.ErrorCodes.ObjectNotFound) + { + value = null; + return false; + } } } @@ -204,6 +215,10 @@ public Stream GetObject(long offset, string objectType) packObjectType = GitPackObjectType.OBJ_BLOB; break; + case "tag": + packObjectType = GitPackObjectType.OBJ_TAG; + break; + default: throw new GitException($"The object type '{objectType}' is not supported by the {nameof(GitPack)} class."); } diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs b/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs index 34961cf32..e4c8b0b7f 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs @@ -1,4 +1,4 @@ -// Copyright (c) .NET Foundation and Contributors. All rights reserved. +// Copyright (c) .NET Foundation and Contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. #nullable enable @@ -377,38 +377,29 @@ public GitCommit GetCommit(GitObjectId sha, bool readAuthor = false) } // Match in packed-refs file. - string packedRefPath = Path.Combine(this.CommonDirectory, "packed-refs"); - if (File.Exists(packedRefPath)) + foreach ((string line, string? _) in this.EnumeratePackedRefsWithPeelLines(out var _)) { - using StreamReader? refReader = File.OpenText(packedRefPath); - string? line; - while ((line = refReader.ReadLine()) is object) + var refName = line.Substring(41); + GitObjectId GetObjId() => GitObjectId.Parse(line.AsSpan().Slice(0, 40)); + + if (string.Equals(refName, objectish, StringComparison.Ordinal)) { - if (line.StartsWith("#", StringComparison.Ordinal)) + return GetObjId(); + } + else if (!objectish.StartsWith("refs/", StringComparison.Ordinal)) + { + // Not a canonical ref, so try heads and tags + if (string.Equals(refName, "refs/heads/" + objectish, StringComparison.Ordinal)) { - continue; + return GetObjId(); } - - string refName = line.Substring(41); - if (string.Equals(refName, objectish, StringComparison.Ordinal)) + else if (string.Equals(refName, "refs/tags/" + objectish, StringComparison.Ordinal)) { - return GitObjectId.Parse(line.Substring(0, 40)); + return GetObjId(); } - else if (!objectish.StartsWith("refs/", StringComparison.Ordinal)) + else if (string.Equals(refName, "refs/remotes/" + objectish, StringComparison.Ordinal)) { - // Not a canonical ref, so try heads and tags - if (string.Equals(refName, "refs/heads/" + objectish, StringComparison.Ordinal)) - { - return GitObjectId.Parse(line.Substring(0, 40)); - } - else if (string.Equals(refName, "refs/tags/" + objectish, StringComparison.Ordinal)) - { - return GitObjectId.Parse(line.Substring(0, 40)); - } - else if (string.Equals(refName, "refs/remotes/" + objectish, StringComparison.Ordinal)) - { - return GitObjectId.Parse(line.Substring(0, 40)); - } + return GetObjId(); } } } @@ -582,7 +573,7 @@ public GitObjectId GetTreeEntry(GitObjectId treeId, ReadOnlySpan nodeName) /// if the object could be found; otherwise, /// . /// - public bool TryGetObjectBySha(GitObjectId sha, string objectType, out Stream? value) + public bool TryGetObjectBySha(GitObjectId sha, string objectType, [NotNullWhen(true)] out Stream? value) { #if DEBUG if (!this.histogram.TryAdd(sha, 1)) @@ -648,6 +639,62 @@ public string GetCacheStatistics() return builder.ToString(); } + /// + /// Returns a list of canonical names of tags that point to the given Git object id. + /// + /// The git object id to get the corresponding tags for. + /// A list of canonical names of tags. + public List LookupTags(GitObjectId objectId) + { + var tags = new List(); + + void HandleCandidate(GitObjectId pointsAt, string tagName, bool isPeeled) + { + if (objectId.Equals(pointsAt)) + { + tags.Add(tagName); + } + else if (!isPeeled && this.TryGetObjectBySha(pointsAt, "tag", out Stream? tagContent)) + { + GitAnnotatedTag tag = GitAnnotatedTagReader.Read(tagContent, pointsAt); + if ("commit".Equals(tag.Type, StringComparison.Ordinal) && objectId.Equals(tag.Object)) + { + tags.Add($"refs/tags/{tag.Tag}"); + } + } + } + + // Both tag files and packed-refs might either contain lightweight or annotated tags. + // tag files + var tagDir = Path.Combine(this.CommonDirectory, "refs", "tags"); + foreach (var tagFile in Directory.EnumerateFiles(tagDir, "*", SearchOption.AllDirectories)) + { + var tagObjId = GitObjectId.ParseHex(File.ReadAllBytes(tagFile).AsSpan().Slice(0, 40)); + + // \ is not legal in git tag names + var tagName = tagFile.Substring(tagDir.Length + 1).Replace('\\', '/'); + var canonical = $"refs/tags/{tagName}"; + + HandleCandidate(tagObjId, canonical, false); + } + + // packed-refs file + foreach ((string line, string? peelLine) in this.EnumeratePackedRefsWithPeelLines(out var tagsPeeled)) + { + var refName = line.Substring(41); + + // If we remove this check we do find local and remote branch heads too. + if (refName.StartsWith("refs/tags/", StringComparison.Ordinal)) + { + ReadOnlySpan tagSpan = peelLine is null ? line.AsSpan().Slice(0, 40) : peelLine.AsSpan().Slice(1, 40); + var tagObjId = GitObjectId.Parse(tagSpan); + HandleCandidate(tagObjId, refName, tagsPeeled); + } + } + + return tags; + } + /// public override string ToString() { @@ -767,4 +814,112 @@ private ReadOnlyMemory LoadPacks() return packs.AsMemory(0, addCount); } + + private IEnumerable EnumerateLines(string filePath) + { + using StreamReader sr = File.OpenText(filePath); + string? line; + while ((line = sr.ReadLine()) is not null) + { + yield return line; + } + } + + /// + /// Enumerate the lines in the packed-refs file. Skips comment lines. + /// + private IEnumerable EnumeratePackedRefsRaw(out bool tagsPeeled) + { + tagsPeeled = false; + string packedRefPath = Path.Combine(this.CommonDirectory, "packed-refs"); + if (!File.Exists(packedRefPath)) + { + return Enumerable.Empty(); + } + + // We use the rather simple EnumerateLines iterator here because this way + // the disposable StreamReader can survive when this method already returned and + // Enumerate() runs. + IEnumerator lines = this.EnumerateLines(packedRefPath).GetEnumerator(); + if (!lines.MoveNext()) + { + return Enumerable.Empty(); + } + + // see https://github.com/git/git/blob/d9d677b2d8cc5f70499db04e633ba7a400f64cbf/refs/packed-backend.c#L618 + const string fileHeaderPrefix = "# pack-refs with:"; + string firstLine = lines.Current; + if (firstLine.StartsWith(fileHeaderPrefix)) + { + // could contain "peeled" or "fully-peeled" or (typically) both. + // The meaning of any of these is equivalent for our use case. +#if NETFRAMEWORK + tagsPeeled = firstLine.IndexOf("peeled", StringComparison.Ordinal) >= 0; +#else + tagsPeeled = firstLine.Contains("peeled", StringComparison.Ordinal); +#endif + } + + IEnumerable Enumerate() + { + do + { + // We process the first line here again and continue because it starts with #. + // We could add a MoveNext() above if the header prefix was found, but we'd need + // to handle the case that it returned false then. + var line = lines.Current; + if (line.StartsWith("#", StringComparison.Ordinal)) + { + continue; + } + + yield return line; + } + while (lines.MoveNext()); + } + + return Enumerate(); + } + + /// + /// Enumerate the lines in the packed-refs file. If a line has a corresponding peel + /// line, they are returned together. + /// + private IEnumerable<(string Record, string? PeelLine)> EnumeratePackedRefsWithPeelLines(out bool tagsPeeled) + { + IEnumerable rawEnum = this.EnumeratePackedRefsRaw(out tagsPeeled); + return Enumerate(); + + IEnumerable<(string Record, string? PeelLine)> Enumerate() + { + string? recordLine = null; + foreach (var line in rawEnum) + { + if (line[0] == '^') + { + if (recordLine is null) + { + throw new GitException("packed-refs format is broken. Found a peel line without a preceeding record it belongs to."); + } + + yield return (recordLine, line); + recordLine = null; + } + else + { + if (recordLine is not null) + { + yield return (recordLine, null); + } + + recordLine = line; + } + } + + if (recordLine is not null) + { + yield return (recordLine, null); + } + } + } } diff --git a/src/NerdBank.GitVersioning/NoGit/NoGitContext.cs b/src/NerdBank.GitVersioning/NoGit/NoGitContext.cs index b1e15b472..ab169d89d 100644 --- a/src/NerdBank.GitVersioning/NoGit/NoGitContext.cs +++ b/src/NerdBank.GitVersioning/NoGit/NoGitContext.cs @@ -33,6 +33,9 @@ public NoGitContext(string workingTreePath) /// public override string? HeadCanonicalName => null; + /// + public override IReadOnlyCollection? HeadTags => null; + private string DebuggerDisplay => $"\"{this.WorkingTreePath}\" (no-git)"; /// diff --git a/src/NerdBank.GitVersioning/VersionOracle.cs b/src/NerdBank.GitVersioning/VersionOracle.cs index c3d2160ae..e00d1937b 100644 --- a/src/NerdBank.GitVersioning/VersionOracle.cs +++ b/src/NerdBank.GitVersioning/VersionOracle.cs @@ -61,6 +61,7 @@ public VersionOracle(GitContext context, ICloudBuild? cloudBuild = null, int? ov } this.BuildingRef = cloudBuild?.BuildingTag ?? cloudBuild?.BuildingBranch ?? context.HeadCanonicalName; + try { this.VersionHeight = context.CalculateVersionHeight(this.CommittedVersion, this.WorkingVersion); @@ -102,10 +103,19 @@ public VersionOracle(GitContext context, ICloudBuild? cloudBuild = null, int? ov : this.GitCommitId!.Substring(0, gitCommitIdShortFixedLength); } - if (!string.IsNullOrEmpty(this.BuildingRef) && this.VersionOptions?.PublicReleaseRefSpec?.Count > 0) + if (this.VersionOptions?.PublicReleaseRefSpec?.Count > 0) { - this.PublicRelease = this.VersionOptions.PublicReleaseRefSpec.Any( - expr => Regex.IsMatch(this.BuildingRef, expr)); + if (this.BuildingRef is not null) + { + this.PublicRelease = this.VersionOptions.PublicReleaseRefSpec.Any( + expr => Regex.IsMatch(this.BuildingRef, expr)); + } + + if (!this.PublicRelease && this.VersionOptions.PublicReleaseRefSpec.Any(expr => expr.StartsWith("^refs/tags/", StringComparison.Ordinal)) && this.Tags is not null) + { + this.PublicRelease = this.VersionOptions.PublicReleaseRefSpec.Any( + expr => this.Tags.Any(cand => Regex.IsMatch(cand, expr))); + } } } @@ -272,8 +282,17 @@ public IEnumerable BuildMetadataWithCommitId /// /// Gets or sets the ref (branch or tag) being built. /// + /// + /// Just contains a tag if it is known that explicitly this tag is built, e.g. in a cloud build context. + /// public string? BuildingRef { get; protected set; } + /// + /// Gets a collection of the tags that reference HEAD. + /// + [Ignore] + public IReadOnlyCollection? Tags => this.context.HeadTags; + /// /// Gets or sets the version for this project, with up to 4 components. /// diff --git a/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs b/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs index aae31b8df..946fc5227 100644 --- a/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs @@ -1037,6 +1037,50 @@ public void GetVersionHeight_ProjectDirectoryIsMoved() Assert.Equal(1, this.GetVersionHeight("new-project-dir")); } + [Fact] + public void Tags() + { + this.WriteVersionFile(new VersionOptions { Version = SemanticVersion.Parse("1.2"), GitCommitIdShortAutoMinimum = 4 }); + this.InitializeSourceControl(); + this.AddCommits(1); + VersionOracle oracle = new(this.Context); + + // Assert that we don't see any tags. + Assert.Empty(oracle.Tags); + + // Create a tag. + this.LibGit2Repository.ApplyTag("mytag"); + + // Refresh our context before asking again. + this.Context = this.CreateGitContext(this.RepoPath); + VersionOracle oracle2 = new(this.Context); + + // Assert that we see the tag. + Assert.Equal("refs/tags/mytag", Assert.Single(oracle2.Tags)); + } + + [Fact] + public void Tags_Annotated() + { + this.WriteVersionFile(new VersionOptions { Version = SemanticVersion.Parse("1.2"), GitCommitIdShortAutoMinimum = 4 }); + this.InitializeSourceControl(); + this.AddCommits(1); + VersionOracle oracle = new(this.Context); + + // Assert that we don't see any tags. + Assert.Empty(oracle.Tags); + + // Create a tag. + this.LibGit2Repository.ApplyTag("mytag", this.Signer, "my tag"); + + // Refresh our context before asking again. + this.Context = this.CreateGitContext(this.RepoPath); + VersionOracle oracle2 = new(this.Context); + + // Assert that we see the tag. + Assert.Equal("refs/tags/mytag", Assert.Single(oracle2.Tags)); + } + [Fact] public void GitCommitIdShort() { From 39bdb37ead87044bad1ae12b4cb8ce8800a863dc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 20 Sep 2023 08:50:51 -0600 Subject: [PATCH 066/257] Bump xunit from 2.5.0 to 2.5.1 (#219) Bumps [xunit](https://github.com/xunit/xunit) from 2.5.0 to 2.5.1. - [Commits](https://github.com/xunit/xunit/compare/2.5.0...2.5.1) --- updated-dependencies: - dependency-name: xunit dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 76d18e0d8..b3cdf478c 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -7,7 +7,7 @@ - + From a7f083d5fa0dd1107a04d6b724b117ac6e3c0eb4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 20 Sep 2023 14:58:32 +0000 Subject: [PATCH 067/257] Bump xunit.runner.visualstudio from 2.5.0 to 2.5.1 (#220) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index b3cdf478c..2cc8fe04a 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,7 +6,7 @@ - + From 5d99f303c0357175a0d1932e9ee5255f2476b5a5 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 20 Sep 2023 16:13:36 -0600 Subject: [PATCH 068/257] Bump powershell to 7.3.7 --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index d93241f4c..08f5c1eb2 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "powershell": { - "version": "7.3.6", + "version": "7.3.7", "commands": [ "pwsh" ] From 7726859b29c1290b01e5c6dc0fa1449664596429 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 21 Sep 2023 11:08:45 -0600 Subject: [PATCH 069/257] Fix LangVersion at 11 Using `latest` allows VS previews to encourage use of syntax that will later fail when built with the SDK prescribed in our global.json file. --- Directory.Build.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Build.props b/Directory.Build.props index 35fd4f69a..22986f2f3 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -5,7 +5,7 @@ $(RepoRootPath)obj\$([MSBuild]::MakeRelative($(RepoRootPath), $(MSBuildProjectDirectory)))\ $(RepoRootPath)bin\$(MSBuildProjectName)\ $(RepoRootPath)bin\Packages\$(Configuration)\ - latest + 11 enable enable latest From 9ed3b099a203939b40046d582a795d5a4becfb60 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 27 Sep 2023 05:49:40 -0600 Subject: [PATCH 070/257] Bump dotnet-coverage to 17.8.7 --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 08f5c1eb2..3e0ec525a 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "dotnet-coverage": { - "version": "17.8.6", + "version": "17.8.7", "commands": [ "dotnet-coverage" ] From 75d85ec086b0c8592941927776f6032fec432148 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 1 Oct 2023 22:26:59 -0600 Subject: [PATCH 071/257] Revert "Bump dotnet-coverage to 17.8.7" This reverts commit 9ed3b099a203939b40046d582a795d5a4becfb60. --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 3e0ec525a..08f5c1eb2 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "dotnet-coverage": { - "version": "17.8.7", + "version": "17.8.6", "commands": [ "dotnet-coverage" ] From b0d89f938752bb23c4019dd2f2180cababcfbc89 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 8 Oct 2023 08:19:50 -0600 Subject: [PATCH 072/257] Bump .NET SDK to 7.0.401 --- .devcontainer/Dockerfile | 2 +- global.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 6d2f30da6..cef7ac6f7 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,5 +1,5 @@ # Refer to https://hub.docker.com/_/microsoft-dotnet-sdk for available versions -FROM mcr.microsoft.com/dotnet/sdk:7.0.302-jammy +FROM mcr.microsoft.com/dotnet/sdk:7.0.401-jammy # Installing mono makes `dotnet test` work without errors even for net472. # But installing it takes a long time, so it's excluded by default. diff --git a/global.json b/global.json index abde95a8b..f153194c4 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "7.0.302", + "version": "7.0.401", "rollForward": "patch", "allowPrerelease": false } From 2214ca952dbc76efce9af5226a7320803acec85b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Oct 2023 07:47:59 -0600 Subject: [PATCH 073/257] Bump xunit.runner.visualstudio from 2.5.1 to 2.5.3 (#224) Bumps [xunit.runner.visualstudio](https://github.com/xunit/visualstudio.xunit) from 2.5.1 to 2.5.3. - [Release notes](https://github.com/xunit/visualstudio.xunit/releases) - [Commits](https://github.com/xunit/visualstudio.xunit/compare/2.5.1...2.5.3) --- updated-dependencies: - dependency-name: xunit.runner.visualstudio dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 2cc8fe04a..536511dc2 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,7 +6,7 @@ - + From 7df665541e0d93f5e9c0e20e5e62a29337619e6f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Oct 2023 07:48:29 -0600 Subject: [PATCH 074/257] Bump dotnet-coverage from 17.8.6 to 17.9.1 (#222) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.8.6 to 17.9.1. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 08f5c1eb2..e7623fce4 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "dotnet-coverage": { - "version": "17.8.6", + "version": "17.9.1", "commands": [ "dotnet-coverage" ] From 646c1791371e7ad5cdb923b8e054dc1b5b93f95d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Oct 2023 07:48:35 -0600 Subject: [PATCH 075/257] Bump powershell from 7.3.7 to 7.3.8 (#221) Bumps [powershell](https://github.com/PowerShell/PowerShell) from 7.3.7 to 7.3.8. - [Release notes](https://github.com/PowerShell/PowerShell/releases) - [Commits](https://github.com/PowerShell/PowerShell/compare/v7.3.7...v7.3.8) --- updated-dependencies: - dependency-name: powershell dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index e7623fce4..c13b4c68a 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "powershell": { - "version": "7.3.7", + "version": "7.3.8", "commands": [ "pwsh" ] From 125983c0dd2f8fae5171b321f5258b6ebbea4894 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Oct 2023 13:55:23 +0000 Subject: [PATCH 076/257] Bump xunit from 2.5.1 to 2.5.2 (#223) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 536511dc2..6f6fe2ef4 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -7,7 +7,7 @@ - + From ba76e6100b9d0586974eb10d15afed3e92d798b5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Oct 2023 20:54:18 -0600 Subject: [PATCH 077/257] Bump xunit from 2.5.2 to 2.5.3 (#226) Bumps [xunit](https://github.com/xunit/xunit) from 2.5.2 to 2.5.3. - [Commits](https://github.com/xunit/xunit/compare/2.5.2...2.5.3) --- updated-dependencies: - dependency-name: xunit dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 6f6fe2ef4..47b1fc9c7 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -7,7 +7,7 @@ - + From 7ef6ca07b8f5c03398958a4e3c7482f7129499cb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Oct 2023 20:54:29 -0600 Subject: [PATCH 078/257] Bump dotnet-coverage from 17.9.1 to 17.9.3 (#225) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.9.1 to 17.9.3. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index c13b4c68a..b935d933f 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "dotnet-coverage": { - "version": "17.9.1", + "version": "17.9.3", "commands": [ "dotnet-coverage" ] From 62691614bbd61856e40986df43f8e9a43274b48f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Oct 2023 12:50:05 -0600 Subject: [PATCH 079/257] Bump powershell from 7.3.8 to 7.3.9 (#227) Bumps [powershell](https://github.com/PowerShell/PowerShell) from 7.3.8 to 7.3.9. - [Release notes](https://github.com/PowerShell/PowerShell/releases) - [Commits](https://github.com/PowerShell/PowerShell/compare/v7.3.8...v7.3.9) --- updated-dependencies: - dependency-name: powershell dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index b935d933f..de46e939b 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "powershell": { - "version": "7.3.8", + "version": "7.3.9", "commands": [ "pwsh" ] From 2e6c239bbcb193809c4379a7f7797e734d0c988c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 Nov 2023 11:09:57 -0700 Subject: [PATCH 080/257] Bump xunit from 2.5.3 to 2.6.1 (#228) Bumps [xunit](https://github.com/xunit/xunit) from 2.5.3 to 2.6.1. - [Commits](https://github.com/xunit/xunit/compare/2.5.3...2.6.1) --- updated-dependencies: - dependency-name: xunit dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 47b1fc9c7..c5b4d4835 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -7,7 +7,7 @@ - + From 4337ca1c8ebf7bff355d024ab525e9428d8a0bb4 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 8 Nov 2023 06:41:30 -0700 Subject: [PATCH 081/257] Ignore `dotnet-format` v9 versions --- .github/dependabot.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index a0e8933bb..9053ac863 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -10,4 +10,4 @@ updates: ignore: # This package has unlisted versions on nuget.org that are not supported. Avoid them. - dependency-name: dotnet-format - versions: ["6.x", "7.x", "8.x"] + versions: ["6.x", "7.x", "8.x", "9.x"] From a76dc4088302313b137f5cd557a70a877272ef3d Mon Sep 17 00:00:00 2001 From: Frank Diego Macavilca Valverde Date: Tue, 7 Nov 2023 18:05:42 -0500 Subject: [PATCH 082/257] Added new feature to the command "prepare-release" "--commit-message-pattern" --- doc/nbgv-cli.md | 17 ++++++ src/NerdBank.GitVersioning/ReleaseManager.cs | 16 +++--- src/nbgv/Program.cs | 52 +++++++++++++++++-- .../ReleaseManagerTests.cs | 28 ++++++++++ 4 files changed, 104 insertions(+), 9 deletions(-) diff --git a/doc/nbgv-cli.md b/doc/nbgv-cli.md index b7e58610e..e9cf2d607 100644 --- a/doc/nbgv-cli.md +++ b/doc/nbgv-cli.md @@ -165,6 +165,23 @@ For each branch, the following properties are provided: **Note:** When the current branch is already the release branch for the current version, no new branch will be created. In that case, the `NewBranch` property will be `null`. +### Customizing the `prepare-release` commit message + +By default, the `prepare-release` command generates commit message with this format "Set version to {version}". So with this new option. You can add a prefix or suffix to the default commit message + +For example, running the following command on `master` + +``` +nbgv prepare-release --commit-message-pattern "Custom commit message pattern - {0} custom message" +``` + +So your commit message is going to be this: + +``` +Custom commit message pattern - Set version to '1.0' custom message +``` +**Note:** You must consider that commit message pattern must contain only one {0} and valid commit message characters. + ## Creating a version tag The `tag` command automates the task of tagging a commit with a version. diff --git a/src/NerdBank.GitVersioning/ReleaseManager.cs b/src/NerdBank.GitVersioning/ReleaseManager.cs index 9dc198010..a475128a1 100644 --- a/src/NerdBank.GitVersioning/ReleaseManager.cs +++ b/src/NerdBank.GitVersioning/ReleaseManager.cs @@ -127,7 +127,10 @@ public enum ReleaseManagerOutputMode /// /// The output format to use for writing to stdout. /// - public void PrepareRelease(string projectDirectory, string releaseUnstableTag = null, Version nextVersion = null, VersionOptions.ReleaseVersionIncrement? versionIncrement = null, ReleaseManagerOutputMode outputMode = default) + /// + /// Custom pattern to add a prefix or suffix to the default commit message. + /// + public void PrepareRelease(string projectDirectory, string releaseUnstableTag = null, Version nextVersion = null, VersionOptions.ReleaseVersionIncrement? versionIncrement = null, ReleaseManagerOutputMode outputMode = default, string commitMessagePattern = null) { Requires.NotNull(projectDirectory, nameof(projectDirectory)); @@ -168,7 +171,7 @@ public void PrepareRelease(string projectDirectory, string releaseUnstableTag = this.WriteToOutput(releaseInfo); } - this.UpdateVersion(context, versionOptions.Version, releaseVersion); + this.UpdateVersion(context, versionOptions.Version, releaseVersion, commitMessagePattern); return; } @@ -192,7 +195,7 @@ public void PrepareRelease(string projectDirectory, string releaseUnstableTag = // create release branch and update version Branch releaseBranch = repository.CreateBranch(releaseBranchName); global::LibGit2Sharp.Commands.Checkout(repository, releaseBranch); - this.UpdateVersion(context, versionOptions.Version, releaseVersion); + this.UpdateVersion(context, versionOptions.Version, releaseVersion, commitMessagePattern); if (outputMode == ReleaseManagerOutputMode.Text) { @@ -201,7 +204,7 @@ public void PrepareRelease(string projectDirectory, string releaseUnstableTag = // update version on main branch global::LibGit2Sharp.Commands.Checkout(repository, originalBranchName); - this.UpdateVersion(context, versionOptions.Version, nextDevVersion); + this.UpdateVersion(context, versionOptions.Version, nextDevVersion, commitMessagePattern); if (outputMode == ReleaseManagerOutputMode.Text) { @@ -261,7 +264,7 @@ private string GetReleaseBranchName(VersionOptions versionOptions) return branchNameFormat.Replace("{version}", versionOptions.Version.Version.ToString()); } - private void UpdateVersion(LibGit2Context context, SemanticVersion oldVersion, SemanticVersion newVersion) + private void UpdateVersion(LibGit2Context context, SemanticVersion oldVersion, SemanticVersion newVersion, string commitMessagePattern) { Requires.NotNull(context, nameof(context)); @@ -290,7 +293,8 @@ private void UpdateVersion(LibGit2Context context, SemanticVersion oldVersion, S // Author a commit only if we effectively changed something. if (!context.Repository.Head.Tip.Tree.Equals(context.Repository.Index.WriteToTree())) { - context.Repository.Commit($"Set version to '{versionOptions.Version}'", signature, signature, new CommitOptions() { AllowEmptyCommit = false }); + string commitMessage = string.Format(commitMessagePattern, $"Set version to '{versionOptions.Version}'"); + context.Repository.Commit(commitMessage, signature, signature, new CommitOptions() { AllowEmptyCommit = false }); } } } diff --git a/src/nbgv/Program.cs b/src/nbgv/Program.cs index 960e2062f..aae09ff9a 100644 --- a/src/nbgv/Program.cs +++ b/src/nbgv/Program.cs @@ -10,6 +10,7 @@ using System.IO; using System.Linq; using System.Reflection; +using System.Text.RegularExpressions; using System.Threading; using System.Threading.Tasks; using Microsoft.Build.Construction; @@ -69,6 +70,7 @@ private enum ExitCodes ShallowClone, InternalError, InvalidTagNameSetting, + InvalidCommitMessagePattern, } private static bool AlwaysUseLibGit2 => string.Equals(Environment.GetEnvironmentVariable("NBGV_GitEngine"), "LibGit2", StringComparison.Ordinal); @@ -217,6 +219,7 @@ private static Parser BuildCommandLine() var nextVersion = new Option("--nextVersion", "The version to set for the current branch. If omitted, the next version is determined automatically by incrementing the current version."); var versionIncrement = new Option("--versionIncrement", "Overrides the 'versionIncrement' setting set in version.json for determining the next version of the current branch."); var format = new Option(new[] { "--format", "-f" }, $"The format to write information about the release. Allowed values are: {string.Join(", ", SupportedFormats)}. The default is {DefaultOutputFormat}.").FromAmong(SupportedFormats); + var commitMessagePattern = new Option("--commit-message-pattern", "Custom pattern to add a prefix or suffix to the default commit message."); var tagArgument = new Argument("tag", "The prerelease tag to apply on the release branch (if any). If not specified, any existing prerelease tag will be removed. The preceding hyphen may be omitted.") { Arity = ArgumentArity.ZeroOrOne, @@ -227,10 +230,11 @@ private static Parser BuildCommandLine() nextVersion, versionIncrement, format, + commitMessagePattern, tagArgument, }; - prepareRelease.SetHandler(OnPrepareReleaseCommand, project, nextVersion, versionIncrement, format, tagArgument); + prepareRelease.SetHandler(OnPrepareReleaseCommand, project, nextVersion, versionIncrement, format, tagArgument, commitMessagePattern); } var root = new RootCommand($"{ThisAssembly.AssemblyTitle} v{ThisAssembly.AssemblyInformationalVersion}") @@ -710,7 +714,7 @@ private static Task OnCloudCommand(string project, string[] metadata, strin return Task.FromResult((int)ExitCodes.OK); } - private static Task OnPrepareReleaseCommand(string project, string nextVersion, string versionIncrement, string format, string tag) + private static Task OnPrepareReleaseCommand(string project, string nextVersion, string versionIncrement, string format, string tag, string commitMessagePattern) { // validate project path property string searchPath = GetSpecifiedOrCurrentDirectoryPath(project); @@ -763,11 +767,29 @@ private static Task OnPrepareReleaseCommand(string project, string nextVers return Task.FromResult((int)ExitCodes.UnsupportedFormat); } + // validate commit message pattern + if (string.IsNullOrEmpty(commitMessagePattern)) + { + commitMessagePattern = "{0}"; + } + + if (AreCurlyBracesBalanced(commitMessagePattern)) + { + Console.Error.WriteLine("Commit message pattern contains unbalanced curly braces."); + return Task.FromResult((int)ExitCodes.InvalidCommitMessagePattern); + } + + if (!Regex.IsMatch(commitMessagePattern, @"^(?=.*\{0\})(?!.*\{[1-9]\})(?!.*\{\{0\}\})(?!.*\{0\}.*\{0\})[^\x00-\x08\x0B\x0C\x0E-\x1F<>'\""\\]*(?:\{0\}[^\x00-\x08\x0B\x0C\x0E-\x1F<>'\""\\]*)*(?!\{[1-9]\})*$")) + { + Console.Error.WriteLine("Commit message pattern must contain only one {0} and valid commit message characters."); + return Task.FromResult((int)ExitCodes.InvalidCommitMessagePattern); + } + // run prepare-release try { var releaseManager = new ReleaseManager(Console.Out, Console.Error); - releaseManager.PrepareRelease(searchPath, tag, nextVersionParsed, versionIncrementParsed, outputMode); + releaseManager.PrepareRelease(searchPath, tag, nextVersionParsed, versionIncrementParsed, outputMode, commitMessagePattern); return Task.FromResult((int)ExitCodes.OK); } catch (ReleaseManager.ReleasePreparationException ex) @@ -889,5 +911,29 @@ private static void PrintCommits(bool quiet, GitContext context, IEnumerable protected override void InitializeSourceControl(bool withInitialCommit = true) { From b5b8a5e15784f2d42f7fd3dbef82df39d70ee5bb Mon Sep 17 00:00:00 2001 From: Frank Diego Macavilca Valverde Date: Thu, 9 Nov 2023 10:59:32 -0500 Subject: [PATCH 083/257] in the prepare release the parameter "commitMessagePattern" should have as default value "{0}" before the default was null and had error on some unit test --- src/NerdBank.GitVersioning/ReleaseManager.cs | 2 +- src/nbgv/Program.cs | 5 ----- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/src/NerdBank.GitVersioning/ReleaseManager.cs b/src/NerdBank.GitVersioning/ReleaseManager.cs index a475128a1..01fa7d663 100644 --- a/src/NerdBank.GitVersioning/ReleaseManager.cs +++ b/src/NerdBank.GitVersioning/ReleaseManager.cs @@ -130,7 +130,7 @@ public enum ReleaseManagerOutputMode /// /// Custom pattern to add a prefix or suffix to the default commit message. /// - public void PrepareRelease(string projectDirectory, string releaseUnstableTag = null, Version nextVersion = null, VersionOptions.ReleaseVersionIncrement? versionIncrement = null, ReleaseManagerOutputMode outputMode = default, string commitMessagePattern = null) + public void PrepareRelease(string projectDirectory, string releaseUnstableTag = null, Version nextVersion = null, VersionOptions.ReleaseVersionIncrement? versionIncrement = null, ReleaseManagerOutputMode outputMode = default, string commitMessagePattern = "{0}") { Requires.NotNull(projectDirectory, nameof(projectDirectory)); diff --git a/src/nbgv/Program.cs b/src/nbgv/Program.cs index aae09ff9a..ea8a20198 100644 --- a/src/nbgv/Program.cs +++ b/src/nbgv/Program.cs @@ -768,11 +768,6 @@ private static Task OnPrepareReleaseCommand(string project, string nextVers } // validate commit message pattern - if (string.IsNullOrEmpty(commitMessagePattern)) - { - commitMessagePattern = "{0}"; - } - if (AreCurlyBracesBalanced(commitMessagePattern)) { Console.Error.WriteLine("Commit message pattern contains unbalanced curly braces."); From 5a0cd156d0da7a37b76ac60b8c5245494958f51f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 13 Nov 2023 06:49:02 -0700 Subject: [PATCH 084/257] Bump Microsoft.NET.Test.Sdk from 17.7.2 to 17.8.0 (#229) Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.7.2 to 17.8.0. - [Release notes](https://github.com/microsoft/vstest/releases) - [Changelog](https://github.com/microsoft/vstest/blob/main/docs/releases.md) - [Commits](https://github.com/microsoft/vstest/compare/v17.7.2...v17.8.0) --- updated-dependencies: - dependency-name: Microsoft.NET.Test.Sdk dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index c5b4d4835..faa3fc68b 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -5,7 +5,7 @@ true - + From e9f35641b85f5e53dcbb3d22c4ca1e18c7e442b5 Mon Sep 17 00:00:00 2001 From: Frank Diego Macavilca Valverde Date: Mon, 13 Nov 2023 10:52:40 -0500 Subject: [PATCH 085/257] update documentation and change the design of the new feature commit message pattern to customize all the message --- doc/nbgv-cli.md | 6 +-- src/NerdBank.GitVersioning/ReleaseManager.cs | 7 +++- src/nbgv/Program.cs | 40 +++++-------------- .../ReleaseManagerTests.cs | 6 +-- 4 files changed, 21 insertions(+), 38 deletions(-) diff --git a/doc/nbgv-cli.md b/doc/nbgv-cli.md index e9cf2d607..10f6a704f 100644 --- a/doc/nbgv-cli.md +++ b/doc/nbgv-cli.md @@ -167,7 +167,7 @@ In that case, the `NewBranch` property will be `null`. ### Customizing the `prepare-release` commit message -By default, the `prepare-release` command generates commit message with this format "Set version to {version}". So with this new option. You can add a prefix or suffix to the default commit message +By default, the `prepare-release` command generates a commit message with the format "Set version to {version}". So with this new option, You can add a prefix or suffix to the default commit message (which will replace just the version). For example, running the following command on `master` @@ -178,9 +178,9 @@ nbgv prepare-release --commit-message-pattern "Custom commit message pattern - { So your commit message is going to be this: ``` -Custom commit message pattern - Set version to '1.0' custom message +Custom commit message pattern '1.0' custom message ``` -**Note:** You must consider that commit message pattern must contain only one {0} and valid commit message characters. +**Note:** Must include {0} in the pattern to represent the version. ## Creating a version tag diff --git a/src/NerdBank.GitVersioning/ReleaseManager.cs b/src/NerdBank.GitVersioning/ReleaseManager.cs index 01fa7d663..fc280ad86 100644 --- a/src/NerdBank.GitVersioning/ReleaseManager.cs +++ b/src/NerdBank.GitVersioning/ReleaseManager.cs @@ -293,12 +293,17 @@ private void UpdateVersion(LibGit2Context context, SemanticVersion oldVersion, S // Author a commit only if we effectively changed something. if (!context.Repository.Head.Tip.Tree.Equals(context.Repository.Index.WriteToTree())) { - string commitMessage = string.Format(commitMessagePattern, $"Set version to '{versionOptions.Version}'"); + string commitMessage = this.GetCommitMessage(commitMessagePattern, versionOptions.Version); context.Repository.Commit(commitMessage, signature, signature, new CommitOptions() { AllowEmptyCommit = false }); } } } + private string GetCommitMessage(string commitMessagePattern, SemanticVersion version) + { + return commitMessagePattern == "{0}" ? $"Set version to '{version}'" : string.Format(commitMessagePattern, $"'{version}'"); + } + private Signature GetSignature(Repository repository) { Signature signature = repository.Config.BuildSignature(DateTimeOffset.Now); diff --git a/src/nbgv/Program.cs b/src/nbgv/Program.cs index ea8a20198..af99453f6 100644 --- a/src/nbgv/Program.cs +++ b/src/nbgv/Program.cs @@ -219,7 +219,7 @@ private static Parser BuildCommandLine() var nextVersion = new Option("--nextVersion", "The version to set for the current branch. If omitted, the next version is determined automatically by incrementing the current version."); var versionIncrement = new Option("--versionIncrement", "Overrides the 'versionIncrement' setting set in version.json for determining the next version of the current branch."); var format = new Option(new[] { "--format", "-f" }, $"The format to write information about the release. Allowed values are: {string.Join(", ", SupportedFormats)}. The default is {DefaultOutputFormat}.").FromAmong(SupportedFormats); - var commitMessagePattern = new Option("--commit-message-pattern", "Custom pattern to add a prefix or suffix to the default commit message."); + var commitMessagePattern = new Option("--commit-message-pattern", "Custom pattern to add a prefix or suffix to the default commit message. Must include '{0}' in the pattern to represent the version."); var tagArgument = new Argument("tag", "The prerelease tag to apply on the release branch (if any). If not specified, any existing prerelease tag will be removed. The preceding hyphen may be omitted.") { Arity = ArgumentArity.ZeroOrOne, @@ -767,16 +767,18 @@ private static Task OnPrepareReleaseCommand(string project, string nextVers return Task.FromResult((int)ExitCodes.UnsupportedFormat); } - // validate commit message pattern - if (AreCurlyBracesBalanced(commitMessagePattern)) + if (string.IsNullOrEmpty(commitMessagePattern)) { - Console.Error.WriteLine("Commit message pattern contains unbalanced curly braces."); - return Task.FromResult((int)ExitCodes.InvalidCommitMessagePattern); + commitMessagePattern = "{0}"; } - if (!Regex.IsMatch(commitMessagePattern, @"^(?=.*\{0\})(?!.*\{[1-9]\})(?!.*\{\{0\}\})(?!.*\{0\}.*\{0\})[^\x00-\x08\x0B\x0C\x0E-\x1F<>'\""\\]*(?:\{0\}[^\x00-\x08\x0B\x0C\x0E-\x1F<>'\""\\]*)*(?!\{[1-9]\})*$")) + try { - Console.Error.WriteLine("Commit message pattern must contain only one {0} and valid commit message characters."); + string.Format(commitMessagePattern, "FormatValidator"); + } + catch (FormatException ex) + { + Console.Error.WriteLine($"InvalidCommitMessagePattern: {ex.Message}"); return Task.FromResult((int)ExitCodes.InvalidCommitMessagePattern); } @@ -906,29 +908,5 @@ private static void PrintCommits(bool quiet, GitContext context, IEnumerable Date: Mon, 13 Nov 2023 15:26:34 -0700 Subject: [PATCH 086/257] Apply Directory.Packages.props in Apply-Template.ps1 --- Apply-Template.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Apply-Template.ps1 b/Apply-Template.ps1 index 1c7733558..42ed33623 100644 --- a/Apply-Template.ps1 +++ b/Apply-Template.ps1 @@ -36,7 +36,7 @@ robocopy /mir $PSScriptRoot/.devcontainer $Path/.devcontainer robocopy /mir $PSScriptRoot/.github $Path/.github robocopy /mir $PSScriptRoot/.vscode $Path/.vscode robocopy /mir $PSScriptRoot/tools $Path/tools -robocopy $PSScriptRoot $Path Directory.Build.* global.json init.* azure-pipelines.yml .gitignore .gitattributes .editorconfig +robocopy $PSScriptRoot $Path Directory.Build.* Directory.Packages.props global.json init.* azure-pipelines.yml .gitignore .gitattributes .editorconfig robocopy $PSScriptRoot/src $Path/src Directory.Build.* .editorconfig AssemblyInfo.cs robocopy $PSScriptRoot/test $Path/test Directory.Build.* .editorconfig Remove-Item $Path/azure-pipelines/expand-template.yml From cee71bcc9baeb92c5822b9bece30dd586c431676 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Nov 2023 04:22:42 +0000 Subject: [PATCH 087/257] Bump Microsoft.Build.Locator from 1.5.5 to 1.6.10 (#987) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 5325bc223..e61623ba7 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -17,7 +17,7 @@ - + From 2dcb72a94bfe78ca9e73aff2c43de4cfdcd3b988 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Nov 2023 04:22:53 +0000 Subject: [PATCH 088/257] Bump BenchmarkDotNetVersion from 0.13.5 to 0.13.8 (#984) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index e61623ba7..041046789 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -3,7 +3,7 @@ true true - 0.13.5 + 0.13.8 16.11.0 15.9.20 From 3fd136b76e8aac33f17bc6b047ef6f06bba2084f Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 14 Nov 2023 21:24:42 -0700 Subject: [PATCH 089/257] Fix build after merge --- azure-pipelines.yml | 4 ++-- azure-pipelines/build.yml | 2 +- test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 11a58513f..59cc8123b 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -105,10 +105,10 @@ stages: clean: true submodules: true # keep the warnings quiet about the wiki not being enlisted - task: UseDotNet@2 - displayName: Install .NET 7.0.302 SDK + displayName: Install .NET 7.0.401 SDK inputs: packageType: sdk - version: 7.0.302 + version: 7.0.401 - script: dotnet --info displayName: Show dotnet SDK info - bash: | diff --git a/azure-pipelines/build.yml b/azure-pipelines/build.yml index fd06a63a1..70ceac961 100644 --- a/azure-pipelines/build.yml +++ b/azure-pipelines/build.yml @@ -23,7 +23,7 @@ jobs: - template: install-dependencies.yml - pwsh: | Invoke-WebRequest -Uri "https://dot.net/v1/dotnet-install.ps1" -OutFile dotnet-install.ps1 - & .\dotnet-install.ps1 -Architecture x86 -Version 7.0.302 -InstallDir "C:\Program Files (x86)\dotnet\" -NoPath -Verbose + & .\dotnet-install.ps1 -Architecture x86 -Version 7.0.401 -InstallDir "C:\Program Files (x86)\dotnet\" -NoPath -Verbose displayName: ⚙ Install 32-bit .NET SDK and runtimes - template: dotnet.yml diff --git a/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs b/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs index f06d05605..176fd3c5b 100644 --- a/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs +++ b/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs @@ -25,7 +25,7 @@ internal static void LoadMSBuild() if (IntPtr.Size == 4) { // 32-bit .NET runtime requires special code to find the x86 SDK (where MSBuild is). - MSBuildLocator.RegisterMSBuildPath(@"C:\Program Files (x86)\dotnet\sdk\7.0.302"); + MSBuildLocator.RegisterMSBuildPath(@"C:\Program Files (x86)\dotnet\sdk\7.0.401"); } else { From e678b457c03adcff1f5459586095c27a3a88f15d Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 14 Nov 2023 21:38:21 -0700 Subject: [PATCH 090/257] Bump to the .NET 8.0.100 SDK --- .devcontainer/Dockerfile | 2 +- Directory.Build.props | 2 +- global.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index cef7ac6f7..b680b1dbc 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,5 +1,5 @@ # Refer to https://hub.docker.com/_/microsoft-dotnet-sdk for available versions -FROM mcr.microsoft.com/dotnet/sdk:7.0.401-jammy +FROM mcr.microsoft.com/dotnet/sdk:8.0.100-jammy # Installing mono makes `dotnet test` work without errors even for net472. # But installing it takes a long time, so it's excluded by default. diff --git a/Directory.Build.props b/Directory.Build.props index 22986f2f3..d3edacc82 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -5,7 +5,7 @@ $(RepoRootPath)obj\$([MSBuild]::MakeRelative($(RepoRootPath), $(MSBuildProjectDirectory)))\ $(RepoRootPath)bin\$(MSBuildProjectName)\ $(RepoRootPath)bin\Packages\$(Configuration)\ - 11 + 12 enable enable latest diff --git a/global.json b/global.json index f153194c4..d24a9b70b 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "7.0.401", + "version": "8.0.100", "rollForward": "patch", "allowPrerelease": false } From 756c9cac56f2c353ec315f0047acad7063c7b41c Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 15 Nov 2023 05:42:58 -0700 Subject: [PATCH 091/257] Pin .NET SDK version on debian container --- azure-pipelines.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 59cc8123b..68f2557e7 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -28,7 +28,7 @@ resources: - container: jammy70 image: mcr.microsoft.com/dotnet/sdk:7.0-jammy - container: debian - image: mcr.microsoft.com/dotnet/sdk:latest + image: mcr.microsoft.com/dotnet/sdk:7.0 variables: DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true From a041ab7a1d8cd2c46c026b2eb7b5a3922f5a76a9 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 15 Nov 2023 06:30:59 -0700 Subject: [PATCH 092/257] Remove package reference to Moq We're not using it anyway. --- Directory.Packages.props | 1 - .../Nerdbank.GitVersioning.Tests.csproj | 1 - 2 files changed, 2 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 9e32bce98..6c3225817 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -25,7 +25,6 @@ - diff --git a/test/Nerdbank.GitVersioning.Tests/Nerdbank.GitVersioning.Tests.csproj b/test/Nerdbank.GitVersioning.Tests/Nerdbank.GitVersioning.Tests.csproj index 8c6333fda..90c67f345 100644 --- a/test/Nerdbank.GitVersioning.Tests/Nerdbank.GitVersioning.Tests.csproj +++ b/test/Nerdbank.GitVersioning.Tests/Nerdbank.GitVersioning.Tests.csproj @@ -39,7 +39,6 @@ - From b7ce6fb5fe3505419455e247e7bd194b0fcb6e03 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Nov 2023 13:33:04 +0000 Subject: [PATCH 093/257] Bump LibGit2Sharp from 0.27.2 to 0.28.0 (#998) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 9e32bce98..ab7a3b085 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -14,7 +14,7 @@ - + From 63140c96d215f4c52d880857775cf3cce4aef83f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Nov 2023 13:47:44 +0000 Subject: [PATCH 094/257] Bump BenchmarkDotNetVersion from 0.13.8 to 0.13.10 (#1000) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index ab7a3b085..9456508db 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -3,7 +3,7 @@ true true - 0.13.8 + 0.13.10 16.11.0 15.9.20 From 25d7ac2847dbd104975cd32a68f2b4fc4efcc5de Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 15 Nov 2023 13:56:44 +0000 Subject: [PATCH 095/257] Bump NuGet.PackageManagement from 6.5.0 to 6.7.0 (#986) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 9d0e1fb3e..f781b3986 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -28,7 +28,7 @@ - + From 33ef3ef507c1123731345ec20b793290d2df9a50 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 14 Nov 2023 21:05:39 -0700 Subject: [PATCH 096/257] Touch-up on usage of new switch --- doc/nbgv-cli.md | 8 ++--- src/NerdBank.GitVersioning/ReleaseManager.cs | 27 ++++++++------- src/nbgv/Program.cs | 34 +++++++++---------- .../ReleaseManagerTests.cs | 10 +++--- 4 files changed, 39 insertions(+), 40 deletions(-) diff --git a/doc/nbgv-cli.md b/doc/nbgv-cli.md index 10f6a704f..dfe4f55a5 100644 --- a/doc/nbgv-cli.md +++ b/doc/nbgv-cli.md @@ -167,9 +167,10 @@ In that case, the `NewBranch` property will be `null`. ### Customizing the `prepare-release` commit message -By default, the `prepare-release` command generates a commit message with the format "Set version to {version}". So with this new option, You can add a prefix or suffix to the default commit message (which will replace just the version). +By default, the `prepare-release` command generates a commit message with the format "Set version to {version}". +A switch allows you to customize the commit message, using `{0}` as a placeholder for the version. -For example, running the following command on `master` +For example, running the following command: ``` nbgv prepare-release --commit-message-pattern "Custom commit message pattern - {0} custom message" @@ -178,9 +179,8 @@ nbgv prepare-release --commit-message-pattern "Custom commit message pattern - { So your commit message is going to be this: ``` -Custom commit message pattern '1.0' custom message +Custom commit message pattern - 1.0 custom message ``` -**Note:** Must include {0} in the pattern to represent the version. ## Creating a version tag diff --git a/src/NerdBank.GitVersioning/ReleaseManager.cs b/src/NerdBank.GitVersioning/ReleaseManager.cs index fc280ad86..e937bc2d2 100644 --- a/src/NerdBank.GitVersioning/ReleaseManager.cs +++ b/src/NerdBank.GitVersioning/ReleaseManager.cs @@ -1,6 +1,7 @@ // Copyright (c) .NET Foundation and Contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. +using System.Globalization; using LibGit2Sharp; using Nerdbank.GitVersioning.LibGit2; using Newtonsoft.Json; @@ -127,10 +128,10 @@ public enum ReleaseManagerOutputMode /// /// The output format to use for writing to stdout. /// - /// - /// Custom pattern to add a prefix or suffix to the default commit message. + /// + /// An optional, custom message to use for the commit that sets the new version number. May use {0} to substitute the new version number. /// - public void PrepareRelease(string projectDirectory, string releaseUnstableTag = null, Version nextVersion = null, VersionOptions.ReleaseVersionIncrement? versionIncrement = null, ReleaseManagerOutputMode outputMode = default, string commitMessagePattern = "{0}") + public void PrepareRelease(string projectDirectory, string releaseUnstableTag = null, Version nextVersion = null, VersionOptions.ReleaseVersionIncrement? versionIncrement = null, ReleaseManagerOutputMode outputMode = default, string unformattedCommitMessage = null) { Requires.NotNull(projectDirectory, nameof(projectDirectory)); @@ -171,7 +172,7 @@ public void PrepareRelease(string projectDirectory, string releaseUnstableTag = this.WriteToOutput(releaseInfo); } - this.UpdateVersion(context, versionOptions.Version, releaseVersion, commitMessagePattern); + this.UpdateVersion(context, versionOptions.Version, releaseVersion, unformattedCommitMessage); return; } @@ -195,7 +196,7 @@ public void PrepareRelease(string projectDirectory, string releaseUnstableTag = // create release branch and update version Branch releaseBranch = repository.CreateBranch(releaseBranchName); global::LibGit2Sharp.Commands.Checkout(repository, releaseBranch); - this.UpdateVersion(context, versionOptions.Version, releaseVersion, commitMessagePattern); + this.UpdateVersion(context, versionOptions.Version, releaseVersion, unformattedCommitMessage); if (outputMode == ReleaseManagerOutputMode.Text) { @@ -204,7 +205,7 @@ public void PrepareRelease(string projectDirectory, string releaseUnstableTag = // update version on main branch global::LibGit2Sharp.Commands.Checkout(repository, originalBranchName); - this.UpdateVersion(context, versionOptions.Version, nextDevVersion, commitMessagePattern); + this.UpdateVersion(context, versionOptions.Version, nextDevVersion, unformattedCommitMessage); if (outputMode == ReleaseManagerOutputMode.Text) { @@ -264,7 +265,7 @@ private string GetReleaseBranchName(VersionOptions versionOptions) return branchNameFormat.Replace("{version}", versionOptions.Version.Version.ToString()); } - private void UpdateVersion(LibGit2Context context, SemanticVersion oldVersion, SemanticVersion newVersion, string commitMessagePattern) + private void UpdateVersion(LibGit2Context context, SemanticVersion oldVersion, SemanticVersion newVersion, string unformattedCommitMessage) { Requires.NotNull(context, nameof(context)); @@ -293,17 +294,17 @@ private void UpdateVersion(LibGit2Context context, SemanticVersion oldVersion, S // Author a commit only if we effectively changed something. if (!context.Repository.Head.Tip.Tree.Equals(context.Repository.Index.WriteToTree())) { - string commitMessage = this.GetCommitMessage(commitMessagePattern, versionOptions.Version); + if (string.IsNullOrEmpty(unformattedCommitMessage)) + { + unformattedCommitMessage = "Set version to '{0}'"; + } + + string commitMessage = string.Format(CultureInfo.CurrentCulture, unformattedCommitMessage, versionOptions.Version); context.Repository.Commit(commitMessage, signature, signature, new CommitOptions() { AllowEmptyCommit = false }); } } } - private string GetCommitMessage(string commitMessagePattern, SemanticVersion version) - { - return commitMessagePattern == "{0}" ? $"Set version to '{version}'" : string.Format(commitMessagePattern, $"'{version}'"); - } - private Signature GetSignature(Repository repository) { Signature signature = repository.Config.BuildSignature(DateTimeOffset.Now); diff --git a/src/nbgv/Program.cs b/src/nbgv/Program.cs index af99453f6..5eaa19cb1 100644 --- a/src/nbgv/Program.cs +++ b/src/nbgv/Program.cs @@ -70,7 +70,7 @@ private enum ExitCodes ShallowClone, InternalError, InvalidTagNameSetting, - InvalidCommitMessagePattern, + InvalidUnformattedCommitMessage, } private static bool AlwaysUseLibGit2 => string.Equals(Environment.GetEnvironmentVariable("NBGV_GitEngine"), "LibGit2", StringComparison.Ordinal); @@ -219,7 +219,7 @@ private static Parser BuildCommandLine() var nextVersion = new Option("--nextVersion", "The version to set for the current branch. If omitted, the next version is determined automatically by incrementing the current version."); var versionIncrement = new Option("--versionIncrement", "Overrides the 'versionIncrement' setting set in version.json for determining the next version of the current branch."); var format = new Option(new[] { "--format", "-f" }, $"The format to write information about the release. Allowed values are: {string.Join(", ", SupportedFormats)}. The default is {DefaultOutputFormat}.").FromAmong(SupportedFormats); - var commitMessagePattern = new Option("--commit-message-pattern", "Custom pattern to add a prefix or suffix to the default commit message. Must include '{0}' in the pattern to represent the version."); + var unformattedCommitMessage = new Option("--commit-message-pattern", "A custom message to use for the commit that changes the version number. May include {0} for the version number. If not specified, the default is \"Set version to '{0}'\"."); var tagArgument = new Argument("tag", "The prerelease tag to apply on the release branch (if any). If not specified, any existing prerelease tag will be removed. The preceding hyphen may be omitted.") { Arity = ArgumentArity.ZeroOrOne, @@ -230,11 +230,11 @@ private static Parser BuildCommandLine() nextVersion, versionIncrement, format, - commitMessagePattern, + unformattedCommitMessage, tagArgument, }; - prepareRelease.SetHandler(OnPrepareReleaseCommand, project, nextVersion, versionIncrement, format, tagArgument, commitMessagePattern); + prepareRelease.SetHandler(OnPrepareReleaseCommand, project, nextVersion, versionIncrement, format, tagArgument, unformattedCommitMessage); } var root = new RootCommand($"{ThisAssembly.AssemblyTitle} v{ThisAssembly.AssemblyInformationalVersion}") @@ -714,7 +714,7 @@ private static Task OnCloudCommand(string project, string[] metadata, strin return Task.FromResult((int)ExitCodes.OK); } - private static Task OnPrepareReleaseCommand(string project, string nextVersion, string versionIncrement, string format, string tag, string commitMessagePattern) + private static Task OnPrepareReleaseCommand(string project, string nextVersion, string versionIncrement, string format, string tag, string unformattedCommitMessage) { // validate project path property string searchPath = GetSpecifiedOrCurrentDirectoryPath(project); @@ -767,26 +767,24 @@ private static Task OnPrepareReleaseCommand(string project, string nextVers return Task.FromResult((int)ExitCodes.UnsupportedFormat); } - if (string.IsNullOrEmpty(commitMessagePattern)) + if (!string.IsNullOrEmpty(unformattedCommitMessage)) { - commitMessagePattern = "{0}"; - } - - try - { - string.Format(commitMessagePattern, "FormatValidator"); - } - catch (FormatException ex) - { - Console.Error.WriteLine($"InvalidCommitMessagePattern: {ex.Message}"); - return Task.FromResult((int)ExitCodes.InvalidCommitMessagePattern); + try + { + string.Format(unformattedCommitMessage, "FormatValidator"); + } + catch (FormatException ex) + { + Console.Error.WriteLine($"Invalid commit message pattern: {ex.Message}"); + return Task.FromResult((int)ExitCodes.InvalidUnformattedCommitMessage); + } } // run prepare-release try { var releaseManager = new ReleaseManager(Console.Out, Console.Error); - releaseManager.PrepareRelease(searchPath, tag, nextVersionParsed, versionIncrementParsed, outputMode, commitMessagePattern); + releaseManager.PrepareRelease(searchPath, tag, nextVersionParsed, versionIncrementParsed, outputMode, unformattedCommitMessage); return Task.FromResult((int)ExitCodes.OK); } catch (ReleaseManager.ReleasePreparationException ex) diff --git a/test/Nerdbank.GitVersioning.Tests/ReleaseManagerTests.cs b/test/Nerdbank.GitVersioning.Tests/ReleaseManagerTests.cs index d373daaf2..0c170b81d 100644 --- a/test/Nerdbank.GitVersioning.Tests/ReleaseManagerTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/ReleaseManagerTests.cs @@ -639,10 +639,10 @@ public void PrepareRelease_ResetsVersionHeightOffset() } [Theory] - [InlineData("1.0-beta", "{0} Custom commit message pattern", "'1.0' Custom commit message pattern")] - [InlineData("1.0-beta", "Custom commit message pattern - {0} custom message", "Custom commit message pattern - '1.0' custom message")] - [InlineData("1.0-beta", "Custom commit message pattern - {0}", "Custom commit message pattern - '1.0'")] - [InlineData("1.0-beta", "{0}", "Set version to '1.0'")] + [InlineData("1.0-beta", "{0} Custom commit message pattern", "1.0 Custom commit message pattern")] + [InlineData("1.0-beta", "Custom commit message pattern - {0} custom message", "Custom commit message pattern - 1.0 custom message")] + [InlineData("1.0-beta", "Custom commit message pattern - {0}", "Custom commit message pattern - 1.0")] + [InlineData("1.0-beta", "{0}", "1.0")] public void PrepareRelease_WithCustomCommitMessagePattern(string initialVersion, string commitMessagePattern, string expectedCommitMessage) { // Create and configure the repository @@ -657,7 +657,7 @@ public void PrepareRelease_WithCustomCommitMessagePattern(string initialVersion, // Run PrepareRelease with the custom commit message pattern var releaseManager = new ReleaseManager(); - releaseManager.PrepareRelease(this.RepoPath, commitMessagePattern: commitMessagePattern); + releaseManager.PrepareRelease(this.RepoPath, unformattedCommitMessage: commitMessagePattern); // Verify that the commit message on the release branch matches the expected pattern string releaseBranchName = "v1.0"; From 7b8861feea7a45bade4d4652467d56210ee2c73b Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 15 Nov 2023 19:46:59 -0700 Subject: [PATCH 097/257] Fix documented default property value Fixes #1005 --- doc/msbuild.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/msbuild.md b/doc/msbuild.md index 1fc22d860..03daab3ee 100644 --- a/doc/msbuild.md +++ b/doc/msbuild.md @@ -46,7 +46,7 @@ The following MSBuild properties may be set in your project to customize certain Property | Default | Description --|--|-- -`NBGV_ThisAssemblyNamespace` | `$(RootNamespace)` | Sets the namespace to use for the generated `ThisAssembly` class. +`NBGV_ThisAssemblyNamespace` | (empty) | Sets the namespace to use for the generated `ThisAssembly` class. `NBGV_EmitThisAssemblyClass` | `true` | When `false`, suppresses generation of the `ThisAssembly` class. `NBGV_ThisAssemblyIncludesPackageVersion` | `false` | When `true`, a `NuGetPackageVersion` property is added to the `ThisAssembly` class. From 4c3782ab617fae8356dd5802d6c68625e430eac5 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 15 Nov 2023 06:28:08 -0700 Subject: [PATCH 098/257] Bump other .NET references to 8 --- Directory.Packages.props | 4 +-- azure-pipelines.yml | 28 ++++++++++++++----- azure-pipelines/build.yml | 2 +- azure-pipelines/xplattest-pipeline.yml | 1 + .../GetVersionBenchmarks.cs | 2 +- .../Nerdbank.GitVersioning.Benchmarks.csproj | 2 +- .../MSBuildExtensions.cs | 2 +- .../Nerdbank.GitVersioning.Tests.csproj | 2 +- 8 files changed, 29 insertions(+), 14 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index c7403ad23..8df7ee4a4 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -34,8 +34,8 @@ - - + + diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 68f2557e7..6de129d98 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -27,8 +27,12 @@ resources: image: mcr.microsoft.com/dotnet/sdk:6.0-jammy - container: jammy70 image: mcr.microsoft.com/dotnet/sdk:7.0-jammy - - container: debian + - container: jammy80 + image: mcr.microsoft.com/dotnet/sdk:8.0-jammy + - container: debian70 image: mcr.microsoft.com/dotnet/sdk:7.0 + - container: debian80 + image: mcr.microsoft.com/dotnet/sdk:8.0 variables: DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true @@ -54,12 +58,22 @@ stages: matrix: Ubuntu_Focal: containerImage: focal + testCake: true Ubuntu_Jammy_60: containerImage: jammy60 + testCake: true Ubuntu_Jammy_70: containerImage: jammy70 - Debian: - containerImage: debian + testCake: true + Ubuntu_Jammy_80: + containerImage: jammy80 + testCake: false + Debian_70: + containerImage: debian70 + testCake: true + Debian_80: + containerImage: debian80 + testCake: false pool: vmImage: ubuntu-22.04 container: $[ variables['containerImage'] ] @@ -105,10 +119,10 @@ stages: clean: true submodules: true # keep the warnings quiet about the wiki not being enlisted - task: UseDotNet@2 - displayName: Install .NET 7.0.401 SDK + displayName: Install .NET 8.0.100 SDK inputs: packageType: sdk - version: 7.0.401 + version: 8.0.100 - script: dotnet --info displayName: Show dotnet SDK info - bash: | @@ -122,7 +136,7 @@ stages: dotnet build -c Release displayName: Build in Release mode - script: | - dotnet run -c Release -f net7.0 -- --filter *GetVersionBenchmarks* --artifacts $(Build.ArtifactStagingDirectory)/benchmarks/packed/$(imageName) + dotnet run -c Release -f net8.0 -- --filter *GetVersionBenchmarks* --artifacts $(Build.ArtifactStagingDirectory)/benchmarks/packed/$(imageName) workingDirectory: test/Nerdbank.GitVersioning.Benchmarks displayName: Run benchmarks (packed) - bash: | @@ -139,7 +153,7 @@ stages: git unpack-objects < .git/objects/pack/*.pack displayName: Unpack Git repositories - script: | - dotnet run -c Release -f net7.0 -- --filter '*GetVersionBenchmarks*' --artifacts $(Build.ArtifactStagingDirectory)/benchmarks/unpacked/$(imageName) + dotnet run -c Release -f net8.0 -- --filter '*GetVersionBenchmarks*' --artifacts $(Build.ArtifactStagingDirectory)/benchmarks/unpacked/$(imageName) workingDirectory: test/Nerdbank.GitVersioning.Benchmarks displayName: Run benchmarks (unpacked) - task: PublishBuildArtifacts@1 diff --git a/azure-pipelines/build.yml b/azure-pipelines/build.yml index 70ceac961..662928607 100644 --- a/azure-pipelines/build.yml +++ b/azure-pipelines/build.yml @@ -23,7 +23,7 @@ jobs: - template: install-dependencies.yml - pwsh: | Invoke-WebRequest -Uri "https://dot.net/v1/dotnet-install.ps1" -OutFile dotnet-install.ps1 - & .\dotnet-install.ps1 -Architecture x86 -Version 7.0.401 -InstallDir "C:\Program Files (x86)\dotnet\" -NoPath -Verbose + & .\dotnet-install.ps1 -Architecture x86 -Version 8.0.100 -InstallDir "C:\Program Files (x86)\dotnet\" -NoPath -Verbose displayName: ⚙ Install 32-bit .NET SDK and runtimes - template: dotnet.yml diff --git a/azure-pipelines/xplattest-pipeline.yml b/azure-pipelines/xplattest-pipeline.yml index 0b2e29f9a..30fe90b47 100644 --- a/azure-pipelines/xplattest-pipeline.yml +++ b/azure-pipelines/xplattest-pipeline.yml @@ -63,6 +63,7 @@ steps: dotnet cake displayName: Consume Cake.GitVersioning + condition: and(succeeded(), ne(variables.testCake, 'false')) failOnStderr: true - script: > diff --git a/test/Nerdbank.GitVersioning.Benchmarks/GetVersionBenchmarks.cs b/test/Nerdbank.GitVersioning.Benchmarks/GetVersionBenchmarks.cs index f580c34e2..8d580c793 100644 --- a/test/Nerdbank.GitVersioning.Benchmarks/GetVersionBenchmarks.cs +++ b/test/Nerdbank.GitVersioning.Benchmarks/GetVersionBenchmarks.cs @@ -9,7 +9,7 @@ namespace Nerdbank.GitVersioning.Benchmarks { - [SimpleJob(RuntimeMoniker.Net70)] + [SimpleJob(RuntimeMoniker.Net80)] [SimpleJob(RuntimeMoniker.Net472, baseline: true)] public class GetVersionBenchmarks { diff --git a/test/Nerdbank.GitVersioning.Benchmarks/Nerdbank.GitVersioning.Benchmarks.csproj b/test/Nerdbank.GitVersioning.Benchmarks/Nerdbank.GitVersioning.Benchmarks.csproj index 71b136fb8..b762b66d1 100644 --- a/test/Nerdbank.GitVersioning.Benchmarks/Nerdbank.GitVersioning.Benchmarks.csproj +++ b/test/Nerdbank.GitVersioning.Benchmarks/Nerdbank.GitVersioning.Benchmarks.csproj @@ -1,7 +1,7 @@  - net7.0 + net8.0 $(TargetFrameworks);net472 Exe true diff --git a/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs b/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs index 176fd3c5b..675fab169 100644 --- a/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs +++ b/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs @@ -25,7 +25,7 @@ internal static void LoadMSBuild() if (IntPtr.Size == 4) { // 32-bit .NET runtime requires special code to find the x86 SDK (where MSBuild is). - MSBuildLocator.RegisterMSBuildPath(@"C:\Program Files (x86)\dotnet\sdk\7.0.401"); + MSBuildLocator.RegisterMSBuildPath(@"C:\Program Files (x86)\dotnet\sdk\8.0.100"); } else { diff --git a/test/Nerdbank.GitVersioning.Tests/Nerdbank.GitVersioning.Tests.csproj b/test/Nerdbank.GitVersioning.Tests/Nerdbank.GitVersioning.Tests.csproj index 8c6333fda..1ebc661cd 100644 --- a/test/Nerdbank.GitVersioning.Tests/Nerdbank.GitVersioning.Tests.csproj +++ b/test/Nerdbank.GitVersioning.Tests/Nerdbank.GitVersioning.Tests.csproj @@ -1,6 +1,6 @@ - net7.0 + net8.0 $(TargetFrameworks);net472 true true From 17efc6b44679c800ed0b08988b7d3e0bd29f4dbd Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 16 Nov 2023 13:42:28 -0700 Subject: [PATCH 099/257] Re-enable code signing --- azure-pipelines/dotnet.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/azure-pipelines/dotnet.yml b/azure-pipelines/dotnet.yml index 323b2572a..8c4ce7260 100644 --- a/azure-pipelines/dotnet.yml +++ b/azure-pipelines/dotnet.yml @@ -57,7 +57,6 @@ steps: --descriptionUrl 'https://github.com/dotnet/Nerdbank.GitVersioning' displayName: 🔏 Code sign condition: and(succeeded(), eq(variables['System.TeamFoundationCollectionUri'], 'https://dev.azure.com/andrewarnott/'), eq(variables['Agent.OS'], 'Windows_NT'), ne(variables['Build.Reason'], 'PullRequest')) - enabled: false # signing is broken with the expired cert, I suppose - pwsh: > obj/SignClient sign @@ -71,7 +70,6 @@ steps: --descriptionUrl 'https://github.com/dotnet/Nerdbank.GitVersioning' displayName: 🔏 Code sign LKG condition: and(succeeded(), eq(variables['System.TeamFoundationCollectionUri'], 'https://dev.azure.com/andrewarnott/'), eq(variables['Agent.OS'], 'Windows_NT'), ne(variables['Build.Reason'], 'PullRequest')) - enabled: false # signing is broken with the expired cert, I suppose - powershell: azure-pipelines/variables/_pipelines.ps1 failOnStderr: true From d1ffce8a4b3a570dc97532af7cb7d6cf47ccc82d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 20 Nov 2023 12:36:51 -0700 Subject: [PATCH 100/257] Bump xunit from 2.6.1 to 2.6.2 (#234) Bumps [xunit](https://github.com/xunit/xunit) from 2.6.1 to 2.6.2. - [Commits](https://github.com/xunit/xunit/compare/2.6.1...2.6.2) --- updated-dependencies: - dependency-name: xunit dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index faa3fc68b..272353bff 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -7,7 +7,7 @@ - + From ccd2c89fa9aa2e2e991cd15f16827bcbe654fc10 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 20 Nov 2023 12:37:45 -0700 Subject: [PATCH 101/257] Bump Microsoft.SourceLink.GitHub from 1.1.1 to 8.0.0 (#232) Bumps [Microsoft.SourceLink.GitHub](https://github.com/dotnet/sourcelink) from 1.1.1 to 8.0.0. - [Release notes](https://github.com/dotnet/sourcelink/releases) - [Commits](https://github.com/dotnet/sourcelink/compare/1.1.1...8.0.0) --- updated-dependencies: - dependency-name: Microsoft.SourceLink.GitHub dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 272353bff..9ac2f3710 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -17,6 +17,6 @@ - + From 42894612a6492693491c9a91b3e314d8f10658e8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 20 Nov 2023 12:37:58 -0700 Subject: [PATCH 102/257] Bump powershell from 7.3.9 to 7.4.0 (#231) Bumps [powershell](https://github.com/PowerShell/PowerShell) from 7.3.9 to 7.4.0. - [Release notes](https://github.com/PowerShell/PowerShell/releases) - [Commits](https://github.com/PowerShell/PowerShell/compare/v7.3.9...v7.4.0) --- updated-dependencies: - dependency-name: powershell dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index de46e939b..7a4b9444e 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "powershell": { - "version": "7.3.9", + "version": "7.4.0", "commands": [ "pwsh" ] From 7e872d33dbd08fce619141103e8c8c7bcf7cd966 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 20 Nov 2023 19:43:19 +0000 Subject: [PATCH 103/257] Bump xunit.runner.visualstudio from 2.5.3 to 2.5.4 (#233) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 9ac2f3710..3ad9b7937 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,7 +6,7 @@ - + From 5da8083e9f0a5f79f906d27e8d8dda3386f02bb1 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 22 Nov 2023 11:58:24 -0700 Subject: [PATCH 104/257] Validate formatted code in builds --- azure-pipelines/build.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/azure-pipelines/build.yml b/azure-pipelines/build.yml index 9c445f727..5d1835d56 100644 --- a/azure-pipelines/build.yml +++ b/azure-pipelines/build.yml @@ -36,6 +36,8 @@ jobs: - template: dotnet.yml parameters: RunTests: ${{ parameters.RunTests }} + - script: dotnet format --verify-no-changes --no-restore + displayName: 💅 Verify formatted code - template: expand-template.yml - job: macOS From c4890509d2ef60e24bbed0ec213882bcead28848 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 22 Nov 2023 13:42:32 -0700 Subject: [PATCH 105/257] Enable auto-format on save in VS and VS Code --- .vscode/settings.json | 3 ++- settings.VisualStudio.json | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 settings.VisualStudio.json diff --git a/.vscode/settings.json b/.vscode/settings.json index 54c5c6896..5101737c1 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -4,5 +4,6 @@ "files.trimFinalNewlines": true, "omnisharp.enableEditorConfigSupport": true, "omnisharp.enableRoslynAnalyzers": true, - "dotnet.completion.showCompletionItemsFromUnimportedNamespaces": true + "dotnet.completion.showCompletionItemsFromUnimportedNamespaces": true, + "editor.formatOnSave": true } diff --git a/settings.VisualStudio.json b/settings.VisualStudio.json new file mode 100644 index 000000000..7abb4a060 --- /dev/null +++ b/settings.VisualStudio.json @@ -0,0 +1,3 @@ +{ + "textEditor.codeCleanup.profile": "profile1" +} From 41f6d2704083294ec0338f68e2bc54f461177c58 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 22 Nov 2023 14:37:47 -0700 Subject: [PATCH 106/257] Remove `dotnet-format` as a tool It's part of the SDK now, and the version on nuget.org is no longer maintained. --- .config/dotnet-tools.json | 8 +------- .github/dependabot.yml | 4 ---- 2 files changed, 1 insertion(+), 11 deletions(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 7a4b9444e..0e4a78462 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -8,12 +8,6 @@ "pwsh" ] }, - "dotnet-format": { - "version": "5.1.250801", - "commands": [ - "dotnet-format" - ] - }, "dotnet-coverage": { "version": "17.9.3", "commands": [ @@ -27,4 +21,4 @@ ] } } -} +} \ No newline at end of file diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 9053ac863..63e3e890b 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -7,7 +7,3 @@ updates: directory: / schedule: interval: weekly - ignore: - # This package has unlisted versions on nuget.org that are not supported. Avoid them. - - dependency-name: dotnet-format - versions: ["6.x", "7.x", "8.x", "9.x"] From ac3f1dff5d485d6e8c56998c87bb3665f0d4bbf9 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 29 Nov 2023 07:09:14 -0700 Subject: [PATCH 107/257] Make symbolic link failures more detectable --- azure-pipelines/artifacts/_stage_all.ps1 | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/azure-pipelines/artifacts/_stage_all.ps1 b/azure-pipelines/artifacts/_stage_all.ps1 index d81d16d46..b077931cc 100644 --- a/azure-pipelines/artifacts/_stage_all.ps1 +++ b/azure-pipelines/artifacts/_stage_all.ps1 @@ -30,6 +30,12 @@ function Create-SymbolicLink { } else { cmd /c "mklink `"$Link`" `"$Target`"" | Out-Null } + + if ($LASTEXITCODE -ne 0) { + # Windows requires admin privileges to create symbolic links + # unless Developer Mode has been enabled. + throw "Failed to create symbolic link at $Link that points to $Target" + } } # Stage all artifacts From 41771506014fc409c68858d14c2e061d4c2de665 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 30 Nov 2023 11:56:35 -0700 Subject: [PATCH 108/257] Add xml header to msbuild files MSBuild doesn't need them, but Azure Repos won't recognize .targets and .props files as xml files without it. And recognizing them means syntax coloring, which is worthwhile. --- Directory.Build.props | 1 + Directory.Build.targets | 1 + Directory.Packages.props | 1 + src/Directory.Build.props | 1 + src/Directory.Build.targets | 1 + test/Directory.Build.props | 1 + test/Directory.Build.targets | 1 + 7 files changed, 7 insertions(+) diff --git a/Directory.Build.props b/Directory.Build.props index d3edacc82..e42ac60a6 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -1,3 +1,4 @@ + Debug diff --git a/Directory.Build.targets b/Directory.Build.targets index ea7b6e6f8..cc8184aac 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -1,3 +1,4 @@ + diff --git a/Directory.Packages.props b/Directory.Packages.props index 3ad9b7937..6cf06aef4 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -1,3 +1,4 @@ + diff --git a/src/Directory.Build.props b/src/Directory.Build.props index 5e648d5ee..9ba7818d4 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -1,3 +1,4 @@ + diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets index c1d929a5b..07f413461 100644 --- a/src/Directory.Build.targets +++ b/src/Directory.Build.targets @@ -1,3 +1,4 @@ + diff --git a/test/Directory.Build.props b/test/Directory.Build.props index ad4a4b6c5..6c7aa71dc 100644 --- a/test/Directory.Build.props +++ b/test/Directory.Build.props @@ -1,3 +1,4 @@ + diff --git a/test/Directory.Build.targets b/test/Directory.Build.targets index 052fe3ef0..a6e0f4ace 100644 --- a/test/Directory.Build.targets +++ b/test/Directory.Build.targets @@ -1,3 +1,4 @@ + From db4440205ad8c7adac61bea7aea42a63496599d7 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 1 Dec 2023 12:28:16 -0700 Subject: [PATCH 109/257] Stop VS Code from wrapping xml files --- .vscode/settings.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 5101737c1..ce72437ca 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -5,5 +5,8 @@ "omnisharp.enableEditorConfigSupport": true, "omnisharp.enableRoslynAnalyzers": true, "dotnet.completion.showCompletionItemsFromUnimportedNamespaces": true, - "editor.formatOnSave": true + "editor.formatOnSave": true, + "[xml]": { + "editor.wordWrap": "off" + } } From 4f4747469a5f512c60f242a586b57cc6733fc608 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 1 Dec 2023 13:27:13 -0700 Subject: [PATCH 110/257] Bump typescript from 5.2.2 to 5.3.2 in /src/nerdbank-gitversioning.npm (#1010) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.2.2 to 5.3.2. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/compare/v5.2.2...v5.3.2) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/nerdbank-gitversioning.npm/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index a999c0fc5..7661a8389 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -2743,9 +2743,9 @@ typedarray@^0.0.6: integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= typescript@^5.0.4: - version "5.2.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.2.2.tgz#5ebb5e5a5b75f085f22bc3f8460fba308310fa78" - integrity sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w== + version "5.3.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.3.2.tgz#00d1c7c1c46928c5845c1ee8d0cc2791031d4c43" + integrity sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ== unc-path-regex@^0.1.2: version "0.1.2" From 3a5c8f0ee6540b10f7c58f6489bd0b3ca286c6b2 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 11 Dec 2023 13:19:20 -0700 Subject: [PATCH 111/257] Add dotnet_separate_import_directive_groups to .editorconfig This is the default setting in VS, but folks who have changed the setting can cause noise in PRs unless we pin the setting at the repo level. --- .editorconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/.editorconfig b/.editorconfig index 959801c2e..ffae180a8 100644 --- a/.editorconfig +++ b/.editorconfig @@ -40,6 +40,7 @@ indent_size = 4 [*.{cs,vb}] # Sort using and Import directives with System.* appearing first dotnet_sort_system_directives_first = true +dotnet_separate_import_directive_groups = false dotnet_style_qualification_for_field = true:warning dotnet_style_qualification_for_property = true:warning dotnet_style_qualification_for_method = true:warning From f8f3f9e2501d480a8d313c2e36bdd978c4191813 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Dec 2023 17:12:47 -0700 Subject: [PATCH 112/257] Bump xunit from 2.6.2 to 2.6.3 (#239) Bumps [xunit](https://github.com/xunit/xunit) from 2.6.2 to 2.6.3. - [Commits](https://github.com/xunit/xunit/compare/2.6.2...2.6.3) --- updated-dependencies: - dependency-name: xunit dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 6cf06aef4..041ea3d1e 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -8,7 +8,7 @@ - + From 20c7541a3ca7b7cd4c7fa30335be69e31b1d41a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Dec 2023 17:13:10 -0700 Subject: [PATCH 113/257] Bump dotnet-coverage from 17.9.3 to 17.9.5 (#238) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.9.3 to 17.9.5. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 0e4a78462..c08307f6e 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -9,7 +9,7 @@ ] }, "dotnet-coverage": { - "version": "17.9.3", + "version": "17.9.5", "commands": [ "dotnet-coverage" ] From 37705a891a10e45737c3c8d4fb8708141738ec1b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 12 Dec 2023 00:20:18 +0000 Subject: [PATCH 114/257] Bump xunit.runner.visualstudio from 2.5.4 to 2.5.5 (#237) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 041ea3d1e..4cf7998db 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -7,7 +7,7 @@ - + From c3e46493fe2de84ece6d1fb0ffd1749ef7ca3a3b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 06:47:41 -0700 Subject: [PATCH 115/257] Bump dotnet-coverage from 17.9.5 to 17.9.6 (#240) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.9.5 to 17.9.6. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index c08307f6e..b46731160 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -9,7 +9,7 @@ ] }, "dotnet-coverage": { - "version": "17.9.5", + "version": "17.9.6", "commands": [ "dotnet-coverage" ] From 9198063d425cd079e19d2f0d2bf523de3cbb343d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Dec 2023 08:01:46 -0700 Subject: [PATCH 116/257] Bump xunit.runner.visualstudio from 2.5.5 to 2.5.6 (#243) Bumps [xunit.runner.visualstudio](https://github.com/xunit/visualstudio.xunit) from 2.5.5 to 2.5.6. - [Release notes](https://github.com/xunit/visualstudio.xunit/releases) - [Commits](https://github.com/xunit/visualstudio.xunit/compare/2.5.5...2.5.6) --- updated-dependencies: - dependency-name: xunit.runner.visualstudio dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 4cf7998db..1d02ad280 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -7,7 +7,7 @@ - + From cd53181413c400fa42418b25329764d69ffc758c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Dec 2023 15:08:21 +0000 Subject: [PATCH 117/257] Bump xunit from 2.6.3 to 2.6.4 (#242) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 1d02ad280..50ea3701b 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -8,7 +8,7 @@ - + From b9d62f310b3bcc9d0397a39d64049bc046e63f6c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Dec 2023 11:16:41 -0700 Subject: [PATCH 118/257] Bump StyleCop.Analyzers.Unstable from 1.2.0.507 to 1.2.0.556 (#241) Bumps [StyleCop.Analyzers.Unstable](https://github.com/DotNetAnalyzers/StyleCopAnalyzers) from 1.2.0.507 to 1.2.0.556. - [Release notes](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/releases) - [Changelog](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/KnownChanges.md) - [Commits](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/commits) --- updated-dependencies: - dependency-name: StyleCop.Analyzers.Unstable dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 50ea3701b..41167d99a 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -15,7 +15,7 @@ - + From 8399c4f76d89a6ed2ded1231ece3c48750617b69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Sun, 31 Dec 2023 05:06:30 +0100 Subject: [PATCH 119/257] AssemblyVersionInfo: Use `global::` for all references to types in `System.*` namespaces. --- .../AssemblyVersionInfo.cs | 30 ++++---- .../AssemblyInfoTest.cs | 68 +++++++++---------- 2 files changed, 49 insertions(+), 49 deletions(-) diff --git a/src/Nerdbank.GitVersioning.Tasks/AssemblyVersionInfo.cs b/src/Nerdbank.GitVersioning.Tasks/AssemblyVersionInfo.cs index 1c7336c5c..d5d46da8d 100644 --- a/src/Nerdbank.GitVersioning.Tasks/AssemblyVersionInfo.cs +++ b/src/Nerdbank.GitVersioning.Tasks/AssemblyVersionInfo.cs @@ -247,7 +247,7 @@ private static IEnumerable CreateDateTimeField(string name, Date { Requires.NotNullOrEmpty(name, nameof(name)); - ////internal static System.DateTime GitCommitDate => new System.DateTime({ticks}, System.DateTimeKind.Utc);"); + ////internal static global::System.DateTime GitCommitDate => new global::System.DateTime({ticks}, global::System.DateTimeKind.Utc);"); var property = new CodeMemberProperty() { @@ -294,7 +294,7 @@ private CodeTypeDeclaration CreateThisAssemblyClass() var codeAttributeDeclarationCollection = new CodeAttributeDeclarationCollection(); codeAttributeDeclarationCollection.Add(new CodeAttributeDeclaration( - "System.CodeDom.Compiler.GeneratedCode", + "global::System.CodeDom.Compiler.GeneratedCode", new CodeAttributeArgument(new CodePrimitiveExpression(GeneratorName)), new CodeAttributeArgument(new CodePrimitiveExpression(GeneratorVersion)))); thisAssembly.CustomAttributes = codeAttributeDeclarationCollection; @@ -718,7 +718,7 @@ internal override void AddThisAssemblyMember(string name, bool value) internal override void AddThisAssemblyMember(string name, DateTime value) { - this.CodeBuilder.AppendLine($" static member internal {name} = new System.DateTime({value.Ticks}L, System.DateTimeKind.Utc)"); + this.CodeBuilder.AppendLine($" static member internal {name} = new global.System.DateTime({value.Ticks}L, global.System.DateTimeKind.Utc)"); } internal override void StartAssemblyAttributes() @@ -728,7 +728,7 @@ internal override void StartAssemblyAttributes() internal override void DeclareAttribute(Type type, string arg) { - this.CodeBuilder.AppendLine($"[]"); + this.CodeBuilder.AppendLine($"[]"); } internal override void EndThisAssemblyClass() @@ -740,10 +740,10 @@ internal override void StartThisAssemblyClass() { this.CodeBuilder.AppendLine("do()"); this.CodeBuilder.AppendLine($"#if {CompilerDefinesAroundGeneratedCodeAttribute}"); - this.CodeBuilder.AppendLine($"[]"); + this.CodeBuilder.AppendLine($"[]"); this.CodeBuilder.AppendLine("#endif"); this.CodeBuilder.AppendLine($"#if {CompilerDefinesAroundExcludeFromCodeCoverageAttribute}"); - this.CodeBuilder.AppendLine("[]"); + this.CodeBuilder.AppendLine("[]"); this.CodeBuilder.AppendLine("#endif"); this.CodeBuilder.AppendLine("type internal ThisAssembly() ="); } @@ -768,7 +768,7 @@ internal override void AddComment(string comment) internal override void DeclareAttribute(Type type, string arg) { - this.CodeBuilder.AppendLine($"[assembly: {type.FullName}(\"{arg}\")]"); + this.CodeBuilder.AppendLine($"[assembly: global::{type.FullName}(\"{arg}\")]"); } internal override void StartThisAssemblyClass() @@ -779,10 +779,10 @@ internal override void StartThisAssemblyClass() } this.CodeBuilder.AppendLine($"#if {CompilerDefinesAroundGeneratedCodeAttribute}"); - this.CodeBuilder.AppendLine($"[System.CodeDom.Compiler.GeneratedCode(\"{GeneratorName}\",\"{GeneratorVersion}\")]"); + this.CodeBuilder.AppendLine($"[global::System.CodeDom.Compiler.GeneratedCode(\"{GeneratorName}\",\"{GeneratorVersion}\")]"); this.CodeBuilder.AppendLine("#endif"); this.CodeBuilder.AppendLine($"#if {CompilerDefinesAroundExcludeFromCodeCoverageAttribute}"); - this.CodeBuilder.AppendLine("[System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]"); + this.CodeBuilder.AppendLine("[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]"); this.CodeBuilder.AppendLine("#endif"); this.CodeBuilder.AppendLine("internal static partial class ThisAssembly {"); } @@ -799,7 +799,7 @@ internal override void AddThisAssemblyMember(string name, bool value) internal override void AddThisAssemblyMember(string name, DateTime value) { - this.CodeBuilder.AppendLine($" internal static readonly System.DateTime {name} = new System.DateTime({value.Ticks}L, System.DateTimeKind.Utc);"); + this.CodeBuilder.AppendLine($" internal static readonly global::System.DateTime {name} = new global::System.DateTime({value.Ticks}L, global::System.DateTimeKind.Utc);"); } internal override void EndThisAssemblyClass() @@ -832,7 +832,7 @@ internal override void AddComment(string comment) internal override void DeclareAttribute(Type type, string arg) { - this.CodeBuilder.AppendLine($""); + this.CodeBuilder.AppendLine($""); } internal override void StartThisAssemblyClass() @@ -843,11 +843,11 @@ internal override void StartThisAssemblyClass() } this.CodeBuilder.AppendLine($"#If {CompilerDefinesAroundExcludeFromCodeCoverageAttribute.Replace("||", " Or ")} Then"); - this.CodeBuilder.AppendLine($""); - this.CodeBuilder.AppendLine(""); + this.CodeBuilder.AppendLine($""); + this.CodeBuilder.AppendLine(""); this.CodeBuilder.AppendLine("Partial Friend NotInheritable Class ThisAssembly"); this.CodeBuilder.AppendLine($"#ElseIf {CompilerDefinesAroundGeneratedCodeAttribute.Replace("||", " Or ")} Then"); - this.CodeBuilder.AppendLine($""); + this.CodeBuilder.AppendLine($""); this.CodeBuilder.AppendLine("Partial Friend NotInheritable Class ThisAssembly"); this.CodeBuilder.AppendLine("#Else"); this.CodeBuilder.AppendLine("Partial Friend NotInheritable Class ThisAssembly"); @@ -866,7 +866,7 @@ internal override void AddThisAssemblyMember(string name, bool value) internal override void AddThisAssemblyMember(string name, DateTime value) { - this.CodeBuilder.AppendLine($" Friend Shared ReadOnly {name} As System.DateTime = New System.DateTime({value.Ticks}L, System.DateTimeKind.Utc)"); + this.CodeBuilder.AppendLine($" Friend Shared ReadOnly {name} As Global.System.DateTime = New Global.System.DateTime({value.Ticks}L, Global.System.DateTimeKind.Utc)"); } internal override void EndThisAssemblyClass() diff --git a/test/Nerdbank.GitVersioning.Tests/AssemblyInfoTest.cs b/test/Nerdbank.GitVersioning.Tests/AssemblyInfoTest.cs index 43641569e..3e689c710 100644 --- a/test/Nerdbank.GitVersioning.Tests/AssemblyInfoTest.cs +++ b/test/Nerdbank.GitVersioning.Tests/AssemblyInfoTest.cs @@ -63,15 +63,15 @@ public void FSharpGenerator(bool? thisAssemblyClass) #nowarn ""CA2243"" namespace AssemblyInfo -[] -[] -[] +[] +[] +[] {(thisAssemblyClass.GetValueOrDefault(true) ? $@"do() #if NETSTANDARD || NETFRAMEWORK || NETCOREAPP -[] +[] #endif #if NET40_OR_GREATER || NETCOREAPP2_0_OR_GREATER || NETSTANDARD2_0_OR_GREATER -[] +[] #endif type internal ThisAssembly() = static member internal AssemblyCompany = ""company"" @@ -80,7 +80,7 @@ type internal ThisAssembly() = static member internal CustomBool = true static member internal CustomString1 = ""abc"" static member internal CustomString3 = """" - static member internal CustomTicks = new System.DateTime(637509805729817056L, System.DateTimeKind.Utc) + static member internal CustomTicks = new global.System.DateTime(637509805729817056L, global.System.DateTimeKind.Utc) static member internal IsPrerelease = false static member internal IsPublicRelease = false static member internal RootNamespace = """" @@ -128,15 +128,15 @@ namespace {( : !string.IsNullOrWhiteSpace(rootNamespace) ? rootNamespace : "AssemblyInfo")} -[] -[] -[] +[] +[] +[] do() #if NETSTANDARD || NETFRAMEWORK || NETCOREAPP -[] +[] #endif #if NET40_OR_GREATER || NETCOREAPP2_0_OR_GREATER || NETSTANDARD2_0_OR_GREATER -[] +[] #endif type internal ThisAssembly() = static member internal AssemblyCompany = ""company"" @@ -201,14 +201,14 @@ public void CSharpGenerator(bool? thisAssemblyClass) #pragma warning disable CA2243 -[assembly: System.Reflection.AssemblyVersionAttribute(""1.3.0.0"")] -[assembly: System.Reflection.AssemblyFileVersionAttribute(""1.3.1.0"")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("""")] +[assembly: global::System.Reflection.AssemblyVersionAttribute(""1.3.0.0"")] +[assembly: global::System.Reflection.AssemblyFileVersionAttribute(""1.3.1.0"")] +[assembly: global::System.Reflection.AssemblyInformationalVersionAttribute("""")] {(thisAssemblyClass.GetValueOrDefault(true) ? $@"#if NETSTANDARD || NETFRAMEWORK || NETCOREAPP -[System.CodeDom.Compiler.GeneratedCode(""{AssemblyVersionInfo.GeneratorName}"",""{AssemblyVersionInfo.GeneratorVersion}"")] +[global::System.CodeDom.Compiler.GeneratedCode(""{AssemblyVersionInfo.GeneratorName}"",""{AssemblyVersionInfo.GeneratorVersion}"")] #endif #if NET40_OR_GREATER || NETCOREAPP2_0_OR_GREATER || NETSTANDARD2_0_OR_GREATER -[System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage] +[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage] #endif internal static partial class ThisAssembly {{ internal const string AssemblyCompany = ""company""; @@ -217,7 +217,7 @@ internal static partial class ThisAssembly {{ internal const bool CustomBool = true; internal const string CustomString1 = ""abc""; internal const string CustomString3 = """"; - internal static readonly System.DateTime CustomTicks = new System.DateTime(637509805729817056L, System.DateTimeKind.Utc); + internal static readonly global::System.DateTime CustomTicks = new global::System.DateTime(637509805729817056L, global::System.DateTimeKind.Utc); internal const bool IsPrerelease = false; internal const bool IsPublicRelease = false; internal const string RootNamespace = """"; @@ -263,14 +263,14 @@ public void CSharpGeneratorWithNamespace(string thisAssemblyNamespace, string ro #pragma warning disable CA2243 -[assembly: System.Reflection.AssemblyVersionAttribute(""1.3.0.0"")] -[assembly: System.Reflection.AssemblyFileVersionAttribute(""1.3.1.0"")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("""")]{nsStart} +[assembly: global::System.Reflection.AssemblyVersionAttribute(""1.3.0.0"")] +[assembly: global::System.Reflection.AssemblyFileVersionAttribute(""1.3.1.0"")] +[assembly: global::System.Reflection.AssemblyInformationalVersionAttribute("""")]{nsStart} #if NETSTANDARD || NETFRAMEWORK || NETCOREAPP -[System.CodeDom.Compiler.GeneratedCode(""{AssemblyVersionInfo.GeneratorName}"",""{AssemblyVersionInfo.GeneratorVersion}"")] +[global::System.CodeDom.Compiler.GeneratedCode(""{AssemblyVersionInfo.GeneratorName}"",""{AssemblyVersionInfo.GeneratorVersion}"")] #endif #if NET40_OR_GREATER || NETCOREAPP2_0_OR_GREATER || NETSTANDARD2_0_OR_GREATER -[System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage] +[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage] #endif internal static partial class ThisAssembly {{ internal const string AssemblyCompany = ""company""; @@ -316,15 +316,15 @@ public void VisualBasicGenerator(bool? thisAssemblyClass) #Disable Warning CA2243 - - - + + + {(thisAssemblyClass.GetValueOrDefault(true) ? $@"#If NET40_OR_GREATER Or NETCOREAPP2_0_OR_GREATER Or NETSTANDARD2_0_OR_GREATER Then - - + + Partial Friend NotInheritable Class ThisAssembly #ElseIf NETSTANDARD Or NETFRAMEWORK Or NETCOREAPP Then - + Partial Friend NotInheritable Class ThisAssembly #Else Partial Friend NotInheritable Class ThisAssembly @@ -377,15 +377,15 @@ public void VisualBasicGeneratorWithNamespace(string thisAssemblyNamespace, stri #Disable Warning CA2243 - - -{nsStart} + + +{nsStart} #If NET40_OR_GREATER Or NETCOREAPP2_0_OR_GREATER Or NETSTANDARD2_0_OR_GREATER Then - - + + Partial Friend NotInheritable Class ThisAssembly #ElseIf NETSTANDARD Or NETFRAMEWORK Or NETCOREAPP Then - + Partial Friend NotInheritable Class ThisAssembly #Else Partial Friend NotInheritable Class ThisAssembly From 130e9c8786fb934a3e1db3adbb480f0a58b72830 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Jan 2024 09:56:35 -0700 Subject: [PATCH 120/257] Bump powershell from 7.4.0 to 7.4.1 (#245) Bumps [powershell](https://github.com/PowerShell/PowerShell) from 7.4.0 to 7.4.1. - [Release notes](https://github.com/PowerShell/PowerShell/releases) - [Commits](https://github.com/PowerShell/PowerShell/compare/v7.4.0...v7.4.1) --- updated-dependencies: - dependency-name: powershell dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index b46731160..589f0604b 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "powershell": { - "version": "7.4.0", + "version": "7.4.1", "commands": [ "pwsh" ] From 0fb8b1e24a9e60a94339744c4e369673fb32c82a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Mon, 15 Jan 2024 18:42:20 +0100 Subject: [PATCH 121/257] Invert `Language` special-casing to handle *supported* programming languages. Closes #1020. --- .../build/Nerdbank.GitVersioning.targets | 31 ++++++++++++++++--- .../BuildIntegrationTests.cs | 19 ------------ 2 files changed, 27 insertions(+), 23 deletions(-) diff --git a/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets b/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets index 9444314c7..1aa185c21 100644 --- a/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets +++ b/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets @@ -40,8 +40,31 @@ false false - - false + + <_NBGV_LanguageMode Condition=" '$(Language)' == 'c++' ">Native + <_NBGV_LanguageMode Condition=" '$(Language)' == 'c#' ">Managed + <_NBGV_LanguageMode Condition=" '$(Language)' == 'cs' ">Managed + <_NBGV_LanguageMode Condition=" '$(Language)' == 'csharp' ">Managed + <_NBGV_LanguageMode Condition=" '$(Language)' == 'vb' ">Managed + <_NBGV_LanguageMode Condition=" '$(Language)' == 'visualbasic' ">Managed + <_NBGV_LanguageMode Condition=" '$(Language)' == 'visual basic' ">Managed + <_NBGV_LanguageMode Condition=" '$(Language)' == 'f#' ">Managed + <_NBGV_LanguageMode Condition=" '$(Language)' == 'fs' ">Managed + <_NBGV_LanguageMode Condition=" '$(Language)' == 'fsharp' ">Managed + + false @@ -115,7 +138,7 @@ - + $([MSBuild]::NormalizePath('$(IntermediateOutputPath)', '$(AssemblyName).Version$(DefaultLanguageSourceExtension)')) $(VersionSourceFile).new @@ -162,7 +185,7 @@ - + $([MSBuild]::NormalizePath('$(IntermediateOutputPath)', '$(AssemblyName).Version.rc')) $(VersionSourceFile).new diff --git a/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs b/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs index c694b9916..54e9bab2d 100644 --- a/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs @@ -192,25 +192,6 @@ public async Task AssemblyInfo_HasKeyData(string keyFile, bool delaySigned) } } - /// - /// Emulate a project with an unsupported language, and verify that - /// one warning is emitted because the assembly info file couldn't be generated. - /// - [Fact] - public async Task AssemblyInfo_NotProducedWithoutCodeDomProvider() - { - ProjectPropertyGroupElement propertyGroup = this.testProject.CreatePropertyGroupElement(); - this.testProject.AppendChild(propertyGroup); - propertyGroup.AddProperty("Language", "NoCodeDOMProviderForThisLanguage"); - - this.WriteVersionFile(); - BuildResults result = await this.BuildAsync(Targets.GenerateAssemblyNBGVVersionInfo, logVerbosity: LoggerVerbosity.Minimal, assertSuccessfulBuild: false); - Assert.Equal(BuildResultCode.Failure, result.BuildResult.OverallResult); - string versionCsFilePath = Path.Combine(this.projectDirectory, result.BuildResult.ProjectStateAfterBuild.GetPropertyValue("VersionSourceFile")); - Assert.False(File.Exists(versionCsFilePath)); - Assert.Single(result.LoggedEvents.OfType()); - } - /// /// Emulate a project with an unsupported language, and verify that /// no errors are emitted because the target is skipped. From 7fd4b166ea46c8fa4b3a7f0954c9f0f99b6467ac Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 22 Jan 2024 22:36:03 -0700 Subject: [PATCH 122/257] Bump xunit from 2.6.4 to 2.6.6 --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 41167d99a..1438548bb 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -8,7 +8,7 @@ - + From 050805e88f48ff2954489c7a795dda28c5282fb5 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 25 Jan 2024 14:04:06 -0700 Subject: [PATCH 123/257] Add switch to avoid creating symbolic links Symbolic links present a problem, at least for "1ES PT". --- azure-pipelines/artifacts/_pipelines.ps1 | 5 +++-- azure-pipelines/artifacts/_stage_all.ps1 | 10 ++++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/azure-pipelines/artifacts/_pipelines.ps1 b/azure-pipelines/artifacts/_pipelines.ps1 index 2d3338b24..47321ed5b 100644 --- a/azure-pipelines/artifacts/_pipelines.ps1 +++ b/azure-pipelines/artifacts/_pipelines.ps1 @@ -7,7 +7,8 @@ [CmdletBinding()] param ( [string]$ArtifactNameSuffix, - [switch]$StageOnly + [switch]$StageOnly, + [switch]$AvoidSymbolicLinks ) Function Set-PipelineVariable($name, $value) { @@ -24,7 +25,7 @@ Function Test-ArtifactUploaded($artifactName) { Test-Path "env:$varName" } -& "$PSScriptRoot/_stage_all.ps1" -ArtifactNameSuffix $ArtifactNameSuffix |% { +& "$PSScriptRoot/_stage_all.ps1" -ArtifactNameSuffix $ArtifactNameSuffix -AvoidSymbolicLinks:$AvoidSymbolicLinks |% { # Set a variable which will out-live this script so that a subsequent attempt to collect and upload artifacts # will skip this one from a check in the _all.ps1 script. Set-PipelineVariable "ARTIFACTSTAGED_$($_.Name.ToUpper())" 'true' diff --git a/azure-pipelines/artifacts/_stage_all.ps1 b/azure-pipelines/artifacts/_stage_all.ps1 index b077931cc..74d7a38df 100644 --- a/azure-pipelines/artifacts/_stage_all.ps1 +++ b/azure-pipelines/artifacts/_stage_all.ps1 @@ -7,7 +7,8 @@ [CmdletBinding()] param ( - [string]$ArtifactNameSuffix + [string]$ArtifactNameSuffix, + [switch]$AvoidSymbolicLinks ) $ArtifactStagingFolder = & "$PSScriptRoot/../Get-ArtifactsStagingDirectory.ps1" -CleanIfLocal @@ -48,7 +49,12 @@ $Artifacts |% { if (-not (Test-Path $DestinationFolder)) { New-Item -ItemType Directory -Path $DestinationFolder | Out-Null } if (Test-Path -PathType Leaf $_.Source) { # skip folders - Create-SymbolicLink -Link (Join-Path $DestinationFolder $Name) -Target $_.Source + $TargetPath = Join-Path $DestinationFolder $Name + if ($AvoidSymbolicLinks) { + Copy-Item -Path $_.Source -Destination $TargetPath + } else { + Create-SymbolicLink -Link $TargetPath -Target $_.Source + } } } From 9466f8ed67a86e5fa195c12beb501e2abf0f1446 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 26 Jan 2024 11:05:24 -0700 Subject: [PATCH 124/257] Clarify parameter type in AzP template --- azure-pipelines/build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/azure-pipelines/build.yml b/azure-pipelines/build.yml index 5d1835d56..3d53ed836 100644 --- a/azure-pipelines/build.yml +++ b/azure-pipelines/build.yml @@ -4,6 +4,7 @@ parameters: default: vmImage: windows-2022 - name: includeMacOS + type: boolean - name: RunTests type: boolean default: true From 4d1473c2924f40f02578e70a053ba666e6531ae1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Jan 2024 13:16:00 -0700 Subject: [PATCH 125/257] Bump dotnet-coverage from 17.9.6 to 17.10.1Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.9.6 to 17.10.1.- [Commits](https://github.com/microsoft/codecoverage/commits)---updated-dependencies:- dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-minor...Signed-off-by: dependabot[bot] * Bump dotnet-coverage from 17.9.6 to 17.10.1 Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.9.6 to 17.10.1. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 589f0604b..5941f4c88 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -9,7 +9,7 @@ ] }, "dotnet-coverage": { - "version": "17.9.6", + "version": "17.10.1", "commands": [ "dotnet-coverage" ] From ebb0607dd933ae5b44ee473eec4ff8716cd211d6 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 29 Jan 2024 17:05:36 -0700 Subject: [PATCH 126/257] Format init.ps1 --- init.ps1 | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/init.ps1 b/init.ps1 index 00a9589ba..e28498553 100755 --- a/init.ps1 +++ b/init.ps1 @@ -84,8 +84,7 @@ try { $HeaderColor = 'Green' $RestoreArguments = @() - if ($Interactive) - { + if ($Interactive) { $RestoreArguments += '--interactive' } @@ -98,10 +97,10 @@ try { } if (!$NoToolRestore -and $PSCmdlet.ShouldProcess("dotnet tool", "restore")) { - dotnet tool restore @RestoreArguments - if ($lastexitcode -ne 0) { - throw "Failure while restoring dotnet CLI tools." - } + dotnet tool restore @RestoreArguments + if ($lastexitcode -ne 0) { + throw "Failure while restoring dotnet CLI tools." + } } & "$PSScriptRoot/tools/Set-EnvVars.ps1" -Variables $EnvVars -PrependPath $PrependPath | Out-Null From 9036bc435ba9ac852829c2a9756acdc762dcbbc0 Mon Sep 17 00:00:00 2001 From: Robert Hague Date: Sat, 3 Feb 2024 13:57:08 +0100 Subject: [PATCH 127/257] Enhance tests - Add GitRepositoryTests.TryGetObjectByShaAndWrongTypeTest, which fails because of the exception thrown in TryGetObjectByPath (Nerdbank.GitVersioning.GitException : Got a comm instead of a tree when opening object d13d221382b251e13f23d0e32062bb2354d2c340) - Extend VersionOracleTests.Tags to add another commit and check that the new commit does not point to the tag. This fails for the lightweight tag case because we enter the TryGetObjectBySha(pointsAt, "tag", ...) path which tries to retrieve the tag object assuming it is of type "tag" when in fact it is of type "commit", and throws the exception. The reason it doesn't fail without the extension to the test (i.e. when the lightweight tag points to HEAD) is that the objectId.Equals(pointsAt) check passes (for the same reason: the tag "is" the commit) so the TryGetObjectBySha path is not entered. That's also why there is no additional fix needed for lightweight tags in HandleCandidate: its purpose is to decide whether a tag points to the given object. For lightweight tags it's a simple equality check on the object ids. It's only for annotated tags where we need to dig in to find the actual commit id. - Extend VersionOracleTests.Tags_Annotated for symmetry. It still passes either way. --- .../ManagedGit/GitRepositoryTests.cs | 15 ++++++++++++ .../VersionOracleTests.cs | 24 +++++++++++++++++-- 2 files changed, 37 insertions(+), 2 deletions(-) diff --git a/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitRepositoryTests.cs b/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitRepositoryTests.cs index 582dfbdca..ad898ce97 100644 --- a/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitRepositoryTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitRepositoryTests.cs @@ -271,6 +271,21 @@ public void GetObjectByShaAndWrongTypeTest() } } + [Fact] + public void TryGetObjectByShaAndWrongTypeTest() + { + this.InitializeSourceControl(); + this.AddCommits(2); + + var headObjectId = GitObjectId.Parse(this.LibGit2Repository.Head.Tip.Sha); + + using (var repository = GitRepository.Create(this.RepoPath)) + { + Assert.False(repository.TryGetObjectBySha(headObjectId, "tree", out Stream value)); + Assert.Null(value); + } + } + [Fact] public void GetMissingObjectByShaTest() { diff --git a/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs b/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs index 946fc5227..f41eadd9f 100644 --- a/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs @@ -1048,7 +1048,7 @@ public void Tags() // Assert that we don't see any tags. Assert.Empty(oracle.Tags); - // Create a tag. + // Create a lighweight tag. this.LibGit2Repository.ApplyTag("mytag"); // Refresh our context before asking again. @@ -1057,6 +1057,16 @@ public void Tags() // Assert that we see the tag. Assert.Equal("refs/tags/mytag", Assert.Single(oracle2.Tags)); + + // Add another commit + this.AddCommits(1); + + // Refresh our context before asking again. + this.Context = this.CreateGitContext(this.RepoPath); + VersionOracle oracle3 = new(this.Context); + + // Assert that HEAD is not pointing to the tag. + Assert.Empty(oracle3.Tags); } [Fact] @@ -1070,7 +1080,7 @@ public void Tags_Annotated() // Assert that we don't see any tags. Assert.Empty(oracle.Tags); - // Create a tag. + // Create an annotated tag. this.LibGit2Repository.ApplyTag("mytag", this.Signer, "my tag"); // Refresh our context before asking again. @@ -1079,6 +1089,16 @@ public void Tags_Annotated() // Assert that we see the tag. Assert.Equal("refs/tags/mytag", Assert.Single(oracle2.Tags)); + + // Add another commit + this.AddCommits(1); + + // Refresh our context before asking again. + this.Context = this.CreateGitContext(this.RepoPath); + VersionOracle oracle3 = new(this.Context); + + // Assert that HEAD is not pointing to the tag. + Assert.Empty(oracle3.Tags); } [Fact] From 0512c90ddff17bc0a30322c603f5e58baef65ca0 Mon Sep 17 00:00:00 2001 From: Robert Hague Date: Sat, 3 Feb 2024 14:25:12 +0100 Subject: [PATCH 128/257] Do not throw in TryGetObjectByPath for unexpected object type Fixes #1026 --- src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs b/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs index e4c8b0b7f..cb1ae6262 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs @@ -779,7 +779,8 @@ private bool TryGetObjectByPath(GitObjectId sha, string objectType, [NotNullWhen if (string.CompareOrdinal(objectStream.ObjectType, objectType) != 0) { - throw new GitException($"Got a {objectStream.ObjectType} instead of a {objectType} when opening object {sha}"); + value = null; + return false; } value = objectStream; From 41c24ce2eb32cfe1c35e2e0ad2b91f0215bbcc0d Mon Sep 17 00:00:00 2001 From: Rob Hague Date: Sat, 3 Feb 2024 15:26:20 +0100 Subject: [PATCH 129/257] Update test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs --- test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs b/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs index f41eadd9f..7cb7cad6a 100644 --- a/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/VersionOracleTests.cs @@ -1048,7 +1048,7 @@ public void Tags() // Assert that we don't see any tags. Assert.Empty(oracle.Tags); - // Create a lighweight tag. + // Create a lightweight tag. this.LibGit2Repository.ApplyTag("mytag"); // Refresh our context before asking again. From e4fed75c0386011cd6d4d177ecd1bcc22612c3d0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 6 Feb 2024 05:49:52 -0700 Subject: [PATCH 130/257] Bump dotnet-coverage from 17.10.1 to 17.10.2 (#250) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.10.1 to 17.10.2. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 5941f4c88..6eff0445b 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -9,7 +9,7 @@ ] }, "dotnet-coverage": { - "version": "17.10.1", + "version": "17.10.2", "commands": [ "dotnet-coverage" ] From 420207fd6383bbcea6408fdaf4f719bf8434913f Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 9 Feb 2024 19:54:55 +0000 Subject: [PATCH 131/257] Recommend prettier --- .prettierrc.yaml | 0 .vscode/extensions.json | 1 + 2 files changed, 1 insertion(+) create mode 100644 .prettierrc.yaml diff --git a/.prettierrc.yaml b/.prettierrc.yaml new file mode 100644 index 000000000..e69de29bb diff --git a/.vscode/extensions.json b/.vscode/extensions.json index ca3a2aa9d..acaf02131 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -7,6 +7,7 @@ "ms-dotnettools.csharp", "k--kato.docomment", "editorconfig.editorconfig", + "esbenp.prettier-vscode", "pflannery.vscode-versionlens", "davidanson.vscode-markdownlint", "dotjoshjohnson.xml", From c70b6560f101b924b4adb85cafab7048ea3e2ee0 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 9 Feb 2024 19:55:09 +0000 Subject: [PATCH 132/257] Identify AzP-related YAML files --- .vscode/settings.json | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index ce72437ca..efbe74f47 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -8,5 +8,16 @@ "editor.formatOnSave": true, "[xml]": { "editor.wordWrap": "off" - } + }, + // Treat these files as Azure Pipelines files + "files.associations": { + "**/azure-pipelines/**/*.yml": "azure-pipelines", + "azure-pipelines.yml": "azure-pipelines" + }, + // Use Prettier as the default formatter for Azure Pipelines files. + // Needs to be explicitly configured: https://github.com/Microsoft/azure-pipelines-vscode#document-formatting + "[azure-pipelines]": { + "editor.defaultFormatter": "esbenp.prettier-vscode", + "editor.formatOnSave": false // enable this when the conform + }, } From 0f2cb2ea14fda56fbe600733c6698a694d2609c8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Feb 2024 09:03:32 -0700 Subject: [PATCH 133/257] Bump Microsoft.NET.Test.Sdk from 17.8.0 to 17.9.0 (#251) Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.8.0 to 17.9.0. - [Release notes](https://github.com/microsoft/vstest/releases) - [Changelog](https://github.com/microsoft/vstest/blob/main/docs/releases.md) - [Commits](https://github.com/microsoft/vstest/compare/v17.8.0...v17.9.0) --- updated-dependencies: - dependency-name: Microsoft.NET.Test.Sdk dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 1438548bb..3096e57cc 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,7 +6,7 @@ true - + From aa19fdde1dbd4cbb0c2ee4f353563481b8f6d2ea Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 19 Feb 2024 07:35:40 -0700 Subject: [PATCH 134/257] Bump .NET SDK from 8.0.100 to 8.0.201 --- .devcontainer/Dockerfile | 2 +- global.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index b680b1dbc..34e569080 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,5 +1,5 @@ # Refer to https://hub.docker.com/_/microsoft-dotnet-sdk for available versions -FROM mcr.microsoft.com/dotnet/sdk:8.0.100-jammy +FROM mcr.microsoft.com/dotnet/sdk:8.0.201-jammy # Installing mono makes `dotnet test` work without errors even for net472. # But installing it takes a long time, so it's excluded by default. diff --git a/global.json b/global.json index d24a9b70b..2565f2363 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "8.0.100", + "version": "8.0.201", "rollForward": "patch", "allowPrerelease": false } From 4d78e3c1af91d81e9ed7baac5f2c92ef81b859ca Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 19 Feb 2024 07:36:25 -0700 Subject: [PATCH 135/257] Bump xunit.runner.visualstudio from 2.5.6 to 2.5.7 (#254) Bumps [xunit.runner.visualstudio](https://github.com/xunit/visualstudio.xunit) from 2.5.6 to 2.5.7. - [Release notes](https://github.com/xunit/visualstudio.xunit/releases) - [Commits](https://github.com/xunit/visualstudio.xunit/compare/2.5.6...2.5.7) --- updated-dependencies: - dependency-name: xunit.runner.visualstudio dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 3096e57cc..32271e50f 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -7,7 +7,7 @@ - + From 4540dc53c2e406f83a3a547da0f77d31a04591a6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 19 Feb 2024 07:36:45 -0700 Subject: [PATCH 136/257] Bump dotnet-coverage from 17.10.2 to 17.10.3 (#252) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.10.2 to 17.10.3. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 6eff0445b..dfd00e462 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -9,7 +9,7 @@ ] }, "dotnet-coverage": { - "version": "17.10.2", + "version": "17.10.3", "commands": [ "dotnet-coverage" ] From 7dec0100751f801cd01cea01bac5f12db6ecf504 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 19 Feb 2024 14:43:08 +0000 Subject: [PATCH 137/257] Bump xunit from 2.6.6 to 2.7.0 (#253) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 32271e50f..60ffd9224 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -8,7 +8,7 @@ - + From b21987e11f1d74129d02351bc983098706c8a554 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 21 Feb 2024 15:48:10 -0700 Subject: [PATCH 138/257] fix typo --- .vscode/settings.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index efbe74f47..45467326c 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -18,6 +18,6 @@ // Needs to be explicitly configured: https://github.com/Microsoft/azure-pipelines-vscode#document-formatting "[azure-pipelines]": { "editor.defaultFormatter": "esbenp.prettier-vscode", - "editor.formatOnSave": false // enable this when the conform + "editor.formatOnSave": false // enable this when they conform }, } From db99483d6268acbfbc4da8a1ccda546e2693deee Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Feb 2024 12:29:14 -0700 Subject: [PATCH 139/257] Bump es5-ext from 0.10.53 to 0.10.63 in /src/nerdbank-gitversioning.npm (#1032) Bumps [es5-ext](https://github.com/medikoo/es5-ext) from 0.10.53 to 0.10.63. - [Release notes](https://github.com/medikoo/es5-ext/releases) - [Changelog](https://github.com/medikoo/es5-ext/blob/main/CHANGELOG.md) - [Commits](https://github.com/medikoo/es5-ext/compare/v0.10.53...v0.10.63) --- updated-dependencies: - dependency-name: es5-ext dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/nerdbank-gitversioning.npm/yarn.lock | 41 +++++++++++++++--------- 1 file changed, 26 insertions(+), 15 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index 7661a8389..adfc70c46 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -693,16 +693,17 @@ error-ex@^1.2.0: dependencies: is-arrayish "^0.2.1" -es5-ext@^0.10.35, es5-ext@^0.10.45, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@~0.10.14, es5-ext@~0.10.2, es5-ext@~0.10.46: - version "0.10.53" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.53.tgz#93c5a3acfdbef275220ad72644ad02ee18368de1" - integrity sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q== +es5-ext@^0.10.35, es5-ext@^0.10.45, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@^0.10.62, es5-ext@~0.10.14, es5-ext@~0.10.2, es5-ext@~0.10.46: + version "0.10.63" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.63.tgz#9c222a63b6a332ac80b1e373b426af723b895bd6" + integrity sha512-hUCZd2Byj/mNKjfP9jXrdVZ62B8KuA/VoK7X8nUh5qT+AxDmcbvZz041oDVZdbIN1qW6XY9VDNwzkvKnZvK2TQ== dependencies: - es6-iterator "~2.0.3" - es6-symbol "~3.1.3" - next-tick "~1.0.0" + es6-iterator "^2.0.3" + es6-symbol "^3.1.3" + esniff "^2.0.1" + next-tick "^1.1.0" -es6-iterator@^2.0.1, es6-iterator@^2.0.3, es6-iterator@~2.0.3: +es6-iterator@^2.0.1, es6-iterator@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" integrity sha1-p96IkUGgWpSwhUQDstCg+/qY87c= @@ -711,7 +712,7 @@ es6-iterator@^2.0.1, es6-iterator@^2.0.3, es6-iterator@~2.0.3: es5-ext "^0.10.35" es6-symbol "^3.1.1" -es6-symbol@^3.1.1, es6-symbol@~3.1.3: +es6-symbol@^3.1.1, es6-symbol@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== @@ -739,6 +740,16 @@ escape-string-regexp@^1.0.2: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= +esniff@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/esniff/-/esniff-2.0.1.tgz#a4d4b43a5c71c7ec51c51098c1d8a29081f9b308" + integrity sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg== + dependencies: + d "^1.0.1" + es5-ext "^0.10.62" + event-emitter "^0.3.5" + type "^2.7.2" + event-emitter@^0.3.5: version "0.3.5" resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" @@ -1857,16 +1868,11 @@ nanomatch@^1.2.9: snapdragon "^0.8.1" to-regex "^3.0.1" -next-tick@1: +next-tick@1, next-tick@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb" integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ== -next-tick@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" - integrity sha1-yobR/ogoFpsBICCOPchCS524NCw= - no-case@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.3.tgz#c21b434c1ffe48b39087e86cfb4d2582e9df18f8" @@ -2737,6 +2743,11 @@ type@^2.0.0: resolved "https://registry.yarnpkg.com/type/-/type-2.0.0.tgz#5f16ff6ef2eb44f260494dae271033b29c09a9c3" integrity sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow== +type@^2.7.2: + version "2.7.2" + resolved "https://registry.yarnpkg.com/type/-/type-2.7.2.tgz#2376a15a3a28b1efa0f5350dcf72d24df6ef98d0" + integrity sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw== + typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" From e2bf1ceee715d4c2a4ee08e2079a8f0f9b17159b Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 19 Mar 2024 12:09:32 -0600 Subject: [PATCH 140/257] Update PublishCodeCoverageResults task to v2 --- azure-pipelines/publish-codecoverage.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/azure-pipelines/publish-codecoverage.yml b/azure-pipelines/publish-codecoverage.yml index fbb6a39a7..8ec94e64a 100644 --- a/azure-pipelines/publish-codecoverage.yml +++ b/azure-pipelines/publish-codecoverage.yml @@ -17,9 +17,8 @@ steps: condition: and(succeeded(), ${{ parameters.includeMacOS }}) - powershell: azure-pipelines/Merge-CodeCoverage.ps1 -Path '$(Pipeline.Workspace)' -OutputFile coveragereport/merged.cobertura.xml -Format Cobertura -Verbose displayName: ⚙ Merge coverage -- task: PublishCodeCoverageResults@1 +- task: PublishCodeCoverageResults@2 displayName: 📢 Publish code coverage results to Azure DevOps inputs: - codeCoverageTool: cobertura summaryFileLocation: coveragereport/merged.cobertura.xml failIfCoverageEmpty: true From 3271c787c892c1c48264f584c0f3e7b9d602b576 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Mar 2024 16:04:38 +0000 Subject: [PATCH 141/257] Bump dotnet-coverage from 17.10.3 to 17.10.4 (#264) --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index dfd00e462..191eceaca 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -9,7 +9,7 @@ ] }, "dotnet-coverage": { - "version": "17.10.3", + "version": "17.10.4", "commands": [ "dotnet-coverage" ] From 215caa7664016397f88c24b85ef31a9ea704d135 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Apr 2024 18:35:55 -0500 Subject: [PATCH 142/257] Bump gulp-cli from 2.3.0 to 3.0.0 in /src/nerdbank-gitversioning.npm (#1037) Bumps [gulp-cli](https://github.com/gulpjs/gulp-cli) from 2.3.0 to 3.0.0. - [Release notes](https://github.com/gulpjs/gulp-cli/releases) - [Changelog](https://github.com/gulpjs/gulp-cli/blob/master/CHANGELOG.md) - [Commits](https://github.com/gulpjs/gulp-cli/compare/v2.3.0...v3.0.0) --- updated-dependencies: - dependency-name: gulp-cli dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/nerdbank-gitversioning.npm/package.json | 2 +- src/nerdbank-gitversioning.npm/yarn.lock | 333 +++++++++++++++++--- 2 files changed, 298 insertions(+), 37 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/package.json b/src/nerdbank-gitversioning.npm/package.json index b56dcd964..640707620 100644 --- a/src/nerdbank-gitversioning.npm/package.json +++ b/src/nerdbank-gitversioning.npm/package.json @@ -28,7 +28,7 @@ "@types/node": "^18.7.14", "del": "^7.0.0", "gulp": "^4.0.2", - "gulp-cli": "^2.3.0", + "gulp-cli": "^3.0.0", "gulp-sourcemaps": "3.0.0", "gulp-typescript": "^5.0.1", "gulp-util": "^3.0.8", diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index adfc70c46..30fcecd56 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -21,6 +21,11 @@ normalize-path "^2.0.1" through2 "^2.0.3" +"@gulpjs/messages@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@gulpjs/messages/-/messages-1.1.0.tgz#94e70978ff676ade541faab459c37ae0c7095e5a" + integrity sha512-Ys9sazDatyTgZVb4xPlDufLweJ/Os2uHWOv+Caxvy2O85JcnT4M3vc73bi8pdLWlv3fdWQz3pdI9tVwo8rQQSg== + "@nodelib/fs.scandir@2.1.3": version "2.1.3" resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" @@ -91,11 +96,23 @@ ansi-regex@^2.0.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + ansi-wrap@0.1.0, ansi-wrap@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf" @@ -369,6 +386,14 @@ chalk@^1.0.0: strip-ansi "^3.0.0" supports-color "^2.0.0" +chalk@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + chokidar@^2.0.0: version "2.1.8" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" @@ -414,6 +439,15 @@ cliui@^3.2.0: strip-ansi "^3.0.1" wrap-ansi "^2.0.0" +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + clone-buffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" @@ -470,6 +504,18 @@ collection-visit@^1.0.0: map-visit "^1.0.0" object-visit "^1.0.0" +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + color-support@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" @@ -522,6 +568,14 @@ copy-props@^2.0.1: each-props "^1.3.2" is-plain-object "^5.0.0" +copy-props@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/copy-props/-/copy-props-4.0.0.tgz#01d249198b8c2e4d8a5e87b90c9630f52c99a9c9" + integrity sha512-bVWtw1wQLzzKiYROtvNlbJgxgBYt2bMJpkCbKmXM3xyijvcjjWXEk5nyrrT3bgJ7ODb19ZohE2T0Y3FgNPyoTw== + dependencies: + each-props "^3.0.0" + is-plain-object "^5.0.0" + core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" @@ -679,6 +733,19 @@ each-props@^1.3.2: is-plain-object "^2.0.1" object.defaults "^1.1.0" +each-props@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/each-props/-/each-props-3.0.0.tgz#a88fb17634a4828307610ec68269fba2f7280cd8" + integrity sha512-IYf1hpuWrdzse/s/YJOrFmU15lyhSzxelNVAHTEG3DtP4QsLTWZUzcUL3HMXmKQxXpa4EIrBPpwRgj0aehdvAw== + dependencies: + is-plain-object "^5.0.0" + object.defaults "^1.1.0" + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + end-of-stream@^1.0.0, end-of-stream@^1.1.0: version "1.4.4" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" @@ -730,6 +797,11 @@ es6-weak-map@^2.0.1, es6-weak-map@^2.0.2: es6-iterator "^2.0.3" es6-symbol "^3.1.1" +escalade@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== + escape-string-regexp@5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz#4683126b500b61762f2dbebace1806e8be31b1c8" @@ -800,7 +872,7 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@^3.0.0: +extend@^3.0.0, extend@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -897,6 +969,16 @@ findup-sync@^3.0.0: micromatch "^3.0.4" resolve-dir "^1.0.1" +findup-sync@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-5.0.0.tgz#54380ad965a7edca00cc8f63113559aadc541bd2" + integrity sha512-MzwXju70AuyflbgeOhzvQWAvvQdo1XL0A9bVvlXsYcFEBM87WR4OakL4OfZq+QRmr+duJubio+UtNQCPsVESzQ== + dependencies: + detect-file "^1.0.0" + is-glob "^4.0.3" + micromatch "^4.0.4" + resolve-dir "^1.0.1" + fined@^1.0.1: version "1.2.0" resolved "https://registry.yarnpkg.com/fined/-/fined-1.2.0.tgz#d00beccf1aa2b475d16d423b0238b713a2c4a37b" @@ -908,11 +990,27 @@ fined@^1.0.1: object.pick "^1.2.0" parse-filepath "^1.0.1" +fined@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fined/-/fined-2.0.0.tgz#6846563ed96879ce6de6c85c715c42250f8d8089" + integrity sha512-OFRzsL6ZMHz5s0JrsEr+TpdGNCtrVtnuG3x1yzGNiQHT0yaDnXAj8V/lWcpJVrnoDpcwXcASxAZYbuXda2Y82A== + dependencies: + expand-tilde "^2.0.2" + is-plain-object "^5.0.0" + object.defaults "^1.1.0" + object.pick "^1.3.0" + parse-filepath "^1.0.2" + flagged-respawn@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-1.0.1.tgz#e7de6f1279ddd9ca9aac8a5971d618606b3aab41" integrity sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q== +flagged-respawn@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-2.0.0.tgz#abf39719dcfe1ac06c86c9466081c541c682987b" + integrity sha512-Gq/a6YCi8zexmGHMuJwahTGzXlAZAOsbCVKduWXC6TlLCjjFRlExMJc4GC2NYPYZ0r/brw9P7CpRgQmlPVeOoA== + flush-write-stream@^1.0.2: version "1.1.1" resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" @@ -966,11 +1064,21 @@ function-bind@^1.1.1: resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + get-caller-file@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== +get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" @@ -1069,6 +1177,13 @@ glogg@^1.0.0: dependencies: sparkles "^1.0.0" +glogg@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/glogg/-/glogg-2.2.0.tgz#956ceb855a05a2aa1fa668d748f2be8e7361c11c" + integrity sha512-eWv1ds/zAlz+M1ioHsyKJomfY7jbDDPpwSkv14KQj89bycx1nvK5/2Cj/T9g7kzJcX5Bc7Yv22FjfBZS/jl94A== + dependencies: + sparkles "^2.1.0" + graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.10: version "4.2.10" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" @@ -1098,29 +1213,23 @@ gulp-cli@^2.2.0: v8flags "^3.0.1" yargs "^7.1.0" -gulp-cli@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/gulp-cli/-/gulp-cli-2.3.0.tgz#ec0d380e29e52aa45e47977f0d32e18fd161122f" - integrity sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A== - dependencies: - ansi-colors "^1.0.1" - archy "^1.0.0" - array-sort "^1.0.0" - color-support "^1.1.3" - concat-stream "^1.6.0" - copy-props "^2.0.1" - fancy-log "^1.3.2" - gulplog "^1.0.0" - interpret "^1.4.0" - isobject "^3.0.1" - liftoff "^3.1.0" - matchdep "^2.0.0" - mute-stdout "^1.0.0" - pretty-hrtime "^1.0.0" - replace-homedir "^1.0.0" - semver-greatest-satisfied-range "^1.1.0" - v8flags "^3.2.0" - yargs "^7.1.0" +gulp-cli@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/gulp-cli/-/gulp-cli-3.0.0.tgz#577008f5323fad6106b44db24803c27c3a649841" + integrity sha512-RtMIitkT8DEMZZygHK2vEuLPqLPAFB4sntSxg4NoDta7ciwGZ18l7JuhCTiS5deOJi2IoK0btE+hs6R4sfj7AA== + dependencies: + "@gulpjs/messages" "^1.1.0" + chalk "^4.1.2" + copy-props "^4.0.0" + gulplog "^2.2.0" + interpret "^3.1.1" + liftoff "^5.0.0" + mute-stdout "^2.0.0" + replace-homedir "^2.0.0" + semver-greatest-satisfied-range "^2.0.0" + string-width "^4.2.3" + v8flags "^4.0.0" + yargs "^16.2.0" gulp-sourcemaps@3.0.0: version "3.0.0" @@ -1192,6 +1301,13 @@ gulplog@^1.0.0: dependencies: glogg "^1.0.0" +gulplog@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-2.2.0.tgz#71adf43ea5cd07c23ded0fb8af4a844b67c63be8" + integrity sha512-V2FaKiOhpR3DRXZuYdRLn/qiY0yI5XmqbTKrYbdemJ+xOh2d2MOweI/XFgMzd/9+1twdvMwllnZbWZNJ+BOm4A== + dependencies: + glogg "^2.2.0" + has-ansi@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" @@ -1199,6 +1315,11 @@ has-ansi@^2.0.0: dependencies: ansi-regex "^2.0.0" +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + has-gulplog@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce" @@ -1242,6 +1363,13 @@ has-values@^1.0.0: is-number "^3.0.0" kind-of "^4.0.0" +hasown@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== + dependencies: + function-bind "^1.1.2" + homedir-polyfill@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" @@ -1292,10 +1420,10 @@ interpret@^1.1.0: resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.2.0.tgz#d5061a6224be58e8083985f5014d844359576296" integrity sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw== -interpret@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" - integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== +interpret@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-3.1.1.tgz#5be0ceed67ca79c6c4bc5cf0d7ee843dcea110c4" + integrity sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ== invert-kv@^1.0.0: version "1.0.0" @@ -1341,6 +1469,13 @@ is-buffer@^1.1.5: resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== +is-core-module@^2.13.0: + version "2.13.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" + integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== + dependencies: + hasown "^2.0.0" + is-data-descriptor@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" @@ -1397,6 +1532,11 @@ is-fullwidth-code-point@^1.0.0: dependencies: number-is-nan "^1.0.0" +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + is-glob@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" @@ -1593,6 +1733,19 @@ liftoff@^3.1.0: rechoir "^0.6.2" resolve "^1.1.7" +liftoff@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-5.0.0.tgz#0e5ed275bc334caec0e551ecf08bb22be583e236" + integrity sha512-a5BQjbCHnB+cy+gsro8lXJ4kZluzOijzJ1UVVfyJYZC+IP2pLv1h4+aysQeKuTmyO8NAqfyQAk4HWaP/HjcKTg== + dependencies: + extend "^3.0.2" + findup-sync "^5.0.0" + fined "^2.0.0" + flagged-respawn "^2.0.0" + is-plain-object "^5.0.0" + rechoir "^0.8.0" + resolve "^1.20.0" + load-json-file@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" @@ -1846,6 +1999,11 @@ mute-stdout@^1.0.0: resolved "https://registry.yarnpkg.com/mute-stdout/-/mute-stdout-1.0.1.tgz#acb0300eb4de23a7ddeec014e3e96044b3472331" integrity sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg== +mute-stdout@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mute-stdout/-/mute-stdout-2.0.0.tgz#c6a9b4b6185d3b7f70d3ffcb734cbfc8b0f38761" + integrity sha512-32GSKM3Wyc8dg/p39lWPKYu8zci9mJFzV1Np9Of0ZEpe6Fhssn/FbI7ywAMd40uX+p3ZKh3T5EeCFv81qS3HmQ== + nan@^2.12.1: version "2.14.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" @@ -2025,7 +2183,7 @@ p-map@^5.5.0: dependencies: aggregate-error "^4.0.0" -parse-filepath@^1.0.1: +parse-filepath@^1.0.1, parse-filepath@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" integrity sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE= @@ -2089,7 +2247,7 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-parse@^1.0.6: +path-parse@^1.0.6, path-parse@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== @@ -2275,6 +2433,13 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" +rechoir@^0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.8.0.tgz#49f866e0d32146142da3ad8f0eff352b3215ff22" + integrity sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ== + dependencies: + resolve "^1.20.0" + regex-not@^1.0.0, regex-not@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" @@ -2334,6 +2499,11 @@ replace-homedir@^1.0.0: is-absolute "^1.0.0" remove-trailing-separator "^1.1.0" +replace-homedir@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/replace-homedir/-/replace-homedir-2.0.0.tgz#245bd9c909275e0beee75eae85bb40780cd61903" + integrity sha512-bgEuQQ/BHW0XkkJtawzrfzHFSN70f/3cNOiHa2QsYxqrjaC30X1k74FJ6xswVBP0sr0SpGIdVFuPwfrYziVeyw== + require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -2371,6 +2541,15 @@ resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.4.0: dependencies: path-parse "^1.0.6" +resolve@^1.20.0: + version "1.22.8" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" + integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== + dependencies: + is-core-module "^2.13.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + ret@~0.1.10: version "0.1.15" resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" @@ -2417,11 +2596,23 @@ semver-greatest-satisfied-range@^1.1.0: dependencies: sver-compat "^1.5.0" +semver-greatest-satisfied-range@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-2.0.0.tgz#4b62942a7a1ccbdb252e5329677c003bac546fe7" + integrity sha512-lH3f6kMbwyANB7HuOWRMlLCa2itaCrZJ+SAqqkSZrZKO/cAsk2EOyaKHUtNkVLFyFW9pct22SFesFp3Z7zpA0g== + dependencies: + sver "^1.8.3" + "semver@2 || 3 || 4 || 5": version "5.7.2" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== +semver@^6.3.0: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" @@ -2516,6 +2707,11 @@ sparkles@^1.0.0: resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.1.tgz#008db65edce6c50eec0c5e228e1945061dd0437c" integrity sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw== +sparkles@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-2.1.0.tgz#8ad4e8cecba7e568bba660c39b6db46625ecf1ad" + integrity sha512-r7iW1bDw8R/cFifrD3JnQJX0K1jqT0kprL48BiBpLZLJPmAm34zsVBsK5lc7HirZYZqMW65dOXZgbAGt/I6frg== + spdx-correct@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" @@ -2581,6 +2777,15 @@ string-width@^1.0.1, string-width@^1.0.2: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" +string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" @@ -2607,6 +2812,13 @@ strip-ansi@^3.0.0, strip-ansi@^3.0.1: dependencies: ansi-regex "^2.0.0" +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + strip-bom-string@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/strip-bom-string/-/strip-bom-string-1.0.0.tgz#e5211e9224369fbb81d633a2f00044dc8cedad92" @@ -2624,6 +2836,18 @@ supports-color@^2.0.0: resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + sver-compat@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/sver-compat/-/sver-compat-1.5.0.tgz#3cf87dfeb4d07b4a3f14827bc186b3fd0c645cd8" @@ -2632,6 +2856,13 @@ sver-compat@^1.5.0: es6-iterator "^2.0.1" es6-symbol "^3.1.1" +sver@^1.8.3: + version "1.8.4" + resolved "https://registry.yarnpkg.com/sver/-/sver-1.8.4.tgz#9bd6f6265263f01aab152df935dc7a554c15673f" + integrity sha512-71o1zfzyawLfIWBOmw8brleKyvnbn73oVHNCsu51uPMz/HWiKkkXsI31JjHW5zqXEqnPYkIiHd8ZmL7FCimLEA== + optionalDependencies: + semver "^6.3.0" + through2-filter@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-3.0.0.tgz#700e786df2367c2c88cd8aa5be4cf9c1e7831254" @@ -2843,12 +3074,10 @@ v8flags@^3.0.1: dependencies: homedir-polyfill "^1.0.1" -v8flags@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-3.2.0.tgz#b243e3b4dfd731fa774e7492128109a0fe66d656" - integrity sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg== - dependencies: - homedir-polyfill "^1.0.1" +v8flags@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-4.0.1.tgz#98fe6c4308317c5f394d85a435eb192490f7e132" + integrity sha512-fcRLaS4H/hrZk9hYwbdRM35D0U8IYMfEClhXxCivOojl+yTRAZH3Zy2sSy6qVCiGbV9YAtPssP6jaChqC9vPCg== validate-npm-package-license@^3.0.1: version "3.0.4" @@ -2940,6 +3169,15 @@ wrap-ansi@^2.0.0: string-width "^1.0.1" strip-ansi "^3.0.1" +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -2955,6 +3193,16 @@ y18n@^3.2.1: resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696" integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ== +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + +yargs-parser@^20.2.2: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + yargs-parser@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" @@ -2962,6 +3210,19 @@ yargs-parser@^5.0.0: dependencies: camelcase "^3.0.0" +yargs@^16.2.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + yargs@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" From eb2aa3bb020cecce443b762bc88edb93c6615d93 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Apr 2024 18:36:08 -0500 Subject: [PATCH 143/257] Bump typescript from 5.3.2 to 5.4.3 in /src/nerdbank-gitversioning.npm (#1036) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.3.2 to 5.4.3. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml) - [Commits](https://github.com/Microsoft/TypeScript/compare/v5.3.2...v5.4.3) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/nerdbank-gitversioning.npm/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index 30fcecd56..6085cc5de 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -2985,9 +2985,9 @@ typedarray@^0.0.6: integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= typescript@^5.0.4: - version "5.3.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.3.2.tgz#00d1c7c1c46928c5845c1ee8d0cc2791031d4c43" - integrity sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ== + version "5.4.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.3.tgz#5c6fedd4c87bee01cd7a528a30145521f8e0feff" + integrity sha512-KrPd3PKaCLr78MalgiwJnA25Nm8HAmdwN3mYUYZgG/wizIo9EainNVQI9/yDavtVFRN2h3k8uf3GLHuhDMgEHg== unc-path-regex@^0.1.2: version "0.1.2" From 1ed45dbf48b15bdb697516b30044ce8049e9f590 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Apr 2024 18:37:12 -0500 Subject: [PATCH 144/257] Bump NuGet.PackageManagement from 6.7.0 to 6.9.1 (#1034) Bumps [NuGet.PackageManagement](https://github.com/NuGet/NuGet.Client) from 6.7.0 to 6.9.1. - [Release notes](https://github.com/NuGet/NuGet.Client/releases) - [Commits](https://github.com/NuGet/NuGet.Client/commits) --- updated-dependencies: - dependency-name: NuGet.PackageManagement dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 0e5b6050c..d21e11076 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -28,7 +28,7 @@ - + From 9dc0021e95932326bc4b401cac3e3b9bc38b3e71 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Apr 2024 18:37:35 -0500 Subject: [PATCH 145/257] Bump Cake.Core from 3.0.0 to 3.2.0 (#999) Bumps [Cake.Core](https://github.com/cake-build/cake) from 3.0.0 to 3.2.0. - [Release notes](https://github.com/cake-build/cake/releases) - [Changelog](https://github.com/cake-build/cake/blob/develop/ReleaseNotes.md) - [Commits](https://github.com/cake-build/cake/compare/v3.0.0...v3.2.0) --- updated-dependencies: - dependency-name: Cake.Core dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index d21e11076..1e1316cb7 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -12,7 +12,7 @@ - + From 73d40744f787daa72ce144c79d4262510108db99 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 1 Apr 2024 18:57:49 -0500 Subject: [PATCH 146/257] Update SDK version references --- azure-pipelines.yml | 4 ++-- azure-pipelines/build.yml | 2 +- test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 6de129d98..5b3c16040 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -119,10 +119,10 @@ stages: clean: true submodules: true # keep the warnings quiet about the wiki not being enlisted - task: UseDotNet@2 - displayName: Install .NET 8.0.100 SDK + displayName: Install .NET 8.0.201 SDK inputs: packageType: sdk - version: 8.0.100 + version: 8.0.201 - script: dotnet --info displayName: Show dotnet SDK info - bash: | diff --git a/azure-pipelines/build.yml b/azure-pipelines/build.yml index 650d30fe4..dce26040b 100644 --- a/azure-pipelines/build.yml +++ b/azure-pipelines/build.yml @@ -23,7 +23,7 @@ jobs: - template: install-dependencies.yml - pwsh: | Invoke-WebRequest -Uri "https://dot.net/v1/dotnet-install.ps1" -OutFile dotnet-install.ps1 - & .\dotnet-install.ps1 -Architecture x86 -Version 8.0.100 -InstallDir "C:\Program Files (x86)\dotnet\" -NoPath -Verbose + & .\dotnet-install.ps1 -Architecture x86 -Version 8.0.201 -InstallDir "C:\Program Files (x86)\dotnet\" -NoPath -Verbose displayName: ⚙ Install 32-bit .NET SDK and runtimes - template: dotnet.yml diff --git a/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs b/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs index 675fab169..91f0cd918 100644 --- a/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs +++ b/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs @@ -25,7 +25,7 @@ internal static void LoadMSBuild() if (IntPtr.Size == 4) { // 32-bit .NET runtime requires special code to find the x86 SDK (where MSBuild is). - MSBuildLocator.RegisterMSBuildPath(@"C:\Program Files (x86)\dotnet\sdk\8.0.100"); + MSBuildLocator.RegisterMSBuildPath(@"C:\Program Files (x86)\dotnet\sdk\8.0.201"); } else { From 4fd3c682bf32b60aa9d9fe0f7e896cd4b596bdb9 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 1 Apr 2024 19:09:52 -0500 Subject: [PATCH 147/257] Run `dotnet format` --- test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs b/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs index 54e9bab2d..74d66985e 100644 --- a/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs @@ -281,7 +281,7 @@ protected void AssertStandardProperties(VersionOptions versionOptions, BuildResu Version version = this.GetVersion(relativeProjectDirectory); Version assemblyVersion = GetExpectedAssemblyVersion(versionOptions, version); IEnumerable additionalBuildMetadata = from item in buildResult.BuildResult.ProjectStateAfterBuild.GetItems("BuildMetadata") - select item.EvaluatedInclude; + select item.EvaluatedInclude; string expectedBuildMetadata = $"+{commitIdShort}"; if (additionalBuildMetadata.Any()) { @@ -430,8 +430,8 @@ private void LoadTargetsIntoProjectCollection() string prefix = $"{ThisAssembly.RootNamespace}.Targets."; IEnumerable streamNames = from name in Assembly.GetExecutingAssembly().GetManifestResourceNames() - where name.StartsWith(prefix, StringComparison.Ordinal) - select name; + where name.StartsWith(prefix, StringComparison.Ordinal) + select name; foreach (string name in streamNames) { using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(name)) From 27edc6c689a72b677dcc0cf9f596ce27f3d8b7a1 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 18 Apr 2024 05:54:42 -0600 Subject: [PATCH 148/257] Bump dependencies --- .config/dotnet-tools.json | 6 +++--- Directory.Packages.props | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 191eceaca..7e8a502ad 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,13 +3,13 @@ "isRoot": true, "tools": { "powershell": { - "version": "7.4.1", + "version": "7.4.2", "commands": [ "pwsh" ] }, "dotnet-coverage": { - "version": "17.10.4", + "version": "17.11.0", "commands": [ "dotnet-coverage" ] @@ -21,4 +21,4 @@ ] } } -} \ No newline at end of file +} diff --git a/Directory.Packages.props b/Directory.Packages.props index 60ffd9224..525ae9c2d 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -8,7 +8,7 @@ - + From ace939170b10ea63e17fe6c1b3325eb3f143a80a Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 30 Apr 2024 06:55:08 -0600 Subject: [PATCH 149/257] Bump xunit to 2.8.0 --- Directory.Packages.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 525ae9c2d..382835c32 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -7,8 +7,8 @@ - - + + From 327e40021c9c07e8a56a9f5b0aeec1853ee5ad0c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 2 May 2024 05:48:57 -0600 Subject: [PATCH 150/257] Bump typescript from 5.4.3 to 5.4.5 in /src/nerdbank-gitversioning.npm (#1046) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.4.3 to 5.4.5. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml) - [Commits](https://github.com/Microsoft/TypeScript/compare/v5.4.3...v5.4.5) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/nerdbank-gitversioning.npm/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index 6085cc5de..22d8ee0e6 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -2985,9 +2985,9 @@ typedarray@^0.0.6: integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= typescript@^5.0.4: - version "5.4.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.3.tgz#5c6fedd4c87bee01cd7a528a30145521f8e0feff" - integrity sha512-KrPd3PKaCLr78MalgiwJnA25Nm8HAmdwN3mYUYZgG/wizIo9EainNVQI9/yDavtVFRN2h3k8uf3GLHuhDMgEHg== + version "5.4.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" + integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== unc-path-regex@^0.1.2: version "0.1.2" From 5cdabd6a84ce28b221dd14857a47d4e58c74681a Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 19 May 2024 10:54:37 -0600 Subject: [PATCH 151/257] Use spaces for xml config files --- .editorconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/.editorconfig b/.editorconfig index ffae180a8..91809344e 100644 --- a/.editorconfig +++ b/.editorconfig @@ -26,6 +26,7 @@ indent_size = 2 # Xml config files [*.{ruleset,config,nuspec,resx,vsixmanifest,vsct,runsettings}] indent_size = 2 +indent_style = space # JSON files [*.json] From ca08c0f2dd8d034a52e7775ee1629efb5327575e Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 21 May 2024 14:45:12 -0600 Subject: [PATCH 152/257] Bump .NET SDK to 8.0.300 --- .devcontainer/Dockerfile | 2 +- global.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 34e569080..6ed7f6e71 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,5 +1,5 @@ # Refer to https://hub.docker.com/_/microsoft-dotnet-sdk for available versions -FROM mcr.microsoft.com/dotnet/sdk:8.0.201-jammy +FROM mcr.microsoft.com/dotnet/sdk:8.0.300-jammy # Installing mono makes `dotnet test` work without errors even for net472. # But installing it takes a long time, so it's excluded by default. diff --git a/global.json b/global.json index 2565f2363..c83e939e8 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "8.0.201", + "version": "8.0.300", "rollForward": "patch", "allowPrerelease": false } From d87da7a0cd7722051fa125f2a33d857442c69b13 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 27 May 2024 12:17:47 -1000 Subject: [PATCH 153/257] Merge test related dependency updates (#271) * Bump xunit from 2.8.0 to 2.8.1 Bumps [xunit](https://github.com/xunit/xunit) from 2.8.0 to 2.8.1. - [Commits](https://github.com/xunit/xunit/compare/2.8.0...2.8.1) --- updated-dependencies: - dependency-name: xunit dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * Bump Microsoft.NET.Test.Sdk from 17.9.0 to 17.10.0 Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.9.0 to 17.10.0. - [Release notes](https://github.com/microsoft/vstest/releases) - [Changelog](https://github.com/microsoft/vstest/blob/main/docs/releases.md) - [Commits](https://github.com/microsoft/vstest/compare/v17.9.0...v17.10.0) --- updated-dependencies: - dependency-name: Microsoft.NET.Test.Sdk dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] * Bump xunit.runner.visualstudio from 2.8.0 to 2.8.1 Bumps [xunit.runner.visualstudio](https://github.com/xunit/visualstudio.xunit) from 2.8.0 to 2.8.1. - [Release notes](https://github.com/xunit/visualstudio.xunit/releases) - [Commits](https://github.com/xunit/visualstudio.xunit/compare/2.8.0...2.8.1) --- updated-dependencies: - dependency-name: xunit.runner.visualstudio dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 382835c32..203681681 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,9 +6,9 @@ true - - - + + + From 3465cc16aa2116e99b591ea2855f935b454f9a81 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 3 Jun 2024 06:28:26 -0600 Subject: [PATCH 154/257] Bump Newtonsoft.Json.Schema from 3.0.15 to 3.0.16 (#1057) Bumps [Newtonsoft.Json.Schema](https://github.com/JamesNK/Newtonsoft.Json.Schema) from 3.0.15 to 3.0.16. - [Release notes](https://github.com/JamesNK/Newtonsoft.Json.Schema/releases) - [Commits](https://github.com/JamesNK/Newtonsoft.Json.Schema/compare/3.0.15...3.0.16) --- updated-dependencies: - dependency-name: Newtonsoft.Json.Schema dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 2a4b37227..d04537b0f 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,7 +6,7 @@ true 0.13.10 16.11.0 - 15.9.20 + 16.11.0 2.0.320 @@ -27,7 +27,7 @@ - + From 2b6b66ab90b84cd2689e8dcffc6060919d2b0255 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 3 Jun 2024 06:28:35 -0600 Subject: [PATCH 155/257] Bump BenchmarkDotNetVersion from 0.13.10 to 0.13.12 (#1056) Bumps `BenchmarkDotNetVersion` from 0.13.10 to 0.13.12. Updates `BenchmarkDotNet` from 0.13.10 to 0.13.12 - [Release notes](https://github.com/dotnet/BenchmarkDotNet/releases) - [Commits](https://github.com/dotnet/BenchmarkDotNet/compare/v0.13.10...v0.13.12) Updates `BenchmarkDotNet.Diagnostics.Windows` from 0.13.10 to 0.13.12 - [Release notes](https://github.com/dotnet/BenchmarkDotNet/releases) - [Commits](https://github.com/dotnet/BenchmarkDotNet/compare/v0.13.10...v0.13.12) --- updated-dependencies: - dependency-name: BenchmarkDotNet dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: BenchmarkDotNet.Diagnostics.Windows dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index d04537b0f..f8c88266a 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -4,7 +4,7 @@ true true - 0.13.10 + 0.13.12 16.11.0 16.11.0 From e90be2e755eb204a173daa23e9316f99be1e1f79 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 3 Jun 2024 11:15:23 -0600 Subject: [PATCH 156/257] Bump dotnet-coverage from 17.11.0 to 17.11.3 (#272) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.11.0 to 17.11.3. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 7e8a502ad..29710eea2 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -9,7 +9,7 @@ ] }, "dotnet-coverage": { - "version": "17.11.0", + "version": "17.11.3", "commands": [ "dotnet-coverage" ] @@ -21,4 +21,4 @@ ] } } -} +} \ No newline at end of file From 48013f00edc27ded210565367038a64366706fdb Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 4 Jun 2024 09:50:44 -0600 Subject: [PATCH 157/257] Bump Nerdbank.GitVersioning to 3.6.139 --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 203681681..7571fff5e 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -13,7 +13,7 @@ - + From 2415b1e21081903457430079e1ff548c4ff9d5a8 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 4 Jun 2024 11:10:20 -0600 Subject: [PATCH 158/257] Bump nbgv to 3.6.139 --- .config/dotnet-tools.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 29710eea2..49ac8e665 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,10 +15,10 @@ ] }, "nbgv": { - "version": "3.6.133", + "version": "3.6.139", "commands": [ "nbgv" ] } } -} \ No newline at end of file +} From 8028bf78bf4f96963e962e7f8e83662e9544be1f Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 14 Jun 2024 10:45:03 -0600 Subject: [PATCH 159/257] Drop SourceLink package reference Per @KirillOsenkov in [this comment](https://github.com/dotnet/sdk/issues/36666#issuecomment-2162173453), SourceLink is now built into the .NET SDK. --- Directory.Packages.props | 3 --- 1 file changed, 3 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 7571fff5e..1efd3c089 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -17,7 +17,4 @@ - - - From 6e225a8c19365540a58ace87d912c8287b2c9a82 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 14 Jun 2024 10:51:33 -0600 Subject: [PATCH 160/257] Remove WPF workarounds for bugs fixed years ago --- Directory.Build.props | 19 ------------------- Directory.Build.targets | 5 ----- 2 files changed, 24 deletions(-) diff --git a/Directory.Build.props b/Directory.Build.props index e42ac60a6..1c77d5d6e 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -55,23 +55,4 @@ $(PackageProjectUrl)/releases/tag/v$(Version) - - - false - true - - - - - false - false - false - false - diff --git a/Directory.Build.targets b/Directory.Build.targets index cc8184aac..b4afce0a7 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -1,10 +1,5 @@ - - - false - - From db5c05423b18852f18b280f9e8d0c56da913c161 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 24 Jun 2024 09:07:14 -0600 Subject: [PATCH 161/257] Bump powershell from 7.4.2 to 7.4.3 (#275) Bumps [powershell](https://github.com/PowerShell/PowerShell) from 7.4.2 to 7.4.3. - [Release notes](https://github.com/PowerShell/PowerShell/releases) - [Commits](https://github.com/PowerShell/PowerShell/compare/v7.4.2...v7.4.3) --- updated-dependencies: - dependency-name: powershell dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 49ac8e665..8d8ff3ff5 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "powershell": { - "version": "7.4.2", + "version": "7.4.3", "commands": [ "pwsh" ] @@ -21,4 +21,4 @@ ] } } -} +} \ No newline at end of file From ae01d878e7a8f9c0800618058a357b7001ece3af Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 28 Jun 2024 07:03:43 -0600 Subject: [PATCH 162/257] Ignore .sarif files --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitignore b/.gitignore index 69599b879..3f1c5ed94 100644 --- a/.gitignore +++ b/.gitignore @@ -352,3 +352,6 @@ MigrationBackup/ # mac-created file to track user view preferences for a directory .DS_Store + +# Analysis results +*.sarif From 19e67ad57a852efc0568cda683b5384bda824c07 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 28 Jun 2024 12:17:08 -0600 Subject: [PATCH 163/257] Add support for VB.NET projects --- Directory.Build.props | 1 - Directory.Build.targets | 4 ++++ src/AssemblyInfo.vb | 6 ++++++ src/Directory.Build.targets | 3 ++- 4 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 src/AssemblyInfo.vb diff --git a/Directory.Build.props b/Directory.Build.props index 1c77d5d6e..803396d08 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -6,7 +6,6 @@ $(RepoRootPath)obj\$([MSBuild]::MakeRelative($(RepoRootPath), $(MSBuildProjectDirectory)))\ $(RepoRootPath)bin\$(MSBuildProjectName)\ $(RepoRootPath)bin\Packages\$(Configuration)\ - 12 enable enable latest diff --git a/Directory.Build.targets b/Directory.Build.targets index b4afce0a7..ecd71a31b 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -1,5 +1,9 @@ + + 12 + 16.9 + diff --git a/src/AssemblyInfo.vb b/src/AssemblyInfo.vb new file mode 100644 index 000000000..34b7cbe11 --- /dev/null +++ b/src/AssemblyInfo.vb @@ -0,0 +1,6 @@ +' Copyright (c) COMPANY-PLACEHOLDER. All rights reserved. +' Licensed under the MIT license. See LICENSE file in the project root for full license information. + +Imports System.Runtime.InteropServices + + diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets index 07f413461..654f5c6d3 100644 --- a/src/Directory.Build.targets +++ b/src/Directory.Build.targets @@ -1,7 +1,8 @@ - + + From ebb586f8bb4993a4f2b0e144b1347474cb0c52fb Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 28 Jun 2024 13:54:20 -0600 Subject: [PATCH 164/257] Fix template expansion --- Apply-Template.ps1 | 2 +- Expand-Template.ps1 | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Apply-Template.ps1 b/Apply-Template.ps1 index 42ed33623..921ceee50 100644 --- a/Apply-Template.ps1 +++ b/Apply-Template.ps1 @@ -37,6 +37,6 @@ robocopy /mir $PSScriptRoot/.github $Path/.github robocopy /mir $PSScriptRoot/.vscode $Path/.vscode robocopy /mir $PSScriptRoot/tools $Path/tools robocopy $PSScriptRoot $Path Directory.Build.* Directory.Packages.props global.json init.* azure-pipelines.yml .gitignore .gitattributes .editorconfig -robocopy $PSScriptRoot/src $Path/src Directory.Build.* .editorconfig AssemblyInfo.cs +robocopy $PSScriptRoot/src $Path/src Directory.Build.* .editorconfig AssemblyInfo.cs AssemblyInfo.vb robocopy $PSScriptRoot/test $Path/test Directory.Build.* .editorconfig Remove-Item $Path/azure-pipelines/expand-template.yml diff --git a/Expand-Template.ps1 b/Expand-Template.ps1 index d203d85f0..e9a567c18 100755 --- a/Expand-Template.ps1 +++ b/Expand-Template.ps1 @@ -148,6 +148,9 @@ try { Replace-Placeholders -Path "src/AssemblyInfo.cs" -Replacements @{ 'COMPANY-PLACEHOLDER'=$Author } + Replace-Placeholders -Path "src/AssemblyInfo.vb" -Replacements @{ + 'COMPANY-PLACEHOLDER'=$Author + } Replace-Placeholders -Path "LICENSE" -Replacements @{ 'COMPANY-PLACEHOLDER'=$Author } From c7a6dc82ecc39cd1a77c3e31bf9facd3ffd998f8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Jul 2024 19:54:45 +0000 Subject: [PATCH 165/257] Bump Microsoft.Build.Locator from 1.6.10 to 1.7.8 (#1062) Bumps [Microsoft.Build.Locator](https://github.com/microsoft/MSBuildLocator) from 1.6.10 to 1.7.8. - [Release notes](https://github.com/microsoft/MSBuildLocator/releases) - [Commits](https://github.com/microsoft/MSBuildLocator/compare/v1.6.10...v1.7.8) --- updated-dependencies: - dependency-name: Microsoft.Build.Locator dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index f8c88266a..05f97eda7 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -18,7 +18,7 @@ - + From 976fc101715546380c2f8bb8abef83fb2bb84dea Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Jul 2024 20:01:52 +0000 Subject: [PATCH 166/257] Bump Newtonsoft.Json.Schema from 3.0.16 to 4.0.1 (#1063) Bumps [Newtonsoft.Json.Schema](https://github.com/JamesNK/Newtonsoft.Json.Schema) from 3.0.16 to 4.0.1. - [Release notes](https://github.com/JamesNK/Newtonsoft.Json.Schema/releases) - [Commits](https://github.com/JamesNK/Newtonsoft.Json.Schema/compare/3.0.16...4.0.1) --- updated-dependencies: - dependency-name: Newtonsoft.Json.Schema dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 05f97eda7..699686bbd 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -27,7 +27,7 @@ - + From e69fef21e7bb686d2175c1f24995e7514a9ea21c Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 8 Jul 2024 15:13:27 -0600 Subject: [PATCH 167/257] Bump several dependencies --- Directory.Packages.props | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 1efd3c089..fe766e309 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -7,11 +7,11 @@ - - + + - + From baf10f7ffd53dee5b61099c371022a15bd6070b5 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 10 Jul 2024 10:15:20 -0700 Subject: [PATCH 168/257] Fix github actions warnings --- .github/workflows/build.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 33502820a..06d884d90 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -26,7 +26,7 @@ jobs: - windows-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 # avoid shallow clone so nbgv can do its work. - name: ⚙ Install prerequisites @@ -56,53 +56,53 @@ jobs: if: always() - name: 📢 Upload project.assets.json files if: always() - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v4 with: name: projectAssetsJson-${{ runner.os }} path: ${{ runner.temp }}/_artifacts/projectAssetsJson continue-on-error: true - name: 📢 Upload variables - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v4 with: name: variables-${{ runner.os }} path: ${{ runner.temp }}/_artifacts/Variables continue-on-error: true - name: 📢 Upload build_logs if: always() - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v4 with: name: build_logs-${{ runner.os }} path: ${{ runner.temp }}/_artifacts/build_logs continue-on-error: true - name: 📢 Upload test_logs if: always() - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v4 with: name: test_logs-${{ runner.os }} path: ${{ runner.temp }}/_artifacts/test_logs continue-on-error: true - name: 📢 Upload testResults if: always() - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v4 with: name: testResults-${{ runner.os }} path: ${{ runner.temp }}/_artifacts/testResults continue-on-error: true - name: 📢 Upload coverageResults if: always() - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v4 with: name: coverageResults-${{ runner.os }} path: ${{ runner.temp }}/_artifacts/coverageResults continue-on-error: true - name: 📢 Upload symbols - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v4 with: name: symbols-${{ runner.os }} path: ${{ runner.temp }}/_artifacts/symbols continue-on-error: true - name: 📢 Upload deployables - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v4 with: name: deployables-${{ runner.os }} path: ${{ runner.temp }}/_artifacts/deployables From f93bdce9c96216e096c5a02927c3176cd9b5699b Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 10 Jul 2024 10:19:19 -0700 Subject: [PATCH 169/257] Skip codecov publishing without token --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 06d884d90..cdf4ac963 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -112,4 +112,4 @@ jobs: shell: pwsh timeout-minutes: 3 continue-on-error: true - if: always() + if: env.codecov_token != '' From 03b934cc679c0900e8b98d23b5dd96965c33ce19 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 17 Jul 2024 22:28:10 -0600 Subject: [PATCH 170/257] Enable CA2016: forward the CancellationToken --- .editorconfig | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.editorconfig b/.editorconfig index 91809344e..b268b5eea 100644 --- a/.editorconfig +++ b/.editorconfig @@ -185,5 +185,8 @@ dotnet_diagnostic.DOC202.severity = warning # CA1062: Validate arguments of public methods dotnet_diagnostic.CA1062.severity = warning +# CA2016: Forward the CancellationToken parameter +dotnet_diagnostic.CA2016.severity = warning + [*.sln] indent_style = tab From 611f5abfb16c27ed2e2f1d72b4bbaf9a9dd81a7c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Jul 2024 07:18:26 -0600 Subject: [PATCH 171/257] Bump powershell from 7.4.3 to 7.4.4 (#277) Bumps [powershell](https://github.com/PowerShell/PowerShell) from 7.4.3 to 7.4.4. - [Release notes](https://github.com/PowerShell/PowerShell/releases) - [Commits](https://github.com/PowerShell/PowerShell/compare/v7.4.3...v7.4.4) --- updated-dependencies: - dependency-name: powershell dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 8d8ff3ff5..5d2f7feb1 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "powershell": { - "version": "7.4.3", + "version": "7.4.4", "commands": [ "pwsh" ] From 778b6e4ce0b0ff148dc32bffeb58ad7035b4dc8b Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 8 Aug 2024 12:32:08 -0600 Subject: [PATCH 172/257] Update .NET SDK version references --- azure-pipelines.yml | 4 ++-- azure-pipelines/build.yml | 2 +- test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 5b3c16040..566d4c147 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -119,10 +119,10 @@ stages: clean: true submodules: true # keep the warnings quiet about the wiki not being enlisted - task: UseDotNet@2 - displayName: Install .NET 8.0.201 SDK + displayName: Install .NET 8.0.300 SDK inputs: packageType: sdk - version: 8.0.201 + version: 8.0.300 - script: dotnet --info displayName: Show dotnet SDK info - bash: | diff --git a/azure-pipelines/build.yml b/azure-pipelines/build.yml index dce26040b..4347ab057 100644 --- a/azure-pipelines/build.yml +++ b/azure-pipelines/build.yml @@ -23,7 +23,7 @@ jobs: - template: install-dependencies.yml - pwsh: | Invoke-WebRequest -Uri "https://dot.net/v1/dotnet-install.ps1" -OutFile dotnet-install.ps1 - & .\dotnet-install.ps1 -Architecture x86 -Version 8.0.201 -InstallDir "C:\Program Files (x86)\dotnet\" -NoPath -Verbose + & .\dotnet-install.ps1 -Architecture x86 -Version 8.0.300 -InstallDir "C:\Program Files (x86)\dotnet\" -NoPath -Verbose displayName: ⚙ Install 32-bit .NET SDK and runtimes - template: dotnet.yml diff --git a/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs b/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs index 91f0cd918..a4652d16d 100644 --- a/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs +++ b/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs @@ -25,7 +25,7 @@ internal static void LoadMSBuild() if (IntPtr.Size == 4) { // 32-bit .NET runtime requires special code to find the x86 SDK (where MSBuild is). - MSBuildLocator.RegisterMSBuildPath(@"C:\Program Files (x86)\dotnet\sdk\8.0.201"); + MSBuildLocator.RegisterMSBuildPath(@"C:\Program Files (x86)\dotnet\sdk\8.0.300"); } else { From ee2551c90d606c973699722f88ebdc95d0b840df Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 8 Aug 2024 18:56:35 -0600 Subject: [PATCH 173/257] Bump node.js version and switch from camel-case to change-case --- azure-pipelines/install-dependencies.yml | 2 +- src/nerdbank-gitversioning.npm/gulpfile.js | 19 +- src/nerdbank-gitversioning.npm/jsconfig.json | 4 +- src/nerdbank-gitversioning.npm/package.json | 8 +- src/nerdbank-gitversioning.npm/ts/index.ts | 4 +- src/nerdbank-gitversioning.npm/tsconfig.json | 6 +- src/nerdbank-gitversioning.npm/yarn.lock | 2337 ++++++------------ 7 files changed, 725 insertions(+), 1655 deletions(-) diff --git a/azure-pipelines/install-dependencies.yml b/azure-pipelines/install-dependencies.yml index 761d18002..a57044d2e 100644 --- a/azure-pipelines/install-dependencies.yml +++ b/azure-pipelines/install-dependencies.yml @@ -5,7 +5,7 @@ steps: - task: NodeTool@0 inputs: - versionSpec: 16.x + versionSpec: 20.x displayName: ⚙️ Install Node.js - task: NuGetAuthenticate@1 diff --git a/src/nerdbank-gitversioning.npm/gulpfile.js b/src/nerdbank-gitversioning.npm/gulpfile.js index 8850d780a..643d6c9ba 100644 --- a/src/nerdbank-gitversioning.npm/gulpfile.js +++ b/src/nerdbank-gitversioning.npm/gulpfile.js @@ -5,7 +5,6 @@ var ts = require('gulp-typescript'); var sourcemaps = require('gulp-sourcemaps'); var merge = require('merge2'); // var tslint = require('gulp-tslint'); -var del = import('del'); var path = require('path'); const outDir = 'out'; @@ -20,12 +19,9 @@ gulp.task('tsc', function () { .pipe(sourcemaps.init()) .pipe(tsProject()); - return merge([ - tsResult.dts.pipe(gulp.dest(outDir)), - tsResult.js - .pipe(sourcemaps.write('.')) - .pipe(gulp.dest(outDir)) - ]); + return merge( + tsResult.js.pipe(sourcemaps.write('.')).pipe(gulp.dest(outDir)), + tsResult.dts.pipe(gulp.dest(outDir))); }); gulp.task('copyPackageContents', gulp.series('tsc', function () { @@ -53,10 +49,9 @@ gulp.task('package', gulp.series('setPackageVersion', function () { }); })); -gulp.task('clean', function () { - return del([ - outDir - ]) +gulp.task('clean', async function () { + const del = await import('del'); + await del.deleteAsync([outDir]); }); gulp.task('default', gulp.series('package', function (done) { @@ -64,7 +59,7 @@ gulp.task('default', gulp.series('package', function (done) { })); gulp.task('watch', gulp.series('tsc', function () { - return gulp.watch('**/*.ts', ['tsc']); + return gulp.watch('**/*.ts', gulp.series('tsc')); })); gulp.task('test', gulp.series('tsc', async function () { diff --git a/src/nerdbank-gitversioning.npm/jsconfig.json b/src/nerdbank-gitversioning.npm/jsconfig.json index 0136d6f20..a98b54d77 100644 --- a/src/nerdbank-gitversioning.npm/jsconfig.json +++ b/src/nerdbank-gitversioning.npm/jsconfig.json @@ -2,8 +2,8 @@ // See https://go.microsoft.com/fwlink/?LinkId=759670 // for the documentation about the jsconfig.json format "compilerOptions": { - "target": "es6", - "module": "commonjs", + "target": "ES2022", + "module": "ES2022", "allowSyntheticDefaultImports": true }, "exclude": [ diff --git a/src/nerdbank-gitversioning.npm/package.json b/src/nerdbank-gitversioning.npm/package.json index 640707620..a2febf715 100644 --- a/src/nerdbank-gitversioning.npm/package.json +++ b/src/nerdbank-gitversioning.npm/package.json @@ -24,20 +24,20 @@ "versioning" ], "devDependencies": { - "@types/camel-case": "^1.2.1", "@types/node": "^18.7.14", - "del": "^7.0.0", - "gulp": "^4.0.2", + "del": "^7.1.0", + "gulp": "^5.0.0", "gulp-cli": "^3.0.0", "gulp-sourcemaps": "3.0.0", "gulp-typescript": "^5.0.1", "gulp-util": "^3.0.8", "merge2": "^1.4.1", "path": "^0.12.7", + "source-map": "^0.7.4", "typescript": "^5.0.4" }, "dependencies": { - "camel-case": "^4.1.2" + "change-case": "5.4.4" }, "scripts": { "build": "gulp" diff --git a/src/nerdbank-gitversioning.npm/ts/index.ts b/src/nerdbank-gitversioning.npm/ts/index.ts index d66eb388a..e9de6edb2 100644 --- a/src/nerdbank-gitversioning.npm/ts/index.ts +++ b/src/nerdbank-gitversioning.npm/ts/index.ts @@ -1,6 +1,5 @@ 'use strict'; -import * as camelCase from 'camel-case'; import { execAsync } from './asyncprocess'; import { getNbgvCommand } from './core'; @@ -47,8 +46,9 @@ export async function getVersion(projectDirectory?: string, dotnetCommand?: stri var directResult = JSON.parse(versionText.stdout); var result = {}; + const { camelCase } = await import('change-case'); for (var field in directResult) { - result[camelCase.camelCase(field)] = directResult[field]; + result[camelCase(field)] = directResult[field]; } return result; diff --git a/src/nerdbank-gitversioning.npm/tsconfig.json b/src/nerdbank-gitversioning.npm/tsconfig.json index b0f1d903f..a927ba38f 100644 --- a/src/nerdbank-gitversioning.npm/tsconfig.json +++ b/src/nerdbank-gitversioning.npm/tsconfig.json @@ -1,9 +1,9 @@ { "compilerOptions": { - "target": "es6", + "target": "ES2022", "declaration": true, - "module": "commonjs", - "moduleResolution": "node", + "module": "Node16", + "moduleResolution": "Node16", "sourceMap": true, "noImplicitAny": false, "outDir": "js" diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index 22d8ee0e6..9c79d8deb 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -16,7 +16,7 @@ "@gulp-sourcemaps/map-sources@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@gulp-sourcemaps/map-sources/-/map-sources-1.0.0.tgz#890ae7c5d8c877f6d384860215ace9d7ec945bda" - integrity sha1-iQrnxdjId/bThIYCFazp1+yUW9o= + integrity sha512-o/EatdaGt8+x2qpb0vFLC/2Gug/xYPRXb6a+ET1wGYKozKN3krDWC/zZFZAtrzxJHuDL12mwdfEFKcKMNvc55A== dependencies: normalize-path "^2.0.1" through2 "^2.0.3" @@ -26,38 +26,40 @@ resolved "https://registry.yarnpkg.com/@gulpjs/messages/-/messages-1.1.0.tgz#94e70978ff676ade541faab459c37ae0c7095e5a" integrity sha512-Ys9sazDatyTgZVb4xPlDufLweJ/Os2uHWOv+Caxvy2O85JcnT4M3vc73bi8pdLWlv3fdWQz3pdI9tVwo8rQQSg== -"@nodelib/fs.scandir@2.1.3": - version "2.1.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" - integrity sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw== +"@gulpjs/to-absolute-glob@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@gulpjs/to-absolute-glob/-/to-absolute-glob-4.0.0.tgz#1fc2460d3953e1d9b9f2dfdb4bcc99da4710c021" + integrity sha512-kjotm7XJrJ6v+7knhPaRgaT6q8F8K2jiafwYdNHLzmV0uGLuZY43FK6smNSHUPrhq5kX2slCUy+RGG/xGqmIKA== + dependencies: + is-negated-glob "^1.0.0" + +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: - "@nodelib/fs.stat" "2.0.3" + "@nodelib/fs.stat" "2.0.5" run-parallel "^1.1.9" -"@nodelib/fs.stat@2.0.3", "@nodelib/fs.stat@^2.0.2": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz#34dc5f4cabbc720f4e60f75a747e7ecd6c175bd3" - integrity sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA== +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== "@nodelib/fs.walk@^1.2.3": - version "1.2.4" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz#011b9202a70a6366e436ca5c065844528ab04976" - integrity sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ== + version "1.2.8" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== dependencies: - "@nodelib/fs.scandir" "2.1.3" + "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@types/camel-case@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@types/camel-case/-/camel-case-1.2.1.tgz#c7ba835a1dca5ef82b40e24d7a7a807bb9fc0e4c" - integrity sha1-x7qDWh3KXvgrQOJNenqAe7n8Dkw= - dependencies: - camel-case "*" - "@types/node@^18.7.14": - version "18.16.3" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.16.3.tgz#6bda7819aae6ea0b386ebc5b24bdf602f1b42b01" - integrity sha512-OPs5WnnT1xkCBiuQrZA4+YAV4HEJejmHneyraIaxsbev5yCEr6KMwINNFP9wQeFIw8FWcoTqF3vQsa5CDaI+8Q== + version "18.19.43" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.43.tgz#fe01bb599b60bb3279c26d0fdb751d2f3e299ae0" + integrity sha512-Mw/YlgXnyJdEwLoFv2dpuJaDFriX+Pc+0qOBJ57jC1H6cDxIj2xc5yUrdtArDVG0m+KV6622a4p2tenEqB3C/g== + dependencies: + undici-types "~5.26.4" acorn@^6.4.1: version "6.4.2" @@ -87,14 +89,14 @@ ansi-colors@^3.0.5: ansi-gray@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ansi-gray/-/ansi-gray-0.1.1.tgz#2962cf54ec9792c48510a3deb524436861ef7251" - integrity sha1-KWLPVOyXksSFEKPetSRDaGHvclE= + integrity sha512-HrgGIZUl8h2EHuZaU9hTR/cU5nhKxpVE1V6kdGsQ8e4zirElJ5fvtfc8N7Q1oq1aatO275i8pUFUCpNWCAnVWw== dependencies: ansi-wrap "0.1.0" ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= + integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== ansi-regex@^5.0.1: version "5.0.1" @@ -104,7 +106,7 @@ ansi-regex@^5.0.1: ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= + integrity sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA== ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.3.0" @@ -116,187 +118,126 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: ansi-wrap@0.1.0, ansi-wrap@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf" - integrity sha1-qCJQ3bABXponyoLoLqYDu/pF768= + integrity sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw== -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== +anymatch@^3.1.3, anymatch@~3.1.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" + normalize-path "^3.0.0" + picomatch "^2.0.4" append-buffer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/append-buffer/-/append-buffer-1.0.2.tgz#d8220cf466081525efea50614f3de6514dfa58f1" - integrity sha1-2CIM9GYIFSXv6lBhTz3mUU36WPE= + integrity sha512-WLbYiXzD3y/ATLZFufV/rZvWdZOs+Z/+5v1rBZ463Jn398pa6kcde27cvozYnBoxXblGZTFfoPpsaEw0orU5BA== dependencies: buffer-equal "^1.0.0" -archy@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" - integrity sha1-+cjBN1fMHde8N5rHeyxipcKGjEA= - arr-diff@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= - -arr-filter@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/arr-filter/-/arr-filter-1.1.2.tgz#43fdddd091e8ef11aa4c45d9cdc18e2dff1711ee" - integrity sha1-Q/3d0JHo7xGqTEXZzcGOLf8XEe4= - dependencies: - make-iterator "^1.0.0" - -arr-flatten@^1.0.1, arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-map@^2.0.0, arr-map@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/arr-map/-/arr-map-2.0.2.tgz#3a77345ffc1cf35e2a91825601f9e58f2e24cac4" - integrity sha1-Onc0X/wc814qkYJWAfnljy4kysQ= - dependencies: - make-iterator "^1.0.0" + integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== arr-union@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= + integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== array-differ@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" - integrity sha1-7/UuN1gknTO+QCuLuOVkuytdQDE= + integrity sha512-LeZY+DZDRnvP7eMuQ6LHfCzUGxAAIViUBliK24P3hWXL6y4SortgR6Nim6xrkfSLlmH0+k+9NYNwVC2s53ZrYQ== -array-each@^1.0.0, array-each@^1.0.1: +array-each@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/array-each/-/array-each-1.0.1.tgz#a794af0c05ab1752846ee753a1f211a05ba0c44f" - integrity sha1-p5SvDAWrF1KEbudTofIRoFugxE8= - -array-initial@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/array-initial/-/array-initial-1.1.0.tgz#2fa74b26739371c3947bd7a7adc73be334b3d795" - integrity sha1-L6dLJnOTccOUe9enrcc74zSz15U= - dependencies: - array-slice "^1.0.0" - is-number "^4.0.0" - -array-last@^1.1.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/array-last/-/array-last-1.3.0.tgz#7aa77073fec565ddab2493f5f88185f404a9d336" - integrity sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg== - dependencies: - is-number "^4.0.0" + integrity sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA== array-slice@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-1.1.0.tgz#e368ea15f89bc7069f7ffb89aec3a6c7d4ac22d4" integrity sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w== -array-sort@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-sort/-/array-sort-1.0.0.tgz#e4c05356453f56f53512a7d1d6123f2c54c0a88a" - integrity sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg== - dependencies: - default-compare "^1.0.0" - get-value "^2.0.6" - kind-of "^5.0.2" - array-uniq@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= - -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= + integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q== assign-symbols@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= + integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== -async-done@^1.2.0, async-done@^1.2.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/async-done/-/async-done-1.3.2.tgz#5e15aa729962a4b07414f528a88cdf18e0b290a2" - integrity sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw== +async-done@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/async-done/-/async-done-2.0.0.tgz#f1ec5df738c6383a52b0a30d0902fd897329c15a" + integrity sha512-j0s3bzYq9yKIVLKGE/tWlCpa3PfFLcrDZLTSVdnnCTGagXuXBJO4SsY9Xdk/fQBirCkH4evW5xOeJXqlAQFdsw== dependencies: - end-of-stream "^1.1.0" - once "^1.3.2" - process-nextick-args "^2.0.0" - stream-exhaust "^1.0.1" - -async-each@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" - integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== + end-of-stream "^1.4.4" + once "^1.4.0" + stream-exhaust "^1.0.2" -async-settle@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/async-settle/-/async-settle-1.0.0.tgz#1d0a914bb02575bec8a8f3a74e5080f72b2c0c6b" - integrity sha1-HQqRS7Aldb7IqPOnTlCA9yssDGs= +async-settle@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/async-settle/-/async-settle-2.0.0.tgz#c695ad14e070f6a755d019d32d6eb38029020287" + integrity sha512-Obu/KE8FurfQRN6ODdHN9LuXqwC+JFIM9NRyZqJJ4ZfLJmIYN9Rg0/kb+wF70VV5+fJusTMQlJ1t5rF7J/ETdg== dependencies: - async-done "^1.2.2" + async-done "^2.0.0" atob@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== -bach@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/bach/-/bach-1.2.0.tgz#4b3ce96bf27134f79a1b414a51c14e34c3bd9880" - integrity sha1-Szzpa/JxNPeaG0FKUcFONMO9mIA= - dependencies: - arr-filter "^1.1.1" - arr-flatten "^1.0.1" - arr-map "^2.0.0" - array-each "^1.0.0" - array-initial "^1.0.0" - array-last "^1.1.1" - async-done "^1.2.2" - async-settle "^1.0.0" - now-and-later "^2.0.0" +b4a@^1.6.4: + version "1.6.6" + resolved "https://registry.yarnpkg.com/b4a/-/b4a-1.6.6.tgz#a4cc349a3851987c3c4ac2d7785c18744f6da9ba" + integrity sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg== + +bach@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/bach/-/bach-2.0.1.tgz#45a3a3cbf7dbba3132087185c60357482b988972" + integrity sha512-A7bvGMGiTOxGMpNupYl9HQTf0FFDNF4VCmks4PJpFyN1AX2pdKuxuwdvUz2Hu388wcgp+OvGFNsumBfFNkR7eg== + dependencies: + async-done "^2.0.0" + async-settle "^2.0.0" + now-and-later "^3.0.0" balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" +bare-events@^2.2.0: + version "2.4.2" + resolved "https://registry.yarnpkg.com/bare-events/-/bare-events-2.4.2.tgz#3140cca7a0e11d49b3edc5041ab560659fd8e1f8" + integrity sha512-qMKFd2qG/36aA4GwvKq8MxnPgCQAmBWmSyLWsJcbn8v03wvIPQ/hG1Ms8bPzndZxMDoHpxez5VOS+gC9Yi24/Q== + +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== beeper@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/beeper/-/beeper-1.1.1.tgz#e6d5ea8c5dad001304a70b22638447f69cb2f809" - integrity sha1-5tXqjF2tABMEpwsiY4RH9pyy+Ak= + integrity sha512-3vqtKL1N45I5dV0RdssXZG7X6pCqQrWPNOlBPZPrd+QkE2HEhR57Z04m0KtpbsZH73j+a3F8UD1TQnn+ExTvIA== -binary-extensions@^1.0.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" - integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== +binary-extensions@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" + integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== -bindings@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" - integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== +bl@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/bl/-/bl-5.1.0.tgz#183715f678c7188ecef9fe475d90209400624273" + integrity sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ== dependencies: - file-uri-to-path "1.0.0" + buffer "^6.0.3" + inherits "^2.0.4" + readable-stream "^3.4.0" brace-expansion@^1.1.7: version "1.1.11" @@ -306,79 +247,41 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" -braces@^2.3.1, braces@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - -braces@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== +braces@^3.0.3, braces@~3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== dependencies: - fill-range "^7.0.1" + fill-range "^7.1.1" buffer-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.0.tgz#59616b498304d556abd466966b22eeda3eca5fbe" - integrity sha1-WWFrSYME1Var1GaWayLu2j7KX74= - -buffer-from@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" - integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== - -cache-base@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" + resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.1.tgz#2f7651be5b1b3f057fcd6e7ee16cf34767077d90" + integrity sha512-QoV3ptgEaQpvVwbXdSO39iqPQTCxSF7A5U99AxbHYqUdCizL/lH2Z0A2y6nbZucxMEOtNyZfG2s6gsVugGpKkg== -camel-case@*: - version "4.1.1" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.1.tgz#1fc41c854f00e2f7d0139dfeba1542d6896fe547" - integrity sha512-7fa2WcG4fYFkclIvEmxBbTvmibwF2/agfEBc6q3lOpVu0A13ltLsA+Hr/8Hp6kp5f+G7hKi6t8lys6XxP+1K6Q== +buffer@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== dependencies: - pascal-case "^3.1.1" - tslib "^1.10.0" + base64-js "^1.3.1" + ieee754 "^1.2.1" -camel-case@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" - integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== +call-bind@^1.0.5: + version "1.0.7" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" + integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w== dependencies: - pascal-case "^3.1.2" - tslib "^2.0.3" - -camelcase@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" - integrity sha1-MvxLn82vhF/N9+c7uXysImHwqwo= + es-define-property "^1.0.0" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + set-function-length "^1.2.1" chalk@^1.0.0: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= + integrity sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A== dependencies: ansi-styles "^2.2.1" escape-string-regexp "^1.0.2" @@ -394,34 +297,25 @@ chalk@^4.1.2: ansi-styles "^4.1.0" supports-color "^7.1.0" -chokidar@^2.0.0: - version "2.1.8" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" - integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.1" - braces "^2.3.2" - glob-parent "^3.1.0" - inherits "^2.0.3" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - normalize-path "^3.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.2.1" - upath "^1.1.1" - optionalDependencies: - fsevents "^1.2.7" +change-case@5.4.4: + version "5.4.4" + resolved "https://registry.yarnpkg.com/change-case/-/change-case-5.4.4.tgz#0d52b507d8fb8f204343432381d1a6d7bff97a02" + integrity sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w== -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" +chokidar@^3.5.3: + version "3.6.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" + integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" clean-stack@^4.0.0: version "4.2.0" @@ -430,15 +324,6 @@ clean-stack@^4.0.0: dependencies: escape-string-regexp "5.0.0" -cliui@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" - integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - wrap-ansi "^2.0.0" - cliui@^7.0.2: version "7.0.4" resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" @@ -451,27 +336,27 @@ cliui@^7.0.2: clone-buffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" - integrity sha1-4+JbIHrE5wGvch4staFnksrD3Fg= + integrity sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g== clone-stats@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1" - integrity sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE= + integrity sha512-dhUqc57gSMCo6TX85FLfe51eC/s+Im2MLkAgJwfaRRexR2tA4dd3eLEW4L6efzHc2iNorrRRXITifnDLlRrhaA== clone-stats@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680" - integrity sha1-s3gt/4u1R04Yuba/D9/ngvh3doA= + integrity sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag== clone@^1.0.0: version "1.0.4" resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" - integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= + integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== -clone@^2.1.1: +clone@^2.1.1, clone@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" - integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= + integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== cloneable-readable@^1.0.0: version "1.1.3" @@ -482,28 +367,6 @@ cloneable-readable@^1.0.0: process-nextick-args "^2.0.0" readable-stream "^2.3.5" -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= - -collection-map@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-map/-/collection-map-1.0.0.tgz#aea0f06f8d26c780c2b75494385544b2255af18c" - integrity sha1-rqDwb40mx4DCt1SUOFVEsiVa8Yw= - dependencies: - arr-map "^2.0.2" - for-own "^1.0.0" - make-iterator "^1.0.0" - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - color-convert@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" @@ -521,52 +384,20 @@ color-support@^1.1.3: resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== -component-emitter@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" - integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== - concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== -concat-stream@^1.6.0: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -convert-source-map@^1.0.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" - integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== - dependencies: - safe-buffer "~5.1.1" - -convert-source-map@^1.5.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" - integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== - dependencies: - safe-buffer "~5.1.1" - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= +convert-source-map@^1.0.0, convert-source-map@^1.5.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== -copy-props@^2.0.1: - version "2.0.5" - resolved "https://registry.yarnpkg.com/copy-props/-/copy-props-2.0.5.tgz#03cf9ae328d4ebb36f8f1d804448a6af9ee3f2d2" - integrity sha512-XBlx8HSqrT0ObQwmSzM7WE5k8FxTV75h1DX1Z3n6NhQ/UYYAvInWYmG06vFt7hQZArE2fuO62aihiWIVQwh1sw== - dependencies: - each-props "^1.3.2" - is-plain-object "^5.0.0" +convert-source-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" + integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== copy-props@^4.0.0: version "4.0.0" @@ -577,9 +408,9 @@ copy-props@^4.0.0: is-plain-object "^5.0.0" core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== css@^3.0.0: version "3.0.0" @@ -590,18 +421,18 @@ css@^3.0.0: source-map "^0.6.1" source-map-resolve "^0.6.0" -d@1, d@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" - integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA== +d@1, d@^1.0.1, d@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/d/-/d-1.0.2.tgz#2aefd554b81981e7dccf72d6842ae725cb17e5de" + integrity sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw== dependencies: - es5-ext "^0.10.50" - type "^1.0.1" + es5-ext "^0.10.64" + type "^2.7.2" dateformat@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.2.0.tgz#4065e2013cf9fb916ddfd82efb506ad4c6769062" - integrity sha1-QGXiATz5+5Ft39gu+1Bq1MZ2kGI= + integrity sha512-GODcnWq3YGoTnygPfi02ygEiRxqUxpJwuRHjdhJYuxpcZmDq4rjBiXYmbCCzStxo176ixfLT6i4NPwQooRySnw== debug-fabulous@^1.0.0: version "1.1.0" @@ -613,71 +444,36 @@ debug-fabulous@^1.0.0: object-assign "4.X" debug@3.X: - version "3.2.6" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" - integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== dependencies: ms "^2.1.1" -debug@^2.2.0, debug@^2.3.3: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -decamelize@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - decode-uri-component@^0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== -default-compare@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/default-compare/-/default-compare-1.0.0.tgz#cb61131844ad84d84788fb68fd01681ca7781a2f" - integrity sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ== - dependencies: - kind-of "^5.0.2" - -default-resolution@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/default-resolution/-/default-resolution-2.0.0.tgz#bcb82baa72ad79b426a76732f1a81ad6df26d684" - integrity sha1-vLgrqnKtebQmp2cy8aga1t8m1oQ= - -define-properties@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= +define-data-property@^1.0.1, define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== dependencies: - is-descriptor "^1.0.0" + es-define-property "^1.0.0" + es-errors "^1.3.0" + gopd "^1.0.1" -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== +define-properties@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" + integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" + define-data-property "^1.0.1" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" -del@^7.0.0: +del@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/del/-/del-7.1.0.tgz#0de0044d556b649ff05387f1fa7c885e155fd1b6" integrity sha512-v2KyNk7efxhlyHpjEvfyxaAihKKK0nWCuf6ZtqZcFFpQRG0bJ12Qsr0RpvsICMjAAZ8DOVCxrlqpxISlMHC4Kg== @@ -694,12 +490,12 @@ del@^7.0.0: detect-file@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" - integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc= + integrity sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q== detect-newline@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" - integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= + integrity sha512-CwffZFvlJffUg9zZA0uqrjQayUTC8ob94pnr5sFwaVv3IOmkfUHcWH+jXaQK3askE51Cqe8/9Ql/0uXNwqZ8Zg== dir-glob@^3.0.1: version "3.0.1" @@ -711,7 +507,7 @@ dir-glob@^3.0.1: duplexer2@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" - integrity sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds= + integrity sha512-+AWBwjGadtksxjOQSFDhPNQbed7icNXApT4+2BNpsXzcCBiInq2H9XW0O8sfHFaPmnQRs7cg/P0fAr2IWQSW0g== dependencies: readable-stream "~1.1.9" @@ -725,14 +521,6 @@ duplexify@^3.6.0: readable-stream "^2.0.0" stream-shift "^1.0.0" -each-props@^1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/each-props/-/each-props-1.3.2.tgz#ea45a414d16dd5cfa419b1a81720d5ca06892333" - integrity sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA== - dependencies: - is-plain-object "^2.0.1" - object.defaults "^1.1.0" - each-props@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/each-props/-/each-props-3.0.0.tgz#a88fb17634a4828307610ec68269fba2f7280cd8" @@ -746,48 +534,53 @@ emoji-regex@^8.0.0: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== -end-of-stream@^1.0.0, end-of-stream@^1.1.0: +end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.4: version "1.4.4" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== dependencies: once "^1.4.0" -error-ex@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== +es-define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" + integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ== dependencies: - is-arrayish "^0.2.1" + get-intrinsic "^1.2.4" + +es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== -es5-ext@^0.10.35, es5-ext@^0.10.45, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@^0.10.62, es5-ext@~0.10.14, es5-ext@~0.10.2, es5-ext@~0.10.46: - version "0.10.63" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.63.tgz#9c222a63b6a332ac80b1e373b426af723b895bd6" - integrity sha512-hUCZd2Byj/mNKjfP9jXrdVZ62B8KuA/VoK7X8nUh5qT+AxDmcbvZz041oDVZdbIN1qW6XY9VDNwzkvKnZvK2TQ== +es5-ext@^0.10.35, es5-ext@^0.10.46, es5-ext@^0.10.62, es5-ext@^0.10.64, es5-ext@~0.10.14, es5-ext@~0.10.2: + version "0.10.64" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.64.tgz#12e4ffb48f1ba2ea777f1fcdd1918ef73ea21714" + integrity sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg== dependencies: es6-iterator "^2.0.3" es6-symbol "^3.1.3" esniff "^2.0.1" next-tick "^1.1.0" -es6-iterator@^2.0.1, es6-iterator@^2.0.3: +es6-iterator@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" - integrity sha1-p96IkUGgWpSwhUQDstCg+/qY87c= + integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g== dependencies: d "1" es5-ext "^0.10.35" es6-symbol "^3.1.1" es6-symbol@^3.1.1, es6-symbol@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" - integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== + version "3.1.4" + resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.4.tgz#f4e7d28013770b4208ecbf3e0bf14d3bcb557b8c" + integrity sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg== dependencies: - d "^1.0.1" - ext "^1.1.2" + d "^1.0.2" + ext "^1.7.0" -es6-weak-map@^2.0.1, es6-weak-map@^2.0.2: +es6-weak-map@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.3.tgz#b6da1f16cc2cc0d9be43e6bdbfc5e7dfcdf31d53" integrity sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA== @@ -810,7 +603,7 @@ escape-string-regexp@5.0.0: escape-string-regexp@^1.0.2: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== esniff@^2.0.1: version "2.0.1" @@ -825,49 +618,29 @@ esniff@^2.0.1: event-emitter@^0.3.5: version "0.3.5" resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" - integrity sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk= + integrity sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA== dependencies: d "1" es5-ext "~0.10.14" -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - expand-tilde@^2.0.0, expand-tilde@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" - integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI= + integrity sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw== dependencies: homedir-polyfill "^1.0.1" -ext@^1.1.2: - version "1.4.0" - resolved "https://registry.yarnpkg.com/ext/-/ext-1.4.0.tgz#89ae7a07158f79d35517882904324077e4379244" - integrity sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A== - dependencies: - type "^2.0.0" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= +ext@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f" + integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw== dependencies: - is-extendable "^0.1.0" + type "^2.7.2" -extend-shallow@^3.0.0, extend-shallow@^3.0.2: +extend-shallow@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= + integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== dependencies: assign-symbols "^1.0.0" is-extendable "^1.0.1" @@ -877,21 +650,7 @@ extend@^3.0.0, extend@^3.0.2: resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -fancy-log@^1.1.0, fancy-log@^1.3.2: +fancy-log@^1.1.0: version "1.3.3" resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.3.tgz#dbc19154f558690150a23953a0adbd035be45fc7" integrity sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw== @@ -901,10 +660,15 @@ fancy-log@^1.1.0, fancy-log@^1.3.2: parse-node-version "^1.0.0" time-stamp "^1.0.0" -fast-glob@^3.2.11: - version "3.2.11" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.11.tgz#a1172ad95ceb8a16e20caa5c5e56480e5129c1d9" - integrity sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew== +fast-fifo@^1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/fast-fifo/-/fast-fifo-1.3.2.tgz#286e31de96eb96d38a97899815740ba2a4f3640c" + integrity sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ== + +fast-glob@^3.3.0: + version "3.3.2" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" + integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== dependencies: "@nodelib/fs.stat" "^2.0.2" "@nodelib/fs.walk" "^1.2.3" @@ -912,63 +676,32 @@ fast-glob@^3.2.11: merge2 "^1.3.0" micromatch "^4.0.4" -fastq@^1.6.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.7.0.tgz#fcd79a08c5bd7ec5b55cd3f5c4720db551929801" - integrity sha512-YOadQRnHd5q6PogvAR/x62BGituF2ufiEA6s8aavQANw5YKHERI4AREboX6KotzP8oX2klxYF2wcV/7bn1clfQ== +fast-levenshtein@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-3.0.0.tgz#37b899ae47e1090e40e3fd2318e4d5f0142ca912" + integrity sha512-hKKNajm46uNmTlhHSyZkmToAc56uZJwYq7yrciZjqOxnlfQwERDQJmHPUp7m1m9wx8vgOe8IaCKZ5Kv2k1DdCQ== dependencies: - reusify "^1.0.4" + fastest-levenshtein "^1.0.7" -file-uri-to-path@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" - integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== +fastest-levenshtein@^1.0.7: + version "1.0.16" + resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz#210e61b6ff181de91ea9b3d1b84fdedd47e034e5" + integrity sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg== -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= +fastq@^1.13.0, fastq@^1.6.0: + version "1.17.1" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47" + integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w== dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" + reusify "^1.0.4" -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== +fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== dependencies: to-regex-range "^5.0.1" -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - -findup-sync@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc" - integrity sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw= - dependencies: - detect-file "^1.0.0" - is-glob "^3.1.0" - micromatch "^3.0.4" - resolve-dir "^1.0.1" - -findup-sync@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1" - integrity sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg== - dependencies: - detect-file "^1.0.0" - is-glob "^4.0.0" - micromatch "^3.0.4" - resolve-dir "^1.0.1" - findup-sync@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-5.0.0.tgz#54380ad965a7edca00cc8f63113559aadc541bd2" @@ -979,17 +712,6 @@ findup-sync@^5.0.0: micromatch "^4.0.4" resolve-dir "^1.0.1" -fined@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/fined/-/fined-1.2.0.tgz#d00beccf1aa2b475d16d423b0238b713a2c4a37b" - integrity sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng== - dependencies: - expand-tilde "^2.0.2" - is-plain-object "^2.0.3" - object.defaults "^1.1.0" - object.pick "^1.2.0" - parse-filepath "^1.0.1" - fined@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/fined/-/fined-2.0.0.tgz#6846563ed96879ce6de6c85c715c42250f8d8089" @@ -1001,11 +723,6 @@ fined@^2.0.0: object.pick "^1.3.0" parse-filepath "^1.0.2" -flagged-respawn@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-1.0.1.tgz#e7de6f1279ddd9ca9aac8a5971d618606b3aab41" - integrity sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q== - flagged-respawn@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-2.0.0.tgz#abf39719dcfe1ac06c86c9466081c541c682987b" @@ -1019,90 +736,91 @@ flush-write-stream@^1.0.2: inherits "^2.0.3" readable-stream "^2.3.6" -for-in@^1.0.1, for-in@^1.0.2: +for-in@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= + integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== for-own@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" - integrity sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs= + integrity sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg== dependencies: for-in "^1.0.1" -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= - dependencies: - map-cache "^0.2.2" - fs-mkdirp-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz#0b7815fc3201c6a69e14db98ce098c16935259eb" - integrity sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes= + integrity sha512-+vSd9frUnapVC2RZYfL3FCB2p3g4TBhaUmrsWlSudsGdnxIuUvBB2QM1VZeBtc49QFwrp+wQLrDs3+xxDgI5gQ== dependencies: graceful-fs "^4.1.11" through2 "^2.0.3" +fs-mkdirp-stream@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-2.0.1.tgz#1e82575c4023929ad35cf69269f84f1a8c973aa7" + integrity sha512-UTOY+59K6IA94tec8Wjqm0FSh5OVudGNB0NL/P6fB3HiE3bYOY3VYBGijsnOHNkQSwC1FKkU77pmq7xp9CskLw== + dependencies: + graceful-fs "^4.2.8" + streamx "^2.12.0" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -fsevents@^1.2.7: - version "1.2.12" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.12.tgz#db7e0d8ec3b0b45724fd4d83d43554a8f1f0de5c" - integrity sha512-Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q== - dependencies: - bindings "^1.5.0" - nan "^2.12.1" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== +fsevents@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== function-bind@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== -get-caller-file@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" - integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== - get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= +get-intrinsic@^1.1.3, get-intrinsic@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" + integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== + dependencies: + es-errors "^1.3.0" + function-bind "^1.1.2" + has-proto "^1.0.1" + has-symbols "^1.0.3" + hasown "^2.0.0" glob-parent@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= + integrity sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA== dependencies: is-glob "^3.1.0" path-dirname "^1.0.0" -glob-parent@^5.1.2: +glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" +glob-parent@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== + dependencies: + is-glob "^4.0.3" + glob-stream@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-6.1.0.tgz#7045c99413b3eb94888d83ab46d0b404cc7bdde4" - integrity sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ= + integrity sha512-uMbLGAP3S2aDOHUDfdoYcdIePUCfysbAd0IAoWVZbeGU/oNQ8asHVSshLDJUPWxfzj8zsCG7/XeHPHTtow0nsw== dependencies: extend "^3.0.0" glob "^7.1.1" @@ -1115,27 +833,37 @@ glob-stream@^6.1.0: to-absolute-glob "^2.0.0" unique-stream "^2.0.2" -glob-watcher@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-5.0.3.tgz#88a8abf1c4d131eb93928994bc4a593c2e5dd626" - integrity sha512-8tWsULNEPHKQ2MR4zXuzSmqbdyV5PtwwCaWSGQ1WwHsJ07ilNeN1JB8ntxhckbnpSHaf9dXFUHzIWvm1I13dsg== +glob-stream@^8.0.0: + version "8.0.2" + resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-8.0.2.tgz#09e5818e41c16dd85274d72c7a7158d307426313" + integrity sha512-R8z6eTB55t3QeZMmU1C+Gv+t5UnNRkA55c5yo67fAVfxODxieTwsjNG7utxS/73NdP1NbDgCrhVEg2h00y4fFw== dependencies: - anymatch "^2.0.0" - async-done "^1.2.0" - chokidar "^2.0.0" + "@gulpjs/to-absolute-glob" "^4.0.0" + anymatch "^3.1.3" + fastq "^1.13.0" + glob-parent "^6.0.2" + is-glob "^4.0.3" is-negated-glob "^1.0.0" - just-debounce "^1.0.0" - object.defaults "^1.1.0" + normalize-path "^3.0.0" + streamx "^2.12.5" + +glob-watcher@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-6.0.0.tgz#8565341978a92233fb3881b8857b4d1e9c6bf080" + integrity sha512-wGM28Ehmcnk2NqRORXFOTOR064L4imSw3EeOqU5bIwUf62eXGwg89WivH6VMahL8zlQHeodzvHpXplrqzrz3Nw== + dependencies: + async-done "^2.0.0" + chokidar "^3.5.3" glob@^7.1.1, glob@^7.1.3: - version "7.1.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" - minimatch "^3.0.4" + minimatch "^3.1.1" once "^1.3.0" path-is-absolute "^1.0.0" @@ -1151,7 +879,7 @@ global-modules@^1.0.0: global-prefix@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" - integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4= + integrity sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg== dependencies: expand-tilde "^2.0.2" homedir-polyfill "^1.0.1" @@ -1160,13 +888,13 @@ global-prefix@^1.0.1: which "^1.2.14" globby@^13.1.2: - version "13.1.2" - resolved "https://registry.yarnpkg.com/globby/-/globby-13.1.2.tgz#29047105582427ab6eca4f905200667b056da515" - integrity sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ== + version "13.2.2" + resolved "https://registry.yarnpkg.com/globby/-/globby-13.2.2.tgz#63b90b1bf68619c2135475cbd4e71e66aa090592" + integrity sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w== dependencies: dir-glob "^3.0.1" - fast-glob "^3.2.11" - ignore "^5.2.0" + fast-glob "^3.3.0" + ignore "^5.2.4" merge2 "^1.4.1" slash "^4.0.0" @@ -1184,34 +912,17 @@ glogg@^2.2.0: dependencies: sparkles "^2.1.0" -graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.10: - version "4.2.10" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" - integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== - -gulp-cli@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/gulp-cli/-/gulp-cli-2.2.0.tgz#5533126eeb7fe415a7e3e84a297d334d5cf70ebc" - integrity sha512-rGs3bVYHdyJpLqR0TUBnlcZ1O5O++Zs4bA0ajm+zr3WFCfiSLjGwoCBqFs18wzN+ZxahT9DkOK5nDf26iDsWjA== +gopd@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" + integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== dependencies: - ansi-colors "^1.0.1" - archy "^1.0.0" - array-sort "^1.0.0" - color-support "^1.1.3" - concat-stream "^1.6.0" - copy-props "^2.0.1" - fancy-log "^1.3.2" - gulplog "^1.0.0" - interpret "^1.1.0" - isobject "^3.0.1" - liftoff "^3.1.0" - matchdep "^2.0.0" - mute-stdout "^1.0.0" - pretty-hrtime "^1.0.0" - replace-homedir "^1.0.0" - semver-greatest-satisfied-range "^1.1.0" - v8flags "^3.0.1" - yargs "^7.1.0" + get-intrinsic "^1.1.3" + +graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.6, graceful-fs@^4.2.10, graceful-fs@^4.2.11, graceful-fs@^4.2.8: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== gulp-cli@^3.0.0: version "3.0.0" @@ -1263,7 +974,7 @@ gulp-typescript@^5.0.1: gulp-util@^3.0.8: version "3.0.8" resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.8.tgz#0054e1e744502e27c04c187c3ecc505dd54bbb4f" - integrity sha1-AFTh50RQLifATBh8PsxQXdVLu08= + integrity sha512-q5oWPc12lwSFS9h/4VIjG+1NuNDlJ48ywV2JKItY4Ycc/n1fXJeYPVQsfu5ZrhQi7FGSDBalwUCLar/GyHXKGw== dependencies: array-differ "^1.0.0" array-uniq "^1.0.2" @@ -1284,20 +995,20 @@ gulp-util@^3.0.8: through2 "^2.0.0" vinyl "^0.5.0" -gulp@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/gulp/-/gulp-4.0.2.tgz#543651070fd0f6ab0a0650c6a3e6ff5a7cb09caa" - integrity sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA== +gulp@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/gulp/-/gulp-5.0.0.tgz#78f4b8ac48a0bf61b354d39e5be844de2c5cc3f3" + integrity sha512-S8Z8066SSileaYw1S2N1I64IUc/myI2bqe2ihOBzO6+nKpvNSg7ZcWJt/AwF8LC/NVN+/QZ560Cb/5OPsyhkhg== dependencies: - glob-watcher "^5.0.3" - gulp-cli "^2.2.0" - undertaker "^1.2.1" - vinyl-fs "^3.0.0" + glob-watcher "^6.0.0" + gulp-cli "^3.0.0" + undertaker "^2.0.0" + vinyl-fs "^4.0.0" gulplog@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5" - integrity sha1-4oxNRdBey77YGDY86PnFkmIp/+U= + integrity sha512-hm6N8nrm3Y08jXie48jsC55eCZz9mnb4OirAStEk2deqeyhXU3C1otDVh+ccttMuc1sBi6RX6ZJ720hs9RCvgw== dependencies: glogg "^1.0.0" @@ -1311,7 +1022,7 @@ gulplog@^2.2.0: has-ansi@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= + integrity sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg== dependencies: ansi-regex "^2.0.0" @@ -1323,47 +1034,28 @@ has-flag@^4.0.0: has-gulplog@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce" - integrity sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4= + integrity sha512-+F4GzLjwHNNDEAJW2DC1xXfEoPkRDmUdJ7CBYw4MpqtDwOnqdImJl7GWlpqx+Wko6//J8uKTnIe4wZSv7yCqmw== dependencies: sparkles "^1.0.0" -has-symbols@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" - integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== - -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" + es-define-property "^1.0.0" -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= +has-proto@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd" + integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" +has-symbols@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== -hasown@^2.0.0: +hasown@^2.0.0, hasown@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== @@ -1377,15 +1069,22 @@ homedir-polyfill@^1.0.1: dependencies: parse-passwd "^1.0.0" -hosted-git-info@^2.1.4: - version "2.8.9" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" - integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== +iconv-lite@^0.6.3: + version "0.6.3" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" + integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== + dependencies: + safer-buffer ">= 2.1.2 < 3.0.0" + +ieee754@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== -ignore@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a" - integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== +ignore@^5.2.4: + version "5.3.1" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" + integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== indent-string@^5.0.0: version "5.0.0" @@ -1395,7 +1094,7 @@ indent-string@^5.0.0: inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" wrappy "1" @@ -1408,28 +1107,18 @@ inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= + integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== ini@^1.3.4: - version "1.3.7" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.7.tgz#a09363e1911972ea16d7a8851005d84cf09a9a84" - integrity sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ== - -interpret@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.2.0.tgz#d5061a6224be58e8083985f5014d844359576296" - integrity sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw== + version "1.3.8" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== interpret@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/interpret/-/interpret-3.1.1.tgz#5be0ceed67ca79c6c4bc5cf0d7ee843dcea110c4" integrity sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ== -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= - is-absolute@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" @@ -1438,31 +1127,12 @@ is-absolute@^1.0.0: is-relative "^1.0.0" is-windows "^1.0.1" -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== - dependencies: - kind-of "^6.0.0" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= - -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== dependencies: - binary-extensions "^1.0.0" + binary-extensions "^2.0.0" is-buffer@^1.1.5: version "1.1.6" @@ -1470,67 +1140,23 @@ is-buffer@^1.1.5: integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== is-core-module@^2.13.0: - version "2.13.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" - integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== + version "2.15.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.0.tgz#71c72ec5442ace7e76b306e9d48db361f22699ea" + integrity sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA== dependencies: - hasown "^2.0.0" + hasown "^2.0.2" -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== - dependencies: - kind-of "^6.0.0" - -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" + is-plain-object "^2.0.4" is-extglob@^2.1.0, is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= - dependencies: - number-is-nan "^1.0.0" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== is-fullwidth-code-point@^3.0.0: version "3.0.0" @@ -1540,11 +1166,11 @@ is-fullwidth-code-point@^3.0.0: is-glob@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= + integrity sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw== dependencies: is-extglob "^2.1.0" -is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3: +is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== @@ -1554,19 +1180,7 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3: is-negated-glob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" - integrity sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI= - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= - dependencies: - kind-of "^3.0.2" - -is-number@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" - integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== + integrity sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug== is-number@^7.0.0: version "7.0.0" @@ -1583,7 +1197,7 @@ is-path-inside@^4.0.0: resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-4.0.0.tgz#805aeb62c47c1b12fc3fd13bfb3ed1e7430071db" integrity sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA== -is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: +is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== @@ -1595,10 +1209,10 @@ is-plain-object@^5.0.0: resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== -is-promise@^2.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" - integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= +is-promise@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" + integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ== is-relative@^1.0.0: version "1.0.0" @@ -1614,17 +1228,17 @@ is-unc-path@^1.0.0: dependencies: unc-path-regex "^0.1.2" -is-utf8@^0.2.0, is-utf8@^0.2.1: +is-utf8@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= + integrity sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q== is-valid-glob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-1.0.0.tgz#29bf3eff701be2d4d315dbacc39bc39fe8f601aa" - integrity sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao= + integrity sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA== -is-windows@^1.0.1, is-windows@^1.0.2: +is-windows@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== @@ -1632,106 +1246,51 @@ is-windows@^1.0.1, is-windows@^1.0.2: isarray@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= + integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== -isarray@1.0.0, isarray@~1.0.0: +isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= - dependencies: - isarray "1.0.0" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== isobject@^3.0.0, isobject@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= + integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= - -just-debounce@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/just-debounce/-/just-debounce-1.0.0.tgz#87fccfaeffc0b68cd19d55f6722943f929ea35ea" - integrity sha1-h/zPrv/AtozRnVX2cilD+SnqNeo= + integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0, kind-of@^5.0.2: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - -kind-of@^6.0.0, kind-of@^6.0.2: - version "6.0.3" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" - integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== - -last-run@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/last-run/-/last-run-1.1.1.tgz#45b96942c17b1c79c772198259ba943bebf8ca5b" - integrity sha1-RblpQsF7HHnHchmCWbqUO+v4yls= - dependencies: - default-resolution "^2.0.0" - es6-weak-map "^2.0.1" +last-run@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/last-run/-/last-run-2.0.0.tgz#f82dcfbfce6e63d041bd83d64c82e34cdba6572e" + integrity sha512-j+y6WhTLN4Itnf9j5ZQos1BGPCS8DAwmgMroR3OzfxAsBxam0hMw7J8M3KqZl0pLQJ1jNnwIexg5DYpC/ctwEQ== lazystream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.0.tgz#f6995fe0f820392f61396be89462407bb77168e4" - integrity sha1-9plf4PggOS9hOWvolGJAe7dxaOQ= + version "1.0.1" + resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.1.tgz#494c831062f1f9408251ec44db1cba29242a2638" + integrity sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw== dependencies: readable-stream "^2.0.5" -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= - dependencies: - invert-kv "^1.0.0" - lead@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lead/-/lead-1.0.0.tgz#6f14f99a37be3a9dd784f5495690e5903466ee42" - integrity sha1-bxT5mje+Op3XhPVJVpDlkDRm7kI= + integrity sha512-IpSVCk9AYvLHo5ctcIXxOBpMWUe+4TKN3VPWAKUbJikkmsGp0VrSM8IttVc32D6J4WUsiPE6aEFRNmIoF/gdow== dependencies: flush-write-stream "^1.0.2" -liftoff@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-3.1.0.tgz#c9ba6081f908670607ee79062d700df062c52ed3" - integrity sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog== - dependencies: - extend "^3.0.0" - findup-sync "^3.0.0" - fined "^1.0.1" - flagged-respawn "^1.0.0" - is-plain-object "^2.0.4" - object.map "^1.0.0" - rechoir "^0.6.2" - resolve "^1.1.7" +lead@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/lead/-/lead-4.0.0.tgz#5317a49effb0e7ec3a0c8fb9c1b24fb716aab939" + integrity sha512-DpMa59o5uGUWWjruMp71e6knmwKU3jRBBn1kjuLWN9EeIOxNeSAwvHf03WIl8g/ZMR2oSQC9ej3yeLBwdDc/pg== liftoff@^5.0.0: version "5.0.0" @@ -1746,83 +1305,72 @@ liftoff@^5.0.0: rechoir "^0.8.0" resolve "^1.20.0" -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - lodash._basecopy@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" - integrity sha1-jaDmqHbPNEwK2KVIghEd08XHyjY= + integrity sha512-rFR6Vpm4HeCK1WPGvjZSJ+7yik8d8PVUdCJx5rT2pogG4Ve/2ZS7kfmO5l5T2o5V2mqlNIfSF5MZlr1+xOoYQQ== lodash._basetostring@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5" - integrity sha1-0YYdh3+CSlL2aYMtyvPuFVZqB9U= + integrity sha512-mTzAr1aNAv/i7W43vOR/uD/aJ4ngbtsRaCubp2BfZhlGU/eORUjg/7F6X0orNMdv33JOrdgGybtvMN/po3EWrA== lodash._basevalues@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7" - integrity sha1-W3dXYoAr3j0yl1A+JjAIIP32Ybc= + integrity sha512-H94wl5P13uEqlCg7OcNNhMQ8KvWSIyqXzOPusRgHC9DK3o54P6P3xtbXlVbRABG4q5gSmp7EDdJ0MSuW9HX6Mg== lodash._getnative@^3.0.0: version "3.9.1" resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" - integrity sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U= + integrity sha512-RrL9VxMEPyDMHOd9uFbvMe8X55X16/cGM5IgOKgRElQZutpX89iS6vwl64duTV1/16w5JY7tuFNXqoekmh1EmA== lodash._isiterateecall@^3.0.0: version "3.0.9" resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" - integrity sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw= + integrity sha512-De+ZbrMu6eThFti/CSzhRvTKMgQToLxbij58LMfM8JnYDNSOjkjTCIaa8ixglOeGh2nyPlakbt5bJWJ7gvpYlQ== lodash._reescape@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._reescape/-/lodash._reescape-3.0.0.tgz#2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a" - integrity sha1-Kx1vXf4HyKNVdT5fJ/rH8c3hYWo= + integrity sha512-Sjlavm5y+FUVIF3vF3B75GyXrzsfYV8Dlv3L4mEpuB9leg8N6yf/7rU06iLPx9fY0Mv3khVp9p7Dx0mGV6V5OQ== lodash._reevaluate@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz#58bc74c40664953ae0b124d806996daca431e2ed" - integrity sha1-WLx0xAZklTrgsSTYBpltrKQx4u0= + integrity sha512-OrPwdDc65iJiBeUe5n/LIjd7Viy99bKwDdk7Z5ljfZg0uFRFlfQaCy9tZ4YMAag9WAZmlVpe1iZrkIMMSMHD3w== lodash._reinterpolate@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= + integrity sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA== lodash._root@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692" - integrity sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI= + integrity sha512-O0pWuFSK6x4EXhM1dhZ8gchNtG7JMqBtrHdoUFUWXD7dJnNSUze1GuyQr5sOs0aCvgGeI3o/OJW8f4ca7FDxmQ== lodash.escape@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698" - integrity sha1-mV7g3BjBtIzJLv+ucaEKq1tIdpg= + integrity sha512-n1PZMXgaaDWZDSvuNZ/8XOcYO2hOKDqZel5adtR30VKQAtoWs/5AOeFA0vPV8moiPzlqe7F4cP2tzpFewQyelQ== dependencies: lodash._root "^3.0.0" lodash.isarguments@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" - integrity sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo= + integrity sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg== lodash.isarray@^3.0.0: version "3.0.4" resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" - integrity sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U= + integrity sha512-JwObCrNJuT0Nnbuecmqr5DgtuBppuCvGD9lxjFpAzwnVtdGoDQ1zig+5W8k5/6Gcn0gZ3936HDAlGd28i7sOGQ== lodash.keys@^3.0.0: version "3.1.2" resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" - integrity sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo= + integrity sha512-CuBsapFjcubOGMn3VD+24HOAPxM79tH+V6ivJL3CHYjtrawauDJHUk//Yew9Hvc6e9rbCrURGk8z6PC+8WJBfQ== dependencies: lodash._getnative "^3.0.0" lodash.isarguments "^3.0.0" @@ -1831,12 +1379,12 @@ lodash.keys@^3.0.0: lodash.restparam@^3.0.0: version "3.6.1" resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" - integrity sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU= + integrity sha512-L4/arjjuq4noiUJpt3yS6KIKDtJwNe2fIYgMqyYYKoeIfV1iEqvPwhCx23o+R9dzouGihDAPN1dTIRWa7zk8tw== lodash.template@^3.0.0: version "3.6.2" resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f" - integrity sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8= + integrity sha512-0B4Y53I0OgHUJkt+7RmlDFWKjVAI/YUpWNiL9GQz5ORDr4ttgfQGo+phBWKFLJbBdtOwgMuUkdOHOnPg45jKmQ== dependencies: lodash._basecopy "^3.0.0" lodash._basetostring "^3.0.0" @@ -1851,113 +1399,51 @@ lodash.template@^3.0.0: lodash.templatesettings@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz#fb307844753b66b9f1afa54e262c745307dba8e5" - integrity sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU= + integrity sha512-TcrlEr31tDYnWkHFWDCV3dHYroKEXpJZ2YJYvJdhN+y4AkWMDZ5I4I8XDtUKqSAyG81N7w+I1mFEJtcED+tGqQ== dependencies: lodash._reinterpolate "^3.0.0" lodash.escape "^3.0.0" -lower-case@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.1.tgz#39eeb36e396115cc05e29422eaea9e692c9408c7" - integrity sha512-LiWgfDLLb1dwbFQZsSglpRj+1ctGnayXz3Uv0/WO8n558JycT5fg6zkNcnW0G68Nn0aEldTFeEfmjCfmqry/rQ== - dependencies: - tslib "^1.10.0" - -lower-case@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" - integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== - dependencies: - tslib "^2.0.3" - -lru-queue@0.1: +lru-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/lru-queue/-/lru-queue-0.1.0.tgz#2738bd9f0d3cf4f84490c5736c48699ac632cda3" - integrity sha1-Jzi9nw089PhEkMVzbEhpmsYyzaM= + integrity sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ== dependencies: es5-ext "~0.10.2" -make-iterator@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/make-iterator/-/make-iterator-1.0.1.tgz#29b33f312aa8f547c4a5e490f56afcec99133ad6" - integrity sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw== - dependencies: - kind-of "^6.0.2" - -map-cache@^0.2.0, map-cache@^0.2.2: +map-cache@^0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= - dependencies: - object-visit "^1.0.0" - -matchdep@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/matchdep/-/matchdep-2.0.0.tgz#c6f34834a0d8dbc3b37c27ee8bbcb27c7775582e" - integrity sha1-xvNINKDY28OzfCfui7yyfHd1WC4= - dependencies: - findup-sync "^2.0.0" - micromatch "^3.0.4" - resolve "^1.4.0" - stack-trace "0.0.10" + integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== memoizee@0.4.X: - version "0.4.14" - resolved "https://registry.yarnpkg.com/memoizee/-/memoizee-0.4.14.tgz#07a00f204699f9a95c2d9e77218271c7cd610d57" - integrity sha512-/SWFvWegAIYAO4NQMpcX+gcra0yEZu4OntmUdrBaWrJncxOqAziGFlHxc7yjKVK2uu3lpPW27P27wkR82wA8mg== + version "0.4.17" + resolved "https://registry.yarnpkg.com/memoizee/-/memoizee-0.4.17.tgz#942a5f8acee281fa6fb9c620bddc57e3b7382949" + integrity sha512-DGqD7Hjpi/1or4F/aYAspXKNm5Yili0QDAFAY4QYvpqpgiY6+1jOfqpmByzjxbWd/T9mChbCArXAbDAsTm5oXA== dependencies: - d "1" - es5-ext "^0.10.45" - es6-weak-map "^2.0.2" + d "^1.0.2" + es5-ext "^0.10.64" + es6-weak-map "^2.0.3" event-emitter "^0.3.5" - is-promise "^2.1" - lru-queue "0.1" - next-tick "1" - timers-ext "^0.1.5" - -merge2@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.3.0.tgz#5b366ee83b2f1582c48f87e47cf1a9352103ca81" - integrity sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw== + is-promise "^2.2.2" + lru-queue "^0.1.0" + next-tick "^1.1.0" + timers-ext "^0.1.7" -merge2@^1.4.1: +merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - micromatch@^4.0.4: - version "4.0.5" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" - integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== + version "4.0.7" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.7.tgz#33e8190d9fe474a9895525f5618eee136d46c2e5" + integrity sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q== dependencies: - braces "^3.0.2" + braces "^3.0.3" picomatch "^2.3.1" -minimatch@^3.0.4: +minimatch@^3.1.1: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== @@ -1965,110 +1451,44 @@ minimatch@^3.0.4: brace-expansion "^1.1.7" minimist@^1.1.0: - version "1.2.6" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" - integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== - -mixin-deep@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" - integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== ms@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== multipipe@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/multipipe/-/multipipe-0.1.2.tgz#2a8f2ddf70eed564dff2d57f1e1a137d9f05078b" - integrity sha1-Ko8t33Du1WTf8tV/HhoTfZ8FB4s= + integrity sha512-7ZxrUybYv9NonoXgwoOqtStIu18D1c3eFZj27hqgf5kBrBF8Q+tE8V0MW8dKM5QLkQPh1JhhbKgHLY9kifov4Q== dependencies: duplexer2 "0.0.2" -mute-stdout@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/mute-stdout/-/mute-stdout-1.0.1.tgz#acb0300eb4de23a7ddeec014e3e96044b3472331" - integrity sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg== - mute-stdout@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/mute-stdout/-/mute-stdout-2.0.0.tgz#c6a9b4b6185d3b7f70d3ffcb734cbfc8b0f38761" integrity sha512-32GSKM3Wyc8dg/p39lWPKYu8zci9mJFzV1Np9Of0ZEpe6Fhssn/FbI7ywAMd40uX+p3ZKh3T5EeCFv81qS3HmQ== -nan@^2.12.1: - version "2.14.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" - integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== - -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -next-tick@1, next-tick@^1.1.0: +next-tick@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb" integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ== -no-case@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.3.tgz#c21b434c1ffe48b39087e86cfb4d2582e9df18f8" - integrity sha512-ehY/mVQCf9BL0gKfsJBvFJen+1V//U+0HQMPrWct40ixE4jnv0bfvxDbWtAHL9EcaPEOJHVVYKoQn1TlZUB8Tw== - dependencies: - lower-case "^2.0.1" - tslib "^1.10.0" - -no-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" - integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== - dependencies: - lower-case "^2.0.2" - tslib "^2.0.3" - -normalize-package-data@^2.3.2: - version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" - integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== - dependencies: - hosted-git-info "^2.1.4" - resolve "^1.10.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" +normalize-path@3.0.0, normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== normalize-path@^2.0.1, normalize-path@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= + integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== dependencies: remove-trailing-separator "^1.0.1" -normalize-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - now-and-later@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/now-and-later/-/now-and-later-2.0.1.tgz#8e579c8685764a7cc02cb680380e94f43ccb1f7c" @@ -2076,106 +1496,69 @@ now-and-later@^2.0.0: dependencies: once "^1.3.2" -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= +now-and-later@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/now-and-later/-/now-and-later-3.0.0.tgz#cdc045dc5b894b35793cf276cc3206077bb7302d" + integrity sha512-pGO4pzSdaxhWTGkfSfHx3hVzJVslFPwBp2Myq9MYN/ChfJZF87ochMAXnvz6/58RJSf5ik2q9tXprBBrk2cpcg== + dependencies: + once "^1.4.0" object-assign@4.X: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== object-assign@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" - integrity sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I= + integrity sha512-jHP15vXVGeVh1HuaA2wY6lxk+whK/x4KBG88VXeRma7CCun7iGD5qPc4eYykQ9sdQvg8jkwFKsSxHln2ybW3xQ== -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - -object-keys@^1.0.11, object-keys@^1.0.12: +object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= - dependencies: - isobject "^3.0.0" - object.assign@^4.0.4: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" - integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== + version "4.1.5" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" + integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - has-symbols "^1.0.0" - object-keys "^1.0.11" + call-bind "^1.0.5" + define-properties "^1.2.1" + has-symbols "^1.0.3" + object-keys "^1.1.1" -object.defaults@^1.0.0, object.defaults@^1.1.0: +object.defaults@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/object.defaults/-/object.defaults-1.1.0.tgz#3a7f868334b407dea06da16d88d5cd29e435fecf" - integrity sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8= + integrity sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA== dependencies: array-each "^1.0.1" array-slice "^1.0.0" for-own "^1.0.0" isobject "^3.0.0" -object.map@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object.map/-/object.map-1.0.1.tgz#cf83e59dc8fcc0ad5f4250e1f78b3b81bd801d37" - integrity sha1-z4Plncj8wK1fQlDh94s7gb2AHTc= - dependencies: - for-own "^1.0.0" - make-iterator "^1.0.0" - -object.pick@^1.2.0, object.pick@^1.3.0: +object.pick@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= + integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== dependencies: isobject "^3.0.1" -object.reduce@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object.reduce/-/object.reduce-1.0.1.tgz#6fe348f2ac7fa0f95ca621226599096825bb03ad" - integrity sha1-b+NI8qx/oPlcpiEiZZkJaCW7A60= - dependencies: - for-own "^1.0.0" - make-iterator "^1.0.0" - once@^1.3.0, once@^1.3.1, once@^1.3.2, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: wrappy "1" ordered-read-streams@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz#77c0cb37c41525d64166d990ffad7ec6a0e1363e" - integrity sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4= + integrity sha512-Z87aSjx3r5c0ZB7bcJqIgIRX5bxR7A4aSzvIbaxd0oTkWBCOoKfuGHiKj60CHVUgg1Phm5yMZzBdt8XqRs73Mw== dependencies: readable-stream "^2.0.1" -os-locale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk= - dependencies: - lcid "^1.0.0" - p-map@^5.5.0: version "5.5.0" resolved "https://registry.yarnpkg.com/p-map/-/p-map-5.5.0.tgz#054ca8ca778dfa4cf3f8db6638ccb5b937266715" @@ -2183,22 +1566,15 @@ p-map@^5.5.0: dependencies: aggregate-error "^4.0.0" -parse-filepath@^1.0.1, parse-filepath@^1.0.2: +parse-filepath@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" - integrity sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE= + integrity sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q== dependencies: is-absolute "^1.0.0" map-cache "^0.2.0" path-root "^0.1.1" -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= - dependencies: - error-ex "^1.2.0" - parse-node-version@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parse-node-version/-/parse-node-version-1.0.1.tgz#e2b5dbede00e7fa9bc363607f53327e8b073189b" @@ -2207,47 +1583,19 @@ parse-node-version@^1.0.0: parse-passwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" - integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= - -pascal-case@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.1.tgz#5ac1975133ed619281e88920973d2cd1f279de5f" - integrity sha512-XIeHKqIrsquVTQL2crjq3NfJUxmdLasn3TYOU0VBM+UX2a6ztAWBlJQBePLGY7VHW8+2dRadeIPK5+KImwTxQA== - dependencies: - no-case "^3.0.3" - tslib "^1.10.0" - -pascal-case@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" - integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== - dependencies: - no-case "^3.0.4" - tslib "^2.0.3" - -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= + integrity sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q== path-dirname@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= - dependencies: - pinkie-promise "^2.0.0" + integrity sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q== path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== -path-parse@^1.0.6, path-parse@^1.0.7: +path-parse@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== @@ -2255,24 +1603,15 @@ path-parse@^1.0.6, path-parse@^1.0.7: path-root-regex@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d" - integrity sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0= + integrity sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ== path-root@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz#9a4a6814cac1c0cd73360a95f32083c8ea4745b7" - integrity sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc= + integrity sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg== dependencies: path-root-regex "^0.1.0" -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - path-type@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" @@ -2281,7 +1620,7 @@ path-type@^4.0.0: path@^0.12.7: version "0.12.7" resolved "https://registry.yarnpkg.com/path/-/path-0.12.7.tgz#d4dc2a506c4ce2197eb481ebfcd5b36c0140b10f" - integrity sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8= + integrity sha512-aXXC6s+1w7otVF9UletFkFcDsJeO7lSZBPUQhtb5O0xJe8LtYhj/GxldoL09bBj9+ZmE2hNoHqQSFMN5fikh4Q== dependencies: process "^0.11.1" util "^0.10.3" @@ -2291,28 +1630,11 @@ picocolors@^0.2.1: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-0.2.1.tgz#570670f793646851d1ba135996962abad587859f" integrity sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA== -picomatch@^2.3.1: +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -pify@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= - -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= - plugin-error@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/plugin-error/-/plugin-error-1.0.1.tgz#77016bd8919d0ac377fdcdd0322328953ca5781c" @@ -2323,11 +1645,6 @@ plugin-error@^1.0.1: arr-union "^3.1.0" extend-shallow "^3.0.2" -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= - postcss@^7.0.16: version "7.0.39" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.39.tgz#9624375d965630e2e1f2c02a935c82a59cb48309" @@ -2336,11 +1653,6 @@ postcss@^7.0.16: picocolors "^0.2.1" source-map "^0.6.1" -pretty-hrtime@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" - integrity sha1-t+PqQkNaTJsnWdmeDyAesZWALuE= - process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" @@ -2349,7 +1661,7 @@ process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: process@^0.11.1: version "0.11.10" resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= + integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== pump@^2.0.0: version "2.0.1" @@ -2368,36 +1680,29 @@ pumpify@^1.3.5: inherits "^2.0.3" pump "^2.0.0" -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" +queue-tick@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/queue-tick/-/queue-tick-1.0.1.tgz#f6f07ac82c1fd60f82e098b417a80e52f1f4c142" + integrity sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag== -"readable-stream@2 || 3": - version "3.6.0" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" - integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== +"readable-stream@2 || 3", readable-stream@3, readable-stream@^3.4.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== dependencies: inherits "^2.0.3" string_decoder "^1.1.1" util-deprecate "^1.0.1" -readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: - version "2.3.7" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" - integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== +readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.5, readable-stream@^2.1.5, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" @@ -2410,28 +1715,19 @@ readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable readable-stream@~1.1.9: version "1.1.14" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" - integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= + integrity sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ== dependencies: core-util-is "~1.0.0" inherits "~2.0.1" isarray "0.0.1" string_decoder "~0.10.x" -readdirp@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" - integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== - dependencies: - graceful-fs "^4.1.11" - micromatch "^3.1.10" - readable-stream "^2.0.2" - -rechoir@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" - integrity sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q= +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== dependencies: - resolve "^1.1.6" + picomatch "^2.2.1" rechoir@^0.8.0: version "0.8.0" @@ -2440,14 +1736,6 @@ rechoir@^0.8.0: dependencies: resolve "^1.20.0" -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - remove-bom-buffer@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz#c2bf1e377520d324f623892e33c10cac2c252b53" @@ -2459,7 +1747,7 @@ remove-bom-buffer@^3.0.0: remove-bom-stream@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz#05f1a593f16e42e1fb90ebf59de8e569525f9523" - integrity sha1-BfGlk/FuQuH7kOv1nejlaVJflSM= + integrity sha512-wigO8/O08XHb8YPzpDDT+QmRANfW6vLqxfaXm1YXhnFf3AkSLyjfG3GEFg4McZkmgL7KvCj5u2KczkvSP6NfHA== dependencies: remove-bom-buffer "^3.0.0" safe-buffer "^5.1.0" @@ -2468,36 +1756,22 @@ remove-bom-stream@^1.2.0: remove-trailing-separator@^1.0.1, remove-trailing-separator@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= - -repeat-element@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" - integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== - -repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= + integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== replace-ext@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" - integrity sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ= + integrity sha512-AFBWBy9EVRTa/LhEcG8QDP3FvpwZqmvN2QFDuJswFeaVhWnZMp8q3E6Zd90SR04PlIwfGdyVjNyLPyen/ek5CQ== replace-ext@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" - integrity sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs= + version "1.0.1" + resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.1.tgz#2d6d996d04a15855d967443631dd5f77825b016a" + integrity sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw== -replace-homedir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/replace-homedir/-/replace-homedir-1.0.0.tgz#e87f6d513b928dde808260c12be7fec6ff6e798c" - integrity sha1-6H9tUTuSjd6AgmDBK+f+xv9ueYw= - dependencies: - homedir-polyfill "^1.0.1" - is-absolute "^1.0.0" - remove-trailing-separator "^1.1.0" +replace-ext@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-2.0.0.tgz#9471c213d22e1bcc26717cd6e50881d88f812b06" + integrity sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug== replace-homedir@^2.0.0: version "2.0.0" @@ -2507,17 +1781,12 @@ replace-homedir@^2.0.0: require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== resolve-dir@^1.0.0, resolve-dir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" - integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M= + integrity sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg== dependencies: expand-tilde "^2.0.0" global-modules "^1.0.0" @@ -2525,21 +1794,16 @@ resolve-dir@^1.0.0, resolve-dir@^1.0.1: resolve-options@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/resolve-options/-/resolve-options-1.1.0.tgz#32bb9e39c06d67338dc9378c0d6d6074566ad131" - integrity sha1-MrueOcBtZzONyTeMDW1gdFZq0TE= + integrity sha512-NYDgziiroVeDC29xq7bp/CacZERYsA9bXYd1ZmcJlF3BcrZv5pTb4NG7SjdyKDnXZ84aC4vo2u6sNKIA1LCu/A== dependencies: value-or-function "^3.0.0" -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= - -resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.4.0: - version "1.15.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8" - integrity sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w== +resolve-options@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/resolve-options/-/resolve-options-2.0.0.tgz#a1a57a9949db549dd075de3f5550675f02f1e4c5" + integrity sha512-/FopbmmFOQCfsCx77BRFdKOniglTiHumLgwvd6IDPihy1GKkadZbgQJBcTb2lMzSR1pndzd96b1nZrreZ7+9/A== dependencies: - path-parse "^1.0.6" + value-or-function "^4.0.0" resolve@^1.20.0: version "1.22.8" @@ -2550,11 +1814,6 @@ resolve@^1.20.0: path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - reusify@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" @@ -2568,33 +1827,26 @@ rimraf@^3.0.2: glob "^7.1.3" run-parallel@^1.1.9: - version "1.1.9" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" - integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== + version "1.2.0" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" safe-buffer@^5.1.0, safe-buffer@~5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" - integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= - dependencies: - ret "~0.1.10" - -semver-greatest-satisfied-range@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz#13e8c2658ab9691cb0cd71093240280d36f77a5b" - integrity sha1-E+jCZYq5aRywzXEJMkAoDTb3els= - dependencies: - sver-compat "^1.5.0" +"safer-buffer@>= 2.1.2 < 3.0.0": + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== semver-greatest-satisfied-range@^2.0.0: version "2.0.0" @@ -2603,77 +1855,28 @@ semver-greatest-satisfied-range@^2.0.0: dependencies: sver "^1.8.3" -"semver@2 || 3 || 4 || 5": - version "5.7.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" - integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== - semver@^6.3.0: version "6.3.1" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -set-blocking@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= - -set-value@^2.0.0, set-value@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" - integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== +set-function-length@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" + integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" + define-data-property "^1.1.4" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" slash@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-4.0.0.tgz#2422372176c4c6c5addb5e2ada885af984b396a7" integrity sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew== -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - -source-map-resolve@^0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" - integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== - dependencies: - atob "^2.1.2" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - source-map-resolve@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.6.0.tgz#3d9df87e236b53f16d01e58150fc7711138e5ed2" @@ -2682,25 +1885,15 @@ source-map-resolve@^0.6.0: atob "^2.1.2" decode-uri-component "^0.2.0" -source-map-url@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" - integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= - -source-map@^0.5.6: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= - source-map@^0.6.0, source-map@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@^0.7.3: - version "0.7.3" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" - integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== +source-map@^0.7.3, source-map@^0.7.4: + version "0.7.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" + integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== sparkles@^1.0.0: version "1.0.1" @@ -2712,70 +1905,33 @@ sparkles@^2.1.0: resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-2.1.0.tgz#8ad4e8cecba7e568bba660c39b6db46625ecf1ad" integrity sha512-r7iW1bDw8R/cFifrD3JnQJX0K1jqT0kprL48BiBpLZLJPmAm34zsVBsK5lc7HirZYZqMW65dOXZgbAGt/I6frg== -spdx-correct@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" - integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" - integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== - -spdx-expression-parse@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" - integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.5" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" - integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== - -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - -stack-trace@0.0.10: - version "0.0.10" - resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" - integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= - -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= +stream-composer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/stream-composer/-/stream-composer-1.0.2.tgz#7ee61ca1587bf5f31b2e29aa2093cbf11442d152" + integrity sha512-bnBselmwfX5K10AH6L4c8+S5lgZMWI7ZYrz2rvYjCPB2DIMC4Ig8OpxGpNJSxRZ58oti7y1IcNvjBAz9vW5m4w== dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" + streamx "^2.13.2" -stream-exhaust@^1.0.1: +stream-exhaust@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/stream-exhaust/-/stream-exhaust-1.0.2.tgz#acdac8da59ef2bc1e17a2c0ccf6c320d120e555d" integrity sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw== stream-shift@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" - integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== + version "1.0.3" + resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.3.tgz#85b8fab4d71010fc3ba8772e8046cc49b8a3864b" + integrity sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ== -string-width@^1.0.1, string-width@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= +streamx@^2.12.0, streamx@^2.12.5, streamx@^2.13.2, streamx@^2.14.0: + version "2.18.0" + resolved "https://registry.yarnpkg.com/streamx/-/streamx-2.18.0.tgz#5bc1a51eb412a667ebfdcd4e6cf6a6fc65721ac7" + integrity sha512-LLUC1TWdjVdn1weXGcSxyTR3T4+acB6tVGXT95y0nGbca4t4o/ng1wKAGTljm9VicuCVLvRlqFYXYy5GwgM7sQ== dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" + fast-fifo "^1.3.2" + queue-tick "^1.0.1" + text-decoder "^1.1.0" + optionalDependencies: + bare-events "^2.2.0" string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" @@ -2796,7 +1952,7 @@ string_decoder@^1.1.1: string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= + integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ== string_decoder@~1.1.1: version "1.1.1" @@ -2805,10 +1961,10 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -strip-ansi@^3.0.0, strip-ansi@^3.0.1: +strip-ansi@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= + integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== dependencies: ansi-regex "^2.0.0" @@ -2822,19 +1978,12 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: strip-bom-string@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/strip-bom-string/-/strip-bom-string-1.0.0.tgz#e5211e9224369fbb81d633a2f00044dc8cedad92" - integrity sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI= - -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= - dependencies: - is-utf8 "^0.2.0" + integrity sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g== supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= + integrity sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g== supports-color@^7.1.0: version "7.2.0" @@ -2848,14 +1997,6 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -sver-compat@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/sver-compat/-/sver-compat-1.5.0.tgz#3cf87dfeb4d07b4a3f14827bc186b3fd0c645cd8" - integrity sha1-PPh9/rTQe0o/FIJ7wYaz/QxkXNg= - dependencies: - es6-iterator "^2.0.1" - es6-symbol "^3.1.1" - sver@^1.8.3: version "1.8.4" resolved "https://registry.yarnpkg.com/sver/-/sver-1.8.4.tgz#9bd6f6265263f01aab152df935dc7a554c15673f" @@ -2863,15 +2004,28 @@ sver@^1.8.3: optionalDependencies: semver "^6.3.0" +teex@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/teex/-/teex-1.0.1.tgz#b8fa7245ef8e8effa8078281946c85ab780a0b12" + integrity sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg== + dependencies: + streamx "^2.12.5" + +text-decoder@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/text-decoder/-/text-decoder-1.1.1.tgz#5df9c224cebac4a7977720b9f083f9efa1aefde8" + integrity sha512-8zll7REEv4GDD3x4/0pW+ppIxSNs7H1J10IKFZsuOMscumCdM2a+toDGLPA3T+1+fLBql4zbt5z83GEQGGV5VA== + dependencies: + b4a "^1.6.4" + through2-filter@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-3.0.0.tgz#700e786df2367c2c88cd8aa5be4cf9c1e7831254" - integrity sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA== + version "3.1.0" + resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-3.1.0.tgz#4a1b45d2b76b3ac93ec137951e372c268efc1a4e" + integrity sha512-VhZsTsfrIJjyUi6GeecnwcOJlmoqgIdGFDjqnV5ape+F1DN8GejfPO66XyIhoinxmxGImiUTrq9RwpTN5yszGA== dependencies: - through2 "~2.0.0" - xtend "~4.0.0" + through2 "^4.0.2" -through2@^2.0.0, through2@^2.0.3, through2@~2.0.0: +through2@^2.0.0, through2@^2.0.3: version "2.0.5" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== @@ -2879,14 +2033,7 @@ through2@^2.0.0, through2@^2.0.3, through2@~2.0.0: readable-stream "~2.3.6" xtend "~4.0.1" -through2@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.1.tgz#39276e713c3302edf9e388dd9c812dd3b825bd5a" - integrity sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww== - dependencies: - readable-stream "2 || 3" - -through2@^3.0.1: +through2@^3.0.0, through2@^3.0.1: version "3.0.2" resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.2.tgz#99f88931cfc761ec7678b41d5d7336b5b6a07bf4" integrity sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ== @@ -2894,42 +2041,34 @@ through2@^3.0.1: inherits "^2.0.4" readable-stream "2 || 3" +through2@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/through2/-/through2-4.0.2.tgz#a7ce3ac2a7a8b0b966c80e7c49f0484c3b239764" + integrity sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw== + dependencies: + readable-stream "3" + time-stamp@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.1.0.tgz#764a5a11af50561921b133f3b44e618687e0f5c3" - integrity sha1-dkpaEa9QVhkhsTPztE5hhofg9cM= + integrity sha512-gLCeArryy2yNTRzTGKbZbloctj64jkZ57hj5zdraXue6aFgd6PmvVtEyiUU+hvU0v7q08oVv8r8ev0tRo6bvgw== -timers-ext@^0.1.5: - version "0.1.7" - resolved "https://registry.yarnpkg.com/timers-ext/-/timers-ext-0.1.7.tgz#6f57ad8578e07a3fb9f91d9387d65647555e25c6" - integrity sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ== +timers-ext@^0.1.7: + version "0.1.8" + resolved "https://registry.yarnpkg.com/timers-ext/-/timers-ext-0.1.8.tgz#b4e442f10b7624a29dd2aa42c295e257150cf16c" + integrity sha512-wFH7+SEAcKfJpfLPkrgMPvvwnEtj8W4IurvEyrKsDleXnKLCDw71w8jltvfLa8Rm4qQxxT4jmDBYbJG/z7qoww== dependencies: - es5-ext "~0.10.46" - next-tick "1" + es5-ext "^0.10.64" + next-tick "^1.1.0" to-absolute-glob@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1865f43d9e74b0822db9f145b78cff7d0f7c849b" - integrity sha1-GGX0PZ50sIItufFFt4z/fQ98hJs= + integrity sha512-rtwLUQEwT8ZeKQbyFJyomBRYXyE16U5VKuy0ftxLMK/PZb2fkOsg5r9kHdauuVDbsNdIBoC/HCthpidamQFXYA== dependencies: is-absolute "^1.0.0" is-negated-glob "^1.0.0" -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -2937,92 +2076,54 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - to-through@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/to-through/-/to-through-2.0.0.tgz#fc92adaba072647bc0b67d6b03664aa195093af6" - integrity sha1-/JKtq6ByZHvAtn1rA2ZKoZUJOvY= + integrity sha512-+QIz37Ly7acM4EMdw2PRN389OneM5+d844tirkGp4dPKzI5OE72V9OsbFp+CIYJDahZ41ZV05hNtcPAQUAm9/Q== dependencies: through2 "^2.0.3" -tslib@^1.10.0: - version "1.11.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.1.tgz#eb15d128827fbee2841549e171f45ed338ac7e35" - integrity sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA== - -tslib@^2.0.3: - version "2.4.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" - integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== - -type@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" - integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== - -type@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/type/-/type-2.0.0.tgz#5f16ff6ef2eb44f260494dae271033b29c09a9c3" - integrity sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow== +to-through@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/to-through/-/to-through-3.0.0.tgz#bf4956eaca5a0476474850a53672bed6906ace54" + integrity sha512-y8MN937s/HVhEoBU1SxfHC+wxCHkV1a9gW8eAdTadYh/bGyesZIVcbjI+mSpFbSVwQici/XjBjuUyri1dnXwBw== + dependencies: + streamx "^2.12.5" type@^2.7.2: - version "2.7.2" - resolved "https://registry.yarnpkg.com/type/-/type-2.7.2.tgz#2376a15a3a28b1efa0f5350dcf72d24df6ef98d0" - integrity sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw== - -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= + version "2.7.3" + resolved "https://registry.yarnpkg.com/type/-/type-2.7.3.tgz#436981652129285cc3ba94f392886c2637ea0486" + integrity sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ== typescript@^5.0.4: - version "5.4.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" - integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== + version "5.5.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.4.tgz#d9852d6c82bad2d2eda4fd74a5762a8f5909e9ba" + integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q== unc-path-regex@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" - integrity sha1-5z3T17DXxe2G+6xrCufYxqadUPo= + integrity sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg== -undertaker-registry@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/undertaker-registry/-/undertaker-registry-1.0.1.tgz#5e4bda308e4a8a2ae584f9b9a4359a499825cc50" - integrity sha1-XkvaMI5KiirlhPm5pDWaSZglzFA= +undertaker-registry@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/undertaker-registry/-/undertaker-registry-2.0.0.tgz#d434246e398444740dd7fe4c9543e402ad99e4ca" + integrity sha512-+hhVICbnp+rlzZMgxXenpvTxpuvA67Bfgtt+O9WOE5jo7w/dyiF1VmoZVIHvP2EkUjsyKyTwYKlLhA+j47m1Ew== -undertaker@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/undertaker/-/undertaker-1.2.1.tgz#701662ff8ce358715324dfd492a4f036055dfe4b" - integrity sha512-71WxIzDkgYk9ZS+spIB8iZXchFhAdEo2YU8xYqBYJ39DIUIqziK78ftm26eecoIY49X0J2MLhG4hr18Yp6/CMA== - dependencies: - arr-flatten "^1.0.1" - arr-map "^2.0.0" - bach "^1.0.0" - collection-map "^1.0.0" - es6-weak-map "^2.0.1" - last-run "^1.1.0" - object.defaults "^1.0.0" - object.reduce "^1.0.0" - undertaker-registry "^1.0.0" - -union-value@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" - integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== +undertaker@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/undertaker/-/undertaker-2.0.0.tgz#fe4d40dc71823ce5a80f1ecc63ec8b88ad40b54a" + integrity sha512-tO/bf30wBbTsJ7go80j0RzA2rcwX6o7XPBpeFcb+jzoeb4pfMM2zUeSDIkY1AWqeZabWxaQZ/h8N9t35QKDLPQ== dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^2.0.1" + bach "^2.0.1" + fast-levenshtein "^3.0.0" + last-run "^2.0.0" + undertaker-registry "^2.0.0" + +undici-types@~5.26.4: + version "5.26.5" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" + integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== unique-stream@^2.0.2: version "2.3.1" @@ -3032,33 +2133,10 @@ unique-stream@^2.0.2: json-stable-stringify-without-jsonify "^1.0.1" through2-filter "^3.0.0" -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -upath@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" - integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== - -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= - -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - util-deprecate@^1.0.1, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== util@^0.10.3: version "0.10.4" @@ -3067,32 +2145,30 @@ util@^0.10.3: dependencies: inherits "2.0.3" -v8flags@^3.0.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-3.1.3.tgz#fc9dc23521ca20c5433f81cc4eb9b3033bb105d8" - integrity sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w== - dependencies: - homedir-polyfill "^1.0.1" - v8flags@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-4.0.1.tgz#98fe6c4308317c5f394d85a435eb192490f7e132" integrity sha512-fcRLaS4H/hrZk9hYwbdRM35D0U8IYMfEClhXxCivOojl+yTRAZH3Zy2sSy6qVCiGbV9YAtPssP6jaChqC9vPCg== -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - value-or-function@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/value-or-function/-/value-or-function-3.0.0.tgz#1c243a50b595c1be54a754bfece8563b9ff8d813" - integrity sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM= + integrity sha512-jdBB2FrWvQC/pnPtIqcLsMaQgjhdb6B7tk1MMyTKapox+tQZbdRP4uLxu/JY0t7fbfDCUMnuelzEYv5GsxHhdg== -vinyl-fs@^3.0.0, vinyl-fs@^3.0.3: +value-or-function@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/value-or-function/-/value-or-function-4.0.0.tgz#70836b6a876a010dc3a2b884e7902e9db064378d" + integrity sha512-aeVK81SIuT6aMJfNo9Vte8Dw0/FZINGBV8BfCraGtqVxIeLAEhJyoWs8SmvRVmXfGss2PmmOwZCuBPbZR+IYWg== + +vinyl-contents@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/vinyl-contents/-/vinyl-contents-2.0.0.tgz#cc2ba4db3a36658d069249e9e36d9e2b41935d89" + integrity sha512-cHq6NnGyi2pZ7xwdHSW1v4Jfnho4TEGtxZHw01cmnc8+i7jgR6bRnED/LbrKan/Q7CvVLbnvA5OepnhbpjBZ5Q== + dependencies: + bl "^5.0.0" + vinyl "^3.0.0" + +vinyl-fs@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-3.0.3.tgz#c85849405f67428feabbbd5c5dbdd64f47d31bc7" integrity sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng== @@ -3115,10 +2191,30 @@ vinyl-fs@^3.0.0, vinyl-fs@^3.0.3: vinyl "^2.0.0" vinyl-sourcemap "^1.1.0" +vinyl-fs@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-4.0.0.tgz#06cb36efc911c6e128452f230b96584a9133c3a1" + integrity sha512-7GbgBnYfaquMk3Qu9g22x000vbYkOex32930rBnc3qByw6HfMEAoELjCjoJv4HuEQxHAurT+nvMHm6MnJllFLw== + dependencies: + fs-mkdirp-stream "^2.0.1" + glob-stream "^8.0.0" + graceful-fs "^4.2.11" + iconv-lite "^0.6.3" + is-valid-glob "^1.0.0" + lead "^4.0.0" + normalize-path "3.0.0" + resolve-options "^2.0.0" + stream-composer "^1.0.2" + streamx "^2.14.0" + to-through "^3.0.0" + value-or-function "^4.0.0" + vinyl "^3.0.0" + vinyl-sourcemap "^2.0.0" + vinyl-sourcemap@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz#92a800593a38703a8cdb11d8b300ad4be63b3e16" - integrity sha1-kqgAWTo4cDqM2xHYswCtS+Y7PhY= + integrity sha512-NiibMgt6VJGJmyw7vtzhctDcfKch4e4n9TBeoWlirb7FMg9/1Ov9k+A5ZRAtywBpRPiyECvQRQllYM8dECegVA== dependencies: append-buffer "^1.0.2" convert-source-map "^1.5.0" @@ -3128,19 +2224,31 @@ vinyl-sourcemap@^1.1.0: remove-bom-buffer "^3.0.0" vinyl "^2.0.0" +vinyl-sourcemap@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/vinyl-sourcemap/-/vinyl-sourcemap-2.0.0.tgz#422f410a0ea97cb54cebd698d56a06d7a22e0277" + integrity sha512-BAEvWxbBUXvlNoFQVFVHpybBbjW1r03WhohJzJDSfgrrK5xVYIDTan6xN14DlyImShgDRv2gl9qhM6irVMsV0Q== + dependencies: + convert-source-map "^2.0.0" + graceful-fs "^4.2.10" + now-and-later "^3.0.0" + streamx "^2.12.5" + vinyl "^3.0.0" + vinyl-contents "^2.0.0" + vinyl@^0.5.0: version "0.5.3" resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.5.3.tgz#b0455b38fc5e0cf30d4325132e461970c2091cde" - integrity sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4= + integrity sha512-P5zdf3WB9uzr7IFoVQ2wZTmUwHL8cMZWJGzLBNCHNZ3NB6HTMsYABtt7z8tAGIINLXyAob9B9a1yzVGMFOYKEA== dependencies: clone "^1.0.0" clone-stats "^0.0.1" replace-ext "0.0.1" vinyl@^2.0.0, vinyl@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-2.2.0.tgz#d85b07da96e458d25b2ffe19fece9f2caa13ed86" - integrity sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg== + version "2.2.1" + resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-2.2.1.tgz#23cfb8bbab5ece3803aa2c0a1eb28af7cbba1974" + integrity sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw== dependencies: clone "^2.1.1" clone-buffer "^1.0.0" @@ -3149,10 +2257,16 @@ vinyl@^2.0.0, vinyl@^2.1.0: remove-trailing-separator "^1.0.1" replace-ext "^1.0.0" -which-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" - integrity sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8= +vinyl@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-3.0.0.tgz#11e14732bf56e2faa98ffde5157fe6c13259ff30" + integrity sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g== + dependencies: + clone "^2.1.2" + clone-stats "^1.0.0" + remove-trailing-separator "^1.1.0" + replace-ext "^2.0.0" + teex "^1.0.1" which@^1.2.14: version "1.3.1" @@ -3161,14 +2275,6 @@ which@^1.2.14: dependencies: isexe "^2.0.0" -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" @@ -3181,18 +2287,13 @@ wrap-ansi@^7.0.0: wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== -xtend@~4.0.0, xtend@~4.0.1: +xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== -y18n@^3.2.1: - version "3.2.2" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696" - integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ== - y18n@^5.0.5: version "5.0.8" resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" @@ -3203,13 +2304,6 @@ yargs-parser@^20.2.2: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yargs-parser@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" - integrity sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo= - dependencies: - camelcase "^3.0.0" - yargs@^16.2.0: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" @@ -3222,22 +2316,3 @@ yargs@^16.2.0: string-width "^4.2.0" y18n "^5.0.5" yargs-parser "^20.2.2" - -yargs@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" - integrity sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg= - dependencies: - camelcase "^3.0.0" - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^1.0.2" - which-module "^1.0.0" - y18n "^3.2.1" - yargs-parser "^5.0.0" From a594d7dd0959d74280eb1ceab578273738acc0ea Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 9 Aug 2024 08:27:26 -0600 Subject: [PATCH 174/257] Remove `change-case` dependency since I couldn't get it to work on newer node --- src/nerdbank-gitversioning.npm/package.json | 4 +--- src/nerdbank-gitversioning.npm/ts/index.ts | 4 ++-- src/nerdbank-gitversioning.npm/yarn.lock | 5 ----- 3 files changed, 3 insertions(+), 10 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/package.json b/src/nerdbank-gitversioning.npm/package.json index a2febf715..11a44e9cf 100644 --- a/src/nerdbank-gitversioning.npm/package.json +++ b/src/nerdbank-gitversioning.npm/package.json @@ -36,9 +36,7 @@ "source-map": "^0.7.4", "typescript": "^5.0.4" }, - "dependencies": { - "change-case": "5.4.4" - }, + "dependencies": {}, "scripts": { "build": "gulp" } diff --git a/src/nerdbank-gitversioning.npm/ts/index.ts b/src/nerdbank-gitversioning.npm/ts/index.ts index e9de6edb2..21263a1c3 100644 --- a/src/nerdbank-gitversioning.npm/ts/index.ts +++ b/src/nerdbank-gitversioning.npm/ts/index.ts @@ -46,9 +46,9 @@ export async function getVersion(projectDirectory?: string, dotnetCommand?: stri var directResult = JSON.parse(versionText.stdout); var result = {}; - const { camelCase } = await import('change-case'); for (var field in directResult) { - result[camelCase(field)] = directResult[field]; + const camelCaseFieldName = field.charAt(0).toLowerCase() + field.slice(1); + result[camelCaseFieldName] = directResult[field]; } return result; diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index 9c79d8deb..8e746c776 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -297,11 +297,6 @@ chalk@^4.1.2: ansi-styles "^4.1.0" supports-color "^7.1.0" -change-case@5.4.4: - version "5.4.4" - resolved "https://registry.yarnpkg.com/change-case/-/change-case-5.4.4.tgz#0d52b507d8fb8f204343432381d1a6d7bff97a02" - integrity sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w== - chokidar@^3.5.3: version "3.6.0" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" From c9f9a1c1b7a46891d651898bbc77255ec1e7eb5e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Aug 2024 08:10:58 -0600 Subject: [PATCH 175/257] Bump Nerdbank.GitVersioning from 3.6.139 to 3.6.141 (#280) Bumps [Nerdbank.GitVersioning](https://github.com/dotnet/Nerdbank.GitVersioning) from 3.6.139 to 3.6.141. - [Release notes](https://github.com/dotnet/Nerdbank.GitVersioning/releases) - [Commits](https://github.com/dotnet/Nerdbank.GitVersioning/compare/v3.6.139...v3.6.141) --- updated-dependencies: - dependency-name: Nerdbank.GitVersioning dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index fe766e309..6448603af 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -13,7 +13,7 @@ - + From 90af89a2980f9937a6704278cc8d183df020f88a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Aug 2024 08:11:06 -0600 Subject: [PATCH 176/257] Bump nbgv from 3.6.139 to 3.6.141 (#279) Bumps [nbgv](https://github.com/dotnet/Nerdbank.GitVersioning) from 3.6.139 to 3.6.141. - [Release notes](https://github.com/dotnet/Nerdbank.GitVersioning/releases) - [Commits](https://github.com/dotnet/Nerdbank.GitVersioning/compare/v3.6.139...v3.6.141) --- updated-dependencies: - dependency-name: nbgv dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 5d2f7feb1..698c09522 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "nbgv": { - "version": "3.6.139", + "version": "3.6.141", "commands": [ "nbgv" ] From 2bfe7d89152cd5e064eb148a6d06561505ea36b3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 12 Aug 2024 08:11:13 -0600 Subject: [PATCH 177/257] Bump dotnet-coverage from 17.11.3 to 17.11.5 (#278) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.11.3 to 17.11.5. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 698c09522..a2befe6f5 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -9,7 +9,7 @@ ] }, "dotnet-coverage": { - "version": "17.11.3", + "version": "17.11.5", "commands": [ "dotnet-coverage" ] From d1114a7700c7e228699bafb35e7050aaafe017bd Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 14 Aug 2024 06:32:24 -0600 Subject: [PATCH 178/257] Bump .NET SDK to 8.0.400 --- .devcontainer/Dockerfile | 2 +- global.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 6ed7f6e71..b3336ca3e 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,5 +1,5 @@ # Refer to https://hub.docker.com/_/microsoft-dotnet-sdk for available versions -FROM mcr.microsoft.com/dotnet/sdk:8.0.300-jammy +FROM mcr.microsoft.com/dotnet/sdk:8.0.400-jammy # Installing mono makes `dotnet test` work without errors even for net472. # But installing it takes a long time, so it's excluded by default. diff --git a/global.json b/global.json index c83e939e8..c262ff102 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "8.0.300", + "version": "8.0.400", "rollForward": "patch", "allowPrerelease": false } From 272e1efcf35b0e10fddcd3248b3e1fc06acb733a Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 15 Aug 2024 07:48:51 -0600 Subject: [PATCH 179/257] Post code coverage diff comments for AzDO PRs --- azurepipelines-coverage.yml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 azurepipelines-coverage.yml diff --git a/azurepipelines-coverage.yml b/azurepipelines-coverage.yml new file mode 100644 index 000000000..0cd5dad36 --- /dev/null +++ b/azurepipelines-coverage.yml @@ -0,0 +1,6 @@ +# https://learn.microsoft.com/azure/devops/pipelines/test/codecoverage-for-pullrequests?view=azure-devops +coverage: + status: + comments: on # add comment to PRs reporting diff in coverage of modified files + diff: # diff coverage is code coverage only for the lines changed in a pull request. + target: 70% # set this to a desired %. Default is 70% From 63bb827db35e2ae88e4b0e927807c9580556aadd Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 22 Aug 2024 09:19:09 -0600 Subject: [PATCH 180/257] Bump Microsoft.NET.Test.Sdk to 17.11 --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 6448603af..b04f105d5 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,7 +6,7 @@ true - + From 3b364b0011d3a35fb9fd25edbadf00e6dfebb16a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 26 Aug 2024 16:32:53 -0600 Subject: [PATCH 181/257] Bump powershell from 7.4.4 to 7.4.5 (#282) Bumps [powershell](https://github.com/PowerShell/PowerShell) from 7.4.4 to 7.4.5. - [Release notes](https://github.com/PowerShell/PowerShell/releases) - [Commits](https://github.com/PowerShell/PowerShell/compare/v7.4.4...v7.4.5) --- updated-dependencies: - dependency-name: powershell dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index a2befe6f5..631aec92d 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "powershell": { - "version": "7.4.4", + "version": "7.4.5", "commands": [ "pwsh" ] From 2bda7b9204570eb72fa6a3df71b19bd091978b92 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Sep 2024 09:23:41 -0600 Subject: [PATCH 182/257] Bump Nerdbank.GitVersioning from 3.6.141 to 3.6.143 (#283) Bumps [Nerdbank.GitVersioning](https://github.com/dotnet/Nerdbank.GitVersioning) from 3.6.141 to 3.6.143. - [Release notes](https://github.com/dotnet/Nerdbank.GitVersioning/releases) - [Commits](https://github.com/dotnet/Nerdbank.GitVersioning/compare/v3.6.141...v3.6.143) --- updated-dependencies: - dependency-name: Nerdbank.GitVersioning dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index b04f105d5..a17b1c505 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -13,7 +13,7 @@ - + From bc86c6082b926fb9dd21ae87e007f90ae02903b2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Sep 2024 09:23:47 -0600 Subject: [PATCH 183/257] Bump nbgv from 3.6.141 to 3.6.143 (#284) Bumps [nbgv](https://github.com/dotnet/Nerdbank.GitVersioning) from 3.6.141 to 3.6.143. - [Release notes](https://github.com/dotnet/Nerdbank.GitVersioning/releases) - [Commits](https://github.com/dotnet/Nerdbank.GitVersioning/compare/v3.6.141...v3.6.143) --- updated-dependencies: - dependency-name: nbgv dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 631aec92d..9980bdbd7 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "nbgv": { - "version": "3.6.141", + "version": "3.6.143", "commands": [ "nbgv" ] From 93702f097e1c39037fef5a68898aceb023edc0a1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Sep 2024 09:23:54 -0600 Subject: [PATCH 184/257] Bump dotnet-coverage from 17.11.5 to 17.12.2 (#285) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.11.5 to 17.12.2. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 9980bdbd7..a9c260e72 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -9,7 +9,7 @@ ] }, "dotnet-coverage": { - "version": "17.11.5", + "version": "17.12.2", "commands": [ "dotnet-coverage" ] From 1acabb8bb7147d70823824fc83edb316daff094d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Sep 2024 09:20:42 -0600 Subject: [PATCH 185/257] Bump dotnet-coverage from 17.12.2 to 17.12.3 (#288) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.12.2 to 17.12.3. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index a9c260e72..365653b34 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -9,7 +9,7 @@ ] }, "dotnet-coverage": { - "version": "17.12.2", + "version": "17.12.3", "commands": [ "dotnet-coverage" ] From 142450a27d32b77f310f667c236ce2f9537598bc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Sep 2024 09:20:51 -0600 Subject: [PATCH 186/257] Bump Microsoft.NET.Test.Sdk from 17.11.0 to 17.11.1 (#287) Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.11.0 to 17.11.1. - [Release notes](https://github.com/microsoft/vstest/releases) - [Changelog](https://github.com/microsoft/vstest/blob/main/docs/releases.md) - [Commits](https://github.com/microsoft/vstest/compare/v17.11.0...v17.11.1) --- updated-dependencies: - dependency-name: Microsoft.NET.Test.Sdk dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index a17b1c505..f72476cbc 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,7 +6,7 @@ true - + From 39e808500175a90ffae1d199a2d22ba11bba0019 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 12 Sep 2024 05:45:16 -0600 Subject: [PATCH 187/257] Bump micromatch from 4.0.7 to 4.0.8 in /src/nerdbank-gitversioning.npm (#1093) Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.7 to 4.0.8. - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/4.0.7...4.0.8) --- updated-dependencies: - dependency-name: micromatch dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/nerdbank-gitversioning.npm/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index 8e746c776..92b33a07b 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -1431,9 +1431,9 @@ merge2@^1.3.0, merge2@^1.4.1: integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== micromatch@^4.0.4: - version "4.0.7" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.7.tgz#33e8190d9fe474a9895525f5618eee136d46c2e5" - integrity sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q== + version "4.0.8" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" + integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== dependencies: braces "^3.0.3" picomatch "^2.3.1" From bc15bdf24bd9d99550bd309a532c7d98fe255f2d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Sep 2024 13:39:28 -0600 Subject: [PATCH 188/257] Bump dotnet-coverage from 17.12.3 to 17.12.4 (#289) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.12.3 to 17.12.4. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 365653b34..32cfa2a45 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -9,7 +9,7 @@ ] }, "dotnet-coverage": { - "version": "17.12.3", + "version": "17.12.4", "commands": [ "dotnet-coverage" ] From f64e10ed3c1cbbaf97fbc16c06ffaaa2f22fa1c8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Sep 2024 08:14:41 -0600 Subject: [PATCH 189/257] Bump xunit from 2.9.0 to 2.9.1 (#290) Bumps [xunit](https://github.com/xunit/xunit) from 2.9.0 to 2.9.1. - [Commits](https://github.com/xunit/xunit/compare/2.9.0...2.9.1) --- updated-dependencies: - dependency-name: xunit dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index f72476cbc..f17fbbb4f 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -8,7 +8,7 @@ - + From 92ba42053f179945918bc0f6bd59e0f759dc17cf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Sep 2024 08:43:58 -0600 Subject: [PATCH 190/257] Bump dotnet-coverage from 17.12.4 to 17.12.5 (#292) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.12.4 to 17.12.5. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 32cfa2a45..b57f73a56 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -9,7 +9,7 @@ ] }, "dotnet-coverage": { - "version": "17.12.4", + "version": "17.12.5", "commands": [ "dotnet-coverage" ] From 8d860195204f9555ccaa888d12242333a1331de7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Sep 2024 08:44:08 -0600 Subject: [PATCH 191/257] Bump xunit from 2.9.1 to 2.9.2 (#291) Bumps [xunit](https://github.com/xunit/xunit) from 2.9.1 to 2.9.2. - [Commits](https://github.com/xunit/xunit/compare/v2-2.9.1...v2-2.9.2) --- updated-dependencies: - dependency-name: xunit dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index f17fbbb4f..adb03b1d3 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -8,7 +8,7 @@ - + From 13cd0fef045441358109d0729c6dd73ed607de26 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 1 Oct 2024 12:53:16 -0600 Subject: [PATCH 192/257] Build on ubuntu 22 in cloud builds --- .github/workflows/build.yml | 2 +- azure-pipelines/build.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index cdf4ac963..015f4214c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -21,7 +21,7 @@ jobs: fail-fast: false matrix: os: - - ubuntu-20.04 + - ubuntu-22.04 - macos-latest - windows-latest diff --git a/azure-pipelines/build.yml b/azure-pipelines/build.yml index 3d53ed836..23849527e 100644 --- a/azure-pipelines/build.yml +++ b/azure-pipelines/build.yml @@ -28,7 +28,7 @@ jobs: - job: Linux pool: - vmImage: Ubuntu 20.04 + vmImage: Ubuntu 22.04 steps: - checkout: self fetchDepth: 0 # avoid shallow clone so nbgv can do its work. From c582c87d9f1e9ec9764d0a65893d5b58b4152bdb Mon Sep 17 00:00:00 2001 From: Dmitry Zhelnin Date: Thu, 3 Oct 2024 16:14:57 +0300 Subject: [PATCH 193/257] ReleaseManager: do not reset VersionHeightOffset if equals to -1 --- src/NerdBank.GitVersioning/ReleaseManager.cs | 2 +- .../ReleaseManagerTests.cs | 38 +++++++++++++++++++ 2 files changed, 39 insertions(+), 1 deletion(-) diff --git a/src/NerdBank.GitVersioning/ReleaseManager.cs b/src/NerdBank.GitVersioning/ReleaseManager.cs index e937bc2d2..2b1ceb6a6 100644 --- a/src/NerdBank.GitVersioning/ReleaseManager.cs +++ b/src/NerdBank.GitVersioning/ReleaseManager.cs @@ -280,7 +280,7 @@ private void UpdateVersion(LibGit2Context context, SemanticVersion oldVersion, S if (!EqualityComparer.Default.Equals(versionOptions.Version, newVersion)) { - if (versionOptions.VersionHeightPosition.HasValue && SemanticVersion.WillVersionChangeResetVersionHeight(versionOptions.Version, newVersion, versionOptions.VersionHeightPosition.Value)) + if (versionOptions.VersionHeightOffset != -1 && versionOptions.VersionHeightPosition.HasValue && SemanticVersion.WillVersionChangeResetVersionHeight(versionOptions.Version, newVersion, versionOptions.VersionHeightPosition.Value)) { // The version will be reset by this change, so remove the version height offset property. versionOptions.VersionHeightOffset = null; diff --git a/test/Nerdbank.GitVersioning.Tests/ReleaseManagerTests.cs b/test/Nerdbank.GitVersioning.Tests/ReleaseManagerTests.cs index 0c170b81d..b00a1533d 100644 --- a/test/Nerdbank.GitVersioning.Tests/ReleaseManagerTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/ReleaseManagerTests.cs @@ -638,6 +638,44 @@ public void PrepareRelease_ResetsVersionHeightOffset() Assert.Equal(expectedReleaseVersionOptions, releaseVersion); } + [Fact] + public void PrepareRelease_DoesNotResetNegativeVersionHeightOffset() + { + // create and configure repository + this.InitializeSourceControl(); + + var initialVersionOptions = new VersionOptions + { + Version = SemanticVersion.Parse("1.0-beta"), + VersionHeightOffset = -1, + }; + + var expectedReleaseVersionOptions = new VersionOptions + { + Version = SemanticVersion.Parse("1.0"), + VersionHeightOffset = -1, + }; + + var expectedMainVersionOptions = new VersionOptions + { + Version = SemanticVersion.Parse("1.1-alpha"), + VersionHeightOffset = -1, + }; + + // create version.json + this.WriteVersionFile(initialVersionOptions); + + var releaseManager = new ReleaseManager(); + releaseManager.PrepareRelease(this.RepoPath); + + this.SetContextToHead(); + VersionOptions newVersion = this.Context.VersionFile.GetVersion(); + Assert.Equal(expectedMainVersionOptions, newVersion); + + VersionOptions releaseVersion = this.GetVersionOptions(committish: this.LibGit2Repository.Branches["v1.0"].Tip.Sha); + Assert.Equal(expectedReleaseVersionOptions, releaseVersion); + } + [Theory] [InlineData("1.0-beta", "{0} Custom commit message pattern", "1.0 Custom commit message pattern")] [InlineData("1.0-beta", "Custom commit message pattern - {0} custom message", "Custom commit message pattern - 1.0 custom message")] From b45a287d2914c039e2820dbf9252723f4e2c91e9 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 30 Sep 2024 17:01:49 -0600 Subject: [PATCH 194/257] Add AzDO pipeline to help keep repos up-to-date --- azure-pipelines/Get-LibTemplateBasis.ps1 | 25 ++++ azure-pipelines/libtemplate-update.yml | 146 +++++++++++++++++++++++ tools/MergeFrom-Template.ps1 | 79 ++++++++++++ 3 files changed, 250 insertions(+) create mode 100644 azure-pipelines/Get-LibTemplateBasis.ps1 create mode 100644 azure-pipelines/libtemplate-update.yml create mode 100644 tools/MergeFrom-Template.ps1 diff --git a/azure-pipelines/Get-LibTemplateBasis.ps1 b/azure-pipelines/Get-LibTemplateBasis.ps1 new file mode 100644 index 000000000..2181c77b6 --- /dev/null +++ b/azure-pipelines/Get-LibTemplateBasis.ps1 @@ -0,0 +1,25 @@ +<# +.SYNOPSIS + Returns the name of the well-known branch in the Library.Template repository upon which HEAD is based. +#> +[CmdletBinding(SupportsShouldProcess = $true)] +Param( + [switch]$ErrorIfNotRelated +) + +# This list should be sorted in order of decreasing specificity. +$branchMarkers = @( + @{ commit = 'fd0a7b25ccf030bbd16880cca6efe009d5b1fffc'; branch = 'microbuild' }; + @{ commit = '05f49ce799c1f9cc696d53eea89699d80f59f833'; branch = 'main' }; +) + +foreach ($entry in $branchMarkers) { + if (git rev-list HEAD | Select-String -Pattern $entry.commit) { + return $entry.branch + } +} + +if ($ErrorIfNotRelated) { + Write-Error "Library.Template has not been previously merged with this repo. Please review https://github.com/AArnott/Library.Template/tree/main?tab=readme-ov-file#readme for instructions." + exit 1 +} diff --git a/azure-pipelines/libtemplate-update.yml b/azure-pipelines/libtemplate-update.yml new file mode 100644 index 000000000..87302b067 --- /dev/null +++ b/azure-pipelines/libtemplate-update.yml @@ -0,0 +1,146 @@ +# This pipeline schedules regular merges of Library.Template into a repo that is based on it. +# Only Azure Repos are supported. GitHub support comes via a GitHub Actions workflow. + +trigger: none +pr: none +schedules: +- cron: "0 3 * * Mon" # Sun @ 8 or 9 PM Mountain Time (depending on DST) + displayName: Weekly trigger + branches: + include: + - main + always: true + +parameters: +- name: AutoComplete + displayName: Auto-complete pull request + type: boolean + default: false + +stages: +- stage: Merge + jobs: + - job: merge + pool: + vmImage: ubuntu-latest + steps: + - checkout: self + fetchDepth: 0 + clean: true + - pwsh: | + $LibTemplateBranch = & ./azure-pipelines/Get-LibTemplateBasis.ps1 -ErrorIfNotRelated + if ($LASTEXITCODE -ne 0) { + exit $LASTEXITCODE + } + + git fetch https://github.com/aarnott/Library.Template $LibTemplateBranch + if ($LASTEXITCODE -ne 0) { + exit $LASTEXITCODE + } + $LibTemplateCommit = git rev-parse FETCH_HEAD + + if ((git rev-list FETCH_HEAD ^HEAD --count) -eq 0) { + Write-Host "There are no Library.Template updates to merge." + exit 0 + } + + $UpdateBranchName = 'auto/libtemplateUpdate' + git -c http.extraheader="AUTHORIZATION: bearer $(System.AccessToken)" push origin -f FETCH_HEAD:refs/heads/$UpdateBranchName + + Write-Host "Creating pull request" + $contentType = 'application/json'; + $headers = @{ Authorization = 'Bearer $(System.AccessToken)' }; + $rawRequest = @{ + sourceRefName = "refs/heads/$UpdateBranchName"; + targetRefName = "refs/heads/main"; + title = 'Merge latest Library.Template'; + description = "This merges the latest features and fixes from [Library.Template's $LibTemplateBranch branch](https://github.com/AArnott/Library.Template/tree/$LibTemplateBranch)."; + } + $request = ConvertTo-Json $rawRequest + + $prApiBaseUri = '$(System.TeamFoundationCollectionUri)/$(System.TeamProject)/_apis/git/repositories/$(Build.Repository.ID)/pullrequests' + $prCreationUri = $prApiBaseUri + "?api-version=6.0" + Write-Host "POST $prCreationUri" + Write-Host $request + + $prCreationResult = Invoke-RestMethod -uri $prCreationUri -method POST -Headers $headers -ContentType $contentType -Body $request + $prUrl = "$($prCreationResult.repository.webUrl)/pullrequest/$($prCreationResult.pullRequestId)" + Write-Host "Pull request: $prUrl" + $prApiBaseUri += "/$($prCreationResult.pullRequestId)" + + $SummaryPath = Join-Path '$(Agent.TempDirectory)' 'summary.md' + Set-Content -Path $SummaryPath -Value "[Insertion pull request]($prUrl)" + Write-Host "##vso[task.uploadsummary]$SummaryPath" + + # Tag the PR + $tagUri = "$prApiBaseUri/labels?api-version=7.0" + $rawRequest = @{ + name = 'auto-template-merge'; + } + $request = ConvertTo-Json $rawRequest + Invoke-RestMethod -uri $tagUri -method POST -Headers $headers -ContentType $contentType -Body $request | Out-Null + + # Add properties to the PR that we can programatically parse later. + Function Set-PRProperties($properties) { + $rawRequest = $properties.GetEnumerator() |% { + @{ + op = 'add' + path = "/$($_.key)" + from = $null + value = $_.value + } + } + $request = ConvertTo-Json $rawRequest + $setPrPropertyUri = "$prApiBaseUri/properties?api-version=7.0" + Write-Debug "$request" + $setPrPropertyResult = Invoke-RestMethod -uri $setPrPropertyUri -method PATCH -Headers $headers -ContentType 'application/json-patch+json' -Body $request -StatusCodeVariable setPrPropertyStatus -SkipHttpErrorCheck + if ($setPrPropertyStatus -ne 200) { + Write-Host "##vso[task.logissue type=warning]Failed to set pull request properties. Result: $setPrPropertyStatus. $($setPrPropertyResult.message)" + } + } + Write-Host "Setting pull request properties" + Set-PRProperties @{ + 'AutomatedMerge.SourceBranch' = $LibTemplateBranch + 'AutomatedMerge.SourceCommit' = $LibTemplateCommit + } + + # Add an *active* PR comment to warn users to *merge* the pull request instead of squash it. + $request = ConvertTo-Json @{ + comments = @( + @{ + parentCommentId = 0 + content = "Do **not** squash this pull request when completing it. You must *merge* it." + commentType = 'system' + } + ) + status = 'active' + } + $result = Invoke-RestMethod -uri "$prApiBaseUri/threads?api-version=7.1" -method POST -Headers $headers -ContentType $contentType -Body $request -StatusCodeVariable addCommentStatus -SkipHttpErrorCheck + if ($addCommentStatus -ne 200) { + Write-Host "##vso[task.logissue type=warning]Failed to post comment on pull request. Result: $addCommentStatus. $($result.message)" + } + + # Set auto-complete on the PR + if ('${{ parameters.AutoComplete }}' -eq 'True') { + Write-Host "Setting auto-complete" + $mergeMessage = "Merged PR $($prCreationResult.pullRequestId): " + $commitMessage + $rawRequest = @{ + autoCompleteSetBy = @{ + id = $prCreationResult.createdBy.id + }; + completionOptions = @{ + deleteSourceBranch = $true; + mergeCommitMessage = $mergeMessage; + mergeStrategy = 'noFastForward'; + }; + } + $request = ConvertTo-Json $rawRequest + Write-Host $request + $uri = "$($prApiBaseUri)?api-version=6.0" + $result = Invoke-RestMethod -uri $uri -method PATCH -Headers $headers -ContentType $contentType -Body $request -StatusCodeVariable autoCompleteStatus -SkipHttpErrorCheck + if ($autoCompleteStatus -ne 200) { + Write-Host "##vso[task.logissue type=warning]Failed to set auto-complete on pull request. Result: $autoCompleteStatus. $($result.message)" + } + } + + displayName: Create pull request diff --git a/tools/MergeFrom-Template.ps1 b/tools/MergeFrom-Template.ps1 new file mode 100644 index 000000000..c0d13dda9 --- /dev/null +++ b/tools/MergeFrom-Template.ps1 @@ -0,0 +1,79 @@ + +<# +.SYNOPSIS + Merges the latest changes from Library.Template into HEAD of this repo. +.PARAMETER LocalBranch + The name of the local branch to create at HEAD and use to merge into from Library.Template. +#> +[CmdletBinding(SupportsShouldProcess = $true)] +Param( + [string]$LocalBranch = "dev/$($env:USERNAME)/libtemplateUpdate" +) + +Function Spawn-Tool($command, $commandArgs, $workingDirectory, $allowFailures) { + if ($workingDirectory) { + Push-Location $workingDirectory + } + try { + if ($env:TF_BUILD) { + Write-Host "$pwd >" + Write-Host "##[command]$command $commandArgs" + } + else { + Write-Host "$command $commandArgs" -ForegroundColor Yellow + } + if ($commandArgs) { + & $command @commandArgs + } else { + Invoke-Expression $command + } + if ((!$allowFailures) -and ($LASTEXITCODE -ne 0)) { exit $LASTEXITCODE } + } + finally { + if ($workingDirectory) { + Pop-Location + } + } +} + +$remoteBranch = & $PSScriptRoot\..\azure-pipelines\Get-LibTemplateBasis.ps1 -ErrorIfNotRelated +if ($LASTEXITCODE -ne 0) { + exit $LASTEXITCODE +} + +$LibTemplateUrl = 'https://github.com/aarnott/Library.Template' +Spawn-Tool 'git' ('fetch', $LibTemplateUrl, $remoteBranch) +$SourceCommit = git rev-parse FETCH_HEAD +$BaseBranch = Spawn-Tool 'git' ('branch', '--show-current') +$SourceCommitUrl = "$LibTemplateUrl/commit/$SourceCommit" + +# To reduce the odds of merge conflicts at this stage, we always move HEAD to the last successful merge. +$basis = Spawn-Tool 'git' ('rev-parse', 'HEAD') # TODO: consider improving this later + +Write-Host "Merging the $remoteBranch branch of Library.Template ($SourceCommit) into local repo $basis" -ForegroundColor Green + +Spawn-Tool 'git' ('checkout', '-b', $LocalBranch, $basis) $null $true +if ($LASTEXITCODE -eq 128) { + Spawn-Tool 'git' ('checkout', $LocalBranch) + Spawn-Tool 'git' ('merge', $basis) +} + +Spawn-Tool 'git' ('merge', 'FETCH_HEAD', '--no-ff', '-m', "Merge the $remoteBranch branch from $LibTemplateUrl`n`nSpecifically, this merges [$SourceCommit from that repo]($SourceCommitUrl).") +if ($LASTEXITCODE -eq 1) { + Write-Error "Merge conflict detected. Manual resolution required." + exit 1 +} +elseif ($LASTEXITCODE -ne 0) { + Write-Error "Merge failed with exit code $LASTEXITCODE." + exit $LASTEXITCODE +} + +$result = New-Object PSObject -Property @{ + BaseBranch = $BaseBranch # The original branch that was checked out when the script ran. + LocalBranch = $LocalBranch # The name of the local branch that was created before the merge. + SourceCommit = $SourceCommit # The commit from Library.Template that was merged in. + SourceBranch = $remoteBranch # The branch from Library.Template that was merged in. +} + +Write-Host $result +Write-Output $result From b230d93f0c0f6e2c9340fcc9e0ea6668863b8522 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Thu, 3 Oct 2024 21:30:51 -0600 Subject: [PATCH 195/257] Bump .NET SDK to 8.0.402 --- .devcontainer/Dockerfile | 2 +- global.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index b3336ca3e..9626b31b5 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,5 +1,5 @@ # Refer to https://hub.docker.com/_/microsoft-dotnet-sdk for available versions -FROM mcr.microsoft.com/dotnet/sdk:8.0.400-jammy +FROM mcr.microsoft.com/dotnet/sdk:8.0.402-jammy # Installing mono makes `dotnet test` work without errors even for net472. # But installing it takes a long time, so it's excluded by default. diff --git a/global.json b/global.json index c262ff102..1f0eafb45 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "8.0.400", + "version": "8.0.402", "rollForward": "patch", "allowPrerelease": false } From 822a17acf87167064d892cb860526752341da2ed Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 4 Oct 2024 05:43:43 -0600 Subject: [PATCH 196/257] Fix linux agent on AzDO --- azure-pipelines/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azure-pipelines/build.yml b/azure-pipelines/build.yml index 23849527e..dbf81b722 100644 --- a/azure-pipelines/build.yml +++ b/azure-pipelines/build.yml @@ -28,7 +28,7 @@ jobs: - job: Linux pool: - vmImage: Ubuntu 22.04 + vmImage: Ubuntu-22.04 steps: - checkout: self fetchDepth: 0 # avoid shallow clone so nbgv can do its work. From adc4a246070c3c6b9e92b3200050d8f2274a43b7 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 4 Oct 2024 05:46:54 -0600 Subject: [PATCH 197/257] Update build agent to macos-14 Also pin the Windows agent version. --- .github/workflows/build.yml | 4 ++-- azure-pipelines/build.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 015f4214c..686628959 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -22,8 +22,8 @@ jobs: matrix: os: - ubuntu-22.04 - - macos-latest - - windows-latest + - macos-14 + - windows-2022 steps: - uses: actions/checkout@v4 diff --git a/azure-pipelines/build.yml b/azure-pipelines/build.yml index dbf81b722..108258282 100644 --- a/azure-pipelines/build.yml +++ b/azure-pipelines/build.yml @@ -44,7 +44,7 @@ jobs: - job: macOS condition: ${{ parameters.includeMacOS }} pool: - vmImage: macOS-12 + vmImage: macOS-14 steps: - checkout: self fetchDepth: 0 # avoid shallow clone so nbgv can do its work. From 04bacf28acc40db9db57c58ad25641e887db4b5d Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 9 Oct 2024 10:46:51 -0600 Subject: [PATCH 198/257] Bump System.Text.Json to 8.0.5 --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 09189c842..6cf95c75e 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -34,7 +34,7 @@ - + From af29d73db052a95eab3ec2eac4eba40b9a9b0d01 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 9 Oct 2024 10:50:31 -0600 Subject: [PATCH 199/257] Fix SDK version references --- azure-pipelines.yml | 4 ++-- azure-pipelines/build.yml | 2 +- test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 566d4c147..34378ca36 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -119,10 +119,10 @@ stages: clean: true submodules: true # keep the warnings quiet about the wiki not being enlisted - task: UseDotNet@2 - displayName: Install .NET 8.0.300 SDK + displayName: Install .NET 8.0.402 SDK inputs: packageType: sdk - version: 8.0.300 + version: 8.0.402 - script: dotnet --info displayName: Show dotnet SDK info - bash: | diff --git a/azure-pipelines/build.yml b/azure-pipelines/build.yml index 741b0748d..89d61f138 100644 --- a/azure-pipelines/build.yml +++ b/azure-pipelines/build.yml @@ -23,7 +23,7 @@ jobs: - template: install-dependencies.yml - pwsh: | Invoke-WebRequest -Uri "https://dot.net/v1/dotnet-install.ps1" -OutFile dotnet-install.ps1 - & .\dotnet-install.ps1 -Architecture x86 -Version 8.0.300 -InstallDir "C:\Program Files (x86)\dotnet\" -NoPath -Verbose + & .\dotnet-install.ps1 -Architecture x86 -Version 8.0.402 -InstallDir "C:\Program Files (x86)\dotnet\" -NoPath -Verbose displayName: ⚙ Install 32-bit .NET SDK and runtimes - template: dotnet.yml diff --git a/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs b/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs index a4652d16d..c8e11fa5f 100644 --- a/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs +++ b/test/Nerdbank.GitVersioning.Tests/MSBuildExtensions.cs @@ -25,7 +25,7 @@ internal static void LoadMSBuild() if (IntPtr.Size == 4) { // 32-bit .NET runtime requires special code to find the x86 SDK (where MSBuild is). - MSBuildLocator.RegisterMSBuildPath(@"C:\Program Files (x86)\dotnet\sdk\8.0.300"); + MSBuildLocator.RegisterMSBuildPath(@"C:\Program Files (x86)\dotnet\sdk\8.0.402"); } else { From c384a4cccabd3274b6c56663441cbfad763467e6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 9 Oct 2024 11:14:48 -0600 Subject: [PATCH 200/257] Bump NuGet.PackageManagement from 6.9.1 to 6.11.0 (#1087) Bumps [NuGet.PackageManagement](https://github.com/NuGet/NuGet.Client) from 6.9.1 to 6.11.0. - [Release notes](https://github.com/NuGet/NuGet.Client/releases) - [Commits](https://github.com/NuGet/NuGet.Client/commits) --- updated-dependencies: - dependency-name: NuGet.PackageManagement dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 6cf95c75e..882b699e4 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -29,7 +29,7 @@ - + From c0cec9d635f72bd7b0b5a5e6ced928afe5d4bb84 Mon Sep 17 00:00:00 2001 From: Dmitry Zhelnin Date: Thu, 10 Oct 2024 00:13:09 +0300 Subject: [PATCH 201/257] fix GitCommitDate being author date rather than commit date --- .../DisabledGit/DisabledGitContext.cs | 2 + src/NerdBank.GitVersioning/GitContext.cs | 5 +++ .../LibGit2/LibGit2Context.cs | 5 ++- .../Managed/ManagedGitContext.cs | 5 ++- .../ManagedGit/GitCommit.cs | 5 +++ .../ManagedGit/GitCommitReader.cs | 43 +++++++++++++++---- .../ManagedGit/GitRepository.cs | 4 +- .../NoGit/NoGitContext.cs | 2 + src/NerdBank.GitVersioning/VersionOracle.cs | 5 +++ .../AssemblyVersionInfo.cs | 7 +++ .../GetBuildVersion.cs | 9 ++++ .../build/Nerdbank.GitVersioning.targets | 1 + .../BuildIntegrationTests.cs | 5 ++- .../ManagedGit/GitCommitReaderTests.cs | 6 ++- ...t-4497b0eaaa89abf0e6d70961ad5f04fd3a49cbc6 | 2 +- ...t-d56dc3ed179053abef2097d1120b4507769bcf1a | 2 +- 16 files changed, 91 insertions(+), 17 deletions(-) diff --git a/src/NerdBank.GitVersioning/DisabledGit/DisabledGitContext.cs b/src/NerdBank.GitVersioning/DisabledGit/DisabledGitContext.cs index 0b9c5ca6e..df6576c68 100644 --- a/src/NerdBank.GitVersioning/DisabledGit/DisabledGitContext.cs +++ b/src/NerdBank.GitVersioning/DisabledGit/DisabledGitContext.cs @@ -24,6 +24,8 @@ public DisabledGitContext(string workingTreePath) public override DateTimeOffset? GitCommitDate => null; + public override DateTimeOffset? GitCommitAuthorDate => null; + public override string? HeadCanonicalName => null; public override IReadOnlyCollection? HeadTags => null; diff --git a/src/NerdBank.GitVersioning/GitContext.cs b/src/NerdBank.GitVersioning/GitContext.cs index e7d30c1ae..4db82865b 100644 --- a/src/NerdBank.GitVersioning/GitContext.cs +++ b/src/NerdBank.GitVersioning/GitContext.cs @@ -113,6 +113,11 @@ public string RepoRelativeProjectDirectory /// public abstract DateTimeOffset? GitCommitDate { get; } + /// + /// Gets the date that the commit identified by was authored. + /// + public abstract DateTimeOffset? GitCommitAuthorDate { get; } + /// /// Gets the canonical name for HEAD's position (e.g. refs/heads/main). /// diff --git a/src/NerdBank.GitVersioning/LibGit2/LibGit2Context.cs b/src/NerdBank.GitVersioning/LibGit2/LibGit2Context.cs index 00294c7d5..684c9a2e3 100644 --- a/src/NerdBank.GitVersioning/LibGit2/LibGit2Context.cs +++ b/src/NerdBank.GitVersioning/LibGit2/LibGit2Context.cs @@ -51,7 +51,10 @@ internal LibGit2Context(string workingTreeDirectory, string dotGitPath, string? public override bool IsHead => this.Repository.Head?.Tip?.Equals(this.Commit) ?? false; /// - public override DateTimeOffset? GitCommitDate => this.Commit?.Author.When; + public override DateTimeOffset? GitCommitDate => this.Commit?.Committer.When; + + /// + public override DateTimeOffset? GitCommitAuthorDate => this.Commit?.Author.When; /// public override string HeadCanonicalName => this.Repository.Head.CanonicalName; diff --git a/src/NerdBank.GitVersioning/Managed/ManagedGitContext.cs b/src/NerdBank.GitVersioning/Managed/ManagedGitContext.cs index b21977995..2fc987a57 100644 --- a/src/NerdBank.GitVersioning/Managed/ManagedGitContext.cs +++ b/src/NerdBank.GitVersioning/Managed/ManagedGitContext.cs @@ -53,7 +53,10 @@ internal ManagedGitContext(string workingDirectory, string dotGitPath, string? c public override bool IsHead => this.Repository.GetHeadCommit().Equals(this.Commit); /// - public override DateTimeOffset? GitCommitDate => this.Commit is { } commit ? (commit.Author?.Date ?? this.Repository.GetCommit(commit.Sha, readAuthor: true).Author?.Date) : null; + public override DateTimeOffset? GitCommitDate => this.Commit is { } commit ? (commit.Committer?.Date ?? this.Repository.GetCommit(commit.Sha, readAuthor: true).Committer?.Date) : null; + + /// + public override DateTimeOffset? GitCommitAuthorDate => this.Commit is { } commit ? (commit.Author?.Date ?? this.Repository.GetCommit(commit.Sha, readAuthor: true).Author?.Date) : null; /// public override string HeadCanonicalName => this.Repository.GetHeadAsReferenceOrSha().ToString() ?? throw new InvalidOperationException("Unable to determine the HEAD position."); diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitCommit.cs b/src/NerdBank.GitVersioning/ManagedGit/GitCommit.cs index 2e01be1db..35df39476 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitCommit.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitCommit.cs @@ -48,6 +48,11 @@ public struct GitCommit : IEquatable /// public GitSignature? Author { get; set; } + /// + /// Gets or sets the committer of this commit. + /// + public GitSignature? Committer { get; set; } + public static bool operator ==(GitCommit left, GitCommit right) { return Equals(left, right); diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitCommitReader.cs b/src/NerdBank.GitVersioning/ManagedGit/GitCommitReader.cs index a59ced3b9..6d9b4cdf6 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitCommitReader.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitCommitReader.cs @@ -19,6 +19,7 @@ public static class GitCommitReader private static readonly byte[] TreeStart = GitRepository.Encoding.GetBytes("tree "); private static readonly byte[] ParentStart = GitRepository.Encoding.GetBytes("parent "); private static readonly byte[] AuthorStart = GitRepository.Encoding.GetBytes("author "); + private static readonly byte[] CommitterStart = GitRepository.Encoding.GetBytes("committer "); /// /// Reads a object from a . @@ -30,7 +31,7 @@ public static class GitCommitReader /// The of the commit. /// /// - /// A value indicating whether to populate the field. + /// A value indicating whether to populate the and fields. /// /// /// The . @@ -67,7 +68,7 @@ public static GitCommit Read(Stream stream, GitObjectId sha, bool readAuthor = f /// The of the commit. /// /// - /// A value indicating whether to populate the field. + /// A value indicating whether to populate the and fields. /// /// /// The . @@ -102,11 +103,22 @@ public static GitCommit Read(ReadOnlySpan commit, GitObjectId sha, bool re buffer = buffer.Slice(ParentLineLength); } - GitSignature signature = default; + GitSignature author = default; + GitSignature committer = default; - if (readAuthor && !TryReadAuthor(buffer, out signature)) + if (readAuthor) { - throw new GitException(); + if (!TryReadAuthor(buffer, out author, out int lineLength)) + { + throw new GitException(); + } + + buffer = buffer.Slice(lineLength); + + if (!TryReadCommitter(buffer, out committer)) + { + throw new GitException(); + } } return new GitCommit() @@ -116,7 +128,8 @@ public static GitCommit Read(ReadOnlySpan commit, GitObjectId sha, bool re SecondParent = secondParent, AdditionalParents = additionalParents, Tree = tree, - Author = readAuthor ? signature : null, + Author = readAuthor ? author : null, + Committer = readAuthor ? committer : null, }; } @@ -153,16 +166,27 @@ private static bool TryReadParent(ReadOnlySpan line, out GitObjectId paren return true; } - private static bool TryReadAuthor(ReadOnlySpan line, out GitSignature signature) + private static bool TryReadAuthor(ReadOnlySpan line, out GitSignature signature, out int lineLength) + { + return TryReadSignature(line, AuthorStart, out signature, out lineLength); + } + + private static bool TryReadCommitter(ReadOnlySpan line, out GitSignature signature) + { + return TryReadSignature(line, CommitterStart, out signature, out _); + } + + private static bool TryReadSignature(ReadOnlySpan line, byte[] signatureStart, out GitSignature signature, out int lineLength) { signature = default; + lineLength = default; - if (!line.Slice(0, AuthorStart.Length).SequenceEqual(AuthorStart)) + if (!line.Slice(0, signatureStart.Length).SequenceEqual(signatureStart)) { return false; } - line = line.Slice(AuthorStart.Length); + line = line.Slice(signatureStart.Length); int emailStart = line.IndexOf((byte)'<'); int emailEnd = line.IndexOf((byte)'>'); @@ -179,6 +203,7 @@ private static bool TryReadAuthor(ReadOnlySpan line, out GitSignature sign long ticks = long.Parse(GitRepository.GetString(time.Slice(0, offsetStart))); signature.Date = DateTimeOffset.FromUnixTimeSeconds(ticks); + lineLength = signatureStart.Length + lineEnd + 1; return true; } } diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs b/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs index cb1ae6262..7d37f7150 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitRepository.cs @@ -296,7 +296,7 @@ public GitObjectId GetHeadCommitSha() /// Gets the current HEAD commit, if available. /// /// - /// A value indicating whether to populate the field. + /// A value indicating whether to populate the and fields. /// /// /// The current HEAD commit, or if not available. @@ -320,7 +320,7 @@ public GitObjectId GetHeadCommitSha() /// The Git object Id of the commit. /// /// - /// A value indicating whether to populate the field. + /// A value indicating whether to populate the and fields. /// /// /// The requested commit. diff --git a/src/NerdBank.GitVersioning/NoGit/NoGitContext.cs b/src/NerdBank.GitVersioning/NoGit/NoGitContext.cs index ab169d89d..24e861790 100644 --- a/src/NerdBank.GitVersioning/NoGit/NoGitContext.cs +++ b/src/NerdBank.GitVersioning/NoGit/NoGitContext.cs @@ -30,6 +30,8 @@ public NoGitContext(string workingTreePath) /// public override DateTimeOffset? GitCommitDate => null; + public override DateTimeOffset? GitCommitAuthorDate => null; + /// public override string? HeadCanonicalName => null; diff --git a/src/NerdBank.GitVersioning/VersionOracle.cs b/src/NerdBank.GitVersioning/VersionOracle.cs index d99944926..89157ee3c 100644 --- a/src/NerdBank.GitVersioning/VersionOracle.cs +++ b/src/NerdBank.GitVersioning/VersionOracle.cs @@ -265,6 +265,11 @@ public IEnumerable BuildMetadataWithCommitId /// public DateTimeOffset? GitCommitDate => this.context.GitCommitDate; + /// + /// Gets the Git revision control commit author date for HEAD (the current source code version). + /// + public DateTimeOffset? GitCommitAuthorDate => this.context.GitCommitAuthorDate; + /// /// Gets or sets the number of commits in the longest single path between /// the specified commit and the most distant ancestor (inclusive) diff --git a/src/Nerdbank.GitVersioning.Tasks/AssemblyVersionInfo.cs b/src/Nerdbank.GitVersioning.Tasks/AssemblyVersionInfo.cs index cf68c5b0c..28bb33201 100644 --- a/src/Nerdbank.GitVersioning.Tasks/AssemblyVersionInfo.cs +++ b/src/Nerdbank.GitVersioning.Tasks/AssemblyVersionInfo.cs @@ -91,6 +91,8 @@ the code is regenerated. public string GitCommitDateTicks { get; set; } + public string GitCommitAuthorDateTicks { get; set; } + public bool EmitThisAssemblyClass { get; set; } = true; /// @@ -440,6 +442,11 @@ private void GenerateAssemblyAttributes() fields.Add("GitCommitDate", (new DateTime(gitCommitDateTicks, DateTimeKind.Utc), true)); } + if (long.TryParse(this.GitCommitAuthorDateTicks, out long gitCommitAuthorDateTicks)) + { + fields.Add("GitCommitAuthorDate", (new DateTime(gitCommitAuthorDateTicks, DateTimeKind.Utc), true)); + } + if (this.AdditionalThisAssemblyFields is object) { foreach (ITaskItem item in this.AdditionalThisAssemblyFields) diff --git a/src/Nerdbank.GitVersioning.Tasks/GetBuildVersion.cs b/src/Nerdbank.GitVersioning.Tasks/GetBuildVersion.cs index f38aeb252..2a5113b69 100644 --- a/src/Nerdbank.GitVersioning.Tasks/GetBuildVersion.cs +++ b/src/Nerdbank.GitVersioning.Tasks/GetBuildVersion.cs @@ -165,6 +165,13 @@ public GetBuildVersion() [Output] public string GitCommitDateTicks { get; private set; } + /// + /// Gets the Git revision control commit author date for HEAD (the current source code version), expressed as the number of 100-nanosecond + /// intervals that have elapsed since January 1, 0001 at 00:00:00.000 in the Gregorian calendar. + /// + [Output] + public string GitCommitAuthorDateTicks { get; private set; } + /// /// Gets the number of commits in the longest single path between /// the specified commit and the most distant ancestor (inclusive) @@ -266,6 +273,7 @@ protected override bool ExecuteInner() this.GitCommitId = oracle.GitCommitId; this.GitCommitIdShort = oracle.GitCommitIdShort; this.GitCommitDateTicks = oracle.GitCommitDate is not null ? oracle.GitCommitDate.Value.UtcTicks.ToString(CultureInfo.InvariantCulture) : null; + this.GitCommitAuthorDateTicks = oracle.GitCommitAuthorDate is not null ? oracle.GitCommitAuthorDate.Value.UtcTicks.ToString(CultureInfo.InvariantCulture) : null; this.GitVersionHeight = oracle.VersionHeight; this.BuildMetadataFragment = oracle.BuildMetadataFragment; this.CloudBuildNumber = oracle.CloudBuildNumberEnabled ? oracle.CloudBuildNumber : null; @@ -314,6 +322,7 @@ protected override bool ExecuteInner() { "GitCommitId", this.GitCommitId }, { "GitCommitIdShort", this.GitCommitIdShort }, { "GitCommitDateTicks", this.GitCommitDateTicks }, + { "GitCommitAuthorDateTicks", this.GitCommitAuthorDateTicks }, { "GitVersionHeight", this.GitVersionHeight.ToString(CultureInfo.InvariantCulture) }, { "BuildNumber", this.BuildNumber.ToString(CultureInfo.InvariantCulture) }, { "BuildVersionNumberComponent", this.BuildNumber.ToString(CultureInfo.InvariantCulture) }, diff --git a/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets b/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets index 64ea798eb..4cba9f6f0 100644 --- a/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets +++ b/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets @@ -169,6 +169,7 @@ PrereleaseVersion="$(PrereleaseVersion)" GitCommitId="$(GitCommitId)" GitCommitDateTicks="$(GitCommitDateTicks)" + GitCommitAuthorDateTicks="$(GitCommitAuthorDateTicks)" EmitNonVersionCustomAttributes="$(NBGV_EmitNonVersionCustomAttributes)" EmitThisAssemblyClass="$(NBGV_EmitThisAssemblyClass)" AdditionalThisAssemblyFields="@(AdditionalThisAssemblyFields)" diff --git a/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs b/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs index 74d66985e..de6b10b0e 100644 --- a/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs @@ -304,7 +304,8 @@ protected void AssertStandardProperties(VersionOptions versionOptions, BuildResu Assert.Equal(idAsVersion.Build.ToString(), buildResult.BuildVersionNumberComponent); Assert.Equal($"{idAsVersion.Major}.{idAsVersion.Minor}.{idAsVersion.Build}", buildResult.BuildVersionSimple); Assert.Equal(this.LibGit2Repository.Head.Tip.Id.Sha, buildResult.GitCommitId); - Assert.Equal(this.LibGit2Repository.Head.Tip.Author.When.UtcTicks.ToString(CultureInfo.InvariantCulture), buildResult.GitCommitDateTicks); + Assert.Equal(this.LibGit2Repository.Head.Tip.Committer.When.UtcTicks.ToString(CultureInfo.InvariantCulture), buildResult.GitCommitDateTicks); + Assert.Equal(this.LibGit2Repository.Head.Tip.Author.When.UtcTicks.ToString(CultureInfo.InvariantCulture), buildResult.GitCommitAuthorDateTicks); Assert.Equal(commitIdShort, buildResult.GitCommitIdShort); Assert.Equal(versionHeight.ToString(), buildResult.GitVersionHeight); Assert.Equal($"{version.Major}.{version.Minor}", buildResult.MajorMinorVersion); @@ -558,6 +559,8 @@ internal BuildResults(BuildResult buildResult, IReadOnlyList log public string GitCommitDateTicks => this.BuildResult.ProjectStateAfterBuild.GetPropertyValue("GitCommitDateTicks"); + public string GitCommitAuthorDateTicks => this.BuildResult.ProjectStateAfterBuild.GetPropertyValue("GitCommitAuthorDateTicks"); + public string GitVersionHeight => this.BuildResult.ProjectStateAfterBuild.GetPropertyValue("GitVersionHeight"); public string SemVerBuildSuffix => this.BuildResult.ProjectStateAfterBuild.GetPropertyValue("SemVerBuildSuffix"); diff --git a/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitCommitReaderTests.cs b/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitCommitReaderTests.cs index c4c96d60c..cf3624be8 100644 --- a/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitCommitReaderTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitCommitReaderTests.cs @@ -32,7 +32,11 @@ public void ReadTest() Assert.Equal(new DateTimeOffset(2020, 10, 6, 13, 40, 09, TimeSpan.FromHours(-6)), author.Date); Assert.Equal("andrewarnott@gmail.com", author.Email); - // Committer and commit message are not read + GitSignature committer = commit.Committer.Value; + + Assert.Equal("Andrew Arnott", committer.Name); + Assert.Equal(new DateTimeOffset(2020, 10, 6, 14, 40, 09, TimeSpan.FromHours(-6)), committer.Date); + Assert.Equal("andrewarnott@gmail.com", committer.Email); } } diff --git a/test/Nerdbank.GitVersioning.Tests/ManagedGit/commit-4497b0eaaa89abf0e6d70961ad5f04fd3a49cbc6 b/test/Nerdbank.GitVersioning.Tests/ManagedGit/commit-4497b0eaaa89abf0e6d70961ad5f04fd3a49cbc6 index 903016e3b..547d4aadd 100644 --- a/test/Nerdbank.GitVersioning.Tests/ManagedGit/commit-4497b0eaaa89abf0e6d70961ad5f04fd3a49cbc6 +++ b/test/Nerdbank.GitVersioning.Tests/ManagedGit/commit-4497b0eaaa89abf0e6d70961ad5f04fd3a49cbc6 @@ -1,6 +1,6 @@ tree f914b48023c7c804a4f3be780d451f31aef74ac1 parent 06cc627f28736c0d13506b0414126580fe37c6f3 author Andrew Arnott 1602013209 -0600 -committer Andrew Arnott 1602013209 -0600 +committer Andrew Arnott 1602016809 -0600 Set version to '3.4-alpha' diff --git a/test/Nerdbank.GitVersioning.Tests/ManagedGit/commit-d56dc3ed179053abef2097d1120b4507769bcf1a b/test/Nerdbank.GitVersioning.Tests/ManagedGit/commit-d56dc3ed179053abef2097d1120b4507769bcf1a index 7163d4980..e6bcbd19d 100644 --- a/test/Nerdbank.GitVersioning.Tests/ManagedGit/commit-d56dc3ed179053abef2097d1120b4507769bcf1a +++ b/test/Nerdbank.GitVersioning.Tests/ManagedGit/commit-d56dc3ed179053abef2097d1120b4507769bcf1a @@ -2,6 +2,6 @@ tree f914b48023c7c804a4f3be780d451f31aef74ac1 parent 4497b0eaaa89abf0e6d70961ad5f04fd3a49cbc6 parent 0989e8fe0cd0e0900173b26decdfb24bc0cc8232 author Andrew Arnott 1602013209 -0600 -committer Andrew Arnott 1602013209 -0600 +committer Andrew Arnott 1602016809 -0600 Merge branch 'v3.3' From 7a2cd46779bdd6d0a187e57b53367c8ceacf3969 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 9 Oct 2024 16:13:12 -0600 Subject: [PATCH 202/257] Notice errors from invocation of `git rev-parse HEAD` --- tools/MergeFrom-Template.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/MergeFrom-Template.ps1 b/tools/MergeFrom-Template.ps1 index c0d13dda9..3f721c6ac 100644 --- a/tools/MergeFrom-Template.ps1 +++ b/tools/MergeFrom-Template.ps1 @@ -43,7 +43,7 @@ if ($LASTEXITCODE -ne 0) { $LibTemplateUrl = 'https://github.com/aarnott/Library.Template' Spawn-Tool 'git' ('fetch', $LibTemplateUrl, $remoteBranch) -$SourceCommit = git rev-parse FETCH_HEAD +$SourceCommit = Spawn-Tool 'git' ('rev-parse', 'FETCH_HEAD') $BaseBranch = Spawn-Tool 'git' ('branch', '--show-current') $SourceCommitUrl = "$LibTemplateUrl/commit/$SourceCommit" From 1c499648adc04c2df252914cb5dbe46cc7fc8367 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 11 Oct 2024 06:46:16 -0600 Subject: [PATCH 203/257] Ignore Rider cache files --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitignore b/.gitignore index 3f1c5ed94..cc2b12470 100644 --- a/.gitignore +++ b/.gitignore @@ -37,6 +37,9 @@ bld/ # Uncomment if you have tasks that create the project's static files in wwwroot #wwwroot/ +# Jetbrains Rider cache directory +.idea/ + # Visual Studio 2017 auto generated files Generated\ Files/ From 214a2aad552fa1e64c7aadbe9763650a1bcd55e0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Oct 2024 17:54:43 -0600 Subject: [PATCH 204/257] Bump dotnet-coverage from 17.12.5 to 17.12.6 (#297) Bumps [dotnet-coverage](https://github.com/microsoft/codecoverage) from 17.12.5 to 17.12.6. - [Commits](https://github.com/microsoft/codecoverage/commits) --- updated-dependencies: - dependency-name: dotnet-coverage dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index b57f73a56..b668e6db3 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -9,7 +9,7 @@ ] }, "dotnet-coverage": { - "version": "17.12.5", + "version": "17.12.6", "commands": [ "dotnet-coverage" ] From d2e7eee36f9d203add5af1471bab2d9d304a7670 Mon Sep 17 00:00:00 2001 From: Matt Kotsenas Date: Wed, 16 Oct 2024 14:07:06 -0700 Subject: [PATCH 205/257] Ensure GetBuildVersion runs before Clean --- .../build/Nerdbank.GitVersioning.targets | 5 +++++ .../Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs | 8 ++++++++ 2 files changed, 13 insertions(+) diff --git a/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets b/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets index 4cba9f6f0..0fa3bb88f 100644 --- a/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets +++ b/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets @@ -8,6 +8,11 @@ $(VersionDependsOn) + + GetBuildVersion; + $(CleanDependsOn) + + GetBuildVersion; $(GenerateNuspecDependsOn) diff --git a/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs b/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs index de6b10b0e..104a74390 100644 --- a/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs @@ -131,6 +131,14 @@ public async Task GetBuildVersion_Without_Git() Assert.Equal("3.4.0", buildResult.AssemblyInformationalVersion); } + [Fact] + public async Task GetBuildVersion_Hooks_Clean() + { + this.WriteVersionFile("1.2"); + BuildResults buildResult = await this.BuildAsync("Clean"); + Assert.Equal("1.2", buildResult.BuildVersion); + } + [Fact] public async Task GetBuildVersion_Without_Git_HighPrecisionAssemblyVersion() { From e1010108998ddcf8eb618053f81b765f03d87ba0 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 18 Oct 2024 07:02:33 -0600 Subject: [PATCH 206/257] Bump macOS agent use to macOS-14 --- azure-pipelines.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 8ab8348e1..16531c5a2 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -74,9 +74,9 @@ stages: strategy: matrix: macOS_Catalina: - vmImage: macOS-12 + vmImage: macOS-14 macOS_Monterey: - vmImage: macOS-12 + vmImage: macOS-14 pool: vmImage: $[ variables['vmImage'] ] steps: @@ -96,7 +96,7 @@ stages: imageName: windows-2022 repoDir: '${USERPROFILE}/source/repos' macOS: - imageName: macOS-12 + imageName: macOS-14 repoDir: '~/git' pool: vmImage: $(imageName) From 698b73d825ae56dceb8fdbb56ce0579d505db7b3 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 18 Oct 2024 16:13:54 -0600 Subject: [PATCH 207/257] Do NOT fail a pipeline build due to nuget vulnerabilities They should remain as warnings. --- .github/workflows/build.yml | 2 +- azure-pipelines/dotnet.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 686628959..00b3dd3fd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -43,7 +43,7 @@ jobs: run: azure-pipelines/variables/_pipelines.ps1 shell: pwsh - name: 🛠 build - run: dotnet build -t:build,pack --no-restore -c ${{ env.BUILDCONFIGURATION }} -warnaserror /bl:"${{ runner.temp }}/_artifacts/build_logs/build.binlog" + run: dotnet build -t:build,pack --no-restore -c ${{ env.BUILDCONFIGURATION }} -warnAsError -warnNotAsError:NU1901,NU1902,NU1903,NU1904 /bl:"${{ runner.temp }}/_artifacts/build_logs/build.binlog" - name: 🧪 test run: azure-pipelines/dotnet-test-cloud.ps1 -Configuration ${{ env.BUILDCONFIGURATION }} -Agent ${{ runner.os }} shell: pwsh diff --git a/azure-pipelines/dotnet.yml b/azure-pipelines/dotnet.yml index 512415497..b422cfc91 100644 --- a/azure-pipelines/dotnet.yml +++ b/azure-pipelines/dotnet.yml @@ -3,7 +3,7 @@ parameters: steps: -- script: dotnet build -t:build,pack --no-restore -c $(BuildConfiguration) -warnaserror /bl:"$(Build.ArtifactStagingDirectory)/build_logs/build.binlog" +- script: dotnet build -t:build,pack --no-restore -c $(BuildConfiguration) -warnAsError -warnNotAsError:NU1901,NU1902,NU1903,NU1904 /bl:"$(Build.ArtifactStagingDirectory)/build_logs/build.binlog" displayName: 🛠 dotnet build - powershell: azure-pipelines/dotnet-test-cloud.ps1 -Configuration $(BuildConfiguration) -Agent $(Agent.JobName) -PublishResults From 93a31bb6e94358ae6ca110e5a892b6470db018a1 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 18 Oct 2024 16:46:58 -0600 Subject: [PATCH 208/257] Avoid running tests on mono for test project The mono runtime is obsolete for most applications. --- test/Library.Tests/Library.Tests.csproj | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/test/Library.Tests/Library.Tests.csproj b/test/Library.Tests/Library.Tests.csproj index 3a6cc044c..134f06698 100644 --- a/test/Library.Tests/Library.Tests.csproj +++ b/test/Library.Tests/Library.Tests.csproj @@ -1,7 +1,8 @@ - net6.0;net472 + net6.0 + $(TargetFrameworks);net472 From dee802a953c0df2d794d826aa9388f48fe673fe3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Oct 2024 09:13:43 -0600 Subject: [PATCH 209/257] Bump nbgv from 3.6.143 to 3.6.146 (#300) Bumps [nbgv](https://github.com/dotnet/Nerdbank.GitVersioning) from 3.6.143 to 3.6.146. - [Release notes](https://github.com/dotnet/Nerdbank.GitVersioning/releases) - [Commits](https://github.com/dotnet/Nerdbank.GitVersioning/commits) --- updated-dependencies: - dependency-name: nbgv dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index b668e6db3..2ccf4befc 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -15,7 +15,7 @@ ] }, "nbgv": { - "version": "3.6.143", + "version": "3.6.146", "commands": [ "nbgv" ] From 026011d97c44d91b5ecf7f57bdd4bd5e86cb3a3e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Oct 2024 09:13:53 -0600 Subject: [PATCH 210/257] Bump Nerdbank.GitVersioning from 3.6.143 to 3.6.146 (#299) Bumps [Nerdbank.GitVersioning](https://github.com/dotnet/Nerdbank.GitVersioning) from 3.6.143 to 3.6.146. - [Release notes](https://github.com/dotnet/Nerdbank.GitVersioning/releases) - [Commits](https://github.com/dotnet/Nerdbank.GitVersioning/commits) --- updated-dependencies: - dependency-name: Nerdbank.GitVersioning dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index adb03b1d3..4baf6ece2 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -13,7 +13,7 @@ - + From 5dc5cdf385e281221900be34e157eef94797709e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 29 Oct 2024 14:20:49 +0000 Subject: [PATCH 211/257] Bump powershell from 7.4.5 to 7.4.6 (#301) --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 2ccf4befc..e60546c00 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "powershell": { - "version": "7.4.5", + "version": "7.4.6", "commands": [ "pwsh" ] From 975d9f18afbd791f166d2a6a4a69d8c845bd039e Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 29 Oct 2024 20:10:18 -0600 Subject: [PATCH 212/257] Add github workflow to keep current with Library.Template --- .github/workflows/libtemplate-update.yml | 72 ++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 .github/workflows/libtemplate-update.yml diff --git a/.github/workflows/libtemplate-update.yml b/.github/workflows/libtemplate-update.yml new file mode 100644 index 000000000..564d4af28 --- /dev/null +++ b/.github/workflows/libtemplate-update.yml @@ -0,0 +1,72 @@ +name: Library.Template update + +# PREREQUISITE: This workflow requires the repo to be configured to allow workflows to push commits and create pull requests. +# Visit https://github.com/USER/REPO/settings/actions +# Under "Workflow permissions", select "Read and write permissions" and check "Allow GitHub Actions to create ...pull requests" +# Click Save. + +on: + schedule: + - cron: "0 3 * * Mon" # Sun @ 8 or 9 PM Mountain Time (depending on DST) + workflow_dispatch: + +jobs: + merge: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 # avoid shallow clone so nbgv can do its work. + + - name: merge + shell: pwsh + run: | + $LibTemplateBranch = & ./azure-pipelines/Get-LibTemplateBasis.ps1 -ErrorIfNotRelated + if ($LASTEXITCODE -ne 0) { + exit $LASTEXITCODE + } + + git fetch https://github.com/aarnott/Library.Template $LibTemplateBranch + if ($LASTEXITCODE -ne 0) { + exit $LASTEXITCODE + } + $LibTemplateCommit = git rev-parse FETCH_HEAD + + if ((git rev-list FETCH_HEAD ^HEAD --count) -eq 0) { + Write-Host "There are no Library.Template updates to merge." + exit 0 + } + + git -c http.extraheader="AUTHORIZATION: bearer $env:GH_TOKEN" push origin -u FETCH_HEAD:refs/heads/auto/libtemplateUpdate + - name: pull request + shell: pwsh + run: | + # If there is already an active pull request, don't create a new one. + $existingPR = gh pr list -H auto/libtemplateUpdate --json url | ConvertFrom-Json + if ($existingPR) { + Write-Host "::warning::Skipping pull request creation because one already exists at $($existingPR[0].url)" + exit 0 + } + + $prTitle = "Merge latest Library.Template" + $prBody = "This merges the latest features and fixes from [Library.Template's branch](https://github.com/AArnott/Library.Template/tree/). + +
+ Merge conflicts? + Resolve merge conflicts locally by carrying out these steps: + + ``` + git fetch + git checkout auto/libtemplateUpdate + git merge origin/main + # resolve conflicts + git commit + git push + ``` +
+ + ⚠️ Do **not** squash this pull request when completing it. You must *merge* it." + + gh pr create -H auto/libtemplateUpdate -b $prBody -t $prTitle + env: + GH_TOKEN: ${{ github.token }} From 928b4fc6b2d648123f4c6f7bf4d1e6a17c29f022 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 2 Nov 2024 10:47:55 -0600 Subject: [PATCH 213/257] Bump NuGet.PackageManagement from 6.11.0 to 6.11.1 (#1114) Bumps [NuGet.PackageManagement](https://github.com/NuGet/NuGet.Client) from 6.11.0 to 6.11.1. - [Release notes](https://github.com/NuGet/NuGet.Client/releases) - [Commits](https://github.com/NuGet/NuGet.Client/commits) --- updated-dependencies: - dependency-name: NuGet.PackageManagement dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 882b699e4..468a55f1c 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -29,7 +29,7 @@ - + From 2009e91eb7d5c0a530db528d702b780d2613b080 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 2 Nov 2024 10:48:12 -0600 Subject: [PATCH 214/257] Bump del from 7.1.0 to 8.0.0 in /src/nerdbank-gitversioning.npm (#1112) Bumps [del](https://github.com/sindresorhus/del) from 7.1.0 to 8.0.0. - [Release notes](https://github.com/sindresorhus/del/releases) - [Commits](https://github.com/sindresorhus/del/compare/v7.1.0...v8.0.0) --- updated-dependencies: - dependency-name: del dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/nerdbank-gitversioning.npm/package.json | 2 +- src/nerdbank-gitversioning.npm/yarn.lock | 112 +++++++------------- 2 files changed, 41 insertions(+), 73 deletions(-) diff --git a/src/nerdbank-gitversioning.npm/package.json b/src/nerdbank-gitversioning.npm/package.json index 11a44e9cf..3ed8c3635 100644 --- a/src/nerdbank-gitversioning.npm/package.json +++ b/src/nerdbank-gitversioning.npm/package.json @@ -25,7 +25,7 @@ ], "devDependencies": { "@types/node": "^18.7.14", - "del": "^7.1.0", + "del": "^8.0.0", "gulp": "^5.0.0", "gulp-cli": "^3.0.0", "gulp-sourcemaps": "3.0.0", diff --git a/src/nerdbank-gitversioning.npm/yarn.lock b/src/nerdbank-gitversioning.npm/yarn.lock index 92b33a07b..43bd0a08f 100644 --- a/src/nerdbank-gitversioning.npm/yarn.lock +++ b/src/nerdbank-gitversioning.npm/yarn.lock @@ -54,6 +54,11 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@sindresorhus/merge-streams@^2.1.0": + version "2.3.0" + resolved "https://registry.yarnpkg.com/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz#719df7fb41766bc143369eaa0dd56d8dc87c9958" + integrity sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg== + "@types/node@^18.7.14": version "18.19.43" resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.43.tgz#fe01bb599b60bb3279c26d0fdb751d2f3e299ae0" @@ -66,14 +71,6 @@ acorn@^6.4.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== -aggregate-error@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-4.0.1.tgz#25091fe1573b9e0be892aeda15c7c66a545f758e" - integrity sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w== - dependencies: - clean-stack "^4.0.0" - indent-string "^5.0.0" - ansi-colors@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-1.1.0.tgz#6374b4dd5d4718ff3ce27a671a3b1cad077132a9" @@ -312,13 +309,6 @@ chokidar@^3.5.3: optionalDependencies: fsevents "~2.3.2" -clean-stack@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-4.2.0.tgz#c464e4cde4ac789f4e0735c5d75beb49d7b30b31" - integrity sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg== - dependencies: - escape-string-regexp "5.0.0" - cliui@^7.0.2: version "7.0.4" resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" @@ -468,19 +458,17 @@ define-properties@^1.2.1: has-property-descriptors "^1.0.0" object-keys "^1.1.1" -del@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/del/-/del-7.1.0.tgz#0de0044d556b649ff05387f1fa7c885e155fd1b6" - integrity sha512-v2KyNk7efxhlyHpjEvfyxaAihKKK0nWCuf6ZtqZcFFpQRG0bJ12Qsr0RpvsICMjAAZ8DOVCxrlqpxISlMHC4Kg== +del@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/del/-/del-8.0.0.tgz#f333a5673cfeb72e46084031714a7c30515e80aa" + integrity sha512-R6ep6JJ+eOBZsBr9esiNN1gxFbZE4Q2cULkUSFumGYecAiS6qodDvcPx/sFuWHMNul7DWmrtoEOpYSm7o6tbSA== dependencies: - globby "^13.1.2" - graceful-fs "^4.2.10" + globby "^14.0.2" is-glob "^4.0.3" is-path-cwd "^3.0.0" is-path-inside "^4.0.0" - p-map "^5.5.0" - rimraf "^3.0.2" - slash "^4.0.0" + p-map "^7.0.2" + slash "^5.1.0" detect-file@^1.0.0: version "1.0.0" @@ -492,13 +480,6 @@ detect-newline@^2.0.0: resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" integrity sha512-CwffZFvlJffUg9zZA0uqrjQayUTC8ob94pnr5sFwaVv3IOmkfUHcWH+jXaQK3askE51Cqe8/9Ql/0uXNwqZ8Zg== -dir-glob@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" - integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== - dependencies: - path-type "^4.0.0" - duplexer2@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" @@ -590,11 +571,6 @@ escalade@^3.1.1: resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== -escape-string-regexp@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz#4683126b500b61762f2dbebace1806e8be31b1c8" - integrity sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw== - escape-string-regexp@^1.0.2: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" @@ -660,7 +636,7 @@ fast-fifo@^1.3.2: resolved "https://registry.yarnpkg.com/fast-fifo/-/fast-fifo-1.3.2.tgz#286e31de96eb96d38a97899815740ba2a4f3640c" integrity sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ== -fast-glob@^3.3.0: +fast-glob@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== @@ -850,7 +826,7 @@ glob-watcher@^6.0.0: async-done "^2.0.0" chokidar "^3.5.3" -glob@^7.1.1, glob@^7.1.3: +glob@^7.1.1: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -882,16 +858,17 @@ global-prefix@^1.0.1: is-windows "^1.0.1" which "^1.2.14" -globby@^13.1.2: - version "13.2.2" - resolved "https://registry.yarnpkg.com/globby/-/globby-13.2.2.tgz#63b90b1bf68619c2135475cbd4e71e66aa090592" - integrity sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w== +globby@^14.0.2: + version "14.0.2" + resolved "https://registry.yarnpkg.com/globby/-/globby-14.0.2.tgz#06554a54ccfe9264e5a9ff8eded46aa1e306482f" + integrity sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw== dependencies: - dir-glob "^3.0.1" - fast-glob "^3.3.0" + "@sindresorhus/merge-streams" "^2.1.0" + fast-glob "^3.3.2" ignore "^5.2.4" - merge2 "^1.4.1" - slash "^4.0.0" + path-type "^5.0.0" + slash "^5.1.0" + unicorn-magic "^0.1.0" glogg@^1.0.0: version "1.0.2" @@ -1081,11 +1058,6 @@ ignore@^5.2.4: resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== -indent-string@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-5.0.0.tgz#4fd2980fccaf8622d14c64d694f4cf33c81951a5" - integrity sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg== - inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -1554,12 +1526,10 @@ ordered-read-streams@^1.0.0: dependencies: readable-stream "^2.0.1" -p-map@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-5.5.0.tgz#054ca8ca778dfa4cf3f8db6638ccb5b937266715" - integrity sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg== - dependencies: - aggregate-error "^4.0.0" +p-map@^7.0.2: + version "7.0.2" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-7.0.2.tgz#7c5119fada4755660f70199a66aa3fe2f85a1fe8" + integrity sha512-z4cYYMMdKHzw4O5UkWJImbZynVIo0lSGTXc7bzB1e/rrDqkgGUNysK/o4bTr+0+xKvvLoTyGqYC4Fgljy9qe1Q== parse-filepath@^1.0.2: version "1.0.2" @@ -1607,10 +1577,10 @@ path-root@^0.1.1: dependencies: path-root-regex "^0.1.0" -path-type@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== +path-type@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-5.0.0.tgz#14b01ed7aea7ddf9c7c3f46181d4d04f9c785bb8" + integrity sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg== path@^0.12.7: version "0.12.7" @@ -1814,13 +1784,6 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rimraf@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - run-parallel@^1.1.9: version "1.2.0" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" @@ -1867,10 +1830,10 @@ set-function-length@^1.2.1: gopd "^1.0.1" has-property-descriptors "^1.0.2" -slash@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-4.0.0.tgz#2422372176c4c6c5addb5e2ada885af984b396a7" - integrity sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew== +slash@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-5.1.0.tgz#be3adddcdf09ac38eebe8dcdc7b1a57a75b095ce" + integrity sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg== source-map-resolve@^0.6.0: version "0.6.0" @@ -2120,6 +2083,11 @@ undici-types@~5.26.4: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== +unicorn-magic@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/unicorn-magic/-/unicorn-magic-0.1.0.tgz#1bb9a51c823aaf9d73a8bfcd3d1a23dde94b0ce4" + integrity sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ== + unique-stream@^2.0.2: version "2.3.1" resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.3.1.tgz#c65d110e9a4adf9a6c5948b28053d9a8d04cbeac" From 762e59b1da12fe95ffd7130420957d6bcd2c4794 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sat, 2 Nov 2024 15:10:42 -0600 Subject: [PATCH 215/257] Verify formatted code on GitHub workflows --- .github/workflows/build.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 00b3dd3fd..50cf99c82 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -47,6 +47,10 @@ jobs: - name: 🧪 test run: azure-pipelines/dotnet-test-cloud.ps1 -Configuration ${{ env.BUILDCONFIGURATION }} -Agent ${{ runner.os }} shell: pwsh + - name: 💅🏻 Verify formatted code + run: dotnet format --verify-no-changes --no-restore + shell: pwsh + if: runner.os == 'Linux' - name: ⚙ Update pipeline variables based on build outputs run: azure-pipelines/variables/_pipelines.ps1 shell: pwsh From d046e43768e1553461a261a72ccfa5a26d46e76d Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 5 Nov 2024 08:26:15 -0700 Subject: [PATCH 216/257] Add docfx site placeholder --- .config/dotnet-tools.json | 16 +++++++++--- .github/workflows/docs.yml | 41 ++++++++++++++++++++++++++++++ CONTRIBUTING.md | 9 +++++++ Expand-Template.ps1 | 6 +++++ docfx/.gitignore | 2 ++ docfx/docfx.json | 48 +++++++++++++++++++++++++++++++++++ docfx/docs/features.md | 3 +++ docfx/docs/getting-started.md | 12 +++++++++ docfx/docs/toc.yml | 5 ++++ docfx/index.md | 9 +++++++ docfx/toc.yml | 4 +++ 11 files changed, 152 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/docs.yml create mode 100644 docfx/.gitignore create mode 100644 docfx/docfx.json create mode 100644 docfx/docs/features.md create mode 100644 docfx/docs/getting-started.md create mode 100644 docfx/docs/toc.yml create mode 100644 docfx/index.md create mode 100644 docfx/toc.yml diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index e60546c00..a333e70bf 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -6,19 +6,29 @@ "version": "7.4.6", "commands": [ "pwsh" - ] + ], + "rollForward": false }, "dotnet-coverage": { "version": "17.12.6", "commands": [ "dotnet-coverage" - ] + ], + "rollForward": false }, "nbgv": { "version": "3.6.146", "commands": [ "nbgv" - ] + ], + "rollForward": false + }, + "docfx": { + "version": "2.77.0", + "commands": [ + "docfx" + ], + "rollForward": false } } } \ No newline at end of file diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 000000000..6e6e64a08 --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,41 @@ +name: 📚 Docs + +on: + push: + branches: + - main + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + actions: read + pages: write + id-token: write + +# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. +# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. +concurrency: + group: pages + cancel-in-progress: false + +jobs: + publish-docs: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: ⚙ Install prerequisites + run: ./init.ps1 -UpgradePrerequisites + + - run: dotnet docfx docfx/docfx.json + name: 📚 Generate documentation + + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + with: + path: docfx/_site + + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e56631ddf..7ec56f4d6 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -40,3 +40,12 @@ This repository can be built on Windows, Linux, and OSX. Building, testing, and packing this repository can be done by using the standard dotnet CLI commands (e.g. `dotnet build`, `dotnet test`, `dotnet pack`, etc.). [pwsh]: https://docs.microsoft.com/powershell/scripting/install/installing-powershell?view=powershell-6 + +## Tutorial and API documentation + +API and hand-written docs are found under the `docfx/` directory. and are built by [docfx](https://dotnet.github.io/docfx/). + +You can make changes and host the site locally to preview them by switching to that directory and running the `dotnet docfx --serve` command. +After making a change, you can rebuild the docs site while the localhost server is running by running `dotnet docfx` again from a separate terminal. + +The `.github/workflows/docs.yml` GitHub Actions workflow publishes the content of these docs to github.io if the workflow itself and [GitHub Pages is enabled for your repository](https://docs.github.com/en/pages/quickstart). diff --git a/Expand-Template.ps1 b/Expand-Template.ps1 index e9a567c18..44ef68266 100755 --- a/Expand-Template.ps1 +++ b/Expand-Template.ps1 @@ -166,6 +166,12 @@ try { "(?m)^.*\[GitHub Actions status\].*`r?`n"="" "(?m)^.*\[codecov\].*`r?`n"="" } + Replace-Placeholders -Path "docfx/docfx.json" -Replacements @{ + 'Library'=$LibraryName + } + Replace-Placeholders -Path "docfx/docs/getting-started.md" -Replacements @{ + 'Library'=$LibraryName + } # Specially handle azure-pipelines .yml edits Replace-Placeholders -Path "azure-pipelines/build.yml" -Replacements @{ diff --git a/docfx/.gitignore b/docfx/.gitignore new file mode 100644 index 000000000..d5bcab175 --- /dev/null +++ b/docfx/.gitignore @@ -0,0 +1,2 @@ +_site/ +api/ diff --git a/docfx/docfx.json b/docfx/docfx.json new file mode 100644 index 000000000..729d67313 --- /dev/null +++ b/docfx/docfx.json @@ -0,0 +1,48 @@ +{ + "metadata": [ + { + "src": [ + { + "src": "../src/Library", + "files": [ + "**/*.csproj" + ] + } + ], + "dest": "api" + } + ], + "build": { + "content": [ + { + "files": [ + "**/*.{md,yml}" + ], + "exclude": [ + "_site/**" + ] + } + ], + "resource": [ + { + "files": [ + "images/**" + ] + } + ], + "xref": [ + "https://learn.microsoft.com/en-us/dotnet/.xrefmap.json" + ], + "output": "_site", + "template": [ + "default", + "modern" + ], + "globalMetadata": { + "_appName": "Library", + "_appTitle": "Library", + "_enableSearch": true, + "pdf": false + } + } +} diff --git a/docfx/docs/features.md b/docfx/docs/features.md new file mode 100644 index 000000000..eb3fbeb0d --- /dev/null +++ b/docfx/docs/features.md @@ -0,0 +1,3 @@ +# Features + +TODO diff --git a/docfx/docs/getting-started.md b/docfx/docs/getting-started.md new file mode 100644 index 000000000..eff2c2fbc --- /dev/null +++ b/docfx/docs/getting-started.md @@ -0,0 +1,12 @@ +# Getting Started + +## Installation + +Consume this library via its NuGet Package. +Click on the badge to find its latest version and the instructions for consuming it that best apply to your project. + +[![NuGet package](https://img.shields.io/nuget/v/Library.svg)](https://nuget.org/packages/Library) + +## Usage + +TODO diff --git a/docfx/docs/toc.yml b/docfx/docs/toc.yml new file mode 100644 index 000000000..36a380208 --- /dev/null +++ b/docfx/docs/toc.yml @@ -0,0 +1,5 @@ +- name: Features + href: features.md +- name: Getting Started + href: getting-started.md + diff --git a/docfx/index.md b/docfx/index.md new file mode 100644 index 000000000..fc1b9e286 --- /dev/null +++ b/docfx/index.md @@ -0,0 +1,9 @@ +--- +_layout: landing +--- + +# Overview + +This is your docfx landing page. + +Click "Docs" across the top to get get started. diff --git a/docfx/toc.yml b/docfx/toc.yml new file mode 100644 index 000000000..abd17b8c7 --- /dev/null +++ b/docfx/toc.yml @@ -0,0 +1,4 @@ +- name: Docs + href: docs/ +- name: API + href: api/ From 9b5b71c64552f5cf37cfee9cf96138829b2a6769 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 5 Nov 2024 10:10:16 -0700 Subject: [PATCH 217/257] Fix release notes link to work by default It also makes it work in the case where `PackageProjectUrl` isn't the github.com repository itself. --- Directory.Build.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Build.props b/Directory.Build.props index 803396d08..98b987f68 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -51,7 +51,7 @@ - $(PackageProjectUrl)/releases/tag/v$(Version) + $(RepositoryUrl)/releases/tag/v$(Version)
From 373a8ad2d2da268a7879dc937a2377a7b0b50786 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 5 Nov 2024 21:00:24 -0700 Subject: [PATCH 218/257] Fix flags sent to codecov.io It only wants one flag, but we were sending two. --- .github/workflows/build.yml | 2 +- azure-pipelines/dotnet.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 50cf99c82..24bc7d9e4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -112,7 +112,7 @@ jobs: path: ${{ runner.temp }}/_artifacts/deployables if: always() - name: 📢 Publish code coverage results to codecov.io - run: ./azure-pipelines/publish-CodeCov.ps1 -CodeCovToken "${{ env.codecov_token }}" -PathToCodeCoverage "${{ runner.temp }}/_artifacts/coverageResults" -Name "${{ runner.os }} Coverage Results" -Flags "${{ runner.os }}Host,${{ env.BUILDCONFIGURATION }}" + run: ./azure-pipelines/publish-CodeCov.ps1 -CodeCovToken "${{ env.codecov_token }}" -PathToCodeCoverage "${{ runner.temp }}/_artifacts/coverageResults" -Name "${{ runner.os }} Coverage Results" -Flags "${{ runner.os }}" shell: pwsh timeout-minutes: 3 continue-on-error: true diff --git a/azure-pipelines/dotnet.yml b/azure-pipelines/dotnet.yml index b422cfc91..2444928fb 100644 --- a/azure-pipelines/dotnet.yml +++ b/azure-pipelines/dotnet.yml @@ -24,7 +24,7 @@ steps: - powershell: | $ArtifactStagingFolder = & "azure-pipelines/Get-ArtifactsStagingDirectory.ps1" $CoverageResultsFolder = Join-Path $ArtifactStagingFolder "coverageResults-$(Agent.JobName)" - azure-pipelines/publish-CodeCov.ps1 -CodeCovToken "$(codecov_token)" -PathToCodeCoverage "$CoverageResultsFolder" -Name "$(Agent.JobName) Coverage Results" -Flags "$(Agent.JobName)Host,$(BuildConfiguration)" + azure-pipelines/publish-CodeCov.ps1 -CodeCovToken "$(codecov_token)" -PathToCodeCoverage "$CoverageResultsFolder" -Name "$(Agent.JobName) Coverage Results" -Flags "$(Agent.JobName)" displayName: 📢 Publish code coverage results to codecov.io timeoutInMinutes: 3 continueOnError: true From 2c7d5a30fdee9c14f1851aeff77bc4f17439053f Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 12 Nov 2024 16:10:15 -0700 Subject: [PATCH 219/257] Bump .NET SDK to 9.0 --- global.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/global.json b/global.json index 1f0eafb45..088f23e11 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "8.0.402", + "version": "9.0.100", "rollForward": "patch", "allowPrerelease": false } From 134713d8d28c432aae1d108d230b5088d777fc7e Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 12 Nov 2024 16:17:51 -0700 Subject: [PATCH 220/257] Target .NET 8 instead of .NET 6 Today, .NET 6 falls out of support. --- src/Library/Library.csproj | 2 +- test/Library.Tests/CalculatorTests.cs | 2 +- test/Library.Tests/Library.Tests.csproj | 2 +- tools/Install-NuGetCredProvider.ps1 | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Library/Library.csproj b/src/Library/Library.csproj index 50aff9973..89f062347 100644 --- a/src/Library/Library.csproj +++ b/src/Library/Library.csproj @@ -1,5 +1,5 @@ - net6.0;netstandard2.0 + net8.0;netstandard2.0 diff --git a/test/Library.Tests/CalculatorTests.cs b/test/Library.Tests/CalculatorTests.cs index 0e7e83391..a35947bcd 100644 --- a/test/Library.Tests/CalculatorTests.cs +++ b/test/Library.Tests/CalculatorTests.cs @@ -14,7 +14,7 @@ public CalculatorTests() public void AddOrSubtract() { // This tests aggregation of code coverage across test runs. -#if NET6_0_OR_GREATER +#if NET8_0_OR_GREATER Assert.Equal(3, Calculator.Add(1, 2)); #else Assert.Equal(-1, Calculator.Subtract(1, 2)); diff --git a/test/Library.Tests/Library.Tests.csproj b/test/Library.Tests/Library.Tests.csproj index 134f06698..a853dc7d4 100644 --- a/test/Library.Tests/Library.Tests.csproj +++ b/test/Library.Tests/Library.Tests.csproj @@ -1,7 +1,7 @@ - net6.0 + net8.0 $(TargetFrameworks);net472 diff --git a/tools/Install-NuGetCredProvider.ps1 b/tools/Install-NuGetCredProvider.ps1 index 496049a29..857324b64 100755 --- a/tools/Install-NuGetCredProvider.ps1 +++ b/tools/Install-NuGetCredProvider.ps1 @@ -43,7 +43,7 @@ if ($IsMacOS -or $IsLinux) { chmod u+x $installerScript } -& $installerScript -Force:$Force -AddNetfx -InstallNet6 +& $installerScript -Force:$Force -AddNetfx -InstallNet8 if ($AccessToken) { $endpoints = @() From 5669382ddd7349508448df01f8a73e7e0ab7ef58 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 12 Nov 2024 16:00:36 -0700 Subject: [PATCH 221/257] Fix token permissions for Library.Template update workflow --- .github/workflows/libtemplate-update.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/libtemplate-update.yml b/.github/workflows/libtemplate-update.yml index 564d4af28..b6990a511 100644 --- a/.github/workflows/libtemplate-update.yml +++ b/.github/workflows/libtemplate-update.yml @@ -13,6 +13,9 @@ on: jobs: merge: runs-on: ubuntu-latest + permissions: + contents: write + pull-requests: write steps: - uses: actions/checkout@v4 with: From f49fb31babda83725b6ee872c5c750c5cb271410 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 12 Nov 2024 16:39:15 -0700 Subject: [PATCH 222/257] Print diff of what has changed recently --- .github/workflows/libtemplate-update.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/libtemplate-update.yml b/.github/workflows/libtemplate-update.yml index b6990a511..e8b0a6964 100644 --- a/.github/workflows/libtemplate-update.yml +++ b/.github/workflows/libtemplate-update.yml @@ -34,6 +34,7 @@ jobs: exit $LASTEXITCODE } $LibTemplateCommit = git rev-parse FETCH_HEAD + git diff --stat ...FETCH_HEAD if ((git rev-list FETCH_HEAD ^HEAD --count) -eq 0) { Write-Host "There are no Library.Template updates to merge." From 0459d740a79b3981b13dc96d3ee2e058da876b6b Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 12 Nov 2024 16:39:38 -0700 Subject: [PATCH 223/257] Skip PR creation step when no changes are present to merge --- .github/workflows/libtemplate-update.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/libtemplate-update.yml b/.github/workflows/libtemplate-update.yml index e8b0a6964..351ee3f47 100644 --- a/.github/workflows/libtemplate-update.yml +++ b/.github/workflows/libtemplate-update.yml @@ -22,6 +22,7 @@ jobs: fetch-depth: 0 # avoid shallow clone so nbgv can do its work. - name: merge + id: merge shell: pwsh run: | $LibTemplateBranch = & ./azure-pipelines/Get-LibTemplateBasis.ps1 -ErrorIfNotRelated @@ -38,12 +39,14 @@ jobs: if ((git rev-list FETCH_HEAD ^HEAD --count) -eq 0) { Write-Host "There are no Library.Template updates to merge." + echo "::set-output name=uptodate::true" exit 0 } git -c http.extraheader="AUTHORIZATION: bearer $env:GH_TOKEN" push origin -u FETCH_HEAD:refs/heads/auto/libtemplateUpdate - name: pull request shell: pwsh + if: success() && steps.merge.outputs.uptodate != 'true' run: | # If there is already an active pull request, don't create a new one. $existingPR = gh pr list -H auto/libtemplateUpdate --json url | ConvertFrom-Json From faade5e8eb4f3164832ec23f25234518ecc5d8ca Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 12 Nov 2024 16:51:17 -0700 Subject: [PATCH 224/257] Compile with C# language version 13 --- Directory.Build.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Build.targets b/Directory.Build.targets index ecd71a31b..ffbdb5021 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -1,7 +1,7 @@ - 12 + 13 16.9 From 928d88e02c2c660edff0b9f0c8da02199b4ff91d Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 12 Nov 2024 16:59:43 -0700 Subject: [PATCH 225/257] Fix to avoid deprecation warning --- .github/workflows/libtemplate-update.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/libtemplate-update.yml b/.github/workflows/libtemplate-update.yml index 351ee3f47..079d900ff 100644 --- a/.github/workflows/libtemplate-update.yml +++ b/.github/workflows/libtemplate-update.yml @@ -39,7 +39,7 @@ jobs: if ((git rev-list FETCH_HEAD ^HEAD --count) -eq 0) { Write-Host "There are no Library.Template updates to merge." - echo "::set-output name=uptodate::true" + echo "uptodate=true" >> $env:GITHUB_OUTPUT exit 0 } From 57a21a8bfa44e9929011aaf1cece5b86fadfbc5d Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 12 Nov 2024 17:12:02 -0700 Subject: [PATCH 226/257] Update prerequisite verbiage --- .github/workflows/libtemplate-update.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/libtemplate-update.yml b/.github/workflows/libtemplate-update.yml index 079d900ff..b0fdd16a8 100644 --- a/.github/workflows/libtemplate-update.yml +++ b/.github/workflows/libtemplate-update.yml @@ -1,8 +1,8 @@ name: Library.Template update -# PREREQUISITE: This workflow requires the repo to be configured to allow workflows to push commits and create pull requests. +# PREREQUISITE: This workflow requires the repo to be configured to allow workflows to create pull requests. # Visit https://github.com/USER/REPO/settings/actions -# Under "Workflow permissions", select "Read and write permissions" and check "Allow GitHub Actions to create ...pull requests" +# Under "Workflow permissions" check "Allow GitHub Actions to create ...pull requests" # Click Save. on: From 53ba423e0b4b80af3918ecfb153cea8b6349a2c5 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 12 Nov 2024 17:23:09 -0700 Subject: [PATCH 227/257] Avoid pushing workflow changes in Library.Template updates --- .github/workflows/libtemplate-update.yml | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/.github/workflows/libtemplate-update.yml b/.github/workflows/libtemplate-update.yml index b0fdd16a8..3c7fc94f1 100644 --- a/.github/workflows/libtemplate-update.yml +++ b/.github/workflows/libtemplate-update.yml @@ -43,7 +43,26 @@ jobs: exit 0 } - git -c http.extraheader="AUTHORIZATION: bearer $env:GH_TOKEN" push origin -u FETCH_HEAD:refs/heads/auto/libtemplateUpdate + # Pushing commits that add or change files under .github/workflows will cause our workflow to fail. + # But it usually isn't necessary because the target branch already has (or doesn't have) these changes. + # So if the merged doesn't bring in any changes to these files, try the merge locally and push that + # to keep github happy. + if ((git rev-list FETCH_HEAD ^HEAD --count -- .github/workflows) -eq 0) { + # Indeed there are no changes in that area. So merge locally to try to appease GitHub. + git checkout -b auto/libtemplateUpdate + git config user.name "Andrew Arnott" + git config user.email "andrewarnott@live.com" + git merge FETCH_HEAD + if ($LASTEXITCODE -ne 0) { + Write-Host "Merge conflicts prevent creating the pull request. Please run tools/MergeFrom-Template.ps1 locally and push the result as a pull request." + exit 2 + } + + git -c http.extraheader="AUTHORIZATION: bearer $env:GH_TOKEN" push origin -u HEAD + } else { + Write-Host "Changes to github workflows are included in this update. Please run tools/MergeFrom-Template.ps1 locally and push the result as a pull request." + exit 1 + } - name: pull request shell: pwsh if: success() && steps.merge.outputs.uptodate != 'true' From 77ef017a4ba024f8e5c8edf19be45d614be13128 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 12 Nov 2024 17:39:15 -0700 Subject: [PATCH 228/257] Improve placement of warning --- .github/workflows/libtemplate-update.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/libtemplate-update.yml b/.github/workflows/libtemplate-update.yml index 3c7fc94f1..0831ced61 100644 --- a/.github/workflows/libtemplate-update.yml +++ b/.github/workflows/libtemplate-update.yml @@ -77,6 +77,8 @@ jobs: $prTitle = "Merge latest Library.Template" $prBody = "This merges the latest features and fixes from [Library.Template's branch](https://github.com/AArnott/Library.Template/tree/). + ⚠️ Do **not** squash this pull request when completing it. You must *merge* it." +
Merge conflicts? Resolve merge conflicts locally by carrying out these steps: @@ -91,8 +93,6 @@ jobs: ```
- ⚠️ Do **not** squash this pull request when completing it. You must *merge* it." - gh pr create -H auto/libtemplateUpdate -b $prBody -t $prTitle env: GH_TOKEN: ${{ github.token }} From 7f14687b14264f5919b03676b7937546f4b5a6cf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Nov 2024 07:53:33 -0700 Subject: [PATCH 229/257] Bump docfx from 2.77.0 to 2.78.0 (#311) Bumps [docfx](https://github.com/dotnet/docfx) from 2.77.0 to 2.78.0. - [Release notes](https://github.com/dotnet/docfx/releases) - [Changelog](https://github.com/dotnet/docfx/blob/main/RELEASENOTE.md) - [Commits](https://github.com/dotnet/docfx/compare/v2.77.0...v2.78.0) --- updated-dependencies: - dependency-name: docfx dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index a333e70bf..85b44b223 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -24,7 +24,7 @@ "rollForward": false }, "docfx": { - "version": "2.77.0", + "version": "2.78.0", "commands": [ "docfx" ], From 64483bf071f2691dcd96a7c691dfe0ddfc8f44c0 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 18 Nov 2024 13:59:43 -0700 Subject: [PATCH 230/257] Fix libtemplate update workflow It had a quote in the wrong place. --- .github/workflows/libtemplate-update.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/libtemplate-update.yml b/.github/workflows/libtemplate-update.yml index 0831ced61..0501d5eed 100644 --- a/.github/workflows/libtemplate-update.yml +++ b/.github/workflows/libtemplate-update.yml @@ -77,7 +77,7 @@ jobs: $prTitle = "Merge latest Library.Template" $prBody = "This merges the latest features and fixes from [Library.Template's branch](https://github.com/AArnott/Library.Template/tree/). - ⚠️ Do **not** squash this pull request when completing it. You must *merge* it." + ⚠️ Do **not** squash this pull request when completing it. You must *merge* it.
Merge conflicts? @@ -91,7 +91,7 @@ jobs: git commit git push ``` -
+ " gh pr create -H auto/libtemplateUpdate -b $prBody -t $prTitle env: From 20e285c4d956424d2686261faa32f8721d5a7acf Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 19 Nov 2024 07:35:32 -0700 Subject: [PATCH 231/257] Avoid `dotnet format` hang Workaround https://github.com/dotnet/sdk/issues/44951 --- Directory.Packages.props | 3 ++- azure-pipelines/build.yml | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 4baf6ece2..aa1a719da 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -13,7 +13,8 @@ - + + diff --git a/azure-pipelines/build.yml b/azure-pipelines/build.yml index 108258282..5c106ade4 100644 --- a/azure-pipelines/build.yml +++ b/azure-pipelines/build.yml @@ -37,8 +37,10 @@ jobs: - template: dotnet.yml parameters: RunTests: ${{ parameters.RunTests }} - - script: dotnet format --verify-no-changes --no-restore + - script: dotnet format --verify-no-changes displayName: 💅 Verify formatted code + env: + dotnetformat: true # part of a workaround for https://github.com/dotnet/sdk/issues/44951 - template: expand-template.yml - job: macOS From 6775c31bac407a3dbb392d37861e3ec01b2d8214 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 19 Nov 2024 13:01:49 -0700 Subject: [PATCH 232/257] Update devcontainer for latest SDK and extension --- .devcontainer/Dockerfile | 2 +- .devcontainer/devcontainer.json | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 9626b31b5..42fd12a7a 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,5 +1,5 @@ # Refer to https://hub.docker.com/_/microsoft-dotnet-sdk for available versions -FROM mcr.microsoft.com/dotnet/sdk:8.0.402-jammy +FROM mcr.microsoft.com/dotnet/sdk:9.0.100-noble # Installing mono makes `dotnet test` work without errors even for net472. # But installing it takes a long time, so it's excluded by default. diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index f4e3b31a3..01a087c7c 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -10,11 +10,12 @@ "ms-dotnettools.csharp", "k--kato.docomment", "editorconfig.editorconfig", + "esbenp.prettier-vscode", "pflannery.vscode-versionlens", "davidanson.vscode-markdownlint", "dotjoshjohnson.xml", "ms-vscode-remote.remote-containers", "ms-azuretools.vscode-docker", - "ms-vscode.powershell" + "tintoy.msbuild-project-tools" ] } From 5bd86bbe7bca8843b2f0f0b9ea79d60892d0845e Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 19 Nov 2024 17:45:09 -0700 Subject: [PATCH 233/257] Get dependabot to help us keep the .NET SDK current https://github.blog/changelog/2024-11-19-dependabot-can-now-perform-version-updates-for-the-net-sdk/ --- .github/dependabot.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 63e3e890b..b168ac6d1 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -7,3 +7,7 @@ updates: directory: / schedule: interval: weekly +- package-ecosystem: dotnet-sdk + directory: / + schedule: + interval: monthly From 325831ec518b94a4fe7f0622bccf50d93817ce90 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 20 Nov 2024 10:24:33 -0700 Subject: [PATCH 234/257] Bump docfx from 2.78.0 to 2.78.1 (#313) Bumps [docfx](https://github.com/dotnet/docfx) from 2.78.0 to 2.78.1. - [Release notes](https://github.com/dotnet/docfx/releases) - [Changelog](https://github.com/dotnet/docfx/blob/main/RELEASENOTE.md) - [Commits](https://github.com/dotnet/docfx/compare/v2.78.0...2.78.1) --- updated-dependencies: - dependency-name: docfx dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 85b44b223..1c5d6944a 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -24,7 +24,7 @@ "rollForward": false }, "docfx": { - "version": "2.78.0", + "version": "2.78.1", "commands": [ "docfx" ], From 2d80693eb0017d6a7cd9bf83d8e19417452bbb11 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 20 Nov 2024 10:24:58 -0700 Subject: [PATCH 235/257] Bump Microsoft.NET.Test.Sdk from 17.11.1 to 17.12.0 (#312) Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.11.1 to 17.12.0. - [Release notes](https://github.com/microsoft/vstest/releases) - [Changelog](https://github.com/microsoft/vstest/blob/main/docs/releases.md) - [Commits](https://github.com/microsoft/vstest/compare/v17.11.1...v17.12.0) --- updated-dependencies: - dependency-name: Microsoft.NET.Test.Sdk dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index aa1a719da..1a464d153 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -6,7 +6,7 @@ true - + From 49241ecb5b85fc42897ae0ec0457d572eff630f7 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Fri, 22 Nov 2024 18:49:08 -0700 Subject: [PATCH 236/257] Use `-LiteralPath` instead of `-Path` in ps1 scripts Fixes #314 --- Expand-Template.ps1 | 4 ++-- azure-pipelines/Get-CodeCovTool.ps1 | 2 +- azure-pipelines/Merge-CodeCoverage.ps1 | 2 +- azure-pipelines/artifacts/Variables.ps1 | 4 ++-- azure-pipelines/artifacts/_pipelines.ps1 | 2 +- azure-pipelines/artifacts/_stage_all.ps1 | 2 +- azure-pipelines/artifacts/coverageResults.ps1 | 4 ++-- azure-pipelines/dotnet-test-cloud.ps1 | 2 +- azure-pipelines/publish-CodeCov.ps1 | 2 +- azure-pipelines/variables/DotNetSdkVersion.ps1 | 2 +- azure-pipelines/variables/_pipelines.ps1 | 4 ++-- tools/Install-DotNetSdk.ps1 | 4 ++-- tools/Install-NuGetCredProvider.ps1 | 2 +- tools/Set-EnvVars.ps1 | 12 ++++++------ 14 files changed, 24 insertions(+), 24 deletions(-) diff --git a/Expand-Template.ps1 b/Expand-Template.ps1 index 44ef68266..9f9db676c 100755 --- a/Expand-Template.ps1 +++ b/Expand-Template.ps1 @@ -40,7 +40,7 @@ function Replace-Placeholders { $Path = Resolve-Path $Path Write-Host "Replacing tokens in `"$Path`"" - $content = Get-Content -Path $Path | Out-String + $content = Get-Content -LiteralPath $Path | Out-String $Replacements.GetEnumerator() |% { $modifiedContent = $content -replace $_.Key,$_.Value if ($modifiedContent -eq $content) { @@ -199,7 +199,7 @@ try { # Self-integrity check Get-ChildItem -Recurse -File -Exclude bin,obj,README.md,Expand-Template.* |? { -not $_.FullName.Contains("obj") } |% { - $PLACEHOLDERS = Get-Content -Path $_.FullName |? { $_.Contains('PLACEHOLDER') } + $PLACEHOLDERS = Get-Content -LiteralPath $_.FullName |? { $_.Contains('PLACEHOLDER') } if ($PLACEHOLDERS) { Write-Error "PLACEHOLDER discovered in $($_.FullName)" } diff --git a/azure-pipelines/Get-CodeCovTool.ps1 b/azure-pipelines/Get-CodeCovTool.ps1 index ca580b4db..734ee6079 100644 --- a/azure-pipelines/Get-CodeCovTool.ps1 +++ b/azure-pipelines/Get-CodeCovTool.ps1 @@ -68,7 +68,7 @@ if (!(Test-Path $finalToolPath)) { } Write-Host "Verifying hash on downloaded tool" -ForegroundColor Yellow - $actualHash = (Get-FileHash -Path $tool -Algorithm SHA256).Hash + $actualHash = (Get-FileHash -LiteralPath $tool -Algorithm SHA256).Hash $expectedHash = (Get-Content $sha).Split()[0] if ($actualHash -ne $expectedHash) { # Validation failed. Delete the tool so we can't execute it. diff --git a/azure-pipelines/Merge-CodeCoverage.ps1 b/azure-pipelines/Merge-CodeCoverage.ps1 index 5ecabbc9b..308f57546 100644 --- a/azure-pipelines/Merge-CodeCoverage.ps1 +++ b/azure-pipelines/Merge-CodeCoverage.ps1 @@ -28,7 +28,7 @@ try { if ($reports) { $reports |% { $_.FullName } |% { # In addition to replacing {reporoot}, we also normalize on one kind of slash so that the report aggregates data for a file whether data was collected on Windows or not. - $xml = [xml](Get-Content -Path $_) + $xml = [xml](Get-Content -LiteralPath $_) $xml.coverage.packages.package.classes.class |? { $_.filename} |% { $_.filename = $_.filename.Replace('{reporoot}', $RepoRoot).Replace([IO.Path]::AltDirectorySeparatorChar, [IO.Path]::DirectorySeparatorChar) } diff --git a/azure-pipelines/artifacts/Variables.ps1 b/azure-pipelines/artifacts/Variables.ps1 index 4bc6d2165..7a320c7ea 100644 --- a/azure-pipelines/artifacts/Variables.ps1 +++ b/azure-pipelines/artifacts/Variables.ps1 @@ -32,10 +32,10 @@ Get-ChildItem "$PSScriptRoot/../variables" |% { # If that didn't get us anything, just copy the script itself if (-not $value) { - $value = Get-Content -Path $_.FullName + $value = Get-Content -LiteralPath $_.FullName } - Set-Content -Path "$VariablesArtifactPath/$($_.Name)" -Value $value + Set-Content -LiteralPath "$VariablesArtifactPath/$($_.Name)" -Value $value } @{ diff --git a/azure-pipelines/artifacts/_pipelines.ps1 b/azure-pipelines/artifacts/_pipelines.ps1 index 47321ed5b..5f259a512 100644 --- a/azure-pipelines/artifacts/_pipelines.ps1 +++ b/azure-pipelines/artifacts/_pipelines.ps1 @@ -16,7 +16,7 @@ Function Set-PipelineVariable($name, $value) { return # already set } - #New-Item -Path "Env:\$name".ToUpper() -Value $value -Force | Out-Null + #New-Item -LiteralPath "Env:\$name".ToUpper() -Value $value -Force | Out-Null Write-Host "##vso[task.setvariable variable=$name]$value" } diff --git a/azure-pipelines/artifacts/_stage_all.ps1 b/azure-pipelines/artifacts/_stage_all.ps1 index 74d7a38df..bf961ce57 100644 --- a/azure-pipelines/artifacts/_stage_all.ps1 +++ b/azure-pipelines/artifacts/_stage_all.ps1 @@ -51,7 +51,7 @@ $Artifacts |% { if (Test-Path -PathType Leaf $_.Source) { # skip folders $TargetPath = Join-Path $DestinationFolder $Name if ($AvoidSymbolicLinks) { - Copy-Item -Path $_.Source -Destination $TargetPath + Copy-Item -LiteralPath $_.Source -Destination $TargetPath } else { Create-SymbolicLink -Link $TargetPath -Target $_.Source } diff --git a/azure-pipelines/artifacts/coverageResults.ps1 b/azure-pipelines/artifacts/coverageResults.ps1 index 280ff9ae0..a6c8f4200 100644 --- a/azure-pipelines/artifacts/coverageResults.ps1 +++ b/azure-pipelines/artifacts/coverageResults.ps1 @@ -6,8 +6,8 @@ $coverageFiles = @(Get-ChildItem "$RepoRoot/test/*.cobertura.xml" -Recurse | Whe if ($env:SYSTEM_DEFAULTWORKINGDIRECTORY) { Write-Host "Substituting $env:SYSTEM_DEFAULTWORKINGDIRECTORY with `"{reporoot}`"" $coverageFiles |% { - $content = Get-Content -Path $_ |% { $_ -Replace [regex]::Escape($env:SYSTEM_DEFAULTWORKINGDIRECTORY), "{reporoot}" } - Set-Content -Path $_ -Value $content -Encoding UTF8 + $content = Get-Content -LiteralPath $_ |% { $_ -Replace [regex]::Escape($env:SYSTEM_DEFAULTWORKINGDIRECTORY), "{reporoot}" } + Set-Content -LiteralPath $_ -Value $content -Encoding UTF8 } } else { Write-Warning "coverageResults: Azure Pipelines not detected. Machine-neutral token replacement skipped." diff --git a/azure-pipelines/dotnet-test-cloud.ps1 b/azure-pipelines/dotnet-test-cloud.ps1 index 24bf812a1..33ff3d7c0 100755 --- a/azure-pipelines/dotnet-test-cloud.ps1 +++ b/azure-pipelines/dotnet-test-cloud.ps1 @@ -61,7 +61,7 @@ Get-ChildItem -Recurse -Path $RepoRoot\test\*.trx |% { Copy-Item $_ -Destination $ArtifactStagingFolder/test_logs/ if ($PublishResults) { - $x = [xml](Get-Content -Path $_) + $x = [xml](Get-Content -LiteralPath $_) $runTitle = $null if ($x.TestRun.TestDefinitions -and $x.TestRun.TestDefinitions.GetElementsByTagName('UnitTest')) { $storage = $x.TestRun.TestDefinitions.GetElementsByTagName('UnitTest')[0].storage -replace '\\','/' diff --git a/azure-pipelines/publish-CodeCov.ps1 b/azure-pipelines/publish-CodeCov.ps1 index 9926f0188..1d7365110 100644 --- a/azure-pipelines/publish-CodeCov.ps1 +++ b/azure-pipelines/publish-CodeCov.ps1 @@ -22,7 +22,7 @@ Param ( $RepoRoot = (Resolve-Path "$PSScriptRoot/..").Path -Get-ChildItem -Recurse -Path $PathToCodeCoverage -Filter "*.cobertura.xml" | % { +Get-ChildItem -Recurse -LiteralPath $PathToCodeCoverage -Filter "*.cobertura.xml" | % { $relativeFilePath = Resolve-Path -relative $_.FullName Write-Host "Uploading: $relativeFilePath" -ForegroundColor Yellow diff --git a/azure-pipelines/variables/DotNetSdkVersion.ps1 b/azure-pipelines/variables/DotNetSdkVersion.ps1 index b213fbc27..722cc5845 100644 --- a/azure-pipelines/variables/DotNetSdkVersion.ps1 +++ b/azure-pipelines/variables/DotNetSdkVersion.ps1 @@ -1,2 +1,2 @@ -$globalJson = Get-Content -Path "$PSScriptRoot\..\..\global.json" | ConvertFrom-Json +$globalJson = Get-Content -LiteralPath "$PSScriptRoot\..\..\global.json" | ConvertFrom-Json $globalJson.sdk.version diff --git a/azure-pipelines/variables/_pipelines.ps1 b/azure-pipelines/variables/_pipelines.ps1 index 11748b81b..d40e5cf14 100644 --- a/azure-pipelines/variables/_pipelines.ps1 +++ b/azure-pipelines/variables/_pipelines.ps1 @@ -24,8 +24,8 @@ param ( # and the second that works across jobs and stages but must be fully qualified when referenced. Write-Host "##vso[task.setvariable variable=$keyCaps;isOutput=true]$($_.Value)" } elseif ($env:GITHUB_ACTIONS) { - Add-Content -Path $env:GITHUB_ENV -Value "$keyCaps=$($_.Value)" + Add-Content -LiteralPath $env:GITHUB_ENV -Value "$keyCaps=$($_.Value)" } - Set-Item -Path "env:$keyCaps" -Value $_.Value + Set-Item -LiteralPath "env:$keyCaps" -Value $_.Value } } diff --git a/tools/Install-DotNetSdk.ps1 b/tools/Install-DotNetSdk.ps1 index e190fcfbf..ffb522030 100644 --- a/tools/Install-DotNetSdk.ps1 +++ b/tools/Install-DotNetSdk.ps1 @@ -55,8 +55,8 @@ $runtimeVersions = @() $windowsDesktopRuntimeVersions = @() $aspnetRuntimeVersions = @() if (!$SdkOnly) { - Get-ChildItem "$PSScriptRoot\..\src\*.*proj","$PSScriptRoot\..\test\*.*proj","$PSScriptRoot\..\Directory.Build.props" -Recurse |% { - $projXml = [xml](Get-Content -Path $_) + Get-ChildItem "$PSScriptRoot\..\src\*.*proj", "$PSScriptRoot\..\test\*.*proj", "$PSScriptRoot\..\Directory.Build.props" -Recurse | % { + $projXml = [xml](Get-Content -LiteralPath $_) $pg = $projXml.Project.PropertyGroup if ($pg) { $targetFrameworks = @() diff --git a/tools/Install-NuGetCredProvider.ps1 b/tools/Install-NuGetCredProvider.ps1 index 857324b64..2b904e33e 100755 --- a/tools/Install-NuGetCredProvider.ps1 +++ b/tools/Install-NuGetCredProvider.ps1 @@ -50,7 +50,7 @@ if ($AccessToken) { $endpointURIs = @() Get-ChildItem "$PSScriptRoot\..\nuget.config" -Recurse |% { - $nugetConfig = [xml](Get-Content -Path $_) + $nugetConfig = [xml](Get-Content -LiteralPath $_) $nugetConfig.configuration.packageSources.add |? { ($_.value -match '^https://pkgs\.dev\.azure\.com/') -or ($_.value -match '^https://[\w\-]+\.pkgs\.visualstudio\.com/') } |% { if ($endpointURIs -notcontains $_.Value) { diff --git a/tools/Set-EnvVars.ps1 b/tools/Set-EnvVars.ps1 index 3f6f86ba5..2bd3ca4db 100644 --- a/tools/Set-EnvVars.ps1 +++ b/tools/Set-EnvVars.ps1 @@ -45,14 +45,14 @@ if ($env:GITHUB_ACTIONS) { $CmdEnvScript = '' $Variables.GetEnumerator() |% { - Set-Item -Path env:$($_.Key) -Value $_.Value + Set-Item -LiteralPath env:$($_.Key) -Value $_.Value # If we're running in a cloud CI, set these environment variables so they propagate. if ($env:TF_BUILD) { Write-Host "##vso[task.setvariable variable=$($_.Key);]$($_.Value)" } if ($env:GITHUB_ACTIONS) { - Add-Content -Path $env:GITHUB_ENV -Value "$($_.Key)=$($_.Value)" + Add-Content -LiteralPath $env:GITHUB_ENV -Value "$($_.Key)=$($_.Value)" } if ($cmdInstructions) { @@ -70,7 +70,7 @@ if ($IsMacOS -or $IsLinux) { if ($PrependPath) { $PrependPath |% { $newPathValue = "$_$pathDelimiter$env:PATH" - Set-Item -Path env:PATH -Value $newPathValue + Set-Item -LiteralPath env:PATH -Value $newPathValue if ($cmdInstructions) { Write-Host "SET PATH=$newPathValue" } @@ -79,7 +79,7 @@ if ($PrependPath) { Write-Host "##vso[task.prependpath]$_" } if ($env:GITHUB_ACTIONS) { - Add-Content -Path $env:GITHUB_PATH -Value $_ + Add-Content -LiteralPath $env:GITHUB_PATH -Value $_ } $CmdEnvScript += "SET PATH=$_$pathDelimiter%PATH%" @@ -88,10 +88,10 @@ if ($PrependPath) { if ($env:CmdEnvScriptPath) { if (Test-Path $env:CmdEnvScriptPath) { - $CmdEnvScript = (Get-Content -Path $env:CmdEnvScriptPath) + $CmdEnvScript + $CmdEnvScript = (Get-Content -LiteralPath $env:CmdEnvScriptPath) + $CmdEnvScript } - Set-Content -Path $env:CmdEnvScriptPath -Value $CmdEnvScript + Set-Content -LiteralPath $env:CmdEnvScriptPath -Value $CmdEnvScript } return !$cmdInstructions From 110da233b0796e2c3e9a3acfabe9df70334a796e Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 25 Nov 2024 06:51:07 -0700 Subject: [PATCH 237/257] Replace `Nullable` with `PolySharp` as a dependency PolySharp is far more exhaustive in the polyfills than Nullable is. --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 1a464d153..237b3c2c6 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -15,7 +15,7 @@ - +
From f8235e44613937e4f524aeae1654c1438fd1d612 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 27 Nov 2024 11:36:45 -0700 Subject: [PATCH 238/257] Add docfx verification to build --- .github/workflows/build.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 24bc7d9e4..6b1fb6060 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -3,8 +3,8 @@ name: CI on: push: branches: - - main - - validate/* + - main + - validate/* pull_request: env: @@ -51,6 +51,9 @@ jobs: run: dotnet format --verify-no-changes --no-restore shell: pwsh if: runner.os == 'Linux' + - name: 📚 Verify docfx build + run: dotnet docfx docfx/docfx.json --warningsAsErrors --disableGitFeatures + if: runner.os == 'Linux' - name: ⚙ Update pipeline variables based on build outputs run: azure-pipelines/variables/_pipelines.ps1 shell: pwsh From 45279a7aaf81400e9420099490a33c41d87bd2c4 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Wed, 27 Nov 2024 12:02:22 -0700 Subject: [PATCH 239/257] Fix nb.gv failure during docfx build --- .github/workflows/docs.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 6e6e64a08..1820866e7 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -25,6 +25,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + with: + fetch-depth: 0 # avoid shallow clone so nbgv can do its work. - name: ⚙ Install prerequisites run: ./init.ps1 -UpgradePrerequisites From 3a32d099657cdfddc0175cdacbd55a450c171a6e Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sat, 30 Nov 2024 09:02:09 -0700 Subject: [PATCH 240/257] Remove double word from boilerplate docfx text --- docfx/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docfx/index.md b/docfx/index.md index fc1b9e286..391ee6ec5 100644 --- a/docfx/index.md +++ b/docfx/index.md @@ -6,4 +6,4 @@ _layout: landing This is your docfx landing page. -Click "Docs" across the top to get get started. +Click "Docs" across the top to get started. From feb1a4651ff6fcf933deae89478c1f06dab2db6c Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 2 Dec 2024 07:10:53 -0700 Subject: [PATCH 241/257] Bump docfx to 2.78.2 --- .config/dotnet-tools.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 1c5d6944a..81e88d255 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -24,11 +24,11 @@ "rollForward": false }, "docfx": { - "version": "2.78.1", + "version": "2.78.2", "commands": [ "docfx" ], "rollForward": false } } -} \ No newline at end of file +} From 4e83d07255d65a047e92ae7570493268bb0efb56 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 8 Dec 2024 15:06:17 -0700 Subject: [PATCH 242/257] Bump benchmarks to net9.0 --- azure-pipelines.yml | 4 ++-- .../Nerdbank.GitVersioning.Benchmarks.csproj | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 66abfc8ff..4ff44f623 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -136,7 +136,7 @@ stages: dotnet build -c Release displayName: Build in Release mode - script: | - dotnet run -c Release -f net8.0 -- --filter *GetVersionBenchmarks* --artifacts $(Build.ArtifactStagingDirectory)/benchmarks/packed/$(imageName) + dotnet run -c Release -f net9.0 -- --filter *GetVersionBenchmarks* --artifacts $(Build.ArtifactStagingDirectory)/benchmarks/packed/$(imageName) workingDirectory: test/Nerdbank.GitVersioning.Benchmarks displayName: Run benchmarks (packed) - bash: | @@ -153,7 +153,7 @@ stages: git unpack-objects < .git/objects/pack/*.pack displayName: Unpack Git repositories - script: | - dotnet run -c Release -f net8.0 -- --filter '*GetVersionBenchmarks*' --artifacts $(Build.ArtifactStagingDirectory)/benchmarks/unpacked/$(imageName) + dotnet run -c Release -f net9.0 -- --filter '*GetVersionBenchmarks*' --artifacts $(Build.ArtifactStagingDirectory)/benchmarks/unpacked/$(imageName) workingDirectory: test/Nerdbank.GitVersioning.Benchmarks displayName: Run benchmarks (unpacked) - task: PublishBuildArtifacts@1 diff --git a/test/Nerdbank.GitVersioning.Benchmarks/Nerdbank.GitVersioning.Benchmarks.csproj b/test/Nerdbank.GitVersioning.Benchmarks/Nerdbank.GitVersioning.Benchmarks.csproj index b762b66d1..0dc719f4a 100644 --- a/test/Nerdbank.GitVersioning.Benchmarks/Nerdbank.GitVersioning.Benchmarks.csproj +++ b/test/Nerdbank.GitVersioning.Benchmarks/Nerdbank.GitVersioning.Benchmarks.csproj @@ -1,7 +1,7 @@  - net8.0 + net9.0 $(TargetFrameworks);net472 Exe true From c72a1e09c3dd956a824b1f8b78f87ef6a6040f89 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 8 Dec 2024 15:09:51 -0700 Subject: [PATCH 243/257] Bump a few dependencies to resolve nuget deprecation warnings --- Directory.Packages.props | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Directory.Packages.props b/Directory.Packages.props index e56f3b92a..ff11578c6 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -31,9 +31,12 @@ + + + From 27378e247003e3a17ae24bfc03a8dda5e02aed21 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 8 Dec 2024 15:05:16 -0700 Subject: [PATCH 244/257] Avoid inexact stream reads --- .../ManagedGit/GitObjectStream.cs | 4 +- .../ManagedGit/GitPackReader.cs | 75 ++++++++++--------- .../ManagedGit/GitPackDeltafiedStreamTests.cs | 4 +- .../ManagedGit/ZLibStreamTest.cs | 2 +- 4 files changed, 46 insertions(+), 39 deletions(-) diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitObjectStream.cs b/src/NerdBank.GitVersioning/ManagedGit/GitObjectStream.cs index 7b4749d0e..a452d8898 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitObjectStream.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitObjectStream.cs @@ -45,7 +45,7 @@ public GitObjectStream(Stream stream, string objectType) private void ReadObjectTypeAndLength(string objectType) { Span buffer = stackalloc byte[128]; - this.Read(buffer.Slice(0, objectType.Length + 1)); + this.ReadAll(buffer.Slice(0, objectType.Length + 1)); string? actualObjectType = GitRepository.GetString(buffer.Slice(0, objectType.Length)); this.ObjectType = actualObjectType; @@ -55,7 +55,7 @@ private void ReadObjectTypeAndLength(string objectType) while (headerLength < buffer.Length) { - this.Read(buffer.Slice(headerLength, 1)); + this.ReadAll(buffer.Slice(headerLength, 1)); if (buffer[headerLength] == 0) { diff --git a/src/NerdBank.GitVersioning/ManagedGit/GitPackReader.cs b/src/NerdBank.GitVersioning/ManagedGit/GitPackReader.cs index 12ca78659..df76e5861 100644 --- a/src/NerdBank.GitVersioning/ManagedGit/GitPackReader.cs +++ b/src/NerdBank.GitVersioning/ManagedGit/GitPackReader.cs @@ -24,60 +24,67 @@ public static Stream GetObject(GitPack pack, Stream stream, long offset, string throw new ArgumentNullException(nameof(stream)); } - // Read the signature + try + { + // Read the signature #if DEBUG - stream.Seek(0, SeekOrigin.Begin); - Span buffer = stackalloc byte[12]; - stream.ReadAll(buffer); + stream.Seek(0, SeekOrigin.Begin); + Span buffer = stackalloc byte[12]; + stream.ReadAll(buffer); - Debug.Assert(buffer.Slice(0, 4).SequenceEqual(Signature)); + Debug.Assert(buffer.Slice(0, 4).SequenceEqual(Signature)); - int versionNumber = BinaryPrimitives.ReadInt32BigEndian(buffer.Slice(4, 4)); - Debug.Assert(versionNumber == 2); + int versionNumber = BinaryPrimitives.ReadInt32BigEndian(buffer.Slice(4, 4)); + Debug.Assert(versionNumber == 2); - int numberOfObjects = BinaryPrimitives.ReadInt32BigEndian(buffer.Slice(8, 4)); + int numberOfObjects = BinaryPrimitives.ReadInt32BigEndian(buffer.Slice(8, 4)); #endif - stream.Seek(offset, SeekOrigin.Begin); + stream.Seek(offset, SeekOrigin.Begin); - (GitPackObjectType type, long decompressedSize) = ReadObjectHeader(stream); + (GitPackObjectType type, long decompressedSize) = ReadObjectHeader(stream); - if (type == GitPackObjectType.OBJ_OFS_DELTA) - { - long baseObjectRelativeOffset = ReadVariableLengthInteger(stream); - long baseObjectOffset = offset - baseObjectRelativeOffset; + if (type == GitPackObjectType.OBJ_OFS_DELTA) + { + long baseObjectRelativeOffset = ReadVariableLengthInteger(stream); + long baseObjectOffset = offset - baseObjectRelativeOffset; - var deltaStream = new ZLibStream(stream, decompressedSize); - Stream? baseObjectStream = pack.GetObject(baseObjectOffset, objectType); + var deltaStream = new ZLibStream(stream, decompressedSize); + Stream? baseObjectStream = pack.GetObject(baseObjectOffset, objectType); - return new GitPackDeltafiedStream(baseObjectStream, deltaStream); - } - else if (type == GitPackObjectType.OBJ_REF_DELTA) - { - Span baseObjectId = stackalloc byte[20]; - stream.ReadAll(baseObjectId); + return new GitPackDeltafiedStream(baseObjectStream, deltaStream); + } + else if (type == GitPackObjectType.OBJ_REF_DELTA) + { + Span baseObjectId = stackalloc byte[20]; + stream.ReadAll(baseObjectId); - Stream baseObject = pack.GetObjectFromRepository(GitObjectId.Parse(baseObjectId), objectType)!; - var seekableBaseObject = new GitPackMemoryCacheStream(baseObject); + Stream baseObject = pack.GetObjectFromRepository(GitObjectId.Parse(baseObjectId), objectType)!; + var seekableBaseObject = new GitPackMemoryCacheStream(baseObject); - var deltaStream = new ZLibStream(stream, decompressedSize); + var deltaStream = new ZLibStream(stream, decompressedSize); - return new GitPackDeltafiedStream(seekableBaseObject, deltaStream); - } + return new GitPackDeltafiedStream(seekableBaseObject, deltaStream); + } + + // Tips for handling deltas: https://github.com/choffmeister/gitnet/blob/4d907623d5ce2d79a8875aee82e718c12a8aad0b/src/GitNet/GitPack.cs + if (type != packObjectType) + { + throw new GitException($"An object of type {objectType} could not be located at offset {offset}.") { ErrorCode = GitException.ErrorCodes.ObjectNotFound }; + } - // Tips for handling deltas: https://github.com/choffmeister/gitnet/blob/4d907623d5ce2d79a8875aee82e718c12a8aad0b/src/GitNet/GitPack.cs - if (type != packObjectType) + return new ZLibStream(stream, decompressedSize); + } + catch (EndOfStreamException eof) { - throw new GitException($"An object of type {objectType} could not be located at offset {offset}.") { ErrorCode = GitException.ErrorCodes.ObjectNotFound }; + throw new GitException($"An object of type {objectType} could not be located at offset {offset}.", eof) { ErrorCode = GitException.ErrorCodes.ObjectNotFound }; } - - return new ZLibStream(stream, decompressedSize); } private static (GitPackObjectType ObjectType, long Length) ReadObjectHeader(Stream stream) { Span value = stackalloc byte[1]; - stream.Read(value); + stream.ReadAll(value); var type = (GitPackObjectType)((value[0] & 0b0111_0000) >> 4); long length = value[0] & 0b_1111; @@ -91,7 +98,7 @@ private static (GitPackObjectType ObjectType, long Length) ReadObjectHeader(Stre do { - stream.Read(value); + stream.ReadAll(value); length = length | ((value[0] & 0b0111_1111L) << shift); shift += 7; } diff --git a/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackDeltafiedStreamTests.cs b/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackDeltafiedStreamTests.cs index 6f2af74ad..e8dcf6b76 100644 --- a/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackDeltafiedStreamTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/ManagedGit/GitPackDeltafiedStreamTests.cs @@ -23,7 +23,7 @@ public void TestDeltaStream(string basePath, string deltaPath, string expectedPa using (Stream expectedStream = TestUtilities.GetEmbeddedResource(expectedPath)) { expected = new byte[expectedStream.Length]; - expectedStream.Read(expected); + expectedStream.ReadAll(expected); } byte[] actual = new byte[expected.Length]; @@ -34,7 +34,7 @@ public void TestDeltaStream(string basePath, string deltaPath, string expectedPa { ////Assert.Equal(expected.Length, deltafiedStream.Length); - deltafiedStream.Read(actual); + deltafiedStream.ReadAll(actual); Assert.Equal(expected, actual); } diff --git a/test/Nerdbank.GitVersioning.Tests/ManagedGit/ZLibStreamTest.cs b/test/Nerdbank.GitVersioning.Tests/ManagedGit/ZLibStreamTest.cs index 70d087e9b..23a7dcb2a 100644 --- a/test/Nerdbank.GitVersioning.Tests/ManagedGit/ZLibStreamTest.cs +++ b/test/Nerdbank.GitVersioning.Tests/ManagedGit/ZLibStreamTest.cs @@ -41,7 +41,7 @@ public void SeekTest() // Seek past the commit 137 header, and make sure we can read the 'tree' word Assert.Equal(11, stream.Seek(11, SeekOrigin.Begin)); byte[] tree = new byte[4]; - stream.Read(tree); + stream.ReadAll(tree); Assert.Equal("tree", Encoding.UTF8.GetString(tree)); // Valid no-ops From 2e05b059cc558a94393f5a70b02ba43a8e815863 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 8 Dec 2024 17:14:18 -0700 Subject: [PATCH 245/257] Target supported .NET runtimes --- azure-pipelines/dotnet.yml | 2 +- build.ps1 | 2 +- src/Cake.GitVersioning/Cake.GitVersioning.csproj | 16 ++++++++-------- .../Nerdbank.GitVersioning.csproj | 4 ++-- .../Nerdbank.GitVersioning.Tasks.csproj | 8 ++++---- .../Nerdbank.GitVersioning.Tasks.targets | 2 +- .../Nerdbank.GitVersioning.nuspec | 12 ++++++------ src/nbgv/nbgv.csproj | 4 ++-- src/nerdbank-gitversioning.npm/ts/core.ts | 2 +- .../Cake.GitVersioning.Tests.csproj | 2 +- .../GetVersionBenchmarks.cs | 2 +- .../Nerdbank.GitVersioning.Tests.csproj | 2 +- 12 files changed, 29 insertions(+), 29 deletions(-) diff --git a/azure-pipelines/dotnet.yml b/azure-pipelines/dotnet.yml index 96f2a8e3f..ef94301a1 100644 --- a/azure-pipelines/dotnet.yml +++ b/azure-pipelines/dotnet.yml @@ -15,7 +15,7 @@ steps: displayName: 🛠️ Build LKG package workingDirectory: src/Nerdbank.GitVersioning.Tasks -- script: dotnet publish -c $(BuildConfiguration) -o ../nerdbank-gitversioning.npm/out/nbgv.cli/tools/net6.0/any /bl:"$(Build.ArtifactStagingDirectory)/build_logs/nbgv_publish.binlog" +- script: dotnet publish -c $(BuildConfiguration) -o ../nerdbank-gitversioning.npm/out/nbgv.cli/tools/net8.0/any /bl:"$(Build.ArtifactStagingDirectory)/build_logs/nbgv_publish.binlog" displayName: 📢 Publish nbgv tool workingDirectory: src/nbgv diff --git a/build.ps1 b/build.ps1 index 1d150f01a..b37ea8059 100644 --- a/build.ps1 +++ b/build.ps1 @@ -31,7 +31,7 @@ try { } if ($PSCmdlet.ShouldProcess('src/nbgv', 'dotnet publish')) { - dotnet publish src/nbgv -c $Configuration -o src/nerdbank-gitversioning.npm/out/nbgv.cli/tools/net6.0/any + dotnet publish src/nbgv -c $Configuration -o src/nerdbank-gitversioning.npm/out/nbgv.cli/tools/net8.0/any if ($LASTEXITCODE -ne 0) { throw "dotnet publish failed" } diff --git a/src/Cake.GitVersioning/Cake.GitVersioning.csproj b/src/Cake.GitVersioning/Cake.GitVersioning.csproj index 7c978f077..f2538a180 100644 --- a/src/Cake.GitVersioning/Cake.GitVersioning.csproj +++ b/src/Cake.GitVersioning/Cake.GitVersioning.csproj @@ -1,7 +1,7 @@ - + - net6.0 + net8.0 true Chris Crutchfield, Andrew Arnott andarno @@ -37,14 +37,14 @@ - + - - - - - + + + + + diff --git a/src/NerdBank.GitVersioning/Nerdbank.GitVersioning.csproj b/src/NerdBank.GitVersioning/Nerdbank.GitVersioning.csproj index 84cc1f758..5d4a4af4a 100644 --- a/src/NerdBank.GitVersioning/Nerdbank.GitVersioning.csproj +++ b/src/NerdBank.GitVersioning/Nerdbank.GitVersioning.csproj @@ -1,6 +1,6 @@ - + - net472;net6.0 + net472;net8.0 true Full false diff --git a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.csproj b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.csproj index bbfe4557c..8b8a4a4b1 100644 --- a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.csproj +++ b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.csproj @@ -1,6 +1,6 @@ - + - net472;net6.0 + net472;net8.0 true Nerdbank.GitVersioning.nuspec @@ -43,12 +43,12 @@ - + - + diff --git a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.targets b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.targets index 6ccb82a1a..eb4b11c2b 100644 --- a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.targets +++ b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.targets @@ -9,7 +9,7 @@ - MSBuildCore\ + MSBuildCore\ MSBuildFull\ diff --git a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec index bd92e87b9..3515b8e72 100644 --- a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec +++ b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec @@ -37,12 +37,12 @@ IMPORTANT: The 3.x release may produce a different version height than prior maj - - - - - - + + + + + + diff --git a/src/nbgv/nbgv.csproj b/src/nbgv/nbgv.csproj index 8dfcf1255..1bfdefae0 100644 --- a/src/nbgv/nbgv.csproj +++ b/src/nbgv/nbgv.csproj @@ -1,10 +1,10 @@ - + nbgv True Exe - net6.0 + net8.0 Nerdbank.GitVersioning.Tool A .NET Core Tool that can install, read and set version information based on git history, using Nerdbank.GitVersioning. diff --git a/src/nerdbank-gitversioning.npm/ts/core.ts b/src/nerdbank-gitversioning.npm/ts/core.ts index 10c786754..706544a88 100644 --- a/src/nerdbank-gitversioning.npm/ts/core.ts +++ b/src/nerdbank-gitversioning.npm/ts/core.ts @@ -5,6 +5,6 @@ const nbgvPath = 'nbgv.cli'; export function getNbgvCommand(dotnetCommand?: string): string { var command = dotnetCommand || 'dotnet'; - const nbgvDll = path.join(__dirname, nbgvPath, "tools", "net6.0", "any", "nbgv.dll"); + const nbgvDll = path.join(__dirname, nbgvPath, "tools", "net8.0", "any", "nbgv.dll"); return `${command} "${nbgvDll}"`; } diff --git a/test/Cake.GitVersioning.Tests/Cake.GitVersioning.Tests.csproj b/test/Cake.GitVersioning.Tests/Cake.GitVersioning.Tests.csproj index e79d49313..c27fb8907 100644 --- a/test/Cake.GitVersioning.Tests/Cake.GitVersioning.Tests.csproj +++ b/test/Cake.GitVersioning.Tests/Cake.GitVersioning.Tests.csproj @@ -1,7 +1,7 @@ - net6.0 + net8.0 false true false diff --git a/test/Nerdbank.GitVersioning.Benchmarks/GetVersionBenchmarks.cs b/test/Nerdbank.GitVersioning.Benchmarks/GetVersionBenchmarks.cs index 8d580c793..47c6a2fd0 100644 --- a/test/Nerdbank.GitVersioning.Benchmarks/GetVersionBenchmarks.cs +++ b/test/Nerdbank.GitVersioning.Benchmarks/GetVersionBenchmarks.cs @@ -9,7 +9,7 @@ namespace Nerdbank.GitVersioning.Benchmarks { - [SimpleJob(RuntimeMoniker.Net80)] + [SimpleJob(RuntimeMoniker.Net90)] [SimpleJob(RuntimeMoniker.Net472, baseline: true)] public class GetVersionBenchmarks { diff --git a/test/Nerdbank.GitVersioning.Tests/Nerdbank.GitVersioning.Tests.csproj b/test/Nerdbank.GitVersioning.Tests/Nerdbank.GitVersioning.Tests.csproj index 3a753fcc4..f7e8f501e 100644 --- a/test/Nerdbank.GitVersioning.Tests/Nerdbank.GitVersioning.Tests.csproj +++ b/test/Nerdbank.GitVersioning.Tests/Nerdbank.GitVersioning.Tests.csproj @@ -1,6 +1,6 @@ - net8.0 + net9.0 $(TargetFrameworks);net472 true true From 31cbe67fd020433e4713b4a3e641eaf489d7fe79 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 8 Dec 2024 17:05:44 -0700 Subject: [PATCH 246/257] Test on supported .NET SDKs --- azure-pipelines.yml | 32 +++++++++++--------------------- 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 34378ca36..65830fb8d 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -21,18 +21,14 @@ parameters: resources: containers: - - container: focal - image: mcr.microsoft.com/dotnet/sdk:6.0-focal - - container: jammy60 - image: mcr.microsoft.com/dotnet/sdk:6.0-jammy - - container: jammy70 - image: mcr.microsoft.com/dotnet/sdk:7.0-jammy - container: jammy80 image: mcr.microsoft.com/dotnet/sdk:8.0-jammy - - container: debian70 - image: mcr.microsoft.com/dotnet/sdk:7.0 + - container: noble90 + image: mcr.microsoft.com/dotnet/sdk:9.0-noble - container: debian80 image: mcr.microsoft.com/dotnet/sdk:8.0 + - container: debian90 + image: mcr.microsoft.com/dotnet/sdk:9.0 variables: DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true @@ -56,24 +52,18 @@ stages: - job: linux strategy: matrix: - Ubuntu_Focal: - containerImage: focal - testCake: true - Ubuntu_Jammy_60: - containerImage: jammy60 - testCake: true - Ubuntu_Jammy_70: - containerImage: jammy70 - testCake: true Ubuntu_Jammy_80: containerImage: jammy80 - testCake: false - Debian_70: - containerImage: debian70 + testCake: true + Ubuntu_Noble_90: + containerImage: noble90 testCake: true Debian_80: containerImage: debian80 - testCake: false + testCake: true + Debian_90: + containerImage: debian90 + testCake: true pool: vmImage: ubuntu-22.04 container: $[ variables['containerImage'] ] From fa704b33d71ad74c39cec87661f74377a11401cc Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 8 Dec 2024 17:21:38 -0700 Subject: [PATCH 247/257] Fix bad merge --- Directory.Packages.props | 1 - 1 file changed, 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 0d6c0370f..b744d29b2 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -31,7 +31,6 @@ - From 0be6f5af3c00d30ab6fe4c4ac2ad1f16963dbc13 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 8 Dec 2024 17:21:54 -0700 Subject: [PATCH 248/257] Mark .NET 8 exception deserialization ctors as obsolete --- src/NerdBank.GitVersioning/GitException.cs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/NerdBank.GitVersioning/GitException.cs b/src/NerdBank.GitVersioning/GitException.cs index 2a37dc938..e5ef129dd 100644 --- a/src/NerdBank.GitVersioning/GitException.cs +++ b/src/NerdBank.GitVersioning/GitException.cs @@ -48,6 +48,9 @@ public GitException(string message, Exception innerException) /// Initializes a new instance of the class. ///
/// +#if NET + [Obsolete] +#endif protected GitException(SerializationInfo info, StreamingContext context) : base(info, context) { @@ -82,6 +85,9 @@ public enum ErrorCodes public bool IsShallowClone { get; set; } /// +#if NET + [Obsolete] +#endif public override void GetObjectData(SerializationInfo info, StreamingContext context) { base.GetObjectData(info, context); From 5e15d6245f0ad618ec1e17db8ad391bcbd593e0d Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 8 Dec 2024 17:55:09 -0700 Subject: [PATCH 249/257] Adapt to .NET 9 breaking change regarding environment variables https://learn.microsoft.com/en-us/dotnet/core/compatibility/core-libraries/9.0/empty-env-variable --- .../CloudBuildServices/GitLab.cs | 2 +- .../CloudBuildServices/TeamCity.cs | 2 +- .../BuildIntegrationTests.cs | 16 ++++++++-------- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/NerdBank.GitVersioning/CloudBuildServices/GitLab.cs b/src/NerdBank.GitVersioning/CloudBuildServices/GitLab.cs index f02e4e17f..939d3050d 100644 --- a/src/NerdBank.GitVersioning/CloudBuildServices/GitLab.cs +++ b/src/NerdBank.GitVersioning/CloudBuildServices/GitLab.cs @@ -20,7 +20,7 @@ internal class GitLab : ICloudBuild /// public string BuildingTag => - Environment.GetEnvironmentVariable("CI_COMMIT_TAG") is not null ? + !string.IsNullOrEmpty(Environment.GetEnvironmentVariable("CI_COMMIT_TAG")) ? $"refs/tags/{Environment.GetEnvironmentVariable("CI_COMMIT_TAG")}" : null; /// diff --git a/src/NerdBank.GitVersioning/CloudBuildServices/TeamCity.cs b/src/NerdBank.GitVersioning/CloudBuildServices/TeamCity.cs index 89f5b2436..f6f5f6c58 100644 --- a/src/NerdBank.GitVersioning/CloudBuildServices/TeamCity.cs +++ b/src/NerdBank.GitVersioning/CloudBuildServices/TeamCity.cs @@ -21,7 +21,7 @@ internal class TeamCity : ICloudBuild public string GitCommitId => Environment.GetEnvironmentVariable("BUILD_VCS_NUMBER"); /// - public bool IsApplicable => this.GitCommitId is not null; + public bool IsApplicable => !string.IsNullOrEmpty(this.GitCommitId); /// public bool IsPullRequest => false; diff --git a/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs b/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs index 104a74390..29d4bf026 100644 --- a/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs +++ b/test/Nerdbank.GitVersioning.Tests/BuildIntegrationTests.cs @@ -497,18 +497,18 @@ protected static class CloudBuild public static readonly ImmutableDictionary SuppressEnvironment = ImmutableDictionary.Empty // AppVeyor - .Add("APPVEYOR", string.Empty) - .Add("APPVEYOR_REPO_TAG", string.Empty) - .Add("APPVEYOR_REPO_TAG_NAME", string.Empty) - .Add("APPVEYOR_PULL_REQUEST_NUMBER", string.Empty) + .Add("APPVEYOR", null) + .Add("APPVEYOR_REPO_TAG", null) + .Add("APPVEYOR_REPO_TAG_NAME", null) + .Add("APPVEYOR_PULL_REQUEST_NUMBER", null) // VSTS - .Add("SYSTEM_TEAMPROJECTID", string.Empty) - .Add("BUILD_SOURCEBRANCH", string.Empty) + .Add("SYSTEM_TEAMPROJECTID", null) + .Add("BUILD_SOURCEBRANCH", null) // Teamcity - .Add("BUILD_VCS_NUMBER", string.Empty) - .Add("BUILD_GIT_BRANCH", string.Empty); + .Add("BUILD_VCS_NUMBER", null) + .Add("BUILD_GIT_BRANCH", null); public static readonly ImmutableDictionary VSTS = SuppressEnvironment .SetItem("SYSTEM_TEAMPROJECTID", "1"); From bd3ca477d15314696248bc593fdd905e1525d68d Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 8 Dec 2024 18:25:10 -0700 Subject: [PATCH 250/257] Stop dependabot from updating the SDK It'll always fail from dependabot because other changes are _always_ required. --- .github/dependabot.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 935a8772d..4423eef66 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -7,10 +7,6 @@ updates: directory: / schedule: interval: monthly -- package-ecosystem: dotnet-sdk - directory: / - schedule: - interval: monthly - package-ecosystem: npm directory: /src/nerdbank-gitversioning.npm schedule: From 130ad679bb04f5a57b2cbf111675303eb6f531e1 Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Sun, 8 Dec 2024 18:27:14 -0700 Subject: [PATCH 251/257] Bump dotnet-coverage to 17.13.1 --- .config/dotnet-tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 81e88d255..aaff6e7fc 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -10,7 +10,7 @@ "rollForward": false }, "dotnet-coverage": { - "version": "17.12.6", + "version": "17.13.1", "commands": [ "dotnet-coverage" ], From decd60661839ad3c6ea7b893f0e851be6a8c575e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Dec 2024 01:41:40 +0000 Subject: [PATCH 252/257] Bump System.Memory from 4.5.5 to 4.6.0 (#1129) --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index b744d29b2..7a3928ca4 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -34,7 +34,7 @@ - + From c1af134a4d509b1b3f11cdbc5bbd3b2f9762c057 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Dec 2024 01:43:37 +0000 Subject: [PATCH 253/257] Bump Xunit.SkippableFact from 1.4.13 to 1.5.23 (#1131) Bumps [Xunit.SkippableFact](https://github.com/AArnott/Xunit.SkippableFact) from 1.4.13 to 1.5.23. - [Release notes](https://github.com/AArnott/Xunit.SkippableFact/releases) - [Commits](https://github.com/AArnott/Xunit.SkippableFact/compare/v1.4.13...v1.5.23) --- updated-dependencies: - dependency-name: Xunit.SkippableFact dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 7a3928ca4..db20ceab1 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -42,7 +42,7 @@ - + From 478453db44cbc3b2240b5a2a31a8efcdf0318b4f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Dec 2024 02:09:38 +0000 Subject: [PATCH 254/257] Bump System.Threading.Tasks.Dataflow from 8.0.1 to 9.0.0 (#1134) Bumps [System.Threading.Tasks.Dataflow](https://github.com/dotnet/runtime) from 8.0.1 to 9.0.0. - [Release notes](https://github.com/dotnet/runtime/releases) - [Commits](https://github.com/dotnet/runtime/compare/v8.0.1...v9.0.0) --- updated-dependencies: - dependency-name: System.Threading.Tasks.Dataflow dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index db20ceab1..3dd6fa843 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -38,7 +38,7 @@ - + From bf4fa8afadae8a2ab26051736e358fd952831220 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Dec 2024 04:25:47 +0000 Subject: [PATCH 255/257] Bump NuGet.PackageManagement from 6.11.1 to 6.12.1 (#1132) --- Directory.Packages.props | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 3dd6fa843..7e592b668 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -29,11 +29,10 @@ - + - From 1283c6b310aec79e0f7c85eeb38e0baf80d01e98 Mon Sep 17 00:00:00 2001 From: Vitezslav Popovsky Date: Sun, 8 Dec 2024 01:44:47 +0100 Subject: [PATCH 256/257] Introduce `NBGV_UseAssemblyVersionInNativeVersion` msbuild property --- doc/msbuild.md | 1 + src/Nerdbank.GitVersioning.Tasks/NativeVersionInfo.cs | 4 +++- .../build/Nerdbank.GitVersioning.targets | 1 + 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/doc/msbuild.md b/doc/msbuild.md index 03daab3ee..b756b78f1 100644 --- a/doc/msbuild.md +++ b/doc/msbuild.md @@ -49,6 +49,7 @@ Property | Default | Description `NBGV_ThisAssemblyNamespace` | (empty) | Sets the namespace to use for the generated `ThisAssembly` class. `NBGV_EmitThisAssemblyClass` | `true` | When `false`, suppresses generation of the `ThisAssembly` class. `NBGV_ThisAssemblyIncludesPackageVersion` | `false` | When `true`, a `NuGetPackageVersion` property is added to the `ThisAssembly` class. +`NBGV_UseAssemblyVersionInNativeVersion` | `true` | When `false`, uses the `AssemblyFileVersion` as a native `PRODUCTVERSION`. ### Custom `ThisAssembly` static fields and constants diff --git a/src/Nerdbank.GitVersioning.Tasks/NativeVersionInfo.cs b/src/Nerdbank.GitVersioning.Tasks/NativeVersionInfo.cs index 2dd70746f..463af62e8 100644 --- a/src/Nerdbank.GitVersioning.Tasks/NativeVersionInfo.cs +++ b/src/Nerdbank.GitVersioning.Tasks/NativeVersionInfo.cs @@ -108,6 +108,8 @@ BLOCK NBGV_VERSION_BLOCK public string TargetFileName { get; set; } + public bool UseAssemblyVersionInNativeVersion { get; set; } = true; + /// public override bool Execute() { @@ -166,7 +168,7 @@ private void CreateDefines() return; } - if (!Version.TryParse(this.AssemblyVersion, out Version productVersion)) + if (!Version.TryParse(this.AssemblyVersion, out Version productVersion) || !this.UseAssemblyVersionInNativeVersion) { productVersion = fileVersion; } diff --git a/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets b/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets index 0fa3bb88f..ae5a21449 100644 --- a/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets +++ b/src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets @@ -215,6 +215,7 @@ AssemblyLanguage="$(AssemblyLanguage)" AssemblyCodepage="$(AssemblyCodepage)" TargetFileName="$(TargetFileName)" + UseAssemblyVersionInNativeVersion="$(NBGV_UseAssemblyVersionInNativeVersion)" /> From 63bbe780b086b5596350570e69ebf31a48aa84dd Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Mon, 9 Dec 2024 13:37:13 -0700 Subject: [PATCH 257/257] Set version to '3.7' --- version.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/version.json b/version.json index a7f3c7f8a..329e97b0f 100644 --- a/version.json +++ b/version.json @@ -1,6 +1,6 @@ { - "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json", - "version": "3.7-alpha", + "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/main/src/NerdBank.GitVersioning/version.schema.json", + "version": "3.7", "assemblyVersion": { "precision": "revision" },