retorquere / zotero-better-bibtex

Make Zotero effective for us LaTeX holdouts
https://retorque.re/zotero-better-bibtex/
MIT License
5.35k stars 288 forks source link

[Zotero 7 Beta] BBT cannot load after update #2886

Closed mjthoraval closed 5 months ago

mjthoraval commented 5 months ago

Debug log ID

CGCLUU35-fio-QvFxDXHpZxk2

What happened?

Just after updating the last bug, I got a an error that BBT could not load. I saved the debug log ID (CGCLUU35-fio-QvFxDXHpZxk2), disabled BBT are re-enabled it. Now it works. But the debug log ID may still be useful?

BBT version 6.7.198.2885.6293 Zotero 7.0.0-beta.79+95d5a5417 (64-bit) Windows 10

github-actions[bot] commented 5 months ago

:robot: this is your friendly neighborhood build bot announcing test build 6.7.201.2886.6313 ("init gonna hang")

This update may name other issues, but the build just dropped here is for you; it just means problems already fixed in other issues have been folded into the work we are doing here. Install in Zotero by downloading test build 6.7.201.2886.6313, opening the Zotero "Tools" menu, selecting "Add-ons", open the gear menu in the top right, and select "Install Add-on From File...".

mjthoraval commented 5 months ago

I can reproduce with the test build 6.7.200.2886.6307 above. Debug ID: D503095659 Or with the new test build 6.7.201.2886.6313: Debug ID: D813083066

mjthoraval commented 5 months ago

On the new test build 6.7.201.2886.6313, the test commands do not work anymore:

await Zotero.Translators.init()
return 'done'

image

mjthoraval commented 5 months ago

Trying to test again in the test build 6.7.200.2886.6307, to see if I had made a mistake or if there is some randomness also on that, and now the bug is gone... I actually don't know how to reproduce the bug reliably.

retorquere commented 5 months ago

On the new test build 6.7.201.2886.6313, the test commands do not work anymore:

Both with and without BBT installed?

mjthoraval commented 5 months ago

This was with the BBT installed. When I disable BBT, it works.

mjthoraval commented 5 months ago

Here is another Debug ID with a successful loading of BBT: D522314190 It is exactly the same configurations as above: BBT version 6.7.201.2886.6313 Zotero 7.0.0-beta.80+9de70613a (64-bit) Windows 10

One of the things that I did since the previous Debug ID is to disable BBT and re-enable it, as was previously reported in the other threads in the forums. Hopefully the comparison can give some clues on what went different between them.

mjthoraval commented 5 months ago

Finally... It took me a long time, but I have managed to get back into the broken mode with the test build 6.7.201.2886.6313. I was starting to doubt that the bug had ever existed.

Now that I am back into it, note that the connector in Firefox is also broken: image

So the problem is likely the same as the other one: https://github.com/retorquere/zotero-better-bibtex/issues/2887

I am still testing, but I think that the way to get back into the broken mode was achieved by enabling and disabling multiple times BBT during the loading of Zotero. On the way, this has send me several nasty errors, including one saying that I had broken the translators, opening this page: https://www.zotero.org/support/kb/unable_to_load_translators_and_styles Still need to do more testing to confirm this.

retorquere commented 5 months ago

Hopefully the comparison can give some clues on what went different between them.

