diff --git a/src/ZeroLog.Impl.Full/Configuration/ResolvedLoggerConfiguration.cs b/src/ZeroLog.Impl.Full/Configuration/ResolvedLoggerConfiguration.cs
index 2762ab2..526f379 100644
--- a/src/ZeroLog.Impl.Full/Configuration/ResolvedLoggerConfiguration.cs
+++ b/src/ZeroLog.Impl.Full/Configuration/ResolvedLoggerConfiguration.cs
@@ -67,7 +67,6 @@ public static ResolvedLoggerConfiguration Resolve(string loggerName, ZeroLogConf
{
LogMessagePoolExhaustionStrategy = effectiveLogMessagePoolExhaustionStrategy,
#if NET8_0_OR_GREATER
- // ReSharper disable once NullCoalescingConditionIsAlwaysNotNullAccordingToAPIContract
TimeProvider = configuration.TimeProvider ?? TimeProvider.System
#endif
};
diff --git a/src/ZeroLog.Impl.Full/Configuration/ZeroLogConfiguration.cs b/src/ZeroLog.Impl.Full/Configuration/ZeroLogConfiguration.cs
index 42cc734..9643fa9 100644
--- a/src/ZeroLog.Impl.Full/Configuration/ZeroLogConfiguration.cs
+++ b/src/ZeroLog.Impl.Full/Configuration/ZeroLogConfiguration.cs
@@ -126,9 +126,9 @@ public bool UseBackgroundThread
/// The time provider to use for message timestamps.
///
///
- /// Default: .
+ /// Default: null, which falls back to .
///
- public TimeProvider TimeProvider { get; init; } = TimeProvider.System;
+ public TimeProvider? TimeProvider { get; init; }
#endif
///
diff --git a/src/ZeroLog.Tests/SanityChecks.should_have_expected_public_api.DotNet8_0.verified.txt b/src/ZeroLog.Tests/SanityChecks.should_have_expected_public_api.DotNet8_0.verified.txt
index d7dc4f4..ecf87f9 100644
--- a/src/ZeroLog.Tests/SanityChecks.should_have_expected_public_api.DotNet8_0.verified.txt
+++ b/src/ZeroLog.Tests/SanityChecks.should_have_expected_public_api.DotNet8_0.verified.txt
@@ -111,7 +111,7 @@ namespace ZeroLog.Configuration
public int LogMessageBufferSize { get; init; }
public int LogMessagePoolSize { get; init; }
public int LogMessageStringCapacity { get; init; }
- public System.TimeProvider TimeProvider { get; init; }
+ public System.TimeProvider? TimeProvider { get; init; }
public bool UseBackgroundThread { get; init; }
public void ApplyChanges() { }
public void SetLogLevel(string? loggerName, ZeroLog.LogLevel? logLevel) { }