Skip to content
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]: Eixport, an R Package to export emissions to atmospheric models #607

Closed
18 tasks done
whedon opened this issue Mar 6, 2018 · 25 comments
Closed
18 tasks done
Assignees
Labels
accepted published Papers published in JOSS recommend-accept Papers recommended for acceptance in JOSS. review rOpenSci Submissions associated with rOpenSci

Comments

@whedon
Copy link

whedon commented Mar 6, 2018

Submitting author: @ibarraespinosa (Sergio Ibarra)
Repository: https://github.com/atmoschem/eixport
Version: v0.3.0
Editor: @leeper
Reviewer: @jhollist
Archive: 10.5281/zenodo.1228955

Status

status

Status badge code:

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

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

@jhollist, 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.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 (v0.3.0)?
  • Authorship: Has the submitting author (@ibarraespinosa) 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
Copy link
Author

whedon commented Mar 6, 2018

Hello human, I'm @whedon. I'm here to help you with some common editorial tasks. @jhollist 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 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

@whedon
Copy link
Author

whedon commented Mar 6, 2018

Attempting PDF compilation. Reticulating splines etc...

@whedon
Copy link
Author

whedon commented Mar 6, 2018

@ibarraespinosa
Copy link

Hi @leeper, thank you for the review. Could you please help me with some doubts regarding the unchecked boxes?:

Authorship: Has the submitting author (@ibarraespinosa) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?

I did not understand. Should I include/exclude authors?

Functionality: Have the functional claims of the software been confirmed?

The example on the paper and on the manual of eixport shows how to create inputs for WRFchem. In fact, I'm finishing a paper about air pollution modelling using WRF/Chem (Ibarra et al 2018) whose inputs were created with eixport, as show Fig. 1 shows:

fig1

The following figure (Fig 2) shows the results of the WRFChem air pollution simulation for the first 24 hours of CO (ppm). The results are set for a grid of 1 km of grid spacing.

cowrf

Ibarra-Espinosa S., Ynoue R., Giannotti M., Andrade MF., Shuch D., Vara Vela A., Gavidia-Calderon M. and Freitas E. (2018). Can we explain Ozone formation in a tropical mega-city? A multiple evaluation with dynamic emissions inventories from VEIN and air quality modeling with WRF-Chem. Paper in preparation for Science of Total Environment.

Automated tests: Are there automated tests or manual steps described so that the function of the software can be verified?

All the functions were tested before CRAN submissions. The tests are made in the examples of each R functions. As some of the examples took more than 5 seconds, I had to add \dontrun in r documentation, however, all checks passed and eixport it is on CRAN now. Moreover, eixport includes tests with codecov, however, as the eixport outputs are mostly heavy file files created at the disk, it is difficult to add more tests. For instance, the size of the file shown on Fig 1 (of this comment) has a size of 1.9 Gb. However, if you prefer @leeper, i can send you the data for creating this file using eixport, with a script which follows the example shown on paper.

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

We have adhered to the code of conduct of JOSS, and we added a contributing section at README.Rmd file in this commit.

References: Do all archival references that should have a DOI list one (e.g., papers, datasets, software)?

After submissions to JOSS, we included a Zenodo DOI for eixport: 10.5281/zenodo.1186672.

Many thanks,
Regards, Sergio

@jhollist
Copy link

jhollist commented Mar 26, 2018 via email

@ibarraespinosa
Copy link

hi @jhollist, thank you :)

@jhollist
Copy link

Hollister review for JOSS - Eixport R package

Issue with checklist of edits

Review notes

General Comments

The R package, eixport, provides tools for importing and exporting files required for several emissions models. It makes conversions as needed to allow greater integration between the variety of models. Existing tools exist in lower level languages (e.g. Fortran or C) but this is the first implementation in R.

When issues in this review are addressed this will be a very nice contribution to JOSS. As the authors address my (mostly minor) concerns they should pay close attention to the documentation. There are a few places where it is thin and could be made more complete. I have made some suggestions in a Pull Request but in addition, the README should also be edited carefully. Also, I have listed the most pressing issues in Issue #22 on the source repository

Misc

  • Depends set at >= 2.10 but imports are >= 3.3.0 and 3.0.0. That being said I don't think this issue has been solved in the larger community. See this discussion for some details. Having your dependency set to 2.10 implies that it works on that version which I am not sure is the case. Were this my package I'd up to 3.3.0 which is not overly restrictive for most users. Will leave this decision to the authors though.
  • Vigentte that shows the typical use case and workflow might be a nice addition. Not required for acceptance, but would be an enhacment for the future. Captured in Issue #22.

General Checks

  • License is MIT, but full plain text file includes only copyright year/holder. This is standard for R packages so I checked off on it. Not sure if JOSS has additional requirements.
  • Two authors on package, three on paper. What were contributions from Edmilson Dias de Freitas? It does appear that this work was inspired by the foundational work by Freitas. Not sure what JOSS requires for authorship when differences between paper and software...

