diff --git a/quast.py b/quast.py index cfa81a4793..36acbc06bd 100755 --- a/quast.py +++ b/quast.py @@ -220,9 +220,9 @@ def main(args): if qconfig.platform_name == 'macosx': logger.main_info("") logger.warning("BUSCO can be run on Linux only") - elif sys.version[0:3] == '2.5': + elif sys.version[0:3] < '2.7': logger.main_info("") - logger.warning("BUSCO does not support Python versions earlier than 2.6.") + logger.warning("BUSCO does not support Python versions earlier than 2.7.") else: from quast_libs import run_busco run_busco.do(contigs_fpaths, os.path.join(output_dirpath, qconfig.busco_dirname), logger) diff --git a/quast_libs/qutils.py b/quast_libs/qutils.py index fbf642371f..939a872b89 100644 --- a/quast_libs/qutils.py +++ b/quast_libs/qutils.py @@ -997,7 +997,9 @@ def download_file(url, fpath, tool_name, move_file=True): _, exc_value, _ = sys.exc_info() logger.error( 'Failed downloading %s (url: %s), QUAST functionality will be limited! ' - 'Exception caught: %s' % (tool_name, url, exc_value)) + 'Exception caught: %s\n' + 'You can try to download the file manually, place it in %s and restart QUAST' + % (tool_name, url, exc_value, fpath)) return None if move_file: shutil.move(fpath + '.download', fpath) diff --git a/quast_libs/ra_utils/misc.py b/quast_libs/ra_utils/misc.py index e8501f4a26..4c3cf72371 100644 --- a/quast_libs/ra_utils/misc.py +++ b/quast_libs/ra_utils/misc.py @@ -62,16 +62,14 @@ def get_gridss_fpath(): def download_unpack_compressed_tar(name, download_url, downloaded_fpath, final_dirpath, logger, ext='gz'): - if download_file(download_url, downloaded_fpath, name, move_file=False): - unpack_tar(downloaded_fpath + '.download', final_dirpath, ext=ext) + if download_file(download_url, downloaded_fpath, name, move_file=True): + unpack_tar(downloaded_fpath, final_dirpath, ext=ext) logger.main_info(' Done') - else: - logger.main_info(' Failed downloading %s from %s!' % (name, download_url)) - return False + return True + return False def unpack_tar(fpath, dst_dirpath, ext='bz2'): - shutil.move(fpath, fpath) import tarfile tar = tarfile.open(fpath, "r:" + ext) tar.extractall(dst_dirpath) diff --git a/tc_tests/test_busco.py b/tc_tests/test_busco.py index 8b77ba1bf2..533db69980 100755 --- a/tc_tests/test_busco.py +++ b/tc_tests/test_busco.py @@ -9,6 +9,10 @@ print('Busco can be run on Linux only') sys.exit(0) +if sys.version[:3] < '2.7': + print('BUSCO does not support Python versions earlier than 2.7') + sys.exit(0) + name = os.path.basename(__file__)[5:-3] contigs = [meta_contigs_1, meta_contigs_2]