Skip to content

[REVIEW]: matchms - processing and similarity evaluation of mass spectrometry data #2411

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

Closed
38 tasks done
whedon opened this issue Jul 1, 2020 · 42 comments
Closed
38 tasks done
Assignees
Labels
accepted published Papers published in JOSS recommend-accept Papers recommended for acceptance in JOSS. review

Comments

@whedon
Copy link

whedon commented Jul 1, 2020

Submitting author: @florian-huber (Florian Huber)
Repository: https://github.com/matchms/matchms
Version: 0.4.0
Editor: @arfon
Reviewer: @bittremieux, @kaibioinfo
Archive: 10.5281/zenodo.4001991

⚠️ JOSS reduced service mode ⚠️

Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post.

Status

status

Status badge code:

HTML: <a href="https://joss.theoj.org/papers/dadd747809be21db9046445aa0a456d4"><img src="https://joss.theoj.org/papers/dadd747809be21db9046445aa0a456d4/status.svg"></a>
Markdown: [![status](https://joss.theoj.org/papers/dadd747809be21db9046445aa0a456d4/status.svg)](https://joss.theoj.org/papers/dadd747809be21db9046445aa0a456d4)

Reviewers and authors:

Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)

Reviewer instructions & questions

@bittremieux & @kaibioinfo, please carry out your review in this issue by updating the checklist below. If you cannot edit the checklist please:

  1. Make sure you're logged in to your GitHub account
  2. Be sure to accept the invite at this URL: https://github.com/openjournals/joss-reviews/invitations

The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @arfon know.

Please try and complete your review in the next six weeks

Review checklist for @bittremieux

Conflict of interest

  • I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • Repository: Is the source code for this software available at the repository url?
  • License: Does the repository contain a plain-text LICENSE file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@florian-huber) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?

Functionality

  • Installation: Does installation proceed as outlined in the documentation?
  • Functionality: Have the functional claims of the software been confirmed?
  • Performance: If there are any performance claims of the software, have they been confirmed? (If there are no claims, please check off this item.)

Documentation

  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

  • Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

Review checklist for @kaibioinfo

Conflict of interest

  • I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • Repository: Is the source code for this software available at the repository url?
  • License: Does the repository contain a plain-text LICENSE file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@florian-huber) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?

Functionality

  • Installation: Does installation proceed as outlined in the documentation?
  • Functionality: Have the functional claims of the software been confirmed?
  • Performance: If there are any performance claims of the software, have they been confirmed? (If there are no claims, please check off this item.)

Documentation

  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

  • Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?
@whedon
Copy link
Author

whedon commented Jul 1, 2020

Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @bittremieux, @kaibioinfo it looks like you're currently assigned to review this paper 🎉.

⚠️ JOSS reduced service mode ⚠️

Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post.

⭐ Important ⭐

If you haven't already, you should seriously consider unsubscribing from GitHub notifications for this (https://github.com/openjournals/joss-reviews) repository. As a reviewer, you're probably currently watching this repository which means for GitHub's default behaviour you will receive notifications (emails) for all reviews 😿

To fix this do the following two things:

  1. Set yourself as 'Not watching' https://github.com/openjournals/joss-reviews:

watching

  1. You may also like to change your default settings for this watching repositories in your GitHub profile here: https://github.com/settings/notifications

notifications

For a list of things I can do to help you, just type:

@whedon commands

For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:

@whedon generate pdf

@whedon
Copy link
Author

whedon commented Jul 1, 2020

Reference check summary:

OK DOIs

- 10.1038/nbt.3597 is OK
- 10.1073/pnas.1203689109 is OK
- 10.1109/MCSE.2011.37 is OK
- 10.1021/acs.jproteome.8b00717 is OK
- 10.1093/nar/gkz1019 is OK
- 10.1002/jms.1777 is OK

MISSING DOIs

- None

INVALID DOIs

- https://doi.org/10.1038/s41592-019-0686-2 is INVALID because of 'https://doi.org/' prefix
- 10.1021/jasms.8b04453 is INVALID

@arfon
Copy link
Member

arfon commented Jul 1, 2020

@bittremieux, @kaibioinfo - please carry out your review in this issue by updating the checklist above and giving feedback in this issue. The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html

Any questions/concerns please let me know.

@whedon
Copy link
Author

whedon commented Jul 1, 2020

@kaibioinfo
Copy link

I added three issues:

