Filter files by properties like size, age etc.

Continuing the discussion from Excluding files from synchronization (ignoring):

1 Like

It’s nothing I’ve planned. In general, I think the ignore / selective sync system needs to be made simpler and not extended, so I’m doubtful this kind of filtering is a good idea…

resurecting an old thread here, but I think this can be useful in many cases. For example, I sync a series of images across servers. Due to an error, numerous rogue 4k video got into one of the nodes consisting of hundreds of GB. Having a filter that says, no larger than 20MB would be helpful in preventing this from replicating as well as having the side effect of alerting the admin due to the discrepency in size with ignore patterns.

I think the maintainers still agree its scope creep, hence not likely to happen.

I think I’ve argued against this type of functionality quite a few times here by now yes.

2 Likes

I was about to make a feature request for something similar but saw this now, so checking again. The request would have been additional folder settings to filter files based on size and possibly some kind of alert/auto stop based on folder size.

My use case is that I need to sync as many files as possible but lack space on the receiving device and therefore have to limit them, logically by filtering by file size. This would also allow me to consolidate a bunch of folders, which currently have to be separate due to this limitation.

I think this can be done with Syncthing already, by setting File Pull Order to Smallest First and then relying on the Minimum Free Disk Space setting to stop but there are loads of downsides to that approach.

This won’t really work, because the queue doesn’t reorder on the fly, meaning that if you’ve already started downloading a very large file, Syncthing will continue to download it even if there are lots of smaller files in the queue after it. There is an open feature request about this at Reprioritize sync queue on new incoming index updates · Issue #8435 · syncthing/syncthing · GitHub.

I see, really hoping this functionality gets added then!