The Gaudi Project

Gaudi v19r9

Package Versions

GaudiN/AGaudiKernelv24r0 GaudiSvcv16r5
GaudiReleasev19r9GaudiObjDescN/AGaudiSysv19r9
GaudiAlgv10r5 GaudiPIN/AHbookCnvv14r13
GaudiAudv8r5 GaudiPolicyv8r2 LCGEnvN/A
GaudiExamplesv19r9 GaudiPoolDbv3r1 RootHistCnvv9r16
GaudiGSLv6r9 GaudiPythonv8r19 GaudiGridSvcv1r5
GaudiHistoryN/AGaudiSiteSvcN/AGaudiMonitorv1r4

Release Notes

Externals version: LCGCMT_54d

Packages Changes

  • GaudiPolicy (v8r2):
    • Added patterns to produce and use helper libraries for genconf. The helper libraries are useful if the constructors of the compenents need special actions to be taken before the instantiation.
      (Hubert Degaudenzi)
    • Patch #1724. Do not create stamp files in the InstallArea for merged files.
      The stamp files created by merge_files.py for rootmap files are read by ROOT because it thinks they are real rootmap files, slowing down the application startup. The script and the related fragments have been modified to create the stamp files in the same directories of the files to be merged.
      (Sebastien Binet)
    • Added a pattern to define the environment variables GAUDIAPPNAME and GAUDIAPPVERSION, used by gaudirun.py to set the default values for the corresponding ApplicationMgr properties.
      (Marco Clemencic)
    • Added a generic fragment/document to call a script.
      (Marco Clemencic)
  • GaudiKernel (v24r0):
    • Patch #1751. Fixed a typo in Stat::operator-=.
      (Vanya Belyaev)
    • Fixed Bug #35201. Python options parser '//' interpreted as comment in strings.
      (Marco Clemencic)
    • Fixed Bug #34680. Some obsolete methods were not forwarding the call to the relevant new methods.
      (Marco Clemencic)
    • Patch #1757. Detect creation/initialization loops for services.
      Modified the way the state of the service is set:
      • the base class initialize sets the state to CONFIGURED
      • the service becomes INITIALIZED in the sysInitialized, after the specialized service completed (successfully) the initialization
      (Charles Leggett)
    • Modified DataStreamTool to call sysInitialize instead of initialize for conversion services. (related to Patch #1757)
      (Marco Clemencic)
    • Bug #34752/Patch #1747. Fixed a problem with GaudiHandleArray.__getstate__ preventing pickling.
      (Sebastien Binet / Martin Woudstra)
    • Patch #1751. Changed the signature of declareProperty/declareRemoteProperty methods to get Property* instead of void or a StatusCode that is always success.
      (Vanya Belyaev)
    • Patch #1725. New IAuditor interface.
      • The Auditor member functions are now only 8, for all the combinations of:
        • before or after
        • standard event or custom event
        • INamedInterface* or string
      • All the after methods accept a StatusCode (if not specified, a SUCCESS with the checked flag set is used).
      • The obsolete member functions are kept for backward compatibility.
      • The default implementations of "before" and "after" are using the obsolete methods to make legacy Auditors to work.
      • IAuditorSvc is now an extension of IAuditor.
      • AuditorGuard has been adapted to the new interface and the audit with a status code check is simpler.
      • The standard event types defined in the enum IAuditor::StandardEventType can be printed and converted to strings with operator<<.
      (Marco Clemencic)
    • Python job options:
      • Removed the possibility of assigning a tool to an attribute of a configurable if that attribute/property does not exists. It was intended to allow simple declaration of private tools, but it is dangerous because it avoids the checking of the spelling of properties.
      • Modified Configurable.addTool() to accept a subclass of ConfigurableAlgTool as first argument (as well as an instance) to avoid the instantiation of an unneeded instance of the public tool configurable.
      (Marco Clemencic)
    • Added a work around for ROOT bug #34282 in dict/dictionary.xml (excluded few data members of Gaudi::Time).
      (Marco Clemencic)
    • Fixed Bug #34046. False warning when mixing Python options and old options. The check on the case of old options have been improved.
      (Marco Clemencic)
    • Modified genconf to take an extra argument "--load-library" to which the full path of a helper library is passed.
      (Hubert Degaudenzi)
  • GaudiSvc (v16r5):
    • Patch #1765. Allow THistSvc to write to the same file storegate is writing to. This functionality is needed for the UserDataSvc in ATLAS.
      (Yushu Yao)
    • Hack to change the order of finalization such that HistorgamDataSvc is finalized after ToolSvc (avoids segmentation faults).
      (Marco Clemencic)
    • Patch #1757. Detect creation/initialization loops for services.
      Modified the way the state of the service is set:
      • the base class initialize sets the state to CONFIGURED
      • the service becomes INITIALIZED in the sysInitialized, after the specialized service completed (successfully) the initialization
      (Charles Leggett)
    • Fixed problems introduced with patch #1757.
      • Modified ApplicationMgr to call sysInitialize instead of initialize for JobOptionSvc and MessageSvc (see also bug #26327).
      • Modified also NTupleSvc, TagCollectionSvc and RndmGenSvc to use sysInitialize instead of initialize for their sub-services.
      (Marco Clemencic)
    • Patch #1763. Demote some ERROR messages to WARNINGs in HistorySvc.
      (Charles Leggett)
    • Patch #1744. Speed up HistorySvc by caching a MsgStream.
      (Charles Leggett)
    • Fixed Bug #34121. Solved a problem in the check on the emptiness of tool type/name in ToolSvc::retrieve.
      (Marco Clemencic)
  • GaudiUtils (v1r6):
    • Patch #1749. Improve some printout of the histogram.
      (Vanya Belyaev)
    • Fixed Bug #33372 (Patch #1746). Fixed memory leak in XmlFileCatalog.
      (Markus Frank)
  • GaudiAlg (v10r5):
    • Bug #35199: GaudiSequencer segfaults if an algorithm cannot be loaded. Implemented the suggested check even if the bug is not reproducible with a simple test.
      (Marco Clemencic)
    • Fixed Bug #34565: Unchecked StatusCode in GaudiTuples<>::initialize().
      (Marco Clemencic)
    • Patch #1749. Improvements of print-outs.
      (Vanya Belyaev)
    • Patch #1725. Modified TimingAuditor to implement the new IAuditor interface for both standard events and user events.
      (Marco Clemencic)
  • GaudiAud (v8r5):
    • Patch #1717. Audit memory at initialize time.
      Uncommented the function to get the memory utilization after initialize (in MemStatAuditor).
      (Charles Leggett)
  • Gaudi (v19r9):
    • Added a test for bug #35201.
      (Marco Clemencic)
    • Fixed Bug #34046. False warning when mixing Python options and old options.
      (Marco Clemencic)
    • Modified Gaudi.Main.gaudimain to use the environment variables GAUDIAPPNAME and GAUDIAPPVERSION to set the default values for the ApplicationMgr properties AppName and AppVersion.
      (Marco Clemencic)
  • GaudiExamples (v19r9):
    • Added an example/test to show how to audit some pieces of user code (AuditorTestAlg), and how to write a minimal auditor (LoggingAuditor).
      (Marco Clemencic)
    • Updated the reference files for the changes introduced with Patch #1749.
      (Marco Clemencic)
    • Added a test for bug #34121.
      (Marco Clemencic)