From ef9eaa85cbf7bc131ae7ab6ea9c0ac4361893661 Mon Sep 17 00:00:00 2001 From: Ralf Weber Date: Tue, 15 Sep 2026 10:12:37 +0100 Subject: [PATCH 1/3] Add package and model version metadata --- CHANGELOG.md | 7 +++++++ pyproject.toml | 7 +++++-- src/ms_pred/__init__.py | 2 ++ src/ms_pred/model_registry.py | 8 ++++++++ 4 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 CHANGELOG.md create mode 100644 src/ms_pred/model_registry.py diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 00000000..4a5c07a9 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,7 @@ +# Changelog + +## Unreleased + +- Rename the distribution from `ms-gen` to `ms_pred`. +- Read the package version from `ms_pred.__version__`. +- Add `ms_pred.model_registry` to record model versions separately from the package version. diff --git a/pyproject.toml b/pyproject.toml index 455063ff..80518189 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,8 +3,8 @@ requires = ["setuptools>=61", "wheel", "cython>=3", "numpy>=2"] build-backend = "setuptools.build_meta" [project] -name = "ms-gen" -version = "0.1.0" +name = "ms_pred" +dynamic = ["version"] description = "A package for computational tandem mass spectrometry simulation." authors = [ { name = "Sam Goldman", email = "samlg@mit.edu" }, @@ -132,5 +132,8 @@ url = "https://data.pyg.org/whl/torch-2.6.0+cu118.html" format = "flat" explicit = true +[tool.setuptools.dynamic] +version = { attr = "ms_pred.__version__" } + [tool.setuptools.packages.find] where = ["src"] diff --git a/src/ms_pred/__init__.py b/src/ms_pred/__init__.py index 835e34c2..52b08563 100644 --- a/src/ms_pred/__init__.py +++ b/src/ms_pred/__init__.py @@ -1,3 +1,5 @@ +__version__ = "0.1.0" + # Import all submodules in package # from . import common # from . import iceberg diff --git a/src/ms_pred/model_registry.py b/src/ms_pred/model_registry.py new file mode 100644 index 00000000..33b0a868 --- /dev/null +++ b/src/ms_pred/model_registry.py @@ -0,0 +1,8 @@ +"""Model versions, kept separate from the ms_pred package version.""" + +MODEL_REGISTRY = { + "iceberg": {"version": "2.1", "reference": "doi:10.1101/2025.05.28.656653"}, + "glacier": {"version": None, "reference": "arXiv:2606.29161"}, + "marason": {"version": None, "reference": "arXiv:2502.17874"}, + "scarf": {"version": None, "reference": "arXiv:2303.06470"}, +} From 78620cbbe954f63085dcc2b4845e73e68a86922f Mon Sep 17 00:00:00 2001 From: Ralf Weber Date: Tue, 15 Sep 2026 10:42:12 +0100 Subject: [PATCH 2/3] Add model versions and python -m ms_pred --version --- CHANGELOG.md | 7 ++++--- src/ms_pred/__init__.py | 2 +- src/ms_pred/__main__.py | 20 ++++++++++++++++++++ src/ms_pred/model_registry.py | 15 +++++++++++---- 4 files changed, 36 insertions(+), 8 deletions(-) create mode 100644 src/ms_pred/__main__.py diff --git a/CHANGELOG.md b/CHANGELOG.md index 4a5c07a9..d33f98e6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,8 @@ # Changelog -## Unreleased +## 2.0.0 (unreleased) -- Rename the distribution from `ms-gen` to `ms_pred`. +- Rename the distribution from `ms-gen` back to `ms_pred`. - Read the package version from `ms_pred.__version__`. -- Add `ms_pred.model_registry` to record model versions separately from the package version. +- Add `ms_pred.model_registry` with the current model versions. +- Add `python -m ms_pred --version`. diff --git a/src/ms_pred/__init__.py b/src/ms_pred/__init__.py index 52b08563..051b559f 100644 --- a/src/ms_pred/__init__.py +++ b/src/ms_pred/__init__.py @@ -1,4 +1,4 @@ -__version__ = "0.1.0" +__version__ = "2.0.0" # Import all submodules in package # from . import common diff --git a/src/ms_pred/__main__.py b/src/ms_pred/__main__.py new file mode 100644 index 00000000..f995facc --- /dev/null +++ b/src/ms_pred/__main__.py @@ -0,0 +1,20 @@ +import argparse + +from ms_pred import __version__ +from ms_pred.model_registry import MODEL_REGISTRY + + +def main(): + parser = argparse.ArgumentParser(prog="python -m ms_pred") + parser.add_argument("--version", action="store_true", help="show package and model versions") + args = parser.parse_args() + if not args.version: + parser.print_help() + return + print(f"ms_pred {__version__}") + for name, info in MODEL_REGISTRY.items(): + print(f"{name} {info['version']}") + + +if __name__ == "__main__": + main() diff --git a/src/ms_pred/model_registry.py b/src/ms_pred/model_registry.py index 33b0a868..15eeb29d 100644 --- a/src/ms_pred/model_registry.py +++ b/src/ms_pred/model_registry.py @@ -1,8 +1,15 @@ """Model versions, kept separate from the ms_pred package version.""" MODEL_REGISTRY = { - "iceberg": {"version": "2.1", "reference": "doi:10.1101/2025.05.28.656653"}, - "glacier": {"version": None, "reference": "arXiv:2606.29161"}, - "marason": {"version": None, "reference": "arXiv:2502.17874"}, - "scarf": {"version": None, "reference": "arXiv:2303.06470"}, + "iceberg": { + "version": "2.1", + "reference": "doi:10.1101/2025.05.28.656653", + "previous": { + "2.0": {"branch": "iceberg_2.0", "reference": "doi:10.1101/2025.05.28.656653"}, + "1.0": {"branch": "iceberg_1.0", "reference": "doi:10.1021/acs.analchem.3c04654"}, + }, + }, + "scarf": {"version": "1.0", "reference": "arXiv:2303.06470"}, + "marason": {"version": "1.0", "reference": "arXiv:2502.17874"}, + "glacier": {"version": "1.0", "reference": "arXiv:2606.29161"}, } From b56c62f343c98e9bce66248b119943e595b8b8b4 Mon Sep 17 00:00:00 2001 From: Ralf Weber Date: Tue, 15 Sep 2026 10:48:05 +0100 Subject: [PATCH 3/3] Set version to 1.1.0 --- CHANGELOG.md | 4 +++- src/ms_pred/__init__.py | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d33f98e6..e9fe3191 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,10 @@ # Changelog -## 2.0.0 (unreleased) +## 1.1.0 (unreleased) - Rename the distribution from `ms-gen` back to `ms_pred`. - Read the package version from `ms_pred.__version__`. - Add `ms_pred.model_registry` with the current model versions. - Add `python -m ms_pred --version`. + +Changes between v1.0.0 and this release, such as `ms_pred.dag_pred` becoming `ms_pred.iceberg`, were not recorded. diff --git a/src/ms_pred/__init__.py b/src/ms_pred/__init__.py index 051b559f..24f75b90 100644 --- a/src/ms_pred/__init__.py +++ b/src/ms_pred/__init__.py @@ -1,4 +1,4 @@ -__version__ = "2.0.0" +__version__ = "1.1.0" # Import all submodules in package # from . import common