From 94a4ebd8e29124006df92559f3614e492586ce30 Mon Sep 17 00:00:00 2001 From: Andrea Richichi Date: Wed, 18 Mar 2026 00:55:54 +0100 Subject: [PATCH] Add type hints to minimal publisher rclpy example Signed-off-by: Andrea Richichi --- .../publisher_member_function.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/rclpy/topics/minimal_publisher/examples_rclpy_minimal_publisher/publisher_member_function.py b/rclpy/topics/minimal_publisher/examples_rclpy_minimal_publisher/publisher_member_function.py index 5ea61a5d..994ad4a5 100644 --- a/rclpy/topics/minimal_publisher/examples_rclpy_minimal_publisher/publisher_member_function.py +++ b/rclpy/topics/minimal_publisher/examples_rclpy_minimal_publisher/publisher_member_function.py @@ -12,31 +12,35 @@ # See the License for the specific language governing permissions and # limitations under the License. +from typing import List, Optional + import rclpy from rclpy.executors import ExternalShutdownException from rclpy.node import Node +from rclpy.publisher import Publisher +from rclpy.timer import Timer from std_msgs.msg import String class MinimalPublisher(Node): - def __init__(self): + def __init__(self) -> None: super().__init__('minimal_publisher') - self.publisher_ = self.create_publisher(String, 'topic', 10) + self.publisher_: Publisher[String] = self.create_publisher(String, 'topic', 10) timer_period = 0.5 # seconds - self.timer = self.create_timer(timer_period, self.timer_callback) + self.timer: Timer = self.create_timer(timer_period, self.timer_callback) self.i = 0 - def timer_callback(self): - msg = String() + def timer_callback(self) -> None: + msg: String = String() msg.data = 'Hello World: %d' % self.i self.publisher_.publish(msg) self.get_logger().info('Publishing: "%s"' % msg.data) self.i += 1 -def main(args=None): +def main(args: Optional[List[str]] = None) -> None: try: with rclpy.init(args=args): minimal_publisher = MinimalPublisher()