I think technically the --include
filtering behavior also worked like that in v1.65.2
:
rclone tree test --include E.txt
/
├── E.txt
├── a
│ └── d
├── b
└── c
4 directories, 1 files
vs. with a slash:
rclone tree test --include /E.txt
/
└── E.txt
0 directories, 1 files
Both examples above are using:
rclone v1.65.2
- os/version: darwin 14.3.1 (64 bit)
- os/kernel: 23.3.0 (arm64)
- os/type: darwin
- os/arch: arm64 (ARMv8 compatible)
- go/version: go1.21.6
- go/linking: dynamic
- go/tags: cmount
The difference is that those empty directories were previously ignored by sync
, even though they were "included". (Which to me begs the question: if they're "included", why should they be ignored?)
I agree that this filtering behavior is counterintuitive, and I'd be supportive of changing it... but that would be another "breaking change"
I've also been thinking for awhile that a new --dirs-from
filtering option is needed, to specify which dirs should have their metadata synced. (Among other reasons, it would solve a difficult problem in bisync
.)
If we're just getting into our personal wishlists of defaults we wish were different, my top picks are probably:
- empty dirs synced by default (with flag to disable)
--checksum
should not imply ignoringmodtime
--metadata
enabled by default--fix-case
enabled by default
But that's just my personal preference -- I'm sure some users will disagree