Skip to content

Prevent message packages from crates.io to be included during the build #394

Open
@esteve

Description

@esteve

As a side effect of #392, a set of message packages are now published on crates.io (see https://crates.io/crates/builtin_interfaces for example), although they've been yanked, this exposes an issue in our build system that anyone could register a crate named like a message package and potentially cause issues.

I've thought of something like this:

  • rosidl_generator_rs stays the same
  • a new base ros2_messages crate
  • the ros2_messages crate can accept a list of features, each feature is the name of a message package
  • the ros2_messages crate uses ament_rs to find the paths of the generated Rust files for each message package and uses include!() on those files
  • downstream packages can access the messages via ros2_messages::buildin_interfaces, ros2_messages::std_msgs, etc.

I'm going to work on this urgently as the current situation needs to be fixed before it causes any breakage.

@jhdcs @maspe36 @mxgrey @luca-della-vedova thought?

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions