This page lists changes that are made in the 1.2.x series of ROS (C Turtle).

See also ROS/ReleaseProcess.

1.2.7 (forthcoming)

  • rospack: fix uninitialized variable <<Ticket(ros 3488)>>

1.2.6 (2011-04-13)

  • Fixed missing import in rospy.impl.tcpros_pubsub <<Ticket(ros 3336)>>

  • patch from timn to add retry logic to requestTopic <<Ticket(ros 3337)>>

  • make variable patch for test_rosbag and test_rosbagmigration from rene <<Ticket(ros 3328)>>

  • make variable patch for wxswig from rene <<Ticket(ros 3326)>>

  • patch for squeeze boost rosdep from willylambert <<Ticket(ros 3329)>>

  • fixed use of undeclared DEBUG in roslib.xmlrpc

1.2.5 (2011-02-12)

  • roslib.xmlrpc: more robust to signal shutdown issues that can cause rospy node shutdown (r12843).

  • rospy:

    • bug fix for resolving ~/name properly. <<Ticket(ros 3044)>>

    • bug fix for race condition with sleep when simulated time is active. <<Ticket(ros 3123)>>

  • roslaunch:

    • better error message on invalid package. (r11980)
    • bug fix for using 'if' with remap tag inside of a node tag (r12332)

  • rosbag:

    • bug fix for boundary conditions on message migration of moved messages <<Ticket(ros 3033)>>

    • fixed naming conflict with X11 <<Ticket(ros 3205)>>

    • relax strictness of topic name filter in Python API <<Ticket(ros 3057)>>

    • fix for rosbag play --loop resetting pause state when stepping past end of bag <<Ticket(ros 3031)>>

    • added missing Bag iterator to Python API <<Ticket(ros 3058)>>

  • rxtools: bug fix for rxplot use in roslaunch <<Ticket(ros 3163)>>

  • rosmsg: FreeBSD support for rosmsg users <<Ticket(ros 3172)>>

  • rospack:

    • fixed bug in which a package containing a rospack_nosubdirs file wasn't found <<Ticket(ros 3191)>>.

    • fixed bug in which a package containing a rospack_nosubdirs file wasn't found <<Ticket(ros 3191)>>.

  • roscreate: Bug fix for roscreate-stack --show-deps (r12666).

  • roswtf: don't warn about stack depends on ros or ros_comm, which are often implicit (r12695).

  • rosmake

    • Patch for load average control <<Ticket(ros 2920)>>

    • Remove errant tab character <<Ticket(ros 3295)>>

  • rosdep Patched to not crash on empty rosdep.yaml files <<Ticket(ros 2762)>>

1.2.4 (2010-10-25)

  • roslisp

    • Don't access md5 sum in header when handling a service probe
  • roscpp

    • Fix valgrind errors when subscribers reconnect (r11356, <<Ticket(ros,3047)>>)

  • roslib:

    • bug fix for hang when computing dependencies of packages when they are circular
    • Bug fix for find_node() to find read-only files (r11736, <<Ticket(ros 3085)>>)

  • rospy:

    • bug fix for subscriber-side latching <<Ticket(ros 3053)>>

    • bug fix for message md5sums when field name collides with Python keyword (r11725, r11727, <<Ticket(ros 2990)>>)

    • squelch I/O-related exceptions in topics when shutdown has occurred <<Ticket(ros 2673)>>

    • teardown code now uses XML-RPC multicall for faster teardown (r11753)
    • cleanup of cleanup code to get rid of exceptions. (r11753, <<Ticket(ros 3096)>>)

  • rosbuild:

    • enabled PyDev project suppport for Eclipse <<Ticket(ros 3049)>>

    • fixed bug that was affecting builds in heavily symlinked environments <<Ticket(ros 3064)>>

  • roslaunch:

    • don't check log usage on remote machines (r11675, <<Ticket(ros 3088)>>)

    • better cleanup when server startup fails (r11711, <<Ticket(ros 2914)>>)

