Brian Sutherland wrote: > 2009/6/4 Tarek Ziadé <ziade.ta...@gmail.com>: > >> Oups messed up sorry -> resending my answer >> >> On Thu, Jun 4, 2009 at 11:52 AM, Brian Sutherland >> <br...@vanguardistas.net> wrote: >> >>>> - http://svn.python.org/projects/peps/trunk/pep-0386.txt >>>> >>> ... < V('1.0.dev456') >>> ... < V('1.0') >>> ... < V('1.0.dev456post623') >>> >>> Looks like a typo or very un-intuitive. It doesn't seem right that a >>> "dev" version sorts after a full release. >>> >> This is a dev version of a post-release version. Which is an edge case >> submitted by Phillip. >> >> How would you write it ? >> > > ... < V('1.0.dev456') > ... < V('1.0.dev456post123') # post-release of a dev version > ... < V('1.0') > ... < V('1.0.post456dev623') # dev version of a post-release > ... < V('1.0.post456') # post release > > i.e. that a postfix of "dev" means "before" and a postfix of "post" means > after. > > >>>> - PEP 376 | status : waiting for Phillip complementary feedback (and >>>> anyone else of course) >>>> >>> I can imagine distutils uninstalling files previously installed by dpkg >>> as a shortcut to breaking a machine. Though I'm not sure what will >>> actually happen in practice. >>> >> Distutils defines a standard for an EGG-INFO structure, and provides a >> API for the uninstallation that is more likely to be a reference >> implementation. >> >> Although, It is already providing an install feature. >> >> If uninstalling a package with Distutils, while it was installed by dpkg >> breaks, >> >> I can imagine that in the very same system, you can also break it >> if you *install* packages with Distutils, easy_install, pip because >> you shortcut dpkg >> as well. >> > > Yep. Though I think that nowdays dpkg installs to a different directory than > Distutils' default. So users have to specify extra options to break > their systems. >
That's unfortunately not true: by default (wo any --prefix option), distutils install into /usr. So if a user just uses sudo with a distutils-based package, he is very likely to mess up his system. I think this should be considered as a distutils bug - by default, most source distributions install into /usr/local (autoconf-based projects certainly do). > How should such a system stop distutils (acting as root) from doing an > uninstallation? > Ideally, distutils should detect whether it installed the package itself or not. IMHO, uninstall is beyond the scope of distutils; it is very difficult to get right, with so many ways to screw up a system badly. cheers, David _______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org http://mail.python.org/mailman/listinfo/distutils-sig