joss-reviews icon indicating copy to clipboard operation
joss-reviews copied to clipboard

[REVIEW]: CMinx: A CMake Documentation Generator

Open editorialbot opened this issue 3 years ago • 7 comments

Submitting author: @ryanmrichard (Ryan M. Richard) Repository: https://github.com/CMakePP/CMinx Branch with paper.md (empty if default branch): joss_paper Version: 1.0.0 Editor: @danielskatz Reviewers: @robertodr, @peanutfun Archive: Pending

Status

status

Status badge code:

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

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

@robertodr & @peanutfun, 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 @danielskatz 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

@robertodr, please create your checklist typing: @editorialbot generate my checklist

@peanutfun, please create your checklist typing: @editorialbot generate my checklist

editorialbot avatar Aug 17 '22 11:08 editorialbot

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 avatar Aug 17 '22 11:08 editorialbot

Software report:

github.com/AlDanial/cloc v 1.88  T=0.08 s (1356.5 files/s, 113279.0 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Python                          33            905           1426           2561
reStructuredText                40            892            954            602
CMake                           19            173            432            412
YAML                            15             56            277            281
Markdown                         1             14              0            130
ANTLR Grammar                    1             30             14             75
TeX                              1              9              0             68
make                             1              4              6             10
TOML                             1              2             13              7
-------------------------------------------------------------------------------
SUM:                           112           2085           3122           4146
-------------------------------------------------------------------------------


gitinspector failed to run statistical information for the repository

editorialbot avatar Aug 17 '22 11:08 editorialbot

Wordcount for paper.md is 1118

editorialbot avatar Aug 17 '22 11:08 editorialbot

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

OK DOIs

- None

MISSING DOIs

- None

INVALID DOIs

- None

editorialbot avatar Aug 17 '22 11:08 editorialbot

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

editorialbot avatar Aug 17 '22 11:08 editorialbot

note: @peanutfun is currently on vacation until 29 August, and will start the review after that date

danielskatz avatar Aug 17 '22 11:08 danielskatz

@robertodr and @peanutfun - Thanks for agreeing to review this submission. This is the review thread for the paper. All of our communications will happen here from now on.

As you can see above, you each should use the command @editorialbot generate my checklist to create your review checklist. @editorialbot commands need to be the first thing in a new comment.

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, reviewers are encouraged to submit issues and pull requests on the software repository. When doing so, please mention openjournals/joss-reviews#4680 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 reviews to be completed within about 2-4 weeks. Please let me know if either of you require some more time. We can also use editorialbot (our bot) to set automatic reminders if you know you'll be away for a known period of time.

Please feel free to ping me (@danielskatz) if you have any questions/concerns.

danielskatz avatar Aug 17 '22 11:08 danielskatz

Review checklist for @robertodr

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 https://github.com/CMakePP/CMinx?
  • [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 (@ryanmrichard) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
  • [x] Substantial scholarly effort: Does this submission meet the scope eligibility described in the JOSS guidelines

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: 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?
  • [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?

robertodr avatar Aug 19 '22 06:08 robertodr

Review checklist for @peanutfun

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 https://github.com/CMakePP/CMinx?
  • [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 (@ryanmrichard) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
  • [x] Substantial scholarly effort: Does this submission meet the scope eligibility described in the JOSS guidelines
  • [x] 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.
  • [x] Reproducibility: If the paper contains original results, results are entirely reproducible by reviewers. If the paper contains no original results, please check this item.
  • [x] 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

  • [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: 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?
  • [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?

peanutfun avatar Aug 29 '22 09:08 peanutfun

@ryanmrichard Thanks for suggesting me to review your submission 👋 I'll be reviewing your paper and software over the next days and/or weeks. I guess we can have all detailed discussions in issues I'll eventually raise in the CMinx repository. Once I'm through, I will summarize here.

peanutfun avatar Aug 30 '22 10:08 peanutfun

@peanutfun :wave: That all sounds great. I look forward to working with you and thanks for agreeing to review this manuscript!

ryanmrichard avatar Aug 30 '22 13:08 ryanmrichard

@ryanmrichard I finished my review. I am very excited about CMinx, as it addresses a pressing issue for advanced CMake users. I works as advertised. The documentation is extensive and the repository is especially well maintained. The paper is well written.

My main concern with CMinx is its integration into existing builds. For the project to be truly successful, this integration has to be as easy and seemless as possible. This is why I raised issues addressing the example usage and new CMake functions, but I do not consider all of them crucial for this review.

To check off the remaining points of the review checklist, I ask you to resolve the following issues:

  • [x] Functionality documentation: https://github.com/CMakePP/CMinx/issues/116
  • [x] Example usage: https://github.com/CMakePP/CMinx/issues/109
  • [x] Example usage: https://github.com/CMakePP/CMinx/issues/117
  • [x] Quality of writing/References: https://github.com/CMakePP/CMinx/pull/104#pullrequestreview-1097539619

peanutfun avatar Sep 06 '22 14:09 peanutfun

@ryanmrichard I'm also done with my review. Apologies that it took so long! The paper is well written: I've added some very minor suggestions directly on PR 104. This tool will be quite useful. I find the documentation truly excellent, especially the complete example. I've opened some issues that might help improve the project, but addressing them in not a prerequisite for paper acceptance.

  • [x] Quality of writing: https://github.com/CMakePP/CMinx/pull/104

robertodr avatar Sep 07 '22 09:09 robertodr

@peanutfun and @robertodr First off, thank you both for the excellent suggestions and taking the time to review this. I added both of you to the acknowledgements section of the manuscript.

At this point I believe I have addressed all of the comments in https://github.com/CMakePP/CMinx/pull/104 (which is on both checklists) and I believe that I have addressed all three of @peanutfun's remaining checklist items (two of them are still waiting on @peanutfun to accept the solutions). Please let me know if I missed something and thanks again.

ryanmrichard avatar Sep 07 '22 15:09 ryanmrichard

@ryanmrichard @danielskatz Please note that due to the death of a close family member I will need to take some time off. I will continue the review on 19 September at the earliest. Thanks in advance for your understanding!

peanutfun avatar Sep 08 '22 17:09 peanutfun

You have my sympathy

danielskatz avatar Sep 08 '22 17:09 danielskatz

@editorialbot generate pdf

peanutfun avatar Sep 26 '22 09:09 peanutfun

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

editorialbot avatar Sep 26 '22 09:09 editorialbot

@editorialbot generate pdf

peanutfun avatar Sep 26 '22 14:09 peanutfun

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

editorialbot avatar Sep 26 '22 14:09 editorialbot

@danielskatz @ryanmrichard Thank you for your understanding. I concluded my review and I recommend the submission for publication.

@ryanmrichard @AutonomicPerfectionist Thank you for your work! I see you are working hard on this project and the speed with which you engage into discussions, update the documentation, and implement new features is impressive. Keep it up! 🙌

peanutfun avatar Sep 26 '22 15:09 peanutfun

Thanks @peanutfun

danielskatz avatar Sep 27 '22 12:09 danielskatz

@robertodr - thanks also for your review - it appears you are also happy for this to be accepted, and the one open issue (https://github.com/CMakePP/CMinx/issues/121) is not something that needs to be resolved, based on your comment in it. Please confirm.

danielskatz avatar Sep 27 '22 12:09 danielskatz

I confirm CMakePP/CMinx#121 is beyond the scope of this review.

robertodr avatar Sep 27 '22 12:09 robertodr

I confirm CMakePP/CMinx#121 is beyond the scope of this review.

And you are happy for this to be accepted?

danielskatz avatar Sep 27 '22 12:09 danielskatz

Yes, this paper should be accepted.

robertodr avatar Sep 27 '22 12:09 robertodr

@ryanmrichard - I'm now going to proofread the paper, followed by which I might request changes

danielskatz avatar Sep 27 '22 12:09 danielskatz

@editorialbot check references

danielskatz avatar Sep 27 '22 12:09 danielskatz

@editorialbot generate pdf

danielskatz avatar Sep 27 '22 12:09 danielskatz

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

OK DOIs

- 10.48550/arXiv.1702.08425 is OK
- 10.1177/1094342014522573 is OK

MISSING DOIs

- None

INVALID DOIs

- None

editorialbot avatar Sep 27 '22 12:09 editorialbot