-
-
Notifications
You must be signed in to change notification settings - Fork 38
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]: PyAstroPol : A Python package for the instrumental polarization analysis of the astronomical optics. #2693
Comments
Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @aquilesC, @caldarolamartin, @mwcraig it looks like you're currently assigned to review this paper 🎉. Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post. ⭐ 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:
For a list of things I can do to help you, just type:
For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:
|
|
Hi. I cannot modify the check list and the link to accept is expired. @pibion could you please give me a hand to solve this? Thanks |
Hi again. I've tried to tick the boxes with out success again. I have not accepted the review formally and the the link to do so (point 2 at the top) is not working. I believe this is the reason I cannot start with the review list check. @pibion, could you please take another look? |
Hi, I also cannot check the boxes.... |
@caldarolamartin, @mwcraig are you signed in to github? You should only need to (1) subscribe to the issue and (2) be signed in to edit the checkboxes. @arfon is that correct? |
@whedon re-invite @caldarolamartin as reviewer |
OK, the reviewer has been re-invited. @caldarolamartin please accept the invite by clicking this link: https://github.com/openjournals/joss-reviews/invitations |
Yes! now it works. Thanks! |
@mwcraig - it looks like you need to accept the invite to the the repository here https://github.com/openjournals/joss-reviews/invitations before you can click the checkboxes. @caldarolamartin - I've re-invited you to the repository - please accept the invite at https://github.com/openjournals/joss-reviews/invitations . |
Thanks @arfon , shoulda checked the whedon docs :/ |
Hi! I've just posted an issue with my review comments. |
Hi, I have replied to the comment. |
@caldarolamartin just wanted to make sure you saw this update from @hemanthpruthvi . |
@hemanthpruthvi, I think the idea of an environment file is a good one since the dependencies are somewhat sensitive. @caldarolamartin , I've always used conda environment files for this. Do you have any other recommendations? |
Hi @pibion, I've just closed the issue I opened for my review comments. Regarding the dependencies, I've also only used conda environment files, but I know virtualenv can do the same job. |
@pibion and @hemanthpruthvi , I am in the middle of the review. I strongly suggest, as @caldarolamartin points out, to create requirement files and a setup file. This will make life much easier for other users. Sorry for the self-promotion, I've written a guide on setup files here, and a very short introduction to virtual environments here that can be used as a starting point. Even though conda environments are very handy, they are particularly well suited for isolating complete work environments. I am not completely convinced conda environment files are meant to be distributed to a wider audience unless there are stringent needs (and this is not the case for PyAstroPol that relies on widely available libraries). I believe that a conda environment.yml file may create conflicts (conda environments are not particularly flexible). I would favor a requirements.txt file that makes explicit required (minimum) versions. |
I have reviewed the paper. I have noted a lot of comments that can be used by the author to improve the quality of the code and the paper but that do not impact directly the decision of whether the program is ready to be published. However, there is a (short) list of issues at the bottom of this message that must be addressed in order to make the work, in my opinion, ready to be published. The PaperThe paper stresses too much the limitations and too little the features. The first mentioned feature says:
Even the features are handicapped in the description of the software instead of focusing on the strengths. Of course, this is a choice of the authors, but I do think that the impact can be related to how one decides to present the work. Something that I have missed from the paper is how the program relates to other existing packages (if any). It can be that this is the first package addressing polarization, but the author also mentions comparing to Zeemax as the ground truth. I would replace several of the stated limitations to expand on a discussion about how this program fits in the community. WritingThe writing can be improved. There are several sentences of the form
Instead of
Or
Instead of
The CodeInstallationThe readme file includes a list of modules that are used, such as Installation instructions must be improved. A novice user will not be able to go through them. This can be quickly solved by: adding a DocumentationThe documentation is provided as a sphinx project, but sphinx is not listed in the requirements, therefore it can't be built by a user. Even though the documentation is on-pair right now with the code, since it has no visible continuous integration tools to keep the documentation always up to date, I would suggest either leaving the Note: The readme points towards a html file in the docs folder which, on Github, renders as the source code and not as a website. This makes it very hard to explore the documentation online and/or offline, especially when relying on sphinx-autodoc (the documentation is built from the source code of the program and therefore is not explicitly written in the docs folder). The index page of the documentation has very little information on how to get started. It is customary to include some general information, similar to the readme file, and link to specific points for the reader to be able to crack into the program. The code itself is very well documented. Every method and class I have checked had appropriate docstrings, so compliments to the author for taking the time to do such a thorough work. That really pays off for anybody trying to learn from the code and, potentially, contribute to it. Quality of the CodeThe program performs the tasks that it needs to perform. However, inspection of the code leaves several rooms of improvement that relate to standards (but not requirements) of how Python programmers work. For example, using Another topic is the non-adherence to PEP8. Again, these are guidelines, but that can ensure the long-life of a project by lowering the barrier to future contributors. I believe all methods use lowerCamelCase, but attributes of classes don't follow a regular pattern. For example, in coating.py there is ExamplesThe examples are a great starting place. I think they are the best addition to the code since they very quickly allow a new user to get the gist of the program and start adding small modifications to it. However, all the examples run into a
Materials Licenses (discussion)The code re-distributes material properties as csv files under an MIT license. Many of this materials are taken from PhysRevB which is not necessarily compatible with the chosen license. I am not 100% sure whether there is a license incompatibility or whether people is free to redistribute data without consent. Any advice from @pibion @caldarolamartin or @mwcraig ? ConclusionsThe paper and the code are ready to be published provided that the author performs the following:
|
@aquilesC Thank you very much for the thorough review and the valuable comments, I am working on addressing them. Meanwhile, I want to quickly address the issue regarding the Material Licenses. If I understand correctly, there are two issues.
For issue 1 : For issue 2 :
|
@hemanthpruthvi I have seen the license of refractiveindex.info, but I am not sure whether the author is actually entitled to re-distribute the data under a CC0 license. It would, for example, eliminate the citation to the original work with the real measurements. The sources of the website are papers not published under open access and I haven't seen information on APS regarding the distribution of datasets. I know, for example, that Comsol distributes some material properties but more recent measurements can't always be built-into the program, therefore they point you in the direction of how to get the dataset. In any case, this is a out of my depth regarding my understanding of copyright. I think the polite (and perhaps correct) thing to do is to add, in the materials folder, the citation of where the indexes come from (not the website, but the original work) since this is the best way of having a reproducible workflow in the future. You could add a Readme file directly in that folder. |
@aquilesC I understand and I agree. Accordingly, I have added a Readme file in the materials folder that refers to original sources. |
@whedon generate pdf |
OK. 10.5281/zenodo.4285762 is the archive. |
@whedon accept |
|
|
👋 @openjournals/joss-eics, this paper is ready to be accepted and published. Check final proof 👉 openjournals/joss-papers#1933 If the paper PDF and Crossref deposit XML look good in openjournals/joss-papers#1933, then you can now move forward with accepting the submission by compiling again with the flag
|
@whedon accept deposit=true |
I'm sorry @pibion, I'm afraid I can't do that. That's something only editor-in-chiefs are allowed to do. |
@hemanthpruthvi - I made a few formatting fixes in this PR (mostly related to citations): hemanthpruthvi/PyAstroPol#2 Once you've merged this, I will go ahead and publish. |
@arfon Done. |
@whedon accept |
|
|
👋 @openjournals/joss-eics, this paper is ready to be accepted and published. Check final proof 👉 openjournals/joss-papers#1935 If the paper PDF and Crossref deposit XML look good in openjournals/joss-papers#1935, then you can now move forward with accepting the submission by compiling again with the flag
|
@whedon accept deposit=true |
|
🐦🐦🐦 👉 Tweet for this paper 👈 🐦🐦🐦 |
🚨🚨🚨 THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! 🚨🚨🚨 Here's what you must now do:
Any issues? Notify your editorial technical team... |
Congrats @hemanthpruthvi on your article's publication in JOSS! Many thanks to @aquilesC, @caldarolamartin, and @mwcraig for reviewing this, and @pibion for editing. |
🎉🎉🎉 Congratulations on your paper acceptance! 🎉🎉🎉 If you would like to include a link to your paper from your README use the following code snippets:
This is how it will look in your documentation: 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:
|
Submitting author: @hemanthpruthvi (Hemanth Pruthvi)
Repository: https://github.com/hemanthpruthvi/PyAstroPol
Version: v0.1.0
Editor: @pibion
Reviewer: @aquilesC, @caldarolamartin, @mwcraig
Archive: 10.5281/zenodo.4285762
Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post.
Status
Status badge code:
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
@aquilesC & @caldarolamartin & @mwcraig, please carry out your review in this issue by updating the checklist below. If you cannot edit the checklist please:
The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @pibion 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 ✨
Review checklist for @aquilesC
Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
Review checklist for @caldarolamartin
Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
Review checklist for @mwcraig
Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
The text was updated successfully, but these errors were encountered: