[Distutils] tracking requested vs dependency installs in PEP 376 metadata

Ronald Oussoren ronaldoussoren at mac.com
Sun Oct 11 16:03:04 CEST 2009


On 9 Oct, 2009, at 15:45, Carl Meyer wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
>
> Alex wrote:
>> REQUESTED is fine, but I don't understand how the arguments apply,  
>> given
>>> that I'm not proposing to record information like _which_ package  
>>> it was
>>> a dependency of. The same single bit (literally) of information is
>>> tracked either way, it's just a question of whether the presence or
>>> absence of a file signifies that bit.
>>>
>> And what if the package is a dependency for multiple packages?
>> Let's say we have packages A and B which are installed separately, in
>> that order, and both depend on C.
>> C gets installed with information that it was required by A. Now if  
>> A is
>> uninstalled, won't C also get uninstalled?
>
> No. We are NOT talking about recording the full dependency graph in
> package metadata. It is, as has always been the case, up to an  
> uninstall
> tool to calculate the depgraph based on actual installed packages at
> runtime. A package is "orphaned" iff it was not REQUESTED by the user
> AND it is no longer depended on by other installed packages.

What about packages that are installed as a dependency of some other  
package and then used in user scripts without an explict depency on  
them?

That is, I install "SuperWebFramework==1.0" which happens to depend on  
peak-rules. I later start using peak-rules in my own simple scripts  
(without a setup.py or other explicit dependency information), and yet  
later decide to uninstall "SuperWebFramework".  If I understand the  
proposal correctly the uninstallation of "SuperWebFrameWork" would  
break my scripts.

I also wonder how this interacts with system package managers.  
The .egg-info directory-structure and PEP377 where explicitly  
structured to allow (for example) RPM to create the egg-info directory  
without having to know about Python's package repository (which would  
be needed if that repository were a single-file database instead of  
the collection of egg-info directories).

Ronald
>
> Carl
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.6 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>
> iD8DBQFKzz531j/fhc23WEARAlPfAJ93YHsbpzp5kF7hR0f98aSMOae6MwCgrP52
> RZs5FU3h0U0eUBN2vgqm2HA=
> =jyi8
> -----END PGP SIGNATURE-----
> _______________________________________________
> Distutils-SIG maillist  -  Distutils-SIG at python.org
> http://mail.python.org/mailman/listinfo/distutils-sig

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 3567 bytes
Desc: not available
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20091011/1093a340/attachment.bin>


More information about the Distutils-SIG mailing list