openjournals / joss-reviews

Reviews for the Journal of Open Source Software
Creative Commons Zero v1.0 Universal
707 stars 37 forks source link

[REVIEW]: AgriFoodPy: a package for modelling food systems #6305

Closed editorialbot closed 3 months ago

editorialbot commented 7 months ago

Submitting author: !--author-handle-->@jucordero<!--end-author-handle-- (Juan P. Cordero) Repository: https://github.com/FixOurFood/AgriFoodPy/ Branch with paper.md (empty if default branch): joss-paper Version: v0.1.2 Editor: !--editor-->@crvernon<!--end-editor-- Reviewers: @kanishkan91, @jsun Archive: 10.5281/zenodo.11236802

Status

status

Status badge code:

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

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

@kanishkan91 & @jsun, 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 @crvernon 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

πŸ“ Checklist for @jsun

πŸ“ Checklist for @kanishkan91

editorialbot commented 7 months ago

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 commented 7 months ago
Software report:

github.com/AlDanial/cloc v 1.88  T=0.02 s (808.7 files/s, 74696.9 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
XML                              1              0              0            493
Python                          13            171            289            392
Markdown                         2             43              0            202
TeX                              1              9              0            116
YAML                             2              3              4             33
-------------------------------------------------------------------------------
SUM:                            19            226            293           1236
-------------------------------------------------------------------------------

gitinspector failed to run statistical information for the repository
editorialbot commented 7 months ago

Wordcount for paper.md is 1179

editorialbot commented 7 months ago

Failed to discover a valid open source license

editorialbot commented 7 months ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1126/science.aaq0216 is OK
- 10.5334/jors.148 is OK
- 10.5285/d6f8c045-521b-476e-b0d6-b3b97715c138 is OK
- 10.5281/zenodo.3946761 is OK
- 10.5194/gmd-14-3007-2021 is OK
- 10.1016/j.envsoft.2014.07.009 is OK

MISSING DOIs

- None

INVALID DOIs

- None
editorialbot commented 7 months ago

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

crvernon commented 7 months ago

πŸ‘‹ @jucordero , @kanishkan91 , and @jsun - This is the review thread for the paper. All of our communications will happen here from now on.

Please read the "Reviewer instructions & questions" in the first comment above.

Both reviewers have checklists at the top of this thread (in that first comment) 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.

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, the reviewers are encouraged to submit issues and pull requests on the software repository. When doing so, please mention https://github.com/openjournals/joss-reviews/issues/6305 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 the review process to be completed within about 4-6 weeks but please make a start well ahead of this as JOSS reviews are by their nature iterative and any early feedback you may be able to provide to the author will be very helpful in meeting this schedule.

jsun commented 7 months ago

Review checklist for @jsun

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

jsun commented 6 months ago

Hi, @jucordero, @crvernon, I have not yet finished checking all the items; but I have written below with my comments on the parts I have checked so far.

Documentation

Software paper

Additional comments

jucordero commented 6 months ago

@jsun thanks for the comments. I'll provide a more comprehensive response soon. @crvernon Regarding the last bullet point: In general, is it okay to push significant changes to the main branch while the review is in process? We have been working on the features mentioned as the future work but haven't merged from my fork yet.

crvernon commented 6 months ago

@jucordero yes, no problem at all to update the main branch during review as long as those changes have been made known to reviewers in this thread. These changes should also not interfere with any current features that the reviewers are currently reviewing. So you may want to check with them directly as well. Anytime you link to this thread in your pull requests or issues it will show up here so all can track progress.

crvernon commented 6 months ago

:wave: @jucordero , @kanishkan91 , and @jsun

Could you all provide a short few sentences/bullet points on how things are going with this review? Thanks and keep up the great work!

jucordero commented 5 months ago

Hi @crvernon

@jsun has made a few suggestions on the documentation and software paper which we have been addressing. Simultaneously we have been working on one of the main functionalities which was missing in the first release, but haven't discussed with the reviewers yet on whether it is fine to merge this right now.

I haven't heard from @kanishkan91

Happy Easter!

crvernon commented 5 months ago

Thanks @jucordero, Happy Easter as well! I'll touch base with @kanishkan91, I know he had some other things he had to prioritize but should be back in the thread here soon.

kanishkan91 commented 5 months ago

@crvernon @jucordero - My apologies for the delay. Will get this review done by this weekend.

crvernon commented 5 months ago

No problem @kanishkan91 and thank you!

kanishkan91 commented 5 months ago

@jucordero @crvernon - I just got done with most of my review. Apologies for the long delay! I opened several issues related to the same. I'm also summarizing below.

Summary- AgriFoodPy harmonizes data from the FAO and allows users to manipulate and run several models for several variables effectively. Anyone who is familiar with the idosyncracies of the FAO data would really appreciate this package. However, there are a few issues that I noted that I mention below (I have opened issues as well). After the same are addressed, I would be happy to recommend publication.

Issues

  1. Edits required to run the README examples- Some README examples did not work as expected. See here- https://github.com/FixOurFood/AgriFoodPy/issues/67. While some require some updates and more explicit installation instructions- https://github.com/FixOurFood/AgriFoodPy/issues/66. Finally, it seems some examples require explicit import of matplotlib and its usage- https://github.com/FixOurFood/AgriFoodPy/issues/68. I think these should be easy to fix overall, but would need to be fixed for new users.
  2. Reforestation example does not work- See the issue I opened for the same here- https://github.com/FixOurFood/AgriFoodPy/issues/70. This one also seems like a simple fix. Though I recommend it be fixed.
  3. Where are the docs/ Add explicit link to the docs- There are several very valuable classes and methods available in this package. However, there is no documentation available for the same (other than the README). I saw that the authors have generated docs via sphinx. Can the htmls generated by sphinx be recorded in the "About" section of this repo? Also, sphinx usually documents every class and method, but I could not find these. These should be made available or hosted on GitHub docs. https://github.com/FixOurFood/AgriFoodPy/issues/69
  4. Add link to examples- At first glance it seemed that there were no concrete examples available for this package (other than the README). However, that is not true. Authors have put together concrete examples here- https://github.com/FixOurFood/AgriFoodPy/tree/main/examples/modules. But there is no documenation for these . Can the authors add that and also link the same in the README. See this issue- https://github.com/FixOurFood/AgriFoodPy/issues/71
kanishkan91 commented 5 months ago

Review checklist for @kanishkan91

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

jucordero commented 5 months ago

@kanishkan91 Thanks for the review! I'll start working on the issues as soon as posible.

crvernon commented 5 months ago

πŸ‘‹ @jucordero, @kanishkan91, and @jsun - could you provide a short update to the progress of the review here please? Thanks and keep up the great work!

crvernon commented 4 months ago

πŸ‘‹ @jucordero, @kanishkan91, and @jsun - just a reminder...could you provide a short update to the progress of the review here please? Thanks and keep up the great work!

jsun commented 4 months ago

hi, I'm just waiting for a response to my previous comment, https://github.com/openjournals/joss-reviews/issues/6305#issuecomment-1968127290.

kanishkan91 commented 4 months ago

@crvernon Looks like @jucordero has started addressing my issues. Once those are done, I'l finish up my checklist

jucordero commented 4 months ago

Hi @crvernon, @jsun and @kanishkan91 Once again, thank you very much for your comments and suggestions. These have helped us improve the accessibility to the existing documentation, the examples and the quality of the experience for first users when landing on the package repository. Apologies for the delay of this response. It has been a few very busy weeks lately.

@jsun Documentation Documentation for the package in the form of an auto-API document already exists for the package. It is automatically generated and available in readthedocs. We have included links to it both in the README and the about section of the repository to make it more visible. These have been addressed in https://github.com/FixOurFood/AgriFoodPy/pull/75

@kanishkan91

There are still a few outstanding tasks which we haven't completed but are still working on.

As soon as we complete those tasks I'll ping you in this thread.

kanishkan91 commented 4 months ago

@jucordero On my version requirements, you can set this to >= whatever you have on your machine. Idea here is that a user should not install an older version of the dependency.

FYI @crvernon I have finished up my checklist. Assuming @jucordero addresses the above, this should be good to go.

crvernon commented 4 months ago

πŸ‘‹ @jucordero, @kanishkan91, and @jsun - how are we doing with this review? It look like you are close to the finish line! Could you give me a short update to what is left? Thanks!

jsun commented 4 months ago

I'll finish my review after checking the updated manuscript :)

jucordero commented 4 months ago

@editorialbot generate pdf

editorialbot commented 4 months ago

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

jucordero commented 4 months ago

@jsun I have updated the manuscript.

@kanishkan91 In PR#77 I have added version requirements to the modules to set the conda environment. Also took the opportunity to update deprecated GitHub actions which were causing issues with the unit tests.

jsun commented 4 months ago

@jucordero Thanks for considering my comments.

Hi, @crvernon , Ive just finished my review.

crvernon commented 4 months ago

@editorialbot check references

editorialbot commented 4 months ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1126/science.aaq0216 is OK
- 10.5334/jors.148 is OK
- 10.5285/d6f8c045-521b-476e-b0d6-b3b97715c138 is OK
- 10.5281/zenodo.3946761 is OK
- 10.5194/gmd-14-3007-2021 is OK
- 10.1016/j.envsoft.2014.07.009 is OK

MISSING DOIs

- No DOI given, and none found for title: FAO. FAOSTAT. License: CC BY-NC-SA 3.0 IGO. Extrac...
- No DOI given, and none found for title: United Nations, Department of Economic and Social ...
- No DOI given, and none found for title: Rasterio: geospatial raster I/O for Python program...

INVALID DOIs

- None
crvernon commented 4 months ago

@editorialbot generate pdf

editorialbot commented 4 months ago

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

crvernon commented 4 months ago

:wave: @jucordero - I am conducting my pass now and have a few comments that need to be addressed before moving forward:

In the paper:

Once you address these I'll provide further instruction on how we can move forward with getting this submission ready for acceptance. Thanks!

jucordero commented 4 months ago

Thanks for your comments, @crvernon.

I have made the following changes to the paper

jucordero commented 4 months ago

@editorialbot generate pdf

editorialbot commented 4 months ago

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

crvernon commented 4 months ago

@jucordero thank you! Concerning the following:

I have changed the reference to the FAOSTAT dataset to point to the latest published report, which does have a corresponding DOI. This is probably the correct way to cite the Food Balance Sheets anyways.

I still see the UN 2022 reference in the paper. Did you mean to change it out elsewhere as well?

jucordero commented 4 months ago

@crvernon My bad, I changed the FAOSTAT reference, but not the UN population one. Couldn't fin a DOI for that particular report, but there is a web portal (https://population.un.org/wpp/) where the document is linked. Should I include that one to the citation?

crvernon commented 4 months ago

@jucordero no problem. Yes, I think including that link is better than not having one at all if it matches the citation standards. Just let me know when it is done so we can move forward. Thanks!

jucordero commented 4 months ago

@crvernon Done! I have just added the url to the bib entry.

jucordero commented 4 months ago

@editorialbot generate pdf

editorialbot commented 4 months ago

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

crvernon commented 4 months ago

@editorialbot check references

editorialbot commented 4 months ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1126/science.aaq0216 is OK
- 10.5334/jors.148 is OK
- 10.4060/cc8088en is OK
- 10.5285/d6f8c045-521b-476e-b0d6-b3b97715c138 is OK
- 10.5281/zenodo.3946761 is OK
- 10.5194/gmd-14-3007-2021 is OK
- 10.1016/j.envsoft.2014.07.009 is OK

MISSING DOIs

- No DOI given, and none found for title: United Nations, Department of Economic and Social ...
- No DOI given, and none found for title: Rasterio: geospatial raster I/O for Python program...

INVALID DOIs

- None
crvernon commented 4 months ago

πŸ‘‹ @jucordero - we are almost there! Next is just setting up the archive for your new release.

We want to make sure the archival has the correct metadata that JOSS requires. This includes a title that matches the paper title and a correct author list.

So here is what we have left to do:

I can then move forward with accepting the submission.

jucordero commented 4 months ago

@crvernon I have just created Release v0.1.2 and its corresponding entry in Zenodo

DOI

crvernon commented 4 months ago

@editorialbot set v0.1.2 as version