{"repo":"connor4312/cockatiel","free":true,"listed":false,"github":"https://github.com/connor4312/cockatiel","clone":"git clone https://github.com/connor4312/cockatiel.git","description":"🐦 A resilience and fault-handling library. Supports Backoffs, Retries, Circuit Breakers, Timeouts, Bulkhead Isolation, and Fallbacks.","language":"TypeScript","stars":1814,"topics":["circuit-breaker","bulkhead","cancellationtoken","backoffs","cancellation","fault-handling","bulkhead-isolation","typescript","nodejs"],"license":"MIT","category":"dev-tools","readme_excerpt":"Cockatiel Cockatiel is resilience and transient-fault-handling library that allows developers to express policies such as Retry, Circuit Breaker, Timeout, Bulkhead Isolation, and Fallback. .NET has Polly, a wonderful one-stop shop for all your fault handling needs--I missed having such a library for my JavaScript projects, and grew tired of copy-pasting retry logic between my projects. Hence, this module! Then go forth with confidence: I recommend reading the Polly wiki for more information for details and mechanics around the patterns we provide. Table of Contents - IPolicy (the shape of a policy) - Policy - handleAll - [ handleType(ctor[, filter]) / policy.orType(ctor[, filter]) ](#handletypector-filter--policyortypector-filter) - handleWhen(filter) / policy.orWhen(filter) - [ handleResultType(ctor[, filter]) / policy.orResultType(ctor[, filter]) ](#handleresulttypector-filter--policyorresulttypector-filter) - handleWhenResult(filter) / policy.orWhenResult(filter) - wrap(...policies) - @usePolicy(policy) - noop - Events - [ Event.toPromise(event[, signal]) ](#eventtopromiseevent-signal) - Event.once(event, callback) - retry(policy, options) - Backoffs - ConstantBackoff - ExponentialBackoff - IterableBackoff - DelegateBackoff - [ retry.execute(fn[, signal]) ](#retryexecutefn-signal) - retry.dangerouslyUnref() - retry.onRetry(callback) - retry.onSuccess(callback) - retry.onFailure(callback) - retry.onGiveUp(callback) - [ circuitBreaker(policy, { halfOpenAfter, breaker[, halfO","default_branch":null,"files":null,"tree":[],"storefront":"/r/connor4312","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/connor4312/cockatiel/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}