Add a pip element
Packaging is a big topic in the Python community these days. Things are evolving, but a consensus seems to have formed around the path forward.
With PEP 518, Pip is becoming the primary tool to install Python modules. In turn, Pip will use the right underlying tool for the job. (distutils, setuptools, flint, ...)
Given all this, it makes sense to have a pip element in BuildStream.
This element installs a single Python module, telling Pip not to go and download its dependencies, to make builds reproducible and not rely on the network during builds.
By default it will use the pip
command which generally points to Pip
for Python 2. Users can override the "pip" variable, for example to use
the pip3
command, which generally points to Pip for Python 3.