diff --git a/src/calibre/db/tests/base.py b/src/calibre/db/tests/base.py index 6a9d6eca3f..3ccdf5b643 100644 --- a/src/calibre/db/tests/base.py +++ b/src/calibre/db/tests/base.py @@ -5,10 +5,18 @@ __license__ = 'GPL v3' __copyright__ = '2011, Kovid Goyal ' __docformat__ = 'restructuredtext en' -import unittest, os, shutil, tempfile, atexit, gc, time +import atexit +import gc +import os +import shutil +import tempfile +import time +import unittest from functools import partial from io import BytesIO +from calibre.utils.resources import get_image_path as I + rmtree = partial(shutil.rmtree, ignore_errors=True) IMG = b'\xff\xd8\xff\xe0\x00\x10JFIF\x00\x01\x01\x01\x00`\x00`\x00\x00\xff\xe1\x00\x16Exif\x00\x00II*\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xdb\x00C\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xff\xdb\x00C\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xff\xc0\x00\x11\x08\x00\x01\x00\x01\x03\x01"\x00\x02\x11\x01\x03\x11\x01\xff\xc4\x00\x15\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\n\xff\xc4\x00\x14\x10\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xc4\x00\x14\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xc4\x00\x14\x11\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xda\x00\x0c\x03\x01\x00\x02\x11\x03\x11\x00?\x00\xbf\x80\x01\xff\xd9' # noqa {{{ }}} diff --git a/src/calibre/devices/android/driver.py b/src/calibre/devices/android/driver.py index 1f965f2581..e43005344f 100644 --- a/src/calibre/devices/android/driver.py +++ b/src/calibre/devices/android/driver.py @@ -7,6 +7,7 @@ import os from calibre import fsync from calibre.devices.usbms.driver import USBMS +from calibre.utils.resources import get_image_path as I from polyglot.builtins import string_or_bytes HTC_BCDS = [0x100, 0x0222, 0x0224, 0x0226, 0x227, 0x228, 0x229, 0x0231, 0x9999] diff --git a/src/calibre/devices/nook/driver.py b/src/calibre/devices/nook/driver.py index ad43a2a153..fe50e03580 100644 --- a/src/calibre/devices/nook/driver.py +++ b/src/calibre/devices/nook/driver.py @@ -6,11 +6,13 @@ __docformat__ = 'restructuredtext en' Device driver for Barns and Nobel's Nook ''' -import io, os +import io +import os from calibre import fsync, prints from calibre.constants import DEBUG from calibre.devices.usbms.driver import USBMS +from calibre.utils.resources import get_image_path as I class NOOK(USBMS): diff --git a/src/calibre/ebooks/covers.py b/src/calibre/ebooks/covers.py index af9ff00054..9f99489373 100644 --- a/src/calibre/ebooks/covers.py +++ b/src/calibre/ebooks/covers.py @@ -4,27 +4,30 @@ __license__ = 'GPL v3' __copyright__ = '2014, Kovid Goyal ' -import re, random, unicodedata, numbers +import numbers +import random +import re +import unicodedata from collections import namedtuple from contextlib import contextmanager -from math import ceil, sqrt, cos, sin, atan2 -from polyglot.builtins import iteritems, itervalues, string_or_bytes from itertools import chain - +from math import atan2, ceil, cos, sin, sqrt from qt.core import ( - QImage, Qt, QFont, QPainter, QPointF, QTextLayout, QTextOption, - QFontMetrics, QTextCharFormat, QColor, QRect, QBrush, QLinearGradient, - QPainterPath, QPen, QRectF, QTransform, QRadialGradient + QBrush, QColor, QFont, QFontMetrics, QImage, QLinearGradient, QPainter, + QPainterPath, QPen, QPointF, QRadialGradient, QRect, QRectF, Qt, QTextCharFormat, + QTextLayout, QTextOption, QTransform, ) -from calibre import force_unicode, fit_image +from calibre import fit_image, force_unicode from calibre.constants import __appname__, __version__ from calibre.ebooks.metadata import fmt_sidx from calibre.ebooks.metadata.book.base import Metadata from calibre.ebooks.metadata.book.formatter import SafeFormat -from calibre.gui2 import ensure_app, config, load_builtin_fonts, pixmap_to_data +from calibre.gui2 import config, ensure_app, load_builtin_fonts, pixmap_to_data from calibre.utils.cleantext import clean_ascii_chars, clean_xml_chars from calibre.utils.config import JSONConfig +from calibre.utils.resources import get_image_path as I +from polyglot.builtins import iteritems, itervalues, string_or_bytes # Default settings {{{ cprefs = JSONConfig('cover_generation') @@ -726,7 +729,8 @@ def generate_masthead(title, output_path=None, width=600, height=60, as_qimage=F def test(scale=0.25): - from qt.core import QLabel, QPixmap, QMainWindow, QWidget, QScrollArea, QGridLayout + from qt.core import QGridLayout, QLabel, QMainWindow, QPixmap, QScrollArea, QWidget + from calibre.gui2 import Application app = Application([]) mi = Metadata('Unknown', ['Kovid Goyal', 'John & Doe', 'Author']) diff --git a/src/calibre/ebooks/docx/writer/images.py b/src/calibre/ebooks/docx/writer/images.py index e05dc1e6ea..18bdf6142a 100644 --- a/src/calibre/ebooks/docx/writer/images.py +++ b/src/calibre/ebooks/docx/writer/images.py @@ -8,15 +8,15 @@ import os import posixpath from collections import namedtuple from functools import partial -from polyglot.builtins import iteritems, itervalues - from lxml import etree from calibre import fit_image -from calibre.ebooks.oeb.base import urlunquote, urlquote from calibre.ebooks.docx.images import pt_to_emu +from calibre.ebooks.oeb.base import urlquote, urlunquote from calibre.utils.filenames import ascii_filename from calibre.utils.imghdr import identify +from calibre.utils.resources import get_image_path as I +from polyglot.builtins import iteritems, itervalues Image = namedtuple('Image', 'rid fname width height fmt item') diff --git a/src/calibre/ebooks/oeb/polish/tests/base.py b/src/calibre/ebooks/oeb/polish/tests/base.py index fb68c038ac..db8396076b 100644 --- a/src/calibre/ebooks/oeb/polish/tests/base.py +++ b/src/calibre/ebooks/oeb/polish/tests/base.py @@ -12,7 +12,7 @@ import calibre.ebooks.oeb.polish.container as pc from calibre import CurrentDir from calibre.ptempfile import PersistentTemporaryDirectory, TemporaryDirectory from calibre.utils.logging import DevNull -from calibre.utils.resources import get_path as P +from calibre.utils.resources import get_image_path as I, get_path as P from polyglot.builtins import iteritems diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py index bdf28807d8..1e397c42ff 100644 --- a/src/calibre/gui2/__init__.py +++ b/src/calibre/gui2/__init__.py @@ -41,7 +41,7 @@ from calibre.utils.date import UNDEFINED_DATE from calibre.utils.file_type_icons import EXT_MAP from calibre.utils.img import set_image_allocation_limit from calibre.utils.localization import get_lang -from calibre.utils.resources import get_path as P, user_dir +from calibre.utils.resources import get_image_path as I, get_path as P, user_dir from polyglot import queue from polyglot.builtins import iteritems, string_or_bytes diff --git a/src/calibre/gui2/email.py b/src/calibre/gui2/email.py index a2cd817268..77e36bcb74 100644 --- a/src/calibre/gui2/email.py +++ b/src/calibre/gui2/email.py @@ -14,7 +14,7 @@ from functools import partial from itertools import repeat from qt.core import ( QDialog, QDialogButtonBox, QGridLayout, QIcon, QLabel, QLineEdit, QListWidget, - QListWidgetItem, QPushButton, Qt + QListWidgetItem, QPushButton, Qt, ) from threading import Thread @@ -26,8 +26,9 @@ from calibre.gui2.threaded_jobs import ThreadedJob from calibre.library.save_to_disk import get_components from calibre.utils.config import prefs, tweaks from calibre.utils.icu import primary_sort_key +from calibre.utils.resources import get_image_path as I from calibre.utils.smtp import ( - compose_mail, config as email_config, extract_email_address, sendmail + compose_mail, config as email_config, extract_email_address, sendmail, ) from polyglot.binary import from_hex_unicode from polyglot.builtins import iteritems, itervalues @@ -439,8 +440,8 @@ class EmailMixin: # {{{ _('in the %s format.') % os.path.splitext(f)[1][1:].upper()) if mi.comments and gprefs['add_comments_to_email']: - from calibre.utils.html2text import html2text from calibre.ebooks.metadata import fmt_sidx + from calibre.utils.html2text import html2text if mi.series: sidx=fmt_sidx(1.0 if mi.series_index is None else mi.series_index, use_roman=config['use_roman_numerals_for_series_number']) texts[-1] += '\n\n' + _('{series_index} of {series}').format(series_index=sidx, series=mi.series) diff --git a/src/calibre/gui2/icon_theme.py b/src/calibre/gui2/icon_theme.py index 0268ccb2ed..e33b583354 100644 --- a/src/calibre/gui2/icon_theme.py +++ b/src/calibre/gui2/icon_theme.py @@ -42,7 +42,7 @@ from calibre.utils.filenames import ascii_filename, atomic_rename from calibre.utils.https import HTTPError, get_https_resource_securely from calibre.utils.icu import numeric_sort_key as sort_key from calibre.utils.img import Canvas, image_from_data, optimize_jpeg, optimize_png -from calibre.utils.resources import get_path as P +from calibre.utils.resources import get_image_path as I, get_path as P from calibre.utils.zipfile import ZIP_STORED, ZipFile from polyglot import http_client from polyglot.builtins import as_bytes, iteritems, reraise diff --git a/src/calibre/gui2/main.py b/src/calibre/gui2/main.py index 7e573023a5..495fe0d2fe 100644 --- a/src/calibre/gui2/main.py +++ b/src/calibre/gui2/main.py @@ -2,23 +2,22 @@ # License: GPLv3 Copyright: 2015, Kovid Goyal +import apsw import os import re import sys import time import traceback - -import apsw from qt.core import QCoreApplication, QIcon, QObject, QTimer from calibre import force_unicode, prints from calibre.constants import ( - DEBUG, MAIN_APP_UID, __appname__, filesystem_encoding, get_portable_base, - islinux, ismacos, iswindows + DEBUG, MAIN_APP_UID, __appname__, filesystem_encoding, get_portable_base, islinux, + ismacos, iswindows, ) from calibre.gui2 import ( Application, choose_dir, error_dialog, gprefs, initialize_file_icon_provider, - question_dialog, setup_gui_option_parser + question_dialog, setup_gui_option_parser, ) from calibre.gui2.listener import send_message_in_process from calibre.gui2.main_window import option_parser as _option_parser @@ -26,6 +25,7 @@ from calibre.gui2.splash_screen import SplashScreen from calibre.utils.config import dynamic, prefs from calibre.utils.lock import SingleInstance from calibre.utils.monotonic import monotonic +from calibre.utils.resources import get_image_path as I from polyglot.builtins import as_bytes, environ_item after_quit_actions = {'debug_on_restart': False, 'restart_after_quit': False, 'no_plugins_on_restart': False} @@ -197,6 +197,7 @@ def repair_library(library_path): def windows_repair(library_path=None): import subprocess + from calibre.utils.serialize import json_dumps, json_loads from polyglot.binary import as_hex_unicode, from_hex_bytes if library_path: @@ -380,8 +381,10 @@ class GuiRunner(QObject): def run_in_debug_mode(): + import subprocess + import tempfile + from calibre.debug import run_calibre_debug - import tempfile, subprocess fd, logpath = tempfile.mkstemp('.txt') os.close(fd) run_calibre_debug( diff --git a/src/calibre/gui2/metadata/single_download.py b/src/calibre/gui2/metadata/single_download.py index e31f42e62b..ee98e224cc 100644 --- a/src/calibre/gui2/metadata/single_download.py +++ b/src/calibre/gui2/metadata/single_download.py @@ -8,36 +8,38 @@ __docformat__ = 'restructuredtext en' DEBUG_DIALOG = False # Imports {{{ -import os, time -from threading import Thread, Event -from operator import attrgetter +import os +import time from io import BytesIO - +from operator import attrgetter from qt.core import ( - QStyledItemDelegate, QTextDocument, QRectF, QIcon, Qt, QApplication, - QDialog, QVBoxLayout, QLabel, QDialogButtonBox, QStyle, QStackedWidget, - QWidget, QTableView, QGridLayout, QPalette, QTimer, pyqtSignal, - QAbstractTableModel, QSize, QListView, QPixmap, QModelIndex, QSplitter, - QAbstractListModel, QRect, QTextBrowser, QStringListModel, QMenu, QItemSelectionModel, - QCursor, QHBoxLayout, QPushButton, QSizePolicy, QAbstractItemView) + QAbstractItemView, QAbstractListModel, QAbstractTableModel, QApplication, QCursor, + QDialog, QDialogButtonBox, QGridLayout, QHBoxLayout, QIcon, QItemSelectionModel, + QLabel, QListView, QMenu, QModelIndex, QPalette, QPixmap, QPushButton, QRect, + QRectF, QSize, QSizePolicy, QSplitter, QStackedWidget, QStringListModel, QStyle, + QStyledItemDelegate, Qt, QTableView, QTextBrowser, QTextDocument, QTimer, + QVBoxLayout, QWidget, pyqtSignal, +) +from threading import Event, Thread +from calibre import force_unicode from calibre.customize.ui import metadata_plugins from calibre.ebooks.metadata import authors_to_string, rating_to_stars -from calibre.utils.logging import GUILog as Log -from calibre.ebooks.metadata.sources.identify import urls_from_identifiers from calibre.ebooks.metadata.book.base import Metadata from calibre.ebooks.metadata.opf2 import OPF -from calibre.gui2 import error_dialog, rating_font, gprefs +from calibre.ebooks.metadata.sources.identify import urls_from_identifiers +from calibre.gui2 import error_dialog, gprefs, rating_font from calibre.gui2.progress_indicator import SpinAnimator from calibre.gui2.widgets2 import HTMLDisplay -from calibre.utils.date import (utcnow, fromordinal, format_date, - UNDEFINED_DATE, as_utc) from calibre.library.comments import comments_to_html -from calibre import force_unicode -from calibre.utils.ipc.simple_worker import fork_job, WorkerError from calibre.ptempfile import TemporaryDirectory +from calibre.utils.date import UNDEFINED_DATE, as_utc, format_date, fromordinal, utcnow +from calibre.utils.ipc.simple_worker import WorkerError, fork_job +from calibre.utils.logging import GUILog as Log +from calibre.utils.resources import get_image_path as I from polyglot.builtins import iteritems, itervalues -from polyglot.queue import Queue, Empty +from polyglot.queue import Empty, Queue + # }}} diff --git a/src/calibre/gui2/notify.py b/src/calibre/gui2/notify.py index e8610e3699..f2fff217de 100644 --- a/src/calibre/gui2/notify.py +++ b/src/calibre/gui2/notify.py @@ -11,6 +11,7 @@ from contextlib import suppress from functools import lru_cache from calibre.constants import DEBUG, __appname__, get_osx_version, islinux, ismacos +from calibre.utils.resources import get_image_path as I class Notifier: diff --git a/src/calibre/gui2/open_with.py b/src/calibre/gui2/open_with.py index bcd96ad1f5..971da327cf 100644 --- a/src/calibre/gui2/open_with.py +++ b/src/calibre/gui2/open_with.py @@ -9,22 +9,23 @@ import uuid from contextlib import suppress from functools import partial from qt.core import ( - QAction, QBuffer, QByteArray, QIcon, QInputDialog, QKeySequence, QLabel, - QListWidget, QListWidgetItem, QPixmap, QSize, QStackedLayout, Qt, QVBoxLayout, - QWidget, pyqtSignal, QIODevice, QDialogButtonBox + QAction, QBuffer, QByteArray, QDialogButtonBox, QIcon, QInputDialog, QIODevice, + QKeySequence, QLabel, QListWidget, QListWidgetItem, QPixmap, QSize, QStackedLayout, + Qt, QVBoxLayout, QWidget, pyqtSignal, ) from threading import Thread from calibre import as_unicode from calibre.constants import ismacos, iswindows from calibre.gui2 import ( - Application, choose_files, choose_images, choose_osx_app, elided_text, - error_dialog, sanitize_env_vars + Application, choose_files, choose_images, choose_osx_app, elided_text, error_dialog, + sanitize_env_vars, ) from calibre.gui2.progress_indicator import ProgressIndicator from calibre.gui2.widgets2 import Dialog from calibre.utils.config import JSONConfig from calibre.utils.icu import numeric_sort_key as sort_key +from calibre.utils.resources import get_image_path as I from polyglot.builtins import iteritems, string_or_bytes ENTRY_ROLE = Qt.ItemDataRole.UserRole @@ -80,11 +81,9 @@ if iswindows: import subprocess from calibre.utils.open_with.windows import ( - load_icon_for_cmdline, load_icon_resource - ) - from calibre.utils.winreg.default_programs import ( - find_programs, friendly_app_name + load_icon_for_cmdline, load_icon_resource, ) + from calibre.utils.winreg.default_programs import find_programs, friendly_app_name from calibre_extensions import winutil oprefs = JSONConfig('windows_open_with') @@ -176,7 +175,7 @@ elif ismacos: # macOS {{{ oprefs = JSONConfig('osx_open_with') from calibre.utils.open_with.osx import ( - entry_to_cmdline, find_programs, get_bundle_data, get_icon + entry_to_cmdline, find_programs, get_bundle_data, get_icon, ) def entry_sort_key(entry): @@ -226,7 +225,7 @@ else: # XDG {{{ oprefs = JSONConfig('xdg_open_with') from calibre.utils.open_with.linux import ( - entry_sort_key, entry_to_cmdline, find_programs + entry_sort_key, entry_to_cmdline, find_programs, ) def change_name_in_entry(entry, newname): diff --git a/src/calibre/gui2/preferences/texture_chooser.py b/src/calibre/gui2/preferences/texture_chooser.py index 4415deb2ad..08ac8ab07d 100644 --- a/src/calibre/gui2/preferences/texture_chooser.py +++ b/src/calibre/gui2/preferences/texture_chooser.py @@ -4,15 +4,19 @@ __license__ = 'GPL v3' __copyright__ = '2013, Kovid Goyal ' -import glob, os, shutil +import glob +import os +import shutil from functools import partial from qt.core import ( - QDialog, QVBoxLayout, QListWidget, QListWidgetItem, Qt, QIcon, - QApplication, QSize, QDialogButtonBox, QTimer, QLabel, QAbstractItemView, QListView) + QAbstractItemView, QApplication, QDialog, QDialogButtonBox, QIcon, QLabel, + QListView, QListWidget, QListWidgetItem, QSize, Qt, QTimer, QVBoxLayout, +) from calibre.constants import config_dir from calibre.gui2 import choose_files, error_dialog from calibre.utils.icu import sort_key +from calibre.utils.resources import get_image_path as I def texture_dir(): diff --git a/src/calibre/gui2/splash_screen.py b/src/calibre/gui2/splash_screen.py index 5554820439..165f25873b 100644 --- a/src/calibre/gui2/splash_screen.py +++ b/src/calibre/gui2/splash_screen.py @@ -3,12 +3,13 @@ from qt.core import ( - QApplication, QBrush, QColor, QFont, QFontMetrics, QPen, QPixmap, QSplashScreen, - Qt, QPainter + QApplication, QBrush, QColor, QFont, QFontMetrics, QPainter, QPen, QPixmap, + QSplashScreen, Qt, ) from calibre.constants import __appname__, numeric_version from calibre.utils.monotonic import monotonic +from calibre.utils.resources import get_image_path as I class SplashScreen(QSplashScreen): diff --git a/src/calibre/gui2/ui.py b/src/calibre/gui2/ui.py index c2caf99f7d..c545397146 100644 --- a/src/calibre/gui2/ui.py +++ b/src/calibre/gui2/ui.py @@ -59,7 +59,7 @@ from calibre.library import current_library_name from calibre.srv.library_broker import GuiLibraryBroker, db_matches from calibre.utils.config import dynamic, prefs from calibre.utils.ipc.pool import Pool -from calibre.utils.resources import get_path as P +from calibre.utils.resources import get_image_path as I, get_path as P from polyglot.builtins import string_or_bytes from polyglot.queue import Empty, Queue diff --git a/src/calibre/library/catalogs/epub_mobi_builder.py b/src/calibre/library/catalogs/epub_mobi_builder.py index ebfc2594e4..cabe14deab 100644 --- a/src/calibre/library/catalogs/epub_mobi_builder.py +++ b/src/calibre/library/catalogs/epub_mobi_builder.py @@ -1,7 +1,6 @@ #!/usr/bin/env python # License: GPLv3 Copyright: 2010, Greg Riker - import datetime import os import platform @@ -38,7 +37,7 @@ from calibre.utils.filenames import ascii_text, shorten_components_to from calibre.utils.formatter import TemplateFormatter from calibre.utils.icu import capitalize, collation_order, sort_key from calibre.utils.localization import get_lang, lang_as_iso639_1 -from calibre.utils.resources import get_path as P +from calibre.utils.resources import get_image_path as I, get_path as P from calibre.utils.xml_parse import safe_xml_fromstring from calibre.utils.zipfile import ZipFile from polyglot.builtins import iteritems diff --git a/src/calibre/linux.py b/src/calibre/linux.py index c979b39fe2..f81de08db5 100644 --- a/src/calibre/linux.py +++ b/src/calibre/linux.py @@ -15,7 +15,7 @@ from calibre import CurrentDir, __appname__, guess_type, prints from calibre.constants import isbsd, islinux from calibre.customize.ui import all_input_formats from calibre.ptempfile import TemporaryDirectory -from calibre.utils.resources import get_path as P +from calibre.utils.resources import get_image_path as I, get_path as P from polyglot.builtins import iteritems entry_points = { diff --git a/src/calibre/srv/content.py b/src/calibre/srv/content.py index 17fe89b863..91274eeb33 100644 --- a/src/calibre/srv/content.py +++ b/src/calibre/srv/content.py @@ -28,7 +28,7 @@ from calibre.utils.config_base import tweaks from calibre.utils.date import timestampfromdt from calibre.utils.filenames import ascii_filename, atomic_rename from calibre.utils.img import image_from_data, scale_image -from calibre.utils.resources import get_path as P +from calibre.utils.resources import get_image_path as I, get_path as P from calibre.utils.shared_file import share_open from polyglot.binary import as_hex_unicode from polyglot.urllib import quote diff --git a/src/calibre/srv/tests/base.py b/src/calibre/srv/tests/base.py index 5ab2ded116..cf2ce9cd04 100644 --- a/src/calibre/srv/tests/base.py +++ b/src/calibre/srv/tests/base.py @@ -17,7 +17,7 @@ from io import BytesIO from threading import Thread from calibre.srv.utils import ServerLog -from calibre.utils.resources import get_path as P +from calibre.utils.resources import get_image_path as I, get_path as P from polyglot import http_client rmtree = partial(shutil.rmtree, ignore_errors=True) diff --git a/src/calibre/srv/tests/content.py b/src/calibre/srv/tests/content.py index aa76b94ebf..da8c183bff 100644 --- a/src/calibre/srv/tests/content.py +++ b/src/calibre/srv/tests/content.py @@ -14,7 +14,7 @@ from calibre.ebooks.metadata.epub import get_metadata from calibre.ebooks.metadata.opf2 import OPF from calibre.srv.tests.base import LibraryBaseTest from calibre.utils.imghdr import identify -from calibre.utils.resources import get_path as P +from calibre.utils.resources import get_image_path as I, get_path as P from calibre.utils.shared_file import share_open from polyglot import http_client from polyglot.binary import from_hex_unicode diff --git a/src/calibre/test_build.py b/src/calibre/test_build.py index cad191b616..ad1e223347 100644 --- a/src/calibre/test_build.py +++ b/src/calibre/test_build.py @@ -18,7 +18,7 @@ import time import unittest from calibre.constants import islinux, ismacos, iswindows, plugins_loc -from calibre.utils.resources import get_path as P +from calibre.utils.resources import get_image_path as I, get_path as P from polyglot.builtins import iteritems is_ci = os.environ.get('CI', '').lower() == 'true' diff --git a/src/calibre/utils/img.py b/src/calibre/utils/img.py index 3952f4bbb7..e07cdac79e 100644 --- a/src/calibre/utils/img.py +++ b/src/calibre/utils/img.py @@ -11,8 +11,8 @@ import tempfile from contextlib import suppress from io import BytesIO from qt.core import ( - QBuffer, QByteArray, QColor, QImage, QImageReader, QImageWriter, QIODevice, - QPixmap, Qt, QTransform + QBuffer, QByteArray, QColor, QImage, QImageReader, QImageWriter, QIODevice, QPixmap, + Qt, QTransform, ) from threading import Thread @@ -22,6 +22,7 @@ from calibre.ptempfile import TemporaryDirectory from calibre.utils.config_base import tweaks from calibre.utils.filenames import atomic_rename from calibre.utils.imghdr import what +from calibre.utils.resources import get_image_path as I from calibre_extensions import imageops from polyglot.builtins import string_or_bytes @@ -110,7 +111,7 @@ def gif_data_to_png_data(data, discard_animation=False): def set_image_allocation_limit(size_in_mb=1024): with suppress(ImportError): # for people running form source from calibre_extensions.progress_indicator import ( - set_image_allocation_limit as impl + set_image_allocation_limit as impl, ) impl(size_in_mb)