0
$\begingroup$

Rosanswers logo

I'm wondering how to correctly set/get date/time parameters in the parameter server or if there is possibly a bug. On a freshly started roscore I do:

rosparam set /date1 2011-07-11T18:04:00

Now I get the parameter as an XmlRpcValue and have the following code (where val is the XmlRpcValue):

case XmlRpc::XmlRpcValue::TypeDateTime:
    {
       struct tm time = (struct tm)val;
       printf("YEAR is %d\n", time.tm_year);

The printout displays 2011. Accoring to the specs I have read, this should be the years since 1900, so I expected 111. Did I make a mistake when setting the date/time or is this a bug?

Also (maybe related), when I do:

rosparam get /date1

I get:

Traceback (most recent call last):
  File "/opt/ros/diamondback/ros/bin/rosparam", line 40, in 
    rosparam.yamlmain()
  File "/opt/ros/diamondback/stacks/ros_comm/tools/rosparam/src/rosparam.py", line 633, in yamlmain
    _rosparam_cmd_get_dump(command, argv)
  File "/opt/ros/diamondback/stacks/ros_comm/tools/rosparam/src/rosparam.py", line 454, in _rosparam_cmd_get_dump
    _rosparam_cmd_get_param(script_resolve_name(NAME, arg), pretty=options.pretty, verbose=options.verbose)
  File "/opt/ros/diamondback/stacks/ros_comm/tools/rosparam/src/rosparam.py", line 283, in _rosparam_cmd_get_param
    dump = yaml.dump(val)
  File "/usr/lib/python2.6/dist-packages/yaml/__init__.py", line 175, in dump
    return dump_all([data], stream, Dumper=Dumper, **kwds)
  File "/usr/lib/python2.6/dist-packages/yaml/__init__.py", line 165, in dump_all
    dumper.represent(data)
  File "/usr/lib/python2.6/dist-packages/yaml/representer.py", line 33, in represent
    node = self.represent_data(data)
  File "/usr/lib/python2.6/dist-packages/yaml/representer.py", line 46, in represent_data
    if self.ignore_aliases(data):
  File "/usr/lib/python2.6/dist-packages/yaml/representer.py", line 147, in ignore_aliases
    if data in [None, ()]:
  File "/usr/lib/python2.6/xmlrpclib.py", line 419, in __eq__
    s, o = self.make_comparable(other)
  File "/usr/lib/python2.6/xmlrpclib.py", line 399, in make_comparable
    (self.__class__.__name__, otype))
TypeError: Can't compare DateTime and NoneType

Lives now as a ticket.


Originally posted by dornhege on ROS Answers with karma: 31395 on 2011-07-11

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

The ticket appears to be the resolution here, so marking this as the answer:

https://code.ros.org/trac/ros/ticket/3588


Originally posted by kwc with karma: 12244 on 2011-09-02

This answer was ACCEPTED on the original site

Post score: 0

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.