You're Invited:Meet the Socket Team at RSAC and BSidesSF 2026, March 23–26.RSVP
Socket
Book a DemoSign in
Socket

tenacity

Package Overview
Dependencies
Maintainers
2
Versions
61
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

tenacity - pypi Package Compare versions

Comparing version
9.0.0
to
9.1.2
+34
.github/workflows/release.yml
name: upload release to PyPI
on:
release:
types:
- published
jobs:
pypi-publish:
name: upload release to PyPI
runs-on: ubuntu-latest
environment: release
permissions:
id-token: write
contents: write
steps:
- uses: actions/checkout@v4.2.2
with:
fetch-depth: 0
fetch-tags: true
- uses: actions/setup-python@v5.5.0
with:
python-version: 3.13
- name: Install build
run: |
pip install setuptools-scm wheel
- name: Build
run: |
python setup.py sdist bdist_wheel
- name: Publish package distributions to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
---
fixes:
- |
Added `re.Pattern` to allowed match types.
+6
-6

@@ -17,8 +17,6 @@ name: Continuous Integration

timeout-minutes: 20
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
strategy:
matrix:
include:
- python: "3.8"
tox: py38
- python: "3.9"

@@ -31,5 +29,7 @@ tox: py39

- python: "3.12"
tox: py312,py312-trio
tox: py312
- python: "3.12"
tox: pep8
- python: "3.13"
tox: py313,py313-trio
- python: "3.11"

@@ -39,3 +39,3 @@ tox: mypy

- name: Checkout 🛎️
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
with:

@@ -45,3 +45,3 @@ fetch-depth: 0

- name: Setup Python 🔧
uses: actions/setup-python@v5.1.0
uses: actions/setup-python@v5.5.0
with:

@@ -48,0 +48,0 @@ python-version: ${{ matrix.python }}

@@ -13,7 +13,7 @@ queue_rules:

- author = dependabot[bot]
- "check-success=test (3.8, py38)"
- "check-success=test (3.9, py39)"
- "check-success=test (3.10, py310)"
- "check-success=test (3.11, py311)"
- "check-success=test (3.12, py312,py312-trio)"
- "check-success=test (3.12, py312)"
- "check-success=test (3.13, py313,py313-trio)"
- "check-success=test (3.12, pep8)"

@@ -20,0 +20,0 @@

@@ -1,4 +0,4 @@

Metadata-Version: 2.1
Metadata-Version: 2.4
Name: tenacity
Version: 9.0.0
Version: 9.1.2
Summary: Retry code until it succeeds

@@ -14,3 +14,2 @@ Home-page: https://github.com/jd/tenacity

Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9

@@ -20,8 +19,15 @@ Classifier: Programming Language :: Python :: 3.10

Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Utilities
Requires-Python: >=3.8
Requires-Python: >=3.9
License-File: LICENSE
Provides-Extra: doc
Requires-Dist: reno; extra == "doc"
Requires-Dist: sphinx; extra == "doc"
Provides-Extra: test
License-File: LICENSE
Requires-Dist: pytest; extra == "test"
Requires-Dist: tornado>=4.5; extra == "test"
Requires-Dist: typeguard; extra == "test"
Dynamic: license-file
Tenacity is a general-purpose retrying library to simplify the task of adding retry behavior to just about anything.

@@ -14,3 +14,3 @@ [build-system]

indent-width = 4
target-version = "py38"
target-version = "py39"

@@ -17,0 +17,0 @@ [tool.mypy]

@@ -16,3 +16,2 @@ [metadata]

Programming Language :: Python :: 3 :: Only
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9

@@ -22,2 +21,3 @@ Programming Language :: Python :: 3.10

Programming Language :: Python :: 3.12
Programming Language :: Python :: 3.13
Topic :: Utilities

@@ -27,3 +27,3 @@

install_requires =
python_requires = >=3.8
python_requires = >=3.9
packages = find:

@@ -30,0 +30,0 @@

@@ -1,4 +0,4 @@

Metadata-Version: 2.1
Metadata-Version: 2.4
Name: tenacity
Version: 9.0.0
Version: 9.1.2
Summary: Retry code until it succeeds

@@ -14,3 +14,2 @@ Home-page: https://github.com/jd/tenacity

Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9

