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]: pySymmPol: Symmetric Polynomials #6724

Closed
editorialbot opened this issue May 6, 2024 · 48 comments
Closed

[REVIEW]: pySymmPol: Symmetric Polynomials #6724

editorialbot opened this issue May 6, 2024 · 48 comments
Assignees
Labels
accepted published Papers published in JOSS Python recommend-accept Papers recommended for acceptance in JOSS. review TeX Track: 3 (PE) Physics and Engineering

Comments

@editorialbot
Copy link
Collaborator

editorialbot commented May 6, 2024

Submitting author: @thraraujo (Thiago Rocha Araujo)
Repository: https://github.com/thraraujo/pysymmpol
Branch with paper.md (empty if default branch): paper
Version: v0.1.2
Editor: @phibeck
Reviewers: @eliotwrobson, @AnnikaStein
Archive: 10.5281/zenodo.11214737

Status

status

Status badge code:

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

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

@eliotwrobson & @AnnikaStein, 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 @phibeck 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 @AnnikaStein

📝 Checklist for @eliotwrobson

@editorialbot
Copy link
Collaborator Author

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
Copy link
Collaborator Author

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.48550/arXiv.0909.2331 is OK
- 10.1093/oso/9780198534891.001.0001 is OK
- 10.1007/978-1-4612-0979-9 is OK
- 10.1017/CBO9780511535024 is OK
- 10.1017/CBO9780511628832 is OK
- 10.1093/acprof:oso/9780198568490.001.0001 is OK
- 10.48550/arXiv.1110.6703 is OK

MISSING DOIs

- None

INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

Software report:

github.com/AlDanial/cloc v 1.90  T=0.09 s (1470.3 files/s, 269525.9 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
HTML                            50           1607            150          10380
SVG                              3              0              0           2689
CSS                              6            223             57           1014
JavaScript                      12            131            221            880
Python                          22            411            422            800
Markdown                         5             77              0            382
TeX                              2             73             10            368
Jupyter Notebook                10              0           3371            277
reStructuredText                17            124            214            172
YAML                             2              7             12             51
DOS Batch                        1              8              1             26
TOML                             1              4              0             16
make                             1              4              7              9
-------------------------------------------------------------------------------
SUM:                           132           2669           4465          17064
-------------------------------------------------------------------------------

Commit count by author:

    38	thraraujo
     5	Thiago Araujo

@editorialbot
Copy link
Collaborator Author

Paper file info:

📄 Wordcount for paper.md is 531

✅ The paper includes a Statement of need section

@editorialbot
Copy link
Collaborator Author

License info:

🟡 License found: GNU General Public License v3.0 (Check here for OSI approval)

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@AnnikaStein
Copy link

AnnikaStein commented May 6, 2024

Review checklist for @AnnikaStein

Conflict of interest

  • I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • Repository: Is the source code for this software available at the https://github.com/thraraujo/pysymmpol?
  • License: Does the repository contain a plain-text LICENSE or COPYING file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@thraraujo) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
  • Substantial scholarly effort: Does this submission meet the scope eligibility described in the JOSS guidelines
  • Data sharing: If the paper contains original data, data are accessible to the reviewers. If the paper contains no original data, please check this item.
  • Reproducibility: If the paper contains original results, results are entirely reproducible by reviewers. If the paper contains no original results, please check this item.
  • Human and animal research: If the paper contains original data research on humans subjects or animals, does it comply with JOSS's human participants research policy and/or animal research policy? If the paper contains no such data, please check this item.

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. -> Technically, there is a list of dependencies, but I believe it is rather strict (exactly one python version, tested with exact versions of numpy / sympy). Could this not be relaxed to be more inclusive? Like python 3.9 upwards or anything like that, same for the packages in question. For the record, I tested with python 3.11 instead of 3.12 and what I tested so far works fine.
  • 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 functionality 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 -> Here I believe, given that it's generated with a tool, this could be improved to be closer to the actual community. For example, there is nodejs, npm etc mentioned - however, the package is pure python, no web frontend development involved. Probably this should instead include means to find out the version of python or packages that might influence the behavior of pysymmpol. So what actually needs to be known in advance to contribute.

Software paper

  • Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • A statement of need: Does the paper have a section titled 'Statement of need' that clearly states what problems the software is designed to solve, who the target audience is, and its relation to other work?
  • State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

@thraraujo
Copy link

Hi @AnnikaStein, thanks. I will work on these things in the next few days. Talk soon.

@eliotwrobson
Copy link

eliotwrobson commented May 8, 2024

