I think 1 is ok – we can add an option to the backup command which will skip files with the archive bit set (or not set?).
Well, that’s nice to hear, but I now realize that this smart idea of mine doesn’t seem to work because the way the archive bit works is that it is set (by windows) whenever the file is written. It doesn’t even need to be modified. Moving it is apparently enough to trigger the archive bit. You can manually clear it but as soon as the file is written again, it will be re-set. So there might be some very specific use cases for using this as an exclude trigger, but it’s not what I had in mind.
As for 2, can’t you also set the archive bit of the folder to exclude it from backup?
I wasn’t even aware that folders also have archive bits. What is strange, though, is that in contrast to how it works with files, the archive bit of folders is cleared by default. And, also in contrast to files, moving the folder or even adding files to it, doesn’t re-set the bit. The only way I can make sense of this is that the original idea of setting the archive bit for a folder is to say “backup this folder even when it is empty”. But regardless of its intention, this actually makes it usable for the purpose of exclusion. The only problem is that its use would be counter intuitive because you would have to check “Folder is ready for archiving” to indicate the exact opposite (I’m ignoring the fact that backups are not really archives, obviously):
So, while I would personally be fine with this, I’m not sure it’s the most elegant solution.
IMHO, the “exclude if folder contains file named xyz” is much more elegant and fits well in the overall approach of duplicacy of storing all information locally and transparently. Besides, this solution works on all systems, not just windows.
And, finally, it is also more generic, i.e. it can be used not only for manually excluding a specific folder while browsing it, it can also be used for automatic exclusion in a scenario where, for example some program produces files with particular names and (for whatever reason) you don’t want folders with those files to be backed up. (Admittedly, I can’t think of a concrete use case, but I believe this kind of flexibility is always a good thing.)
Why are you hesitant about suggestion 2 above? Is it difficult to implement? Or will it slow down duplicacy if it has to get a complete list of the folder contents in order to determine whether to back it up or not? If the latter is the case, I guess the resource use could be significantly reduced by not allowing regular expressions, only fixed file names.