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

Progress toward Quality Level 1 #39

Closed
19 tasks done
brawner opened this issue Feb 5, 2020 · 1 comment
Closed
19 tasks done

Progress toward Quality Level 1 #39

brawner opened this issue Feb 5, 2020 · 1 comment
Assignees

Comments

@brawner
Copy link
Contributor

brawner commented Feb 5, 2020

This issue tracks the progression of rcpputils to Quality Level 1 and a 1.0 version level. It follows the outline described in REP 2004.

  • Version Policy
    • Follows ROS Core Quality Declaration
  • Version >= 1.0.0
  • Change Control Process
    • Follows ROS Core
  • PRs automatically tested on Jenkins

Documentation

  • Per-feature documentation.
    • Features still needing documentation on README.md or equivalent (endian.hpp, filesystem_helper.hpp, find_and_replace.hpp, find_library.hpp, join.hpp, split.hpp, pointer_traits.hpp, visibility_control.hpp)
  • Per-item documentation in public API.
    • Items need doc blocks (endian.hpp, filesystem_helper.hpp, thread_safety_annotations.hpp, visibility_control.hpp)
    • Items needing doc improvements (join.hpp)
  • Declared set of licenses
  • Copyright statement in each source file
  • Quality Declaration document (Quality declaration #47)

Testing:

Dependencies:

  • Runtime "ROS" dependencies are level 1
    • rcutils
  • non-ROS dependencies are equivalent level 1
    • c++ standard library

Platform Support

  • Supports all tier 1 platforms

Specific comments:

  • filesystem_helper.hpp could attempt to include <filesystem> and use std::filesystem if possible. It's likely Foxy's supported systems already have <filesystem>
  • find_and_replace.hpp
    • A regex based solution might have better performance
    • Tests could use more variation
  • find_library.hpp
    • Could use more tests
  • join.hpp
    • Doc block's description is a little clunky
    • delim could be an optional parameter with a null default
    • Tests could use more variation of containers and value types
  • pointer_traits.hpp
    • Tests could use more variation of false cases
  • split.hpp
    • is inline necessary?
  • thread_safety_annotations.hpp
    • #define statements need documentation
    • Untested defines (RCPPUTILS_TSA_TRY_ACQUIRE, RCPPUTILS_TSA_TRY_ACQUIRE_SHARED, RCPPUTILS_TSA_ACQUIRED_BEFORE, RCPPUTILS_TSA_ACQUIRED_AFTER)
  • visibility_control.hpp
    • Needs tests
    • Needs documentation
@chapulina
Copy link
Contributor

Reached level 1: #114

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants