v2.6 releases

Version 2.6.6

New patch release.

Compatibility with respect to previous 2.6.x releases (v2.6.0 to v2.6.5) : API and ABI compatible

Improvement

  • uHAL: Minor performance improvements to clients [issue #165]


Version 2.6.5

New patch release.

Compatibility with respect to previous 2.6.x releases (v2.6.0 to v2.6.4) : API and ABI compatible

Bugfix

  • uHAL: Updated dummy hardware SetEndpoint method to be a protected method (rather than private) [issue #149]

  • uHAL: Updated implementation of TCP-based clients (incl. chtcp-1.3 and chtcp-2.0) to stop them from hanging during ‘connect’ when using versions 1.69 and higher of boost [issue #153]


Version 2.6.4

New patch release.

Compatibility with respect to previous 2.6.x releases (v2.6.0 to v2.6.3) : API and ABI compatible

Improvements

  • uHAL: Minor updates to implementation of ipbuspcie-2.0 client - notably, significantly reduced rate of memory allocations, and removed requirement that the UHAL_ENABLE_IPBUS_PCIE environment variable is defined.


Version 2.6.3

New patch release. Milestone: v2.6.3 release

Compatibility with respect to previous 2.6.x releases (v2.6.0 to v2.6.2) : API and ABI compatible

Improvements

  • Updated Python libraries and scripts to support Python 3 [issue #127]

Bugfix

  • uHAL : If performing a non-RPM installation - i.e. sudo make install - Python bindings are now installed under $prefix or $exec_prefix when those variables are specified on the command line [issue #123]

  • uHAL GUI : Fixed error importing wx Publisher class, encountered with wx version 3.0 onwards [issue #125]


Version 2.6.2

New patch release. Milestone: v2.6.2 release

Compatibility with respect to previous 2.6.x releases (v2.6.0 and v2.6.1) : API and ABI compatible

Bugfix

  • uHAL tools : Updated gen_ipbus_addr_decode to set value of IPBUS_SEL_WIDTH constant in address decode packages based on the number of slaves [issue #121]


Version 2.6.1

New patch release. Milestone: v2.6.1 release

Compatibility with respect to last release (v2.6.0) : API and ABI compatible

Bugfixes

  • Updated RPM packaging infrastructure to ensure that full compiler version (e.g. gcc7_2_1) is included in “release” field for all gcc versions [issue #111]

  • uHAL : Corrected version number of uHAL gui package [issue #113]

  • uHAL : Corrected formatting of uhal::Node objects for log messages in Python [issue #108]


Version 2.6.0

New minor release, created on 29th January 2018. Milestone: v2.6.0 release

Compatibility with respect to last release (v2.5.2) : API compatible, but ABI incompatible

Backward incompatible changes

  • Name of pugixml library file changed to libpugixml.so , for compatibility with standard packaging of pugixml in RHEL repositories, and for consistency with names of BOOST libraries [issue #49]

    • You will have to update from linking against cactus_extern_pugixml to pugixml in the Makefiles of dependent projects.

    • Additionally, if you have any configuration files that specify which libraries should be loaded when your applications are started, then those files should be updated accordingly. (E.g. for XDAQ config files, lines like <xc:Module>/opt/cactus/lib/libcactus_extern_pugixml.so</xc:Module> should be removed.)

  • Changed from using pugixml header path pugixml/pugixml.hpp to simply pugixml.hpp, for compatibility with standard packaging of pugixml in RHEL repositories [issue #49]

    • N.B. You only need to take action after this change if your own source code directly #includes the pugixml headers; changes within the uHAL source code should be transparent in this respect.

  • The ControlHub configuration file has been moved from /etc/controlhub.config to /etc/controlhub/[default/]sys.config [issue #91]

    • N.B. You only need to take action after this change if you have changed the contents of the controlhub config file on your machine

Deprecations

  • uHAL : The function declarations from uhal/Utilities.hpp have been moved into three separate files: uhal/utilities/bits.hpp , uhal/utilities/files.hpp and uhal/utilities/xml.hpp. The uhal/Utilities.hpp header file still exists for backward compatibility, but simply includes these other three files. uhal/Utilities.hpp will be removed in a future release, and is deprecated from this release.

    • If you are directly including uhal/Utilities.hpp in your source code, please switch to using one of the header files defined under uhal/utilities.

Major improvements

  • Fixed build errors with newer versions of compilers (tested up to GCC 7.2 / clang 5.0.1), BOOST (tested up to v1.64.0), and Erlang (tested up to v19.3) [issues #65 and #101]

  • Implemented make targets for generic installation on non-RPM-based Linux/Unix distributions [issue #62]

    • Detailed instructions for compiling and installing from source can be found here

Minor improvements

  • uHAL : SONAME is now defined in the libraries, based on the version number of the library’s ABI (i.e. the SONAME will change when any backward-incompatible changes are made to the uHAL ABI) [issue #88]

  • uHAL : Increased detail of information stored in exceptions, and printed as log messages, following timeouts in TCP-based clients [issue #98]

  • uHAL : Added compiler version to “release” field of RPMs [issue #80]

  • uHAL : Added easily-understandable transation of IPbus protocol info/error code values to log messages [issue #76]

  • uHAL : Updated order that different transaction-level fields are considered in validation of return packets, so that transaction ID is checked before transaction type [issue #74]

  • uHAL : Re-organised tests into single executable, based on boost test framework [issue #60]

  • uHAL : Cleaned up makefiles and various areas of source code [issues #47 and #72]

Bugfixes: None.