1.2.3 (2010-09-28)

  • rospack: bug fix to logic for adding msg_gen and msg_srv include search paths <<Ticket(ros 3018)>>

  • roslisp:

    • Only create markers for files, not for modules and systems (r11023)
    • Disable compilation of asdf files when ROS_DEBBUILD is set (r11033)
    • Changed the specialization of asdf:perform on cl-source-files again (r11034)
  • Fedora rosdep updates from Severin Lemaignan (paramiko, ncurses, epydoc)
  • mk and rosbuild have been changed to make use of a custom source packager, which now preserves symlinks when creating our distribution tarballs (r10987,r11028).

  • wxswig now uses rospack to find swiglib <<Ticket(ros 3021)>>

1.2.2 (2010-09-27)

  • rosservice: bug fix to allow 'auto' and 'now' keywords with rosservice call <<Ticket(ros 2996)>>

  • roslib:

    • bug fix to roslib.packages.list_pkgs_by_path() where the path is relative and points directly to a package.

    • add mutex to prevent concurrent access to non-thread-safe rospack library.
  • roslaunch: changed pmon loop to 10hz to perform better on embedded systems (thanks Cedric Pradalier)

  • rosmake: Suppress stack trace on --help option <<Ticket(ros 2942)>>

  • rosbag:

    • fixed bugs in rosbag info for compressed bags with a single message; --yaml option with multiple connections on a topic

    • fixed bugs in rosbag record for unnamed bags; buffer size

    • fixed bug in rosbag reindex for some pre-Boxturtle bags

  • roslisp:

    • fixed bug with invalid file names in asd files
    • fixed bug in make-roslisp-exec causing an undefined package

    • added unsubscribe function <<Ticket(ros 2898)>>

  • rosmsg: fix error message for rosmsg show with period in message type

  • roscpp: Removed excessive debug statement accidentally left in the UDP transport (<<Ticket(ros,2962)>>, r10729)

  • rosmaster: got rid of DeprecationWarning for use of BaseException.message (r11176)

  • rospy: fixed unregister() call when there is no Subscriber callback (<<Ticket(ros 3029)>>, r11261)

  • rosservice: better error message for rosservice call (<<Ticket(ros 3002)>>, r11263)

1.2.1 (2010-07-30)

  • rospy: bug fix to __get/setstate__ when using rospy.Time and Duration objects with copy.

  • rospack: auto-create parent directory for cache file <<Ticket(ros 2812)>>

  • topic_tools/mux: fix several bugs in input topic addition and deletion <<Ticket(ros 2863)>>

  • rosrecord: fix missing imports in rosrebag and add deprecation warning

1.2.0 (2010-07-28)

ROS architecture and client library updates

  • Both client libraries now only connect to /clock if /use_sim_time is set

  • Removed support for deprecated /time topic

  • Subscribers now set topic types on the Master

  • roscpp: Please see the roscpp 1.2 changelist

  • rospy:

    • Python messages are now pickle-able.
    • Major performance improvements to message serialization.
    • Master is now in a separate rosmaster package and the zenmaster process has been renamed to rosmaster

    • added ServiceProxy.wait_for_service()

  • roslisp:

    • roslisp has now been moved into the ROS stack. roslisp is a full-featured Common Lisp client library for ROS. To avoid a dependency on the sbcl compiler from the ros stack, there is a dummy package roslisp_runtime in the roslisp_support stack. Packages that use roslisp should declare a dependency on the roslisp_runtime package in their manifest. This will cause sbcl to get downloaded and built into the sbcl package. Examples of use are now in the roslisp_tutorials package in the ros_tutorials stack.

    • rosnode info now works for roslisp nodes.

    • Message objects are now immutable.
    • Debug output can be set with ros parameters, and reset during execution with a service.
    • Compilation of .lisp files now happens during build.
  • std_msgs: std_msgs/Time and std_msgs/Duration added

