-
Notifications
You must be signed in to change notification settings - Fork 193
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add section on uniquely identifier interface definitions #220
base: gh-pages
Are you sure you want to change the base?
Conversation
Can we do better than relying on file system layout to uniquely identify a message? What about using package name and a hash generated from the comment-less version of the message definition? |
That doesn't seem practical if the user has to specify a message type on the command line. |
True. I was thinking only in terms of automated tools, but the usability aspect for the user/programmer is probably more important. |
Signed-off-by: Jacob Perron <[email protected]>
Signed-off-by: Jacob Perron <[email protected]>
Signed-off-by: Jacob Perron <[email protected]>
Reference the IDL section on identifying interfaces and be explicit about the namespaces for messages, services, and actions. Signed-off-by: Jacob Perron <[email protected]>
11564de
to
729c2d9
Compare
After an offline discussion, I've updated this PR attempting to address the problem of identifying interfaces in general (pure IDL). |
Signed-off-by: Jacob Perron <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Considering a command line tool like ros2 msg
I would expect it to take a URN as an argument. The problem I see is that it doesn't know what the correct URL is in order to import the module containing the type.
Signed-off-by: Jacob Perron <[email protected]>
Signed-off-by: Jacob Perron <[email protected]>
Is it possible for typesupport to provide the URL? I.e. provide a mapping from a types URN to the URL. |
Maybe that information could be put into the resource index. Currently each URN has a marker file in the resource index. Instead of using an empty file it could contain the URL. |
That might work. But is it the case that there is a marker file for each URN? It looks like there is a single marker file for the package containing relative paths to the resource files (not necessarily URNs). For example, there's a file content
|
* Use URI, instead of URN, for interface definitions * Add forward slashes to URL and rename 'rosidl' -> 'package' Signed-off-by: Jacob Perron <[email protected]>
Signed-off-by: Jacob Perron <[email protected]>
Follow up from ros2/rmw_opensplice#263 (comment)
This is a proposal for uniquely identifying ROS interfaces that does not make any assumptions about the subfolder(s) where the interface definitions are found.