Skip to content
This repository has been archived by the owner on Aug 3, 2020. It is now read-only.

Split this repo and deprecate robot_model #195

Closed
9 tasks done
sloretz opened this issue Apr 24, 2017 · 21 comments
Closed
9 tasks done

Split this repo and deprecate robot_model #195

sloretz opened this issue Apr 24, 2017 · 21 comments

Comments

@sloretz
Copy link
Contributor

sloretz commented Apr 24, 2017

Summary of meeting:

Original issue: collada_urdf depends on geometric_shapes which depends on octomap. During the ROS Lunar release packages depending on packages in robot_model were blocked needlessly by the release of octomap and geometric shapes.

Plan

Before Lunar release

  • Leave the metapackage robot_model in this repo, but re-release to lunar with status end-of-life with EOL message indicating other packages have been moved
  • Update ROS Lunar migration notes on ROS wiki to say robot_model has been deprecated

Anytime, but sooner rather than later

Before M Turtle

note to self: https://discourse.ros.org/t/repository-consolidation-moving-released-packages-to-another-repo/327/4

@sloretz
Copy link
Contributor Author

sloretz commented Apr 24, 2017

@clalancette @mikaelarguedas @wjwwood Does this look right?

@sloretz
Copy link
Contributor Author

sloretz commented Apr 24, 2017

Closing in favor of https://osrfoundation.atlassian.net/browse/ROS-38

@sloretz sloretz closed this as completed Apr 24, 2017
@wjwwood
Copy link
Member

wjwwood commented Apr 24, 2017

I think it can be split into categories based on what needs to happen by when:

  • Before Lunar Release (ideally before Beta):
    • Leave the metapackage robot_model in this repo, but re-release to lunar with status end-of-life
      • Make sure the EOL message indicates that the robot_model metapackage is deprecated, the other packages have just been moved.
    • Update ROS Lunar migration notes on ROS wiki
      • Mention that the robot_model metapackge has been deprecated
  • Any time, but sooner than later:
    • Move collada_parser and collada_urdf together to a new repo
    • Move kdl_parser and kdl_parser_py together to a new repo
    • Move joint_state_publisher to a new repo
    • Move urdf and urdf_parser_plugin together to a new repo
    • Add a README for this repo which points to the new repositories
  • Any time before M-Turtle
    • Add a new rep like REP-142 that lists each package independently in the robot_metapackage instead of robot_model
    • Don't release robot_model metapackage into ROS M

Also, I think might be useful for these to be on GitHub since Jira is not public.

@sloretz sloretz reopened this Apr 24, 2017
@wjwwood
Copy link
Member

wjwwood commented Apr 24, 2017

@sloretz it should be fine to have the overarching issue in JIRA as long as the individual issues are in GitHub, though I do still think having an organizing issue in GitHub helps with cross-referencing for external observers.

