Skip to content

Commit

Permalink
Release v1.1.0 (#13)
Browse files Browse the repository at this point in the history
* Refactor functions

* Update databases (HMDB, LIPID MAPS, etc)

* Include subgroups to improve annotations (adducts, isotopes, etc)

* Improve summary outputs

* Update and Improve GUI 

* Fix FutureWarnings

* Add GitHub actions (#9)

* Update dependencies (#12)

* Update tests

* Update examples

* Update README
  • Loading branch information
RJMW committed Feb 19, 2021
1 parent c745cc6 commit d87c1d5
Show file tree
Hide file tree
Showing 92 changed files with 4,080 additions and 2,989 deletions.
2 changes: 2 additions & 0 deletions .coveragerc
@@ -0,0 +1,2 @@
[run]
omit = tests/*,setup.py,beamspy/__main__.py,beamspy/qt/form.py,beamspy/gui.py
60 changes: 60 additions & 0 deletions .github/workflows/build-test.yml
@@ -0,0 +1,60 @@
name: beamspy

on: [push, pull_request]

jobs:
build:
runs-on: ${{ matrix.os }}

strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
python-version: [3.7, 3.8]

env:
OS: ${{ matrix.os }}
PYTHON: ${{ matrix.python-version }}

steps:
- uses: actions/checkout@v2

- name: Setup conda - Python ${{ matrix.python-version }}
uses: s-weigand/setup-conda@v1
with:
update-conda: true
python-version: ${{ matrix.python-version }}
conda-channels: conda-forge, bioconda

- name: Install dependencies
run: |
python --version
conda env update --file environment.yml --name base
- name: Lint with flake8
run: |
conda install flake8
# stop build if there are Python syntax errors or undefined names
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Test with pytest-cov
run: |
python setup.py install
beamspy --help
conda install pytest codecov pytest-cov -c conda-forge
pytest --cov ./ --cov-config=.coveragerc --cov-report=xml
- name: Upload code coverage to codecov
uses: codecov/codecov-action@v1
with:
flags: unittests
env_vars: OS,PYTHON
fail_ci_if_error: true
verbose: true
13 changes: 9 additions & 4 deletions .travis.yml
Expand Up @@ -6,17 +6,22 @@ python:
services:
- xvfb

before_install:
- python --version
- pip install -U pip
- pip install -U pytest
- pip install codecov pytest-cov

install:
- pip install coverage
- pip install green codecov
- pip install .

before_script:
- "export DISPLAY=:99.0"

script:
- beamspy --help
- green -vvv --run-coverage
- pytest --cov=beamspy tests/

after_script:
- python -m codecov
- codecov

5 changes: 3 additions & 2 deletions MANIFEST.in
@@ -1,7 +1,8 @@
include README.rst
include LICENSE
include requirements*.txt
include examples/*.*
include requirements.txt
include examples/run.py
include examples/run.sh
include tests/*.py
include tests/test_data/*.*
include tests/test_results/.gitignore
Expand Down
219 changes: 113 additions & 106 deletions README.rst
@@ -1,106 +1,113 @@
BEAMSpy - Birmingham mEtabolite Annotation for Mass Spectrometry (Python package)
==================================================================================
|Version| |Py versions| |Git| |Bioconda| |Build Status (Travis)| |Build Status (AppVeyor)| |License| |RTD doc| |codecov| |mybinder|

BEAMSpy (Birmingham mEtabolite Annotation for Mass Spectrometry) is a Python package that includes several automated and
seamless computational modules that are applied to putatively annotate metabolites detected in untargeted ultra (high)
performance liquid chromatography-mass spectrometry or untargeted direct infusion mass spectrometry metabolomic assays
in an automated process. All reported metabolites are annotated to level 3 of the Metabolomics Standards
Initiative (MSI) reporting standards (Metabolomics. 2007 Sep; 3(3): 211–221. `doi: 10.1007/s11306-007-0082-2 <https://doi.org/10.1007/s11306-007-0082-2>`_).

The package is highly flexible to suit the diversity of sample types studied and mass spectrometers applied in
untargeted metabolomics studies. The user can use the standard reference files included in the package or can develop
their own reference files.


- `Documentation (Read the Docs) <https://beamspy.readthedocs.io/en/latest/>`_
- `Bug reports <https://github.com/computational-metabolomics/beamspy/issues>`_


.. _quick_installation:

Quick installation
-------------------

Conda_
~~~~~~~

1. `Install Miniconda <https://conda.io/docs/user-guide/install>`_.
2. Run the following commands to install BEAMSpy.

Windows-64, Linux-64 and OSx

::

$ conda create -n beamspy beamspy -c conda-forge -c bioconda -c computational-metabolomics
$ activate beamspy

Linux-64 and OSx

::

$ conda create -n beamspy beamspy -c conda-forge -c bioconda -c computational-metabolomics
$ source activate beamspy


Usage
------------------------

Command line interface (CLI)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

::

$ beamspy --help

Graphical user interface (GUI)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

::

$ beamspy start-gui

Bug reports
------------------------

Please report any bugs that you find `here <https://github.com/computational-metabolomics/beamspy/issues>`_.
Or fork the repository on `GitHub <https://github.com/computational-metabolomics/beamspy/>`_
and create a pull request (PR). We welcome all contributions, and we will help you to make the PR if you are new to `git <https://guides.github.com/activities/hello-world/>`_.

License
------------------------

Released under the GNU General Public License v3.0 (see `LICENSE file <https://github.com/computational-metabolomics/beamspy/LICENSE>`_)

.. |Build Status (Travis)| image:: https://img.shields.io/travis/computational-metabolomics/beamspy.svg?branch=dev&style=flat&maxAge=3600&label=Travis-CI
:target: https://travis-ci.com/computational-metabolomics/beamspy

.. |Build Status (AppVeyor)| image:: https://img.shields.io/appveyor/ci/RJMW/beamspy.svg?style=flat&maxAge=3600&label=AppVeyor
:target: https://ci.appveyor.com/project/RJMW/beamspy

.. |Py versions| image:: https://img.shields.io/pypi/pyversions/beamspy.svg?style=flat&maxAge=3600
:target: https://pypi.python.org/pypi/beamspy/

.. |Version| image:: https://img.shields.io/pypi/v/beamspy.svg?style=flat&maxAge=3600
:target: https://pypi.python.org/pypi/beamspy/

.. |Git| image:: https://img.shields.io/badge/repository-GitHub-blue.svg?style=flat&maxAge=3600
:target: https://github.com/computational-metabolomics/beamspy

.. |Bioconda| image:: https://img.shields.io/badge/install%20with-bioconda-brightgreen.svg?style=flat&maxAge=3600
:target: http://bioconda.github.io/recipes/beamspy/README.html

.. |License| image:: https://img.shields.io/badge/License-GPL%20v3-blue.svg
:target: https://www.gnu.org/licenses/gpl-3.0.html

.. |RTD doc| image:: https://img.shields.io/badge/documentation-RTD-71B360.svg?style=flat&maxAge=3600
:target: https://beamspy.readthedocs.io/en/latest/

.. |codecov| image:: https://codecov.io/gh/computational-metabolomics/beamspy/branch/master/graph/badge.svg
:target: https://codecov.io/gh/computational-metabolomics/beamspy

.. |mybinder| image:: https://mybinder.org/badge_logo.svg
:target: https://mybinder.org/v2/gh/computational-metabolomics/beamspy/master?filepath=notebooks

.. _pip: https://pip.pypa.io/
.. _Conda: http://conda.pydata.org/docs/
BEAMSpy - Birmingham mEtabolite Annotation for Mass Spectrometry (Python package)
==================================================================================
|Version| |Py versions| |Git| |Bioconda| |Build Status| |Build Status (AppVeyor)| |License| |RTD doc| |codecov| |mybinder|

BEAMSpy (Birmingham mEtabolite Annotation for Mass Spectrometry) is a Python package that includes several automated and
seamless computational modules that are applied to putatively annotate metabolites detected in untargeted ultra (high)
performance liquid chromatography-mass spectrometry or untargeted direct infusion mass spectrometry metabolomic assays.
All reported metabolites are annotated to level 2 or 3 of the Metabolomics Standards
Initiative (MSI) reporting standards (Metabolomics. 2007 Sep; 3(3): 211–221. `doi: 10.1007/s11306-007-0082-2 <https://doi.org/10.1007/s11306-007-0082-2>`_).
The package is highly flexible to suit the diversity of sample types studied and mass spectrometers applied in
untargeted metabolomics studies. The user can use the standard reference files included in the package or can develop
their own reference files.


- `Documentation (Read the Docs) <https://beamspy.readthedocs.io/en/latest/>`_
- `Bug reports <https://github.com/computational-metabolomics/beamspy/issues>`_


Quick installation
-------------------

Conda_
~~~~~~~

1. Install `Miniconda <https://docs.conda.io/en/latest/miniconda.html>`_. Follow the steps described `here <https://docs.conda.io/projects/conda/en/latest/user-guide/install>`__.
2. Run the following commands to install BEAMSpy.

Windows-64, Linux-64 and OSx

::

$ conda create -n beamspy beamspy -c conda-forge -c bioconda -c computational-metabolomics
$ activate beamspy

Linux-64 and OSx

::

$ conda create -n beamspy beamspy -c conda-forge -c bioconda -c computational-metabolomics
$ source activate beamspy


Usage
------------------------

Command line interface (CLI)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

::

$ beamspy --help

Graphical user interface (GUI)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

::

$ beamspy start-gui


Bug reports
------------------------

Please report any bugs that you find `here <https://github.com/computational-metabolomics/beamspy/issues>`__.
Or fork the repository on `GitHub <https://github.com/computational-metabolomics/beamspy/>`_
and create a pull request (PR). We welcome all contributions, and we will help you to make the PR if you are new to `git <https://guides.github.com/activities/hello-world/>`_.


Credits
-------
- `Team (University of Birmingham and EMBL-EBI) <https://more.bham.ac.uk/beams/team/>`__

**Code base**
- Ralf J. M. Weber (r.j.weber@bham.ac.uk) - `University of Birmingham (UK) <https://www.birmingham.ac.uk/staff/profiles/biosciences/weber-ralf.aspx>`__


License
------------------------

Released under the GNU General Public License v3.0 (see `LICENSE <https://github.com/computational-metabolomics/beamspy/blob/master/LICENSE>`_)

.. |Build Status| image:: https://github.com/computational-metabolomics/beamspy/workflows/beamspy/badge.svg
:target: https://github.com/computational-metabolomics/beamspy/actions

.. |Build Status (AppVeyor)| image:: https://img.shields.io/appveyor/ci/RJMW/beamspy.svg?style=flat&maxAge=3600&label=AppVeyor
:target: https://ci.appveyor.com/project/RJMW/beamspy

.. |Py versions| image:: https://img.shields.io/pypi/pyversions/beamspy.svg?style=flat&maxAge=3600
:target: https://pypi.python.org/pypi/beamspy/

.. |Version| image:: https://img.shields.io/pypi/v/beamspy.svg?style=flat&maxAge=3600
:target: https://pypi.python.org/pypi/beamspy/

.. |Git| image:: https://img.shields.io/badge/repository-GitHub-blue.svg?style=flat&maxAge=3600
:target: https://github.com/computational-metabolomics/beamspy

.. |Bioconda| image:: https://img.shields.io/badge/install%20with-bioconda-brightgreen.svg?style=flat&maxAge=3600
:target: http://bioconda.github.io/recipes/beamspy/README.html

.. |License| image:: https://img.shields.io/badge/License-GPL%20v3-blue.svg
:target: https://www.gnu.org/licenses/gpl-3.0.html

.. |RTD doc| image:: https://img.shields.io/badge/documentation-RTD-71B360.svg?style=flat&maxAge=3600
:target: https://beamspy.readthedocs.io/en/latest/

.. |codecov| image:: https://codecov.io/gh/computational-metabolomics/beamspy/branch/master/graph/badge.svg
:target: https://codecov.io/gh/computational-metabolomics/beamspy

.. |mybinder| image:: https://mybinder.org/badge_logo.svg
:target: https://mybinder.org/v2/gh/computational-metabolomics/beamspy/master?filepath=notebooks

.. _pip: https://pip.pypa.io/
.. _Conda: https://conda.io/en/latest/
4 changes: 2 additions & 2 deletions appveyor.yml
Expand Up @@ -6,7 +6,7 @@ build_script:
- '%PYTHON%\python.exe -m pip install .'

before_test:
- '%PYTHON%\python.exe -m pip install coverage green'
- '%PYTHON%\python.exe -m pip install pytest'

test_script:
- '%PYTHON%\python.exe -m green -vvv --run-coverage'
- '%PYTHON%\python.exe -m pytest'
2 changes: 1 addition & 1 deletion beamspy/__init__.py
@@ -1,4 +1,4 @@
__author__ = 'r.j.weber@bham.ac.uk'
__credits__ = 'r.j.weber@bham.ac.uk'
__version__ = '1.0.0'
__version__ = '1.1.0'
__license__ = 'GPLv3'

0 comments on commit d87c1d5

Please sign in to comment.