diff options
author | Paweł Jastrzębski <pawelj@iosphe.re> | 2017-03-11 19:43:32 +0100 |
---|---|---|
committer | Paweł Jastrzębski <pawelj@iosphe.re> | 2017-03-12 13:29:10 +0100 |
commit | d2c12c89e6f759cd3f98c53220c48a7eddfcf774 (patch) | |
tree | dadb5a09db85b5247cdf971c35a4f2b1a2945b3c | |
parent | Updated README + version bump (diff) | |
download | kcc-d2c12c89e6f759cd3f98c53220c48a7eddfcf774.tar.gz kcc-d2c12c89e6f759cd3f98c53220c48a7eddfcf774.tar.bz2 kcc-d2c12c89e6f759cd3f98c53220c48a7eddfcf774.zip |
Updated dependencies
-rw-r--r-- | README.md | 13 | ||||
-rw-r--r-- | kindlecomicconverter/cbxarchive.py | 6 | ||||
-rwxr-xr-x | kindlecomicconverter/comic2ebook.py | 20 | ||||
-rw-r--r-- | kindlecomicconverter/comic2panel.py | 8 | ||||
-rw-r--r-- | kindlecomicconverter/shared.py | 33 | ||||
-rw-r--r-- | requirements.txt | 5 | ||||
-rwxr-xr-x | setup.py | 12 |
7 files changed, 38 insertions, 59 deletions
diff --git a/README.md b/README.md index d1c8ea8..b73635a 100644 --- a/README.md +++ b/README.md @@ -32,17 +32,16 @@ You can find the latest released binary at the following links: ## DEPENDENCIES Following software is required to run Linux version of **KCC** and/or bare sources: - Python 3.3+ -- [PyQt](https://pypi.python.org/pypi/PyQt5) 5.6.0+ -- [Pillow](https://pypi.python.org/pypi/Pillow/) 3.2.0+ -- [psutil](https://pypi.python.org/pypi/psutil) 4.1.0+ -- [python-slugify](https://pypi.python.org/pypi/python-slugify) 1.2.0+ -- [raven](https://pypi.python.org/pypi/raven) 5.13.0+ -- [scandir](https://pypi.python.org/pypi/scandir) 1.2.0+ _(needed only when using Python 3.3 or 3.4)_ +- [PyQt5](https://pypi.python.org/pypi/PyQt5) 5.6.0+ +- [Pillow](https://pypi.python.org/pypi/Pillow/) 4.0.0+ +- [psutil](https://pypi.python.org/pypi/psutil) 5.0.0+ +- [python-slugify](https://pypi.python.org/pypi/python-slugify) 1.2.1+ +- [raven](https://pypi.python.org/pypi/raven) 6.0.0+ On Debian based distributions these two commands should install all needed dependencies: ``` sudo apt-get install python3 python3-dev python3-pip libpng-dev libjpeg-dev p7zip-full unrar -sudo pip3 install --upgrade pillow python-slugify psutil scandir raven pyqt5 +sudo pip3 install --upgrade pillow python-slugify psutil pyqt5 raven ``` ### Optional dependencies diff --git a/kindlecomicconverter/cbxarchive.py b/kindlecomicconverter/cbxarchive.py index 726432b..f5765ec 100644 --- a/kindlecomicconverter/cbxarchive.py +++ b/kindlecomicconverter/cbxarchive.py @@ -22,10 +22,6 @@ from zipfile import is_zipfile, ZipFile from subprocess import STDOUT, PIPE from psutil import Popen from shutil import move, copy -try: - from scandir import walk -except ImportError: - walk = os.walk from . import rarfile from .shared import check7ZFile as is_7zfile, saferReplace, saferRemove @@ -63,7 +59,7 @@ class CBxArchive: def extractCBR(self, targetdir): cbrFile = rarfile.RarFile(self.origFileName) cbrFile.extractall(targetdir) - for root, dirnames, filenames in walk(targetdir): + for root, dirnames, filenames in os.walk(targetdir): for filename in filenames: if filename.startswith('__MACOSX') or filename.endswith('.DS_Store') or filename.endswith('humbs.db'): saferRemove(os.path.join(root, filename)) diff --git a/kindlecomicconverter/comic2ebook.py b/kindlecomicconverter/comic2ebook.py index 404ca11..4ab9248 100755 --- a/kindlecomicconverter/comic2ebook.py +++ b/kindlecomicconverter/comic2ebook.py @@ -42,10 +42,6 @@ try: from PyQt5 import QtCore except ImportError: QtCore = None -try: - from scandir import walk -except ImportError: - walk = os.walk from .shared import md5Checksum, getImageFileName, walkSort, walkLevel, saferReplace, saferRemove, sanitizeTrace from . import comic2panel from . import image @@ -424,7 +420,7 @@ def buildEPUB(path, chapterNames, tomeNumber): "display: none;\n", "}\n"]) f.close() - for (dirpath, dirnames, filenames) in walk(os.path.join(path, 'OEBPS', 'Images')): + for (dirpath, dirnames, filenames) in os.walk(os.path.join(path, 'OEBPS', 'Images')): chapter = False dirnames, filenames = walkSort(dirnames, filenames) for afile in filenames: @@ -465,7 +461,7 @@ def imgDirectoryProcessing(path): options.imgPurgeIndex = [] work = [] pagenumber = 0 - for (dirpath, dirnames, filenames) in walk(path): + for (dirpath, dirnames, filenames) in os.walk(path): for afile in filenames: pagenumber += 1 work.append([afile, dirpath, options]) @@ -663,7 +659,7 @@ def getCoversFromMCB(mangaID): def getDirectorySize(start_path='.'): total_size = 0 - for dirpath, dirnames, filenames in walk(start_path): + for dirpath, dirnames, filenames in os.walk(start_path): for f in filenames: fp = os.path.join(dirpath, f) total_size += os.path.getsize(fp) @@ -688,7 +684,7 @@ def getPanelViewSize(deviceres, size): def sanitizeTree(filetree): chapterNames = {} - for root, dirs, files in walk(filetree, False): + for root, dirs, files in os.walk(filetree, False): for name in files: splitname = os.path.splitext(name) slugified = slugify(splitname[0]) @@ -714,7 +710,7 @@ def sanitizeTree(filetree): def sanitizeTreeKobo(filetree): pageNumber = 0 - for root, dirs, files in walk(filetree): + for root, dirs, files in os.walk(filetree): dirs, files = walkSort(dirs, files) for name in files: splitname = os.path.splitext(name) @@ -730,7 +726,7 @@ def sanitizeTreeKobo(filetree): def sanitizePermissions(filetree): - for root, dirs, files in walk(filetree, False): + for root, dirs, files in os.walk(filetree, False): for name in files: os.chmod(os.path.join(root, name), S_IWRITE | S_IREAD) for name in dirs: @@ -799,7 +795,7 @@ def splitProcess(path, mode): def detectCorruption(tmpPath, orgPath): imageNumber = 0 imageSmaller = 0 - for root, dirs, files in walk(tmpPath, False): + for root, dirs, files in os.walk(tmpPath, False): for name in files: if getImageFileName(name) is not None: path = os.path.join(root, name) @@ -850,7 +846,7 @@ def makeZIP(zipFilename, baseDir, isEPUB=False): zipOutput = ZipFile(zipFilename, 'w', ZIP_DEFLATED) if isEPUB: zipOutput.writestr('mimetype', 'application/epub+zip', ZIP_STORED) - for dirpath, dirnames, filenames in walk(baseDir): + for dirpath, dirnames, filenames in os.walk(baseDir): for name in filenames: path = os.path.normpath(os.path.join(dirpath, name)) aPath = os.path.normpath(os.path.join(dirpath.replace(baseDir, ''), name)) diff --git a/kindlecomicconverter/comic2panel.py b/kindlecomicconverter/comic2panel.py index 522587c..6ccdcbc 100644 --- a/kindlecomicconverter/comic2panel.py +++ b/kindlecomicconverter/comic2panel.py @@ -29,10 +29,6 @@ try: from PyQt5 import QtCore except ImportError: QtCore = None -try: - from scandir import walk -except ImportError: - walk = os.walk def mergeDirectoryTick(output): @@ -250,7 +246,7 @@ def main(argv=None, qtGUI=None): mergeWorkerOutput = [] mergeWorkerPool = Pool() mergeWork.append([options.targetDir]) - for root, dirs, files in walk(options.targetDir, False): + for root, dirs, files in os.walk(options.targetDir, False): dirs, files = walkSort(dirs, files) for directory in dirs: directoryNumer += 1 @@ -269,7 +265,7 @@ def main(argv=None, qtGUI=None): rmtree(options.targetDir, True) raise RuntimeError("One of workers crashed. Cause: " + mergeWorkerOutput[0][0], mergeWorkerOutput[0][1]) print("Splitting images...") - for root, dirs, files in walk(options.targetDir, False): + for root, dirs, files in os.walk(options.targetDir, False): for name in files: if getImageFileName(name) is not None: pagenumber += 1 diff --git a/kindlecomicconverter/shared.py b/kindlecomicconverter/shared.py index 3843f39..03a7aca 100644 --- a/kindlecomicconverter/shared.py +++ b/kindlecomicconverter/shared.py @@ -27,10 +27,6 @@ from tempfile import mkdtemp from zipfile import ZipFile, ZIP_DEFLATED from re import split from traceback import format_tb -try: - from scandir import walk -except ImportError: - walk = os.walk class HTMLStripper(HTMLParser): @@ -71,7 +67,7 @@ def walkLevel(some_dir, level=1): some_dir = some_dir.rstrip(os.path.sep) assert os.path.isdir(some_dir) num_sep = some_dir.count(os.path.sep) - for root, dirs, files in walk(some_dir): + for root, dirs, files in os.walk(some_dir): dirs, files = walkSort(dirs, files) yield root, dirs, files num_sep_this = root.count(os.path.sep) @@ -164,33 +160,26 @@ def dependencyCheck(level): try: import raven except ImportError: - missing.append('raven 5.13.0+') + missing.append('raven 6.0.0+') if level > 1: try: from psutil import __version__ as psutilVersion - if StrictVersion('4.1.0') > StrictVersion(psutilVersion): - missing.append('psutil 4.1.0+') + if StrictVersion('5.0.0') > StrictVersion(psutilVersion): + missing.append('psutil 5.0.0+') except ImportError: - missing.append('psutil 4.1.0+') + missing.append('psutil 5.0.0+') try: from slugify import __version__ as slugifyVersion - if StrictVersion('1.2.0') > StrictVersion(slugifyVersion): - missing.append('python-slugify 1.2.0+') + if StrictVersion('1.2.1') > StrictVersion(slugifyVersion): + missing.append('python-slugify 1.2.1+') except ImportError: - missing.append('python-slugify 1.2.0+') + missing.append('python-slugify 1.2.1+') try: from PIL import PILLOW_VERSION as pillowVersion - if StrictVersion('3.2.0') > StrictVersion(pillowVersion): - missing.append('Pillow 3.2.0+') + if StrictVersion('4.0.0') > StrictVersion(pillowVersion): + missing.append('Pillow 4.0.0+') except ImportError: - missing.append('Pillow 3.2.0+') - if version_info[1] < 5: - try: - from scandir import __version__ as scandirVersion - if StrictVersion('1.2') > StrictVersion(scandirVersion): - missing.append('scandir 1.2+') - except ImportError: - missing.append('scandir 1.2+') + missing.append('Pillow 4.0.0+') if len(missing) > 0: print('ERROR: ' + ', '.join(missing) + ' is not installed!') exit(1) diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..0478a95 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,5 @@ +PyQt5>=5.6.0 +Pillow>=4.0.0 +psutil>=5.0.0 +python-slugify>=1.2.1 +raven>=6.0.0 \ No newline at end of file diff --git a/setup.py b/setup.py index d355265..d1d4808 100755 --- a/setup.py +++ b/setup.py @@ -106,7 +106,7 @@ class BuildCommand(build): shutil.copyfile('kcc.py', 'build/_scripts/kcc') shutil.copyfile('kcc-c2e.py', 'build/_scripts/kcc-c2e') shutil.copyfile('kcc-c2p.py', 'build/_scripts/kcc-c2p') - # noinspection PyShadowingNames + # noinspection PyUnusedLocal,PyShadowingNames OPTIONS = dict( scripts=['build/_scripts/kcc', 'build/_scripts/kcc-c2e', @@ -114,15 +114,13 @@ class BuildCommand(build): packages=['kcc'], install_requires=[ 'PyQt5>=5.6.0' - 'Pillow>=3.2.0', - 'psutil>=4.1.0', - 'python-slugify>=1.2.0', - 'raven>=5.13.0', + 'Pillow>=4.0.0', + 'psutil>=5.0.0', + 'python-slugify>=1.2.1', + 'raven>=6.0.0', ], zip_safe=False, ) - if sys.version_info[1] < 5: - OPTIONS['install_requires'].append('scandir>=1.2.0') build.run(self) |