Skip to content
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

[REVIEW]: nimbleHMC: An R package for Hamiltonian Monte Carlo sampling in nimble #6745

Closed
editorialbot opened this issue May 13, 2024 · 67 comments
Assignees
Labels
accepted published Papers published in JOSS R recommend-accept Papers recommended for acceptance in JOSS. review TeX Track: 5 (DSAIS) Data Science, Artificial Intelligence, and Machine Learning

Comments

@editorialbot
Copy link
Collaborator

editorialbot commented May 13, 2024

Submitting author: @danielturek (Daniel Turek)
Repository: https://github.com/nimble-dev/nimbleHMC
Branch with paper.md (empty if default branch): joss
Version: 0.2.2
Editor: @likeajumprope
Reviewers: @matt-graham, @larryshamalama
Archive: 10.5281/zenodo.12658544

Status

status

Status badge code:

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

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

@matt-graham & @larryshamalama, your review will be checklist based. Each of you will have a separate checklist that you should update when carrying out your review.
First of all you need to run this command in a separate comment to create the checklist:

@editorialbot generate my checklist

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

Please start on your review when you are able, and be sure to complete your review in the next six weeks, at the very latest

Checklists

📝 Checklist for @matt-graham

📝 Checklist for @larryshamalama

@editorialbot
Copy link
Collaborator Author

Hello humans, I'm @editorialbot, a robot that can help you with some common editorial tasks.

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

@editorialbot commands

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

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

Software report:

github.com/AlDanial/cloc v 1.90  T=0.02 s (827.9 files/s, 242222.4 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
R                                7            176            675           1922
Markdown                         4            200              0            762
TeX                              1             49              0            201
YAML                             2             20              7             84
-------------------------------------------------------------------------------
SUM:                            14            445            682           2969
-------------------------------------------------------------------------------

Commit count by author:

   190	danielturek
    12	Christopher Paciorek
    11	Daniel Turek
     6	perrydv
     1	Perry de Valpine

@editorialbot
Copy link
Collaborator Author

Paper file info:

📄 Wordcount for paper.md is 1415

✅ The paper includes a Statement of need section

@editorialbot
Copy link
Collaborator Author

License info:

🟡 License found: GNU General Public License v3.0 (Check here for OSI approval)

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@crvernon
Copy link

👋 @danielturek, @matt-graham, and @larryshamalama - This is the review thread for the paper. All of our communications will happen here from now on.

Please read the "Reviewer instructions & questions" in the first comment above.

Both reviewers have checklists at the top of this thread (in that first comment) with the JOSS requirements. As you go over the submission, please check any items that you feel have been satisfied. There are also links to the JOSS reviewer guidelines.

The JOSS review is different from most other journals. Our goal is to work with the authors to help them meet our criteria instead of merely passing judgment on the submission. As such, the reviewers are encouraged to submit issues and pull requests on the software repository. When doing so, please mention #6745 so that a link is created to this thread (and I can keep an eye on what is happening). Please also feel free to comment and ask questions on this thread. In my experience, it is better to post comments/questions/suggestions as you come across them instead of waiting until you've reviewed the entire package.

We aim for the review process to be completed within about 4-6 weeks but please make a start well ahead of this as JOSS reviews are by their nature iterative and any early feedback you may be able to provide to the author will be very helpful in meeting this schedule.

cc. @likeajumprope

@matt-graham
Copy link

matt-graham commented May 13, 2024

Review checklist for @matt-graham

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 https://github.com/nimble-dev/nimbleHMC?
  • License: Does the repository contain a plain-text LICENSE or COPYING file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@danielturek) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
  • Substantial scholarly effort: Does this submission meet the scope eligibility described in the JOSS guidelines
  • Data sharing: If the paper contains original data, data are accessible to the reviewers. If the paper contains no original data, please check this item.
  • Reproducibility: If the paper contains original results, results are entirely reproducible by reviewers. If the paper contains no original results, please check this item.
  • Human and animal research: If the paper contains original data research on humans subjects or animals, does it comply with JOSS's human participants research policy and/or animal research policy? If the paper contains no such data, please check this item.

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: Does the paper have a section titled 'Statement of need' that clearly states what problems the software is designed to solve, who the target audience is, and its relation to other work?
  • 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?

