From 1ed895404a4c9b40db5047fafa8c9dd7c6d9e248 Mon Sep 17 00:00:00 2001 From: Jonathon Marolf Date: Tue, 31 Aug 2021 16:11:02 -0700 Subject: [PATCH 1/3] Add API to get OS specific references fixes #892 --- .../PublicAPI.Unshipped.txt | 6 + .../ReferenceAssemblies.cs | 134 +++++++++++++++++- .../MetadataReferenceTests.cs | 131 +++++++++++++++++ 3 files changed, 270 insertions(+), 1 deletion(-) diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt index 7c946dcb0..0c10c5008 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt @@ -253,6 +253,12 @@ static Microsoft.CodeAnalysis.Testing.IVerifierExtensions.EqualOrDiff(this Micro static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Net.Net50.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Net.Net60.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Net.Net60Android.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Net.Net60MacCatalyst.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Net.Net60MacOS.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Net.Net60TvOS.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Net.Net60Windows.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Net.Net60iOS.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetCore.NetCoreApp10.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetCore.NetCoreApp11.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetCore.NetCoreApp20.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs index 2ab950247..36f2eb8c1 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs @@ -878,13 +878,145 @@ public static class Net "net6.0", new PackageIdentity( "Microsoft.NETCore.App.Ref", - "6.0.0-preview.6.21352.12"), + "6.0.0-preview.7.21377.19"), Path.Combine("ref", "net6.0")); }); + private static readonly Lazy _lazyNet60Windows = + new Lazy(() => + { + if (!NuGetFramework.Parse("net6.0").IsPackageBased) + { + // The NuGet version provided at runtime does not recognize the 'net6.0' target framework + throw new NotSupportedException("The 'net6.0' target framework is not supported by this version of NuGet."); + } + + return new ReferenceAssemblies( + "net6.0", + new PackageIdentity( + "Microsoft.NETCore.App.Ref", + "6.0.0-preview.7.21377.19"), + Path.Combine("ref", "net6.0")) + .AddPackages( + ImmutableArray.Create( + new PackageIdentity("Microsoft.WindowsDesktop.App.Ref", "6.0.0-preview.7.21378.9"))); + }); + + private static readonly Lazy _lazyNet60Android = + new Lazy(() => + { + if (!NuGetFramework.Parse("net6.0").IsPackageBased) + { + // The NuGet version provided at runtime does not recognize the 'net6.0' target framework + throw new NotSupportedException("The 'net6.0' target framework is not supported by this version of NuGet."); + } + + return new ReferenceAssemblies( + "net6.0", + new PackageIdentity( + "Microsoft.NETCore.App.Ref", + "6.0.0-preview.7.21377.19"), + Path.Combine("ref", "net6.0")) + .AddPackages( + ImmutableArray.Create( + new PackageIdentity("Microsoft.Android.Ref", "30.0.100-preview.7.110"))); + }); + + private static readonly Lazy _lazyNet60iOS = + new Lazy(() => + { + if (!NuGetFramework.Parse("net6.0").IsPackageBased) + { + // The NuGet version provided at runtime does not recognize the 'net6.0' target framework + throw new NotSupportedException("The 'net6.0' target framework is not supported by this version of NuGet."); + } + + return new ReferenceAssemblies( + "net6.0", + new PackageIdentity( + "Microsoft.NETCore.App.Ref", + "6.0.0-preview.7.21377.19"), + Path.Combine("ref", "net6.0")) + .AddPackages( + ImmutableArray.Create( + new PackageIdentity("Microsoft.iOS.Ref", "15.0.100-preview.7.230"))); + }); + + private static readonly Lazy _lazyNet60MacOS = + new Lazy(() => + { + if (!NuGetFramework.Parse("net6.0").IsPackageBased) + { + // The NuGet version provided at runtime does not recognize the 'net6.0' target framework + throw new NotSupportedException("The 'net6.0' target framework is not supported by this version of NuGet."); + } + + return new ReferenceAssemblies( + "net6.0", + new PackageIdentity( + "Microsoft.NETCore.App.Ref", + "6.0.0-preview.7.21377.19"), + Path.Combine("ref", "net6.0")) + .AddPackages( + ImmutableArray.Create( + new PackageIdentity("Microsoft.macOS.Ref", "12.0.100-preview.7.230"))); + }); + + private static readonly Lazy _lazyNet60MacCatalyst = + new Lazy(() => + { + if (!NuGetFramework.Parse("net6.0").IsPackageBased) + { + // The NuGet version provided at runtime does not recognize the 'net6.0' target framework + throw new NotSupportedException("The 'net6.0' target framework is not supported by this version of NuGet."); + } + + return new ReferenceAssemblies( + "net6.0", + new PackageIdentity( + "Microsoft.NETCore.App.Ref", + "6.0.0-preview.7.21377.19"), + Path.Combine("ref", "net6.0")) + .AddPackages( + ImmutableArray.Create( + new PackageIdentity("Microsoft.MacCatalyst.Ref", "15.0.100-preview.7.230"))); + }); + + private static readonly Lazy _lazyNet60TvOS = + new Lazy(() => + { + if (!NuGetFramework.Parse("net6.0").IsPackageBased) + { + // The NuGet version provided at runtime does not recognize the 'net6.0' target framework + throw new NotSupportedException("The 'net6.0' target framework is not supported by this version of NuGet."); + } + + return new ReferenceAssemblies( + "net6.0", + new PackageIdentity( + "Microsoft.NETCore.App.Ref", + "6.0.0-preview.7.21377.19"), + Path.Combine("ref", "net6.0")) + .AddPackages( + ImmutableArray.Create( + new PackageIdentity("Microsoft.tvOS.Ref", "15.0.100-preview.7.230"))); + }); + public static ReferenceAssemblies Net50 => _lazyNet50.Value; public static ReferenceAssemblies Net60 => _lazyNet60.Value; + + public static ReferenceAssemblies Net60Windows => _lazyNet60Windows.Value; + + public static ReferenceAssemblies Net60Android => _lazyNet60Android.Value; + + public static ReferenceAssemblies Net60iOS => _lazyNet60iOS.Value; + + public static ReferenceAssemblies Net60MacOS => _lazyNet60MacOS.Value; + + public static ReferenceAssemblies Net60MacCatalyst => _lazyNet60MacCatalyst.Value; + + public static ReferenceAssemblies Net60TvOS => _lazyNet60TvOS.Value; } public static class NetStandard diff --git a/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/MetadataReferenceTests.cs b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/MetadataReferenceTests.cs index 9a5f501f3..26a54a104 100644 --- a/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/MetadataReferenceTests.cs +++ b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/MetadataReferenceTests.cs @@ -430,6 +430,125 @@ public async Task ResolveReferenceAssemblies_Net50() #endif } + [Fact] + public async Task ResolveReferenceAssemblies_Net60Windows() + { +#if NETCOREAPP1_1 || NET46 + Assert.False(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + Assert.ThrowsAny(() => ReferenceAssemblies.Net.Net60Windows); + + // Avoid a warning for 'async' operator + await Task.Yield(); +#else + Assert.True(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + var referenceAssemblies = ReferenceAssemblies.Net.Net60Windows; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); +#endif + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net60Android() + { +#if NETCOREAPP1_1 || NET46 + Assert.False(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + Assert.ThrowsAny(() => ReferenceAssemblies.Net.Net60Android); + + // Avoid a warning for 'async' operator + await Task.Yield(); +#else + Assert.True(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + var referenceAssemblies = ReferenceAssemblies.Net.Net60Android; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); +#endif + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net60iOS() + { +#if NETCOREAPP1_1 || NET46 + Assert.False(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + Assert.ThrowsAny(() => ReferenceAssemblies.Net.Net60iOS); + + // Avoid a warning for 'async' operator + await Task.Yield(); +#else + Assert.True(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + var referenceAssemblies = ReferenceAssemblies.Net.Net60iOS; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); +#endif + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net60MacOS() + { +#if NETCOREAPP1_1 || NET46 + Assert.False(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + Assert.ThrowsAny(() => ReferenceAssemblies.Net.Net60MacOS); + + // Avoid a warning for 'async' operator + await Task.Yield(); +#else + Assert.True(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + var referenceAssemblies = ReferenceAssemblies.Net.Net60MacOS; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); +#endif + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net60MacCatalyst() + { +#if NETCOREAPP1_1 || NET46 + Assert.False(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + Assert.ThrowsAny(() => ReferenceAssemblies.Net.Net60MacCatalyst); + + // Avoid a warning for 'async' operator + await Task.Yield(); +#else + Assert.True(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + var referenceAssemblies = ReferenceAssemblies.Net.Net60MacCatalyst; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); +#endif + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net60TvOS() + { +#if NETCOREAPP1_1 || NET46 + Assert.False(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + Assert.ThrowsAny(() => ReferenceAssemblies.Net.Net60TvOS); + + // Avoid a warning for 'async' operator + await Task.Yield(); +#else + Assert.True(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + var referenceAssemblies = ReferenceAssemblies.Net.Net60TvOS; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); +#endif + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net60() + { +#if NETCOREAPP1_1 || NET46 + Assert.False(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + Assert.ThrowsAny(() => ReferenceAssemblies.Net.Net60); + + // Avoid a warning for 'async' operator + await Task.Yield(); +#else + Assert.True(ReferenceAssemblies.TestAccessor.IsPackageBased("net6.0")); + var referenceAssemblies = ReferenceAssemblies.Net.Net60; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); +#endif + } + [Theory] [InlineData("net40")] [InlineData("net45")] @@ -451,6 +570,12 @@ public async Task ResolveReferenceAssemblies_Net50() #if !(NETCOREAPP1_1 || NET46) [InlineData("net5.0")] [InlineData("net6.0")] + [InlineData("net6.0-windows")] + [InlineData("net6.0-android")] + [InlineData("net6.0-ios")] + [InlineData("net6.0-macos")] + [InlineData("net6.0-maccatalyst")] + [InlineData("net6.0-tvos")] #endif [InlineData("netstandard1.0")] [InlineData("netstandard1.1")] @@ -502,6 +627,12 @@ internal static ReferenceAssemblies ReferenceAssembliesForTargetFramework(string "netcoreapp3.1" => ReferenceAssemblies.NetCore.NetCoreApp31, "net5.0" => ReferenceAssemblies.Net.Net50, "net6.0" => ReferenceAssemblies.Net.Net60, + "net6.0-windows" => ReferenceAssemblies.Net.Net60Windows, + "net6.0-android" => ReferenceAssemblies.Net.Net60Android, + "net6.0-ios" => ReferenceAssemblies.Net.Net60iOS, + "net6.0-macos" => ReferenceAssemblies.Net.Net60MacOS, + "net6.0-maccatalyst" => ReferenceAssemblies.Net.Net60MacCatalyst, + "net6.0-tvos" => ReferenceAssemblies.Net.Net60TvOS, "netstandard1.0" => ReferenceAssemblies.NetStandard.NetStandard10, "netstandard1.1" => ReferenceAssemblies.NetStandard.NetStandard11, "netstandard1.2" => ReferenceAssemblies.NetStandard.NetStandard12, From fa729a1d897ff74feb3a0ca4677a5a29bf0a6baf Mon Sep 17 00:00:00 2001 From: Jonathon Marolf Date: Fri, 17 Sep 2021 13:24:11 -0700 Subject: [PATCH 2/3] re-use existing property --- .../ReferenceAssemblies.cs | 92 ++----------------- 1 file changed, 8 insertions(+), 84 deletions(-) diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs index 36f2eb8c1..564f6f02b 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs @@ -884,60 +884,20 @@ public static class Net private static readonly Lazy _lazyNet60Windows = new Lazy(() => - { - if (!NuGetFramework.Parse("net6.0").IsPackageBased) - { - // The NuGet version provided at runtime does not recognize the 'net6.0' target framework - throw new NotSupportedException("The 'net6.0' target framework is not supported by this version of NuGet."); - } - - return new ReferenceAssemblies( - "net6.0", - new PackageIdentity( - "Microsoft.NETCore.App.Ref", - "6.0.0-preview.7.21377.19"), - Path.Combine("ref", "net6.0")) - .AddPackages( + Net60.AddPackages( ImmutableArray.Create( - new PackageIdentity("Microsoft.WindowsDesktop.App.Ref", "6.0.0-preview.7.21378.9"))); - }); + new PackageIdentity("Microsoft.WindowsDesktop.App.Ref", "6.0.0-preview.7.21378.9")))); private static readonly Lazy _lazyNet60Android = new Lazy(() => - { - if (!NuGetFramework.Parse("net6.0").IsPackageBased) - { - // The NuGet version provided at runtime does not recognize the 'net6.0' target framework - throw new NotSupportedException("The 'net6.0' target framework is not supported by this version of NuGet."); - } - - return new ReferenceAssemblies( - "net6.0", - new PackageIdentity( - "Microsoft.NETCore.App.Ref", - "6.0.0-preview.7.21377.19"), - Path.Combine("ref", "net6.0")) - .AddPackages( + return Net60.AddPackages( ImmutableArray.Create( - new PackageIdentity("Microsoft.Android.Ref", "30.0.100-preview.7.110"))); - }); + new PackageIdentity("Microsoft.Android.Ref", "30.0.100-preview.7.110")))); private static readonly Lazy _lazyNet60iOS = new Lazy(() => { - if (!NuGetFramework.Parse("net6.0").IsPackageBased) - { - // The NuGet version provided at runtime does not recognize the 'net6.0' target framework - throw new NotSupportedException("The 'net6.0' target framework is not supported by this version of NuGet."); - } - - return new ReferenceAssemblies( - "net6.0", - new PackageIdentity( - "Microsoft.NETCore.App.Ref", - "6.0.0-preview.7.21377.19"), - Path.Combine("ref", "net6.0")) - .AddPackages( + return Net60.AddPackages( ImmutableArray.Create( new PackageIdentity("Microsoft.iOS.Ref", "15.0.100-preview.7.230"))); }); @@ -945,19 +905,7 @@ public static class Net private static readonly Lazy _lazyNet60MacOS = new Lazy(() => { - if (!NuGetFramework.Parse("net6.0").IsPackageBased) - { - // The NuGet version provided at runtime does not recognize the 'net6.0' target framework - throw new NotSupportedException("The 'net6.0' target framework is not supported by this version of NuGet."); - } - - return new ReferenceAssemblies( - "net6.0", - new PackageIdentity( - "Microsoft.NETCore.App.Ref", - "6.0.0-preview.7.21377.19"), - Path.Combine("ref", "net6.0")) - .AddPackages( + return Net60.AddPackages( ImmutableArray.Create( new PackageIdentity("Microsoft.macOS.Ref", "12.0.100-preview.7.230"))); }); @@ -965,19 +913,7 @@ public static class Net private static readonly Lazy _lazyNet60MacCatalyst = new Lazy(() => { - if (!NuGetFramework.Parse("net6.0").IsPackageBased) - { - // The NuGet version provided at runtime does not recognize the 'net6.0' target framework - throw new NotSupportedException("The 'net6.0' target framework is not supported by this version of NuGet."); - } - - return new ReferenceAssemblies( - "net6.0", - new PackageIdentity( - "Microsoft.NETCore.App.Ref", - "6.0.0-preview.7.21377.19"), - Path.Combine("ref", "net6.0")) - .AddPackages( + return Net60.AddPackages( ImmutableArray.Create( new PackageIdentity("Microsoft.MacCatalyst.Ref", "15.0.100-preview.7.230"))); }); @@ -985,19 +921,7 @@ public static class Net private static readonly Lazy _lazyNet60TvOS = new Lazy(() => { - if (!NuGetFramework.Parse("net6.0").IsPackageBased) - { - // The NuGet version provided at runtime does not recognize the 'net6.0' target framework - throw new NotSupportedException("The 'net6.0' target framework is not supported by this version of NuGet."); - } - - return new ReferenceAssemblies( - "net6.0", - new PackageIdentity( - "Microsoft.NETCore.App.Ref", - "6.0.0-preview.7.21377.19"), - Path.Combine("ref", "net6.0")) - .AddPackages( + return Net60.AddPackages( ImmutableArray.Create( new PackageIdentity("Microsoft.tvOS.Ref", "15.0.100-preview.7.230"))); }); From 173b9d22c61c897b8d2e962cdc52fbb70ff1d0b3 Mon Sep 17 00:00:00 2001 From: Jonathon Marolf Date: Fri, 17 Sep 2021 13:27:11 -0700 Subject: [PATCH 3/3] use rc1 package versions --- .../ReferenceAssemblies.cs | 32 +++++++------------ 1 file changed, 12 insertions(+), 20 deletions(-) diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs index 564f6f02b..b606bba0e 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs @@ -878,7 +878,7 @@ public static class Net "net6.0", new PackageIdentity( "Microsoft.NETCore.App.Ref", - "6.0.0-preview.7.21377.19"), + "6.0.0-rc.1.21451.13"), Path.Combine("ref", "net6.0")); }); @@ -886,45 +886,37 @@ public static class Net new Lazy(() => Net60.AddPackages( ImmutableArray.Create( - new PackageIdentity("Microsoft.WindowsDesktop.App.Ref", "6.0.0-preview.7.21378.9")))); + new PackageIdentity("Microsoft.WindowsDesktop.App.Ref", "6.0.0-rc.1.21451.3")))); private static readonly Lazy _lazyNet60Android = new Lazy(() => - return Net60.AddPackages( + Net60.AddPackages( ImmutableArray.Create( - new PackageIdentity("Microsoft.Android.Ref", "30.0.100-preview.7.110")))); + new PackageIdentity("Microsoft.Android.Ref", "31.0.100-rc.1.12")))); private static readonly Lazy _lazyNet60iOS = new Lazy(() => - { - return Net60.AddPackages( + Net60.AddPackages( ImmutableArray.Create( - new PackageIdentity("Microsoft.iOS.Ref", "15.0.100-preview.7.230"))); - }); + new PackageIdentity("Microsoft.iOS.Ref", "15.0.100-rc.1.1534")))); private static readonly Lazy _lazyNet60MacOS = new Lazy(() => - { - return Net60.AddPackages( + Net60.AddPackages( ImmutableArray.Create( - new PackageIdentity("Microsoft.macOS.Ref", "12.0.100-preview.7.230"))); - }); + new PackageIdentity("Microsoft.macOS.Ref", "12.0.100-rc.1.1534")))); private static readonly Lazy _lazyNet60MacCatalyst = new Lazy(() => - { - return Net60.AddPackages( + Net60.AddPackages( ImmutableArray.Create( - new PackageIdentity("Microsoft.MacCatalyst.Ref", "15.0.100-preview.7.230"))); - }); + new PackageIdentity("Microsoft.MacCatalyst.Ref", "15.0.100-rc.1.1534")))); private static readonly Lazy _lazyNet60TvOS = new Lazy(() => - { - return Net60.AddPackages( + Net60.AddPackages( ImmutableArray.Create( - new PackageIdentity("Microsoft.tvOS.Ref", "15.0.100-preview.7.230"))); - }); + new PackageIdentity("Microsoft.tvOS.Ref", "15.0.100-rc.1.1534")))); public static ReferenceAssemblies Net50 => _lazyNet50.Value;