Code Shipping - Archive (Distribution) in Python
Packages (or better Distribution package) are the result of the packaging of a project that may contains one or more (regular) package
Not to confound with regular package which are parents of modules. One distribution package may contains several regular package.
A package is a compressed tarball file that contains:
Python - Source Distribution (sdists)
Wheel and Egg are both binary packaging formats created from compiled python file.
Wheel is currently considered the standard for built and binary packaging for Python.
First update the tools
python -m pip install --upgrade pip setuptools wheel
You can install your package:
pip install package_name
pip install "requirement-specifiers"
# Example
pip install "pyspark == 2.2.2"
easy_install package
cd /rootOfProject
python setup.py install
# or
setup.py install
pip install https://github.com/myName/myPackage/tarball/master
pip install https://github.com/myName/myPackage/tarball/X.X.X
curl --location --output myPackage-X.X.X.tar.gz https://github.com/myName/myPackage/tarball/X.X.X
tar xvfz myPackage-X.X.X.tar.gz
cd myPackage
# as script
python myScript.py args
# as package
pip install .
pip install -e git+https://git.repo/some_pkg.git#egg=SomeProject # from git
pip install -e hg+https://hg.repo/some_pkg.git#egg=SomeProject # from mercurial
pip install -e svn+svn://svn.repo/some_pkg/trunk/#egg=SomeProject # from svn
pip install -e git+https://git.repo/some_pkg.git@feature#egg=SomeProject # from a branch
where: VCS:
Install location
default global site-packages directory
(for instance /usr/lib/python2.7/site-packages)
GLOBALE_HOME/pythonX.X/site-packages/
This is the pip default
Example: install global of myPackage
pip install myPackage
The user location :
The package are then installed at USER_HOME/pythonX.X/site-packages/
To install in a user location, use the --user option of pip
Example:
export PYTHONUSERBASE=$HOME
pip install --user virtualenv
When working in a virtual environment, the package will be installed in it. See Python - virtualenv (Python Environment / venv)
See the –update option of pip
Example: upgrade the setuptools and wheel package
python3 -m pip install --user --upgrade setuptools wheel
Packaging task management, see setup.py cli
See Python - Pypa (Python Packaging Authority)