openjournals / joss-reviews

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

[REVIEW]: One4All: An Open Source Portal to Validate and Share Microplastics Data and Beyond #6715

Closed editorialbot closed 6 days ago

editorialbot commented 2 months ago

Submitting author: !--author-handle-->@hsherrod2019<!--end-author-handle-- (Hannah Sherrod) Repository: https://github.com/Moore-Institute-4-Plastic-Pollution-Res/One4All Branch with paper.md (empty if default branch): Version: v2.0 Editor: !--editor-->@kanishkan91<!--end-editor-- Reviewers: @hahsan1, @stephpenn1 Archive: 10.5281/zenodo.12747059

Status

status

Status badge code:

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

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

@hahsan1 & @@stephpenn1 & @stephpenn1, 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 @kanishkan91 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 @hahsan1

📝 Checklist for @stephpenn1

editorialbot commented 2 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 2 months ago

Software report:

github.com/AlDanial/cloc v 1.90  T=0.09 s (839.2 files/s, 285174.5 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
JavaScript                       4           2099           1928           7019
HTML                            31           1143             93           4702
Markdown                         5            196              0           4695
R                                9            338            717           1787
CSS                              3             12             34            598
CSV                             13              0              0            570
TeX                              1             31              0            256
YAML                             6             20             21            234
XML                              3              0              0            110
Rmd                              2             65            107             58
SVG                              1              0              1             11
JSON                             1              0              0              1
-------------------------------------------------------------------------------
SUM:                            79           3904           2901          20041
-------------------------------------------------------------------------------

Commit count by author:

   131  hsherrod2019
    81  Win Cowger, PhD
     2  Hannah Sherrod
     1  nickleong20
editorialbot commented 2 months ago

Paper file info:

📄 Wordcount for paper.md is 2393

✅ The paper includes a Statement of need section

editorialbot commented 2 months ago

License info:

✅ License found: MIT License (Valid open source OSI approved license)

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

OK DOIs

- 10.3390/microplastics2010010 is OK
- 10.1039/D2VA00275B is OK
- 10.1371/journal.pbio.3000932 is OK
- 10.1029/2022CSJ000017 is OK
- 10.1021/acs.analchem.1c00123 is OK
- 10.1016/j.envres.2022.112734 is OK
- 10.1016/j.envpol.2023.122938 is OK
- 10.1186/s43591-022-00035-1 is OK
- 10.3389/fenvs.2022.912107 is OK
- 10.1126/science.1213847 is OK
- 10.1002/etc.4371 is OK
- 10.1016/j.envpol.2021.118275 is OK
- 10.18637/jss.v097.i10 is OK
- 10.21105/joss.05136 is OK
- 10.1177/0003702820930292 is OK

MISSING DOIs

- No DOI given, and none found for title: Policy Handbook Establishing a Standard Method of ...
- No DOI given, and none found for title: R: A Language and Environment for Statistical Comp...
- No DOI given, and none found for title: shiny: Web Application Framework for R
- No DOI given, and none found for title: dplyr: A Grammar of Data Manipulation
- No DOI given, and none found for title: digest: Create Compact Hash Digests of R Objects
- No DOI given, and none found for title: data.table: Extension of ‘data.frame‘
- No DOI given, and none found for title: ckanr: Client for the Comprehensive Knowledge Arch...
- No DOI given, and none found for title: openxlsx: Read, Write and Edit xlsx Files
- No DOI given, and none found for title: lexicon: Lexicon Data
- No DOI given, and none found for title: readr: Read Rectangular Text Data
- No DOI given, and none found for title: readxl: Read Excel Files
- No DOI given, and none found for title: tibble: Simple Data Frames
- No DOI given, and none found for title: aws.s3: AWS S3 Client Package
- No DOI given, and none found for title: rlang: Functions for Base Types and Core R and ’Ti...
- No DOI given, and none found for title: The jsonlite Package: A Practical and Consistent M...
- No DOI given, and none found for title: httr: Tools for Working with URLs and HTTP
- No DOI given, and none found for title: ChatGPT: Large language model

INVALID DOIs

- None
editorialbot commented 2 months ago

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

kanishkan91 commented 2 months ago

@hsherrod2019, @stephpenn1 and @hahsan1, 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.

For @stephpenn1 and @hahsan1 - 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/6715 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.

Thanks in advance and let me know if you have any questions!!

hsherrod2019 commented 2 months ago

@kanishkan91 , @stephpenn1 , @hahsan1 , thank you so much!

kanishkan91 commented 2 months ago

@hsherrod2019 A couple minor adjustments I will request as the review progresses-

  1. Your current word count is on the higher side. We usually recommend somewhere along ~1000 words for a JOSS publication. Looking at the paper, the "workflow overview" section is a bit too long. I would recommend you move most of this to the documentation, vignettes (if it does not exist there already). And maybe just limit to 1 figure which provides an overview.
  2. Take a look at the DOI tests above in this thread. There are some warnings that popped up about missing DOIs. Could you take a look and confirm no DOIs are missing?

Other than that reviewers will keep you posted. Let me know what you think. Thanks!

hsherrod2019 commented 2 months ago

Hi @kanishkan91 , @stephpenn1, @hahsan1 , the current coauthors and I had a talk and we were wondering if it would be okay to add more coauthors onto this manuscript? Additionally, we are considering integrating an additional aspect to the manuscript. Is it possible to delay this review for the next month or so? I am so sorry, we had discussed this only earlier today.

kanishkan91 commented 2 months ago

@hsherrod2019 I can reach out to the EiC to find out how to proceed. Though is it that you just want to edit the paper (which includes adding more co-authors) or do you envision substantial code updates? If its just the former, I would recommend continuing with the review. Let me know what you think

kanishkan91 commented 2 months ago

@hsherrod2019 Also based on consultation with the JOSS EiC, are you confident you can complete all changes within a month? If so, I will pause this review and we can revisit in a month. Else you would need to withdraw the manuscript and then resubmit on a later date. Let me know which works for you.

Also tagging the EiC in charge here- @crvernon .

wincowgerDEV commented 2 months ago

@kanishkan91 and @crvernon, Thank you for your flexibility here. I am @hsherrod2019's mentor and coauthor on the paper so am responding just to apologize for the last-minute changes, this is on me, not her. We are planning on adding coauthors from another tightly linked code project already mentioned in the manuscript (microplastic data visualization tool and microplastic image explorer). I think in an ideal world, these code bases would also be reviewed. Do they need to be included in the same repo as the current submission? If so that will take some reorganizing but shouldn't take more than a month.

kanishkan91 commented 2 months ago

@wincowgerDEV From the description above, this sounds like a more detailed software package including several repositories? (Correct me if I'm wrong). Ideally a JOSS paper is limited to a piece of software that can be installed from a single repository. And if these are independent tools that are on separate repos, then that would require separate papers.

Could you clarify if these are separate tools on separate repos that are part of an ecosystem?

wincowgerDEV commented 2 months ago

@kanishkan91, thanks for the clarification, we were wondering that too. The repo we currently have under review is an r package and app that is basically the foundation for the other two apps. We don't have an intent to create other r packages for those apps because all foundational code will be put into this package. Yes these are separate tools on separate repos that are part of an ecosystem, the big vision being described in this paper to share high-quality microplastic data and have it be easily visualized and queried.

kanishkan91 commented 2 months ago

@wincowgerDEV Thanks! that clarifies more.

My take would be that if you can integrate all code into a single software package that can be invoked from a single repo and rewrite the paper for that single software package, that would be the most ideal for the paper review.

I would still need to check with the EiC (@crvernon ) since this may mean they would need to re-review the paper in that case as well.

But my take (subject to what the EiC says) is that if this can be accomplished in the next month, I can pause this review. Else you can withdraw it and submit at your convenience. You can always refer to this issue number when you resubmit, so JOSS is aware of the paper's history.

crvernon commented 2 months ago

I agree with the last response from @kanishkan91. Thank you and let us know how you wish to proceed.

kanishkan91 commented 2 months ago

@hsherrod2019 @wincowgerDEV Just a gentle reminder. Could you let us know what you think of the above? In particular do you think you can get the changes to the repo and the paper completed within a month (in which case we would pause this review) or would it take longer (in which case we would recommend a withdraw with a re-review on a later date)?

hsherrod2019 commented 2 months ago

@kanishkan91 Hello, sorry for the delayed response! Yes, we are planning on getting the changes to the repo and paper integrated by the end of this month.

kanishkan91 commented 2 months ago

@hahsan1, @stephpenn1 - I'l pause this review for now. We will re-open this at the end of the month. I'l reach out to you guys again at that point.

kanishkan91 commented 2 months ago

@editorialbot commands

editorialbot commented 2 months ago

Hello @kanishkan91, here are the things you can ask me to do:


# List all available commands
@editorialbot commands

# Add to this issue's reviewers list
@editorialbot add @username as reviewer

# Remove from this issue's reviewers list
@editorialbot remove @username from reviewers

# Get a list of all editors's GitHub handles
@editorialbot list editors

# Assign a user as the editor of this submission
@editorialbot assign @username as editor

# Remove the editor assigned to this submission
@editorialbot remove editor

# Remind an author, a reviewer or the editor to return to a review after a 
# certain period of time (supported units days and weeks)
@editorialbot remind @reviewer in 2 weeks

# Adds a checklist for the reviewer using this command
@editorialbot generate my checklist

# Set a value for version
@editorialbot set v1.0.0 as version

# Set a value for branch
@editorialbot set joss-paper as branch

# Set a value for repository
@editorialbot set https://github.com/organization/repo as repository

# Set a value for the archive DOI
@editorialbot set 10.5281/zenodo.6861996 as archive

# Mention the EiCs for the correct track
@editorialbot ping track-eic

# Run checks and provide information on the repository and the paper file
@editorialbot check repository

# Check the references of the paper for missing DOIs
@editorialbot check references

# Generates the pdf paper
@editorialbot generate pdf

# Recommends the submission for acceptance
@editorialbot recommend-accept

# Generates a LaTeX preprint file
@editorialbot generate preprint

# Flag submission with questionable scope
@editorialbot query scope

# Get a link to the complete list of reviewers
@editorialbot list reviewers

# Creates a post-review checklist with editor and authors tasks
@editorialbot create post-review checklist

# Open the review issue
@editorialbot start review
kanishkan91 commented 2 months ago

@editorialbot pause review

editorialbot commented 2 months ago

I'm sorry human, I don't understand that. You can see what commands I support by typing:

@editorialbot commands

kanishkan91 commented 2 months ago

@editorialbot pause

editorialbot commented 2 months ago

I'm sorry human, I don't understand that. You can see what commands I support by typing:

@editorialbot commands

kanishkan91 commented 2 months ago

@editorialbot commands

editorialbot commented 2 months ago

Hello @kanishkan91, here are the things you can ask me to do:


# List all available commands
@editorialbot commands

# Add to this issue's reviewers list
@editorialbot add @username as reviewer

# Remove from this issue's reviewers list
@editorialbot remove @username from reviewers

# Get a list of all editors's GitHub handles
@editorialbot list editors

# Assign a user as the editor of this submission
@editorialbot assign @username as editor

# Remove the editor assigned to this submission
@editorialbot remove editor

# Remind an author, a reviewer or the editor to return to a review after a 
# certain period of time (supported units days and weeks)
@editorialbot remind @reviewer in 2 weeks

# Adds a checklist for the reviewer using this command
@editorialbot generate my checklist

# Set a value for version
@editorialbot set v1.0.0 as version

# Set a value for branch
@editorialbot set joss-paper as branch

# Set a value for repository
@editorialbot set https://github.com/organization/repo as repository

# Set a value for the archive DOI
@editorialbot set 10.5281/zenodo.6861996 as archive

# Mention the EiCs for the correct track
@editorialbot ping track-eic

# Run checks and provide information on the repository and the paper file
@editorialbot check repository

# Check the references of the paper for missing DOIs
@editorialbot check references

# Generates the pdf paper
@editorialbot generate pdf

# Recommends the submission for acceptance
@editorialbot recommend-accept

# Generates a LaTeX preprint file
@editorialbot generate preprint

# Flag submission with questionable scope
@editorialbot query scope

# Get a link to the complete list of reviewers
@editorialbot list reviewers

# Creates a post-review checklist with editor and authors tasks
@editorialbot create post-review checklist

# Open the review issue
@editorialbot start review
kanishkan91 commented 2 months ago

@editorialbot remind @hsherrod2019 in 4 weeks

editorialbot commented 2 months ago

Reminder set for @hsherrod2019 in 4 weeks

hsherrod2019 commented 2 months ago

@kanishkan91 @hahsan1 @stephpenn1 @crvernon Hello! Thank you all for your patience while we made the modifications. We have now integrated all of our edits and are ready to proceed with the review. Thank you!

hsherrod2019 commented 2 months ago

@kanishkan91 Also I double checked the missing DOI warnings and I believe the paper.bib is correct. Some of the packages did not have DOI's when I generated their citations. Thank you!

kanishkan91 commented 2 months ago

@hsherrod2019 Great! I'l try to get the review started.

@hahsan1, @stephpenn1 - Are you still available to review this? Thanks in advance!

hahsan1 commented 1 month ago

Review checklist for @hahsan1

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

stephpenn1 commented 1 month ago

Review checklist for @stephpenn1

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

editorialbot commented 1 month ago

:wave: @hsherrod2019, please update us on how things are progressing here (this is an automated reminder).

kanishkan91 commented 1 month ago

Hi @hahsan1 and @stephpenn1 . Just wanted to check in. How's the review going thus far? Let me know if you need anything from the author or me. Thanks again for agreeing to review.

hahsan1 commented 1 month ago

I got sidetracked by other work, but plan to get back to the review some time this week.

stephpenn1 commented 1 month ago

Same as @hahsan1, also planning to provide the review by end of the week. Thanks for your patience

kanishkan91 commented 1 month ago

Thanks @hahsan1 and @stephpenn1 ! We are still within the prescribed timeline!

hahsan1 commented 4 weeks ago

I have successfully installed the package and currently going through the documentation. In general the documentation is very good and has useful technical content.

I am now following the tutorial. I attempted to run the validator app but ran into an issue. I downloaded rules.csv and valid_data.zip and have uploaded both, but get this error:

image

I noticed that the excel file in the zip folder has three tabs, with the tab labeled "particles" having only headers but no data underneath it. Is this the issue?

Also, my understanding is that the validator app is supposed to read a file with rules to match against a dataset to see if the entries in each data column are formatted correctly and/or contain the right kind of data? Perhaps that could be more explicitly mentioned in the guide, unless I missed it.

stephpenn1 commented 4 weeks ago

@editorialbot generate pdf

editorialbot commented 4 weeks ago

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

editorialbot commented 4 weeks ago

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

hsherrod2019 commented 4 weeks ago

hahsan1

@hahsan1 , thank you for letting me know! The rules file should be 'rules_dw_acc.csv' and is already implemented into the tool. When you upload the zip folder, I recommend extracting the 'data.xlsx' (structured data) and the 'extra_files.zip' (unstructured data) and uploading those two together rather than the zip folder itself.

The data.xlsx should have the three sheets (methodology, samples, particles) with data in each of those sheets. Did you download the 'valid sample data' from the tool itself (I recommend doing so for the most up to date version)? I can further investigate into this!

Yes, the tool and package have a rules sheet applied ahead of time so that when a user uploads their data, the tool/package functions can 'validate' the data and check to see if it's harmonized:)

hahsan1 commented 4 weeks ago

@hsherrod2019 thanks for clarifying. Yes I downloaded the files from the app by clicking Help and downloading the sample rules csv and valid and invalid data zip files. I don't see the files you mentioned there.

hsherrod2019 commented 4 weeks ago

@hahsan1 , I've attached a screenshot below. When you download the valid sample data, if you click on the zip folder the two files should appear. Let me know if that doesn't work! Also the rules file defaults to saving it as 'rules.csv' in the user's local device, but it is the 'rules_dw_acc.csv' from github:)

Screenshot 2024-06-25 at 10 30 38 AM

hahsan1 commented 4 weeks ago

The valid sample zip file only has valid_example.xlsx. (By the way, I had installed the release version of this package from CRAN, maybe these other files are on the development version?)

Also, I'm running a couple of the functions on page 7 under How to use the package. I successfully ran validate_data, using this result_valid <- validate_data(files_data = "valid_example.xlsx", data_names = c("methodology", "particles", "samples"), file_rules = "rules.csv")

But when I run rules_broken like this rules_broken(results = result_valid, show_decision = TRUE), I get the error Error in UseMethod("filter") : no applicable method for 'filter' applied to an object of class "list"

hsherrod2019 commented 3 weeks ago

@hahsan1 , I just downloaded it from the CRAN version and I'm getting the same error as well (with only valid_example.xlsx). I also downloaded the github version and that is working so I recommend downloading the package through github. Please let me know if you are still facing the 'rules_broken' error through the github version. I will look into it in the meantime as well!

stephpenn1 commented 3 weeks ago

Hi, @hsherrod2019 and @kanishkan91, I wanted to confirm before I complete my review that the paper should only be describing the validator app. I know that the other two apps have been integrated into the package but are listed in the Future Goals section of the paper. Thanks!