[MacPorts] #50528: logwatch: does not properly delete old unregistered /opt/local/bin/logwatch symlink (was: logwatch: build fails on all buildbots during activation)
MacPorts
noreply at macports.org
Wed Feb 3 18:42:14 PST 2016
#50528: logwatch: does not properly delete old unregistered /opt/local/bin/logwatch
symlink
-----------------------+--------------------------
Reporter: devans@… | Owner: ryandesign@…
Type: defect | Status: closed
Priority: Normal | Milestone:
Component: ports | Version: 2.3.4
Resolution: fixed | Keywords:
Port: logwatch |
-----------------------+--------------------------
Changes (by ryandesign@…):
* cc: khindenburg@… (added)
* status: new => closed
* component: server/hosting => ports
* resolution: => fixed
Comment:
No parts of the buildbot slave infrastructure are installed in /opt/local.
/opt/local is under the control of the buildbot, for building MacPorts
packages.
The problem affects user systems as well, not just the buildbot machines.
This is a bug in the logwatch portfile. It used to directly install the
/opt/local/bin/logwatch symlink, bypassing the destroot. This was fixed in
r127811 and r127812 to correctly install the symlink as part of the
destroot, but for existing installations the old unregistered symlink
remained, preventing upgrades from activating correctly, as you've seen.
Attempts were made to fix this in r127815 and r127816 but the attempts
were incorrect. The most recent attempted fix doesn't work as intended
because it uses `file exists` to check for the file's existence, but `file
exists` resolves symlinks, so it is actually checking if the file the
symlink points to exists, which it doesn't, so it doesn't get deleted. The
existence of the symlink itself needs to be tested.
I fixed this for logwatch in r145392 the same way I had fixed it for nedi
in r143403.
--
Ticket URL: <https://trac.macports.org/ticket/50528#comment:1>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list