@@ -20,8 +19,15 @@ Classifier: Programming Language :: Python :: 3.10

Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Utilities
Requires-Python: >=3.8
Requires-Python: >=3.9
License-File: LICENSE
Provides-Extra: doc
Requires-Dist: reno; extra == "doc"
Requires-Dist: sphinx; extra == "doc"
Provides-Extra: test
License-File: LICENSE
Requires-Dist: pytest; extra == "test"
Requires-Dist: tornado>=4.5; extra == "test"
Requires-Dist: typeguard; extra == "test"
Dynamic: license-file
Tenacity is a general-purpose retrying library to simplify the task of adding retry behavior to just about anything.

@@ -14,3 +14,3 @@ .editorconfig

.github/workflows/ci.yaml
.github/workflows/deploy.yaml
.github/workflows/release.yml
doc/source/api.rst

@@ -23,2 +23,3 @@ doc/source/changelog.rst

releasenotes/notes/add-async-actions-b249c527d99723bb.yaml
releasenotes/notes/add-re-pattern-to-match-types-6a4c1d9e64e2a5e1.yaml
releasenotes/notes/add-reno-d1ab5710f272650a.yaml

@@ -25,0 +26,0 @@ releasenotes/notes/add-retry_except_exception_type-31b31da1924d55f4.yaml

@@ -79,3 +79,3 @@ # Copyright 2016-2018 Julien Danjou

# Import all built-in after strategies for easier usage.
# Import all built-in before sleep strategies for easier usage.
from .before_sleep import before_sleep_log # noqa

@@ -92,2 +92,4 @@ from .before_sleep import before_sleep_nothing # noqa

from typing_extensions import Self
from . import asyncio as tasyncio

@@ -260,3 +262,3 @@ from .retry import RetryBaseT

] = _unset,
) -> "BaseRetrying":
) -> "Self":
"""Copy this object with some parameters changed if needed."""

@@ -263,0 +265,0 @@ return self.__class__(

@@ -28,3 +28,3 @@ # Copyright 2016 Julien Danjou

def before_sleep_nothing(retry_state: "RetryCallState") -> None:
"""Before call strategy that does nothing."""
"""Before sleep strategy that does nothing."""

@@ -37,3 +37,3 @@

) -> typing.Callable[["RetryCallState"], None]:
"""Before call strategy that logs to some logger the attempt."""
"""Before sleep strategy that logs to some logger the attempt."""

@@ -40,0 +40,0 @@ def log_it(retry_state: "RetryCallState") -> None:

@@ -210,3 +210,3 @@ # Copyright 2016–2021 Julien Danjou

message: typing.Optional[str] = None,
match: typing.Optional[str] = None,
match: typing.Union[None, str, typing.Pattern[str]] = None,
) -> None:

@@ -246,3 +246,3 @@ if message and match:

message: typing.Optional[str] = None,
match: typing.Optional[str] = None,
match: typing.Union[None, str, typing.Pattern[str]] = None,
) -> None:

@@ -249,0 +249,0 @@ super().__init__(message, match)

[tox]
envlist = py3{8,9,10,11,12,12-trio}, pep8, pypy3
# we only test trio on latest python version
envlist = py3{9,10,11,12,13,13-trio}, pep8, pypy3
skip_missing_interpreters = True

@@ -13,5 +14,5 @@

commands =
py3{8,9,10,11,12},pypy3: pytest {posargs}
py3{8,9,10,11,12},pypy3: sphinx-build -a -E -W -b doctest doc/source doc/build
py3{8,9,10,11,12},pypy3: sphinx-build -a -E -W -b html doc/source doc/build
py3{8,9,10,11,12,13},pypy3: pytest {posargs}
py3{8,9,10,11,12,13},pypy3: sphinx-build -a -E -W -b doctest doc/source doc/build
py3{8,9,10,11,12,13},pypy3: sphinx-build -a -E -W -b html doc/source doc/build

@@ -18,0 +19,0 @@ [testenv:pep8]

name: Release deploy
on:
release:
types:
- published
jobs:
publish:
timeout-minutes: 20
runs-on: ubuntu-latest
steps:
- name: Checkout 🛎️
uses: actions/checkout@v4.1.7
with:
fetch-depth: 0
- name: Setup Python 🔧
uses: actions/setup-python@v5.1.0
with:
python-version: 3.11
- name: Build 🔧 & Deploy 🚀
env:
PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }}
run: |
pip install tox twine wheel
echo -e "[pypi]" >> ~/.pypirc
echo -e "username = __token__" >> ~/.pypirc
echo -e "password = $PYPI_TOKEN" >> ~/.pypirc
python setup.py sdist bdist_wheel
twine upload dist/*