<show1>
Hi! Question: If I haven't saved a sketch manually (by creating a file), does solvespace (v2.3) still do auto backups?
<whitequark>
swivel: sorry, haven't yet
<whitequark>
please remind me in a week, really busy right now
<whitequark>
show1: it does not
<swivel>
np
<show1>
whitequark: do you think it's possible to add a feature like that?
<whitequark>
where would it save to?
<whitequark>
actually, let's backtrack a bit
<whitequark>
does solvespace crash often enough that you need backups on unsaved sketches?
<whitequark>
presumably most of the sketches you work on are saved somewhere
<show1>
tbh, I just lost a few hours of work because I forgot to explicitly save
<show1>
on linux it could save to /tmp
<whitequark>
wouldn't the next complaint come from a person who rebooted and had /tmp wiped?
<whitequark>
this is (a) hard to implement in a cross-platform way because right now solvespace doesn't have the concept of a "persistent data directory" and (b) given your use case seems to be just kicking a bucket down the road
<whitequark>
do you forget to save in other applications too? does solvespace do anything different from e.g. your text editor or word processor or spreadsheet?
<whitequark>
regarding /tmp, that actually wouldn't work with our official multi-distro package, which is Snap
<whitequark>
since Snap gives you a fresh /tmp each time you run the app
<show1>
actually my editor is configured to do autobackups every n minutes to a specific folder
<whitequark>
what happens if you open solvespace twice so there are two unsaved sketches?
<whitequark>
now the instances actually have to coordinate with each other to avoid stepping on each other's toes, and there has to be a new UI element for choosing the backup you want to load
<whitequark>
the amount of complexity this seemingly simple request introduces is immense and i think it's not justified by the benefit
<swivel>
show1: does solvespace crash often for you? it's uncommon in my experience
<whitequark>
show1: also, solvespace shows a dialog if you're closing it with an unsaved sketch
<whitequark>
did that not appear?
<swivel>
whitequark: it might be a reasonable compromise, if stability is a problem for some, to autosave backups only when a filename is known and just add a ~ suffix to the name for the backups or something like that, don't autoload them on restart or anything - but they can be explicitly loaded as an escape hatch
<whitequark>
swivel: they explained that it has nothing to do with crashes
<whitequark>
16:06 < show1> tbh, I just lost a few hours of work because I forgot to explicitly save
<whitequark>
also, the way you described autosaves is how they already work
<swivel>
whitequark: oh! I missed that
<swivel>
nvm then :)
<whitequark>
the problem with autosaves for unnamed sketches is that you're basically inventing a new virtual filesystem for unsaved sketches
<swivel>
I haven't noticed .slvs~ backups anywhere yet
<swivel>
right, that makes sense.
<whitequark>
swivel: slvs~ files are created at every autosave interval (5 minutes by default, unless you turn them off) and removed on successful exit or switch to a different sketch
<whitequark>
or a successful save
<whitequark>
you probably just never looked at the filesystem while you had an unsaved sketch
<swivel>
likely
<whitequark>
the intent is for slvs~ to only exist while there is any work you have that can be destroyed by a crash
<whitequark>
to avoid the annoyance of adding them to VCS, etc
<whitequark>
or the waste of space, since slvs files can get big
<swivel>
maybe solvespace could start new sketches with a save/filename allocation step
<swivel>
that you could skip if undesired
<whitequark>
you'd have to show this dialog each time you open solvespace, even if you're only opening it to load a sketch
<whitequark>
since there's an empty sketch waiting for you by default
<swivel>
is that a problem?
<swivel>
it could be just a query like "Create file for new sketch? Yes Skip"
<whitequark>
do you want to be greeted by a modal dialog every time you open the app, only to dismiss it a lot of the time?
<swivel>
Meh
<show1>
swivel: no, solvespace doesn't crash often...this was the first crash I've encountered
<swivel>
whitequark: what about a visible indicator somewhere when operating without backups then?
<whitequark>
i have a compromise idea
<whitequark>
yeah, i was about to suggest something similar
<whitequark>
your suggestion is better than what i had in mind, actually
<swivel>
what did you have in mind?
<whitequark>
a "toast notification" each autosave interval if the file isn't properly saved
<whitequark>
we don't have those yet but they seem like a good idea to reduce the amount of modal dialogs to a minimum
<whitequark>
there's an open issue for them
<show1>
whitequark: I wanted to propose something similar
<whitequark>
but a toast every 5 minutes is kinda annoying too, an indicator seems nicer
<whitequark>
not sure where though
<show1>
maybe things like this have to be slightly annoying to be effective
<whitequark>
mhm, also true
<whitequark>
so that can be done but it'll have to wait until we have toasts (no ETAs)
<show1>
i would definitely have created a file after the second/third toast, because it would have annoyed me
<swivel>
i've never heard the term "toast notification" what is this?