Date: Mon, 23 Sep 2019 16:09:30 +0000 (UTC) From: "Jason W. Bacon" <jwb@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r512646 - in head/biology: . py-multiqc py-multiqc/files Message-ID: <201909231609.x8NG9Uqb009374@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jwb Date: Mon Sep 23 16:09:30 2019 New Revision: 512646 URL: https://svnweb.freebsd.org/changeset/ports/512646 Log: biology/py-multiqc: Aggregate bioinformatics analysis reports MultiQC searches a given directory for analysis logs and compiles an HTML report. It's a general use tool, perfect for summarising the output from numerous bioinformatics tools. Added: head/biology/py-multiqc/ head/biology/py-multiqc/Makefile (contents, props changed) head/biology/py-multiqc/distinfo (contents, props changed) head/biology/py-multiqc/files/ head/biology/py-multiqc/files/patch-multiqc_utils_config.py (contents, props changed) head/biology/py-multiqc/files/patch-scripts_multiqc (contents, props changed) head/biology/py-multiqc/pkg-descr (contents, props changed) Modified: head/biology/Makefile Modified: head/biology/Makefile ============================================================================== --- head/biology/Makefile Mon Sep 23 16:05:36 2019 (r512645) +++ head/biology/Makefile Mon Sep 23 16:09:30 2019 (r512646) @@ -128,6 +128,7 @@ SUBDIR += py-gtfparse SUBDIR += py-loompy SUBDIR += py-macs2 + SUBDIR += py-multiqc SUBDIR += py-orange3-bioinformatics SUBDIR += py-orange3-single-cell SUBDIR += py-pyfaidx Added: head/biology/py-multiqc/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/biology/py-multiqc/Makefile Mon Sep 23 16:09:30 2019 (r512646) @@ -0,0 +1,36 @@ +# $FreeBSD$ + +PORTNAME= multiqc +DISTVERSION= 1.7 +CATEGORIES= biology python +MASTER_SITES= CHEESESHOP +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} + +MAINTAINER= jwb@FreeBSD.org +COMMENT= Aggregate bioinformatics analysis reports across samples and tools + +LICENSE= GPLv3 +LICENSE_FILE= ${WRKSRC}/LICENSE + +RUN_DEPENDS= ${PYNUMPY} \ + ${PYTHON_PKGNAMEPREFIX}click>0:devel/py-click@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}future>0.14.0:devel/py-future@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}matplotlib>=2.1.1:math/py-matplotlib@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}markdown>0:textproc/py-markdown@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}yaml>0:devel/py-yaml@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}requests>:www/py-requests@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}simplejson>0:devel/py-simplejson@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}Jinja2>=2.9:devel/py-Jinja2@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}lzstring>0:archivers/py-lzstring@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}spectra>=0.0.10:graphics/py-spectra@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}colormath>0:math/py-colormath@${PY_FLAVOR} + +USES= python +USE_PYTHON= autoplist concurrent distutils + +NO_ARCH= yes + +post-patch: + @${RM} ${WRKSRC}/multiqc/utils/config.py.orig + +.include <bsd.port.mk> Added: head/biology/py-multiqc/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/biology/py-multiqc/distinfo Mon Sep 23 16:09:30 2019 (r512646) @@ -0,0 +1,3 @@ +TIMESTAMP = 1569116068 +SHA256 (multiqc-1.7.tar.gz) = 02e6a7fac7cd9ed036dcc6c92b8f8bcacbd28983ba6be53afb35e08868bd2d68 +SIZE (multiqc-1.7.tar.gz) = 1168389 Added: head/biology/py-multiqc/files/patch-multiqc_utils_config.py ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/biology/py-multiqc/files/patch-multiqc_utils_config.py Mon Sep 23 16:09:30 2019 (r512646) @@ -0,0 +1,41 @@ +--- multiqc/utils/config.py.orig 2019-09-22 13:24:47 UTC ++++ multiqc/utils/config.py +@@ -42,13 +42,13 @@ MULTIQC_DIR = os.path.dirname(os.path.realpath(inspect + # Default MultiQC config + searchp_fn = os.path.join( MULTIQC_DIR, 'utils', 'config_defaults.yaml') + with open(searchp_fn) as f: +- configs = yaml.load(f) ++ configs = yaml.load(f, Loader=yaml.FullLoader) + for c, v in configs.items(): + globals()[c] = v + # Module filename search patterns + searchp_fn = os.path.join( MULTIQC_DIR, 'utils', 'search_patterns.yaml') + with open(searchp_fn) as f: +- sp = yaml.load(f) ++ sp = yaml.load(f, Loader=yaml.FullLoader) + + # Other defaults that can't be set in YAML + data_tmp_dir = '/tmp' # will be overwritten by core script +@@ -118,7 +118,7 @@ def mqc_load_config(yaml_config): + if os.path.isfile(yaml_config): + try: + with open(yaml_config) as f: +- new_config = yaml.load(f) ++ new_config = yaml.load(f, Loader=yaml.FullLoader) + logger.debug("Loading config settings from: {}".format(yaml_config)) + mqc_add_config(new_config, yaml_config) + except (IOError, AttributeError) as e: +@@ -132,11 +132,11 @@ def mqc_load_config(yaml_config): + def mqc_cl_config(cl_config): + for clc_str in cl_config: + try: +- parsed_clc = yaml.load(clc_str) ++ parsed_clc = yaml.load(clc_str, Loader=yaml.FullLoader) + # something:var fails as it needs a space. Fix this (a common mistake) + if isinstance(parsed_clc, str) and ':' in clc_str: + clc_str = ': '.join(clc_str.split(':')) +- parsed_clc = yaml.load(clc_str) ++ parsed_clc = yaml.load(clc_str, Loader=yaml.FullLoader) + assert(isinstance(parsed_clc, dict)) + except yaml.scanner.ScannerError as e: + logger.error("Could not parse command line config: {}\n{}".format(clc_str, e)) Added: head/biology/py-multiqc/files/patch-scripts_multiqc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/biology/py-multiqc/files/patch-scripts_multiqc Mon Sep 23 16:09:30 2019 (r512646) @@ -0,0 +1,32 @@ +--- scripts/multiqc.orig 2018-12-21 17:29:54 UTC ++++ scripts/multiqc +@@ -6,18 +6,26 @@ + from __future__ import print_function + + import base64 +-import click ++import os ++import sys ++ ++if 'LC_ALL' in os.environ and 'LANG' in os.environ: ++ import click ++else: ++ print('multiqc: LC_ALL and LANG must be set to a UTF-8 character set') ++ print('in your environment in order for the click module to function.') ++ print('E.g. export LC_ALL=en_US.UTF-8 or setenv LC_ALL en_US.UTF-8') ++ sys.exit() ++ + from distutils import version + from distutils.dir_util import copy_tree + import errno + import io + import jinja2 +-import os + import pkg_resources + import re + import shutil + import subprocess +-import sys + import tempfile + import traceback + Added: head/biology/py-multiqc/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/biology/py-multiqc/pkg-descr Mon Sep 23 16:09:30 2019 (r512646) @@ -0,0 +1,5 @@ +MultiQC searches a given directory for analysis logs and compiles an HTML +report. It's a general use tool, perfect for summarising the output from +numerous bioinformatics tools. + +WWW: https://pypi.python.org/pypi/multiqc
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201909231609.x8NG9Uqb009374>