<PackageReference Include="Polly" Version="7.0.1" />

Polly 7.0.1

Polly is a .NET Standard 1.1 and .NET Standard 2.0 library that allows developers to express resilience and transient fault handling policies such as Retry, Circuit Breaker, Timeout, Bulkhead Isolation and Fallback in a fluent and thread-safe manner.

<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
  <metadata>
    <id>Polly</id>
    <version>7.0.1</version>
    <title>Polly</title>
    <authors>Michael Wolfenden, App vNext</authors>
    <owners>App vNext</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <license type="expression">BSD-3-Clause</license>
    <licenseUrl>https://licenses.nuget.org/BSD-3-Clause</licenseUrl>
    <projectUrl>https://github.com/App-vNext/Polly</projectUrl>
    <iconUrl>https://raw.github.com/App-vNext/Polly/master/Polly.png</iconUrl>
    <description>Polly is a .NET Standard 1.1 and .NET Standard 2.0 library that allows developers to express resilience and transient fault handling policies such as Retry, Circuit Breaker, Timeout, Bulkhead Isolation and Fallback in a fluent and thread-safe manner.</description>
    <releaseNotes>7.0.1
     ---------------------
     - Explicitly state System.ValueTuple dependency in nuspec (for Net Standard 1.1)

     7.0.0
     ---------------------
     - Clarify separation of sync and async policies (breaking change)
     - Enable extensibility by custom policies hosted external to Polly
     - Enable collection initialization syntax for PolicyRegistry
     - Enable cache policies to cache default(TResult) (breaking change)
     - Restore Exception binary serialization for .Net Standard 2.0

     6.1.2
     ---------------------
     - Bug Fix: Async continuation control for async executions (issue 540, affected only v6.1.1)

     6.1.1
     ---------------------
     - Bug Fix: Context.PolicyKey behaviour in PolicyWrap (issue 510)

     6.1.0
     ---------------------
     - Bug Fix: Context.PolicyKey behaviour in PolicyWrap
     - Bug Fix: CachePolicy behaviour with non-nullable types
     - Enhancement: WaitAnd/RetryForever overloads where onRetry takes the retry number as a parameter
     - Enhancement: Overloads where onTimeout takes thrown exception as a parameter

     6.0.1
     ---------------------
     - Version 6 RTM, for integration to ASPNET Core 2.1 IHttpClientFactory

     6.0.0-v6alpha
     ---------------------
     - Publish as strong-named package only (discontinue non-strong-named versions)
     - Add .NetStandard 2.0 tfm
     - Provide .NET4.5 support via .NetStandard 1.1 tfm
     - Discontinue .NET4.0 support
     - Remove methods marked as deprecated in v5.9.0

     5.9.0
     ---------------------
     - Allow Timeout.InfiniteTimeSpan (no timeout) for TimeoutPolicy. 
     - Add .AsPolicy&lt;TResult&gt; and .AsAsyncPolicy&lt;TResult&gt; methods for converting non-generic policies to generic policies.
     - Per Semver, indicates deprecation of overloads and properties intended to be removed or renamed in Polly v6.

     5.8.0
     ---------------------
     - Add a new onBreak overload that provides the prior state on a transition to an open state
     - Bug fix: RelativeTtl in CachePolicy now always returns a ttl relative to time item is cached
            
     5.7.0
     ---------------------
     - Minor cache fixes
     - Add ability to calculate cache Ttl based on item to cache
     - Allow user-created custom policies

     5.6.1
     ---------------------
     - Extend PolicyWrap syntax with interfaces

     5.6.0
     ---------------------
     - Add ability to handle inner exceptions natively: .HandleInner&lt;TEx&gt;()
     - Allow WaitAndRetry policies to calculate wait based on the handled fault
     - Add the ability to access the policies within an IPolicyWrap
     - Allow PolicyWrap to take interfaces as parameters
     - Bug fix: set context keys for generic execute method with PolicyWrap
     - Bug fix: generic TResult method with non-generic fallback policy
     - Performance improvements

     5.5.0
     ---------------------
     - Bug fix: non-generic CachePolicy with PolicyWrap
     - Add Cache interfaces
     
     5.4.0
     ---------------------
     - Add CachePolicy: cache-aside pattern, with interfaces for pluggable cache providers and serializers.
     - Bug fix: Sync TimeoutPolicy in pessimistic mode no longer interposes AggregateException.
     - Provide public factory methods for PolicyResult, to support testing.
     - Fallback delegates can now take handled fault as input parameter.

     5.3.1
     ---------------------
     - Make ISyncPolicy&lt;TResult&gt; public
     - (Upgrade solution to msbuild15)

     5.3.0
     ---------------------
     - Fix ExecuteAndCapture() usage with PolicyWrap   
     - Allow Fallback delegates to take execution Context
     - Provide IReadOnlyPolicyRegistry interface

     5.2.0
     ---------------------
     - Add PolicyRegistry for storing and retrieving policies.
     - Add interfaces by policy type and execution type.
     - Change .NetStandard minimum support to NetStandard1.1.

     5.1.0
     ---------------------
     - Allow different parts of a policy execution to exchange data via a mutable Context travelling with each execution.

     5.0.6
     ---------------------
     - Update NETStandard.Library dependency to latest 1.6.1 for .NetStandard1.0 target.  Resolves compatibility for some Xamarin targets.

     5.0.5
     ---------------------
     - Bug fix: Prevent request stampede during half-open state of CircuitBreaker and AdvancedCircuitBreaker.  Enforce only one new trial call per break duration, during half-open state.
     - Bug fix: Prevent duplicate raising of the onBreak delegate, if executions started when a circuit was closed, return faults when a circuit has already opened.
     - Optimisation: Optimise hotpaths for Circuit-Breaker, Retry and Fallback policies.
     - Add NoOpPolicy: NoOpPolicy executes delegates without intervention; for eg stubbing out Polly in unit testing.

     5.0.4 pre
     ---------------------
     - (.NET40Async package changes only)

     5.0.3 RTM
     ---------------------
     - Refine implementation of cancellable synchronous WaitAndRetry
     - Minor breaking change: Where a user delegate does not observe cancellation, Polly will now honour the delegate's outcome rather than throw for the unobserved cancellation (issue 188).

     5.0.2 alpha
     ---------------------
     - .NETStandard1.0 target: Correctly state dependencies. 
     - .NETStandard1.0 target: Fix SemVer stamping of Polly.dll.
     - PCL259 project and target: Remove, in favour of .NETStandard1.0 target.  PCL259 targets are still supported, via .NETStandard1.0 target.
     - Mark Polly.dll as CLSCompliant.
     
     5.0.1 alpha
     ---------------------
     - Add a .NETStandard1.0 target.

     5.0.0 alpha
     ---------------------
     A major release, adding significant new resilience policies:
     - Timeout policy: allows timing out any execution
     - Bulkhead isolation policy: limits the resources consumable by governed actions, such that a faulting channel cannot cause cascading failures.
     - Fallback policy: provides for a fallback execution or value, in case of overall failure
     - PolicyWrap: allows flexibly combining Policy instances of any type, to form an overall resilience strategy.

     Other changes include:
     - Add PolicyKeys and context to all policy executions, for logging and to support later introduction of policy events and metrics. 
     - Add CancellationToken support to synchronous executions.
     - Add some missing ExecuteAndCapture/Async overloads. 
     - Remove invalid ExecuteAsync overloads taking (but not making use of) a CancellationToken
     - Provide .NET4.0 support uniquely through Polly.NET40Async package
     - Retire ContextualPolicy (not part of documented API; support now in Policy base class)
     - Discontinue .NET3.5 support

     Earlier versions
     ----------------
     For versions prior to v5.0, please see the detailed ChangeLog on the Polly project site.</releaseNotes>
    <copyright>Copyright © 2018, App vNext</copyright>
    <language>en-US</language>
    <tags>Exception Handling Resilience Transient Fault Policy Circuit Breaker CircuitBreaker Retry Wait Cache Cache-aside Bulkhead Fallback Timeout Throttle Parallelization</tags>
    <dependencies>
      <group targetFramework=".NETStandard1.1">
        <dependency id="NETStandard.Library" version="1.6.1" />
        <dependency id="System.ValueTuple" version="4.5.0" />
      </group>
      <group targetFramework=".NETStandard2.0" />
    </dependencies>
  </metadata>
</package>