Review checklist for @eliotwrobson

Conflict of interest

  • I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • Repository: Is the source code for this software available at the https://github.com/thraraujo/pysymmpol?
  • License: Does the repository contain a plain-text LICENSE or COPYING file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@thraraujo) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
  • Substantial scholarly effort: Does this submission meet the scope eligibility described in the JOSS guidelines
  • Data sharing: If the paper contains original data, data are accessible to the reviewers. If the paper contains no original data, please check this item.
  • Reproducibility: If the paper contains original results, results are entirely reproducible by reviewers. If the paper contains no original results, please check this item.
  • Human and animal research: If the paper contains original data research on humans subjects or animals, does it comply with JOSS's human participants research policy and/or animal research policy? If the paper contains no such data, please check this item.

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 functionality 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

  • Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • A statement of need: Does the paper have a section titled 'Statement of need' that clearly states what problems the software is designed to solve, who the target audience is, and its relation to other work?
  • State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

General Comments

I haven't looked at the paper in detail yet, but I will start by opening a few issues on the repo for some things I noticed in the code. I'm going to be using this book to get some background on symmetric polynomials, (there is also this other book). It may be a good idea to cite these as newer, accessible introductions to this topic.

@thraraujo
Copy link

Hi @eliotwrobson,

I'll address the last issue here as it's pertinent to concerns raised by @AnnikaStein. It's worth noting that both @phibeck and @AnnikaStein are fellow physicists.

Regarding your comment:

One of the review checklist items is a discussion of the "state of the field" about other software packages. Some discussion of this would be very useful, even if it is just stating what operations are supported by this package that do not exist elsewhere (i.e. not in sympy).

  • I've incorporated another section on the state of the field, delineating the main disparities between our package and SageMath. Additionally, I've included insights on the target audience.

Regarding your comment:

The section on the core features of the package would be much stronger if there were an example of the analysis that could be done with the package in relation to the discussion of CFTs. As someone with a pure combinatorics background, it's a little hard to tell what types of analysis can be done with the package in the context of theoretical physics.

  • Describing the types of analyses possible isn't straightforward, given the myriad combinatorial problems in physics. However, I've appended references to Okounkov's and Marino's papers, which align with my interests. In any case, you might check examples ranging from condensed matter physics Zinn-Justin to string theory Nekrasov-Okounkov.

  • One relevant example within your interests is in representation theory. Quantum mechanics operators (representing measurable objects) are unitary (Lie groups SU(n)), and through the Schur-Weyl duality, their representations are labeled by Young diagrams, related to symmetric group representations. Schur polynomials serve as characters in these representations.

  • While I refrain from self-citation, I've conducted research leveraging this software to examine objects called tau functions, as elaborated in this paper. These objects were expanded in terms of Schur and Hall-Littlewood polynomials.

  • Lastly, I aim to keep the paper concise, adhering to <700 words, as per @phibeck's comments.

@thraraujo
Copy link

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@eliotwrobson
Copy link

@thraraujo your changes look good! The main item from the review checklist was the discussion of the state of other packages, and that section is clear. I'll go ahead and close the issue and check that item off of my list 👍🏽

@thraraujo
Copy link

Hi @eliotwrobson and @AnnikaStein, thanks for all the comments.

Hi @phibeck, the only missing point appears to be the Summary in @AnnikaStein's checklist. @eliotwrobson's checklist agrees that the summary already provides a high-level description understandable even to non-specialists. In my opinion, key terms like Manipulation, Polynomials, and Symmetric are very precise, so I don't want to give an additional high-level description of the types of manipulations or symmetric polynomials the package deals with. Since this is a minor point, I'll leave the decision to you.

@AnnikaStein
Copy link

AnnikaStein commented May 16, 2024

Sorry @thraraujo for not being clear on what I meant with this point - I was a bit hesitant to check it as the summary contains abbreviations, "AdS/CFT" which, in my opinion, a "diverse, non-specialist audience" would likely not understand without further reading. For someone with a physics background, one may always infer that field theories are meant when you see the letters FT next to each other :), but if one looks at it from a different perspective, it's a non-trivial set of abbreviations.

@thraraujo
Copy link

Hi @AnnikaStein, actually, it is a fair take, and I'd missed it. Now it's fixed. Thanks

@thraraujo
Copy link

Dear @phibeck , it appears that the reviewers have completed their evaluations; and I am awaiting your decision or further instructions. Could you please provide an update on the next steps in the process? Best

@phibeck
Copy link

phibeck commented May 22, 2024

