A (partial) list of bug fixed and issues resolved in this release can be found here.
YARP1 support.yarp::sig::image::getIplImage() now can return a null pointer (instead of terminating with an assert) for not valid Ipl image formatsyarp::sig::image::setPixelCode() now set the pixelSize accordingly (which should not be set). Since yarp::sig::image::setPixelSize() also sets an arbitrary pixel code equal to negative itself (setPixelSize(3) will set the pixelCode to -3), it should be use only for image with custom formats not covered by a yarp pixelCode.yarp::os::Network constructor or in the Network::init() function. This will take precedence over the environment variable. yarp::os::SystemRateThread class created as RateThread clone but runs using system clock only, independently from other settings. Any call to yarp::os::Time::now() or delay() before the object yarp::os::Network is initialized will abort the program in order to avoid undefined behaviour of uninitialized Time objectContactable::open(void) was deprecated. Use open("...") instead.yarp::os::RateThread are now protected instead of public:virtual bool threadInit();virtual void threadRelease();virtual void run() = 0;virtual void beforeStart();virtual void afterStart(bool success);yarp::os::PortReaderBufferBase are now deprecated:void setAllowReuse(bool flag = true)void release(yarp::os::PortReader* completed)yarp::os::Bottle::operator==() and yarp::os::Bottle::operator!=() are now const.yarprun --server.yarpserver.yarp::os::Network::runNameServer() was removed.yarp/os/Os.h).ConstString::assign overloads.yarp::os::carrier::createFace(), that returns the needed face of the carrier. This method is used in carriers::listen() and carriers::connect() in order to open new connection using the correct face.YARP_WRAP_STL_STRING option value is now by default OFF on non-MSVC platforms. This means that yarp::os::ConstString is now by default a typedef to std::string on these platforms.yarp::os::Face implementation this becomes the handler of incoming connections. In any case the carrier becomes the default for future connections.IVisualServoing.h.yarp::dev::CanBuffer now supports a const version of operator[].yarp::dev::IVirtualAnalogSensor renamed in order to avoid conflicts with similar methods of yarp::dev::IAnalogSensor.Server class for using yarp server inside an applications. Both the yarp server application and the yarpserver rtf fixture use it.ROS::enable_ros_subscriber and ROS::enable_ros_publisher.yarpviz gui imported from https://github.com/robotology/yarpviziCubCluster GUI from iCub (https://github.com/robotology/icub-main/tree/master/app/iCubCluster). It is available only on Unix.yarp name list and yarp clean actions after importing profiling capabilities of yarpviz.LocalBroker to YarpBroker and viceversa.yarpserver: created a RTF Fixture manager for running yarpserver as a fixture.yarp::dev::IRemoteVariables and yarp::dev::IAxisInfo interfaces, for:PREPARE_CLASS_FILES option has been removed too). Two .jar files are instead generated and installed:<install_dir>/share/yarp/java/yarp.jar: contains all the YARP Java classes.<install_dir>/share/yarp/java/yarp_matlab_java.jar: contains Java utilities for MATLAB. The JNI libraries to be loaded by the JAVA application is now called libyarp_java.jnilib and it is installed in <install_dir>/lib/jni/libyarp_java.jnilib.package of JAVA MATLAB Utilities: from global package to yarp.matlabunprepare method to Publisher. See BufferedPort for documentation on how to use prepare and unprepare (#1425).Stamp::read() and Stamp::write() for textMode.yarp::sig::FlexImage:::read().yarp run. Be aware that after these changes yarpmanager will not detect machines with yarp 2.3.70 and earlier.yarpdataplayer going to idle because of AppNap on macOS (#1153)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.72):