@larryshamalama
Copy link

larryshamalama commented May 15, 2024

Review checklist for @larryshamalama

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 https://github.com/nimble-dev/nimbleHMC?
  • License: Does the repository contain a plain-text LICENSE or COPYING file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@danielturek) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
  • Substantial scholarly effort: Does this submission meet the scope eligibility described in the JOSS guidelines
  • Data sharing: If the paper contains original data, data are accessible to the reviewers. If the paper contains no original data, please check this item.
  • Reproducibility: If the paper contains original results, results are entirely reproducible by reviewers. If the paper contains no original results, please check this item.
  • Human and animal research: If the paper contains original data research on humans subjects or animals, does it comply with JOSS's human participants research policy and/or animal research policy? If the paper contains no such data, please check this item.

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: Does the paper have a section titled 'Statement of need' that clearly states what problems the software is designed to solve, who the target audience is, and its relation to other work?
  • 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?

@crvernon
Copy link

👋 @likeajumprope, @danielturek, @matt-graham, and @larryshamalama

It looks like we have some good activity in this review. Could you provide a short bullet point update here is in this thread as to how things are going? Thanks and keep up the good work!

@danielturek
Copy link

@crvernon No problem:

@matt-graham
Copy link

Thanks for the great summary @danielturek (and being so responsive to the issues I raised!). Just to update on my side, the remaining unchecked items on my checklist are just reflective of me having not had a chance yet to finish up my review as I've got some exam marking to do on a tight turnaround, but I'll try get back to this as soon as possible.

@matt-graham
Copy link

@crvernon just to update - I've now completed my review checklist and @danielturek has responded to the last round of issues I opened on the repository and opened PRs that address all of them, so from my perspective I'm happy to recommend acceptance at this point.

@danielturek
Copy link

@crvernon I've made a number of revisions in response to constructive review comments from @matt-graham.

I wanted to check-in regarding status of review from @larryshamalama, in hopes of continuing to move the review process forward.

Thanks!

@crvernon
Copy link

👋 @larryshamalama - please provide an update as soon as possible here in this review thread. Thanks!

@larryshamalama
Copy link

@crvernon @danielturek Sincere apologies for the delay. We had some family issues that came up and a lot of my work took significant delays...

Overall, everything looks great: the paper, the repository (with respect to all items in the checklist) and, most importantly, the new HMC sampler to nimble. To prevent further delays, I'm very happy to recommend this to be accepted. I have some very minor suggestions; I can raise them as issues or PRs in the repository

@danielturek
Copy link

@editorialbot check references

@editorialbot
Copy link
Collaborator Author

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

OK DOIs

- 10.21105/joss.03844 is OK
- 10.1080/10618600.2016.1172487 is OK
- 10.18637/jss.v076.i01 is OK
- 10.1214/aos/1056562461 is OK
- 10.1146/annurev-statistics-040220-091910 is OK
- 10.1214/16-BA1008 is OK
- 10.1002/ece3.6053 is OK
- 10.1080/10618600.2013.791193 is OK
- 10.2307/2937171 is OK
- 10.1007/s10651-016-0353-z is OK
- 10.1023/A:1008929526011 is OK
- 10.48550/arXiv.1912.11554 is OK
- 10.3102/1076998619872761 is OK

MISSING DOIs

- No DOI given, and none found for title: Handbook of markov chain monte carlo
- No DOI given, and none found for title: JAGS: A program for analysis of Bayesian graphical...
- No DOI given, and none found for title: PyMC: Bayesian stochastic modelling in python
- No DOI given, and none found for title: Stan modeling language users guide and reference m...
- No DOI given, and none found for title: The metropolis—Hastings algorithm
- No DOI given, and none found for title: Conjugate likelihood distributions
- No DOI given, and none found for title: The No-U-Turn sampler: adaptively setting path len...
- No DOI given, and none found for title: Elliptical slice sampling
- No DOI given, and none found for title: mra: Mark-Recapture Analysis

