[Matplotlib-devel] matplotlib keeps installing it's own (older) numpy

Paul Hobson pmhobson at gmail.com
Fri Sep 11 19:44:44 CEST 2015

On Fri, Sep 11, 2015 at 10:09 AM, Nathaniel Smith <njs at pobox.com> wrote:

> On Sep 11, 2015 9:13 AM, "Chris Barker" <chris.barker at noaa.gov> wrote:
> >
> > On Fri, Sep 11, 2015 at 3:40 AM, Nathaniel Smith <njs at pobox.com> wrote:
> [...]
> >>
> >> The best / only correct way to install a package from source or a git
> checkout is 'pip install <source dir>'; never run setup.py directly.
> >>
> >> (Yes, this is absurd, but I don't make the rules...)
> >
> > Yeah, the separation of concerns of distutils, setuptools, pipi, etc is
> a big hairy mess.
> >
> > But we *could* force, or at least encourage, the use of setuptools in
> the numpy build. The reason pip works is because it Monkey-patches
> setuptools into the install process.
> >
> > Or maybe I'm am mis-informed - this is very tangled up!
> pip monkeypatches setuptools into the install process... but first it
> monkeypatches setuptools to fix various weird behaviors. If you just use
> setuptools directly then you don't get the same thing as pip install.
> Off the top of my head: setuptools will try to easy_install any
> dependencies, and setuptools will default to installing into a weird
> directory with a .pth file. I'm not sure that it records what files were
> installed either. OTOH does at least install .egg-info so that other tools
> can tell that your package is installed later.
> It is a mess.
> -n
While we're piling on, I think (it's hard to know) that I ran into an issue
where pip was (thankfully) installing a local package with zip_safe=False,
but setup.py was only install the egg, making accessing the package's
bundled data very difficult.

So yeah, +1 for "pip install <package_dir>"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/matplotlib-devel/attachments/20150911/b88a01f2/attachment.html>

More information about the Matplotlib-devel mailing list