Skip to content
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
<PackageVersion Include="FluentAssertions" Version="6.11.0" />
<PackageVersion Include="GitHubActionsTestLogger" Version="2.3.2" />
<PackageVersion Include="Microsoft.Bcl.AsyncInterfaces" Version="6.0.0" />
<PackageVersion Include="Microsoft.CodeAnalysis.PublicApiAnalyzers" Version="3.3.4" />
<PackageVersion Include="Microsoft.Extensions.Caching.Memory" Version="$(MicrosoftExtensionsVersion)" />
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="$(MicrosoftExtensionsVersion)" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="$(MicrosoftExtensionsVersion)" />
Expand Down
8 changes: 8 additions & 0 deletions eng/Library.targets
Original file line number Diff line number Diff line change
Expand Up @@ -75,4 +75,12 @@
<PackageVersion>$(MinVerMajor).$(MinVerMinor).$(MinVerPatch)-pr.$(GITHUB_REF_NAME.Replace(`/merge`, ``)).$(GITHUB_RUN_NUMBER)</PackageVersion>
</PropertyGroup>
</Target>

<ItemGroup Condition="$(UsePublicApiAnalyzers) != 'false'">
<PackageReference Include="Microsoft.CodeAnalysis.PublicApiAnalyzers">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>

</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ public BrokenCircuitException(string message, Exception inner, TResult result)
/// </summary>
/// <param name="info">The <see cref="SerializationInfo" /> that holds the serialized object data about the exception being thrown.</param>
/// <param name="context">The <see cref="StreamingContext" /> that contains contextual information about the source or destination.</param>
protected BrokenCircuitException(SerializationInfo info, StreamingContext context)
private BrokenCircuitException(SerializationInfo info, StreamingContext context)
: base(info, context) => Result = default!;
#endif
}
2 changes: 1 addition & 1 deletion src/Polly.Core/CircuitBreaker/BrokenCircuitException.cs
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ public BrokenCircuitException(string message, Exception inner)
/// </summary>
/// <param name="info">The <see cref="SerializationInfo" /> that holds the serialized object data about the exception being thrown.</param>
/// <param name="context">The <see cref="StreamingContext" /> that contains contextual information about the source or destination.</param>
protected BrokenCircuitException(SerializationInfo info, StreamingContext context)
protected private BrokenCircuitException(SerializationInfo info, StreamingContext context)
: base(info, context)
{
}
Expand Down
2 changes: 1 addition & 1 deletion src/Polly.Core/CircuitBreaker/IsolatedCircuitException.cs
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ public IsolatedCircuitException(string message, Exception innerException)
/// </summary>
/// <param name="info">The <see cref="SerializationInfo" /> that holds the serialized object data about the exception being thrown.</param>
/// <param name="context">The <see cref="StreamingContext" /> that contains contextual information about the source or destination.</param>
protected IsolatedCircuitException(SerializationInfo info, StreamingContext context)
private IsolatedCircuitException(SerializationInfo info, StreamingContext context)
: base(info, context)
{
}
Expand Down
2 changes: 2 additions & 0 deletions src/Polly.Core/ExecutionRejectedException.cs
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ protected ExecutionRejectedException(string message, Exception inner)
{
}

#pragma warning disable RS0016 // Add public types and members to the declared API
#if !NETCOREAPP
/// <summary>
/// Initializes a new instance of the <see cref="ExecutionRejectedException"/> class.
Expand All @@ -47,4 +48,5 @@ protected ExecutionRejectedException(SerializationInfo info, StreamingContext co
{
}
#endif
#pragma warning restore RS0016 // Add public types and members to the declared API
}
1 change: 1 addition & 0 deletions src/Polly.Core/PublicAPI.Shipped.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#nullable enable
453 changes: 453 additions & 0 deletions src/Polly.Core/PublicAPI.Unshipped.txt

Large diffs are not rendered by default.

2 changes: 2 additions & 0 deletions src/Polly.Core/ResilienceContext.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@

namespace Polly;

