Skip to content

Commit

Permalink
Merge pull request #1277 from deeptools/docs_pyreqs
Browse files Browse the repository at this point in the history
Docs pyreqs
  • Loading branch information
WardDeb authored Nov 23, 2023
2 parents fae5a7d + 73d03aa commit 484f30d
Show file tree
Hide file tree
Showing 23 changed files with 76 additions and 157 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ jobs:
needs: build-linux
strategy:
matrix:
python-version: ['3.7','3.8','3.9','3.10', '3.11']
python-version: ['3.8','3.9','3.10', '3.11', '3.12']
steps:
- uses: actions/checkout@v3
- uses: actions/download-artifact@v3
Expand Down
4 changes: 3 additions & 1 deletion .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,13 @@ version: 2
build:
os: ubuntu-22.04
tools:
python: "3.11"
python: "3.12"

sphinx:
configuration: docs/conf.py

python:
install:
- method: pip
path: .
- requirements: docs/requirements.txt
32 changes: 11 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
[![install with bioconda](https://img.shields.io/badge/install%20with-bioconda-brightgreen.svg?style=flat)](http://bioconda.github.io/recipes/deeptools/README.html)
[![European Galaxy server](https://img.shields.io/badge/usegalaxy-.eu-brightgreen?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAASCAYAAABB7B6eAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAAsTAAALEwEAmpwYAAACC2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDx0aWZmOkNvbXByZXNzaW9uPjE8L3RpZmY6Q29tcHJlc3Npb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlBob3RvbWV0cmljSW50ZXJwcmV0YXRpb24+MjwvdGlmZjpQaG90b21ldHJpY0ludGVycHJldGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KD0UqkwAAAn9JREFUOBGlVEuLE0EQruqZiftwDz4QYT1IYM8eFkHFw/4HYX+GB3/B4l/YP+CP8OBNTwpCwFMQXAQPKtnsg5nJZpKdni6/6kzHvAYDFtRUT71f3UwAEbkLch9ogQxcBwRKMfAnM1/CBwgrbxkgPAYqlBOy1jfovlaPsEiWPROZmqmZKKzOYCJb/AbdYLso9/9B6GppBRqCrjSYYaquZq20EUKAzVpjo1FzWRDVrNay6C/HDxT92wXrAVCH3ASqq5VqEtv1WZ13Mdwf8LFyyKECNbgHHAObWhScf4Wnj9CbQpPzWYU3UFoX3qkhlG8AY2BTQt5/EA7qaEPQsgGLWied0A8VKrHAsCC1eJ6EFoUd1v6GoPOaRAtDPViUr/wPzkIFV9AaAZGtYB568VyJfijV+ZBzlVZJ3W7XHB2RESGe4opXIGzRTdjcAupOK09RA6kzr1NTrTj7V1ugM4VgPGWEw+e39CxO6JUw5XhhKihmaDacU2GiR0Ohcc4cZ+Kq3AjlEnEeRSazLs6/9b/kh4eTC+hngE3QQD7Yyclxsrf3cpxsPXn+cFdenF9aqlBXMXaDiEyfyfawBz2RqC/O9WF1ysacOpytlUSoqNrtfbS642+4D4CS9V3xb4u8P/ACI4O810efRu6KsC0QnjHJGaq4IOGUjWTo/YDZDB3xSIxcGyNlWcTucb4T3in/3IaueNrZyX0lGOrWndstOr+w21UlVFokILjJLFhPukbVY8OmwNQ3nZgNJNmKDccusSb4UIe+gtkI+9/bSLJDjqn763f5CQ5TLApmICkqwR0QnUPKZFIUnoozWcQuRbC0Km02knj0tPYx63furGs3x/iPnz83zJDVNtdP3QAAAABJRU5ErkJggg==)](https://usegalaxy.eu/root?tool_id=deeptools_compute_matrix)
![test](https://github.com/deeptools/deepTools/actions/workflows/test.yml/badge.svg)
![planemo](https://github.com/deeptools/deepTools/actions/workflows/planemo.yml/badge.svg)


## User-friendly tools for exploring deep-sequencing data
Expand Down Expand Up @@ -34,35 +33,26 @@ Our [Gallery](http://deeptools.readthedocs.org/en/latest/content/example_gallery

deepTools are available for:

* Command line usage (via pip/anaconda/github)
* Command line usage (via pip / conda / github)
* Integration into Galaxy servers (via toolshed/API/web-browser)

There are many easy ways to install deepTools. Details can be found [here](https://deeptools.readthedocs.io/en/latest/content/installation.html)
There are many easy ways to install deepTools. More details can be found [here](https://deeptools.readthedocs.io/en/latest/content/installation.html).

**Install by cloning this repository:**
In Brief:

You can install any one of the deepTools branches on command line (linux/mac) by cloning this git repository :
**Install through pypi**

$ git clone https://github.com/deeptools/deepTools
$ cd deepTools
$ python setup.py install

By default, the script will install the python library and executable
codes globally, which means you need to be root or administrator of
the machine to complete the installation. If you need to
provide a nonstandard install prefix, or any other nonstandard
options, you can provide many command line options to the install
script.
$ pip install deeptools

$ python setup.py --help
**Install via conda**

For example, to install under a specific location use:
$ conda install -c bioconda deeptools

$ python setup.py install --prefix <target directory>
**Install by cloning the repository**

To install into your home directory, use:

$ python setup.py install --user
$ git clone https://github.com/deeptools/deepTools
$ cd deepTools
$ pip install .

<a name="galaxy"/></a>
### Galaxy Installation
Expand Down
5 changes: 1 addition & 4 deletions deeptools/alignmentSieve.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,8 @@
from deeptools import parserCommon
from deeptools.bamHandler import openBam
from deeptools.mapReduce import mapReduce
try: # keep python 3.7 support.
from importlib.metadata import version
except ModuleNotFoundError:
from importlib_metadata import version
from deeptools.utilities import getTLen, smartLabels, getTempFileName
from importlib.metadata import version


def parseArguments():
Expand Down
5 changes: 1 addition & 4 deletions deeptools/bamPEFragmentSize.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,7 @@
# own tools
from deeptools.parserCommon import writableFile
from deeptools.getFragmentAndReadSize import get_read_and_fragment_length
try: # keep python 3.7 support.
from importlib.metadata import version
except ModuleNotFoundError:
from importlib_metadata import version
from importlib.metadata import version


def parse_arguments():
Expand Down
5 changes: 1 addition & 4 deletions deeptools/computeMatrix.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,11 @@
import multiprocessing

from deeptools.parserCommon import writableFile, numberOfProcessors
try: # keep python 3.7 support.
from importlib.metadata import version
except ModuleNotFoundError:
from importlib_metadata import version
from deeptools import parserCommon
from deeptools import heatmapper
import deeptools.computeMatrixOperations as cmo
import deeptools.deepBlue as db
from importlib.metadata import version


def parse_arguments(args=None):
Expand Down
5 changes: 1 addition & 4 deletions deeptools/computeMatrixOperations.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,7 @@
import sys
import os
import csv
try: # keep python 3.7 support.
from importlib.metadata import version
except ModuleNotFoundError:
from importlib_metadata import version
from importlib.metadata import version


def parse_arguments():
Expand Down
5 changes: 1 addition & 4 deletions deeptools/deeptools_list_tools.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,7 @@

import argparse
import sys
try: # keep python 3.7 support.
from importlib.metadata import version
except ModuleNotFoundError:
from importlib_metadata import version
from importlib.metadata import version


def parse_arguments(args=None):
Expand Down
5 changes: 1 addition & 4 deletions deeptools/estimateReadFiltering.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,7 @@
from deeptools import parserCommon, bamHandler, utilities
from deeptools.mapReduce import mapReduce
from deeptools.utilities import smartLabels
try: # keep python 3.7 support.
from importlib.metadata import version
except ModuleNotFoundError:
from importlib_metadata import version
from importlib.metadata import version


def parseArguments():
Expand Down
6 changes: 1 addition & 5 deletions deeptools/estimateScaleFactor.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,7 @@

from deeptools.SES_scaleFactor import estimateScaleFactor
from deeptools.parserCommon import numberOfProcessors
try: # keep python 3.7 support.
from importlib.metadata import version
except ModuleNotFoundError:
from importlib_metadata import version

from importlib.metadata import version
debug = 0


Expand Down
3 changes: 2 additions & 1 deletion deeptools/getFragmentAndReadSize.py
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,8 @@ def get_read_and_fragment_length(bamFile, return_lengths=False, blackListFileNam
-------
d : dict
tuple of two dictionaries, one for the fragment length and the other
for the read length. The dictionaries summarise the mean, median etc. values
for the read length. The dictionaries summarise the mean, median etc. values
"""

bam_handle = bamHandler.openBam(bamFile)
Expand Down
6 changes: 1 addition & 5 deletions deeptools/multiBamSummary.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,7 @@
import deeptools.countReadsPerBin as countR
from deeptools import parserCommon
from deeptools.utilities import smartLabels
try: # keep python 3.7 support.
from importlib.metadata import version
except ModuleNotFoundError:
from importlib_metadata import version

from importlib.metadata import version
old_settings = np.seterr(all='ignore')


Expand Down
5 changes: 1 addition & 4 deletions deeptools/multiBigwigSummary.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,7 @@
from deeptools.utilities import smartLabels
import deeptools.getScorePerBigWigBin as score_bw
import deeptools.deepBlue as db
try: # keep python 3.7 support.
from importlib.metadata import version
except ModuleNotFoundError:
from importlib_metadata import version
from importlib.metadata import version

old_settings = np.seterr(all='ignore')

Expand Down
5 changes: 1 addition & 4 deletions deeptools/parserCommon.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
import argparse
import os
try: # keep python 3.7 support.
from importlib.metadata import version
except ModuleNotFoundError:
from importlib_metadata import version
from importlib.metadata import version


def check_float_0_1(value):
Expand Down
6 changes: 1 addition & 5 deletions deeptools/plotCorrelation.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,9 @@
matplotlib.rcParams['svg.fonttype'] = 'none'
from deeptools import cm # noqa: F401
import matplotlib.pyplot as plt

from importlib.metadata import version
from deeptools.correlation import Correlation
from deeptools.parserCommon import writableFile
try: # keep python 3.7 support.
from importlib.metadata import version
except ModuleNotFoundError:
from importlib_metadata import version

old_settings = np.seterr(all='ignore')

Expand Down
6 changes: 1 addition & 5 deletions deeptools/plotCoverage.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,10 @@
import matplotlib.pyplot as plt
import plotly.offline as py
import plotly.graph_objs as go

from importlib.metadata import version
import deeptools.countReadsPerBin as countR
from deeptools import parserCommon
from deeptools.utilities import smartLabels
try: # keep python 3.7 support.
from importlib.metadata import version
except ModuleNotFoundError:
from importlib_metadata import version

old_settings = np.seterr(all='ignore')

Expand Down
6 changes: 1 addition & 5 deletions deeptools/plotPCA.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,9 @@
matplotlib.rcParams['pdf.fonttype'] = 42
matplotlib.rcParams['svg.fonttype'] = 'none'
from deeptools import cm # noqa: F401

from importlib.metadata import version
from deeptools.correlation import Correlation
from deeptools.parserCommon import writableFile
try: # keep python 3.7 support.
from importlib.metadata import version
except ModuleNotFoundError:
from importlib_metadata import version


def parse_arguments(args=None):
Expand Down
65 changes: 19 additions & 46 deletions docs/content/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,76 +2,61 @@ Installation
=============

Remember -- deepTools are available for **command line usage** as well as for
**integration into Galaxy servers**!
**integration into Galaxy servers** !

.. contents::
:local:

Command line installation using ``conda``
-----------------------------------------

DeepTools (including the requirements) can be installed with conda:
The recommended way to install deepTools (including its requirements) is via `miniconda <https://docs.conda.io/projects/miniconda/en/latest/>`_ or `anaconda <https://www.anaconda.com/>`_.

.. code:: bash
$ conda install -c bioconda deeptools
Command line installation using ``pip`` from pypi
--------------------------------------------------
Command line installation using ``pip``
---------------------------------------

Install deepTools using the following command:
::
deepTools can also be installed using `pip <https://pip.pypa.io/en/stable/>`_.
You can either install the latest release from `pypi <https://pypi.org/>`_:

$ pip install deeptools
.. code:: bash
All python requirements should be automatically installed.
$ pip install deeptools
If you need to specify a specific path for the installation of the tools, make use of `pip install`'s numerous options:
or a specific version with:

.. code:: bash
$ pip install --install-option="--prefix=/MyPath/Tools/deepTools2.0" git+https://github.com/deeptools/deepTools.git
$ pip install deeptools==3.5.3
Command line installation using ``pip`` from source
---------------------------------------------------
In case you would like to install an unreleased or development version, deepTools can also be installed from the repository:

You are highly recommended to use the 'pypi installation' rather than these more complicated steps.

1. Download source code
::
.. code:: bash
$ git clone https://github.com/deeptools/deepTools.git

or if you want a particular release, choose one from https://github.com/deeptools/deepTools/releases:
::

$ wget https://github.com/deeptools/deepTools/archive/1.5.12.tar.gz
$ tar -xzvf

3. install the source code
::

$ python -m build
$ pip install dist/*whl
$ cd deepTools
$ pip install .
Galaxy installation
--------------------

deepTools can be easily integrated into a local `Galaxy <http://galaxyproject.org>`_.
deepTools can be easily integrated into a local `Galaxy <https://galaxyproject.org>`_.
All wrappers and dependencies are available in the `Galaxy Tool
Shed <http://toolshed.g2.bx.psu.edu/view/bgruening/deeptools>`_.
Shed <https://toolshed.g2.bx.psu.edu/>`_.

Installation via Galaxy API (recommended)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

First generate an `API Key <http://wiki.galaxyproject.org/Admin/API#Generate_the_Admin_Account_API_Key>`_
First generate an `API Key <https://wiki.galaxyproject.org/Admin/API#Generate_the_Admin_Account_API_Key>`_
for your admin user and run the the installation script:
::

$ python ./scripts/api/install_tool_shed_repositories.py \
--api YOUR_API_KEY -l http://localhost/ \
--url http://toolshed.g2.bx.psu.edu/ \
--url https://toolshed.g2.bx.psu.edu/ \
-o bgruening -r <revision> --name suite_deeptools \
--tool-deps --repository-deps --panel-section-name deepTools

Expand All @@ -80,7 +65,7 @@ latest revision number from the test tool shed or with the following
command:
::

$ hg identify http://toolshed.g2.bx.psu.edu/repos/bgruening/suite_deeptools
$ hg identify https://toolshed.g2.bx.psu.edu/repos/bgruening/suite_deeptools

You can watch the installation status under: Top Panel --> Admin --> Manage
installed tool shed repositories
Expand All @@ -92,15 +77,3 @@ Installation via web browser
- select *Search and browse tool sheds*
- Galaxy tool shed --> Sequence Analysis --> deeptools
- install deeptools

Installation with Docker
^^^^^^^^^^^^^^^^^^^^^^^^

The deepTools Galaxy instance is also available as a docker container, for those wishing to use the Galaxy framework but who also prefer a virtualized solution. This container is quite simple to install:
::

$ sudo docker pull quay.io/bgruening/galaxy-deeptools

To start and otherwise modify this container, please see the instructions on `the docker-galaxy-stable github repository <https://github.com/bgruening/docker-galaxy-stable>`__. Note that you must use `bgruening/galaxy-deeptools` in place of `bgruening/galaxy-stable` in the examples, as the deepTools Galaxy container is built on top of the galaxy-stable container.

.. tip:: For support or questions please make a post on `Biostars <http://biostars.org>`__. For feature requests or bug reports please open an issue `on github <http://github.com/deeptools/deeptools>`__.
Loading

0 comments on commit 484f30d

Please sign in to comment.