Graph tools

  • roslaunch:

    • New <arg> tag, if/unless attributes, and $(arg) features.

    • default cwd for nodes is now ROS_HOME. Use of ros-root option is now deprecated. This change was made to prevent issues with core files being generated by nodes.

    • added deprecated attribute for <launch> tags

  • rostopic/rosservice: improved YAML compatibility of output to support YAML-encoded storage of messages.

  • rostopic:

    • new --filter option for rostopic hz <<Ticket(ros 694)>>

    • new -n option for rostopic echo to echo a specific number of messages and quit <<Ticket(ros 2263)>>

    • internal reorganization to support rxgraph changes.
  • rosservice: --wait option for call command to wait until service is available

  • rxgraph: New GUI front end based on Jon Bohren's smach_viewer

  • rostest: added --bare options for running bare, non-node executables with a time limit.

  • rosbag:

    • New C++ and Python iterator-based API's for reading and writing bag files.

    • A major revision to the bag format including (optional) compression.

    • Appending, and simultaneous reading and writing of bag files now supported.
    • New commands: compress, decompress, and reindex.

    • rosbag info shows more detailed statistics, and uses index rather than reading entire bag.

    • Added -e and --exclude options for rosbag record to record topics using regular expressions <<Ticket(ros 2487)>>.

    • Added --loop option to rosbag play for looping playback <<Ticket(ros 2706)>>

    • Added --output-dir option to specify output directory for compress, decompress and reindex commands

  • rxbag:

    • Rendering back-end upgraded to Cairo.

    • Added support for viewing multiple bags <<Ticket(ros 2160)>>

    • Added support for playing back all messages <<Ticket(ros 2532)>>

    • Added publishing support <<Ticket(ros 2067)>>

    • Added --record option for recording bags

    • Added -s option to start playhead at a specified time <<Ticket(ros 2736)>>

    • Added support for exporting an interval of messages to a bag <<Ticket(ros 2655)>>

    • Added support for selecting regions on the timeline
    • Added keyboard control
    • Various user interface enhancements, e.g. scroll bar, status bar, state indicators, tooltips

Build tools

  • rosmake

    • A new status bar at the bottom with the current build status and build times summarized. The option --status-rate=STATUS_UPDATE_RATE can be set to 0 to suppress this in an non interactive build.

    • exposed bootstrap build errors to console
    • Fixed handling of rosdep return codes
  • rosdep

    • lucid rosdep.yaml targets added

    • improved gentoo and freebsd support
  • rosboost_cfg

    • Completely rewritten
    • Now searches for system-installed versions of boost and uses the highest one unless ROS_BOOST_VERSION is set

    • No longer assumes -lboost_<library>-mt for system installs, and will error if it can't find a specific library.

    • ROS_BOOST_ROOT is now just an extra search path, force a specific version with ROS_BOOST_VERSION

    • New commands: --version and --print_versions. The first prints the version it will use, the second prints all versions it finds.

    • New environment variable: ROS_BOOST_NO_L_OR_I for preventing -L, -Wl,-rpath, and -I flags from being output if the version from ROS_BOOST_ROOT is used

    • /opt/ros is no longer a "special" location. If you have boost installed in /opt/ros you'll need to set CPATH, LIBRARY_PATH and LD_LIBRARY_PATH like you would with any other non-default include/lib location

  • rospack: The ROS_BINDEPS_PATH environment variable has been removed

Filesystem tools

  • rosmsg: new show -b BAGFILE option to show a message as defined in a bag file. <<Ticket(ros 2666)>>

  • rosdoc:

    • added support for INCLUDE_PATH (thanks snorri) <<Ticket(ros 2748)>>

    • added exclude_patterns for Doxygen config <<Ticket(ros 2747)>>

  • roslocate: support for stacks (thanks Steven Bellens)

Support Libraries

  • rosconsole

    • Added _ONCE, _THROTTLE and _FILTER versions of the macros

    • Added ROSCONSOLE_FORMAT environment variable. Format is in the form of [${severity}] [${time}] [${thread}] [${logger}] [${file}:${line}:${function}]: ${message}

    • Refactored ros/console.h header so that it does not need to include log4cxx/logger.h. If you use log4cxx directly in your code please make sure you're including log4cxx/logger.h yourself, as that include will be removed in a future release

  • message_filters

  • rosemacs

    • roslaunch mode
    • background tracking of nodes
    • ros-rgrep and ros-find-dired for searching in ros packages

    • slime-ros for roslisp integration

    • nxml support for editing launch and manifest files

Bug fixes since last 1.1 release

  • rosmake: Aesthetic cleanup <<Ticket(ros 2870)>>

  • rxgraph: logging verbosity lowered to INFO

  • rospy: Default log level is now rospy.INFO for logging to file, and log_level param in init_node constructor now controls this log file verbosity in addition to /rosout.

Wiki: ROS/ChangeList/1.2 (last edited 2013-12-31 00:19:40 by DirkThomas)