From 7be37ceb6c9f4ee64dcc618457e84808012afa2e Mon Sep 17 00:00:00 2001 From: "dependjinbot[bot]" <71271483+dependjinbot[bot]@users.noreply.github.com> Date: Mon, 23 Jan 2023 22:04:56 +0000 Subject: [PATCH 01/13] Bump Endjin.PRAutoflow from 0.0.0 to 0.1.8 in .github/workflows (#44) * Committing changes * Committing changes * Committing changes Co-authored-by: dependjinbot --- .github/workflows/auto_release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/auto_release.yml b/.github/workflows/auto_release.yml index c19abda..66833ae 100644 --- a/.github/workflows/auto_release.yml +++ b/.github/workflows/auto_release.yml @@ -160,7 +160,7 @@ jobs: uses: actions/github-script@v6 with: script: | - return ( '${{ steps.is_human_pr.outputs.result }}' == 'True' || '${{ steps.watch_dependabot_prs.outputs.is_complete }}' == 'True') && '${{ steps.get_release_pending_pr_list.outputs.is_release_pending }}' == 'True' + return ( '${{ steps.is_human_pr.outputs.result }}' == 'true' || '${{ steps.watch_dependabot_prs.outputs.is_complete }}' == 'True') && '${{ steps.get_release_pending_pr_list.outputs.is_release_pending }}' == 'true' - name: Display job outputs run: | From d75cede83e1e0c1b8e59d69bfdc77429e325bc7e Mon Sep 17 00:00:00 2001 From: "dependjinbot[bot]" <71271483+dependjinbot[bot]@users.noreply.github.com> Date: Tue, 24 Jan 2023 02:25:34 +0000 Subject: [PATCH 02/13] Bump Endjin.RecommendedPractices.Build from 1.0.0 to 1.2.3 in build.ps1 (#45) * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build Co-authored-by: dependjinbot --- build.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.ps1 b/build.ps1 index 4a99510..e2ad99c 100644 --- a/build.ps1 +++ b/build.ps1 @@ -71,7 +71,7 @@ param ( [string] $BuildModulePath, [Parameter()] - [version] $BuildModuleVersion = "1.2.2", + [version] $BuildModuleVersion = "1.2.3", [Parameter()] [version] $InvokeBuildModuleVersion = "5.7.1" From 6f11703b6c226907dafee3bcce16492b62c976a4 Mon Sep 17 00:00:00 2001 From: "dependjinbot[bot]" <71271483+dependjinbot[bot]@users.noreply.github.com> Date: Sat, 4 Feb 2023 02:24:36 +0000 Subject: [PATCH 03/13] Bump Endjin.RecommendedPractices.Build from 1.0.0 to 1.3.0 in build.ps1 (#46) * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build --------- Co-authored-by: dependjinbot --- build.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.ps1 b/build.ps1 index e2ad99c..1788064 100644 --- a/build.ps1 +++ b/build.ps1 @@ -71,7 +71,7 @@ param ( [string] $BuildModulePath, [Parameter()] - [version] $BuildModuleVersion = "1.2.3", + [version] $BuildModuleVersion = "1.3.0", [Parameter()] [version] $InvokeBuildModuleVersion = "5.7.1" From 9dcbf7ebe4ec82745e8857b87aba8b44edacc2fc Mon Sep 17 00:00:00 2001 From: "dependjinbot[bot]" <71271483+dependjinbot[bot]@users.noreply.github.com> Date: Wed, 15 Feb 2023 02:32:11 +0000 Subject: [PATCH 04/13] Bump Endjin.RecommendedPractices.Build from 1.0.0 to 1.3.1 in build.ps1 (#49) * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build --------- Co-authored-by: dependjinbot --- build.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.ps1 b/build.ps1 index 1788064..10ad62b 100644 --- a/build.ps1 +++ b/build.ps1 @@ -71,7 +71,7 @@ param ( [string] $BuildModulePath, [Parameter()] - [version] $BuildModuleVersion = "1.3.0", + [version] $BuildModuleVersion = "1.3.1", [Parameter()] [version] $InvokeBuildModuleVersion = "5.7.1" From abe4062fe589403a8c9f2f45e7c175db58f660c0 Mon Sep 17 00:00:00 2001 From: Ian Griffiths Date: Wed, 15 Feb 2023 10:30:16 +0000 Subject: [PATCH 05/13] Resolve VS analyzer warnings and messages --- GitVersion.yml | 2 +- .../Corvus.UriTemplate.Benchmarking.csproj | 5 + .../UriTemplateParameterExtraction.cs | 11 +- .../UriTemplateParameterSetting.cs | 4 + .../packages.lock.json | 100 ++++++++++-------- .../.editorconfig | 11 ++ .../UriTemplateTests.csproj | 9 ++ .../DictionaryUriTemplateResolver.cs | 2 + .../JsonUriTemplateResolver.cs | 2 + Solutions/Corvus.UriTemplates.sln | 10 +- .../TavisApi/DictionaryUriTemplateResolver.cs | 2 + .../TavisApi/UriTemplate.cs | 2 +- .../TavisApi/UriTemplateExtensions.cs | 3 +- .../TavisApi/UriTemplateTable.cs | 5 +- .../UriTemplateParserFactory.cs | 2 +- 15 files changed, 112 insertions(+), 58 deletions(-) create mode 100644 Solutions/Corvus.UriTemplate.TavisApi.Tests/.editorconfig diff --git a/GitVersion.yml b/GitVersion.yml index 635c123..2a974ce 100644 --- a/GitVersion.yml +++ b/GitVersion.yml @@ -20,5 +20,5 @@ branches: - feature - support - hotfix -next-version: "1.0" +next-version: "1.1" diff --git a/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj b/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj index 53066f4..7f4c012 100644 --- a/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj +++ b/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj @@ -9,6 +9,11 @@ false pdbonly true + + + $(NoWarn);CA1822 diff --git a/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterExtraction.cs b/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterExtraction.cs index 69b98ff..ff8c26d 100644 --- a/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterExtraction.cs +++ b/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterExtraction.cs @@ -60,10 +60,13 @@ public void ExtractParametersTavis() /// /// Extract parameters from a URI template using the Corvus implementation of the Tavis API. /// + /// + /// A result, to ensure that the code under test does not get optimized out of existence. + /// [Benchmark] - public void ExtractParametersCorvusTavis() + public IDictionary? ExtractParametersCorvusTavis() { - IDictionary? result = this.corvusTavisTemplate!.GetParameters(TavisUri); + return this.corvusTavisTemplate!.GetParameters(TavisUri); } /// @@ -83,7 +86,9 @@ public void ExtractParametersCorvusTavisWithParameterCache() // We can't use the state } +#pragma warning disable RCS1163 // Unused parameter. static void HandleParameters(ReadOnlySpan name, ReadOnlySpan value, ref int state) +#pragma warning restore RCS1163 // Unused parameter. { state++; } @@ -98,7 +103,9 @@ public void ExtractParametersCorvus() int state = 0; this.corvusTemplate!.ParseUri(Uri, HandleParameterMatching, ref state); +#pragma warning disable RCS1163 // Unused parameter. static void HandleParameterMatching(bool reset, ReadOnlySpan name, ReadOnlySpan value, ref int state) +#pragma warning restore RCS1163 // Unused parameter. { if (reset) { diff --git a/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterSetting.cs b/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterSetting.cs index fae0bdd..5ad1d2e 100644 --- a/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterSetting.cs +++ b/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterSetting.cs @@ -72,7 +72,9 @@ public void ResolveUriCorvusJson() { object? nullState = default; JsonUriTemplateResolver.TryResolveResult(UriTemplate.AsSpan(), false, this.jsonValues.RootElement, HandleResult, ref nullState); +#pragma warning disable RCS1163 // Unused parameter. static void HandleResult(ReadOnlySpan resolvedTemplate, ref object? state) +#pragma warning restore RCS1163 // Unused parameter. { // NOP } @@ -86,7 +88,9 @@ public void ResolveUriCorvusDictionary() { object? nullState = default; DictionaryUriTemplateResolver.TryResolveResult(UriTemplate.AsSpan(), false, Parameters, HandleResult, ref nullState); +#pragma warning disable RCS1163 // Unused parameter. static void HandleResult(ReadOnlySpan resolvedTemplate, ref object? state) +#pragma warning restore RCS1163 // Unused parameter. { // NOP } diff --git a/Solutions/Corvus.UriTemplate.Benchmarking/packages.lock.json b/Solutions/Corvus.UriTemplate.Benchmarking/packages.lock.json index 1148d58..eccbcac 100644 --- a/Solutions/Corvus.UriTemplate.Benchmarking/packages.lock.json +++ b/Solutions/Corvus.UriTemplate.Benchmarking/packages.lock.json @@ -4,49 +4,47 @@ "net7.0": { "BenchmarkDotNet": { "type": "Direct", - "requested": "[0.13.2, )", - "resolved": "0.13.2", - "contentHash": "82IflYxY8qnQXEA3kXtqC9pntrkJYJZbQ9PV7hEV/XcfCtOdwLz84ilyO8tLRVbiliWttvmt/v44P+visN+fPQ==", + "requested": "[0.13.4, )", + "resolved": "0.13.4", + "contentHash": "P6avThzS0HRJEjcCfnJdaMIujCMBoWQXSJiVYYFtMltrVeEMaIhg7r5qiGPyx9O2ZXuNpqIxVEg1JqgvfwnI2Q==", "dependencies": { - "BenchmarkDotNet.Annotations": "0.13.2", + "BenchmarkDotNet.Annotations": "0.13.4", "CommandLineParser": "2.4.3", + "Gee.External.Capstone": "2.3.0", "Iced": "1.17.0", "Microsoft.CodeAnalysis.CSharp": "3.0.0", "Microsoft.Diagnostics.Runtime": "2.2.332302", "Microsoft.Diagnostics.Tracing.TraceEvent": "3.0.2", "Microsoft.DotNet.PlatformAbstractions": "3.1.6", "Perfolizer": "0.2.1", - "System.Management": "6.0.0", - "System.Reflection.Emit": "4.7.0", - "System.Reflection.Emit.Lightweight": "4.7.0", - "System.Threading.Tasks.Extensions": "4.5.4" + "System.Management": "6.0.0" } }, "BenchmarkDotNet.Diagnostics.Windows": { "type": "Direct", - "requested": "[0.13.2, )", - "resolved": "0.13.2", - "contentHash": "COcdJcVt036U8cYHyHhq5ymI24AoV5h5BKHBzl5fbY0PUWF32immWWnSd66taOJRoe0Fr5ikimHNBVNXgV3KqA==", + "requested": "[0.13.4, )", + "resolved": "0.13.4", + "contentHash": "psb/LnKJyKGSJKwfzpqdYxqV/SrcMie9BBzFGqyPrdO7LmJeZjicIbxrEIF1EkGjWK/ug89clr4gp/V5OWsxxA==", "dependencies": { - "BenchmarkDotNet": "0.13.2", + "BenchmarkDotNet": "0.13.4", "Microsoft.Diagnostics.Tracing.TraceEvent": "3.0.2" } }, "Endjin.RecommendedPractices.GitHub": { "type": "Direct", - "requested": "[2.1.2, )", - "resolved": "2.1.2", - "contentHash": "mBUCmeSdWWrIQKuuYd9zflcwupRDmpF39dsbb07e6azlNIQqaE1J5TQa17c3SFVRXn9IZrClsmKoMporRTAWwQ==", + "requested": "[2.1.4, )", + "resolved": "2.1.4", + "contentHash": "SUBvnwWuKtklIv9NWqY9PI/J1nONyvcOlitIhUTq5Hk8K0QnBoISc1xTZTe0C0tOtUW1JIAZeEYwAAeuzQwtYg==", "dependencies": { - "Endjin.RecommendedPractices": "2.1.2", + "Endjin.RecommendedPractices": "2.1.4", "Microsoft.SourceLink.GitHub": "1.1.1" } }, "Roslynator.Analyzers": { "type": "Direct", - "requested": "[4.1.1, )", - "resolved": "4.1.1", - "contentHash": "3cPVlrB1PytlO1ztZZBOExDKQWpMZgI15ZDa0BqLu0l6xv+xIRfEpqjNRcpvUy3aLxWTkPgSKZbbaO+VoFEJ1g==" + "requested": "[4.2.0, )", + "resolved": "4.2.0", + "contentHash": "3N8CNx1Q/Q5VDDL7qgfZRgTURyMqzHAkAB59AZKRnsOXoh2n9xRzhiBMIbJaUtBATmieECBx68GcjRn2xoNDug==" }, "StyleCop.Analyzers": { "type": "Direct", @@ -68,8 +66,8 @@ }, "BenchmarkDotNet.Annotations": { "type": "Transitive", - "resolved": "0.13.2", - "contentHash": "+SGOYyXT6fiagbtrni38B8BqBgjruYKU3PfROI0lDIYo8jQ+APUmLKMEswK7zwR5fEOCrDmoAHSH6oykBkqPgA==" + "resolved": "0.13.4", + "contentHash": "bc2q4S7xvOrqh7qRaMGyDdHVv8SITtN4crx5neIU289ra+LaP+OAmHPXxCY2djrnguZ8kfDddyJSg30wt7DvKg==" }, "CommandLineParser": { "type": "Transitive", @@ -83,12 +81,17 @@ }, "Endjin.RecommendedPractices": { "type": "Transitive", - "resolved": "2.1.2", - "contentHash": "Nbj0WS3zVDD2wjfU2/nbkWIWS9Ljg8VN+SSpaCuf5lHBOIEb0Ra201lGcyJHtRHybAciz+hQA9lHj7TnG52qqw==", + "resolved": "2.1.4", + "contentHash": "3B8zpRU3LEwHNZvEU8NHhzFZKZDpVaI4sMhv8bXcEoLQhRvJiBKQ90hibZIz7veX1Zi9PXrsH11HzdZBQMmntQ==", "dependencies": { "Microsoft.Build.Tasks.Git": "1.1.1" } }, + "Gee.External.Capstone": { + "type": "Transitive", + "resolved": "2.3.0", + "contentHash": "2ap/rYmjtzCOT8hxrnEW/QeiOt+paD8iRrIcdKX0cxVwWLFa1e+JDBNeECakmccXrSFeBQuu5AV8SNkipFMMMw==" + }, "Iced": { "type": "Transitive", "resolved": "1.17.0", @@ -210,8 +213,8 @@ }, "Microsoft.Extensions.ObjectPool": { "type": "Transitive", - "resolved": "7.0.0", - "contentHash": "udvKco0sAVgYGTBnHUb0tY9JQzJ/nPDiv/8PIyz69wl1AibeCDZOLVVI+6156dPfHmJH7ws5oUJRiW4ZmAvuuA==" + "resolved": "7.0.2", + "contentHash": "i1YHthDbI3Xy4Vy1wC2EP+Z/yDJjpv5ejxnPxQ4p7sC8jnpWVfR2/T23Iz9+lIz5aBSruu8dOChmwvUQ3qYXZw==" }, "Microsoft.Extensions.Options": { "type": "Transitive", @@ -707,8 +710,15 @@ }, "System.Reflection.Emit": { "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "VR4kk8XLKebQ4MZuKuIni/7oh+QGFmZW3qORd1GvBq/8026OpW501SzT/oypwiQl4TvT8ErnReh/NzY9u+C6wQ==" + "resolved": "4.0.1", + "contentHash": "P2wqAj72fFjpP6wb9nSfDqNBMab+2ovzSDzUZK7MVIm54tBJEPr9jWfSjjoTpPwj1LeKcmX3vr0ttyjSSFM47g==", + "dependencies": { + "System.IO": "4.1.0", + "System.Reflection": "4.1.0", + "System.Reflection.Emit.ILGeneration": "4.0.1", + "System.Reflection.Primitives": "4.0.1", + "System.Runtime": "4.1.0" + } }, "System.Reflection.Emit.ILGeneration": { "type": "Transitive", @@ -722,8 +732,14 @@ }, "System.Reflection.Emit.Lightweight": { "type": "Transitive", - "resolved": "4.7.0", - "contentHash": "a4OLB4IITxAXJeV74MDx49Oq2+PsF6Sml54XAFv+2RyWwtDBcabzoxiiJRhdhx+gaohLh4hEGCLQyBozXoQPqA==" + "resolved": "4.0.1", + "contentHash": "sSzHHXueZ5Uh0OLpUQprhr+ZYJrLPA2Cmr4gn0wj9+FftNKXx8RIMKvO9qnjk2ebPYUjZ+F2ulGdPOsvj+MEjA==", + "dependencies": { + "System.Reflection": "4.1.0", + "System.Reflection.Emit.ILGeneration": "4.0.1", + "System.Reflection.Primitives": "4.0.1", + "System.Runtime": "4.1.0" + } }, "System.Reflection.Extensions": { "type": "Transitive", @@ -1024,8 +1040,8 @@ }, "System.Text.Json": { "type": "Transitive", - "resolved": "7.0.0", - "contentHash": "DaGSsVqKsn/ia6RG8frjwmJonfos0srquhw09TlT8KRw5I43E+4gs+/bZj4K0vShJ5H9imCuXupb4RmS+dBy3w==", + "resolved": "7.0.1", + "contentHash": "OtDEmCCiNl8JAduFKZ/r0Sw6XZNHwIicUYy/mXgMDGeOsZLshH37qi3oPRzFYiryVktiMoQLByMGPtRCEMYbeQ==", "dependencies": { "System.Text.Encodings.Web": "7.0.0" } @@ -1064,8 +1080,8 @@ }, "System.Threading.Tasks.Extensions": { "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "zteT+G8xuGu6mS+mzDzYXbzS7rd3K6Fjb9RiZlYlJPam2/hU7JCBZBVEcywNuR+oZ1ncTvc/cq0faRr3P01OVg==" + "resolved": "4.5.0", + "contentHash": "csAJe24tWCOTO/rXoJAuBGuOq7ZdHY60XtC6b/hNMHT9tuX+2J9HK7nciLEtNvnrRLMxBACLXO3R4y5+kCduMA==" }, "System.Threading.Timer": { "type": "Transitive", @@ -1122,7 +1138,7 @@ "type": "Project", "dependencies": { "CommunityToolkit.HighPerformance": "[8.0.0, )", - "Microsoft.Extensions.ObjectPool": "[7.0.0, )", + "Microsoft.Extensions.ObjectPool": "[7.0.2, )", "System.Buffers": "[4.5.1, )", "System.Collections.Immutable": "[7.0.0, )" } @@ -1132,30 +1148,20 @@ "dependencies": { "CommunityToolkit.HighPerformance": "[8.0.0, )", "Corvus.UriTemplates": "[1.0.0, )", - "Microsoft.Extensions.ObjectPool": "[7.0.0, )", + "Microsoft.Extensions.ObjectPool": "[7.0.2, )", "System.Buffers": "[4.5.1, )", "System.Collections.Immutable": "[7.0.0, )" } }, - "corvus.uritemplates.resolvers.dictionaryofobject": { - "type": "Project", - "dependencies": { - "CommunityToolkit.HighPerformance": "[8.0.0, )", - "Corvus.UriTemplates": "[1.0.0, )", - "Microsoft.Extensions.ObjectPool": "[7.0.0-rc.1.22427.2, )", - "System.Buffers": "[4.5.1, )", - "System.Collections.Immutable": "[7.0.0-rc.1.22426.10, )" - } - }, "corvus.uritemplates.resolvers.json": { "type": "Project", "dependencies": { "CommunityToolkit.HighPerformance": "[8.0.0, )", "Corvus.UriTemplates": "[1.0.0, )", - "Microsoft.Extensions.ObjectPool": "[7.0.0, )", + "Microsoft.Extensions.ObjectPool": "[7.0.2, )", "System.Buffers": "[4.5.1, )", "System.Collections.Immutable": "[7.0.0, )", - "System.Text.Json": "[7.0.0, )" + "System.Text.Json": "[7.0.1, )" } } } diff --git a/Solutions/Corvus.UriTemplate.TavisApi.Tests/.editorconfig b/Solutions/Corvus.UriTemplate.TavisApi.Tests/.editorconfig new file mode 100644 index 0000000..ce38d47 --- /dev/null +++ b/Solutions/Corvus.UriTemplate.TavisApi.Tests/.editorconfig @@ -0,0 +1,11 @@ +# C# files +[*.{cs,csx}] +# Style - implicit and explicit types + +csharp_style_var_for_built_in_types = disable +csharp_style_var_when_type_is_apparent = disable +csharp_style_var_elsewhere = disable + + +# Style - using directives and namespace declarations +csharp_style_namespace_declarations = block_scoped:suggestion diff --git a/Solutions/Corvus.UriTemplate.TavisApi.Tests/UriTemplateTests.csproj b/Solutions/Corvus.UriTemplate.TavisApi.Tests/UriTemplateTests.csproj index 4cf6cf0..d247a19 100644 --- a/Solutions/Corvus.UriTemplate.TavisApi.Tests/UriTemplateTests.csproj +++ b/Solutions/Corvus.UriTemplate.TavisApi.Tests/UriTemplateTests.csproj @@ -3,6 +3,15 @@ net6.0;net7.0 false + + + $(NoWarn);RCS1163;CA1825;IDE0017;IDE0059;IDE0062;IDE0090;IDE0220;IDE1006;xUnit1004 diff --git a/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates/DictionaryUriTemplateResolver.cs b/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates/DictionaryUriTemplateResolver.cs index a90d52b..98f3d49 100644 --- a/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates/DictionaryUriTemplateResolver.cs +++ b/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates/DictionaryUriTemplateResolver.cs @@ -95,8 +95,10 @@ public static bool TryGetParameterNames(ReadOnlySpan template, Par return UriTemplateResolver>.TryResolveResult(template, true, EmptyDictionary, Nop, callback, ref state); #endif +#pragma warning disable RCS1163 // Unused parameter. static void Nop(ReadOnlySpan value, ref TState state) { +#pragma warning restore RCS1163 // Unused parameter. } } } \ No newline at end of file diff --git a/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates/JsonUriTemplateResolver.cs b/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates/JsonUriTemplateResolver.cs index f8ddbfe..0050052 100644 --- a/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates/JsonUriTemplateResolver.cs +++ b/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates/JsonUriTemplateResolver.cs @@ -95,8 +95,10 @@ public static bool TryGetParameterNames(ReadOnlySpan template, Par return UriTemplateResolver.TryResolveResult(template, true, default, Nop, callback, ref state); #endif +#pragma warning disable RCS1163 // Unused parameter. static void Nop(ReadOnlySpan value, ref TState state) { +#pragma warning restore RCS1163 // Unused parameter. } } } \ No newline at end of file diff --git a/Solutions/Corvus.UriTemplates.sln b/Solutions/Corvus.UriTemplates.sln index 7eca243..ab6d554 100644 --- a/Solutions/Corvus.UriTemplates.sln +++ b/Solutions/Corvus.UriTemplates.sln @@ -13,7 +13,15 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Corvus.UriTemplates.Resolve EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Corvus.UriTemplates.Resolvers.DictionaryOfObject", "Corvus.UriTemplates.Resolvers.DictionaryOfObject\Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj", "{C77AE102-65C4-4C64-8B53-B2476EC80280}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Sandbox", "Sandbox\Sandbox.csproj", "{302F8634-2171-43DB-B5DD-5B01BE6026C2}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Sandbox", "Sandbox\Sandbox.csproj", "{302F8634-2171-43DB-B5DD-5B01BE6026C2}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DevOps", "DevOps", "{A903B615-2FB5-40CB-958E-CC3C2294A931}" + ProjectSection(SolutionItems) = preProject + .editorconfig = .editorconfig + ..\.gitignore = ..\.gitignore + ..\azure-pipelines.yml = ..\azure-pipelines.yml + ..\GitVersion.yml = ..\GitVersion.yml + EndProjectSection EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/DictionaryUriTemplateResolver.cs b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/DictionaryUriTemplateResolver.cs index af919d4..f007153 100644 --- a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/DictionaryUriTemplateResolver.cs +++ b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/DictionaryUriTemplateResolver.cs @@ -95,8 +95,10 @@ public static bool TryGetParameterNames(ReadOnlySpan template, Par return UriTemplateResolver>.TryResolveResult(template, true, EmptyDictionary, Nop, callback, ref state); #endif +#pragma warning disable RCS1163 // Unused parameter. static void Nop(ReadOnlySpan value, ref TState state) { +#pragma warning restore RCS1163 // Unused parameter. } } } \ No newline at end of file diff --git a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplate.cs b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplate.cs index 79e8f83..fec9755 100644 --- a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplate.cs +++ b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplate.cs @@ -14,7 +14,7 @@ namespace Corvus.UriTemplates.TavisApi; /// public class UriTemplate { - private static readonly Uri ComponentBaseUri = new Uri("https://localhost.com", UriKind.Absolute); + private static readonly Uri ComponentBaseUri = new("https://localhost.com", UriKind.Absolute); private readonly object lockObject = new(); private readonly string template; private readonly Dictionary parameters; diff --git a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplateExtensions.cs b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplateExtensions.cs index e922f85..9b6d326 100644 --- a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplateExtensions.cs +++ b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplateExtensions.cs @@ -58,8 +58,7 @@ public static UriTemplate AddParameters(this UriTemplate template, object parame { if (parametersObject != null) { - IEnumerable properties; - properties = parametersObject.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance); + IEnumerable properties = parametersObject.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance); foreach (PropertyInfo propinfo in properties) { template.SetParameter(propinfo.Name, propinfo.GetValue(parametersObject, null)); diff --git a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplateTable.cs b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplateTable.cs index 8a3eb7d..dff82fc 100644 --- a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplateTable.cs +++ b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplateTable.cs @@ -9,7 +9,7 @@ namespace Corvus.UriTemplates.TavisApi; /// public class UriTemplateTable { - private readonly Dictionary templates = new Dictionary(); + private readonly Dictionary templates = new(); /// /// Get the URI template with the specified key. @@ -20,8 +20,7 @@ public UriTemplate? this[string key] { get { - UriTemplate? value; - if (this.templates.TryGetValue(key, out value)) + if (this.templates.TryGetValue(key, out UriTemplate? value)) { return value; } diff --git a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/UriTemplateParserFactory.cs b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/UriTemplateParserFactory.cs index 608cb90..45b155e 100644 --- a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/UriTemplateParserFactory.cs +++ b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/UriTemplateParserFactory.cs @@ -162,7 +162,7 @@ static void AddLiteral(ReadOnlySpan templateSpan, List elements; From 474b98f1c1e89e0a47eedad42a1a6838778eb1f6 Mon Sep 17 00:00:00 2001 From: Ian Griffiths Date: Wed, 15 Feb 2023 10:53:05 +0000 Subject: [PATCH 06/13] Downgrade .NET SDK to get build working Due to https://github.com/endjin/Endjin.RecommendedPractices.Build/issues/69 we can't use the latest SDK. --- azure-pipelines.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index cb81ad5..54bd20c 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -22,6 +22,6 @@ jobs: service_connection_github: $(Endjin_Service_Connection_GitHub) solution_to_build: $(Endjin_Solution_To_Build) additionalNetSdkVersions: - - '7.x' + - '7.0.103' # Until https://github.com/endjin/Endjin.RecommendedPractices.Build/issues/69 is fixed, we have to use an old SDK includeNetSdkPreviewVersions: 'true' compileTasksServiceConnection: endjin-acr-reader From ecc949d0eca3b37c7db05a1450062efe19626cc7 Mon Sep 17 00:00:00 2001 From: Ian Griffiths Date: Wed, 15 Feb 2023 15:39:25 +0000 Subject: [PATCH 07/13] Removed nullability where not appropriate The Tavis API makes somewhat fuzzy use of the term "parameter", and in some cases a parameter value is allowed to be null, but in cases where it reports the 'parameters' that are present in a particular URL as interpretted through a particular template, it will never report null values. (It provides a dictionary containing only those values that were present, so there's no occasion for this to have null values.) This was not reflected in the API - it used IDictionary even in cases where the value would not be null. This change corrects that. --- .../UriTemplateParameterExtraction.cs | 2 +- .../UriTemplateParameterSetting.cs | 4 ++-- .../Corvus.UriTemplates/TavisApi/TemplateMatch.cs | 2 +- .../Corvus.UriTemplates/TavisApi/UriExtensions.cs | 12 ++++++------ .../Corvus.UriTemplates/TavisApi/UriTemplate.cs | 12 ++++++------ .../Corvus.UriTemplates/TavisApi/UriTemplateTable.cs | 2 +- 6 files changed, 17 insertions(+), 17 deletions(-) diff --git a/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterExtraction.cs b/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterExtraction.cs index ff8c26d..c751005 100644 --- a/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterExtraction.cs +++ b/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterExtraction.cs @@ -64,7 +64,7 @@ public void ExtractParametersTavis() /// A result, to ensure that the code under test does not get optimized out of existence. /// [Benchmark] - public IDictionary? ExtractParametersCorvusTavis() + public IDictionary? ExtractParametersCorvusTavis() { return this.corvusTavisTemplate!.GetParameters(TavisUri); } diff --git a/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterSetting.cs b/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterSetting.cs index 5ad1d2e..fba3ed1 100644 --- a/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterSetting.cs +++ b/Solutions/Corvus.UriTemplate.Benchmarking/UriTemplateParameterSetting.cs @@ -15,7 +15,7 @@ public class UriTemplateParameterSetting { private const string UriTemplate = "http://example.org/location{?value*}"; private static readonly Dictionary Value = new() { { "foo", "bar" }, { "bar", "baz" }, { "baz", "bob" } }; - private static readonly Dictionary Parameters = new() { { "value", Value } }; + private static readonly Dictionary InputParameters = new() { { "value", Value } }; private readonly JsonDocument jsonValues = JsonDocument.Parse("{\"value\": { \"foo\": \"bar\", \"bar\": \"baz\", \"baz\": \"bob\" }}"); private Tavis.UriTemplates.UriTemplate? tavisTemplate; @@ -87,7 +87,7 @@ static void HandleResult(ReadOnlySpan resolvedTemplate, ref object? state) public void ResolveUriCorvusDictionary() { object? nullState = default; - DictionaryUriTemplateResolver.TryResolveResult(UriTemplate.AsSpan(), false, Parameters, HandleResult, ref nullState); + DictionaryUriTemplateResolver.TryResolveResult(UriTemplate.AsSpan(), false, InputParameters, HandleResult, ref nullState); #pragma warning disable RCS1163 // Unused parameter. static void HandleResult(ReadOnlySpan resolvedTemplate, ref object? state) #pragma warning restore RCS1163 // Unused parameter. diff --git a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/TemplateMatch.cs b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/TemplateMatch.cs index aa25857..b638574 100644 --- a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/TemplateMatch.cs +++ b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/TemplateMatch.cs @@ -22,5 +22,5 @@ public class TemplateMatch /// /// Gets or sets the matched parameters. /// - public IDictionary? Parameters { get; set; } + public IDictionary? Parameters { get; set; } } \ No newline at end of file diff --git a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriExtensions.cs b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriExtensions.cs index c30b281..5616fd9 100644 --- a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriExtensions.cs +++ b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriExtensions.cs @@ -38,8 +38,8 @@ private enum State /// The URI template, with templatized query string, and parameters populated from the values in the query string. public static UriTemplate MakeTemplate(this Uri uri) { - Dictionary parameters = uri.GetQueryStringParameters(); - return uri.MakeTemplate(parameters); + Dictionary parameters = uri.GetQueryStringParameters(); + return uri.MakeTemplate((IDictionary)parameters); } /// @@ -63,19 +63,19 @@ public static UriTemplate MakeTemplate(this Uri uri, IDictionary - /// Get the query sstring parameters from the given URI. + /// Get the query string parameters from the given URI. /// /// The target URI for which to recover the query string parameters. /// A map of the query string parameters. - public static Dictionary GetQueryStringParameters(this Uri target) + public static Dictionary GetQueryStringParameters(this Uri target) { - Dictionary parameters = new(); + Dictionary parameters = new(); GetQueryStringParameters(target, AccumulateResults, ref parameters); return parameters; - static void AccumulateResults(ReadOnlySpan name, ReadOnlySpan value, ref Dictionary state) + static void AccumulateResults(ReadOnlySpan name, ReadOnlySpan value, ref Dictionary state) { state.Add(name.ToString(), value.ToString()); } diff --git a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplate.cs b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplate.cs index fec9755..1a53c3f 100644 --- a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplate.cs +++ b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplate.cs @@ -154,7 +154,7 @@ static void ResolveToString(ReadOnlySpan name, ref string state) /// The URI from which to get the parameters. /// Whether to apply strict or relaxed query parameter ordering. /// The parameters decomposed from the Uri. - public IDictionary? GetParameters(Uri uri, QueryStringParameterOrder order = QueryStringParameterOrder.Strict) + public IDictionary? GetParameters(Uri uri, QueryStringParameterOrder order = QueryStringParameterOrder.Strict) { switch (order) { @@ -171,7 +171,7 @@ static void ResolveToString(ReadOnlySpan name, ref string state) } } - var parameters = new Dictionary(); + var parameters = new Dictionary(); if (parser.ParseUri(uri.OriginalString.AsSpan(), AddResults, ref parameters)) { @@ -182,7 +182,7 @@ static void ResolveToString(ReadOnlySpan name, ref string state) return null; } - static void AddResults(bool reset, ReadOnlySpan name, ReadOnlySpan value, ref Dictionary results) + static void AddResults(bool reset, ReadOnlySpan name, ReadOnlySpan value, ref Dictionary results) { if (reset) { @@ -206,11 +206,11 @@ static void AddResults(bool reset, ReadOnlySpan name, ReadOnlySpan v string uriString = uri.GetComponents(UriComponents.SchemeAndServer | UriComponents.Path | UriComponents.Fragment, UriFormat.UriEscaped); var uriWithoutQuery = new Uri(uriString, UriKind.Absolute); - IDictionary pathParameters = this.GetParameters(uriWithoutQuery) ?? new Dictionary(this.parameters.Comparer); + IDictionary pathParameters = this.GetParameters(uriWithoutQuery) ?? new Dictionary(this.parameters.Comparer); HashSet parameterNames = this.GetParameterNamesHashSet(); - (HashSet ParameterNames, IDictionary PathParameters) parameterState = (parameterNames, pathParameters); + (HashSet ParameterNames, IDictionary PathParameters) parameterState = (parameterNames, pathParameters); uri.GetQueryStringParameters(MatchParameterNames, ref parameterState); @@ -221,7 +221,7 @@ static void AddResults(bool reset, ReadOnlySpan name, ReadOnlySpan v throw new ArgumentOutOfRangeException(nameof(order), order, null); } - static void MatchParameterNames(ReadOnlySpan name, ReadOnlySpan value, ref (HashSet ParameterNames, IDictionary PathParameters) state) + static void MatchParameterNames(ReadOnlySpan name, ReadOnlySpan value, ref (HashSet ParameterNames, IDictionary PathParameters) state) { string name1 = name.ToString(); if (state.ParameterNames.Contains(name1)) diff --git a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplateTable.cs b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplateTable.cs index dff82fc..0b7f802 100644 --- a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplateTable.cs +++ b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates/TavisApi/UriTemplateTable.cs @@ -51,7 +51,7 @@ public void Add(string key, UriTemplate template) { foreach (KeyValuePair template in this.templates) { - IDictionary? parameters = template.Value.GetParameters(url, order); + IDictionary? parameters = template.Value.GetParameters(url, order); if (parameters != null) { return new TemplateMatch() { Key = template.Key, Parameters = parameters, Template = template.Value }; From 95ca2f853422568b34c8ff5c1aa027820b0e6c41 Mon Sep 17 00:00:00 2001 From: "dependjinbot[bot]" <71271483+dependjinbot[bot]@users.noreply.github.com> Date: Thu, 23 Feb 2023 02:30:22 +0000 Subject: [PATCH 08/13] Bump Endjin.RecommendedPractices.Build from 1.0.0 to 1.3.2 in build.ps1 (#55) * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build --------- Co-authored-by: dependjinbot --- build.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.ps1 b/build.ps1 index 10ad62b..07f9561 100644 --- a/build.ps1 +++ b/build.ps1 @@ -71,7 +71,7 @@ param ( [string] $BuildModulePath, [Parameter()] - [version] $BuildModuleVersion = "1.3.1", + [version] $BuildModuleVersion = "1.3.2", [Parameter()] [version] $InvokeBuildModuleVersion = "5.7.1" From 9b97f8e31f5a624518fa8c0d1fc6f1b36fc99cff Mon Sep 17 00:00:00 2001 From: "dependjinbot[bot]" <71271483+dependjinbot[bot]@users.noreply.github.com> Date: Sat, 11 Mar 2023 02:22:48 +0000 Subject: [PATCH 09/13] Bump Endjin.RecommendedPractices.Build from 1.0.0 to 1.3.4 in build.ps1 (#57) * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build --------- Co-authored-by: dependjinbot --- build.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.ps1 b/build.ps1 index 07f9561..07ae596 100644 --- a/build.ps1 +++ b/build.ps1 @@ -71,7 +71,7 @@ param ( [string] $BuildModulePath, [Parameter()] - [version] $BuildModuleVersion = "1.3.2", + [version] $BuildModuleVersion = "1.3.4", [Parameter()] [version] $InvokeBuildModuleVersion = "5.7.1" From 6187165639ec45e52ad3645ec137c69067954b67 Mon Sep 17 00:00:00 2001 From: "dependjinbot[bot]" <71271483+dependjinbot[bot]@users.noreply.github.com> Date: Wed, 29 Mar 2023 02:28:27 +0000 Subject: [PATCH 10/13] Bump Endjin.RecommendedPractices.Build from 1.0.0 to 1.3.5 in build.ps1 (#59) * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build * Updated scripted build --------- Co-authored-by: dependjinbot --- build.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.ps1 b/build.ps1 index 07ae596..33fde48 100644 --- a/build.ps1 +++ b/build.ps1 @@ -71,7 +71,7 @@ param ( [string] $BuildModulePath, [Parameter()] - [version] $BuildModuleVersion = "1.3.4", + [version] $BuildModuleVersion = "1.3.5", [Parameter()] [version] $InvokeBuildModuleVersion = "5.7.1" From 1a9ab9b77aaabb8f0d76d672e44d94fe2c79fd8c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 3 May 2023 16:01:54 +0000 Subject: [PATCH 11/13] Bump Endjin.RecommendedPractices.GitHub in /Solutions (#63) Bumps Endjin.RecommendedPractices.GitHub from 2.1.4 to 2.1.5. --- updated-dependencies: - dependency-name: Endjin.RecommendedPractices.GitHub 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> --- .../Corvus.UriTemplate.Benchmarking.csproj | 2 +- .../Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj | 4 ++-- .../Corvus.UriTemplates.Resolvers.Json.csproj | 2 +- Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj b/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj index 7f4c012..8f0e8ab 100644 --- a/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj +++ b/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj @@ -25,7 +25,7 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj b/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj index 184a6ca..81955be 100644 --- a/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj +++ b/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj @@ -1,4 +1,4 @@ - + @@ -14,7 +14,7 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates.Resolvers.Json.csproj b/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates.Resolvers.Json.csproj index 77ccd05..7f42aac 100644 --- a/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates.Resolvers.Json.csproj +++ b/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates.Resolvers.Json.csproj @@ -14,7 +14,7 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj index df2a0fb..cf14482 100644 --- a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj +++ b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj @@ -1,4 +1,4 @@ - + @@ -14,7 +14,7 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive From df5ff1411fbce573f5ace0dfa7739175f6d17e71 Mon Sep 17 00:00:00 2001 From: Ian Griffiths Date: Thu, 4 May 2023 16:01:37 +0100 Subject: [PATCH 12/13] Update dependencies --- GitVersion.yml | 2 +- .../Corvus.UriTemplate.Benchmarking.csproj | 4 +- .../packages.lock.json | 64 +++++++++---------- .../UriTemplateTests.csproj | 2 +- ...plates.Resolvers.DictionaryOfObject.csproj | 4 +- .../Corvus.UriTemplates.Resolvers.Json.csproj | 6 +- .../Corvus.UriTemplates.csproj | 4 +- 7 files changed, 43 insertions(+), 43 deletions(-) diff --git a/GitVersion.yml b/GitVersion.yml index 2a974ce..31931af 100644 --- a/GitVersion.yml +++ b/GitVersion.yml @@ -20,5 +20,5 @@ branches: - feature - support - hotfix -next-version: "1.1" +next-version: "1.2" diff --git a/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj b/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj index 8f0e8ab..e7f9e57 100644 --- a/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj +++ b/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj @@ -23,8 +23,8 @@ - - + + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/Solutions/Corvus.UriTemplate.Benchmarking/packages.lock.json b/Solutions/Corvus.UriTemplate.Benchmarking/packages.lock.json index eccbcac..16b768e 100644 --- a/Solutions/Corvus.UriTemplate.Benchmarking/packages.lock.json +++ b/Solutions/Corvus.UriTemplate.Benchmarking/packages.lock.json @@ -4,11 +4,11 @@ "net7.0": { "BenchmarkDotNet": { "type": "Direct", - "requested": "[0.13.4, )", - "resolved": "0.13.4", - "contentHash": "P6avThzS0HRJEjcCfnJdaMIujCMBoWQXSJiVYYFtMltrVeEMaIhg7r5qiGPyx9O2ZXuNpqIxVEg1JqgvfwnI2Q==", + "requested": "[0.13.5, )", + "resolved": "0.13.5", + "contentHash": "PiwINqvreKV7L+BQlaZ2qcJ90s88LbLqZoUWbKnEPzvmsWd4pUH58Yjp+mFn311n8Jz0Y0JsD+jWa+Kh67IG3A==", "dependencies": { - "BenchmarkDotNet.Annotations": "0.13.4", + "BenchmarkDotNet.Annotations": "0.13.5", "CommandLineParser": "2.4.3", "Gee.External.Capstone": "2.3.0", "Iced": "1.17.0", @@ -22,29 +22,29 @@ }, "BenchmarkDotNet.Diagnostics.Windows": { "type": "Direct", - "requested": "[0.13.4, )", - "resolved": "0.13.4", - "contentHash": "psb/LnKJyKGSJKwfzpqdYxqV/SrcMie9BBzFGqyPrdO7LmJeZjicIbxrEIF1EkGjWK/ug89clr4gp/V5OWsxxA==", + "requested": "[0.13.5, )", + "resolved": "0.13.5", + "contentHash": "bNKJlIgUvEMBotiiHrEzw2xyCFlNiEfE14/EcBOEDSgYg+spzByVVv+totq9baxKUk5MhfAFhyzguBMiuoho3Q==", "dependencies": { - "BenchmarkDotNet": "0.13.4", + "BenchmarkDotNet": "0.13.5", "Microsoft.Diagnostics.Tracing.TraceEvent": "3.0.2" } }, "Endjin.RecommendedPractices.GitHub": { "type": "Direct", - "requested": "[2.1.4, )", - "resolved": "2.1.4", - "contentHash": "SUBvnwWuKtklIv9NWqY9PI/J1nONyvcOlitIhUTq5Hk8K0QnBoISc1xTZTe0C0tOtUW1JIAZeEYwAAeuzQwtYg==", + "requested": "[2.1.5, )", + "resolved": "2.1.5", + "contentHash": "PoZqxrp7iYbSF0Vi2Wtj2sepxwZA3i4Yq9CGueralFhLYcHE60E3bQOwHLwWsv4oNf60FYJrr3RjFPa7pv1HyA==", "dependencies": { - "Endjin.RecommendedPractices": "2.1.4", + "Endjin.RecommendedPractices": "2.1.5", "Microsoft.SourceLink.GitHub": "1.1.1" } }, "Roslynator.Analyzers": { "type": "Direct", - "requested": "[4.2.0, )", - "resolved": "4.2.0", - "contentHash": "3N8CNx1Q/Q5VDDL7qgfZRgTURyMqzHAkAB59AZKRnsOXoh2n9xRzhiBMIbJaUtBATmieECBx68GcjRn2xoNDug==" + "requested": "[4.3.0, )", + "resolved": "4.3.0", + "contentHash": "NZNaV9DAYGHKZ753WfhtBj8eoP40LLJsA6JQXdzhF87iTZAdbKCgp32mI3cnQF4TMXz7bk+CgzF/kDG+m+9bCg==" }, "StyleCop.Analyzers": { "type": "Direct", @@ -66,8 +66,8 @@ }, "BenchmarkDotNet.Annotations": { "type": "Transitive", - "resolved": "0.13.4", - "contentHash": "bc2q4S7xvOrqh7qRaMGyDdHVv8SITtN4crx5neIU289ra+LaP+OAmHPXxCY2djrnguZ8kfDddyJSg30wt7DvKg==" + "resolved": "0.13.5", + "contentHash": "ORcRi9/fnjRfINKiAnAgIsRlQ15Gj2Lki7AluHnAVMk/lTyQ2nwaa+F+ezW8f3tElBDoZql02+J2lIwHbu1eoA==" }, "CommandLineParser": { "type": "Transitive", @@ -76,13 +76,13 @@ }, "CommunityToolkit.HighPerformance": { "type": "Transitive", - "resolved": "8.0.0", - "contentHash": "S5Iv1d5UJZNJLJbe/xzJmLqYJ2mhefbLAvhXCZEh3G4sFadUBuQZhQioE4oJG4enY69QMuJX3AX9+6P9rH1bMw==" + "resolved": "8.2.0", + "contentHash": "iKzsPiSnXoQUN5AoApYmdfnLn9osNb+YCLWRr5PFmrDEQVIu7OeOyf4DPvNBvbqbYLZCfvHozPkulyv6zBQsFw==" }, "Endjin.RecommendedPractices": { "type": "Transitive", - "resolved": "2.1.4", - "contentHash": "3B8zpRU3LEwHNZvEU8NHhzFZKZDpVaI4sMhv8bXcEoLQhRvJiBKQ90hibZIz7veX1Zi9PXrsH11HzdZBQMmntQ==", + "resolved": "2.1.5", + "contentHash": "iEFt7iG7gaBi24xSkEPFywEkZkC4yoE61PEkh2Nspqe8zbwKifSn/05jRlvRnYnanXdON+AzTKxLZf28vgCOsA==", "dependencies": { "Microsoft.Build.Tasks.Git": "1.1.1" } @@ -213,8 +213,8 @@ }, "Microsoft.Extensions.ObjectPool": { "type": "Transitive", - "resolved": "7.0.2", - "contentHash": "i1YHthDbI3Xy4Vy1wC2EP+Z/yDJjpv5ejxnPxQ4p7sC8jnpWVfR2/T23Iz9+lIz5aBSruu8dOChmwvUQ3qYXZw==" + "resolved": "7.0.5", + "contentHash": "uylNo8wuzAeqAJDyLDUM2JWSpTdCHTp11BXCsCO68LXnDjxwDM4PL6mJmho/+fJesWKdcJV5XB/Oa80wAJXnvQ==" }, "Microsoft.Extensions.Options": { "type": "Transitive", @@ -1040,8 +1040,8 @@ }, "System.Text.Json": { "type": "Transitive", - "resolved": "7.0.1", - "contentHash": "OtDEmCCiNl8JAduFKZ/r0Sw6XZNHwIicUYy/mXgMDGeOsZLshH37qi3oPRzFYiryVktiMoQLByMGPtRCEMYbeQ==", + "resolved": "7.0.2", + "contentHash": "/LZf/JrGyilojqwpaywb+sSz8Tew7ij4K/Sk+UW8AKfAK7KRhR6mKpKtTm06cYA7bCpGTWfYksIW+mVsdxPegQ==", "dependencies": { "System.Text.Encodings.Web": "7.0.0" } @@ -1137,8 +1137,8 @@ "corvus.uritemplates": { "type": "Project", "dependencies": { - "CommunityToolkit.HighPerformance": "[8.0.0, )", - "Microsoft.Extensions.ObjectPool": "[7.0.2, )", + "CommunityToolkit.HighPerformance": "[8.2.0, )", + "Microsoft.Extensions.ObjectPool": "[7.0.5, )", "System.Buffers": "[4.5.1, )", "System.Collections.Immutable": "[7.0.0, )" } @@ -1146,9 +1146,9 @@ "corvus.uritemplates.resolvers.dictionaryofobject": { "type": "Project", "dependencies": { - "CommunityToolkit.HighPerformance": "[8.0.0, )", + "CommunityToolkit.HighPerformance": "[8.2.0, )", "Corvus.UriTemplates": "[1.0.0, )", - "Microsoft.Extensions.ObjectPool": "[7.0.2, )", + "Microsoft.Extensions.ObjectPool": "[7.0.5, )", "System.Buffers": "[4.5.1, )", "System.Collections.Immutable": "[7.0.0, )" } @@ -1156,12 +1156,12 @@ "corvus.uritemplates.resolvers.json": { "type": "Project", "dependencies": { - "CommunityToolkit.HighPerformance": "[8.0.0, )", + "CommunityToolkit.HighPerformance": "[8.2.0, )", "Corvus.UriTemplates": "[1.0.0, )", - "Microsoft.Extensions.ObjectPool": "[7.0.2, )", + "Microsoft.Extensions.ObjectPool": "[7.0.5, )", "System.Buffers": "[4.5.1, )", "System.Collections.Immutable": "[7.0.0, )", - "System.Text.Json": "[7.0.1, )" + "System.Text.Json": "[7.0.2, )" } } } diff --git a/Solutions/Corvus.UriTemplate.TavisApi.Tests/UriTemplateTests.csproj b/Solutions/Corvus.UriTemplate.TavisApi.Tests/UriTemplateTests.csproj index d247a19..d797d46 100644 --- a/Solutions/Corvus.UriTemplate.TavisApi.Tests/UriTemplateTests.csproj +++ b/Solutions/Corvus.UriTemplate.TavisApi.Tests/UriTemplateTests.csproj @@ -22,7 +22,7 @@ - + all diff --git a/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj b/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj index 81955be..e6747a6 100644 --- a/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj +++ b/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj @@ -13,14 +13,14 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive - + diff --git a/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates.Resolvers.Json.csproj b/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates.Resolvers.Json.csproj index 7f42aac..aff717a 100644 --- a/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates.Resolvers.Json.csproj +++ b/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates.Resolvers.Json.csproj @@ -13,15 +13,15 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive - - + + diff --git a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj index cf14482..4cf5a1f 100644 --- a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj +++ b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj @@ -13,14 +13,14 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive - + From 7409723a1bac9d9d03cca2655e5c067f472f1f2f Mon Sep 17 00:00:00 2001 From: Ian Griffiths Date: Fri, 5 May 2023 07:47:42 +0100 Subject: [PATCH 13/13] Remove refs to analyzers implied by Endjin.RecommendedPractices Several projects had ended up with explicit references to Roslynator.Analyzers and StyleCop.Analyzers. These are unnecessary because Endjin.RecommendedPractices includes them automatically. (This usually happens when those analyzer packages get updated - the NuGet explorer doesn't understand that they've come in via Endjin.RecommendPractices, because transient build-time dependencies aren't really a thing in NuGet so we had to employ a hack to make that work in Endjin.RecommendedPractices. NuGet spuriously offers to update the refs for you, at which point you end up with explicit references.) --- .../Corvus.UriTemplate.Benchmarking.csproj | 4 ---- ...orvus.UriTemplates.Resolvers.DictionaryOfObject.csproj | 8 -------- .../Corvus.UriTemplates.Resolvers.Json.csproj | 8 -------- Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj | 8 -------- 4 files changed, 28 deletions(-) diff --git a/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj b/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj index e7f9e57..55035b8 100644 --- a/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj +++ b/Solutions/Corvus.UriTemplate.Benchmarking/Corvus.UriTemplate.Benchmarking.csproj @@ -37,8 +37,4 @@ true - - - - diff --git a/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj b/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj index e6747a6..e160eb7 100644 --- a/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj +++ b/Solutions/Corvus.UriTemplates.Resolvers.DictionaryOfObject/Corvus.UriTemplates.Resolvers.DictionaryOfObject.csproj @@ -27,12 +27,4 @@ - - - - - - - - diff --git a/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates.Resolvers.Json.csproj b/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates.Resolvers.Json.csproj index aff717a..f494ce2 100644 --- a/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates.Resolvers.Json.csproj +++ b/Solutions/Corvus.UriTemplates.Resolvers.Json/Corvus.UriTemplates.Resolvers.Json.csproj @@ -28,12 +28,4 @@ - - - - - - - - diff --git a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj index 4cf5a1f..083314a 100644 --- a/Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj +++ b/Solutions/Corvus.UriTemplates/Corvus.UriTemplates.csproj @@ -23,12 +23,4 @@ - - - - - - - -