From dc5c27351ba40ed23cf0612949fc340df50eefa0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=C3=ADel=20P=2E=20Purkh=C3=BAs?= Date: Mon, 7 Oct 2024 13:13:30 +0000 Subject: [PATCH] Fix handling of .NetFramework targeting packs --- .../paket.rules_dotnet_dev_nuget_packages.bzl | 1 + dotnet/private/rules/nuget/nuget_archive.bzl | 10 +- .../private/tests/nuget_structure/BUILD.bazel | 10 + .../tests/nuget_structure/targetingpacks.bzl | 255 ++++++++++++++++++ paket.dependencies | 1 + paket.lock | 1 + 6 files changed, 277 insertions(+), 1 deletion(-) create mode 100644 dotnet/private/tests/nuget_structure/targetingpacks.bzl diff --git a/dotnet/paket.rules_dotnet_dev_nuget_packages.bzl b/dotnet/paket.rules_dotnet_dev_nuget_packages.bzl index 45182b24..a8968265 100644 --- a/dotnet/paket.rules_dotnet_dev_nuget_packages.bzl +++ b/dotnet/paket.rules_dotnet_dev_nuget_packages.bzl @@ -16,6 +16,7 @@ def rules_dotnet_dev_nuget_packages(): {"name": "Microsoft.CodeAnalysis.Analyzers", "id": "Microsoft.CodeAnalysis.Analyzers", "version": "3.3.4", "sha512": "sha512-I+Riw6/6WjNICydoiNpDjN/GGP7u4XsL6VsI9lG/OjFufH3flvSEy/fxNhGDVGwZWwq/5BlnqX+LH2dmheaPfg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, {"name": "Microsoft.CodeAnalysis.Common", "id": "Microsoft.CodeAnalysis.Common", "version": "4.9.2", "sha512": "sha512-XCtqPQdnoqfrBSidFWIESm8exXVHF4yPY94e84St2PVZPc2bGeQNXdFNwadu1Bd2sr/bAgM5B0UHbCqBz+/SeQ==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"], "net462": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"], "net47": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"], "net471": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"], "net472": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"], "net48": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"], "net5.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"], "net6.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "net7.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "net8.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"], "netcoreapp2.1": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"], "netcoreapp2.2": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"], "netcoreapp3.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"], "netcoreapp3.1": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"], "netstandard2.1": ["Microsoft.CodeAnalysis.Analyzers", "System.Collections.Immutable", "System.Memory", "System.Reflection.Metadata", "System.Runtime.CompilerServices.Unsafe", "System.Text.Encoding.CodePages", "System.Threading.Tasks.Extensions"]}, "targeting_pack_overrides": [], "framework_list": []}, {"name": "Microsoft.CodeAnalysis.CSharp", "id": "Microsoft.CodeAnalysis.CSharp", "version": "4.9.2", "sha512": "sha512-oy5nUdJOaOQEjUZimhYH4xU6nVxt8ctkdP7HT2fc32ecvH50QeIwJXgjNt7MGUyhJO+Wd3SipQWQ5QyDw7VuLg==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["Microsoft.CodeAnalysis.Common"], "net462": ["Microsoft.CodeAnalysis.Common"], "net47": ["Microsoft.CodeAnalysis.Common"], "net471": ["Microsoft.CodeAnalysis.Common"], "net472": ["Microsoft.CodeAnalysis.Common"], "net48": ["Microsoft.CodeAnalysis.Common"], "net5.0": ["Microsoft.CodeAnalysis.Common"], "net6.0": ["Microsoft.CodeAnalysis.Common"], "net7.0": ["Microsoft.CodeAnalysis.Common"], "net8.0": ["Microsoft.CodeAnalysis.Common"], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["Microsoft.CodeAnalysis.Common"], "netcoreapp2.1": ["Microsoft.CodeAnalysis.Common"], "netcoreapp2.2": ["Microsoft.CodeAnalysis.Common"], "netcoreapp3.0": ["Microsoft.CodeAnalysis.Common"], "netcoreapp3.1": ["Microsoft.CodeAnalysis.Common"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["Microsoft.CodeAnalysis.Common"], "netstandard2.1": ["Microsoft.CodeAnalysis.Common"]}, "targeting_pack_overrides": [], "framework_list": []}, + {"name": "Microsoft.NETFramework.ReferenceAssemblies.net48", "id": "Microsoft.NETFramework.ReferenceAssemblies.net48", "version": "1.0.3", "sha512": "sha512-XWKgyeNadNcTQaIVvQB8BrdCNrEar6fo/de1OdQRZ9HFy0jcBSaM8IV5q64ZampsSnC8AlTsACaGZUuoFw41RA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, {"name": "NETStandard.Library.Ref", "id": "NETStandard.Library.Ref", "version": "2.1.0", "sha512": "sha512-Jr0OqnqkaJJGEVq3w9oNQrIEteD/4QBNg3YOh1cvRjydzwop07+5aWjO/SfEYu6CwBn+dSBKXj8niEvTNy2brA==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": ["Microsoft.Win32.Primitives|4.3.0", "System.AppContext|4.3.0", "System.Collections|4.3.0", "System.Collections.Concurrent|4.3.0", "System.Collections.Immutable|1.4.0", "System.Collections.NonGeneric|4.3.0", "System.Collections.Specialized|4.3.0", "System.ComponentModel|4.3.0", "System.ComponentModel.EventBasedAsync|4.3.0", "System.ComponentModel.Primitives|4.3.0", "System.ComponentModel.TypeConverter|4.3.0", "System.Console|4.3.0", "System.Data.Common|4.3.0", "System.Diagnostics.Contracts|4.3.0", "System.Diagnostics.Debug|4.3.0", "System.Diagnostics.FileVersionInfo|4.3.0", "System.Diagnostics.Process|4.3.0", "System.Diagnostics.StackTrace|4.3.0", "System.Diagnostics.TextWriterTraceListener|4.3.0", "System.Diagnostics.Tools|4.3.0", "System.Diagnostics.TraceSource|4.3.0", "System.Diagnostics.Tracing|4.3.0", "System.Dynamic.Runtime|4.3.0", "System.Globalization|4.3.0", "System.Globalization.Calendars|4.3.0", "System.Globalization.Extensions|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.DriveInfo|4.3.0", "System.IO.FileSystem.Primitives|4.3.0", "System.IO.FileSystem.Watcher|4.3.0", "System.IO.IsolatedStorage|4.3.0", "System.IO.MemoryMappedFiles|4.3.0", "System.IO.Pipes|4.3.0", "System.IO.UnmanagedMemoryStream|4.3.0", "System.Linq|4.3.0", "System.Linq.Expressions|4.3.0", "System.Linq.Queryable|4.3.0", "System.Net.Http|4.3.0", "System.Net.NameResolution|4.3.0", "System.Net.Primitives|4.3.0", "System.Net.Requests|4.3.0", "System.Net.Security|4.3.0", "System.Net.Sockets|4.3.0", "System.Net.WebHeaderCollection|4.3.0", "System.ObjectModel|4.3.0", "System.Private.DataContractSerialization|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.Runtime.Handles|4.3.0", "System.Runtime.InteropServices|4.3.0", "System.Runtime.InteropServices.RuntimeInformation|4.3.0", "System.Runtime.Loader|4.3.0", "System.Runtime.Numerics|4.3.0", "System.Runtime.Serialization.Formatters|4.3.0", "System.Runtime.Serialization.Json|4.3.0", "System.Runtime.Serialization.Primitives|4.3.0", "System.Security.AccessControl|4.4.0", "System.Security.Claims|4.3.0", "System.Security.Cryptography.Algorithms|4.3.0", "System.Security.Cryptography.Csp|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.Security.Cryptography.Xml|4.4.0", "System.Security.Principal|4.3.0", "System.Security.Principal.Windows|4.4.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.Overlapped|4.3.0", "System.Threading.Tasks|4.3.0", "System.Threading.Tasks.Extensions|4.3.0", "System.Threading.Tasks.Parallel|4.3.0", "System.Threading.Thread|4.3.0", "System.Threading.ThreadPool|4.3.0", "System.Threading.Timer|4.3.0", "System.ValueTuple|4.3.0", "System.Xml.ReaderWriter|4.3.0", "System.Xml.XDocument|4.3.0", "System.Xml.XmlDocument|4.3.0", "System.Xml.XmlSerializer|4.3.0", "System.Xml.XPath|4.3.0", "System.Xml.XPath.XDocument|4.3.0"], "framework_list": ["Microsoft.Win32.Primitives|4.0.3.0", "System.AppContext|4.1.2.0", "System.Buffers|4.0.3.0", "System.Collections.Concurrent|4.0.11.0", "System.Collections.NonGeneric|4.0.3.0", "System.Collections.Specialized|4.0.3.0", "System.Collections|4.0.11.0", "System.ComponentModel.Composition|4.0.0.0", "System.ComponentModel.EventBasedAsync|4.0.11.0", "System.ComponentModel.Primitives|4.1.2.0", "System.ComponentModel.TypeConverter|4.1.2.0", "System.ComponentModel|4.0.1.0", "System.Console|4.0.2.0", "System.Core|4.0.0.0", "System.Data.Common|4.1.2.0", "System.Data|4.0.0.0", "System.Diagnostics.Contracts|4.0.1.0", "System.Diagnostics.Debug|4.0.11.0", "System.Diagnostics.FileVersionInfo|4.0.2.0", "System.Diagnostics.Process|4.1.2.0", "System.Diagnostics.StackTrace|4.0.4.0", "System.Diagnostics.TextWriterTraceListener|4.0.2.0", "System.Diagnostics.Tools|4.0.1.0", "System.Diagnostics.TraceSource|4.0.2.0", "System.Diagnostics.Tracing|4.1.2.0", "System.Drawing.Primitives|4.0.2.0", "System.Drawing|4.0.0.0", "System.Dynamic.Runtime|4.0.11.0", "System.Globalization.Calendars|4.0.3.0", "System.Globalization.Extensions|4.0.3.0", "System.Globalization|4.0.11.0", "System.IO.Compression.FileSystem|4.0.0.0", "System.IO.Compression.ZipFile|4.0.3.0", "System.IO.Compression|4.1.3.0", "System.IO.FileSystem.DriveInfo|4.0.2.0", "System.IO.FileSystem.Primitives|4.0.3.0", "System.IO.FileSystem.Watcher|4.0.2.0", "System.IO.FileSystem|4.0.3.0", "System.IO.IsolatedStorage|4.0.2.0", "System.IO.MemoryMappedFiles|4.0.2.0", "System.IO.Pipes|4.0.2.0", "System.IO.UnmanagedMemoryStream|4.0.3.0", "System.IO|4.1.2.0", "System.Linq.Expressions|4.1.2.0", "System.Linq.Parallel|4.0.1.0", "System.Linq.Queryable|4.0.1.0", "System.Linq|4.1.2.0", "System.Memory|4.0.2.0", "System.Net.Http|4.1.2.0", "System.Net.NameResolution|4.0.2.0", "System.Net.NetworkInformation|4.1.2.0", "System.Net.Ping|4.0.2.0", "System.Net.Primitives|4.0.11.0", "System.Net.Requests|4.0.11.0", "System.Net.Security|4.0.2.0", "System.Net.Sockets|4.1.2.0", "System.Net.WebHeaderCollection|4.0.1.0", "System.Net.WebSockets.Client|4.0.2.0", "System.Net.WebSockets|4.0.2.0", "System.Net|4.0.0.0", "System.Numerics.Vectors|4.1.5.0", "System.Numerics|4.0.0.0", "System.ObjectModel|4.0.11.0", "System.Reflection.DispatchProxy|4.0.5.0", "System.Reflection.Emit.ILGeneration|4.0.1.0", "System.Reflection.Emit.Lightweight|4.0.1.0", "System.Reflection.Emit|4.0.1.0", "System.Reflection.Extensions|4.0.1.0", "System.Reflection.Primitives|4.0.1.0", "System.Reflection|4.1.2.0", "System.Resources.Reader|4.0.2.0", "System.Resources.ResourceManager|4.0.1.0", "System.Resources.Writer|4.0.2.0", "System.Runtime.CompilerServices.VisualC|4.0.2.0", "System.Runtime.Extensions|4.1.2.0", "System.Runtime.Handles|4.0.1.0", "System.Runtime.InteropServices.RuntimeInformation|4.0.2.0", "System.Runtime.InteropServices|4.1.2.0", "System.Runtime.Numerics|4.0.1.0", "System.Runtime.Serialization.Formatters|4.0.2.0", "System.Runtime.Serialization.Json|4.0.1.0", "System.Runtime.Serialization.Primitives|4.1.3.0", "System.Runtime.Serialization.Xml|4.1.3.0", "System.Runtime.Serialization|4.0.0.0", "System.Runtime|4.1.2.0", "System.Security.Claims|4.0.3.0", "System.Security.Cryptography.Algorithms|4.2.2.0", "System.Security.Cryptography.Csp|4.0.2.0", "System.Security.Cryptography.Encoding|4.0.2.0", "System.Security.Cryptography.Primitives|4.0.2.0", "System.Security.Cryptography.X509Certificates|4.1.2.0", "System.Security.Principal|4.0.1.0", "System.Security.SecureString|4.0.2.0", "System.ServiceModel.Web|4.0.0.0", "System.Text.Encoding.Extensions|4.0.11.0", "System.Text.Encoding|4.0.11.0", "System.Text.RegularExpressions|4.1.1.0", "System.Threading.Overlapped|4.0.3.0", "System.Threading.Tasks.Extensions|4.2.1.0", "System.Threading.Tasks.Parallel|4.0.1.0", "System.Threading.Tasks|4.0.11.0", "System.Threading.Thread|4.0.2.0", "System.Threading.ThreadPool|4.0.12.0", "System.Threading.Timer|4.0.1.0", "System.Threading|4.0.11.0", "System.Transactions|4.0.0.0", "System.ValueTuple|4.0.2.0", "System.Web|4.0.0.0", "System.Windows|4.0.0.0", "System.Xml.Linq|4.0.0.0", "System.Xml.ReaderWriter|4.1.1.0", "System.Xml.Serialization|4.0.0.0", "System.Xml.XDocument|4.0.11.0", "System.Xml.XPath.XDocument|4.0.3.0", "System.Xml.XPath|4.0.3.0", "System.Xml.XmlDocument|4.0.3.0", "System.Xml.XmlSerializer|4.0.11.0", "System.Xml|4.0.0.0", "System|4.0.0.0", "mscorlib|4.0.0.0", "netstandard|2.1.0.0"]}, {"name": "System.Buffers", "id": "System.Buffers", "version": "4.5.1", "sha512": "sha512-gNphWOVbm89+C15jebnPRaYykU8De1PFv1YJV24814IfeGGVa3PXRHDS0MLlbdI1pe9Mpv/n4ZK4INwtAjqv8g==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": [], "net462": [], "net47": [], "net471": [], "net472": [], "net48": [], "net5.0": [], "net6.0": [], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": [], "netcoreapp2.1": [], "netcoreapp2.2": [], "netcoreapp3.0": [], "netcoreapp3.1": [], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": [], "netstandard2.1": []}, "targeting_pack_overrides": [], "framework_list": []}, {"name": "System.Collections.Immutable", "id": "System.Collections.Immutable", "version": "8.0.0", "sha512": "sha512-BXqVkcIrhimvvem6q2ChWkuW6XYYirvb6FlhvuwaMoBqBdpcr4nehJBKP65Tw40UqcUM6oDoODsecM0yjZ6AUw==", "sources": ["https://api.nuget.org/v3/index.json"], "dependencies": {"net11": [], "net20": [], "net30": [], "net35": [], "net40": [], "net403": [], "net45": [], "net451": [], "net452": [], "net46": [], "net461": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"], "net462": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"], "net47": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"], "net471": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"], "net472": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"], "net48": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"], "net5.0": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"], "net6.0": ["System.Runtime.CompilerServices.Unsafe"], "net7.0": [], "net8.0": [], "netcoreapp1.0": [], "netcoreapp1.1": [], "netcoreapp2.0": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"], "netcoreapp2.1": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"], "netcoreapp2.2": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"], "netcoreapp3.0": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"], "netcoreapp3.1": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"], "netstandard": [], "netstandard1.0": [], "netstandard1.1": [], "netstandard1.2": [], "netstandard1.3": [], "netstandard1.4": [], "netstandard1.5": [], "netstandard1.6": [], "netstandard2.0": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"], "netstandard2.1": ["System.Memory", "System.Runtime.CompilerServices.Unsafe"]}, "targeting_pack_overrides": [], "framework_list": []}, diff --git a/dotnet/private/rules/nuget/nuget_archive.bzl b/dotnet/private/rules/nuget/nuget_archive.bzl index f825626f..73b24572 100644 --- a/dotnet/private/rules/nuget/nuget_archive.bzl +++ b/dotnet/private/rules/nuget/nuget_archive.bzl @@ -142,10 +142,18 @@ def _process_build_file(groups, file): tfm = file[tfm_start:tfm_end] file_type = file[tfm_end + 1:file.find("/", tfm_end + 1)] + # Handle .NETFramework + if tfm == ".NETFramework": + version_start = file.find("/", tfm_start) + 1 + version = file[version_start:file.find("/", version_start + 1)] + tfm = version.replace("v", "net").replace(".", "") + file_type = "ref" + if tfm not in FRAMEWORK_COMPATIBILITY: return - if not file.endswith(".dll") or file.endswith(".resources.dll"): + # See https://github.com/bazel-contrib/rules_dotnet/issues/405 + if not file.endswith(".dll") or file.endswith(".resources.dll") or file.endswith("System.EnterpriseServices.Thunk.dll") or file.endswith("System.EnterpriseServices.Wrapper.dll"): return group = groups["build"] diff --git a/dotnet/private/tests/nuget_structure/BUILD.bazel b/dotnet/private/tests/nuget_structure/BUILD.bazel index a90878cd..34de28de 100644 --- a/dotnet/private/tests/nuget_structure/BUILD.bazel +++ b/dotnet/private/tests/nuget_structure/BUILD.bazel @@ -3,6 +3,7 @@ load("@bazel_skylib//rules:select_file.bzl", "select_file") load(":analyzers.bzl", "analyzers_structure") load(":resolution.bzl", "resolution_structure") load(":runtimes.bzl", "runtimes_structure") +load(":targetingpacks.bzl", "targetingpacks_structure") load(":typeproviders.bzl", "typeproviders_structure") typeproviders_structure() @@ -13,6 +14,8 @@ resolution_structure() analyzers_structure() +targetingpacks_structure() + bzl_library( name = "common", srcs = ["common.bzl"], @@ -39,6 +42,13 @@ bzl_library( deps = [":common"], ) +bzl_library( + name = "targetingpacks", + srcs = ["targetingpacks.bzl"], + visibility = ["//visibility:public"], + deps = [":common"], +) + bzl_library( name = "resolution", srcs = ["resolution.bzl"], diff --git a/dotnet/private/tests/nuget_structure/targetingpacks.bzl b/dotnet/private/tests/nuget_structure/targetingpacks.bzl new file mode 100644 index 00000000..11b072b7 --- /dev/null +++ b/dotnet/private/tests/nuget_structure/targetingpacks.bzl @@ -0,0 +1,255 @@ +"NuGet structure tests" + +load("//dotnet/private/tests/nuget_structure:common.bzl", "nuget_structure_test", "nuget_test_wrapper") + +# buildifier: disable=unnamed-macro +def targetingpacks_structure(): + "Tests for parsing of targeting packs" + nuget_test_wrapper( + name = "microsoft.netframework.referenceassemblies.net48", + target_framework = "net48", + runtime_identifier = "linux-x64", + package = "@paket.rules_dotnet_dev_nuget_packages//microsoft.netframework.referenceassemblies.net48", + ) + + nuget_structure_test( + name = "nuget_structure_should_parse_netframework_48_targetingpack_correctly", + target_under_test = ":microsoft.netframework.referenceassemblies.net48", + expected_refs = [ + "build/.NETFramework/v4.8/Accessibility.dll", + "build/.NETFramework/v4.8/CustomMarshalers.dll", + "build/.NETFramework/v4.8/Facades/Microsoft.Win32.Primitives.dll", + "build/.NETFramework/v4.8/Facades/System.AppContext.dll", + "build/.NETFramework/v4.8/Facades/System.Collections.Concurrent.dll", + "build/.NETFramework/v4.8/Facades/System.Collections.NonGeneric.dll", + "build/.NETFramework/v4.8/Facades/System.Collections.Specialized.dll", + "build/.NETFramework/v4.8/Facades/System.Collections.dll", + "build/.NETFramework/v4.8/Facades/System.ComponentModel.Annotations.dll", + "build/.NETFramework/v4.8/Facades/System.ComponentModel.EventBasedAsync.dll", + "build/.NETFramework/v4.8/Facades/System.ComponentModel.Primitives.dll", + "build/.NETFramework/v4.8/Facades/System.ComponentModel.TypeConverter.dll", + "build/.NETFramework/v4.8/Facades/System.ComponentModel.dll", + "build/.NETFramework/v4.8/Facades/System.Console.dll", + "build/.NETFramework/v4.8/Facades/System.Data.Common.dll", + "build/.NETFramework/v4.8/Facades/System.Diagnostics.Contracts.dll", + "build/.NETFramework/v4.8/Facades/System.Diagnostics.Debug.dll", + "build/.NETFramework/v4.8/Facades/System.Diagnostics.FileVersionInfo.dll", + "build/.NETFramework/v4.8/Facades/System.Diagnostics.Process.dll", + "build/.NETFramework/v4.8/Facades/System.Diagnostics.StackTrace.dll", + "build/.NETFramework/v4.8/Facades/System.Diagnostics.TextWriterTraceListener.dll", + "build/.NETFramework/v4.8/Facades/System.Diagnostics.Tools.dll", + "build/.NETFramework/v4.8/Facades/System.Diagnostics.TraceSource.dll", + "build/.NETFramework/v4.8/Facades/System.Drawing.Primitives.dll", + "build/.NETFramework/v4.8/Facades/System.Dynamic.Runtime.dll", + "build/.NETFramework/v4.8/Facades/System.Globalization.Calendars.dll", + "build/.NETFramework/v4.8/Facades/System.Globalization.Extensions.dll", + "build/.NETFramework/v4.8/Facades/System.Globalization.dll", + "build/.NETFramework/v4.8/Facades/System.IO.Compression.ZipFile.dll", + "build/.NETFramework/v4.8/Facades/System.IO.FileSystem.DriveInfo.dll", + "build/.NETFramework/v4.8/Facades/System.IO.FileSystem.Primitives.dll", + "build/.NETFramework/v4.8/Facades/System.IO.FileSystem.Watcher.dll", + "build/.NETFramework/v4.8/Facades/System.IO.FileSystem.dll", + "build/.NETFramework/v4.8/Facades/System.IO.IsolatedStorage.dll", + "build/.NETFramework/v4.8/Facades/System.IO.MemoryMappedFiles.dll", + "build/.NETFramework/v4.8/Facades/System.IO.Pipes.dll", + "build/.NETFramework/v4.8/Facades/System.IO.UnmanagedMemoryStream.dll", + "build/.NETFramework/v4.8/Facades/System.IO.dll", + "build/.NETFramework/v4.8/Facades/System.Linq.Expressions.dll", + "build/.NETFramework/v4.8/Facades/System.Linq.Parallel.dll", + "build/.NETFramework/v4.8/Facades/System.Linq.Queryable.dll", + "build/.NETFramework/v4.8/Facades/System.Linq.dll", + "build/.NETFramework/v4.8/Facades/System.Net.Http.Rtc.dll", + "build/.NETFramework/v4.8/Facades/System.Net.NameResolution.dll", + "build/.NETFramework/v4.8/Facades/System.Net.NetworkInformation.dll", + "build/.NETFramework/v4.8/Facades/System.Net.Ping.dll", + "build/.NETFramework/v4.8/Facades/System.Net.Primitives.dll", + "build/.NETFramework/v4.8/Facades/System.Net.Requests.dll", + "build/.NETFramework/v4.8/Facades/System.Net.Security.dll", + "build/.NETFramework/v4.8/Facades/System.Net.Sockets.dll", + "build/.NETFramework/v4.8/Facades/System.Net.WebHeaderCollection.dll", + "build/.NETFramework/v4.8/Facades/System.Net.WebSockets.Client.dll", + "build/.NETFramework/v4.8/Facades/System.Net.WebSockets.dll", + "build/.NETFramework/v4.8/Facades/System.ObjectModel.dll", + "build/.NETFramework/v4.8/Facades/System.Reflection.Emit.ILGeneration.dll", + "build/.NETFramework/v4.8/Facades/System.Reflection.Emit.Lightweight.dll", + "build/.NETFramework/v4.8/Facades/System.Reflection.Emit.dll", + "build/.NETFramework/v4.8/Facades/System.Reflection.Extensions.dll", + "build/.NETFramework/v4.8/Facades/System.Reflection.Primitives.dll", + "build/.NETFramework/v4.8/Facades/System.Reflection.dll", + "build/.NETFramework/v4.8/Facades/System.Resources.Reader.dll", + "build/.NETFramework/v4.8/Facades/System.Resources.ResourceManager.dll", + "build/.NETFramework/v4.8/Facades/System.Resources.Writer.dll", + "build/.NETFramework/v4.8/Facades/System.Runtime.CompilerServices.VisualC.dll", + "build/.NETFramework/v4.8/Facades/System.Runtime.Extensions.dll", + "build/.NETFramework/v4.8/Facades/System.Runtime.Handles.dll", + "build/.NETFramework/v4.8/Facades/System.Runtime.InteropServices.RuntimeInformation.dll", + "build/.NETFramework/v4.8/Facades/System.Runtime.InteropServices.WindowsRuntime.dll", + "build/.NETFramework/v4.8/Facades/System.Runtime.InteropServices.dll", + "build/.NETFramework/v4.8/Facades/System.Runtime.Numerics.dll", + "build/.NETFramework/v4.8/Facades/System.Runtime.Serialization.Formatters.dll", + "build/.NETFramework/v4.8/Facades/System.Runtime.Serialization.Json.dll", + "build/.NETFramework/v4.8/Facades/System.Runtime.Serialization.Primitives.dll", + "build/.NETFramework/v4.8/Facades/System.Runtime.Serialization.Xml.dll", + "build/.NETFramework/v4.8/Facades/System.Runtime.dll", + "build/.NETFramework/v4.8/Facades/System.Security.Claims.dll", + "build/.NETFramework/v4.8/Facades/System.Security.Cryptography.Algorithms.dll", + "build/.NETFramework/v4.8/Facades/System.Security.Cryptography.Csp.dll", + "build/.NETFramework/v4.8/Facades/System.Security.Cryptography.Encoding.dll", + "build/.NETFramework/v4.8/Facades/System.Security.Cryptography.Primitives.dll", + "build/.NETFramework/v4.8/Facades/System.Security.Cryptography.X509Certificates.dll", + "build/.NETFramework/v4.8/Facades/System.Security.Principal.dll", + "build/.NETFramework/v4.8/Facades/System.Security.SecureString.dll", + "build/.NETFramework/v4.8/Facades/System.ServiceModel.Duplex.dll", + "build/.NETFramework/v4.8/Facades/System.ServiceModel.Http.dll", + "build/.NETFramework/v4.8/Facades/System.ServiceModel.NetTcp.dll", + "build/.NETFramework/v4.8/Facades/System.ServiceModel.Primitives.dll", + "build/.NETFramework/v4.8/Facades/System.ServiceModel.Security.dll", + "build/.NETFramework/v4.8/Facades/System.Text.Encoding.Extensions.dll", + "build/.NETFramework/v4.8/Facades/System.Text.Encoding.dll", + "build/.NETFramework/v4.8/Facades/System.Text.RegularExpressions.dll", + "build/.NETFramework/v4.8/Facades/System.Threading.Overlapped.dll", + "build/.NETFramework/v4.8/Facades/System.Threading.Tasks.Parallel.dll", + "build/.NETFramework/v4.8/Facades/System.Threading.Tasks.dll", + "build/.NETFramework/v4.8/Facades/System.Threading.Thread.dll", + "build/.NETFramework/v4.8/Facades/System.Threading.ThreadPool.dll", + "build/.NETFramework/v4.8/Facades/System.Threading.Timer.dll", + "build/.NETFramework/v4.8/Facades/System.Threading.dll", + "build/.NETFramework/v4.8/Facades/System.ValueTuple.dll", + "build/.NETFramework/v4.8/Facades/System.Xml.ReaderWriter.dll", + "build/.NETFramework/v4.8/Facades/System.Xml.XDocument.dll", + "build/.NETFramework/v4.8/Facades/System.Xml.XPath.XDocument.dll", + "build/.NETFramework/v4.8/Facades/System.Xml.XPath.dll", + "build/.NETFramework/v4.8/Facades/System.Xml.XmlDocument.dll", + "build/.NETFramework/v4.8/Facades/System.Xml.XmlSerializer.dll", + "build/.NETFramework/v4.8/Facades/netstandard.dll", + "build/.NETFramework/v4.8/ISymWrapper.dll", + "build/.NETFramework/v4.8/Microsoft.Activities.Build.dll", + "build/.NETFramework/v4.8/Microsoft.Build.Conversion.v4.0.dll", + "build/.NETFramework/v4.8/Microsoft.Build.Engine.dll", + "build/.NETFramework/v4.8/Microsoft.Build.Framework.dll", + "build/.NETFramework/v4.8/Microsoft.Build.Tasks.v4.0.dll", + "build/.NETFramework/v4.8/Microsoft.Build.Utilities.v4.0.dll", + "build/.NETFramework/v4.8/Microsoft.Build.dll", + "build/.NETFramework/v4.8/Microsoft.CSharp.dll", + "build/.NETFramework/v4.8/Microsoft.JScript.dll", + "build/.NETFramework/v4.8/Microsoft.VisualBasic.Compatibility.Data.dll", + "build/.NETFramework/v4.8/Microsoft.VisualBasic.Compatibility.dll", + "build/.NETFramework/v4.8/Microsoft.VisualBasic.dll", + "build/.NETFramework/v4.8/Microsoft.VisualC.STLCLR.dll", + "build/.NETFramework/v4.8/Microsoft.VisualC.dll", + "build/.NETFramework/v4.8/PresentationBuildTasks.dll", + "build/.NETFramework/v4.8/PresentationCore.dll", + "build/.NETFramework/v4.8/PresentationFramework.Aero.dll", + "build/.NETFramework/v4.8/PresentationFramework.Aero2.dll", + "build/.NETFramework/v4.8/PresentationFramework.AeroLite.dll", + "build/.NETFramework/v4.8/PresentationFramework.Classic.dll", + "build/.NETFramework/v4.8/PresentationFramework.Luna.dll", + "build/.NETFramework/v4.8/PresentationFramework.Royale.dll", + "build/.NETFramework/v4.8/PresentationFramework.dll", + "build/.NETFramework/v4.8/ReachFramework.dll", + "build/.NETFramework/v4.8/System.Activities.Core.Presentation.dll", + "build/.NETFramework/v4.8/System.Activities.DurableInstancing.dll", + "build/.NETFramework/v4.8/System.Activities.Presentation.dll", + "build/.NETFramework/v4.8/System.Activities.dll", + "build/.NETFramework/v4.8/System.AddIn.Contract.dll", + "build/.NETFramework/v4.8/System.AddIn.dll", + "build/.NETFramework/v4.8/System.ComponentModel.Composition.Registration.dll", + "build/.NETFramework/v4.8/System.ComponentModel.Composition.dll", + "build/.NETFramework/v4.8/System.ComponentModel.DataAnnotations.dll", + "build/.NETFramework/v4.8/System.Configuration.Install.dll", + "build/.NETFramework/v4.8/System.Configuration.dll", + "build/.NETFramework/v4.8/System.Core.dll", + "build/.NETFramework/v4.8/System.Data.DataSetExtensions.dll", + "build/.NETFramework/v4.8/System.Data.Entity.Design.dll", + "build/.NETFramework/v4.8/System.Data.Entity.dll", + "build/.NETFramework/v4.8/System.Data.Linq.dll", + "build/.NETFramework/v4.8/System.Data.OracleClient.dll", + "build/.NETFramework/v4.8/System.Data.Services.Client.dll", + "build/.NETFramework/v4.8/System.Data.Services.Design.dll", + "build/.NETFramework/v4.8/System.Data.Services.dll", + "build/.NETFramework/v4.8/System.Data.SqlXml.dll", + "build/.NETFramework/v4.8/System.Data.dll", + "build/.NETFramework/v4.8/System.Deployment.dll", + "build/.NETFramework/v4.8/System.Design.dll", + "build/.NETFramework/v4.8/System.Device.dll", + "build/.NETFramework/v4.8/System.Diagnostics.Tracing.dll", + "build/.NETFramework/v4.8/System.DirectoryServices.AccountManagement.dll", + "build/.NETFramework/v4.8/System.DirectoryServices.Protocols.dll", + "build/.NETFramework/v4.8/System.DirectoryServices.dll", + "build/.NETFramework/v4.8/System.Drawing.Design.dll", + "build/.NETFramework/v4.8/System.Drawing.dll", + "build/.NETFramework/v4.8/System.Dynamic.dll", + "build/.NETFramework/v4.8/System.EnterpriseServices.dll", + "build/.NETFramework/v4.8/System.IO.Compression.FileSystem.dll", + "build/.NETFramework/v4.8/System.IO.Compression.dll", + "build/.NETFramework/v4.8/System.IO.Log.dll", + "build/.NETFramework/v4.8/System.IdentityModel.Selectors.dll", + "build/.NETFramework/v4.8/System.IdentityModel.Services.dll", + "build/.NETFramework/v4.8/System.IdentityModel.dll", + "build/.NETFramework/v4.8/System.Management.Instrumentation.dll", + "build/.NETFramework/v4.8/System.Management.dll", + "build/.NETFramework/v4.8/System.Messaging.dll", + "build/.NETFramework/v4.8/System.Net.Http.WebRequest.dll", + "build/.NETFramework/v4.8/System.Net.Http.dll", + "build/.NETFramework/v4.8/System.Net.dll", + "build/.NETFramework/v4.8/System.Numerics.dll", + "build/.NETFramework/v4.8/System.Printing.dll", + "build/.NETFramework/v4.8/System.Reflection.Context.dll", + "build/.NETFramework/v4.8/System.Runtime.Caching.dll", + "build/.NETFramework/v4.8/System.Runtime.DurableInstancing.dll", + "build/.NETFramework/v4.8/System.Runtime.Remoting.dll", + "build/.NETFramework/v4.8/System.Runtime.Serialization.Formatters.Soap.dll", + "build/.NETFramework/v4.8/System.Runtime.Serialization.dll", + "build/.NETFramework/v4.8/System.Security.dll", + "build/.NETFramework/v4.8/System.ServiceModel.Activation.dll", + "build/.NETFramework/v4.8/System.ServiceModel.Activities.dll", + "build/.NETFramework/v4.8/System.ServiceModel.Channels.dll", + "build/.NETFramework/v4.8/System.ServiceModel.Discovery.dll", + "build/.NETFramework/v4.8/System.ServiceModel.Routing.dll", + "build/.NETFramework/v4.8/System.ServiceModel.Web.dll", + "build/.NETFramework/v4.8/System.ServiceModel.dll", + "build/.NETFramework/v4.8/System.ServiceProcess.dll", + "build/.NETFramework/v4.8/System.Speech.dll", + "build/.NETFramework/v4.8/System.Transactions.dll", + "build/.NETFramework/v4.8/System.Web.Abstractions.dll", + "build/.NETFramework/v4.8/System.Web.ApplicationServices.dll", + "build/.NETFramework/v4.8/System.Web.DataVisualization.Design.dll", + "build/.NETFramework/v4.8/System.Web.DataVisualization.dll", + "build/.NETFramework/v4.8/System.Web.DynamicData.Design.dll", + "build/.NETFramework/v4.8/System.Web.DynamicData.dll", + "build/.NETFramework/v4.8/System.Web.Entity.Design.dll", + "build/.NETFramework/v4.8/System.Web.Entity.dll", + "build/.NETFramework/v4.8/System.Web.Extensions.Design.dll", + "build/.NETFramework/v4.8/System.Web.Extensions.dll", + "build/.NETFramework/v4.8/System.Web.Mobile.dll", + "build/.NETFramework/v4.8/System.Web.RegularExpressions.dll", + "build/.NETFramework/v4.8/System.Web.Routing.dll", + "build/.NETFramework/v4.8/System.Web.Services.dll", + "build/.NETFramework/v4.8/System.Web.dll", + "build/.NETFramework/v4.8/System.Windows.Controls.Ribbon.dll", + "build/.NETFramework/v4.8/System.Windows.Forms.DataVisualization.Design.dll", + "build/.NETFramework/v4.8/System.Windows.Forms.DataVisualization.dll", + "build/.NETFramework/v4.8/System.Windows.Forms.dll", + "build/.NETFramework/v4.8/System.Windows.Input.Manipulations.dll", + "build/.NETFramework/v4.8/System.Windows.Presentation.dll", + "build/.NETFramework/v4.8/System.Windows.dll", + "build/.NETFramework/v4.8/System.Workflow.Activities.dll", + "build/.NETFramework/v4.8/System.Workflow.ComponentModel.dll", + "build/.NETFramework/v4.8/System.Workflow.Runtime.dll", + "build/.NETFramework/v4.8/System.WorkflowServices.dll", + "build/.NETFramework/v4.8/System.Xaml.dll", + "build/.NETFramework/v4.8/System.Xml.Linq.dll", + "build/.NETFramework/v4.8/System.Xml.Serialization.dll", + "build/.NETFramework/v4.8/System.Xml.dll", + "build/.NETFramework/v4.8/System.dll", + "build/.NETFramework/v4.8/UIAutomationClient.dll", + "build/.NETFramework/v4.8/UIAutomationClientsideProviders.dll", + "build/.NETFramework/v4.8/UIAutomationProvider.dll", + "build/.NETFramework/v4.8/UIAutomationTypes.dll", + "build/.NETFramework/v4.8/WindowsBase.dll", + "build/.NETFramework/v4.8/WindowsFormsIntegration.dll", + "build/.NETFramework/v4.8/XamlBuildTask.dll", + "build/.NETFramework/v4.8/mscorlib.dll", + "build/.NETFramework/v4.8/sysglobl.dll", + ], + ) diff --git a/paket.dependencies b/paket.dependencies index 0fb837b7..fde69ada 100644 --- a/paket.dependencies +++ b/paket.dependencies @@ -29,6 +29,7 @@ group rules_dotnet_dev_nuget_packages nuget Microsoft.CodeAnalysis.Common 4.9.2 nuget Microsoft.CodeAnalysis.Analyzers 3.3.4 nuget Microsoft.CodeAnalysis.CSharp 4.9.2 + nuget Microsoft.NETFramework.ReferenceAssemblies.net48 1.0.3 group rules_dotnet_nuget_packages framework: net6.0 diff --git a/paket.lock b/paket.lock index 6c509810..7dd570f3 100644 --- a/paket.lock +++ b/paket.lock @@ -381,6 +381,7 @@ NUGET System.Threading.Tasks.Extensions (>= 4.5.4) - restriction: || (== netstandard2.0) (== netstandard2.1) Microsoft.CodeAnalysis.CSharp (4.9.2) Microsoft.CodeAnalysis.Common (4.9.2) + Microsoft.NETFramework.ReferenceAssemblies.net48 (1.0.3) NETStandard.Library.Ref (2.1) System.Buffers (4.5.1) - restriction: || (&& (== net6.0) (>= net462)) (== netstandard2.0) (== netstandard2.1) System.Collections.Immutable (8.0)