Folder markers are now directories (v0.14.38)


(Dr Schnagels) #1

Uhm… All .stfolder “files” have changed to real folders in Windows. That’s very annoying since I love my own organized folder structure on all my windows machines. That change is huge and I highly doubt it is wanted - since there is nothing in the changelog mentioned.

This is what I can say so far: Latest machine in the network got the update. All others have .stfolder files. Latest machine updates, -reset-deltas option set because I forgot to turn it off, all .stfolder files are now directories. Everything syncs fine and shows up-to-date. Still .stfolder directories are super annoying lol. Hope this helps to figure it out. Thanks!!


Syncthing v0.14.38 (includes a relay server release)
(uok) #2

Thanks for the new release!
What was the reason for this change from .stfolder file to folder?


(Audrius Butkevicius) #3

There are plans to move some internal files (potentially .stginores or whatever comes in the future) to that folder not to pollute the root scope.


(Audrius Butkevicius) #4

Why is it more annoying than the file?


(Dr Schnagels) #5

Difficult to describe. It’s simply distracting and annoying to see another folder in my own managed folder structure which stayed the same like for 10 years now. A file is nearly invisible for me under all my other files in the synced folder. The folder is always visible and shows in any File Open dialog. I wished there was an option to switch back to the file. Or why not use the syncthing config directory and map these new .stfolder directories into the config subdirectory.

Maybe like this:

C:\Program Files\Synctrayzor\syncthing\config\m(drive)\mystuff.stfolder (Just an example)


(Audrius Butkevicius) #6

We attempt to hide the folder (and on Linux is has a prefix dot which would hide it from ls) so it shouldn’t be visible. Usually when a problem is hard to describe it’s not a problem but rather a dislike. If it was a folder from the beginning you would just have gotten used to disliking it.

As I said, there is no concrete reason now, but I do have plans for things that will require things to live in the folder itself, in order to survive database resets, and in order to reduce root scope pollution.


(Dr Schnagels) #7

I use the option in Windows which always shows hidden and system files. Of course this change was meant for a better future development. If it would have been a folder from the beginning, I would have never used Syncthing. I simply cannot stand if a program interferes with my own managed folder structure (like those _MACOS folders on any MacOS used USB stick). As far as I can see this change is not yet forced. I could reverse the folder change on my single machine to .stfolder files simply with copying and moving the .stfolder files and folders. My machine at work didn’t do the change yet too. This is unfortunately the reason for me to deactivate automatic updates. Is there any chance for a different approach for .stfolder directories?


(Jakob Borg) #8

The change is cosmetic and, as Audrius says, paves the way for reducing pollution. If you set your system to show hidden files it will of course show you hidden files. You should also have been able to see the previous folder marker that way.


(Jakob Borg) #9

It looks like there’s a bug in the file-to-folder conversion that creates the new .stfolder directory unhidden. We’ll fix that for the next release.


(Dr Schnagels) #10

The .stfolder file is no problem. It doesn’t distract me at all because I have many other files in those syncthing folders. But a .stfolder directory always shows up. In File Explorer, Open File dialogs, anywhere. At least we found a small bug in the file-to-folder conversion :/.


(Audrius Butkevicius) #11

If you change to a file it will work for now, but it will stop working in the future and break things in various potentially damaging ways, such as being unable to save ignores which then exposes folders you didn’t want to the world etc, etc.


(SiSa) #12

Ok, thanks for all the explanations.

I too have some not hidden .stfolder folders (bug, as mentioned above), but I always have hidden files/folders shown anyways, so now, there is a new folder in each of my local folder, which irritates my eyes and my usability: It is the first folder on top of all, it is always shown and therefore “in the way of my daily work.” (I administrate a lot of machines, so I need to show me all hidden files/folders to “see what happens”, but I like to have it tidy in my way)

