[Python-Dev] PEP 376

Tarek Ziadé ziade.tarek at gmail.com
Wed Jul 1 02:19:53 CEST 2009


2009/7/1 P.J. Eby <pje at telecommunity.com>:
> At 01:34 AM 7/1/2009 +0200, Tarek Ziadé wrote:
>>
>> On Wed, Jul 1, 2009 at 12:47 AM, Steven D'Aprano<steve at pearwood.info>
>> wrote:
>> > I don't see how this proposal will help in the second case. If you
>> > install distribution Spam, containing file spam.py, and then install
>> > distribution Ham, which requires spam.py, what is to prevent you from
>> > removing Spam and breaking Ham?
>> >
>> > If you don't propose a solution for the dependency problem, you should
>> > say so.
>>
>> This problem is solved as described later in the PEP, with the API
>> that allows you to get the
>> list of the distributions that use a given file. (thanks to the RECORD
>> files)
>>
>> If Spam and Ham use smap.py, and if you uninstall Spam, this file will
>> not be removed
>> because the API will tell you its used in both distributions.
>
> That's not the scenario he's talking about.  He's talking about the case
> where Ham has an 'install_requires' of Spam.  That is, a runtime dependency,
> not a shared file.

Ah, right sorry I misunderstood... They are no plans to handle
dependency installation / uninstallation / managment  at distutils
level.
so if you remove Ham, it will not check what distributions use it. So
yes, I'll add a note on this,

That said, the APIs will be powerfull enough for a third-party package
managers to handle this
case by throwing for example a warning or an exception.


More information about the Python-Dev mailing list