Release Notes¶
These notes are intended to serve as a guide to the user-visible features in a particular art suite release. As such, only versions included in art suite releases, or those with substantive changes, are included.
messagefacility 2.07.02 (2020/08/28)¶
- art suites: 3.06.03
- critic suites: 2.04.03, 2.05.00, 2.05.01, 2.05.02
- gallery suites: 1.15.02, 1.16.00, 1.16.01, 1.16.02
messagefacility 2.07.01 (2020/07/24)¶
messagefacility 2.07.00 (2020/07/07)¶
This version only supports SL7. The e20
qualifier (GCC 9.3 with C++17 enabled) has been added.
messagefacility 2.06.02 (2020/11/13)¶
messagefacility 2.06.01 (2020/03/02)¶
- art suites: 3.05.00, 3.05.01
- critic suites: 2.03.00, 2.03.01, 2.03.02
- gallery suites: 1.14.02, 1.14.03
messagefacility 2.06.00 (2019/11/14)¶
This version only supports qualifiers e19
and c7
. In addition, Python 3 is enabled by default. To use Python 2, the 'py2'
qualifier must be specified when setting up the messagefacility
UPS product.
messagefacility 2.05.00 (2019/06/21)¶
- art suites: 3.03.00, 3.03.01
- critic suites: 2.01.00, 2.01.02, 2.01.03, 2.01.04
- gallery suites: 1.13.00, 1.13.01
messagefacility 2.04.03 (2019/03/07)¶
- art suites: 3.02.03, 3.02.04, 3.02.05, 3.02.06
- critic suites: 2.00.03, 2.00.04, 2.00.05, 2.00.06, 2.00.07, 2.00.09, 2.00.10
- gallery suites: 1.12.03, 1.12.04, 1.12.06, 1.12.07
messagefacility 2.04.02 (2019/03/05)¶
messagefacility 2.04.01 (2019/02/07)¶
messagefacility 2.04.00 (2019/01/30)¶
messagefacility 2.03.01, 2019/01/29 (art suite 3.01.01, art suite 3.01.02)¶
messagefacility 2.03.00, 2018/09/25 (art suite 3.01.00)¶
An incompatibility in preprocessor macros was encountered between messagefacility and GENIE. For that reason, the following breaking changes have been introduced:
From | To | |
LOG_ABSOLUTE |
MF_LOG_ABSOLUTE |
|
LOG_DEBUG |
MF_LOG_DEBUG |
|
LOG_ERROR |
MF_LOG_ERROR |
|
LOG_INFO |
MF_LOG_INFO |
|
LOG_PRINT |
MF_LOG_PRINT |
|
LOG_PROBLEM |
MF_LOG_PROBLEM |
|
LOG_SYSTEM |
MF_LOG_SYSTEM |
|
LOG_TRACE |
MF_LOG_TRACE |
|
LOG_VERBATIM |
MF_LOG_VERBATIM |
|
LOG_WARNING |
MF_LOG_WARNING |
|
ML_DEBUG |
MF_DEBUG |
Used for disabling debug statements at compile time |
ML_NDEBUG |
MF_NDEBUG |
A migration script has been provided that makes these changes automatically. After setting up the messagefacility
UPS product, you may call the script by:
${MESSAGEFACILITY_FQ_DIR}/bin/fix-mf-macros <top-level-dir>
In addition, this is the first release to support only C++17.
messagefacility 2.02.03, 2018/06/05 (art suite 3.00.00)¶
- The
cetskelgen
ELdestination
plugin generator now uses theMAKE_PLUGIN_(START|END)
macros provided by cetlib.
messagefacility 2.02.06, 2019/06/07 (art suite 2.13.00)¶
- C++17 only
messagefacility 2.02.05, 2019/01/22 (art suite 2.12.00, art suite 2.12.01)¶
messagefacility 2.02.04, 2018/07/16 (art suite 2.11.03, art suite 2.11.04, art suite 2.11.05)¶
messagefacility 2.02.02, 2018/05/04 (art suite 2.11.02)¶
- A metaprogramming error has been fixed for the LOG_DEBUG and LOG_TRACE macros (resolves issue #19851).
messagefacility 2.02.01, 2018/04/02 (art suite 2.11.01)¶
messagefacility 2.02.00, 2018/03/30 (art suite 2.11.00)¶
This version supports GCC 7.3 with C++17 enabled.
There are some breaking changes with this version:
- The following top-level
messagefacility
configuration parameters are no longer used and should be removed:debugModules
suppressDebug
suppressInfo
suppressWarning
- The
MF_Utilities
library has been merged withMF_MesageLogger
. All instances ofMF_Utilities
on link lines should, therefore, be replaced withMF_MessageLogger
or removed altogether. - For users setting up their own
messagefacility
instance, please contact artists@fnal.gov for any additional breaking changes.
The removal of the extra parameters simplifies the configuration required to log messages of (e.g.) 'DEBUG'
severity.
messagefacility 2.01.07, 2018/03/16 (art suite 2.10.04)¶
messagefacility 2.01.06, 2018/01/23 (art suite 2.10.01, art suite 2.10.02, art suite 2.10.03)¶
messagefacility 2.01.05, 2018/01/22 (art suite 2.10.00)¶
- Support Clang 5.0.1.
- Update to TBB
v2018_2
.
messagefacility 2.01.04, 2017/12/06 (art suite 2.09.03, art suite 2.09.04, art suite 2.09.05, art suite 2.09.06)¶
- Update to TBB
v2018_1
.
messagefacility 2.01.03, 2017/11/07 (art suite 2.09.02)¶
- Restore automatic enabling of logging debug messages (resolved bug #17857).
messagefacility 2.01.02, 2017/10/17 (art suite 2.09.00, art suite 2.09.01).¶
messagefacility 2.01.01, 2017/08/30 (art suite 2.08.03, art suite 2.08.04).¶
messagefacility 2.01.00, 2017/08/01 (art suite 2.08.00, art suite 2.08.01, art suite 2.08.02).¶
This version of messagefacility
enables configuration validation and description.
Breaking changes¶
- Configuration validation and description is now supported for
messagefacility
; this means that extraneous or erroneously-specified FHiCL parameters will trigger an exception throw that ends the process. The system has been instrumented to tell you where the configuration failure has occurred. - The
ELdestination::changeFile
virtual functions have been removed. - All format-related parameters have been moved to the
format
table of a destination's configuration.
Removed parameters¶
The following configuration parameters have been removed and have no replacement:- the
message.generate_preconfiguration_message
parameter - the
placeholder
parameter for destinations - the
output
andextension
parameters for destinations offile
type--use the already-supportedfilename
parameter
Parameter replacements¶
- Suppressing timestamps
- message.destinations.<dest name>.noTimeStamps: true + message.destinations.<dest name>.format.timestamp: "none"
- Enabling millisecond precision
- message.destinations.<dest name>.useMilliseconds: true + message.destinations.<dest name>.format.timestamp: "default_ms"
- No line breaks for a logged message
- message.destinations.<dest name>.noLineBreaks: true + message.destinations.<dest name>.format.noLineBreaks: true
- Specifying the line length of the logged message
- message.destinations.<dest name>.lineLength: <unsigned long long> + message.destinations.<dest name>.format.lineLength: <unsigned long long>
messagefacility 2.00.02, 2017/05/23 (art suite 2.07.01, art suite 2.07.02, art suite 2.07.03).¶
- This release includes significant internal changes necessary to support concurrent logging to
messagefacility
destinations. Most users will not need to know about these changes. For those experiments or projects that explicitly initialize the message facility or create their own destinations, please contact artists@fnal.gov for guidance. - Breaking change: The
MF_MessageService
library has been subsumed by theMF_MessageLogger
library. All instances ofMF_MessageService
on link lines should be removed. Most users will not be affected by this change.
messagefacility 1.18.04, 2017/03/07 (art suite 2.06.03).¶
messagefacility 1.18.03, 2017/02/08 (art suite 2.06.01, art suite 2.06.02).¶
messagefacility 1.18.02, 2017/02/07 (art suite 2.06.00).¶
messagefacility 1.18.00, 2016/10/19 (art suite 2.05.00, art suite 2.05.01)¶
- The
sqlite
destination as been moved fromart
tomessagefacility
. - Removed deprecated
mf::do_nothing_deleter
. - Minor bug fixes.
messagefacility 1.17.02, 2016/09/14 (art suite 2.04.00, art suite 2.04.01).¶
messagefacility 1.17.01, 2016/08/08 (art suite 2.02.02, art suite 2.03.00).¶
- Resolve issue #13464: segmentation fault when initializing the facility in
SingleThread
mode.
messagefacility 1.17.00, 2016/08/02 (art suite 2.02.00, art suite 2.02.01).¶
In preparation for configuration validation, there were many under-the-covers changes that are unlikely to directly affect most users. For those users that rely on some of the message facility internals, or create their own destinations, please see below.
Header file changes¶
Old | New | |
messagefacility/MessageService/MessageLogger.h |
=> | messagefacility/MessageLogger/MessageLoggerImpl.h |
messagefacility/MessageLogger/ErrorObj.h |
messagefacility/Utilities/ErrorObj.h |
N.B. The header messagefacility/MessageLogger/MessageLogger.h
, necessary for using any of the logging streams (e.g. mf::LogInfo), has not moved.
Library changes¶
The MF_MessageLogger
library has been split into MF_MessageLogger
and MF_MessageService
. Most users will not need to change the library dependencies in their build scripts (i.e. MF_MessageLogger
) should be sufficient for most people. For users creating their own destinations or relying on messagefacility
internals, the MF_MessageService
library should (in most cases) replace their use of MF_MessageLogger
.
messagefacility 1.16.28, 2016/06/07 (art suite 2.01.01, art suite 2.01.02).¶
messagefacility 1.16.27, 2016/06/06 (art suite 2.01.00).¶
messagefacility 1.16.26, 2016/05/16 (art suite 2.00.01).¶
messagefacility 1.16.23, 2016/01/27 (art suite 1.18.05).¶
messagefacility 1.16.19, 2016/01/11 (art suite 1.18.04).¶
messagefacility 1.16.18, 2015/12/21 (art suite 1.18.03).¶
messagefacility 1.16.16, 2015/12/08 (art suite 1.18.02).¶
messagefacility 1.16.08, 2015/10/21 (art suite 1.18.00, art suite 1.18.01).¶
- Remove use of
cpp0x
.
messagefacility 1.16.22, 2016/01/26 (art suite 1.17.07).¶
messagefacility 1.16.21, 2016/01/11 (art suite 1.17.06).¶
messagefacility 1.16.17, 2015/12/14 (art suite 1.17.05).¶
messagefacility 1.16.07, 2015/10/21 (art suite 1.17.00, art suite 1.17.01, art suite 1.17.02, art suite 1.17.03, art suite 1.17.04).¶
messagefacility 1.16.05, 2015/10/05 (art suite 1.16.02).¶
messagefacility 1.16.04, 2015/09/29 (art suite 1.16.00, art suite 1.16.01).¶
messagefacility 1.16.00, 2015/08/31.¶
- Deprecate
mf::do_nothing_deleter
. A warning will be triggered and a message will be provided at compile time if any users invoke this class (also resolves issue #10042).