Edit: (I was just clarifying why I asked for it to be left open here, you don't need to change anything else)

@sloretz
Copy link
Contributor Author

sloretz commented Apr 24, 2017

@wjwwood The first post is now split according to the categories you listed.

@wjwwood
Copy link
Member

wjwwood commented Apr 24, 2017

👍 lgtm

@mikaelarguedas
Copy link
Member

@bmagyar FYI, thanks for reporting the issue

@bmagyar
Copy link
Contributor

bmagyar commented Apr 25, 2017

👍

@sloretz
Copy link
Contributor Author

sloretz commented Apr 26, 2017

Step 1 in ros/rosdistro#14675

@sloretz
Copy link
Contributor Author

sloretz commented Apr 26, 2017

Migration notes updated for lunar http:https://wiki.ros.org/lunar/Migration

@sloretz
Copy link
Contributor Author

sloretz commented Apr 28, 2017

Ideas for new repo names?

  • ros/collada_model
    • collada_parser
    • collada_urdf
  • ros/kdl_model
    • kdl_parser
    • kdl_parser py
  • ros/joint_state_publisher
    • joint_state_publisher
  • ros/urdf_model
    • urdf
    • urdf_parser_plugin

@mikaelarguedas if these names look ok or if you've got better ones would you mind forking robot_model into them? I don't have the permissions needed to create a repo in the ros org.

@wjwwood
Copy link
Member

wjwwood commented Apr 28, 2017

My initial reaction is that the _model isn't always necessary, though I don't feel strongly about it. I would have done:

  • ros/collada_urdf
    • because collada_urdf is the important package, and collada_parser is a means to an end imo
  • ros/kdl_parser
    • this seems to fit better (to me at least) than _model which doesn't seem to have anything to do with the package names within the repository
  • ros/urdf
    • urdf_parser_plugin is part of urdf in my mind, so urdf seems appropriate
    • if I consider what _model means when attached to urdf I can't come up with a meaning that tells me more than just urdf

These are all just suggestions. I think whatever you do will be just fine.

@mikaelarguedas
Copy link
Member

@sloretz Sorry for the late reply. I +1'ed @wjwwood's suggestion but forgot to change your rights. You should know have the rights to create new repos on the ros org unit.

@sloretz
Copy link
Contributor Author

sloretz commented May 4, 2017

collada_urdf and collada_parser are now at https://github.com/ros/collada_urdf

Self note: Here were the steps to move a package from one repo to another

  1. Create the new repo (ex: https://github.com/ros/collada_urdf)
    1. Using the github GUI create an empty repo
    2. Checkout the current repo
    3. add a git-remote for the new repo
    4. push the desired branches to the new repo (ex: indigo-devel, kinetic-devel)
  2. Create a new release repo (ex: https://github.com/ros-gbp/collada_urdf-release)
    • initialize it with an empty README
  3. Release the packages from the new repo
    1. catkin_generate_changelogs won't work. Add the Forthcoming bit to the changelogs manually
    2. catkin_prepare_release works as usual
    3. bloom-release works up to the point of opening the rosdistro PR
      • bloom-release will prep the release repository then close after an assertion about a duplicate package in the distrobution.yaml fails
      • Manually create a PR to update the distrobution.yaml for each rosdistro. The PR should add the new repo and remove the moved packages from the old repo.
  4. Delete the packages from the source repo

@mikaelarguedas
Copy link
Member

Example of what the resulting rosdistro PR looks like: ros/rosdistro#14899

@John-Nagle
Copy link

If all this was done, why am I getting this install conflict with ROS Lunar?

#203

@davetcoleman
Copy link
Contributor

The state of URDF code locations was already complicated before this split - could you please document these changes on the URDF wiki similar to how I attempted to do so in 2013 here? Its amazing to me how many robotics projects (non-ROS, private) around the world use URDF, yet how messy it is to use.

The source for the diagram I made is here

Thanks!!

gentoo-bot pushed a commit to gentoo/gentoo that referenced this issue Jun 27, 2017
It has been removed from this repo, see ros/robot_model#195

Package-Manager: Portage-2.3.6, Repoman-2.3.2
@Alessandro-Barbieri
Copy link

hello (?)
some packages still pull in robot_model/collada_parser
I deleted the */collada_parser folders in src, devel_isolated and build_isolated
run rosdep update, regenerated the .rosinstall file, run wstool merge but wstool update continue to redownload robot_model/collada_parser and then causing conflicts at build time

how can I fix?

@clalancette
Copy link
Contributor

All of the work for this is now merged (mostly thanks to @sloretz , thanks). I'm going to close this ticket out now.

@mikaelarguedas
Copy link
Member

@clalancette should follow-up issues be opened for the comments that came up on this issue during refactoring ? (e.g. #195 (comment))

@clalancette
Copy link
Contributor

@clalancette should follow-up issues be opened for the comments that came up on this issue during refactoring ? (e.g. #195 (comment))

Good idea, I've opened up #224 to track that issue.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants