Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have installed on my system both python25 and python26 using Macports. Now I want to uninstall python25 and all the py25-* packages with no real dependents. Unfortunately, when I do

port dependents python25

I get a long list of dependents including things like mercurial and bzr. When I do

port info mercurial

I see that mercurial depends on python26. I know I can force the removal of python25 by

port uninstall -f python25

but I was wondering if there is a way to let Macports know that mercurial is no longer dependent on python25.

share|improve this question
up vote 4 down vote accepted

MacPorts currently does not upgrade the dependency tree for installed packages. That is, if mercurial moved from depending on python25 when you installed it to python26, it will continue to believe it needs python25 until you uninstall it. Simply upgrading the package won't fix this behavior.

Try uninstalling mercurial and then reinstalling it.

share|improve this answer
Interesting. That's what I suspected but I was hoping that there is some obscure command somewhere to update the dependency tree. – cefstat Oct 1 '09 at 18:55

Generally speaking there is no way to let macports know that port A is no longer depends on port B. But for this case, it seems that in fact mercurial works fine with both python25 and python26. (Though the port profile can only choose one dependency.) So simply replacing python25 with python26 won't break mercurial.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.