reretry
An easy to use, but functional decorator for retrying on exceptions.
Decision gist · record as of 2026-08-14
Yes, if you need a simple, dependency-free retry decorator for sync or async functions. The library is well-documented and covers common retry patterns. However, the abandoned maintenance status (no updates since December 2022) means you should evaluate whether you can tolerate lack of future bug fixes or Python version support—acceptable for stable, low-risk retry logic but risky if you depend on active maintenance.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.7 or later.
- Optional: install the `decorator` package to preserve function signatures.
- Low friction: pure Python with no runtime dependencies, distributed as a wheel.
License · maintenance · safety
Apache License 2.0 (permissive) — Apache License 2.0 is permissive; you can use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.
last release 2022-12-18 (1335 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 164,764 downloads/mo, #10,539 on PyPI
Alternatives
Verify before relying
from reretry import retry
@retry(ValueError, tries=3, delay=1, backoff=2)
def unstable_operation():
# function body
pass
unstable_operation()- Whether the abandoned status and lack of updates since 2022-12-18 pose a risk for your use case.
- Performance characteristics when used with high-frequency retry scenarios or very large numbers of retries.
What it is and what it does
reretry is a decorator-based retry library that wraps function calls to automatically re-execute them on failure. It's a fork of the original `retry` package with added features: traceback logging on failed attempts, custom callback hooks after each failure, and support for async functions. The package has no external dependencies and works entirely with Python's standard library.
You decorate a function with @retry and configure exception types, maximum attempts, delay between retries, exponential backoff, jitter, and logging behavior. It also provides a retry_call() function for dynamic retry configuration at runtime. The library is straightforward to use for common patterns like network requests, API calls, or any operation prone to transient failures.
Use it for
- Retry HTTP requests or API calls with exponential backoff when facing transient network failures.
- Wrap database operations to automatically retry on connection timeouts or temporary unavailability.
- Retry async functions in concurrent applications where occasional failures are expected and recoverable.
- Add custom failure callbacks to log, alert, or clean up state after each failed attempt before retrying.
- Dynamically adjust retry behavior at runtime using retry_call() based on application logic or configuration.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need a simple, dependency-free retry decorator for sync or async functions.
The library is well-documented and covers common retry patterns. However, the abandoned maintenance status (no updates since December 2022) means you should evaluate whether you can tolerate lack of future bug fixes or Python version support—acceptable for stable, low-risk retry logic but risky if you depend on active maintenance.
Install
reretry on PyPI
Before you install
Low friction: pure Python with no runtime dependencies, distributed as a wheel. Maintenance status is abandoned (last release 2022-12-18, 1335 days ago), so expect no bug fixes or updates.
Requires Python 3.7 or later. Optional: install the `decorator` package to preserve function signatures.
License in practice
Apache License 2.0 is permissive; you can use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.
Quickstart
from reretry import retry
@retry(ValueError, tries=3, delay=1, backoff=2)
def unstable_operation():
# function body
pass
unstable_operation()
Verify before relying
- Whether the abandoned status and lack of updates since 2022-12-18 pose a risk for your use case.
- Performance characteristics when used with high-frequency retry scenarios or very large numbers of retries.
Package facts
| License | Apache License 2.0 permissive |
| Python support | Supports the current Python release >=3.7 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Abandoned 1,335 days since the last release |
| First released | |
| Downloads | 164,764 / month, #10,539 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Intended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonTopic :: Software Development |
Evidence: reretry-0.11.8-py2.py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “async retry decorator”
- reretryA decorator and function wrapper for retrying failed function calls…
- aioretryProvides a decorator-based retry mechanism for async functions in…
- eth-retryA decorator that automatically retries functions when they encounter…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.
See also aioretry · django-dbconn-retry · eth-retry · justbackoff · redo · retry · retry2 · waiter · retry-decorator · backoff-utils