Closed ascendant512 closed 11 months ago
I only support FanFicFare on the official Calibre releases, and Calibre in turn bundles its dependencies--including python--for exactly this sort of reason. (Most dependencies bundled in FanFicFare are for older versions of Calibre.)
I'm sorry but I have to strongly object to that reply.
All of this easily found by just checking what versions are being bundled by Calibre and FFF.
So, short version: your bundled version of toolbelt is trying to import something that won't work on modern Calibre (py2 was dropped in calibre 5.0) and appears to be broken specifically because you aren't forcing the use of the version of urllib3 you bundled, to power a feature that doesn't work on any version, for a site that doesn't use that feature.
All of which also raises the question: Are you tracking and backporting security bugs for all the packages you have bundled? You seem to have some really old code in there.
My system had upgraded
dev-python/urllib3-2.0.3
and Calibre failed to start the FanFicFare plugin in _compat.pyIt looks like Google App Engine is absent in urllib3 version 2, and it also looks like FanFicFare ships with included urllib3 version 1.
In my PC, I worked around it by unzipping and deleting FanFicFare.zip, then creating a symlink to the included urllib3 in requests_toolbelt, then changing line 50 to read like:
from .urllib3.contrib import appengine as gaecontrib