Skip to content

Major changes in the documentation and schemas created #99

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

Open
wants to merge 68 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
a678e71
Minor changes in the command naming
ypriverol Jun 2, 2025
bf4e7e4
Merge branch 'main' of https://github.com/bigbio/quantms.io into dev
ypriverol Jun 2, 2025
38259c7
remove test logging.
ypriverol Jun 2, 2025
ed945bb
remove logging example
ypriverol Jun 2, 2025
27a4c18
remove logging example
ypriverol Jun 2, 2025
f816396
remove logging example
ypriverol Jun 2, 2025
e9b7fdc
remove logging example
ypriverol Jun 2, 2025
ebfb804
remove logging example
ypriverol Jun 2, 2025
a325e34
fix small error with regex
ypriverol Jun 2, 2025
dd5f83b
logger fixed
ypriverol Jun 2, 2025
a7ba3a1
minor changes in logger
ypriverol Jun 2, 2025
e799da3
minor changes
ypriverol Jun 2, 2025
18f47bd
improving logger
ypriverol Jun 2, 2025
3a13d59
minor changes, continue logging
ypriverol Jun 2, 2025
e55eb9b
minor changes
ypriverol Jun 2, 2025
ad4b891
update from main
ypriverol Jun 2, 2025
d66489c
change name parameters.
ypriverol Jun 3, 2025
3d5de99
minor fix
ypriverol Jun 3, 2025
4cbdbbe
major changes in the folder structure on quantms
ypriverol Jun 3, 2025
b3e3d40
black applied to all files.
ypriverol Jun 3, 2025
82eff25
minor changes and fixes
ypriverol Jun 3, 2025
491ed3a
minor changes to execute quantms
ypriverol Jun 3, 2025
08c61ae
minor changes
ypriverol Jun 3, 2025
5181fa4
minor changes
ypriverol Jun 3, 2025
9d15bc7
minor changes
ypriverol Jun 3, 2025
4bd42ce
all commands changed
ypriverol Jun 3, 2025
d11b9a0
black applied
ypriverol Jun 3, 2025
e747948
ibaq change
ypriverol Jun 3, 2025
4f29c50
minor changes in commands
ypriverol Jun 3, 2025
d4c4e1c
minor changes
ypriverol Jun 3, 2025
b3fd4f8
minor changes
ypriverol Jun 3, 2025
1e283f4
minor changes.
ypriverol Jun 3, 2025
bc68ee2
Add quantms project conversion command and update type hints
ypriverol Jun 3, 2025
c863b94
Refactor quantms workflow to use Click commands for feature and PSM c…
ypriverol Jun 3, 2025
77f400c
minor changes
ypriverol Jun 3, 2025
32be8d0
minor changes
ypriverol Jun 3, 2025
1cb8f63
minor changes
ypriverol Jun 3, 2025
547585e
minor changes
ypriverol Jun 3, 2025
ccd043e
minor changes
ypriverol Jun 3, 2025
fde8f71
minor changes
ypriverol Jun 3, 2025
268ce1e
minor changes
ypriverol Jun 3, 2025
7fc4eec
minor changes
ypriverol Jun 3, 2025
caf6612
minor changes
ypriverol Jun 3, 2025
3f88c7c
minor changes
ypriverol Jun 3, 2025
5f84a68
minor changes in convert
ypriverol Jun 3, 2025
98acb29
ibad added to pipeline
ypriverol Jun 3, 2025
288f732
minor change
ypriverol Jun 3, 2025
7a46244
minor changes
ypriverol Jun 4, 2025
f33cc59
minor changes
ypriverol Jun 4, 2025
434c272
Minor changes in the schema
ypriverol Jun 24, 2025
1676b11
black applied
ypriverol Jun 24, 2025
c130450
review commands standarization
ypriverol Jun 24, 2025
45c6323
Fix protein groups to convert for DIANN output.
ypriverol Jun 24, 2025
57ea767
black applied
ypriverol Jun 25, 2025
08fbce1
major changes for protein groups
ypriverol Jun 30, 2025
3afefff
black and isort.
ypriverol Jun 30, 2025
a001994
blakc updated
ypriverol Jun 30, 2025
0ed8d8a
major change in the gitignore.
ypriverol Jun 30, 2025
2fa2942
minor changes
ypriverol Jun 30, 2025
583005d
add venn to the plotting.
ypriverol Jun 30, 2025
be5e432
changes clenaning code.
ypriverol Jun 30, 2025
8ce4f5e
minor changes
ypriverol Jun 30, 2025
a88aa3d
black applied.
ypriverol Jun 30, 2025
de66d9a
cleaning code
ypriverol Jun 30, 2025
e29cd81
minor changes
ypriverol Jun 30, 2025
0ff3ab3
making code less complex
ypriverol Jun 30, 2025
e83a39c
black and isort applied.
ypriverol Jun 30, 2025
c2d9442
black applied
ypriverol Jun 30, 2025
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
67 changes: 67 additions & 0 deletions .github/workflows/integration-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: Integration Tests

on:
release:
types: [published]
workflow_dispatch:
inputs:
test_type:
description: 'Type of integration test to run'
required: true
default: 'all'
type: choice
options:
- all
- full-conversion-suite
- lfq-only
- tmt-only

jobs:
integration-tests:
runs-on: ubuntu-latest
timeout-minutes: 60 # 1 hour timeout for the entire job

steps:
- uses: actions/checkout@v4

- name: Set up Python 3.10
uses: actions/setup-python@v4
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Update GitHub Actions to latest version.

The actions/setup-python@v4 action is outdated and should be updated to v5.

-      uses: actions/setup-python@v4
+      uses: actions/setup-python@v5
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
uses: actions/setup-python@v4
uses: actions/setup-python@v5
🧰 Tools
🪛 actionlint (1.7.7)

28-28: the runner of "actions/setup-python@v4" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)

🤖 Prompt for AI Agents
In .github/workflows/integration-tests.yml at line 28, the GitHub Action uses an
outdated version of actions/setup-python (v4). Update the version tag from v4 to
v5 to use the latest version of the action.

with:
python-version: "3.10"

- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install pytest pytest-timeout
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
pip install poetry
# Install package in development mode
poetry install

- name: Run Full Conversion Suite Tests
if: ${{ github.event.inputs.test_type == 'all' || github.event.inputs.test_type == 'full-conversion-suite' || github.event_name == 'release' }}
run: |
poetry run pytest -vv tests/test_full_conversion_suite.py --timeout=900
env:
PYTHONIOENCODING: utf-8

- name: Run LFQ Tests Only
if: ${{ github.event.inputs.test_type == 'lfq-only' }}
run: |
poetry run pytest -vv tests/test_full_conversion_suite.py -k "lfq" --timeout=900
env:
PYTHONIOENCODING: utf-8

- name: Run TMT Tests Only
if: ${{ github.event.inputs.test_type == 'tmt-only' }}
run: |
poetry run pytest -vv tests/test_full_conversion_suite.py -k "tmt" --timeout=900
env:
PYTHONIOENCODING: utf-8

- name: Run All Integration Tests
if: ${{ github.event.inputs.test_type == 'all' || github.event_name == 'release' }}
run: |
poetry run pytest -vv -m "integration" --timeout=900
env:
PYTHONIOENCODING: utf-8
74 changes: 64 additions & 10 deletions .github/workflows/python-app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,11 @@ on:
branches: [ "main", "dev" ]
pull_request:
branches: [ "main" ]
schedule:
# Run full test suite daily at 2 AM UTC
- cron: '0 2 * * *'
workflow_dispatch:
# Allow manual triggering

permissions:
contents: read
Expand All @@ -17,36 +22,85 @@ jobs:
PythonBlack:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4

- name: Check code lints with Black
uses: psf/black@stable
with:
options: ". --check"

build:

unit-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v3
uses: actions/setup-python@v4
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Update GitHub Actions to latest versions.

The static analysis tool correctly identifies that actions/setup-python@v4 is outdated and should be updated to the latest version.

-      uses: actions/setup-python@v4
+      uses: actions/setup-python@v5

Apply this change to all three occurrences (lines 37, 66, and 90).

Also applies to: 66-66, 90-90

🧰 Tools
🪛 actionlint (1.7.7)

37-37: the runner of "actions/setup-python@v4" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)

