Joss-reviews: [REVIEW]: pentapy: A Python toolbox for pentadiagonal linear systems

Created on 24 Sep 2019  Β·  67Comments  Β·  Source: openjournals/joss-reviews

Submitting author: @MuellerSeb (Sebastian MΓΌller)
Repository: https://github.com/GeoStat-Framework/pentapy
Version: v1.0.2
Editor: @drvinceknight
Reviewer: @inakleinbottle, @virgesmith
Archive: 10.5281/zenodo.3474843

Status

status

Status badge code:

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

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

@inakleinbottle & @virgesmith, 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 @drvinceknight know.

✨ Please try and complete your review in the next two weeks ✨

Review checklist for @inakleinbottle

Conflict of interest

  • [x] 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

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

Functionality

  • [x] Installation: Does installation proceed as outlined in the documentation?
  • [x] Functionality: Have the functional claims of the software been confirmed?
  • [x] 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

  • [x] A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • [x] Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • [x] Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • [x] Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • [x] Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • [x] 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

  • [x] Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • [x] A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • [x] State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • [x] Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • [x] 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 @virgesmith

Conflict of interest

  • [x] 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

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

Functionality

  • [x] Installation: Does installation proceed as outlined in the documentation?
  • [x] Functionality: Have the functional claims of the software been confirmed?
  • [x] 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

  • [x] A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • [x] Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • [x] Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • [x] Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • [x] Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • [x] 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

  • [x] Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • [x] A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • [x] State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • [x] Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • [x] 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?
accepted published recommend-accept review

Most helpful comment

@virgesmith and @inakleinbottle thank you for your detailed reviews. That really helped to further improve the package! @drvinceknight thank you for being such a nice editor!
Thanks everybody!

All 67 comments

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

:star: Important :star:

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
Attempting PDF compilation. Reticulating splines etc...

Thanks everybody for the level-up!
Thanks @inakleinbottle for your detailed review. I will try to elaborate all your points.
Thanks @virgesmith for volunteering as reviewer.

My response to @inakleinbottle can be found here: https://github.com/GeoStat-Framework/pentapy/issues/1#issuecomment-534624645

I have a query for the editor: copied from my review

  • You might need to include references (at the end of the paper) to the packages mentioned in your paper: numpy, scipy, Cython, perfplot. This needs to be clarified by the JOSS editors.

What is the policy regarding citation of software packages in references? I should comment that these are clearly acknowledged in the paper, but are not included in the list of references.

Hi @inakleinbottle, good question, I note that scipy has been referenced however I feel that on this occasion references for cython and perfplot would be helpful for the reader (for example reading the paper myself I was not familiar with perfplot).

I do not feel strongly about including a reference for numpy in the context of the text of the paper but I would suggest that it could be nice to include it for completeness.

Does that sound ok to you @MuellerSeb ?

@drvinceknight : Thank you for working out a way to go. I will include a reference to the github repositories of numpy and perfplot (numpy has no "real" code-publication and perfplot is a rather small package without any publications). In case of Cython, a dedicated publication exists.

@whedon generate pdf

Attempting PDF compilation. Reticulating splines etc...

My response to @virgesmith can be found here: https://github.com/GeoStat-Framework/pentapy/issues/2#issuecomment-537114042

@drvinceknight I am happy to recommend this package now, @MuellerSeb has addressed all the points I raised.

@drvinceknight I too am now happy to recommend this package.

Wonderful! Thank you all for your efforts and congratulations @MuellerSeb. :+1:

@whedon check references

Attempting to check references...

```Reference check summary:

OK DOIs

  • 10.5281/zenodo.2587158 is OK
  • 10.1155/2015/232456 is OK
  • 10.1007/978-3-319-43409-4 is OK
  • 10.1002/hyp.10064 is OK
  • 10.1109/MCSE.2010.118 is OK

MISSING DOIs

  • None

INVALID DOIs

  • None
    ```

@virgesmith and @inakleinbottle thank you for your detailed reviews. That really helped to further improve the package! @drvinceknight thank you for being such a nice editor!
Thanks everybody!

@openjournals/joss-eics this paper is ready to be accepted (unless I've missed something - this is my first paper as editor so please let me know if I'm forgetting something).

I will make a release of pentapy 1.0.1 that includes all changes to get a proper DOI.
This is in line with the paper, since Version 1.0 is mentioned there, so I think a newer PATCH release is ok.
(Maybe it could be a good hint for further papers to use a pre-released release candidate for the review)

πŸ‘‹ @drvinceknight β€” The pre-publication steps to request authors are:

  • [x] Please make a tagged release of your software, and list the version tag of the archived version here.
  • [x] Archive the reviewed software in Zenodo
  • [x] Check the Zenodo deposit has the correct metadata, this includes the title (should match the paper title) and author list (make sure the list is correct and people who only made a small fix are not on it); you may also add the authors' ORCID.
  • [x] Please list the Zenodo DOI of the archived version here.

