Skip to main content

Learn after-install weight of any Python package including its dependencies.

Project description

Recursive Package Size

This is a fork of https://github.com/qertoip/python-package-size.

The main difference to the original is that this fork uses uv instead of pip for temporarily installing the packages, which boost performance by a lot.

Learn after-install weight of any Python package including its dependencies.

The tool will loop over your project dependencies, install each dependency in its own venv and report the actual size including dependency tree.

This is useful for optimizing dependencies of your large applications, libraries or containers.

This is especially useful in machine learning context, where dependencies easily explode into gigabytes.

Installation

  • pip: pip install python-package-size-uv
  • pix: pipx install python-package-size-uv

Usage

python-package-size-uv -r pyproject.toml

or

python-package-size-uv -r requirements.txt

Example output

Determined package sizes:

        mypy:   43.7 MB
      awscli:   34.0 MB
       black:    6.7 MB
      pylint:    6.5 MB
      pytest:    2.5 MB

Additionally, the result is written in a csv file with default name package_sizes.csv.

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_package_size_uv-0.5.2.tar.gz (3.8 kB view details)

Uploaded Source

Built Distribution

python_package_size_uv-0.5.2-py3-none-any.whl (4.4 kB view details)

Uploaded Python 3

File details

Details for the file python_package_size_uv-0.5.2.tar.gz.

File metadata

  • Download URL: python_package_size_uv-0.5.2.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.11.9 Linux/6.5.0-1022-azure

File hashes

Hashes for python_package_size_uv-0.5.2.tar.gz
Algorithm Hash digest
SHA256 8698b69b07d4655651b2f83cc624793220d3b2a51d7af9010a81915423e966bc
MD5 ee8f23aa85420f82083fba25842827fa
BLAKE2b-256 1e4fd796676d6502dcac318f8994bd5142e1bf3b1c739b120c468beb3f5d1114

See more details on using hashes here.

File details

Details for the file python_package_size_uv-0.5.2-py3-none-any.whl.

File metadata

File hashes

Hashes for python_package_size_uv-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 785b53e28deb25f9b8fa577870b860b4c21c02c07e985305410efeb768292a75
MD5 5750ccf7c878968fcd88be26bc6c7fe1
BLAKE2b-256 be3e7128f4bcd2aeb287799dd5f6342a9911dde590f51a0c50d57835727ce19d

See more details on using hashes here.

Supported by

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