Feature request for receive only folders - Purge the dreaded revert local changes button

Hello all,

I would like to propose a new feature, subtle in nature and user friendly, but something that will eradicate the scourge of missing / deleted data, and many users frustration.

It is of course, the revert local changes button when you have setup syncthing with a receive only folder.

The scenarios play out as follows, and you can find many tales of horror in the syncthing and other forums where users have seen all their data erased. So you use synthing because it’s bundled into your NAS applications as a package, or just great in syncing and quick to setup, easy to use and great GUI. But in this instance you want to pull files from a repository A to local source B where the files in A get deleted after a while, and you want keep those files in B. B never sends files back to A and quite frankly doesnt care what A is doing unless there are new files in A to download.

You dont want to have to setup scripts to move files out of A’s folders into somewhere else as we arent all Linus Torvalds with access to command shells or perl wizardry, or maybe we are using windows 10 and just want to get by using standard apps.

The solution, we’ll my suggestions at least:

  • Make an option to hide the “revert local changes” button in the GUI if you setup a receive only folder. Simple tick box where you have the dropdown to select the receive only folder in the folder settings area.
  • Or make it so B never deletes files in its folders based on whats happening in A
  • Or other wizardry a dev comes up with to solve the same use case

Now many may ask:

  • We’ll thats not really syncing both ways so why should syncthing care. To that I would say end users are using syncthing in more ways that you ever imagined, so just go with it.
  • Can’t you just not click the button. Many have tried … and failed. There are thousands of sordid tales on the internet forums of exactly this. Late at night you go to expand the drop down for a folder and accidentally click the button … or some end users fall for the redness of the said button and click it our of curiosity like they had 9 cat lives. The results are all the same … only for your HDD’s to whir up in high pitch rev’s before you realise whats going on … as once you click the button it disappears while it happily deletes all your data in B for files that no longer exist in A.
  • Why not just make a “are you really really sure you want to do this prompt” for the said button … we’ll, even that doesn’t discourage the intrepid users late at night after no sleep and low on caffeine from impending data doom … as lets face it, finding out what that button actually does is buried in the user manual and you have to go looking for it to understand it fully like a jedi padawan studying to be a jedi knight.

Thanks for your time, and I hope this suggestion helps many more avoid this fate.

A moment of silence for all those that have Receive only folders, mistakenly or curiously clicked on the revert local changes button and then lost all their data as a result.

The accidental clicking issue was fixed in v1.16.0 (see https://github.com/syncthing/syncthing/issues/7520) thanks to adding a confirmation pop-up. With this, I don’t think that this is really an issue anymore, is it? Unless you are still using an old version of Syncthing (which may indeed be the case on the aforementioned NAS and other similar platforms).

I am using the below version on both sides, and didn’t get any confirmation message at all that I can remember. I am pretty sure the button was accidentally clicked as it had disappeared when I went looking for it on that particular folder.

Is there another way to trigger the action without clicking the button?

v1.17.0, Linux (64-bit Intel/AMD) “Fermium Flea”

Build 2021-05-23 Copyright © 2014-2021 the Syncthing Authors.

No really, but you can just add a new test folder as Receive Only, and then add some files to it locally. You don’t even need to share it.

Ok so confirmation message works when version is 1.17 … i was moving from older version < 1.16 where it mustn’t have popped up there.

Also, with “one way sync” when I set it up in the new versions 1.17 … had a receive only folder in B, and a send only folder in A. I forgot about going into advanced folder options in B and ticking “ignore deletes” … so when files were getting deleted in A it was like revert changes was happening (same result). And the revert changes button disappeared as when all files were deleted on A … there were no changes as all the same files were then deleted on B by syncthing. So it kind of looked similar / similar result.

thanks for your help as it helped me setup the config back to what I needed after staring at it for days wondering what was happening.