Skip to content

Read PSI-MOD formal charges from mzLib's PsiModFormalCharges.tsv - #27

Draft
trishorts wants to merge 1 commit into
masterfrom
mzlib-psimod-formal-charges
Draft

trishorts wants to merge 1 commit into
masterfrom
mzlib-psimod-formal-charges

Conversation

@trishorts

Copy link
Copy Markdown
Owner

Project of origin: bridge

Draft. Do not merge before smith-chem-wisc/mzLib#1415 is merged and released. This branch does not build against any released mzLib: it calls ModificationLoader.ReadFormalChargesDictionary, which smith-chem-wisc#1415 adds. Once the release is out, this goes to smith-chem-wisc/MetaMorpheus together with the mzLib version bump.

What changed and why

mzLib#1415 stops shipping Data/PSI-MOD.obo.xml, a 4.4 MB 2014 conversion of PSI-MOD. MetaMorpheus used it only for its formal charges, which now ship as Data/PsiModFormalCharges.tsv (86 charges, derived from PSI-MOD.obo 1.039.0). A MetaMorpheus build against that mzLib without this change fails in two places:

  1. At startup. GlobalVariables.LoadModifications loads Data\PSI-MOD.obo.xml. It now reads the table with ModificationLoader.ReadFormalChargesDictionary. PsiModDeserialized, and the obo alias that existed only for it, had no other reader and are removed.
  2. In the installer build. MetaMorpheusSetup/Product.wxs lists Data\PSI-MOD.obo.xml, so WiX fails with WIX0103: Cannot find the File file ...\Data\PSI-MOD.obo.xml. This is the failure in Revamp meta draw smith-chem-wisc/MetaMorpheus#1415's integration check. The component now ships PsiModFormalCharges.tsv, with a new component GUID because its file changed.

What users see

The charges are the same, plus one more: MOD:01982 (N,N,N-trimethylglycine, 1+), which the 2014 file lacked. Together with smith-chem-wisc#1415's refreshed unimod.xml and ptmlist.txt, some modification masses change. smith-chem-wisc#1415's description lists every change.

🤖 Generated with Claude Code

mzLib#1415 stops shipping Data/PSI-MOD.obo.xml. Its formal charges, the
only part MetaMorpheus used, now ship as Data/PsiModFormalCharges.tsv and
are read with ModificationLoader.ReadFormalChargesDictionary.

- GlobalVariables.LoadModifications reads the table. PsiModDeserialized
  and the obo alias had no other reader and are removed.
- The installer ships PsiModFormalCharges.tsv in place of PSI-MOD.obo.xml
  (new component GUID, since the component's file changed).

Needs the first mzLib release that contains smith-chem-wisc#1415.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant