How identify and remove leftover files on buildbots?

Thomas Friedrichsmeier thomas.friedrichsmeier at ruhr-uni-bochum.de
Mon Nov 3 01:43:02 PST 2014


Hi!

I'm an rkward dev, hoping to give some clarification. I'm not regularly 
subscribed to macports-dev (temporarily subscribed, now, so I can send this 
post), so my quotes are copy-and-pasted from the web-archive.

Ryan Schmidt wrote on Sun Nov 2 16:05:00 PST 2014:
> Why do you need to delete these files? Can new versions of rkward not
> overwrite the old files?

That is exactly the problem:

Error: org.macports.activate for port rkward returned: Image error: 
/opt/local/Library/Frameworks/R.framework/Resources/library/rkward/CITATION 
already exists and does not belong to a registered port.  Unable to activate 
port rkward. Use 'port -f activate rkward' to force the activation.

The file rkward/CITATION clearly belongs to the rkward port, but it is not 
registered as such, and the buildbot refuses to overwrite it. This is probably 
just the first file where the problem is encountered. RKWard installs files 
(utilizing "R CMD INSTALL") to exactly two directories under R.framework:

/opt/local/Library/Frameworks/R.framework/Resources/library/rkward/
/opt/local/Library/Frameworks/R.framework/Resources/library/rkwardtests/

I do not know, whether all files in these directories are unregistered, or 
only some. But all files in these two directories clearly belong to the rkward 
port.

> If not, shouldn't the deletion of these files be happening in rkward's
> pre-activate, not R's?

I'd tend to think so, too, but I don't have a clear understanding of what 
happens during activation / de-activation, or in more general of what the 
buildbot does. However, AFAIU Marko's reasoning, 
- the unregistered rkward files would be in the way of (de-)activating the R 
port itself
- and since the R port would have to be activated, first, this would prevent 
the buildbot from even getting to rkward's pre-activation stage.

> Ideally we would figure out how to make R's install feature install into 
> the destroot.

It's somewhat hard to diagnose, but my current best guess is that the problem 
is due to:

1. The last time the rkward port was installed, not all files installed via R 
CMD INSTALL went into the destroot, and thus did not get registered.
2. This time, all files to be installed in 
/opt/local/Library/Frameworks/R.framework/Resources/library/ do get 
destrooted, properly. Which is why the buildbot thinks the port is trying to 
overwrite files that don't belong to it.
(3. This is likely due to some change in the version of R installed at the 
time of 1, or some other external change. RKWard's installation procedure for 
these files is unchanged since over three years.)

Hope this helps.

Regards
Thomas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: This is a digitally signed message part.
URL: <https://lists.macosforge.org/pipermail/macports-dev/attachments/20141103/b8f40491/attachment-0001.sig>


More information about the macports-dev mailing list