Hi @thraraujo thanks for checking in. I'm travelling this week but will look into it tomorrow. I believe we are ready to proceed, but let me get back to you tomorrow.

@phibeck
Copy link

phibeck commented May 23, 2024

Thank you very much for an incredibly speedy and thorough review, @AnnikaStein and @eliotwrobson! 🚀 And thank you @thraraujo for addressing all comments timely and adequately. 🙌 This is by far the fastest review I have seen so far, thank you all! 🥇

@thraraujo the reviewers have recommended the submission for publication. There are a few more steps before we finalize the publication. At this point could you please:

  • Make a tagged release of your software, and list the version tag of the archived version here.
  • Archive the reviewed software in Zenodo or a similar service (e.g., figshare, an institutional repository)
  • Check the archival deposit (e.g., in Zenodo) has the correct metadata. This includes the title (should match the paper title) and author list (make sure the list is correct and people who only made a small fix are not on it). You may also add the authors' ORCID.
  • Please list the DOI of the archived version here.

I can then move forward with recommending acceptance of the submission.

@phibeck
Copy link

phibeck commented May 23, 2024

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@thraraujo
Copy link

Hi @phibeck , thanks

Thank you very much for an incredibly speedy and thorough review, @AnnikaStein and @eliotwrobson! 🚀 And thank you @thraraujo for addressing all comments timely and adequately. 🙌 This is by far the fastest review I have seen so far, thank you all! 🥇

Kudos to @AnnikaStein and @eliotwrobson! They were indeed very fast, and I sincerely believe the package is much better now.

  • Make a tagged release of your software, and list the version tag of the archived version here.

I have already done this, version v0.1.2

  • Archive the reviewed software in Zenodo or a similar service (e.g., figshare, an institutional repository)

Archived here: https://zenodo.org/records/11214737

  • Check the archival deposit (e.g., in Zenodo) has the correct metadata. This includes the title (should match the paper title) and author list (make sure the list is correct and people who only made a small fix are not on it). You may also add the authors' ORCID.

Done.

  • Please list the DOI of the archived version here.

DOI: 10.5281/zenodo.11214737

@thraraujo
Copy link

Hi @phibeck, any news?!?

@phibeck
Copy link

phibeck commented May 28, 2024

@editorialbot set v0.1.2 as version

@editorialbot
Copy link
Collaborator Author

Done! version is now v0.1.2

@phibeck
Copy link

phibeck commented May 28, 2024

@editorialbot set 10.5281/zenodo.11214737 as archive

@editorialbot
Copy link
Collaborator Author

Done! archive is now 10.5281/zenodo.11214737

@phibeck
Copy link

phibeck commented May 28, 2024

