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]: G'MIC: An Open-Source Self-Extending Framework for Image Processing #6618

Open
editorialbot opened this issue Apr 13, 2024 · 47 comments
Assignees
Labels
C++ CMake HTML JavaScript Makefile review TeX Track: 7 (CSISM) Computer science, Information Science, and Mathematics

Comments

@editorialbot
Copy link
Collaborator

editorialbot commented Apr 13, 2024

Submitting author: @dtschump (David Tschumperlé)
Repository: https://github.com/GreycLab/gmic
Branch with paper.md (empty if default branch): joss
Version: 3.3.2
Editor: @gkthiruvathukal
Reviewers: @jamesrhester, @Smattr, @drj11
Archive: Pending

Status

status

Status badge code:

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

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

@jamesrhester & @Smattr & @drj11, 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 @gkthiruvathukal 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 @jamesrhester

📝 Checklist for @drj11

📝 Checklist for @Smattr

@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

Software report:

github.com/AlDanial/cloc v 1.90  T=0.13 s (431.0 files/s, 349651.7 lines/s)
--------------------------------------------------------------------------------
Language                      files          blank        comment           code
--------------------------------------------------------------------------------
C++                               3            920            755          13939
SVG                               5             12              4          11995
JavaScript                       13           1127            207           9089
CSS                               3            160             68           1615
HTML                              6            116             70           1295
Markdown                          3            250              0            676
make                              3            112            331            589
CMake                             7             87             70            390
Bourne Again Shell                5             66            101            387
C/C++ Header                      1             99             94            382
TeX                               1             22              0            185
XML                               1              0              0             36
Scheme                            1             10             45             31
YAML                              2              1              4             19
Bourne Shell                      2              5             56              6
--------------------------------------------------------------------------------
SUM:                             56           2987           1805          40634
--------------------------------------------------------------------------------

Commit count by author:

  1089	David Tschumperle
     1	Garry R. Osgood

@editorialbot
Copy link
Collaborator Author

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

OK DOIs

- 10.1109/icip46576.2022.9897386 is OK
- 10.1109/icip46576.2022.9897334 is OK
- 10.1137/19m1306798 is OK
- 10.1109/tip.2015.2411437 is OK
- 10.1109/99.660313 is OK
- 10.1038/s41586-023-06551-1 is OK

MISSING DOIs

- No DOI given, and none found for title: ImageMagick
- No DOI given, and none found for title: GraphicsMagick
- No DOI given, and none found for title: CImg: C++ Template Image Processing Toolkit
- No DOI given, and none found for title: G’MIC: GREYC’s Magic for Image Computing
- No DOI given, and none found for title: A fast and efficient semi-guided algorithm for fla...
- No DOI given, and none found for title: A non-local algorithm for image denoising
- No DOI given, and none found for title: Mémoire sur l’itération des fonctions rationnelles
- No DOI given, and none found for title: The Buddhabrot Technique
- No DOI given, and none found for title: Lineart Bucket Fill
- No DOI given, and none found for title: Fractalius.
- No DOI given, and none found for title: David Revoy, Comic book artist and Art Director
- No DOI given, and none found for title: Pepper & Carrot, A free(libre) and open-source web...
- No DOI given, and none found for title: The MathMap Image Processing Application
- No DOI given, and none found for title: Pixelitor
- No DOI given, and none found for title: Filter Forge
- No DOI given, and none found for title: A cross-platform software for creating graphical u...
- No DOI given, and none found for title: A neural algorithm of artistic style

INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

Paper file info:

📄 Wordcount for paper.md is 1576

✅ The paper includes a Statement of need section

@editorialbot
Copy link
Collaborator Author

License info:

🟡 License found: Other (Check here for OSI approval)

@editorialbot
Copy link
Collaborator Author

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

@jamesrhester
Copy link

jamesrhester commented Apr 13, 2024

Review checklist for @jamesrhester

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/GreycLab/gmic?
  • 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 (@dtschump) 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?

@drj11
Copy link

drj11 commented Apr 14, 2024

Review checklist for @drj11

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/GreycLab/gmic?
  • 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 (@dtschump) 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?

@gkthiruvathukal
Copy link

@jamesrhester, @Smattr, @drj11 Have you been able to get started with this JOSS review?

@danielskatz
Copy link

👋 @gkthiruvathukal, @jamesrhester, @Smattr, @drj11 - I want to check on the progress of this review. Is there anything blocking its progress?

@jamesrhester
Copy link

jamesrhester commented May 27, 2024 via email

@gkthiruvathukal
Copy link

Thanks, @jamesrhester. Do you have an ETA?

@Smattr, @drj11, can you let us know whether you can complete your review? We need at least two completed reviews to proceed.

@Smattr
Copy link

Smattr commented May 28, 2024

Like jamesrhester, I just haven’t had time yet. My previous comment about not being available until May was not a request to be assigned as a reviewer, assuming I would immediately start May 1 😉. I think I should have some time upcoming, but fair warning I have not taken even a cursory glance at the paper yet to see if I’m qualified to review.

