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 · 53 comments
Assignees
Labels
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: v1.0.0
Editor: @adi3
Reviewers: @CameronDevine, @dmronga
Archive: Pending

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 Apr 22, 2024

@mhubii go ahead and suggest a handful of reviewers

@adi3
Copy link

adi3 commented Apr 22, 2024

@editorialbot commands

@editorialbot
Copy link
Collaborator Author

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


# List all available commands
@editorialbot commands

# Add to this issue's reviewers list
@editorialbot add @username as reviewer

# Remove from this issue's reviewers list
@editorialbot remove @username from reviewers

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

# Assign a user as the editor of this submission
@editorialbot assign @username as editor

# Remove the editor assigned to this submission
@editorialbot remove editor

# Remind an author, a reviewer or the editor to return to a review after a 
# certain period of time (supported units days and weeks)
@editorialbot remind @reviewer in 2 weeks

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

# Set a value for version
@editorialbot set v1.0.0 as version

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

# Set a value for repository
@editorialbot set https://github.com/organization/repo as repository

# Set a value for the archive DOI
@editorialbot set set 10.5281/zenodo.6861996 as archive

# Mention the EiCs for the correct track
@editorialbot ping track-eic

# Run checks and provide information on the repository and the paper file
@editorialbot check repository

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

# Generates the pdf paper
@editorialbot generate pdf

# Recommends the submission for acceptance
@editorialbot recommend-accept

# Generates a LaTeX preprint file
@editorialbot generate preprint

# Flag submission with questionable scope
@editorialbot query scope

# Get a link to the complete list of reviewers
@editorialbot list reviewers

# Creates a post-review checklist with editor and authors tasks
@editorialbot create post-review checklist

# Open the review issue
@editorialbot start review

@adi3
Copy link

adi3 commented Apr 22, 2024

@editorialbot remove @bmagyar from reviewers

@editorialbot
Copy link
Collaborator Author

@bmagyar removed from the reviewers list!

@adi3
Copy link

adi3 commented Apr 22, 2024

@CameronDevine could you please continue with your checklist as we look out for another reviewer? Thanks!

@adi3
Copy link

adi3 commented Apr 29, 2024

@editorialbot add @dmronga as reviewer

@editorialbot
Copy link
Collaborator Author

@dmronga added to the reviewers list!

@adi3
Copy link

adi3 commented Apr 29, 2024

@dmronga thank you for agreeing to take up this review. Please see instructions in the intro message and let me know if you have any questions

@dmronga
Copy link

dmronga commented May 7, 2024

Review checklist for @dmronga

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?

@dmronga
Copy link

dmronga commented May 15, 2024

@adi3 I have a question regarding the functionality of the software, which claims to work on 4 different KUKA LBR robots as one of the main contributions. Obviously, this cannot be tested without having the actual hardware available (although I am intending to do a test on at least the LBR iiwa 14, which we have in our lab). I assume checking if the Gazebo simulation is working should be enough in this case?

@dmronga
Copy link

dmronga commented May 15, 2024

@mhubii I found some minor issues (apart from those already mentioned by previous reviewer). Feel free to have a look any time

@mhubii
Copy link

mhubii commented May 15, 2024

perfect @dmronga , may I kindly ask you to tag this issue: #6138

in all the issue you find

@dmronga
Copy link

dmronga commented May 15, 2024

Sure, done

@adi3
Copy link

adi3 commented May 27, 2024

@CameronDevine can I ask you to please clear out the last few items in your checklist? Would appreciate it!

@CameronDevine
Copy link

@CameronDevine can I ask you to please clear out the last few items in your checklist? Would appreciate it!

I will try to complete as much as I can today. I am also still waiting on a few issues to be closed before my review is complete. Specifically:

@mhubii
Copy link

mhubii commented May 28, 2024

that's correct, I am at it ! :)

@mhubii
Copy link

mhubii commented Jun 12, 2024

@editorialbot generate pdf

refers to lbr-stack/lbr_stack_doc#26

@editorialbot
Copy link
Collaborator Author

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

@adi3
Copy link

adi3 commented Jun 24, 2024

@CameronDevine just a couple of points outstanding in your checklist. Could you please have a look at them? Thanks!

@adi3
Copy link

adi3 commented Jun 24, 2024

Fyi, I'm emailed Cameron to see if we could get his attention 💪

@mhubii
Copy link

mhubii commented Jun 24, 2024

no worries, it is currently on me to close two issues. My fault really

@CameronDevine
Copy link

For the record, the two outstanding issues for me are:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
review TeX Track: 5 (DSAIS) Data Science, Artificial Intelligence, and Machine Learning
Projects
None yet
Development

No branches or pull requests

7 participants