Polly 4.2.3

Polly is a .NET 3.5 / 4.0 / 4.5 / PCL library (Profile 259) that allows developers to express transient exception handling policies such as Retry, Retry Forever, Wait and Retry or Circuit Breaker in a fluent manner.

There is a newer version of this package available.
See the version list below for details.
Install-Package Polly -Version 4.2.3
dotnet add package Polly --version 4.2.3
<PackageReference Include="Polly" Version="4.2.3" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Polly --version 4.2.3
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Polly, 4.2.3"
For F# scripts that support #r syntax, copy this into the source code to reference the package.

Release Notes

    4.2.3
    ---------------------
    - Cleaned up NuGet package, removing unused framework folders.
    
    4.2.2
    ---------------------
    - Add new Polly.Net40Async project supporting async for .NET40 via Microsoft.Bcl.Async.  This is available as separate Nuget packages Polly.Net40Async and Polly.Net40Async-signed.

    4.2.1
    ---------------------
    - Allowed async onRetry delegates to async retry policies.

    4.2.0
    ---------------------
    - Added AdvancedCircuitBreaker - Thanks to @reisenberger and @kristianhald
    
    4.1.2
    ---------------------
    - Fixed an issue with the onReset delegate of the CircuitBreaker.
    
    4.1.1
    ---------------------
    - Add ExecuteAndCapture support with arbitrary context data - Thanks to @reisenberger
    
    4.1.0
    ---------------------
    - Add Wait and retry forever policy - Thanks to @nedstoyanov
    - Remove time-limit on CircuitBreaker state-change delegates - Thanks to @reisenberger
    
    4.0.0
    ---------------------
    - Add async support and circuit-breaker support for ContextualPolicy
    - Add manual control of circuit-breaker (reset and manual circuit isolation)
    - Add public reporting of circuit-breaker state, for health/performance monitoring
    - Add delegates on changes of circuit state - Thanks to @reisenberger
    
    3.0.0
    ---------------------
    - Add cancellation support for all async Policy execution - Thanks to @reisenberger
    
    2.2.7
    ---------------------
    - Fixes an issue where continueOnCapturedContext needed to be specified in two places (on action execution and Policy configuration), when wanting to flow async action execution on the captured context - Thanks to @reisenberger
    - Fixes excess line ending issues
    
    2.2.6
    ---------------------
    - Async sleep fix, plus added continueOnCapturedContext parameter on async methods to control whether continuation and retry will run on captured synchronization context - Thanks to @yevhen
    
    2.2.5
    ---------------------
    - Policies with a retry count of zero are now allowed
    
    2.2.4
    ---------------------
    - Add .NET Core support
    
    2.2.3
    ---------------------
    - Fix PCL implementation of `SystemClock.Reset`
    - Added ability to capture the results of executing a policy via `ExecuteAndCapture`
    
    2.2.2
    ---------------------
    - Added extra `NotOnCapturedContext` call to prevent potential deadlocks when blocking on asynchronous calls
    
    2.2.1
    ---------------------
    - Replaced non-blocking sleep implementation with a blocking one for PCL
    
    2.2.0
    ---------------------
    - Added Async Support (PCL)
    - PCL Profile updated from Profile78 ->  Profile 259
    - Added missing WaitAndRetryAsync overload
    
    2.1.0
    ---------------------
    - Added Async Support (.NET Framework 4.5 Only)
    
    2.0.0
    ---------------------
    - Added Portable Class Library
    - The "Polly" NuGet package is now no longer strongly named. The strongly named NuGet package is now "Polly-Signed"
    
    1.1.0
    ---------------------
    - Added additional overloads to Retry
    - Allow arbitrary data to be passed to policy execution

  • .NETFramework 0.0

    • No dependencies.
  • .NETPlatform 5.0

  • MonoAndroid 0.0

    • No dependencies.
  • MonoTouch 0.0

    • No dependencies.
  • Portable Class Library (.NETFramework 4.5, Windows 8.0, WindowsPhone 8.0, WindowsPhoneApp 8.1)

    • No dependencies.
  • Windows 0.0

    • No dependencies.
  • WindowsPhone 0.0

    • No dependencies.
  • WindowsPhoneApp 0.0

    • No dependencies.
  • Xamarin.iOS 0.0

    • No dependencies.

NuGet packages (1.1K)

Showing the top 5 NuGet packages that depend on Polly:

