Files
tines/tines-ros2/Cargo.toml
T
kyleandClaude Opus 5.5 8c97963364 chore: bump hosts to 0.4.0
The host crates ship breaking changes (log format v2, flush and
set_wall_clock, the tines::serve signature, tines-core 1) that can't go
out as the already-released 0.3.0 (1.0 review S13). tines-core stays
1.0.0.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 08:44:09 -07:00

40 lines
1.9 KiB
TOML

[package]
name = "tines-ros2"
version.workspace = true
edition.workspace = true
license.workspace = true
description = "Self-contained ROS2 node for tines: bridges tines topics to ROS2 topics with a /tines/receipts channel for confidence events. rclrs is an optional feature (off by default) so the crate builds without a ROS2 toolchain."
authors.workspace = true
repository.workspace = true
readme.workspace = true
documentation = "https://docs.rs/tines-ros2"
keywords = ["robotics", "ros2", "gossip", "delay-tolerant", "science::robotics"]
categories = ["science::robotics", "network-programming"]
[features]
# rclrs (the ROS2 client library) is optional and off by default: the crate's
# pure tines-side pieces (topic naming, the Node/Store/Transport wiring) build
# and are tested without a ROS2 toolchain. Enable `--features ros2` to compile
# the rclrs-backed `TinesNode`.
default = []
ros2 = ["dep:rclrs", "dep:ros-env", "dep:tines"]
[dependencies]
tines-core = { path = "../tines-core", version = "1" }
tines-store = { path = "../tines-store", version = "0.4.0" }
tines-bt = { path = "../tines-bt", version = "0.4.0" }
# The host's wall-clock abstraction (`HostClock`) and the trusted-time state
# machine it drives. Only needed behind the `ros2` feature — `TinesNode` is the
# only consumer and that is compiled only with `ros2` — so keep it optional.
tines = { path = "../tines", version = "0.4.0", optional = true }
rclrs = { version = "0.8", optional = true }
# ros_env provides the ROS 2 message types (std_msgs, including
# UInt8MultiArray) by include!()ing the generated crates from
# AMENT_PREFIX_PATH; only needed behind the `ros2` feature alongside rclrs.
# Pinned to 0.3 so it shares rclrs 0.8's rosidl_runtime_rs 0.7 rather than the
# 0.6 that ros_env 0.1 pulls in. (The crates.io package is `ros-env`; Cargo maps
# it to the `ros_env` crate id.)
ros-env = { version = "0.3", optional = true }
[dev-dependencies]