Releases: FairRootGroup/FairMQ
Releases · FairRootGroup/FairMQ
v1.3.7
[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
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
v1.2.0
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 forFairMQDevice::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>&)
, useFairMQMessage::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 toPATH
for binaries - [change] Prefix all FairMQ executables with
fairmq-
, e.g.:splitter
->fairmq-splitter
v1.1.7
This is a test