Walt Mankowski wrote:
On Sun, Dec 30, 2007 at 06:16:02PM -0500, Walt Mankowski wrote:
And don't get me started on the hateful way they handle package
dependencies...
I had some out of date macports packages, and today seemed like a good
time to upgrade them. The manpage for port(1) lists among its options:
-R also upgrade dependents (only for upgrading)
-u uninstall non-active ports when upgrading and uninstalling
So I figured that running "port -uR libpng" would upgrade any packages
that depend on libpng, and then remove the old copies. But instead of
doing that, it just upgraded itself. Then it complained that it
couldn't remove the old copy because aterm depended it it:
---> Unable to uninstall libpng 1.2.24_0+darwin_8, the following
ports depend on it:
---> aterm
Error: Uninstall libpng 1.2.24_0+darwin_8 failed: Please uninstall the
ports that depend on libpng first.
This is a particularly hateful aspect of Macports, far beyond the normal
packaging hate. When it goes to uninstall and does a dependency check it just
sees "foo depends on libpng". It ignores that it's an older, inactive version
of libpng.
The really hateful part is the usual reaction to this from the MacPorts
developers isn't "hey, maybe we should fix our lame dependency checker" but
"oh, just force it".
http://lists.macosforge.org/pipermail/macports-users/2007-January/001282.html
No part of any regular process should include "force".
This lack of understanding about versions and active vs inactive shows up all
over MacPorts. Like this...
---> Unable to uninstall tcl 8.4.16_0+darwin_8, the following ports depend on
it:
---> tk
---> tk
---> tk
---> tk
I'd fix it, but it's written in TCL and my therapist says I still haven't made
a full recovery from my contact with Storyserver (a craptastic CRM using TCL 7
as a template language and stored in Oracle) 10 years ago.
--
24. Must not tell any officer that I am smarter than they are, especially
if it’s true.
-- The 213 Things Skippy Is No Longer Allowed To Do In The U.S. Army
http://skippyslist.com/list/