Skip to content

Releases: FairRootGroup/FairMQ

v1.3.7

29 Nov 12:17
@rbx rbx
Compare
Choose a tag to compare

[new features]

  • 5e4876c Allow plugins to create channels
  • 310b964 Adopt FairMQMessage backed memory resource collection from AliceO2
  • 3a1b769 Support feeding the child process data on stdin
  • 4123ebc Add interruptable FairMQDevice::WaitFor(duration) method
  • e95096e Add RateLimiter class to tools
  • 4aae1ad Allow DDS command UI to target parts of the topology

[enhancements]

  • 653e82c Avoid copy (where possible) when switching transports
  • 25fcf13 Move Bind/Connect/Attach to FairMQChannel
  • 3ca0d72 Add safety checks for process tools
  • 44acd49 Implement nanomsg linger in our transport
  • dfa1b68 Make factory classes final (optimization potential)
  • e090967 Build shmem names out of session id + user id (avoid conflicts)
  • 1fdf510 Pick correct build type in CI
  • 45354f2 Use future instead of thread for device rateLogger (exception safety)
  • cf9a294 Introduce and export hotfix version component
  • 94297f9 Tie builtin plugin version to the project version
  • 88f8975 Add codacy.com integration
  • 60f27b9 Support BUILD_SHARED_LIBS flag
  • 1bb558a Refactor initialization - config always available, proper reinit on Init() re-entry
  • c8bd19b Add experimental FAST_BUILD option
  • fc0adba Support unity build
  • a53ef79 Run state handlers on the main thread (breaking change for control).
  • f05118f Make ";" the separateor in multi-point channel config
  • ffbe90b Update to DDS 2.2 API

[bug fixes]

  • 227a302 Avoid boost::uuids::entropy_error on some systems
  • 3561255 Add missing channel update handlers (snd/rcvKernelSize)
  • 9f32545 Make sure we reset terminal config also on exception
  • cb199e7 Fix throw after quit signal case
  • 1aab354 Resolve hanging process in case of uncaught exception
  • f6c1f5d Fix theoretical race in signal handler
  • adfa0e2 Move shmmonitor out of lib to own executable (Fix ODR violation)
  • 2c6b2e7 Fix race condition in the control plugin
  • b814e40 Fix multipart transfer timeout
  • ee8afd7 Fix race in plugin manager/services

[cleanup and deprecations]

  • 0cfa919 Deprecate Send-/ReceiveAsync, use timeout variant instead
  • ce4062f Remove GetSocket interface that exposes transport details
  • 00800f1 Remove support for nanomsg <= 0.6
  • cfb7271 Remove set/get timeout from general socket interface
  • 9851504 Remove shmem prototype code - unused
  • a53ef79 Run state handlers on the main thread (breaking change for control).
  • 90009b1 Remove previously deprecated Copy method (since 1yr)

[tests]

  • e403d18 Add codecov reports to PRs
  • a9df367 Add test for FairMQMessage::Rebuild
  • bd899a2 Add test for channel validation
  • 0b199e7 Add test for interface IP detection tools
  • 919193a Extend transfer timeout test coverage
  • d4a4ea1 Add example/test for built-in devices
  • ffab4ac Add options tests and (re-)/enable more nanomsg tests
  • 1d45095 Add session id to example tests
  • 78acb95 Test more cases with interactive controller
  • e39316c Test exceptions thrown in user code
  • c4145e9 Add test for FairMQDevice::WaitFor()
  • 5397cef Use same runner.cxx/.h for all tests
  • b814e40 Enable multipart transfer timeout tests
  • 7d5e76d Add more tests for custom main()
  • 24dff2f Enable FAST_BUILD for alfa-ci
  • 3f96181 Define nn tests only when nn transport is built

[dependencies]

Many more small fixes and improvements.

v1.2.3

22 May 15:25
v1.2.3
5ab2194
Compare
Choose a tag to compare

Changelog:

  • [bugfix] Remove the alias target
  • [enhancement] Improve compilation speed
  • [new feature] Control plugin: add ability to switch log levels interactively
  • [enhancement] provide FAIRMQ_PATH to test suites
  • [enhancement] further shorten shm names
  • [test coverage] Test all examples with all possible transports
  • [enhancement] Use enum transport types instead of strings in Channel/Device
  • [enhancement] Fix namespaces in Transports.h and add conversion map
  • [enhancement] Used cached default transport in FairMQDevice::Transport()

v1.2.1

04 May 20:13
v1.2.1
9906475
Compare
Choose a tag to compare

Changelog:

  • [bugfix] error: no matching function for call to 'find_if' with Boost 1.66+ (#29)

v1.2.0

04 May 12:48
Compare
Choose a tag to compare

First stable release after separating FairMQ from the FairRoot repo.

Changelog (since FairRoot 17.10):

  • [bugfix] fair::mq::tools::getDefaultRouteNetworkInterface() does not break any more with multiple default routes on Linux
  • [enhancement] FindDDS.cmake now generates imported targets
  • [bugfix] Install DDS plugin and fairmq-dds-command-ui
  • [new feature] Add dump-config, heartbeat and state subscription commands to DDS plugin
  • [new feature] With --rate one can set now a rate limit in Hz for FairMQDevice::ConditionalRun()
  • [new feature] Add fair::mq::PluginServices::Un/SubscribeToPropertyChangeAsString()
  • [new feature] Add callbacks with hint argument to FairMQUnmanagedRegion to transfer ownership of the message buffer back to the user
  • [new feature] With --session it is supported now to run multiple topologies in parallel on the same machine
  • [test coverage] Run examples/Region in the standard test suite
  • [new feature] Add fairmq-uuid-gen utility to easily generate session ids
  • [change] Remove deprecated header <tools/FairMQTools.h>
  • [bugfix] Add missing explicit reference to libboost_signals
  • [new feature] Add FairMQMessage::SetUsedSize()
  • [change] Remove FairMQMessage::Get/SetMessage()
  • [change] Deprecated FairMQMessage::Copy(const std::unique_ptr<FairMQMessage>&), use FairMQMessage::Copy(const FairMQMessage&) instead
  • [enhancement] Reimplement and move FairMQLogger to external repo
  • [bugfix] Convert log severities to lower case to avoid name clashes with preprocessor defines
  • [change] Remove pstreams dependency and replace it with Boost.Process
  • [bugfix] Fix DDS plugin incomplete shutdown on DDS server termination
  • [new feature] DDS plugin: handle n to m on single channel name case
  • [enhancement] SHM: coalesce multipart messages. Transmit meta info of an shm multipart message in a single zmq message
  • [new feature] Add fair::mq::PluginServices::CountProperty()
  • [enhancement] Update fairmq-dds-command-ui to support DDS 2.0
  • [experimental] Add a first implementation of the new OFI transport. This is mainly useful for internal testing.
  • [enhancement] Replace cmd socket with transport specific unblock mechanism
  • [enhancement] Modernize CMake files for examples
  • [enhancement] Devices search FAIRMQ_PATH in addition to PATH for binaries
  • [change] Prefix all FairMQ executables with fairmq-, e.g.: splitter -> fairmq-splitter

v1.1.7

27 Apr 07:42
1a0140b
Compare
Choose a tag to compare
v1.1.7 Pre-release
Pre-release

This is a test