Skip to content

mv 0.5

Choose a tag to compare

@creep-ltx creep-ltx released this 27 Jul 19:33
· 157 commits to main since this release

Directories now move across volumes — the last gap between mv and what AmigaDOS Rename() can't do. The tree is copied over (every file with its protection bits, datestamp and filenote), then the source is deleted deepest-directory-first, strictly after the entire tree copied clean.

All-or-nothing per tree: any copy failure abandons the move, wipes the partial destination, and leaves the source untouched — verified by fault injection, with the source byte-for-byte identical afterwards. The destination must not already exist (merging is cp's business), volume roots are refused as sources, and a tree containing a soft link or a hard directory link is refused whole: a link can't be recreated faithfully on another volume, and copying through one could loop.

Also in this line: 0.4.1 fixed the cross-volume fallback silently dropping the filenote (a same-volume mv kept it; now both do — boot-verified), and 33+ arguments are now a hard error instead of silently dropping TO and promoting the 32nd source to destination.

Needs Kickstart 2.04+.

Download mv-0.5.lha below - the auto-generated Source code links are snapshots of the whole AmigaTools repo, not just mv.