Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for version 1.9.2 #33

Merged
merged 86 commits into from
Nov 20, 2024
Merged
Show file tree
Hide file tree
Changes from 77 commits
Commits
Show all changes
86 commits
Select commit Hold shift + click to select a range
6428f22
diann version updated to support 1.9.2
ypriverol Nov 18, 2024
3ea85c2
increase version
ypriverol Nov 18, 2024
2ee72a0
increase version
ypriverol Nov 19, 2024
67c2fad
remove dependency setuptools
ypriverol Nov 19, 2024
fb8b3f6
remove dependency setuptools
ypriverol Nov 19, 2024
3e10278
remove dependency setuptools
ypriverol Nov 19, 2024
6e5826e
remove dependency setuptools
ypriverol Nov 19, 2024
551c864
remove dependency setuptools
ypriverol Nov 19, 2024
6f9b887
remove dependency setuptools
ypriverol Nov 19, 2024
cf68cd7
remove dependency setuptools
ypriverol Nov 19, 2024
b72d2d8
remove dependency setuptools
ypriverol Nov 19, 2024
9f14336
remove dependency setuptools
ypriverol Nov 19, 2024
a463d36
3.8 -> 3.9
ypriverol Nov 19, 2024
79c8c9c
3.8 -> 3.9
ypriverol Nov 19, 2024
7ebb3b4
3.8 -> 3.9
ypriverol Nov 19, 2024
c94b473
3.8 -> 3.9
ypriverol Nov 19, 2024
a48abbe
3.8 -> 3.9
ypriverol Nov 19, 2024
f37e8b8
removing duplicated dependencies
ypriverol Nov 19, 2024
ded7ecd
removing duplicated dependencies
ypriverol Nov 19, 2024
5eabfa7
removing duplicated dependencies
ypriverol Nov 19, 2024
57b1391
removing duplicated dependencies
ypriverol Nov 19, 2024
a5346ea
removing duplicated dependencies
ypriverol Nov 19, 2024
59c818f
removing duplicated dependencies
ypriverol Nov 19, 2024
fc72fc4
removing duplicated dependencies
ypriverol Nov 19, 2024
d7bf246
removing duplicated dependencies
ypriverol Nov 19, 2024
c2ecae4
removing duplicated dependencies
ypriverol Nov 19, 2024
8ea159c
removing duplicated dependencies
ypriverol Nov 19, 2024
79c02db
removing duplicated dependencies
ypriverol Nov 19, 2024
43de6ad
removing duplicated dependencies
ypriverol Nov 19, 2024
e2f7641
removing duplicated dependencies
ypriverol Nov 19, 2024
a41cb71
clean dependencies
ypriverol Nov 19, 2024
8a415c0
clean dependencies
ypriverol Nov 19, 2024
fb08b94
clean dependencies
ypriverol Nov 19, 2024
8fda4e0
clean dependencies
ypriverol Nov 19, 2024
eea3231
clean dependencies
ypriverol Nov 19, 2024
d157e95
Update conda-build.yml
jpfeuffer Nov 19, 2024
80c8403
Create conda_build_config.yml
jpfeuffer Nov 19, 2024
604fdc7
Update meta.yaml
jpfeuffer Nov 19, 2024
179e9e7
clean dependencies
ypriverol Nov 19, 2024
5cf14b9
Merge remote-tracking branch 'origin/dev' into dev
ypriverol Nov 19, 2024
7dcc60b
clean dependencies
ypriverol Nov 20, 2024
4da5378
clean dependencies
ypriverol Nov 20, 2024
d2bc375
Cleanup conda-build.yml and debug
jpfeuffer Nov 20, 2024
d0cd1d1
Try mamba build
jpfeuffer Nov 20, 2024
4d5a8c8
Use Conda build
jpfeuffer Nov 20, 2024
a39c871
clean dependencies
ypriverol Nov 20, 2024
f383015
clean dependencies
ypriverol Nov 20, 2024
2718597
clean dependencies
ypriverol Nov 20, 2024
bb51364
clean dependencies
ypriverol Nov 20, 2024
8e4c8a8
clean dependencies
ypriverol Nov 20, 2024
425bb97
clean dependencies
ypriverol Nov 20, 2024
7465e23
clean dependencies
ypriverol Nov 20, 2024
a87cf3c
clean dependencies
ypriverol Nov 20, 2024
7013409
clean dependencies
ypriverol Nov 20, 2024
0baba57
clean dependencies
ypriverol Nov 20, 2024
5e98116
clean dependencies
ypriverol Nov 20, 2024
134bf4e
clean dependencies
ypriverol Nov 20, 2024
5230ad4
clean dependencies
ypriverol Nov 20, 2024
86936ad
adding pydantic
ypriverol Nov 20, 2024
33bda94
adding psm-utils
ypriverol Nov 20, 2024
48222b1
adding psm-utils
ypriverol Nov 20, 2024
a13bdbf
adding set pydantic version
ypriverol Nov 20, 2024
95a38ae
remove pydantic
ypriverol Nov 20, 2024
a9f44e3
psm_utils 1.0.0
ypriverol Nov 20, 2024
53afe3b
psm_utils 1.0.0
ypriverol Nov 20, 2024
0f563af
psm_utils 1.0.0
ypriverol Nov 20, 2024
95055c3
psm_utils 1.0.0
ypriverol Nov 20, 2024
965185c
psm_utils 1.0.0
ypriverol Nov 20, 2024
b958faf
psm_utils 1.0.0
ypriverol Nov 20, 2024
164b254
Rename conda_build_config.yml to conda_build_config.yaml
jpfeuffer Nov 20, 2024
adc2d56
Update conda-build.yml
jpfeuffer Nov 20, 2024
bae0030
cleanup. again
jpfeuffer Nov 20, 2024
8847ff7
added version ms2pip=4.0.0.dev8
ypriverol Nov 20, 2024
817c3dd
Merge remote-tracking branch 'origin/dev' into dev
ypriverol Nov 20, 2024
a85cf67
added version ms2pip=4.0.0.dev8
ypriverol Nov 20, 2024
24eb9aa
added version ms2pip=4.0.0.dev8
ypriverol Nov 20, 2024
00a9fc9
adding deeplc version
ypriverol Nov 20, 2024
51ca29e
adding deeplc version
ypriverol Nov 20, 2024
cc9ac96
remove some versions
ypriverol Nov 20, 2024
99741fe
remove some versions
ypriverol Nov 20, 2024
1aae82d
remove some versions
ypriverol Nov 20, 2024
69267b8
remove some versions
ypriverol Nov 20, 2024
88b41a3
remove some versions
ypriverol Nov 20, 2024
84dc3b5
psm-utils==0.8.3
ypriverol Nov 20, 2024
b51abe9
major changes
ypriverol Nov 20, 2024
4729bad
Merge remote-tracking branch 'origin/dev' into dev
ypriverol Nov 20, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 21 additions & 31 deletions .github/workflows/conda-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,54 +5,44 @@ on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest

defaults:
run:
shell: bash -el {0}
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
steps:
- name: Checkout repository
uses: actions/checkout@v2
uses: actions/checkout@v4 # Update to latest version
jpfeuffer marked this conversation as resolved.
Show resolved Hide resolved

- name: Set up Miniconda
uses: conda-incubator/setup-miniconda@v2
uses: conda-incubator/setup-miniconda@v3
with:
auto-update-conda: true
python-version: 3.8
channels: conda-forge,defaults,bioconda

- name: Create conda environment
run: conda env create -f environment.yml

- name: Install mamba, boa and conda-build
mamba-version: "*"
channels: conda-forge,bioconda
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
cache-downloads: true
auto-update-conda: false
activate-environment: test
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
python-version: 3.11

- name: Setup conda-build and anaconda-client
run: |
source $CONDA/etc/profile.d/conda.sh
conda activate quantmsutils
conda install conda-forge::mamba
conda install conda-forge::boa
mamba install conda-build anaconda-client
shell: bash -l {0}

- name: Activate conda environment and build package
mamba install -q conda-build anaconda-client conda-verify

- name: Build package
run: |
source $CONDA/etc/profile.d/conda.sh
conda activate quantmsutils
conda mambabuild recipe
shell: bash -l {0}
conda build purge-all
conda config --set solver libmamba
conda config --set channel_priority strict
conda build recipe --suppress-variables --override-channels --channel conda-forge --channel bioconda --no-anaconda-upload
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
ypriverol marked this conversation as resolved.
Show resolved Hide resolved

- name: Install the built package
run: |
source $CONDA/etc/profile.d/conda.sh
conda activate quantmsutils
mamba install --use-local quantms-utils
shell: bash -l {0}

- name: Output package info
run: |
source $CONDA/etc/profile.d/conda.sh
conda activate quantmsutils
conda list
shell: bash -l {0}

