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]: simpleCache: R caching for reproducible, distributed, large-scale projects #463

Closed
whedon opened this Issue Nov 16, 2017 · 18 comments

Comments

Projects
None yet
5 participants
@whedon
Collaborator

whedon commented Nov 16, 2017

Submitting author: @vpnagraj (VP Nagraj)
Repository: https://github.com/databio/simpleCache
Version: 0.3.1
Editor: @leeper
Reviewer: @sckott
Archive: 10.5281/zenodo.1140853

Status

status

Status badge code:

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

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) 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

@sckott, 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: http://joss.theoj.org/about#reviewer_guidelines. Any questions/concerns please let @leeper know.

Conflict of interest

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?
  • Version: Does the release version given match the GitHub release (0.3.1)?
  • Authorship: Has the submitting author (@vpnagraj) 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 function 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

  • Authors: Does the paper.md file include a list of authors with their affiliations?
  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • References: Do all archival references that should have a DOI list one (e.g., papers, datasets, software)?
@whedon

This comment has been minimized.

Show comment
Hide comment
@whedon

whedon Nov 16, 2017

Collaborator

Hello human, I'm @whedon. I'm here to help you with some common editorial tasks. @sckott it looks like you're currently assigned as the reviewer for this paper 🎉.

⭐️ Important ⭐️

If you haven't already, you should seriously consider unsubscribing from GitHub notifications for this (https://github.com/openjournals/joss-reviews) repository. As as 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
Collaborator

whedon commented Nov 16, 2017

Hello human, I'm @whedon. I'm here to help you with some common editorial tasks. @sckott it looks like you're currently assigned as the reviewer for this paper 🎉.

⭐️ Important ⭐️

If you haven't already, you should seriously consider unsubscribing from GitHub notifications for this (https://github.com/openjournals/joss-reviews) repository. As as 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
@sckott

This comment has been minimized.

Show comment
Hide comment
@sckott

sckott Nov 28, 2017

Member

Nice work @vpnagraj et al. I have a few comments, with linked issues in your GH repo as applicable

  • Two of the references in the paper.md are missing DOIs (and the papers do have DOIs) - databio/simpleCache#27
  • Community guidelines: could be more on this front - databio/simpleCache#28
  • Tests: tests are present, but could be improved - databio/simpleCache#29
  • I'm not sure if this was intended, but the package level manual text at the top of the R/simpleCache.R file is wrapped into the resulting man file simpleCache.Rd. is this intended? Perhaps if you want a separate pkg level manual file, use @name simpleCache-package (I'd recommend that to have package level docs as needed)
  • Package docs: some thoughts at databio/simpleCache#30
  • Pkg makes extensive use of options in functions. Users can set options outside of the functions in the pkg. I didn't see any docs on setting options via options outside of fxns. Do you recommend users do that or not do that? Curious also why you went with options and not env vars (not leaning one way or other, just curious)?
Member

sckott commented Nov 28, 2017

Nice work @vpnagraj et al. I have a few comments, with linked issues in your GH repo as applicable

  • Two of the references in the paper.md are missing DOIs (and the papers do have DOIs) - databio/simpleCache#27
  • Community guidelines: could be more on this front - databio/simpleCache#28
  • Tests: tests are present, but could be improved - databio/simpleCache#29
  • I'm not sure if this was intended, but the package level manual text at the top of the R/simpleCache.R file is wrapped into the resulting man file simpleCache.Rd. is this intended? Perhaps if you want a separate pkg level manual file, use @name simpleCache-package (I'd recommend that to have package level docs as needed)
  • Package docs: some thoughts at databio/simpleCache#30
  • Pkg makes extensive use of options in functions. Users can set options outside of the functions in the pkg. I didn't see any docs on setting options via options outside of fxns. Do you recommend users do that or not do that? Curious also why you went with options and not env vars (not leaning one way or other, just curious)?
@leeper

This comment has been minimized.

Show comment
Hide comment
@leeper

leeper Nov 29, 2017

Member

Thanks for the great review, @sckott! Much appreciated.

@vpnagraj Please try to respond to Scott's points and the specific issues he's raised.

Member

leeper commented Nov 29, 2017

Thanks for the great review, @sckott! Much appreciated.

@vpnagraj Please try to respond to Scott's points and the specific issues he's raised.

@nsheff

This comment has been minimized.

Show comment
Hide comment
@nsheff

nsheff Nov 29, 2017

Thanks for the review, @sckott and @leeper. We will look into it and respond to these issues shortly!

nsheff commented Nov 29, 2017

Thanks for the review, @sckott and @leeper. We will look into it and respond to these issues shortly!

@leeper

This comment has been minimized.

Show comment
Hide comment
@leeper

leeper Dec 18, 2017

Member

@nsheff Just checking in - how are revisions progressing?

Member

leeper commented Dec 18, 2017

@nsheff Just checking in - how are revisions progressing?

@nsheff

This comment has been minimized.

Show comment
Hide comment
@nsheff

nsheff Dec 18, 2017

Hi @leeper; almost done, we'll have a new release for you shortly.

nsheff commented Dec 18, 2017

Hi @leeper; almost done, we'll have a new release for you shortly.

@nsheff

This comment has been minimized.

Show comment
Hide comment
@nsheff

nsheff Dec 20, 2017

Hi @leeper and @sckott,

Thanks for the feedback. We've now released version 0.4, which we think addresses all your comments. Thanks for the review!