INVALID DOIs

- None

@danielturek
Copy link

@likeajumprope Thanks for the suggestion.

I took a careful look at all the missing dois, and found a few which I added in a0f1be6.

I don't believe there are any more, but please let me know if I'm overlooking something.

@likeajumprope
Copy link

@likeajumprope Thanks for the suggestion.

I took a careful look at all the missing dois, and found a few which I added in a0f1be6.

I don't believe there are any more, but please let me know if I'm overlooking something.

perfect thanks!

@likeajumprope
Copy link

@editorialbot recommend-accept

@editorialbot
Copy link
Collaborator Author

Attempting dry run of processing paper acceptance...

@editorialbot
Copy link
Collaborator Author

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

OK DOIs

- 10.21105/joss.03844 is OK
- 10.1080/10618600.2016.1172487 is OK
- 10.18637/jss.v076.i01 is OK
- 10.1214/aos/1056562461 is OK
- 10.1146/annurev-statistics-040220-091910 is OK
- 10.1214/16-BA1008 is OK
- 10.1002/ece3.6053 is OK
- 10.1080/10618600.2013.791193 is OK
- 10.2307/2937171 is OK
- 10.1007/s10651-016-0353-z is OK
- 10.1023/A:1008929526011 is OK
- 10.48550/arXiv.1912.11554 is OK
- 10.3102/1076998619872761 is OK

MISSING DOIs

- No DOI given, and none found for title: Handbook of markov chain monte carlo
- No DOI given, and none found for title: JAGS: A program for analysis of Bayesian graphical...
- No DOI given, and none found for title: PyMC: Bayesian stochastic modelling in python
- No DOI given, and none found for title: Stan modeling language users guide and reference m...
- No DOI given, and none found for title: The metropolis—Hastings algorithm
- No DOI given, and none found for title: Conjugate likelihood distributions
- No DOI given, and none found for title: The No-U-Turn sampler: adaptively setting path len...
- No DOI given, and none found for title: Elliptical slice sampling
- No DOI given, and none found for title: mra: Mark-Recapture Analysis

INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

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

Check final proof 👉📄 Download article

If the paper PDF and the deposit XML files look good in openjournals/joss-papers#5583, then you can now move forward with accepting the submission by compiling again with the command @editorialbot accept

@editorialbot editorialbot added the recommend-accept Papers recommended for acceptance in JOSS. label Jul 8, 2024
@crvernon
Copy link

crvernon commented Jul 8, 2024

🔍 checking out the following:

  • reviewer checklists are completed or addressed
  • version set
  • archive set
  • archive names (including order) and title in archive matches those specified in the paper
  • archive uses the same license as the repo and is OSI approved as open source
  • archive DOI and version match or redirect to those set by editor in review thread
  • paper is error free - grammar and typos
  • paper is error free - test links in the paper and bib
  • paper is error free - refs preserve capitalization where necessary
  • paper is error free - no invalid refs without justification

@crvernon
Copy link

crvernon commented Jul 8, 2024

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@crvernon
Copy link

crvernon commented Jul 8, 2024

👋 @danielturek - please address the following before I can move forward with accepting your submission for publication:

  • Ensure that the author names and order in your Zenodo archive match those represented in your paper exactly. You can edit the Zenodo archive metadata to do this and do not have to conduct another release.
  • Ensure that the title in your Zenodo archive match that represented in your paper exactly. You can edit the Zenodo archive metadata to do this and do not have to conduct another release.
  • Please ensure that capitalization in maintained in your references where appropriate. For example, LINE 166 states "An r package for studying..." for which "r" should be capitalized as "R". You can achieve this by using curly brackets around formatting you wish to keep in the bib file. Please check all references for this.

Once the above are complete, I will move forward with accepting this submission for publication.

@danielturek
Copy link

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@danielturek
Copy link