Package Downloads
Polly.Extensions.Http
Polly.Extensions.Http is an extensions package containing opinionated convenience methods for configuring Polly policies to handle transient faults typical of calls through HttpClient.
Microsoft.Extensions.Http.Polly
The HttpClient factory is a pattern for configuring and retrieving named HttpClients in a composable way. This package integrates IHttpClientFactory with the Polly library, to add transient-fault-handling and resiliency through fluent policies such as Retry, Circuit Breaker, Timeout, Bulkhead Isolation, and Fallback. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/860072f7781a10db10fa925ea5c86d91f1e6f2c4
Gremlin.Net
Gremlin.Net for Apache TinkerPop™ is a language variant and driver for .NET. Apache TinkerPop™ is a graph computing framework for both graph databases (OLTP) and graph analytic systems (OLAP). Gremlin is the graph traversal language of TinkerPop. It can be described as a functional, data-flow language that enables users to succinctly express complex traversals on (or queries of) their application's property graph. Gremlin.Net implements Gremlin within .NET. C# syntax has the same constructs as Java including "dot notation" for function chaining (a.b.c), round bracket function arguments (a(b,c)), and support for global namespaces (a(b()) vs a(__.b())). As such, anyone familiar with Gremlin-Java will immediately be able to work with Gremlin.Net. Moreover, there are a few added constructs to Gremlin.Net that make traversals a bit more succinct. Gremlin.Net is designed to connect to a "server" that is hosting a TinkerPop-enabled graph system. That "server" could be Gremlin Server https://tinkerpop.apache.org/docs/current/reference/#gremlin-server or a remote graph provider that exposes protocols by which Gremlin.Net can connect. Please see the Reference Documentation of Apache TinkerPop for more information on usage: https://tinkerpop.apache.org/docs/current/reference and use our Google Group gremlin-users if there are any questions: https://s.apache.org/c8hru The Gremlin language allows users to write highly expressive graph traversals and has a broad list of functions that cover a wide body of features. The Reference Documentation describes these functions and other aspects of the TinkerPop ecosystem including some specifics on Gremlin in .NET itself: https://s.apache.org/pgbwu Most of the examples found in the documentation use Groovy language syntax in the Gremlin Console. For the most part, these examples should generally translate to C# with some logical modification: https://s.apache.org/10v91 Given the strong correspondence between canonical Gremlin in Java and its variants like C#, there is a limited amount of C#-specific documentation and examples. This strong correspondence among variants ensures that the general Gremlin reference documentation is applicable to all variants and that users moving between development languages can easily adopt the Gremlin variant for that language. NOTE that versions suffixed with "-rc" are considered release candidates (i.e. pre-alpha, alpha, beta, etc.) and thus for early testing purposes only.
Polly.Caching.Memory
Polly.Caching.Memory is a plug-in for the .NET OSS resilience library Polly, supporting Microsoft.Extensions.Caching.Memory.MemoryCache as a provider for Polly's CachePolicy.
Takenet.Iris.Common
Iris common data types package

GitHub repositories (117)

Showing the top 5 popular GitHub repositories that depend on Polly:

Repository Stars
dotnet-architecture/eShopOnContainers
Cross-platform .NET sample microservices and container based application that runs on Linux Windows and macOS. Powered by .NET 5, Docker Containers and Azure Kubernetes Services. Supports Visual Studio, VS for Mac and CLI based environments with Docker CLI, dotnet CLI, VS Code or any other code editor.
dotnet/orleans
Orleans is a cross-platform framework for building distributed applications with .NET
microsoft/ailab
Experience, Learn and Code the latest breakthrough innovations with Microsoft AI
ThreeMammals/Ocelot
.NET core API Gateway
abpframework/abp
Open Source Web Application Framework for ASP.NET Core

Version History

Version Downloads Last updated
7.2.1 12,009,639 5/2/2020
7.2.0 11,096,176 11/27/2019
7.1.1 5,433,777 9/2/2019
7.1.0 18,465,395 3/13/2019
7.0.3 819,064 2/21/2019
7.0.2 507,358 2/11/2019
7.0.1 140,338 2/9/2019
6.1.2 4,472,690 11/27/2018
6.1.1 681,088 11/12/2018
6.1.0 5,000,574 7/15/2018
6.0.1 10,202,264 5/6/2018
6.0.0-v6alpha0001 5,437 5/3/2018
5.9.0 2,425,437 4/9/2018
5.8.0 2,521,921 1/31/2018
5.7.0 508,756 1/6/2018
5.6.1 733,748 11/29/2017
5.6.0 73,597 11/27/2017
5.5.0 655,049 11/3/2017
5.4.0 60,247 11/1/2017
5.3.1 1,671,075 8/6/2017
5.3.0 164,117 7/27/2017
5.2.0 321,215 6/28/2017
5.1.1-v5-x-cachealpha0001 51,707 6/2/2017
5.1.0 620,629 5/4/2017
5.0.6 613,960 2/11/2017
5.0.5 316,076 2/4/2017
5.0.3 242,552 1/6/2017
5.0.2-v5-0-alpha0001 14,349 11/22/2016
5.0.1-v5-0-alpha0001 14,749 10/25/2016
4.5.0-beta-netstandar-0001 25,783 9/6/2016
4.3.0 1,539,736 6/30/2016
4.2.4 31,079 6/17/2016
4.2.3 30,776 6/7/2016
4.2.2 13,023 6/2/2016
4.2.1 100,600 5/26/2016
4.2.0 124,498 4/14/2016
4.1.2 247,665 3/17/2016
4.1.1 28,212 3/11/2016
4.1.0 5,605 3/10/2016
4.0.0 70,432 2/18/2016
3.0.0 63,252 1/11/2016
2.2.7 35,111 1/1/2016
2.2.6 5,667 12/30/2015
2.2.5 13,547 12/28/2015
2.2.4 42,400 12/3/2015
2.2.3 150,137 8/9/2015
2.2.2 67,610 6/2/2015
2.2.1 57,717 2/15/2015
2.2.0 24,363 1/25/2015
2.1.0 23,707 11/28/2014
2.0.0 22,978 3/13/2014
1.1.0 7,133 6/16/2013
1.0.0 10,001 5/5/2013
Show less