One rather major:
Current scope of the software is not clear from the paper (matchms/matchms#95 (comment))

And two minors:
Cosine similarity misses weighting and removal of precursor
matchms/matchms#96 (comment)

Regular expression for molecular formulas is ambiguous
matchms/matchms#94 (comment)

@bittremieux
Copy link

I would recommend a few more citations to relevant (Python) packages that cover similar functionality, such as OpenMS/pyOpenMS and spectrum_utils (disclaimer: this is my own package). MSnbase is a highly relevant R package as well. Given the high overlap between matchms and spectrum_utils a more detailed comparison in terms of spectrum processing functionality and computational efficiency might be warranted, although as spectrum_utils developer I leave the final decision about this to @arfon.

Minor comments for the manuscript:

  • Abstract: "full quantitative analysis" -> I suggest to rephrase this to avoid confusion with quantitative metabolomics experiments, i.e. where the abundance of the metabolites is measured.
  • The correct reference for Numba is: https://doi.org/10.1145/2833157.2833162

I agree with the issues raised by @kaibioinfo, especially on scope. This is not necessarily a major problem, but should be clarified better. Additionally, I have created two more small issues:

@arfon
Copy link
Member

arfon commented Jul 21, 2020

Thanks @bittremieux, @kaibioinfo for your feedback/reviews. @florian-huber - please let us know here when you've managed to incorporate feedback from the reviews.

@florian-huber
Copy link

florian-huber commented Aug 5, 2020

Thanks @arfon and in particular @bittremieux and @kaibioinfo for reviewing.
The raised comments were very valuable and helped us improve the package.

We generally agree with the feedback we received, and think that we could address most issues.
The main exception is making matchms a pip installable package (matchms/matchms#100), which is complicated because matchms relies on rdkit, a conda package. Still, we hope to address this in the future, maybe releasing a lightweight matchms version for pip.

Other than that, we incorporated matchms/matchms#94, matchms/matchms#101 and the minor comments by @bittremieux above. I believe we addressed the main points of matchms/matchms#96 by fixing and extending the cosine score functions. In addition, we currently work on providing more filter functions do address the remaining points (PR matchms/matchms#119). Since most of the still missing functionality could -though cumbersome- be achieve using present filters, this might be less urgent with respect to the JOSS manuscript.

Finally, the major point raised by @kaibioinfo in matchms/matchms#95 (overlapping with recommendation by @bittremieux to make the scope clearer) was addressed in two ways.
We extended the importing options of matchms, now including mzML, mzXML, msp, and metabolomics-USI. In addition, we now refer to more related packages and state more clearly the limitations of matchms (see matchms/matchms#95 for more detailed description).

Manuscript and code update:

  • the mentioned changes were made into a new matchms release (version 0.5.0).
  • the edited paper and bibliography was added to the master branch.
  • we added one additional author (Efraín Manuel Villanueva Castilla, who contributed code to this latest release).

Please let us know if that is sufficiently addressing the feedback, or further changes need to be made.
Many thanks!

@kaibioinfo
Copy link

I'm happy with the revision.

@florian-huber
Copy link

@whedon generate pdf

@whedon
Copy link
Author

whedon commented Aug 19, 2020

@bittremieux
Copy link

It looks good for me as well, I just have a few really minor comments:

  • Missing reference for mzML on page 1: 10.1074/mcp.R110.000133
  • I would recommend consistent and correct spelling of some terms throughout the manuscript and figures, for example: Inchi/InchiKey -> InChI/InChIKey, Smiles -> SMILES, m/z should be italicized, NumPy, SciPy

@florian-huber
Copy link

@whedon generate pdf

@whedon
Copy link
Author

whedon commented Aug 20, 2020

@florian-huber
Copy link

@whedon generate pdf

@whedon
Copy link
Author

whedon commented Aug 20, 2020

@florian-huber
Copy link

florian-huber commented Aug 20, 2020

Thanks for the comments @bittremieux.
We changed the spelling as you suggested (in text and figures).

@bittremieux
Copy link

Excellent. I don't think the mzML paper is actually cited yet in the manuscript where it is first mentioned though.

@florian-huber
Copy link

@whedon generate pdf

@whedon
Copy link
Author

whedon commented Aug 21, 2020

@florian-huber
Copy link

Thanks a lot for checking this! I corrected the reference entry, it should now be inserted where mzML is first mentioned.

@florian-huber
Copy link

@arfon Let me know if there is anything we should do to proceed. Thanks!

@arfon
Copy link
Member

arfon commented Aug 26, 2020

@whedon generate pdf

@whedon
Copy link
Author

whedon commented Aug 26, 2020

@arfon
Copy link
Member

arfon commented Aug 26, 2020

@bittremieux & @kaibioinfo - if you have a moment to revisit the checklists above to mark off the last few items (which I believe have now been addressed) that would be much appreciated.

@arfon
Copy link
Member

arfon commented Aug 26, 2020

@florian-huber - I've made a couple of minor edits in matchms/matchms#137.

After merging matchms/matchms#137, could you make a new release of this software that includes the changes that have resulted from this review. Then, please make an archive of the software in Zenodo/figshare/other service and update this thread with the DOI of the archive? For the Zenodo/figshare archive, please make sure that:

  • The title of the archive is the same as the JOSS paper title
  • That the authors of the archive are the same as the JOSS paper authors

I can then move forward with accepting the submission.

@florian-huber
Copy link

florian-huber commented Aug 26, 2020

Great, thanks @arfon
I merged the minor edits and made a new release (0.5.2) which is now on Zenodo.
The DOI is 10.5281/zenodo.4001991

(https://doi.org/10.5281/zenodo.4001991)

@bittremieux
Copy link

Checklist completed.

@arfon
Copy link
Member

arfon commented Aug 29, 2020

@whedon set 10.5281/zenodo.4001991 as archive

@whedon
Copy link
Author

whedon commented Aug 29, 2020

OK. 10.5281/zenodo.4001991 is the archive.

@arfon
Copy link
Member

arfon commented Aug 29, 2020

@whedon accept

@whedon
Copy link
Author

whedon commented Aug 29, 2020

Attempting dry run of processing paper acceptance...

@whedon whedon added the recommend-accept Papers recommended for acceptance in JOSS. label Aug 29, 2020
@whedon
Copy link
Author

whedon commented Aug 29, 2020

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1038/nbt.3597 is OK
- 10.1145/2833157.2833162 is OK
- 10.1073/pnas.1203689109 is OK
- 10.1038/s41592-019-0686-2 is OK
- 10.1109/MCSE.2011.37 is OK
- 10.1021/acs.jproteome.8b00717 is OK
- 10.1093/nar/gkz1019 is OK
- 10.1002/jms.1777 is OK
- 10.1002/pmic.201300246 is OK
- 10.1038/nmeth.3959 is OK
- 10.1021/acs.analchem.9b04884 is OK
- 10.1093/bioinformatics/bty046 is OK
- 10.1101/2020.05.09.086066 is OK
- 10.1074/mcp.R110.000133 is OK

MISSING DOIs

- None

INVALID DOIs

- 10.1021/jasms.8b04453 is INVALID

@whedon
Copy link
Author

whedon commented Aug 29, 2020

👋 @openjournals/joss-eics, this paper is ready to be accepted and published.

Check final proof 👉 openjournals/joss-papers#1680

If the paper PDF and Crossref deposit XML look good in openjournals/joss-papers#1680, then you can now move forward with accepting the submission by compiling again with the flag deposit=true e.g.

@whedon accept deposit=true

@arfon
Copy link
Member

arfon commented Aug 29, 2020

>
> INVALID DOIs
> 
> - 10.1021/jasms.8b04453 is INVALID

Not sure what's going on with that DOI, (perhaps the publisher never registered it) but it's definitely correct for this: https://pubs.acs.org/doi/pdf/10.1021/jasms.8b04453

@florian-huber - this is ready to accept and publish. The EiC on rotation will handle this in the next couple of days.

@florian-huber
Copy link

Thanks a lot @arfon!

And short feedback: as first-time submitter to JOSS I really liked the clear and transparent process, as well as the constructive feedback. Really nice!

@arfon
Copy link
Member

arfon commented Aug 31, 2020

@whedon accept deposit=true

@whedon
Copy link
Author

whedon commented Aug 31, 2020

Doing it live! Attempting automated processing of paper acceptance...

@whedon whedon added accepted published Papers published in JOSS labels Aug 31, 2020
@whedon
Copy link
Author

whedon commented Aug 31, 2020

🐦🐦🐦 👉 Tweet for this paper 👈 🐦🐦🐦

@whedon
Copy link
Author

whedon commented Aug 31, 2020

🚨🚨🚨 THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! 🚨🚨🚨

Here's what you must now do:

  1. Check final PDF and Crossref metadata that was deposited 👉 Creating pull request for 10.21105.joss.02411 joss-papers#1685
  2. Wait a couple of minutes to verify that the paper DOI resolves https://doi.org/10.21105/joss.02411
  3. If everything looks good, then close this review issue.
  4. Party like you just published a paper! 🎉🌈🦄💃👻🤘

Any issues? Notify your editorial technical team...

@arfon
Copy link
Member

arfon commented Aug 31, 2020

@bittremieux, @kaibioinfo - many thanks for your reviews here ✨

@florian-huber - your paper is now accepted into JOSS ⚡🚀💥

@arfon arfon closed this as completed Aug 31, 2020
@whedon
Copy link
Author

whedon commented Aug 31, 2020

🎉🎉🎉 Congratulations on your paper acceptance! 🎉🎉🎉

If you would like to include a link to your paper from your README use the following code snippets:

Markdown:
[![DOI](https://joss.theoj.org/papers/10.21105/joss.02411/status.svg)](https://doi.org/10.21105/joss.02411)

HTML:
<a style="border-width:0" href="https://doi.org/10.21105/joss.02411">
  <img src="https://joss.theoj.org/papers/10.21105/joss.02411/status.svg" alt="DOI badge" >
</a>

reStructuredText:
.. image:: https://joss.theoj.org/papers/10.21105/joss.02411/status.svg
   :target: https://doi.org/10.21105/joss.02411

This is how it will look in your documentation:

DOI

We need your help!

Journal of Open Source Software is a community-run journal and relies upon volunteer effort. If you'd like to support us please consider doing either one (or both) of the the following:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
accepted published Papers published in JOSS recommend-accept Papers recommended for acceptance in JOSS. review
Projects
None yet
Development

No branches or pull requests

5 participants