Skip to content

Improve protein ID normalization and expand DE analysis in Mokume #72

Improve protein ID normalization and expand DE analysis in Mokume

Improve protein ID normalization and expand DE analysis in Mokume #72

Workflow file for this run

name: Python application
on:
push:
branches: [ main, dev ]
pull_request:
branches: [ main, dev ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.10", "3.11"]
steps:
- uses: actions/checkout@v4
- name: Set up Miniconda
uses: conda-incubator/setup-miniconda@v3
with:
auto-update-conda: true
python-version: ${{ matrix.python-version }}
channels: conda-forge,bioconda,openms
activate-environment: mokume
environment-file: environment.yaml
- name: Install package and dev dependencies
shell: bash -l {0}
run: |
pip install pytest pytest-cov flake8
# Install with directlfq extra for complete quantification testing
pip install -e ".[directlfq]"
- name: Lint with flake8
shell: bash -l {0}
run: |
# Stop the build if there are Python syntax errors or undefined names
flake8 mokume --count --select=E9,F63,F7,F82 --show-source --statistics
# Exit-zero treats all errors as warnings
flake8 mokume --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Test with pytest
shell: bash -l {0}
run: |
# -s flag ensures quantification comparison tables are printed in CI logs
pytest tests/ -v -s --tb=short --cov=mokume --cov-report=xml
- name: Test CLI
shell: bash -l {0}
run: |
mokume --help
mokume peptides2protein --help
mokume features2peptides --help
mokume correct-batches --help
- name: Test imports
shell: bash -l {0}
run: |
python -c "import mokume; print(f'mokume version: {mokume.__version__}')"
python -c "from mokume.quantification import Top3Quantification, MaxLFQQuantification"
python -c "from mokume.quantification import DirectLFQQuantification, is_directlfq_available; print(f'DirectLFQ available: {is_directlfq_available()}')"
python -c "from mokume.normalization.peptide import peptide_normalization"