Vendorize packages from PyPI
python-vendorize allows pure-Python dependencies to be vendorized: that is, the Python source of the dependency is copied into your own package. Best used for small, pure-Python dependencies to avoid version conflicts when other packages require a different version of the same dependency.
Dependencies you want vendorizing should be specified in vendorize.toml. target should be a string containing the path where vendorized dependencies should be placed, relative to the directory that vendorize.toml is in. packages should be a list of strings containing the dependencies. Each of these strings can be anything that pip would understand, such as a package name, a package name with version constraints or an URL. Dependencies can then be vendorized using python-vendorize.
For instance, suppose I want to vendorize six so it can be used from the package hello. The directory structure would be something like:
- hello - __init__.py - setup.py - vendorize.toml
vendorize.toml might look something like:
target = "hello/_vendor" packages = [ "six", ]
I can then run python-vendorize in the same directory as vendorize.toml. The directory structure would then be something like:
- hello - _vendor - six.dist-info - ... - __init__.py - six.py - __init__.py - setup.py - vendorize.toml
In hello/__init__.py, six can be imported from _vendor:
from ._vendor import six
pip install vendorize
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size vendorize-0.2.1-py2.py3-none-any.whl (12.9 kB)||File type Wheel||Python version 2.7||Upload date||Hashes View|
|Filename, size vendorize-0.2.1.tar.gz (10.6 kB)||File type Source||Python version None||Upload date||Hashes View|
Hashes for vendorize-0.2.1-py2.py3-none-any.whl