Skip to content

Commit

Permalink
Merge pull request #201 from compomics/v4.0.0
Browse files Browse the repository at this point in the history
v4.0.0
  • Loading branch information
RalfG authored Jul 17, 2024
2 parents f9c3f71 + 92df74d commit 9202563
Show file tree
Hide file tree
Showing 110 changed files with 7,769 additions and 136,338 deletions.
2 changes: 1 addition & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
@@ -1 +1 @@
ms2pip/models/**/*.c filter=lfs diff=lfs merge=lfs -text
ms2pip/_models_c/**/*.c filter=lfs diff=lfs merge=lfs -text
67 changes: 28 additions & 39 deletions .github/workflows/build_and_publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,61 +9,54 @@ jobs:
name: Build source distribution
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
lfs: 'true'
lfs: "true"

- name: Set up Python
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: '3.10'
python-version: "3.11"

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install setuptools oldest-supported-numpy cython flake8
- name: Check for syntax errors
run: |
flake8 ./ms2pip ./fasta2speclib --count --select=E9,F63,F7,F82 --show-source --statistics
pip install build
- name: Build sdist
run: python setup.py sdist
- uses: actions/upload-artifact@v2
run: python -m build --sdist --outdir dist

- uses: actions/upload-artifact@v4
with:
name: dist
path: dist/*.tar.gz
name: dist-source
path: dist

build-wheels:
name: Build wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
os: [ubuntu-latest, windows-latest, macos-13, macos-14] # macos-13 for intel, macos-14 for apple silicon
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
lfs: 'true'
- uses: actions/setup-python@v2
name: Install Python
lfs: "true"

- uses: actions/setup-python@v5
name: Set up Python
with:
python-version: '3.10'
- name: Check for syntax errors
run: |
python -m pip install flake8
flake8 ./ms2pip ./fasta2speclib --count --select=E9,F63,F7,F82 --show-source --statistics
python-version: "3.11"

- name: Install cibuildwheel
run: python -m pip install cibuildwheel==2.3.1
run: python -m pip install cibuildwheel>=2

- name: Build wheels
run: python -m cibuildwheel --output-dir dist
env:
# No XGBoost wheels for 32bit Windows
CIBW_BUILD: "cp3*-manylinux_x86_64 cp3*-win_amd64 cp3*-macosx_x86_64"
CIBW_SKIP: "cp36-* cp39-macosx_x86_64" # EOL & build issue #216
CIBW_BEFORE_ALL_MACOS: "brew install libomp"
CIBW_MANYLINUX_X86_64_IMAGE: "manylinux2014"
CIBW_TEST_REQUIRES: "pytest"
CIBW_TEST_COMMAND: "pytest {project}/tests"
- uses: actions/upload-artifact@v2

- uses: actions/upload-artifact@v4
with:
name: dist
path: dist/ms2pip-*.whl
name: dist-${{ matrix.os }}
path: dist

publish-to-pypi:
needs: [build-sdist, build-wheels]
Expand All @@ -74,10 +67,6 @@ jobs:
permissions:
id-token: write
steps:
- uses: actions/download-artifact@v2
with:
name: dist
path: dist
- uses: actions/download-artifact@v4
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@release/v1

60 changes: 30 additions & 30 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,42 +5,42 @@ on:
branches:
- releases
pull_request:
workflow_dispatch:

jobs:
build:

runs-on: ubuntu-latest
strategy:
max-parallel: 4
matrix:
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']
python-version: ["3.8", "3.9", "3.10", "3.11"]

steps:
- uses: actions/checkout@v2
with:
lfs: 'true'
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install wheel flake8 pytest oldest-supported-numpy cython
- name: Lint with flake8
run: |
# stop the 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: Build and install ms2pip
run: |
python setup.py bdist_wheel
pip install dist/ms2pip*.whl
- name: Test with pytest
run: |
pytest
- uses: actions/upload-artifact@v2
with:
name: wheels
path: dist/ms2pip*.whl
- uses: actions/checkout@v4
with:
lfs: "true"

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install ruff
- name: Check with Ruff
run: ruff check --output-format=github ./ms2pip

- name: Build and install ms2pip
run: |
pip install .[dev]
- name: Test with pytest
run: |
pytest
- name: Test installation
run: |
ms2pip --help
34 changes: 34 additions & 0 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
version: 2

build:
os: "ubuntu-20.04"
tools:
python: "3.8"
jobs:
post_checkout:
# Download and uncompress the binary
# https://git-lfs.github.com/
- wget https://github.com/git-lfs/git-lfs/releases/download/v3.1.4/git-lfs-linux-amd64-v3.1.4.tar.gz
- tar xvfz git-lfs-linux-amd64-v3.1.4.tar.gz
# Modify LFS config paths to point where git-lfs binary was downloaded
- git config filter.lfs.process "`pwd`/git-lfs filter-process"
- git config filter.lfs.smudge "`pwd`/git-lfs smudge -- %f"
- git config filter.lfs.clean "`pwd`/git-lfs clean -- %f"
# Make LFS available in current repository
- ./git-lfs install
# Download content from remote
- ./git-lfs fetch
# Make local files to have the real content on them
- ./git-lfs checkout
post_install:
- rm -r ms2pip

python:
install:
- method: pip
path: .
extra_requirements:
- docs

sphinx:
builder: dirhtml
65 changes: 39 additions & 26 deletions CITATION.cff
Original file line number Diff line number Diff line change
@@ -1,40 +1,53 @@
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Gabriels"
given-names: "Ralf"
orcid: "https://orcid.org/0000-0002-1679-1711"
- family-names: "Velghe"
given-names: "Kevin"
orcid: "https://orcid.org/0000-0002-9968-6043"
- family-names: "Martens"
given-names: "Lennart"
orcid: "https://orcid.org/0000-0003-4277-658X"
- family-names: "Degroeve"
given-names: "Sven"
orcid: "https://orcid.org/0000-0001-8349-3370"
title: "MS²PIP"
url: "https://github.com/compomics/ms2pip_c"
license: "Apache-2.0"
preferred-citation:
type: article
authors:
- family-names: "Gabriels"
given-names: "Ralf"
orcid: "https://orcid.org/0000-0002-1679-1711"
- family-names: "Velghe"
given-names: "Kevin"
orcid: "https://orcid.org/0000-0002-9968-6043"
- family-names: "Martens"
given-names: "Lennart"
orcid: "https://orcid.org/0000-0003-4277-658X"
- family-names: "Degroeve"
given-names: "Sven"
orcid: "https://orcid.org/0000-0001-8349-3370"
doi: "10.1093/nar/gkz299"
title: "MS²PIP"
url: "https://github.com/compomics/ms2pip"
license: "Apache-2.0"
preferred-citation:
type: article
doi: "10.1093/nar/gkad335"
journal: "Nucleic Acids Research"
month: 9
start: W295
end: W299
title: "Updated MS²PIP web server delivers fast and accurate MS2 peak intensity prediction for multiple fragmentation methods, instruments and labeling techniques"
issue: 1
volume: 47
year: 2019
title: "Updated MS²PIP web server supports cutting-edge proteomics applications"
year: 2023
abstract: "MS²PIP is a data-driven tool that accurately predicts peak intensities for a given peptide's fragmentation mass spectrum. Since the release of the MS²PIP web server in 2015, we have brought significant updates to both the tool and the web server. In addition to the original models for CID and HCD fragmentation, we have added specialized models for the TripleTOF 5600+ mass spectrometer, for TMT-labeled peptides, for iTRAQ-labeled peptides, and for iTRAQ-labeled phosphopeptides. Because the fragmentation pattern is heavily altered in each of these cases, these additional models greatly improve the prediction accuracy for their corresponding data types. We have also substantially reduced the computational resources required to run MS²PIP, and have completely rebuilt the web server, which now allows predictions of up to 100 000 peptide sequences in a single request. The MS²PIP web server is freely available at https://iomics.ugent.be/ms2pip/."
authors:
- family-names: "Declercq"
given-names: "Arthur"
orcid: "https://orcid.org/0000-0002-9376-1399"
- family-names: "Bouwmeester"
given-names: "Robbin"
orcid: "https://orcid.org/0000-0001-6807-7029"
- family-names: "Cristina"
given-names: "Chiva"
orcid: "https://orcid.org/0000-0001-8150-6203"
- family-names: "Sabidó"
given-names: "Eduard"
orcid: "https://orcid.org/0000-0001-6506-7714"
- family-names: "Hirschler"
given-names: "Aurélie"
orcid: "https://orcid.org/0000-0001-5066-6263"
- family-names: "Carapito"
given-names: "Christine"
orcid: "https://orcid.org/0000-0002-0079-319X"
- family-names: "Martens"
given-names: "Lennart"
orcid: "https://orcid.org/0000-0003-4277-658X"
- family-names: "Degroeve"
given-names: "Sven"
orcid: "https://orcid.org/0000-0001-8349-3370"
- family-names: "Gabriels"
given-names: "Ralf"
orcid: "https://orcid.org/0000-0002-1679-1711"
6 changes: 3 additions & 3 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
include ms2pip/cython_modules/*.c
include ms2pip/models/*/*.c
include ms2pip/models/*.h
include ms2pip/_cython_modules/*.c
include ms2pip/_models_c/*/*.c
include ms2pip/_models_c/*.h
Loading

0 comments on commit 9202563

Please sign in to comment.