summaryrefslogtreecommitdiff
path: root/libre/calibre/libre.patch
diff options
context:
space:
mode:
authorbill-auger <mr.j.spam.me@gmail.com>2020-07-22 03:13:12 -0400
committerbill-auger <mr.j.spam.me@gmail.com>2020-08-02 17:05:41 -0400
commitb450dad250c3d4bb86d1fd07487deabd9216a6fe (patch)
treec82f991aa79e2efcd135ad4158b7d01d2e50e6b8 /libre/calibre/libre.patch
parentf8689408d1528c0e276f049d56339631657e5d13 (diff)
downloadabslibre-b450dad250c3d4bb86d1fd07487deabd9216a6fe.tar.gz
abslibre-b450dad250c3d4bb86d1fd07487deabd9216a6fe.tar.bz2
abslibre-b450dad250c3d4bb86d1fd07487deabd9216a6fe.zip
[calibre->calibre3]: rename package and backport new patch
Diffstat (limited to 'libre/calibre/libre.patch')
-rw-r--r--libre/calibre/libre.patch817
1 files changed, 0 insertions, 817 deletions
diff --git a/libre/calibre/libre.patch b/libre/calibre/libre.patch
deleted file mode 100644
index 20fefb07b..000000000
--- a/libre/calibre/libre.patch
+++ /dev/null
@@ -1,817 +0,0 @@
---- calibre-3.46.0.orig/manual/conversion.rst 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/manual/conversion.rst 2019-08-26 01:03:19.365098742 -0500
-@@ -747,7 +747,7 @@
- Comic book collections
- ~~~~~~~~~~~~~~~~~~~~~~~~~
-
--A comic book collection is a .cbc file. A .cbc file is a ZIP file that contains other CBZ/CBR files. In addition the
-+A comic book collection is a .cbc file. A .cbc file is a ZIP file that contains other CBZ files. In addition the
- .cbc file must contain a simple text file called comics.txt, encoded in UTF-8. The comics.txt file must contain
- a list of the comics files inside the .cbc file, in the form filename:title, as shown below::
-
---- calibre-3.46.0.orig/manual/faq.rst 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/manual/faq.rst 2019-08-26 01:07:40.285096018 -0500
-@@ -18,7 +18,7 @@
- calibre supports the conversion of many input formats to many output formats.
- It can convert every input format in the following list, to every output format.
-
--*Input Formats:* AZW, AZW3, AZW4, CBZ, CBR, CBC, CHM, DJVU, DOCX, EPUB, FB2, FBZ, HTML, HTMLZ, LIT, LRF, MOBI, ODT, PDF, PRC, PDB, PML, RB, RTF, SNB, TCR, TXT, TXTZ
-+*Input Formats:* AZW, AZW3, AZW4, CBZ, CBC, CHM, DJVU, DOCX, EPUB, FB2, FBZ, HTML, HTMLZ, LIT, LRF, MOBI, ODT, PDF, PRC, PDB, PML, RB, RTF, SNB, TCR, TXT, TXTZ
-
- *Output Formats:* AZW3, EPUB, DOCX, FB2, HTMLZ, OEB, LIT, LRF, MOBI, PDB, PMLZ, RB, PDF, RTF, SNB, TCR, TXT, TXTZ, ZIP
-
---- calibre-3.46.0.orig/manual/gui.rst 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/manual/gui.rst 2019-08-26 01:09:15.315095026 -0500
-@@ -51,7 +51,7 @@
-
- 3. **Add books from directories, including sub-directories (Multiple books per directory, assumes every e-book file is a different book)**: Allows you to choose a directory. The directory and all its sub-directories are scanned recursively and any e-books found are added to the library. calibre assumes that each directory contains many books. All e-book files with the same name in a directory are assumed to be the same book in different formats. E-books with different names are added as different books.
-
-- 4. **Add multiple books from archive (ZIP/RAR)**: Allows you to add multiple e-books that are stored inside the selected ZIP or RAR files. It is a convenient shortcut that avoids having to first unzip the archive and then add the books via one of the above two options.
-+ 4. **Add multiple books from archive (ZIP)**: Allows you to add multiple e-books that are stored inside the selected ZIP files. It is a convenient shortcut that avoids having to first unzip the archive and then add the books via one of the above two options.
-
- 5. **Add empty book (Book Entry with no formats)**: Allows you to create a blank book record. This can be used to then manually fill out the information about a book that you may not have yet in your collection.
-
---- calibre-3.46.0.orig/resources/mime.types 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/resources/mime.types 2019-08-26 01:12:33.905092952 -0500
-@@ -138,7 +138,6 @@
- application/prs.nprend
- application/prs.plucker
- application/qsig
--application/rar rar
- application/rdf+xml rdf
- application/reginfo+xml rif
- application/relax-ng-compact-syntax rnc
-@@ -849,7 +848,6 @@
- application/x-pkcs7-crl crl
- application/x-python-code pyc pyo
- application/x-quicktimeplayer qtl
--application/x-rar-compressed rar
- application/x-redhat-package-manager rpm
- application/x-sh sh
- application/x-shar shar
-@@ -1372,7 +1370,6 @@
- application/x-kindle-application azw2
- application/x-mobi8-ebook azw3
- application/x-cbz cbz
--application/x-cbr cbr
- application/x-cb7 cb7
- application/x-cbc cbc
- application/x-koboreader-ebook kobo
---- calibre-3.46.0.orig/setup/resources.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/setup/resources.py 2019-08-26 16:14:52.537133971 -0500
-@@ -348,7 +348,7 @@
- log = Log()
- # log.outputs = []
- for inf in supported_input_formats():
-- if inf in ('zip', 'rar', 'oebzip'):
-+ if inf in ('zip', 'oebzip'):
- continue
- for ouf in available_output_formats():
- of = ouf if ouf == 'oeb' else 'dummy.'+ouf
---- calibre-3.46.0.orig/src/calibre/customize/builtins.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/customize/builtins.py 2019-08-26 16:19:10.547135583 -0500
-@@ -133,7 +133,7 @@
- class ComicMetadataReader(MetadataReaderPlugin):
-
- name = 'Read comic metadata'
-- file_types = {'cbr', 'cbz'}
-+ file_types = {'cbz'}
- description = _('Extract cover from comic files')
-
- def customization_help(self, gui=False):
-@@ -144,19 +144,14 @@
- pos = stream.tell()
- id_ = stream.read(3)
- stream.seek(pos)
-- if id_ == b'Rar':
-- ftype = 'cbr'
-- elif id_.startswith(b'PK'):
-+ if id_.startswith(b'PK'):
- ftype = 'cbz'
-- if ftype == 'cbr':
-- from calibre.utils.unrar import extract_cover_image
-- else:
-- from calibre.libunzip import extract_cover_image
-+ from calibre.libunzip import extract_cover_image
- from calibre.ebooks.metadata import MetaInformation
- ret = extract_cover_image(stream)
- mi = MetaInformation(None, None)
- stream.seek(0)
-- if ftype in {'cbr', 'cbz'}:
-+ if ftype in {'cbz'}:
- series_index = self.site_customization
- if series_index not in {'volume', 'issue'}:
- series_index = 'volume'
-@@ -355,17 +350,6 @@
- return get_metadata(stream)
-
-
--class RARMetadataReader(MetadataReaderPlugin):
--
-- name = 'Read RAR metadata'
-- file_types = {'rar'}
-- description = _('Read metadata from e-books in RAR archives')
--
-- def get_metadata(self, stream, ftype):
-- from calibre.ebooks.metadata.rar import get_metadata
-- return get_metadata(stream)
--
--
- class RBMetadataReader(MetadataReaderPlugin):
-
- name = 'Read RB metadata'
---- calibre-3.46.0.orig/src/calibre/customize/ui.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/customize/ui.py 2019-08-26 16:22:32.957136847 -0500
-@@ -538,7 +538,7 @@
- if not is_disabled(plugin):
- for format in plugin.file_types:
- formats.add(format)
-- formats.add('zip'), formats.add('rar')
-+ formats.add('zip')
- return formats
-
-
---- calibre-3.46.0.orig/src/calibre/devices/kobo/driver.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/devices/kobo/driver.py 2019-08-26 16:24:06.647137432 -0500
-@@ -92,7 +92,7 @@
- book_class = Book
-
- # Ordered list of supported formats
-- FORMATS = ['kepub', 'epub', 'pdf', 'txt', 'cbz', 'cbr']
-+ FORMATS = ['kepub', 'epub', 'pdf', 'txt', 'cbz']
- CAN_SET_METADATA = ['collections']
-
- VENDOR_ID = [0x2237]
---- calibre-3.46.0.orig/src/calibre/devices/misc.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/devices/misc.py 2019-08-26 16:25:22.907137908 -0500
-@@ -448,7 +448,7 @@
- EBOOK_DIR_MAIN = 'Documents'
- SCAN_FROM_ROOT = True
-
-- VENDOR_NAME = ['ROCKCHIP', 'CBR']
-+ VENDOR_NAME = ['ROCKCHIP']
- WINDOWS_MAIN_MEM = WINDOWS_CARD_A_MEM = ['RK28_SDK_DEMO', 'EINK_EBOOK_READE']
- SUPPORTS_SUB_DIRS = True
-
---- calibre-3.46.0.orig/src/calibre/devices/mtp/filesystem_cache.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/devices/mtp/filesystem_cache.py 2019-08-26 16:26:18.837138258 -0500
-@@ -17,7 +17,7 @@
- from calibre.utils.icu import sort_key, lower
- from calibre.ebooks import BOOK_EXTENSIONS
-
--bexts = frozenset(BOOK_EXTENSIONS) - {'mbp', 'tan', 'rar', 'zip', 'xml'}
-+bexts = frozenset(BOOK_EXTENSIONS) - {'mbp', 'tan', 'zip', 'xml'}
-
-
- class FileOrFolder(object):
---- calibre-3.46.0.orig/src/calibre/ebooks/comic/__init__.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/ebooks/comic/__init__.py 2019-08-26 16:28:07.637138937 -0500
-@@ -6,7 +6,7 @@
- __docformat__ = 'restructuredtext en'
-
- '''
--Convert CBR/CBZ files to LRF.
-+Convert CBZ files to LRF.
- '''
-
- import sys
---- calibre-3.46.0.orig/src/calibre/ebooks/conversion/plugins/comic_input.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/ebooks/conversion/plugins/comic_input.py 2019-08-26 16:30:49.127139946 -0500
-@@ -20,8 +20,8 @@
-
- name = 'Comic Input'
- author = 'Kovid Goyal'
-- description = 'Optimize comic files (.cbz, .cbr, .cbc) for viewing on portable devices'
-- file_types = {'cbz', 'cbr', 'cbc'}
-+ description = 'Optimize comic files (.cbz, .cbc) for viewing on portable devices'
-+ file_types = {'cbz', 'cbc'}
- is_image_collection = True
- commit_name = 'comic_input'
- core_usage = -1
---- calibre-3.46.0.orig/src/calibre/ebooks/conversion/plumber.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/ebooks/conversion/plumber.py 2019-08-26 16:32:33.387140597 -0500
-@@ -46,7 +46,7 @@
-
- def supported_input_formats():
- fmts = available_input_formats()
-- for x in ('zip', 'rar', 'oebzip'):
-+ for x in ('zip', 'oebzip'):
- fmts.add(x)
- return fmts
-
-@@ -67,7 +67,7 @@
- self.global_reporter(global_frac, msg)
-
-
--ARCHIVE_FMTS = ('zip', 'rar', 'oebzip')
-+ARCHIVE_FMTS = ('zip', 'oebzip')
-
-
- class Plumber(object):
---- calibre-3.46.0.orig/src/calibre/ebooks/__init__.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/ebooks/__init__.py 2019-08-26 16:33:48.557141066 -0500
-@@ -33,9 +33,9 @@
- pass
-
-
--BOOK_EXTENSIONS = ['lrf', 'rar', 'zip', 'rtf', 'lit', 'txt', 'txtz', 'text', 'htm', 'xhtm',
-+BOOK_EXTENSIONS = ['lrf', 'zip', 'rtf', 'lit', 'txt', 'txtz', 'text', 'htm', 'xhtm',
- 'html', 'htmlz', 'xhtml', 'pdf', 'pdb', 'updb', 'pdr', 'prc', 'mobi', 'azw', 'doc',
-- 'epub', 'fb2', 'fbz', 'djv', 'djvu', 'lrx', 'cbr', 'cbz', 'cbc', 'oebzip',
-+ 'epub', 'fb2', 'fbz', 'djv', 'djvu', 'lrx', 'cbz', 'cbc', 'oebzip',
- 'rb', 'imp', 'odt', 'chm', 'tpz', 'azw1', 'pml', 'pmlz', 'mbp', 'tan', 'snb',
- 'xps', 'oxps', 'azw4', 'book', 'zbf', 'pobi', 'docx', 'docm', 'md',
- 'textile', 'markdown', 'ibook', 'ibooks', 'iba', 'azw3', 'ps', 'kepub', 'kfx']
---- calibre-3.46.0.orig/src/calibre/ebooks/metadata/archive.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/ebooks/metadata/archive.py 2019-08-26 16:47:19.547146131 -0500
-@@ -30,8 +30,6 @@
- ans = None
- if id_ == stringFileHeader:
- ans = 'zip'
-- elif id_.startswith(b'Rar'):
-- ans = 'rar'
- try:
- stream.seek(pos)
- except Exception:
-@@ -43,24 +41,16 @@
- name = 'Archive Extract'
- author = 'Kovid Goyal'
- description = _('Extract common e-book formats from archive files '
-- '(ZIP/RAR). Also try to autodetect if they are actually '
-- 'CBZ/CBR files.')
-- file_types = {'zip', 'rar'}
-+ '(ZIP). Also try to autodetect if they are actually '
-+ 'CBZ files.')
-+ file_types = set(['zip'])
- supported_platforms = ['windows', 'osx', 'linux']
- on_import = True
-
- def run(self, archive):
- from calibre.utils.zipfile import ZipFile
-- is_rar = archive.lower().endswith('.rar')
-- if is_rar:
-- from calibre.utils.unrar import extract_member, names
-- else:
-- zf = ZipFile(archive, 'r')
--
-- if is_rar:
-- fnames = list(names(archive))
-- else:
-- fnames = zf.namelist()
-+ zf = ZipFile(archive, 'r')
-+ fnames = zf.namelist()
-
- def fname_ok(fname):
- bn = os.path.basename(fname).lower()
-@@ -76,7 +66,7 @@
-
- fnames = list(filter(fname_ok, fnames))
- if is_comic(fnames):
-- ext = '.cbr' if is_rar else '.cbz'
-+ ext = '.cbz'
- of = self.temporary_file('_archive_extract'+ext)
- with open(archive, 'rb') as f:
- of.write(f.read())
-@@ -93,11 +83,7 @@
-
- of = self.temporary_file('_archive_extract.'+ext)
- with closing(of):
-- if is_rar:
-- data = extract_member(archive, match=None, name=fname)[1]
-- of.write(data)
-- else:
-- of.write(zf.read(fname))
-+ of.write(zf.read(fname))
- return of.name
-
-
-@@ -168,8 +154,5 @@
- from calibre.utils.zipfile import ZipFile
- zf = ZipFile(stream)
- comment = zf.comment
-- elif stream_type == 'cbr':
-- from calibre.utils.unrar import comment as get_comment
-- comment = get_comment(stream)
-
- return parse_comic_comment(comment or b'{}', series_index=series_index)
---- calibre-3.46.0.orig/src/calibre/ebooks/oeb/iterator/book.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/ebooks/oeb/iterator/book.py 2019-08-26 16:48:49.227146691 -0500
-@@ -160,7 +160,7 @@
- else:
- ordered = [i for i in self.opf.spine if i.is_linear] + \
- [i for i in self.opf.spine if not i.is_linear]
-- is_comic = input_fmt.lower() in {'cbc', 'cbz', 'cbr', 'cb7'}
-+ is_comic = input_fmt.lower() in {'cbc', 'cbz', 'cb7'}
- for i in ordered:
- spath = i.path
- mt = None
---- calibre-3.46.0.orig/src/calibre/gui2/actions/add.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/gui2/actions/add.py 2019-08-26 17:12:43.337155648 -0500
-@@ -37,8 +37,8 @@
- (_('HTML books'), ['htm', 'html', 'xhtm', 'xhtml']),
- (_('LIT books'), ['lit']),
- (_('Text books'), ['txt', 'text', 'rtf', 'md', 'markdown', 'textile', 'txtz']),
-- (_('Comics'), ['cbz', 'cbr', 'cbc']),
-- (_('Archives'), ['zip', 'rar']),
-+ (_('Comics'), ['cbz', 'cbc']),
-+ (_('Archives'), ['zip']),
- (_('Wordprocessor files'), ['odt', 'doc', 'docx']),
- ]
-
-@@ -65,7 +65,7 @@
- 'sub-directories (Multiple books per directory, assumes every '
- 'e-book file is a different book)')).triggered.connect(
- self.add_recursive_multiple)
-- arm = self.add_archive_menu = self.add_menu.addMenu(_('Add multiple books from archive (ZIP/RAR)'))
-+ arm = self.add_archive_menu = self.add_menu.addMenu(_('Add multiple books from archive (ZIP)'))
- connect_lambda(self.create_menu_action(
- arm, 'recursive-single-archive', _('One book per directory in the archive')).triggered,
- self, lambda self: self.add_archive(True))
-@@ -247,7 +247,7 @@
- def add_archive(self, single):
- paths = choose_files(
- self.gui, 'recursive-archive-add', _('Choose archive file'),
-- filters=[(_('Archives'), ('zip', 'rar'))], all_files=False, select_only_single_file=False)
-+ filters=[(_('Archives'), ('zip'))], all_files=False, select_only_single_file=False)
- if paths:
- self.do_add_recursive(paths, single, list_of_archives=True)
-
---- calibre-3.46.0.orig/src/calibre/gui2/actions/preferences.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/gui2/actions/preferences.py 2019-08-26 17:14:54.687156468 -0500
-@@ -29,8 +29,6 @@
- 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',
---- calibre-3.46.0.orig/src/calibre/gui2/add.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/gui2/add.py 2019-08-26 17:16:14.817156968 -0500
-@@ -167,9 +167,6 @@
- prints('Corrupt ZIP file, trying to use local headers')
- from calibre.utils.localunzip import extractall
- extractall(source, tdir)
-- elif source.lower().endswith('.rar'):
-- from calibre.utils.unrar import extract
-- extract(source, tdir)
- return tdir
-
- try:
---- calibre-3.46.0.orig/src/calibre/gui2/__init__.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/gui2/__init__.py 2019-08-26 17:20:41.207158632 -0500
-@@ -206,8 +206,6 @@
- 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',
---- calibre-3.46.0.orig/src/calibre/gui2/preferences/behavior.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/gui2/preferences/behavior.py 2019-08-26 17:21:59.877159123 -0500
-@@ -41,7 +41,6 @@
-
- r('network_timeout', prefs)
-
-- r('new_version_notification', config)
- r('upload_news_to_device', config)
- r('delete_news_from_library_on_upload', config)
-
-@@ -141,7 +140,7 @@
- input_map = prefs['input_format_order']
- all_formats = set()
- self.opt_input_order.clear()
-- for fmt in all_input_formats().union({'ZIP', 'RAR'}):
-+ for fmt in all_input_formats().union({'ZIP'}):
- all_formats.add(fmt.upper())
- for format in input_map + list(all_formats.difference(input_map)):
- item = QListWidgetItem(format, self.opt_input_order)
---- calibre-3.46.0.orig/src/calibre/gui2/preferences/behavior.ui 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/gui2/preferences/behavior.ui 2019-08-26 17:23:20.187159625 -0500
-@@ -16,13 +16,6 @@
- <layout class="QHBoxLayout" name="horizontalLayout">
- <item>
- <layout class="QFormLayout" name="formLayout">
-- <item row="0" column="0" colspan="2">
-- <widget class="QCheckBox" name="opt_new_version_notification">
-- <property name="text">
-- <string>Notify when a &amp;new version is available</string>
-- </property>
-- </widget>
-- </item>
- <item row="3" column="0" colspan="2">
- <widget class="QCheckBox" name="opt_upload_news_to_device">
- <property name="text">
---- calibre-3.46.0.orig/src/calibre/gui2/update.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/gui2/update.py 2019-08-26 17:30:02.797162139 -0500
-@@ -7,15 +7,13 @@ import re, ssl, json
- from threading import Thread, Event
-
- from PyQt5.Qt import (QObject, pyqtSignal, Qt, QUrl, QDialog, QGridLayout,
-- QLabel, QCheckBox, QDialogButtonBox, QIcon)
-+ QLabel, QCheckBox, QIcon)
-
--from calibre.constants import (__appname__, __version__, iswindows, isosx,
-+from calibre.constants import (__appname__, iswindows, isosx,
- isportable, is64bit, numeric_version)
- from calibre import prints, as_unicode
--from calibre.utils.config import prefs
- from calibre.utils.localization import localize_website_link
--from calibre.utils.https import get_https_resource_securely
--from calibre.gui2 import config, dynamic, open_url
-+from calibre.gui2 import dynamic, open_url
- from calibre.gui2.dialogs.plugin_updater import get_plugin_updates_available
- from calibre.utils.serialize import msgpack_dumps, msgpack_loads
- from polyglot.binary import as_hex_unicode, from_hex_bytes
-@@ -35,35 +33,7 @@ def get_download_url():
-
-
- def get_newest_version():
-- try:
-- icon_theme_name = json.loads(I('icon-theme.json', data=True))['name']
-- except Exception:
-- icon_theme_name = ''
-- headers={
-- 'CALIBRE-VERSION':__version__,
-- 'CALIBRE-OS': ('win' if iswindows else 'osx' if isosx else 'oth'),
-- 'CALIBRE-INSTALL-UUID': prefs['installation_uuid'],
-- 'CALIBRE-ICON-THEME': icon_theme_name,
-- }
-- try:
-- version = get_https_resource_securely(URL, headers=headers)
-- except ssl.SSLError as err:
-- if getattr(err, 'reason', None) != 'CERTIFICATE_VERIFY_FAILED':
-- raise
-- # certificate verification failed, since the version check contains no
-- # critical information, ignore and proceed
-- # We have to do this as if the calibre CA certificate ever
-- # needs to be revoked, then we wont be able to do version checks
-- version = get_https_resource_securely(URL, headers=headers, cacerts=None)
-- try:
-- version = version.decode('utf-8').strip()
-- except UnicodeDecodeError:
-- version = ''
-- ans = NO_CALIBRE_UPDATE
-- m = re.match(unicode_type(r'(\d+)\.(\d+).(\d+)$'), version)
-- if m is not None:
-- ans = tuple(map(int, (m.group(1), m.group(2), m.group(3))))
-- return ans
-+ return NO_CALIBRE_UPDATE
-
-
- class Signal(QObject):
-@@ -85,12 +55,6 @@ class CheckForUpdates(Thread):
- while not self.shutdown_event.is_set():
- calibre_update_version = NO_CALIBRE_UPDATE
- plugins_update_found = 0
-- try:
-- version = get_newest_version()
-- if version[:2] > numeric_version[:2]:
-- calibre_update_version = version
-- except Exception as e:
-- prints('Failed to check for calibre update:', as_unicode(e))
- try:
- update_plugins = get_plugin_updates_available(raise_error=True)
- if update_plugins is not None:
-@@ -150,11 +114,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)
-@@ -182,9 +141,6 @@ class UpdateNotification(QDialog):
- if gui is not None:
- gui.quit(restart=True)
-
-- def show_future(self, *args):
-- config.set('new_version_notification', bool(self.cb.isChecked()))
--
- def accept(self):
- open_url(QUrl(get_download_url()))
-
-@@ -232,7 +188,7 @@ class UpdateMixin(object):
- self.status_bar.update_label.setVisible(True)
-
- if has_calibre_update:
-- if (force or (config.get('new_version_notification') and not is_version_notified(calibre_version))):
-+ if force:
- if not no_show_popup:
- self._update_notification__ = UpdateNotification(calibre_version,
- number_of_plugin_updates, parent=self)
---- calibre-3.46.0.orig/src/calibre/__init__.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/__init__.py 2019-08-26 17:31:50.377162811 -0500
-@@ -254,10 +254,7 @@
- # First use the file header to identify its type
- with open(path, 'rb') as f:
- id_ = f.read(3)
-- if id_ == b'Rar':
-- from calibre.utils.unrar import extract as rarextract
-- extractor = rarextract
-- elif id_.startswith(b'PK'):
-+ if id_.startswith(b'PK'):
- from calibre.libunzip import extract as zipextract
- extractor = zipextract
- if extractor is None:
-@@ -266,9 +263,6 @@
- if ext in ['zip', 'cbz', 'epub', 'oebzip']:
- from calibre.libunzip import extract as zipextract
- extractor = zipextract
-- elif ext in ['cbr', 'rar']:
-- from calibre.utils.unrar import extract as rarextract
-- extractor = rarextract
- if extractor is None:
- raise Exception('Unknown archive type')
- extractor(path, dir)
---- calibre-3.46.0.orig/src/calibre/linux.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/linux.py 2019-08-26 17:33:01.557163256 -0500
-@@ -338,7 +338,7 @@
- ):
- for fmt in fmts:
- is_input = group_title == input_group
-- if is_input and fmt in {'rar', 'zip', 'oebzip'}:
-+ if is_input and fmt in {'zip', 'oebzip'}:
- continue
- p = (get_parser(input_fmt=fmt) if is_input
- else get_parser(output_fmt=fmt))
---- calibre-3.46.0.orig/src/calibre/srv/render_book.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/srv/render_book.py 2019-08-26 17:33:53.057163577 -0500
-@@ -190,7 +190,7 @@
- 'spine':spine,
- 'link_uid': uuid4(),
- 'book_hash': book_hash,
-- 'is_comic': input_fmt.lower() in {'cbc', 'cbz', 'cbr', 'cb7'},
-+ 'is_comic': input_fmt.lower() in {'cbc', 'cbz', 'cb7'},
- 'raster_cover_name': raster_cover_name,
- 'title_page_name': titlepage_name,
- 'has_maths': False,
---- calibre-3.46.0.orig/src/calibre/srv/tests/loop.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/srv/tests/loop.py 2019-08-26 17:35:18.047164108 -0500
-@@ -110,27 +110,6 @@
- with TestServer(lambda data:(data.path[0] + data.read()), listen_on='1.1.1.1', fallback_to_detected_interface=True, specialize=specialize) as server:
- self.assertNotEqual('1.1.1.1', server.address[0])
-
-- @skipIf(is_ci, 'Continuous Integration servers do not support BonJour')
-- def test_bonjour(self):
-- 'Test advertising via BonJour'
-- from calibre.srv.bonjour import BonJour
-- if ispy3:
-- from zeroconf import Zeroconf
-- else:
-- from calibre.utils.Zeroconf import Zeroconf
-- b = BonJour(wait_for_stop=False)
-- with TestServer(lambda data:(data.path[0] + data.read()), plugins=(b,), shutdown_timeout=5) as server:
-- self.assertTrue(b.started.wait(5), 'BonJour not started')
-- self.ae(b.advertised_port, server.address[1])
-- service = b.services[0]
-- self.ae(service.type, '_calibre._tcp.local.')
-- r = Zeroconf()
-- info = r.get_service_info(service.type, service.name)
-- self.assertIsNotNone(info)
-- self.ae(info.text, b'\npath=/opds')
--
-- self.assertTrue(b.stopped.wait(5), 'BonJour not stopped')
--
- def test_dual_stack(self):
- from calibre.srv.loop import IPPROTO_IPV6
- with TestServer(lambda data:(data.path[0] + data.read().decode('utf-8')), listen_on='::') as server:
---- calibre-3.46.0.orig/src/calibre/test_build.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/test_build.py 2019-08-26 17:36:49.697164680 -0500
-@@ -236,10 +236,6 @@
- from calibre.gui2.win_file_dialogs import test
- test()
-
-- def test_unrar(self):
-- from calibre.utils.unrar import test_basic
-- test_basic()
--
- @unittest.skipUnless(iswindows, 'WPD is windows only')
- def test_wpd(self):
- wpd = plugins['wpd'][0]
---- calibre-3.46.0.orig/src/calibre/utils/file_type_icons.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/utils/file_type_icons.py 2019-08-26 17:40:50.577166185 -0500
-@@ -15,7 +15,6 @@
- 'png' : 'png',
- 'bmp' : 'bmp',
- 'cbz' : 'cbz',
-- 'cbr' : 'cbr',
- 'svg' : 'svg',
- 'html' : 'html',
- 'htmlz' : 'html',
-@@ -27,7 +26,6 @@
- 'lrx' : 'lrx',
- 'pdf' : 'pdf',
- 'pdr' : 'zero',
-- 'rar' : 'rar',
- 'zip' : 'zip',
- 'txt' : 'txt',
- 'text' : 'txt',
---- calibre-3.46.0.orig/src/calibre/utils/search_query_parser_test.py 2019-07-18 22:19:21.000000000 -0500
-+++ calibre-3.46.0/src/calibre/utils/search_query_parser_test.py 2019-08-26 17:48:14.897168960 -0500
-@@ -30,16 +30,16 @@
- u'Tor Books',
- u'lrf'],
- 8: [u'Stalky and Co.', u'Rudyard Kipling', u'manybooks.net', u'lrf'],
-- 9: [u'A Game of Thrones', u'George R. R. Martin', None, u'lrf,rar'],
-- 10: [u'A Clash of Kings', u'George R. R. Martin', None, u'lrf,rar'],
-- 11: [u'A Storm of Swords', u'George R. R. Martin', None, u'lrf,rar'],
-+ 9: [u'A Game of Thrones', u'George R. R. Martin', None, u'lrf'],
-+ 10: [u'A Clash of Kings', u'George R. R. Martin', None, u'lrf'],
-+ 11: [u'A Storm of Swords', u'George R. R. Martin', None, u'lrf'],
- 12: [u'Biggles - Pioneer Air Fighter', u'W. E. Johns', None, u'lrf,rtf'],
- 13: [u'Biggles of the Camel Squadron',
- u'W. E. Johns',
- u'London:Thames, (1977)',
- u'lrf,rtf'],
-- 14: [u'A Feast for Crows', u'George R. R. Martin', None, u'lrf,rar'],
-- 15: [u'Cryptonomicon', u'Neal Stephenson', None, u'lrf,rar'],
-+ 14: [u'A Feast for Crows', u'George R. R. Martin', None, u'lrf'],
-+ 15: [u'Cryptonomicon', u'Neal Stephenson', None, u'lrf'],
- 16: [u'Quicksilver', u'Neal Stephenson', None, u'lrf,zip'],
- 17: [u'The Comedies of William Shakespeare',
- u'William Shakespeare',
-@@ -54,15 +54,15 @@
- None,
- u'lrf'],
- 20: [u'An Ideal Husband', u'Oscar Wilde', u'manybooks.net', u'lrf'],
-- 21: [u'Flight of the Nighthawks', u'Raymond E. Feist', None, u'lrf,rar'],
-- 22: [u'Into a Dark Realm', u'Raymond E. Feist', None, u'lrf,rar'],
-- 23: [u'The Sundering', u'Walter Jon Williams', None, u'lrf,rar'],
-- 24: [u'The Praxis', u'Walter Jon Williams', None, u'lrf,rar'],
-- 25: [u'Conventions of War', u'Walter Jon Williams', None, u'lrf,rar'],
-- 26: [u'Banewreaker', u'Jacqueline Carey', None, u'lrf,rar'],
-- 27: [u'Godslayer', u'Jacqueline Carey', None, u'lrf,rar'],
-- 28: [u"Kushiel's Scion", u'Jacqueline Carey', None, u'lrf,rar'],
-- 29: [u'Underworld', u'Don DeLillo', None, u'lrf,rar'],
-+ 21: [u'Flight of the Nighthawks', u'Raymond E. Feist', None, u'lrf'],
-+ 22: [u'Into a Dark Realm', u'Raymond E. Feist', None, u'lrf'],
-+ 23: [u'The Sundering', u'Walter Jon Williams', None, u'lrf'],
-+ 24: [u'The Praxis', u'Walter Jon Williams', None, u'lrf'],
-+ 25: [u'Conventions of War', u'Walter Jon Williams', None, u'lrf'],
-+ 26: [u'Banewreaker', u'Jacqueline Carey', None, u'lrf'],
-+ 27: [u'Godslayer', u'Jacqueline Carey', None, u'lrf'],
-+ 28: [u"Kushiel's Scion", u'Jacqueline Carey', None, u'lrf'],
-+ 29: [u'Underworld', u'Don DeLillo', None, u'lrf'],
- 30: [u'Genghis Khan and The Making of the Modern World',
- u'Jack Weatherford Orc',
- u'Three Rivers Press',
-@@ -73,9 +73,9 @@
- 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'],
-- 34: [u'The Gates of Rome', u'Conn Iggulden', None, u'lrf,rar'],
-+ 34: [u'The Gates of Rome', u'Conn Iggulden', None, u'lrf'],
- 35: [u'The Death of Kings', u'Conn Iggulden', u'Bantam Dell', u'lit,lrf'],
-- 36: [u'The Field of Swords', u'Conn Iggulden', None, u'lrf,rar'],
-+ 36: [u'The Field of Swords', u'Conn Iggulden', None, u'lrf'],
- 37: [u'Masterman Ready', u'Marryat, Captain Frederick', None, u'lrf'],
- 38: [u'With the Lightnings',
- u'David Drake',
-@@ -88,16 +88,16 @@
- 40: [u'The Far Side of The Stars',
- u'David Drake',
- u'Baen Publishing Enterprises',
-- u'lrf,rar'],
-+ u'lrf'],
- 41: [u'The Way to Glory',
- u'David Drake',
- u'Baen Publishing Enterprises',
-- u'lrf,rar'],
-- 42: [u'Some Golden Harbor', u'David Drake', u'Baen Books', u'lrf,rar'],
-+ u'lrf'],
-+ 42: [u'Some Golden Harbor', u'David Drake', u'Baen Books', u'lrf'],
- 43: [u'Harry Potter And The Half-Blood Prince',
- u'J. K. Rowling',
- None,
-- u'lrf,rar'],
-+ u'lrf'],
- 44: [u'Harry Potter and the Order of the Phoenix',
- u'J. K. Rowling',
- None,
-@@ -106,12 +106,12 @@
- 46: [u'The Stars at War II',
- u'Steve White',
- u'Baen Publishing Enterprises',
-- u'lrf,rar'],
-- 47: [u'Exodus', u'Steve White,Shirley Meier', u'Baen Books', u'lrf,rar'],
-+ u'lrf'],
-+ 47: [u'Exodus', u'Steve White,Shirley Meier', u'Baen Books', u'lrf'],
- 48: [u'Harry Potter and the Goblet of Fire',
- u'J. K. Rowling',
- None,
-- u'lrf,rar'],
-+ u'lrf'],
- 49: [u'Harry Potter and the Prisoner of Azkaban',
- u'J. K. Rowling',
- None,
-@@ -124,20 +124,20 @@
- u'J.K. Rowling',
- None,
- u'lit,lrf,pdf'],
-- 52: [u"His Majesty's Dragon", u'Naomi Novik', None, u'lrf,rar'],
-+ 52: [u"His Majesty's Dragon", u'Naomi Novik', None, u'lrf'],
- 53: [u'Throne of Jade', u'Naomi Novik', u'Del Rey', u'lit,lrf'],
-- 54: [u'Black Powder War', u'Naomi Novik', u'Del Rey', u'lrf,rar'],
-+ 54: [u'Black Powder War', u'Naomi Novik', u'Del Rey', u'lrf'],
- 55: [u'War and Peace', u'Leo Tolstoy', u'gutenberg.org', u'lrf,txt'],
- 56: [u'Anna Karenina', u'Leo Tolstoy', u'gutenberg.org', u'lrf,txt'],
- 57: [u'A Shorter History of Rome',
- u'Eugene Lawrence,Sir William Smith',
- u'gutenberg.org',
- u'lrf,zip'],
-- 58: [u'The Name of the Rose', u'Umberto Eco', None, u'lrf,rar'],
-+ 58: [u'The Name of the Rose', u'Umberto Eco', None, u'lrf'],
- 71: [u"Wind Rider's Oath", u'David Weber', u'Baen', u'lrf'],
- 74: [u'Rally Cry', u'William R Forstchen', None, u'htm,lrf'],
-- 86: [u'Empire of Ivory', u'Naomi Novik', None, u'lrf,rar'],
-- 87: [u"Renegade's Magic", u'Robin Hobb', None, u'lrf,rar'],
-+ 86: [u'Empire of Ivory', u'Naomi Novik', None, u'lrf'],
-+ 87: [u"Renegade's Magic", u'Robin Hobb', None, u'lrf'],
- 89: [u'Master and commander',
- u"Patrick O'Brian",
- u'Fontana,\n1971',
-@@ -145,7 +145,7 @@
- 91: [u'A Companion to Wolves',
- u'Sarah Monette,Elizabeth Beär',
- None,
-- u'lrf,rar'],
-+ u'lrf'],
- 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',
-@@ -169,7 +169,7 @@
- 144: [u'Atonement',
- u'Ian McEwan',
- u'New York : Nan A. Talese/Doubleday, 2002.',
-- u'lrf,rar'],
-+ u'lrf'],
- 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',
-@@ -222,7 +222,7 @@
- 253: [u"Hunter's Run",
- u'George R. R. Martin,Gardner Dozois,Daniel Abraham',
- u'Eos',
-- u'lrf,rar'],
-+ u'lrf'],
- 257: [u'Knife of Dreams', u'Robert Jordan', None, u'lit,lrf'],
- 258: [u'Saturday',
- u'Ian McEwan',
-@@ -242,7 +242,7 @@
- u'New York : Random House, 2005.',
- u'lit,lrf'],
- 269: [u'Reap the Whirlwind', u'David Mack', u'Star Trek', u'lit,lrf'],
-- 272: [u'Mistborn', u'Brandon Sanderson', u'Tor Fantasy', u'lrf,rar'],
-+ 272: [u'Mistborn', u'Brandon Sanderson', u'Tor Fantasy', u'lrf'],
- 273: [u'The Thousandfold Thought',
- u'R. Scott Bakker',
- u'Overlook TP',
-@@ -250,17 +250,17 @@
- 276: [u'Elantris',
- u'Brandon Sanderson',
- u'New York : Tor, 2005.',
-- u'lrf,rar'],
-+ u'lrf'],
- 291: [u'Sundiver',
- u'David Brin',
- u'New York : Bantam Books, 1995.',
- u'lit,lrf'],
-- 299: [u'Imperium', u'Robert Harris', u'Arrow', u'lrf,rar'],
-+ 299: [u'Imperium', u'Robert Harris', u'Arrow', u'lrf'],
- 300: [u'Startide Rising', u'David Brin', u'Bantam', u'htm,lrf'],
- 301: [u'The Uplift War', u'David Brin', u'Spectra', u'lit,lrf'],
-- 304: [u'Brightness Reef', u'David Brin', u'Orbit', u'lrf,rar'],
-+ 304: [u'Brightness Reef', u'David Brin', u'Orbit', u'lrf'],
- 305: [u"Infinity's Shore", u'David Brin', u'Spectra', u'txt'],
-- 306: [u"Heaven's Reach", u'David Brin', u'Spectra', u'lrf,rar'],
-+ 306: [u"Heaven's Reach", u'David Brin', u'Spectra', u'lrf'],
- 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'],
-@@ -290,15 +290,15 @@
- u'Aspect',
- u'lit,lrf'],
- 356: [u'The Naked God', u'Peter F. Hamilton', u'Aspect', u'lit,lrf'],
-- 421: [u'A Shadow in Summer', u'Daniel Abraham', u'Tor Fantasy', u'lrf,rar'],
-+ 421: [u'A Shadow in Summer', u'Daniel Abraham', u'Tor Fantasy', u'lrf'],
- 427: [u'Lonesome Dove', u'Larry M\\cMurtry', None, u'lit,lrf'],
- 440: [u'Ghost', u'John Ringo', u'Baen', u'lit,lrf'],
- 441: [u'Kildar', u'John Ringo', u'Baen', u'lit,lrf'],
-- 443: [u'Hidden Empire ', u'Kevin J. Anderson', u'Aspect', u'lrf,rar'],
-+ 443: [u'Hidden Empire ', u'Kevin J. Anderson', u'Aspect', u'lrf'],
- 444: [u'The Gun Seller',
- u'Hugh Laurie',
- u'Washington Square Press',
-- u'lrf,rar']
-+ u'lrf']
- }
-
- tests = {