Show a popup if DB corruption is detected with a warning to avoid
storing the data directory in cloud storage, a link to a support page
with more information, and a button to restore from the last automatic
backup.
Also show the warning about cloud storage again after restoring from the
last automatic backup.
- Support Adobe Acrobat on macOS, with page number support via System
Events. Tested with Acrobat Reader, but hopefully functional with
non-Reader versions as well
- Use full path to configured .app via AppleScript rather than a
hard-coded name, in case there are multiple versions on the system
- Simplify code and improve logging
This seems like it would be sufficient for most tests that need to wait
for a page to load and is much less annoying in Scaffold. We could
adjust for automated runs if those end up using a browser again.
Previously, while updating a test used loadDocuments() (for a real
browser load) and honored `defer: true`, running a test did not.
This updates Zotero_TranslatorTester to use loadDocuments() when run in
Zotero. In other environments (translation-server, connector), it will
continue to use processDocuments(), which is based on XHR.
Fixeszotero/scaffold#96
Zotero.File.move() now forces `overwrite` if the old and new filenames
differ only by case, since otherwise on a case-insensitive filesystem
OS.File.move() does an existence check and thinks that the target file
exists.
Prior to fdfa8052d1, it was possible to create an item in a feed
library using Add Item by Identifier. If you did that, and then copied
it to a collection in your personal library, it would somehow end up
with an owl:sameAs relation to a `/users/local` URI (probably because
the URI functions don't work properly on a feed library).
This will clean up such relations in a schema update.
Most importantly, don't allow Add Item by Identifier to create an item
in a feed library...
The other buttons didn't do anything but still showed an effect on
mousedown, which this prevents.
If repo.zotero.org returned a 500 during Zotero startup, translators and
styles wouldn't be initialized until a 200 was returned, and various
things that depended on translators or styles wouldn't work in the
meantime. Now a single retry is made after 5 seconds, and if that fails
the promise is resolved regardless.
Regression from dc60e5f840, which added automatic 5xx retrying to
Zotero.HTTP.request()