🤖 Prompt for AI Agents
In .github/workflows/python-app.yml at lines 37, 66, and 90, the GitHub Action
'actions/setup-python@v4' is outdated. Update all three occurrences to the
latest available version of 'actions/setup-python' to ensure the workflow uses
the most current features and fixes.

with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install flake8 pytest
python -m pip install flake8 pytest pytest-timeout
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
pip install poetry
poetry build
pip install dist/*.whl
# Install package in development mode
poetry install
- 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 130 chars wide
flake8 . --count --exit-zero --max-complexity=30 --max-line-length=130 --statistics --ignore F401,W503,W504
- name: Test with pytest
- name: Test with pytest (Unit Tests Only)
run: |
# Run all tests except integration tests
poetry run pytest -vv -m "not integration"

integration-tests:
runs-on: ubuntu-latest
needs: unit-tests # Only run if unit tests pass
if: github.event_name == 'push' || (github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'run-integration-tests'))
steps:
- uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v4
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install flake8 pytest pytest-timeout
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
pip install poetry
# Install package in development mode
poetry install
- name: Test with pytest (Integration Tests)
run: |
# Run only integration tests with longer timeout
poetry run pytest -vv -m "integration" --timeout=900
env:
PYTHONIOENCODING: utf-8

full-test-suite:
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main' || github.event_name == 'schedule'
steps:
- uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v4
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install flake8 pytest pytest-timeout
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
pip install poetry
# Install package in development mode
poetry install
- name: Test with pytest (All Tests)
run: |
poetry run pytest -vv
# Run all tests including integration tests
poetry run pytest -vv --timeout=900
env:
PYTHONIOENCODING: utf-8
47 changes: 38 additions & 9 deletions .github/workflows/python-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,34 +10,63 @@ on:
branches: [ "dev" ]

jobs:
build:

unit-tests:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.10", "3.11"]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
uses: actions/setup-python@v4
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Update GitHub Actions to latest version.

The actions/setup-python@v4 action is outdated and should be updated to v5 for better compatibility and security.

-      uses: actions/setup-python@v4
+      uses: actions/setup-python@v5

Apply this change to both occurrences (lines 23 and 56).

Also applies to: 56-56

🧰 Tools
🪛 actionlint (1.7.7)

23-23: the runner of "actions/setup-python@v4" action is too old to run on GitHub Actions. update the action's version to fix this issue

(action)

🤖 Prompt for AI Agents
In .github/workflows/python-package.yml at lines 23 and 56, the GitHub Action
'actions/setup-python' is using version 'v4', which is outdated. Update both
occurrences to use 'actions/setup-python@v5' to ensure better compatibility and
security.

with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install flake8 pytest
python -m pip install flake8 pytest pytest-timeout
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
pip install poetry
poetry build
pip install dist/*.whl
# Install package in development mode
poetry install
- 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: Test with pytest
- name: Test with pytest (Unit Tests Only)
run: |
# Run all tests except integration tests
poetry run pytest -vv -m "not integration"

integration-tests:
runs-on: ubuntu-latest
needs: unit-tests # Only run if unit tests pass
strategy:
fail-fast: false
matrix:
python-version: ["3.10", "3.11"]

steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install flake8 pytest pytest-timeout
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
pip install poetry
# Install package in development mode
poetry install
- name: Test with pytest (Integration Tests)
run: |
poetry run pytest -vv
# Run only integration tests with longer timeout
poetry run pytest -vv -m "integration" --timeout=900
env:
PYTHONIOENCODING: utf-8
64 changes: 63 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,66 @@ build
data
docs/.vscode
__pycache__
.vscode
.vscode

# DuckDB database files
*duckdb*.db
*.db
*.db.wal
*.db-shm

# Temporary files
*.tmp
*.temp
temp/
tmp/
.tmp/
.temp/

# Temporary mzTab files (created during processing)
mztab_temp*.mzTab
mztab_temp*.mzTab.gz
mztab_temp*.mzTab.bz2

# Test output and temporary data
test_output*/
output*/
results*/
*.parquet

# Log files
*.log
logs/

# OS generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

# Python cache and compiled files
*.pyc
*.pyo
*.pyd
.Python
*.so
__pycache__/
*.egg-info/
.pytest_cache/
.coverage
htmlcov/

# Jupyter Notebook checkpoints
.ipynb_checkpoints/

# Environment files
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/
Loading