Importer's [R]emove option should NOT delete the files if the config has write/move/copy/hardlink all disabled
Problem
Importer's Remove option should not delete the files if the config has write/move/copy/hardlink all disabled.
Led to this problem:
I use beets as a database only. No changes in the files at all. I have write/move/copy/hardlink all disabled. I had the source folder as a read-write mount to allow fetchart to write in there. I shouldn't have.
On trying to import a multi-disc album which had names for each discs, both discs got matched to a different release from MBID, when I tried to fix it I pressed R when the importer asked Remove / Merge / Keep, and it deleted my source files with no confirmation.
It's a pretty trivial addition for a (maybe niche, admittedly) use case where if write/move/copy/hardlink are all off, beets should treat the files as untouchable and should NOT delete them.
Setup
- OS: Debian but that's the behaviour on any OS
- Python version: same as above, doesn't matter
- beets version: 2.11.0
My configuration (relevant part only) is:
import:
write: no
copy: no
move: no
hardlink: no
resume: yes
incremental: yes
incremental_skip_later: yes
timid: no
quiet: no
quiet_fallback: skipSource: beetbox/beets