From 1b515cc38eec3a9009c8cc93bf130007ada3f07d Mon Sep 17 00:00:00 2001 From: Jesús Eduardo Date: Fri, 16 Jun 2017 23:22:55 +0000 Subject: update and patch of calibre 3.0.0 --- ...-that-contacts-calibre-servers-to-check-u.patch | 3 +- .../0001-Remove-new_version_notification.patch | 79 ------------- .../0002-Remove-new_version_notification.patch | 79 +++++++++++++ libre/calibre/0003-Disable-plugin-dialog.patch | 13 +++ .../0004-Disable-update-check-by-default.patch | 15 +++ ...stead-of-bundled-feedparser-Python-module.patch | 42 +++++++ libre/calibre/PKGBUILD | 33 ++++-- libre/calibre/libre.patch | 129 ++++++++++----------- 8 files changed, 231 insertions(+), 162 deletions(-) delete mode 100644 libre/calibre/0001-Remove-new_version_notification.patch create mode 100644 libre/calibre/0002-Remove-new_version_notification.patch create mode 100644 libre/calibre/0003-Disable-plugin-dialog.patch create mode 100644 libre/calibre/0004-Disable-update-check-by-default.patch create mode 100644 libre/calibre/0005-Use-packaged-instead-of-bundled-feedparser-Python-module.patch (limited to 'libre') diff --git a/libre/calibre/0001-Remove-code-that-contacts-calibre-servers-to-check-u.patch b/libre/calibre/0001-Remove-code-that-contacts-calibre-servers-to-check-u.patch index fd08922eb..40f303dda 100644 --- a/libre/calibre/0001-Remove-code-that-contacts-calibre-servers-to-check-u.patch +++ b/libre/calibre/0001-Remove-code-that-contacts-calibre-servers-to-check-u.patch @@ -1,5 +1,5 @@ diff --git a/src/calibre/gui2/update.py b/src/calibre/gui2/update.py -index 9ce55d0..04367de 100644 +index 9ce55d0..f9521d7 100644 --- a/src/calibre/gui2/update.py +++ b/src/calibre/gui2/update.py @@ -1,19 +1,17 @@ @@ -76,4 +76,3 @@ index 9ce55d0..04367de 100644 update_plugins = get_plugin_updates_available(raise_error=True) if update_plugins is not None: plugins_update_found = len(update_plugins) - diff --git a/libre/calibre/0001-Remove-new_version_notification.patch b/libre/calibre/0001-Remove-new_version_notification.patch deleted file mode 100644 index a11c04323..000000000 --- a/libre/calibre/0001-Remove-new_version_notification.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py -index 7238c97..1d4491f 100644 ---- a/src/calibre/gui2/__init__.py -+++ b/src/calibre/gui2/__init__.py -@@ -168,8 +168,6 @@ def _config(): # {{{ - help=_('Confirm before deleting')) - c.add_opt('main_window_geometry', default=None, - help=_('Main window geometry')) -- c.add_opt('new_version_notification', default=True, -- help=_('Notify when a new version is available')) - c.add_opt('use_roman_numerals_for_series_number', default=True, - help=_('Use Roman numerals for series number')) - c.add_opt('sort_tags_by', default='name', -diff --git a/src/calibre/gui2/preferences/behavior.py b/src/calibre/gui2/preferences/behavior.py -index 6db4cb1..51b7ed0 100644 ---- a/src/calibre/gui2/preferences/behavior.py -+++ b/src/calibre/gui2/preferences/behavior.py -@@ -40,7 +40,6 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): - - r('network_timeout', prefs) - -- r('new_version_notification', config) - r('upload_news_to_device', config) - r('delete_news_from_library_on_upload', config) - -diff --git a/src/calibre/gui2/preferences/behavior.ui b/src/calibre/gui2/preferences/behavior.ui -index ae4c20d..4bdfa6d 100644 ---- a/src/calibre/gui2/preferences/behavior.ui -+++ b/src/calibre/gui2/preferences/behavior.ui -@@ -14,13 +14,6 @@ - Form - - -- -- -- -- Show notification when &new version is available -- -- -- - - - -diff --git a/src/calibre/gui2/update.py b/src/calibre/gui2/update.py -index 9ce55d0..ca68eb8 100644 ---- a/src/calibre/gui2/update.py -+++ b/src/calibre/gui2/update.py -@@ -125,11 +125,6 @@ class UpdateNotification(QDialog): - self.setWindowIcon(QIcon(I('lt.png'))) - self.l.addWidget(self.logo, 0, 0) - self.l.addWidget(self.label, 0, 1) -- self.cb = QCheckBox( -- _('Show this notification for future updates'), self) -- self.l.addWidget(self.cb, 1, 0, 1, -1) -- self.cb.setChecked(config.get('new_version_notification')) -- self.cb.stateChanged.connect(self.show_future) - self.bb = QDialogButtonBox(self) - b = self.bb.addButton(_('&Get update'), self.bb.AcceptRole) - b.setDefault(True) -@@ -151,9 +146,6 @@ class UpdateNotification(QDialog): - initial_filter=FILTER_UPDATE_AVAILABLE) - d.exec_() - -- def show_future(self, *args): -- config.set('new_version_notification', bool(self.cb.isChecked())) -- - def accept(self): - open_url(QUrl(get_download_url())) - -@@ -201,8 +193,7 @@ class UpdateMixin(object): - self.status_bar.update_label.setVisible(True) - - if has_calibre_update: -- if (force or (config.get('new_version_notification') and -- dynamic.get('update to version %s'%calibre_version, True))): -+ if force: - if not no_show_popup: - self._update_notification__ = UpdateNotification(calibre_version, - number_of_plugin_updates, parent=self) diff --git a/libre/calibre/0002-Remove-new_version_notification.patch b/libre/calibre/0002-Remove-new_version_notification.patch new file mode 100644 index 000000000..1199843ed --- /dev/null +++ b/libre/calibre/0002-Remove-new_version_notification.patch @@ -0,0 +1,79 @@ +diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py +index 45cc47a..14a5a2e 100644 +--- a/src/calibre/gui2/__init__.py ++++ b/src/calibre/gui2/__init__.py +@@ -169,8 +169,6 @@ def _config(): # {{{ + help=_('Confirm before deleting')) + c.add_opt('main_window_geometry', default=None, + help=_('Main window geometry')) +- c.add_opt('new_version_notification', default=True, +- help=_('Notify when a new version is available')) + c.add_opt('use_roman_numerals_for_series_number', default=True, + help=_('Use Roman numerals for series number')) + c.add_opt('sort_tags_by', default='name', +diff --git a/src/calibre/gui2/preferences/behavior.py b/src/calibre/gui2/preferences/behavior.py +index 6db4cb1..51b7ed0 100644 +--- a/src/calibre/gui2/preferences/behavior.py ++++ b/src/calibre/gui2/preferences/behavior.py +@@ -40,7 +40,6 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): + + r('network_timeout', prefs) + +- r('new_version_notification', config) + r('upload_news_to_device', config) + r('delete_news_from_library_on_upload', config) + +diff --git a/src/calibre/gui2/preferences/behavior.ui b/src/calibre/gui2/preferences/behavior.ui +index 41cc831..de56b69 100644 +--- a/src/calibre/gui2/preferences/behavior.ui ++++ b/src/calibre/gui2/preferences/behavior.ui +@@ -14,13 +14,6 @@ + Form + + +- +- +- +- Show notification when &new version is available +- +- +- + + + +diff --git a/src/calibre/gui2/update.py b/src/calibre/gui2/update.py +index 9ce55d0..b08307b 100644 +--- a/src/calibre/gui2/update.py ++++ b/src/calibre/gui2/update.py +@@ -125,11 +125,6 @@ class UpdateNotification(QDialog): + self.setWindowIcon(QIcon(I('lt.png'))) + self.l.addWidget(self.logo, 0, 0) + self.l.addWidget(self.label, 0, 1) +- self.cb = QCheckBox( +- _('Show this notification for future updates'), self) +- self.l.addWidget(self.cb, 1, 0, 1, -1) +- self.cb.setChecked(config.get('new_version_notification')) +- self.cb.stateChanged.connect(self.show_future) + self.bb = QDialogButtonBox(self) + b = self.bb.addButton(_('&Get update'), self.bb.AcceptRole) + b.setDefault(True) +@@ -151,9 +146,6 @@ class UpdateNotification(QDialog): + initial_filter=FILTER_UPDATE_AVAILABLE) + d.exec_() + +- def show_future(self, *args): +- config.set('new_version_notification', bool(self.cb.isChecked())) +- + def accept(self): + open_url(QUrl(get_download_url())) + +@@ -201,8 +193,7 @@ class UpdateMixin(object): + self.status_bar.update_label.setVisible(True) + + if has_calibre_update: +- if (force or (config.get('new_version_notification') and +- dynamic.get('update to version %s'%calibre_version, True))): ++ if force: + if not no_show_popup: + self._update_notification__ = UpdateNotification(calibre_version, + number_of_plugin_updates, parent=self) diff --git a/libre/calibre/0003-Disable-plugin-dialog.patch b/libre/calibre/0003-Disable-plugin-dialog.patch new file mode 100644 index 000000000..4779f4a83 --- /dev/null +++ b/libre/calibre/0003-Disable-plugin-dialog.patch @@ -0,0 +1,13 @@ +diff --git a/src/calibre/gui2/actions/preferences.py b/src/calibre/gui2/actions/preferences.py +index 4d561c0..b9a9b1f 100644 +--- a/src/calibre/gui2/actions/preferences.py ++++ b/src/calibre/gui2/actions/preferences.py +@@ -29,8 +29,6 @@ class PreferencesAction(InterfaceAction): + pm.addAction(QIcon(I('config.png')), _('Preferences'), self.do_config) + cm('welcome wizard', _('Run welcome &wizard'), + icon='wizard.png', triggered=self.gui.run_wizard) +- cm('plugin updater', _('Get plugins to enhance calibre'), +- icon='plugins/plugin_updater.png', triggered=self.get_plugins) + if not DEBUG: + pm.addSeparator() + cm('restart', _('Restart in debug mode'), icon='debug.png', diff --git a/libre/calibre/0004-Disable-update-check-by-default.patch b/libre/calibre/0004-Disable-update-check-by-default.patch new file mode 100644 index 000000000..14678bc12 --- /dev/null +++ b/libre/calibre/0004-Disable-update-check-by-default.patch @@ -0,0 +1,15 @@ +diff --git a/src/calibre/gui2/main.py b/src/calibre/gui2/main.py +index cf8ce58..255741f 100644 +--- a/src/calibre/gui2/main.py ++++ b/src/calibre/gui2/main.py +@@ -49,8 +49,8 @@ path_to_ebook to the database. + help=_('Start minimized to system tray.')) + parser.add_option('-v', '--verbose', default=0, action='count', + help=_('Ignored, do not use. Present only for legacy reasons')) +- parser.add_option('--no-update-check', default=False, action='store_true', +- help=_('Do not check for updates')) ++ parser.add_option('--update-check', dest='no_update_check', default=True, action='store_false', ++ help=_('Check for updates')) + parser.add_option('--ignore-plugins', default=False, action='store_true', + help=_('Ignore custom plugins, useful if you installed a plugin' + ' that is preventing calibre from starting')) diff --git a/libre/calibre/0005-Use-packaged-instead-of-bundled-feedparser-Python-module.patch b/libre/calibre/0005-Use-packaged-instead-of-bundled-feedparser-Python-module.patch new file mode 100644 index 000000000..2e0d06e32 --- /dev/null +++ b/libre/calibre/0005-Use-packaged-instead-of-bundled-feedparser-Python-module.patch @@ -0,0 +1,42 @@ +diff --git a/recipes/lenta_ru.recipe b/recipes/lenta_ru.recipe +index aa4dac4..4b6710c 100644 +--- a/recipes/lenta_ru.recipe ++++ b/recipes/lenta_ru.recipe +@@ -4,11 +4,13 @@ + Lenta.ru + ''' + +-from calibre.web.feeds.feedparser import parse + from calibre.ebooks.BeautifulSoup import Tag + from calibre.web.feeds.news import BasicNewsRecipe ++from feedparser import parse ++from functools import partial + import re + ++parse = partial(parse, agent='Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.2.11) Gecko/20101012 Firefox/3.6.11') + + class LentaRURecipe(BasicNewsRecipe): + title = u'Lenta.ru: \u041d\u043e\u0432\u043e\u0441\u0442\u0438' +diff --git a/src/calibre/web/feeds/__init__.py b/src/calibre/web/feeds/__init__.py +index 8c9d748..f262604 100644 +--- a/src/calibre/web/feeds/__init__.py ++++ b/src/calibre/web/feeds/__init__.py +@@ -11,7 +11,10 @@ from calibre.utils.logging import default_log + from calibre import entity_to_unicode, strftime, force_unicode + from calibre.utils.date import dt_factory, utcnow, local_tz + from calibre.utils.cleantext import clean_ascii_chars, clean_xml_chars ++from feedparser import parse ++from functools import partial + ++parse = partial(parse, agent='Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.2.11) Gecko/20101012 Firefox/3.6.11') + + class Article(object): + +@@ -334,7 +337,6 @@ def feed_from_xml(raw_xml, title=None, oldest_article=7, + max_articles_per_feed=100, + get_article_url=lambda item: item.get('link', None), + log=default_log): +- from calibre.web.feeds.feedparser import parse + # Handle unclosed escaped entities. They trip up feedparser and HBR for one + # generates them + raw_xml = re.sub(r'(&#\d+)([^0-9;])', r'\1;\2', raw_xml) diff --git a/libre/calibre/PKGBUILD b/libre/calibre/PKGBUILD index 708a31159..dee029a82 100644 --- a/libre/calibre/PKGBUILD +++ b/libre/calibre/PKGBUILD @@ -9,8 +9,8 @@ # Contributor: Márcio Silva pkgname=calibre -pkgver=2.85.1 -pkgrel=2.parabola2 +pkgver=3.0.0 +pkgrel=1.parabola1 pkgdesc="Ebook management application, without nonfree decompression engine for RAR archives" arch=('x86_64' 'i686' 'armv7h') url="https://calibre-ebook.com/" @@ -21,7 +21,7 @@ depends=('python2-six' 'python2-dateutil' 'python2-cssutils' 'python2-cherrypy' 'python2-pillow' 'shared-mime-info' 'python2-dnspython' 'python2-pyqt5' 'python2-psutil' 'icu' 'libmtp' 'python2-dbus' 'python2-netifaces' 'python2-cssselect' 'python2-apsw' 'qt5-webkit' - 'qt5-svg' 'python2-chardet' 'python2-pygments' 'mtdev' + 'qt5-svg' 'python2-chardet' 'python2-regex' 'python2-pygments' 'mtdev' 'desktop-file-utils' 'gtk-update-icon-cache' 'optipng' 'udisks2') makedepends=('qt5-x11extras' 'xdg-utils') optdepends=('ipython2: to use calibre-debug' @@ -31,14 +31,20 @@ conflicts=($pkgname-libre) source=("http://download.$pkgname-ebook.com/${pkgver}/$pkgname-${pkgver}.tar.xz" "https://calibre-ebook.com/signatures/${pkgname}-${pkgver}.tar.xz.sig" 'libre.patch' - '0001-Remove-new_version_notification.patch' - '0001-Remove-code-that-contacts-calibre-servers-to-check-u.patch') -sha512sums=('ce29924213fa7461bbf2fc62f26bd53e4eafdf3b0dd58e241071592be4ee038cdb3ac6ac2982229dd0e52595a93aca7d921640ea55796950d1f3ac3c2742af4f' + '0001-Remove-code-that-contacts-calibre-servers-to-check-u.patch' + '0002-Remove-new_version_notification.patch' + '0003-Disable-plugin-dialog.patch' + '0004-Disable-update-check-by-default.patch' + '0005-Use-packaged-instead-of-bundled-feedparser-Python-module.patch') +sha512sums=('3845e05c411334c0f14d116088d5b14d618a623596386ab0eaa2d888f561ca38979abef35d2056e0052fab32dc1e8c4433f6bc656c8bb7917bd98086c070e969' 'SKIP' - '4fc44d06ed9a1107a2eb17e9ab9b0b502dc4210d0776350d285d9b8a52e35b87f15457bcc8fe57336289c6f5700be7ef1c070b14925a8f761b9b2b61c0fd0e5e' - 'e6c3b1ddbd72c4e1cd1b883283102c7e185e2badded24b9d1920364b4ec96ad60fd68d558bfce69e90739568de01aae81ae5ed349f1700697ba153f6d251e2ba' - '29b57398f8243bfa452983413f34b48d69da1577286455ed1356b2c1d12043af70ad389d02a8d64ad848ba4883243b66c7aab7805f3a82deac611bb41e0556f7') -validpgpkeys=('3CE1780F78DD88DF45194FD706BC317B515ACE7C') + 'cf3d97e7dfe3001262de5c47e415b0b617a0b110f0aeec04a10bcdcaf810203b7bf67a9c8438928d5319229dec9a5b6a88f914a79c02a314eb3f9435b7d3892c' + 'd908af0a46d06626e25568dbf3d07e738171822563ade815987035b250fdf49c979091e4a25d42919a92689d1a6e68fc6d90208a2cb9d16f23fe42496e6ce07c' + '02047687608e917fc877248c92be140e8c01c7ce5ac8230b5f9094229da77507b5bc40149e9392145ee702e45974606337bf8b33f3162469065d1b11f4f19059' + '1e3baa6749bd566b2025eb703df2dfde35347d505341e2c74e5326e8b6eff18cd28b67a4eef651ad5a5ed5f4abaacc4e6b12970b11c267bb63b3334e10268442' + '3dce2ae13f666e31ffdc52a4f6dcfc47d6d872d08800c7552b411889576fa7d0ffb43047f98e746a8a7b265b9dceb7ff55b62f5a935de2fd675ccad87fcdfeec' + '802e864a670fdb7a7bd2e9ebf3e3ca4e8566a724cbf931de577ed103f3783ff5b44d9985564692c59153350558a0f8fdaac8ddb3229d2ffb0a66688bbcc5f9fd') +validpgpkeys=('3CE1780F78DD88DF45194FD706BC317B515ACE7C') # Kovid Goyal prepare(){ cd "${pkgname}-${pkgver}" @@ -51,8 +57,11 @@ prepare(){ rm -v resources/images/mimetypes/{cbr,rar}.png rm -v imgsrc/mimetypes/rar.svg patch -Np1 -i "${srcdir}/libre.patch" - patch -Np1 -i "${srcdir}/0001-Remove-new_version_notification.patch" patch -Np1 -i "${srcdir}/0001-Remove-code-that-contacts-calibre-servers-to-check-u.patch" + patch -Np1 -i "${srcdir}/0002-Remove-new_version_notification.patch" + patch -Np1 -i "${srcdir}/0003-Disable-plugin-dialog.patch" + patch -Np1 -i "${srcdir}/0004-Disable-update-check-by-default.patch" + patch -Np1 -i "${srcdir}/0005-Use-packaged-instead-of-bundled-feedparser-Python-module.patch" # Remove unneeded files and libs # FIXME: remove html5lib too, but the latest html5lib breaks calibre. And calibre @@ -92,4 +101,4 @@ package() { # Compiling bytecode FS#33392 python2 -m compileall "${pkgdir}/usr/lib/calibre/" python2 -O -m compileall "${pkgdir}/usr/lib/calibre/" -} +} diff --git a/libre/calibre/libre.patch b/libre/calibre/libre.patch index e899c836a..7de696940 100644 --- a/libre/calibre/libre.patch +++ b/libre/calibre/libre.patch @@ -1,22 +1,26 @@ diff --git a/resources/images.qrc b/resources/images.qrc -index ef1d715..20da7fc 100644 +index 4d00c27..0e6eea1 100644 --- a/resources/images.qrc +++ b/resources/images.qrc -@@ -183,11 +183,9 @@ - images/mimetypes/html.png - images/mimetypes/xps.png - images/mimetypes/svg.png +@@ -115,7 +115,6 @@ + images/mimetypes/azw2.png + images/mimetypes/azw3.png + images/mimetypes/bmp.png -images/mimetypes/cbr.png - images/mimetypes/tpz.png - images/mimetypes/snb.png + images/mimetypes/cbz.png + images/mimetypes/computer.png + images/mimetypes/dir.png +@@ -134,7 +133,6 @@ + images/mimetypes/opml.png + images/mimetypes/pdf.png images/mimetypes/png.png -images/mimetypes/rar.png - images/mimetypes/mobi.png - images/mimetypes/gif.png - images/mimetypes/pdf.png -@@ -218,4 +216,4 @@ - images/plugins/plugin_updater_updates.png - images/plugins/plugin_upgrade_valid.png + images/mimetypes/rtf.png + images/mimetypes/snb.png + images/mimetypes/svg.png +@@ -220,4 +218,4 @@ + images/window-close.png + images/wizard.png - \ No newline at end of file @@ -62,10 +66,10 @@ index d5ecb06..b3e40d0 100644 \'/usr/include/ImageMagick', \] diff --git a/setup/extensions.json b/setup/extensions.json -index 1f6d1fb..1273904 100644 +index 6b97ea6..d9a9f68 100644 --- a/setup/extensions.json +++ b/setup/extensions.json -@@ -211,16 +211,5 @@ +@@ -199,16 +199,5 @@ "sources": "calibre/devices/mtp/unix/devices.c calibre/devices/mtp/unix/libmtp.c", "headers": "calibre/devices/mtp/unix/devices.h calibre/devices/mtp/unix/upstream/music-players.h calibre/devices/mtp/unix/upstream/device-flags.h", "libraries": "mtp" @@ -82,19 +86,6 @@ index 1f6d1fb..1273904 100644 - "windows_libraries": "User32 Advapi32 kernel32 Shell32" } ] -diff --git a/setup/installer/windows/freeze.py b/setup/installer/windows/freeze.py -index 4d173b0..251c188 100644 ---- a/setup/installer/windows/freeze.py -+++ b/setup/installer/windows/freeze.py -@@ -674,7 +674,7 @@ class Win32Freeze(Command, WixMixIn): - # Because of https://github.com/fancycode/MemoryModule/issues/4 - # any extensions that use C++ exceptions must be loaded - # from files -- 'unrar.pyd', 'wpd.pyd', 'podofo.pyd', 'imageops.pyd', -+ 'wpd.pyd', 'podofo.pyd', 'imageops.pyd', - 'progress_indicator.pyd', 'hunspell.pyd', - # dupypy crashes when loaded from the zip file - 'dukpy.pyd', diff --git a/setup/resources.py b/setup/resources.py index 7fb34bd..3e5ef3b 100644 --- a/setup/resources.py @@ -109,7 +100,7 @@ index 7fb34bd..3e5ef3b 100644 for ouf in available_output_formats(): of = ouf if ouf == 'oeb' else 'dummy.'+ouf diff --git a/src/calibre/__init__.py b/src/calibre/__init__.py -index faa54dd..5b9fbee 100644 +index dbebce1..379bab0 100644 --- a/src/calibre/__init__.py +++ b/src/calibre/__init__.py @@ -292,10 +292,7 @@ def extract(path, dir): @@ -135,17 +126,21 @@ index faa54dd..5b9fbee 100644 raise Exception('Unknown archive type') extractor(path, dir) diff --git a/src/calibre/constants.py b/src/calibre/constants.py -index 673d2ef..64e4cc0 100644 +index 628fb93..4381b5b 100644 --- a/src/calibre/constants.py +++ b/src/calibre/constants.py -@@ -154,7 +154,6 @@ class Plugins(collections.Mapping): +@@ -158,9 +158,10 @@ class Plugins(collections.Mapping): 'zlib2', 'html', 'freetype', - 'unrar', 'imageops', 'qt_hack', - '_regex', ++ '_regex', ++ 'msgpack', + 'hunspell', + '_patiencediff_c', + 'bzzdec', diff --git a/src/calibre/customize/builtins.py b/src/calibre/customize/builtins.py index 5efd33b..9d2027d 100644 --- a/src/calibre/customize/builtins.py @@ -213,7 +208,7 @@ index eaa97e7..ed37232 100644 diff --git a/src/calibre/devices/kobo/driver.py b/src/calibre/devices/kobo/driver.py -index 531c1cd..880aa3b 100644 +index 8670797..75ce15a 100644 --- a/src/calibre/devices/kobo/driver.py +++ b/src/calibre/devices/kobo/driver.py @@ -78,7 +78,7 @@ class KOBO(USBMS): @@ -270,7 +265,7 @@ index f64acc5..2020bae 100644 core_usage = -1 diff --git a/src/calibre/ebooks/conversion/plumber.py b/src/calibre/ebooks/conversion/plumber.py -index bf8853b..917c485 100644 +index 5cad968..c56e67b 100644 --- a/src/calibre/ebooks/conversion/plumber.py +++ b/src/calibre/ebooks/conversion/plumber.py @@ -43,7 +43,7 @@ various stages of conversion. The stages are: @@ -383,7 +378,7 @@ index 08208c9..ff37b80 100644 spath = i.path mt = None diff --git a/src/calibre/gui2/actions/add.py b/src/calibre/gui2/actions/add.py -index c263495..8945075 100644 +index 2a00538..102df5b 100644 --- a/src/calibre/gui2/actions/add.py +++ b/src/calibre/gui2/actions/add.py @@ -36,8 +36,8 @@ def get_filters(): @@ -429,21 +424,8 @@ index 2aee3ce..a125939 100644 return tdir try: -diff --git a/src/calibre/library/server/opds.py b/src/calibre/library/server/opds.py -index 34157a0..718af59 100644 ---- a/src/calibre/library/server/opds.py -+++ b/src/calibre/library/server/opds.py -@@ -28,7 +28,7 @@ BASE_HREFS = { - 1 : '/opds', - } - --STANZA_FORMATS = frozenset(['epub', 'pdb', 'pdf', 'cbr', 'cbz', 'djvu']) -+STANZA_FORMATS = frozenset(['epub', 'pdb', 'pdf', 'cbz', 'djvu']) - - - def url_for(name, version, **kwargs): diff --git a/src/calibre/linux.py b/src/calibre/linux.py -index ebc8904..60036b3 100644 +index 0829417..78605e9 100644 --- a/src/calibre/linux.py +++ b/src/calibre/linux.py @@ -317,7 +317,7 @@ class ZshCompleter(object): # {{{ @@ -456,10 +438,10 @@ index ebc8904..60036b3 100644 p = (get_parser(input_fmt=fmt) if is_input else get_parser(output_fmt=fmt)) diff --git a/src/calibre/test_build.py b/src/calibre/test_build.py -index f11c08b..3176389 100644 +index 9d80091..5a06bb4 100644 --- a/src/calibre/test_build.py +++ b/src/calibre/test_build.py -@@ -168,10 +168,6 @@ class BuildTest(unittest.TestCase): +@@ -194,10 +194,6 @@ class BuildTest(unittest.TestCase): from calibre.gui2.win_file_dialogs import test test() @@ -471,10 +453,10 @@ index f11c08b..3176389 100644 def test_wpd(self): wpd = plugins['wpd'][0] diff --git a/src/calibre/utils/search_query_parser.py b/src/calibre/utils/search_query_parser.py -index fe04af0..130fb81 100644 +index 015b8f2..deded6d 100644 --- a/src/calibre/utils/search_query_parser.py +++ b/src/calibre/utils/search_query_parser.py -@@ -455,16 +455,16 @@ class Tester(SearchQueryParser): +@@ -453,16 +453,16 @@ class Tester(SearchQueryParser): u'Tor Books', u'lrf'], 8: [u'Stalky and Co.', u'Rudyard Kipling', u'manybooks.net', u'lrf'], @@ -496,7 +478,7 @@ index fe04af0..130fb81 100644 16: [u'Quicksilver', u'Neal Stephenson', None, u'lrf,zip'], 17: [u'The Comedies of William Shakespeare', u'William Shakespeare', -@@ -479,15 +479,15 @@ class Tester(SearchQueryParser): +@@ -477,15 +477,15 @@ class Tester(SearchQueryParser): None, u'lrf'], 20: [u'An Ideal Husband', u'Oscar Wilde', u'manybooks.net', u'lrf'], @@ -521,7 +503,7 @@ index fe04af0..130fb81 100644 30: [u'Genghis Khan and The Making of the Modern World', u'Jack Weatherford Orc', u'Three Rivers Press', -@@ -498,9 +498,9 @@ class Tester(SearchQueryParser): +@@ -496,9 +496,9 @@ class Tester(SearchQueryParser): u'lrf,zip'], 32: [u'The Killer Angels', u'Michael Shaara', None, u'html,lrf'], 33: [u'Band Of Brothers', u'Stephen E Ambrose', None, u'lrf,txt'], @@ -533,7 +515,7 @@ index fe04af0..130fb81 100644 37: [u'Masterman Ready', u'Marryat, Captain Frederick', None, u'lrf'], 38: [u'With the Lightnings', u'David Drake', -@@ -513,16 +513,16 @@ class Tester(SearchQueryParser): +@@ -511,16 +511,16 @@ class Tester(SearchQueryParser): 40: [u'The Far Side of The Stars', u'David Drake', u'Baen Publishing Enterprises', @@ -554,7 +536,7 @@ index fe04af0..130fb81 100644 44: [u'Harry Potter and the Order of the Phoenix', u'J. K. Rowling', None, -@@ -531,12 +531,12 @@ class Tester(SearchQueryParser): +@@ -529,12 +529,12 @@ class Tester(SearchQueryParser): 46: [u'The Stars at War II', u'Steve White', u'Baen Publishing Enterprises', @@ -570,7 +552,7 @@ index fe04af0..130fb81 100644 49: [u'Harry Potter and the Prisoner of Azkaban', u'J. K. Rowling', None, -@@ -549,20 +549,20 @@ class Tester(SearchQueryParser): +@@ -547,20 +547,20 @@ class Tester(SearchQueryParser): u'J.K. Rowling', None, u'lit,lrf,pdf'], @@ -596,7 +578,7 @@ index fe04af0..130fb81 100644 89: [u'Master and commander', u"Patrick O'Brian", u'Fontana,\n1971', -@@ -570,7 +570,7 @@ class Tester(SearchQueryParser): +@@ -568,7 +568,7 @@ class Tester(SearchQueryParser): 91: [u'A Companion to Wolves', u'Sarah Monette,Elizabeth Beär', None, @@ -605,7 +587,7 @@ index fe04af0..130fb81 100644 92: [u'The Lions of al-Rassan', u'Guy Gavriel Kay', u'Eos', u'lit,lrf'], 93: [u'Gardens of the Moon', u'Steven Erikson', u'Tor Fantasy', u'lit,lrf'], 95: [u'The Master and Margarita', -@@ -594,7 +594,7 @@ class Tester(SearchQueryParser): +@@ -592,7 +592,7 @@ class Tester(SearchQueryParser): 144: [u'Atonement', u'Ian McEwan', u'New York : Nan A. Talese/Doubleday, 2002.', @@ -614,7 +596,7 @@ index fe04af0..130fb81 100644 146: [u'1632', u'Eric Flint', u'Baen Books', u'lit,lrf'], 147: [u'1633', u'David Weber,Eric Flint,Dru Blair', u'Baen', u'lit,lrf'], 148: [u'1634: The Baltic War', -@@ -647,7 +647,7 @@ class Tester(SearchQueryParser): +@@ -645,7 +645,7 @@ class Tester(SearchQueryParser): 253: [u"Hunter's Run", u'George R. R. Martin,Gardner Dozois,Daniel Abraham', u'Eos', @@ -623,7 +605,7 @@ index fe04af0..130fb81 100644 257: [u'Knife of Dreams', u'Robert Jordan', None, u'lit,lrf'], 258: [u'Saturday', u'Ian McEwan', -@@ -667,7 +667,7 @@ class Tester(SearchQueryParser): +@@ -665,7 +665,7 @@ class Tester(SearchQueryParser): u'New York : Random House, 2005.', u'lit,lrf'], 269: [u'Reap the Whirlwind', u'David Mack', u'Star Trek', u'lit,lrf'], @@ -632,7 +614,7 @@ index fe04af0..130fb81 100644 273: [u'The Thousandfold Thought', u'R. Scott Bakker', u'Overlook TP', -@@ -675,17 +675,17 @@ class Tester(SearchQueryParser): +@@ -673,17 +673,17 @@ class Tester(SearchQueryParser): 276: [u'Elantris', u'Brandon Sanderson', u'New York : Tor, 2005.', @@ -654,7 +636,7 @@ index fe04af0..130fb81 100644 325: [u"Foundation's Triumph", u'David Brin', u'Easton Press', u'lit,lrf'], 327: [u'I am Charlotte Simmons', u'Tom Wolfe', u'Vintage', u'htm,lrf'], 335: [u'The Currents of Space', u'Isaac Asimov', None, u'lit,lrf'], -@@ -715,15 +715,15 @@ class Tester(SearchQueryParser): +@@ -713,15 +713,15 @@ class Tester(SearchQueryParser): u'Aspect', u'lit,lrf'], 356: [u'The Naked God', u'Peter F. Hamilton', u'Aspect', u'lit,lrf'], @@ -687,19 +669,28 @@ index 16085cf..420efaa 100755 def __init__(self, data, baseuri, encoding): self.document = BeautifulSoup.BeautifulSoup(data) diff --git a/translations/calibre/main.pot b/translations/calibre/main.pot -index e55dc61..837e492 100644 +index 50735db..b1be5c1 100644 --- a/translations/calibre/main.pot +++ b/translations/calibre/main.pot -@@ -4459,7 +4459,7 @@ msgid "Set book ID" +@@ -5190,7 +5190,7 @@ msgid "Set book ID" msgstr "" #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/archive.py:44 -msgid "Extract common e-book formats from archive files (ZIP/RAR). Also try to autodetect if they are actually CBZ/CBR files." -+msgid "Extract common e-book formats from archive files (ZIP). Also try to autodetect if they are actually CBZ/CBR files." ++msgid "Extract common e-book formats from archive files (ZIP). Also try to autodetect if they are actually CBZ files." + msgstr "" + + #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:658 +@@ -7051,7 +7051,7 @@ msgid "Add books from directories, including sub-directories (Multiple books per + msgstr "" + + #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:67 +-msgid "Add multiple books from archive (ZIP/RAR)" ++msgid "Add multiple books from archive (ZIP)" msgstr "" - #: /home/kovid/work/calibre/src/calibre/ebooks/metadata/book/base.py:655 -@@ -12903,7 +12903,7 @@ msgid "You can also customise the plugin locations using Preferences -> Inter + #: /home/kovid/work/calibre/src/calibre/gui2/actions/add.py:69 +@@ -13609,7 +13609,7 @@ msgid "You can also customise the plugin locations using Preferences -> Inter msgstr "" #: /home/kovid/work/calibre/src/calibre/gui2/dialogs/comicconf.py:36 -- cgit v1.2.3