F451 wrote on Dec 18
th, 2009 at 7:08am:
Okay, I've been experimenting with this version and have yet to crash Safari or BookMacster.
A few months ago we'd discovered a file locking mechanism in Safari. It's probably what Apple's Sync Services – and thus MobileMe – use for safely syncing to the iPhone. Briefly, the file locking mechanism should make these crashes impossible. We had written code to implement this, but yesterday I discovered we hadn't activated it. So, yesterday we activated it. After testing even more vigorously than the day before, I was unable to get Safari to crash. So then I turned it off, retested, and arghhh, found the same as you, that now Safari won't crash either even without the file locking. (To clarify, version 0.8.2 which you tested does
not have the file locking, so it should crash once in awhile.)
Well, anyhow, the file locking mechanism is all tested now, and it makes sense, so we're going to leave it activated – it's an official change as of 0.8.3. I did find, though, that with it activated, I seem to get the "You can't change your bookmarks now" alert
more often from Safari. I believe this is because, in our implementation, BookMacster locks the file for longer than the few milliseconds it's actually writing it, thus closing the window for longer, and therefore we have
design margin – which is good. I'd much rather have Safari issue that warning to someone twice a year than have it crash once every ten years.
Just once, Safari issued an even more interesting alert: "You can't change your bookmarks now because they are being synchronized. Wait a few minutes and then try again." I like that one better and don't understand why sometimes I see one and sometimes the other. But it looks like we've successfully mimicked Apple's Sync Services behavior.
F451 wrote on Dec 18
th, 2009 at 7:08am:
The sounds work well too as I actually enjoy the confirmations.
Oh, those sounds are on in all of our debug builds and indeed they have been great for development work. Maybe one of these days we'll make it a preference, or at least a hidden preference. But then I'd have to make sure that it really works all the time, document it, explain that it doesn't work until you re-save the Bookmarkshelf, etc., etc. There's no such thing as a "free" feature.
F451 wrote on Dec 18
th, 2009 at 7:08am:
In the crashes (and you are correct it is Safari that crashed, not BookMacster) there were no crash logs for BookMacster.
Ha! You should see my Crash Logs folder. But that's my job – try like hell to
make it crash, so that we have everything fixed before 1.0 hits the streets.