pkgscan
Scan requirements.txt, package.json, and Cargo.toml for outdated packages and known CVEs — no API keys required.
Uses OSV for vulnerability data and PyPI/npm/crates.io for latest version checks.
Install
pip install pkgscan
Usage
# Scan a single file
pkgscan requirements.txt
# Auto-discover all dependency files under a directory
pkgscan --dir .
# Skip CVE checks (faster)
pkgscan requirements.txt --skip-vulns
# Only show outdated packages
pkgscan --dir . --only-outdated
# Only show packages with known CVEs
pkgscan --dir . --only-vulns
Example output
requirements.txt (12 packages)
────────────────────────────────────────────────────────────────────────
requests 2.28.0 → 2.31.0 [CVE-2023-32681]
flask 2.2.5 → 3.0.0
click 8.1.3 8.1.7 ✓ up to date
Summary: 2 outdated, 1 vulnerable
Exit code is 0 when all packages are up-to-date and vulnerability-free, 1 otherwise — handy for CI.
Supported files
| File | Ecosystem |
|---|---|
requirements.txt / requirements-*.txt |
PyPI |
pyproject.toml |
PyPI |
package.json |
npm |
Cargo.toml |
crates.io |
CI integration
- name: Scan dependencies
run: pkgscan --dir . --skip-vulns
License
MIT
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pkgscan-0.2.0.tar.gz
(9.8 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pkgscan-0.2.0.tar.gz.
File metadata
- Download URL: pkgscan-0.2.0.tar.gz
- Upload date:
- Size: 9.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0978443a3d5ccc13f97b394b13781cf7fc1d0d1f23b97c5fac312c438152d150
|
|
| MD5 |
114cb0dd3af0157067a3b4101ca912d2
|
|
| BLAKE2b-256 |
b197204512a971dabb0dafd2fa3841086982ac4cbdb82974b7d2e4b27544d12d
|
File details
Details for the file pkgscan-0.2.0-py3-none-any.whl.
File metadata
- Download URL: pkgscan-0.2.0-py3-none-any.whl
- Upload date:
- Size: 7.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a329a1baaa981d5c3c369f3305de0e72e44ec3ac596e5334b5f524db1f1bcc0
|
|
| MD5 |
93dea7b7c4d7f1323da9db4ade769ac0
|
|
| BLAKE2b-256 |
6f610eb24f9f249c870967b87f00666dc1e935342a5c1513db456650be73f0f6
|