Open retorquere opened 8 years ago
Not really sure why this is happens. I am not monkey-patching getContentsFromURL
. Can you ask the user whether the same problem still occurs in 4.2.6? The version is under review at mozilla but you can already get it here: https://addons.mozilla.org/en-US/firefox/addon/zotfile/versions
At least the TypeError: Zotero.ZotFile.pdfAnnotations
should be fixed.
Ah, the wonderful Mozilla review process. Not a fan myself.
I've asked @melsophos (who reported the issue) to upgrade and test, but I'm thinking it's just a race condition; FF pre-e10n is single threaded, and your futureRun code simply interrupted some arbitry code, errored, and the rest is collateral damage. BBT just happened to get caught in it. @melsophos saw the problem go away after disabling and re-enabling Zotfile, which strengthens my idea of the race condition. The error is still in the logs though, whether BBT was interrupted or not, so I've requested a new log with 4.2.6 installed.
This error is gone after installing 4.2.6, so I can consider this issue closed. The issue in BBT that I thought was related still exists, so I'm looking into that further.
I'm currently trying to figure out whether this error is in some way related to BBT:
TypeError: att.getFile(...).exists is not a function" {file: "chrome://zotfile/content/zotfile.js" line: 3433
I can't trigger it myself, but I see it sometimes in logs from BBT users. The only reason I can think would be related is that I fiddle with nextItem in the translator, but this call doesn't seem to be part of the export process, and the resulting objects don't have getFile() at all, so it shouldn't error out with exists is not a function
but getFile is not a function
I think this is just a zotfile bug. Maybe BBT triggers events that lead to the zotfile bug. att.getFile(...).exists is not a function
has been an elusive error message. I am not going to look into it for the current version though. I am doing some (slow) work in the background (not yet on github) to prepare zotfile for Zotero 5.0. The transition changes so many parts of the code and I think it makes more sense to look into it if it occurs with Zotero 5 and zotfile 5 again.
Would it be possible to test for functionness of exists in the interim? It could remove the risk of collateral errors.
Can you try with the current version on github (master branch)? It's possible that I fixed it a couple of weeks ago and if not it would be good to have the line number for the current version.
I haven't been able to trigger the problem myself, I just see it sometimes in logs that are submitted to me.
I'm having this problem with ZotFile 4.2.6 and BetterBibLaTeX 1.6.55 and 1.6.56 and this is the error that I'm getting when I'm trying to send files to the tablet:
TypeError: tablet_file.exists is not a function (chrome://zotfile/content/zotfile.js, 2782)
and this one when I'm trying to fetch from the tablet:
Error: TypeError: f.exists is not a function
I've tried to disable and remove the BBL extension and I'm getting the same errors.
I have a user report on Better BibTeX that seems to indicate a possible interference between BBT and Zotfile. In the users' logfile, I see this:
I can explain everything down to
getContentsFromURL
, which is where BBT is trying to load one of its bundled translators, but I don't think you are monkey-patchinggetContentsFromURL
(at least I couldn't find it if you do), so I can't readily explain why it triggers a call toZotero.ZotFile.futureRun
, never mind why that in turn can run at all before the point whereZotero.ZotFile.pdfAnnotations
is defined.Any insights would be very much appreciated, I wouldn't want to conflict with Zotfile.