When fixing paths, --dry-run doesn't report deleted directories nor moved paths.
This is not trivial to fix because it relies on the state of the filesystem, hence if we don't change it, as in dry run mode, we can't know if we need to move the cover image nor delete an empty directory.
The solution would be to implement a fake filesystem in memory in a tree like structure. The operations on the filesystem would be passed as a record of functions. In non dry run mode, the usual UI actions would be used, in dry-run mode, those functions would operate on that fake filesystem and record the operations for reporting what would be done at the end of the processing.
When fixing paths,
--dry-rundoesn't report deleted directories nor moved paths.This is not trivial to fix because it relies on the state of the filesystem, hence if we don't change it, as in dry run mode, we can't know if we need to move the cover image nor delete an empty directory.
The solution would be to implement a fake filesystem in memory in a tree like structure. The operations on the filesystem would be passed as a record of functions. In non dry run mode, the usual UI actions would be used, in dry-run mode, those functions would operate on that fake filesystem and record the operations for reporting what would be done at the end of the processing.