Skip to main content

python-inspector is is a collection of utilities to collect PyPI package metadata and resolve packages dependencies.

Project description

Copyright (c) nexB Inc. and others. SPDX-License-Identifier: Apache-2.0 Homepage: https://github.com/nexB/python-inspector and https://www.aboutcode.org/

python-inspector is a collection of utilities to:

  • resolve PyPI packages dependencies

  • parse various requirements.txt files and setup.py files as input for resolving dependencies.

  • parse additionally various manifests and packages files such as Pipfile, pyproject.toml, poetry.lock and setup.cfg and legacy and current metadata file formats for eggs, wheels and sdist. These have not been wired with the command line yet.

  • query PyPI JSON and simple APIs for package information

It grew out of ScanCode toolkit to find and analyze PyPI archives and installed Python packages and their files.

The goal of python-inspector is to be a comprehensive library that can handle every style of Python package layouts, manifests and lockfiles.

Testing

  • Run the tests with:

    pytest -vvs
  • These are live tests to regenrate the tests with updated data run:

    PYINSP_REGEN_TEST_FIXTURES=yes pytest -vvs

Usage

  • Install with pip:

    pip install git+https://github.com/nexB/python-inspector
  • Run the command line utility with:

    python-inspector --help

Its companion libraries are:

  • pip-requirements-parser, a mostly correct pip requirements parsing library extracted from pip.

  • pkginfo2, a safer fork of pkginfo to parse various installed and extracted package layouts and their metadata files.

  • dparse2, a safer fork of dparse to parse various package manifests

  • resolvelib, the library used by pip for dependency resolution

  • packaging, the official Python packaging utility library to process versions, specifiers, markers and other packaging data formats.

  • importlib_metadata, the official Python utility library to process installed site-packages and their metadata formats.

  • packageurl-python to use Package URL to reference Python packages

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

python-inspector-0.12.0.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

python_inspector-0.12.0-py3-none-any.whl (92.9 kB view details)

Uploaded Python 3

File details

Details for the file python-inspector-0.12.0.tar.gz.

File metadata

  • Download URL: python-inspector-0.12.0.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for python-inspector-0.12.0.tar.gz
Algorithm Hash digest
SHA256 be4885ae16c8a4eb0f3b21cbea59be9a0b5b1102b87ee18c62aa604c3ca7e7ac
MD5 09c34b66df0320e71e5ac6fe8113ae86
BLAKE2b-256 0c93d881a929b2c405617ea5e2188ff6f89ad8fe9f75d9c92b78fdf703a06fb1

See more details on using hashes here.

File details

Details for the file python_inspector-0.12.0-py3-none-any.whl.

File metadata

File hashes

Hashes for python_inspector-0.12.0-py3-none-any.whl
Algorithm Hash digest
SHA256 601aca61cc6f31d2e12e63e2e55b25b6e61f6b06a28d6d6bfbf96f62ac353d46
MD5 4ae138cb7e180905033c77a7ad0f73f6
BLAKE2b-256 497d33e5e0971471db8d3f3acace8ab8ba86e2a70dff4dbe6c8b6d1b03ac67bc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page