Skip to content
Please note that GitHub no longer supports your web browser.

We recommend upgrading to the latest Google Chrome or Firefox.

Learn more
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]: Hypothesis: A new approach to property-based testing #1891

Open
whedon opened this issue Nov 14, 2019 · 26 comments
Assignees
Labels

Comments

@whedon
Copy link
Collaborator

@whedon whedon commented Nov 14, 2019

Submitting author: @DRMacIver (David MacIver)
Repository: https://github.com/HypothesisWorks/hypothesis/
Version: 4.44.2
Editor: @danielskatz
Reviewer: @luizirber, @djmitche
Archive: Pending

Status

status

Status badge code:

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

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

@luizirber & @djmitche, 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 @danielskatz know.

Please try and complete your review in the next two weeks

Review checklist for @luizirber

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 (@DRMacIver) 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 @djmitche

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 (@DRMacIver) 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

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Nov 14, 2019

Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @luizirber, @djmitche it looks like you're currently assigned to review 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 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

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Nov 14, 2019

Attempting PDF compilation. Reticulating splines etc...
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Nov 14, 2019

@danielskatz

This comment has been minimized.

Copy link

@danielskatz danielskatz commented Nov 14, 2019

👋 @luizirber and @djmitche - as I think you know, we'll carry out the review here - please carefully read the comments above, and get started when you can - check off items in your checklist, and open issues in the source repo, referring to this issue, when you see things that need to be changed by the authors.

And again, thanks very much for your quick and positive response to the review request.

@danielskatz

This comment has been minimized.

Copy link

@danielskatz danielskatz commented Nov 14, 2019

If you have any issues or concerns, please let me know here

@djmitche

This comment has been minimized.

Copy link
Collaborator

@djmitche djmitche commented Nov 17, 2019

@danielskatz I think I see an error in the paper itself ("exception" instead of "extension"), but I'm not sure where to find the source for that paper. Pointers?

@danielskatz

This comment has been minimized.

Copy link

@danielskatz danielskatz commented Nov 17, 2019

see paper.md and paper.bib in the source repo (root level)

@djmitche

This comment has been minimized.

Copy link
Collaborator

@djmitche djmitche commented Nov 17, 2019

Thanks! Aside from that (minor) issue I don't see any problems here.

@danielskatz

This comment has been minimized.

Copy link

@danielskatz danielskatz commented Nov 17, 2019

Thanks @djmitche!

@luizirber

This comment has been minimized.

Copy link
Collaborator

@luizirber luizirber commented Nov 18, 2019

Only one nitpick: There is nothing wrong with the LICENSE.txt file per se, but if you put the content of the MPL 2.0 license linked it will show up as MPL 2.0 in the repository landing page (instead of View license, like it is now).

All my checkboxes are checked.

And I must say this was the easiest review I ever did, but it was somewhat expected because I tend to look for hypothesis dev practices as reference for my projects. The paper is also well written and does a great intro to property testing for scientific projects. Kudos @DRMacIver and @Zac-HD!

@Zac-HD

This comment has been minimized.

Copy link

@Zac-HD Zac-HD commented Nov 18, 2019

Thanks @luizirber 🎉

For the licence, I think this is mostly an effect of Github not having fantastic support for monorepos... hypothesis-python/LICENSE.txt is the file that gets packaged up, and it's the standard MPL2.0 text. We also use the setuptools license classifier, and have a copyright+license header in every .py file 😄

@Zac-HD

This comment has been minimized.

Copy link

@Zac-HD Zac-HD commented Nov 19, 2019

@danielskatz - I think we're done, all boxes checked and we've merged the suggested wording change 😁

@danielskatz

This comment has been minimized.

Copy link

@danielskatz danielskatz commented Nov 19, 2019

Thanks all - I'll continue the process, first checking the license issue, then proof-reading and addressing the final steps

@danielskatz

This comment has been minimized.

Copy link

@danielskatz danielskatz commented Nov 19, 2019

👋 @arfon - Can you take a look at the license discussion here and the files in the repo and confirm that this is ok, or if not, suggest what changes need to be made?

@danielskatz

This comment has been minimized.

Copy link

@danielskatz danielskatz commented Nov 19, 2019

@whedon generate pdf

@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Nov 19, 2019

Attempting PDF compilation. Reticulating splines etc...
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Nov 19, 2019

@danielskatz

This comment has been minimized.

Copy link

@danielskatz danielskatz commented Nov 19, 2019

👋 @arfon - Also, is there any issue with the author list?

@arfon

This comment has been minimized.

Copy link
Member

@arfon arfon commented Nov 19, 2019

👋 @arfon - Also, is there any issue with the author list?

It's unconventional, but I think it's probably OK.

👋 @arfon - Can you take a look at the license discussion here and the files in the repo and confirm that this is ok, or if not, suggest what changes need to be made?

I also think this is OK.

@danielskatz

This comment has been minimized.

Copy link

@danielskatz danielskatz commented Nov 19, 2019

@DRMacIver & @Zac-HD - regarding the wording in the paper:

  • "lifts a major difficulty" is an odd phrase to me - could we uses resolves or addresses instead of lifts?

Also, please see HypothesisWorks/hypothesis#2212

@danielskatz

This comment has been minimized.

Copy link

@danielskatz danielskatz commented Nov 19, 2019

@whedon check references

@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Nov 19, 2019

Attempting to check references...
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Nov 19, 2019


OK DOIs

- 10.1145/351240.351266 is OK
- 10.1145/1159789.1159792 is OK
- 10.1109/32.988498 is OK
- 10.1145/2254064.2254104 is OK
- 10.1051/0004-6361/201322068 is OK
- 10.3847/1538-3881/aabc4f is OK
- 10.1109/MCSE.2011.37 is OK
- 10.1145/3092703.3092711 is OK
- 10.1145/3092703 is OK

MISSING DOIs

- None

INVALID DOIs

- None
@danielskatz

This comment has been minimized.

Copy link

@danielskatz danielskatz commented Nov 20, 2019

@whedon generate pdf

@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Nov 20, 2019

Attempting PDF compilation. Reticulating splines etc...
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Nov 20, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants
You can’t perform that action at this time.