I meant from within the image.�� Also, while this is fine for Linux,On Wed, Apr 19, 2017 at 09:57:41PM +0200, Nicolas Cellier wrote:
> 2017-04-19 21:41 GMT+02:00 Alistair Grant <akgrant0710@gmail.com>:
>
>�� �� ��Hi All,
>
>�� �� ��While recently running the test suite I've been getting failures in
>�� �� ��FileLocatorTest>>testMoveTo if the working directory when the test
>�� �� ��is run is on a different unix file system to the user's home directory.
>
>�� �� ��The failing primitive is 'primitiveFileRename' in module 'FilePlugin',
>�� �� ��which calls rename(), which is presumably part of libc - I didn't chase
>�� �� ��it back through the C code.
>
>�� �� ��libc rename() requires the source and destination filenames to be on the
>�� �� ��same file system.
>
>�� �� ��This has been discussed multiple times before:
>
>�� �� ��https://pharo.fogbugz.com/f/cases/13957/Add-exception-for-
>�� �� ��cross-volume-folder-renames
>�� �� ��https://pharo.fogbugz.com/f/cases/12992/Cannot-move-files-
>�� �� ��to-another-volume-partition-under-linux
>�� �� ��https://pharo.fogbugz.com/f/cases/12965/Cannot-moveTo- FileLocator
>
>�� �� ��Issue 12965 is even supposed to include a fix, although when I searched
>�� �� ��through the slice I couldn't find anything that actually looked like a
>�� �� ��fix.
>
>�� �� ��As Nicolai suggested in 12965, the obvious solution is to implement move
>�� �� ��as copy+delete.�� It looks like there isn't an easy way to check whether
>�� �� ��the two files are on the same unix file system, so presumably it would
>�� �� ��be implemented as try to rename, and if that fails, try to copy and
>�� �� ��delete.
>
>
> What? Google this: man stat
> The first field of stat structure is a device ID, so deciding if two files are
> on same file system or not is doable by checking this field for the source file
> and destination file (if it exists) or directory - modulo the fact that you'd
> have to care of symbolic links with lstat.
and probably for MacOS, what about Windows?
It would be great if this exists in the image.�� Maybe it's time for me
to learn FFI.
>�� �� ��Is there a reason not to propose this as a patch?
Cheers,
Alistair