mirror of
https://github.com/janeczku/calibre-web
synced 2024-12-18 22:20:30 +00:00
bbf6d9b026
Bugfix for feeds - removed categories related and up - load new books now working - category random now working login page is free of non accessible elements boolean custom column is vivible in UI books with only with certain languages can be shown book shelfs can be deleted from UI Anonymous user view is more resticted Added browse of series in sidebar Dependencys in vendor folder are updated to newer versions (licencs files are now present) Bugfix editing Authors names Made upload on windows working
37 lines
1.4 KiB
Python
37 lines
1.4 KiB
Python
'''
|
|
Debian and other distributions "unbundle" requests' vendored dependencies, and
|
|
rewrite all imports to use the global versions of ``urllib3`` and ``chardet``.
|
|
The problem with this is that not only requests itself imports those
|
|
dependencies, but third-party code outside of the distros' control too.
|
|
|
|
In reaction to these problems, the distro maintainers replaced
|
|
``requests.packages`` with a magical "stub module" that imports the correct
|
|
modules. The implementations were varying in quality and all had severe
|
|
problems. For example, a symlink (or hardlink) that links the correct modules
|
|
into place introduces problems regarding object identity, since you now have
|
|
two modules in `sys.modules` with the same API, but different identities::
|
|
|
|
requests.packages.urllib3 is not urllib3
|
|
|
|
With version ``2.5.2``, requests started to maintain its own stub, so that
|
|
distro-specific breakage would be reduced to a minimum, even though the whole
|
|
issue is not requests' fault in the first place. See
|
|
https://github.com/kennethreitz/requests/pull/2375 for the corresponding pull
|
|
request.
|
|
'''
|
|
|
|
from __future__ import absolute_import
|
|
import sys
|
|
|
|
try:
|
|
from . import urllib3
|
|
except ImportError:
|
|
import urllib3
|
|
sys.modules['%s.urllib3' % __name__] = urllib3
|
|
|
|
try:
|
|
from . import chardet
|
|
except ImportError:
|
|
import chardet
|
|
sys.modules['%s.chardet' % __name__] = chardet
|