[IPython-dev] IPython, debian, anaconda - LTS strategy
benjaminrk at gmail.com
Wed Dec 2 03:57:57 EST 2015
On Wed, Dec 2, 2015 at 8:11 AM, Frédéric Mantegazza <mantegazza at ill.fr>
> I was wondering why some of the IPython documentations didn' match what I
> had on my disk: it is because I'm running IPython 2.3, and not IPython
> 3.2; I read too fast the result of apt-cache show :o/
> The question is: why, even in my debian sid (unstable), I only have IPython
> 2.x? Is there a reason for the maintainer not to use the latest stable
> release? It seams that IPython 3.x branch is out for some months, now...
The people who build packages for the various Linux distros are generally
not the same as the people who develop the software. This can lead to
discrepancies and lag-time before a new release gets packages. IPython 3
shipped in February, and IPython 4 in August. Hopefully things will catch
> One solution is to install IPython 3.x from pip. But is it a good idea?
> What about IPython dependencies? I may have to install numpy,
> matplotlib, notebook etc from pip too, and this may lead me too far for an
> application which has to be very stable (don't want to redo all the work
> debian maitainers do!).
This is a difficult tradeoff. Because apt-packaging of Python packages
tends to be very slow/conservative, I rarely, if ever, use apt to install
anything for Python, and I wouldn’t really recommend using apt to install
Python-only packages to most users. Dependencies are obviously the tricky
part, and if you mix apt/pip installation, you can get yourself in a bit of
a tangle. Typically, I only use apt for things that may be ‘hard’ to
install (i.e. compiled with non-Python dependencies), such as numpy, scipy,
matplotlib. But I’m also not a representative user in terms of
understanding dependencies and installation issues.
But there’s obviously a benefit to being conservative - apt-packaged
versions are more likely to be tested/compatible. But to stick with that,
you have to be okay not having the latest and greatest versions of
packages. And sometimes the lag is not due to conservatism or caution, it’s
due to the volunteer package-maintainer community being busy with other
One *big* caveat: If you do use pip, make sure it’s up-to-date. The
debian-bundled pip is also woefully outdated, so you shouldn’t even install
pip with apt, you should probably use get-pip
to bootstrap it.
> Another solution is to use Anaconda. But I don't know how stable this
> 'distro', and how it will evolve in the future. For example, they package
> IPython 4, which does not seem to be stable yet... Don't know if it is
> easy to install third-party python packages in this environment.
Anaconda is pretty quick to ship updates upon release of packages (often
within hours of release). One *major* advantage of using conda over apt is
you can have it both ways. You can have one conda env running ‘stable’,
pinning major versions of relevant packages until you have verified that a
release works for your own applications, and another ‘unstable’ which stays
up-to-date with the latest conda packages. The same technically goes for
virtualenv, but conda’s use of bdists and hardlinks makes multiple envs
more pleasant in my experience.
> Any advice welcome.
> Frédéric MANTEGAZZA CEA-Grenoble
> Tel. : 33 (0) 476 207 617 INAC/SPSMS/MDN
> Fax : 33 (0) 476 483 906 17, rue des Martyrs
> Courriel : mantegazza at ill.fr F-38054 Grenoble Cedex 09
> IPython-dev mailing list
> IPython-dev at scipy.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the IPython-dev