Closed editorialbot closed 5 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
Software report:
github.com/AlDanial/cloc v 1.88 T=0.14 s (443.9 files/s, 157705.6 lines/s)
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
YAML 4 26 39 7975
Python 40 1806 2976 6355
Markdown 13 163 0 506
Jupyter Notebook 3 0 2461 230
INI 1 11 0 81
TeX 1 5 0 63
make 1 6 8 15
TOML 1 1 3 5
-------------------------------------------------------------------------------
SUM: 64 2018 5487 15230
-------------------------------------------------------------------------------
gitinspector failed to run statistical information for the repository
Wordcount for paper.md
is 1504
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1111/jiec.12713 is OK
- 10.1111/jiec.12715 is OK
- 10.1080/07350015.2015.1038545 is OK
MISSING DOIs
- None
INVALID DOIs
- None
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
@GISWLH @PennyHow please check the information text at the top of this page (@PennyHow I see this is already done, thanks for starting!).
As the review takes place into this discussion page, feel free to provide a partial review at some point, to ask clarifications to the author here, or to ask me about the review process.
Some reviewers also open issues at the repository under review. This is fine for bug reports or requests about the documentation, for instance. In that case, please report the resulting bugfix or other result from the discussion here so that I can get proper notification.
Thank you, @pdebuyl, for your invitation and kind reminder π. I will review this paper and its code in the coming days. I guess i will raising issues in the ipcc repository. Once completed, a summary of my observations will also be provided here.
Hi @GISWLH I see that you ticked all the boxes already. Their purpose is to indicate the progress of your review, which I guess is not yet over. Can you untick them please?
Sorry for the misunderstanding and i have now unticked the option. @pdebuyl
Hi @mabudz and @pdebuyl, here is my initial review: in all, I think this is a useful package that upholds the idea of reproducibility and accessibility to an important set of IPCC data and calculations. I have some comments on how it is presented and distributed that need to be resolved before it should be accepted from my side:
[x] The JOSS paper itself looks in good shape. I've made some minor corrections in a merge request here, along with suggested changes to the repo readme and documentation.
[x] I see you note in the readme that the pypi package distribution is not ready yet. I would like to see the pypi package finalised (and usable) as part of this review process.
[x] On a related note to the point above, can the example scripts also be distributed with the pypi package build? I would like to see the example included and incorporated into the testing of the package installation, perhaps as part of some unit testing for the package. I also see a tests/
directory with many scripts - do you use these in your examples in the documentation and/or the package distribution?
[x] There are many tutorials in your documentation that merely perform look-ups from the .csv tables. I would like to see more tutorials in the documentation that demonstrate the functionality of the ipcc
package, such as calculating GHG inventories and inter-comparison of the different uncertainty calculation methods. Without these examples, it is difficult to see the capabilities of the package beyond just a library of look-up tables.
[x] The contributions section thoroughly describes where a contributor could contribute to the ipcc
package. However, there is little description on how a contributor should contribute (e.g. merge request from a forked branch, with a clear description of the contributions?). Please outline this in the CONTRIBUTING.md
file.
[x] Please specify somewhere in the installation guide that the ipcc
package requires python>=3.9
. In fact, I think it would be good to include a complete installation guide, so something like this:
conda create --name py311 python=3.11
conda activate py311
git clone git@gitlab.com:bonsamurais/bonsai/util/ipcc.git
cd ipcc
pip install -e .
python3
import ipcc
Dear @pdebuyl and @mabudz, this is my review report: In my opinion, this package provides tools for national greenhouse gas calculation and takes into account uncertainty from IPCC guidelines. It holds potential applicative value for climate change scientists and aligns with the interests and scope of the JOSS journal. However, I have the following suggestions for its improvement:
ipcc.<volume>.<chapter>
. With the release of new versions of the IPCC reports, the names of volumes and chapters may change.ipcc
as the name for a Python library, given that IPCC is a non-profit organization dedicated to climate change science, encompassing not just greenhouse gas calculations but also climate change, regional imbalances, emission scenarios, hydrology, and water cycles, among other topics. Considering the actual functionality of the author's library, a name like ipccgas
might be more suitable. Of course, this is just a suggestion for the author to consider, as the library is their development.swd.parameter.r = df
should be corrected to my_ipcc.waste.swd.parameter.r = df
.Dear @PennyHow, @GISWLH and @pdebuyl , thanks a lot for the excellent comments!
I have revised the package and merged already to the main branch (The manuscript is still on the joss branch). The following has been changed:
bonsai-ipcc
. Regarding the suggestion for changing the name, I think this also avoids confusion in terms of the official IPCC organization. However, the package name is still ipcc
.basic concept
, core functionality
and uncertainty
I hope this is more obvious, especially in terms of adding own data with uncertainty information. I also deleted the folder scripts/ which was not intended to be in the package.I still think that following the structure of volume
and chapter
makes sense. The reason is that this should help users to find the specific information about equations, tier sequences and data also in the original pdf documents. The IPCC guidelines were published in 2006 and got and update in 2019 without changing the original structure of volume
and sequence
. For further updates I hope they follow the same logic.
Thanks @PennyHow @GISWLH for the reviews and recommendations!
Regarding the distribution of examples with the software package, it is not a widespread practice so I don't believe that it can be essential as a review item. @mabudz you are free to take it into account of course. @PennyHow do you have examples of how you would see this achieved?
Regarding the package name, it could be indeed beneficial to the package to avoid any confusion. bonsai_ipcc
woud fit the PyPI name (bonsai-ipcc
cannot be imported).
I have a remark on the README part on installing the package. Only developers should install with the -e
option to pip -> else the package is at risk of being modified in place thus modifying the results of the calculations.
Thanks @pdebuyl,
The pypi name is indeed bonsai_ipcc
.
The readme has now two separate instructions for users and developers. Only for developers pip install -e
is recommended.
Regarding the distribution of examples with the software package, it is not a widespread practice so I don't believe that it can be essential as a review item. @mabudz you are free to take it into account of course. @PennyHow do you have examples of how you would see this achieved?
I think with the newly updated examples in the documentation, they do not need to be included with the package distribution.
Regarding the package name, it could be indeed beneficial to the package to avoid any confusion. bonsai_ipcc woud fit the PyPI name (bonsai-ipcc cannot be imported).
I agree with this. To install, the pypi distribution is named bonsai-ipcc
(i.e. install as pip install bonsai-ipcc
). But to import, the package name remains ipcc
(i.e. import ipcc
). I think the import name should also be bonsai-ipcc
to avoid potential conflicts with other packages.
All the other comments from me have been adequately addressed.
I have changed the package name. To avoid conflicts bonsai_ipcc
is used for both the package name and the name on pypi. I have revised the manuscript in this regard.
@editorialbot generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
Dear @pdebuyl , @PennyHow , @GISWLH ,
Many thanks for your recommendations, I have tried to address all of those. Please let me know if you have any further recommendations.
Many thanks for your recommendations, I have tried to address all of those. Please let me know if you have any further recommendations.
Nothing else from me. You have adequately addressed all of my comments ππΌ
Many thanks for your recommendations, I have tried to address all of those. Please let me know if you have any further recommendations.
Upon reviewing the revisions you've implemented based on my recommendations, I am pleased to endorse this manuscript for publication.
@editorialbot generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
@editorialbot check references
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1111/jiec.12713 is OK
- 10.1111/jiec.12715 is OK
- 10.1080/07350015.2015.1038545 is OK
MISSING DOIs
- None
INVALID DOIs
- None
Hi authors,
Sorry (a lot) for the delay. Too many demands at "${MAINJOB}" :-/
Here is my feedback for the article:
__dict__
attribute as the recommended method to show the result of the calculation is really unusual. Would you consider using __repr__
instead as shown below or something similar?
def __repr__(self):
return self.__dict__
bonsai_ipcc
compare?@GISWLH Thank you very much for the review!
@PennyHow Thank you very much for the review!
PS: @mabudz it is nice to have changed the import name. A short name such as ipcc can lead to confusion and this will probably make it easier for your users and for referencing the software as well.
@editorialbot generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
Hi @pdebuyl , many thanks for your feedback! According to your comments:
I am not fully sure about best practice. When calling repr(), however, it seems that a str should be returned. Thus I would add two methods to the class:
def __repr__(self):
return str(self.__dict__)
def to_dict(self):
return self.__dict__
Hello,
Thanks for all the changes.
Regarding the ellipsis issue, I'll see with editor colleagues, as indeed the bib file is ok.
I have one extra typo line 97 magnitute -> magnitude
In the paragraph about uncertainty, can you change "ufloat with a link" to something more readable such as "the ufloat type from the frictionless library" and "a NumPy array" without link. In an article such inline links disrupt the reading. Also, for frictionless you can add it as a reference (the URL will do if they have no academic reference) and cite it. NumPy can also be cited (they have a recent-ish paper). Same for pandas.
The citation to hestia should be edited as well. It appears with "Project" as author which does not make much sense.
Regarding the __repr__
issue, you can use what makes most sense to you. But advising users to see the content of your data structure with __dict__
is weird. Underscored attributes are not meant to be visibly used by users.
I have only one remaining recommendation for the project itself: the repository is under the MIT license. You could consider putting the data files (csv) under CC-BY or similar for making it easier in case others want to re-use just that component. But that is up to you.
Sorry for the laundry list of citation issues. Once this is cleared, the paper will be ready to go.
@editorialbot generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
Thanks a lot @pdebuyl ,
I have revised the citations according to your comments and fixed the typo.
The main branch includes a to_dict()
method that can be used to show results as a dictionary.
Regarding the license for the data files, I will think about to consider adding such a license in a future release.
Thanks @mabudz !
Now, can you make a zenodo archive, post here the zenodo DOI and the version number of that archived release, make sure that all zenodo metadata is correct (title must be equal to paper title, and author list match the JOSS article).
DOI: 10.5281/zenodo.6405387
Version: v0.3.2
but please use the joss branch or the main branch for creating the paper
@editorialbot set 10.5281/zenodo.6405387 as archive
Done! archive is now 10.5281/zenodo.6405387
Hi @mabudz the DOI does not seem to point to ipcc :-/
Hi @pdebuyl , sorry for the confusion. π This is the right one
@editorialbot set 10.5281/zenodo.10822520 as archive
I'm sorry human, I don't understand that. You can see what commands I support by typing:
@editorialbot commands
THanks @mabudz . Would Mathieu Delpierre have an ORCID?
@editorialbot set 10.5281/zenodo.10822520 as archive
Done! archive is now 10.5281/zenodo.10822520
Submitting author: !--author-handle-->@mabudz<!--end-author-handle-- (Maik Budzinski) Repository: https://gitlab.com/bonsamurais/bonsai/util/ipcc Branch with paper.md (empty if default branch): joss Version: v0.3.2 Editor: !--editor-->@pdebuyl<!--end-editor-- Reviewers: @GISWLH, @PennyHow Archive: 10.5281/zenodo.10822520
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
@GISWLH & @PennyHow, 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:
The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @pdebuyl 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 @PennyHow
π Checklist for @GISWLH