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 #602

Closed
59 of 61 tasks
Blast545 opened this issue Mar 19, 2020 · 2 comments
Closed
59 of 61 tasks

Progress toward Quality Level 1 #602

Blast545 opened this issue Mar 19, 2020 · 2 comments
Assignees

Comments

@Blast545
Copy link
Contributor

Blast545 commented Mar 19, 2020

This issue tracks the progression of packages in rcl that have been deemed necessary for Quality Level 1 and a 1.0 version level. It follows the outline described in REP 2004.

The packages slated for Quality Level 1 for ROS 2 Foxy are:

  • rcl
  • rcl_action
  • rcl_lifecycle
  • rcl_yaml_param_parser

Progress common to all packages:

  • Version Policy
  • Version >= 1.0.0
  • Change Control Process
  • API and ABI stability within a ROS distribution
  • Quality Declaration document for each package
  • Vulnerability Disclosure Policy
  • Supports all tier 1 platforms as described in REP-2000
  • Declared set of licenses
  • Copyright statement in each source file
    • Checked with ament_lint_common

Progress of specific packages

rcl

Documentation

  • Per-feature documentation.
  • Per-item documentation in public API.

Dependencies:

  • Runtime "ROS" dependencies are level 1
    • rmw (QL 4)
    • rcl_interfaces (QL 4)
    • rcl_logging_spdlog (QL 4)
    • rcl_yaml_param_parser (QL 4)
    • rcutils (QL 2)
    • rmw_implementation (QL 4)
    • rosidl_runtime_c (QL 4)
    • tracetools (QL 2)
  • Non-ROS dependencies are equivalent level 1
    • None

Testing:

  • Must have system tests which cover all items in the "feature" documentation
  • Must have system, integration, and/or unit tests which cover all of the public API
  • Code Coverage > 95%:
      • Must have code coverage tracking for the package -> here
      • Must have and enforce a code coverage policy for new changes Policy
  • Performance tests: not currently available.
  • Linters and Static Analysis:

rcl_action

Documentation

  • Per-feature documentation.
  • Per-item documentation in public API.

Dependencies:

  • Runtime "ROS" dependencies are level 1
    • rmw (QL 4)
    • rcutils (QL 2)
    • rosidl_runtime_c (QL 4)
    • action_msgs (QL 4)
  • Non-ROS dependencies are equivalent level 1
    • None

Testing:

  • Must have system tests which cover all items in the "feature" documentation
  • Must have system, integration, and/or unit tests which cover all of the public API
  • Code Coverage > 95%:
      • Must have code coverage tracking for the package -> here
      • Must have and enforce a code coverage policy for new changes Policy
  • Performance tests: not currently available.
  • Linters and Static Analysis:

rcl_lifecycle

Documentation

  • Per-feature documentation.
  • Per-item documentation in public API.

Dependencies:

  • Runtime "ROS" dependencies are level 1
    • rmw (QL 4)
    • rcl (QL 4)
    • lifecycle_msgs (QL 4)
    • rosidl_runtime_c (QL 4)
  • Non-ROS dependencies are equivalent level 1
    • None

Testing:

  • Must have system tests which cover all items in the "feature" documentation
  • Must have system, integration, and/or unit tests which cover all of the public API
  • Code Coverage > 95%:
      • Must have code coverage tracking for the package -> here
      • Must have and enforce a code coverage policy for new changes Policy
  • Performance tests: not currently available.
  • Linters and Static Analysis:

rcl_yaml_param_parser

Documentation

  • Per-feature documentation.
  • Per-item documentation in public API.

Dependencies:

  • Runtime "ROS" dependencies are level 1
    • libyaml_vendor (QL 4)
    • rcutils (QL 2)
  • Non-ROS dependencies are equivalent level 1
    • None

Testing:

  • Must have system tests which cover all items in the "feature" documentation
  • Must have system, integration, and/or unit tests which cover all of the public API
  • Code Coverage > 95%:
      • Must have code coverage tracking for the package -> here
      • Must have and enforce a code coverage policy for new changes Policy
  • Performance tests: not currently available.
  • Linters and Static Analysis:
@jacobperron
Copy link
Member

FYI, we now have a 1.0.0 release: ros/rosdistro#24843

@chapulina
Copy link

All packages reached level 1 🎉 #866

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

3 participants