- name: Test the installed package
run: |
conda activate quantmsutils
# this will fail. you need to create a quantmsutil env first
quantmsutilsc --help
quantmsutilsc --version
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
shell: bash -l {0}
8 changes: 5 additions & 3 deletions .github/workflows/python-app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,11 @@ jobs:
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install flake8 pytest
python -m pip install flake8 pytest
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
python setup.py install
pip install poetry
poetry build
pip install dist/*.whl
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
- name: Lint with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
Expand All @@ -37,7 +39,7 @@ jobs:
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Test with pytest
run: |
pytest
poetry run pytest
- name: Download test data
run: |
wget https://ftp.pride.ebi.ac.uk/pub/databases/pride/resources/proteomes/quantms-ci-github/quantms-utils/TMT_Erwinia_1uLSike_Top10HCD_isol2_45stepped_60min_01.mzML
Expand Down
17 changes: 4 additions & 13 deletions environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,24 +3,15 @@ name: quantmsutils
channels:
- bioconda
- conda-forge
- defaults
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
dependencies:
- click
- sdrf-pipelines>=0.0.31
- pyopenms
- ms2rescore=3.0.3
- deeplc=2.2.38
- ms2pip=4.0.0.dev8
- psm-utils=0.8.2
- deeplcretrainer
- pydantic=1.10.14
- pandas
- protobuf>=3.9.2,<4 # Ensure compatibility with tensorboard
- numpy
- pyarrow
- pygam
- scipy==1.13.1
- scikit-learn
- setuptools
- pip
- pip:
- tensorboard
- psm-utils=0.8.3
- ms2pip>=4.0.0-dev8
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
- deeplc>=2.2
77 changes: 49 additions & 28 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,41 +1,62 @@
[tool.poetry]
name = "quantms-utils"
version = "0.0.10"
description = "Python scripts and helpers for the quantMS workflow"
authors = ["Yasset Perez-Riverol", "Dai Chengxin"]
readme = "README.md"
license = "MIT"
version = "0.0.13"
authors = [
"Yasset Perez-Riverol <ypriverol@gmail.com>",
"Dai Chengxin <chengxin2024@126.com>",
"Julianus Pfeuffer <jule.pf@gmail.com>"
]
keywords = [
"quantms",
"proteomics",
"mass-spectrometry",
"data-analysis",
"big data"
]
classifiers = [
"Intended Audience :: Science/Research",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3 :: Only",
"Topic :: Scientific/Engineering :: Bio-Informatics",
"Development Status :: 5 - Production/Stable"
]
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
packages = [
{ include = "quantmsutils" }
]

[build-system]
requires = ["setuptools"]
build-backend = "setuptools.build_meta"

[tool.poetry.dependencies]
click = ">=7.0"
pydantic = ">=1.10,<2"
python = "^3.7"
sdrf-pipelines = ">=0.0.29"
pyopenms = ">=2.6.0"
pandas = ">=1.0.0"
ms2rescore = "==3.0.3"
deeplc = "==2.2.38"
ms2pip = "==4.0.0.dev8"
psm-utils = "==0.8.2"
protobuf = ">=3.9.2,<4"
scipy = "==1.13.1"
python = ">=3.8,<3.12"
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
click = "*"
sdrf-pipelines = ">=0.0.31"
pyopenms = "*"
ms2rescore = "3.0.3"
pandas = "*"
numpy = "*"
pyarrow = "*"
psm-utils = "0.8.3"
ms2pip = ">=4.0.0-dev8"
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
deeplc = ">=2.2"

[tool.poetry.dev-dependencies]
pytest = "*"
[tool.poetry.urls]
GitHub = "https://github.com/bigbio/quantms-utils"
PyPi = "https://pypi.org/project/quantms-utils/"
Quantms = "https://quantms.org"
LICENSE = "https://github.com/bigbio/quantms-utils/blob/main/LICENSE"

[tool.pytest.ini_options]
minversion = "6.0"
addopts = "-ra -q"
testpaths = ["tests"]
[tool.poetry.scripts]
quantmsutilsc = "quantmsutils.quantmsutilsc:main"

[tool.isort]
profile = "black"

[tool.black]
line-length = 88
target-version = ['py37', 'py38', 'py39', 'py310', 'py311']
line-length = 99
target-version = ["py39"]
ypriverol marked this conversation as resolved.
Show resolved Hide resolved

[tool.poetry.scripts]
quantmsutilsc = "quantmsutils.quantmsutilsc:main"
[build-system]
requires = ["poetry-core>=1.2.0"]
build-backend = "poetry.core.masonry.api"
2 changes: 1 addition & 1 deletion quantmsutils/__init__.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = "0.0.12"
__version__ = "0.0.13"
8 changes: 4 additions & 4 deletions quantmsutils/diann/diann2mztab.py
Original file line number Diff line number Diff line change
Expand Up @@ -362,7 +362,7 @@ def diann_version(self) -> str:
return diann_version_id

def validate_diann_version(self) -> None:
supported_diann_versions = ["1.8.1", "1.9.beta.1"]
supported_diann_versions = ["1.8.1", "1.9.beta.1", "1.9.2"]
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
if self.diann_version not in supported_diann_versions:
raise ValueError(f"Unsupported DIANN version {self.diann_version}")

Expand Down Expand Up @@ -411,7 +411,7 @@ def convert_to_mztab(
)

mtd, database = mztab_mtd(
index_ref, dia_params, str(self.fasta), charge, missed_cleavages
index_ref, dia_params, str(self.fasta), charge, missed_cleavages, self.diann_version
)
pg = pd.read_csv(
self.pg_matrix,
Expand Down Expand Up @@ -545,7 +545,7 @@ def mtd_mod_info(fix_mod, var_mod):
return fix_ptm, var_ptm, fix_flag, var_flag


def mztab_mtd(index_ref, dia_params, fasta, charge, missed_cleavages):
def mztab_mtd(index_ref, dia_params, fasta, charge, missed_cleavages, diann_version):
"""
Construct MTD sub-table.

Expand Down Expand Up @@ -587,7 +587,7 @@ def mztab_mtd(index_ref, dia_params, fasta, charge, missed_cleavages):
out_mztab_mtd.loc[1, "psm_search_engine_score[1]"] = (
"[MS, MS:MS:1001869, protein-level q-value, ]"
)
out_mztab_mtd.loc[1, "software[1]"] = "[MS, MS:1003253, DIA-NN, Release (v1.8.1)]"
out_mztab_mtd.loc[1, "software[1]"] = "[MS, MS:1003253, DIA-NN, {}]".format(diann_version)
out_mztab_mtd.loc[1, "software[1]-setting[1]"] = fasta
out_mztab_mtd.loc[1, "software[1]-setting[2]"] = "db_version:null"
out_mztab_mtd.loc[1, "software[1]-setting[3]"] = (
Expand Down
2 changes: 2 additions & 0 deletions recipe/conda_build_config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
python:
- 3.11
23 changes: 9 additions & 14 deletions recipe/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# recipe/meta.yaml
package:
name: quantms-utils
version: "0.0.12"
version: "0.0.13"

source:
path: ../
Expand All @@ -12,31 +12,26 @@ build:
noarch: python
run_exports:
- {{ pin_subpackage('quantms-utils', max_pin="x.x") }}
script: "{{ PYTHON }} -m pip install . --no-deps -vvv"
script: "{{ PYTHON }} -m pip install . --no-deps --no-build-isolation --no-cache-dir -vvv"
number: 0

requirements:
host:
- python >=3.8,<4.0
- python
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
- pip
- setuptools
- poetry-core >=1.2.0
run:
- python
- click
- sdrf-pipelines>=0.0.31
- pyopenms
- ms2rescore=3.0.3
- deeplc=2.2.38
- ms2pip=4.0.0.dev8
- psm-utils=0.8.2
- deeplcretrainer
- pydantic=1.10.14
- pandas
- protobuf>=3.9.2,<4 # Ensure compatibility with tensorboard
- numpy
- pyarrow
ypriverol marked this conversation as resolved.
Show resolved Hide resolved
- pygam
- scipy==1.13.1
- scikit-learn
- psm-utils=0.8.3
- ms2pip>=4.0.0-dev8
- deeplc>=2.2

test:
imports:
Expand All @@ -55,4 +50,4 @@ about:

extra:
recipe-maintainers:
- ypriverol
- ypriverol
13 changes: 3 additions & 10 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,9 @@ click
sdrf-pipelines>=0.0.31
pyopenms
ms2rescore==3.0.3
deeplc==2.2.38
ms2pip==4.0.0.dev8
psm-utils==0.8.2
deeplcretrainer
pydantic==1.10.14
pandas
protobuf>=3.9.2,<4 # Ensure compatibility with tensorboard
numpy
pyarrow
pygam
scipy==1.13.1
scikit-learn
setuptools
psm-utils==0.8.3
ms2pip>=4.0.0-dev8
deeplc >=2.2
2 changes: 0 additions & 2 deletions setup.cfg

This file was deleted.

Loading
Loading