# -*- coding: utf-8 -*-
from setuptools import setup

packages = \
['conodictor']

package_data = \
{'': ['*']}

install_requires = \
['bio>=1.3.3,<2.0.0',
 'exitstatus>=2.2.0,<3.0.0',
 'matplotlib>=3.5.1,<4.0.0',
 'pandas>=1.3.5,<2.0.0',
 'pyfastx>=0.8.4,<0.9.0']

entry_points = \
{'console_scripts': ['conodictor = conodictor.conodictor:main']}

setup_kwargs = {
    'name': 'conodictor',
    'version': '2.3.4',
    'description': 'Prediction and classification of conopeptides',
    'long_description': '[![PyPI](https://img.shields.io/pypi/v/conodictor.svg)](https://pypi.org/project/conodictor)\n[![Wheel](https://img.shields.io/pypi/wheel/conodictor.svg)](https://pypi.org/project/conodictor)\n[![Language](https://img.shields.io/pypi/implementation/conodictor)](https://pypi.org/project/conodictor)\n[![Pyver](https://img.shields.io/pypi/pyversions/conodictor.svg)](https://pypi.org/project/conodictor)\n[![Downloads](https://img.shields.io/pypi/dm/conodictor)](https://pypi.org/project/conodictor)\n[![Docker](https://img.shields.io/docker/pulls/ebedthan/conodictor.svg)]()\n[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)\n\n\n## ConoDictor: A fast and accurate prediction and classification tool for conopeptides\n\n\n### Introduction\n\nCone snails are among the richest sources of natural peptides with promising pharmacological and therapeutic applications. With the reduced costs of RNAseq, scientists now heavily rely on venom gland transcriptomes for the mining of novel bioactive conopeptides, but the bioinformatic analyses often hamper the discovery process.\n\nConoDictor 2 is a standalone and user-friendly command-line program. We have updated the program originally published as a web server 10 years ago using novel and updated tools and algorithms and improved our classification models with new and higher quality sequences. ConoDictor 2 is now more accurate, faster, multiplatform, and able to deal with a whole cone snail venom gland transcriptome (raw reads or contigs) in a very short time.\n\nThe only input ConoDictor 2 requires is the assembled transcriptome or the raw reads file either in DNA or amino acid: used alphabet is automatically recognized. ConoDictor 2 run predictions directly on the proteins file (submitted or dynamically generated) and tries to report the longest conopeptide  precursor-like sequence.\n\n### Installation\n\n#### Install from Pip\n\nYou will have first to install [HMMER 3](https://hmmer.org) and [Pftools](https://github.com/sib-swiss/pftools3) to be able to run conodictor.\n\n```bash\npip install conodictor\n```\n\n#### Using containers\n\n#### Docker\n\nAccessible at https://hub.docker.com/u/ebedthan or on [BioContainers](https://github.com/BioContainers/containers/tree/master/conodictor/2.2.2).\n\n\n```bash\ndocker pull ebedthan/conodictor:latest\ndocker run ebedthan/conodictor:latest conodictor -h\n```\n\nExample of a run\n\n```bash\ndocker run --rm=True -v $PWD:/data -u $(id -u):$(id -g) ebedthan/conodictor:latest conodictor --out /data/outdir /data/input.fa.gz\n```\n\nSee https://staph-b.github.io/docker-builds/run_containers/ for more informations on how to properly run a docker container.\n\n\n#### Singularity\n\nThe singularity container does not need admin privileges making it\nsuitable for university clusters and HPC.\n\n```bash\nsingularity build conodictor.sif docker://ebedthan/conodictor:latest\nsingularity exec conodictor.sif conodictor -h\n```\n\n\n#### Install from source\n\n```bash\n# Download ConoDictor development version\ngit clone https://github.com/koualab/conodictor.git conodictor\n\n# Navigate to directory\ncd conodictor\n\n# Install with poetry: see https://python-poetry.org\npoetry install --no-dev\n\n# Enter the Python virtual environment with\npoetry shell\n\n# Test conodictor is correctly installed\nconodictor -h\n```\n\nIf you do not want to go into the virtual environment just do:\n\n```bash\npoetry run conodictor -h\n```\n\n## Test\n\n* Type `conodictor -h` and it should output something like:\n\n```bash\nconodictor [FLAGS/OPTIONS] <file>\nExamples:\n\tconodictor file.fa.gz\n\tconodictor --out outfolder --cpus 4 --mlen 51 file.fa\n\npositional arguments:\n  file                  Specifies input file.\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -o OUT, --out OUT     Specify output folder.\n  --mlen MLEN           Set the minimum length of the sequence to be\n                        considered as a match\n  --ndup NDUP           Minimum sequence occurence of a sequence to be\n                        considered\n  --faa                 Create a fasta file of matched sequences. Default:\n                        False.\n  --filter              Activate the removal of sequences that matches only\n                        the signal and/or proregions. Default: False.\n  -a, --all             Display sequence without hits in output. Default:\n                        False.\n  -j CPUS, --cpus CPUS  Specify the number of threads. Default: 1.\n  --force               Force re-use output directory. Default: Off.\n  -q, --quiet           Decrease program verbosity\n  --debug               Activate debug mode\n```\n\n\n## Invoking conodictor\n\n```bash\nconodictor file.fa.gz\nconodictor --out outfolder --cpus 4 --mlen 51 file.fa\n```\n  \n\n## Output files\n\nThe comma separeted-values file summary.csv can be easily viewed with any office suite,\nor text editor.\n\n```csv\nsequence,hmm_pred,pssm_pred definitive_pred\nSEQ_ID_1,A,A,A\nSEQ_ID_2,B,D,CONFLICT B and D\nSEQ_ID_3,O1,O1,O1\n...\n\n```\n\n## Command line options\n\n```\nGeneral:\n         file              Specify input fasta file [required]\n\nOutputs:\n         -o, --out         Specify output folder.\n         --faa             Create a fasta file of matched sequences. Default: False.\n         -a, --all         Display sequence without hits in output. Default: False.\n         --force           Force re-use output directory. Default: Off.\nComputation:\n         -j, --cpus        Specify number of threads. Default: 1.\n         \nSetup:\n         -q, --quiet       Decrease verbosity\n         --debug           Activate debug mode\n\nStandard meta-options:\n         --help, -h    Print help and exit\n\n```\n\n## Citation\n\nWhen using ConoDictor2 in your work, you should cite:\n\nDominique Koua, Anicet Ebou, Sébastien Dutertre, Improved prediction of conopeptide superfamilies with ConoDictor 2.0, Bioinformatics Advances, Volume 1, Issue 1, 2021, vbab011, https://doi.org/10.1093/bioadv/vbab011.\n  \n## Bugs\n\nSubmit problems or requests to the [Issue Tracker](https://github.com/koualab/conodictor/issues).\n\n\n## Dependencies\n\n### Mandatory\n\n* [**HMMER 3**](https://hmmer.org)  \n  Used for HMM profile prediction.   \n  *Eddy SR, Accelerated Profile HMM Searches. PLOS Computational Biology 2011, 10.1371/journal.pcbi.1002195*\n\n* [**Pftools**](https://github.com/sib-swiss/pftools3)  \n  Used for PSSM prediction.    \n  *Schuepbach P et al. pfsearchV3: a code acceleration and heuristic to search PROSITE profiles. Bioinformatics 2013, 10.1093/bioinformatics/btt129*\n\n\n## Licence\n\n[GPL v3](https://github.com/koualab/conodictor/blob/main/LICENSE).\n\nFor commercial uses please contact Dominique Koua at dominique.koua@inphb.ci.\n\n## Authors\n\n* [Anicet Ebou](https://orcid.org/0000-0003-4005-177X)\n* [Dominique Koua](https://www.researchgate.net/profile/Dominique_Koua)',
    'author': 'Anicet Ebou',
    'author_email': 'anicet.ebou@gmail.com',
    'maintainer': 'Anicet Ebou',
    'maintainer_email': 'anicet.ebou@gmail.com',
    'url': 'https://github.com/koualab/conodictor',
    'packages': packages,
    'package_data': package_data,
    'install_requires': install_requires,
    'entry_points': entry_points,
    'python_requires': '>=3.8,<4.0',
}


setup(**setup_kwargs)