To respond to one point here:

Pkg makes extensive use of options in functions. Users can set options outside of the functions in the pkg. I didn't see any docs on setting options via options outside of fxns. Do you recommend users do that or not do that? Curious also why you went with options and not env vars (not leaning one way or other, just curious)?

We recommend users use the functions to set the options, because these are easier to maintain and change. In a sense, the functions (which are documented) provide a contract with the user; we will honor those functions in the future. The actual option names, and the implementation of how they work, could change at some point, but the functions will remain the same. So, we'd rather just abstract away the actual implementation (whether it uses options, env vars, etc), so that we have room to adjust this as simpleCache advances, without breaking old code. We tried to make this clear with the documentation that explains these setter functions.

nsheff commented Dec 20, 2017

Hi @leeper and @sckott,

Thanks for the feedback. We've now released version 0.4, which we think addresses all your comments. Thanks for the review!

To respond to one point here:

Pkg makes extensive use of options in functions. Users can set options outside of the functions in the pkg. I didn't see any docs on setting options via options outside of fxns. Do you recommend users do that or not do that? Curious also why you went with options and not env vars (not leaning one way or other, just curious)?

We recommend users use the functions to set the options, because these are easier to maintain and change. In a sense, the functions (which are documented) provide a contract with the user; we will honor those functions in the future. The actual option names, and the implementation of how they work, could change at some point, but the functions will remain the same. So, we'd rather just abstract away the actual implementation (whether it uses options, env vars, etc), so that we have room to adjust this as simpleCache advances, without breaking old code. We tried to make this clear with the documentation that explains these setter functions.

@sckott

This comment has been minimized.

Show comment
Hide comment
@sckott

sckott Dec 20, 2017

Member

explanation of options makes sense

Member

sckott commented Dec 20, 2017

explanation of options makes sense

@leeper

This comment has been minimized.

Show comment
Hide comment
@leeper

leeper Dec 21, 2017

Member

It looks to me like all issues have been addressed. Is that right, @sckott?

@nsheff Can you produce an archive of the repository using, e.g., Zenodo, and let me know the DOI for it?

Member

leeper commented Dec 21, 2017

It looks to me like all issues have been addressed. Is that right, @sckott?

@nsheff Can you produce an archive of the repository using, e.g., Zenodo, and let me know the DOI for it?

@sckott

This comment has been minimized.

Show comment
Hide comment
@sckott

sckott Dec 21, 2017

Member

had another quick look. Yes, looks good.

Member

sckott commented Dec 21, 2017

had another quick look. Yes, looks good.

@nsheff

This comment has been minimized.

Show comment
Hide comment
@nsheff

nsheff commented Jan 9, 2018

DOI: 10.5281/zenodo.1140853

See: https://zenodo.org/record/1140853#.WlTOVvZG15w

@leeper

This comment has been minimized.

Show comment
Hide comment
@leeper

leeper Jan 9, 2018

Member

@whedon set archive as 10.5281/zenodo.1140853

Member

leeper commented Jan 9, 2018

@whedon set archive as 10.5281/zenodo.1140853

@leeper

This comment has been minimized.

Show comment
Hide comment
@leeper

leeper Jan 9, 2018

Member

@whedon set 10.5281/zenodo.1140853 as archive

Member

leeper commented Jan 9, 2018

@whedon set 10.5281/zenodo.1140853 as archive

@whedon

This comment has been minimized.

Show comment
Hide comment
@whedon

whedon Jan 9, 2018

Collaborator

OK. 10.5281/zenodo.1140853 is the archive.

Collaborator

whedon commented Jan 9, 2018

OK. 10.5281/zenodo.1140853 is the archive.

@leeper

This comment has been minimized.

Show comment
Hide comment
@leeper

leeper Jan 9, 2018

Member

@nsheff This looks great. You're all set! Congratulations!

Member

leeper commented Jan 9, 2018

@nsheff This looks great. You're all set! Congratulations!

@leeper

This comment has been minimized.

Show comment
Hide comment
@leeper

leeper Jan 9, 2018

Member

@arfon This one's for you.

Member

leeper commented Jan 9, 2018

@arfon This one's for you.

@arfon arfon added the accepted label Jan 11, 2018

@arfon

This comment has been minimized.

Show comment
Hide comment
@arfon

arfon Jan 11, 2018

Member

@sckott - many thanks for your review here and to @leeper for editing this submission

@vpnagraj @nsheff - your paper is now accepted into JOSS and your DOI is https://doi.org/10.21105/joss.00463 ⚡️ 🚀 💥

Member

arfon commented Jan 11, 2018

@sckott - many thanks for your review here and to @leeper for editing this submission

@vpnagraj @nsheff - your paper is now accepted into JOSS and your DOI is https://doi.org/10.21105/joss.00463 ⚡️ 🚀 💥

@arfon arfon closed this Jan 11, 2018

@whedon

This comment has been minimized.

Show comment
Hide comment
@whedon

whedon Jan 11, 2018

Collaborator

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

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

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

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 volunteering to review for us sometime in the future. You can add your name to the reviewer list here: http://joss.theoj.org/reviewer-signup.html

Collaborator

whedon commented Jan 11, 2018

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

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

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

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 volunteering to review for us sometime in the future. You can add your name to the reviewer list here: http://joss.theoj.org/reviewer-signup.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment