I have Picard configured with "Move files when saving", and have a directory selected that is on a different filesystem than my source files.
Additionally, I have "Move additional files" enabled, with several file patterns enabled.
When I save a release, I get this traceback:
E: 20:01:59,775 util.thread.run:51: Traceback (most recent call last):
File "/usr/x86_64-pc-linux-gnu/lib/python3.6/shutil.py", line 544, in move
OSError: [Errno 18] Invalid cross-device link: b'/mnt/makoto/home/cwalton/Music/Flac/brainz-flac/\xe5\xb3\xb6\xe3\x81\xbf\xe3\x82\x84\xe3\x81\x88\xe3\x81\x84\xe5\xad\x90/Super scription of data/Scans' -> b'/mnt/makoto/home/cwalton/Music/temp/Flac/brainz-flac/\xe5\xb3\xb6\xe3\x81\xbf\xe3\x82\x84\xe3\x81\x88\xe3\x81\x84\xe5\xad\x90/Super scription of data/Scans'
The code needs to handle this and fall back to doing a copy + delete (or use a library function that does this for us).