outdated
Check if a version of a PyPI package is outdated
What it is and what it does
Outdated is a lightweight library that checks whether a given version of a PyPI package is the latest available. It queries PyPI's JSON API, caches results on disk for 24 hours to avoid repeated requests, and can optionally run the check in a background thread to avoid blocking. The main entry point is `warn_if_outdated()`, which emits a warning if the version is outdated; a lower-level `check_outdated()` function returns a boolean and the latest version string for programmatic use. The library depends on setuptools, littleutils, and requests.
The package is designed for library authors to embed version-check warnings in their own packages. It retries failed HTTP calls up to 3 times and allows configuration via environment variables to suppress warnings or raise exceptions instead. Because the package is abandoned (last release October 2022, last commit July 2023), it will not receive updates for PyPI API changes or Python compatibility issues.
Use it for:
- Embed a version check in a library's startup to warn users when they are running an outdated release.
- Build a CI/CD step that programmatically detects whether the current package version is behind the latest PyPI release.
- Monitor installed packages in a long-running application without blocking execution by using background thread mode.
- Query a private or alternative PyPI repository by passing a custom repository_url format string.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Checks whether a given version of a PyPI package is outdated by querying PyPI, with results cached for 24 hours and optional background execution.
Yes, if you need a simple, low-friction way to check package versions and can tolerate the abandoned status. The library is stable and has no known vulnerabilities, but you should not expect updates if PyPI's API changes or if you encounter bugs. Best suited for embedding in library startup code or one-off version checks; for production monitoring of many packages, consider an actively maintained alternative.
Install
outdated on PyPI
pip
pip install outdateduv
uv add outdatedpoetry
poetry add outdatedInstalling outdated
Before you install
Low install friction with three lightweight runtime dependencies. However, the package is abandoned—last release was 2022-10-29 and last commit 2023-07-10—so it will not receive updates or bug fixes.
License in practice
MIT license is permissive and poses no restrictions on use, modification, or distribution in commercial or private projects.
Quickstart
pip install outdated
from outdated import warn_if_outdated
warn_if_outdated('my-package-name', '1.2.3')
The package name argument must exactly match the PyPI package name (e.g., 'my-package-name' not 'my_package_name'); library authors must ensure the version passed matches the version in setup.py.
Verify before relying
- Whether the PyPI JSON API endpoint used by the package remains stable and accessible.
- Compatibility with modern Python versions beyond 3.9, given the package is abandoned.
- Whether the 24-hour disk cache location is configurable or suitable for all deployment environments.
Package facts
| License | MIT (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — setuptools, littleutils, requests |
| Maintenance | abandoned — 1,385 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 160,659/month — #10,654 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: outdated-0.2.2-py2.py3-none-any.whl
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
etelemetryEtelemetry is a lightweight Python client that…
permissive · top 15,000 on PyPI
gym-noticesDelivers notices about Gym library versions to…
permissive · top 5,000 on PyPI
pip-checkpip-check displays all installed packages and…
permissive · top 15,000 on PyPI
versioningitAutomatically determines your Python package's…
permissive · top 5,000 on PyPI
pylibyearMeasures how outdated your project's…
permissive · top 15,000 on PyPI
pip-reviewpip-review is a command-line wrapper around pip…
permissive · top 15,000 on PyPI
asyncioThis package is an obsolete backport of…
permissive · top 1,000 on PyPI
pip-upgraderAn interactive CLI tool that upgrades Python…
permissive · top 15,000 on PyPI
bumpAutomatically increments version numbers in…
permissive · top 15,000 on PyPI
pytest-pep8A pytest plugin that integrates PEP8 style…
permissive · top 15,000 on PyPI