Thanks man. I hope the Zotero devs can shed some light here. But I think I've also just seen a report pass by where the workaround didn't fix the startup issue :(

So the problem is likely the same as the other one: #2887

I was hoping they were the same problem, because I have absolutely no idea how that can even happen.

retorquere commented 5 months ago

I am still testing, but I think that the way to get back into the broken mode was achieved by enabling and disabling multiple times BBT during the loading of Zotero.

This is timing sensitive. BBT takes some time to start up and I don't know what Zotero does if you disable a plugin while it's starting.

mjthoraval commented 5 months ago

Ok, it indeed seems to be time sensitive. Here is some of the zoology I got when playing with enabling and disabling the plugin. But after all these, BBT is still able to recover and load properly. I am again not able to reproduce the bug anymore.

Some of the errors obtained when disabling and enabling BBT during the statup of Zotero: image

image

[JavaScript Error: "Could not stat file(C:\Users\mjthoraval\Zotero\translators\Better BibLaTeX.js) because it does not exist" {file: "resource://gre/modules/Prompter.sys.mjs" line: 1231}]

image

image

retorquere commented 5 months ago

Gotta love transient errors

mjthoraval commented 5 months ago

Another remark, probably not important, but this is all I got for now. Here is the header menu when BBT is running and working: image

After I disable BBT, it becomes: image

retorquere commented 5 months ago

Finally one that I can just say "that's a zotero bug". The item pane in Zotero 7 is one of the few places where I interact with Zotero strictly through it's formal APIs.

mjthoraval commented 5 months ago

A few more just for the record: image

image

retorquere commented 5 months ago

A few more just for the record:

Is this after a fast enable/disable? This shouldn't happen if BBT is allowed full startup/shutdown.

mjthoraval commented 5 months ago

This is just for a random combination of changing version of BTT, enable/disable of BBT, start/shutdown of Zotero... If you think that any of these is useful, I can try to reproduce. But if this is likely happening when doing something very wrong in Zotero, then it is probably what I did. I still cannot get back to the broken mode now.

mjthoraval commented 5 months ago

When I was giving up reproducing the bug, I reactivated all my plugins and restarted Zotero... And it is back in the broken mode... I have disabled all the other plugins and kept only BBT -> It stays in the broken mode. I have disabled the automatic sync to produce a clean Debug Output -> Still in broken mode. I have no idea what triggered the problem. But at the moment it is reproducible at every restart of Zotero.

At least, I can now produce a new clean Debug ID in the latest beta from "Restart with Logging Enabled...": Debug ID D472271866 2024_05_23 - Debug Output BBT Bug.txt BBT version 6.7.201.2886.6313 Zotero 7.0.0-beta.81+721f54fe4 (64-bit) Windows 10

I have waited 20 minutes this time before submitting it, in case there was any doubt that anything was still happening that could eventually start BBT.

It is easy to solve the problem: disable BBT, restart Zotero, enable BBT, restart Zotero -> The bug is gone. But I will stay in this broken mode a few more days in case anyone gets some more ideas of testing that can be done.

image

mjthoraval commented 5 months ago

Trying to be exhaustive on what I can report. I confirm that the connector in Firefox is broken again, so most likely the same bug: image

Here is the Debug Output for refreshing the page and trying to import from Firefox: Debug ID: D382407023 2024_05_23 - Debug Output BBT Bug - Connector.txt

(5)(+0016493): POST /connector/ping HTTP/1.1 Host: 127.0.0.1:23119 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:126.0) Gecko/20100101 Firefox/126.0 Accept: */* Accept-Language: en-GB,en;q=0.5 Accept-Encoding: gzip, deflate, br, zstd Content-Type: application/json X-Zotero-Version: 5.0.124beta4 X-Zotero-Connector-API-Version: 2 Content-Length: 2 Origin: moz-extension://746bca92-3333-4b62-ba48-91b1f8aea7ec Connection: keep-alive Sec-Fetch-Dest: empty Sec-Fetch-Mode: cors Sec-Fetch-Site: same-origin

(3)(+0007186): {better-bibtex startup: [translators]} +23678 idle: Thu May 23 2024 09:56:22 GMT+0200 (Central European Summer Time), save-database idle

(3)(+0000001): {better-bibtex startup: [translators]} +1 emit: better-bibtex event emit idle {"state":"idle","topic":"save-database"}

(3)(+0001309): {better-bibtex startup: [translators]} +1309 idle: Thu May 23 2024 09:56:23 GMT+0200 (Central European Summer Time), save-database active

(3)(+0000000): {better-bibtex startup: [translators]} +1 emit: better-bibtex event emit idle {"state":"active","topic":"save-database"}
retorquere commented 5 months ago

Thanks! I've added this to the report, you can go back to the regular release for the time being. Zotero said they'd look into the issue, and until that sheds some light on the matter, I don't think there's anything we can do.

mjthoraval commented 5 months ago

I have tried restarting the computer and opening Zotero before anything else -> the bug is still here.

BBT is working after a simple disable/enable. And the bug can be repeated reliably when in the broken mode. Assuming that something got broken during installation or update of BBT, is there a way to send you the current state of BBT with all parameters? There should be some parameter written somewhere that would be different from a normal installation?

Another observation: When in the broken state, if I click on an item in the Items Tree during loading, with the "Bibliography Entry" mode of the header in the Item Pane, the header will be stuck on "Loading..." for ever: image

After waiting for the loading of Zotero to finish, switching item gets the header working again: image

mjthoraval commented 5 months ago

And without doing anything else than just restarting Zotero, BBT is now loading fine again... So it is not as reproducible as I thought. I will get back to the regular release now.

jdnicholas commented 5 months ago

I'm fairly certain I am experiencing the same issue, where BBT is not starting, I get the error:

Better BibTeX startup failed ReferenceError: name is not defined

With BBT Version 6.7.201, Zotero 7.0.0-beta.81+721f54fe4 (64-bit), on Windows 10.

When I restarted with logging enabled I got this Zotero Debug ID: D205623513, and this for BBT: 667PZV5F-fio-VF7UrGprTIFr. When I: Disable BBT -> Restart Zotero -> Re-enable BBT -> Restart Zotero, I have this: RHMMIUQ4-fio-IYEiZgHbaZIW

And if I enable Zotero Debug Output Logging I see this when I try to enable:

(3)(+0037158): Enabling plugin better-bibtex@iris-advies.com

(3)(+0000006): Calling bootstrap method 'startup' for plugin better-bibtex@iris-advies.com version 6.7.201 with reason ADDON_ENABLE

(2)(+0000000): Plugin better-bibtex@iris-advies.com is missing bootstrap method 'startup' this.warn@chrome://zotero/content/xpcom/zotero.js:1258:71 _callMethod@chrome://zotero/content/xpcom/plugins.js:196:16 onEnabling@chrome://zotero/content/xpcom/plugins.js:463:13 callAddonListeners@resource://gre/modules/AddonManager.sys.mjs:1535:48 callAddonListeners@resource://gre/modules/AddonManager.sys.mjs:3768:52 updateAddonDisabledState@resource://gre/modules/addons/XPIDatabase.jsm:2891:34 setUserDisabled@resource://gre/modules/addons/XPIDatabase.jsm:783:25 enable@resource://gre/modules/addons/XPIDatabase.jsm:1342:27 handleEvent@chrome://mozapps/content/extensions/aboutaddons.js:2509:27 

Not sure if this is indeed the same issue, if not I can open a new one, but if so, maybe the logs from another system may help narrow down the cause...

retorquere commented 5 months ago

'm fairly certain I am experiencing the same issue, where BBT is not starting, I get the error:

Better BibTeX startup failed ReferenceError: name is not defined

different problem, see #2882

jdnicholas commented 5 months ago

different problem, see #2882

Ah, sorry. Either way, BBT 6.7.202 seems to work for me now