#pragma warning disable RS0026 // Do not add multiple public overloads with optional parameters

/// <summary>
/// A context assigned to a single execution of <see cref="ResilienceStrategy"/>. It is created manually or automatically
/// when the user calls the various extensions on top of <see cref="ResilienceStrategy"/>. After every execution the context should be discarded and returned to the pool.
Expand Down
1 change: 1 addition & 0 deletions src/Polly.Core/ResilienceStrategy.Async.ValueTask.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
namespace Polly;

#pragma warning disable CA1031 // Do not catch general exception types
#pragma warning disable RS0027 // API with optional parameter(s) should have the most parameters amongst its public overloads

public abstract partial class ResilienceStrategy
{
Expand Down
1 change: 1 addition & 0 deletions src/Polly.Core/ResilienceStrategy.Async.ValueTaskT.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
namespace Polly;

#pragma warning disable CA1031 // Do not catch general exception types
#pragma warning disable RS0027 // API with optional parameter(s) should have the most parameters amongst its public overloads

public abstract partial class ResilienceStrategy
{
Expand Down
1 change: 1 addition & 0 deletions src/Polly.Core/ResilienceStrategy.Sync.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
namespace Polly;

#pragma warning disable CA1031 // Do not catch general exception types
#pragma warning disable RS0027 // API with optional parameter(s) should have the most parameters amongst its public overloads

public abstract partial class ResilienceStrategy
{
Expand Down
1 change: 1 addition & 0 deletions src/Polly.Core/ResilienceStrategy.SyncT.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
namespace Polly;

#pragma warning disable CA1031 // Do not catch general exception types
#pragma warning disable RS0027 // API with optional parameter(s) should have the most parameters amongst its public overloads

public abstract partial class ResilienceStrategy
{
Expand Down
2 changes: 2 additions & 0 deletions src/Polly.Core/ResilienceStrategy.TResult.Async.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

namespace Polly;

#pragma warning disable RS0027 // API with optional parameter(s) should have the most parameters amongst its public overloads

/// <summary>
/// Resilience strategy is used to execute the user-provided callbacks.
/// </summary>
Expand Down
2 changes: 2 additions & 0 deletions src/Polly.Core/ResilienceStrategy.TResult.Sync.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
namespace Polly;

#pragma warning disable RS0027 // API with optional parameter(s) should have the most parameters amongst its public overloads

public partial class ResilienceStrategy<TResult>
{
/// <summary>
Expand Down
16 changes: 8 additions & 8 deletions src/Polly.Core/Timeout/TimeoutRejectedException.cs
Original file line number Diff line number Diff line change
Expand Up @@ -63,22 +63,21 @@ public TimeoutRejectedException(string message, TimeSpan timeout)
public TimeoutRejectedException(string message, TimeSpan timeout, Exception innerException)
: base(message, innerException) => Timeout = timeout;

/// <summary>
/// Gets the timeout value that caused this exception.
/// </summary>
public TimeSpan Timeout { get; private set; } = System.Threading.Timeout.InfiniteTimeSpan;

#pragma warning disable RS0016 // Add public types and members to the declared API
#if !NETCOREAPP
/// <summary>
/// Initializes a new instance of the <see cref="TimeoutRejectedException"/> class.
/// </summary>
/// <param name="info">The information.</param>
/// <param name="context">The context.</param>
protected TimeoutRejectedException(SerializationInfo info, StreamingContext context)
private TimeoutRejectedException(SerializationInfo info, StreamingContext context)
: base(info, context) => Timeout = TimeSpan.FromSeconds(info.GetDouble("Timeout"));
#endif

/// <summary>
/// Gets the timeout value that caused this exception.
/// </summary>
public TimeSpan Timeout { get; private set; } = System.Threading.Timeout.InfiniteTimeSpan;

#if !NETCOREAPP
/// <inheritdoc/>
public override void GetObjectData(SerializationInfo info, StreamingContext context)
{
Expand All @@ -89,4 +88,5 @@ public override void GetObjectData(SerializationInfo info, StreamingContext cont
base.GetObjectData(info, context);
}
#endif
#pragma warning restore RS0016 // Add public types and members to the declared API
}
1 change: 1 addition & 0 deletions src/Polly.Extensions/PublicAPI.Shipped.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#nullable enable
33 changes: 33 additions & 0 deletions src/Polly.Extensions/PublicAPI.Unshipped.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#nullable enable
Polly.Extensions.DependencyInjection.AddResilienceStrategyContext<TKey>
Polly.Extensions.DependencyInjection.AddResilienceStrategyContext<TKey>.BuilderName.get -> string!
Polly.Extensions.DependencyInjection.AddResilienceStrategyContext<TKey>.EnableReloads<TOptions>(string? name = null) -> void
Polly.Extensions.DependencyInjection.AddResilienceStrategyContext<TKey>.GetOptions<TOptions>(string? name = null) -> TOptions
Polly.Extensions.DependencyInjection.AddResilienceStrategyContext<TKey>.ServiceProvider.get -> System.IServiceProvider!
Polly.Extensions.DependencyInjection.AddResilienceStrategyContext<TKey>.StrategyKey.get -> TKey
Polly.Extensions.Registry.ConfigureBuilderContextExtensions
Polly.Extensions.Telemetry.EnrichmentContext
Polly.Extensions.Telemetry.EnrichmentContext.Arguments.get -> object?
Polly.Extensions.Telemetry.EnrichmentContext.Context.get -> Polly.ResilienceContext!
Polly.Extensions.Telemetry.EnrichmentContext.Outcome.get -> Polly.Outcome<object!>?
Polly.Extensions.Telemetry.EnrichmentContext.Tags.get -> System.Collections.Generic.IList<System.Collections.Generic.KeyValuePair<string!, object?>>!
Polly.Extensions.Telemetry.TelemetryOptions
Polly.Extensions.Telemetry.TelemetryOptions.Enrichers.get -> System.Collections.Generic.ICollection<System.Action<Polly.Extensions.Telemetry.EnrichmentContext!>!>!
Polly.Extensions.Telemetry.TelemetryOptions.LoggerFactory.get -> Microsoft.Extensions.Logging.ILoggerFactory!
Polly.Extensions.Telemetry.TelemetryOptions.LoggerFactory.set -> void
Polly.Extensions.Telemetry.TelemetryOptions.OnTelemetryEvent.get -> System.Action<Polly.Telemetry.TelemetryEventArguments!>?
Polly.Extensions.Telemetry.TelemetryOptions.OnTelemetryEvent.set -> void
Polly.Extensions.Telemetry.TelemetryOptions.ResultFormatter.get -> System.Func<Polly.ResilienceContext!, object?, object?>!
Polly.Extensions.Telemetry.TelemetryOptions.ResultFormatter.set -> void
Polly.Extensions.Telemetry.TelemetryOptions.TelemetryOptions() -> void
Polly.PollyServiceCollectionExtensions
Polly.TelemetryResilienceStrategyBuilderExtensions
static Polly.Extensions.Registry.ConfigureBuilderContextExtensions.EnableReloads<TKey, TOptions>(this Polly.Registry.ConfigureBuilderContext<TKey>! context, Microsoft.Extensions.Options.IOptionsMonitor<TOptions>! optionsMonitor, string? name = null) -> void
static Polly.PollyServiceCollectionExtensions.AddResilienceStrategy<TKey, TResult>(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services, TKey key, System.Action<Polly.ResilienceStrategyBuilder<TResult>!, Polly.Extensions.DependencyInjection.AddResilienceStrategyContext<TKey>!>! configure) -> Microsoft.Extensions.DependencyInjection.IServiceCollection!
static Polly.PollyServiceCollectionExtensions.AddResilienceStrategy<TKey, TResult>(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services, TKey key, System.Action<Polly.ResilienceStrategyBuilder<TResult>!>! configure) -> Microsoft.Extensions.DependencyInjection.IServiceCollection!
static Polly.PollyServiceCollectionExtensions.AddResilienceStrategy<TKey>(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services, TKey key, System.Action<Polly.ResilienceStrategyBuilder!, Polly.Extensions.DependencyInjection.AddResilienceStrategyContext<TKey>!>! configure) -> Microsoft.Extensions.DependencyInjection.IServiceCollection!
static Polly.PollyServiceCollectionExtensions.AddResilienceStrategy<TKey>(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services, TKey key, System.Action<Polly.ResilienceStrategyBuilder!>! configure) -> Microsoft.Extensions.DependencyInjection.IServiceCollection!
static Polly.PollyServiceCollectionExtensions.AddResilienceStrategyRegistry<TKey>(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection!
static Polly.PollyServiceCollectionExtensions.AddResilienceStrategyRegistry<TKey>(this Microsoft.Extensions.DependencyInjection.IServiceCollection! services, System.Action<Polly.Registry.ResilienceStrategyRegistryOptions<TKey>!>! configure) -> Microsoft.Extensions.DependencyInjection.IServiceCollection!
static Polly.TelemetryResilienceStrategyBuilderExtensions.ConfigureTelemetry<TBuilder>(this TBuilder! builder, Microsoft.Extensions.Logging.ILoggerFactory! loggerFactory) -> TBuilder!
static Polly.TelemetryResilienceStrategyBuilderExtensions.ConfigureTelemetry<TBuilder>(this TBuilder! builder, Polly.Extensions.Telemetry.TelemetryOptions! options) -> TBuilder!
1 change: 1 addition & 0 deletions src/Polly.RateLimiting/PublicAPI.Shipped.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#nullable enable
34 changes: 34 additions & 0 deletions src/Polly.RateLimiting/PublicAPI.Unshipped.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#nullable enable
override sealed Polly.RateLimiting.RateLimiterStrategyOptions.StrategyType.get -> string!
Polly.RateLimiterResilienceStrategyBuilderExtensions
Polly.RateLimiting.OnRateLimiterRejectedArguments
Polly.RateLimiting.OnRateLimiterRejectedArguments.Context.get -> Polly.ResilienceContext!
Polly.RateLimiting.OnRateLimiterRejectedArguments.Context.init -> void
Polly.RateLimiting.OnRateLimiterRejectedArguments.Lease.get -> System.Threading.RateLimiting.RateLimitLease!
Polly.RateLimiting.OnRateLimiterRejectedArguments.Lease.init -> void
Polly.RateLimiting.OnRateLimiterRejectedArguments.OnRateLimiterRejectedArguments(Polly.ResilienceContext! Context, System.Threading.RateLimiting.RateLimitLease! Lease, System.TimeSpan? RetryAfter) -> void
Polly.RateLimiting.OnRateLimiterRejectedArguments.RetryAfter.get -> System.TimeSpan?
Polly.RateLimiting.OnRateLimiterRejectedArguments.RetryAfter.init -> void
Polly.RateLimiting.RateLimiterRejectedException
Polly.RateLimiting.RateLimiterRejectedException.RateLimiterRejectedException() -> void
Polly.RateLimiting.RateLimiterRejectedException.RateLimiterRejectedException(string! message) -> void
Polly.RateLimiting.RateLimiterRejectedException.RateLimiterRejectedException(string! message, System.Exception! inner) -> void
Polly.RateLimiting.RateLimiterRejectedException.RateLimiterRejectedException(string! message, System.TimeSpan retryAfter) -> void
Polly.RateLimiting.RateLimiterRejectedException.RateLimiterRejectedException(string! message, System.TimeSpan retryAfter, System.Exception! inner) -> void
Polly.RateLimiting.RateLimiterRejectedException.RateLimiterRejectedException(System.TimeSpan retryAfter) -> void
Polly.RateLimiting.RateLimiterRejectedException.RetryAfter.get -> System.TimeSpan?
Polly.RateLimiting.RateLimiterStrategyOptions
Polly.RateLimiting.RateLimiterStrategyOptions.DefaultRateLimiterOptions.get -> System.Threading.RateLimiting.ConcurrencyLimiterOptions!
Polly.RateLimiting.RateLimiterStrategyOptions.DefaultRateLimiterOptions.set -> void
Polly.RateLimiting.RateLimiterStrategyOptions.OnRejected.get -> System.Func<Polly.RateLimiting.OnRateLimiterRejectedArguments!, System.Threading.Tasks.ValueTask>?
Polly.RateLimiting.RateLimiterStrategyOptions.OnRejected.set -> void
Polly.RateLimiting.RateLimiterStrategyOptions.RateLimiter.get -> Polly.RateLimiting.ResilienceRateLimiter?
Polly.RateLimiting.RateLimiterStrategyOptions.RateLimiter.set -> void
Polly.RateLimiting.RateLimiterStrategyOptions.RateLimiterStrategyOptions() -> void
Polly.RateLimiting.ResilienceRateLimiter
static Polly.RateLimiterResilienceStrategyBuilderExtensions.AddConcurrencyLimiter<TBuilder>(this TBuilder! builder, int permitLimit, int queueLimit = 0) -> TBuilder!
static Polly.RateLimiterResilienceStrategyBuilderExtensions.AddConcurrencyLimiter<TBuilder>(this TBuilder! builder, System.Threading.RateLimiting.ConcurrencyLimiterOptions! options) -> TBuilder!
static Polly.RateLimiterResilienceStrategyBuilderExtensions.AddRateLimiter<TBuilder>(this TBuilder! builder, Polly.RateLimiting.RateLimiterStrategyOptions! options) -> TBuilder!
static Polly.RateLimiterResilienceStrategyBuilderExtensions.AddRateLimiter<TBuilder>(this TBuilder! builder, System.Threading.RateLimiting.RateLimiter! limiter) -> TBuilder!
static Polly.RateLimiting.ResilienceRateLimiter.Create(System.Threading.RateLimiting.PartitionedRateLimiter<Polly.ResilienceContext!>! rateLimiter) -> Polly.RateLimiting.ResilienceRateLimiter!
static Polly.RateLimiting.ResilienceRateLimiter.Create(System.Threading.RateLimiting.RateLimiter! rateLimiter) -> Polly.RateLimiting.ResilienceRateLimiter!
22 changes: 11 additions & 11 deletions src/Polly.RateLimiting/RateLimiterRejectedException.cs
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,16 @@ public RateLimiterRejectedException(string message, Exception inner)
public RateLimiterRejectedException(string message, TimeSpan retryAfter, Exception inner)
: base(message, inner) => RetryAfter = retryAfter;

/// <summary>
/// Gets the amount of time to wait before retrying again.
/// </summary>
/// <remarks>
/// This value was retrieved from the <see cref="RateLimitLease"/> by reading the <see cref="MetadataName.RetryAfter"/>.
/// Defaults to <c>null</c>.
/// </remarks>
public TimeSpan? RetryAfter { get; }

#pragma warning disable RS0016 // Add public types and members to the declared API
#if !NETCOREAPP
/// <summary>
/// Initializes a new instance of the <see cref="RateLimiterRejectedException"/> class.
Expand All @@ -80,18 +90,7 @@ private RateLimiterRejectedException(SerializationInfo info, StreamingContext co
RetryAfter = TimeSpan.FromSeconds(value);
}
}
#endif

/// <summary>
/// Gets the amount of time to wait before retrying again.
/// </summary>
/// <remarks>
/// This value was retrieved from the <see cref="RateLimitLease"/> by reading the <see cref="MetadataName.RetryAfter"/>.
/// Defaults to <c>null</c>.
/// </remarks>
public TimeSpan? RetryAfter { get; }

#if !NETCOREAPP
/// <inheritdoc/>
public override void GetObjectData(SerializationInfo info, StreamingContext context)
{
Expand All @@ -109,4 +108,5 @@ public override void GetObjectData(SerializationInfo info, StreamingContext cont
base.GetObjectData(info, context);
}
#endif
#pragma warning restore RS0016 // Add public types and members to the declared API
}
1 change: 1 addition & 0 deletions src/Polly.Testing/PublicAPI.Shipped.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

18 changes: 18 additions & 0 deletions src/Polly.Testing/PublicAPI.Unshipped.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#nullable enable
Polly.Testing.InnerStrategiesDescriptor
Polly.Testing.InnerStrategiesDescriptor.HasTelemetry.get -> bool
Polly.Testing.InnerStrategiesDescriptor.HasTelemetry.init -> void
Polly.Testing.InnerStrategiesDescriptor.InnerStrategiesDescriptor(System.Collections.Generic.IReadOnlyList<Polly.Testing.ResilienceStrategyDescriptor!>! Strategies, bool HasTelemetry, bool IsReloadable) -> void
Polly.Testing.InnerStrategiesDescriptor.IsReloadable.get -> bool
Polly.Testing.InnerStrategiesDescriptor.IsReloadable.init -> void
Polly.Testing.InnerStrategiesDescriptor.Strategies.get -> System.Collections.Generic.IReadOnlyList<Polly.Testing.ResilienceStrategyDescriptor!>!
Polly.Testing.InnerStrategiesDescriptor.Strategies.init -> void
Polly.Testing.ResilienceStrategyDescriptor
Polly.Testing.ResilienceStrategyDescriptor.Options.get -> Polly.ResilienceStrategyOptions?
Polly.Testing.ResilienceStrategyDescriptor.Options.init -> void
Polly.Testing.ResilienceStrategyDescriptor.ResilienceStrategyDescriptor(Polly.ResilienceStrategyOptions? Options, System.Type! StrategyType) -> void
Polly.Testing.ResilienceStrategyDescriptor.StrategyType.get -> System.Type!
Polly.Testing.ResilienceStrategyDescriptor.StrategyType.init -> void
Polly.Testing.ResilienceStrategyExtensions
static Polly.Testing.ResilienceStrategyExtensions.GetInnerStrategies(this Polly.ResilienceStrategy! strategy) -> Polly.Testing.InnerStrategiesDescriptor!
static Polly.Testing.ResilienceStrategyExtensions.GetInnerStrategies<TResult>(this Polly.ResilienceStrategy<TResult>! strategy) -> Polly.Testing.InnerStrategiesDescriptor!
2 changes: 2 additions & 0 deletions src/Polly/Bulkhead/BulkheadRejectedException.cs
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ public BulkheadRejectedException(string message, Exception innerException) : bas
{
}

#pragma warning disable RS0016 // Add public types and members to the declared API
#if NETSTANDARD2_0
/// <summary>
/// Initializes a new instance of the <see cref="BulkheadRejectedException"/> class.
Expand All @@ -47,4 +48,5 @@ protected BulkheadRejectedException(SerializationInfo info, StreamingContext con
{
}
#endif
#pragma warning restore RS0016 // Add public types and members to the declared API
}
3 changes: 3 additions & 0 deletions src/Polly/Polly.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@
<NoWarn>$(NoWarn);SA1515;S4023;CA1010;IDE0063;S2681;S3442;S3880;CA1064;SA1110;SA1203;SA1649;SA1625;SA1623;SA1118</NoWarn>
<NoWarn>$(NoWarn);S3253;S3971;S6605;CA1724;CA1716;SA1108;CA1710;S4049;S3246;SA1204;S3928;CA1508;CA1822;CA2201;SA1642</NoWarn>
<NoWarn>$(NoWarn);SA1805;SA1129;SA1805;CA1805;CA1821</NoWarn>

<!--Pulic API Analyzers: We do not need to fix these as it would break compatibility with released Polly versions-->
<NoWarn>$(NoWarn);RS0026;RS0037</NoWarn>
</PropertyGroup>

<ItemGroup>
Expand Down
Loading