Output time to prepare book in debug mode

This commit is contained in:
Kovid Goyal 2019-10-16 06:30:09 +05:30
parent 3bf9fe32ac
commit 9e9a863e19
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C

View File

@ -17,6 +17,7 @@ from PyQt5.Qt import (
) )
from calibre import prints from calibre import prints
from calibre.constants import DEBUG
from calibre.customize.ui import available_input_formats from calibre.customize.ui import available_input_formats
from calibre.gui2 import choose_files, error_dialog from calibre.gui2 import choose_files, error_dialog
from calibre.gui2.dialogs.drm_error import DRMErrorMessage from calibre.gui2.dialogs.drm_error import DRMErrorMessage
@ -37,6 +38,7 @@ from calibre.gui2.viewer.web_view import (
from calibre.utils.date import utcnow from calibre.utils.date import utcnow
from calibre.utils.img import image_from_path from calibre.utils.img import image_from_path
from calibre.utils.ipc.simple_worker import WorkerError from calibre.utils.ipc.simple_worker import WorkerError
from calibre.utils.monotonic import monotonic
from calibre.utils.serialize import json_loads from calibre.utils.serialize import json_loads
from polyglot.builtins import as_bytes, itervalues from polyglot.builtins import as_bytes, itervalues
@ -309,6 +311,8 @@ class EbookViewer(MainWindow):
self.load_ebook(self.current_book_data['pathtoebook'], reload_book=True) self.load_ebook(self.current_book_data['pathtoebook'], reload_book=True)
def _load_ebook_worker(self, pathtoebook, open_at, reload_book): def _load_ebook_worker(self, pathtoebook, open_at, reload_book):
if DEBUG:
start_time = monotonic()
try: try:
ans = prepare_book(pathtoebook, force=reload_book, prepare_notify=self.prepare_notify) ans = prepare_book(pathtoebook, force=reload_book, prepare_notify=self.prepare_notify)
except WorkerError as e: except WorkerError as e:
@ -317,6 +321,8 @@ class EbookViewer(MainWindow):
import traceback import traceback
self.book_prepared.emit(False, {'exception': e, 'tb': traceback.format_exc(), 'pathtoebook': pathtoebook}) self.book_prepared.emit(False, {'exception': e, 'tb': traceback.format_exc(), 'pathtoebook': pathtoebook})
else: else:
if DEBUG:
print('Book prepared in {:.2f} seconds'.format(monotonic() - start_time))
self.book_prepared.emit(True, {'base': ans, 'pathtoebook': pathtoebook, 'open_at': open_at}) self.book_prepared.emit(True, {'base': ans, 'pathtoebook': pathtoebook, 'open_at': open_at})
def prepare_notify(self): def prepare_notify(self):