From e1e13f42b8f74f05cb773c992d1d07df534b6c54 Mon Sep 17 00:00:00 2001 From: Stephen Toub Date: Mon, 7 Jul 2025 10:42:14 -0400 Subject: [PATCH 1/2] Seal a few more extensions types with only a private ctor --- .../ref/Microsoft.Extensions.FileProviders.Abstractions.cs | 2 +- .../src/NullChangeToken.cs | 2 +- .../ref/Microsoft.Extensions.Logging.Abstractions.cs | 2 +- .../src/NullLoggerProvider.cs | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/ref/Microsoft.Extensions.FileProviders.Abstractions.cs b/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/ref/Microsoft.Extensions.FileProviders.Abstractions.cs index 8d3d62bb9c8734..57ad00b24886fd 100644 --- a/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/ref/Microsoft.Extensions.FileProviders.Abstractions.cs +++ b/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/ref/Microsoft.Extensions.FileProviders.Abstractions.cs @@ -46,7 +46,7 @@ public NotFoundFileInfo(string name) { } [System.Diagnostics.CodeAnalysis.DoesNotReturn] public System.IO.Stream CreateReadStream() { throw null; } } - public partial class NullChangeToken : Microsoft.Extensions.Primitives.IChangeToken + public partial sealed class NullChangeToken : Microsoft.Extensions.Primitives.IChangeToken { internal NullChangeToken() { } public bool ActiveChangeCallbacks { get { throw null; } } diff --git a/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/src/NullChangeToken.cs b/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/src/NullChangeToken.cs index 17812a299490ee..eb10eed91052a2 100644 --- a/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/src/NullChangeToken.cs +++ b/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/src/NullChangeToken.cs @@ -9,7 +9,7 @@ namespace Microsoft.Extensions.FileProviders /// /// An empty change token that doesn't raise any change callbacks. /// - public class NullChangeToken : IChangeToken + public sealed class NullChangeToken : IChangeToken { /// /// Gets a singleton instance of . diff --git a/src/libraries/Microsoft.Extensions.Logging.Abstractions/ref/Microsoft.Extensions.Logging.Abstractions.cs b/src/libraries/Microsoft.Extensions.Logging.Abstractions/ref/Microsoft.Extensions.Logging.Abstractions.cs index cd1125477953f3..b5f559c4b45511 100644 --- a/src/libraries/Microsoft.Extensions.Logging.Abstractions/ref/Microsoft.Extensions.Logging.Abstractions.cs +++ b/src/libraries/Microsoft.Extensions.Logging.Abstractions/ref/Microsoft.Extensions.Logging.Abstractions.cs @@ -193,7 +193,7 @@ public void AddProvider(Microsoft.Extensions.Logging.ILoggerProvider provider) { public Microsoft.Extensions.Logging.ILogger CreateLogger(string name) { throw null; } public void Dispose() { } } - public partial class NullLoggerProvider : Microsoft.Extensions.Logging.ILoggerProvider, System.IDisposable + public partial sealed class NullLoggerProvider : Microsoft.Extensions.Logging.ILoggerProvider, System.IDisposable { internal NullLoggerProvider() { } public static Microsoft.Extensions.Logging.Abstractions.NullLoggerProvider Instance { get { throw null; } } diff --git a/src/libraries/Microsoft.Extensions.Logging.Abstractions/src/NullLoggerProvider.cs b/src/libraries/Microsoft.Extensions.Logging.Abstractions/src/NullLoggerProvider.cs index 98c8624297100c..1ca696ef2a6430 100644 --- a/src/libraries/Microsoft.Extensions.Logging.Abstractions/src/NullLoggerProvider.cs +++ b/src/libraries/Microsoft.Extensions.Logging.Abstractions/src/NullLoggerProvider.cs @@ -6,7 +6,7 @@ namespace Microsoft.Extensions.Logging.Abstractions /// /// Provider for the . /// - public class NullLoggerProvider : ILoggerProvider + public sealed class NullLoggerProvider : ILoggerProvider { /// /// Returns an instance of . From cd1260385fc025a429adb89d2fb056133666631d Mon Sep 17 00:00:00 2001 From: Tarek Mahmoud Sayed <10833894+tarekgh@users.noreply.github.com> Date: Mon, 7 Jul 2025 08:41:53 -0700 Subject: [PATCH 2/2] Apply suggestions from code review Co-authored-by: Theodore Tsirpanis --- .../ref/Microsoft.Extensions.FileProviders.Abstractions.cs | 2 +- .../ref/Microsoft.Extensions.Logging.Abstractions.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/ref/Microsoft.Extensions.FileProviders.Abstractions.cs b/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/ref/Microsoft.Extensions.FileProviders.Abstractions.cs index 57ad00b24886fd..7bdf2d6a102ea4 100644 --- a/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/ref/Microsoft.Extensions.FileProviders.Abstractions.cs +++ b/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/ref/Microsoft.Extensions.FileProviders.Abstractions.cs @@ -46,7 +46,7 @@ public NotFoundFileInfo(string name) { } [System.Diagnostics.CodeAnalysis.DoesNotReturn] public System.IO.Stream CreateReadStream() { throw null; } } - public partial sealed class NullChangeToken : Microsoft.Extensions.Primitives.IChangeToken + public sealed partial class NullChangeToken : Microsoft.Extensions.Primitives.IChangeToken { internal NullChangeToken() { } public bool ActiveChangeCallbacks { get { throw null; } } diff --git a/src/libraries/Microsoft.Extensions.Logging.Abstractions/ref/Microsoft.Extensions.Logging.Abstractions.cs b/src/libraries/Microsoft.Extensions.Logging.Abstractions/ref/Microsoft.Extensions.Logging.Abstractions.cs index b5f559c4b45511..34f8935ac470cd 100644 --- a/src/libraries/Microsoft.Extensions.Logging.Abstractions/ref/Microsoft.Extensions.Logging.Abstractions.cs +++ b/src/libraries/Microsoft.Extensions.Logging.Abstractions/ref/Microsoft.Extensions.Logging.Abstractions.cs @@ -193,7 +193,7 @@ public void AddProvider(Microsoft.Extensions.Logging.ILoggerProvider provider) { public Microsoft.Extensions.Logging.ILogger CreateLogger(string name) { throw null; } public void Dispose() { } } - public partial sealed class NullLoggerProvider : Microsoft.Extensions.Logging.ILoggerProvider, System.IDisposable + public sealed partial class NullLoggerProvider : Microsoft.Extensions.Logging.ILoggerProvider, System.IDisposable { internal NullLoggerProvider() { } public static Microsoft.Extensions.Logging.Abstractions.NullLoggerProvider Instance { get { throw null; } }