@crvernon I made minor edits to the metadata of the Zenodo archive.

  • Confirming that the author names and order now exactly match those in the manuscript.
  • Confirming that the title now exactly matches that of the manuscript.

I also corrected the reference you mentioned, and checked the others. It now appears correctly in the article proof.

Please let me know if these changes look ok, and thanks for the careful review.

@crvernon
Copy link

Thanks @danielturek! I just noticed that there are backticks around your package name in the title of your paper. This will cause formatting issues when we publish. Could you remove these? No need to make a new release but let me know when this is done and I'll accept.

@danielturek
Copy link

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@crvernon
Copy link

@editorialbot accept

@editorialbot
Copy link
Collaborator Author

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

@danielturek
Copy link

Thanks for the quick action @crvernon

@editorialbot
Copy link
Collaborator Author

Ensure proper citation by uploading a plain text CITATION.cff file to the default branch of your repository.

If using GitHub, a Cite this repository menu will appear in the About section, containing both APA and BibTeX formats. When exported to Zotero using a browser plugin, Zotero will automatically create an entry using the information contained in the .cff file.

You can copy the contents for your CITATION.cff file here:

CITATION.cff

cff-version: "1.2.0"
authors:
- family-names: Turek
  given-names: Daniel
  orcid: "https://orcid.org/0000-0002-1453-1908"
- family-names: Valpine
  given-names: Perry
  name-particle: de
  orcid: "https://orcid.org/0000-0002-8329-6796"
- family-names: Paciorek
  given-names: Christopher J.
contact:
- family-names: Turek
  given-names: Daniel
  orcid: "https://orcid.org/0000-0002-1453-1908"
doi: 10.5281/zenodo.12658544
message: If you use this software, please cite our article in the
  Journal of Open Source Software.
preferred-citation:
  authors:
  - family-names: Turek
    given-names: Daniel
    orcid: "https://orcid.org/0000-0002-1453-1908"
  - family-names: Valpine
    given-names: Perry
    name-particle: de
    orcid: "https://orcid.org/0000-0002-8329-6796"
  - family-names: Paciorek
    given-names: Christopher J.
  date-published: 2024-07-10
  doi: 10.21105/joss.06745
  issn: 2475-9066
  issue: 99
  journal: Journal of Open Source Software
  publisher:
    name: Open Journals
  start: 6745
  title: "nimbleHMC: An R package for Hamiltonian Monte Carlo sampling
    in nimble"
  type: article
  url: "https://joss.theoj.org/papers/10.21105/joss.06745"
  volume: 9
title: "nimbleHMC: An R package for Hamiltonian Monte Carlo sampling in
  nimble"

If the repository is not hosted on GitHub, a .cff file can still be uploaded to set your preferred citation. Users will be able to manually copy and paste the citation.

Find more information on .cff files here and here.

@editorialbot
Copy link
Collaborator Author

🐘🐘🐘 👉 Toot for this paper 👈 🐘🐘🐘

@editorialbot
Copy link
Collaborator Author

🚨🚨🚨 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.06745 joss-papers#5601
  2. Wait five minutes, then verify that the paper DOI resolves https://doi.org/10.21105/joss.06745
  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...

@editorialbot editorialbot added accepted published Papers published in JOSS labels Jul 10, 2024
@crvernon
Copy link

🥳 Congratulations on your new publication @danielturek! Many thanks to @likeajumprope for editing and @matt-graham and @larryshamalama for your time, hard work, and expertise!! JOSS wouldn't be able to function nor succeed without your efforts.

Please consider becoming a reviewer for JOSS if you are not already: https://reviewers.joss.theoj.org/join

@editorialbot
Copy link
Collaborator Author

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

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

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

This is how it will look in your documentation:

DOI

We need your help!

The 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 R recommend-accept Papers recommended for acceptance in JOSS. review TeX Track: 5 (DSAIS) Data Science, Artificial Intelligence, and Machine Learning
Projects
None yet
Development

No branches or pull requests

6 participants