@thraraujo thanks for the reminder. I'm away for a workshop since last week so response is a bit slow. Here are a few more comments/suggestions for the manuscript. Please have a look when you have a moment.

  • line 20f: I assume the four references are associated with the four fields mentioned here, but the association is a bit ambiguous. Could you place the reference directly with the mentioned field?
  • line 36: CFT is already defined in line 14, so I think it's not necessary here
  • line 36f: when citing multiple references at once, citing them as Blah blah [@doe99; @smith2000; @smith2004] should render them as one block (see https://pandoc.org/MANUAL.html#extension-citations)
  • line 37: "for examples of physical problems..."
  • line 78: Hall capitalized
  • line 80: Simons capitalized

@thraraujo
Copy link

Hi @phibeck, it's done. Thanks.

@phibeck
Copy link

phibeck commented May 29, 2024

@editorialbot check references

@editorialbot
Copy link
Collaborator Author

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.48550/arXiv.0909.2331 is OK
- 10.1093/oso/9780198534891.001.0001 is OK
- 10.1007/978-1-4612-0979-9 is OK
- 10.1017/CBO9780511535024 is OK
- 10.1017/CBO9780511628832 is OK
- 10.1093/acprof:oso/9780198568490.001.0001 is OK
- 10.48550/arXiv.1110.6703 is OK
- 10.5281/zenodo.593563 is OK
- 10.1142/9789812704016_0037 is OK

MISSING DOIs

- None

INVALID DOIs

- None

@phibeck
Copy link

phibeck commented May 29, 2024

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@phibeck
Copy link

phibeck commented May 29, 2024

👋 @thraraujo looks good, thank you. I'll hand this over to the Track Editor-in-chief!

@phibeck
Copy link

phibeck commented May 29, 2024

@editorialbot recommend-accept

@editorialbot
Copy link
Collaborator Author

Attempting dry run of processing paper acceptance...

@editorialbot
Copy link
Collaborator Author

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.48550/arXiv.0909.2331 is OK
- 10.1093/oso/9780198534891.001.0001 is OK
- 10.1007/978-1-4612-0979-9 is OK
- 10.1017/CBO9780511535024 is OK
- 10.1017/CBO9780511628832 is OK
- 10.1093/acprof:oso/9780198568490.001.0001 is OK
- 10.48550/arXiv.1110.6703 is OK
- 10.5281/zenodo.593563 is OK
- 10.1142/9789812704016_0037 is OK

MISSING DOIs

- None

INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

👋 @openjournals/pe-eics, this paper is ready to be accepted and published.

Check final proof 👉📄 Download article

If the paper PDF and the deposit XML files look good in openjournals/joss-papers#5409, then you can now move forward with accepting the submission by compiling again with the command @editorialbot accept

@editorialbot editorialbot added the recommend-accept Papers recommended for acceptance in JOSS. label May 29, 2024
@kyleniemeyer
Copy link

@editorialbot accept

@editorialbot
Copy link
Collaborator Author

Doing it live! Attempting automated processing of paper acceptance...

@editorialbot
Copy link
Collaborator Author

Ensure proper citation by uploading a plain text CITATION.cff file to the default branch of your repository.

If using GitHub, a Cite this repository menu will appear in the About section, containing both APA and BibTeX formats. When exported to Zotero using a browser plugin, Zotero will automatically create an entry using the information contained in the .cff file.

You can copy the contents for your CITATION.cff file here:

CITATION.cff

cff-version: "1.2.0"
authors:
- family-names: Araujo
  given-names: Thiago
  orcid: "https://orcid.org/0000-0001-5792-2530"
doi: 10.5281/zenodo.11214737
message: If you use this software, please cite our article in the
  Journal of Open Source Software.
preferred-citation:
  authors:
  - family-names: Araujo
    given-names: Thiago
    orcid: "https://orcid.org/0000-0001-5792-2530"
  date-published: 2024-05-30
  doi: 10.21105/joss.06724
  issn: 2475-9066
  issue: 97
  journal: Journal of Open Source Software
  publisher:
    name: Open Journals
  start: 6724
  title: PySymmPol - Symmetric Polynomials
  type: article
  url: "https://joss.theoj.org/papers/10.21105/joss.06724"
  volume: 9
title: PySymmPol - Symmetric Polynomials

If the repository is not hosted on GitHub, a .cff file can still be uploaded to set your preferred citation. Users will be able to manually copy and paste the citation.

Find more information on .cff files here and here.

@editorialbot
Copy link
Collaborator Author

🐘🐘🐘 👉 Toot for this paper 👈 🐘🐘🐘

@editorialbot
Copy link
Collaborator Author

🚨🚨🚨 THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! 🚨🚨🚨

Here's what you must now do:

  1. Check final PDF and Crossref metadata that was deposited 👉 Creating pull request for 10.21105.joss.06724 joss-papers#5413
  2. Wait five minutes, then verify that the paper DOI resolves https://doi.org/10.21105/joss.06724
  3. If everything looks good, then close this review issue.
  4. Party like you just published a paper! 🎉🌈🦄💃👻🤘

Any issues? Notify your editorial technical team...

@editorialbot editorialbot added accepted published Papers published in JOSS labels May 30, 2024
@kyleniemeyer
Copy link

Congratulations @thraraujo on your article's publication in JOSS! Please consider signing up as a reviewer if you haven't already.

Many thanks to @eliotwrobson and @AnnikaStein for reviewing this, and @phibeck for editing.

@editorialbot
Copy link
Collaborator Author

🎉🎉🎉 Congratulations on your paper acceptance! 🎉🎉🎉

If you would like to include a link to your paper from your README use the following code snippets:

Markdown:
[![DOI](https://joss.theoj.org/papers/10.21105/joss.06724/status.svg)](https://doi.org/10.21105/joss.06724)

HTML:
<a style="border-width:0" href="https://doi.org/10.21105/joss.06724">
  <img src="https://joss.theoj.org/papers/10.21105/joss.06724/status.svg" alt="DOI badge" >
</a>

reStructuredText:
.. image:: https://joss.theoj.org/papers/10.21105/joss.06724/status.svg
   :target: https://doi.org/10.21105/joss.06724

This is how it will look in your documentation:

DOI

We need your help!

The 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 Python recommend-accept Papers recommended for acceptance in JOSS. review TeX Track: 3 (PE) Physics and Engineering
Projects
None yet
Development

No branches or pull requests

6 participants