scrivener saves unchanged projects

Since the last update, Scrivener now re-saves any project that I open even if all I do is open and close the file. In fact a new modification date appears in the Finder next to the file as soon as I open it.

Scrivener always re-saved unchanged projects in a totally counterintuitive way which I personally find disruptive to my workflow, for instance it would re-save if I opened a prior project simply to do a search with no change to the text. But now it’s worse – I can’t count on the modification dates of finished or archived files to mean anything, PLUS, since I set up the program to auto save on closing, it now creates new versions of backups that in essence are identical to one another if I happened to open the project.

Is there a way to change this behavior? I’d appreciate any help. Thanks a lot!

On the point of backups being created when nothing has changed, I don’t think anything radical has changed between versions there (inclusion of an additional mobile sync backup loop aside), and indeed I’m not seeing that happen when I test it. It would be easier for me to see what you mean with a direct example of an action that did not trigger a backup in 2.7 that now does. I don’t think the model for what constitutes truly passive use has changed, but considering iOS sync was added recently, there might indeed be a little more going on behind the scenes when opening and closing—and maybe something broke as well, that’s where specifics would help.

We might have a different definition of what constitutes not doing anything, though. For example you mentioned searching with no changes to the text, but this neglects that the project container itself is a thing which has persistent states that needs to be saved—like for example the fact that you were using project search when last you closed the project. :slight_smile: If you search and hit Cmd-W then reload the project, you’ll still have that search active. If you clicked on any search result at all then you would have modified the history queue for the editor the document loaded in. In fact even if you close the search sidebar before closing the project and do nothing else you still would have modified the project because it remembers the last search you performed and its settings. The only way to do these things and hundreds more besides, is to save something, somewhere. So yes, in general with Scrivener being more of a “database” style program where the mechanism used to work with our data is itself a data model that we modify through use of it, trying to apply, say, MS Word style modification date practices to the project, as though it were a single file that could be loaded entirely into RAM, isn’t feasible.

Sorry you’re finding it a bit of a pain to work with, but the only real alternative is to abandon a lot of what Scrivener’s design is built around.

Hi there,

Thanks for the explanation, the database analogy helps. That being said, in practice, I was always aware how certain changes, such as searches, trigger a save-- I’ve been using Scrivener for several years and learned to tread lightly so I could do some looking around without triggering a save. Nevertheless, whatever precautions I took to avoid a save in the past are moot for me now because it saves the projects as soon as I open them.

I am not sure how to provide a “direct example” – I have some older files I opened to check on something, then decided to do it some other time, so I closed as soon as I opened them without doing anything – and it saved a new version. I was counting in my workflow on preserving the original file date for these files, so it could be this behavior started prior to the most recent version and I just didn’t notice because it’s been several months since I needed to access these older files.

But the gist of it is, when I open a project, as soon as I open it, before I click anything, the modification date next to the file icon in the finder changes to today’s date. I close out of it, having done nothing, it saves with today’s date. That is the only action it needs to trigger a save and I am 100% certain it did not exist before.

Thanks for your help.

I see what you’re referring to, sorry I had in my mind that you were speaking mainly of when a project backup is created when closing a project.

Okay as to purely saving, I don’t see the modification date increment if I merely open and close the project, doing nothing other than hitting Cmd-W as soon as the window appears. Hmm, there may be some additional work done to the .scrivx file these days (some sync tokens need routine updating), but in practice that alone doesn’t seem to cause the package modification date to change on 10.12 anyway.

Well, whatever the case I think you can see that this isn’t something terribly simple to work around, in no small part because much of the plumbing here responsible for setting modifications dates is the OS itself (and how that could even differ from system to system). I really wouldn’t suggest thinking of modification dates on package formats as being anything other than a “last used” date, at least that’s how I’ve always worked with them.

Thanks again for the response. Let me say this:

I am on 10.11.x, and have been for awhile, but this strange save behavior is new – it worked fine until recently on the same OS and the same machine. I also used Scrivener with older versions of OSX on different machines for several years, and never experienced this problem (in fact, never seen something like it with any other software).

It so happens that modification dates are an essential part of my workflow, I need to be able to keep different versions of certain files with their final modification date–unchanged. It doesn’t matter if you call it “last used date” or “last modification date” or whatever the label, the fact is that suddenly all these dates are becoming “last opened date” because the date changes by the mere fact of opening the file (and even before I close it as I explained previously). The only way for me to preserve the date is to never open the file.

I’d really appreciate any ideas as to how I could fix it. Thanks a lot.