Zenodo fails to release the 1.0.1 version... uargh!
I created an Issue: https://github.com/zenodo/zenodo/issues/1878
BUT: the DOI in the paper references the "general" Zenodo publication, that means, it always directs to the latest version. Is that ok?

@labarba I see. So I have to wait for Zenodo to resolve that issue.

The JOSS paper should link to the DOI for the _specific version_ or the Zenodo archive that corresponds to the software _as reviewed and improved_ for the JOSS publication (not the general DOI for all versions).

Also, note that the Zenodo archive DOI is displayed in the margin decorators of the first page, and we thus request that you do not add it in your list of references. (It will also be included in the metadata of the Crossref deposit for the paper.)

@whedon set v1.0.2 as version

OK. v1.0.2 is the version.

OK, I will remove it from the list of references. Now we have to wait until someone from zenodo fixes my failed release. v1.0.2 was just to trigger another zenodo release (which again failed), but I will leave it that way.

@whedon generate pdf

Attempting PDF compilation. Reticulating splines etc...

The DOI from Zenodo was now successfully created:
10.5281/zenodo.3474843

@whedon commands

Here are some things you can ask me to do:

# List Whedon's capabilities
@whedon commands

# List of editor GitHub usernames
@whedon list editors

# List of reviewers together with programming language preferences and domain expertise
@whedon list reviewers

EDITORIAL TASKS

# Compile the paper
@whedon generate pdf

# Compile the paper from alternative branch
@whedon generate pdf from branch custom-branch-name

# Ask Whedon to check the references for missing DOIs
@whedon check references

@labarba : I think that I have done everything on your list. How to proceed?

@whedon set 10.5281/zenodo.3474843 as archive

OK. 10.5281/zenodo.3474843 is the archive.

I made some minor copy edits in https://github.com/GeoStat-Framework/pentapy/pull/3
Note that the paper has links to the source repository and Zenodo archive on the margin decorators of the first page, and we don't need that mentioned in the body text.

I wasn't sure what the abbreviated word was here:

backward resp. forward substitution

And finally, you present a figure with a performance test: it would be nice if you said what hardware you used for the test!

@whedon generate pdf

Attempting PDF compilation. Reticulating splines etc...

@labarba I merged your edits, removed the abbreviation and added the sys specs.

@whedon generate pdf

Attempting PDF compilation. Reticulating splines etc...

@whedon generate pdf

Attempting PDF compilation. Reticulating splines etc...

@labarba merged!

@whedon accept

Attempting dry run of processing paper acceptance...

```Reference check summary:

OK DOIs

  • 10.1155/2015/232456 is OK
  • 10.1007/978-3-319-43409-4 is OK
  • 10.1002/hyp.10064 is OK
  • 10.1109/MCSE.2010.118 is OK

MISSING DOIs

  • None

INVALID DOIs

  • None
    ```

Check final proof :point_right: https://github.com/openjournals/joss-papers/pull/1010

If the paper PDF and Crossref deposit XML look good in https://github.com/openjournals/joss-papers/pull/1010, then you can now move forward with accepting the submission by compiling again with the flag deposit=true e.g.
@whedon accept deposit=true

@whedon generate pdf

Attempting PDF compilation. Reticulating splines etc...

@whedon accept deposit=true

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

🐦🐦🐦 πŸ‘‰ Tweet for this paper πŸ‘ˆ 🐦🐦🐦

🚨🚨🚨 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 :point_right: https://github.com/openjournals/joss-papers/pull/1011
  2. Wait a couple of minutes to verify that the paper DOI resolves https://doi.org/10.21105/joss.01759
  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...

Congratulations, @MuellerSeb, your JOSS paper is published! πŸš€

Huge thanks to our editor: @drvinceknight, and the reviewers: @inakleinbottle, @virgesmith β€” we couldn't do this without you πŸ™

I'm not seeing the PDF yet, but the DOI resolves. I'll leave this issue open for now...

YEAH! Thanks @drvinceknight, @inakleinbottle, @virgesmith and @labarba for this pleasant review!
I see the PDF ;-)
This was a very nice experience!

πŸ‘‹ @arfon β€”The PDF is not showing in the embedded frame for me, even though the file does exist ... see: https://joss.theoj.org/papers/10.21105/joss.01759

@labarba @arfon just confirming that I can see the PDF

I see it now. Closing.

:tada::tada::tada: Congratulations on your paper acceptance! :tada::tada::tada:

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.01759/status.svg)](https://doi.org/10.21105/joss.01759)

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

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

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:

Was this page helpful?
0 / 5 - 0 ratings