-
Notifications
You must be signed in to change notification settings - Fork 139
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
refactor: moved subprojects to separate repositories #454
Conversation
I didn't move the docs folder, I thought it'd be good to have them alongside |
I had to tweak the |
Marked as draft to avoid merging by mistake, the |
Are we sure about moving examples into another repo? That will make it harder to ensure that the examples stay in sync with the latest version of rclrs, especially with the incoming API changes. Iirc the main motivation for splitting the repo is so we can eventually release the crates to the build farm while managing their versions separately. I wouldn't expect us to release the example crates, so there shouldn't be any detriment to keeping them in the same repo as rclrs. It's also very common practice in the Rust ecosystem to keep example projects in the same repo as the crate that they're demonstrating. |
@mxgrey that's a good point, I was following the structure of the |
Do we need to have 1 ROS package per repo? Couldn't we keep examples in-place and just package them separately? Its more "rusty" IMO to have the examples stay in tree A few examples from the rust ecosystem
|
Sure, it's worth considering the possibility that we would release the examples on the build farm as well. I think even in that situation, it wouldn't be a bad thing to always re-release the examples with each release of rclrs and to make the version numbers of the examples always match the version number of rclrs. The examples would be leaf nodes in the build tree so there wouldn't be cascading rebuilds from unnecessary releases. And they'd need to be rebuilt with each rclrs release anyway since Rust crates can't be updated with a new version of a dependency without being rebuilt. |
@mxgrey thinking about it I agree with not moving the examples folder. Especially given that it'd be counterintuitive to release binaries that have been compiled with an older version of @maspe36 no, we don't need one repo per package. See for example the rclcpp repository (https://github.com/ros2/rclcpp) which contains three packages. Moving rosidl_generator_rs and rosidl_runtime_rs make sense as they are mostly released at a different pace. Plus it'd help us get the generator in the buildfarm as soon as possible until rclrs is in a state that can be released by the buildfarm |
Signed-off-by: Esteve Fernandez <[email protected]>
@maspe36 @mxgrey @nwn @jhdcs Now that ros2-rust/rosidl_rust#1 and ros2-rust/rosidl_runtime_rs#2 have been merged, this PR is now ready to be reviewed. The changes here should be straightforward to review, I just removed |
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.
These changes look good to me, though I feel a second opinion might be warranted as I wasn't super involved in the reviews for this before now.
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.
Everything looks like it's in order 👍
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.
LGTM
Corresponding PRs are: