[MacPorts] #47755: Broken symlink left by select code when selected port is deactivated causes poppler and other ports using aclocal to fail during configuration.

MacPorts noreply at macports.org
Mon Sep 12 03:37:27 CEST 2016


#47755: Broken symlink left by select code when selected port is deactivated causes
poppler and other ports using aclocal to fail during configuration.
-----------------------+--------------------------------
  Reporter:  lukasz@…  |      Owner:  macports-tickets@…
      Type:  defect    |     Status:  new
  Priority:  Normal    |  Milestone:
 Component:  base      |    Version:  2.3.3
Resolution:            |   Keywords:
      Port:            |
-----------------------+--------------------------------

Comment (by ryandesign@…):

 Replying to [comment:38 keybounce@…]:
 > Replying to [comment:12 ryandesign@…]:
 > > At this point we consider it a user error to deactivate or uninstall a
 port that you have selected with "port select". Perhaps MacPorts base
 should be modified to prevent you from deactivating or uninstalling a port
 that you've selected.
 >
 > Shouldn't "deactivating a selected port" coincide with "select 'none' as
 a followup"?
 >
 > I.e.: If I have python32 selected as my python, and I deactivate
 python32, should that make "none" the current python? (If I understand the
 issue correctly, this is what triggers it, right?)

 That would be one way of handling it. But maybe the user forgot that they
 had selected, say, a particular python. Maybe it's better to do what I
 suggested, and make deactivating a port that is selected an error. That
 way the user is in control of deselecting it before deactivating it.

 > Equally, if I install python33, and there is no python selected,
 shouldn't python33 select itself as the python?

 No. MacPorts doesn't distinguish between a port installed as an incidental
 dependency and one the user deliberately installed. Just because the user
 installed a port that happened to use python35 somewhere in its build
 system doesn't mean the user wants "python" to become a simlink to
 python3.5.

 > So, if I have python32 installed and selected, and upgrade to 33, 32
 should deactivate, triggering "none", then 33 activates, and selects.

 Note that these are separate ports: python32, python33. There is no
 "upgrade to 33". There is: install python33. It can coexist with python32.
 Just because a user installs python33 does not imply that they no longer
 want to use python32. We feel the user should be in control of what
 version of python the "python" symlink points to; the user indicates that
 preference by manually running "port select".

-- 
Ticket URL: <https://trac.macports.org/ticket/47755#comment:39>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list