On Tue, Dec 28, 2010 at 11:19 PM, Patrick Bouffard wrote: > Thanks Ken. I wasn't aware of that usage of roscreate-stack. BTW, I > noticed what I guess is a bug in unstable when the --show-deps flag is > used: > > $ roscreate-stack --show-deps . > Traceback (most recent call last): >  File "/opt/ros/unstable/ros/bin/roscreate-stack", line 35, in >    roscreate.roscreatestack.roscreatestack_main() >  File "/opt/ros/unstable/ros/tools/roscreate/src/roscreate/roscreatestack.py", > line 219, in roscreatestack_main >    create_stack(stack, stack_dir, stack_manifest, author, depends, > licenses, options.show_deps) > UnboundLocalError: local variable 'stack_manifest' referenced before assignment Thanks for the report. I didn't even know about the --show-deps flag. I learn something new about my own code every day :). I fixed the issue in r12666 and added documentation on the --show-deps option to the wiki. > Regarding extraneous (package) dependencies, thinking about it some > more I guess there's no real way to find that out for sure aside from > systematically removing one at a time from package's manifest and > trying to rebuild that package. Does that make sense? Pretty much. As a quicker test, r-grepping for a package name in the source is usually a good sniff test. Also keep in mind that roslaunch files create implicit dependencies, so 'make' is often not a sufficient test -- though the fastidious can use the rosbuild_add_roslaunch_check() macro: http://www.ros.org/wiki/rosbuild/CMakeLists#rosbuild_add_roslaunch_check And, of course, the only way to catch Python dependencies is to write unit tests as well. cheers, Ken