| Store | Cart

Re: [Distutils] PEP for dependencies on libraries like BLAS

From: Reinout van Rees <rein...@vanrees.org>
Mon, 17 Aug 2015 16:07:17 +0200
Nathaniel Smith schreef op 13-08-15 om 08:08:
> On Wed, Aug 12, 2015 at 8:10 PM, Robert Collins> <robe...@robertcollins.net> wrote:>> On 13 August 2015 at 12:51, Nathaniel Smith <n...@pobox.com> wrote:>>> On Aug 12, 2015 16:49, "Robert Collins" <robe...@robertcollins.net> wrote:>>>>>> This doesn't help if you want to declare dependencies on external, system>>> managed libraries and have those be automatically somehow provided or>>> checked for, but to me that sounds like an impossible boil-the-ocean project>>> anyway, while the above is trivial and should just work.>> Well, have a read of the draft.>>>> Its a solved problem by e.g. conda, apt, yum, nix and many others.> None of these projects allow a .deb to depend on .rpms etc. -- they> all require that they own the whole world

Would it help if our tools could "accept" already-externally installed 
dependencies?

As an example, we use syseggrecipe 
(https://pypi.python.org/pypi/syseggrecipe) in buildout. You specify 
some packages there (psycopg2, numpy, scipy, lxml to name some common 
ones) and syseggrecipe tries to find them and adds them to buildout. So 
IF you installed numpy/scipy as a debian package, you can include it in 
your buildout.

In the same way, if you activated a conda environment with some python 
dependencies, you could tell buildout to re-use one of the packages from 
there.

This works, because buildout doesn't do virtualenv-style hard isolation. 
It "only" inserts the python packages it installed into the front of the 
sys.path. And with syseggrecipe, some system-wide installed eggs are 
explicitly included in sys.path.


Question: could pip/virtualenv be made to accept something from the 
outside world? I'm mostly looking at .deb/.rpm packages here. It goes a 
bit against the pure isolation that virtualenv aims to provide, I know :-)

a) pip wouldn't need to own the whole world anymore (in specific cases).

b) you'd probably still want/need a mechanism to find out which .deb 
package you'd need for some system dependency.


Reinout

-- 
Reinout van Rees                          http://reinout.vanrees.org/
rein...@vanrees.org                   http://www.nelen-schuurmans.nl/
"Learning history by destroying artifacts is a time-honored atrocity"


_______________________________________________
Distutils-SIG maillist  -  Dist...@python.org
https://mail.python.org/mailman/listinfo/distutils-sig

Recent Messages in this Thread
Nathaniel Smith Aug 13, 2015 12:51 am
James Polley Aug 13, 2015 01:02 am
Olivier Grisel Aug 13, 2015 03:06 am
Robert Collins Aug 13, 2015 03:10 am
Nathaniel Smith Aug 13, 2015 06:08 am
David Cournapeau Aug 14, 2015 09:59 am
Reinout van Rees Aug 17, 2015 02:07 pm
Donald Stufft Aug 17, 2015 02:15 pm
Reinout van Rees Aug 17, 2015 08:56 pm
Nick Coghlan Aug 20, 2015 10:05 am
Wes Turner Aug 20, 2015 05:15 pm
Brett Cannon Aug 21, 2015 05:41 pm
Wes Turner Aug 21, 2015 06:30 pm
Wes Turner Aug 21, 2015 07:27 pm
Wes Turner Aug 21, 2015 07:34 pm
Wes Turner Aug 21, 2015 08:28 pm
Nick Coghlan Aug 22, 2015 10:33 am
Antoine Pitrou Aug 22, 2015 07:22 pm
Messages in this thread