openjournals / joss-reviews

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

[PRE REVIEW]: PyToughReact – A Python Package for automating reactive transport and biodegradation simulations. #4260

Closed editorialbot closed 2 years ago

editorialbot commented 2 years ago

Submitting author: !--author-handle-->@temmy222<!--end-author-handle-- (TEMITOPE AJAYI) Repository: https://github.com/temmy222/PyTOUGHREACT Branch with paper.md (empty if default branch): Version: 0.0.2 Editor: Pending Reviewers: Pending Managing EiC: Daniel S. Katz

Status

status

Status badge code:

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

Author instructions

Thanks for submitting your paper to JOSS @temmy222. Currently, there isn't an JOSS editor assigned to your paper.

@temmy222 if you have any suggestions for potential reviewers then please mention them here in this thread (without tagging them with an @). In addition, this list of people have already agreed to review for JOSS and may be suitable for this submission (please start at the bottom of the list).

Editor instructions

The JOSS submission bot @editorialbot is here to help you find and assign reviewers and start the main review. To find out what @editorialbot can do for you type:

@editorialbot commands
editorialbot commented 2 years ago

Hello human, 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 years ago
Software report:

github.com/AlDanial/cloc v 1.88  T=0.34 s (103.5 files/s, 69536.0 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Python                          31           2043           2371          18757
Markdown                         2             57              0            222
TeX                              1              0              0             47
YAML                             1              1              4             18
-------------------------------------------------------------------------------
SUM:                            35           2101           2375          19044
-------------------------------------------------------------------------------

gitinspector failed to run statistical information for the repository
editorialbot commented 2 years ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- None

MISSING DOIs

- 10.1111/j.1745-6584.2008.00462.x may be a valid DOI for title: PetraSim: A graphical user interface for the TOUGH2 family of multiphase flow and transport codes

INVALID DOIs

- None
editorialbot commented 2 years ago

Wordcount for paper.md is 1115

editorialbot commented 2 years ago

Failed to discover a valid open source license

danielskatz commented 2 years ago

👋 @temmy222 - we require an OSI-approved open source license for the software before we can review it.

editorialbot commented 2 years ago

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

danielskatz commented 2 years ago

In addition, you could work on the possibly missing DOI that editorialbot suggests, but note that this may be incorrect. Please feel free to make changes to your .bib file, then use the command @editorialbot check references to check again, and the command @editorialbot generate pdf when the references are right to make a new PDF. editorialbot commands need to be the first entry in a new comment.

danielskatz commented 2 years ago

Finally, the paper could use some proofreading. At the end of the Acknowledgments, I see "paper". The last clause in the Statement of Need section should actually be a new sentence. etc.

danielskatz commented 2 years ago

Due to the relatively small amount of code (outside the pytough directory), the editors will now discuss if it meets the substantial scholarly effort criterion for review by JOSS. You should hear back in a week or so.

temmy222 commented 2 years ago

Thank you for your response.

I am working on the license now.

There is a significant addition to the original Pytough directory. As I mentioned in the notes to the editor, the executable was unintentionally uploaded to the original repository used to create the package. I had to create a new repository. I made the original repository private to avoid download by others. I can give access to editors to see the history of work that has been done.

Thank you

danielskatz commented 2 years ago

@temmy222 - please explain what contributions you have made in the pytough directory.

danielskatz commented 2 years ago

@editorialbot query scope

editorialbot commented 2 years ago

Submission flagged for editorial review.

temmy222 commented 2 years ago

Thank you for your response

Pytough has been improved in order to simulate biodegradation and chemical reactions using TMVOC-BIO and TOUGHREACT. This meant the addition of twelve new python files; customError.py, t2bio.py, t2bioresults.py, t2chemical.py, t2component.py, t2process.py, t2react.py, t2reactresults.py, t2reactgrids.py, t2result.py, t2solute.py and t2utilities.py. This is in addition to modifications to the original pytough code.

Each of these files possess classes to facilitate the automation of reaction simulations. Further, users can use the result functionality to extract results into python for visualizations and manipulations.

Thank you.

temmy222 commented 2 years ago

@editorialbot check references

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

OK DOIs

- None

MISSING DOIs

- None

INVALID DOIs

- https://doi.org/10.1016/j.cageo.2012.04.008 is INVALID because of 'https://doi.org/' prefix
- https://doi.org/10.1016/j.cageo.2016.06.014 is INVALID because of 'https://doi.org/' prefix
- https://doi.org/10.21105/joss.02412 is INVALID because of 'https://doi.org/' prefix
- https://doi.org/10.1111/j.1745-6584.2008.00462.x is INVALID because of 'https://doi.org/' prefix
temmy222 commented 2 years ago

@editorialbot check references

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

OK DOIs

- 10.1016/j.cageo.2012.04.008 is OK
- 10.1016/j.cageo.2016.06.014 is OK
- 10.21105/joss.02412 is OK
- 10.1111/j.1745-6584.2008.00462.x is OK

MISSING DOIs

- None

INVALID DOIs

- None
temmy222 commented 2 years ago

@editorialbot generate pdf

editorialbot commented 2 years ago

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

danielskatz commented 2 years ago

When I look at t2react.py, I see

Copyright 2011 University of Auckland.
This file is part of PyTOUGH.
PyTOUGH is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
PyTOUGH is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with PyTOUGH.  If not, see <http://www.gnu.org/licenses/>."""

This makes me wonder how to interpret your statement that this is a new file you created. Can you explain?

temmy222 commented 2 years ago

@editorialbot commands

editorialbot commented 2 years ago

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


# List all available commands
@editorialbot commands

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

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

# Perform checks on the repository
@editorialbot check repository

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

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

# Generates the pdf paper
@editorialbot generate pdf

# Get a link to the complete list of reviewers
@editorialbot list reviewers
temmy222 commented 2 years ago

Thank you for your response

The files I initially listed that still have the license header as you mentioned are files in which slight modifications were made to original PyTOUGH files. In the t2react.py file, modifications were made to the original t2data.py file in order to manipulate reaction files. For example, on line 791, there is a method called read_react which does not appear in the t2data.py. Should I remove this headers as modifications have been made to the original file?

This package is an extension of the PyTOUGH package for reaction and biodegradation reactions. Therefore, to avoid repetition of some common functionalities, I modified some of the original code in PyTOUGH to be able to read and write reaction and biodegradation files.

Thank you

danielskatz commented 2 years ago

Is there some way you can generate a diff that shows exactly what you have added/changed in this directory?

temmy222 commented 2 years ago

Thank you for your response

I used the website diffchecker.com to generate a diff. You can check the differences between the t2data.py file and t2react.py file here https://www.diffchecker.com/qWTlNgyf

Thank you

jgostick commented 2 years ago

Hi @temmy222 The website says that the diff has expired...can you set it up again?

jgostick commented 2 years ago

After reading the paper and browsing the website, I can see that this package has a long way to go. It seems to me that you're trying to publish too soon. IF the JOSS review were to start today, the reviewers would be given a checklist of things to look for, and I can tell that many of those boxes would be left unchecked. For an example of a polished project, please look at one I recently edited here. Near the top of that thread you can find the reviewer checklist, so I suggest you see how many of these checkboxes your software addresses. Furthermore, if you click through to their github site, they have detailed documentation, automated testing, an engaging readme, etc. You haven't even bothered to put a description of your package on the github repo. Like I said, it all seems very rushed.

Please consider retracting your submission, spending 4-6 months fine tuning the public facing aspects of your project, like writing a user guide, setting up github actions to run your tests, and all the items on our review checklist, etc. THEN, when you come back to JOSS your package will sail through the review process.

This is not an official JOSS rejection, I'm just one associate editor expressing my opinion.

arfon commented 2 years ago

Thanks @jgostick – I agree with your feedback here. @temmy222 – this submission is a long way off being ready to send out for review. If you wish to publish in JOSS, then please invest significantly in the packaging, documentation, testing, and presentation of your work. You might find something like these Python packaging guidelines https://python-packaging.readthedocs.io/en/latest/ useful for understanding what 'best practice' looks like for Python software.

Also, if you do decide to resubmit to JOSS in the future, please make sure you've familiarised yourself with the JOSS review criteria (https://joss.readthedocs.io/en/latest/review_criteria.html) which will help you understand the level of quality we're expecting.

arfon commented 2 years ago

@editorialbot reject

editorialbot commented 2 years ago

Paper rejected.