On Thu, Mar 1, 2012 at 9:49 AM, Jack O'Quin wrote: > On Thu, Mar 1, 2012 at 11:34 AM, Ken Conley wrote: >> On Thu, Mar 1, 2012 at 7:11 AM, Jack O'Quin wrote: > >>>  * We depend on the `*-dev` packages for source builds, but not for >>> binary installs. Which should be specified? Should we pull in the >>> development package anyway for binary installs? (I believe that is >>> currently the case.) >> >> For now, -dev must be included. None of the release tools distinguish >> between "Build-Depends" and "Depends", though this is definitely a >> future desire.  It's also an artifact of not producing -dev versions >> for ROS stacks. > > Does that mean we should leave off the `-dev` suffix in our rosdep keys? I think it means that we should put on the suffix, per your proposal. It makes it obvious that the rosdep keys *always* give you -dev versions, so there are no surprises. >>>  * In most cases, renaming a system-wide rosdep key deserves some sort >>> of tick-tock with deprecation in one release and removal in the next. >>> Presumably meta-entries can provide two names simultaneously during >>> the overlap period. I can't think of a way to issue a deprecation >>> message, however. At least, that allows externally-maintained >>> repositories to build the same source code on both Electric and >>> Fuerte. That is important to people like me. >> >> +1 to tick-tock, though Fuerte is a chance to jump the chasm, so to >> speak, as rosdep has two distinct databases.  Creating the unified >> database already pointed out inconsistencies with rules like Qt, which >> created some realignment in the core stacks. > > Good point about Fuerte and Electric using distinct databases. That > suggests a focused effort to "normalize" the names before Fuerte final > freeze. Yes. We'd probably want to normalize the ones used in the catkin-ized stacks first, then pick our battles after. There be dragons. > >>>  * Since these are system dependencies, I suggest adopting names >>> similar to the corresponding Ubuntu package names. Although other >>> packaging systems use different names, that at least provides a >>> canonical list that anyone can guess. >> >> Sure, though it's the case that anything that is built as part of >> catkin/Fuerte assumes the name of the project, so there are some >> exceptions like ROS stacks and libraries like eigen, opencv, and pcl. > > In a sense, the ROS names of those packages are the "official" names. > >>>  * For complicated dependencies like OpenCV, PCL and Qt, meta-entries >>> are a good idea. It should still be possible to depend on subsets of >>> those entire sets of libraries. For example, we want packages to be >>> able to use pcl_common without pulling in every single PCL library. >> >> BTW: PCL in Fuerte is roughly equivalent to pcl-all, but they are >> *not* the same debs as in the ppa. It should be possible in the future >> to produce an equivalent set of separate debs. > > Is there any hope of getting a stripped-down pcl_common into Fuerte? > The `pcl_ros` package should really only depend on that, a significant > special case. Probably not. That's definitely first freeze material and the sort of thing that always bites us badly if we attempt to repackage this late. - Ken > -- >  joq