I never liked the .stfolder files too or the files, which are stored inside a shared folder. I would prefere a configuration(folder) inside the syncthing folder, so the “original” data (count of files/folder locally seen, modification dates of root folder, when .stignores are updated, sizes of hole folders, etc.) is not touched or modified in any way. (also the .stversions folders, which are usefull, are not handy, when syncing those shared folders manually with other tools)

I now have 3 files in each of my shares (.stfolder, stignore and a global/local- stignore files) which are always visible as @DrSchnagels mentioned. (Plus a .stversions folder)

I understand the plans to move files into the .stfolder folder in the future, but wouldn’t it be also possible to create subfolders in the syncthing configuration folder named like the shared folders and put all the configfiles into those folders?

One place for all the configs:

C:\
  synything.config.folder\
    shared_folder1\
     .stfolder
     .stignore-files
    shared_folder3\
     .stfolder
     .stignore-files
    shared_folder2\
     .stfolder
     .stignore-files

something like that.

(or, just an XML/INI, whatever config-file for each shared folder into the syncthing config-folder, instead of dumping “random” files into original and sensitive folders of the users machines)

of course, synching the (user generated “global”) .stignore-files would need some extra thinking :slight_smile:

Anyway, thanks for the effort to make synthing better and flexible, -for me- this new folder makes my daily work more complicated. I like the idea of a sync-service, which just runs on the users data, but not change that data or changes the way users work.


(Jakob Borg) #13

We need the marker (file or directory) in the folder itself. This lets us distinguish between someone deleting all files (we should sync the deletes to everyone else) and a folder going missing (we should temporarily stop syncing it).


(SiSa) #14

Sounds reasonalbe!, and thats only one single file and it has 0 bytes. That would/is not be a “big” harm.

(Although it is in my daily work, because of my sorting of files/folders (first folders, then files), that file is often “in the way”. I.e. pressing the PAGEDOWN hotkey to jump to the last folder in a directory, I now jump to the .stfolder file instead of the last folder. Sounds not harmful, but a hundred times a day it costs time and typing on the keyboard…) :wink:


(Jakob Borg) #15

We could adjust the name to ~stfolder or so on Windows. The tilde should sort last rather than first.


(SiSa) #16

Thanks, I tried to describe one of my usercases, but I guess, there are plenty of other users, which are used to their own usabilities and therefore we always have the “burden” of additionally files, no matter what names they have.

With a new name ~stfolder, I would also have the same issue, when changeing the sorting from name to date, or ascending to descending, etc. (but always: first folders, then files)

So I know, there is no “best way”, we all have to learn and adapt :slight_smile:


(Audrius Butkevicius) #17

Sorry, this is getting into an absurd territory.

People should just need get over it, btsync creates a directory, so do other solutions.

There is nothing we should do here. If people are unhappy about syncthing needing a directory, perhaps they should use a different tool that doesn’t do that.


(SiSa) #18

We do :slight_smile:

And we (at least myself) are not unhappy with syncthing.

We are contributing from our views of life.

Of course I will not drop a great software, just because there are some small things I’d like to work in another way, but not telling that there might be other/better/greener/funnier ways to accomplish a task, is negligent IMHO.

As well as not thinking or listening to others when they try to communicate.

I like the spacebar heating. I would donate for an expansion to heat the heal of my hands in winter! :slight_smile:


(Adam Piggott) #19

I’d much rather the folder name was the same across all operating systems, as it’s less to remember when managing a heterogeneous cluster. If a user wishes to expose Hidden items during their every-day workflow they have to accept that they lose the entire point of Hidden items - user-friendliness and tidyness.


#20

There was discution on github about deleting .stfolder when removing a share, and also keeping .stignores. Moving .stignores to .stfolder as a directory would end either in loosing .stignores (what personally I don’t care, but (un)fortunately I’m not the single ST user :wink: ) or loosing the good thing (my own feeling) of deleting no more needed .stfolder (either as -f or -d). Keeping .stfolder on share deletion will also break the logic of warning on share creation when parsing paths through previous shares.

Arf, the nightmare of been a developper : thank you for being that for me guys : :pray: