From d8bc7fa557ab17d89c19feadc5e657cb6ce5ff61 Mon Sep 17 00:00:00 2001 From: Omar Vega Ramos Date: Mon, 26 Aug 2019 18:39:58 -0500 Subject: calibre-3.46.0-1.par1: updating version --- libre/calibre/PKGBUILD | 47 +++---- libre/calibre/libre.patch | 343 ++++++++++++++++++---------------------------- 2 files changed, 161 insertions(+), 229 deletions(-) (limited to 'libre') diff --git a/libre/calibre/PKGBUILD b/libre/calibre/PKGBUILD index 97718c83b..4e6ce9ad1 100644 --- a/libre/calibre/PKGBUILD +++ b/libre/calibre/PKGBUILD @@ -15,33 +15,33 @@ # - removed decrompession engine for rar archives pkgname=calibre -pkgver=3.39.1 +pkgver=3.46.0 pkgrel=1 -pkgrel+=.par2 +pkgrel+=.par1 pkgdesc="Ebook management application" pkgdesc+=", without nonfree decompression engine for RAR archives" arch=('x86_64') arch+=('i686' 'armv7h') url="https://calibre-ebook.com/" license=('GPL3') -depends=('python2-six' 'python2-dateutil' 'python2-css-parser' 'python2-dukpy' - 'python2-mechanize' 'podofo' 'libwmf' 'jxrlib' 'mathjax' - 'chmlib' 'python2-lxml' 'libusbx' 'python2-html5-parser' - 'python2-pillow' 'shared-mime-info' 'python2-dnspython' 'python2-msgpack' - 'python2-pyqt5' 'python2-psutil' 'icu' 'libmtp' 'python2-dbus' - 'python2-netifaces' 'python2-cssselect' 'python2-apsw' 'qt5-webkit' - 'qt5-svg' 'python2-regex' 'python2-pygments' 'mtdev' - 'desktop-file-utils' 'gtk-update-icon-cache' 'optipng' 'udisks2') -makedepends=('qt5-x11extras' 'sip' 'xdg-utils') +_py_deps=('apsw' 'beautifulsoup4' 'cssselect' 'css-parser' 'dateutil' 'dbus' 'dnspython' 'dukpy' + 'feedparser' 'html2text' 'html5-parser' 'lxml' 'markdown' 'mechanize' 'msgpack' + 'netifaces' 'pillow' 'psutil' 'pygments' 'pyqt5' 'regex') +depends=('chmlib' 'icu' 'jxrlib' 'libmtp' 'libusbx' 'libwmf' 'mathjax' 'mtdev' 'optipng' + 'podofo' "${_py_deps[@]/#/python2-}" 'qt5-svg' 'qt5-webkit' 'udisks2') +makedepends=('qt5-x11extras' 'rapydscript-ng' 'sip' 'xdg-utils') checkdepends=('xorg-server-xvfb') optdepends=('ipython2: to use calibre-debug' 'poppler: required for converting pdf to html') source=("https://download.calibre-ebook.com/${pkgver}/calibre-${pkgver}.tar.xz" "https://calibre-ebook.com/signatures/${pkgname}-${pkgver}.tar.xz.sig" 'libre.patch') -sha256sums=('50bb56ca9455464495c646688722cb07199ed74a3a2eb3dc4f3b3e609be68121' +sha256sums=('e947b9854f9db344ee07e5495feaad759c96936d89a128d3a3587c3503d09ab6' 'SKIP' - '2990c382bcfaa36e3162261eed9acae7e905b75471bcdd75930ddd9a33173f6c') + '1574e2094ce7f3e37116215ae117ed4a10426592535b261f66eacc1508566ad2') +b2sums=('5590ba422d0323ea7c0cea67d88d448f00f5a470e7a8fdf9851b488c0856c88175bd107715a856706e95b2e1a45604713d061f4a7a3603ecaa01dfc018c1ed58' + 'SKIP' + '45a57037ad9f9b57c73e5eed8a5faf57e2be2bfdc6f4c2ff753cc536d5f8f8431d6cc9a8d64781caab47571d45fdb4476f1fecf0e759d388ca526ad36803c19b') validpgpkeys=('3CE1780F78DD88DF45194FD706BC317B515ACE7C') # Kovid Goyal (New longer key) prepare(){ @@ -55,13 +55,16 @@ prepare(){ patch -fNp1 -i "$srcdir/libre.patch" # Desktop integration (e.g. enforce arch defaults) - sed -e "/self.create_uninstaller()/,/os.rmdir(config_dir)/d" \ - -e "/cc(\['xdg-desktop-menu', 'forceupdate'\])/d" \ - -e "/cc(\['xdg-mime', 'install', MIME\])/d" \ + sed -e "/import config_dir/,/os.rmdir(config_dir)/d" \ -e "s/'ctc-posml'/'text' not in mt and 'pdf' not in mt and 'xhtml'/" \ -e "s/^Name=calibre/Name=Calibre/g" \ -i src/calibre/linux.py + # cherry-picked bits of python2-backports.functools_lru_cache + # needed for frozen builds + beautifulsoup4 + # see https://github.com/kovidgoyal/calibre/commit/b177f0a1096b4fdabd8772dd9edc66662a69e683#commitcomment-33169700 + rm -r src/backports + cd resources # Remove unneeded files @@ -95,14 +98,12 @@ check() { package() { cd "${pkgname}-${pkgver}" - install -d "${pkgdir}/usr/share/zsh/site-functions" \ - "${pkgdir}"/usr/share/{applications,desktop-directories,icons/hicolor} - - install -Dm644 resources/calibre-mimetypes.xml \ - "${pkgdir}/usr/share/mime/packages/calibre-mimetypes.xml" + # If this directory doesn't exist, zsh completion won't install. + install -d "${pkgdir}/usr/share/zsh/site-functions" - XDG_DATA_DIRS="${pkgdir}/usr/share" LANG='en_US.UTF-8' \ - python2 setup.py install --staging-root="${pkgdir}/usr" --prefix=/usr + LANG='en_US.UTF-8' python2 setup.py install \ + --staging-root="${pkgdir}/usr" \ + --prefix=/usr cp -a man-pages/ "${pkgdir}/usr/share/man" diff --git a/libre/calibre/libre.patch b/libre/calibre/libre.patch index 6f2709f36..4c3e65c16 100644 --- a/libre/calibre/libre.patch +++ b/libre/calibre/libre.patch @@ -1,7 +1,6 @@ -diff -rupN calibre-3.39.1/manual/conversion.rst calibre-3.39.1.new/manual/conversion.rst ---- calibre-3.39.1/manual/conversion.rst 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/manual/conversion.rst 2019-02-26 11:40:36.546704530 +0100 -@@ -747,7 +747,7 @@ output ranging anywhere from decent to u +--- 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 ~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -10,10 +9,9 @@ diff -rupN calibre-3.39.1/manual/conversion.rst calibre-3.39.1.new/manual/conver .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:: -diff -rupN calibre-3.39.1/manual/faq.rst calibre-3.39.1.new/manual/faq.rst ---- calibre-3.39.1/manual/faq.rst 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/manual/faq.rst 2019-02-26 11:40:36.546704530 +0100 -@@ -18,7 +18,7 @@ What formats does calibre support conver +--- 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. @@ -22,22 +20,20 @@ diff -rupN calibre-3.39.1/manual/faq.rst calibre-3.39.1.new/manual/faq.rst *Output Formats:* AZW3, EPUB, DOCX, FB2, HTMLZ, OEB, LIT, LRF, MOBI, PDB, PMLZ, RB, PDF, RTF, SNB, TCR, TXT, TXTZ, ZIP -diff -rupN calibre-3.39.1/manual/gui.rst calibre-3.39.1.new/manual/gui.rst ---- calibre-3.39.1/manual/gui.rst 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/manual/gui.rst 2019-02-26 11:40:36.550037909 +0100 -@@ -51,7 +51,7 @@ Add books +--- 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. + 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. -diff -rupN calibre-3.39.1/resources/mime.types calibre-3.39.1.new/resources/mime.types ---- calibre-3.39.1/resources/mime.types 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/resources/mime.types 2019-02-26 11:40:36.550037909 +0100 -@@ -138,7 +138,6 @@ application/prs.cww cww +--- 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 @@ -45,7 +41,7 @@ diff -rupN calibre-3.39.1/resources/mime.types calibre-3.39.1.new/resources/mime application/rdf+xml rdf application/reginfo+xml rif application/relax-ng-compact-syntax rnc -@@ -849,7 +848,6 @@ application/x-pkcs7-certreqresp p7r +@@ -849,7 +848,6 @@ application/x-pkcs7-crl crl application/x-python-code pyc pyo application/x-quicktimeplayer qtl @@ -53,7 +49,7 @@ diff -rupN calibre-3.39.1/resources/mime.types calibre-3.39.1.new/resources/mime application/x-redhat-package-manager rpm application/x-sh sh application/x-shar shar -@@ -1372,7 +1370,6 @@ application/x-mobipocket-subscription +@@ -1372,7 +1370,6 @@ application/x-kindle-application azw2 application/x-mobi8-ebook azw3 application/x-cbz cbz @@ -61,10 +57,9 @@ diff -rupN calibre-3.39.1/resources/mime.types calibre-3.39.1.new/resources/mime application/x-cb7 cb7 application/x-cbc cbc application/x-koboreader-ebook kobo -diff -rupN calibre-3.39.1/setup/resources.py calibre-3.39.1.new/setup/resources.py ---- calibre-3.39.1/setup/resources.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/setup/resources.py 2019-02-26 11:40:36.550037909 +0100 -@@ -348,7 +348,7 @@ class Resources(Command): # {{{ +--- 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(): @@ -73,10 +68,9 @@ diff -rupN calibre-3.39.1/setup/resources.py calibre-3.39.1.new/setup/resources. continue for ouf in available_output_formats(): of = ouf if ouf == 'oeb' else 'dummy.'+ouf -diff -rupN calibre-3.39.1/src/calibre/customize/builtins.py calibre-3.39.1.new/src/calibre/customize/builtins.py ---- calibre-3.39.1/src/calibre/customize/builtins.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/customize/builtins.py 2019-02-26 11:40:36.550037909 +0100 -@@ -132,7 +132,7 @@ plugins += [HTML2ZIP, PML2PMLZ, TXT2TXTZ +--- 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' @@ -85,7 +79,7 @@ diff -rupN calibre-3.39.1/src/calibre/customize/builtins.py calibre-3.39.1.new/s description = _('Extract cover from comic files') def customization_help(self, gui=False): -@@ -143,19 +143,14 @@ class ComicMetadataReader(MetadataReader +@@ -144,19 +144,14 @@ pos = stream.tell() id_ = stream.read(3) stream.seek(pos) @@ -108,7 +102,7 @@ diff -rupN calibre-3.39.1/src/calibre/customize/builtins.py calibre-3.39.1.new/s series_index = self.site_customization if series_index not in {'volume', 'issue'}: series_index = 'volume' -@@ -354,17 +349,6 @@ class PMLMetadataReader(MetadataReaderPl +@@ -355,17 +350,6 @@ return get_metadata(stream) @@ -126,10 +120,9 @@ diff -rupN calibre-3.39.1/src/calibre/customize/builtins.py calibre-3.39.1.new/s class RBMetadataReader(MetadataReaderPlugin): name = 'Read RB metadata' -diff -rupN calibre-3.39.1/src/calibre/customize/ui.py calibre-3.39.1.new/src/calibre/customize/ui.py ---- calibre-3.39.1/src/calibre/customize/ui.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/customize/ui.py 2019-02-26 11:40:36.550037909 +0100 -@@ -538,7 +538,7 @@ def available_input_formats(): +--- 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) @@ -138,10 +131,9 @@ diff -rupN calibre-3.39.1/src/calibre/customize/ui.py calibre-3.39.1.new/src/cal return formats -diff -rupN calibre-3.39.1/src/calibre/devices/kobo/driver.py calibre-3.39.1.new/src/calibre/devices/kobo/driver.py ---- calibre-3.39.1/src/calibre/devices/kobo/driver.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/devices/kobo/driver.py 2019-02-26 11:40:36.553371290 +0100 -@@ -90,7 +90,7 @@ class KOBO(USBMS): +--- 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 @@ -150,10 +142,9 @@ diff -rupN calibre-3.39.1/src/calibre/devices/kobo/driver.py calibre-3.39.1.new/ CAN_SET_METADATA = ['collections'] VENDOR_ID = [0x2237] -diff -rupN calibre-3.39.1/src/calibre/devices/misc.py calibre-3.39.1.new/src/calibre/devices/misc.py ---- calibre-3.39.1/src/calibre/devices/misc.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/devices/misc.py 2019-02-26 11:40:36.553371290 +0100 -@@ -448,7 +448,7 @@ class WAYTEQ(USBMS): +--- 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 @@ -162,10 +153,9 @@ diff -rupN calibre-3.39.1/src/calibre/devices/misc.py calibre-3.39.1.new/src/cal WINDOWS_MAIN_MEM = WINDOWS_CARD_A_MEM = ['RK28_SDK_DEMO', 'EINK_EBOOK_READE'] SUPPORTS_SUB_DIRS = True -diff -rupN calibre-3.39.1/src/calibre/devices/mtp/filesystem_cache.py calibre-3.39.1.new/src/calibre/devices/mtp/filesystem_cache.py ---- calibre-3.39.1/src/calibre/devices/mtp/filesystem_cache.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/devices/mtp/filesystem_cache.py 2019-02-26 11:40:36.553371290 +0100 -@@ -18,7 +18,7 @@ from calibre.utils.date import local_tz, +--- 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 @@ -174,10 +164,9 @@ diff -rupN calibre-3.39.1/src/calibre/devices/mtp/filesystem_cache.py calibre-3. class FileOrFolder(object): -diff -rupN calibre-3.39.1/src/calibre/ebooks/comic/__init__.py calibre-3.39.1.new/src/calibre/ebooks/comic/__init__.py ---- calibre-3.39.1/src/calibre/ebooks/comic/__init__.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/ebooks/comic/__init__.py 2019-02-26 11:40:36.553371290 +0100 -@@ -4,7 +4,7 @@ __copyright__ = '2008, Kovid Goyal kovid +--- 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' ''' @@ -186,10 +175,9 @@ diff -rupN calibre-3.39.1/src/calibre/ebooks/comic/__init__.py calibre-3.39.1.ne ''' import sys -diff -rupN calibre-3.39.1/src/calibre/ebooks/conversion/plugins/comic_input.py calibre-3.39.1.new/src/calibre/ebooks/conversion/plugins/comic_input.py ---- calibre-3.39.1/src/calibre/ebooks/conversion/plugins/comic_input.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/ebooks/conversion/plugins/comic_input.py 2019-02-26 11:40:36.553371290 +0100 -@@ -18,8 +18,8 @@ class ComicInput(InputFormatPlugin): +--- 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' @@ -200,10 +188,9 @@ diff -rupN calibre-3.39.1/src/calibre/ebooks/conversion/plugins/comic_input.py c is_image_collection = True commit_name = 'comic_input' core_usage = -1 -diff -rupN calibre-3.39.1/src/calibre/ebooks/conversion/plumber.py calibre-3.39.1.new/src/calibre/ebooks/conversion/plumber.py ---- calibre-3.39.1/src/calibre/ebooks/conversion/plumber.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/ebooks/conversion/plumber.py 2019-02-26 11:40:36.553371290 +0100 -@@ -43,7 +43,7 @@ various stages of conversion. The stages +--- 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() @@ -212,7 +199,7 @@ diff -rupN calibre-3.39.1/src/calibre/ebooks/conversion/plumber.py calibre-3.39. fmts.add(x) return fmts -@@ -64,7 +64,7 @@ class CompositeProgressReporter(object): +@@ -67,7 +67,7 @@ self.global_reporter(global_frac, msg) @@ -221,10 +208,9 @@ diff -rupN calibre-3.39.1/src/calibre/ebooks/conversion/plumber.py calibre-3.39. class Plumber(object): -diff -rupN calibre-3.39.1/src/calibre/ebooks/__init__.py calibre-3.39.1.new/src/calibre/ebooks/__init__.py ---- calibre-3.39.1/src/calibre/ebooks/__init__.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/ebooks/__init__.py 2019-02-26 11:40:36.553371290 +0100 -@@ -30,9 +30,9 @@ class ParserError(ValueError): +--- 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 @@ -236,19 +222,18 @@ diff -rupN calibre-3.39.1/src/calibre/ebooks/__init__.py calibre-3.39.1.new/src/ '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'] -diff -rupN calibre-3.39.1/src/calibre/ebooks/metadata/archive.py calibre-3.39.1.new/src/calibre/ebooks/metadata/archive.py ---- calibre-3.39.1/src/calibre/ebooks/metadata/archive.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/ebooks/metadata/archive.py 2019-02-26 11:40:36.553371290 +0100 -@@ -29,8 +29,6 @@ def archive_type(stream): +--- 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('Rar'): +- elif id_.startswith(b'Rar'): - ans = 'rar' try: stream.seek(pos) - except: -@@ -42,24 +40,16 @@ class ArchiveExtract(FileTypePlugin): + except Exception: +@@ -43,24 +41,16 @@ name = 'Archive Extract' author = 'Kovid Goyal' description = _('Extract common e-book formats from archive files ' @@ -278,7 +263,7 @@ diff -rupN calibre-3.39.1/src/calibre/ebooks/metadata/archive.py calibre-3.39.1. def fname_ok(fname): bn = os.path.basename(fname).lower() -@@ -75,7 +65,7 @@ class ArchiveExtract(FileTypePlugin): +@@ -76,7 +66,7 @@ fnames = list(filter(fname_ok, fnames)) if is_comic(fnames): @@ -287,7 +272,7 @@ diff -rupN calibre-3.39.1/src/calibre/ebooks/metadata/archive.py calibre-3.39.1. of = self.temporary_file('_archive_extract'+ext) with open(archive, 'rb') as f: of.write(f.read()) -@@ -92,11 +82,7 @@ class ArchiveExtract(FileTypePlugin): +@@ -93,11 +83,7 @@ of = self.temporary_file('_archive_extract.'+ext) with closing(of): @@ -300,7 +285,7 @@ diff -rupN calibre-3.39.1/src/calibre/ebooks/metadata/archive.py calibre-3.39.1. return of.name -@@ -159,9 +145,6 @@ def get_comic_metadata(stream, stream_ty +@@ -168,8 +154,5 @@ from calibre.utils.zipfile import ZipFile zf = ZipFile(stream) comment = zf.comment @@ -308,12 +293,10 @@ diff -rupN calibre-3.39.1/src/calibre/ebooks/metadata/archive.py calibre-3.39.1. - from calibre.utils.unrar import comment as get_comment - comment = get_comment(stream) - if comment: - import json -diff -rupN calibre-3.39.1/src/calibre/ebooks/oeb/iterator/book.py calibre-3.39.1.new/src/calibre/ebooks/oeb/iterator/book.py ---- calibre-3.39.1/src/calibre/ebooks/oeb/iterator/book.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/ebooks/oeb/iterator/book.py 2019-02-26 11:41:29.474118987 +0100 -@@ -161,7 +161,7 @@ class EbookIterator(BookmarksMixin): + 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] @@ -322,22 +305,9 @@ diff -rupN calibre-3.39.1/src/calibre/ebooks/oeb/iterator/book.py calibre-3.39.1 for i in ordered: spath = i.path mt = None -diff -rupN calibre-3.39.1/src/calibre/ebooks/pdf/from_comic.py calibre-3.39.1.new/src/calibre/ebooks/pdf/from_comic.py ---- calibre-3.39.1/src/calibre/ebooks/pdf/from_comic.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/ebooks/pdf/from_comic.py 2019-02-26 11:40:36.556704670 +0100 -@@ -3,7 +3,7 @@ __license__ = 'GPL v3' - __copyright__ = '2008, Kovid Goyal kovid@kovidgoyal.net' - __docformat__ = 'restructuredtext en' - --'Convert a comic in CBR/CBZ format to pdf' -+'Convert a comic in CBZ format to pdf' - - import sys - from functools import partial -diff -rupN calibre-3.39.1/src/calibre/gui2/actions/add.py calibre-3.39.1.new/src/calibre/gui2/actions/add.py ---- calibre-3.39.1/src/calibre/gui2/actions/add.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/gui2/actions/add.py 2019-02-26 11:40:36.556704670 +0100 -@@ -36,8 +36,8 @@ def get_filters(): +--- 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']), @@ -348,21 +318,16 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/actions/add.py calibre-3.39.1.new/src (_('Wordprocessor files'), ['odt', 'doc', 'docx']), ] -@@ -64,10 +64,10 @@ class AddAction(InterfaceAction): +@@ -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)) -+ arm, 'recursive-single-archive', _('One book per directory in the archive')).triggered, -+ self, lambda self: self.add_archive(True)) - connect_lambda(self.create_menu_action( - arm, 'recursive-multiple-archive', _('Multiple books per directory in the archive')).triggered, - self, lambda self: self.add_archive(False)) -@@ -201,7 +201,7 @@ class AddAction(InterfaceAction): + 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'), @@ -371,10 +336,9 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/actions/add.py calibre-3.39.1.new/src if paths: self.do_add_recursive(paths, single, list_of_archives=True) -diff -rupN calibre-3.39.1/src/calibre/gui2/actions/preferences.py calibre-3.39.1.new/src/calibre/gui2/actions/preferences.py ---- calibre-3.39.1/src/calibre/gui2/actions/preferences.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/gui2/actions/preferences.py 2019-02-26 11:40:36.556704670 +0100 -@@ -29,8 +29,6 @@ class PreferencesAction(InterfaceAction) +--- 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) @@ -383,10 +347,9 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/actions/preferences.py calibre-3.39.1 if not DEBUG: pm.addSeparator() cm('restart', _('Restart in debug mode'), icon='debug.png', -diff -rupN calibre-3.39.1/src/calibre/gui2/add.py calibre-3.39.1.new/src/calibre/gui2/add.py ---- calibre-3.39.1/src/calibre/gui2/add.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/gui2/add.py 2019-02-26 11:40:36.556704670 +0100 -@@ -167,9 +167,6 @@ class Adder(QObject): +--- 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) @@ -396,22 +359,9 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/add.py calibre-3.39.1.new/src/calibre return tdir try: -diff -rupN calibre-3.39.1/src/calibre/gui2/dialogs/comicconf.py calibre-3.39.1.new/src/calibre/gui2/dialogs/comicconf.py ---- calibre-3.39.1/src/calibre/gui2/dialogs/comicconf.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/gui2/dialogs/comicconf.py 2019-02-26 11:40:36.560038051 +0100 -@@ -33,7 +33,7 @@ def get_conversion_options(window, defau - class ComicConf(QDialog, Ui_Dialog): - - def __init__(self, window, config_defaults=None, generic=True, -- title=_('Set defaults for conversion of comics (CBR/CBZ files)')): -+ title=_('Set defaults for conversion of comics (CBZ files)')): - QDialog.__init__(self, window) - Ui_Dialog.__init__(self) - self.setupUi(self) -diff -rupN calibre-3.39.1/src/calibre/gui2/__init__.py calibre-3.39.1.new/src/calibre/gui2/__init__.py ---- calibre-3.39.1/src/calibre/gui2/__init__.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/gui2/__init__.py 2019-02-26 11:40:36.560038051 +0100 -@@ -191,8 +191,6 @@ def _config(): # {{{ +--- 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')) @@ -420,10 +370,9 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/__init__.py calibre-3.39.1.new/src/ca 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 -rupN calibre-3.39.1/src/calibre/gui2/preferences/behavior.py calibre-3.39.1.new/src/calibre/gui2/preferences/behavior.py ---- calibre-3.39.1/src/calibre/gui2/preferences/behavior.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/gui2/preferences/behavior.py 2019-02-26 11:40:36.560038051 +0100 -@@ -40,7 +40,6 @@ class ConfigWidget(ConfigWidgetBase, Ui_ +--- 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) @@ -431,7 +380,7 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/preferences/behavior.py calibre-3.39. r('upload_news_to_device', config) r('delete_news_from_library_on_upload', config) -@@ -140,7 +139,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_ +@@ -141,7 +140,7 @@ input_map = prefs['input_format_order'] all_formats = set() self.opt_input_order.clear() @@ -440,9 +389,8 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/preferences/behavior.py calibre-3.39. all_formats.add(fmt.upper()) for format in input_map + list(all_formats.difference(input_map)): item = QListWidgetItem(format, self.opt_input_order) -diff -rupN calibre-3.39.1/src/calibre/gui2/preferences/behavior.ui calibre-3.39.1.new/src/calibre/gui2/preferences/behavior.ui ---- calibre-3.39.1/src/calibre/gui2/preferences/behavior.ui 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/gui2/preferences/behavior.ui 2019-02-26 11:40:36.560038051 +0100 +--- 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 @@ @@ -457,10 +405,9 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/preferences/behavior.ui calibre-3.39. -diff -rupN calibre-3.39.1/src/calibre/gui2/update.py calibre-3.39.1.new/src/calibre/gui2/update.py ---- calibre-3.39.1/src/calibre/gui2/update.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/gui2/update.py 2019-02-26 11:40:36.560038051 +0100 -@@ -6,15 +6,13 @@ from polyglot.builtins import map +--- 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 +@@ -6,15 +6,13 @@ from threading import Thread, Event from PyQt5.Qt import (QObject, pyqtSignal, Qt, QUrl, QDialog, QGridLayout, @@ -477,9 +424,9 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/update.py calibre-3.39.1.new/src/cali -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 - - URL = 'https://code.calibre-ebook.com/latest' -@@ -31,35 +29,7 @@ def get_download_url(): + from calibre.utils.serialize import msgpack_dumps, msgpack_loads + from polyglot.binary import as_hex_unicode, from_hex_bytes +@@ -33,35 +31,7 @@ def get_newest_version(): @@ -508,7 +455,7 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/update.py calibre-3.39.1.new/src/cali - except UnicodeDecodeError: - version = u'' - ans = NO_CALIBRE_UPDATE -- m = re.match(unicode(r'(\d+)\.(\d+).(\d+)$'), version) +- 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 @@ -516,7 +463,7 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/update.py calibre-3.39.1.new/src/cali class Signal(QObject): -@@ -82,12 +52,6 @@ class CheckForUpdates(Thread): +@@ -84,12 +54,6 @@ calibre_update_version = NO_CALIBRE_UPDATE plugins_update_found = 0 try: @@ -529,7 +476,7 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/update.py calibre-3.39.1.new/src/cali update_plugins = get_plugin_updates_available(raise_error=True) if update_plugins is not None: plugins_update_found = len(update_plugins) -@@ -132,11 +96,6 @@ class UpdateNotification(QDialog): +@@ -148,11 +112,6 @@ self.setWindowIcon(QIcon(I('lt.png'))) self.l.addWidget(self.logo, 0, 0) self.l.addWidget(self.label, 0, 1) @@ -541,7 +488,7 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/update.py calibre-3.39.1.new/src/cali self.bb = QDialogButtonBox(self) b = self.bb.addButton(_('&Get update'), self.bb.AcceptRole) b.setDefault(True) -@@ -164,9 +123,6 @@ class UpdateNotification(QDialog): +@@ -180,9 +139,6 @@ if gui is not None: gui.quit(restart=True) @@ -551,19 +498,18 @@ diff -rupN calibre-3.39.1/src/calibre/gui2/update.py calibre-3.39.1.new/src/cali def accept(self): open_url(QUrl(get_download_url())) -@@ -214,7 +170,7 @@ class UpdateMixin(object): +@@ -230,7 +186,7 @@ self.status_bar.update_label.setVisible(True) if has_calibre_update: -- if (force or (config.get('new_version_notification') and dynamic.get(version_key(calibre_version), True))): +- 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) -diff -rupN calibre-3.39.1/src/calibre/__init__.py calibre-3.39.1.new/src/calibre/__init__.py ---- calibre-3.39.1/src/calibre/__init__.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/__init__.py 2019-02-26 11:40:36.560038051 +0100 -@@ -298,10 +298,7 @@ def extract(path, dir): +--- 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) @@ -575,7 +521,7 @@ diff -rupN calibre-3.39.1/src/calibre/__init__.py calibre-3.39.1.new/src/calibre from calibre.libunzip import extract as zipextract extractor = zipextract if extractor is None: -@@ -310,9 +307,6 @@ def extract(path, dir): +@@ -266,9 +263,6 @@ if ext in ['zip', 'cbz', 'epub', 'oebzip']: from calibre.libunzip import extract as zipextract extractor = zipextract @@ -585,10 +531,9 @@ diff -rupN calibre-3.39.1/src/calibre/__init__.py calibre-3.39.1.new/src/calibre if extractor is None: raise Exception('Unknown archive type') extractor(path, dir) -diff -rupN calibre-3.39.1/src/calibre/linux.py calibre-3.39.1.new/src/calibre/linux.py ---- calibre-3.39.1/src/calibre/linux.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/linux.py 2019-02-26 11:40:36.560038051 +0100 -@@ -318,7 +318,7 @@ class ZshCompleter(object): # {{{ +--- 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 @@ -597,10 +542,9 @@ diff -rupN calibre-3.39.1/src/calibre/linux.py calibre-3.39.1.new/src/calibre/li continue p = (get_parser(input_fmt=fmt) if is_input else get_parser(output_fmt=fmt)) -diff -rupN calibre-3.39.1/src/calibre/srv/render_book.py calibre-3.39.1.new/src/calibre/srv/render_book.py ---- calibre-3.39.1/src/calibre/srv/render_book.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/srv/render_book.py 2019-02-26 11:40:36.560038051 +0100 -@@ -195,7 +195,7 @@ class Container(ContainerBase): +--- 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, @@ -609,10 +553,9 @@ diff -rupN calibre-3.39.1/src/calibre/srv/render_book.py calibre-3.39.1.new/src/ 'raster_cover_name': raster_cover_name, 'title_page_name': titlepage_name, 'has_maths': False, -diff -rupN calibre-3.39.1/src/calibre/srv/tests/loop.py calibre-3.39.1.new/src/calibre/srv/tests/loop.py ---- calibre-3.39.1/src/calibre/srv/tests/loop.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/srv/tests/loop.py 2019-02-26 11:42:14.074747922 +0100 -@@ -108,24 +108,6 @@ class LoopTest(BaseTest): +--- 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]) @@ -620,15 +563,18 @@ diff -rupN calibre-3.39.1/src/calibre/srv/tests/loop.py calibre-3.39.1.new/src/c - def test_bonjour(self): - 'Test advertising via BonJour' - from calibre.srv.bonjour import BonJour -- from calibre.utils.Zeroconf import Zeroconf -- b = 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, b'_calibre._tcp.local.') +- self.ae(service.type, '_calibre._tcp.local.') - r = Zeroconf() -- info = r.getServiceInfo(service.type, service.name) +- info = r.get_service_info(service.type, service.name) - self.assertIsNotNone(info) - self.ae(info.text, b'\npath=/opds') - @@ -636,11 +582,10 @@ diff -rupN calibre-3.39.1/src/calibre/srv/tests/loop.py calibre-3.39.1.new/src/c - def test_dual_stack(self): from calibre.srv.loop import IPPROTO_IPV6 - with TestServer(lambda data:(data.path[0] + data.read()), listen_on='::') as server: -diff -rupN calibre-3.39.1/src/calibre/test_build.py calibre-3.39.1.new/src/calibre/test_build.py ---- calibre-3.39.1/src/calibre/test_build.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/test_build.py 2019-02-26 11:40:36.563371432 +0100 -@@ -220,10 +220,6 @@ class BuildTest(unittest.TestCase): + 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() @@ -651,10 +596,9 @@ diff -rupN calibre-3.39.1/src/calibre/test_build.py calibre-3.39.1.new/src/calib @unittest.skipUnless(iswindows, 'WPD is windows only') def test_wpd(self): wpd = plugins['wpd'][0] -diff -rupN calibre-3.39.1/src/calibre/utils/file_type_icons.py calibre-3.39.1.new/src/calibre/utils/file_type_icons.py ---- calibre-3.39.1/src/calibre/utils/file_type_icons.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/utils/file_type_icons.py 2019-02-26 11:40:36.563371432 +0100 -@@ -16,7 +16,6 @@ EXT_MAP = { +--- 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', @@ -662,7 +606,7 @@ diff -rupN calibre-3.39.1/src/calibre/utils/file_type_icons.py calibre-3.39.1.ne 'svg' : 'svg', 'html' : 'html', 'htmlz' : 'html', -@@ -28,7 +27,6 @@ EXT_MAP = { +@@ -27,7 +26,6 @@ 'lrx' : 'lrx', 'pdf' : 'pdf', 'pdr' : 'zero', @@ -670,10 +614,9 @@ diff -rupN calibre-3.39.1/src/calibre/utils/file_type_icons.py calibre-3.39.1.ne 'zip' : 'zip', 'txt' : 'txt', 'text' : 'txt', -diff -rupN calibre-3.39.1/src/calibre/utils/search_query_parser_test.py calibre-3.39.1.new/src/calibre/utils/search_query_parser_test.py ---- calibre-3.39.1/src/calibre/utils/search_query_parser_test.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/utils/search_query_parser_test.py 2019-02-26 11:40:36.563371432 +0100 -@@ -30,16 +30,16 @@ class Tester(SearchQueryParser): +--- 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'], @@ -695,7 +638,7 @@ diff -rupN calibre-3.39.1/src/calibre/utils/search_query_parser_test.py calibre- 16: [u'Quicksilver', u'Neal Stephenson', None, u'lrf,zip'], 17: [u'The Comedies of William Shakespeare', u'William Shakespeare', -@@ -54,15 +54,15 @@ class Tester(SearchQueryParser): +@@ -54,15 +54,15 @@ None, u'lrf'], 20: [u'An Ideal Husband', u'Oscar Wilde', u'manybooks.net', u'lrf'], @@ -720,7 +663,7 @@ diff -rupN calibre-3.39.1/src/calibre/utils/search_query_parser_test.py calibre- 30: [u'Genghis Khan and The Making of the Modern World', u'Jack Weatherford Orc', u'Three Rivers Press', -@@ -73,9 +73,9 @@ class Tester(SearchQueryParser): +@@ -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'], @@ -732,7 +675,7 @@ diff -rupN calibre-3.39.1/src/calibre/utils/search_query_parser_test.py calibre- 37: [u'Masterman Ready', u'Marryat, Captain Frederick', None, u'lrf'], 38: [u'With the Lightnings', u'David Drake', -@@ -88,16 +88,16 @@ class Tester(SearchQueryParser): +@@ -88,16 +88,16 @@ 40: [u'The Far Side of The Stars', u'David Drake', u'Baen Publishing Enterprises', @@ -753,7 +696,7 @@ diff -rupN calibre-3.39.1/src/calibre/utils/search_query_parser_test.py calibre- 44: [u'Harry Potter and the Order of the Phoenix', u'J. K. Rowling', None, -@@ -106,12 +106,12 @@ class Tester(SearchQueryParser): +@@ -106,12 +106,12 @@ 46: [u'The Stars at War II', u'Steve White', u'Baen Publishing Enterprises', @@ -769,7 +712,7 @@ diff -rupN calibre-3.39.1/src/calibre/utils/search_query_parser_test.py calibre- 49: [u'Harry Potter and the Prisoner of Azkaban', u'J. K. Rowling', None, -@@ -124,20 +124,20 @@ class Tester(SearchQueryParser): +@@ -124,20 +124,20 @@ u'J.K. Rowling', None, u'lit,lrf,pdf'], @@ -795,7 +738,7 @@ diff -rupN calibre-3.39.1/src/calibre/utils/search_query_parser_test.py calibre- 89: [u'Master and commander', u"Patrick O'Brian", u'Fontana,\n1971', -@@ -145,7 +145,7 @@ class Tester(SearchQueryParser): +@@ -145,7 +145,7 @@ 91: [u'A Companion to Wolves', u'Sarah Monette,Elizabeth Beär', None, @@ -804,7 +747,7 @@ diff -rupN calibre-3.39.1/src/calibre/utils/search_query_parser_test.py calibre- 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 @@ class Tester(SearchQueryParser): +@@ -169,7 +169,7 @@ 144: [u'Atonement', u'Ian McEwan', u'New York : Nan A. Talese/Doubleday, 2002.', @@ -813,7 +756,7 @@ diff -rupN calibre-3.39.1/src/calibre/utils/search_query_parser_test.py calibre- 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 @@ class Tester(SearchQueryParser): +@@ -222,7 +222,7 @@ 253: [u"Hunter's Run", u'George R. R. Martin,Gardner Dozois,Daniel Abraham', u'Eos', @@ -822,7 +765,7 @@ diff -rupN calibre-3.39.1/src/calibre/utils/search_query_parser_test.py calibre- 257: [u'Knife of Dreams', u'Robert Jordan', None, u'lit,lrf'], 258: [u'Saturday', u'Ian McEwan', -@@ -242,7 +242,7 @@ class Tester(SearchQueryParser): +@@ -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'], @@ -831,7 +774,7 @@ diff -rupN calibre-3.39.1/src/calibre/utils/search_query_parser_test.py calibre- 273: [u'The Thousandfold Thought', u'R. Scott Bakker', u'Overlook TP', -@@ -250,17 +250,17 @@ class Tester(SearchQueryParser): +@@ -250,17 +250,17 @@ 276: [u'Elantris', u'Brandon Sanderson', u'New York : Tor, 2005.', @@ -853,7 +796,7 @@ diff -rupN calibre-3.39.1/src/calibre/utils/search_query_parser_test.py calibre- 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 @@ class Tester(SearchQueryParser): +@@ -290,15 +290,15 @@ u'Aspect', u'lit,lrf'], 356: [u'The Naked God', u'Peter F. Hamilton', u'Aspect', u'lit,lrf'], @@ -872,15 +815,3 @@ diff -rupN calibre-3.39.1/src/calibre/utils/search_query_parser_test.py calibre- } tests = { -diff -rupN calibre-3.39.1/src/calibre/web/feeds/feedparser.py calibre-3.39.1.new/src/calibre/web/feeds/feedparser.py ---- calibre-3.39.1/src/calibre/web/feeds/feedparser.py 2019-02-01 18:43:29.000000000 +0100 -+++ calibre-3.39.1.new/src/calibre/web/feeds/feedparser.py 2019-02-26 11:40:36.563371432 +0100 -@@ -2081,7 +2081,7 @@ class _MicroformatsParser: - EMAIL = 5 - - known_xfn_relationships = {'contact', 'acquaintance', 'friend', 'met', 'co-worker', 'coworker', 'colleague', 'co-resident', 'coresident', 'neighbor', 'child', 'parent', 'sibling', 'brother', 'sister', 'spouse', 'wife', 'husband', 'kin', 'relative', 'muse', 'crush', 'date', 'sweetheart', 'me'} -- known_binary_extensions = {'zip','rar','exe','gz','tar','tgz','tbz2','bz2','z','7z','dmg','img','sit','sitx','hqx','deb','rpm','bz2','jar','rar','iso','bin','msi','mp2','mp3','ogg','ogm','mp4','m4v','m4a','avi','wma','wmv'} -+ known_binary_extensions = {'zip','exe','gz','tar','tgz','tbz2','bz2','z','7z','dmg','img','sit','sitx','hqx','deb','rpm','bz2','jar','iso','bin','msi','mp2','mp3','ogg','ogm','mp4','m4v','m4a','avi','wma','wmv'} - - def __init__(self, data, baseuri, encoding): - self.document = BeautifulSoup.BeautifulSoup(data) -- cgit v1.2.3