PyPI Status
pypi-status lists projects and releases published by a PyPI organization or
user. The owner defaults to kaizten.
The report includes verified ownership, project and release publication dates, latest versions, summaries, licenses, Python requirements, distribution files, yanked releases, vulnerabilities, and recent package downloads.
Requirements
- Python 3.10 or newer
- Network access to
pypi.organdpypistats.org
The package has no third-party runtime dependencies.
Usage
Run the source-tree script with the default owner:
./pypi-status.py
Select another PyPI organization or username:
./pypi-status.py --organization pypi
Print structured JSON:
./pypi-status.py --format json
After installation, use the same options with:
pypi-status --organization kaizten
Ownership discovery
The command first checks for a public PyPI Organization with the requested
slug. When no organization exists, it treats the value as a PyPI username. The
default kaizten value currently resolves to the user account that owns the
Kaizten projects.
Organization projects are discovered from their public PyPI profile. Username
projects use PyPI's user_packages XML-RPC method because PyPI does not provide
a replacement user-project listing API. That method is deprecated by PyPI but
remains available. Every discovered project is checked against the verified
ownership fields in PyPI's project JSON response. Stale names for deleted
projects can remain in that legacy response; the command filters them out by
checking that the current project JSON still exists.
Download counts
PyPI's project JSON contains a legacy downloads field whose values are always
-1. This command ignores it and uses the public PyPI Stats API to report
last-day, last-week, and last-month package totals excluding known mirrors.
PyPI Stats does not provide downloads by release version, so release rows do not claim a per-version download count. A project that has not entered the PyPI Stats dataset yet is reported with zero recent downloads. Transient API rate-limit and server responses are retried before being reported as errors.
Build and publish
Build and validate the wheel and source distribution:
./build-package.sh
Publish an already built version to PyPI:
./publish-pypi.sh
PyPI does not allow an existing filename/version to be uploaded again. Increase
the version in pyproject.toml before publishing a replacement release.
Metadata
Release files for pypi-status 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pypi_status-0.0.1.tar.gz | 11.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pypi_status-0.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.4 kB
Release files / pypi_status-0.0.1.tar.gz
| Download URL | pypi_status-0.0.1.tar.gz |
|---|---|
| Size | 11.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
246750103705436c760ed07d75552ee3319edba1caa5b8f32f13978dd6050ac8
|
|
BLAKE2b-256 checksum How to use checksums |
60146560232afcd79591188bbda288b9c34b41f91cf4e749f6747ddec3e0d366
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.4
|
Release files / pypi_status-0.0.1-py3-none-any.whl
| Download URL | pypi_status-0.0.1-py3-none-any.whl |
|---|---|
| Size | 8.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a7b3a406d66c67b296d27487e96e49338b806012591460a49709aa999fa91413
|
|
BLAKE2b-256 checksum How to use checksums |
36db936ea65218f070328b85bf5662a5795371ad1a97c7f307381bcc81757eb0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.4
|