[Bug 1817595] Re: [SRU] urdfdom-headers and urdfdom should not use locale dependent parsing for floating point numbers

Mathew Hodson mathew.hodson at gmail.com
Wed Aug 14 01:57:13 UTC 2019


** Changed in: urdfdom-headers
       Status: New => Unknown

** Changed in: urdfdom-headers
 Remote watch: github.com/ros/urdfdom_headers/issues #45 => github.com/ros/urdfdom_headers/issues #41

** Bug watch removed: github.com/ros/urdfdom_headers/issues #45
   https://github.com/ros/urdfdom_headers/issues/45

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1817595

Title:
  [SRU] urdfdom-headers and urdfdom should not use locale dependent
  parsing for floating point numbers

Status in Urdfdom Headers:
  Unknown
Status in urdfdom package in Ubuntu:
  Confirmed
Status in urdfdom-headers package in Ubuntu:
  Confirmed

Bug description:
  In the effort to reduce boost dependency in urdfdom and urdfdom-
  headers [2] regressions wrt locale handling were introduced. Parsing
  of floating point values in URDF (a XML language) was now locale
  dependent, ie on European systems were the decimal separator is ","
  instead of "." parsing would now fail due to std::stod expecting
  "1,23" instead of "1.23" (no, we do not localize xml files, see also
  [3] for a more technical summary). The regressed versions were
  released as 1.0. Shortly after the release (some of) the regressions
  were detected [3] and fixes merged [3][4]. Unfortunately those fixed
  merges were not released until a long time later, too late for Ubuntu
  18.04 by far and potentially even for 20.04. More regressions were
  noticed and fixed later on (disclaimer: by me) [5].

  urdfdom is used mostly if not exclusively in the ROS community
  (including gazebo) which is a somewhat slow adopter of newer Ubuntu
  (and ros) releases but more and more people are now seeing these
  regressions in various places. To save more peoples time I propose to
  do a patch version update and pull urdfdom_headers version 1.0.3 as
  well as urdfdom version 1.0.3 from debian sid. I argue against
  applying a patch because the diff between 1.0.0 and 1.0.3 is almost
  identical to a set of patches fixing the regressions. Updating to the
  upstream patch release will therefore improve tracing of the ubuntu
  downstream version to the upstream versioning.

  Both urdfdom_headers and urdfdom now have an extensive set of unit
  test which in the case of urdfdom are also run in a European (ie
  Dutch) locale [6]. Together with the small and homogeneous user base,
  application mostly in research and the fact that most of the library
  is (for unknown reasons) almost header-only make me estimate that
  scope, potential and impact of regressions introduced by this upgrade
  would be extremely low.

  1: https://github.com/ros/urdfdom/commit/3dc7ee812827cc69ffa457ef01fe7b9623096aed
  2: https://github.com/ros/urdfdom_headers/commit/9d2b421f3fcbc2a32af40b99ebd9c2cb2d088fb9
  3: https://github.com/ros/urdfdom_headers/pull/42
  4: https://github.com/ros/urdfdom/pull/105
  5: https://github.com/ros/urdfdom_headers/pull/47
  6: https://github.com/ros/urdfdom/pull/115

  See also the following upstream bug reports:
  https://github.com/ros/urdfdom_headers/issues/45
  https://github.com/ros/urdfdom/issues/119

  and a few downstream bug reports to the ubuntu package:
  https://github.com/ros-planning/moveit/issues/1333
  https://github.com/ros/urdf/issues/21
  https://github.com/ros-visualization/rviz/issues/1249
  https://github.com/ros-visualization/rviz/issues/1151
  https://github.com/ros-planning/moveit/issues/1050
  https://github.com/ros-visualization/rviz/issues/1298

To manage notifications about this bug go to:
https://bugs.launchpad.net/urdfdom-headers/+bug/1817595/+subscriptions



More information about the Ubuntu-sponsors mailing list