diff --git a/.editorconfig b/.editorconfig index d5e3354..5d9df2a 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,11 +1,5 @@ -root = true # Remove the line below if you want to inherit .editorconfig settings from higher directories - -# All files -[*] - -guidelines = 120 -guidelines_style = 1px solid 40ff0000 +root = true # C# files [*.cs] @@ -18,8 +12,8 @@ indent_style = tab tab_width = 4 # New line preferences -end_of_line = crlf -insert_final_newline = false +end_of_line = lf +insert_final_newline = true #### .NET Coding Conventions #### @@ -68,9 +62,9 @@ dotnet_code_quality_unused_parameters = all:suggestion #### C# Coding Conventions #### # var preferences -csharp_style_var_elsewhere = false:error -csharp_style_var_for_built_in_types = false:error -csharp_style_var_when_type_is_apparent = false:error +csharp_style_var_elsewhere = false:warning +csharp_style_var_for_built_in_types = false:warning +csharp_style_var_when_type_is_apparent = false:warning # Expression-bodied members csharp_style_expression_bodied_accessors = true @@ -115,7 +109,6 @@ csharp_new_line_before_else = true csharp_new_line_before_finally = true csharp_new_line_before_members_in_anonymous_types = true csharp_new_line_before_members_in_object_initializers = true -csharp_new_line_before_open_brace = all csharp_new_line_between_query_expression_clauses = true # Indentation preferences @@ -153,3 +146,54 @@ csharp_space_between_square_brackets = false # Wrapping preferences csharp_preserve_single_line_blocks = true csharp_preserve_single_line_statements = true + +#### Resharper Formatting Rules #### + +resharper_csharp_accessor_declaration_braces = next_line +resharper_csharp_accessor_owner_declaration_braces = next_line +resharper_csharp_align_first_arg_by_paren = true +resharper_csharp_align_linq_query = true +resharper_csharp_align_multiline_argument = true +resharper_csharp_align_multiline_array_and_object_initializer = false +resharper_csharp_align_multiline_binary_expressions_chain = true +resharper_csharp_align_multiline_binary_patterns = true +resharper_csharp_align_multiline_calls_chain = true +resharper_csharp_align_multiline_expression = true +resharper_csharp_align_multiline_extends_list = true +resharper_csharp_align_multiline_parameter = true +resharper_csharp_align_multiline_property_pattern = true +resharper_csharp_align_multiline_statement_conditions = true +resharper_csharp_align_multiline_switch_expression = false +resharper_csharp_align_multiple_declaration = true +resharper_csharp_align_multline_type_parameter_constrains = true +resharper_csharp_align_multline_type_parameter_list = true +resharper_csharp_align_tuple_components = true +resharper_csharp_alignment_tab_fill_style = optimal_fill +resharper_csharp_allow_far_alignment = true +resharper_csharp_brace_style = next_line +resharper_csharp_case_block_braces = next_line +resharper_csharp_continuous_indent_multiplier = 1 +resharper_csharp_indent_anonymous_method_block = true +resharper_csharp_indent_braces_inside_statement_conditions = true +resharper_csharp_indent_inside_namespace = true +resharper_csharp_indent_nested_fixed_stmt = false +resharper_csharp_indent_nested_for_stmt = false +resharper_csharp_indent_nested_foreach_stmt = false +resharper_csharp_indent_nested_lock_stmt = false +resharper_csharp_indent_nested_usings_stmt = false +resharper_csharp_indent_nested_while_stmt = false +resharper_csharp_indent_preprocessor_if = no_indent +resharper_csharp_indent_preprocessor_other = usual_indent +resharper_csharp_indent_preprocessor_region = no_indent +resharper_csharp_indent_type_constraints = true +resharper_csharp_initializer_braces = next_line +resharper_csharp_invocable_declaration_braces = next_line +resharper_csharp_keep_existing_initializer_arrangement = false +resharper_csharp_max_initializer_elements_on_line = 1 +resharper_csharp_other_braces = next_line +resharper_csharp_outdent_binary_ops = true +resharper_csharp_outdent_binary_pattern_ops = true +resharper_csharp_outdent_dots = true +resharper_csharp_place_simple_initializer_on_single_line = true +resharper_csharp_type_declaration_braces = next_line +resharper_csharp_wrap_object_and_collection_initializer_style = chop_always \ No newline at end of file diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index ec72881..3777523 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -6,7 +6,7 @@ on: - main paths-ignore: - '**.md' - - '**/renovate.json' + - '**/renovate.json' - '.github/workflows/release.yaml' pull_request: paths-ignore: @@ -20,7 +20,7 @@ jobs: env: DOTNET_CLI_TELEMETRY_OPTOUT: true DOTNET_NOLOGO: true - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} steps: - name: Checkout uses: actions/checkout@v4 @@ -35,21 +35,28 @@ jobs: - name: Install .NET SDK uses: actions/setup-dotnet@v3 with: - dotnet-version: | - 6.0.x - 7.0.x + global-json-file: global.json - name: Build - run: dotnet build -c release + run: dotnet build -c release - name: Test run: | dotnet test -c release --no-restore --no-build \ + --logger:trx \ + --results-directory ${{ runner.temp }}/TestResults \ -p:CollectCoverage=true \ -p:CoverletOutputFormat=opencover \ -p:CoverletOutput=${{ runner.temp }}/coverage.opencover.xml + - name: Publish Test Results + uses: dorny/test-reporter@v1 + if: success() || failure() + with: + name: Test Results + path: ${{ runner.temp }}/TestResults/*.trx + reporter: dotnet-trx - name: Codacy Coverage if: always() uses: codacy/codacy-coverage-reporter-action@v1 with: project-token: ${{ secrets.CODACY_TOKEN }} - coverage-reports: ${{ runner.temp }}/coverage.opencover.*.xml + coverage-reports: ${{ runner.temp }}/coverage.opencover.xml \ No newline at end of file diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 73c83ff..3adf2ff 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -5,7 +5,7 @@ on: push: tags: - '*' - + jobs: build: name: Build, Analyze & Test @@ -14,7 +14,7 @@ jobs: DOTNET_CLI_TELEMETRY_OPTOUT: true DOTNET_NOLOGO: true GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} steps: - name: Checkout uses: actions/checkout@v4 @@ -25,13 +25,11 @@ jobs: with: path: ~/.nuget/packages key: ${{ runner.os }}-nuget-${{ hashFiles('**/packages.lock.json') }} - restore-keys: ${{ runner.os}}-nuget + restore-keys: ${{ runner.os}}-nuget - name: Install .NET SDK uses: actions/setup-dotnet@v3 with: - dotnet-version: | - 6.0.x - 7.0.x + global-json-file: global.json - name: Install GitVersion uses: gittools/actions/gitversion/setup@v0.10.2 with: diff --git a/cuid.net.sln b/cuid.net.sln index 304b916..4a8be01 100644 --- a/cuid.net.sln +++ b/cuid.net.sln @@ -22,6 +22,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution renovate.json = renovate.json Directory.Build.props = Directory.Build.props .gitignore = .gitignore + global.json = global.json + .editorconfig = .editorconfig EndProjectSection EndProject Global diff --git a/cuid.net.sln.DotSettings b/cuid.net.sln.DotSettings index 0d728f3..4cf2cdc 100644 --- a/cuid.net.sln.DotSettings +++ b/cuid.net.sln.DotSettings @@ -294,4 +294,6 @@ True True True - True \ No newline at end of file + True + True + True \ No newline at end of file diff --git a/global.json b/global.json new file mode 100644 index 0000000..da113e4 --- /dev/null +++ b/global.json @@ -0,0 +1,7 @@ +{ + "sdk": { + "version": "8.0.0", + "rollForward": "latestFeature", + "allowPrerelease": false + } +} \ No newline at end of file diff --git a/renovate.json b/renovate.json index 454af4a..d861677 100644 --- a/renovate.json +++ b/renovate.json @@ -1,37 +1,37 @@ { - "extends": [ - "config:base", - ":disableDependencyDashboard", - ":gitSignOff" - ], - "assigneesFromCodeOwners": true, - "packageRules": [ - { - "matchPackagePatterns": [ - "*" - ], - "matchUpdateTypes": [ - "minor", - "patch" - ], - "groupName": "all non-major dependencies", - "groupSlug": "all-minor-patch", - "labels": [ - "dependencies" - ], - "automerge": true - }, - { - "matchPackagePatterns": [ - "*" - ], - "matchUpdateTypes": [ - "major" - ], - "labels": [ - "dependencies", - "breaking" - ] - } - ] + "extends": [ + "config:base", + ":disableDependencyDashboard", + ":gitSignOff" + ], + "assigneesFromCodeOwners": true, + "packageRules": [ + { + "matchPackagePatterns": [ + "*" + ], + "matchUpdateTypes": [ + "minor", + "patch" + ], + "groupName": "all non-major dependencies", + "groupSlug": "all-minor-patch", + "labels": [ + "dependencies" + ], + "automerge": true + }, + { + "matchPackagePatterns": [ + "*" + ], + "matchUpdateTypes": [ + "major" + ], + "labels": [ + "dependencies", + "breaking" + ] + } + ] } \ No newline at end of file diff --git a/src/cuid.net/Abstractions/FingerprintVersion.cs b/src/cuid.net/Abstractions/FingerprintVersion.cs index c559dc0..049079d 100644 --- a/src/cuid.net/Abstractions/FingerprintVersion.cs +++ b/src/cuid.net/Abstractions/FingerprintVersion.cs @@ -5,4 +5,4 @@ internal enum FingerprintVersion : byte None = 0, One = 1, Two = 2 -} \ No newline at end of file +} diff --git a/src/cuid.net/Cuid.cs b/src/cuid.net/Cuid.cs index e36d48d..55b0975 100644 --- a/src/cuid.net/Cuid.cs +++ b/src/cuid.net/Cuid.cs @@ -9,9 +9,9 @@ using System.Xml; using System.Xml.Schema; using System.Xml.Serialization; +using Abstractions; using Extensions; using Serialization.Json.Converters; -using Visus.Cuid.Abstractions; /// /// Represents a collision resistant unique identifier (CUID). @@ -26,7 +26,7 @@ /// A read-only instance of structure whose values are all zeros. /// public static readonly Cuid Empty; - + private const int BlockSize = 4; private const string Prefix = "c"; @@ -240,17 +240,17 @@ public int CompareTo(object? obj) } return obj is Cuid other - ? CompareTo(other) - : throw new ArgumentException($"Object must be of type {nameof(Cuid)}"); + ? CompareTo(other) + : throw new ArgumentException($"Object must be of type {nameof(Cuid)}"); } /// public bool Equals(Cuid other) { return _counter == other._counter && - string.Equals(_fingerprint, other._fingerprint, StringComparison.OrdinalIgnoreCase) && - _random == other._random && - _timestamp == other._timestamp; + string.Equals(_fingerprint, other._fingerprint, StringComparison.OrdinalIgnoreCase) && + _random == other._random && + _timestamp == other._timestamp; } /// @@ -279,23 +279,39 @@ public override int GetHashCode() public override string ToString() { return string.Create(25, ( _t: _timestamp, _c: _counter, _f: _fingerprint, _r: _random ), (dest, buffer) => - { - Prefix.WriteTo(ref dest); - - Utils.Encode((ulong) buffer._t).WriteTo(ref dest); - - Utils.Encode(buffer._c) - .TrimPad(BlockSize) - .WriteTo(ref dest); - - buffer._f.WriteTo(ref dest); - - Utils.Encode(buffer._r) - .TrimPad(BlockSize * 2) - .WriteTo(ref dest); - }); + { + Prefix + .WriteTo(ref + dest); + + Utils + .Encode((ulong) + buffer + ._t) + .WriteTo(ref + dest); + + Utils + .Encode(buffer + ._c) + .TrimPad(BlockSize) + .WriteTo(ref + dest); + + buffer._f + .WriteTo(ref + dest); + + Utils + .Encode(buffer + ._r) + .TrimPad(BlockSize * + 2) + .WriteTo(ref + dest); + }); } - + private static bool IsAlphaNum(ReadOnlySpan input) { foreach ( char t in input ) @@ -341,7 +357,7 @@ private static bool TryParseCuid(ReadOnlySpan cuidString, bool throwExcept return null; } - void IXmlSerializable.ReadXml(XmlReader reader) + unsafe void IXmlSerializable.ReadXml(XmlReader reader) { reader.Read(); @@ -349,7 +365,12 @@ void IXmlSerializable.ReadXml(XmlReader reader) _ = TryParseCuid(reader.Value, true, ref result); - Unsafe.AsRef(this) = result.ToCuid(); + #pragma warning disable CS8500 + fixed ( Cuid* c = &this ) + { + *c = result.ToCuid(); + } + #pragma warning restore CS8500 } void IXmlSerializable.WriteXml(XmlWriter writer) @@ -364,17 +385,19 @@ private struct CuidResult [MethodImpl(MethodImplOptions.AggressiveInlining)] public readonly Cuid ToCuid() { - return Unsafe.As(ref Unsafe.AsRef(in this)); + CuidResult result = this; + return Unsafe.As(ref Unsafe.AsRef(ref result)); } -#pragma warning disable CA1822 + #pragma warning disable CA1822 // ReSharper disable once MemberCanBeMadeStatic.Local internal readonly void SetFailure(string message) -#pragma warning restore CA1822 { throw new FormatException(message); } -#pragma warning disable S4487 + #pragma warning restore CA1822 + + #pragma warning disable S4487 [FieldOffset(8)] internal ulong _counter; [FieldOffset(0)] internal string _fingerprint; @@ -382,7 +405,7 @@ internal readonly void SetFailure(string message) [FieldOffset(16)] internal ulong _random; [FieldOffset(24)] internal long _timestamp; -#pragma warning restore S4487 + #pragma warning restore S4487 } private static class Context @@ -418,4 +441,4 @@ public uint Value } } } -} \ No newline at end of file +} diff --git a/src/cuid.net/Cuid2.cs b/src/cuid.net/Cuid2.cs index 75866c7..e9e559b 100644 --- a/src/cuid.net/Cuid2.cs +++ b/src/cuid.net/Cuid2.cs @@ -48,7 +48,7 @@ public Cuid2(int maxLength) if ( maxLength is < 4 or > 32 ) { throw new ArgumentOutOfRangeException(nameof(maxLength), - string.Format(Resources.Resources.Arg_Cuid2IntCtor, "4", "32")); + string.Format(Resources.Resources.Arg_Cuid2IntCtor, "4", "32")); } _maxLength = maxLength; @@ -85,10 +85,10 @@ public Cuid2(int maxLength) public bool Equals(Cuid2 other) { return _counter == other._counter && - _fingerprint.Equals(other._fingerprint) && - _prefix == other._prefix && - _random.Equals(other._random) && - _timestamp == other._timestamp; + _fingerprint.Equals(other._fingerprint) && + _prefix == other._prefix && + _random.Equals(other._random) && + _timestamp == other._timestamp; } /// @@ -110,18 +110,18 @@ public override int GetHashCode() public override string ToString() { Span buffer = stackalloc byte[16]; - + BinaryPrimitives.WriteInt64LittleEndian(buffer[..8], _timestamp); BinaryPrimitives.WriteUInt64LittleEndian(buffer[^8..], _counter); IncrementalHash.Initialize(HashAlgorithm.Sha512, out IncrementalHash state); - + IncrementalHash.Update(ref state, buffer); IncrementalHash.Update(ref state, _fingerprint); IncrementalHash.Update(ref state, _random); byte[] hash = IncrementalHash.Finalize(ref state); - + return _prefix + Utils.Encode(hash)[..( _maxLength - 1 )]; } @@ -146,4 +146,4 @@ private Counter() public ulong Value => Interlocked.Increment(ref _value); } -} \ No newline at end of file +} diff --git a/src/cuid.net/Extensions/StringExtensions.cs b/src/cuid.net/Extensions/StringExtensions.cs index 0cf2a67..b49ebe4 100644 --- a/src/cuid.net/Extensions/StringExtensions.cs +++ b/src/cuid.net/Extensions/StringExtensions.cs @@ -5,8 +5,8 @@ internal static class StringExtensions internal static string TrimPad(this string source, int size) { return string.IsNullOrWhiteSpace(source) - ? string.Empty - : source.PadLeft(9, '0')[^size..]; + ? string.Empty + : source.PadLeft(9, '0')[^size..]; } internal static void WriteTo(this string source, ref Span destination) @@ -19,4 +19,4 @@ private static void WriteToInternal(this ReadOnlySpan source, ref Span i + c); string result = string.Create(4, machineIdentifier, (dest, _) => - { - Environment.ProcessId.ToString(CultureInfo.InvariantCulture).TrimPad(2).WriteTo(ref dest); - machineIdentifier.ToString(CultureInfo.InvariantCulture).TrimPad(2).WriteTo(ref dest); - }); + { + Environment.ProcessId + .ToString(CultureInfo.InvariantCulture) + .TrimPad(2).WriteTo(ref dest); + machineIdentifier.ToString(CultureInfo.InvariantCulture) + .TrimPad(2).WriteTo(ref dest); + }); return Encoding.UTF8.GetBytes(result); } @@ -60,8 +63,8 @@ private static string GenerateSystemName() string hostname = Convert.ToHexString(bytes).ToUpperInvariant(); return OperatingSystem.IsWindows() - ? hostname[..15] // windows hostnames are limited to 15 characters - : hostname; + ? hostname[..15] // windows hostnames are limited to 15 characters + : hostname; } private static string RetrieveSystemName() @@ -70,8 +73,8 @@ private static string RetrieveSystemName() try { machineName = !string.IsNullOrWhiteSpace(Environment.MachineName) - ? Environment.MachineName - : GenerateSystemName(); + ? Environment.MachineName + : GenerateSystemName(); } catch ( InvalidOperationException ) { @@ -80,4 +83,4 @@ private static string RetrieveSystemName() return machineName; } -} \ No newline at end of file +} diff --git a/src/cuid.net/Obsoletions.cs b/src/cuid.net/Obsoletions.cs index 261ce75..1d094d0 100644 --- a/src/cuid.net/Obsoletions.cs +++ b/src/cuid.net/Obsoletions.cs @@ -4,4 +4,4 @@ internal static class Obsoletions { internal const string CuidDiagId = "VISLIB0001"; internal const string CuidMessage = "Cuid is deprecated and should not be used. Use Cuid2 instead."; -} \ No newline at end of file +} diff --git a/src/cuid.net/Resources/Resources.Designer.cs b/src/cuid.net/Resources/Resources.Designer.cs index c44977c..939c7c2 100644 --- a/src/cuid.net/Resources/Resources.Designer.cs +++ b/src/cuid.net/Resources/Resources.Designer.cs @@ -8,46 +8,35 @@ //------------------------------------------------------------------------------ namespace Visus.Cuid.Resources { - /// - /// A strongly-typed resource class, for looking up localized strings, etc. - /// - // This class was auto-generated by the StronglyTypedResourceBuilder - // class via a tool like ResGen or Visual Studio. - // To add or remove a member, edit your .ResX file then rerun ResGen - // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + using System; + + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.Runtime.CompilerServices.CompilerGeneratedAttribute()] internal class Resources { - private static global::System.Resources.ResourceManager resourceMan; + private static System.Resources.ResourceManager resourceMan; - private static global::System.Globalization.CultureInfo resourceCulture; + private static System.Globalization.CultureInfo resourceCulture; - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] internal Resources() { } - /// - /// Returns the cached ResourceManager instance used by this class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager { + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + internal static System.Resources.ResourceManager ResourceManager { get { - if (object.ReferenceEquals(resourceMan, null)) { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Visus.Cuid.Resources.Resources", typeof(Resources).Assembly); + if (object.Equals(null, resourceMan)) { + System.Resources.ResourceManager temp = new System.Resources.ResourceManager("Visus.Cuid.Resources.Resources", typeof(Resources).Assembly); resourceMan = temp; } return resourceMan; } } - /// - /// Overrides the current thread's CurrentUICulture property for all - /// resource lookups using this strongly typed resource class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture { + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + internal static System.Globalization.CultureInfo Culture { get { return resourceCulture; } @@ -56,21 +45,15 @@ internal Resources() { } } - /// - /// Looks up a localized string similar to Value cannot be less than {0} or greater than {1}.. - /// - internal static string Arg_Cuid2IntCtor { + internal static string Format_CuidUnrecognized { get { - return ResourceManager.GetString("Arg_Cuid2IntCtor", resourceCulture); + return ResourceManager.GetString("Format_CuidUnrecognized", resourceCulture); } } - /// - /// Looks up a localized string similar to Unrecognized Cuid format.. - /// - internal static string Format_CuidUnrecognized { + internal static string Arg_Cuid2IntCtor { get { - return ResourceManager.GetString("Format_CuidUnrecognized", resourceCulture); + return ResourceManager.GetString("Arg_Cuid2IntCtor", resourceCulture); } } } diff --git a/src/cuid.net/Resources/Resources.resx b/src/cuid.net/Resources/Resources.resx index 000b944..7a91191 100644 --- a/src/cuid.net/Resources/Resources.resx +++ b/src/cuid.net/Resources/Resources.resx @@ -1,9 +1,10 @@  - + - + @@ -13,10 +14,14 @@ 1.3 - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, + PublicKeyToken=b77a5c561934e089 + Unrecognized Cuid format. diff --git a/src/cuid.net/Serialization/Json/Converters/CuidConverter.cs b/src/cuid.net/Serialization/Json/Converters/CuidConverter.cs index e1ade8b..9a44ba1 100644 --- a/src/cuid.net/Serialization/Json/Converters/CuidConverter.cs +++ b/src/cuid.net/Serialization/Json/Converters/CuidConverter.cs @@ -18,4 +18,4 @@ public override void Write(Utf8JsonWriter writer, Cuid value, JsonSerializerOpti { writer.WriteStringValue(value.ToString()); } -} \ No newline at end of file +} diff --git a/src/cuid.net/Utils.cs b/src/cuid.net/Utils.cs index a23a7af..179eed0 100644 --- a/src/cuid.net/Utils.cs +++ b/src/cuid.net/Utils.cs @@ -16,8 +16,8 @@ internal static class Utils internal static ulong Decode(ReadOnlySpan input) { return input.ToString() - .Select(s => s is >= '0' and <= '9' ? s - '0' : 10 + s - 'a') - .Aggregate((ulong) 0, (i, c) => ( i * Radix ) + (uint) c); + .Select(s => s is >= '0' and <= '9' ? s - '0' : 10 + s - 'a') + .Aggregate((ulong) 0, (i, c) => ( i * Radix ) + (uint) c); } internal static string Encode(ReadOnlySpan value) @@ -73,4 +73,4 @@ internal static byte[] GenerateRandom(int length = 8) { return RandomNumberGenerator.GetBytes(length); } -} \ No newline at end of file +} diff --git a/src/cuid.net/cuid.net.csproj b/src/cuid.net/cuid.net.csproj index c0c3651..f734b02 100644 --- a/src/cuid.net/cuid.net.csproj +++ b/src/cuid.net/cuid.net.csproj @@ -1,20 +1,21 @@ - net6.0;net7.0 + net8.0 enable enable Visus.Cuid Copyright (c) 2023 Visus Development Team + true - + cuid.net Visus embedded .NET implementation of collision-resistant ids - + $(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb true @@ -34,36 +35,36 @@ true - + - + all runtime; build; native; contentfiles; analyzers; buildtransitive - all - runtime; build; native; contentfiles; analyzers; buildtransitive + all + runtime; build; native; contentfiles; analyzers; buildtransitive - + - + - - ResXFileCodeGenerator - Resources.Designer.cs - + + ResXFileCodeGenerator + Resources.Designer.cs + - - True - True - Resources.resx - + + True + True + Resources.resx + - + diff --git a/src/cuid.net/packages.lock.json b/src/cuid.net/packages.lock.json index 1090acc..af7d3c5 100644 --- a/src/cuid.net/packages.lock.json +++ b/src/cuid.net/packages.lock.json @@ -1,54 +1,18 @@ { "version": 1, "dependencies": { - "net6.0": { + "net8.0": { "Microsoft.CodeAnalysis.NetAnalyzers": { "type": "Direct", - "requested": "[7.0.4, )", - "resolved": "7.0.4", - "contentHash": "qkdUzgth6IBtGvGjII8PZ1B+dfXZ4VPXzlIGeE444vJlih/cVFTCTzF2ZY9s1buK1yLnkkDcTVGH2kyUWbyPTw==" + "requested": "[8.0.0-preview.23472.1, )", + "resolved": "8.0.0-preview.23472.1", + "contentHash": "P3pfIHmiAoXpy8N1iEJ/6aO5o5HvjtR1KR8Q8Cex/ZsKfn0L+CWkg6pCkVsrsVdKWUFtT/DePenc7gIJ0vaXfQ==" }, - "Microsoft.SourceLink.GitHub": { - "type": "Direct", - "requested": "[1.1.1, )", - "resolved": "1.1.1", - "contentHash": "IaJGnOv/M7UQjRJks7B6p7pbPnOwisYGOIzqCz5ilGFTApZ3ktOR+6zJ12ZRPInulBmdAf1SrGdDG2MU8g6XTw==", - "dependencies": { - "Microsoft.Build.Tasks.Git": "1.1.1", - "Microsoft.SourceLink.Common": "1.1.1" - } - }, - "NSec.Cryptography": { - "type": "Direct", - "requested": "[22.4.0, )", - "resolved": "22.4.0", - "contentHash": "lEntcPYd7h3aZ8xxi/y/4TML7o8w0GEGqd+w4L1omqFLbdCBmhxJAeO2YBmv/fXbJKgKCQLm7+TD4bR605PEUQ==", - "dependencies": { - "libsodium": "[1.0.18.2, 1.0.19)" - } - }, - "libsodium": { - "type": "Transitive", - "resolved": "1.0.18.2", - "contentHash": "flArHoVdscSzyV8ZdPV+bqqY2TTFlaN+xZf/vIqsmHI51KVcD/mOdUPaK3n/k/wGKz8dppiktXUqSmf3AXFgig==" - }, - "Microsoft.Build.Tasks.Git": { - "type": "Transitive", - "resolved": "1.1.1", - "contentHash": "AT3HlgTjsqHnWpBHSNeR0KxbLZD7bztlZVj7I8vgeYG9SYqbeFGh0TM/KVtC6fg53nrWHl3VfZFvb5BiQFcY6Q==" - }, - "Microsoft.SourceLink.Common": { - "type": "Transitive", - "resolved": "1.1.1", - "contentHash": "WMcGpWKrmJmzrNeuaEb23bEMnbtR/vLmvZtkAP5qWu7vQsY59GqfRJd65sFpBszbd2k/bQ8cs8eWawQKAabkVg==" - } - }, - "net7.0": { - "Microsoft.CodeAnalysis.NetAnalyzers": { + "Microsoft.NET.ILLink.Tasks": { "type": "Direct", - "requested": "[7.0.4, )", - "resolved": "7.0.4", - "contentHash": "qkdUzgth6IBtGvGjII8PZ1B+dfXZ4VPXzlIGeE444vJlih/cVFTCTzF2ZY9s1buK1yLnkkDcTVGH2kyUWbyPTw==" + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "B3etT5XQ2nlWkZGO2m/ytDYrOmSsQG1XNBaM6ZYlX5Ch/tDrMFadr0/mK6gjZwaQc55g+5+WZMw4Cz3m8VEF7g==" }, "Microsoft.SourceLink.GitHub": { "type": "Direct", diff --git a/tests/cuid.net.tests/ApiFacts.cs b/tests/cuid.net.tests/ApiFacts.cs index 905085b..a2ca23c 100644 --- a/tests/cuid.net.tests/ApiFacts.cs +++ b/tests/cuid.net.tests/ApiFacts.cs @@ -3,7 +3,6 @@ using System.Diagnostics.CodeAnalysis; using System.Runtime.CompilerServices; using PublicApiGenerator; -using Visus.Cuid; [ExcludeFromCodeCoverage] [UsesVerify] @@ -23,4 +22,4 @@ public async Task Cuid_NoBreakingChanges_Async() await Verify(api); } -} \ No newline at end of file +} diff --git a/tests/cuid.net.tests/Cuid2Facts.cs b/tests/cuid.net.tests/Cuid2Facts.cs index 4f2b55f..a87caf3 100644 --- a/tests/cuid.net.tests/Cuid2Facts.cs +++ b/tests/cuid.net.tests/Cuid2Facts.cs @@ -13,7 +13,7 @@ public void Cuid2_Constructor() var cuidString = cuid.ToString(); var result = cuidString.Length == 24 - && cuidString.All(char.IsLetterOrDigit); + && cuidString.All(char.IsLetterOrDigit); Assert.True(result); } @@ -26,7 +26,7 @@ public void Cuid2_Constructor_DefinedLength() var cuidString = cuid.ToString(); var result = cuidString.Length == 10 - && cuidString.All(char.IsLetterOrDigit); + && cuidString.All(char.IsLetterOrDigit); Assert.True(result); } @@ -51,4 +51,4 @@ public void Cuid2_Equality() Assert.False(c1.GetHashCode() == c2.GetHashCode()); } -} \ No newline at end of file +} diff --git a/tests/cuid.net.tests/CuidFacts.cs b/tests/cuid.net.tests/CuidFacts.cs index 180a8b0..509f66d 100644 --- a/tests/cuid.net.tests/CuidFacts.cs +++ b/tests/cuid.net.tests/CuidFacts.cs @@ -6,7 +6,6 @@ namespace Visus.Cuid.Tests; using System.Text.Json; using System.Xml; using System.Xml.Serialization; -using Visus.Cuid; [ExcludeFromCodeCoverage] public class CuidFacts @@ -112,8 +111,8 @@ public void Cuid_NewCuid() var cuidString = cuid.ToString(); var result = cuidString.Length == 25 - && cuidString.All(char.IsLetterOrDigit) - && cuid != Cuid.Empty; + && cuidString.All(char.IsLetterOrDigit) + && cuid != Cuid.Empty; Assert.True(result); } @@ -214,7 +213,11 @@ public void Cuid_Xml_Serialize() var cuid = new Cuid(CuidString); var serializer = new XmlSerializer(typeof(Cuid)); - var settings = new XmlWriterSettings { Indent = false, Encoding = new UnicodeEncoding(false, false) }; + var settings = new XmlWriterSettings + { + Indent = false, + Encoding = new UnicodeEncoding(false, false) + }; using var stringWriter = new StringWriter(); using var xmlWriter = XmlWriter.Create(stringWriter, settings); @@ -223,4 +226,4 @@ public void Cuid_Xml_Serialize() Assert.Equal(expected, stringWriter.ToString()); } -} \ No newline at end of file +} diff --git a/tests/cuid.net.tests/Usings.cs b/tests/cuid.net.tests/Usings.cs index 8c927eb..c802f44 100644 --- a/tests/cuid.net.tests/Usings.cs +++ b/tests/cuid.net.tests/Usings.cs @@ -1 +1 @@ -global using Xunit; \ No newline at end of file +global using Xunit; diff --git a/tests/cuid.net.tests/cuid.net.tests.csproj b/tests/cuid.net.tests/cuid.net.tests.csproj index 69a5831..9a7f3da 100644 --- a/tests/cuid.net.tests/cuid.net.tests.csproj +++ b/tests/cuid.net.tests/cuid.net.tests.csproj @@ -1,7 +1,7 @@ - net6.0;net7.0 + net8.0 enable enable false @@ -11,14 +11,14 @@ - all - runtime; build; native; contentfiles; analyzers; buildtransitive + all + runtime; build; native; contentfiles; analyzers; buildtransitive - - - - - + + + + + runtime; build; native; contentfiles; analyzers; buildtransitive all @@ -29,7 +29,7 @@ - + diff --git a/tests/cuid.net.tests/packages.lock.json b/tests/cuid.net.tests/packages.lock.json index 7b66281..e076c17 100644 --- a/tests/cuid.net.tests/packages.lock.json +++ b/tests/cuid.net.tests/packages.lock.json @@ -1,7 +1,7 @@ { "version": 1, "dependencies": { - "net6.0": { + "net8.0": { "coverlet.collector": { "type": "Direct", "requested": "[6.0.0, )", @@ -16,12 +16,12 @@ }, "Microsoft.NET.Test.Sdk": { "type": "Direct", - "requested": "[17.7.1, )", - "resolved": "17.7.1", - "contentHash": "o1qyqDOR8eMuQrC1e5EMMcE+Wm3rwES5aHNWaJpi2A5qwVOru23zsdXkndT6hgl79QsJsqKp+/RNcayIzpHjvA==", + "requested": "[17.7.2, )", + "resolved": "17.7.2", + "contentHash": "WOSF/GUYcnrLGkdvCbXDRig2rShtBwfQc5l7IxQE6PZI3CeXAqF1SpyzwlGA5vw+MdEAXs3niy+ZkGBBWna6tw==", "dependencies": { - "Microsoft.CodeCoverage": "17.7.1", - "Microsoft.TestPlatform.TestHost": "17.7.1" + "Microsoft.CodeCoverage": "17.7.2", + "Microsoft.TestPlatform.TestHost": "17.7.2" } }, "PublicApiGenerator": { @@ -36,51 +36,51 @@ }, "Verify.Xunit": { "type": "Direct", - "requested": "[20.8.2, )", - "resolved": "20.8.2", - "contentHash": "NalwLfpwKYgV8yZPFFHvJ5TqBQxC7m7Att711HW4dOV4UJmT2mXptw7rIET321BY00X5/ApmxBAfPHbLJfKmkA==", + "requested": "[22.1.4, )", + "resolved": "22.1.4", + "contentHash": "OAIhBYIP29a7Vd+vvM8KHwr4iZC9Ih+IGeGt2cnH5CGBNCfEeQ6ohMKThgbo/flfWzgLAyjKYfBzUeDnjnk2rQ==", "dependencies": { - "EmptyFiles": "4.5.0", - "Verify": "20.8.2", + "EmptyFiles": "4.6.0", + "Verify": "22.1.4", "xunit.abstractions": "2.0.3", - "xunit.extensibility.execution": "2.5.0" + "xunit.extensibility.execution": "2.5.2" } }, "xunit": { "type": "Direct", - "requested": "[2.5.0, )", - "resolved": "2.5.0", - "contentHash": "f2V5wuAdoaq0mRTt9UBmPbVex9HcwFYn+y7WaKUz5Xpakcrv7lhtQWBJUWNY4N3Z+o+atDBLyAALM1QWx04C6Q==", + "requested": "[2.5.3, )", + "resolved": "2.5.3", + "contentHash": "VxYDiWSwrLxOJ3UEN+ZPrBybB0SFShQ1E6PjT65VdoKCJhorgerFznThjSwawRH/WAip73YnucDVsE8WRj/8KQ==", "dependencies": { - "xunit.analyzers": "1.2.0", - "xunit.assert": "2.5.0", - "xunit.core": "[2.5.0]" + "xunit.analyzers": "1.4.0", + "xunit.assert": "2.5.3", + "xunit.core": "[2.5.3]" } }, "xunit.runner.visualstudio": { "type": "Direct", - "requested": "[2.5.0, )", - "resolved": "2.5.0", - "contentHash": "+Gp9vuC2431yPyKB15YrOTxCuEAErBQUTIs6CquumX1F073UaPHGW0VE/XVJLMh9W4sXdz3TBkcHdFWZrRn2Hw==" + "requested": "[2.5.3, )", + "resolved": "2.5.3", + "contentHash": "HFFL6O+QLEOfs555SqHii48ovVa4CqGYanY+B32BjLpPptdE+wEJmCFNXlLHdEOD5LYeayb9EroaUpydGpcybg==" }, "Argon": { "type": "Transitive", - "resolved": "0.7.2", - "contentHash": "6OsUiGsZzKx9BR15T4V+YDfpzFj8AQvtlw81VZm0LCOyu4OGqs4YFANTuhpdyb3N/qPcMomAt25zARo+zFtPmw==" + "resolved": "0.13.0", + "contentHash": "KTbzEEvCC6QX0eEO6C49WBeHdkGT0Hq1EeCk7gd0GhTK+fMpRr8DvmDaqDFK58Fvvwo0dx7K5NhFUexXv+aVuQ==" }, "DiffEngine": { "type": "Transitive", - "resolved": "12.2.1", - "contentHash": "vFnI/YI5t7TG2gR/DZUiBluD9F0mQ7m9p2oW9O/pYzAui5Sngsp92W2KzM2PRlgXV2+utSpd+WCkkhx21ilq+w==", + "resolved": "12.4.0", + "contentHash": "GPzaHprunkd5rrtezU+rEd3Heoc6bKTH6eU7o+VCCuWSfhi4TnfrbiT/9P3KsCbKhftwwsLi7D2ZjlfoKCpdZQ==", "dependencies": { - "EmptyFiles": "4.5.0", + "EmptyFiles": "4.6.0", "System.Management": "6.0.2" } }, "EmptyFiles": { "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "utFjtKV+vPFPuOwSap9SH98RvdFGPW/xLlIkquj8qDQ+91P8P5V3+71in/lM0iSIYaeIDVhMFEOmxOxdSQf6Aw==" + "resolved": "4.6.0", + "contentHash": "Nu0LXp+JPXUn/RKZ+4k50h+WT7ScAMjGbSN+6brP14fiq5Q982L0LOER6JO6a7q01H1IJEHbGDPQ7bObkmhTjg==" }, "libsodium": { "type": "Transitive", @@ -89,8 +89,8 @@ }, "Microsoft.CodeCoverage": { "type": "Transitive", - "resolved": "17.7.1", - "contentHash": "NmGwM2ZJy4CAMdJYIp53opUjnXsMbzASX5oQzgxORicJsgz5Lp50fnRI8OmQ/kYNg6dHfr3IjuUoXbsotDX+KA==" + "resolved": "17.7.2", + "contentHash": "ntbkwIqwszkfCRjxVZOyEQiHauiYsY9NtYjw9ASsoxDSiG8YtV6AGcOAwrAk3TZv2UOq4MrpX+3MYEeMHSb03w==" }, "Microsoft.NETCore.Platforms": { "type": "Transitive", @@ -104,8 +104,8 @@ }, "Microsoft.TestPlatform.ObjectModel": { "type": "Transitive", - "resolved": "17.7.1", - "contentHash": "nDmV03yHIdAiG5J3ZEjMyJM2XDjmWORuKgbrGzqlAipBEjUuy5Z5S7WwSqUv9OiaUrtCn9dNYmjfMELUi08leQ==", + "resolved": "17.7.2", + "contentHash": "aHzQWgDMVBnk39HhQVmn06w+YxzF1h2V5/M4WgrNQAn7q97GR4Si3vLRTDlmJo9nK/Nknce+H4tXx4gqOKyLeg==", "dependencies": { "NuGet.Frameworks": "6.5.0", "System.Reflection.Metadata": "1.6.0" @@ -113,10 +113,10 @@ }, "Microsoft.TestPlatform.TestHost": { "type": "Transitive", - "resolved": "17.7.1", - "contentHash": "WCU1NyBarz0tih+I9K5OWN1dVo3z562Iek/VAqWNWRFWw1GeUGqB61iixrBvZO77sjTtBc1cXO8H95uImfmEdw==", + "resolved": "17.7.2", + "contentHash": "pv9yVD7IKPLJV28zYjLsWFiM3j506I2ye+6NquG8vsbm/gR7lgyig8IgY6Vo57VMvGaAKwtUECzcj+C5tH271Q==", "dependencies": { - "Microsoft.TestPlatform.ObjectModel": "17.7.1", + "Microsoft.TestPlatform.ObjectModel": "17.7.2", "Newtonsoft.Json": "13.0.1" } }, @@ -1061,12 +1061,12 @@ }, "Verify": { "type": "Transitive", - "resolved": "20.8.2", - "contentHash": "4Ep1GKhDdHLy50g3tSVtPkq1lADL20OxDVkrkT/cehZcPeTtH+5voqfzVklmvEDvaY+DleuRgaHmTcllqGOsUw==", + "resolved": "22.1.4", + "contentHash": "t7t+uv9mFKBRS+x6wZ8g+3dohItO9Q4XPiXYP4wmtT3/nTliPrjGqkKn6Mux3dXms0wvhXbyjiMhFuIRV30toA==", "dependencies": { - "Argon": "0.7.2", - "DiffEngine": "12.2.1", - "EmptyFiles": "4.5.0", + "Argon": "0.13.0", + "DiffEngine": "12.4.0", + "EmptyFiles": "4.6.0", "SimpleInfoName": "2.1.1", "System.IO.Hashing": "7.0.0" } @@ -1078,30 +1078,30 @@ }, "xunit.analyzers": { "type": "Transitive", - "resolved": "1.2.0", - "contentHash": "d3dehV/DASLRlR8stWQmbPPjfYC2tct50Evav+OlsJMkfFqkhYvzO1k0s81lk0px8O0knZU/FqC8SqbXOtn+hw==" + "resolved": "1.4.0", + "contentHash": "7ljnTJfFjz5zK+Jf0h2dd2QOSO6UmFizXsojv/x4QX7TU5vEgtKZPk9RvpkiuUqg2bddtNZufBoKQalsi7djfA==" }, "xunit.assert": { "type": "Transitive", - "resolved": "2.5.0", - "contentHash": "wN84pKX5jzfpgJ0bB6arrCA/oelBeYLCpnQ9Wj5xGEVPydKzVSDY5tEatFLHE/rO0+0RC+I4H5igGE118jRh1w==", + "resolved": "2.5.3", + "contentHash": "MK3HiBckO3vdxEdUxXZyyRPsBNPsC/nz6y1gj/UZIZkjMnsVQyZPU8yxS/3cjTchYcqskt/nqUOS5wmD8JezdQ==", "dependencies": { "NETStandard.Library": "1.6.1" } }, "xunit.core": { "type": "Transitive", - "resolved": "2.5.0", - "contentHash": "dnV0Mn2s1C0y2m33AylQyMkEyhBQsL4R0302kwSGiEGuY3JwzEmhTa9pnghyMRPliYSs4fXfkEAP+5bKXryGFg==", + "resolved": "2.5.3", + "contentHash": "FE8yEEUkoMLd6kOHDXm/QYfX/dYzwc0c+Q4MQon6VGRwFuy6UVGwK/CFA5LEea+ZBEmcco7AEl2q78VjsA0j/w==", "dependencies": { - "xunit.extensibility.core": "[2.5.0]", - "xunit.extensibility.execution": "[2.5.0]" + "xunit.extensibility.core": "[2.5.3]", + "xunit.extensibility.execution": "[2.5.3]" } }, "xunit.extensibility.core": { "type": "Transitive", - "resolved": "2.5.0", - "contentHash": "xRm6NIV3i7I+LkjsAJ91Xz2fxJm/oMEi2CYq1G5HlGTgcK1Zo2wNbLO6nKX1VG5FZzXibSdoLwr/MofVvh3mFA==", + "resolved": "2.5.3", + "contentHash": "IjAQlPeZWXP89pl1EuOG9991GH1qgAL0rQfkmX2UV+PDenbYb7oBnQopL9ujE6YaXxgaQazp7lFjsDyyxD6Mtw==", "dependencies": { "NETStandard.Library": "1.6.1", "xunit.abstractions": "2.0.3" @@ -1109,1133 +1109,11 @@ }, "xunit.extensibility.execution": { "type": "Transitive", - "resolved": "2.5.0", - "contentHash": "7+v2Bvp+1ew1iMGQVb1glICi8jcNdHbRUX6Ru0dmJBViGdjiS7kyqcX2VxleQhFbKNi+WF0an7/TeTXD283RlQ==", + "resolved": "2.5.3", + "contentHash": "w9eGCHl+gJj1GzZSf0VTzYPp/gv4fiUDkr+yR7/Wv9/ucO2CHltGg2TnyySLFjzekkjuxVJZUE+tZyDNzryJFw==", "dependencies": { "NETStandard.Library": "1.6.1", - "xunit.extensibility.core": "[2.5.0]" - } - }, - "cuid.net": { - "type": "Project", - "dependencies": { - "NSec.Cryptography": "[22.4.0, )" - } - } - }, - "net7.0": { - "coverlet.collector": { - "type": "Direct", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "tW3lsNS+dAEII6YGUX/VMoJjBS1QvsxqJeqLaJXub08y1FSjasFPtQ4UBUsudE9PNrzLjooClMsPtY2cZLdXpQ==" - }, - "coverlet.msbuild": { - "type": "Direct", - "requested": "[6.0.0, )", - "resolved": "6.0.0", - "contentHash": "cUKI50VSVBqDQDFIdBnjN0Jk5JYhjtD0geP2BZZv71/ZrKORJXcLRswFsojI+cHdV+rFUL2XDJEpuhK3x1YqLA==" - }, - "Microsoft.NET.Test.Sdk": { - "type": "Direct", - "requested": "[17.7.1, )", - "resolved": "17.7.1", - "contentHash": "o1qyqDOR8eMuQrC1e5EMMcE+Wm3rwES5aHNWaJpi2A5qwVOru23zsdXkndT6hgl79QsJsqKp+/RNcayIzpHjvA==", - "dependencies": { - "Microsoft.CodeCoverage": "17.7.1", - "Microsoft.TestPlatform.TestHost": "17.7.1" - } - }, - "PublicApiGenerator": { - "type": "Direct", - "requested": "[11.0.0, )", - "resolved": "11.0.0", - "contentHash": "Iu9CU7ryElZJNALWEAJUfN45FkfrjLJibOEBwrdNJG46CmwLp8b2U3SUObC1YkXfTfPVREXEOuTzaOQFCsmK9Q==", - "dependencies": { - "Mono.Cecil": "0.11.4", - "System.CodeDom": "7.0.0" - } - }, - "Verify.Xunit": { - "type": "Direct", - "requested": "[20.8.2, )", - "resolved": "20.8.2", - "contentHash": "NalwLfpwKYgV8yZPFFHvJ5TqBQxC7m7Att711HW4dOV4UJmT2mXptw7rIET321BY00X5/ApmxBAfPHbLJfKmkA==", - "dependencies": { - "EmptyFiles": "4.5.0", - "Verify": "20.8.2", - "xunit.abstractions": "2.0.3", - "xunit.extensibility.execution": "2.5.0" - } - }, - "xunit": { - "type": "Direct", - "requested": "[2.5.0, )", - "resolved": "2.5.0", - "contentHash": "f2V5wuAdoaq0mRTt9UBmPbVex9HcwFYn+y7WaKUz5Xpakcrv7lhtQWBJUWNY4N3Z+o+atDBLyAALM1QWx04C6Q==", - "dependencies": { - "xunit.analyzers": "1.2.0", - "xunit.assert": "2.5.0", - "xunit.core": "[2.5.0]" - } - }, - "xunit.runner.visualstudio": { - "type": "Direct", - "requested": "[2.5.0, )", - "resolved": "2.5.0", - "contentHash": "+Gp9vuC2431yPyKB15YrOTxCuEAErBQUTIs6CquumX1F073UaPHGW0VE/XVJLMh9W4sXdz3TBkcHdFWZrRn2Hw==" - }, - "Argon": { - "type": "Transitive", - "resolved": "0.7.2", - "contentHash": "6OsUiGsZzKx9BR15T4V+YDfpzFj8AQvtlw81VZm0LCOyu4OGqs4YFANTuhpdyb3N/qPcMomAt25zARo+zFtPmw==" - }, - "DiffEngine": { - "type": "Transitive", - "resolved": "12.2.1", - "contentHash": "vFnI/YI5t7TG2gR/DZUiBluD9F0mQ7m9p2oW9O/pYzAui5Sngsp92W2KzM2PRlgXV2+utSpd+WCkkhx21ilq+w==", - "dependencies": { - "EmptyFiles": "4.5.0", - "System.Management": "6.0.2" - } - }, - "EmptyFiles": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "utFjtKV+vPFPuOwSap9SH98RvdFGPW/xLlIkquj8qDQ+91P8P5V3+71in/lM0iSIYaeIDVhMFEOmxOxdSQf6Aw==" - }, - "libsodium": { - "type": "Transitive", - "resolved": "1.0.18.2", - "contentHash": "flArHoVdscSzyV8ZdPV+bqqY2TTFlaN+xZf/vIqsmHI51KVcD/mOdUPaK3n/k/wGKz8dppiktXUqSmf3AXFgig==" - }, - "Microsoft.CodeCoverage": { - "type": "Transitive", - "resolved": "17.7.1", - "contentHash": "NmGwM2ZJy4CAMdJYIp53opUjnXsMbzASX5oQzgxORicJsgz5Lp50fnRI8OmQ/kYNg6dHfr3IjuUoXbsotDX+KA==" - }, - "Microsoft.NETCore.Platforms": { - "type": "Transitive", - "resolved": "1.1.0", - "contentHash": "kz0PEW2lhqygehI/d6XsPCQzD7ff7gUJaVGPVETX611eadGsA3A877GdSlU0LRVMCTH/+P3o2iDTak+S08V2+A==" - }, - "Microsoft.NETCore.Targets": { - "type": "Transitive", - "resolved": "1.1.0", - "contentHash": "aOZA3BWfz9RXjpzt0sRJJMjAscAUm3Hoa4UWAfceV9UTYxgwZ1lZt5nO2myFf+/jetYQo4uTP7zS8sJY67BBxg==" - }, - "Microsoft.TestPlatform.ObjectModel": { - "type": "Transitive", - "resolved": "17.7.1", - "contentHash": "nDmV03yHIdAiG5J3ZEjMyJM2XDjmWORuKgbrGzqlAipBEjUuy5Z5S7WwSqUv9OiaUrtCn9dNYmjfMELUi08leQ==", - "dependencies": { - "NuGet.Frameworks": "6.5.0", - "System.Reflection.Metadata": "1.6.0" - } - }, - "Microsoft.TestPlatform.TestHost": { - "type": "Transitive", - "resolved": "17.7.1", - "contentHash": "WCU1NyBarz0tih+I9K5OWN1dVo3z562Iek/VAqWNWRFWw1GeUGqB61iixrBvZO77sjTtBc1cXO8H95uImfmEdw==", - "dependencies": { - "Microsoft.TestPlatform.ObjectModel": "17.7.1", - "Newtonsoft.Json": "13.0.1" - } - }, - "Microsoft.Win32.Primitives": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "9ZQKCWxH7Ijp9BfahvL2Zyf1cJIk8XYLF6Yjzr2yi0b2cOut/HQ31qf1ThHAgCc3WiZMdnWcfJCgN82/0UunxA==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "Mono.Cecil": { - "type": "Transitive", - "resolved": "0.11.4", - "contentHash": "IC1h5g0NeJGHIUgzM1P82ld57knhP0IcQfrYITDPXlNpMYGUrsG5TxuaWTjaeqDNQMBDNZkB8L0rBnwsY6JHuQ==" - }, - "NETStandard.Library": { - "type": "Transitive", - "resolved": "1.6.1", - "contentHash": "WcSp3+vP+yHNgS8EV5J7pZ9IRpeDuARBPN28by8zqff1wJQXm26PVU8L3/fYLBJVU7BtDyqNVWq2KlCVvSSR4A==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.Win32.Primitives": "4.3.0", - "System.AppContext": "4.3.0", - "System.Collections": "4.3.0", - "System.Collections.Concurrent": "4.3.0", - "System.Console": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tools": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Globalization": "4.3.0", - "System.Globalization.Calendars": "4.3.0", - "System.IO": "4.3.0", - "System.IO.Compression": "4.3.0", - "System.IO.Compression.ZipFile": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Linq": "4.3.0", - "System.Linq.Expressions": "4.3.0", - "System.Net.Http": "4.3.0", - "System.Net.Primitives": "4.3.0", - "System.Net.Sockets": "4.3.0", - "System.ObjectModel": "4.3.0", - "System.Reflection": "4.3.0", - "System.Reflection.Extensions": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.InteropServices.RuntimeInformation": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Security.Cryptography.X509Certificates": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Text.Encoding.Extensions": "4.3.0", - "System.Text.RegularExpressions": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "System.Threading.Timer": "4.3.0", - "System.Xml.ReaderWriter": "4.3.0", - "System.Xml.XDocument": "4.3.0" - } - }, - "Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.1", - "contentHash": "ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==" - }, - "NSec.Cryptography": { - "type": "Transitive", - "resolved": "22.4.0", - "contentHash": "lEntcPYd7h3aZ8xxi/y/4TML7o8w0GEGqd+w4L1omqFLbdCBmhxJAeO2YBmv/fXbJKgKCQLm7+TD4bR605PEUQ==", - "dependencies": { - "libsodium": "[1.0.18.2, 1.0.19)" - } - }, - "NuGet.Frameworks": { - "type": "Transitive", - "resolved": "6.5.0", - "contentHash": "QWINE2x3MbTODsWT1Gh71GaGb5icBz4chS8VYvTgsBnsi8esgN6wtHhydd7fvToWECYGq7T4cgBBDiKD/363fg==" - }, - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "HdSSp5MnJSsg08KMfZThpuLPJpPwE5hBXvHwoKWosyHHfe8Mh5WKT0ylEOf6yNzX6Ngjxe4Whkafh5q7Ymac4Q==" - }, - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "+yH1a49wJMy8Zt4yx5RhJrxO/DBDByAiCzNwiETI+1S4mPdCu0OY4djdciC7Vssk0l22wQaDLrXxXkp+3+7bVA==" - }, - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "c3YNH1GQJbfIPJeCnr4avseugSqPrxwIqzthYyZDN6EuOyNOzq+y2KSUfRcXauya1sF4foESTgwM5e1A8arAKw==" - }, - "runtime.native.System": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "c/qWt2LieNZIj1jGnVNsE2Kl23Ya2aSTBuXMD6V7k9KWr6l16Tqdwq+hJScEpWER9753NWC8h96PaVNY5Ld7Jw==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - } - }, - "runtime.native.System.IO.Compression": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "INBPonS5QPEgn7naufQFXJEp3zX6L4bwHgJ/ZH78aBTpeNfQMtf7C6VrAFhlq2xxWBveIOWyFzQjJ8XzHMhdOQ==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - } - }, - "runtime.native.System.Net.Http": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "ZVuZJqnnegJhd2k/PtAbbIcZ3aZeITq3sj06oKfMBSfphW3HDmk/t4ObvbOk/JA/swGR0LNqMksAh/f7gpTROg==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - } - }, - "runtime.native.System.Security.Cryptography.Apple": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "DloMk88juo0OuOWr56QG7MNchmafTLYWvABy36izkrLI5VledI0rq28KGs1i9wbpeT9NPQrx/wTf8U2vazqQ3Q==", - "dependencies": { - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "4.3.0" - } - }, - "runtime.native.System.Security.Cryptography.OpenSsl": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "NS1U+700m4KFRHR5o4vo9DSlTmlCKu/u7dtE5sUHVIPB+xpXxYQvgBgA6wEIeCz6Yfn0Z52/72WYsToCEPJnrw==", - "dependencies": { - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "b3pthNgxxFcD+Pc0WSEoC0+md3MyhRS6aCEeenvNE3Fdw1HyJ18ZhRFVJJzIeR/O/jpxPboB805Ho0T3Ul7w8A==" - }, - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "KeLz4HClKf+nFS7p/6Fi/CqyLXh81FpiGzcmuS8DGi9lUqSnZ6Es23/gv2O+1XVGfrbNmviF7CckBpavkBoIFQ==" - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "kVXCuMTrTlxq4XOOMAysuNwsXWpYeboGddNGpIgNSZmv1b6r/s/DPk0fYMB7Q5Qo4bY68o48jt4T4y5BVecbCQ==" - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "X7IdhILzr4ROXd8mI1BUCQMSHSQwelUlBjF1JyTKCjXaOGn2fB4EKBxQbCK2VjO3WaWIdlXZL3W6TiIVnrhX4g==" - }, - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "nyFNiCk/r+VOiIqreLix8yN+q3Wga9+SE8BCgkf+2BwEKiNx6DyvFjCgkfV743/grxv8jHJ8gUK4XEQw7yzRYg==" - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "ytoewC6wGorL7KoCAvRfsgoJPJbNq+64k2SqW6JcOAebWsFUvCCYgfzQMrnpvPiEl4OrblUlhF2ji+Q1+SVLrQ==" - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "I8bKw2I8k58Wx7fMKQJn2R8lamboCAiHfHeV/pS65ScKWMMI0+wJkLYlEKvgW1D/XvSl/221clBoR2q9QNNM7A==" - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "VB5cn/7OzUfzdnC8tqAIMQciVLiq2epm2NrAm1E9OjNRyG4lVhfR61SMcLizejzQP8R8Uf/0l5qOIbUEi+RdEg==" - }, - "SimpleInfoName": { - "type": "Transitive", - "resolved": "2.1.1", - "contentHash": "0FkAdjkNjtEdSCt2/b6z5gd971bmTCXhRHqi8kH5Z/gV/XV/LmKeHrUmnBZffhPH91LUyaw3pzmQROTs4zNfGw==" - }, - "System.AppContext": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "fKC+rmaLfeIzUhagxY17Q9siv/sPrjjKcfNg1Ic8IlQkZLipo8ljcaZQu4VtI4Jqbzjc2VTjzGLF6WmsRXAEgA==", - "dependencies": { - "System.Runtime": "4.3.0" - } - }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "ratu44uTIHgeBeI0dE8DWvmXVBSo4u7ozRZZHOMmK/JPpYyo0dAfgSiHlpiObMQ5lEtEyIXA40sKRYg5J6A8uQ==", - "dependencies": { - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.CodeDom": { - "type": "Transitive", - "resolved": "7.0.0", - "contentHash": "GLltyqEsE5/3IE+zYRP5sNa1l44qKl9v+bfdMcwg+M9qnQf47wK3H0SUR/T+3N4JEQXF3vV4CSuuo0rsg+nq2A==" - }, - "System.Collections": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "3Dcj85/TBdVpL5Zr+gEEBUuFe2icOnLalmEh9hfck1PTYbbyWuZgh4fmm2ysCLTrqLQw6t3TgTyJ+VLp+Qb+Lw==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Collections.Concurrent": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "ztl69Xp0Y/UXCL+3v3tEU+lIy+bvjKNUmopn1wep/a291pVPK7dxBd6T7WnlQqRog+d1a/hSsgRsmFnIBKTPLQ==", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Globalization": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.Console": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "DHDrIxiqk1h03m6khKWV2X8p/uvN79rgSqpilL6uzpmSfxfU5ng8VcPtW4qsDsQDHiTv6IPV9TmD5M/vElPNLg==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0" - } - }, - "System.Diagnostics.Debug": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "ZUhUOdqmaG5Jk3Xdb8xi5kIyQYAA4PnTNlHx1mu9ZY3qv4ELIdKbnL/akbGaKi2RnNUWaZsAs31rvzFdewTj2g==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Diagnostics.DiagnosticSource": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "tD6kosZnTAGdrEa0tZSuFyunMbt/5KYDnHdndJYGqZoNy00XVXyACd5d6KnE1YgYv3ne2CjtAfNXo/fwEhnKUA==", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.Diagnostics.Tools": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "UUvkJfSYJMM6x527dJg2VyWPSRqIVB0Z7dbjHst1zmwTXz5CcXSYJFWRpuigfbO1Lf7yfZiIaEUesfnl/g5EyA==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Diagnostics.Tracing": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "rswfv0f/Cqkh78rA5S8eN8Neocz234+emGCtTF3lxPY96F+mmmUen6tbn0glN6PMvlKQb9bPAY5e9u7fgPTkKw==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Globalization": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "kYdVd2f2PAdFGblzFswE4hkNANJBKRmsfa2X5LG2AcWE1c7/4t0pYae1L8vfZ5xvE2nK/R9JprtToA61OSHWIg==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Globalization.Calendars": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "GUlBtdOWT4LTV3I+9/PJW+56AnnChTaOqqTLFtdmype/L500M2LIyXgmtd9X2P2VOkmJd5c67H5SaC2QcL1bFA==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Globalization": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Globalization.Extensions": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "FhKmdR6MPG+pxow6wGtNAWdZh7noIOpdD5TwQ3CprzgIE1bBBoim0vbR1+AWsWjQmU7zXHgQo4TWSP6lCeiWcQ==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Globalization": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.InteropServices": "4.3.0" - } - }, - "System.IO": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "3qjaHvxQPDpSOYICjUoTsmoq5u6QJAFRUITgeT/4gqkF1bajbSmb1kwSxEA8AHlofqgcKJcM8udgieRNhaJ5Cg==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.IO.Compression": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "YHndyoiV90iu4iKG115ibkhrG+S3jBm8Ap9OwoUAzO5oPDAWcr0SFwQFm0HjM8WkEZWo0zvLTyLmbvTkW1bXgg==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Buffers": "4.3.0", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "runtime.native.System": "4.3.0", - "runtime.native.System.IO.Compression": "4.3.0" - } - }, - "System.IO.Compression.ZipFile": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "G4HwjEsgIwy3JFBduZ9quBkAu+eUwjIdJleuNSgmUojbH6O3mlvEIme+GHx/cLlTAPcrnnL7GqvB9pTlWRfhOg==", - "dependencies": { - "System.Buffers": "4.3.0", - "System.IO": "4.3.0", - "System.IO.Compression": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Text.Encoding": "4.3.0" - } - }, - "System.IO.FileSystem": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "3wEMARTnuio+ulnvi+hkRNROYwa1kylvYahhcLk4HSoVdl+xxTFVeVlYOfLwrDPImGls0mDqbMhrza8qnWPTdA==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.IO.FileSystem.Primitives": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "6QOb2XFLch7bEc4lIcJH49nJN2HV+OC3fHDgsLVsBVBk3Y4hFAnOBGzJ2lUu7CyDDFo9IBWkSsnbkT6IBwwiMw==", - "dependencies": { - "System.Runtime": "4.3.0" - } - }, - "System.IO.Hashing": { - "type": "Transitive", - "resolved": "7.0.0", - "contentHash": "sDnWM0N3AMCa86LrKTWeF3BZLD2sgWyYUc7HL6z4+xyDZNQRwzmxbo4qP2rX2MqC+Sy1/gOSRDah5ltxY5jPxw==" - }, - "System.Linq": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "5DbqIUpsDp0dFftytzuMmc0oeMdQwjcP/EWxsksIz/w1TcFRkZ3yKKz0PqiYFMmEwPSWw+qNVqD7PJ889JzHbw==", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0" - } - }, - "System.Linq.Expressions": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "PGKkrd2khG4CnlyJwxwwaWWiSiWFNBGlgXvJpeO0xCXrZ89ODrQ6tjEWS/kOqZ8GwEOUATtKtzp1eRgmYNfclg==", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Linq": "4.3.0", - "System.ObjectModel": "4.3.0", - "System.Reflection": "4.3.0", - "System.Reflection.Emit": "4.3.0", - "System.Reflection.Emit.ILGeneration": "4.3.0", - "System.Reflection.Emit.Lightweight": "4.3.0", - "System.Reflection.Extensions": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Reflection.TypeExtensions": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.Management": { - "type": "Transitive", - "resolved": "6.0.2", - "contentHash": "s6c9x2Kghd+ncEDnT6ApYVOacDXr/Y57oSUSx6wjegMOfKxhtrXn3PdASPNU59y3kB9OJ1yb3l5k6uKr3bhqew==", - "dependencies": { - "System.CodeDom": "6.0.0" - } - }, - "System.Net.Http": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "sYg+FtILtRQuYWSIAuNOELwVuVsxVyJGWQyOnlAzhV4xvhyFnON1bAzYYC+jjRW8JREM45R0R5Dgi8MTC5sEwA==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.DiagnosticSource": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Globalization": "4.3.0", - "System.Globalization.Extensions": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.Net.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.OpenSsl": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Security.Cryptography.X509Certificates": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "runtime.native.System": "4.3.0", - "runtime.native.System.Net.Http": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "System.Net.Primitives": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "qOu+hDwFwoZPbzPvwut2qATe3ygjeQBDQj91xlsaqGFQUI5i4ZnZb8yyQuLGpDGivEPIt8EJkd1BVzVoP31FXA==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0" - } - }, - "System.Net.Sockets": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "m6icV6TqQOAdgt5N/9I5KNpjom/5NFtkmGseEH+AK/hny8XrytLH3+b5M8zL/Ycg3fhIocFpUMyl/wpFnVRvdw==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.Net.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.ObjectModel": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "bdX+80eKv9bN6K4N+d77OankKHGn6CH711a6fcOpMQu2Fckp/Ft4L/kW9WznHpyR0NRAvJutzOMHNNlBGvxQzQ==", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.Reflection": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "KMiAFoW7MfJGa9nDFNcfu+FpEdiHpWgTcS2HdMpDvt9saK3y/G4GwprPyzqjFH9NTaGPQeWNHU+iDlDILj96aQ==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Emit": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "228FG0jLcIwTVJyz8CLFKueVqQK36ANazUManGaJHkO0icjiIypKW7YLWLIWahyIkdh5M7mV2dJepllLyA1SKg==", - "dependencies": { - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Reflection.Emit.ILGeneration": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Emit.ILGeneration": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "59tBslAk9733NXLrUJrwNZEzbMAcu8k344OYo+wfSVygcgZ9lgBdGIzH/nrg3LYhXceynyvTc8t5/GD4Ri0/ng==", - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Emit.Lightweight": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "oadVHGSMsTmZsAF864QYN1t1QzZjIcuKU3l2S9cZOwDdDueNTrqq1yRj7koFfIGEnKpt6NjpL3rOzRhs4ryOgA==", - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Emit.ILGeneration": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Extensions": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "rJkrJD3kBI5B712aRu4DpSIiHRtr6QlfZSQsb0hYHrDCZORXCFjQfoipo2LaMUHoT9i1B7j7MnfaEKWDFmFQNQ==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Metadata": { - "type": "Transitive", - "resolved": "1.6.0", - "contentHash": "COC1aiAJjCoA5GBF+QKL2uLqEBew4JsCkQmoHKbN3TlOZKa2fKLz5CpiRQKDz0RsAOEGsVKqOD5bomsXq/4STQ==" - }, - "System.Reflection.Primitives": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "5RXItQz5As4xN2/YUDxdpsEkMhvw3e6aNveFXUn4Hl/udNTCNhnKp8lT9fnc3MhvGKh1baak5CovpuQUXHAlIA==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.TypeExtensions": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "7u6ulLcZbyxB5Gq0nMkQttcdBTx57ibzw+4IOXEfR+sXYQoHvjW5LTLyNr8O22UIMrqYbchJQJnos4eooYzYJA==", - "dependencies": { - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Resources.ResourceManager": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "/zrcPkkWdZmI4F92gL/TPumP98AVDu/Wxr3CSJGQQ+XN6wbRZcyfSKVoPo17ilb3iOr0cCRqJInGwNMolqhS8A==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Globalization": "4.3.0", - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Runtime": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "JufQi0vPQ0xGnAczR13AUFglDyVYt4Kqnz1AZaiKZ5+GICq0/1MH/mO/eAJHt/mHW1zjKBJd7kV26SrxddAhiw==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - } - }, - "System.Runtime.Extensions": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "guW0uK0fn5fcJJ1tJVXYd7/1h5F+pea1r7FLSOz/f8vPEqbR2ZAknuRDvTQ8PzAilDveOxNjSfr0CHfIQfFk8g==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Runtime.Handles": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "OKiSUN7DmTWeYb3l51A7EYaeNMnvxwE249YtZz7yooT4gOZhmTjIn48KgSsw2k2lYdLgTKNJw/ZIfSElwDRVgg==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Runtime.InteropServices": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "uv1ynXqiMK8mp1GM3jDqPCFN66eJ5w5XNomaK2XD+TuCroNTLFGeZ+WCmBMcBDyTFKou3P6cR6J/QsaqDp7fGQ==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Reflection": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0" - } - }, - "System.Runtime.InteropServices.RuntimeInformation": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "cbz4YJMqRDR7oLeMRbdYv7mYzc++17lNhScCX0goO2XpGWdvAt60CGN+FHdePUEHCe/Jy9jUlvNAiNdM+7jsOw==", - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Extensions": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Threading": "4.3.0", - "runtime.native.System": "4.3.0" - } - }, - "System.Runtime.Numerics": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "yMH+MfdzHjy17l2KESnPiF2dwq7T+xLnSJar7slyimAkUh/gTrS9/UQOtv7xarskJ2/XDSNvfLGOBQPjL7PaHQ==", - "dependencies": { - "System.Globalization": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0" - } - }, - "System.Security.Cryptography.Algorithms": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "W1kd2Y8mYSCgc3ULTAZ0hOP2dSdG5YauTb1089T0/kRcN2MpSAW1izOFROrJgxSlMn3ArsgHXagigyi+ibhevg==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.Apple": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "System.Security.Cryptography.Cng": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "03idZOqFlsKRL4W+LuCpJ6dBYDUWReug6lZjBa3uJWnk5sPCUXckocevTaUA8iT/MFSrY/2HXkOt753xQ/cf8g==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0" - } - }, - "System.Security.Cryptography.Csp": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "X4s/FCkEUnRGnwR3aSfVIkldBmtURMhmexALNTwpjklzxWU7yjMk7GHLKOZTNkgnWnE0q7+BCf9N2LVRWxewaA==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.Security.Cryptography.Encoding": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "1DEWjZZly9ae9C79vFwqaO5kaOlI5q+3/55ohmq/7dpDyDfc8lYe7YVxJUZ5MF/NtbkRjwFRo14yM4OEo9EmDw==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Collections.Concurrent": "4.3.0", - "System.Linq": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "System.Security.Cryptography.OpenSsl": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "h4CEgOgv5PKVF/HwaHzJRiVboL2THYCou97zpmhjghx5frc7fIvlkY1jL+lnIQyChrJDMNEXS6r7byGif8Cy4w==", - "dependencies": { - "System.Collections": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "System.Security.Cryptography.Primitives": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "7bDIyVFNL/xKeFHjhobUAQqSpJq9YTOpbEs6mR233Et01STBMXNAc/V+BM6dwYGc95gVh/Zf+iVXWzj3mE8DWg==", - "dependencies": { - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.Security.Cryptography.X509Certificates": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "t2Tmu6Y2NtJ2um0RtcuhP7ZdNNxXEgUm2JeoA/0NvlMjAhKCnM1NX07TDl3244mVp3QU6LPEhT3HTtH1uF7IYw==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.Globalization.Calendars": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Cng": "4.3.0", - "System.Security.Cryptography.Csp": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.OpenSsl": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "runtime.native.System": "4.3.0", - "runtime.native.System.Net.Http": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "System.Text.Encoding": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "BiIg+KWaSDOITze6jGQynxg64naAPtqGHBwDrLaCtixsa5bKiR8dpPOHA7ge3C0JJQizJE+sfkz1wV+BAKAYZw==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Text.Encoding.Extensions": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "YVMK0Bt/A43RmwizJoZ22ei2nmrhobgeiYwFzC4YAN+nue8RF6djXDMog0UCn+brerQoYVyaS+ghy9P/MUVcmw==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0" - } - }, - "System.Text.RegularExpressions": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "RpT2DA+L660cBt1FssIE9CAGpLFdFPuheB7pLpKpn6ZXNby7jDERe8Ua/Ne2xGiwLVG2JOqziiaVCGDon5sKFA==", - "dependencies": { - "System.Runtime": "4.3.0" - } - }, - "System.Threading": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "VkUS0kOBcUf3Wwm0TSbrevDDZ6BlM+b/HRiapRFWjM5O0NS0LviG0glKmFK+hhPDd1XFeSdU1GmlLhb2CoVpIw==", - "dependencies": { - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.Threading.Tasks": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "LbSxKEdOUhVe8BezB/9uOGGppt+nZf6e1VFyw6v3DN6lqitm0OSn2uXMOdtP0M3W4iMcqcivm2J6UgqiwwnXiA==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "npvJkVKl5rKXrtl1Kkm6OhOUaYGEiF9wFbppFRWSMoApKzt2PiPHT2Bb8a5sAWxprvdOAtvaARS9QYMznEUtug==", - "dependencies": { - "System.Collections": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.Threading.Timer": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "Z6YfyYTCg7lOZjJzBjONJTFKGN9/NIYKSxhU5GRd+DTwHSZyvWp1xuI5aR+dLg+ayyC5Xv57KiY4oJ0tMO89fQ==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Xml.ReaderWriter": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "GrprA+Z0RUXaR4N7/eW71j1rgMnEnEVlgii49GZyAjTH7uliMnrOU3HNFBr6fEDBCJCIdlVNq9hHbaDR621XBA==", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Text.Encoding.Extensions": "4.3.0", - "System.Text.RegularExpressions": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "System.Threading.Tasks.Extensions": "4.3.0" - } - }, - "System.Xml.XDocument": { - "type": "Transitive", - "resolved": "4.3.0", - "contentHash": "5zJ0XDxAIg8iy+t4aMnQAu0MqVbqyvfoUVl1yDV61xdo3Vth45oA2FoY4pPkxYAH5f8ixpmTqXeEIya95x0aCQ==", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tools": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Xml.ReaderWriter": "4.3.0" - } - }, - "Verify": { - "type": "Transitive", - "resolved": "20.8.2", - "contentHash": "4Ep1GKhDdHLy50g3tSVtPkq1lADL20OxDVkrkT/cehZcPeTtH+5voqfzVklmvEDvaY+DleuRgaHmTcllqGOsUw==", - "dependencies": { - "Argon": "0.7.2", - "DiffEngine": "12.2.1", - "EmptyFiles": "4.5.0", - "SimpleInfoName": "2.1.1", - "System.IO.Hashing": "7.0.0" - } - }, - "xunit.abstractions": { - "type": "Transitive", - "resolved": "2.0.3", - "contentHash": "pot1I4YOxlWjIb5jmwvvQNbTrZ3lJQ+jUGkGjWE3hEFM0l5gOnBWS+H3qsex68s5cO52g+44vpGzhAt+42vwKg==" - }, - "xunit.analyzers": { - "type": "Transitive", - "resolved": "1.2.0", - "contentHash": "d3dehV/DASLRlR8stWQmbPPjfYC2tct50Evav+OlsJMkfFqkhYvzO1k0s81lk0px8O0knZU/FqC8SqbXOtn+hw==" - }, - "xunit.assert": { - "type": "Transitive", - "resolved": "2.5.0", - "contentHash": "wN84pKX5jzfpgJ0bB6arrCA/oelBeYLCpnQ9Wj5xGEVPydKzVSDY5tEatFLHE/rO0+0RC+I4H5igGE118jRh1w==", - "dependencies": { - "NETStandard.Library": "1.6.1" - } - }, - "xunit.core": { - "type": "Transitive", - "resolved": "2.5.0", - "contentHash": "dnV0Mn2s1C0y2m33AylQyMkEyhBQsL4R0302kwSGiEGuY3JwzEmhTa9pnghyMRPliYSs4fXfkEAP+5bKXryGFg==", - "dependencies": { - "xunit.extensibility.core": "[2.5.0]", - "xunit.extensibility.execution": "[2.5.0]" - } - }, - "xunit.extensibility.core": { - "type": "Transitive", - "resolved": "2.5.0", - "contentHash": "xRm6NIV3i7I+LkjsAJ91Xz2fxJm/oMEi2CYq1G5HlGTgcK1Zo2wNbLO6nKX1VG5FZzXibSdoLwr/MofVvh3mFA==", - "dependencies": { - "NETStandard.Library": "1.6.1", - "xunit.abstractions": "2.0.3" - } - }, - "xunit.extensibility.execution": { - "type": "Transitive", - "resolved": "2.5.0", - "contentHash": "7+v2Bvp+1ew1iMGQVb1glICi8jcNdHbRUX6Ru0dmJBViGdjiS7kyqcX2VxleQhFbKNi+WF0an7/TeTXD283RlQ==", - "dependencies": { - "NETStandard.Library": "1.6.1", - "xunit.extensibility.core": "[2.5.0]" + "xunit.extensibility.core": "[2.5.3]" } }, "cuid.net": {