[Distutils] Making pip and PyPI work with conda packages
Nick Coghlan
ncoghlan at gmail.com
Wed May 20 07:25:38 CEST 2015
On 18 May 2015 at 14:32, David Cournapeau <cournape at gmail.com> wrote:
> On Mon, May 18, 2015 at 9:05 AM, Nick Coghlan <ncoghlan at gmail.com> wrote:
>> Indirection via pip injects the usage of setuptools even for plain
>> distutils projects, and generates https://www.python.org/dev/peps/pep-0376/
>> compliant metadata by default.
>
>
> Note that some packages will push hard against injecting setuptools, at
> least until it does not offer a way to prevent from installing as an egg
> directory. Most of the core scientific packages avoid setuptools because of
> this.
pip changes the default behaviour of setuptools to be more in line
with the behaviour of plain distutils (e.g. forcing
"--single-version-externally-managed").
This means that "pip install X" consistently gives setuptools levels
of capabilities in terms of dependency management, without defaulting
to installing things as egg archives or directories (modulo the rough
edges around setup-requires).
As Donald notes, "pip install" also abstracts away any future
invocation of a metadata based pluggable build system, while
"./setup.py install" assumes the distutils-based status quo will
remain in place forever.
Cheers,
Nick.
--
Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia
More information about the Distutils-SIG
mailing list