Closed whedon closed 3 years ago
Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @pzarabadip, @eihernan it looks like you're currently assigned to review this paper :tada:.
:warning: JOSS reduced service mode :warning:
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.
:star: Important :star:
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:
@whedon commands
For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:
@whedon generate pdf
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1002/cpe.3505 is OK
- 10.1016/j.commatsci.2012.10.028 is OK
- 10.1088/1361-648X/aa680e is OK
- 10.21105/joss.01944 is OK
- 10.1016/j.commatsci.2020.110086 is OK
MISSING DOIs
- None
INVALID DOIs
- None
Software report (experimental):
github.com/AlDanial/cloc v 1.88 T=37.05 s (1.9 files/s, 32345.6 lines/s)
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
XML 8 0 0 1191898
Python 27 629 936 2272
JSON 3 0 0 360
reStructuredText 10 74 106 147
Markdown 2 72 0 145
YAML 13 4 0 117
Jupyter Notebook 4 0 1436 102
TeX 1 3 0 78
DOS Batch 1 8 1 26
make 1 4 7 9
-------------------------------------------------------------------------------
SUM: 70 794 2486 1195154
-------------------------------------------------------------------------------
Statistical information for the repository '18472d3ed532dce818f85b45' was
gathered on 2021/04/14.
The following historical commit information, by author, was found:
Author Commits Insertions Deletions % of changes
Dan Davies 3 93 2 0.91
Daniel Davies 29 200 96 2.83
Sean Kavanagh 1 1 1 0.02
brlec 104 6685 3376 96.24
Below are the number of rows from each author that have survived and are still
intact in the current revision:
Author Rows Stability Age % in comments
Dan Davies 214 230.1 4.1 16.36
brlec 3623 54.2 2.9 7.09
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
π @pzarabadip and @eihernan - 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.
Both reviewers have checklists at the top of this thread 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.
Please read the first couple of comments in this issue carefully, so that you can accept the invitation from JOSS and be able to check items, and so that you don't get overwhelmed with notifications from other activities in JOSS.
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#3171
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 Whedon (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.
:wave: @pzarabadip, please update us on how your review is going (this is an automated reminder).
:wave: @eihernan, please update us on how your review is going (this is an automated reminder).
π @pzarabadip & @eihernan - How are your reviews going?
Hi @danielskatz. Sorry for late response. I just finished my review on the code.
I would like to thank authors for developing surfaxe
package which is nice and useful contribution for the community.
I carefully went through code, tutorials, tests, documentation, and paper and found from my point view that the code/paper is (almost) ready to be accepted for publication in JOSS
. I only have few suggestions that could be nice to be implemented before publication.
GitHub Actions
to improve the sustainability in future.OUTCAR
parser of parsevasp
package instead of the one provided by pymatgen
. Best regards, Pezhman
Thanks @pzarabadip - Do I understand correctly that these are suggestions, not changes that are required for you?
Or is the last one a requirement, tied to the fact that you didn't check the performance box in your review?
π @eihernan - Can you update us on the status of your review?
Hi @danielskatz - That's correct, those are suggestions. I missed to check the performance box. The last one can improve the performance for large files but nothing against current performance of the code.
Hi @danielskatz, I've been a bit behind on this. I'll update with progress shortly.
ok - it's great to hear from you that you're still workin on this, and we'll look forward to a further update
Hi @pzarabadip,
Thank you for the thorough review!
To answer the suggestions:
develop
branch and they will be merged with master
once JOSS review is complete. We have added linting tools that should catch unused imports going forward. master
branch, the tests are passing.parsevasp
: OUTCARs are parsed for two different purposes in surfaxe
- getting timing information from convergence calculations or getting the core level energies. We have tested parsevasp
vs pymatgen
and found that parsevasp
offers a 10x speedup for reading the timing information.
from parsevasp import outcar
from pymatgen.io.vasp.outputs import Outcar
import time
start = time.time() otc = Outcar('surfaxe/example_data/convergence/Y2Ti2S2O5/001/30_50_15/OUTCAR') times = otc.run_stats print(time.time() - start)
0.21026110649108887
start = time.time() otc = outcar.Outcar(file_path='surfaxe/example_data/convergence/Y2Ti2S2O5/001/30_50_15/OUTCAR') times = otc.get_run_stats() print(time.time() - start)
0.029942989349365234
However, the additional wait time for the user arising from `pymatgen` parser would be minimal as parsing of vasprun.xml takes far longer. `parsevasp` OUTCAR parser also cannot read in the core level energies (yet), so we are going to stick with `pymatgen` as the package for reading in OUTCARs. We will definitely look into using `parsevasp` in the future if parsing of core level energies is added.
Thanks again for the really helpful review! Katarina
Hi @danielskatz, here is an update of my review status.
I have gone through the docs, tutorials, and paper and find them to be clear in their purpose, well-written and easy to follow. The inclusion of a binder environment is appreciated and the notebooks are well documented to explain the limitations when testing on that platform. The tutorials illustrate the functionality of the package well.
I've been able to install and use the package on my personal computer following the installation instructions, but ran into an issue with the CLI not working when installing in a virtual environment. I want to make sure this was (my) user error before I check off the installation box.
Thank you to the authors for their work, I think this package goes a long way to making surface calculation workflows more robust and reproducible. A suggestion for now:
Best, Erick
Thanks @eihernan - re the installation problem, if it does continue, you might open an issue in https://github.com/SMTG-UCL/surfaxe and mention https://github.com/openjournals/joss-reviews/issues/3171
there so we can track it.
And I'll look forward to a response from the authors to your other suggestions.
Hi @eihernan,
Thank you for your review and kind words.
Thank you for raising the issue with CLI - we believe this was related to how yaml was imported in the CLI scripts. We have replaced yaml
with ruamel.yaml
which should work now even in blank virtual environments as ruamel.yaml
is a dependency of pymatgen
.
To respond to suggestions:
pymatgen
: Pymatgen
is fairly rigid with respect to how it can read input files, unfortunately this means the POTCARs need to be additionally set up to work with pymatgen
. In response to the confusion this may cause we have added the following line to README, with a link to the pymatgen
documentation that outlines how to complete the set up. "For the code to generate VASP input files along with the surface slabs, POTCARs need to be set up with pymatgen"
We also added a similar line to the Installation section of surfaxe docs.
Additionally, we modified the code to check that PMG_VASP_PSP_DIR
key exists in pymatgen.core.SETTINGS
before structures are written to file. If POTCARs are not set up, only the structures are written to file and the following warning is raised: POTCAR directory not set up in pymatgen, only POSCARs were generated
. We are open to suggestions on how this could be further improved.
pymatgen
ecosystem this may be somewhat confusing. We added a section in the Tutorials section of documentation on the develop
branch outlining how this should be used. All changes were made on the develop
branch if you would like to try re-installing the package in a virtual environment to see if the CLI problem is fixed now?
Thank you again, Katarina
Hi @brlec, I think the additions to the documentation are clear on what a user should do to fully generate VASP inputs. Since the functionality this package provides (creating appropriate file-structures and slabs) is maintained, and this is generally code-agnostic, I think this is a fine solution.
I installed the develop branch, and the CLI is working as expected in a virtual environment.
@danielskatz with the changes above and installation working as expected, I believe this meets the standards for inclusion in JOSS.
Thank you again to the developers.
Thanks @eihernan!
@brlec - at this point (or once you are ready if there are any further changes you want to make, such as in response to reviewer suggestions), can you:
I can then move forward with accepting the submission, which will include a proof read.
Hi @danielskatz - the JOSS release is tagged v1.2 and was archived on Zenodo with the correct metadata. The DOI isΒ 10.5281/zenodo.4776449
@whedon set v1.2 as version
OK. v1.2 is the version.
@whedon set 10.5281/zenodo.4776449 as archive
OK. 10.5281/zenodo.4776449 is the archive.
@whedon accept
Attempting dry run of processing paper acceptance...
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1002/cpe.3505 is OK
- 10.1016/j.commatsci.2012.10.028 is OK
- 10.1088/1361-648X/aa680e is OK
- 10.21105/joss.01944 is OK
- 10.1016/j.commatsci.2020.110086 is OK
MISSING DOIs
- None
INVALID DOIs
- None
:wave: @openjournals/joss-eics, this paper is ready to be accepted and published.
Check final proof :point_right: https://github.com/openjournals/joss-papers/pull/2328
If the paper PDF and Crossref deposit XML look good in https://github.com/openjournals/joss-papers/pull/2328, then you can now move forward with accepting the submission by compiling again with the flag deposit=true
e.g.
@whedon accept deposit=true
@brlec - I'm suggesting some small changes to the paper in https://github.com/SMTG-UCL/surfaxe/pull/11
Please either merge this or let me know what you disagree with.
@danielskatz we've merged all the suggestions
@whedon accept
Attempting dry run of processing paper acceptance...
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1002/cpe.3505 is OK
- 10.1016/j.commatsci.2012.10.028 is OK
- 10.1088/1361-648X/aa680e is OK
- 10.21105/joss.01944 is OK
- 10.1016/j.commatsci.2020.110086 is OK
MISSING DOIs
- None
INVALID DOIs
- None
:wave: @openjournals/joss-eics, this paper is ready to be accepted and published.
Check final proof :point_right: https://github.com/openjournals/joss-papers/pull/2329
If the paper PDF and Crossref deposit XML look good in https://github.com/openjournals/joss-papers/pull/2329, then you can now move forward with accepting the submission by compiling again with the flag deposit=true
e.g.
@whedon accept deposit=true
@whedon accept deposit=true
Doing it live! Attempting automated processing of paper acceptance...
π¦π¦π¦ π Tweet for this paper π π¦π¦π¦
π¨π¨π¨ THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! π¨π¨π¨
Here's what you must now do:
Party like you just published a paper! πππ¦ππ»π€
Any issues? Notify your editorial technical team...
Congratulations to @brlec (Katarina Brlec) and co-authors!!
And thanks to @pzarabadip and @eihernan for reviewing.
Everyone, this was a really smooth and easy process - thanks again!
:tada::tada::tada: Congratulations on your paper acceptance! :tada::tada::tada:
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.03171/status.svg)](https://doi.org/10.21105/joss.03171)
HTML:
<a style="border-width:0" href="https://doi.org/10.21105/joss.03171">
<img src="https://joss.theoj.org/papers/10.21105/joss.03171/status.svg" alt="DOI badge" >
</a>
reStructuredText:
.. image:: https://joss.theoj.org/papers/10.21105/joss.03171/status.svg
:target: https://doi.org/10.21105/joss.03171
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: @brlec (Katarina Brlec) Repository: https://github.com/SMTG-UCL/surfaxe Version: v1.2 Editor: @danielskatz Reviewer: @pzarabadip, @eihernan Archive: 10.5281/zenodo.4776449
:warning: JOSS reduced service mode :warning:
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
@pzarabadip & @eihernan, 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 @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 β¨
Review checklist for @pzarabadip
Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
Review checklist for @eihernan
Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper