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]: LBR-Stack: ROS 2 and Python Integration of KUKA FRI for Med and IIWA Robots #6138

Open
editorialbot opened this issue Dec 11, 2023 · 87 comments
Assignees
Labels
recommend-accept Papers recommended for acceptance in JOSS. review TeX Track: 5 (DSAIS) Data Science, Artificial Intelligence, and Machine Learning

Comments

@editorialbot
Copy link
Collaborator

editorialbot commented Dec 11, 2023

Submitting author: @mhubii (Martin Huber)
Repository: https://github.com/lbr-stack/lbr_stack_doc
Branch with paper.md (empty if default branch): main
Version: joss
Editor: @adi3
Reviewers: @CameronDevine, @dmronga
Archive: 10.5281/zenodo.13897377

Status

status

Status badge code:

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

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

@CameronDevine & @bmagyar & @vincentberenz, 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 @adi3 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 @CameronDevine

📝 Checklist for @dmronga

@editorialbot editorialbot added review TeX Track: 5 (DSAIS) Data Science, Artificial Intelligence, and Machine Learning labels Dec 11, 2023
@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.88  T=0.02 s (764.7 files/s, 33762.9 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Markdown                         2             42              0            142
TeX                              1             10              0             98
YAML                             3              5              0             66
Python                           1             16             17             54
DOS Batch                        1              8              1             26
JSON                             1              0              0             22
reStructuredText                 3              7             29             11
make                             1              4              7              9
-------------------------------------------------------------------------------
SUM:                            13             92             54            428
-------------------------------------------------------------------------------


gitinspector failed to run statistical information for the repository

@editorialbot
Copy link
Collaborator Author

Wordcount for paper.md is 988

@editorialbot
Copy link
Collaborator Author

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

OK DOIs

- 10.1109/SII55687.2023.10039308 is OK
- 10.1109/MRA.2018.2877776 is OK
- 10.1109/IROS.2004.1389727 is OK
- 10.1126/scirobotics.abm6074 is OK
- 10.21105/joss.00456 is OK

MISSING DOIs

- 10.1109/tmi.2016.2620723 may be a valid DOI for title: Towards MRI-based autonomous robotic US acquisitions: a first feasibility study

INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

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

@adi3
Copy link

adi3 commented Dec 11, 2023

@vincentberenz looks like we already had a reviewer in place and we limit papers to 2 reviews. So let me ping you for our next submission, that should also align well with your January timeline :) Thanks!

@adi3
Copy link

adi3 commented Dec 11, 2023

@editorialbot remove @vincentberenz from reviewers

@editorialbot
Copy link
Collaborator Author

@vincentberenz removed from the reviewers list!

@adi3
Copy link

adi3 commented Dec 11, 2023

👋🏼 @mhubii this is the review thread for the paper. All of our communications will happen here from now on.

👋🏼 @CameronDevine, @bmagyar - you both should generate your checklists with the JOSS requirements. As you go over the submission, please check the items that you feel have been satisfied and let the author know where further work needs to be done.

Here is a little more context for first-time reviewers :) - 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 #6138 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 reviews to be completed within about 2-4 weeks. Please let me know if any of you require some more time. We can also use @editorialbot to set automatic reminders if you know you'll be away for a known period of time.

Please feel free to ping me (@adi3) if you have any questions/concerns. Thank you for all your help!!

@bmagyar
Copy link

bmagyar commented Dec 12, 2023

Review checklist for @bmagyar

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/lbr-stack/lbr_stack_doc?
  • 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 (@mhubii) 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?

@CameronDevine
Copy link

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

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

@CameronDevine
Copy link

CameronDevine commented Dec 27, 2023

Review checklist for @CameronDevine

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/lbr-stack/lbr_stack_doc?
  • 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 (@mhubii) 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?

@CameronDevine
Copy link

@adi3 Before I get too far into this review, I would like to make sure we are all in agreement about the scope of this review. In the past, when I have both submitted and reviewed JOSS papers, the codebase and paper have been in a single repository. In this case, the codebase appears to be spread among multiple repositories all housed in a common GitHub organization. Therefore, should @bmagyar and I review all the repositories in the GitHub organization?

One exception to this rule would, I assume, be the lbr-stack/pymoveit2 repository which is a fork of another repository.

Finally, the checklist asks if the source code is available at https://github.com/lbr-stack/lbr_stack_doc, which it is not. Does this need to be changed?

@mhubii
Copy link

mhubii commented Dec 27, 2023

First of all, thank you very much for reviewing.

Correct, pymoveit2 is an unrelated fork that I will remove for clarification.

Have a good start into the new year!

@adi3
Copy link

adi3 commented Jan 8, 2024

@arfon some valid points by @CameronDevine above. How should we go about handling multi-repo codebases?

@arfon
Copy link
Member

arfon commented Jan 19, 2024

@arfon some valid points by @CameronDevine above. How should we go about handling multi-repo codebases?

This does happen sometimes, and if you believe the structure of the project is reasonable, then it's acceptable for the review to be across multiple codebases.

@CameronDevine
Copy link

@arfon @adi3 in my reviewer checklist there is an item: "Repository: Is the source code for this software available at the https://github.com/lbr-stack/lbr_stack_doc?" As this is not true, how should I proceed?

@mhubii
Copy link

mhubii commented Jan 19, 2024

Hi All, sorry for the confusion. Let me give you a brief explanation.

The architecture is as follows (paper figure 2):

23_11_21_joss_fri_dependency_architecture drawio

Top: fri (KUKA's library, unaltered, only CMake support added)
Middle: fri_vendor (expose fri cmake target to ament cmake for ROS 2), pyFRI (Python bindings for fri)
Bottom: lbr_fri_ros2_stack (all ROS 2 integration)

Why this separation? The ROS ecosystem offers a lot but comes with a steep learning curve and currently limited cross platform support. Hence, for some users it is easiest to just pip install stuff, whereas more experienced users can really benefit from ROS.

@adi3
Copy link

adi3 commented Jan 29, 2024

@CameronDevine In light of explanation provided by @mhubii I recommend checking off that item on your list. Thanks!

@adi3
Copy link

adi3 commented Jan 29, 2024

@bmagyar could you please give us an idea of when you could start off your review? Appreciate your help!

@mhubii
Copy link

mhubii commented Feb 5, 2024

thank you for the feedback @CameronDevine. Hope things are going well!

As rightfully indicated, the license is now OSI compliant. Copyright notices where third-party software was used are included.

Looking forward for further feedback so we can work through this review :)

@adi3
Copy link

adi3 commented Sep 23, 2024

@CameronDevine thanks for completing your checklist. Wanted to make sure everything's green from your side for us to proceed with this publication. Can you please confirm?

@CameronDevine
Copy link

It took longer than accepted, but I have now completed my review. Although I would have liked to test the code using the actual hardware, unsurprisingly, I don't own a Kuka IIWA. Therefore, I only have confirmed the functionality of the code using the simulation provided. Once, I was using the correct version of Ubuntu, the install went vary smoothly and the installation instructions and steps to run the examples were excellent. Therefore, I recommend that this paper be accepted.

@adi3
Copy link

adi3 commented Oct 1, 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

@adi3
Copy link

adi3 commented Oct 1, 2024

@editorialbot generate pdf

@adi3
Copy link

adi3 commented Oct 1, 2024

@editorialbot check references

@editorialbot
Copy link
Collaborator Author

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

✅ OK DOIs

- 10.1109/SII55687.2023.10039308 is OK
- 10.1109/MRA.2018.2877776 is OK
- 10.1109/TMI.2016.2620723 is OK
- 10.1109/IROS.2004.1389727 is OK
- 10.1126/scirobotics.abm6074 is OK
- 10.21105/joss.00456 is OK
- 10.6092/JOSER_2014_05_01_p3 is OK

🟡 SKIP DOIs

- No DOI given, and none found for title: iiwa_ros: A ROS Stack for KUKA’s IIWA robots using...
- No DOI given, and none found for title: ROS 2 Stack for KUKA iiwa collaborative robots
- No DOI given, and none found for title: Generic and simple controls framework for ROS 2
- No DOI given, and none found for title: The fast research interface for the kuka lightweig...

❌ MISSING DOIs

- None

❌ INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

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

@adi3
Copy link

adi3 commented Oct 1, 2024

@mhubii Looks like everything is set. Congratulations! I need one final formality to be done from your side. Please make a tagged release of the project and archive it. Then report the version number and archive DOI here. Once I have that, I will send this for publication. Cheers!

@adi3
Copy link

adi3 commented Oct 1, 2024

@mhubii While you're at it, could you also add the DOIs for the missing entries above? You can verify it anytime by running @editorialbot check references

@mhubii
Copy link

mhubii commented Oct 7, 2024

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

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

@mhubii
Copy link

mhubii commented Oct 7, 2024

awesome!

The references with no DOI do not have a DOI.

The releases are archived on Zenodo under DOI 10.5281/zenodo.13897377.

Version: joss (this is the release tag)

@adi3
Copy link

adi3 commented Oct 21, 2024

@editorialbot check references

@editorialbot
Copy link
Collaborator Author

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

✅ OK DOIs

- 10.1109/SII55687.2023.10039308 is OK
- 10.1109/MRA.2018.2877776 is OK
- 10.1109/TMI.2016.2620723 is OK
- 10.1109/IROS.2004.1389727 is OK
- 10.1126/scirobotics.abm6074 is OK
- 10.21105/joss.00456 is OK
- 10.6092/JOSER_2014_05_01_p3 is OK

🟡 SKIP DOIs

- No DOI given, and none found for title: iiwa_ros: A ROS Stack for KUKA’s IIWA robots using...
- No DOI given, and none found for title: ROS 2 Stack for KUKA iiwa collaborative robots
- No DOI given, and none found for title: Generic and simple controls framework for ROS 2
- No DOI given, and none found for title: The fast research interface for the kuka lightweig...

❌ MISSING DOIs

- None

❌ INVALID DOIs

- None

@adi3
Copy link

adi3 commented Oct 21, 2024

@crvernon can you please confirm if it's alright to have skipped DOIs in the references? Thanks! Apart from that this article looks all set to go out

@crvernon
Copy link

@adi3 yes as long as there are no missing DOI listed, which from the above it looks like there are not, then all should be good. After you run @editorialbot recommend-accept, I'll get notified that it is in my queue for final review. Thanks!

@adi3
Copy link

adi3 commented Oct 28, 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

@adi3
Copy link

adi3 commented Oct 28, 2024

@editorialbot set 10.5281/zenodo.13897377 as archive

@editorialbot
Copy link
Collaborator Author

Done! archive is now 10.5281/zenodo.13897377

@adi3
Copy link

adi3 commented Oct 28, 2024

@editorialbot set joss as version

@editorialbot
Copy link
Collaborator Author

Done! version is now joss

@adi3
Copy link

adi3 commented Oct 28, 2024

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

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

@adi3
Copy link

adi3 commented Oct 28, 2024

@editorialbot check references

@editorialbot
Copy link
Collaborator Author

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

✅ OK DOIs

- 10.1109/SII55687.2023.10039308 is OK
- 10.1109/MRA.2018.2877776 is OK
- 10.1109/TMI.2016.2620723 is OK
- 10.1109/IROS.2004.1389727 is OK
- 10.1126/scirobotics.abm6074 is OK
- 10.21105/joss.00456 is OK
- 10.6092/JOSER_2014_05_01_p3 is OK

🟡 SKIP DOIs

- No DOI given, and none found for title: iiwa_ros: A ROS Stack for KUKA’s IIWA robots using...
- No DOI given, and none found for title: ROS 2 Stack for KUKA iiwa collaborative robots
- No DOI given, and none found for title: Generic and simple controls framework for ROS 2
- No DOI given, and none found for title: The fast research interface for the kuka lightweig...

❌ MISSING DOIs

- None

❌ INVALID DOIs

- None

@adi3
Copy link

adi3 commented Oct 28, 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.1109/SII55687.2023.10039308 is OK
- 10.1109/MRA.2018.2877776 is OK
- 10.1109/TMI.2016.2620723 is OK
- 10.1109/IROS.2004.1389727 is OK
- 10.1126/scirobotics.abm6074 is OK
- 10.21105/joss.00456 is OK
- 10.6092/JOSER_2014_05_01_p3 is OK

🟡 SKIP DOIs

- No DOI given, and none found for title: iiwa_ros: A ROS Stack for KUKA’s IIWA robots using...
- No DOI given, and none found for title: ROS 2 Stack for KUKA iiwa collaborative robots
- No DOI given, and none found for title: Generic and simple controls framework for ROS 2
- No DOI given, and none found for title: The fast research interface for the kuka lightweig...

❌ MISSING DOIs

- None

❌ INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

👋 @openjournals/dsais-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#6060, 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 Oct 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
recommend-accept Papers recommended for acceptance in JOSS. review TeX Track: 5 (DSAIS) Data Science, Artificial Intelligence, and Machine Learning
Projects
None yet
Development

No branches or pull requests

8 participants