I'm +1 on removing the backup files completely. I can see how they might have been useful in the past given the save behavior, but I think the recent changes to that have made them obsolete. I am also someone who puts all my projects into a git repo, so I have always found them annoying and never even used them.
Also, did we ever even have anything like an auto-recover mechanism for them (where if the main file failed loading it would fallback to the backup)? I can't recall... (which probably means I never used it if we have one). -Ian On Mon, Jun 29, 2020 at 8:24 PM Jon Evans <j...@craftyjon.com> wrote: > Currently, KiCad automatically creates backups of schematic and PCB > files when you save a file. > > The logic for these backups is basically: if a file already exists > with the same name as what we are saving, copy that file to a new file > and give it the "-bak" suffix on the file extension. > > These backups are stored next to the original file in the current > KiCad codebase. This understandably creates clutter that some people > don't like (myself included) so in the project-settings branch that is > about ready to be merged, I changed this behavior to place all these > backups in a special backups folder for the project. > > This proved to have some complications around the handling of files > outside the project path (which it's possible to have with > hierarchical schematic sheets) so I need to do something else. > > After some thought, I am pretty convinced that the right thing to do > is just *remove this backup feature entirely*. Here's why: > > 1) It's not a very good backup: It just stores the state from the > last time you hit "save". If you hit save again, your backup is blown > up. So, it's really like a "undo" function, but on disk, and with > only one level of undo. > > 2) Recently I changed how we save schematic and board files to fix > some unrelated issues people were seeing with cloud backup services. > Before this change, if KiCad crashed or had some other serious error > while saving a file, the file would be lost (because we used to delete > the old file and then write a new one in its place). After this > change, we write the new file to a temporary location, and only if > that write succeeds do we copy it on top of the old file. I think > this vulnerability to generating corrupt files if we crash was one of > the reasons for this backup file system, and that reason is now gone. > > 3) Because it's not a very good backup, I worry that the fact that > "bak" files exist might cause some users to have a false sense of > security and not use a true backup system (like a version control > system, or some other mechanism that actually backs up files > periodically). I want to remove this false sense of security so that > it is more clear that users should back up their files in some way if > they care about the work. > > In other words, I don't think this feature actually gives enough value > to make it worth the clutter in the project folder and/or the > development effort to make it work well with less clutter. > > So, I'd like to hear from others on this: anyone disagree? > > Thanks, > Jon > > _______________________________________________ > Mailing list: https://launchpad.net/~kicad-developers > Post to : kicad-developers@lists.launchpad.net > Unsubscribe : https://launchpad.net/~kicad-developers > More help : https://help.launchpad.net/ListHelp >
_______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp