From f82fdb0705f0b37dc61f3b73378aa04348f797fe Mon Sep 17 00:00:00 2001 From: Stephen Brawner Date: Wed, 4 Mar 2020 17:46:22 -0800 Subject: [PATCH 1/7] Create package-level READMEs and add some inline comments Signed-off-by: Stephen Brawner --- README.md | 9 +++ action_msgs/README.md | 13 ++++ action_msgs/msg/GoalStatus.msg | 21 +++++- action_msgs/srv/CancelGoal.srv | 33 ++++++--- builtin_interfaces/README.md | 10 +++ builtin_interfaces/msg/Duration.msg | 6 ++ builtin_interfaces/msg/Time.msg | 5 ++ composition_interfaces/README.md | 9 +++ composition_interfaces/srv/LoadNode.srv | 28 ++++++-- composition_interfaces/srv/UnloadNode.srv | 1 + lifecycle_msgs/README.md | 20 ++++++ lifecycle_msgs/msg/State.msg | 49 +++++++++++--- lifecycle_msgs/msg/Transition.msg | 67 ++++++++++++++----- lifecycle_msgs/msg/TransitionDescription.msg | 5 ++ lifecycle_msgs/msg/TransitionEvent.msg | 7 ++ lifecycle_msgs/srv/ChangeState.srv | 4 ++ lifecycle_msgs/srv/GetAvailableStates.srv | 1 + .../srv/GetAvailableTransitions.srv | 1 + lifecycle_msgs/srv/GetState.srv | 1 + rcl_interfaces/README.md | 33 +++++++-- rcl_interfaces/msg/FloatingPointRange.msg | 20 +++--- rcl_interfaces/msg/IntegerRange.msg | 16 +++-- rcl_interfaces/msg/ListParametersResult.msg | 5 +- rcl_interfaces/msg/Log.msg | 46 ++++++++++--- rcl_interfaces/msg/Parameter.msg | 7 +- rcl_interfaces/msg/ParameterDescriptor.msg | 6 +- rcl_interfaces/msg/ParameterEvent.msg | 10 ++- rcl_interfaces/msg/ParameterType.msg | 4 ++ rcl_interfaces/msg/ParameterValue.msg | 25 ++++++- rcl_interfaces/msg/SetParametersResult.msg | 9 +-- rcl_interfaces/srv/DescribeParameters.srv | 5 +- rcl_interfaces/srv/GetParameterTypes.srv | 6 +- rcl_interfaces/srv/GetParameters.srv | 14 ++-- rcl_interfaces/srv/ListParameters.srv | 5 +- rcl_interfaces/srv/SetParameters.srv | 2 +- .../srv/SetParametersAtomically.srv | 3 +- rosgraph_msgs/README.md | 9 +++ rosgraph_msgs/msg/Clock.msg | 5 +- 38 files changed, 418 insertions(+), 102 deletions(-) create mode 100644 action_msgs/README.md create mode 100644 builtin_interfaces/README.md create mode 100644 composition_interfaces/README.md create mode 100644 lifecycle_msgs/README.md create mode 100644 rosgraph_msgs/README.md diff --git a/README.md b/README.md index f690780f..948c43e8 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,11 @@ # rcl_interfaces repository This repository contains a set of packages that primarily contain interface files (.msg and .srv) which are used both to implement client library concepts and for testing. + +# rcl_interface packages +* [action_msgs](action_msgs/README.md): Messages and services for [ROS 2 actions](http://design.ros2.org/articles/actions.html) +* [builtin_interfaces](builtin_interfaces/README.md): Message definitions for types in the OMG IDL Platform Specific Model +* [composition_interfaces](composition_interfaces/README.md): Services for managing composeable nodes. +* [lifecycle_msgs](lifecycle_msgs/README.md): Message and service definitions for managing lifecycle nodes. +* [rcl_interfaces](rcl_interfaces/README.md): Message and service definitions for ROS client libraries +* [rosgraph_msgs](rosgraph_msgs/README.md): Message definitions relating the ROS Computation Graph +* test_msgs: Used exclusively for testing purposes diff --git a/action_msgs/README.md b/action_msgs/README.md new file mode 100644 index 00000000..f042d04a --- /dev/null +++ b/action_msgs/README.md @@ -0,0 +1,13 @@ +# action_msgs +This package contains several messages and services useful for ROS 2 actions. +More information about actions can be found on its [design article](http://design.ros2.org/articles/actions.html). + +For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/) + +## Messages (.msg) +* [GoalInfo](msg/GoalInfo.msg): Goal identifier message, with a goal id and time stamp +* [GoalStatus](msg/GoalStatus.msg): Describes a goal's current state machine status +* [GoalStatusArray](msg/GoalStatusArray.msg): An array of [GoalStatus](msg/GoalStatus.msg) messages + +## Services (.srv) +* [CancelGoal](srv/CancelGoal.srv): Cancel Goals either by id and/or timestamp diff --git a/action_msgs/msg/GoalStatus.msg b/action_msgs/msg/GoalStatus.msg index c6eaf587..78d88556 100644 --- a/action_msgs/msg/GoalStatus.msg +++ b/action_msgs/msg/GoalStatus.msg @@ -1,15 +1,32 @@ -# An action goal can be in one of these states after it is accepted by an action server. +# An action goal can be in one of these states after it is accepted by an action +# server. +# # For more information, see http://design.ros2.org/articles/actions.html + +# Indicates status has not been properly set int8 STATUS_UNKNOWN = 0 + +# The goal has been accepted and is awaiting execution. int8 STATUS_ACCEPTED = 1 + +# The goal is currently being executed by the action server. int8 STATUS_EXECUTING = 2 + +# The client has requested that the goal be canceled and the action server has +# accepted the cancel request. int8 STATUS_CANCELING = 3 + +# The goal was achieved successfully by the action server. int8 STATUS_SUCCEEDED = 4 + +# The goal was canceled after an external request from an action client. int8 STATUS_CANCELED = 5 + +# The goal was terminated by the action server without an external request. int8 STATUS_ABORTED = 6 # Goal info (contains ID and timestamp) GoalInfo goal_info -# Goal status +# Action goal state-machine status int8 status diff --git a/action_msgs/srv/CancelGoal.srv b/action_msgs/srv/CancelGoal.srv index aed63448..fc04334d 100644 --- a/action_msgs/srv/CancelGoal.srv +++ b/action_msgs/srv/CancelGoal.srv @@ -8,28 +8,39 @@ # - If the goal ID is not zero and timestamp is not zero, cancel the goal with # the given ID and all goals accepted at or before the timestamp. -# Goal info containing an ID and timestamp +# Goal info describing the goals to cancel, see above GoalInfo goal_info --- -# Return codes +## +## Return codes +## + # Indicates the request was accepted without any errors. -# One or more goals have transitioned to the CANCELING state. -# The goals_canceling list is not empty. +# +# One or more goals have transitioned to the CANCELING state. The +# goals_canceling list is not empty. int8 ERROR_NONE=0 + # Indicates the request was rejected. -# No goals have transitioned to the CANCELING state. -# The goals_canceling list is empty. +# +# No goals have transitioned to the CANCELING state. The goals_canceling list is +# empty. int8 ERROR_REJECTED=1 + # Indicates the requested goal ID does not exist. -# No goals have transitioned to the CANCELING state. -# The goals_canceling list is empty. +# +# No goals have transitioned to the CANCELING state. The goals_canceling list is +# empty. int8 ERROR_UNKNOWN_GOAL_ID=2 + # Indicates the goal is not cancelable because it is already in a terminal state. -# No goals have transitioned to the CANCELING state. -# The goals_canceling list is empty. +# +# No goals have transitioned to the CANCELING state. The goals_canceling list is +# empty. int8 ERROR_GOAL_TERMINATED=3 -# Return code +# Return code, see above definitions int8 return_code + # Goals that accepted the cancel request GoalInfo[] goals_canceling diff --git a/builtin_interfaces/README.md b/builtin_interfaces/README.md new file mode 100644 index 00000000..fa663a94 --- /dev/null +++ b/builtin_interfaces/README.md @@ -0,0 +1,10 @@ +# builtin_interfaces +A package containing message definitions for types defined in the OMG IDL Platform Specific Model. + +For more information about ROS 2 time, see [design.ros2.org](https://design.ros2.org/articles/clock_and_time.html) + +For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/) + +## Messages (.msg) +* [Duration](msg/Duration.msg): Describes a time duration composed of seconds and nanoseconds components. +* [Time](msg/Time.msg): Describes a point in time, composed of seconds and nanoseconds components. diff --git a/builtin_interfaces/msg/Duration.msg b/builtin_interfaces/msg/Duration.msg index 9eb444cc..8519a05a 100644 --- a/builtin_interfaces/msg/Duration.msg +++ b/builtin_interfaces/msg/Duration.msg @@ -1,2 +1,8 @@ +# Duration defines a period between two time points. It is comprised of a +# seconds component and a nanoseconds component. + +# Seconds component, range is valid over any possible int32 value. int32 sec + +# Nanoseconds component in the range of [0, 10e9) uint32 nanosec diff --git a/builtin_interfaces/msg/Time.msg b/builtin_interfaces/msg/Time.msg index 9eb444cc..7c7f5c34 100644 --- a/builtin_interfaces/msg/Time.msg +++ b/builtin_interfaces/msg/Time.msg @@ -1,2 +1,7 @@ +# Time indicates a specific point in time, relative to a clock's 0 point. + +# The seconds component, valid over all int32 values int32 sec + +# The nanoseconds component, valid in the range [0, 10e9) uint32 nanosec diff --git a/composition_interfaces/README.md b/composition_interfaces/README.md new file mode 100644 index 00000000..d522d512 --- /dev/null +++ b/composition_interfaces/README.md @@ -0,0 +1,9 @@ +# composition_interfaces +This is a package containing message and service definitions for managing composable nodes in a container process. Generally these services are used by the ROS 2 [`roslaunch`](https://design.ros2.org/articles/roslaunch.html) system. + +For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/) + +## Services (.srv) +* [ListNodes](srv/ListNodes.srv): Retrieve a list of running composable nodes, including their names and ids. +* [LoadNodes](srv/LoadNode.srv): Load a composable node +* [UnloadNode](UnloadNode.srv): Unload a specified node by its id diff --git a/composition_interfaces/srv/LoadNode.srv b/composition_interfaces/srv/LoadNode.srv index 973b0e37..cd6dfdad 100644 --- a/composition_interfaces/srv/LoadNode.srv +++ b/composition_interfaces/srv/LoadNode.srv @@ -1,18 +1,29 @@ -# A ROS package the composable node can be found in +# The ROS package in which the composable node can be found string package_name -# a plugin within that package + +# A plugin within the ROS package "package_name" string plugin_name -# Name the composable node should use, or empty to use the node's default name +# The assigned name of the composable node. Leave empty to use the node's +# default name string node_name -# Namespace the composable node should use, or empty to use the node's default namespace + +# The assigned namespace of the composable node. Leave empty to use the node's +# default namespace string node_namespace -# Values from message rcl_interfaces/Log + +# The assigned log level of the composable node. Enum values are found in +# message rcl_interfaces/Log uint8 log_level -# Remap rules + +# Remapping rules for this composable node. +# +# For more info about static_remapping rules and their syntax, see +# https://design.ros2.org/articles/static_remapping.html # TODO(sloretz) rcl_interfaces message for remap rules? string[] remap_rules -# Parameters to set + +# The Parameters of this composable node to set rcl_interfaces/Parameter[] parameters # key/value arguments that are specific to a type of container process @@ -20,9 +31,12 @@ rcl_interfaces/Parameter[] extra_arguments --- # True if the node was successfully loaded bool success + # Human readable error message if success is false, else empty string string error_message + # Name of the loaded composable node (including namespace) string full_node_name + # A unique identifier for the loaded node uint64 unique_id diff --git a/composition_interfaces/srv/UnloadNode.srv b/composition_interfaces/srv/UnloadNode.srv index 15f310d8..37c90657 100644 --- a/composition_interfaces/srv/UnloadNode.srv +++ b/composition_interfaces/srv/UnloadNode.srv @@ -3,5 +3,6 @@ uint64 unique_id --- # True if the node existed and was unloaded bool success + # Human readable error message if success is false, else empty string string error_message diff --git a/lifecycle_msgs/README.md b/lifecycle_msgs/README.md new file mode 100644 index 00000000..a05272b0 --- /dev/null +++ b/lifecycle_msgs/README.md @@ -0,0 +1,20 @@ +# lifecycle_msgs +This package contains message and service definitions for managing lifecycle nodes. +These messages and services form a standardized interface for transitioning these +managed nodes through a known state-machine. + +For more information about life cycle nodes see: [design.ros2.org](http://design.ros2.org/articles/node_lifecycle.html) + +For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/) + +## Messages (.msg) +* [State](msg/State.msg): A lifecycle node's state-machine state +* [Transition](msg/Transition.msg): A state transition with specific id and label +* [TransitionDescription](msg/TransitionDescription.msg): A description of a transition from one state-machine state to another. +* [TransitionEvent](msg/TransitionEvent.msg): A timestamped state transition + +## Services (.srv) +* [ChangeState](srv/ChangeState.srv): Request a node change states with a specific transition +* [GetAvailableStates](srv/GetAvailableStates.srv): Request an array of states that this node can transition to. +* [GetAvailableTransitions](srv/GetAvailableTransitions.srv): Request an array of lifecycle state transitions available for this node +* [GetState](srv/GetState.srv): Request the current lifecycle state of this node diff --git a/lifecycle_msgs/msg/State.msg b/lifecycle_msgs/msg/State.msg index 330203ff..9ca15f4f 100644 --- a/lifecycle_msgs/msg/State.msg +++ b/lifecycle_msgs/msg/State.msg @@ -1,26 +1,57 @@ -# Primary state definitions -# as depicted in +# Primary state definitions as depicted in # http://design.ros2.org/articles/node_lifecycle.html -# These are the primary states -# State changes can only be requested -# when the node is in one of these states. +# These are the primary states. State changes can only be requested when the +# node is in one of these states. + +# Indicates state has not yet been set uint8 PRIMARY_STATE_UNKNOWN = 0 + +# This is the life cycle state the node is in immediately after being +# instantiated. uint8 PRIMARY_STATE_UNCONFIGURED = 1 + +# This state represents a node that is not currently performing any processing. uint8 PRIMARY_STATE_INACTIVE = 2 + +# This is the main state of the node’s life cycle. While in this state, the node +# performs any processing, responds to service requests, reads and processes +# data, produces output, etc. uint8 PRIMARY_STATE_ACTIVE = 3 + +# The Finalized state is the state in which the node ends immediately before +# being destroyed uint8 PRIMARY_STATE_FINALIZED = 4 -# Temporary intermediate states -# When a transition is requested, the -# node changes its state into one -# of these states. +# Temporary intermediate states. When a transition is requested, the node +# changes its state into one of these states. + +# In this transition state the node’s onConfigure callback will be called to +# allow the node to load its configuration and conduct any required setup. uint8 TRANSITION_STATE_CONFIGURING = 10 + +# In this transition state the node’s callback onCleanup will be called to clear +# all state and return the node to a functionally equivalent state as when +# first created. uint8 TRANSITION_STATE_CLEANINGUP = 11 + +# In this transition state the callback onShutdown will be executed to do any +# cleanup necessary before destruction uint8 TRANSITION_STATE_SHUTTINGDOWN = 12 + +# In this transition state the callback onActivate will be executed to do any +# final preparations to start executing uint8 TRANSITION_STATE_ACTIVATING = 13 + +# In this transition state the callback onDeactivate will be executed to do any +# cleanup to start executing, and reverse the onActivate changes. uint8 TRANSITION_STATE_DEACTIVATING = 14 + +# This transition state is where any error may be cleaned up uint8 TRANSITION_STATE_ERRORPROCESSING = 15 +# The state id value from the above definitions uint8 id + +# A text label of the state string label diff --git a/lifecycle_msgs/msg/Transition.msg b/lifecycle_msgs/msg/Transition.msg index 23305432..d7cc5516 100644 --- a/lifecycle_msgs/msg/Transition.msg +++ b/lifecycle_msgs/msg/Transition.msg @@ -1,25 +1,49 @@ -# Default values for transitions -# as described on +# Default values for transitions as described on # http://design.ros2.org/articles/node_lifecycle.html -# Externally available transitions. -# When a node is in one of these primary states, -# these transitions can be invoked. +# Reserved [0-9], publicly available transitions. +# When a node is in one of these primary states, these transitions can be +# invoked. + +# This transition will instantiate the node, but will not run any code beyond +# the constructor uint8 TRANSITION_CREATE = 0 + +# The node’s onConfigure callback will be called to allow the node to load its +# configuration and conduct any required setup uint8 TRANSITION_CONFIGURE = 1 + +# The node’s callback onCleanup will be called in this transition to allow the +# node to load its configuration and conduct any required setup uint8 TRANSITION_CLEANUP = 2 + +# The node's callback onActivate will be executed to do any final preparations +# to start executing uint8 TRANSITION_ACTIVATE = 3 + +# The node's callback onDeactivate will be executed to do any cleanup to start +# executing, and reverse the onActivate changes uint8 TRANSITION_DEACTIVATE = 4 + +# This signals shutdown during an unconfigured state, the node's callback +# onShutdown will be executed to do any cleanup necessary before destruction uint8 TRANSITION_UNCONFIGURED_SHUTDOWN = 5 + +# This signals shutdown during an inactive state, the node's callback onShutdown +# will be executed to do any cleanup necessary before destruction uint8 TRANSITION_INACTIVE_SHUTDOWN = 6 + +# This signals shutdown during an active state, the node's callback onShutdown +# will be executed to do any cleanup necessary before destruction uint8 TRANSITION_ACTIVE_SHUTDOWN = 7 + +# This transition will simply cause the deallocation of the node uint8 TRANSITION_DESTROY = 8 -# These transitions are not publically -# available and cannot be invoked by a user. -# The following transitions are implicitly -# invoked based on the callback feedback -# of the intermediate transition states. +# Reserved [10-69], private transitions +# These transitions are not publicly available and cannot be invoked by a user. +# The following transitions are implicitly invoked based on the callback +# feedback of the intermediate transition states. uint8 TRANSITION_ON_CONFIGURE_SUCCESS = 10 uint8 TRANSITION_ON_CONFIGURE_FAILURE = 11 uint8 TRANSITION_ON_CONFIGURE_ERROR = 12 @@ -44,14 +68,27 @@ uint8 TRANSITION_ON_ERROR_SUCCESS = 60 uint8 TRANSITION_ON_ERROR_FAILURE = 61 uint8 TRANSITION_ON_ERROR_ERROR = 62 -# These return values ought to be set -# as a return value for each callback. -# Depending on which return value, -# the transition will be executed correctly -# or fallback/error callbacks will be triggered. +# Reserved [90-99]. Transition callback success values +# These return values ought to be set as a return value for each callback. +# Depending on which return value, the transition will be executed correctly or +# fallback/error callbacks will be triggered. + +# The transition callback successfully performed its required functionality uint8 TRANSITION_CALLBACK_SUCCESS = 97 + +# The transition callback failed to perform its required functionality uint8 TRANSITION_CALLBACK_FAILURE = 98 + +# The transition callback encountered an error that requires special cleanup, if +# possible uint8 TRANSITION_CALLBACK_ERROR = 99 +## +## Fields +## + +# The transition id from above definitions uint8 id + +# A text label of the transition string label diff --git a/lifecycle_msgs/msg/TransitionDescription.msg b/lifecycle_msgs/msg/TransitionDescription.msg index c9ddcc00..5958c901 100644 --- a/lifecycle_msgs/msg/TransitionDescription.msg +++ b/lifecycle_msgs/msg/TransitionDescription.msg @@ -1,3 +1,8 @@ +# The transition id and label of this description Transition transition + +# The current state from which this transition transitions State start_state + +# The desired target state of this transition State goal_state diff --git a/lifecycle_msgs/msg/TransitionEvent.msg b/lifecycle_msgs/msg/TransitionEvent.msg index 70b1222d..95ec8e39 100644 --- a/lifecycle_msgs/msg/TransitionEvent.msg +++ b/lifecycle_msgs/msg/TransitionEvent.msg @@ -1,4 +1,11 @@ +# The time point at which this event occurred uint64 timestamp + +# The id and label of this transition event Transition transition + +# The starting state from which this event transitioned State start_state + +# The end state of this transition event State goal_state diff --git a/lifecycle_msgs/srv/ChangeState.srv b/lifecycle_msgs/srv/ChangeState.srv index 14f2bbc2..2e2ebc24 100644 --- a/lifecycle_msgs/srv/ChangeState.srv +++ b/lifecycle_msgs/srv/ChangeState.srv @@ -1,3 +1,7 @@ +# The requested transition. This change state service will fail if the +# transition is not possible Transition transition --- + +# Indicates whether the service was able to initiate the state transition bool success diff --git a/lifecycle_msgs/srv/GetAvailableStates.srv b/lifecycle_msgs/srv/GetAvailableStates.srv index b9c505c0..ef156d53 100644 --- a/lifecycle_msgs/srv/GetAvailableStates.srv +++ b/lifecycle_msgs/srv/GetAvailableStates.srv @@ -1,2 +1,3 @@ --- +# Array of possible states that can be transitioned to State[] available_states diff --git a/lifecycle_msgs/srv/GetAvailableTransitions.srv b/lifecycle_msgs/srv/GetAvailableTransitions.srv index 24d35006..a7f4e506 100644 --- a/lifecycle_msgs/srv/GetAvailableTransitions.srv +++ b/lifecycle_msgs/srv/GetAvailableTransitions.srv @@ -1,2 +1,3 @@ --- +# An array of the possible start_state-goal_state transitions TransitionDescription[] available_transitions diff --git a/lifecycle_msgs/srv/GetState.srv b/lifecycle_msgs/srv/GetState.srv index 69b9df58..b26777d8 100644 --- a/lifecycle_msgs/srv/GetState.srv +++ b/lifecycle_msgs/srv/GetState.srv @@ -1,2 +1,3 @@ --- +# The current state-machine state of the node State current_state diff --git a/rcl_interfaces/README.md b/rcl_interfaces/README.md index 0518e91f..39adf030 100644 --- a/rcl_interfaces/README.md +++ b/rcl_interfaces/README.md @@ -1,22 +1,25 @@ # rcl_interfaces -This package contains the messages and services which ROS client libraries will use under the hood to -communicate higher level concepts such as parameters. +This package contains the messages and services which ROS client libraries will use under the hood to communicate higher level concepts such as parameters. +For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/) ## Parameter Groups Parameters are contained in groups. The default group is '/'. It behaves like a filepath, where you can nest sub-groups within groups. +For more information about parameters, see: +[design.ros2.org](https://design.ros2.org/articles/ros_parameters.html) + ## Standard topics for parameters The ROS API for a node will be as follows inside the node's namespace. ### Topics: * `parameter_events`: `ParameterEvent` - * This topic provides a way to subscribe to all parameter updates occuring on the node, including addition removal and changes in value. Every atomic change will be published separately. + * This topic provides a way to subscribe to all parameter updates occurring on the node, including addition removal and changes in value. Every atomic change will be published separately. * `parameter_event_descriptors`: `ParameterEventDescriptors` - * This topic provides a way to subscribe to all parameter updates occuring on the node, including addition removal and changes in value. + * This topic provides a way to subscribe to all parameter updates occurring on the node, including addition removal and changes in value. Every atomic change will be published separately. This is provided if large parameter values are expected to slow down the system. ### Services: @@ -29,3 +32,25 @@ The ROS API for a node will be as follows inside the node's namespace. * List the parameters on this node matching the filters. * `set_parameters`: `SetParameters` * Set parameters on this node. + +## Messages (.msg) +* [FloatingPointRange](msg/FloatingPointRange.msg): Represents bounds and a step value for a floating point typed parameter +* [IntegerRange](msg/IntegerRange.msg): Represents bounds and a step value for an integer typed parameter +* [IntraProcessMessage](msg/IntraProcessMessage.msg): Demonstration message for passing around a pointer to shared memory. +* [ListParameterResult](msg/ListParameterResult.msg): This is the returned result of ListParameters service +* [Log](msg/Log.msg): A message for communicating log messages and their levels +* [Parameter](msg/Parameter.msg): A message for setting and getting parameter values +* [ParameterDescriptor](msg/ParameterDescriptor.msg): A more informational message about parameters and their values +* [ParameterEvent](msg/ParameterEvent.msg): For information regarding setting, changing or removing parameter events +* [ParameterEventDescriptors](msg/ParameterEventDescriptors.msg): Message describing parameter updates occurring on the node, including addition removal and changes in value +* [ParameterType](msg/ParameterType.msg): Enum definitions for denoting a parameter value's type +* [ParameterValue](msg/ParameterValue.msg): The associated value and type of a parameter +* [SetParameterResult](msg/SetParametersResult.msg): Result message indicating whether a set parameters event succeeded + +## Services (.srv) +* [DescribeParameters](srv/DescribeParameters.srv): Request a list of descriptions for a specified list of parameters. +* [GetParameters](srv/GetParameters.srv): Get the values of a specific list of parameters +* [GetParameterTypes](srv/GetParametersTypes.srv): Get the enum type of a list of parameters +* [ListParameters](srv/ListParameters.srv): Get the list of parameters given a list of prefixes +* [SetParameters](srv/SetParameters.srv): Add or change a list of parameters individually +* [SetParametersAtomically](srv/SetParametersAtomically.srv): Add or change all parameters in a list or none at all. diff --git a/rcl_interfaces/msg/FloatingPointRange.msg b/rcl_interfaces/msg/FloatingPointRange.msg index 3dcd5ae4..a2ececaa 100644 --- a/rcl_interfaces/msg/FloatingPointRange.msg +++ b/rcl_interfaces/msg/FloatingPointRange.msg @@ -7,18 +7,22 @@ float64 from_value float64 to_value # Size of valid steps between the from and to bound. -# Step is considered to be a magnitude, therefore negative values are treated the -# same as positive values, and a step value of zero implies a continuous range of -# values. +# +# Step is considered to be a magnitude, therefore negative values are treated +# the same as positive values, and a step value of zero implies a continuous +# range of values. +# # Ideally, the step would be less than or equal to the distance between the # bounds, as well as an even multiple of the distance between the bounds, but # neither are required. +# # If the absolute value of the step is larger than or equal to the distance -# between the two bounds, then the bounds will be the only valid values, -# e.g. if the range is defined as {from_value: 1.0, to_value: 2.0, step: 5.0} then -# the valid values will be 1.0 and 2.0. +# between the two bounds, then the bounds will be the only valid values. e.g. if +# the range is defined as {from_value: 1.0, to_value: 2.0, step: 5.0} then the +# valid values will be 1.0 and 2.0. +# # If the step is less than the distance between the bounds, but the distance is # not a multiple of the step, then the "to" bound will always be a valid value, -# e.g. if the range is defined as {from_value: 2.0, to_value: 5.0, step: 2.0} then -# the valid values will be 2.0, 4.0, and 5.0. +# e.g. if the range is defined as {from_value: 2.0, to_value: 5.0, step: 2.0} +# then the valid values will be 2.0, 4.0, and 5.0. float64 step diff --git a/rcl_interfaces/msg/IntegerRange.msg b/rcl_interfaces/msg/IntegerRange.msg index 013e0de3..b41aec12 100644 --- a/rcl_interfaces/msg/IntegerRange.msg +++ b/rcl_interfaces/msg/IntegerRange.msg @@ -7,14 +7,16 @@ int64 from_value int64 to_value # Size of valid steps between the from and to bound. -# A step value of zero implies a continuous range of values. -# Ideally, the step would be less than or equal to the distance between the -# bounds, as well as an even multiple of the distance between the bounds, but -# neither are required. +# +# A step value of zero implies a continuous range of values. Ideally, the step +# would be less than or equal to the distance between the bounds, as well as an +# even multiple of the distance between the bounds, but neither are required. +# # If the absolute value of the step is larger than or equal to the distance -# between the two bounds, then the bounds will be the only valid values, -# e.g. if the range is defined as {from_value: 1, to_value: 2, step: 5} then -# the valid values will be 1 and 2. +# between the two bounds, then the bounds will be the only valid values. e.g. if +# the range is defined as {from_value: 1, to_value: 2, step: 5} then the valid +# values will be 1 and 2. +# # If the step is less than the distance between the bounds, but the distance is # not a multiple of the step, then the "to" bound will always be a valid value, # e.g. if the range is defined as {from_value: 2, to_value: 5, step: 2} then diff --git a/rcl_interfaces/msg/ListParametersResult.msg b/rcl_interfaces/msg/ListParametersResult.msg index 992afbfe..85334f51 100644 --- a/rcl_interfaces/msg/ListParametersResult.msg +++ b/rcl_interfaces/msg/ListParametersResult.msg @@ -1,5 +1,6 @@ -# All parameters under the given prefixes. +# The resulting parameters under the given prefixes. string[] names -# All prefixes under the given prefixes. + +# The resulting prefixes under the given prefixes. # TODO(wjwwood): link to prefix definition and rules. string[] prefixes diff --git a/rcl_interfaces/msg/Log.msg b/rcl_interfaces/msg/Log.msg index 514e3707..b7a810d1 100644 --- a/rcl_interfaces/msg/Log.msg +++ b/rcl_interfaces/msg/Log.msg @@ -1,19 +1,45 @@ ## ## Severity level constants ## -byte DEBUG=10 #debug level -byte INFO=20 #general level -byte WARN=30 #warning level -byte ERROR=40 #error level -byte FATAL=50 #fatal/critical level + +# Debug is for pedantic information, which is useful when debugging issues +byte DEBUG=10 + +# Info is the standard informational level and is used to report expected +# information +byte INFO=20 + +# Warning is for information that may potentially cause issues or possibly unexpected +# behavior +byte WARN=30 + +# Error is for information that this node cannot resolve +byte ERROR=40 + +# Information about a impending node shutdown +byte FATAL=50 ## ## Fields ## + +# Timestamp when this message was generated by the node builtin_interfaces/Time stamp + +# Corresponding log level, see above definitions uint8 level -string name # the name representing the logger this message came from -string msg # message -string file # file the message came from -string function # function the message came from -uint32 line # line the message came from + +# The name representing the logger this message came from +string name + +# The full log message +string msg + +# The file the message came from +string file + +# The function the message came from +string function + +# The line in the file the message came from +uint32 line diff --git a/rcl_interfaces/msg/Parameter.msg b/rcl_interfaces/msg/Parameter.msg index 1e18482b..0d3db31f 100644 --- a/rcl_interfaces/msg/Parameter.msg +++ b/rcl_interfaces/msg/Parameter.msg @@ -1,6 +1,9 @@ -# This is the message to communicate a parameter. -# It is an open struct with an enum in the descriptor to select which value is active. +# This is the message to communicate a parameter. It is an open struct with an enum in +# the descriptor to select which value is active. +# The full name of the parameter string name +# The parameter's value which can be one of several types, see +# `ParameterValue.msg` and `ParameterType.msg` ParameterValue value diff --git a/rcl_interfaces/msg/ParameterDescriptor.msg b/rcl_interfaces/msg/ParameterDescriptor.msg index cae4f7ef..15d945f9 100644 --- a/rcl_interfaces/msg/ParameterDescriptor.msg +++ b/rcl_interfaces/msg/ParameterDescriptor.msg @@ -1,5 +1,6 @@ # This is the message to communicate a parameter's descriptor. +# The name of the parameter string name # Enum values are defined in the `ParameterType.msg` message. @@ -12,6 +13,7 @@ string description # Plain English description of additional constraints which cannot be expressed # with the available constraints, e.g. "only prime numbers". +# # By convention, this should only be used to clarify constraints which cannot # be completely expressed with the parameter constraints below. string additional_constraints @@ -22,11 +24,11 @@ bool read_only false # If any of the following sequences are not empty, then the constraint inside of # them apply to this parameter. +# +# FloatingPointRange and IntegerRange are mutually exclusive. # FloatingPointRange consists of a from_value, a to_value, and a step. -# FloatingPointRange and IntegerRange are mutually exclusive. FloatingPointRange[<=1] floating_point_range # IntegerRange consists of a from_value, a to_value, and a step. -# FloatingPointRange and IntegerRange are mutually exclusive. IntegerRange[<=1] integer_range diff --git a/rcl_interfaces/msg/ParameterEvent.msg b/rcl_interfaces/msg/ParameterEvent.msg index 5759f53f..a1449ede 100644 --- a/rcl_interfaces/msg/ParameterEvent.msg +++ b/rcl_interfaces/msg/ParameterEvent.msg @@ -1,12 +1,18 @@ # This message contains a parameter event. -# It was an atomic update. -# A specific parameter name can only be in one of the three sets. +# Because the parameter event was an atomic update, a specific parameter name +# can only be in one of the three sets. +# The time stamp when this parameter event occurred builtin_interfaces/Time stamp # Fully qualified ROS path to node string node +# New parameters that have been set for this node Parameter[] new_parameters + +# Parameters that have been changed during this event Parameter[] changed_parameters + +# Parameters that have been deleted during this event Parameter[] deleted_parameters diff --git a/rcl_interfaces/msg/ParameterType.msg b/rcl_interfaces/msg/ParameterType.msg index 3c1dac6f..2bf0577a 100644 --- a/rcl_interfaces/msg/ParameterType.msg +++ b/rcl_interfaces/msg/ParameterType.msg @@ -1,4 +1,8 @@ +# These types correspond to the value that is set in the ParameterValue message. + +# Default value, which implies this is not a valid parameter uint8 PARAMETER_NOT_SET=0 + uint8 PARAMETER_BOOL=1 uint8 PARAMETER_INTEGER=2 uint8 PARAMETER_DOUBLE=3 diff --git a/rcl_interfaces/msg/ParameterValue.msg b/rcl_interfaces/msg/ParameterValue.msg index cb52868a..10d57dbd 100644 --- a/rcl_interfaces/msg/ParameterValue.msg +++ b/rcl_interfaces/msg/ParameterValue.msg @@ -1,17 +1,38 @@ # Used to determine which of the next *_value fields are set. # ParameterType.PARAMETER_NOT_SET indicates that the parameter was not set # (if gotten) or is uninitialized. -# Values are enumerated in ParameterType.msg +# Values are enumerated in `ParameterType.msg` +# The type of this parameter, which corresponds to the appropriate field below uint8 type -# "Variant" style storage of the parameter value. +# "Variant" style storage of the parameter value. Only the value corresponding +# the type field will have valid information. + +# Boolean value, can be either true or false bool bool_value + +# Integer value ranging from -9,223,372,036,854,775,808 to +# 9,223,372,036,854,775,807 int64 integer_value + +# A double precision floating point value following IEEE 754 float64 double_value + +# A textual value with no practical length limit string string_value + +# An array of bytes, used for non-textual information byte[] byte_array_value + +# An array of boolean values bool[] bool_array_value + +# An array of 64-bit integer values int64[] integer_array_value + +# An array of 64-bit floating point values float64[] double_array_value + +# An array of string values string[] string_array_value diff --git a/rcl_interfaces/msg/SetParametersResult.msg b/rcl_interfaces/msg/SetParametersResult.msg index 165f34c7..4c9e944b 100644 --- a/rcl_interfaces/msg/SetParametersResult.msg +++ b/rcl_interfaces/msg/SetParametersResult.msg @@ -1,6 +1,7 @@ -# A true value of the same index indicates that the parameter was set successfully. -# A false value indicates the change was rejected. +# A true value of the same index indicates that the parameter was set +# successfully. A false value indicates the change was rejected. bool successful -# Reason why the setting was either successful or a failure. -# Should only be used for logging and user interfaces. + +# Reason why the setting was either successful or a failure. This should only be +# used for logging and user interfaces. string reason diff --git a/rcl_interfaces/srv/DescribeParameters.srv b/rcl_interfaces/srv/DescribeParameters.srv index e0cf4ee8..a8f0b916 100644 --- a/rcl_interfaces/srv/DescribeParameters.srv +++ b/rcl_interfaces/srv/DescribeParameters.srv @@ -2,8 +2,7 @@ string[] names --- - # A list of the descriptors of all parameters requested in the same order -# as they were requested. -# This list has the same length as the list of parameters requested. +# as they were requested. This list has the same length as the list of +# parameters requested. ParameterDescriptor[] descriptors diff --git a/rcl_interfaces/srv/GetParameterTypes.srv b/rcl_interfaces/srv/GetParameterTypes.srv index 25a05980..cdf0e78d 100644 --- a/rcl_interfaces/srv/GetParameterTypes.srv +++ b/rcl_interfaces/srv/GetParameterTypes.srv @@ -3,8 +3,8 @@ string[] names --- - # List of types which is the same length and order as the provided names. -# Type enum defined in ParameterType.msg -# ParameterType.PARAMETER_NOT_SET indicates that the parameter is not currently set. +# +# The type enum is defined in ParameterType.msg. ParameterType.PARAMETER_NOT_SET +# indicates that the parameter is not currently set. uint8[] types diff --git a/rcl_interfaces/srv/GetParameters.srv b/rcl_interfaces/srv/GetParameters.srv index 8eb3c6e8..1822479b 100644 --- a/rcl_interfaces/srv/GetParameters.srv +++ b/rcl_interfaces/srv/GetParameters.srv @@ -1,9 +1,15 @@ +# TODO(wjwwood): Decide on the rules for grouping, nodes, and parameter "names" +# in general, then link to that. +# +# For more information about parameters and naming rules, see: +# https://design.ros2.org/articles/ros_parameters.html +# https://github.com/ros2/design/pull/241 + # A list of parameter names to get. -# TODO(wjwwood): Decide on the rules for grouping, nodes, and parameter "names" in general, then link to that. string[] names --- - -# List of values which is the same length and order as the provided names. -# If a parameter was not set yet, the value will have PARAMETER_NOT_SET as the type. +# List of values which is the same length and order as the provided names. If a +# parameter was not yet set, the value will have PARAMETER_NOT_SET as the +# type. ParameterValue[] values diff --git a/rcl_interfaces/srv/ListParameters.srv b/rcl_interfaces/srv/ListParameters.srv index 78ef55c7..3bd5f17e 100644 --- a/rcl_interfaces/srv/ListParameters.srv +++ b/rcl_interfaces/srv/ListParameters.srv @@ -1,11 +1,14 @@ +# Recursively get parameters with unlimited depth uint64 DEPTH_RECURSIVE=0 # The list of parameter prefixes to query. string[] prefixes + # Relative depth from given prefixes to return. +# # Use DEPTH_RECURSIVE to get the recursive parameters and prefixes for each prefix. uint64 depth --- - +# The list of parameter names and their prefixes ListParametersResult result diff --git a/rcl_interfaces/srv/SetParameters.srv b/rcl_interfaces/srv/SetParameters.srv index 3c0ad7f4..d73fb823 100644 --- a/rcl_interfaces/srv/SetParameters.srv +++ b/rcl_interfaces/srv/SetParameters.srv @@ -2,5 +2,5 @@ Parameter[] parameters --- - +# Indicates whether setting each parameter succeeded or not and why SetParametersResult[] results diff --git a/rcl_interfaces/srv/SetParametersAtomically.srv b/rcl_interfaces/srv/SetParametersAtomically.srv index 4bfcc5af..9ba01648 100644 --- a/rcl_interfaces/srv/SetParametersAtomically.srv +++ b/rcl_interfaces/srv/SetParametersAtomically.srv @@ -1,7 +1,8 @@ # A list of parameters to set atomically. +# # This call will either set all values, or none of the values. Parameter[] parameters --- - +# Indicates whether setting all of the parameters succeeded or not and why SetParametersResult result diff --git a/rosgraph_msgs/README.md b/rosgraph_msgs/README.md new file mode 100644 index 00000000..77fc29ac --- /dev/null +++ b/rosgraph_msgs/README.md @@ -0,0 +1,9 @@ +# rosgraph_msgs +This is a package containing message definitions relating to the ROS Computation Graph. These are generally considered to be low-level messages that end users do not interact with. + +For more information about ROS 2 clock, see [design.ros2.org](https://design.ros2.org/articles/clock_and_time.html) + +For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/) + +## Messages (.msg) +* [Clock](msg/Clock.msg): Communicates the current ROS time diff --git a/rosgraph_msgs/msg/Clock.msg b/rosgraph_msgs/msg/Clock.msg index 497b095a..13489645 100644 --- a/rosgraph_msgs/msg/Clock.msg +++ b/rosgraph_msgs/msg/Clock.msg @@ -1,3 +1,4 @@ -# This message simply communicates the current time. -# For more information, see http://www.ros.org/wiki/Clock +# This message communicates the current time. +# +# For more information, see https://design.ros2.org/articles/clock_and_time.html builtin_interfaces/Time clock From abe5408837b6951bf3070276caa667ba2b9937bf Mon Sep 17 00:00:00 2001 From: Stephen Brawner Date: Fri, 24 Apr 2020 11:54:03 -0700 Subject: [PATCH 2/7] PR Fixup Signed-off-by: Stephen Brawner --- action_msgs/msg/GoalStatus.msg | 4 ++-- action_msgs/msg/GoalStatusArray.msg | 2 +- action_msgs/srv/CancelGoal.srv | 8 +++---- builtin_interfaces/README.md | 4 ++-- builtin_interfaces/msg/Duration.msg | 2 +- builtin_interfaces/msg/Time.msg | 4 ++-- composition_interfaces/README.md | 6 ++--- composition_interfaces/srv/ListNodes.srv | 6 ++--- composition_interfaces/srv/LoadNode.srv | 20 ++++++++-------- composition_interfaces/srv/UnloadNode.srv | 6 ++--- lifecycle_msgs/README.md | 16 ++++++------- rcl_interfaces/msg/Log.msg | 24 +++++++++---------- rcl_interfaces/msg/Parameter.msg | 4 ++-- rcl_interfaces/msg/ParameterDescriptor.msg | 2 +- rcl_interfaces/msg/ParameterEvent.msg | 10 ++++---- rcl_interfaces/msg/ParameterType.msg | 2 +- rcl_interfaces/msg/ParameterValue.msg | 22 ++++++++--------- rcl_interfaces/srv/ListParameters.srv | 4 ++-- rcl_interfaces/srv/SetParameters.srv | 4 ++-- .../srv/SetParametersAtomically.srv | 2 +- rosgraph_msgs/README.md | 6 ++--- 21 files changed, 79 insertions(+), 79 deletions(-) diff --git a/action_msgs/msg/GoalStatus.msg b/action_msgs/msg/GoalStatus.msg index 78d88556..ce198a47 100644 --- a/action_msgs/msg/GoalStatus.msg +++ b/action_msgs/msg/GoalStatus.msg @@ -3,7 +3,7 @@ # # For more information, see http://design.ros2.org/articles/actions.html -# Indicates status has not been properly set +# Indicates status has not been properly set. int8 STATUS_UNKNOWN = 0 # The goal has been accepted and is awaiting execution. @@ -28,5 +28,5 @@ int8 STATUS_ABORTED = 6 # Goal info (contains ID and timestamp) GoalInfo goal_info -# Action goal state-machine status +# Action goal state-machine status. int8 status diff --git a/action_msgs/msg/GoalStatusArray.msg b/action_msgs/msg/GoalStatusArray.msg index e7102356..3b68b0e2 100644 --- a/action_msgs/msg/GoalStatusArray.msg +++ b/action_msgs/msg/GoalStatusArray.msg @@ -1,2 +1,2 @@ -# An array of goal statuses +# An array of goal statuses. GoalStatus[] status_list diff --git a/action_msgs/srv/CancelGoal.srv b/action_msgs/srv/CancelGoal.srv index fc04334d..86afbdbf 100644 --- a/action_msgs/srv/CancelGoal.srv +++ b/action_msgs/srv/CancelGoal.srv @@ -8,11 +8,11 @@ # - If the goal ID is not zero and timestamp is not zero, cancel the goal with # the given ID and all goals accepted at or before the timestamp. -# Goal info describing the goals to cancel, see above +# Goal info describing the goals to cancel, see above. GoalInfo goal_info --- ## -## Return codes +## Return codes. ## # Indicates the request was accepted without any errors. @@ -39,8 +39,8 @@ int8 ERROR_UNKNOWN_GOAL_ID=2 # empty. int8 ERROR_GOAL_TERMINATED=3 -# Return code, see above definitions +# Return code, see above definitions. int8 return_code -# Goals that accepted the cancel request +# Goals that accepted the cancel request. GoalInfo[] goals_canceling diff --git a/builtin_interfaces/README.md b/builtin_interfaces/README.md index fa663a94..dd28e331 100644 --- a/builtin_interfaces/README.md +++ b/builtin_interfaces/README.md @@ -1,9 +1,9 @@ # builtin_interfaces A package containing message definitions for types defined in the OMG IDL Platform Specific Model. -For more information about ROS 2 time, see [design.ros2.org](https://design.ros2.org/articles/clock_and_time.html) +For more information about ROS 2 time, see [design.ros2.org](https://design.ros2.org/articles/clock_and_time.html). -For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/) +For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/). ## Messages (.msg) * [Duration](msg/Duration.msg): Describes a time duration composed of seconds and nanoseconds components. diff --git a/builtin_interfaces/msg/Duration.msg b/builtin_interfaces/msg/Duration.msg index 8519a05a..1311316d 100644 --- a/builtin_interfaces/msg/Duration.msg +++ b/builtin_interfaces/msg/Duration.msg @@ -4,5 +4,5 @@ # Seconds component, range is valid over any possible int32 value. int32 sec -# Nanoseconds component in the range of [0, 10e9) +# Nanoseconds component in the range of [0, 10e9). uint32 nanosec diff --git a/builtin_interfaces/msg/Time.msg b/builtin_interfaces/msg/Time.msg index 7c7f5c34..bf710f14 100644 --- a/builtin_interfaces/msg/Time.msg +++ b/builtin_interfaces/msg/Time.msg @@ -1,7 +1,7 @@ # Time indicates a specific point in time, relative to a clock's 0 point. -# The seconds component, valid over all int32 values +# The seconds component, valid over all int32 values. int32 sec -# The nanoseconds component, valid in the range [0, 10e9) +# The nanoseconds component, valid in the range [0, 10e9). uint32 nanosec diff --git a/composition_interfaces/README.md b/composition_interfaces/README.md index d522d512..86855d20 100644 --- a/composition_interfaces/README.md +++ b/composition_interfaces/README.md @@ -1,9 +1,9 @@ # composition_interfaces This is a package containing message and service definitions for managing composable nodes in a container process. Generally these services are used by the ROS 2 [`roslaunch`](https://design.ros2.org/articles/roslaunch.html) system. -For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/) +For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/). ## Services (.srv) * [ListNodes](srv/ListNodes.srv): Retrieve a list of running composable nodes, including their names and ids. -* [LoadNodes](srv/LoadNode.srv): Load a composable node -* [UnloadNode](UnloadNode.srv): Unload a specified node by its id +* [LoadNodes](srv/LoadNode.srv): Load a composable node. +* [UnloadNode](UnloadNode.srv): Unload a specified node by its id. diff --git a/composition_interfaces/srv/ListNodes.srv b/composition_interfaces/srv/ListNodes.srv index fd5e03e0..4b1421eb 100644 --- a/composition_interfaces/srv/ListNodes.srv +++ b/composition_interfaces/srv/ListNodes.srv @@ -1,5 +1,5 @@ --- -# List of full node names including namespace +# List of full node names including namespace. string[] full_node_names -# corresponding unique ids (must have same length as full_node_names) -uint64[] unique_ids \ No newline at end of file +# corresponding unique ids (must have same length as full_node_names). +uint64[] unique_ids diff --git a/composition_interfaces/srv/LoadNode.srv b/composition_interfaces/srv/LoadNode.srv index cd6dfdad..97f84cc2 100644 --- a/composition_interfaces/srv/LoadNode.srv +++ b/composition_interfaces/srv/LoadNode.srv @@ -1,19 +1,19 @@ -# The ROS package in which the composable node can be found +# The ROS package in which the composable node can be found. string package_name -# A plugin within the ROS package "package_name" +# A plugin within the ROS package "package_name". string plugin_name # The assigned name of the composable node. Leave empty to use the node's -# default name +# default name. string node_name # The assigned namespace of the composable node. Leave empty to use the node's -# default namespace +# default namespace. string node_namespace # The assigned log level of the composable node. Enum values are found in -# message rcl_interfaces/Log +# message rcl_interfaces/Log. uint8 log_level # Remapping rules for this composable node. @@ -23,20 +23,20 @@ uint8 log_level # TODO(sloretz) rcl_interfaces message for remap rules? string[] remap_rules -# The Parameters of this composable node to set +# The Parameters of this composable node to set. rcl_interfaces/Parameter[] parameters -# key/value arguments that are specific to a type of container process +# key/value arguments that are specific to a type of container process. rcl_interfaces/Parameter[] extra_arguments --- # True if the node was successfully loaded bool success -# Human readable error message if success is false, else empty string +# Human readable error message if success is false, else empty string. string error_message -# Name of the loaded composable node (including namespace) +# Name of the loaded composable node (including namespace). string full_node_name -# A unique identifier for the loaded node +# A unique identifier for the loaded node. uint64 unique_id diff --git a/composition_interfaces/srv/UnloadNode.srv b/composition_interfaces/srv/UnloadNode.srv index 37c90657..0fa36a51 100644 --- a/composition_interfaces/srv/UnloadNode.srv +++ b/composition_interfaces/srv/UnloadNode.srv @@ -1,8 +1,8 @@ -# Container specific unique id of a loaded node +# Container specific unique id of a loaded node. uint64 unique_id --- -# True if the node existed and was unloaded +# True if the node existed and was unloaded. bool success -# Human readable error message if success is false, else empty string +# Human readable error message if success is false, else empty string. string error_message diff --git a/lifecycle_msgs/README.md b/lifecycle_msgs/README.md index a05272b0..43602a41 100644 --- a/lifecycle_msgs/README.md +++ b/lifecycle_msgs/README.md @@ -3,18 +3,18 @@ This package contains message and service definitions for managing lifecycle nod These messages and services form a standardized interface for transitioning these managed nodes through a known state-machine. -For more information about life cycle nodes see: [design.ros2.org](http://design.ros2.org/articles/node_lifecycle.html) +For more information about life cycle nodes see: [design.ros2.org](http://design.ros2.org/articles/node_lifecycle.html). -For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/) +For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/). ## Messages (.msg) -* [State](msg/State.msg): A lifecycle node's state-machine state -* [Transition](msg/Transition.msg): A state transition with specific id and label +* [State](msg/State.msg): A lifecycle node's state-machine state. +* [Transition](msg/Transition.msg): A state transition with specific id and label. * [TransitionDescription](msg/TransitionDescription.msg): A description of a transition from one state-machine state to another. -* [TransitionEvent](msg/TransitionEvent.msg): A timestamped state transition +* [TransitionEvent](msg/TransitionEvent.msg): A timestamped state transition. ## Services (.srv) -* [ChangeState](srv/ChangeState.srv): Request a node change states with a specific transition +* [ChangeState](srv/ChangeState.srv): Request a node change states with a specific transition. * [GetAvailableStates](srv/GetAvailableStates.srv): Request an array of states that this node can transition to. -* [GetAvailableTransitions](srv/GetAvailableTransitions.srv): Request an array of lifecycle state transitions available for this node -* [GetState](srv/GetState.srv): Request the current lifecycle state of this node +* [GetAvailableTransitions](srv/GetAvailableTransitions.srv): Request an array of lifecycle state transitions available for this node. +* [GetState](srv/GetState.srv): Request the current lifecycle state of this node. diff --git a/rcl_interfaces/msg/Log.msg b/rcl_interfaces/msg/Log.msg index b7a810d1..bba90108 100644 --- a/rcl_interfaces/msg/Log.msg +++ b/rcl_interfaces/msg/Log.msg @@ -2,44 +2,44 @@ ## Severity level constants ## -# Debug is for pedantic information, which is useful when debugging issues +# Debug is for pedantic information, which is useful when debugging issues. byte DEBUG=10 # Info is the standard informational level and is used to report expected -# information +# information. byte INFO=20 # Warning is for information that may potentially cause issues or possibly unexpected -# behavior +# behavior. byte WARN=30 -# Error is for information that this node cannot resolve +# Error is for information that this node cannot resolve. byte ERROR=40 -# Information about a impending node shutdown +# Information about a impending node shutdown. byte FATAL=50 ## ## Fields ## -# Timestamp when this message was generated by the node +# Timestamp when this message was generated by the node. builtin_interfaces/Time stamp -# Corresponding log level, see above definitions +# Corresponding log level, see above definitions. uint8 level -# The name representing the logger this message came from +# The name representing the logger this message came from. string name -# The full log message +# The full log message. string msg -# The file the message came from +# The file the message came from. string file -# The function the message came from +# The function the message came from. string function -# The line in the file the message came from +# The line in the file the message came from. uint32 line diff --git a/rcl_interfaces/msg/Parameter.msg b/rcl_interfaces/msg/Parameter.msg index 0d3db31f..51c09ba1 100644 --- a/rcl_interfaces/msg/Parameter.msg +++ b/rcl_interfaces/msg/Parameter.msg @@ -1,9 +1,9 @@ # This is the message to communicate a parameter. It is an open struct with an enum in # the descriptor to select which value is active. -# The full name of the parameter +# The full name of the parameter. string name # The parameter's value which can be one of several types, see -# `ParameterValue.msg` and `ParameterType.msg` +# `ParameterValue.msg` and `ParameterType.msg`. ParameterValue value diff --git a/rcl_interfaces/msg/ParameterDescriptor.msg b/rcl_interfaces/msg/ParameterDescriptor.msg index 15d945f9..eaeb0287 100644 --- a/rcl_interfaces/msg/ParameterDescriptor.msg +++ b/rcl_interfaces/msg/ParameterDescriptor.msg @@ -1,6 +1,6 @@ # This is the message to communicate a parameter's descriptor. -# The name of the parameter +# The name of the parameter. string name # Enum values are defined in the `ParameterType.msg` message. diff --git a/rcl_interfaces/msg/ParameterEvent.msg b/rcl_interfaces/msg/ParameterEvent.msg index a1449ede..ace2544b 100644 --- a/rcl_interfaces/msg/ParameterEvent.msg +++ b/rcl_interfaces/msg/ParameterEvent.msg @@ -2,17 +2,17 @@ # Because the parameter event was an atomic update, a specific parameter name # can only be in one of the three sets. -# The time stamp when this parameter event occurred +# The time stamp when this parameter event occurred. builtin_interfaces/Time stamp -# Fully qualified ROS path to node +# Fully qualified ROS path to node. string node -# New parameters that have been set for this node +# New parameters that have been set for this node. Parameter[] new_parameters -# Parameters that have been changed during this event +# Parameters that have been changed during this event. Parameter[] changed_parameters -# Parameters that have been deleted during this event +# Parameters that have been deleted during this event. Parameter[] deleted_parameters diff --git a/rcl_interfaces/msg/ParameterType.msg b/rcl_interfaces/msg/ParameterType.msg index 2bf0577a..e3c4f26b 100644 --- a/rcl_interfaces/msg/ParameterType.msg +++ b/rcl_interfaces/msg/ParameterType.msg @@ -1,6 +1,6 @@ # These types correspond to the value that is set in the ParameterValue message. -# Default value, which implies this is not a valid parameter +# Default value, which implies this is not a valid parameter. uint8 PARAMETER_NOT_SET=0 uint8 PARAMETER_BOOL=1 diff --git a/rcl_interfaces/msg/ParameterValue.msg b/rcl_interfaces/msg/ParameterValue.msg index 10d57dbd..4fba1bd2 100644 --- a/rcl_interfaces/msg/ParameterValue.msg +++ b/rcl_interfaces/msg/ParameterValue.msg @@ -1,38 +1,38 @@ # Used to determine which of the next *_value fields are set. # ParameterType.PARAMETER_NOT_SET indicates that the parameter was not set # (if gotten) or is uninitialized. -# Values are enumerated in `ParameterType.msg` +# Values are enumerated in `ParameterType.msg`. -# The type of this parameter, which corresponds to the appropriate field below +# The type of this parameter, which corresponds to the appropriate field below. uint8 type # "Variant" style storage of the parameter value. Only the value corresponding # the type field will have valid information. -# Boolean value, can be either true or false +# Boolean value, can be either true or false. bool bool_value # Integer value ranging from -9,223,372,036,854,775,808 to -# 9,223,372,036,854,775,807 +# 9,223,372,036,854,775,807. int64 integer_value -# A double precision floating point value following IEEE 754 +# A double precision floating point value following IEEE 754. float64 double_value -# A textual value with no practical length limit +# A textual value with no practical length limit. string string_value -# An array of bytes, used for non-textual information +# An array of bytes, used for non-textual information. byte[] byte_array_value -# An array of boolean values +# An array of boolean values. bool[] bool_array_value -# An array of 64-bit integer values +# An array of 64-bit integer values. int64[] integer_array_value -# An array of 64-bit floating point values +# An array of 64-bit floating point values. float64[] double_array_value -# An array of string values +# An array of string values. string[] string_array_value diff --git a/rcl_interfaces/srv/ListParameters.srv b/rcl_interfaces/srv/ListParameters.srv index 3bd5f17e..ee1b7a6f 100644 --- a/rcl_interfaces/srv/ListParameters.srv +++ b/rcl_interfaces/srv/ListParameters.srv @@ -1,4 +1,4 @@ -# Recursively get parameters with unlimited depth +# Recursively get parameters with unlimited depth. uint64 DEPTH_RECURSIVE=0 # The list of parameter prefixes to query. @@ -10,5 +10,5 @@ string[] prefixes uint64 depth --- -# The list of parameter names and their prefixes +# The list of parameter names and their prefixes. ListParametersResult result diff --git a/rcl_interfaces/srv/SetParameters.srv b/rcl_interfaces/srv/SetParameters.srv index d73fb823..97d11796 100644 --- a/rcl_interfaces/srv/SetParameters.srv +++ b/rcl_interfaces/srv/SetParameters.srv @@ -1,6 +1,6 @@ -# A list of parameters to set +# A list of parameters to set. Parameter[] parameters --- -# Indicates whether setting each parameter succeeded or not and why +# Indicates whether setting each parameter succeeded or not and why. SetParametersResult[] results diff --git a/rcl_interfaces/srv/SetParametersAtomically.srv b/rcl_interfaces/srv/SetParametersAtomically.srv index 9ba01648..2df928a4 100644 --- a/rcl_interfaces/srv/SetParametersAtomically.srv +++ b/rcl_interfaces/srv/SetParametersAtomically.srv @@ -4,5 +4,5 @@ Parameter[] parameters --- -# Indicates whether setting all of the parameters succeeded or not and why +# Indicates whether setting all of the parameters succeeded or not and why. SetParametersResult result diff --git a/rosgraph_msgs/README.md b/rosgraph_msgs/README.md index 77fc29ac..b4c02cd2 100644 --- a/rosgraph_msgs/README.md +++ b/rosgraph_msgs/README.md @@ -1,9 +1,9 @@ # rosgraph_msgs This is a package containing message definitions relating to the ROS Computation Graph. These are generally considered to be low-level messages that end users do not interact with. -For more information about ROS 2 clock, see [design.ros2.org](https://design.ros2.org/articles/clock_and_time.html) +For more information about ROS 2 clock, see [design.ros2.org](https://design.ros2.org/articles/clock_and_time.html). -For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/) +For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/). ## Messages (.msg) -* [Clock](msg/Clock.msg): Communicates the current ROS time +* [Clock](msg/Clock.msg): Communicates the current ROS time. From 8866f1f7eb9dbfe769b446886413ee778c91e3f3 Mon Sep 17 00:00:00 2001 From: Stephen Brawner Date: Mon, 27 Apr 2020 10:55:02 -0700 Subject: [PATCH 3/7] PR fixup Signed-off-by: Stephen Brawner --- lifecycle_msgs/msg/State.msg | 6 ++-- lifecycle_msgs/msg/Transition.msg | 32 ++++++++++---------- lifecycle_msgs/msg/TransitionDescription.msg | 6 ++-- lifecycle_msgs/msg/TransitionEvent.msg | 8 ++--- 4 files changed, 26 insertions(+), 26 deletions(-) diff --git a/lifecycle_msgs/msg/State.msg b/lifecycle_msgs/msg/State.msg index 9ca15f4f..599310e2 100644 --- a/lifecycle_msgs/msg/State.msg +++ b/lifecycle_msgs/msg/State.msg @@ -1,4 +1,4 @@ -# Primary state definitions as depicted in +# Primary state definitions as depicted in: # http://design.ros2.org/articles/node_lifecycle.html # These are the primary states. State changes can only be requested when the @@ -19,8 +19,8 @@ uint8 PRIMARY_STATE_INACTIVE = 2 # data, produces output, etc. uint8 PRIMARY_STATE_ACTIVE = 3 -# The Finalized state is the state in which the node ends immediately before -# being destroyed +# The finalized state is the state in which the node ends immediately before +# being destroyed. uint8 PRIMARY_STATE_FINALIZED = 4 # Temporary intermediate states. When a transition is requested, the node diff --git a/lifecycle_msgs/msg/Transition.msg b/lifecycle_msgs/msg/Transition.msg index d7cc5516..8b09a2d9 100644 --- a/lifecycle_msgs/msg/Transition.msg +++ b/lifecycle_msgs/msg/Transition.msg @@ -1,4 +1,4 @@ -# Default values for transitions as described on +# Default values for transitions as described in: # http://design.ros2.org/articles/node_lifecycle.html # Reserved [0-9], publicly available transitions. @@ -6,38 +6,38 @@ # invoked. # This transition will instantiate the node, but will not run any code beyond -# the constructor +# the constructor. uint8 TRANSITION_CREATE = 0 # The node’s onConfigure callback will be called to allow the node to load its -# configuration and conduct any required setup +# configuration and conduct any required setup. uint8 TRANSITION_CONFIGURE = 1 # The node’s callback onCleanup will be called in this transition to allow the -# node to load its configuration and conduct any required setup +# node to load its configuration and conduct any required setup. uint8 TRANSITION_CLEANUP = 2 # The node's callback onActivate will be executed to do any final preparations -# to start executing +# to start executing. uint8 TRANSITION_ACTIVATE = 3 # The node's callback onDeactivate will be executed to do any cleanup to start -# executing, and reverse the onActivate changes +# executing, and reverse the onActivate changes. uint8 TRANSITION_DEACTIVATE = 4 # This signals shutdown during an unconfigured state, the node's callback -# onShutdown will be executed to do any cleanup necessary before destruction +# onShutdown will be executed to do any cleanup necessary before destruction. uint8 TRANSITION_UNCONFIGURED_SHUTDOWN = 5 # This signals shutdown during an inactive state, the node's callback onShutdown -# will be executed to do any cleanup necessary before destruction +# will be executed to do any cleanup necessary before destruction. uint8 TRANSITION_INACTIVE_SHUTDOWN = 6 # This signals shutdown during an active state, the node's callback onShutdown -# will be executed to do any cleanup necessary before destruction +# will be executed to do any cleanup necessary before destruction. uint8 TRANSITION_ACTIVE_SHUTDOWN = 7 -# This transition will simply cause the deallocation of the node +# This transition will simply cause the deallocation of the node. uint8 TRANSITION_DESTROY = 8 # Reserved [10-69], private transitions @@ -68,27 +68,27 @@ uint8 TRANSITION_ON_ERROR_SUCCESS = 60 uint8 TRANSITION_ON_ERROR_FAILURE = 61 uint8 TRANSITION_ON_ERROR_ERROR = 62 -# Reserved [90-99]. Transition callback success values +# Reserved [90-99]. Transition callback success values. # These return values ought to be set as a return value for each callback. # Depending on which return value, the transition will be executed correctly or # fallback/error callbacks will be triggered. -# The transition callback successfully performed its required functionality +# The transition callback successfully performed its required functionality. uint8 TRANSITION_CALLBACK_SUCCESS = 97 -# The transition callback failed to perform its required functionality +# The transition callback failed to perform its required functionality. uint8 TRANSITION_CALLBACK_FAILURE = 98 # The transition callback encountered an error that requires special cleanup, if -# possible +# possible. uint8 TRANSITION_CALLBACK_ERROR = 99 ## ## Fields ## -# The transition id from above definitions +# The transition id from above definitions. uint8 id -# A text label of the transition +# A text label of the transition. string label diff --git a/lifecycle_msgs/msg/TransitionDescription.msg b/lifecycle_msgs/msg/TransitionDescription.msg index 5958c901..b028173b 100644 --- a/lifecycle_msgs/msg/TransitionDescription.msg +++ b/lifecycle_msgs/msg/TransitionDescription.msg @@ -1,8 +1,8 @@ -# The transition id and label of this description +# The transition id and label of this description. Transition transition -# The current state from which this transition transitions +# The current state from which this transition transitions. State start_state -# The desired target state of this transition +# The desired target state of this transition. State goal_state diff --git a/lifecycle_msgs/msg/TransitionEvent.msg b/lifecycle_msgs/msg/TransitionEvent.msg index 95ec8e39..48c84995 100644 --- a/lifecycle_msgs/msg/TransitionEvent.msg +++ b/lifecycle_msgs/msg/TransitionEvent.msg @@ -1,11 +1,11 @@ -# The time point at which this event occurred +# The time point at which this event occurred. uint64 timestamp -# The id and label of this transition event +# The id and label of this transition event. Transition transition -# The starting state from which this event transitioned +# The starting state from which this event transitioned. State start_state -# The end state of this transition event +# The end state of this transition event. State goal_state From bbcc6e45314955e6905cff66416a5f79f438bef3 Mon Sep 17 00:00:00 2001 From: Stephen Brawner Date: Fri, 6 Mar 2020 17:27:17 -0800 Subject: [PATCH 4/7] Add QUALITY_DECLARATION for all but test_msgs Signed-off-by: Stephen Brawner Switch QDs to their QL current-level (4) Signed-off-by: Stephen Brawner --- action_msgs/QUALITY_DECLARATION.md | 109 ++++++++++++++++++ action_msgs/README.md | 3 + builtin_interfaces/QUALITY_DECLARATION.md | 107 +++++++++++++++++ builtin_interfaces/README.md | 3 + composition_interfaces/QUALITY_DECLARATION.md | 107 +++++++++++++++++ composition_interfaces/README.md | 3 +- lifecycle_msgs/QUALITY_DECLARATION.md | 107 +++++++++++++++++ lifecycle_msgs/README.md | 4 + rcl_interfaces/QUALITY_DECLARATION.md | 108 +++++++++++++++++ rcl_interfaces/README.md | 3 + rosgraph_msgs/QUALITY_DECLARATION.md | 108 +++++++++++++++++ rosgraph_msgs/README.md | 3 + 12 files changed, 664 insertions(+), 1 deletion(-) create mode 100644 action_msgs/QUALITY_DECLARATION.md create mode 100644 builtin_interfaces/QUALITY_DECLARATION.md create mode 100644 composition_interfaces/QUALITY_DECLARATION.md create mode 100644 lifecycle_msgs/QUALITY_DECLARATION.md create mode 100644 rcl_interfaces/QUALITY_DECLARATION.md create mode 100644 rosgraph_msgs/QUALITY_DECLARATION.md diff --git a/action_msgs/QUALITY_DECLARATION.md b/action_msgs/QUALITY_DECLARATION.md new file mode 100644 index 00000000..ff02ba62 --- /dev/null +++ b/action_msgs/QUALITY_DECLARATION.md @@ -0,0 +1,109 @@ +This document is a declaration of software quality for the `action_msgs` package, based on the guidelines in [REP-2004](https://www.ros.org/reps/rep-2004.html). + +# `action_msgs` Quality Declaration + +The package `action_msgs` claims to be in the **Quality Level 4** category. + +Below are the rationales, notes, and caveats for this claim, organized by each requirement listed in the [Package Requirements for Quality Level 4 in REP-2004](https://www.ros.org/reps/rep-2004.html). + +## Version Policy [1] + +### Version Scheme [1.i] + +`action_msgs` uses `semver` according to the recommendation for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#versioning). + +### Version Stability [1.ii] + +`action_msgs` is not yet at a stable version, i.e. `>= 1.0.0`. + +### Public API Declaration [1.iii] + +All message and service definition files located in `msg` and `srv` directories are considered part of the public API. + +### API Stability Within a Released ROS Distribution [1.iv]/[1.vi] + +`action_msgs` will not break public API within a released ROS distribution, i.e. no major releases once the ROS distribution is released. + +### ABI Stability Within a Released ROS Distribution [1.v]/[1.vi] + +`action_msgs` does not contain any c or c++ code and therefore will not affect ABI stability. + +## Change Control Process [2] + +`action_msgs` follows the recommended guidelines for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#package-requirements). + +### Change Requests [2.i] + +This package requires that all changes occur through a pull request. + +### Contributor Origin [2.ii] + +This package uses DCO as its confirmation of contributor origin policy. More information can be found in [CONTRIBUTING](../CONTRIBUTING.md). + +### Peer Review Policy [2.iii] + + Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. + +### Continuous Integration [2.iv] + +All pull request must pass CI on all [tier 1 platforms](https://www.ros.org/reps/rep-2000.html#support-tiers) + +### Documentation Policy [2.v] + +All pull requests must resolve related documentation changes before merging. + +## Documentation + +### Feature Documentation [3.i] + +`action_msgs` has a list of provided [messages and services](README.md). +New messages and services require their own documentation in order to be added. + +### Public API Documentation [3.ii] + +`action_msgs` has embedded API documentation, but it is not currently hosted. + +### License [3.iii] + +The license for `action_msgs` is Apache 2.0, the type is declared in the `package.xml` manifest file, and a full copy of the license is in the repository level [`LICENSE`](../LICENSE) file. + +There is an automated test which runs a linter that ensures each file has a license statement. + +### Copyright Statements [3.iv] + +The copyright holders each provide a statement of copyright in each source code file in `action_msgs`. + +There is an automated test which runs a linter that ensures each file has at least one copyright statement. + +## Testing [4] + +`action_msgs` is a package providing strictly message and service definitions and therefore does not require associated tests and has no coverage or performance requirements. + +## Dependencies [5] + +### Direct Runtime ROS Dependencies [5.i]/[5.ii] + +`action_msgs` has the following runtime ROS dependencies: +* `builtin_interfaces` +* `rosidl_default_runtime` +* `unique_identifier_msgs` + +It has several "buildtool" dependencies, which do not affect the resulting quality of the package, because they do not contribute to the public library API. + +### Direct Runtime Non-ROS Dependencies [5.iii] + +`action_msgs` does not have any runtime non-ROS dependencies. + +## Platform Support [6] + +`action_msgs` supports all of the tier 1 platforms as described in [REP-2000](https://www.ros.org/reps/rep-2000.html#support-tiers), and tests each change against all of them. + +Currently nightly results can be seen here: +* [linux-aarch64_release](https://ci.ros2.org/view/nightly/job/nightly_linux-aarch64_release/lastBuild/testReport/action_msgs/) +* [linux_release](https://ci.ros2.org/view/nightly/job/nightly_linux_release/lastBuild/testReport/action_msgs/) +* [mac_osx_release](https://ci.ros2.org/view/nightly/job/nightly_osx_release/lastBuild/testReport/action_msgs/) +* [windows_release](https://ci.ros2.org/view/nightly/job/nightly_win_rel/lastBuild/testReport/action_msgs/) + +## Vulnerability Disclosure Policy [7.i] + +This package does not yet have a Vulnerability Disclosure Policy diff --git a/action_msgs/README.md b/action_msgs/README.md index f042d04a..b4825f72 100644 --- a/action_msgs/README.md +++ b/action_msgs/README.md @@ -11,3 +11,6 @@ For more information about ROS 2 interfaces, see [index.ros2.org](https://index. ## Services (.srv) * [CancelGoal](srv/CancelGoal.srv): Cancel Goals either by id and/or timestamp + +## Quality Declaration +This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. diff --git a/builtin_interfaces/QUALITY_DECLARATION.md b/builtin_interfaces/QUALITY_DECLARATION.md new file mode 100644 index 00000000..51cb80e5 --- /dev/null +++ b/builtin_interfaces/QUALITY_DECLARATION.md @@ -0,0 +1,107 @@ +This document is a declaration of software quality for the `builtin_interfaces` package, based on the guidelines in [REP-2004](https://www.ros.org/reps/rep-2004.html). + +# `builtin_interfaces` Quality Declaration + +The package `builtin_interfaces` claims to be in the **Quality Level 4** category. + +Below are the rationales, notes, and caveats for this claim, organized by each requirement listed in the [Package Requirements for Quality Level 4 in REP-2004](https://www.ros.org/reps/rep-2004.html). + +## Version Policy [1] + +### Version Scheme [1.i] + +`builtin_interfaces` uses `semver` according to the recommendation for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#versioning). + +### Version Stability [1.ii] + +`builtin_interfaces` is not yet at a stable version, i.e. `>= 1.0.0`. + +### Public API Declaration [1.iii] + +All message and service definition files located in `msg` and `srv` directories are considered part of the public API. + +### API Stability Within a Released ROS Distribution [1.iv]/[1.vi] + +`builtin_interfaces` will not break public API within a released ROS distribution, i.e. no major releases once the ROS distribution is released. + +### ABI Stability Within a Released ROS Distribution [1.v]/[1.vi] + +`builtin_interfaces` does not contain any c or c++ code and therefore will not affect ABI stability. + +## Change Control Process [2] + +`builtin_interfaces` follows the recommended guidelines for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#package-requirements). + +### Change Requests [2.i] + +This package requires that all changes occur through a pull request. + +### Contributor Origin [2.ii] + +This package uses DCO as its confirmation of contributor origin policy. More information can be found in [CONTRIBUTING](../CONTRIBUTING.md). + +### Peer Review Policy [2.iii] + + Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. + +### Continuous Integration [2.iv] + +All pull request must pass CI on all [tier 1 platforms](https://www.ros.org/reps/rep-2000.html#support-tiers) + +### Documentation Policy [2.v] + +All pull requests must resolve related documentation changes before merging. + +## Documentation + +### Feature Documentation [3.i] + +`builtin_interfaces` has a list of provided [messages and services](README.md). +New messages and services require their own documentation in order to be added. + +### Public API Documentation [3.ii] + +`builtin_interfaces` has embedded API documentation, but it is not currently hosted. + +### License [3.iii] + +The license for `builtin_interfaces` is Apache 2.0, the type is declared in the `package.xml` manifest file, and a full copy of the license is in the repository level [`LICENSE`](../LICENSE) file. + +There is an automated test which runs a linter that ensures each file has a license statement. + +### Copyright Statements [3.iv] + +The copyright holders each provide a statement of copyright in each source code file in `builtin_interfaces`. + +There is an automated test which runs a linter that ensures each file has at least one copyright statement. + +## Testing [4] + +`builtin_interfaces` is a package providing strictly message and service definitions and therefore does not require associated tests and has no coverage or performance requirements. + +## Dependencies [5] + +### Direct Runtime ROS Dependencies [5.i]/[5.ii] + +`builtin_interfaces` has the following ROS dependencies: +* `rosidl_default_runtime` + +It has several "buildtool" dependencies, which do not affect the resulting quality of the package, because they do not contribute to the public library API. + +### Direct Runtime Non-ROS Dependencies [5.iii] + +`builtin_interfaces` does not have any runtime non-ROS dependencies. + +## Platform Support [6] + +`builtin_interfaces` supports all of the tier 1 platforms as described in [REP-2000](https://www.ros.org/reps/rep-2000.html#support-tiers), and tests each change against all of them. + +Currently nightly results can be seen here: +* [linux-aarch64_release](https://ci.ros2.org/view/nightly/job/nightly_linux-aarch64_release/lastBuild/testReport/builtin_interfaces/) +* [linux_release](https://ci.ros2.org/view/nightly/job/nightly_linux_release/lastBuild/testReport/builtin_interfaces/) +* [mac_osx_release](https://ci.ros2.org/view/nightly/job/nightly_osx_release/lastBuild/testReport/builtin_interfaces/) +* [windows_release](https://ci.ros2.org/view/nightly/job/nightly_win_rel/lastBuild/testReport/builtin_interfaces/) + +## Vulnerability Disclosure Policy [7.i] + +This package does not yet have a Vulnerability Disclosure Policy diff --git a/builtin_interfaces/README.md b/builtin_interfaces/README.md index dd28e331..7fad701f 100644 --- a/builtin_interfaces/README.md +++ b/builtin_interfaces/README.md @@ -8,3 +8,6 @@ For more information about ROS 2 interfaces, see [index.ros2.org](https://index. ## Messages (.msg) * [Duration](msg/Duration.msg): Describes a time duration composed of seconds and nanoseconds components. * [Time](msg/Time.msg): Describes a point in time, composed of seconds and nanoseconds components. + +## Quality Declaration +This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. diff --git a/composition_interfaces/QUALITY_DECLARATION.md b/composition_interfaces/QUALITY_DECLARATION.md new file mode 100644 index 00000000..8781cf05 --- /dev/null +++ b/composition_interfaces/QUALITY_DECLARATION.md @@ -0,0 +1,107 @@ +This document is a declaration of software quality for the `composition_interfaces` package, based on the guidelines in [REP-2004](https://www.ros.org/reps/rep-2004.html). + +# `composition_interfaces` Quality Declaration + +The package `composition_interfaces` claims to be in the **Quality Level 4** category. + +Below are the rationales, notes, and caveats for this claim, organized by each requirement listed in the [Package Requirements for Quality Level 4 in REP-2004](https://www.ros.org/reps/rep-2004.html). + +## Version Policy [1] + +### Version Scheme [1.i] + +`composition_interfaces` uses `semver` according to the recommendation for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#versioning). + +### Version Stability [1.ii] + +`composition_interfaces` is not yet at a stable version, i.e. `>= 1.0.0`. + +### Public API Declaration [1.iii] + +All message and service definition files located in `msg` and `srv` directories are considered part of the public API. + +### API Stability Within a Released ROS Distribution [1.iv]/[1.vi] + +`composition_interfaces` will not break public API within a released ROS distribution, i.e. no major releases once the ROS distribution is released. + +### ABI Stability Within a Released ROS Distribution [1.v]/[1.vi] + +`composition_interfaces` does not contain any c or c++ code and therefore will not affect ABI stability. + +## Change Control Process [2] + +`composition_interfaces` follows the recommended guidelines for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#package-requirements). + +### Change Requests [2.i] + +This package requires that all changes occur through a pull request. + +### Contributor Origin [2.ii] + +This package uses DCO as its confirmation of contributor origin policy. More information can be found in [CONTRIBUTING](../CONTRIBUTING.md). + +### Peer Review Policy [2.iii] + + Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. + +### Continuous Integration [2.iv] + +All pull request must pass CI on all [tier 1 platforms](https://www.ros.org/reps/rep-2000.html#support-tiers) + +### Documentation Policy [2.v] + +All pull requests must resolve related documentation changes before merging. + +## Documentation + +### Feature Documentation [3.i] + +`composition_interfaces` has a list of provided [messages and services](README.md). +New messages and services require their own documentation in order to be added. + +### Public API Documentation [3.ii] + +`composition_interfaces` has embedded API documentation, but it is not currently hosted. + +### License [3.iii] + +The license for `composition_interfaces` is Apache 2.0, the type is declared in the `package.xml` manifest file, and a full copy of the license is in the repository level [`LICENSE`](../LICENSE) file. + +There is an automated test which runs a linter that ensures each file has a license statement. + +### Copyright Statements [3.iv] + +The copyright holders each provide a statement of copyright in each source code file in `composition_interfaces`. + +There is an automated test which runs a linter that ensures each file has at least one copyright statement. + +## Testing [4] + +`composition_interfaces` is a package providing strictly message and service definitions and therefore does not require associated tests and has no coverage or performance requirements. + +## Dependencies [5] + +### Direct Runtime ROS Dependencies [5.i]/[5.ii] + +`composition_interfaces` has the following ROS dependencies: +* `rosidl_default_runtime` + +It has several "buildtool" dependencies, which do not affect the resulting quality of the package, because they do not contribute to the public library API. + +### Direct Runtime Non-ROS Dependencies [5.iii] + +`composition_interfaces` does not have any runtime non-ROS dependencies. + +## Platform Support [6] + +`composition_interfaces` supports all of the tier 1 platforms as described in [REP-2000](https://www.ros.org/reps/rep-2000.html#support-tiers), and tests each change against all of them. + +Currently nightly results can be seen here: +* [linux-aarch64_release](https://ci.ros2.org/view/nightly/job/nightly_linux-aarch64_release/lastBuild/testReport/composition_interfaces/) +* [linux_release](https://ci.ros2.org/view/nightly/job/nightly_linux_release/lastBuild/testReport/composition_interfaces/) +* [mac_osx_release](https://ci.ros2.org/view/nightly/job/nightly_osx_release/lastBuild/testReport/composition_interfaces/) +* [windows_release](https://ci.ros2.org/view/nightly/job/nightly_win_rel/lastBuild/testReport/composition_interfaces/) + +## Vulnerability Disclosure Policy [7.i] + +This package does not yet have a Vulnerability Disclosure Policy diff --git a/composition_interfaces/README.md b/composition_interfaces/README.md index 86855d20..9c702205 100644 --- a/composition_interfaces/README.md +++ b/composition_interfaces/README.md @@ -1,5 +1,6 @@ # composition_interfaces -This is a package containing message and service definitions for managing composable nodes in a container process. Generally these services are used by the ROS 2 [`roslaunch`](https://design.ros2.org/articles/roslaunch.html) system. +This is a package containing message and service definitions for managing composable nodes in a container process. +Generally these services are used by the ROS 2 [`roslaunch`](https://design.ros2.org/articles/roslaunch.html) system. For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/). diff --git a/lifecycle_msgs/QUALITY_DECLARATION.md b/lifecycle_msgs/QUALITY_DECLARATION.md new file mode 100644 index 00000000..166df4f4 --- /dev/null +++ b/lifecycle_msgs/QUALITY_DECLARATION.md @@ -0,0 +1,107 @@ +This document is a declaration of software quality for the `lifecycle_interfaces` package, based on the guidelines in [REP-2004](https://www.ros.org/reps/rep-2004.html). + +# `lifecycle_interfaces` Quality Declaration + +The package `lifecycle_interfaces` claims to be in the **Quality Level 4** category. + +Below are the rationales, notes, and caveats for this claim, organized by each requirement listed in the [Package Requirements for Quality Level 4 in REP-2004](https://www.ros.org/reps/rep-2004.html). + +## Version Policy [1] + +### Version Scheme [1.i] + +`lifecycle_interfaces` uses `semver` according to the recommendation for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#versioning). + +### Version Stability [1.ii] + +`lifecycle_interfaces` is not yet at a stable version, i.e. `>= 1.0.0`. + +### Public API Declaration [1.iii] + +All message and service definition files located in `msg` and `srv` directories are considered part of the public API. + +### API Stability Within a Released ROS Distribution [1.iv]/[1.vi] + +`lifecycle_interfaces` will not break public API within a released ROS distribution, i.e. no major releases once the ROS distribution is released. + +### ABI Stability Within a Released ROS Distribution [1.v]/[1.vi] + +`lifecycle_interfaces` does not contain any c or c++ code and therefore will not affect ABI stability. + +## Change Control Process [2] + +`lifecycle_interfaces` follows the recommended guidelines for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#package-requirements). + +### Change Requests [2.i] + +This package requires that all changes occur through a pull request. + +### Contributor Origin [2.ii] + +This package uses DCO as its confirmation of contributor origin policy. More information can be found in [CONTRIBUTING](../CONTRIBUTING.md). + +### Peer Review Policy [2.iii] + + Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. + +### Continuous Integration [2.iv] + +All pull request must pass CI on all [tier 1 platforms](https://www.ros.org/reps/rep-2000.html#support-tiers) + +### Documentation Policy [2.v] + +All pull requests must resolve related documentation changes before merging. + +## Documentation + +### Feature Documentation [3.i] + +`lifecycle_interfaces` has a list of provided [messages and services](README.md). +New messages and services require their own documentation in order to be added. + +### Public API Documentation [3.ii] + +`lifecycle_interfaces` has embedded API documentation, but it is not currently hosted. + +### License [3.iii] + +The license for `lifecycle_interfaces` is Apache 2.0, the type is declared in the `package.xml` manifest file, and a full copy of the license is in the repository level [`LICENSE`](../LICENSE) file. + +There is an automated test which runs a linter that ensures each file has a license statement. + +### Copyright Statements [3.iv] + +The copyright holders each provide a statement of copyright in each source code file in `lifecycle_interfaces`. + +There is an automated test which runs a linter that ensures each file has at least one copyright statement. + +## Testing [4] + +`lifecycle_interfaces` is a package providing strictly message and service definitions and therefore does not require associated tests and has no coverage or performance requirements. + +## Dependencies [5] + +### Direct Runtime ROS Dependencies [5.i]/[5.ii] + +`lifecycle_msgs` has the following ROS dependencies: +* `rosidl_default_runtime` + +It has several "buildtool" dependencies, which do not affect the resulting quality of the package, because they do not contribute to the public library API. + +### Direct Runtime Non-ROS Dependencies [5.iii] + +`lifecycle_msgs` does not have any runtime non-ROS dependencies. + +## Platform Support [6] + +`lifecycle_msgs` supports all of the tier 1 platforms as described in [REP-2000](https://www.ros.org/reps/rep-2000.html#support-tiers), and tests each change against all of them. + +Currently nightly results can be seen here: +* [linux-aarch64_release](https://ci.ros2.org/view/nightly/job/nightly_linux-aarch64_release/lastBuild/testReport/lifecycle_msgs/) +* [linux_release](https://ci.ros2.org/view/nightly/job/nightly_linux_release/lastBuild/testReport/lifecycle_msgs/) +* [mac_osx_release](https://ci.ros2.org/view/nightly/job/nightly_osx_release/lastBuild/testReport/lifecycle_msgs/) +* [windows_release](https://ci.ros2.org/view/nightly/job/nightly_win_rel/lastBuild/testReport/lifecycle_msgs/) + +## Vulnerability Disclosure Policy [7.i] + +This package does not yet have a Vulnerability Disclosure Policy diff --git a/lifecycle_msgs/README.md b/lifecycle_msgs/README.md index 43602a41..1cf2aada 100644 --- a/lifecycle_msgs/README.md +++ b/lifecycle_msgs/README.md @@ -18,3 +18,7 @@ For more information about ROS 2 interfaces, see [index.ros2.org](https://index. * [GetAvailableStates](srv/GetAvailableStates.srv): Request an array of states that this node can transition to. * [GetAvailableTransitions](srv/GetAvailableTransitions.srv): Request an array of lifecycle state transitions available for this node. * [GetState](srv/GetState.srv): Request the current lifecycle state of this node. + + +## Quality Declaration +This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. diff --git a/rcl_interfaces/QUALITY_DECLARATION.md b/rcl_interfaces/QUALITY_DECLARATION.md new file mode 100644 index 00000000..27312928 --- /dev/null +++ b/rcl_interfaces/QUALITY_DECLARATION.md @@ -0,0 +1,108 @@ +This document is a declaration of software quality for the `rcl_interfaces` package, based on the guidelines in [REP-2004](https://www.ros.org/reps/rep-2004.html). + +# `rcl_interfaces` Quality Declaration + +The package `rcl_interfaces` claims to be in the **Quality Level 4** category. + +Below are the rationales, notes, and caveats for this claim, organized by each requirement listed in the [Package Requirements for Quality Level 4 in REP-2004](https://www.ros.org/reps/rep-2004.html). + +## Version Policy [1] + +### Version Scheme [1.i] + +`rcl_interfaces` uses `semver` according to the recommendation for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#versioning). + +### Version Stability [1.ii] + +`rcl_interfaces` is not yet at a stable version, i.e. `>= 1.0.0`. + +### Public API Declaration [1.iii] + +All message and service definition files located in `msg` and `srv` directories are considered part of the public API. + +### API Stability Within a Released ROS Distribution [1.iv]/[1.vi] + +`rcl_interfaces` will not break public API within a released ROS distribution, i.e. no major releases once the ROS distribution is released. + +### ABI Stability Within a Released ROS Distribution [1.v]/[1.vi] + +`rcl_interfaces` does not contain any c or c++ code and therefore will not affect ABI stability. + +## Change Control Process [2] + +`rcl_interfaces` follows the recommended guidelines for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#package-requirements). + +### Change Requests [2.i] + +This package requires that all changes occur through a pull request. + +### Contributor Origin [2.ii] + +This package uses DCO as its confirmation of contributor origin policy. More information can be found in [CONTRIBUTING](../CONTRIBUTING.md). + +### Peer Review Policy [2.iii] + + Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. + +### Continuous Integration [2.iv] + +All pull request must pass CI on all [tier 1 platforms](https://www.ros.org/reps/rep-2000.html#support-tiers) + +### Documentation Policy [2.v] + +All pull requests must resolve related documentation changes before merging. + +## Documentation + +### Feature Documentation [3.i] + +`rcl_interfaces` has a list of provided [messages and services](README.md). +New messages and services require their own documentation in order to be added. + +### Public API Documentation [3.ii] + +`rcl_interfaces` has embedded API documentation, but it is not currently hosted. + +### License [3.iii] + +The license for `rcl_interfaces` is Apache 2.0, the type is declared in the `package.xml` manifest file, and a full copy of the license is in the repository level [`LICENSE`](../LICENSE) file. + +There is an automated test which runs a linter that ensures each file has a license statement. + +### Copyright Statements [3.iv] + +The copyright holders each provide a statement of copyright in each source code file in `rcl_interfaces`. + +There is an automated test which runs a linter that ensures each file has at least one copyright statement. + +## Testing [4] + +`rcl_interfaces` is a package providing strictly message and service definitions and therefore does not require associated tests and has no coverage or performance requirements. + +## Dependencies [5] + +### Direct Runtime ROS Dependencies [5.i]/[5.ii] + +`rcl_interfaces` has the following ROS dependencies: +* `builtin_interfaces` +* `rosidl_default_runtime` + +It has several "buildtool" dependencies, which do not affect the resulting quality of the package, because they do not contribute to the public library API. + +### Direct Runtime Non-ROS Dependencies [5.iii] + +`rcl_interfaces` does not have any runtime non-ROS dependencies. + +## Platform Support [6] + +`rcl_interfaces` supports all of the tier 1 platforms as described in [REP-2000](https://www.ros.org/reps/rep-2000.html#support-tiers), and tests each change against all of them. + +Currently nightly results can be seen here: +* [linux-aarch64_release](https://ci.ros2.org/view/nightly/job/nightly_linux-aarch64_release/lastBuild/testReport/rcl_interfaces/) +* [linux_release](https://ci.ros2.org/view/nightly/job/nightly_linux_release/lastBuild/testReport/rcl_interfaces/) +* [mac_osx_release](https://ci.ros2.org/view/nightly/job/nightly_osx_release/lastBuild/testReport/rcl_interfaces/) +* [windows_release](https://ci.ros2.org/view/nightly/job/nightly_win_rel/lastBuild/testReport/rcl_interfaces/) + +## Vulnerability Disclosure Policy [7.i] + +This package does not yet have a Vulnerability Disclosure Policy diff --git a/rcl_interfaces/README.md b/rcl_interfaces/README.md index 39adf030..585a9633 100644 --- a/rcl_interfaces/README.md +++ b/rcl_interfaces/README.md @@ -54,3 +54,6 @@ The ROS API for a node will be as follows inside the node's namespace. * [ListParameters](srv/ListParameters.srv): Get the list of parameters given a list of prefixes * [SetParameters](srv/SetParameters.srv): Add or change a list of parameters individually * [SetParametersAtomically](srv/SetParametersAtomically.srv): Add or change all parameters in a list or none at all. + +## Quality Declaration +This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. diff --git a/rosgraph_msgs/QUALITY_DECLARATION.md b/rosgraph_msgs/QUALITY_DECLARATION.md new file mode 100644 index 00000000..6b273235 --- /dev/null +++ b/rosgraph_msgs/QUALITY_DECLARATION.md @@ -0,0 +1,108 @@ +This document is a declaration of software quality for the `rosgraph_msgs` package, based on the guidelines in [REP-2004](https://www.ros.org/reps/rep-2004.html). + +# `rosgraph_msgs` Quality Declaration + +The package `rosgraph_msgs` claims to be in the **Quality Level 4** category. + +Below are the rationales, notes, and caveats for this claim, organized by each requirement listed in the [Package Requirements for Quality Level 4 in REP-2004](https://www.ros.org/reps/rep-2004.html). + +## Version Policy [1] + +### Version Scheme [1.i] + +`rosgraph_msgs` uses `semver` according to the recommendation for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#versioning). + +### Version Stability [1.ii] + +`rosgraph_msgs` is not yet at a stable version, i.e. `>= 1.0.0`. + +### Public API Declaration [1.iii] + +All message and service definition files located in `msg` and `srv` directories are considered part of the public API. + +### API Stability Within a Released ROS Distribution [1.iv]/[1.vi] + +`rosgraph_msgs` will not break public API within a released ROS distribution, i.e. no major releases once the ROS distribution is released. + +### ABI Stability Within a Released ROS Distribution [1.v]/[1.vi] + +`rosgraph_msgs` does not contain any c or c++ code and therefore will not affect ABI stability. + +## Change Control Process [2] + +`rosgraph_msgs` follows the recommended guidelines for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#package-requirements). + +### Change Requests [2.i] + +This package requires that all changes occur through a pull request. + +### Contributor Origin [2.ii] + +This package uses DCO as its confirmation of contributor origin policy. More information can be found in [CONTRIBUTING](../CONTRIBUTING.md). + +### Peer Review Policy [2.iii] + + Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. + +### Continuous Integration [2.iv] + +All pull request must pass CI on all [tier 1 platforms](https://www.ros.org/reps/rep-2000.html#support-tiers) + +### Documentation Policy [2.v] + +All pull requests must resolve related documentation changes before merging. + +## Documentation + +### Feature Documentation [3.i] + +`rosgraph_msgs` has a list of provided [messages and services](README.md). +New messages and services require their own documentation in order to be added. + +### Public API Documentation [3.ii] + +`rosgraph_msgs` has embedded API documentation, but it is not currently hosted. + +### License [3.iii] + +The license for `rosgraph_msgs` is Apache 2.0, the type is declared in the `package.xml` manifest file, and a full copy of the license is in the repository level [`LICENSE`](../LICENSE) file. + +There is an automated test which runs a linter that ensures each file has a license statement. + +### Copyright Statements [3.iv] + +The copyright holders each provide a statement of copyright in each source code file in `rosgraph_msgs`. + +There is an automated test which runs a linter that ensures each file has at least one copyright statement. + +## Testing [4] + +`rosgraph_msgs` is a package providing strictly message and service definitions and therefore does not require associated tests and has no coverage or performance requirements. + +## Dependencies [5] + +### Direct Runtime ROS Dependencies [5.i]/[5.ii] + +`rosgraph_msgs` has the following ROS dependencies: +* `builtin_interfaces` +* `rosidl_default_runtime` + +It has several "buildtool" dependencies, which do not affect the resulting quality of the package, because they do not contribute to the public library API. + +### Direct Runtime Non-ROS Dependencies [5.iii] + +`rosgraph_msgs` does not have any runtime non-ROS dependencies. + +## Platform Support [6] + +`rosgraph_msgs` supports all of the tier 1 platforms as described in [REP-2000](https://www.ros.org/reps/rep-2000.html#support-tiers), and tests each change against all of them. + +Currently nightly results can be seen here: +* [linux-aarch64_release](https://ci.ros2.org/view/nightly/job/nightly_linux-aarch64_release/lastBuild/testReport/rosgraph_msgs/) +* [linux_release](https://ci.ros2.org/view/nightly/job/nightly_linux_release/lastBuild/testReport/rosgraph_msgs/) +* [mac_osx_release](https://ci.ros2.org/view/nightly/job/nightly_osx_release/lastBuild/testReport/rosgraph_msgs/) +* [windows_release](https://ci.ros2.org/view/nightly/job/nightly_win_rel/lastBuild/testReport/rosgraph_msgs/) + +## Vulnerability Disclosure Policy [7.i] + +This package does not yet have a Vulnerability Disclosure Policy diff --git a/rosgraph_msgs/README.md b/rosgraph_msgs/README.md index b4c02cd2..a911f754 100644 --- a/rosgraph_msgs/README.md +++ b/rosgraph_msgs/README.md @@ -7,3 +7,6 @@ For more information about ROS 2 interfaces, see [index.ros2.org](https://index. ## Messages (.msg) * [Clock](msg/Clock.msg): Communicates the current ROS time. + +## Quality Declaration +This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. From 3645304fc6f216e1f7e18989c8a942b2c86038cf Mon Sep 17 00:00:00 2001 From: Stephen Brawner Date: Fri, 24 Apr 2020 12:34:04 -0700 Subject: [PATCH 5/7] PR Fixup Signed-off-by: Stephen Brawner --- action_msgs/QUALITY_DECLARATION.md | 4 ++- action_msgs/README.md | 2 +- builtin_interfaces/QUALITY_DECLARATION.md | 4 ++- builtin_interfaces/README.md | 2 +- composition_interfaces/QUALITY_DECLARATION.md | 4 ++- composition_interfaces/README.md | 3 +++ lifecycle_msgs/QUALITY_DECLARATION.md | 26 ++++++++++--------- lifecycle_msgs/README.md | 3 +-- rcl_interfaces/README.md | 2 +- rosgraph_msgs/QUALITY_DECLARATION.md | 4 ++- rosgraph_msgs/README.md | 2 +- 11 files changed, 34 insertions(+), 22 deletions(-) diff --git a/action_msgs/QUALITY_DECLARATION.md b/action_msgs/QUALITY_DECLARATION.md index ff02ba62..33fc8425 100644 --- a/action_msgs/QUALITY_DECLARATION.md +++ b/action_msgs/QUALITY_DECLARATION.md @@ -65,7 +65,7 @@ New messages and services require their own documentation in order to be added. ### License [3.iii] -The license for `action_msgs` is Apache 2.0, the type is declared in the `package.xml` manifest file, and a full copy of the license is in the repository level [`LICENSE`](../LICENSE) file. +The license for `action_msgs` is Apache 2.0, the type is declared in the [package.xml](package.xml) manifest file, and a full copy of the license is in the repository level [LICENSE](../LICENSE) file. There is an automated test which runs a linter that ensures each file has a license statement. @@ -75,6 +75,8 @@ The copyright holders each provide a statement of copyright in each source code There is an automated test which runs a linter that ensures each file has at least one copyright statement. +The nightly test can be found at [here](http://build.ros2.org/view/Epr/job/Epr__rcl_interfaces__ubuntu_bionic_amd64/lastBuild/) + ## Testing [4] `action_msgs` is a package providing strictly message and service definitions and therefore does not require associated tests and has no coverage or performance requirements. diff --git a/action_msgs/README.md b/action_msgs/README.md index b4825f72..4f1243a1 100644 --- a/action_msgs/README.md +++ b/action_msgs/README.md @@ -13,4 +13,4 @@ For more information about ROS 2 interfaces, see [index.ros2.org](https://index. * [CancelGoal](srv/CancelGoal.srv): Cancel Goals either by id and/or timestamp ## Quality Declaration -This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. +This package claims to be in the **Quality Level 4** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. diff --git a/builtin_interfaces/QUALITY_DECLARATION.md b/builtin_interfaces/QUALITY_DECLARATION.md index 51cb80e5..f4549b93 100644 --- a/builtin_interfaces/QUALITY_DECLARATION.md +++ b/builtin_interfaces/QUALITY_DECLARATION.md @@ -65,7 +65,7 @@ New messages and services require their own documentation in order to be added. ### License [3.iii] -The license for `builtin_interfaces` is Apache 2.0, the type is declared in the `package.xml` manifest file, and a full copy of the license is in the repository level [`LICENSE`](../LICENSE) file. +The license for `builtin_interfaces` is Apache 2.0, the type is declared in the [package.xml](package.xml) manifest file, and a full copy of the license is in the repository level [LICENSE](../LICENSE) file. There is an automated test which runs a linter that ensures each file has a license statement. @@ -75,6 +75,8 @@ The copyright holders each provide a statement of copyright in each source code There is an automated test which runs a linter that ensures each file has at least one copyright statement. +The nightly test can be found at [here](http://build.ros2.org/view/Epr/job/Epr__rcl_interfaces__ubuntu_bionic_amd64/lastBuild/) + ## Testing [4] `builtin_interfaces` is a package providing strictly message and service definitions and therefore does not require associated tests and has no coverage or performance requirements. diff --git a/builtin_interfaces/README.md b/builtin_interfaces/README.md index 7fad701f..50d6089b 100644 --- a/builtin_interfaces/README.md +++ b/builtin_interfaces/README.md @@ -10,4 +10,4 @@ For more information about ROS 2 interfaces, see [index.ros2.org](https://index. * [Time](msg/Time.msg): Describes a point in time, composed of seconds and nanoseconds components. ## Quality Declaration -This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. +This package claims to be in the **Quality Level 4** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. diff --git a/composition_interfaces/QUALITY_DECLARATION.md b/composition_interfaces/QUALITY_DECLARATION.md index 8781cf05..d5748eb8 100644 --- a/composition_interfaces/QUALITY_DECLARATION.md +++ b/composition_interfaces/QUALITY_DECLARATION.md @@ -65,7 +65,7 @@ New messages and services require their own documentation in order to be added. ### License [3.iii] -The license for `composition_interfaces` is Apache 2.0, the type is declared in the `package.xml` manifest file, and a full copy of the license is in the repository level [`LICENSE`](../LICENSE) file. +The license for `composition_interfaces` is Apache 2.0, the type is declared in the [package.xml](package.xml) manifest file, and a full copy of the license is in the repository level [LICENSE](../LICENSE) file. There is an automated test which runs a linter that ensures each file has a license statement. @@ -75,6 +75,8 @@ The copyright holders each provide a statement of copyright in each source code There is an automated test which runs a linter that ensures each file has at least one copyright statement. +The nightly test can be found at [here](http://build.ros2.org/view/Epr/job/Epr__rcl_interfaces__ubuntu_bionic_amd64/lastBuild/) + ## Testing [4] `composition_interfaces` is a package providing strictly message and service definitions and therefore does not require associated tests and has no coverage or performance requirements. diff --git a/composition_interfaces/README.md b/composition_interfaces/README.md index 9c702205..4b459fb7 100644 --- a/composition_interfaces/README.md +++ b/composition_interfaces/README.md @@ -8,3 +8,6 @@ For more information about ROS 2 interfaces, see [index.ros2.org](https://index. * [ListNodes](srv/ListNodes.srv): Retrieve a list of running composable nodes, including their names and ids. * [LoadNodes](srv/LoadNode.srv): Load a composable node. * [UnloadNode](UnloadNode.srv): Unload a specified node by its id. + +## Quality Declaration +This package claims to be in the **Quality Level 4** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. diff --git a/lifecycle_msgs/QUALITY_DECLARATION.md b/lifecycle_msgs/QUALITY_DECLARATION.md index 166df4f4..b72e8136 100644 --- a/lifecycle_msgs/QUALITY_DECLARATION.md +++ b/lifecycle_msgs/QUALITY_DECLARATION.md @@ -1,8 +1,8 @@ -This document is a declaration of software quality for the `lifecycle_interfaces` package, based on the guidelines in [REP-2004](https://www.ros.org/reps/rep-2004.html). +This document is a declaration of software quality for the `lifecycle_msgs` package, based on the guidelines in [REP-2004](https://www.ros.org/reps/rep-2004.html). -# `lifecycle_interfaces` Quality Declaration +# `lifecycle_msgs` Quality Declaration -The package `lifecycle_interfaces` claims to be in the **Quality Level 4** category. +The package `lifecycle_msgs` claims to be in the **Quality Level 4** category. Below are the rationales, notes, and caveats for this claim, organized by each requirement listed in the [Package Requirements for Quality Level 4 in REP-2004](https://www.ros.org/reps/rep-2004.html). @@ -10,11 +10,11 @@ Below are the rationales, notes, and caveats for this claim, organized by each r ### Version Scheme [1.i] -`lifecycle_interfaces` uses `semver` according to the recommendation for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#versioning). +`lifecycle_msgs` uses `semver` according to the recommendation for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#versioning). ### Version Stability [1.ii] -`lifecycle_interfaces` is not yet at a stable version, i.e. `>= 1.0.0`. +`lifecycle_msgs` is not yet at a stable version, i.e. `>= 1.0.0`. ### Public API Declaration [1.iii] @@ -22,15 +22,15 @@ All message and service definition files located in `msg` and `srv` directories ### API Stability Within a Released ROS Distribution [1.iv]/[1.vi] -`lifecycle_interfaces` will not break public API within a released ROS distribution, i.e. no major releases once the ROS distribution is released. +`lifecycle_msgs` will not break public API within a released ROS distribution, i.e. no major releases once the ROS distribution is released. ### ABI Stability Within a Released ROS Distribution [1.v]/[1.vi] -`lifecycle_interfaces` does not contain any c or c++ code and therefore will not affect ABI stability. +`lifecycle_msgs` does not contain any c or c++ code and therefore will not affect ABI stability. ## Change Control Process [2] -`lifecycle_interfaces` follows the recommended guidelines for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#package-requirements). +`lifecycle_msgs` follows the recommended guidelines for ROS Core packages in the [ROS 2 Developer Guide](https://index.ros.org/doc/ros2/Contributing/Developer-Guide/#package-requirements). ### Change Requests [2.i] @@ -56,25 +56,27 @@ All pull requests must resolve related documentation changes before merging. ### Feature Documentation [3.i] -`lifecycle_interfaces` has a list of provided [messages and services](README.md). +`lifecycle_msgs` has a list of provided [messages and services](README.md). New messages and services require their own documentation in order to be added. ### Public API Documentation [3.ii] -`lifecycle_interfaces` has embedded API documentation, but it is not currently hosted. +`lifecycle_msgs` has embedded API documentation, but it is not currently hosted. ### License [3.iii] -The license for `lifecycle_interfaces` is Apache 2.0, the type is declared in the `package.xml` manifest file, and a full copy of the license is in the repository level [`LICENSE`](../LICENSE) file. +The license for `lifecycle_msgs` is Apache 2.0, the type is declared in the [package.xml](package.xml) manifest file, and a full copy of the license is in the repository level [LICENSE](../LICENSE) file. There is an automated test which runs a linter that ensures each file has a license statement. ### Copyright Statements [3.iv] -The copyright holders each provide a statement of copyright in each source code file in `lifecycle_interfaces`. +The copyright holders each provide a statement of copyright in each source code file in `lifecycle_msgs`. There is an automated test which runs a linter that ensures each file has at least one copyright statement. +The nightly test can be found at [here](http://build.ros2.org/view/Epr/job/Epr__rcl_interfaces__ubuntu_bionic_amd64/lastBuild/) + ## Testing [4] `lifecycle_interfaces` is a package providing strictly message and service definitions and therefore does not require associated tests and has no coverage or performance requirements. diff --git a/lifecycle_msgs/README.md b/lifecycle_msgs/README.md index 1cf2aada..b3e4bc17 100644 --- a/lifecycle_msgs/README.md +++ b/lifecycle_msgs/README.md @@ -19,6 +19,5 @@ For more information about ROS 2 interfaces, see [index.ros2.org](https://index. * [GetAvailableTransitions](srv/GetAvailableTransitions.srv): Request an array of lifecycle state transitions available for this node. * [GetState](srv/GetState.srv): Request the current lifecycle state of this node. - ## Quality Declaration -This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. +This package claims to be in the **Quality Level 4** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. diff --git a/rcl_interfaces/README.md b/rcl_interfaces/README.md index 585a9633..d8571cc7 100644 --- a/rcl_interfaces/README.md +++ b/rcl_interfaces/README.md @@ -56,4 +56,4 @@ The ROS API for a node will be as follows inside the node's namespace. * [SetParametersAtomically](srv/SetParametersAtomically.srv): Add or change all parameters in a list or none at all. ## Quality Declaration -This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. +This package claims to be in the **Quality Level 4** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. diff --git a/rosgraph_msgs/QUALITY_DECLARATION.md b/rosgraph_msgs/QUALITY_DECLARATION.md index 6b273235..19b6b01b 100644 --- a/rosgraph_msgs/QUALITY_DECLARATION.md +++ b/rosgraph_msgs/QUALITY_DECLARATION.md @@ -65,7 +65,7 @@ New messages and services require their own documentation in order to be added. ### License [3.iii] -The license for `rosgraph_msgs` is Apache 2.0, the type is declared in the `package.xml` manifest file, and a full copy of the license is in the repository level [`LICENSE`](../LICENSE) file. +The license for `rosgraph_msgs` is Apache 2.0, the type is declared in the [package.xml](package.xml) manifest file, and a full copy of the license is in the repository level [LICENSE](../LICENSE) file. There is an automated test which runs a linter that ensures each file has a license statement. @@ -75,6 +75,8 @@ The copyright holders each provide a statement of copyright in each source code There is an automated test which runs a linter that ensures each file has at least one copyright statement. +The nightly test can be found at [here](http://build.ros2.org/view/Epr/job/Epr__rcl_interfaces__ubuntu_bionic_amd64/lastBuild/) + ## Testing [4] `rosgraph_msgs` is a package providing strictly message and service definitions and therefore does not require associated tests and has no coverage or performance requirements. diff --git a/rosgraph_msgs/README.md b/rosgraph_msgs/README.md index a911f754..cca2b73c 100644 --- a/rosgraph_msgs/README.md +++ b/rosgraph_msgs/README.md @@ -9,4 +9,4 @@ For more information about ROS 2 interfaces, see [index.ros2.org](https://index. * [Clock](msg/Clock.msg): Communicates the current ROS time. ## Quality Declaration -This package claims to be in the **Quality Level 1** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. +This package claims to be in the **Quality Level 4** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. From 4b11b7017e47e371035896734aef45911a365986 Mon Sep 17 00:00:00 2001 From: Stephen Brawner Date: Mon, 27 Apr 2020 10:51:03 -0700 Subject: [PATCH 6/7] PR Fixup Signed-off-by: Stephen Brawner --- action_msgs/QUALITY_DECLARATION.md | 4 ++-- builtin_interfaces/QUALITY_DECLARATION.md | 4 ++-- composition_interfaces/QUALITY_DECLARATION.md | 4 ++-- lifecycle_msgs/QUALITY_DECLARATION.md | 4 ++-- rcl_interfaces/QUALITY_DECLARATION.md | 4 ++-- rosgraph_msgs/QUALITY_DECLARATION.md | 4 ++-- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/action_msgs/QUALITY_DECLARATION.md b/action_msgs/QUALITY_DECLARATION.md index 33fc8425..d7158638 100644 --- a/action_msgs/QUALITY_DECLARATION.md +++ b/action_msgs/QUALITY_DECLARATION.md @@ -26,7 +26,7 @@ All message and service definition files located in `msg` and `srv` directories ### ABI Stability Within a Released ROS Distribution [1.v]/[1.vi] -`action_msgs` does not contain any c or c++ code and therefore will not affect ABI stability. +`action_msgs` does not contain any C or C++ code and therefore will not affect ABI stability. ## Change Control Process [2] @@ -42,7 +42,7 @@ This package uses DCO as its confirmation of contributor origin policy. More inf ### Peer Review Policy [2.iii] - Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. +Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. ### Continuous Integration [2.iv] diff --git a/builtin_interfaces/QUALITY_DECLARATION.md b/builtin_interfaces/QUALITY_DECLARATION.md index f4549b93..101679f0 100644 --- a/builtin_interfaces/QUALITY_DECLARATION.md +++ b/builtin_interfaces/QUALITY_DECLARATION.md @@ -26,7 +26,7 @@ All message and service definition files located in `msg` and `srv` directories ### ABI Stability Within a Released ROS Distribution [1.v]/[1.vi] -`builtin_interfaces` does not contain any c or c++ code and therefore will not affect ABI stability. +`builtin_interfaces` does not contain any C or C++ code and therefore will not affect ABI stability. ## Change Control Process [2] @@ -42,7 +42,7 @@ This package uses DCO as its confirmation of contributor origin policy. More inf ### Peer Review Policy [2.iii] - Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. +Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. ### Continuous Integration [2.iv] diff --git a/composition_interfaces/QUALITY_DECLARATION.md b/composition_interfaces/QUALITY_DECLARATION.md index d5748eb8..e3731275 100644 --- a/composition_interfaces/QUALITY_DECLARATION.md +++ b/composition_interfaces/QUALITY_DECLARATION.md @@ -26,7 +26,7 @@ All message and service definition files located in `msg` and `srv` directories ### ABI Stability Within a Released ROS Distribution [1.v]/[1.vi] -`composition_interfaces` does not contain any c or c++ code and therefore will not affect ABI stability. +`composition_interfaces` does not contain any C or C++ code and therefore will not affect ABI stability. ## Change Control Process [2] @@ -42,7 +42,7 @@ This package uses DCO as its confirmation of contributor origin policy. More inf ### Peer Review Policy [2.iii] - Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. +Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. ### Continuous Integration [2.iv] diff --git a/lifecycle_msgs/QUALITY_DECLARATION.md b/lifecycle_msgs/QUALITY_DECLARATION.md index b72e8136..aeaf02f6 100644 --- a/lifecycle_msgs/QUALITY_DECLARATION.md +++ b/lifecycle_msgs/QUALITY_DECLARATION.md @@ -26,7 +26,7 @@ All message and service definition files located in `msg` and `srv` directories ### ABI Stability Within a Released ROS Distribution [1.v]/[1.vi] -`lifecycle_msgs` does not contain any c or c++ code and therefore will not affect ABI stability. +`lifecycle_msgs` does not contain any C or C++ code and therefore will not affect ABI stability. ## Change Control Process [2] @@ -42,7 +42,7 @@ This package uses DCO as its confirmation of contributor origin policy. More inf ### Peer Review Policy [2.iii] - Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. +Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. ### Continuous Integration [2.iv] diff --git a/rcl_interfaces/QUALITY_DECLARATION.md b/rcl_interfaces/QUALITY_DECLARATION.md index 27312928..a230d4f6 100644 --- a/rcl_interfaces/QUALITY_DECLARATION.md +++ b/rcl_interfaces/QUALITY_DECLARATION.md @@ -26,7 +26,7 @@ All message and service definition files located in `msg` and `srv` directories ### ABI Stability Within a Released ROS Distribution [1.v]/[1.vi] -`rcl_interfaces` does not contain any c or c++ code and therefore will not affect ABI stability. +`rcl_interfaces` does not contain any C or C++ code and therefore will not affect ABI stability. ## Change Control Process [2] @@ -42,7 +42,7 @@ This package uses DCO as its confirmation of contributor origin policy. More inf ### Peer Review Policy [2.iii] - Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. +Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. ### Continuous Integration [2.iv] diff --git a/rosgraph_msgs/QUALITY_DECLARATION.md b/rosgraph_msgs/QUALITY_DECLARATION.md index 19b6b01b..10099f46 100644 --- a/rosgraph_msgs/QUALITY_DECLARATION.md +++ b/rosgraph_msgs/QUALITY_DECLARATION.md @@ -26,7 +26,7 @@ All message and service definition files located in `msg` and `srv` directories ### ABI Stability Within a Released ROS Distribution [1.v]/[1.vi] -`rosgraph_msgs` does not contain any c or c++ code and therefore will not affect ABI stability. +`rosgraph_msgs` does not contain any C or C++ code and therefore will not affect ABI stability. ## Change Control Process [2] @@ -42,7 +42,7 @@ This package uses DCO as its confirmation of contributor origin policy. More inf ### Peer Review Policy [2.iii] - Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. +Following the recommended guidelines for ROS Core packages, all pull requests must have at least 1 peer review. ### Continuous Integration [2.iv] From 145bb78ebcb2fcfcc669a0c0ff46ba3c542a6d96 Mon Sep 17 00:00:00 2001 From: Stephen Brawner Date: Wed, 29 Apr 2020 14:18:06 -0700 Subject: [PATCH 7/7] PR Fixup Signed-off-by: Stephen Brawner --- action_msgs/README.md | 10 +++++----- action_msgs/msg/GoalStatus.msg | 2 +- composition_interfaces/README.md | 2 +- composition_interfaces/srv/LoadNode.srv | 2 +- lifecycle_msgs/msg/State.msg | 12 ++++++------ lifecycle_msgs/srv/ChangeState.srv | 5 +++-- lifecycle_msgs/srv/GetAvailableStates.srv | 2 +- lifecycle_msgs/srv/GetState.srv | 2 +- rosgraph_msgs/msg/Clock.msg | 2 +- 9 files changed, 20 insertions(+), 19 deletions(-) diff --git a/action_msgs/README.md b/action_msgs/README.md index 4f1243a1..cb10d34c 100644 --- a/action_msgs/README.md +++ b/action_msgs/README.md @@ -2,15 +2,15 @@ This package contains several messages and services useful for ROS 2 actions. More information about actions can be found on its [design article](http://design.ros2.org/articles/actions.html). -For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/) +For more information about ROS 2 interfaces, see [index.ros2.org](https://index.ros.org/doc/ros2/Concepts/About-ROS-Interfaces/). ## Messages (.msg) -* [GoalInfo](msg/GoalInfo.msg): Goal identifier message, with a goal id and time stamp -* [GoalStatus](msg/GoalStatus.msg): Describes a goal's current state machine status -* [GoalStatusArray](msg/GoalStatusArray.msg): An array of [GoalStatus](msg/GoalStatus.msg) messages +* [GoalInfo](msg/GoalInfo.msg): Goal identifier message, with a goal id and time stamp. +* [GoalStatus](msg/GoalStatus.msg): Describes a goal's current state machine status. +* [GoalStatusArray](msg/GoalStatusArray.msg): An array of [GoalStatus](msg/GoalStatus.msg) messages. ## Services (.srv) -* [CancelGoal](srv/CancelGoal.srv): Cancel Goals either by id and/or timestamp +* [CancelGoal](srv/CancelGoal.srv): Cancel Goals either by id and/or timestamp. ## Quality Declaration This package claims to be in the **Quality Level 4** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. diff --git a/action_msgs/msg/GoalStatus.msg b/action_msgs/msg/GoalStatus.msg index ce198a47..6e84a911 100644 --- a/action_msgs/msg/GoalStatus.msg +++ b/action_msgs/msg/GoalStatus.msg @@ -25,7 +25,7 @@ int8 STATUS_CANCELED = 5 # The goal was terminated by the action server without an external request. int8 STATUS_ABORTED = 6 -# Goal info (contains ID and timestamp) +# Goal info (contains ID and timestamp). GoalInfo goal_info # Action goal state-machine status. diff --git a/composition_interfaces/README.md b/composition_interfaces/README.md index 4b459fb7..c3a2a030 100644 --- a/composition_interfaces/README.md +++ b/composition_interfaces/README.md @@ -7,7 +7,7 @@ For more information about ROS 2 interfaces, see [index.ros2.org](https://index. ## Services (.srv) * [ListNodes](srv/ListNodes.srv): Retrieve a list of running composable nodes, including their names and ids. * [LoadNodes](srv/LoadNode.srv): Load a composable node. -* [UnloadNode](UnloadNode.srv): Unload a specified node by its id. +* [UnloadNode](srv/UnloadNode.srv): Unload a specified node by its id. ## Quality Declaration This package claims to be in the **Quality Level 4** category, see the [Quality Declaration](QUALITY_DECLARATION.md) for more details. diff --git a/composition_interfaces/srv/LoadNode.srv b/composition_interfaces/srv/LoadNode.srv index 97f84cc2..ffd243f3 100644 --- a/composition_interfaces/srv/LoadNode.srv +++ b/composition_interfaces/srv/LoadNode.srv @@ -29,7 +29,7 @@ rcl_interfaces/Parameter[] parameters # key/value arguments that are specific to a type of container process. rcl_interfaces/Parameter[] extra_arguments --- -# True if the node was successfully loaded +# True if the node was successfully loaded. bool success # Human readable error message if success is false, else empty string. diff --git a/lifecycle_msgs/msg/State.msg b/lifecycle_msgs/msg/State.msg index 599310e2..4fd07b14 100644 --- a/lifecycle_msgs/msg/State.msg +++ b/lifecycle_msgs/msg/State.msg @@ -4,7 +4,7 @@ # These are the primary states. State changes can only be requested when the # node is in one of these states. -# Indicates state has not yet been set +# Indicates state has not yet been set. uint8 PRIMARY_STATE_UNKNOWN = 0 # This is the life cycle state the node is in immediately after being @@ -36,22 +36,22 @@ uint8 TRANSITION_STATE_CONFIGURING = 10 uint8 TRANSITION_STATE_CLEANINGUP = 11 # In this transition state the callback onShutdown will be executed to do any -# cleanup necessary before destruction +# cleanup necessary before destruction. uint8 TRANSITION_STATE_SHUTTINGDOWN = 12 # In this transition state the callback onActivate will be executed to do any -# final preparations to start executing +# final preparations to start executing. uint8 TRANSITION_STATE_ACTIVATING = 13 # In this transition state the callback onDeactivate will be executed to do any # cleanup to start executing, and reverse the onActivate changes. uint8 TRANSITION_STATE_DEACTIVATING = 14 -# This transition state is where any error may be cleaned up +# This transition state is where any error may be cleaned up. uint8 TRANSITION_STATE_ERRORPROCESSING = 15 -# The state id value from the above definitions +# The state id value from the above definitions. uint8 id -# A text label of the state +# A text label of the state. string label diff --git a/lifecycle_msgs/srv/ChangeState.srv b/lifecycle_msgs/srv/ChangeState.srv index 2e2ebc24..1bad3d10 100644 --- a/lifecycle_msgs/srv/ChangeState.srv +++ b/lifecycle_msgs/srv/ChangeState.srv @@ -1,5 +1,6 @@ -# The requested transition. This change state service will fail if the -# transition is not possible +# The requested transition. +# +# This change state service will fail if the transition is not possible. Transition transition --- diff --git a/lifecycle_msgs/srv/GetAvailableStates.srv b/lifecycle_msgs/srv/GetAvailableStates.srv index ef156d53..2faa79b0 100644 --- a/lifecycle_msgs/srv/GetAvailableStates.srv +++ b/lifecycle_msgs/srv/GetAvailableStates.srv @@ -1,3 +1,3 @@ --- -# Array of possible states that can be transitioned to +# Array of possible states that can be transitioned to. State[] available_states diff --git a/lifecycle_msgs/srv/GetState.srv b/lifecycle_msgs/srv/GetState.srv index b26777d8..b2569fa6 100644 --- a/lifecycle_msgs/srv/GetState.srv +++ b/lifecycle_msgs/srv/GetState.srv @@ -1,3 +1,3 @@ --- -# The current state-machine state of the node +# The current state-machine state of the node. State current_state diff --git a/rosgraph_msgs/msg/Clock.msg b/rosgraph_msgs/msg/Clock.msg index 13489645..25af0e4d 100644 --- a/rosgraph_msgs/msg/Clock.msg +++ b/rosgraph_msgs/msg/Clock.msg @@ -1,4 +1,4 @@ # This message communicates the current time. # -# For more information, see https://design.ros2.org/articles/clock_and_time.html +# For more information, see https://design.ros2.org/articles/clock_and_time.html. builtin_interfaces/Time clock