Package: stow Version: 2.4.1-2 Severity: normal Hi, In some situation, "stow -R" fails when there are empty directories. Here is an example:
$ tree . . ├── dest └── from ├── A │ ├── d1 │ │ └── fa │ └── d2 │ └── fa2 ├── B │ └── d1 │ └── fb └── C └── d1 10 directories, 3 files $ stow -v --dir from --target dest -R A B C LINK: d1 => ../from/A/d1 LINK: d2 => ../from/A/d2 UNLINK: d1 (reverts previous action) MKDIR: d1 LINK: d1/fa => ../../from/A/d1/fa LINK: d1/fb => ../../from/B/d1/fb $ tree . . ├── dest │ ├── d1 │ │ ├── fa -> ../../from/A/d1/fa │ │ └── fb -> ../../from/B/d1/fb │ └── d2 -> ../from/A/d2 └── from ├── A │ ├── d1 │ │ └── fa │ └── d2 │ └── fa2 ├── B │ └── d1 │ └── fb └── C └── d1 12 directories, 5 files $ stow -v --dir from --target dest -R A B C UNLINK: d1/fa UNLINK: d1/fb RMDIR d1 LINK: d1 => ../from/B/d1 UNLINK: d2 UNLINK: d1 (reverts previous action) stow: ERROR: unstow_contents() called with invalid target: d1 When initial stow is done (or restow without a previous stow as shown here), it works. But the last case, with a real restow (but no changes in sources), leads to an error. If I put a file in from/C/d1, it works (not shown here). If I change the package order, it might work! $ stow -v --dir from --target dest -R A C B UNLINK: d1/fa UNLINK: d1/fb RMDIR d1 LINK: d1 => ../from/B/d1 UNLINK: d2 UNLINK: d1 (reverts previous action) LINK: d1 => ../from/A/d1 LINK: d2 => ../from/A/d2 (reverts previous action) UNLINK: d1 (reverts previous action) MKDIR: d1 (reverts previous action) LINK: d1/fa => ../../from/A/d1/fa (reverts previous action) LINK: d1/fb => ../../from/B/d1/fb (reverts previous action) [B and C packages are swaped on the command line, no other changes] Regards, Vincent -- System Information: Debian Release: 13.0 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'oldstable-updates'), (500, 'oldstable-security'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386, armel Kernel: Linux 6.12.29-amd64 (SMP w/4 CPU threads; PREEMPT) Kernel taint flags: TAINT_OOT_MODULE Locale: LANG=fr_FR.utf8, LC_CTYPE=fr_FR.utf8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) Versions of packages stow depends on: ii perl 5.40.1-3 stow recommends no packages. Versions of packages stow suggests: ii doc-base 0.11.2 -- no debconf information