[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