Alternative tool for listing Python packages
Project description
Installation
Once you have installed Python and its packages manager pip, depending on if you want only this tool, the full set of PNU tools, or PNU plus a selection of additional third-parties tools, use one of these commands:
pip install pnu-pipinfo
pip install PNU
pip install pytnix
PIPINFO(1)
NAME
pipinfo - Alternative tool for listing Python packages
SYNOPSIS
pipinfo [-l|--check-latest] [-v|--check-vulns] [-c|--no-color] [-p|--no-progress] [-i|--info] [-S|--system] [-U|--user] [-I|--issues] [-O|--outdated] [-L|--latest|--uptodate] [-V|--vulnerable] [-H|--healthy|--sane] [-N|--not-required] [-R|--required] [--debug] [--help|-?] [--version] [--] [directory ...]
DESCRIPTION
The pipinfo utility provides an alternative to the "pip list", "pip list --outdated", "pip show" and "pip-audit" commands.
It shows all the available packages in the Python PATH (not just the latest version) or given directories (even for different Python versions), differenciates user and system-wide packages (user packages are written in bright style), show duplicate packages (name in yellow foreground, including user versions shadowing system ones), shows each package summary (avoiding the use of "pip show" to discover what a package is about), and prints the count of installed packages.
With the -l|--check-latest option, it will also use a Python Index Package web service to check for the latest versions available, using a simple color (version in yellow foreground) or visual scheme to show outdated packages and count them.
With the -v|--check-vulns option, it will also use another Python Index Package web service to check for known vulnerabilities in your packages versions, using a simple color (version in red background) or visual scheme to show vulnerable packages and count them.
The color or visual scheme should be enough to tell you to upgrade the indicated packages, however you can print additional details about new versions available and vulnerabilities with the -i|--info option.
You can disable the color output with the -c|--no-color option, and the progress meter with the -p|--no-progress option.
Finally you can restrict the list to the user or system packages, outdated or up-to-date packages, vulnerable or sane packages, required or not packages with the options in upper case.
The most useful one is probably the -I|--issues option which will select the outdated or vulnerable packages only.
OPTIONS
Options | Use |
---|---|
-l|--check-latest | Check latest versions |
-v|--check-vulns | Check vulnerabilities |
-c|--no-color | Toggle off color output |
-p|--no-progress | Toggle off progress meter |
-i|--info | Print detailed info on versions & vulnerabilities |
-S|--system | Select only system packages |
-U|--user | Select only user packages |
-L|--latest|--uptodate | Select only latest packages (implies -l) |
-O|--outdated | Select only outdated packages (implies -l) |
-H|--healthy|--sane | Select only healthy packages (implies -v) |
-V|--vulnerable | Select only vulnerable packages (implies -v) |
-R|--required | Select only required packages |
-N|--not-required | Select only not required packages |
-I|--issues | Select all packages with issues (-O & -V) |
--debug | Enable debug mode |
--help|-? | Print usage and a short help message and exit |
--version | Print version and exit |
-- | Options processing terminator |
ENVIRONMENT
The PIPINFO_DEBUG environment variable can be set to any value to enable debug mode. It's mostly used to display and debug the package requirements read from the Python packages metadata files.
FILES
The pipinfo utility will attempt to maintain a caching directory for the web services it uses, where the individual files will be re-used within the next 24 hours.
This directory will be located in one of the following places:
- Windows:
- %LOCALAPPDATA%\cache\pipinfo
- %TMP%\cache\pipinfo
- Unix:
- ${HOME}/.cache/pipinfo
- ${TMP}/.cache/pipinfo
EXIT STATUS
The pipinfo utility exits 0 on success, and >0 if an error occurs.
EXAMPLES
Use the following command to print a package listing after checking for the existence of new versions or vulnerabilities:
pipinfo -lv
Use the following command to restrict the list to outdated and vulnerable packages with details but no progress meter:
pipinfo -Iip
SEE ALSO
STANDARDS
The pipinfo utility is not a standard UNIX command.
It tries to follow the PEP 8 style guide for Python code.
PORTABILITY
Tested OK under Windows.
HISTORY
This implementation was made for the PNU project, both for my personal convenience and also to investigate some pip issues with the pip list --outdated option.
LICENSE
It is available under the 3-clause BSD license.
AUTHORS
CAVEATS
The conditions on package dependencies aren't taken into account (yet). "pipinfo -N" will nonetheless give appoximately the same results than "pip list --not-required".
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pnu-pipinfo-0.9.1.tar.gz
.
File metadata
- Download URL: pnu-pipinfo-0.9.1.tar.gz
- Upload date:
- Size: 17.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c5cf88097a0960611f7dbe15aa279cb2f14848ed3d68918efc9b1b02f29ac47b |
|
MD5 | 1b47b165d0df16aafe85965058980927 |
|
BLAKE2b-256 | da45806ed175769b3b8d05293fc8a62973426fd2adcc3c84a6391fb9965c2fe0 |
File details
Details for the file pnu_pipinfo-0.9.1-py3-none-any.whl
.
File metadata
- Download URL: pnu_pipinfo-0.9.1-py3-none-any.whl
- Upload date:
- Size: 15.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 419aaf412cd65dcd812ed408dd571855c74b54de2c53b95e726dad95452eda89 |
|
MD5 | 52e1cc3e04c0ad0c94e1ed37941b25e1 |
|
BLAKE2b-256 | b13be8b050afe145ef90e4a0fbbcafd3c001e285d2e2490b091434eaa310d9ce |