diff --git a/eng/Versions.props b/eng/Versions.props index e084b185a7032f..683bbb1736e95a 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -128,7 +128,6 @@ 4.5.5 4.5.0 6.0.1 - 4.3.0 6.0.0 4.3.1 5.0.0 diff --git a/src/libraries/Microsoft.Extensions.DependencyModel/src/EnvironmentWrapper.cs b/src/libraries/Microsoft.Extensions.DependencyModel/src/EnvironmentWrapper.cs index 47025ffb17ac32..d61aed3e622ead 100644 --- a/src/libraries/Microsoft.Extensions.DependencyModel/src/EnvironmentWrapper.cs +++ b/src/libraries/Microsoft.Extensions.DependencyModel/src/EnvironmentWrapper.cs @@ -2,7 +2,9 @@ // The .NET Foundation licenses this file to you under the MIT license. using System; +#if !NETFRAMEWORK using System.Runtime.InteropServices; +#endif namespace Microsoft.Extensions.DependencyModel { @@ -14,6 +16,11 @@ internal sealed class EnvironmentWrapper : IEnvironment public object? GetAppContextData(string name) => AppDomain.CurrentDomain.GetData(name); - public bool IsWindows() => RuntimeInformation.IsOSPlatform(OSPlatform.Windows); + public bool IsWindows() => +#if NETFRAMEWORK + Environment.OSVersion.Platform == PlatformID.Win32NT; +#else + RuntimeInformation.IsOSPlatform(OSPlatform.Windows); +#endif } } diff --git a/src/libraries/Microsoft.Extensions.DependencyModel/src/Microsoft.Extensions.DependencyModel.csproj b/src/libraries/Microsoft.Extensions.DependencyModel/src/Microsoft.Extensions.DependencyModel.csproj index 99792dd1f3a0ba..ca71ccf4d0d348 100644 --- a/src/libraries/Microsoft.Extensions.DependencyModel/src/Microsoft.Extensions.DependencyModel.csproj +++ b/src/libraries/Microsoft.Extensions.DependencyModel/src/Microsoft.Extensions.DependencyModel.csproj @@ -41,7 +41,6 @@ By default, the dependency manifest contains information about the application's - diff --git a/src/libraries/Microsoft.Extensions.DependencyModel/src/Resolution/DotNetReferenceAssembliesPathResolver.cs b/src/libraries/Microsoft.Extensions.DependencyModel/src/Resolution/DotNetReferenceAssembliesPathResolver.cs index 9c78fca2b2518e..ead221a3fb30d4 100644 --- a/src/libraries/Microsoft.Extensions.DependencyModel/src/Resolution/DotNetReferenceAssembliesPathResolver.cs +++ b/src/libraries/Microsoft.Extensions.DependencyModel/src/Resolution/DotNetReferenceAssembliesPathResolver.cs @@ -1,7 +1,9 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. +#if !NETFRAMEWORK using System.Runtime.InteropServices; +#endif namespace Microsoft.Extensions.DependencyModel.Resolution { @@ -27,12 +29,21 @@ public class DotNetReferenceAssembliesPathResolver private static string? GetDefaultDotNetReferenceAssembliesPath(IFileSystem fileSystem) { - if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) + if ( +#if NETFRAMEWORK + System.Environment.OSVersion.Platform == System.PlatformID.Win32NT +#else + RuntimeInformation.IsOSPlatform(OSPlatform.Windows) +#endif + ) { return null; } - if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX) && + if ( +#if !NETFRAMEWORK + RuntimeInformation.IsOSPlatform(OSPlatform.OSX) && +#endif fileSystem.Directory.Exists("/Library/Frameworks/Mono.framework/Versions/Current/lib/mono/xbuild-frameworks")) { return "/Library/Frameworks/Mono.framework/Versions/Current/lib/mono/xbuild-frameworks"; diff --git a/src/libraries/Microsoft.Extensions.Hosting.WindowsServices/src/WindowsServiceHelpers.cs b/src/libraries/Microsoft.Extensions.Hosting.WindowsServices/src/WindowsServiceHelpers.cs index 7569a921263495..883be7b40f2d1a 100644 --- a/src/libraries/Microsoft.Extensions.Hosting.WindowsServices/src/WindowsServiceHelpers.cs +++ b/src/libraries/Microsoft.Extensions.Hosting.WindowsServices/src/WindowsServiceHelpers.cs @@ -19,7 +19,13 @@ public static class WindowsServiceHelpers [SupportedOSPlatformGuard("windows")] public static bool IsWindowsService() { - if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) + if ( +#if NETFRAMEWORK + Environment.OSVersion.Platform != PlatformID.Win32NT +#else + !RuntimeInformation.IsOSPlatform(OSPlatform.Windows) +#endif + ) { return false; } diff --git a/src/libraries/Microsoft.Extensions.Hosting.WindowsServices/src/WindowsServiceLifetimeHostBuilderExtensions.cs b/src/libraries/Microsoft.Extensions.Hosting.WindowsServices/src/WindowsServiceLifetimeHostBuilderExtensions.cs index 90e8035cadc458..0280d8ee9c5ede 100644 --- a/src/libraries/Microsoft.Extensions.Hosting.WindowsServices/src/WindowsServiceLifetimeHostBuilderExtensions.cs +++ b/src/libraries/Microsoft.Extensions.Hosting.WindowsServices/src/WindowsServiceLifetimeHostBuilderExtensions.cs @@ -106,11 +106,15 @@ public static IServiceCollection AddWindowsService(this IServiceCollection servi private static void AddWindowsServiceLifetime(IServiceCollection services, Action configure) { +#if !NETFRAMEWORK Debug.Assert(RuntimeInformation.IsOSPlatform(OSPlatform.Windows)); +#endif services.AddLogging(logging => { +#if !NETFRAMEWORK Debug.Assert(RuntimeInformation.IsOSPlatform(OSPlatform.Windows)); +#endif logging.AddEventLog(); }); services.AddSingleton(); @@ -129,7 +133,9 @@ public EventLogSettingsSetup(IHostEnvironment environment) public void Configure(EventLogSettings settings) { +#if !NETFRAMEWORK Debug.Assert(RuntimeInformation.IsOSPlatform(OSPlatform.Windows)); +#endif if (string.IsNullOrEmpty(settings.SourceName)) { diff --git a/src/libraries/Microsoft.Extensions.Hosting/src/HostingHostBuilderExtensions.cs b/src/libraries/Microsoft.Extensions.Hosting/src/HostingHostBuilderExtensions.cs index cc9c7e205ef608..5b2f56abe6a665 100644 --- a/src/libraries/Microsoft.Extensions.Hosting/src/HostingHostBuilderExtensions.cs +++ b/src/libraries/Microsoft.Extensions.Hosting/src/HostingHostBuilderExtensions.cs @@ -217,7 +217,13 @@ internal static void SetDefaultContentRoot(IConfigurationBuilder hostConfigBuild // any trailing directory separator characters. I'm not even sure the casing can ever be different from these APIs, but I think it makes sense to // ignore case for Windows path comparisons given the file system is usually (always?) going to be case insensitive for the system path. string cwd = Environment.CurrentDirectory; - if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows) || !string.Equals(cwd, Environment.SystemDirectory, StringComparison.OrdinalIgnoreCase)) + if ( +#if NETFRAMEWORK + Environment.OSVersion.Platform != PlatformID.Win32NT || +#else + !RuntimeInformation.IsOSPlatform(OSPlatform.Windows) || +#endif + !string.Equals(cwd, Environment.SystemDirectory, StringComparison.OrdinalIgnoreCase)) { hostConfigBuilder.AddInMemoryCollection(new[] { @@ -270,6 +276,8 @@ internal static void AddDefaultServices(HostBuilderContext hostingContext, IServ bool isWindows = #if NETCOREAPP OperatingSystem.IsWindows(); +#elif NETFRAMEWORK + Environment.OSVersion.Platform == PlatformID.Win32NT; #else RuntimeInformation.IsOSPlatform(OSPlatform.Windows); #endif diff --git a/src/libraries/Microsoft.Extensions.Hosting/src/Microsoft.Extensions.Hosting.csproj b/src/libraries/Microsoft.Extensions.Hosting/src/Microsoft.Extensions.Hosting.csproj index 1c372be3ff7e57..1ea45457d06272 100644 --- a/src/libraries/Microsoft.Extensions.Hosting/src/Microsoft.Extensions.Hosting.csproj +++ b/src/libraries/Microsoft.Extensions.Hosting/src/Microsoft.Extensions.Hosting.csproj @@ -54,7 +54,6 @@ - diff --git a/src/libraries/Microsoft.Extensions.Logging.Console/src/ConsoleLoggerProvider.cs b/src/libraries/Microsoft.Extensions.Logging.Console/src/ConsoleLoggerProvider.cs index b85273d0bfd6df..f1f96fd6611424 100644 --- a/src/libraries/Microsoft.Extensions.Logging.Console/src/ConsoleLoggerProvider.cs +++ b/src/libraries/Microsoft.Extensions.Logging.Console/src/ConsoleLoggerProvider.cs @@ -68,7 +68,13 @@ public ConsoleLoggerProvider(IOptionsMonitor options, IEnu [UnsupportedOSPlatformGuard("windows")] private static bool DoesConsoleSupportAnsi() { - if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) + if ( +#if NETFRAMEWORK + Environment.OSVersion.Platform != PlatformID.Win32NT +#else + !RuntimeInformation.IsOSPlatform(OSPlatform.Windows) +#endif + ) { return true; } diff --git a/src/libraries/Microsoft.Extensions.Logging.Console/src/Microsoft.Extensions.Logging.Console.csproj b/src/libraries/Microsoft.Extensions.Logging.Console/src/Microsoft.Extensions.Logging.Console.csproj index dffe8084cc561c..ed78c7dce5f782 100644 --- a/src/libraries/Microsoft.Extensions.Logging.Console/src/Microsoft.Extensions.Logging.Console.csproj +++ b/src/libraries/Microsoft.Extensions.Logging.Console/src/Microsoft.Extensions.Logging.Console.csproj @@ -64,8 +64,6 @@ - -