Skip to content

Releases: robotology/yarp

YARP 2.3.70.2 (2017-12-11)

11 Dec 09:37
Compare
Choose a tag to compare

YARP 2.3.70.2 (2017-12-11) Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found
here.

Important Changes

Libraries

YARP_OS

  • Unification of code in DGramTwoWayStream for the allocation of write
    and read buffers (#899).
  • Added extra checks in the port names in Network:metaConnect(), with
    dedicated error messages.

YARP_math

  • The RandScalar methods are now using C++11 mersenne_twister_engine instead
    of a custom engine.

Carriers

  • portmonitor, rossrv, tcpros, and xmlrpc carriers can now be enabled
    when SKIP_ACE is ON.

Build System

  • Added YARP_DISABLE_OSX_BUNDLES option to disable macOS bundles.

  • Added YARP_DISABLE_FAILING_TESTS option to disable tests known for randomly
    failing due to race conditions.

Bug Fixes

  • Fixed several warnings reported by Clang static analyzer.
  • Fixed several defects reported by Coverity.

Libraries

YARP_OS

  • Fixed truncation of double in Property::fromString().
  • Fixed append to wrong string in BufferedConnectionWriter.h.
  • Fixed yarp::os::ConstString::getline for MSVC (#1357).
  • Reverted flush() added in YARP v2.3.71.1 at the end of
    AbstractCarrier::writeYarpInt().

YARP_dev

  • Fixed RPC calls when connecting to right image port (split mode on)

Tools

  • Added the fallback port in yarpserver also if yarp
    is compiled without ACE, since we support mcast without
    ACE since v2.3.70.
  • Fixed yarpdev --list for Windows.

Contributors

This is a list of people that contributed to this release (generated from the
git history using git shortlog -ens --no-merges v2.3.70.1..v2.3.70.2):

   144  Damiano Enerli <damiano.enerli@iit.it>
    60  Nicolò Genesio <nicolo.genesio@iit.it>
    39  Daniele E. Domenichelli <daniele.domenichelli@iit.it>
     9  Alberto Cardellino <alberto.cardellino@iit.it>
     3  Silvio Traversaro <silvio.traversaro@iit.it>
     1  Marco Monforte <marco.monforte@iit.it>

YARP 2.3.70.1 (2017-09-21)

21 Sep 09:51
Compare
Choose a tag to compare

YARP 2.3.70.1 (2017-09-21) Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found
here.

Bug Fixes

CMake Modules

  • Full paths were never exported by yarp_configure_external_installation
    command. This has been fixed.

Libraries

YARP_OS

  • Fixed Route::swapNames() segfault in Windows and MacOS.
  • Fixed mcast without ACE on macOS
  • Fixed memory leak for inactive carriers
  • Fixed mcast, the connection now continue working also if you disconnect
    the first mcast connection.
  • Removed the inheritance from SocketTwoWayStream in LocalCarrierStream.
  • Fixed setConnectionQos() for local carrier.
  • Added flush() at the end of AbstractCarrier::writeYarpInt() to finalize
    the write.
  • Fixed memory leak in port authentication.
  • Fixed Buffer not null terminated in impl/SplitString.
  • Added the check for spaces in the port names in Network:metaConnect().

YARP_dev

  • IPWMControl and ICurrentControl interfaces are now correctly wrapped by the the ControlBoardRemapper.

YARP_manager

  • Removed using namespace directive from headers.

Devices

rplidar2

  • Fixed build on MSVC

GUIs

yarpview

  • Fixed coordinates of clicked point when yarpview window is resized.
  • Added Unix signal handler(SIGQUIT, SIGINT, SIGTERM, SIGHUP).

Contributors

This is a list of people that contributed to this release (generated from the
git history using git shortlog -ens --no-merges v2.3.70..v2.3.70.1):

    30  Daniele E. Domenichelli <daniele.domenichelli@iit.it>
    21  Nicolò Genesio <nicolo.genesio@iit.it>
     3  Marco Randazzo <marco.randazzo@iit.it>
     2  Bartek Łukawski <bwmn.peter@gmail.com>
     1  Andrea Ruzzenenti <andrea.ruzzenenti@iit.it>
     1  Matteo Brunettini <matteo.brunettini@iit.it>
     1  Nuno Guedelha <nuno.guedelha@iit.it>
     1  Silvio Traversaro <silvio.traversaro@iit.it>
     1  Ugo Pattacini <ugo.pattacini@iit.it>

YARP 2.3.70 (2017-06-15)

22 Jun 10:57
Compare
Choose a tag to compare

YARP 2.3.70 Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found
here.

Important Changes

System Configuration

  • The YARP_CONF environment variable has been deprecated for a long time
    (since April 2013) and it is no longer used. Since there was not a proper
    warning, the warning is printed now at runtime when the variable is set. See
    ResourceFinder::getConfigHome() documentation
    for informations about paths used by YARP to detect the configuration files.
    If you still need to use the YARP_CONF for some reason, you can use the
    YARP_CONFIG_HOME environment variable instead.

Build System

  • A compiler supporting C++11 is now required.
  • CMake 3.0 or newer is now required.
  • Optional dependency on YCM now requires version 0.4.0 (devel) or later.
  • Robot Testing Framework (RTF)
    1.2.0 is now an optional dependency.

CMake Modules

  • YarpPlugin
    • The following commands, deprecated since YARP 2.3.21, were removed:
      • BEGIN_PLUGIN_LIBRARY
      • ADD_PLUGIN_NORMALIZED
      • PREPARE_PLUGIN
      • PREPARE_DEVICE
      • PREPARE_CARRIER
      • END_PLUGIN_LIBRARY
      • ADD_PLUGIN_LIBRARY_EXECUTABLE
      • YARP_ADD_PLUGIN_LIBRARY_EXECUTABLE
  • The YARP_HAS_NAME_LIB variable has been removed since YARP_name is always
    available, and is considered a private library.
  • All CMake targets now export the include directories required to build using
    that library. Using include_directories(${YARP_INCLUDE_DIRS}) should no
    longer be required.
  • YarpPlugin.cmake and YarpInstallationHelpers.cmake are now automatically
    included from YARPConfig.cmake, therefore all commands defined in these
    files are available after find_package(YARP). Including them explicitly is
    now considered deprecated. For the same reason, adding YARP_MODULE_PATH to
    the CMAKE_MODULE_PATH variable is considered deprecated. If you need some
    modules not available in CMake, please consider using YCM.

Libraries

  • A lot of refactoring was performed in order to improve c++11 usage and to
    simplify porting to other platforms without ACE

YARP_conf

  • Added the new YARP_conf header only library target. Formerly these files
    existed but they did not belong to any target.

YARP_OS

  • The i command is now enabled only in Debug and DebugFull builds.
  • The following commands have been marked as deprecated and will be removed in
    future version of YARP:
    • yarp::os::exit()
    • yarp::os::abort()
    • yarp::os::signal()
    • yarp::os::ResourceFinder::setContext(const char* contextName)

YARP_dev

  • Opening a device using a configuration of type (device (device (foo bar)))
    is now deprecated, use (device (foo bar)) instead.
  • Removed some old interfaces methods, deprecated since yarp 2.3.65.
    i.e: setPositionDirectMode(), setPositionMode(), setVelocityMode(),
    setOpenLoopMode(), setTorqueMode()`, etc.
  • Removed Interface IOpenLoopControl, deprecated since yarp 2.3.65.
  • Removed deprecated device ClientControlBoard and related tests.
  • Removed deprecated device ServerControlBoard and related tests.
  • Major changes to iPIDControl methods. Now they aren't bound anymore to
    Position Control. (#499)
    They accept a new parameter PidControlTypeEnum which defines the PID id
    on which the method will operate.
    For example
    setPid(const PidControlTypeEnum& pidtype, int j, const Pid &pid).
    Currently, pidtype can be one of the following types:
    • VOCAB_PIDTYPE_POSITION,
    • VOCAB_PIDTYPE_VELOCITY,
    • VOCAB_PIDTYPE_TORQUE,
    • VOCAB_PIDTYPE_CURRENT.
  • All pid-related methods from interfaces different from iPidControl have been
    deprecated.
    To provide backward-compatibility, old methods automatically call the new
    methods (e.g. setTorquePid(int j, const Pid &pid) calls
    setPid(VOCAB_PIDTYPE_TORQUE,int j,const PID &pid))
  • The following methods have been deprecated, use
    IControlMode2::setControlMode(int, VOCAB_CM_XXX) instead:
    • IControlMode::setPositionMode(int)
    • IControlMode::setVelocityMode(int)
    • IControlMode::setTorqueMode(int)
    • IControlMode::setImpedancePositionMode(int)
    • IControlMode::setImpedanceVelocityMode(int)
    • ...plus their IControlModeRaw counterparts

YARP_math

  • YARP_math can no longer be built using GSL. The CREATE_LIB_MATH_USING_GSL
    option was removed. Only Eigen is supported. FindGSL.cmake is no longer
    installed.

New Features

CMake Modules

  • YarpPlugin
    • Add QUIET/VERBOSE arguments and YarpPlugin_QUIET/VERBOSE variables.
  • YarpInstallationHelpers
    • A new command yarp_configure_plugins_installation has been introduced to
      simplify installation of YARP plugins when
      yarp_configure_external_installation is not invoked.

Libraries

  • New library libYARP_rtf to simplify the creation of unit tests using the
    Robot Testing Framework (RTF)
    and YARP. This is a slightly modified version of the RTF_YARP_utilities
    library in RTF 1.0.
    It can be enabled with the option YARP_COMPILE_RTF_ADDONS.

YARP_OS

  • The following methods were added to the yarp::os namespace:
    • char* yarp::os::getcwd(char *buf, size_t size)
    • int yarp::os::fork(void)
  • The following methods were added to the yarp::os::Publisher class:
    • virtual void onRead(T &datum)
    • void useCallback(TypedReaderCallback< T > &callback)
    • void useCallback()
    • void disableCallback()
  • The following methods were added to the yarp::os::Subscriber class:
    • void setStrict(bool strict = true)
  • The following overload method is added to the yarp::os::ResourceFinder
    class:
    • bool setDefaultContext(const yarp::os::ConstString& contextName)
  • Added clear() method to PID class.
  • The class yarp::os::Route was refactored:
    • The following methods were deprecated:
      • addFromName()
      • addToName()
      • addCarrierName()
      • addToContact()
    • The following methods were added:
      • setFromName()
      • setToName()
      • setCarrierName()
      • setToContact()
      • swapNames()

YARP_dev

  • Added getRgbResolution and getRgbSupportedConfigurations to the
    IRgbVisualParams interface.
  • Added the new yarp::dev::IJoypadController interface and the new
    JoypadControlClient and JoypadControlServer devices.
  • Added rpc port to dialogue with FrameTransformClient.
    The implemented commands are:
    • get_transform: print the transform from src to dst
    • list_frames: print all the available refence frames
    • list_ports: print all the opened ports for tranform broadcasting
    • publish_transform: opens a port to publish transform from src to dst
    • unpublish_transform: closes a previously opened port to publish a
      transform
    • unpublish_all: closes a all previously opened ports to publish a transform
  • iPIDControl class pulled out from ControlBoardInterfaces yarpdev headers and
    put in separated files. Reimplemented without templates.
  • Gaze control: added sync equivalent to lookAt-like methods in order to wait
    for reply.
  • Added iRobotDescription interface.
  • Added two new motion control interfaces: IPWMControl, ICurrentControl and
    related helpers for units conversions.
  • Added IMap2D interface.
  • Added yarp::dev::MapGrid2D data type.
  • Added IHapticDevice interface.

YARP_math

  • Added methods:
    • yarp::sig::Vector dcm2ypr(const yarp::sig::Matrix&)
    • yarp::sig::Matrix ypr2dcm(const yarp::sig::Vector&)
  • Added template class Vec2d<>. can be only instantiated as int or double.
  • Added operator*(quaternion, quaternion) overload for quaternion multiplication
  • Added normalize method in the quaternion class

Tools

yarpidl_rosmsg

  • All generated classes now implement the clear() method.

GUIs

yarplaserscannergui

  • Accept --help argument.

yarpview

  • Added --autosize and checkbox to force yarpview to resize whenever a frame
    of a different size is received.
  • Implemented dragvector function on yarpview. Left-click on the image and keep
    left button pressed: yarpview starts to draw a line.
    When the left button is released, the coordinates of the initial and the final
    point are sent to the 'out' yarp port.

yarpmotorgui:

  • Create an instance of RobotDescriptionClient to automatically get the names
    of robot parts.
  • New button "idle all parts".
  • New button "execute script1/2".
  • yarpmotorgui now enforces the correct "go to home" behaviour:
    • home is asked to the robot, and, as a consequence, the "Home" button will
      apply the robot home position as specified by the Calibrator, see
      this comment in QA#108
    • added possibility to specified custom positions in the configuration file.
      These positions can be executed by newly introduced "Custom positions"
      submenus. Syntax is described in the yarpmotorgui documentation.
      #1160
  • Added CurrentPid tab in yarpmotorgui.
  • Added new control mode widgets to handle current and pwm control modes.

yarpmanager

  • Handle also wait states upon shutting down the modules of an application
    (#1051).
  • Added local and environment variable parsing (#885, #1031).
  • Added --add_current_dir option.

Carriers

  • New zfp portmonitor for compressing floating ...
Read more

YARP 2.3.68.1 (2017-06-15)

15 Jun 13:24
Compare
Choose a tag to compare

YARP 2.3.68.1 Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found
here.

Important Changes

Build System

  • YARP_gsl was removed from the YARP_LIBRARIES CMake variable where it was
    erroneously added. If you are using that library you might need to add
    YARP::YARP_gsl to the list of libraries linked by your target.

  • The CREATE_SHARED_LIBRARY option is deprecated in favour of the standard
    BUILD_SHARED_LIBS.

  • Plugins are now added to FeatureSummary if available.

  • Fixed symbol visibility logic. Not exported symbols are now always hidden. The
    YARP_EXPERIMENTAL_FILTER_API option can be used to hide also symbols from
    the impl libraries (it will not build at the moment).

Devices

depthCamera

  • Spelling of the length-related parameters was fixed. You might have to fix
    your configuration files.

New Features

Build System

  • Builds from git repositories will now contain the git commit and dirty state
    in the version number (For example 2.3.68+98-20161222.4+git3942468+dirty
    (2.3.68+98)). YARP_VERSION_MAJOR, YARP_VERSION_MINOR, YARP_VERSION_PATCH
    and YARP_VERSION_TWEAK meanings hasn't changed. YARP_VERSION_STRING was
    removed since it was never used.

Devices

  • Added new laserFromDepth device.

Bug Fixes

Build System

  • Fixed YARP_CLEAN_API build with GCC 6.1 or later (that uses c++14 by
    default) by forcing -std=c++98 (#978).
  • Fixed YARP_EXPERIMENTAL_CXX11 on MSVC 12 2013.
  • The YARP_ABORT_ON_WARNING and YARP_FATAL_ERRORS options were restored.
  • Added workaround for FindCUDA bug when crosscompiling.
    See https://gitlab.kitware.com/cmake/cmake/issues/16509.

CMake Modules

  • Fixed issues in yarp_add_idl command when generating files using paths
    containing ..
  • Fixed issues in yarp_idl_to_dir command when generating files on paths
    containing white spaces.

Libraries

YARP_OS

  • Fixed typo preventing successful compilation on linux/mac with C++11 enabled.
  • yarp::os::idl::BareStyle<T> and yarp::os::idl::BareStyle<T> are no longer
    erroneously marked as YARP_OS_API.
  • Fixed memory leak in yarp::os::Contact when SKIP_ACE is enabled.
  • Fixed Windows 2000 detection in SystemInfo.
  • Fixed security issue related to the buffer size in yInfo(), yDebug(), etc.
    functions.
  • Maximum string size in yInfo(), yDebug(), etc. functions was increased to 1024
    characters.
  • Fixed commands yarp name get /port accepts and yarp name get /port offers.
  • Fixed deadlock during a device closure after calling a prepare of a closed port.
  • Fixed reply to yarp::os::Node::Helper::getBusInfo if no connections available,
    now it returns an empty list.

YARP_sig

  • Ensure that after yarp::sig::VectorOf::resize(), the constructor operator
    for the new objects is called.
  • Added missing YARP_sig_API to yarp::sig::file::soundStreamReader.

YARP_dev

  • Added warning when loading a plugin with a wrong library parameter (#975).
  • Fixed the comunication of mirroring and intrinsic parameter through sender and
    parser in IVisualParamsImpl.
  • Fixed ControlBoardRemapper not returning an error on malformed axesNames.
  • IControlLimits2Raw now inherits publicly from IControlLimitsRaw.
  • Fixed missing include of yarp/dev/api.h in IEncoders.h (#1127)
  • Fixed missing include of yarp/os/Vocab.h in IControlMode.h (#1199)
  • Fixed FrameTransformClient::waitForTransform() (#1183)
  • Fixed memory leak in ControlBoardWrapper.
  • Fixed memory leak in Rangefinder2DClient.
  • Fixed wrong ROS message in ControlBoardWrapper if ROS = only.

YARP_math

  • Fix resizing of output matrices in SVD (#1062, #1066).

Private libraries

YARP_manager

  • Fixed typo in setEnvironemnt, now setEnvironment

Tools

yarprobotinterface

  • Devices are now closed in the reverse order as they are created.

yarpidl_rosmsg

  • Fixed an out-of-bounds error if an array contained in a ros message has size
    == 0
  • Fixed segfault when publishing a ros message including a null vector

yarpdataplayer

  • Fixed memory leak.

GUIs

yarpview

  • Fixed RPATH.

yarpscope

  • Fixed RPATH.

yarpmanager

  • Removed extra ';' from enviornment variables and port prefix (#980, #982).
  • Fixed saveAs action(#755).
  • Added warning in case of creation of a new file(application) that already
    exists.
  • Fixed double tab open of the same application.
  • Added key shortcuts for the actions.
  • Removed automatically applications, modules and resources that no longer exist
    on disk when double click on them or click edit.
  • Fixed the addition to the tree of multiple applications pointing to the same xml
    file.
  • Fixed refresh button, before ignored every text entry changed int the application
    tab.
  • Added automatic refresh on the application tab open.
  • Added automatic application tab open when you load an application from disk.
  • Disabled the select all after pressing run all, stop all, refresh all and kill
    all actions.
  • Added run/stop/kill/connect/disconnect all and run/stop/kill/connect/disconnect
    selected

yarplaserscannergui

  • Fixed close button not closing the gui (#720).
  • Fixed laser orientation to have x axis pointing towards N and y axis towards
    W (as in ROS)

yarpbatterygui

  • Fixed memory leak in closing.

Carriers

  • Fixed issue in tcpros carrier causing a severe slowdown of
    yarp::os::Publisher when multiple ros clients are connected to the same
    topic.

Devices

  • Fixed rangeFinder2DClient and getLaserMeasurement() function of various
    hardware devices: laser_angle_of_view was not computed correctly.
  • Fixed bugs in AnalogWrapper: start() return value is checked (important
    for avoiding address conflict), all the ports needed are opened only once and
    not multiple times, fixed memory leaks.

fakeMotionControl

  • Fixed error in open function.
  • Better param check.

depthCamera

  • Added missing distortion model params.
  • Implemented camInfo messages for ros interoperation.
  • Fixed parsing file error.
  • Cleanup and improved documentation.
  • Fixed segmentation fault on device shutdown.
  • Fixed segmentation fault when passing an incorrect configuration.
  • Fixed resolution from config.

fakeLaser

  • Improved fakeLaser test to display x and y axis.

rangeFinder2DWrapper

  • Added internal subdevice spawn and attach.
  • Fixed parameter name in error message.

rpLidar

  • Allow to set negative max_angle & min_angle, allowing a virtual rotation of
    the sensor zero (#1019).

Bindings

  • RPATH is now correctly set for python bindings.

Contributors

This is a list of people that contributed to this release (generated from the
git history using git shortlog -ens --no-merges v2.3.68..v2.3.68.1):

   145	Daniele E. Domenichelli <daniele.domenichelli@iit.it>
    44	Nicolò Genesio <nicolo.genesio@iit.it>
    15	Andrea Ruzzenenti <andrea.ruzzenenti@iit.it>
    13	Alberto Cardellino <alberto.cardellino@iit.it>
    12	Marco Randazzo <marco.randazzo@iit.it>
     9	Francesco Romano <francesco.romano@iit.it>
     6	Matteo Brunettini <matteo.brunettini@iit.it>
     6	Silvio Traversaro <silvio.traversaro@iit.it>
     5	Lorenzo Natale <lorenzo.natale@iit.it>
     4	Bartek Łukawski <bwmn.peter@gmail.com>
     3	Aiko Dinale <aiko.dinale@iit.it>
     2	Ali Paikan <ali.paikan@iit.it>
     2	Bertrand Higy <bertrand.higy@iit.it>
     2	Juan G Victores <jcgvicto@gmail.com>
     1	Giovanni Saponaro <gsaponaro@isr.ist.utl.pt>
     1	Tobias Fischer <t.fischer@imperial.ac.uk>
     1	Ugo Pattacini <ugo.pattacini@iit.it>
     1	Vítor Galvão <info@vitorgalvao.com>
     1	Zero King <l2dy@icloud.com>

YARP 2.3.68

28 Nov 13:20
Compare
Choose a tag to compare

YARP 2.3.68 (2016-11-28) Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found
here.

Important Changes

Dependencies

  • Readline library is no longer used and was replaced with the NetBSD Editline
    library (libedit-dev on debian/ubuntu).
  • YCM 0.2.2 is now an optional dependency.

YARP_OS

  • The yarp::os::Contact class was widely refactored:
    • The add_() methods are now deprecated. The new set_() methods should be used
      instead.
    • The by*(), invalid() and empty() factory methods are now deprecated. The
      class constructors should be used instead (a few new constructors were added
      to allow this).
    • The byConfig() method is now deprecated. fromConfig() should be used
      instead.
    • The Contact::toURI() method now accepts an includeCarrier parameter (true by
      default) to simplify the generation of the URI without the carrier.
      Moreover the string returned always end with a / character.
    • ROS integration was heavily improved and it is now possible to register
      one Publisher and one Subscriber on the same Node using the same
      topic, and to use tools like roswtf and rqt.
      If you are using YARP with ROS, upgrading is strongly recommended.
    • Added ConnectionReader::setParentConnectionReader method. This method
      should be used by Carriers that reimplement modifyIncomingData and that
      return a ConnectionReader that is not the same as the one in input.
  • PortCore now uses the "new" version of the protocol for signalling to
    suppress the reply. This was expected since YARP 2.1.2, but it was never
    applied. Both versions of the protocol are accepted in input, unless
    YARP_NO_DEPRECATED is enabled, in this case YARP it is not compatible with
    previous releases since only the new version is recognized.
  • It is now possible to get and set parameters to portmonitors directly attached
    to a port.

YARP_sig

  • Important: we removed methods for interoperability with the GNU Scientific
    Library (GSL).
    The reason for this was to avoid licensing problems generated by the inclusion
    of a structure defined by GSL. Methods for interoperability have been
    implemented in a new library libYARP_gsl (see below). In details:
    • We removed yarp::sig::Matrix::getGslMatrix()
    • We removed yarp::sig::Vector::getGslVector()

YARP_dev

  • New depth camera stack, device driver interface and wrapper. The old
    interfaces and devices will be deprecated in the next release, when all the
    features will be ported to the new stack.

YARP_gsl

  • This library contains methods for interoperability with the GNU Scientific
    Library. Notice that this library is released as GPL (and not LGPL) because it
    uses a structure defined by GSL.
    • Checkout yarp::gsl::GslMatrix and yarp::gsl::GslVector

YARP_math

  • libYARP_math can be compiled with GSL or Eigen (via CMake flag
    CREATE_LIB_MATH_USING_GSL). Important: the use of GSL and this flag will be
    removed in the next release of YARP.
    • When compiled with GSL libYARP_math uses libYARP_gsl internally. A small
      performance hit could affect methods that use GSL.
    • When compiled without GSL libYARP_math uses Eigen.
  • The option to link Atlas library has been broken for a while, and therefore it
    was removed. On debian/ubuntu it is still possible to use the atlas library by
    installing the libatlas-base-dev package, and use update-alternatives to
    configure the alternatives for libblas.so, libblas.so.3, liblapack.so,
    and liblapack.so.3

CMake Modules

  • All deprecated CMake modules have been removed.
  • All GTK2 CMake modules have been removed and are no longer installed in
    ${YARP_MODULE_PATH}. They can still be found in
    YCM.
  • The FindReadline module has been removed.
  • The FindAtlas module has been removed.
  • The YarpPlugin module and the relative templates received several
    improvements and fixes:
    • yarp_prepare_plugin no longer include any directory or namespace.
      As a consecuence, it might be necessary to fix the TYPE for plugins adding
      the full namespace to the class name, and to add the current directory to
      CMake include directories.
    • yarp_prepare_carrier and yarp_prepare_device are deprecated in favour
      of yarp_prepare_plugin.
    • The new TEMPLATE and TEMPLATE_DIR accepted by yarp_prepare_plugin
      can be used to specify a file name and a directory for the template that
      will be configured and added to the plugin. If a template is not specified,
      a file yarp_plugin_<CATEGORY>.cpp.in is searched in current directory, in
      CMake module path, and in YARP cmake modules directory. If still it cannot
      be found, but the PARENT_TYPE argument, containing the name of the parent
      class for the plugin, was specified, then a default template is generated in
      current binary directory. This should simplify the creation of new types of
      plugins. Please note that static plugins will not work with the default
      template.
    • The CODE and WRAPPER arguments for the yarp_prepare_plugin command are
      deprecated, the new EXTRA_CONFIG argument should be used instead.
      Each variable in the form KEY=VALUE passed to the EXTRA_CONFIG argument
      is changed to YARPPLUG_<KEY> and used when the template is configured.
      For example EXTRA_CONFIG WRAPPER=foo generates the YARPPLUG_WRAPPER
      variable that is then replaced in the yarp_plugin_device.cpp.in.
    • The DEFAULT argument for the yarp_prepare_plugin can be used to specify
      whether the plugin should be enabled by default or not (default = OFF).
    • The ADVANCED option for the yarp_prepare_plugin can be used to specify
      that the generated CMake variable should be marked as advanced
      (default = OFF).
    • The INTERNAL option for the yarp_prepare_plugin can be used to specify
      that the generated CMake variable should be marked as internal (and
      therefore not displayed in CMake gui). This also implies DEFAULT=ON unless
      explicitly specified.
    • The DOC argument for the yarp_prepare_plugin can be used to specify a
      documentation line for the generated CMake variable.
    • The OPTION argument for the yarp_prepare_plugin can be used to rename
      the generated CMake option.
    • The DEPENDS argument for the yarp_prepare_plugin can be used to specify
      a list of dependencies that should be satisfied in order to enable the
      plugin. If these dependencies are not available, the plugin is disabled, and
      the generated CMake option is not shown on CMake.
  • All CMake modules from YCM, CMake, and private are now deprecated, and are
    installed only if YARP_NO_DEPRECATED is OFF. Projects that require these
    files should depend on YCM instead.

Tools

  • yarpserver2 and yarpserver3 have been deprecated for a long time, and
    replaced by yarpserver, therefore they have been removed. Please update your
    scripts

GUIs

  • All GTK2 GUIs have a Qt5 replacement and have been deprecated since YARP
    2.3.65, therefore they have been removed.
  • yarpmanager++ and yarpbuilder no longer exists, yarpmanager now includes
    all the builder functionality.

Devices

  • The microphone device is deprecated in favour of portaudio (#891).
  • The new depthCamera camera driver implements the IRGBD and
    FrameGrabberControl2 interfaces, and works with the devices supported by
    openni2.

Bug Fixes

YARP_OS

  • Fixed some cases of connections leaving a streaming connection pending.
  • Support dynamic plugins when YARP is built without ACE.
  • Fixed several possible race conditions in yarp::os::Thread.
  • getBusInfo ROS command was implemented.
  • getMasterUri ROS command was implemented.
  • getPid ROS command was fixed and now returns just one integer instead of a
    vector.
  • The right caller_id is returned by PortCore for publisherUpdate and
    requestTopic ROS commands.
  • The right caller_id is returned by the tcpros carrier.
  • yarp::os::Node now handles correctly multiple publishers and subscribers on
    the same topic. The limit on YARP is that only one publisher and one
    subscriber can be registered on the same node using the same topic.
  • The Carriers class was moved outside of the impl namespace (#402).
  • Fixed crash on prop get command from admin rpc port (#969).

Carriers

  • Fixed portmonitor and bayer carriers not handling envelope correctly when
    attached on the receiving side (#729, #782, #909).

Devices

  • RemoteControlBoard
    • Fixed race condition.
  • ControlBoardWrapper
    • Fixed bug in setRemoteVariable`
    • Fixed value not initialized in CheckMotionDone
  • fakeMotionControl
    • controlboardwrapper2 is now used as default wrapper instead of
      controlboard and is no longer erroneously reported as deprecated.

GUIs

  • yarpmanager
    • Fixed yarpmanager cannot display and disconnect mjpeg connections
      (#595).
  • yarplogger
    • Fixed segfault when the logger receives a malformed log message.

New Features

YARP_OS

  • Improved PortCore list [in|out] commands
    They also return now:
    • (connectionless 1) when the connection is connectionless (i.e. udp).
    • (push 0) when the connection is not push (i.e. mjpeg).
  • Improved Portcore [prop] [get] $portname command.
    It also returns now some more information about the port in this form:
    (port ((is_input [0|1]) (is_output [0|1]) (is_rpc [0|1]) (type "[type]")))
  • Improved compiler detection and added <yarp/conf/compiler.h> header
    containing macros to check if a specific feature is available.
  • Added method...
Read more

YARP 2.3.66.2

28 Nov 13:18
Compare
Choose a tag to compare

YARP 2.3.66.2 (2016-11-28) Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found
here.

Important Changes

Bug Fixes

YARP_OS

  • Fixed join() return values of threads when C++11 compilation is activated.
  • Fixed segmentation fault while closing YARP modules. (#942)

YARP_dev

  • Added missing YARP_dev_API to ControlBoard interfaces.
  • Fixed segfault in ControlBoardWrapper2 for multiJoints functions

GUIs

  • yarpdataplayer
    • Dataset with one entry can now be played. (#936)
    • Resetting sendstrict upon new dataset. (#941)
  • yarplogger
    • Open logs by drag'n'drop. (#934)

Devices

  • serial
    • Print error when the device cannot be opened.

Contributors

This is a list of people that contributed to this release (generated from the
git history using git shortlog -ens --no-merges v2.3.66.1..v2.3.66.2):

    12  Daniele E. Domenichelli <daniele.domenichelli@iit.it>
     4  Vadim Tikhanoff <vadim.tikhanoff@iit.it>
     3  Claudio Fantacci <claudio.fantacci@iit.it>
     2  Matteo Brunettini <matteo.brunettini@iit.it>
     1  Alberto Cardellino <Alberto.Cardellino@iit.it>
     1  Alberto Cardellino <alberto.cardellino@iit.it>
     1  Alexandros Paraschos <paraschos@ias.tu-darmstadt.de>
     1  Gabriele Nava <gabriele.nava@mail.polimi.it>
     1  Giovanni Saponaro <gsaponaro@isr.ist.utl.pt>
     1  Marco Randazzo <marco.randazzo@iit.it>
     1  Silvio Traversaro <silvio.traversaro@iit.it>

YARP 2.3.66.1

20 Oct 14:13
Compare
Choose a tag to compare

YARP 2.3.66.1 (2016-10-20) Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found
here.

Important Changes

YARP_dev

  • The analogServer device (implemented in yarp::dev::AnalogWrapper has
    removed the support for the deviceId parameter, that has been
    deprecated since 2014. Invalid configuration files of the form:
robotName icub
deviceId left_arm

can be updated with the valid:

name /icub/left_arm/analog:o
  • The controlboardwrapper2 device (implemented in
    yarp::dev::ControlBoardWrapper has removed the supported for the
    threadrate parameter, that has been deprecated since 2014.
    Invalid configuration files of the form threadrate 10 can be update with the
    valid form period 10.

Bug Fixes

YARP_OS

  • Fixed PlatformThread for macOS, no ACE, no c++11.
  • Fixed memory leak in SharedLibrary.
  • Fixed memory leak in Property::fromArgs.
  • Use reentrant version of get_host_addr in NameConfig and
    SocketTwoWayStream (fixes a few possible race conditions).
  • Fixed memory leak in NameConfig::getHostName with SKIP_ACE enabled.
  • Fixed "Conditional jump or move depends on uninitialised value" issues
    reported by valgrind --memcheck in SocketTwoWayStream with SKIP_ACE
    enabled.
  • Added implementation of SystemInfo for macOS.
  • Fixed bug in yarprun currently occuring only on macOS, but potentially on
    other platforms (#633)
  • yarp plugin command now works with SKIP_ACE enabled.
  • Fixed UDP and MCAST on macOS (#637)
  • Fixed SIGPIPE when closing input port before output ports.

YARP_DEV

  • Fixed yarp::dev::BatteryClient::getBatteryTemperature().
  • Fixed memory leak in ImplementTorqueControl.
  • Export some important classes that were erroneously not exported in the ABI.
  • Fixed memory leak in PolyDriver.
  • ControlBoardWrapper: Added checks for testing if joint number is out of bound.

Modules

  • Rangefinder2DWrapper: angle_increment is now obtained from the hardware
    device.
  • laserHokuyo: added parameters max_angle and min_angle.
  • imuBosch_BNO055: fixed use of char (a signed type) for the byte buffer that
    was corrupting positive measures when converting from 2 bytes to a single 16
    bit value.
  • fakeMotionControl: Fix memory leak.
  • portaudio: fix bug in number of samples recorded, changed default values to
    have the device more responsive.

Tools

  • yarpdatadumperAppGenerator.py is now installed as
    yarpdatadumperAppGenerator on non Windows platforms.

GUIs

  • yarpview:
    • Fixed .app bundle on macOS.
    • QT_DEVICE_PIXEL_RATIO is now set to "auto" to support 4k displays.
  • yarpscope:
    • Fixed .app bundle on macOS.
    • Fixed help for --min and --max arguments.
    • Fixed reading minval and maxval from xml.
  • yarpmotorgui:
    • Max number of joints was fixed to 16. Now memory is dynamically allocated.
    • Fixed issue preventing sequence tab to acquire encoder positions on double
      click, if the control mode of the selected joint is not POSITION.
    • Fixed bug preventing correct copy-and-paste action
    • Fixed issue preventing a GO action from being executed if timing is less
      than zero.
    • Allow copying single lines to clipboard from sequence tab.
    • QT_DEVICE_PIXEL_RATIO is now set to "auto" to support 4k displays.
    • Added box to display openloop output.
  • yarpdataplayer
    • QT_DEVICE_PIXEL_RATIO is now set to "auto" to support 4k displays.
    • Fixed error when opening readonly files.
    • Fixed variable sample rate data playing too fast.
  • yarplogger:
    • The date is now taken into account.
    • Copying to clipboard preserves new lines.
    • New icon-set is displayed in the "filter" section when a log is disabled.
    • Double-clicking on the table to make each line of the logger to adjusts
      the row height to display all of its contents. Added context menu entry.
    • New lines at the end of log messages are now removed.
    • The log is now displayed using a fixed size font.

IDLs

  • The script executed by RosTypeSearch::fetchFromRos now supports the creation
    of .msg files in a non-existing directory.

Bindings

  • Properly define TypedReaderCallbackSound (Fixes TypedReaderCallbackImageMono
    redefinition).

Build System

  • YarpPlugin.cmake no longer redefines the FIND_PACKAGE CMake command.

Contributors

This is a list of people that contributed to this release (generated from the
git history using git shortlog -ens --no-merges v2.3.66..v2.3.66.1):

   153  Daniele E. Domenichelli <daniele.domenichelli@iit.it>
    15  Francesco Romano <francesco.romano@iit.it>
    11  Marco Randazzo <marco.randazzo@iit.it>
     9  Silvio Traversaro <silvio.traversaro@iit.it>
     9  Tobias Fischer <t.fischer@imperial.ac.uk>
     6  Alexandros Paraschos <paraschos@ias.tu-darmstadt.de>
     6  Matteo Brunettini <matteo.brunettini@iit.it>
     5  Alberto Cardellino <alberto.cardellino@iit.it>
     2  Andrea Ruzzenenti <andrea.ruzzenenti@iit.it>
     2  Daniele E. Domenichelli <ddomenichelli@drdanz.it>
     2  Giovanni Saponaro <gsaponaro@isr.ist.utl.pt>
     2  Lorenzo Natale <lorenzo.natale@iit.it>
     2  Ugo Pattacini <ugo.pattacini@iit.it>
     2  Vadim Tikhanoff <vadim.tikhanoff@iit.it>
     1  Claudia Latella <claudia.latella.86@gmail.com>
     1  Claudio Fantacci <claudio.fantacci@iit.it>
     1  Plinio Moreno <plinio@isr.tecnico.ulisboa.pt>
     1  Valentina Gaggero <valentina.gaggero@iit.it>

YARP 2.3.66

08 Jun 07:02
Compare
Choose a tag to compare

YARP 2.3.66 (2016-06-01) Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found
here.

Important Changes

YARP_dev

  • The yarp::dev::IDepthSensor, yarp::dev::IRGBDSensor interfaces and the
    RGBDSensorClient and RGBDSensorWrapper devices, that were erroneously
    introduced were removed.

Bug Fixes

CMake Modules

  • StandardFindModule: Fix INTERFACE_COMPILE_DEFINITIONS and
    INTERFACE_COMPILE_OPTIONS properties.

YARP_dev

  • Add missing YARP_dev_API export symbol to StubImplPositionDirectRaw
  • Fixed errors on ROS topic message, in particular:
    • measurement unit for linear joints.
    • timeStamps for joint message. This fixes issue on ROS TF while using
      simulator.
  • RemoteFrameGrabber: moved template explicit instantiation into .cpp to avoid
    duplicating symbols.

Modules

  • Critical bugfix for laserHokuyo

GUIs

  • yarpmanager++: fixed crashes on deleting connection after changing prefix (#761)
  • yarpmanager++: fixed connections do not update when prefix is changed (#751)
  • yarpmanager++: fixed icon on Mac OSX (#758)

Contributors

This is a list of people that contributed to this release (generated from the
git history using git shortlog -ens --no-merges v2.3.65..v2.3.66):

    18  Daniele E. Domenichelli <daniele.domenichelli@iit.it>
     3  Alberto Cardellino <alberto.cardellino@iit.it>
     3  Silvio Traversaro <silvio.traversaro@iit.it>
     2  Matteo Brunettini <matteo.brunettini@iit.it>
     1  Claudio Fantacci <claudio.fantacci@iit.it>
     1  Davide Perrone <dperrone@aitek.it>
     1  Lorenzo Natale <lorenzo.natale@iit.it>
     1  Marco Randazzo <marco.randazzo@iit.it>
     1  Ugo Pattacini <ugo.pattacini@iit.it>

YARP 2.3.65

13 May 09:36
Compare
Choose a tag to compare

YARP 2.3.65 (2016-05-13) Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found
here

Important Changes

  • YARP is now automatically installed with the RPATH enabled.
    This can be disabled by setting the CMAKE_SKIP_RPATH or
    CMAKE_SKIP_INSTALL_RPATH variables.
  • The portmonitor can now be built without LUA and uses YARP plugins system
    of having to locate the shared libraries manually.
  • The yarp::dev::IDepthSensor, yarp::dev::IRGBDSensor interfaces and the
    RGBDSensorClient and RGBDSensorWrapper devices were erroneously introduced
    as a "stable", but they are still under development and therefore are not to
    be used, and will be removed in the next tweak release (v2.3.65.1).
    They will be probably re-introduced in the next stable release series
    (v2.3.68).

Bug Fixes

YARP_OS

  • Fixed memory leaks when building with c++11.
  • Fixed yarp::os::Thread::getKey() method for c++11.
  • Fixed race condition in yarp::os::Thread::getKey().

New Features

YARP_OS

  • ResourceFinder::configure(argc,argv,bool) accepts a third optional parameter
    to keep/skip the first command line argument

yarprobotinterface

The robotInterface tool in
robotology/icub-main was imported
in YARP with a few non compatible changes:

  • robotInterface was renamed yarprobotinterface to follow the convention
    with yarp executables
  • The RPC port opened is now //yarprobotinterface
  • The default .ini file name is now yarprobotinterface.ini
  • The DTD line for XML files is now
<!DOCTYPE [...] PUBLIC "-//YARP//DTD yarprobotinterface 1.0//EN" "http://www.yarp.it/DTD/yarprobotinterfaceV1.0.dtd">

yarpmanager++

A new yarpmanager++ tool which merges the functionalities of the yarpmanager
and yarpbuilder was added.

Deprecated Features

YARP_OS

  • yarp::os::Module is now deprecated in favour of yarp::os::RFModule.
  • YARP_ASSERT is now deprecated in favour of yAssert.

YARP_dev

  • The following YARP methods have been deprecated:
    • iPositionControl::setPositionMode()
    • iVelocityControl::setVelocityMode()
    • iTorqueControl::setTorqueMode()
    • iOpenLoopControl::setOpenLoopMode()

Devices

  • controlboard and clientcontrolboard devices are now deprecated in favour
    of controlboardwrapper2 and remote_controlboard.

Tools

  • yarpserver2 and yarpserver3 are now considered deprecated and will be
    removed in the next release.

GUIs

  • All guis based on GTK2 are now considered deprecated and will be removed in
    the next release.

Contributors

This is a list of people that contributed to this release (generated from the
git history using git shortlog -ens --no-merges v2.3.64..v2.3.65):

   480  Daniele E. Domenichelli <daniele.domenichelli@iit.it>
    92  Alberto Cardellino <alberto.cardellino@iit.it>
    81  Marco Randazzo <marco.randazzo@iit.it>
    57  Ali Paikan <ali.paikan@iit.it>
    48  Ugo Pattacini <ugo.pattacini@iit.it>
    44  Lorenzo Natale <lorenzo.natale@iit.it>
    24  Francesco Romano <francesco.romano@iit.it>
    24  Silvio Traversaro <silvio.traversaro@iit.it>
    17  Matteo Brunettini <matteo.brunettini@iit.it>
    15  Vadim Tikhanoff <vadim.tikhanoff@iit.it>
     5  Giulia Vezzani <giulia.vezzani@iit.it>
     4  Alessandro Roncone <alessandro.roncone@iit.it>
     4  Elena Ceseracciu <elena.ceseracciu@iit.it>
     4  Konstantinos Theofilis <kostas@ams.eng.osaka-u.ac.jp>
     3  Davide Perrone <dperrone@aitek.it>
     3  YARP Developers <yarp0-devel@lists.sourceforge.net>
     2  Claudio Fantacci <claudio.fantacci@iit.it>
     2  Davide Pollarolo <davide.pollarolo@iit.it>
     2  Francesco Nori <francesco.nori@iit.it>
     1  Alessio Rocchi <alessio.rocchi@iit.it>
     1  Davide Tome <davide.tome@iit.it>
     1  Francesca Stramandinoli <francesca.stramandinoli@iit.it>
     1  Gabriele Nava <gabriele.nava@mail.polimi.it>
     1  Valentina Gaggero <valentina.gaggero@iit.it>

YARP 2.3.64

18 Jun 07:05
Compare
Choose a tag to compare

YARP 2.3.64 (2015-06-15)

Contributors

This is a list of people that contributed to this release (generated from the
git history using git shortlog -ens --no-merges v2.3.61...v2.3.62):

   417  Daniele E. Domenichelli <daniele.domenichelli@iit.it>
   235  Paul Fitzpatrick <paulfitz@alum.mit.edu>
   192  Marco Randazzo <marco.randazzo@iit.it>
   122  Ugo Pattacini <ugo.pattacini@iit.it>
   112  Alberto Cardellino <alberto.cardellino@iit.it>
    55  Davide Perrone <dperrone@aitek.it>
    52  Alessandro Roncone <alessandro.roncone@iit.it>
    50  Lorenzo Natale <lorenzo.natale@iit.it>
    47  Ali Paikan <ali.paikan@iit.it>
    34  Vadim Tikhanoff <vadim.tikhanoff@iit.it>
    14  Konstantinos Theofilis <kostas@ams.eng.osaka-u.ac.jp>
    13  Francesco Romano <francesco.romano@iit.it>
    13  Silvio Traversaro <silvio.traversaro@iit.it>
     8  Alessandro Scalzo <alessandro.scalzo@iit.it>
     7  Elena Ceseracciu <elena.ceseracciu@iit.it>
     7  Matteo Brunettini <matteo.brunettini@iit.it>
     3  Francesco Nori <francesco.nori@iit.it>
     3  YARP Developers <yarp0-devel@lists.sourceforge.net>
     2  Giorgio Metta <giorgio.metta@iit.it>
     2  Holger Friedrich <holgerf@vsi.cs.uni-frankfurt.de>
     1  Carlo Ciliberto <carlo.ciliberto@iit.it>
     1  Giovanni Saponaro <gsaponaro@isr.ist.utl.pt>
     1  Juan G. Victores <jcgvicto@gmail.com>
     1  Matej Hoffmann <matej.hoffmann@iit.it>
     1  Pedro Vicente <pedrovicente07@gmail.com>