Welcome to dependency-metrics
Summary
A command line tool to analyze and monitor how up-to-date dependencies of a project are. For more detail, see the Usage section below.
Supported Package Managers
- pip or uv
- yarn
Supported Application Monitoring Platforms
- DataDog
Usage
Run the metrics tool from within the repository you wish to generate metrics for.
Default behavior
All that is needed is the package manager you want to generate metrics for, and metrics will output a table detailing
how out-of-date each dependency is.
$ metrics pip
Behind Package Latest Version
0.1.0 my-depedency 1.1.0 1.0.0
2.0.0 my-other-dependency 3.2.1 1.2.3
--stats option
Use the --stats option to generate a simple dictionary that displays the total number of outdated dependencies, as well as a breakdown detailing the number of outdated dependencies for each version type.
$ metrics pip --stats
Total: 5
Outdated: 2
Multi-Major: 1
Major: 0
Minor: 1
Patch: 0
Unknown: 0
--send option
NOTE: Additional setup is required to successfully post stats to a supported backend. See platform setup for further information.
Use the --send option to post the same metrisc generated by --stats to an application monitoring platform.
$ metrics pip --send
Application Monitoring Platform Setup
This is required to make use of the --send option, enabling the ability to send generated stats to a backend of your choice.
DataDog
Set the DATADOG_API_KEY and DATADOG_APP_KEY environment variables in the environment you will run metrics <package_manager> --send from.
Development
Requirements
pip install -e . # installs dependencies defined in pyproject.toml
pip install -e .[test] # installs test dependencies -- '.[test]' if using zsh
Tests
Must install test dependencies first. See requirements above.
nose2 # runs all tests
nose2 dot.path.to.file.class.or.test # runs specific test
Publishing to PyPI
To publish a new release on pypi.org:
- Update
__version__in dependency_metrics/__init__.py. - Create and push a git tag with the new version number.
git tag vX.Y.Z git push --tags
- Wait for the pypi.yml workflow to build and publish the new release.
A dev release is published on test.pypi.org on each new push or merge to main. A dev release may also be published on-demand for any branch with workflow dispatch.
Release files for dependency-metrics 0.1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| dependency_metrics-0.1.3.tar.gz | 13.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dependency_metrics-0.1.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 25.4 kB
Release files / dependency_metrics-0.1.3.tar.gz
| Download URL | dependency_metrics-0.1.3.tar.gz |
|---|---|
| Size | 13.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7c9ab734a420d4491ed8bb75b4a17bbf94395d7d3e74bb98198dee9901b118b6
|
|
BLAKE2b-256 checksum How to use checksums |
0ced2a3f846263db95b1734f6bd55dda17b12966f33a0fa2fd2bb54c90dd8689
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 7, 2025.
Transparency logRelease files / dependency_metrics-0.1.3-py3-none-any.whl
| Download URL | dependency_metrics-0.1.3-py3-none-any.whl |
|---|---|
| Size | 12.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2fc46d13d426c54efceadc2a753c31fd59c4a2e1dedd740ead60284fc16b5065
|
|
BLAKE2b-256 checksum How to use checksums |
04778c922caca0f8c972ba3b52c41ee9929578ea2f905e527f28cb135b4def60
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 7, 2025.
Transparency log