1.17.00
Art Suite Release Notes 1.17.00 (2015/10/21).¶
- Previous version's release notes.
Important notes.¶
It is intended that this minor release series be the last one to write Root 5 output files. The upcoming 1.18.00 release will contain the same set of features as this release, but it will use Root 6 to write and read files. This release includes some significant changes that will aid users in terms of:
- data product management for events,
- concatenating input files,
- resolving a long standing bug where users could not run
art
processes where the first input file contained no events - finer control in output file handling
- etc.
Please read the notes below for details and look at the known issues section.
Art 1.17.00.¶
New features:¶
- [ Breaking change ] Verification that products are put on the event: Per experiment request, it is now an error by default to fail to put a product on an event if a product has been declared in the module constructor using
produces<MyProduct>("optionalInstanceName")
. Failure to "put a product" may indicate a design flaw, which can cause difficulties in downstreamart
processes. For cases where conditional product-putting is required, the old behavior can be restored via FHiCL configuration. Resolves feature #7852 (see posting for details).
- Finer control when specifying
-o
option for output streams: Users may now use the-o
program option to set the file-name for a specific output stream in cases where more than one are specified in a user's FHiCL file. The syntax is-o "<module_label>:<file_name>"
, where the colon is the delimiter. Multiple instances of-o
can be used at the command line for the sameart
process. Resolves features #9793 and #10428.
- Optional
EventID
starting number of 0:art
can now accommodate experiments whose DAQ systems start event numbering at 0. Resolves feature #10379.
- Relaxed input concatenation criteria: It is now possible for input files to contain heterogeneous
Run
andSubRun
data products--e.g. input files subsequent to the first do not need to contain the same set ofRun
andSubRun
data products as the first input file. ForEvent
data products, the input files must still have consistent sets of products (see here for more details).
Bug fixes:¶
- Issue #2695: It is now possible to run over a set of input files if the first file contains zero events.
- Issue #10490: In past version of
art
, if a module constructor throws an exception, and the destructor of the input source tries to construct anart::ServiceHandle
, the requested service would not be accessible and an abort would be called. This service lifetime issue has now been resolved so that if such a scenario is encountered, the system shuts down safely. - Issue #10491: In cases where significant configuration metadata is present in a set of input files, the metadata can be blocked from being persisted to an output file, thus avoiding a possibly large memory increase at the end of an
art
process. See the caveats listed in the issue posting. - Issue #10495: Fixes bug where
RootOutput
was not honoring the FHiCL-providedstreamName
.
Known issues:¶
- Issue #10358: For users that build
art
themselves and run its test suite, the regression test validating the behavior ofart --print-available-(modules|services)
can sometimes fail. The feature itself, however, behaves correctly.