@drj11
Copy link

drj11 commented Jun 3, 2024

i have been on holiday and i'm back now. i've had a poke around their documentation, and i don't see a problem with proceeding. I'll try it and get it done by Friday. 2024-06-07

@gkthiruvathukal
Copy link

Thanks, @Smattr and @drj11. No worries. Happy to have you on board!

@Smattr
Copy link

Smattr commented Jun 8, 2024

Review checklist for @Smattr

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/GreycLab/gmic?
  • 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 (@dtschump) 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?

@Smattr
Copy link

Smattr commented Jun 17, 2024

FYI for other reviewers, as per GreycLab/gmic#55 (comment) apparently we’re supposed to review the release tarball not the current content on Github.

@dtschump
Copy link

I've updated the "Download" page from the website to reflect this : https://gmic.eu/download.html

@jamesrhester
Copy link

Just a note on my approach to reviewing this:

  1. verifying all of the functionality is impractical because there's so much, so I've simply made sure that a few of the demos and sample scripts from the repo work. May have played the 2048 game for longer than strictly necessary.
  2. likewise it is impractical to check all of the supported platforms. As I run Debian, I've installed from a Debian mirror and used the fact that the Debian packager compiles from source to assess that it compiles and installs "by proxy".

@jamesrhester
Copy link

I've finished my review now. It was great to find out about some useful software that I can't believe I haven't encountered before. Sorry it took a bit longer than planned.

@danielskatz
Copy link

👋 @gkthiruvathukal - As track editor, I try to check in on reviews where nothing has happened in a couple of weeks. How is this going? And can I do anything to help it move forward?

@Smattr
Copy link

Smattr commented Jul 13, 2024

From my side, the only blocker is just finding the time to continue my review.

@gkthiruvathukal
Copy link

gkthiruvathukal commented Jul 13, 2024

@Smattr Can you give us an idea of when you may be able to complete the review?

@Smattr
Copy link

Smattr commented Jul 14, 2024

Taking another run at this just now, I still can’t get this project to build. GreycLab/gmic#60. Unless I can compile this software, I’m not sure how I can review it.

@gkthiruvathukal
Copy link

@Smattr Thanks for this. Not being able to compile is a blocker.

@dtschump Can you please follow up as soon as possible?

@dtschump
Copy link

I'm just back from vacations. I'll check that ASAP.

@Smattr
Copy link

Smattr commented Aug 11, 2024

Sorry for the delay once again with this. I had another attempt using the alternate instructions from @dtschump. Unfortunately I still can’t get this project to build.

I’d like to request to step down as a reviewer. I’ve had 3+ attempts at compiling this project and been unsuccessful. @dtschump has been very helpful and FWIW the problems may be entirely on my side. I’m a C++ dev myself and could probably try and debug this but, to be frank, this is not what I signed up for. I think given my limited availability and blockers here, it’s better to let someone else take over who may be able to progress this.

I’d like to highlight that none of this is a judgement on the quality of G’MIC. From where I reached in my review, I have the impression it is a mature and impressive project, for which a JOSS submission is somewhat of an afterthought – JOSS would be enriched by the inclusion of G’MIC, but G’MIC seems already very successful independent of this.

@gkthiruvathukal
Copy link

@Smattr Thanks for your input. I actually see this as a major blocker if you have not been able to get this to compile. Other users are likely to encounter endless frustration, which will limit the impact of the contribution. Please don't step down. We value the time of our reviewers. At this point, your input/review is complete, since you gave us a clear statement about what improvements are needed.

Although I fully appreciate @dtschump's efforts to be helpful, this is not a key criterion for recommending acceptance. Everything starts with the ability to compile and run the code.

@jamesrhester can you confirm that as part of your review that you were able to successfully compile the code? This is crucial for me to make a recommendation how to proceed.

@Smattr
Copy link

Smattr commented Aug 14, 2024

I think this comment from jamesrhester explains:

I … used the fact that the Debian packager compiles from source to assess that it compiles and installs "by proxy".

@jamesrhester
Copy link

Yes, @Smattr is correct. If Debian provides the software then I am satisfied that it can be independently compiled from source. The only patch from Debian is to allow clang to be used as well.

If this is not satisfactory for JOSS happy to have a go at compiling it myself.

@gkthiruvathukal
Copy link

@jamesrhester I am mostly in agreement here. If this package can be installed from Debian, this might be satisfactory. However, I would like to know whether it is installable from the central repository or a PPA.

And if anyone has been able to build it, I could also be satisfied with a video showing all steps being executed successfully or even an Asciinema screencast.

Lastly, even something like a Homebrew formula would do.

@stefantalpalaru
Copy link

even something like a Homebrew formula would do

How about a Gentoo ebuild, instead?

https://github.com/stefantalpalaru/gentoo-overlay/tree/master/media-gfx/gmic

Build log: https://gist.github.com/stefantalpalaru/b342401125af0b3329cf86108932f402

@danielskatz
Copy link

👋 @gkthiruvathukal - Can you summarize where things are in this review, and what the next steps are? (As track editor, I try to check in on reviews where nothing has happened in a couple of weeks.)

@gkthiruvathukal
Copy link

gkthiruvathukal commented Oct 9, 2024

@danielskatz Yes, I'm working on this one now.

@stefantalpalaru That would be acceptable. Based on the earlier feedback, I am satisfied that this package can be built successfuly and meets our criteria.

I am ready to proceed toward acceptance and will follow up with a checklist shortly.

@gkthiruvathukal
Copy link

@danielskatz Just to clarify, as editor, am I supposed to recommend accept, or can you take it from here?

@danielskatz
Copy link

@gkthiruvathukal - you should follow the steps in https://joss.readthedocs.io/en/latest/editing.html#post-review (If you don't have time, I can do this, but would prefer that you do it)

@gkthiruvathukal
Copy link

Hi @danielskatz. Yes, I prefer to do it. Sorry things are moving a little slower than they should, but I can take care of this (and others on my plate).

@gkthiruvathukal
Copy link

gkthiruvathukal commented Oct 15, 2024

Post-Review Checklist for Editor and Authors

Additional Author Tasks After Review is Complete

  • Double check authors and affiliations (including ORCIDs)
  • Make a release of the software with the latest changes from the review and post the version number here. This is the version that will be used in the JOSS paper.
  • Archive the release on Zenodo/figshare/etc and post the DOI here.
  • Make sure that the title and author list (including ORCIDs) in the archive match those in the JOSS paper.
  • Make sure that the license listed for the archive is the same as the software license.

Editor Tasks Prior to Acceptance

  • Read the text of the paper and offer comments/corrections (as either a list or a pull request)
  • Check that the archive title, author list, version tag, and the license are correct
  • Set archive DOI with @editorialbot set <DOI here> as archive
  • Set version with @editorialbot set <version here> as version
  • Double check rendering of paper with @editorialbot generate pdf
  • Specifically check the references with @editorialbot check references and ask author(s) to update as needed
  • Recommend acceptance with @editorialbot recommend-accept

@gkthiruvathukal
Copy link

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

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

@gkthiruvathukal
Copy link

@dtschump Please let me know when the above author tasks at #6618 (comment) are completed. These two are necessary before I can recommend acceptance. For convenience, please check them off here and follow up with the required archive DOI and version:

  • Double check authors and affiliations (including ORCIDs)
  • Make a release of the software with the latest changes from the review and post the version number here. This is the version that will be used in the JOSS paper.
  • Archive the release on Zenodo/figshare/etc and post the DOI here.
  • Make sure that the title and author list (including ORCIDs) in the archive match those in the JOSS paper.
  • Make sure that the license listed for the archive is the same as the software license.

@gkthiruvathukal
Copy link

I believe the version is set but please make sure that this is the final version based on review feedback.

@dtschump
Copy link

Thanks. Some news I have to share with you:

  • Sadly, Sébastien Fourey, one of the co-author of this article, and co-developer of G'MIC has passed away last week. That explains why I didn't speak up before. Everyone in the lab was very shocked.
  • In fact, I'd like to be able to add a small paragraph of tribute to Sébastien in this paper before it can be published. I don't know whether this means that the review process needs to be lengthened or not. Please keep me informed.
  • Last Friday, I released version 3.4.3 of G'MIC. I'll mention this latest version in the article.
  • So I'm going to do a final proofreading and make these few changes, as soon as possible.

Thank you for your understanding.

@dtschump
Copy link

Hello.
After paper review, I propose these last edits : GreycLab/gmic@c996aa0
Let me know if that is OK for you.

I've also created an archive on Zenodo : https://zenodo.org/records/13936920
with the latest version released, numbered 3.4.3.

Let me know if you need something else. Thanks.

@gkthiruvathukal
Copy link

@dtschump First, I'm deeply saddened to read about the loss of your colleague. Hopefully, we can honor him by seeing this article published soon.

Sadly, I had a similar situation happen to me for a presentation/tutorial at an international conference just two weeks ago. It was very hard for all of us to give this presentation after losing him but we were able to do so and honor his memory.

Rest assured, this is not a blocker for us to proceed with your JOSS submission. I don't expect it to lengthen the review process as long as you made a good-faith effort to address reviewer comments. I believe you have done so but will await their confirmation.

Please take care of my checklist by checking all items that are complete. I will work with you to bring this to closure!

To reiterate: I offer my heartfelt condolences to you and his family/friends.

@jamesrhester
Copy link

My condolences also. Happy for @gkthiruvathukal to directly approve any additional tribute text.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C++ CMake HTML JavaScript Makefile review TeX Track: 7 (CSISM) Computer science, Information Science, and Mathematics
Projects
None yet
Development

No branches or pull requests

8 participants