Functionality

  • example in emis_opt threw an error

    • Error in ncdf4::ncvar_def(name = variaveis[i], units = "", dim = list(west_east, :
    • Passed a var name that is NOT a string of characters!
  • example in wrf_plot gives a warning and plot appears to have no data

    • Warning message:
    • In wrf_plot(files[1], "E_CO") : Max value = Min Value!

Documentation

  • Installation instructions included on README, but probably better to have it in a separate section. See https://github.com/ropensci/lawn for an example.
  • Would like to see test beefed up a bit. Currently has ~5% coverage an only covers the to_rline function. Also, given that many of the examples are wrapped in \dontrun{} that means the standard testing done by CRAN won't find any potential problems. Thus, a more complete set of tests are important.
  • Code of conduct and bug reports included in the DESCRIPTION. I would like to see a CONTRIBUTING added that lays out guidelines for potential contributions. A good example is https://github.com/ropensci/tidyhydat/blob/master/CONTRIBUTING.md Just need something to direct potential contributors.

Software paper

  • I do think this is a valuable contribution and solves a problem, but as written the justification needs to be strengthened. Currently the authors refer to the fact that existing tools are only available in lower level languages such as Fortran or C. Need a bit more justification included in the paper as to why an implementation in R is desirable. I agree that it is, just need to see it described in the paper.
  • Several references are missing DOIs. For instance Freitas et al 2005 in Atmospheric Environment has a DOI of: 10.1016/j.atmosenv.2005.07.017 Include a DOI for all references that have them.

Detailed edits

  • I have suggested a number of edits in PR on the eixport repository.
  • Line 6 in Lights.R needs more detail (or less, maybe just "A matrix" would work)
  • Line 5 in to_brams_spm.R not sure what is meant by a function included for hourly profiles.
  • Line 8 and 10 in to_brams_spm.R, What is meant by "polygon grid class 'sf'" Is this an sf object with MULTIPOLYGON geometry?
  • Line 19 in to_brams_spm.R list it as SPM BRAMS, it is listed as BRAMS-SPM. Be consistent how you refer to the models.
  • Line 1 in wrf_profile.R is missing something.

@leeper
Copy link
Member

leeper commented Mar 28, 2018

@jhollist Great review. Thanks for your very careful examination of the package!!

@ibarraespinosa Please take a look through the review and try to respond to all points raised here and in atmoschem/eixport#22.

@ibarraespinosa
Copy link

ibarraespinosa commented Mar 28, 2018 via email

@jhollist
Copy link

@ibarraespinosa Nice job on the tests! 89% is pretty good coverage and better than I have for most of my pacakges!

@leeper I give 👍 👍 and it looks good to go.

@ibarraespinosa
Copy link

Thank you @jhollist. Suggesting codecov of code was very clever. It was difficult but it allowed me to improve the code.

@leeper
Copy link
Member

leeper commented Apr 25, 2018

Thank you @jhollist!!

@ibarraespinosa We're nearly there. Two final things:

  • Please add DOIs for all references that you can in your bibliography. While R packages do not have DOIs, most of the journal articles you are citing should have them.
  • Please update your Zenodo archive with the latest version of the package and let me know its DOI.

@ibarraespinosa
Copy link

Hi @leeper the updated version of the manuscript has all the respective doi.
Also, the new Zenodo DOI is 10.5281/zenodo.1228955.

Many thanks!

@leeper
Copy link
Member

leeper commented Apr 25, 2018

@whedon set 10.5281/zenodo.1228955 as archive

@whedon
Copy link
Author

whedon commented Apr 25, 2018

OK. 10.5281/zenodo.1228955 is the archive.

@leeper
Copy link
Member

leeper commented Apr 25, 2018

@whedon generate pdf

@whedon
Copy link
Author

whedon commented Apr 25, 2018

Attempting PDF compilation. Reticulating splines etc...

@whedon
Copy link
Author

whedon commented Apr 25, 2018

@leeper
Copy link
Member

leeper commented Apr 25, 2018

Great. Please merge this PR and then your paper will be accepted at JOSS! Congratulations!

@leeper
Copy link
Member

leeper commented Apr 25, 2018

@whedon generate pdf

@whedon
Copy link
Author

whedon commented Apr 25, 2018

Attempting PDF compilation. Reticulating splines etc...

@whedon
Copy link
Author

whedon commented Apr 25, 2018

@leeper
Copy link
Member

leeper commented Apr 25, 2018

@arfon Over to you.

@arfon arfon added the accepted label Apr 25, 2018
@arfon
Copy link
Member

arfon commented Apr 25, 2018

@jhollist - many thanks for your review and to @leeper for editing this one ✨

@ibarraespinosa - your paper is now accepted into JOSS and your DOI is https://doi.org/10.21105/joss.00607 ⚡ 🚀 💥

@arfon arfon closed this as completed Apr 25, 2018
@whedon
Copy link
Author

whedon commented Apr 25, 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.00607/status.svg)](https://doi.org/10.21105/joss.00607)

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 doing either one (or both) of the the following:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
accepted published Papers published in JOSS recommend-accept Papers recommended for acceptance in JOSS. review rOpenSci Submissions associated with rOpenSci
Projects
None yet
Development

No branches or pull requests

5 participants