We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
Hi @mobiusklein,
I think this issue is related to the changes made in #129 (thanks btw to implement this!).
Resolving a Unimod modification with its accession number if the psims back-end is used results in an error:
psims
>>> from pyteomics import proforma >>> proforma._has_psims True >>> mod = proforma.process_tag_tokens("U:4") >>> mod.mass --------------------------------------------------------------------------- AttributeError Traceback (most recent call last) Untitled-2.ipynb Cell 14 line 1 ----> [1](vscode-notebook-cell:Untitled-2.ipynb?jupyter-notebook#X11sdW50aXRsZWQ%3D?line=0) mod.name File [c:\Users\ralfg\git\ms2rescore\.venv\lib\site-packages\pyteomics\proforma.py:735](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:735), in ModificationBase.name(self) [727](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:727) @property [728](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:728) def name(self): [729](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:729) '''The primary name of this modification from its provider. [730](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:730) [731](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:731) Returns [732](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:732) ------- [733](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:733) str [734](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:734) ''' --> [735](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:735) return self.definition.get('name') File [c:\Users\ralfg\git\ms2rescore\.venv\lib\site-packages\pyteomics\proforma.py:700](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:700), in ModificationBase.definition(self) [691](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:691) '''A :class:`dict` of properties describing this modification, given [692](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:692) by the providing controlled vocabulary. This value is cached, and [693](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:693) should not be modified. (...) [697](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:697) dict [698](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:698) ''' [699](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:699) if self._definition is None: --> [700](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:700) self._definition = self.resolve() [701](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:701) return self._definition File [c:\Users\ralfg\git\ms2rescore\.venv\lib\site-packages\pyteomics\proforma.py:758](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:758), in ModificationBase.resolve(self) [755](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:755) '''Find the term and return it's properties [756](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:756) ''' [757](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:757) keys = self.resolver.parse_identifier(self.value) --> [758](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:758) return self.resolver(*keys) File [c:\Users\ralfg\git\ms2rescore\.venv\lib\site-packages\pyteomics\proforma.py:344](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:344), in ModificationResolver.__call__(self, name, id, **kwargs) [343](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:343) def __call__(self, name=None, id=None, **kwargs): --> [344](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:344) return self.resolve(name, id, **kwargs) File [c:\Users\ralfg\git\ms2rescore\.venv\lib\site-packages\pyteomics\proforma.py:386](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:386), in UnimodResolver.resolve(self, name, id, **kwargs) [384](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:384) raise KeyError(name) [385](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:385) elif id is not None: --> [386](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:386) defn = self.database.by_id(id) [387](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:387) if not defn: [388](file:///C:/Users/ralfg/git/ms2rescore/.venv/lib/site-packages/pyteomics/proforma.py:388) raise KeyError(id) AttributeError: 'Unimod' object has no attribute 'by_id'
Without the psims backend, it works as expected:
>>> from pyteomics import proforma >>> proforma._has_psims False >>> mod = proforma.process_tag_tokens("U:4") >>> mod.mass 57.021464
Best, Ralf
The text was updated successfully, but these errors were encountered:
Successfully merging a pull request may close this issue.
Hi @mobiusklein,
I think this issue is related to the changes made in #129 (thanks btw to implement this!).
Resolving a Unimod modification with its accession number if the
psims
back-end is used results in an error:Without the
psims
backend, it works as expected:Best,
Ralf
The text was updated successfully, but these errors were encountered: