diff --git a/Directory.Build.props b/Directory.Build.props index 706ed27..f65520a 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -33,8 +33,8 @@ - - + + diff --git a/gen/EnumUtilities.Generators/Common/EnumerableExtensions.cs b/gen/EnumUtilities.Generators/Common/EnumerableExtensions.cs index 62e2913..eafb5b6 100644 --- a/gen/EnumUtilities.Generators/Common/EnumerableExtensions.cs +++ b/gen/EnumUtilities.Generators/Common/EnumerableExtensions.cs @@ -2,19 +2,6 @@ public static class EnumerableExtensions { - public static IEnumerable DistinctBy( - this IEnumerable source, - Func keySelector, - IEqualityComparer? comparer = null) - { - var hashSet = new HashSet(comparer); - foreach (var item in source) - { - if (hashSet.Add(keySelector(item))) - yield return item; - } - } - public static string JoinToString(this byte[] source) { Span result = stackalloc char[source.Sum(GetStringLength) + (2 * (source.Length - 1))]; diff --git a/gen/EnumUtilities.Generators/EnumUtilities.Generators.csproj b/gen/EnumUtilities.Generators/EnumUtilities.Generators.csproj index 4732314..9b8a77d 100644 --- a/gen/EnumUtilities.Generators/EnumUtilities.Generators.csproj +++ b/gen/EnumUtilities.Generators/EnumUtilities.Generators.csproj @@ -17,12 +17,13 @@ - - + + all runtime; native; contentfiles; analyzers build; buildTransitive + diff --git a/gen/EnumUtilities.Generators/packages.lock.json b/gen/EnumUtilities.Generators/packages.lock.json index e38ba0e..421c2aa 100644 --- a/gen/EnumUtilities.Generators/packages.lock.json +++ b/gen/EnumUtilities.Generators/packages.lock.json @@ -4,9 +4,9 @@ ".NETStandard,Version=v2.0": { "DotNet.ReproducibleBuilds": { "type": "Direct", - "requested": "[1.2.4, )", - "resolved": "1.2.4", - "contentHash": "Ch9U74tQA2fQH+U0hcYH7WyIFUfAq7jrjgSHVu2FAcYiMBtbrCMyq2nGA/ZZnB2jSaUeOOYiCjxeaDVB7Ssbdw==" + "requested": "[1.2.25, )", + "resolved": "1.2.25", + "contentHash": "xCXiw7BCxHJ8pF6wPepRUddlh2dlQlbr81gXA72hdk4FLHkKXas7EH/n+fk5UCA/YfMqG1Z6XaPiUjDbUNBUzg==" }, "Microsoft.CodeAnalysis.Analyzers": { "type": "Direct", @@ -37,9 +37,9 @@ }, "Nerdbank.GitVersioning": { "type": "Direct", - "requested": "[3.6.139, )", - "resolved": "3.6.139", - "contentHash": "rq0Ub/Jik7PtMtZtLn0tHuJ01Yt36RQ+eeBe+S7qnJ/EFOX6D4T9zuYD3vQPYKGI6Ro4t2iWgFm3fGDgjBrMfg==" + "requested": "[3.6.143, )", + "resolved": "3.6.143", + "contentHash": "N24MtdLq4PmdJ2woTQd9515q0I1jeO/DlimYCB/GoRd510Fc9dk9H6YaN8MPPrVF8RHrIalCUfWbWvcoarYeoQ==" }, "NETStandard.Library": { "type": "Direct", @@ -52,15 +52,26 @@ }, "Polyfill": { "type": "Direct", - "requested": "[5.6.0, )", - "resolved": "5.6.0", - "contentHash": "eb6mkftrXasI7B1AflSaB48f1U/aLJuHfwlfuEUHc07hnSkNUbkQKhzwnSBrfKuNG1vfTTtFzqHLGBsUS0oI9A==" + "requested": "[6.12.0, )", + "resolved": "6.12.0", + "contentHash": "KLAqsRkPIlwDPqZrQDRerRmSGrH2Kvk+xUzZcWsGiUrZkmRl9B0ZvqYvxCM37jGLgsPbH/BTnLTm0woyu6JgDA==" }, "Raiqub.Generators.T4CodeWriter.Sources": { "type": "Direct", - "requested": "[1.0.52, )", - "resolved": "1.0.52", - "contentHash": "e58Ozh3hVfcuucSxtJ8aR5hZlsEcLjlv9Rjx8TCM9gGoHZ6B1CvG5yLFvEz4P8cOcbEfnwoxvZ8C7hRZ8EbLIA==" + "requested": "[1.0.64, )", + "resolved": "1.0.64", + "contentHash": "eEldrJOoau56Hu1KVcNb8+g0m4lMLcLU//XyYbem48hqYwFH9cAWbKpnwXymPXfVbM8F6SR+Z56DwXgHlMteKg==" + }, + "System.Memory": { + "type": "Direct", + "requested": "[4.5.5, )", + "resolved": "4.5.5", + "contentHash": "XIWiDvKPXaTveaB7HVganDlOCRoj03l+jrwNvcge/t8vhGYKvqV+dMv6G4SAX2NoNmN0wZfVPTAlFwZcZvVOUw==", + "dependencies": { + "System.Buffers": "4.5.1", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + } }, "Humanizer.Core": { "type": "Transitive", @@ -178,16 +189,6 @@ "System.Threading.Tasks.Extensions": "4.5.4" } }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "1MbJTHS1lZ4bS4FmsJjnuGJOu88ZzTT2rLvrhW7Ygic+pC0NWA+3hgAen0HRdsocuQXCkUTdFn9yHJJhsijDXw==", - "dependencies": { - "System.Buffers": "4.5.1", - "System.Numerics.Vectors": "4.4.0", - "System.Runtime.CompilerServices.Unsafe": "4.5.3" - } - }, "System.Numerics.Vectors": { "type": "Transitive", "resolved": "4.4.0", diff --git a/perf/EnumUtilities.Benchmark/packages.lock.json b/perf/EnumUtilities.Benchmark/packages.lock.json index 4275604..c1c07aa 100644 --- a/perf/EnumUtilities.Benchmark/packages.lock.json +++ b/perf/EnumUtilities.Benchmark/packages.lock.json @@ -22,9 +22,9 @@ }, "DotNet.ReproducibleBuilds": { "type": "Direct", - "requested": "[1.2.4, )", - "resolved": "1.2.4", - "contentHash": "Ch9U74tQA2fQH+U0hcYH7WyIFUfAq7jrjgSHVu2FAcYiMBtbrCMyq2nGA/ZZnB2jSaUeOOYiCjxeaDVB7Ssbdw==" + "requested": "[1.2.25, )", + "resolved": "1.2.25", + "contentHash": "xCXiw7BCxHJ8pF6wPepRUddlh2dlQlbr81gXA72hdk4FLHkKXas7EH/n+fk5UCA/YfMqG1Z6XaPiUjDbUNBUzg==" }, "Enums.NET": { "type": "Direct", @@ -40,9 +40,9 @@ }, "Nerdbank.GitVersioning": { "type": "Direct", - "requested": "[3.6.139, )", - "resolved": "3.6.139", - "contentHash": "rq0Ub/Jik7PtMtZtLn0tHuJ01Yt36RQ+eeBe+S7qnJ/EFOX6D4T9zuYD3vQPYKGI6Ro4t2iWgFm3fGDgjBrMfg==" + "requested": "[3.6.143, )", + "resolved": "3.6.143", + "contentHash": "N24MtdLq4PmdJ2woTQd9515q0I1jeO/DlimYCB/GoRd510Fc9dk9H6YaN8MPPrVF8RHrIalCUfWbWvcoarYeoQ==" }, "NetEscapades.EnumGenerators": { "type": "Direct", diff --git a/src/EnumUtilities/packages.lock.json b/src/EnumUtilities/packages.lock.json index 534a353..db018fa 100644 --- a/src/EnumUtilities/packages.lock.json +++ b/src/EnumUtilities/packages.lock.json @@ -4,15 +4,15 @@ ".NETStandard,Version=v2.0": { "DotNet.ReproducibleBuilds": { "type": "Direct", - "requested": "[1.2.4, )", - "resolved": "1.2.4", - "contentHash": "Ch9U74tQA2fQH+U0hcYH7WyIFUfAq7jrjgSHVu2FAcYiMBtbrCMyq2nGA/ZZnB2jSaUeOOYiCjxeaDVB7Ssbdw==" + "requested": "[1.2.25, )", + "resolved": "1.2.25", + "contentHash": "xCXiw7BCxHJ8pF6wPepRUddlh2dlQlbr81gXA72hdk4FLHkKXas7EH/n+fk5UCA/YfMqG1Z6XaPiUjDbUNBUzg==" }, "Nerdbank.GitVersioning": { "type": "Direct", - "requested": "[3.6.139, )", - "resolved": "3.6.139", - "contentHash": "rq0Ub/Jik7PtMtZtLn0tHuJ01Yt36RQ+eeBe+S7qnJ/EFOX6D4T9zuYD3vQPYKGI6Ro4t2iWgFm3fGDgjBrMfg==" + "requested": "[3.6.143, )", + "resolved": "3.6.143", + "contentHash": "N24MtdLq4PmdJ2woTQd9515q0I1jeO/DlimYCB/GoRd510Fc9dk9H6YaN8MPPrVF8RHrIalCUfWbWvcoarYeoQ==" }, "NETStandard.Library": { "type": "Direct", @@ -58,29 +58,29 @@ "net6.0": { "DotNet.ReproducibleBuilds": { "type": "Direct", - "requested": "[1.2.4, )", - "resolved": "1.2.4", - "contentHash": "Ch9U74tQA2fQH+U0hcYH7WyIFUfAq7jrjgSHVu2FAcYiMBtbrCMyq2nGA/ZZnB2jSaUeOOYiCjxeaDVB7Ssbdw==" + "requested": "[1.2.25, )", + "resolved": "1.2.25", + "contentHash": "xCXiw7BCxHJ8pF6wPepRUddlh2dlQlbr81gXA72hdk4FLHkKXas7EH/n+fk5UCA/YfMqG1Z6XaPiUjDbUNBUzg==" }, "Nerdbank.GitVersioning": { "type": "Direct", - "requested": "[3.6.139, )", - "resolved": "3.6.139", - "contentHash": "rq0Ub/Jik7PtMtZtLn0tHuJ01Yt36RQ+eeBe+S7qnJ/EFOX6D4T9zuYD3vQPYKGI6Ro4t2iWgFm3fGDgjBrMfg==" + "requested": "[3.6.143, )", + "resolved": "3.6.143", + "contentHash": "N24MtdLq4PmdJ2woTQd9515q0I1jeO/DlimYCB/GoRd510Fc9dk9H6YaN8MPPrVF8RHrIalCUfWbWvcoarYeoQ==" } }, "net8.0": { "DotNet.ReproducibleBuilds": { "type": "Direct", - "requested": "[1.2.4, )", - "resolved": "1.2.4", - "contentHash": "Ch9U74tQA2fQH+U0hcYH7WyIFUfAq7jrjgSHVu2FAcYiMBtbrCMyq2nGA/ZZnB2jSaUeOOYiCjxeaDVB7Ssbdw==" + "requested": "[1.2.25, )", + "resolved": "1.2.25", + "contentHash": "xCXiw7BCxHJ8pF6wPepRUddlh2dlQlbr81gXA72hdk4FLHkKXas7EH/n+fk5UCA/YfMqG1Z6XaPiUjDbUNBUzg==" }, "Nerdbank.GitVersioning": { "type": "Direct", - "requested": "[3.6.139, )", - "resolved": "3.6.139", - "contentHash": "rq0Ub/Jik7PtMtZtLn0tHuJ01Yt36RQ+eeBe+S7qnJ/EFOX6D4T9zuYD3vQPYKGI6Ro4t2iWgFm3fGDgjBrMfg==" + "requested": "[3.6.143, )", + "resolved": "3.6.143", + "contentHash": "N24MtdLq4PmdJ2woTQd9515q0I1jeO/DlimYCB/GoRd510Fc9dk9H6YaN8MPPrVF8RHrIalCUfWbWvcoarYeoQ==" } } } diff --git a/tests/EnumUtilities.Generators.IntegrationTests/packages.lock.json b/tests/EnumUtilities.Generators.IntegrationTests/packages.lock.json index 9f5aff2..e7e2a36 100644 --- a/tests/EnumUtilities.Generators.IntegrationTests/packages.lock.json +++ b/tests/EnumUtilities.Generators.IntegrationTests/packages.lock.json @@ -16,9 +16,9 @@ }, "DotNet.ReproducibleBuilds": { "type": "Direct", - "requested": "[1.2.4, )", - "resolved": "1.2.4", - "contentHash": "Ch9U74tQA2fQH+U0hcYH7WyIFUfAq7jrjgSHVu2FAcYiMBtbrCMyq2nGA/ZZnB2jSaUeOOYiCjxeaDVB7Ssbdw==" + "requested": "[1.2.25, )", + "resolved": "1.2.25", + "contentHash": "xCXiw7BCxHJ8pF6wPepRUddlh2dlQlbr81gXA72hdk4FLHkKXas7EH/n+fk5UCA/YfMqG1Z6XaPiUjDbUNBUzg==" }, "Microsoft.EntityFrameworkCore": { "type": "Direct", @@ -47,9 +47,9 @@ }, "Nerdbank.GitVersioning": { "type": "Direct", - "requested": "[3.6.139, )", - "resolved": "3.6.139", - "contentHash": "rq0Ub/Jik7PtMtZtLn0tHuJ01Yt36RQ+eeBe+S7qnJ/EFOX6D4T9zuYD3vQPYKGI6Ro4t2iWgFm3fGDgjBrMfg==" + "requested": "[3.6.143, )", + "resolved": "3.6.143", + "contentHash": "N24MtdLq4PmdJ2woTQd9515q0I1jeO/DlimYCB/GoRd510Fc9dk9H6YaN8MPPrVF8RHrIalCUfWbWvcoarYeoQ==" }, "xunit": { "type": "Direct", @@ -258,9 +258,9 @@ }, "DotNet.ReproducibleBuilds": { "type": "Direct", - "requested": "[1.2.4, )", - "resolved": "1.2.4", - "contentHash": "Ch9U74tQA2fQH+U0hcYH7WyIFUfAq7jrjgSHVu2FAcYiMBtbrCMyq2nGA/ZZnB2jSaUeOOYiCjxeaDVB7Ssbdw==" + "requested": "[1.2.25, )", + "resolved": "1.2.25", + "contentHash": "xCXiw7BCxHJ8pF6wPepRUddlh2dlQlbr81gXA72hdk4FLHkKXas7EH/n+fk5UCA/YfMqG1Z6XaPiUjDbUNBUzg==" }, "Microsoft.EntityFrameworkCore": { "type": "Direct", @@ -289,9 +289,9 @@ }, "Nerdbank.GitVersioning": { "type": "Direct", - "requested": "[3.6.139, )", - "resolved": "3.6.139", - "contentHash": "rq0Ub/Jik7PtMtZtLn0tHuJ01Yt36RQ+eeBe+S7qnJ/EFOX6D4T9zuYD3vQPYKGI6Ro4t2iWgFm3fGDgjBrMfg==" + "requested": "[3.6.143, )", + "resolved": "3.6.143", + "contentHash": "N24MtdLq4PmdJ2woTQd9515q0I1jeO/DlimYCB/GoRd510Fc9dk9H6YaN8MPPrVF8RHrIalCUfWbWvcoarYeoQ==" }, "xunit": { "type": "Direct", diff --git a/tests/EnumUtilities.Generators.Tests/packages.lock.json b/tests/EnumUtilities.Generators.Tests/packages.lock.json index d1cd13c..ccc06f5 100644 --- a/tests/EnumUtilities.Generators.Tests/packages.lock.json +++ b/tests/EnumUtilities.Generators.Tests/packages.lock.json @@ -16,9 +16,9 @@ }, "DotNet.ReproducibleBuilds": { "type": "Direct", - "requested": "[1.2.4, )", - "resolved": "1.2.4", - "contentHash": "Ch9U74tQA2fQH+U0hcYH7WyIFUfAq7jrjgSHVu2FAcYiMBtbrCMyq2nGA/ZZnB2jSaUeOOYiCjxeaDVB7Ssbdw==" + "requested": "[1.2.25, )", + "resolved": "1.2.25", + "contentHash": "xCXiw7BCxHJ8pF6wPepRUddlh2dlQlbr81gXA72hdk4FLHkKXas7EH/n+fk5UCA/YfMqG1Z6XaPiUjDbUNBUzg==" }, "Microsoft.CodeAnalysis.CSharp": { "type": "Direct", @@ -66,9 +66,9 @@ }, "Nerdbank.GitVersioning": { "type": "Direct", - "requested": "[3.6.139, )", - "resolved": "3.6.139", - "contentHash": "rq0Ub/Jik7PtMtZtLn0tHuJ01Yt36RQ+eeBe+S7qnJ/EFOX6D4T9zuYD3vQPYKGI6Ro4t2iWgFm3fGDgjBrMfg==" + "requested": "[3.6.143, )", + "resolved": "3.6.143", + "contentHash": "N24MtdLq4PmdJ2woTQd9515q0I1jeO/DlimYCB/GoRd510Fc9dk9H6YaN8MPPrVF8RHrIalCUfWbWvcoarYeoQ==" }, "xunit": { "type": "Direct", @@ -497,8 +497,8 @@ }, "System.Memory": { "type": "Transitive", - "resolved": "4.5.4", - "contentHash": "1MbJTHS1lZ4bS4FmsJjnuGJOu88ZzTT2rLvrhW7Ygic+pC0NWA+3hgAen0HRdsocuQXCkUTdFn9yHJJhsijDXw==" + "resolved": "4.5.5", + "contentHash": "XIWiDvKPXaTveaB7HVganDlOCRoj03l+jrwNvcge/t8vhGYKvqV+dMv6G4SAX2NoNmN0wZfVPTAlFwZcZvVOUw==" }, "System.ObjectModel": { "type": "Transitive", @@ -776,7 +776,10 @@ } }, "Raiqub.Generators.EnumUtilities": { - "type": "Project" + "type": "Project", + "dependencies": { + "System.Memory": "[4.5.5, )" + } } } } diff --git a/tests/EnumUtilities.Tests/packages.lock.json b/tests/EnumUtilities.Tests/packages.lock.json index 1f68272..dea6e19 100644 --- a/tests/EnumUtilities.Tests/packages.lock.json +++ b/tests/EnumUtilities.Tests/packages.lock.json @@ -10,9 +10,9 @@ }, "DotNet.ReproducibleBuilds": { "type": "Direct", - "requested": "[1.2.4, )", - "resolved": "1.2.4", - "contentHash": "Ch9U74tQA2fQH+U0hcYH7WyIFUfAq7jrjgSHVu2FAcYiMBtbrCMyq2nGA/ZZnB2jSaUeOOYiCjxeaDVB7Ssbdw==" + "requested": "[1.2.25, )", + "resolved": "1.2.25", + "contentHash": "xCXiw7BCxHJ8pF6wPepRUddlh2dlQlbr81gXA72hdk4FLHkKXas7EH/n+fk5UCA/YfMqG1Z6XaPiUjDbUNBUzg==" }, "FluentAssertions": { "type": "Direct", @@ -35,9 +35,9 @@ }, "Nerdbank.GitVersioning": { "type": "Direct", - "requested": "[3.6.139, )", - "resolved": "3.6.139", - "contentHash": "rq0Ub/Jik7PtMtZtLn0tHuJ01Yt36RQ+eeBe+S7qnJ/EFOX6D4T9zuYD3vQPYKGI6Ro4t2iWgFm3fGDgjBrMfg==" + "requested": "[3.6.143, )", + "resolved": "3.6.143", + "contentHash": "N24MtdLq4PmdJ2woTQd9515q0I1jeO/DlimYCB/GoRd510Fc9dk9H6YaN8MPPrVF8RHrIalCUfWbWvcoarYeoQ==" }, "xunit": { "type": "Direct",