Commit graph

4640 commits

Author SHA1 Message Date
Dan Stillman
93411a3dac Fix incorrect variables 2013-08-20 16:52:53 -04:00
Dan Stillman
74c679e6d2 Remove non-OS.File storage code, now that last mtime works on Win in Fx24 2013-08-20 12:54:36 -04:00
Dan Stillman
ccc18dd41e Return the promise in Zotero.Translators.loadFromDisk() 2013-08-20 12:43:39 -04:00
Dan Stillman
c1211b0357 Correct variable name 2013-08-20 12:43:09 -04:00
Dan Stillman
8fe02d8b71 Handle input streams and other sources in Zotero.File.getContentsAsync() 2013-08-20 12:42:07 -04:00
Simon Kornblith
0490886f28 Merge branch 'async-translators' 2013-08-17 03:47:20 -04:00
Simon Kornblith
526441c3ca Make translator loading asynchronous
Other changes:
- Factored out Zotero.Translators from Zotero.Translator. The latter
  should be usable in the bookmarklet and connectors without changes.
- configOptions, displayOptions, and hiddenPrefs no longer copy on
  read. I don't think this actually affects any existing code.
- Zotero.Translate._loadTranslator() now returns a promise
2013-08-17 03:15:43 -04:00
Simon Kornblith
efc4455476 Fix connector server changes for async getTranslators() 2013-08-17 01:23:50 -04:00
Simon Kornblith
f397b0e3d1 Fix Zotero.Translator.save() 2013-08-17 01:18:48 -04:00
Simon Kornblith
8b13d473c7 Import OS.File into Zotero global scope 2013-08-17 01:17:39 -04:00
Simon Kornblith
67e5388598 Fix getTranslatorObject() 2013-08-17 01:11:10 -04:00
Simon Kornblith
b16bfc80e1 Update mimeTypeHandler for asynchronous getTranslators 2013-08-17 00:32:50 -04:00
Simon Kornblith
f58a5ed298 Fix returning translators from Zotero.Translate.getTranslators() 2013-08-17 00:32:29 -04:00
Dan Stillman
4384a8ecc2 Merge branch '4.0'
Conflicts:
	chrome/content/zotero/xpcom/schema.js
2013-08-16 18:16:59 -04:00
Dan Stillman
2d7d72fb2a Upgrade Q, and change allResolved() to allSettled()
Not fully tested
2013-08-16 18:15:00 -04:00
Simon Kornblith
ba0c33545f More typos 2013-08-16 17:56:10 -04:00
Simon Kornblith
70f04c3d8b Fix typos (thanks @aurimasv) 2013-08-16 17:53:36 -04:00
Dan Stillman
8e2de92ca8 Fix the Quick Copy site editor window 2013-08-16 16:28:23 -04:00
Dan Stillman
e85eaf218a Update quickCopy.js and preferences_export.js for async getTranslators() 2013-08-16 16:27:17 -04:00
Simon Kornblith
540a54515e Async Zotero.Translators.get* and Zotero.Translate.getTranslators
This mostly works, but there is still much to be done:

- getTranslators() calls in preferences_export.js and quickCopy.js need
  to be made asynchronous
- getTranslators() calls in mimeTypeHandler.js need to be made
  asynchronous. This looks hard, since there is a synchronous Mozilla
  API involved
- I need to test lookup, the connector server, and export more to make
  sure that they actually work
- This API needs to be implemented for the connector and bookmarklet
- Translators should be read off the disk using async IO
2013-08-16 13:48:59 -04:00
Dan Stillman
81e94b4475 Merge branch '4.0'
Conflicts:
	chrome/content/zotero/xpcom/schema.js
