Debugging and temporary fix for relations purging issue
Blacklist Firefox charset warning
Debugging for relations purging error that won't get cut off
Yet more relations purging error debugging
Disable full-text purging, for now

This isn't technically any slower than before, but if people were using
multiple computers, they might not have had their entire full-text index
on a single computer before full-text syncing.
Don't use single DB transaction when rebuilding full-text index

This might slow down the rebuild, but it will hopefully also prevent
excessive memory usage and crashing.
Don't try more than 5 times to fill 500K limit

This will hopefully fix freezes during full-text syncs.
Use OS.File.writeAtomic() for Zotero.File.putContentsAsync() if UTF-8

It might be possible to write non-UTF-8 data by passing another charset
to TextEncoder, but I haven't tried it.

Firefox 19+ only, and for now, at least, only if data is passed as
string rather than input stream
Additional debugging for putContentsAsync freeze
Update locales from Transifex

(ignoring some strings that were reverted due to small changes in the
English versions, which hopefully will be redone on Transifex before the
next pull)
Add osfile.jsm import, and remove debugging lines
Don't try to index files longer than 250K chars in the background

This should fix the intermittent freezes people were seeing. We'll
process these large files when we replace nsISemanticUnitScanner.
Protect all contractions in full-text content, not just first

nsISemanticUnitScanner doesn't seem to be able to deal with single
quotes, so protect those. (There might be other characters it doesn't
handle, but this is ancient code, so it stays as is for now.)
Update repotime, submodules, and versions
Update citeproc-js
Merge branch '4.0' of https://github.com/zotero/zotero into 4.0

Hello. Merging from upstream.