2013-08-15 23:32:32 -04:00
Dan Stillman
5040fba8bb Use async DB for Zotero.Translators.init()
Zotero.Translators.init() now returns a promise. This will temporarily break
all the Zotero.Translators.get* calls.
2013-08-15 23:21:57 -04:00
Dan Stillman
a901b47d87 Use async file access for saving translators and styles 2013-08-15 22:30:33 -04:00
Dan Stillman
28ca0a3599 Fix DB initialization with async DB access
Also fix the initial repository check to trigger after initialization is
complete instead of waiting
2013-08-15 17:35:16 -04:00
Simon Kornblith
ff0f649a4d Call done handler after saving
Broken by dde09c54a2
2013-08-15 15:50:44 -04:00
Simon Kornblith
e35f254fa1 Use API v2 in connector, part 1 2013-08-15 15:43:24 -04:00
Simon Kornblith
71e7fde327 Return multiple items from Zotero.Utilities.itemToServerJSON() 2013-08-15 15:43:22 -04:00
Simon Kornblith
52a544850a Rename Zotero.ID.getKey() to Zotero.Utilites.generateObjectKey()
(To make it accessible to the connector)
2013-08-15 14:32:15 -04:00
Simon Kornblith
2e4f75a9f0 Rename Zotero.ID.getKey() to Zotero.Utilites.generateObjectKey()
(To make it accessible to the connector)
2013-08-15 14:31:03 -04:00
Simon Kornblith
14192059ce Fix innocuous "itemProgress is not defined" error 2013-08-15 13:59:43 -04:00
Simon Kornblith
dde09c54a2 Fix handling of errors when saving items to data store asynchronously 2013-08-15 13:47:03 -04:00
Simon Kornblith
857fcfa31d Add Zotero.lazy() and use in _getConnectionAsync
I tried to describe what this function does earlier today and failed.
Hopefully the code is clearer.
2013-08-14 22:17:36 -04:00
Dan Stillman
318e5b2dd6 Enable debug line for file sync 2013-08-14 10:51:05 -04:00
Dan Stillman
d4da5fec68 Check the right version when checking for old database 2013-08-13 20:01:47 -04:00
Dan Stillman
9f24dcdb44 Use async DB query for collections-containing-an-item 2013-08-12 16:31:28 -04:00
Dan Stillman
a29f8ea852 Return empty array instead of FALSE for async DB query methods
The exception is valueQueryAsync(), which continues to return FALSE if
there's no result.

Note that this is different from the synchronous query methods.
2013-08-12 16:28:22 -04:00
Dan Stillman
d05c5094c7 Doesn't matter, but cast repo check timestamp to int 2013-08-12 04:12:23 -04:00
Dan Stillman
0ac7a77381 Show bound parameters for async queries 2013-08-12 04:12:10 -04:00
Dan Stillman
995369bc9b Remove unnecessary catch() 2013-08-12 03:57:00 -04:00
Dan Stillman
7135b9f5a7 Remove unnecessary import 2013-08-12 03:55:39 -04:00
Dan Stillman
73a9eb2709 Remove ancient DB_REBUILD config option 2013-08-12 03:52:50 -04:00
Dan Stillman
7780560c1b Move Zotero.Fulltext initialization 2013-08-12 03:10:22 -04:00
Dan Stillman
bf0de6e02f Tidy up some debug messages at startup 2013-08-12 03:10:09 -04:00
Dan Stillman
4a861ef5ea Use promise to get addon version, and remove ZOTERO_CONFIG.VERSION
(This patch is small without whitespace changes.)
2013-08-12 03:06:54 -04:00
Dan Stillman
391b2085b3 Tie bundled files update to initialization rather than timeout 2013-08-12 02:49:26 -04:00
Dan Stillman
5787b230f7 Use asynchronous DB and file access for schema checks/updates
This change should improve Firefox startup time. If the Zotero pane is
opened before Zotero has initialized, the pane will be blocked with a
progress bar until it's done. Standalone currently does the same, but it
should be changed to just delay opening the window if possible.

The upgrade wizard has been disabled for schema upgrades, in the hope
that upgrades can be done in a way that won't break compatibility with
earlier versions (or that can at least be done in a way such that we can
put out point releases of the last major version that provide
compatibility during beta/post-upgrade periods).

This patch likely breaks many things, and definitely breaks connector
mode.

This change also removes upgrade steps for databases from Zotero 2.1b2
and earlier. Users with such databases will need to upgrade via Zotero
4.0.x first or delete their data directories and start anew. This should
only affect users who haven't opened Zotero since Nov. 2010.
2013-08-11 21:53:41 -04:00
Dan Stillman
2b4de89aaf Add Zotero.File.getContentsFromURLAsync(url) for local text files 2013-08-11 20:49:18 -04:00
Dan Stillman
43978624de Better error messages for async DB 2013-08-11 20:48:10 -04:00
Dan Stillman
9e2d872900 Support nested async DB transactions 2013-08-11 20:47:53 -04:00
Dan Stillman
a2816a10ca Return a Q promise from all async DB methods
With send() removed from Q, we can yield Q promises within
executeTransaction() instead of Mozilla promises.
2013-08-10 04:17:34 -04:00