The BOOLE Project

BOOLE v30r2p1

The BOOLE v30r2p1 Full Release Notes

2017-10-11 Boole v30r2p1

This version uses projects LHCb v41r1, Lbcom v19r1, Gaudi v27r1, LCG_84 (Root 6.06.02) and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

This version is released on digi14-patches branch

This version is a patch release for the Sim09 digitisation, Digi14

Bug fixes

[MR 98] Fix to Muon/MuonBackground to allow MCParticles unsorted by the keys
See LHCBGAUSS-1126

Changes to tests

** Delete configurables.qmt (obsolete, requires SVN)**




=== old style release notes ===

Package: Digi/Boole
Package Coordinator: Marco Cattaneo
Purpose: LHCb Digitization program

BEWARE:

2016-09-06 Boole v30r2

This version uses projects: LCG_84 (ROOT 6.06.02), Gaudi v27r1, LHCb v41r1, Lbcom v19r1 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

This version is released on master branch.

New tuning

[MR lhcb/lbcom!43] Changes to allow the varying of the VELO 2nd metal effect with angle of the track, see LHCBGAUSS-830
Enabled if corresponding conditions exist in SIMCOND tag being used
Update VeloSim to read the diffusion scaling from the SIMCOND, see LHCBGAUSS-737
Enabled if corresponding conditions exist in SIMCOND tag being used
[MR lhcb/lhcb!235] In L0Conf, use LUT version V8 also for 2016 L0 emulation, see LHCBGAUSS-791
Enabled by setting DataType=2016 (previously 2016 was defaulting to a Run 1 LUT)
Multiple speedups due to code modernisations in LHCb and Lbcom

Updates to monitoring

STMonitors
Removed 2d profile histograms as they aren't supported online (STClusterMonitor.cpp)

Changes to tests

[MR !9, !3, !2, !1] Update test references to follow changes in underlying packages

Code modernisations and code maintenance

[MR !8] Minor fix for compilation against a 64 bit RichSmartID
[MR !7] Use declareSTConfigProperty instead of direct usage of flipList
follow the change introduced by lhcb/LHCb!189
... and some drive-by C++11 modernization
[MR !6] RichReadout C++11 Cleanup and Adapt to return value change - Related to lhcb/LHCb!132
Adapt to StatusCode -> bool change in some return values
General C++11 clean up.
[MR !5] Replace endreq by endmsg, remove unnecessary AlgFactory.h includes
[MR !4] Added .gitignore and .gitattributes - see LHCBPS-1599

2016-04-29 Boole v30r1

This version uses projects:
 LCG_84 (ROOT 6.06.02), Gaudi v27r1, LHCb v40r1, Lbcom v18r1
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

- Configuration changes
  . Do not set default tag for LHCBCOND, CALIBOFF and DQFLAGS partitions in
    case of Simulation (DDDB v1r84)

- Persistency changes
  . SimConf: Add possibility to write Bls and Bcm MCHits (GaudiConf v19r17)

- New functionality
  . Add support for L0TCKs that use previous BX in trigger decision (L0DU v10r35,
    L0Event v19r10, L0Interfaces v2r4, update L0TCK dependency to v5r*)
  . Add platform support for CentOS7 [GAUDI-1196]

- Bug fixes
  . LHCBGAUSS-715: update CaloDigitAlg::CaloTriggerFromAdc() method to allow for
    10bits L0-constants (CaloDigit v3r6)
  . Extend data range for interpolator in RichShape to avoid out-of-range 
    interpolation requests (RichReadout v2r18, RichDet v17r7)
  . Fix many unprotected DEBUG messages introduced in Gaudi v27r0 [GAUDI-1174]

- Code modernisations and cleanups
  . Multiple improvements.
    See DigiAlg v5r5, FTDigitization v3r2, RichReadout v2r18, LbcomSys v18r1,
        LHCb v40r1, Gaudi v27r1 release notes

2016-02-05 Boole v30r0

This version uses projects:
 LCG_83 (ROOT 6.06.00), Gaudi v27r0, LHCb v40r0, Lbcom v18r0
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

- New functionality and configuration changes
  . Allow GenFSR merging and propagation
    (GenEvent v7r0, FSRAlgs v2r0, Boole v40r0)
  . Remove GlobalTimeOffset(). Instead, derive its value from rootInTes()
    (CaloDigit v3r5, FTDigitisation v3r1, MuonAlgs v6r14, Boole v40r0)
  . Add option for Rich upgrade (PMTs) (RichReadout v2r17, RichDigiSys v1r4)

- Changes to tests
  . Swap order of mc10 tests so that when both tests fail the correct
    new reference file survives

2015-11-25 Boole v29r12

This version uses projects:
 LCG_79 (ROOT 6.04.02), Gaudi v26r4, LHCb v39r2, Lbcom v17r2
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

- New functionality
  . Added support for FT geometry v5 (FTDigitisation v3r0, FTDet v2r11)
  . Added HC channel mapping (HCDigitisation v1r2)
  . Add a new flag to the RichSmartID class for the Upgrade MaPMTs to save if
    it represents a 'large' or 'small' PMT (LHCbKernel v15r13)

- New physics tuning
  . New noise implementation for FT, at MCFTDepositCreator level
    (was MCFTDigitCreator level) (FTDigitisation v3r0, FTEvent v1r8)
  . Adapted default FT max. cluster size from 4 to 8 (FTDigitisation v3r0)
  . Adapted clustering FT max.charge check to match FPGA (& max threshold
    accordingly) (FTDigitisation v3r0)

- Bug fixes
  . Bugfix in VPClustering (subtraction of two unsigned ints) (VPAlgorithms v4r5)
  . Add check whether the detector element is found
    (VPDigitisation v1r7, VPCheckers v1r1)
  . RichCommonBase.icpp: fix unprotected debug() (RichKernel v7r61)

- Monitoring changes
  . Added / removed monitoring plots (FTDigitisation v3r0)
  . Added monitoring plots (HCDigitisation v1r2)

- Code modernisations and cleanups: STDigiAlgorithms v2r7, VPDigitisation v1r7,
   - See also Lbcom v17r2 and LHCb v39r2 release notes. 


2015-10-22 Boole v29r11

This version uses projects:
 LCG_79 (ROOT 6.04.02), Gaudi v26r4, LHCb v39r1, Lbcom v17r1
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

- Bug fixes
  . LHCBGAUSS-544: In DigiConf packing of MCHits for xdigi events is now done
                   only when the packing is requested

2015-10-14 Boole v29r10

This version uses projects:
 LCG_79 (ROOT 6.04.02), Gaudi v26r4, LHCb v39r1, Lbcom v17r1
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

- Configuration changes
  . L0Conf : use by default LUT V8 for L0Muon emulation of 2015 data (L0DU v10r34)

- Code modernisation
  . GAUDI-1094 - Provide (and use) C++11 smart pointer 'look and feel' for SmartIF
  . GAUDI-1057 - C++11 modernization changes

- Monitoring changes
  . GAUDI-1078 - Update to GaudiAlg to include the caller algorithm name in
                 messages from public tools

- Changes to tests
  . Add temporary RegexpReplacers for forward compatibility with GAUDI-1078

2015-09-25 Boole v29r9

This version uses projects:
 LCG_79 (ROOT 6.04.02), Gaudi v26r3, LHCb v39r0, Lbcom v17r0
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

- Changes to configuration
  . Add more RawEvent locations to be killed in options/Boole-RunFromXDST.py

- Bug fixes
  . LHCBGAUSS-514 - Protect against zero path lengths (VPDigitisation v1r6)

- Monitoring changes
  . Make sure that the choice of HPD with maximum (minimum) occupancy does not
    depend on the order of iteration over the HPDs (RichDigiQC v3r15)

- Code cleanups
  . Make fewer assumptions on types of LinkMgr internals (DigiAlg v5r4) 
  . Replace obsolete eventDataService() with eventSvc() (CaloMoniDigi v2r6p2)
  . Remove unnecessary headers (VPDigitisation v1r6)

2015-07-22 Boole v29r8

This version uses projects:
 LCG_79 (ROOT 6.04.02), Gaudi v26r3, LHCb v39r0, Lbcom v17r0
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

Identical to v29r7 but built against LHCb v39r0 stack

2015-07-10 Boole v29r7

This version uses projects:
 LCG_76root6 (ROOT 6.02.08), Gaudi v26r2, LHCb v38r7, Lbcom v16r6
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

- New functionality
  . Set SiPMResponse as ToolSvc property instead of private, to allow for 
    setting properties (FTDigitisation v2r6)

- Bug fixes
  . Ignore CALIBOFF partition for simulation (DetCond v12r42) 
  . LHCBGAUSS-481: Fix bug that caused only one monolayer per OT module to be
    filled (OTDet v8r17)

- Changes to tests
  . Remove sam.qms test suite, no longer used and not supported by CMake
  . latestdb tests now pick up field101.* maps that were default for real data
    in Reco14

2015-06-01 Boole v29r6

This version uses projects:
 LCG_76root6 (ROOT 6.02.08), Gaudi v26r2, LHCb v38r7, Lbcom v16r6
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

- Changes to configuration
  . Default DataType is now 2015 (no effect, value not explicitly used anywhere)
  . Boole().SiG4EnergyDeposit now True by default (use Geant4 modelling of energy
    loss for silicon trackers from Geant4 instead of in-house)

- New functionality
  . Update raw bank encoding to PS/SPD format (HCDigitisation v1r1)

- New tuning
  . MCFTDigitCreator: strict inequalities moved into not strict ones in
    force2bitsADC patch (FTDigitisation v2r5)

- Bug fixes
  . Added a temporary fix for too large fiber module index (can happen due to
    mean position calculation). See https://its.cern.ch/jira/browse/LHCBGAUSS-447
    (FTDigitisation v2r5)
  . Add if statement in Cluster/MCHit association to fix a seg. fault
    (FTDigitisation v2r5)
  . GAUDI-1023: issue a warning when re-declaring a property (GaudiKernel v31r5)
    Related fixes:
    o Renamed the Algorithm property "ErrorCount" to "ErrorCounter", avoids 
      clash with error counting in DecodeVeloRawBuffer (GaudiKernel v31r5)
    o STCMSNoiseCalculationTool.cpp: do not re-declare PedestalsFromDB property
      of base class, just re-initialise default value (STTools v4r17)

- Monitoring changes
  . Migrate resolution computation on cluster position from FTClusterCreator to
    FTClusterMonitor (FTDigitisation v2r5)
  . Tidy up VPClusterMonitor (remove lite-cluster and ToT related plots)
    (VPCheckers v1r0)

- Changes to tests
  . All tests now use Boole().SiG4EnergyDeposit = True, except MC10 tests. 
    Reference files updated accordingly

2015-04-21 Boole v29r5

This version uses projects:
 LCG_72root6 (ROOT 6.02.05), Gaudi v26r1, LHCb v38r6, Lbcom v16r5
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

 - New functionality
   . In FT (FTDigitisation v2r4)
     o Turned on 2-bits ADC forcing of digits, noise implementation, and
       new SiPMResponse shape
     o Added options to fix cluster size / fraction
   . In BooleInit, added property SetOdinRndTrigger to switch on ODIN random
     trigger via event type bit (DigiAlg v5r3)

 - New tuning
   . Speed optimisations in OT and Velo geometry (OTDet v8r16, VeloDet v13r21)

2015-02-25 Boole v29r4

This version uses projects:
 LCG_72root6 (ROOT 6.02.05), Gaudi v26r1, LHCb v38r5, Lbcom v16r4
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

 - Configuration changes (FTDigitisation v2r3)
   . Split up MCFTDepositCreator in MCFTDepositCreator and MCFTAttenuationTool

 - New functionality
   . Added option in MCFTDigitCreator to enforce 2-bits ADC at Digit level
     (FTDigitisation v2r3)
   . Added option in SiPMResponse to turn on new data-driven electronics response
     (FTDigitisation v2r3)
   . Generalise local-to-global transformation to allow for rotated modules.
     (VPTools v2r5)

 - New tuning
   . Cleaned up FTClusterCreator code (FTDigitisation v2r3)
   . Vectorised optimisation of magnetic field (DetDesc v18r36, Magnet v7r9)
   . Speed optimisation in multiple packages (LHCb v38r5)

 - Bug fixes
   . Fix bug affecting the way the fractional position is used in the light
     sharing for tracks crossing the inter SIpms gaps (FTDet v2r9)

 - Monitoring changes
   . Added monitoring functionality to FTClusterMonitor for RawBank maxClus
     (bandwidth) studies (FTDigitisation v2r3)

2015-01-15 Boole v29r3

This version uses projects:
 LCG_72root6 (ROOT 6.02.03), Gaudi v26r0, LHCb v38r4, Lbcom v16r3
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

Functionally identical to v29r2p1 but with Gaudi v26r0, LHCb v38r4 dependency

Several CPU performance optimisations, see Gaudi and LHCb release notes 

2014-12-15 Boole v29r2p1

This version uses projects:
 LCG_71root6 (ROOT 6.02.02), Gaudi v25r6, LHCb v38r3p1, Lbcom v16r2p1
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

Identical to v29r2 but with Root6 dependency

2014-12-15 Boole v29r2

This version uses projects:
 LCG_69 (ROOT 5.34.24), Gaudi v25r6, LHCb v38r3, Lbcom v16r2
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

- New functionality
  . Add support for FT geometry v4 (FTDet v2r8)
  . Add support for Herschel Digits (DigiEvent v4r3, LHCbKernel v15r6)

- Persistency changes
  . Support for cluster size in FT RawBank (FTDAQ v1r7)

- Bug fixes
  . Fix in "fibreMatMinY" and "fibreMatMaxY": the max and the min were inverted
    (FTDet v2r8)
  . Fix in hit fibre length computation (FTDet v2r8)
  . Remove duplicate dictionary std::pair (EventPacker v4r6)

- Changes to QMTests
  . Revert BooleExclusions.py change of v29r1

2014-11-07 Boole v29r1p1

This version uses projects:
 LCG_70root6 (ROOT 6.02.01), Gaudi v25r5, LHCb v38r2p1, Lbcom v16r1p1
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

Identical to v29r1 but with Root6 dependency

2014-11-07 Boole v29r1

This version uses projects:
 LCG_69 (ROOT 5.34.21), Gaudi v25r4, LHCb v38r2, Lbcom v16r1
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

- Changes to QMTests
  . In BooleExclusions.py: future proof upgrade tests against change in FTDet
    initialisation printout. Can be removed once we are on LHCb v38r3 stack

2014-07-21 Boole v29r0

This version uses projects:
 LCG 69root6 (ROOT 6.00/01), Gaudi v25r3, LHCb v38r0, Lbcom v16r0
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, AppConfig v3r*

First version to support ROOT6 in production

- Known issues
  . Memory usage increased due to ROOT6 dictionaries. Workaround expected in
    ROOT 6.01.

- New functionality
  . First implementation of HC (Herschel) digitisation (not yet interfaced to
    Boole Configurable) (HCDigitisation v1r0)

- Performance improvements
  . Use the VDT math library in a few more places (RichDet v16r24)

2014-07-02 Boole v28r2p1

This version uses projects:
 LCGCMT 68 (Root 5.34.18), Gaudi v25r2, LHCb v37r3, Lbcom v15r2p1
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

- New functionality 
    Added possibility to reprocess from XDIGI, steered by Boole().InputDataType.

- QMTest changes
  . Move all upgrade tests to use TestFileDB for input data
  . Add new test boole-reprocess-xdigi.qmt
  . Updated boole-2010.ref to follow latest SIMCOND global tag for 2010 to
    include Velo motor positions for Sim08 

2014-06-20 Boole v28r2

This version uses projects:
 LCGCMT 68 (Root 5.34.18), Gaudi v25r2, LHCb v37r3, Lbcom v15r2p1
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

- New functionality
  . Added possibility to reprocess from XDST, steered by new option 
    Boole().InputDataType.

- Persistency changes
  . Add FT Clusters <-> MCHit links to DIGI for upgrade
    (FTDigitisation v2r2, GaudiConf v19r3)

- QMTest changes
  . Added boole-reprocess-xdst test

2014-06-10 Boole v28r1

This version uses projects:
 LCGCMT 68 (Root 5.34.18), Gaudi v25r2, LHCb v37r3, Lbcom v15r2p1
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

- Performance improvements
  . Fix unprotected debugs (FTDet v2r7)
  . Reintroduce binary search in DeFTDetector (FTDet v2r7)
  . Precompute cosine of angle in DeFTFibreMat (FTDet v2r7)
 
- Bug fixes
  . Fix inaccuracy in fractional position computation for cellID 0 and 130 in
    CellIDCoordinates() and correct an unprotected zero division in
    createLightSharingChannels() (FTDet v2r7)
  . Fix untested StatusCodes (RichDet v16r23)

2014-05-15 Boole v28r0

This version uses projects:
 LCGCMT 68 (Root 5.34.18), Gaudi v25r1, LHCb v37r2, Lbcom v15r2
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

- Configuration changes
  . Modified VP sequences: remove VPClustering from DigiSeq, replace
    PrepareVPRawBank by VPSuperPixelBankEncoder, remove VPClusterLinker from
    LinkSeq

- Backward incompatible persistency changes (require Brunel 46r0 or greater)
  . Changes to FTChannelID: no more quarter --> module + mat
    (LHCbKernel v15r2, FTDet v2r6, FTDigitisation v2r0)
  . Renamed FTRawCluster to FTLiteCluster (FTEvent v1r6, FTDAQ v1r6)
  . Modification of the bit sharing in 16-bit words according to the FT TDR
    electronic design (FTDAQ v1r6)
  . Changes to VPChannelID
    (LHCbKernel v15r2, VPDet v3r2, VPDAQ v2r7, VPAlgorithms v4r4)
  . Remove VPLiteCluster from VPCluster, add inter-pixel fraction to VPCluster
    (DigiEvent v4r2,VPDAQ v2r7,VPAlgorithms v4r4,VPTools v2r3,VPDigitization v1r4)
  . Remove ToT value and timestamp from VPDigit
    (DigiEvent v4r2, VPDAQ v2r7, VPAlgorithms v4r4, DigiAlg v5r2)
  . Modify digits linker tables to use keys instead of VPDigit objects
    (VPAssociators v2r6, DigiAlg v5r2)
  . DigiConf.py: replace VPCluster by VPDigit linker tables (GaudiConf v19r2)

- New optimisations
  . Performance optimisations of DeVP (VPDet v3r2)
  . Remove MCVPDeposit and modify MCVPDigit accordingly
    (MCEvent v3r1, VPAssociators v2r6, VPDigitisation v1r4)
  . Simplify delta electron treatment in VPDigitLinker (VPAssociators v2r6)
  . VPDigitCreator: sort digits by channel ID (VPDigitisation v1r4)

- New functionality
  . Implementation of 2 bit clustering (FTDigitization v2r0)
  . Add options to simulate noisy and masked pixels (VPDigitisation v1r4)

- New tuning
  . Update default values of FT digitisation parameters (FTDigitization v2r0)
  . Change default value of VP electronic noise to 130 (VPDigitisation v1r4)

- Obsolete functionality removed
  . Remove support for "old" (pre-TDR) VP geometry (VPDigitisation v1r4)

- QMTest changes
  . Update/restore new configurables test, see task #50698
  . Pick up boole-mc11a-xdst PFN from TestFileDB
  . Add SC and FPE monitoring to all upgrade tests


2014-03-27 Boole v27r1

This version uses projects:
 LCGCMT 68 (Root 5.34.18), Gaudi v25r1, LHCb v37r1, Lbcom v15r1
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Configuration changes
   . Moved FTNoiseCreator content to MCFTDigitCreator (FTDigitisation v1r9)
   . VeloSim.py replaces VeloSim.opts (Boole v27r1, VeloSimulation v3r15)
   . Propagate OutputLevel value to Calo sequences only when the property is
     explicitly set (CaloAssociators v6r14, CaloDAQ v4r38)

 - New tuning
   . Use VPDigits instead of VPClusters in BuildMCTrackInfo (DigiAlg v5r1)
   . Correct for in house and GEANT4 straggling function differences
     (VeloSimulation v3r15)

 - New functionality
   . Improved functionality of acceptance studies in FTClusterCreator
     (FTDigitisation v1r9)
   . Added encoder for Super Pixel raw bank from digits (VPDAQ v2r6)

 - Bug fixes
   . Fix in VP clustering routine. Changed two break statements to continue
     (VPAlgorithms v4r3)
   . Protected all word constructors from overflows in inputs by proper masking.
     Fixes a rare (per mille level) off-by-one bug in the VELO digitisation.
     (SiDAQ v2r3)

 - Performance improvements
   . Changes to VPCluster format (DigiEvent v4r1, VPDAQ v2r6, VPAlgorithms v4r3,
                                  VPDigitisation v1r3, VPAssociators v2r5)

 - Monitoring changes
   . Reduce Calo verbosity (CaloDAQ v4r38, CaloDet v10r19)
   . Reduce verbosity of memory pool release messages (LHCbKernel v15r1)

 - Changes to tests
   . EventSelector PFN exclusion moved from BooleExclusions to LHCbExclusions
     (Boole v27r1, GaudiConf v19r1)

2014-02-21 Boole v27r0

This version uses projects LCGCMT 66, Gaudi v25r0, LHCb v37r0, Lbcom v15r0
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

First version that can be built and run against ROOT 6.

 - Configuration Changes
   . Import ttDigi.py, itDigi.py, utDigi.py rather than their .opts equivalents 
   . Stop RichMaPmt from digitising spillover hits
   . Follow renaming of BuildMCTrackInfoUpgrade to replace old version of
     BuildMCTrackInfo. Now the same algorithm is used for both current and
     upgrade detector configurations
   . Improve protections for invalid Linker combinations
   . Integrate into DecodeRawEvent configurable (task #19106) 

 - New functionality
   . Adaptation for using large+standard PMTs in RICH2. (Det/RichDet v16r20)

 - New tuning
   . Made FT cluster cuts more intuitive and changed values accordingly
     (FTDigitisation)

 - Performance improvement
   . Avoid calling System::virtualMemory() more often than required in LbAppInit.
     (Kernel/LHCbKernel v15r0)

 - Obsolete functionality removed
   . Remove support for VL upgrade detector
   . Remove Boole().Persistency option (Digi/Boole v27r0, GaudiConf v19r0)
   . Moved all functionality from DeVPNewSensor to DeVPSensor and removed
     removed DeVPNewSensor (Det/VPDet v3r0)

 - Monitoring changes
   . Update LbAppInit to only report memory changes when they are greater than
     some small delta value (16KB by default). (Kernel/LHCbKernel v15r0)

 - Bug fixes
   . Fixed logic of applyConfigurableUsers() (see bug #103803 and bug #103808)
     (GaudiKernel v30r0)
   . PuVetoAlg: Protect divide by zero when initialising diagonal elements of
     binning matrix (L0/PuVeto v7r10)
   . Protect divide by zero in OTTimeMonitor::finalize() (OT/OTMonitor v3r8)
   . Protect against zero length direction vectors in RayTracing::reflectSpherical
     (Rich/RichTools v2r43)
   . Fix UNINIT_CTOR defect (VP/VPAlgorithms v4r2p1)
   . DeCalorimeter.cpp : fix floating point exception in the initialize()
     (Det/CaloDet v10r18)
   . DeRichPMTPanel: fixed minor issue with RICH2 Local PD plane transform
     definition for PMTs for plotting the hit coordinates in the PD plane.
     (Det/RichDet v16r20)
   . Fix the enabling of the FPEAuditor in LHCbApp (Kernel/LHCbAlgs v3r0)

 - QMTest changes
   . Migrate input data of boole-mc11 and all MC11 tests to EOS and TestFileDB
   . Add to BooleExclusion.py a filter on the EventSelector printout of the name
     of opened files, to future proof tests if file connection string changes
   . Changed upgrade tests to access castor files properly.

2013-12-11 Boole v26r10

This version uses projects LCGCMT 66, Gaudi v24r2, LHCb v36r4, Lbcom v14r4
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

- Configuration Changes
   . Added a line for the UT in Boole/Configuration.py 
   . Translate utDigi.opts to utDigi.py (STDigiAlgorithms v2r5)
   . Added outputLocation property to FTRawBankEncoder (FTDAQ v1r4)

- New functionality
  . Implemented direct and reflected light pulse in the FT DepositCreator. This
    is needed for studying spillover. DigitCreator is also modified for matching
    the new Deposit (FTDigitisation v1r7)
  . Adapted MCFTDepositCreator to include fiberPropagationTime of light
    (instead of refractive_index / c_light), and scintillation light release time
    Added 5 ns time offset in MCFTDigitCreator, to match extra times of above
    update(FTDigitisation v1r7) 
  . Adapted FTClusterCreator to handle noise clusters that will have
    no associated mcDeposit (null-pointer checks). (FTDigitisation v1r7)
  . Removed Afterpulsing on Thermal noise in FTNoiseCreator (FTDigitisation v1r7)
  . Revise UT signal pulse shape and crosstalk (STDigiAlgorithms v2r5).

- New tuning
  . Modified FTDeposit structure, from map to a structure
    with many containers with MCHit, energy, and arrival time to SiPM for both
    the direct and reflected light pulse. FTDigit is modified accordingly to 
    store the FTDeposit pointers used (FTEvent v1r5)

- Speed improvements
  . Added local variable in detector element functions pointToChannel, 
    channelToPoint (VPDigitization v1r2, VPDet v2r5)
  . Speed improvements in clustering (VPAlgorithms v4r2)

- Persistency changes
  . Add support for data federations (try out all PFN replicas in file catalog in
    turn in case of file open failures) (GaudiUtils v4r7)
  . Add output for per-event timing of execute(). Controlled by ChronoStatSvc
    property "PerEventFile". Default is empty string, do nothing
    (GaudiCommonSvc v2r2)
  . Add property to RootHistCnv::RFileCnv that allows ROOT compression settings
    to be defined (RootHistCnv v11r3)

- Packaging changes
  . Remove OldVPxxx algorithms (VPDigitization v1r2)

- QMTest Changes
   . Updated Upgrade references
   . Changed suite of upgrade qmtests to
     - boole-upgrade-minimal
     - boole-upgrade-baseline
     - boole-upgrade-baseline-ut
     - boole-upgrade-baseline-25ns
     - boole-upgrade-calo_nospdprs
     - boole-upgrade-muon_nom1
   . Updated upgrade tests to new DB tags after UT changes in DB.
   . Add exclusion for memory change warnings from BooleInit
   . Skip warnings about 3*sigma changes in memory use in QMTests exclusions file
     LHCbExclusions.py (GaudiConf v18r0)

2013-10-25 Boole v26r9

This version uses projects LCGCMT 65a, Gaudi v23r10, LHCb v36r3, Lbcom v14r3
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

- Configuration changes
  . Updated LinkVPSeq to use simplified VP digit and cluster linker algorithms
    to have same number of reconstructible tracks in binary in ToT mode
    (Configuration.py, VPAssociators v2r3)

- New tuning
  . Enable binary readout by default in VPDigitCreator (VPDigitisation v1r1)
  . VPDepositCreator: use pointToChannel function without fraction
    (VPDigitisation v1r1, VPDet v2r4)

- Bug fixes
  . Fix unprotected iterator in VPDepositCreator (VPDigitisation v1r1)
  . Fix to radiation damage loop (VPDigitisation v1r1)
  . Bug fixes in pointToChannel and channelToPoint functions of DeVPNewSensor
    (VPDet v2r4)
  . Fixed incorrect addressing of TELL1s in case of no M1 in MuonDigitToRawBuffer
    (MuonDAQ v4r19, MuonDet v9r15)

- Monitoring changes
  . Added cluster monitoring code (uses MC truth) (VPDigitisation v1r1)
  . Add to the valgrind suppressions file, Gaudi.supp, some entries to suppress
    warnings when accessing data via XRootD (GaudiConf v17r13)

- QMTest Changes
   . Added baseline qmtest and references.
   . Updated qmtest references following VP changes

2013-10-03 Boole v26r8

This version uses projects LCGCMT 65a, Gaudi v23r10, LHCb v36r2, Lbcom v14r2
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Platform support
   . Support for x86_64-slc6-gcc47 removed, replaced by x86_64-slc6-gcc48

 - Configuration Changes
   . Incorporated pathUpgrade1.py code into Configuration for RichPmt
   . Updated VP digitisation sequence

 - New functionality
   . Adaptation for using large PMTs in RICH2 (RichDet v6r19)
   . Support for new VP sensor description and reorganisation of VP detector
     description (LHCbKernel v14r3, VPDet v2r3, VPDAQ v2r4, BooleUMC v2r3,
     VPTools v2r2, VPDigitisation v1r0)
   . Added VPDigit raw bank encoding and decoding (DAQEvent v9r13, VPDAQ v2r4)
   . New implementation of VP Deposit and Digit creation (VPDigitisation v1r0)
   . Fixed irradiation diffusion parameter (VPDigitisation v1r0)
   . Support DB mapping of UT board vs TELL1 ID (STDAQ v4r3, STKernel v2r13)

 - Bug fixes
   . Several fixes to FT geometry (FTDet v2r1 to v2r3p1)

 - Packaging changes
   . VPAlgorithms package moved to Lbcom. Boole specific classes moved to new
     VPDigitisation package.
   . Added missing dependency on RELAX, to locate Reflex dictionaries

 - Code cleanups
   . Fix CMake warnings (BcmDigi v1r2p1, CaloDigit v3r4p1, CaloMoniDigi v2r6p1,
     Boole v26r8, BooleUMC v2r3, FTDigitisation v1r6, MuonMoniDigi v2r8p1, 
     OTSimulation v5r5p1, RichDigiSys v1r3p1, VLDigitisation v1r5p1,
     VPAssociators v2r3p1, VPDigitisation v2r2p1)
   . Fix gcc48 warnings (FTDigitisation v1r6, VPDigitisation v1r0)

 - QMTest Changes
   . Updated mc11a-xdst test to use input file from EOS

2013-07-25 Boole v26r7

This version uses projects LCGCMT 65a, Gaudi v23r9, LHCb v36r1, Lbcom v14r1
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - New functionality
   . Adapted configuration to accomodate no SPD/PRS option (Configuration.py)
   . Add support for new FT detector description, keeping support also for old
     version (FTDigitisation v1r5, FTDet v2r0)

 - Bug fixes
   . Fix a memory leak in case MakeMCBcmDigits=false (BcmDigi v1r2)
   . In MCFTDepositCreator, protect against a bug in Det/FTDet package which 
     produces fired FTChannel with layerID above 11 (FTDigitisation v1r5)
   . In FTClusterCreator, type of meanChanPosition variable moved from 'int' to
     'uint' to avoid max value of type 'int' to be reached (FTDigitisation v1r5)

 - Performance optimisation
   . Use VDT for a couple cos and sin calculations (RichDet v16r18)
   . Protect unprotected debugs (BcmDigi v1r2, CaloDigit v3r4, CaloMoniDigi v2r6,
       FTDigitisation v1r5, MuonAlgs v6r12, MuonMoniDigi v2r8, RichReadout v2r16)
   . Remove unused finalize methods (CaloDigit v3r4, CaloMoniDigi v2r6,
                   FTDigitisation v1r5, VPAssociators v2r2, VPDAQ v2r3)

 - Code cleanups
   . Remove unused variables and properties (BcmDigi v1r2)
   . Replace endreq by endmsg
     (CaloDigit v3r4, CaloMoniDigi v2r6, MuonMoniDigi v2r8, RichReadout v2r16)
   . Fix Coverity defects (CaloDigit v3r4, CaloMoniDigi v2r6, MuonAlgs v6r12,
                FTDigitisation v1r5, MuonBackground v2r15, MuonMoniDigi v2r8,
                RichReadout v2r16, VPAssociators v2r2, VPDAQ v2r3, MuonDet v9r13)
   . Fix gcc48 warnings
     (MuonBackground v2r15, RichReadout v2r16, RichTools v2r42)
   . Fix untested StatusCode from Warning() (RichReadout v2r16, VPDAQ v2r3)

 - Monitoring changes
   . Add HistoCountersPrint property to GaudiHistos, to control printing of
     booked histogram statistics in finalize() (GaudiAlg v14r6)

 - QMTest Changes
   . Added local tag options to ut and ft tests.
   . FT_MonoLayer test added.
   . Original boole-upgrade-ft test accesses old FT geometry.
   . VP_Compact_Microchannel tests now use FT_MonoLayer geometry.
   . All upgrade tests now use latest global tags
   . Updated all upgrade references accordingly
   . Update configurables.ref to follow move of CaloTools to Rec

2013-06-07 Boole v26r6

This version uses projects LCGCMT 65, Gaudi v23r8, LHCb v36r0, Lbcom v14r0
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Changes to external packages (LCGCMT 65). Main changes:
   . ROOT 5.34.07a (was 5.34.05)
   . Boost 1.50.0 (was 1.48.0)
   . HepMC 2.06.08 (was 2.06.05)
   . Python 2.7.3 (was 2.5.5p2)
   . Full list at http://lcgsoft.cern.ch/index.py?chkbox0=64d&chkbox1=65&show=diffs&page=compare

 - Functionality changes
   . Supports configurations without M1
     (MuonAlgs v6r12, MuonBackground v2r14, MuonMoniDigi v2r7, MuonDet v9r12)
   . Modified StalledEventMonitor to be able to print a stack trace of the 
     stalled process and abort the execution (GaudiUtils v4r5)

 - Performance optimisation
   . Use getIfExists (OTSimulation v5r5, HltDAQ v2r17)
   . No more Ntuple creation by default (MuonMoniDigi v2r14)
   . Remove unused finalize methods
     (VPAlgorithms v3r3, LbcomSys v14r0, LHCbSys v36r0)

 - Bug fixes
   . Fix clang32 and gcc48 warnings, UNINIT_CTOR defects (BooleUMC v2r2,
     OTSimulation v5r5, VPAlgorithms v3r3, LbcomSys v14r0, LHCbSys v36r0)
   . Fix untested StatusCode (OTSimulation v5r5)
   . Fix bug in sequencer timer (GaudiAlg v14r5)

 - Changes to tests
   . vl_compact tests updated to use the new optimised geometry
     (local tag VL-CompactOptimize-Local-20130527)
   . Fixed bug in vl_compact_tpg-ut-ft qmtest (was using wrong reference)

2013-05-02 Boole v26r5

This version uses projects LCGCMT 64d, Gaudi v23r7, LHCb v35r6, Lbcom v13r6p1
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Changes to supported platforms
   . Now supports build with CMake, gcc47, clang32
     (MuonBackground v2r13, Lbcom v13r6, LHCb v35r6)

 - Functionality changes
   . Added possibility to model radiation damage (VLDigitisation v1r5)
   . Add support for compressed CondDB
     (DetCond v12r30, CondDBUI v3r22, CondDBEntityResolver v5r5)

 - Changes to monitoring
   . Modifications to FT monitoring (FTDigitisation v1r5)

 - Changes to tests
   . Added tests/options/db-latest-upgrade.py
   . Update input files and references to follow changes to VP, VL geometry

2013-03-26 Boole v26r4

This version uses projects LCGCMT 64d, Gaudi v23r7, LHCb v35r5, Lbcom v13r5
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Bug fix release for upgrade simulation.

 - Changes to configuration:
    . Disabled activation of spillover sequences for the UT which do not exist.
    . Changed configuration for UT to avoid an exception when using DataType
      Upgrade
    . Use VL path (instead of VeloLite) (VLDet v1r5)
    . Changed the way LHCbApp derived dataTypes for the DB (LHCbAlgs v2r55)
    . Full support for SLC6 (gcc46) (Gaudi v23r7)

 - Tuning changes
   . Assessement of the ADC gain (ADC/photoelectron) and gain
    (photoelectron/cluster) (FTDigitisation v1r3)

 - Bug fixes
   . Fix in VLDigitCreator (allocation of charges to strips)(VLDigitisation v1r4)
   . Fix a typo in plot2D call (FTDigitisation v1r3)

 - Monitoring changes
   . MCHits map from MCFTDigit used to compute the fraction of hit lost in
     clusterisation (FTDigitisation v1r3) 

 - Changes to tests
   . Added several qmtests for the various upgrade configurations.
   . Adapt boole-2012-latestdb.ref and boole-2011-latestdb.ref to latest
     2011+2012 simcond tags (Calo calibration for Sim08)

2013-03-06 Boole v26r3

This version uses projects LCGCMT 64c, Gaudi v23r6, LHCb v35r4, Lbcom v13r4
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

- Bug fix release for upgrade simulation.

- Bug fixes
  . bugfix in VLClusterCreator (sorting of strips) (VLDigitisation v1r3)

2013-02-18 Boole v26r2

This version uses projects LCGCMT 64c, Gaudi v23r6, LHCb v35r4, Lbcom v13r4
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

- Development release for upgrade simulation.

- Changes to supported platforms
  . Add support for x86_64-slc6-gcc46 (I/O via Castor client not yet supported)
  . Remove support for i686-slc5-gcc43

- Functionality changes
  . Complete the support for three baseline upgrade detector configurations
    (See Lbcom+LHCb release notes for upgrade related changes)

- Changes to Configurable
  . Several changes to support Upgrade detectors and to propagate the 
    information to SimConf/DigiConf

- New tuning (FTDigitisation v1r2, FTDAQ v1r2)
  . Set the gain to 25 photoelectrons near SIPM, i.e. before attenuation.
  . Add a fluctuation to the gain, to avoid a comb structure in the ADC values.
  . Set the default pe/MeV to 86, the gain to 2 cx/p.e, add adc Noise (.5 cx)
  . Change the coding of charge, as the ADC will be 6 bits -> 1 MIP ~ 32 cx.

- Changes to references to follow changes in underlying packages
  . Adapt boole-2012-latestdb.ref and boole-2011-latestdb.ref to latest
    2011+2012 simcond tags (Velo closing around off centre beam position)

- Packaging changes
  . Add dependency on AIDA (OTSimulation v5r4)

2012-12-21 Boole v26r1

This version uses projects LCGCMT 64, Gaudi v23r5, LHCb v35r3, Lbcom v13r3
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Production release for MC/2012 simulation.
 - Development release for upgrade simulation.

 - Bug fixes
   . It was not possible to remove Rich or Muon from Boole().DetectorDigi
     because Rich/DigitSummaries and Muon/DigitsInfo were requested on the
     .digi file regardless of their presence in DigiConf().Detectors.
     Fixed in DigiConf.py (GaudiConf v17r3) 
   . When L0 emulation and monitoring are enabled (now off by default),
     monitoring was failing because L0Conf no longer saves L0 data in TES during
     emulation. Fixed by adding explicit decoding of L0 raw banks in L0
     monitoring sequence (L0DU v10r26, Boole v26r1)

 - Changes to tests
   . Tune exclusions so that tests pass also in ia32 platforms

 - Packaging changes
   . Remove unnecessary gaudi_depends_on_subdirs declaration in 
     BooleSys/CMakeLists.txt 

2012-12-12 Boole v26r0

This version uses projects LCGCMT 64, Gaudi v23r5, LHCb v35r3, Lbcom v13r3
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

- Production release for MC/2012 and Upgrade simulations

- Changes to configurable
  . DetectorDigi, DetectorLink, DetectorMoni slots are now lists, 
    no longer dictionaries
  . Added switches for upgrade detectors VL, VP, UT, RichPmt (off by default)
  . Use BuildMCTrackInfoUpgrade instead of BuildMCTrackInfo if upgrade
    detectors are enabled
  . Added new Property "SiG4EnergyDeposit", switch for Geant4/in-house
    energy deposit in Si Detectors (Velo, IT, TT, UT). Default value
    (False) replicates old behaviour.

- New functionality
  . Added support for upgrade detectors VL, VP, UT, RichPmt

- Persistency changes
  . Add support for .sim files produced without HepMCEvents (GaudiConf v17r1)

- Platform support
  . Introduces support for CMake and C++11 builds

- Computing performance optimisations
  . Protect many unprotected debug and verbose messages
  . New exit code (0x10) to flag corrupted input file
    (RootCnv v1r19, GaudiKernel v28r4)
  . Memory optimization for Root output buffers (RootCnv v1r18, v1r17)
      RootCnvSvc().BasketSize = 2*MBYTE
      RootCnvSvc().BufferSize = 2*kBYTE
      RootCnvSvc().SplitLevel = 0

- Bug fixes:
  . Error conditions during initialize (like failure to open a file) are now
    correctly propagated to application exit code (GaudiCoreSvc v1r3)
  . Propagate correct exit code after a segfault in C++ (Gaudi v23r5)

- Monitoring changes
  . Patch #5518: save TimingHistograms in job histograms (GaudiAlg v14r3)

- Changes to tests
  . Update boole.boole-mc11a-xdst test to test also new option SiG4EnergyDeposit
  . Adapt boole-2012-latestdb.ref to new local tags it-20121025, tt-20121025

2012-09-18 Boole v25r1

This version uses projects LCGCMT 64, Gaudi v23r3, LHCb v35r1p1, Lbcom v13r1p1
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Production release for MC/2012 simulation.

 - Bug fixes:
   . Run PuVetoFillRawBuffer in the DigiVeloSeq. Previously this was done in
     the L0 emulation, no longer done by default in Boole (L0DU v10r23, Boole)
     Ensures that PuVeto raw bank is available in RawEvent on .digi

2012-07-06 Boole v25r0

This version uses projects LCGCMT 64, Gaudi v23r3, LHCb v35r0, Lbcom v13r0
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Production release for MC/2012 simulation.

 - External dependencies changes
   . Uses LCGCMT v64. Relevant change is ROOT 5.34.00

 - New functionality
   . Added support for VL digitisation 
     (VLDigitisation v1r0, DAQEvent v9r8, DigiEvent v2r21, EventPacker v2r17,
      MCEvent v2r22, PackedEvent v4r11, LHCbKernel v13r11)

 - Configuration changes
   . Add new Boole().EnableL0 slot. Default is False: L0 emulation is no
     longer done by default, since it is more consistent to do it in Moore
   . Do not run a Link or Moni sequence for a sub-detector if that
     sub-detector is missing from the Digi sequence: now a sub-detector can
     be entirely switched off by removing it only from the Digi sequence

 - Persistency change
   . RawEvent simulated by Boole no longer contains L0 banks by default, should
     be done in Moore step (Boole v25r0, RichDigiSys v1r2)

 - New tuning
   . Force usage of DAQ/RawEvent in any decoding, following introduction of
     search list including Other/RawEvent location in decoders

 - Bug fixes
   . Fix gcc43/gcc46 differences in STDigitCreator (STDigiAlgorithms v2r2)
   . Fix unprotected debug() and verbose() messages
     (STDigiAlgorithms v2r2, GaudiCommonSvc v1r2)

 - Changes to tests
   . Add a test boole.boole-2012-latestdb. Currently using MC11 input sim file
   . Adapt boole-2011-latestdb.ref to new local tag velo-20120515

2012-05-04 Boole v24r0

This version uses projects LCGCMT 62b, Gaudi v23r2, LHCb v34r3, Lbcom v12r3
 and SQLDDDB v7r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Production release for first MC/2012 simulation.

 - External dependencies changes
   . Uses LCGCMT v62b. Relevant changes are ROOT 5.32.02 and Boost 1.48

 - Supported platforms and libraries
   . Added support for for gcc46 on slc5 (64-bit only)

 - Changes to configuration:
   . Force use of new SQLDDDB v7r* distribution scheme (DDDB v1r51)
   . Set default DataType to 2012
   . Added configuration for OTDoublePulse.root file which provides a 
     look-up-table (available in ParamFiles v8r7)
   . OTReadOutWindow algorithms updated to load readOutGate values from database.
     (OTDAQ v7r12)

 - Persistency changes
   . Removed support for POOL persistency
   . Change default Root compression algorithm to LZMA, with compression level 6
     (RootCnv v1r13)
     N.B. This setting should not be used for intermediate files to be deleted at
     the end of the production workflow, since it unnecessarily slows down Boole.
     Can be switched off with $APPCONFIGOPTS/Persistency/Compression-ZLIB-1.py
     (AppConfig v3r133)
   . Remove ProcessHeader::m_randomSeeds since they are not used anywhere and
     causes portability problems with persistency of vector
     (EventBase v3r0, DigiAlg v4r21)

 - New tuning
   . Introduce Velo radiation damage simulation, adds the effect of cross-talk on
     between hits and the second metal routing lines on the R sensors. When using
     DDDB and SIMCOND tags containing velo-20120120, this adds 10% "other" FEs,
     translates to 2% of clusters averaged over detector, 4% in R-sensors, due to
     this sort of coupling. For older DDDB tags it generates a warning about
     missing conditions. (VeloDet v13r18+v13r18p1, VeloSimulation v3r12)
   . Apply Hcal threshold in L0Calo emulation of 2012 data, reduces L0Calo bank
     size (L0Calo v11r7) 
   . Use LUT for L0Muon pt computation, with V3 as default
     (L0MuonKernel v9r7, L0Muon v9r10, ParamFiles v8r7)

 - Bug fixes
   . Fix switching off of Boost memory allocators in event model classes in debug
     builds, that was broken several LCGCMT releases ago
     (GaudiObjDesc v11r13, LHCbKernel v13r9)
   . Fix bug #92491: problems reading vector (ROOT 5.32.02)

 - Changes to tests
   . Remove boole.boole-mc10pool, writing POOL files no longer supported
   . Add a reference file for boole-2010-latestdb test, since 2010 geometry has
     evolved since MC10

2011-12-19 Boole v23r2

This version uses projects LCGCMT 61b, Gaudi v22r5, LHCb v33r2, Lbcom v11r2
 and SQLDDDB v6r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Development release for MC11b simulation.

 - Changes to configurables:
   . Allow more sorts of Rich digitisation sequences to be set up
     (RichDigiSys v1r1, Boole v23r2)
   . Add "NextNext" to default DigiConf().SpilloverPaths (GaudiConf v15r5)

 - New functionality
   . Prepare support for multiple Rich photodetector technologies
     (RichDigiQC v3r13, RichReadout v2r14, LHCb v33r1&v33r2, Lbcom v11r1&v11r2)
   . Improvements to allow running without an Aerogel volume (RichTools v2r39)

 - New tuning
   . Disable by default the ROOT tree caches in the event persistency
     (GaudiConf v15r3)
   . Use long long instead of long
     (RichAlgorithms v1r4, RichDAQ v3r35, RichMCMonitors v1r9, RichTools v2r39)

 - Bug fixes
   . Many fixes to trivial gcc46 warnings and icc11 remarks
     (MuonAlgs v6r10p1, MuonBackground v2r11p1, MuonMoniDigi v2r5 and many
      packages in underlying projects)
   . Fix IOExtension problem with SvcClass (GaudiConf v15r2)
   . Fix Root bug #87880: xrootd was returning wrong buffer length on rare
     occasions (Root 5.30.04)
   . Fix various UNINIT_CTOR defects, gcc46 warnings, icc11 remarks
   . Add some missing calls to GaudiAlgorithm::finalize (VeloDAQ v6r6)

 - Monitoring changes
   . In MuonDigitChecker NTuples, store event number as a longlong. Fixes a
     compilation issue when compiling against the fix to bug #85377 (change
     in Gaudi::Tuple to support ulonglong) (MuonMoniDigi v2r5)

 - Changes to tests
   . Add specific reference for boole-2011-latestdb, for post MC11a db changes

2011-10-21 Boole v23r1

This version uses projects LCGCMT 61, Gaudi v22r4, LHCb v33r0, Lbcom v11r0
 and SQLDDDB v6r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Production release for MC11 simulation.
 - No longer compatible with MC09

 - New tuning:
   . Remove Boole().IgnoreFlatSpillover option, now always set. Default number of
     beam crossings for flat spillover is 1296, set to 344 for 2010, 4 for 2009
     (Boole, MuonBackground v2r11)
   . Do not explicitly enable Muon low energy background, it is now run by 
     default for main events plus (if any) spillover events (max 4) 
     (MuonBackground v2r11)
   . New tuning for spillover in Muon (MuonBackground v2r11, MuonAlgs v6r10)
   . New tuning of Muon deadtime simulation (MuonAlgs v6r10)
   . Prevent creation of random noise in known Velo bad channels, avoids
     FPEs (VeloSimulation v3r11)

 - Bug fixes:
   . Fix IOExtension problem in Ganga when PFN has svcClass (GaudiConf v15r2) 

 - Changes to example options:
   . Remove Boole-FEST09.py, use $APPCONFIGOPTS/Boole/FEST-L0Yes.py instead
   . Remove Boole-MC09-NoTruth.py, Boole-MC09-WithTruth.py, MC09-Files.py
   . Remove Spillover-Files.py (was an MC09 file)
   . Add MC11-Files.py (example input file for MC11)

 - Changes to tests
   . Rename boole-fest09 to boole-fest, using an MC10 sim file instead of MC09
   . Replace boole-mc09-notruth with boole-mc10-notruth
   . Replace fixedfile-gauss-v37r0-mc09-sim by fixedfile-gauss-v39r4-mc10-sim,
     tests also FlatSpillover on MC10
   . Change boole-mc10 to fill also expert histos, replaces boole-mc09-withtruth
   . Replace boole-spillover by boole-mc11-spillover
   . Add boole-2011-latestdb, tests also mc11

2011-09-22 Boole v23r0

This version uses projects LCGCMT 61, Gaudi v22r4, LHCb v33r0, Lbcom v11r0
 and SQLDDDB v6r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Development release for MC11 simulation.

 - Changes to persistency:
  . Output files are now in ROOT format by default, can be read by Brunel v40r0
    or later. POOL output can be switched on by options.
    (GaudiConf v15r0, RootCnv v1r8, Gaudi v22r4, ROOT 5.30)
  . Write ROOT technology when creating output file entry in XmlCatalog
    (RootCnv v1r8)
  . Uses HepMC v2.06 for HepMCEvent, can be read by Brunel v41r0 or later
    (GenEvent v6r1, LCG 61)

 - Changes to configuration:
   . NextNext spillover slot is now processed by default if present on the input
     file and Spillover is enabled
   . Changed MCOTDepositCreator to use NextNext spill instead of reusing PrevPrev
     (OTSimulation v5r1)

 - Monitoring changes
   . Reduced verbosity from Gaudi persistency service initialisation
   . Monitor PrevPrev and NextNext directly in MCOTDepositMonitor instead of
     getting NextNext from PrevPrev (OTMonitor v3r3)

 - Changes to example options:
   . Replace 2010-Files.py by MC10-Files.py, produced with official MC10 settings
   . Rename Boole-2010.py to Boole-MC10.py

 - Changes to tests
   . Replace boole-2010 and boole-2010root with boole-mc10 and boole-mc10pool
   . Updated boole-2010-latestdb.qmt test to use MC10-Files.py and removed its
     reference file since it should give identical output to boole-mc10


2011-07-29 Boole v22r3

This version uses projects LCGCMT 60b, Gaudi v22r2, LHCb v32r5, Lbcom v10r5
 and SQLDDDB v6r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Development release for 2011 simulation.

 - Changes to configuration
   . Use new electron/photon L0 Calo algorithm for 2011 data type (old
     algorithm still used for 2010 and 2009) (L0Calo v11r4, L0DU v10r16)

 - Changes in functionality
   . Add support for Rich1 Aerogel tile by tile calibration
     (RochTools v2r36, RichDet v16r5, MCEvent v2r21)

 - New tuning
   . Protect many unprotected debug and verbose messages


2011-06-20 Boole v22r2

This version uses projects LCGCMT 60b, Gaudi v22r2, LHCb v32r4, Lbcom v10r4
 and SQLDDDB v6r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

 - Development release for 2011 simulation.

 - Changes in functionality
   . Add support for new ROOT persistency (Boole, GaudiConf v14r0, RootCnv v1r6)
   . Add support for BCM digitization, not yet integrated in Boole configurable
     (BcmDigi v1r0, DigiEvent v2r18, MCEvent v2r20)
   . Drop all support for DC06. This DataType is no longer recognised

 - Changes to configuration
   . Add "Persistency" slot to Boole (default POOL) and propagate to DigiConf
   . Set default DataType to "2011"
   . Remove support for writing L0ETC
   . Add default L0TCK for 2011 data (0x0032) (L0DU v10r15)

 - New tuning:
   . Added variable response with radius, to match data (VeloSimulation v3r10)
   . Add capability to vary response according to radiation damage
     (VeloSimulation v3r10)

 - Bug fixes:
   . Fix bug #80947 (access system-memory information, if process memory is >4GB)
     (GaudiKernel v27r14)
   . Recover precision in matrices for rotations through pi or halfpi
     (DetDesc v18r25, DetDescCnv v4r13)
   . Fix various warnings from coverity

 - Changes to tests:
   . Remove all slc4_ia32 specific references and exclusions
   . Explicitly set DataType=2009 in spillover test, was using default
   . Remove tests of writing L0ETC
   . Add test boole.boole-2010root to test ROOT persistency

2011-04-11 Boole v22r1

This version uses projects LCGCMT 60a, Gaudi v22r1, LHCb v32r2, Lbcom v10r2
 and SQLDDDB v6r*, ParamFiles v8r*, FieldMap v5r*, L0TCK v4r*, AppConfig v3r*

Development release for 2011 simulation.
Output data requires GaudiPoolDB v5r11 (i.e. Gaudi v22r1) to read

- Changes to supported platforms:
  . slc4_ia32_gcc34(_dbg), win32_vc71_dbg no longer supported
  . support added for i686-slc5-gcc43-{opt,dbg}
  . support in prepration for i686-winxp-vc9-dbg and x86_64-slc5-icc11-{opt,dbg}

- Persistency changes:
  . Backward incompatible persistency change in Root 5.28.00a, data produced
    with this release requires GaudiPoolDB v5r11 or later to read

- Changes to configuration:
  . Change ParamFiles dependency to v8r* (was v8r3)
  . Get L0Muon emulator FOI from TCK (L0Muon v9r3, L0DU v10r13, L0TCK v4r*)

- New functionality
  . Add support for DiMuonProd L0 line (L0DU v10r12, L0Event v19r2)
  . Added support for 2011 Rich gas mixture (RichDet v16r0,v16r2) 
  . Added support for lists of active and inactive HPDs (RichDet v15r3)
  . Backwards compatible rewrite the RichSmartID class to support MaPMTs and 
    HPDs, for Upgrade studies (LHCbKernel v13r0)

- Monitoring changes
  . Suppress Warning "Ingress/ODIN Event ID checks are disabled" (RichDAQ v3r30)
   
- Bug fixes
  . Various fixes for coverity defects and icc warnings and remarks
  . Fixes to hasvelopix, sort clusters for Upgrade MC (BooleUMC v1r3)
  . Fix to make barycenter id == cluster id for Upgrade (VeloPixAlgorithms v2r1)

2010-12-21 Boole v22r0

This version uses projects LCGCMT 58f, Gaudi v21r11, LHCb v31r8, Lbcom v9r9
 and SQLDDDB v5r44, ParamFiles v8r3, FieldMap v5r5, L0TCK v3r9, AppConfig v3r*

 - Development release for 2011 simulation. Currently identical to the MC10
   production version.

2010-12-08 Boole v21r9

This version uses projects LCGCMT 58f, Gaudi v21r11, LHCb v31r7, Lbcom v9r8
 and SQLDDDB v5r44, ParamFiles v8r3, FieldMap v5r5, L0TCK v3r9, AppConfig v3r*

 - Production release for MC 2010 simulation

 - New tuning
   . #114399 New Velo clustering tuning (VeloAlgorithms v5r3)
   . #114401 New Velo silicon simulation tuning (VeloSimulation v3r8)
   . New DDDB tunings for 2010 simulation:
     o rich-20101206: update Aerogel Rayleigh parameters and density
   . New SIMCOND tunings for 2010 simulation:
     o calo-20101202: calorimeter updates for 2010 simulation
     o calo-20101119: updated MC energy scale for Ecal and Hcal
     o rich-20101206: disable HPDs corresponding to last few weeks of 2010
     o rich-20101205: update default values of hit smearing
     o st-20101206: new ST dead strip maps for 2010 simulation   

 - Monitoring changes
   . #95668 Reduce CaloDet verbosity (CaloDet v10r8)

2010-10-28 Boole v21r8p1

This version uses projects LCGCMT 58f, Gaudi v21r11, LHCb v31r6p1, Lbcom v9r7p1
 and SQLDDDB v5r39, ParamFiles v8r3, FieldMap v5r5, L0TCK v3r*, AppConfig v3r*

- This is a dummy release of Boole to pick up the latest LHCb and Lbcom changes
  There are no changes in Boole itself.

- Bug fixes:
  . #90028 Fix loading of Online constants in SIMCOND partition (DetCond v12r6)

- Changes to tests
  . Add a test for latest 2010 database tags (boole.boole-2010-latestdb)

2010-10-04 Boole v21r8

This version uses projects LCGCMT 58f, Gaudi v21r11, LHCb v31r6, Lbcom v9r7
 and SQLDDDB v5r39, ParamFiles v8r3, FieldMap v5r5, L0TCK v3r*, AppConfig v3r*

This is a production version, for use in Upgrade simulations and in preparation
for 2010 end of year simulation productions

- New tuning:
  . Upgrade VeloPix MC: add VeloPixDigitsCreator with deadtime, time walk,
    ToT nonlinearity, electronic noise simulation and bulding MCTrackInfo
    for VeloPix. 
  . New tags picked up by default from SQLDDB v5r39 and DDDB v1r36
    o head-20101003 for DDDB. Changes include:
      + it-20101001: Fix wrong positioned IT support column in Station 2 Aside
      + it-20100930: Protection in IT geometry against rounding error
      + tt-20100820: Fix overlap between outer modules in TTb
    o MC09-20100921-vc-md100 for SIMCOND (bug fix to previous MC09 default tag)
    o MC-20101004-vc-md100 for 2009 SIM (bug fix to previous MC 2009 default tag)

- Bug fixes
  . Bug #71237: GaudiHistos treatment of HistoProduce incomplete (GaudiAlg v13r4)
  . Less verbosity in unpackers (EventPacker v2r5)

2010-08-26 Boole v21r7

This version uses projects LCGCMT 58e, Gaudi v21r10p1, LHCb v31r5, Lbcom v9r6
 and SQLDDDB v5r34, ParamFiles v8r2, FieldMap v5r5, L0TCK v3r5, AppConfig v3r*

- Version to pick up the new LHCb and Lbcom.

- Bug fixes
  . Fix size of dead region between inner/outer phi zones (VeloDet v13r12)
  . Remove DeRichSystem initialisation messages (RichDet v15r0)

2010-07-28 Boole v21r6p1

This version uses projects LCGCMT 58e, Gaudi v21r10p1, LHCb v31r4, Lbcom v9r5p1
 and SQLDDDB v5r33, ParamFiles v8r2, FieldMap v5r5, L0TCK v3r5, AppConfig v3r*


- It was discovered that LCG_58d has major problems with Oracle, Pyroot and Xerces.
  Gaudi v21r10p1 will pick up the patched LCGCMT.

- There are no ther changes in Boole

2010-07-22 Boole v21r6

This version uses projects LCGCMT 58d, Gaudi v21r10, LHCb v31r3, Lbcom v9r5
 and SQLDDDB v5r33, ParamFiles v8r2, FieldMap v5r5, L0TCK v3r5, AppConfig v3r*

Development version for 2010 simulation. 
For consistent deployment of bug fix #69634, should use input data from 
Gauss v38r7 or later, and reconstruct with Brunel v37r5 or later
Needs SQLDDDB v5r25 or later with SIMCOND tags from *-20100412*

- New tuning:
  . New ST charge calibration (SIMCOND tags sim-20100715-* from SQLDDDB v5r33)
  . Updated tune for eta correction (STTools  v4r3)
  . Use SiLandauFun (for MPV, scale of Landau) in SiDepositedCharge 
    (LHCbKernel v12r2, SiTools v1r8)

- Bug fixes:
  . Removal of spurious "Seckrb5" error when opening files with xrootd
    (Root 5.26.00c from LCGCMT_58d)
  . Fix bug #68626, small memory leak when connecting to SQLite database
    (CORAL_2_3_10 from LCGCMT_58d) 
  . Fix bug #69364: Wrong fractional mass calculation on composite material
    (DetDesc v18r21)
  . Fixed a few uninitialized variables, see bug #68795 (VeloDet v13r11)

- New packaging:
  . Uses Xerces 3.1.1 from LCGCMT_58d, requiring adaptation of XML parsing C++
    (L0MuonKernel v9r3)


2010-06-24 Boole v21r5

This version uses projects Gaudi v21r9, LHCb v31r2, Lbcom v9r4
 and SQLDDDB v5r30, ParamFiles v8r2, FieldMap v5r4, L0TCK v3r1, AppConfig v3r*

Development version for 2010 simulation. 
Output needs Brunel v37r4
Needs SQLDDDB v5r25 or later with SIMCOND tags from *-20100412*

 - New tuning:
   . Upgrade MC: Improved spillover subtraction for Velo and TT (BooleUMC v1r1)
   . New tuning of ST charge sharing and capacitive coupling
     (STDigiAlgorithms v2r1). N.B. This change requires the corresponding change
     in hit error estimates in Brunel v37r4
   . Changed calculation of effect of Lorentz angle (STTools v4r2)
   . Changed methods for ST noise and efficiency calculations (STTools v4r2)

 - Monitoring changes
   . New ST cluster monitoring histograms (STMonitors v3r2)
   . Reduced verbosity of CondDBEntityResolver (CondDBEntityResolver v5r2) 

 - Changes to tests
   . Add a test to check presence of all expected configurables (BooleSys)

 - Changes to example options:
   . Access all castor files via xrootd protocol

2010-06-03 Boole v21r4

This version uses projects Gaudi v21r9, LHCb v31r1, Lbcom v9r3
 and SQLDDDB v5r30, ParamFiles v8r2, FieldMap v5r4, L0TCK v3r1, AppConfig v3r*

Production version for 2010 simulation. 
Output needs Brunel v35r8 to v37r3, Brunel v36r0 if decoding L0DU bank
Needs SQLDDDB v5r25 or later with SIMCOND tags from *-20100412*

- Configuration changes:
  . New default tag for MC09: MC09-20100430-vc-md100 for SIMCOND (DDDB v1r31)

- New tuning:
  . Fix to match harware behaviour : topology of tile exchange for M2 has been
    modified. It affects exchanges across different regions (in practise R2->R3)
    (L0MuonKernel v9r2)

2010-05-10 Boole v21r3

This version uses projects Gaudi v21r9, LHCb v31r0, Lbcom v9r2p1
 and SQLDDDB v5r27, ParamFiles v8r2, FieldMap v5r3, L0TCK v3r1, AppConfig v3r*

Production version for 2010 simulation. 
Output needs Brunel v35r8 to v37r3, Brunel v36r0 if decoding L0DU bank
Needs SQLDDDB v5r25 or later with SIMCOND tags from *-20100412*

 - Configuration changes
   . By default, no longer simulate random triggers starting from elastic and
     diffractive events (DigiAlg v4r20)

 - Persistency changes
   . (DigiAlg v4r20) By default all events in ODIN are  
     o TriggerType = LHCb::ODIN::LumiTrigger,
     o BXType = LHCb::ODIN::BeamCrossing
     o BunchCurrent = 8 + (8<<4)

2010-04-28 Boole v21r2

This version uses projects Gaudi v21r9, LHCb v31r0, Lbcom v9r2
 and SQLDDDB v5r26, ParamFiles v8r2, FieldMap v5r3, L0TCK v3r1, AppConfig v3r*

Production version for 2010 simulation. 
Output needs Brunel v35r8 to v37r3, Brunel v36r0 if decoding L0DU bank
Needs SQLDDDB v5r25 or later with SIMCOND tags from *-20100412*

 - Changes to configuration:
   . Do not select any trigger type by default if "ODIN" is in 
     Boole().FilterSequence, because all events are now LHCb::ODIN::LumiTrigger
     TriggerType
   . L0 default TCK now set for 2009 (0x1309) and 2010 (0x1810) data types
     (L0DU v10r6)
   . Use of CondDB for L0Muon FOI (L0DU v10r6). Not implemented in SIMCOND
     for MC09 and before, must be given as options
   . Event processing time watchdog now disabled by defalut. Enable with
     ApplicationMgr().StalledEventMonitor = True (Gaudi v21r9)

 - Persistency changes
   . BooleInit now always sets TriggerType = LHCb::ODIN::LumiTrigger in ODIN,
     to follow what happens in real hardware and to allow Moore to have similar
     behaviour as on real data. Previously, LHCb::ODIN::LumiTrigger was marking
     simulated random triggers. Treatment of BXType should be reviewed
     (DigiAlg v4r18)

 - New tuning
   . New tuning of ST capacitive coupling, using strip capacitance for the
     calculation (STDigiAlgorithms v2r0)
   . Update ST common mode simulation (STDigiAlgorithms v2r0)
   . Generate noise strips down to S/N = 2.5 (STDigiAlgorithms v2r0)
   . ST cluster cuts and noise now taken from SIMCOND 
     Not usable for MC09 and previous: not implemented in SIMCOND. 
     (STAlgorithms, STDigiAlgorithms, STTools)
   . Improved handling of return code at exit (Gaudi v21r9)

 - New functionality
   . Add support for new RICH background source; Scintillation in the CF4 
     radiator medium (MCEvent v2r17)
   . Added the capability to use the C3F8  as RICH1Gas in DeRichGasRadiator.cpp
     (RichDet v14r1)

 - Bug fixes
   . Bug fix for LFC plugin library of CORAL (CORAL_2_3_9, LCG_58c)

 - Monitoring changes
   . Velo decoding protected against excessive clusters (VeloDAQ v5r1)
   . Fixes to STCluster monitoring (STMonitors v3r1)

 - Changes to example options
   . In MC09-Files.py, set L0 TCK for MC09 explicitly, no longer the default
   . Add 2010-Files.py, example input files for 2010 digitization
   . In Boole-2010.py, 
     o remove explicit setting of TCK 0x1810, now the default
     o remove explicit setting of L0Muon FOI, now picked up from SIMCOND

 - Changes to tests
   . Add python/Boole/QMTest/BooleExclusions.py and use it in the tests
   . Add a test for 2010 simulation

2010-03-30 Boole v21r1

This version uses projects Gaudi v21r8, LHCb v30r0, Lbcom v9r0
 and SQLDDDB v5r23, ParamFiles v8r2, FieldMap v5r3, L0TCK v3r1, AppConfig v3r*

Production version for 2009 simulation and for tuning of 2010 simulation. 
Output needs Brunel v35r8 to v37r3, Brunel v36r0 if decoding L0DU bank
Needs SQLDDDB v5r23 or later with SIMCOND tags from *-20100321*

 - New tuning
   . New tuning of Velo digitization (see talk at PPM on 2010-03-29):
     o Changed simulation to match 2009 collision data and TELL1 style cluster 
       maker, gain is lower 601 ADC per electron instead of 442 and smaller noise
     o Added an optimisation to only make isolated MCVeloFEs if they could start
       a cluster, still use inclusion threshold for FEs next to an FE with signal
     o Change timing curve to match data from tests on the cold detector
     o Fix simulation of NZS data to generate gaussian noise not gaussian tail
       noise
     o New niose per strip values to match 2009 data (SIMCOND tags *-20100321*)
       (VeloSimulation v3r8, VeloAlgorithms v5r2, SQLDDDB v5r23)
   . New noise values, cluster thresholds and dead strip maps in IT and TT to
     match 2009 data (SQLDDDB v5r23 with SIMCOND tags from *-20100321*)

 - Changes to configuration
   . L0MuonAlg now obtains FOI from CondDB (SoftFOI condition) 
     (L0Muon v9r1, SQLDDDB v5r23 with SIMCOND tags from *-20100321*)

 - Bug fixes
   . Bug fix in noise update methods [local cache not updated] (STDet v4r18)
   . Now handles SIGXCPU signal, stopping gracefully if LSF time limit exceeded
     (GaudiSvc v18r8, patch #3875)

 - Monitoring changes
   . Change some ST monitor histograms (STMonitors v2r6) 
   . Reduce Warning/Error messages to debug if there is a sensor with no 
     MCVeloFEs

2010-03-02 Boole v21r0

This version uses projects Gaudi v21r7p1, LHCb v29r2, Lbcom v8r3
 and SQLDDDB v5r20, ParamFiles v8r2, FieldMap v5r3, L0TCK v3r1, AppConfig v3r*

Development version for tuning of 2010 simulation. 
Output needs Brunel v35r8 to v37r3, Brunel v36r0 if decoding L0DU bank
Needs SQLDDDB v5r19 or later with tags from *-20100202*

 - New tuning
   . Change default of STRndmChannelIDSelector: list of dead channels is now
     taken from SimCond, so random inefficieny no longer applied (STTools v3r17)
   . Major retuning of OT digitization (OTSimulation v5r0)
     o Changed 3D path length in the cell efficiency
     o Fix the effective ionization density for matching the data in the cell
       efficiency 
     o Fix the level of cross talk to match data 2.5% --> 0.5%
     (see talk at PPM on 2010-02-22)
   . Improve consistency checks in L0DU emulation (L0DU v10r3)

 - Persistency changes
   . Improve output paths in the VeloPix linkers
     (VeloPixAssociators v1r1, GaudiConf v13r4p1)

 - Bug fixes
   . Fix bug preventing Spd threshold to be larger or equal to 1 mip in
     CaloDigitAlg (CaloDet v10r4)


2010-02-19 Boole v20r3

This version uses projects Gaudi v21r7p1, LHCb v29r1, Lbcom v8r2
 and SQLDDDB v5r20, ParamFiles v8r2, FieldMap v5r3, L0TCK v3r1, AppConfig v3r*

Version for initial 2010 3.5 TeV productions. 
Output needs Brunel v35r8 to v37r3, Brunel v36r0 if decoding L0DU bank
Needs SQLDDDB v5r19 or later with tags from *-20100202*

 - Changes to configuration:
   . Default DataType is now 2010 (Boole v20r3)
   . As from 2010 DataType, SIMCOND tag must be specified (no default) 
     (DDDB v1r28)
   . Prepare L0Muon emulator to obtain trigger parameters from CondDB
     (L0MuonKernel v9r0, L0Muon v9r0)

 - Changes to functionality
   . Proper emulation of L0DU hardware
     (L0Event v18r1, L0DU v10r2, needs L0TCK v3r1)

 - New tuning
   . Better associate clusters to MCParticles with MCHits from delta rays
     (VeloAssociators v2r4)

 - Bug fixes
   . Proper handling of magnetic field (RichDet v13r4)
   . Fix incompatibility issue with DCache server, introduced in Boole v20r1
     (ROOT 5.26.00b)

 - Monitoring changes
   . Changes to STClusterMonitor (STMonitors v2r4)
   . Hardware consistency check of L0TCKs (L0DU v10r2)

 - Changes to example options:
   . Add Boole-2010.py, example options for 2010 simulation. Uses new options
     in AppConfig v3r37

 - Changes to tests
   . boole.boole-mc09-withtruth now also tests IgnoreFlatSpillover option

2010-02-08 Boole v20r2

This version uses projects Gaudi v21r7, LHCb v29r0, Lbcom v8r1
 and SQLDDDB v5r20, ParamFiles v8r2, FieldMap v5r3, L0TCK v3r0, AppConfig v3r*

Version for 2009 450 GeV productions. 
Output needs Brunel v35r8 to v37r3, Brunel v36r0 if decoding L0DU bank
Needs SQLDDDB v5r19 or later with tags from *-20100202*

 - Changes to Configurable:
   . Add IgnoreFlatSpillover slot, switches off FlatSpillover in Muon
     digitization. Temporary patch to be used for low luminosity conditions

 - New functionality
   . L0CaloAlg now uses condition database to decide if we use ECAL in the Hadron
     trigger, and PS/SPD in the ECAL triggers
     (available starting from tags *-20100202*, SQLDDDB v5r19) (L0Calo v11r0)

 - Bug fixes
   . Fixes in PuVetoFillRawBuffer bug fixed: m_PUcontainer inizialized per event,
     swap in the LUT found and corrected (PuVeto v7r6)
   . Removed obsolete OTTimeCreator from OT monitoring sequence in Boole.opts
     (see task 12764) (OTMonitor v3r2p1)

2010-01-26 Boole v20r1

This version uses projects Gaudi v21r7, LHCb v29r0, Lbcom v8r0
 and SQLDDDB v5r18, ParamFiles v8r2, FieldMap v5r3, L0TCK v1r5, AppConfig v3r*

Version for 2009 450 GeV productions. 
Output needs Brunel v35r8 to v37r3, Brunel v36r0 if decoding L0DU bank
Needs SQLDDDB v5r4 or later with tags including calo-20090508 or later

 - Changes to Configurable:
   . Change structure and names of sub-detector sequences in the process phases,
     to allow usage with Upgrade detector

 - Persistency changes
   . New L0DU bank format (version v2) to accomodate Lumi Trigger decisions.
     Needs Brunel v36r0/DaVinci v25r0 to decode (L0DU v10r0)

 - New functionality
   . Possibility to digitize VeloPix detector (VeloPixAlgorithms v1r0, 
     VeloPixAssociators v1r0, VeloPixDAQ v1r0, DigiEvent v2r15, GaudiConf v13r3)
   . Implement Lumi decisions in L0 (L0DU v10r0, L0Event v18r0)

 - New tuning
   . Change Calo ADC -> L0ADC conversion to reflect what is done in electronics
     (CaloDigit v3r2)
   . Changed default tags for 2009 DataType (DDDB v1r27, SQLDDDB v5r18):
     o head-20100119         for DDDB
     o sim-20100119-vc-md100 for SIMCOND
   . New (single) condition for the temperature and pressure of the Gas Radiators
-    (RichDet v13r2)

 - Packaging changes
   . Restructuring of L0 configurables, code and options
     (L0DU v10r0, L0Muon v8r6, L0Base v1r3, L0Interfaces v1r6)

 - Bug fixes
   . Fix untested StatusCodes (VeloAlgorithms v5r1)
   . Fix to file sharing in FileRecordCnvSvc (Gaudi v21r7)
   . Fix uninitialized variable in CellParam constructor (CaloDet v10r3p1)
   . Fix bug #60276: SolidPolycone does not define a correct bounding box
     (DetDesc v18r18)

 - Monitoring changes
   . Improved printout from L0 configuration (L0Calo v10r3, L0DU v10r0)
   . Changes to L0DU monitoring (L0DU v10r0)

2009-12-08 Boole v20r0

This version uses projects Gaudi v21r6, LHCb v28r4, Lbcom v7r10
 and SQLDDDB v5r16p1, ParamFiles v8r2, FieldMap v5r3, L0TCK v1r2, AppConfig v3r*
 plus the following patches: OTAssociators v4r4

Version for post-MC09 developments. Output needs Brunel v35r8 to v37r3
Needs SQLDDDB v5r4 or later with tags including calo-20090508 or later

 - Changes to configuration:
   . Change Boole().VeloTell1Processing default to True

 - New tuning:
   . Velo Tell1 emulation (available since Boole v19r8) replaces VeloSim as
     default digitisation and clusterisation
   . Improved comparison of floating point numbers (DetDesc v18r17)

 - Persistency changes:
   . Task 12542: Delta time cut applied when creating OTMCDepositLinker table
     loosened to 9ns (3 sigma). This delta time is entered as weight in this 
     table, and can be used as a cut when determining pattern recognition
     efficiencies. (OTAssociators v4r4)

2009-11-27 Boole v19r9

This version uses projects Gaudi v21r6, LHCb v28r3, Lbcom v7r9
 and SQLDDDB v5r15, ParamFiles v8r2, FieldMap v5r3, L0TCK v1r2, AppConfig v3r*
 plus the following patches: EventPacker v2r1, GaudiConf v13r1, OTMonitor v3r1

Version for post-MC09 developments. Output needs Brunel v35r8 to v37r3
Needs SQLDDDB v5r4 or later with tags including calo-20090508 or later

Also supports simulation of upgrade geometry, this requires
SQLDDDB v5r12 or later, AppConfig v3r5 or later

 - Changes to configuration:
   . Improve robustness of unpacking sequence (GaudiConf v13r1, EventPacker v2r1)
   . Changed default tags for 2009 simulation (DDDB v1r24, SQLDDDB v5r15):
     o head-20091120         for DDDB
     o sim-20091112-vc-md100 for SIMCOND

 - Persistency changes:
   . Kill MC/Rich node if writing packed MCRichDigits, to avoid loading .sim
     file when unpacking them in Brunel (GaudiConf v13r1)

 - New tuning:
   . New version of L0MuonKernel.xml: new mapping in M1R2 following hardware real
     implementation (ParamFiles v8r2)

 - Monitoring changes
   . Remove obsolete "occupancy in T1 layer 1 versus x coordinate" histogram from
     OTTimeMonitor (was crashing anyway...) (OTMonitor v3r1)
   . OTTimeMonitor now uses OTLiteTimes (OTMonitor v3r0)

 - Changes to QMTests:
   . Added a test for the fixedfile from Gauss v37r0 as in task 12602
     (fixedfile-gauss-v37r0-mc09-sim)

2009-11-19 Boole v19r8

This version uses projects Gaudi v21r6, LHCb v28r2, Lbcom v7r8
 and SQLDDDB v5r14, ParamFiles v8r1, FieldMap v5r3, L0TCK v1r2, AppConfig v3r*

Version for post-MC09 developments. Output needs Brunel v35r8 to v37r3
Needs SQLDDDB v5r4 or later with tags including calo-20090508 or later

Also supports simulation of upgrade geometry, this requires
SQLDDDB v5r12 or later, AppConfig v3r5 or later

 - Changes to Configuration:
   . Definition of MC content of DIGI is delegated to SimConf configurable
     (GaudiConf v13r0)
   . New option Boole().ProductionMode", special settings for running in
     production, replaces "NoWarnings" option (kept for backward compatibility)
   . Added Velo Tell1 digitisation and clusterisation line
     + introduces bit perfect Tell1 code (actually a high level model of the 
       firmware that is run on the VELO acquisition boards)
     + Switched on by new option Boole().VeloTell1Processing
     (VeloDAQ v4r11, VeloAlgorithms v5r0, Tell1Kernel v1r9) 

 - Persistency changes:
   . All MC information on DIGI is now packed. Controlled by Boole().EnablePack
     (EventPacker v2r0, PackedEvent v3r7, GaudiConf v13r0)
   . "Extended" DIGI format now includes packed MC hits, and Spillover containers
     (GaudiConf v13r0)

 - New tuning:
   . Apply patch #3399 XmlGenericCnv uses inneficient part of Xerces-C API for
     DOM walking. Speeds up loading LHCb geometry by about 10% (DetDescCnv v4r10)
   . Modifiled BooleInit to use the new "LumiTrigger" name of ODIN trigger type,
     instead of "RandomTrigger", for consistency with real data
     (DigiAlg v4r18, DAQEvent v8r2)

 - Bug fixes:
   . Modified the dictionary for DataObject to make the version persistent.
   . Fixed bug #57416: improve IncidentSvc printout when an exception is thrown
     by handlers (GaudiSvc v18r8)
   . Fix a memory leak in XmlGenericCnv.cpp (DetDescCnv v4r10)

 - Monitoring changes:
   . Removed test on MCParticle/MCVertex packing and unpacking
     (does not make sense here, should be done in Gauss)

2009-10-22 Boole v19r7

This version uses projects Gaudi v21r5, LHCb v28r1, Lbcom v7r7
 and SQLDDDB v5r13, ParamFiles v8r1, FieldMap v5r3, L0TCK v1r2, AppConfig v3r*

Version for post-MC09 developments. Output needs Brunel v34r3 or later
Needs SQLDDDB v5r4 or later with tags including calo-20090508 or later

Also supports simulation of upgrade geometry, this requires
SQLDDDB v5r12 or later, AppConfig v3r5 or later

 - Changes to configuration
   . Improve handling of spillover:
     + New option "UseSpillover", default False. If True, enables spillover and
       enables access to branches defined in SpilloverPaths
     + Access to any branches not defined in SpilloverPaths is disabled
     + If "UseSpillover" is False, access to all SpilloverPaths is disabled
   . Add support for XmlSummary (not yet filled). Enabled by setting
     LHCbApp().XMLSummary = True
     (GaudiConf v12r9, XmlSummaryKernel v1r0, XmlSummaryBase v1r0, Gaudi v21r5)

 - Changes to persistency (GaudiConf v12r9)
   . Make writing of spillover headers compulsory if SpilloverPaths are set
   . When saving spillover, save also spillover Gen headers
   . Kill all known Spillover nodes when saving "Minimal" format

 - Changes to example options
   . Add options/Boole-Spillover.py, options/Spillover-Files.py: examples for
     enabling spillover

 - New tuning
   . Speed up initialisation through optimisation of Muon geometry (remove
     detector elements for gas gaps). Enabled only for post-MC09 geometries,
     requires SQLDDDB v5r13 or later
     (MuonDet v9r0, MuonAlgs v6r9, MuonBackground v2r10)
   . Remove calls to ChronoStatSvc in execute (L0Muon v8r5p2)
   . Save memory with alignment of libraries (GaudiPolicy v10r3)

 - Bug fixes
   . Many fixes reference counting. Now OutputStream no longer crashes when many
     streams are defined, and Algorithms are deleted on program termination 
     (Gaudi v21r5)
     (GaudiKernel v27r5, GaudiSvc v18r5, GaudiAlg v12r4)
   . Work around for crash when RichDetailedFrontEndResponse is deleted
     (RichReadout v2r12p1)

 - Changes to monitoring
   . New printout and histograms of memory usage statistics (LHCbAlgs v2r29)

 - Additional internal changes (transparent)
   . Follow changes in CaloCellCode functions (CaloDigit v3r1)
   . Modifications to BeginEvent handling in CaloDAQ
     (CaloDAQ v4r14, CaloTools v5r12, L0Calo v9r22, L0DU v8r19)

 - Changes to tests
   . Add a qmtest for spillover

2009-09-28 Boole v19r6

This version uses projects Gaudi v21r4, LHCb v28r0, Lbcom v7r6
 and SQLDDDB v5r12, ParamFiles v8r1, FieldMap v5r3, L0TCK v1r2, AppConfig v3r*

Version for post-MC09 developments. Output needs Brunel v34r3 or later
Needs SQLDDDB v5r4 or later with tags including calo-20090508 or later

Also supports simulation of upgrade geometry, this requires
SQLDDDB v5r12 or later, AppConfig v3r5 or later

 - Changes to configuration
   . Introduce new DataType 'Upgrade' for upgrade simulations
     (Boole v19r6, BooleUMC v1r0, DDDB v1r22)
     o modifies Velo,ST sequences to do spillover subtraction
     o shortens OT integration gate to 50ns
     o sets DDDB tag for the first Minimal Upgrade Layout release (mul-20091917)
     
 - Changes to options:
   . Add Boole-Upgrade-WithTruth.py -NoTruth.py referencing AppConfig Upgrade
     options

 - New tuning:
   . Added support for zipped InstallArea/python directories on the PYTHONPATH,
     speeds up the python configuration part of the initialisation (Gaudi v21r4)
   . New default DB tags for 2009 simulation: head-20090902 for DDDB,
     sim-20090902-vc-md100 for SIMCOND. Fixes rotation of Rich1 HPDs, updates IT
     dead strip+noise files (SQLDDDB v5r11, v5r10)

 - Monitoring changes
   . Changes to STClusterMonitor histograms (STMonitors v1r6)

 - New packaging: 
   . Added the pattern container_package to BooleSys/cmt/requirements
	 . Add dependence on Digi/BooleUMC with upgrade specific algorithms and options

2009-07-30 Boole v19r5

This version uses projects Gaudi v21r3, LHCb v27r5, Lbcom v7r5
 and SQLDDDB v5r9, ParamFiles v8r1, FieldMap v5r3, L0TCK v1r2, AppConfig v3r*

Version for post-MC09 developments. Output needs Brunel v34r3 or later
Needs SQLDDDB v5r4 or later with tags including calo-20090508 or later

 - Changes to configuration:
   . Change default data type to "2009"

 - New functionality
   . Implement RAMBCID data (L0DU v8r18, L0Event v17r7, L0Interfaces v1r5)
   . Build MDF header bank using ODIN information (MDF v3r19)

 - New tuning:
   . Avoid pushing hardwired filenames into JobOptionsSvc by expanding
     environment variables 'late' (L0Muon v8r5p1)
   . Changes in STTools initialization printout (STTools v3r11)
   . Prevent creation of local MsgStream objects by caching one per detector 
     element, speeds up geometry access (VeloDet v13r8)

 - New packaging:
   . Use AppConfig v3r*

 - Changes to example options:
   . Update FEST options to pick up new defaults from AppConfig v3r*
   . In MC09 example options, set MC09 DataType and remove import *

2009-07-16 Boole v19r4

This version uses projects Gaudi v21r3, LHCb v27r4, Lbcom v7r4
 and SQLDDDB v5r9, ParamFiles v8r1, FieldMap v5r3, L0TCK v1r2, AppConfig v2r*

Version for post-MC09 developments. Output needs Brunel v34r3 or later
Needs SQLDDDB v5r4 or later with tags including calo-20090508 or later

- Changes to configuration
  . If DDDB tags not explicitly set, use DDDBConf defaults for given DataType
    (previously setting of DDDBtag and CondDBtag was compulsory)(GaudiConf v12r7)
  . Changed default tags for 2009 DataType (DDDB v1r20)
    o head-20090713         for DDDB
    o sim-20090713-vc-md100 for SIMCOND

- Changes to monitoring
  . Modified STClusterMonitor to book histograms at initialize (STMonitors v1r5)


2009-07-02 Boole v19r3

This version uses projects Gaudi v21r2, LHCb v27r3, Lbcom v7r3
 and SQLDDDB v5r8, ParamFiles v8r1, FieldMap v5r3, L0TCK v1r2, AppConfig v2r*

Version for post-MC09 developments. Output needs Brunel v34r3 or later
Needs SQLDDDB v5r4 or later with tags including calo-20090508 or later

- New tuning
  . gaudirun.py has new -T (or --tcmalloc) option, switches on tcmalloc as memory
    allocator (Gaudi v21r2)

- Changes to configurables
  . Add new Boole().OutputLevel property to Boole allow overall control of the
    printout levels. This property is propagated to other Configurables.
    This (partly) obsoletes the NoWarnings property, but it is still
    needed for backwards compatibility with Dirac. (Boole v19r3, GaudiConf v12r6)

- Changes to build configuration
  . Optimised libraries now built without -s option, to give meaningful stack
    trace information in case of crashes (Gaudi v21r2)
  . New make option "QUICK=2" to skip dependency calculation (Gaudi v21r2)
  . _dll.cpp files no longer needed (Gaudi v21r2)

- Bug fixes
  . Set initial event time for DC06 data (avoids problems with ONLINE snapshots)
    (DDDB v1r19)

2009-06-22 Boole v19r2

This version uses projects Gaudi v21r1, LHCb v27r2, Lbcom v7r2
 and SQLDDDB v5r8, ParamFiles v8r1, FieldMap v5r3, L0TCK v1r2, AppConfig v2r*

Version for post-MC09 developments. Output needs Brunel v34r3 or later
Needs SQLDDDB v5r4 or later with tags including calo-20090508 or later

 - New packaging:
   . Move most of SuppressWarnings.opts functionality into Boole() and LHCbApp().
     Only sub-detector specific suppressions remains in SuppressWarnings.opts
     (Boole v19r2, GaudiConf v12r5)

 - Changes to monitoring
   . Cleanups in L0Calo monitoring (L0Calo v9r21)
   . Fixes to Rich data size monitoring (RichDAQ v3r24)

2009-06-08 Boole v19r1

This version uses projects Gaudi v21r1, LHCb v27r1, Lbcom v7r1
 and SQLDDDB v5r7, ParamFiles v8r1, FieldMap v5r3, L0TCK v1r2, AppConfig v2r*

Version for post-MC09 developments. Output needs Brunel v34r3 or later
Needs SQLDDDB v5r4 or later with tags including calo-20090508 or later

 - Monitoring changes
   . Fix unused StatusCode in STClusterMonitor (STMonitors v1r2)

 - Changes to tests:
   . Add preprocessor that can be given to the QMTest ValidateWithReference 
     function to exclude lines expected to change in the QMTest output
     (GaudiConf v12r3)

 - New packaging
   . Moved STClusterMonitor and STLiteClusterMonitor into ST namespace. 
     (STMonitors v1r2)

2009-05-14 Boole v19r0

This version uses projects Gaudi v21r0, LHCb v27r0, Lbcom v7r0
 and SQLDDDB v5r4, ParamFiles v8r1, FieldMap v5r2, L0TCK v1r2, AppConfig v2r*

Version for post-MC09 developments. Output needs Brunel v34r3 or later
Needs SQLDDDB v5r4 or later with tags including calo-20090508 or later

 - New packaging
   . Add Digi/Boole/tests/qmtest/python directory to PYTHONPATH in QMTest case
   . Boole-MC09-NoTruth.py, Boole-MC09-WithTruth.py now simply forward to
     corresponding options in AppConfig

 - Functionality changes
   . CaloDigitAlg gets digitization parameters from CondDB 
     Needs SQLDDDB v5r4 or later with tags including calo-20090508 or later
     (CaloDigit v3r0, CaloDet v12r2)
   . Add L0Conf().TCK property, used to specify a TCK for the simulation
     (L0DU v8r16)

 - New tuning
   . New calorimeter calibration (SQLDDDB v5r4, tag calo-20090508)
   . New muon chamber time response (SQLDDDB v5r4, tag muon-20090506)
   . Changes to speed up geometry initialization (DetDescCnv v4r9, XmlTools v6r3)

 - Bug fixes
   . Fix valgrind.job to work with new Lblogin environment
   . Correctly sort OT deposits according to time and geometry, Correctly apply
     analog dead time window (OTSimulation v4r2)
   . Correctly apply window in OTMCDepositLinker. Add dtime as weight 
     (OTAssociators v4r3)
   . Do not print errors for missing gap (MuonDet v8r5)
   . Fix a typo in MCTrackInfo VeloAndT acceptance (MCEvent v2r14)

 - Monitoring changes
   . New STCluster selectors (STTools v3r9)

 - Changes to tests and example options:
   . Clean up *.qms files following Gaudi v21 changes
   . Add tests/qmtest/python/BooleExclusions.py, contains shared lines for
     exclusion from reference comparisons in QMTests, imported by *.qmt
   . MC09-Files.py uses new database tags from SQLDDDB v5r4 to pick up new
     calorimeter calibration and Muon chamber time response

2009-04-14 Boole v18r0

This version uses projects Gaudi v20r4, LHCb v26r3, Lbcom v6r27
 and SQLDDDB v5r3, ParamFiles v8r1, FieldMap v5r2, L0TCK v1r1, AppConfig v2r*

Production version for MC09. Output needs Brunel v34r3 or later

 - New packaging
   . Explicitly use CASTOR from LCG_Interfaces for QMTests

 - Functionality changes
   . Remove possibility to add spillover, now done in Gauss, needs Gauss v36r3
     o Boole().SkipSpill option removed
     o Boole().UseSpillover used to steer spillover usage in sub-detectors
     o Boole().SpilloverPaths now defines which paths to use from input file
   . Remove DC06 support
   . Remove obsolete option Boole().WriteL0Only
   . Remove Boole().UseOracle flag, set it directly in CondDB configurable
   . Add BooleInit().PrintEventTime (default False) (DigiAlg v4r16)

 - Persistency changes
   . DIGI content now defined by DigiConf() configurable, steered by 
     Boole().DigiType, possible values ['Minimal','Default','Extended']
     o Boole().DigiType = 'Extended' replaces Boole().ExtendedDigi
     o Boole().DigiType = 'Minimal' contains RawEvent, GenHeader, MCHeader and
       MC truth for the primary vertices only in MC/Vertices (uncompressed,
       this container is filtered by the new algorithm FilterMCPrimaryVtx
       (DigiAlg v4r16, GaudiConf v12r2)
   . Add two new data members to GenHeader, the total inelastic cross section
     and frequency of crossing of filled-filled bunches (GenEvent v5r5)

 - New tuning
   . Adapt to removal of SpilloverAlg (MuonAlgs v6r8, MuonBackground v2r9)
   . Add sanity checks to avoid switching off linkers needed by monitors
     o For MDF and 'Minimal' DIGI output only run Link sequences needed for
       monitoring
   . New default L0 TCK with tuning for MC09 (L0DU v8r15, L0TCK v1r1)

 - Bug fixes
   . Protect divides by zero in MCOTDepositMonitor in case of empty events
     (OTMonitor v2r10)
   . Fix untested StatusCodes (RichDAQ v3r23p1)

 - Monitoring changes
   . MuonDigitization::finalize prints number of hits found not inside gap
     (MuonAlgs v6r8)

 - Changes to tests and example options:
   . Add options for MC09 simulation: 
     Boole-MC09-NoTruth.py, Boole-MC09-WithTruth.py, MC09-Files.py
   . Add tests for MC09 simulation: boole-mc09-notruth, boole-mc09-withtruth
   . Input file for FEST09 test changed to latest Gauss file in MC09-Files.py
   . Move Expert histograms QMTest from FEST09 test to MC09-WithTruth test
   . Add printing of event time to boole-fest09 test
   . Remove options and tests for 2008 and DC06 simulations 
   . Remove obsolete file Copy.opts
   . Remove .slc4_amd64 from filename of default test refs, to provide default
     also for other platforms 

2009-02-26 Boole v17r3

This version uses projects Gaudi v20r4, LHCb v26r2, Lbcom v6r26
 and SQLDDDB v5r2, ParamFiles v8r0, FieldMap v5r2, L0TCK v1r0, AppConfig v2r*

Pre-production version for DC09. Output needs Brunel v34r1 or later

 - Configuration changes:
   . In requirements, use AppConfig v2r* for production configuration options
   . In Boole configurable:
     o Use new L0Conf configurable to set up L0 sequences
     o Default DatasetName now set to "Boole" (was empty)
     o Replace Trigger sequence by Filter sequence and run it as last sequence
       + Instrument Filter sequence to filter also on OdinTypeFilter
       + Filtering enabled by adding subdets ["L0","ODIN"] to FilterSequence
       + When enabled, OdinTypesFilter selects ["RandomTrigger"] by default
     o WriteL0Only option is obsolete, equivalent to FilterSequence += ["L0"]
     o Options added to define each sequence, names of some sequences changed
     o TT now monitored before IT, for consistency with Digi phase
     o Remove RICH extended information linker algorithms. Now run in Gauss.
     o Move ProcessPhases into a top sequence, defined in configurable
     o Replace EnableTAE option by TAEPrev and TAENext, number of TAE to generate
       Now supports arbitrary numbers of TAE events
     o Remove "MainOptions" option
   . Remove all configuration *.opts, everything now done in configurable
   . Remove explicit use of Auditors, now all available as LHCbApp().Monitors
   . Boole-FEST09.py updated to write out only L0Yes or RandomTrigger
   . Add EnableSpillover option to MuonDigitization and MuonBackground (default
     False) to avoid looking for SpilloverAlg when Spillover is disabled
     (MuonAlgs v6r7, MuonBackground v2r8)
   . Use LHCb::ParticlePropertySvc instead of Gaudi ParticlePropertySvc

 - New functionality
   . Make associators delta-ray aware (STAssociators v1r6)
   . Add SiZuriFunction [second order RC-CR shaper function] (SiTools v1r6)

 - Persistency changes
   . Fix wrong size of ODIN RawBank. Now encodes latest ODIN bank version
     (DigiAlg v4r15, LHCbAlgs v2r24, DAQEvent v7r18)
   . Modify the default mode for L0Muon bank (standard instead of light) 
     (L0Muon v8r5)
   . Fix OT TELL1 id encoding, should be hex not decimal (OTDAQ v7r5)

 - New tuning:
   . Align default Calo pedestalShift value with condDB/simcond value
     (CaloDigit v2r12)
   . OTSimulation keeps track of deposit type (OTSimulation v4r1, MCEvent v2r12)
   . Create OT double pulse deposits for particles only (OTSimulation v4r1)
   . Silicon simulation now has flag to turn on/off atomic binding smearing in
     SiGeantDepositedCharge. Default is now not to apply atomic binding
     (SiTools v1r6)
   . Improvements to speed up initialisation of geometry
     (DetDescSvc v2r3, STDet v4r7)

 - Changes to references to reflect changes in Boole v17r3 output:
   . OT simulation changes

 - Changes to monitoring
   . Add more monitoring to MCOTDeposit: keep track of deposits and their 
     fractions as well as spills (OTMonitor v2r9)
   . Add L0MuonMonitoring in the standard monitoring sequence (L0DU v8r13)
   . In LHCbApp configurable, add Gaudi auditors to list of possible Monitors:
     KnownAuditors = ["NameAuditor","MemoryAuditor","ChronoAuditor"]
     If given as a Monitor, the auditor is enabled (GaudiConf v12r1)

 - Changes to QMTests
   . Add a QMTest for FEST09 configuration. 
     Tests L0 filtering, MDF output, Expert histos

 - Bug fixes:
   . Fix TAE (was broken in v17r2). 
   . Fix an error in Muon electronic noise simulation (MuonAlgs v6r7)
   . Fix missing pt sign in L0MuonCandidates (L0Muon v8r5)
   . Fix memory leak in MCReconstructible (SimComponents v2r16)
   . Add status code checks in MDFWriter (MDF v3r17)
   . Fixed a minor memory leak in GeometryInfoPlus (DetDescSvc v2r3)
   . Fix bug in propagation of default properties to used configurables
     (LHCbKernel v11r1)


2009-02-06 Boole v17r2p1

This version uses projects Gaudi v20r4, LHCb v26r1, Lbcom v6r25
 and SQLDDDB v5r1, ParamFiles v8r0, FieldMap v5r2, L0TCK v1r0.

Production version for second FEST09 production.
Output needs Brunel v34r1 or later

- New tuning:
  . Adapt Boole-FEST09.py and Configuration.py to:
    o Write only events filtered by L0 OR with ODIN RandomTrigger bit set
    o Write MDF uncompressed format for faster reading by FEST injector

- Persistency change:
  . Set L0Muon.DAQMode=1 to save "standard" bank by default, instead of "light"
    bank (Boole.opts)

2009-01-14 Boole v17r2

This version uses projects Gaudi v20r4, LHCb v26r1, Lbcom v6r25
 and SQLDDDB v5r1, ParamFiles v8r0, FieldMap v5r2, L0TCK v1r0

Pre-production version for winter 2009. Output needs Brunel v34r1 or later

- New features
  . Explicit setting of database tag now compulsory in options (GaudiConf v12r0).
    Options files for Boole input data examples updated accordingly
  . Moved spillover options into configurable, and added support for packed
    MCParticle/MCVertex containers in Spillover input file (Boole, DigiAlg v4r13)
  . All code now compiles with gcc 4.3 and on OSX

- New tuning
  . Changed example input file for 2008 to one produced with Gauss v36r1, 
    DB tags head-200910112, sim-20090112
  . Added a QMTest reference file for slc4_ia32_gcc34_dbg (different from 
    slc4_ia32_gcc34, to be understood...)
  . Trigger threshold for Prs set to 27.4 MeV = 10 MIP according to Geant4 v8
    (CaloDigit v2r11, for consistency with sim-20090112 SIMCOND tag)
  . Re-tuned the Velo cluster threshold and high bit threshold
    (VeloAlgorithms v4r8, see talk at T-Rec, 2008-12-15)

- Persistency changes
  . Implement compression algorithm for L0MuonProcData bank (L0MuonKernel v8r5)
  . Change OT TELL1 numbering from 1-48 to 0x0TLQ where 
    T = {1,2,3}, L={0,1,2,3}, and Q={0,1,2,3} (OTDAQ v7r4)
  . Also encode empty banks and empty gols (OTDAQ v7r4)

- Monitoring changes
  . Update MCHitMonitor: make all histogram ranges sensible, remove unneeded
    histos, add summary printout in finalize (SimComponents v2r15)
  . Remove Rich detailed monitoring from ExpertCheck.opts

- Bug fixes
  . Fix bug in L0Muon encoding parameter (L0MuonKernel v8r5)  
  . Fix FPE in DeCalorimeter.cpp (CaloDet v10r1)
  . Fixed bug in DeVeloRType::rPitch() that caused non-sensical results in 3
    sectors (VeloDet v13r5)
  . Avoid FPE in MCParticleSelector (SimComponents v2r15, MCEvent v2r11)

2008-12-11 Boole v17r1

This version uses projects Gaudi v20r3, LHCb v26r0, Lbcom v6r24
 and SQLDDDB v5r0, ParamFiles v8r0, FieldMap v5r2, L0TCK v1r0

Identical to v17r0 but with a bug fix to allow it to process data 
produced with Gauss v36r0 or later. Output needs Brunel v33r3 or later

- Bug fixes:
  . Fix an array overflow in BuildMCTrackInfo (DigiAlg v4r13)
  . Protect verbose() streams with msgLevel(MSG::VERBOSE) (DigiAlg v4r13)

- Documentation change:
 . Add a file DoxyBrunel.cfg, included by DoxyFile.cfg, to allow standalone
   documentation of current project only

2008-11-25 Boole v17r0

This version uses projects Gaudi v20r3, LHCb v26r0, Lbcom v6r24
 and SQLDDDB v5r0, ParamFiles v8r0, FieldMap v5r2, L0TCK v1r0

Functionally this version is similar to Boole v16r3, but uses a new version of
Gaudi and major new version of LHCb, with many backward incompatible changes in
the configuration and in option names 

Output requires Brunel v33r3 or later. 

- New tuning
  . Default setting is now 2008; Spillover is disabled by default
  . Do not suppress INFO from RawWriter (finalize message needed by DIRAC)
  . Default noise for Ecal is now 'gaussian' (CW noise description set to
    UseAdvancedNoise = false) (CaloDigit v2r10)
  . Zero-suppression threshold for Prs set to 5 ADC (was 15), trigger threshold
    for Prs set to 23.5 MeV = 10 MIP (was 10 MeV ~ 5 Mip) (CaloDigit v2r10)
  . In L0 trigger emulation, do not add ECAL to HCAL 0 energies when default HCAL
    address is not physical (to reflect electronics behaviour) (L0Calo v9r19)
  . Remove pt encoding parameter from options (L0Muon v8r3, L0MuonKernel v8r4)
  . Fix inefficient region around y=0 in OT F-modules in odd layers (OTDet v8r2,
    see http://www.nikhef.nl/pub/experiments/bfys/lhcb/outerTracker/NamingConventions/Modules/index.html)
  . Improve printout of ST module names (STDet v4r6, STKernel v1r9)
  . Change the default of muon raw data format from DC06 to Real data
    (MuonDAQ v4r5)
  . Do not print histogram statistics by default (GaudiAlg v11r12)
    
- New packaging
  . Many backward incompatible changes to Configurables:
    + Adapt to configuration changes in Gaudi v20r3, GaudiConf v10r13, 
                                        DDDB v1r13, DetCond v12r4
    + Most option names are changed. In particular:
      > All option names are Capitalized
      > New DataType option, removes need to set CondDBTag and DDDBtag if using
        default tags
    + applyConf() renamed __apply_configuration__ and called automatically
    + New python configurable used for Rich configuration (RichDigiSys v1r0)
    + When a property with the same meaning is set in both Boole and in an
      underlying configurable, Boole property takes precedence. If neither is 
      set, Boole default takes precedence
  . Changes to options files to adapt to changes in configurable, in particular:
    + Adapt to option name changes
    + Remove Boole.applyConf() everywhere
    + Default names for output files now set inside configurable
  . Add Boole-DC06.py since DC06 is no longer default
  . Add Boole-2008-VeloOpen.py to digitize velo open geometry
  . Rename Boole-FST09.py to Boole-FEST09.py
  . Remove v200601.opts, BooleMessage.opts, TAE.opts
  . Remove all Rich .opts files
    (RichDigiQC v3r11, RichMCAssociators v2r6, RichReadout v2r11)
  . In valgrind.job, use latest gaudirun.py options to extract .opts file
  . Remove Boole.exe
  . Move to new ST algorithm/tool base classes (STDigiAlgorithms v1r4)
  . Particle properties table now taken from CondDB (DDDB v1r13)

- New features
  . Add possibility to emulate TAE events in L0Muon (L0Muon v8r3)   

- Bug fixes and protections
  . Fix typo in Boole_Ganga.py
  . Fix valgrind.job for use in interactive lsf, and to remove version directory
  . Modified the QMTests to avoid failures when the database changes.
  . Fix BooleInit::modifyODIN to work in TAE mode (DigiAlg v4r12)
  . Fix in description of L0Muon input in L0MuonKernel.xml (ParamFiles v8r0)
  . Fixes for compilation with gcc 4.3 (RichReadout v2r11)
  . Fix untested StatusCodes (L0Muon v8r3, VeloAlgorithms v4r7p2, MuonDAQ v4r5)
  . Fix to remove "Warning in " message in case when Dll
    has been properly loaded. Now this message appears only if there is a real
    problem (i.e. reading HepMC 1 data without HepMCBack loaded) (HepMCBack vr1)
  . Fix FPEs also on ia32 (SimCompoments v2r14)

2008-10-10 Boole v16r3

This version uses projects Gaudi v20r2, LHCb v25r2, Lbcom v6r23
 and SQLDDDB v5r0, ParamFiles v7r3, FieldMap v5r1, L0TCK v1r0

This version will be used for the Full Scale Test (FST09) production.
Output requires Brunel v33r3 or later

- Geometry changes (SQLDDDB v5r0, with DC06-20081002 or head-20081002 tags)
  . Corrections to IT 2008 geometry parameters (IT boxes moved by 3mm in z)
    requires data produced with tag head-20081002 or later
  . Fix to Prs reference plane position
  . Add new Calo conditions : (L0)calibration, channel quality (CaloDet v10r0)
  . Added Outer Tracker T0 and RT relation conditions (OTDet v8r1)

- New features
  . BooleInit now adds to ODIN a beam current, beam crossing type and trigger
    type. By default, 5% of events with hard collision are set to trigger type
    random, 95% physics. For elastic or diffractive events, trigger type is set
    to random. Events are distributed across bunch crossing types (no beam,
    single beam left/right, two beams) according to tunable thresholds. 
    Bunch current is hardwired to a constant number for now. See
    talk on 2008-10-22 (DigiAlg v4r11)
  . Add a qmtest that tests the initialisation of Boole, used by Dirac to test
    the installation. Invoked with: "cmt TestPackage sam"  (BooleSys v16r3)
  . Add options/Boole-FST09.py, default options for full scale test production

- New tuning
  . Update 2008-Files.py to use sim file produced with Gauss v35r1
  . Update SuppressWarnings.opts
  . Improvements to monitoring
    (L0Calo v9r18, L0DU v8r10, L0MuonMonitor v1r2, L0MuonKernel v8r3)

- New packaging
  . L0DU configurations are now taken from TCK/L0TCK DBASE package (L0TCK v1r0)
  . Remove DigiContent.opts, moved into Configurable
  . Clean up DDDB intialisation in Configurable (uses GaudiConf v10r13)

- Bug fixes and protections
  . Add FPE protections(CaloDigit v2r9,VeloSimulation v3r6,SimComponents v2r12p1)
    Now Boole runs on complete example files without any FPE
  . Fix in L0Muon configuration file (ParamFiles v7r3)
  . Protect against using non-existent conditions 
    (DetDesc v18r9, CaloDet v10r0, OTDet v8r1, RichDet v11r2)
  . Disable boole-2008.qmt on slc4_ia32_gcc34_dbg
    (fails with FPE in std::numeric_limits)
  . Protect against missing clusters (CaloAssociators v6r6)
  . Fixed a bug in CondDBCommon::generateXMLCatalog, failing for folders with
    names shorter than 4 chars. Requires SQLDDDB v5r0 (DetCond v12r3)

2008-09-09 Boole v16r2

This version uses projects Gaudi v20r2, LHCb v25r1, Lbcom v6r22
 and DDDB v1r* (SQLDDDB v4r9), ParamFiles v7r2, FieldMap v5r1

This is a development version. It can process DC06 data, but output format and
tuning is different from DC06. Processing of 2008 data is possible but not yet
commissioned. Output requires Brunel v33r2

- Geometry changes
  . Fix staggering of straws in a OT module. The offsets are retrieved from DDDB.
    For 2008 geometry this is not backward compatible with digis produced with
    older version of Boole, requires Brunel v33r2 or later
    (OTDet v8r0, SQLDDDB v4r9 with tags DC06-20080903, head-20080904 or later)

- Packaging changes
  . Adapt Boole Configurable to inherit from ConfigurableUserLHCb
    (Boole v16r2, LHCbKernel v9r1)
  . Separate the QMTest reference files for amd64 and ia32 platforms and update
    for new release (Boole v16r2)

- New tuning
  . Add functionalities to ST readout maps
    (SQLDDDB v4r9, STDAQ v3r11, STKernel v1r8)
  . Ignore condDB tags in QMTest output (Boole v16r2)

- Bug fixes
  . Fix a FPE in MuonChamberGrid::listOfPhysChannels() (MuonDet v8r3)
  . Fix in TT dead strip list (SQLDDDB v4r9)

2008-07-29 Boole v16r1

This version uses projects Gaudi v20r2, LHCb v25r0, Lbcom v6r21
 and DDDB v1r* (SQLDDDB v4r7 to v4r9), ParamFiles v7r2, FieldMap v5r1

This is a development version. It can process DC06 data, but output format and
tuning is different from DC06. Processing of 2008 data is possible but not yet
commissioned. Output requires Brunel v33r1

- Persistency changes
  . Fixes to 2008 TT channel numbering for consistency with real TELL1. 
    Needs Brunel v33r1 or later to decode (STDAQ v3r10, STKernel v1r7)
  . HepMCEvent on input file is assumed to be in HepMC 1 format for DC06 data,
    HepMC 2 otherwise. This can be changed by respectively removing or adding the
    Dll "HepMCBack" from ApplicationMgr().Dlls
  . HepMCEvent on output file is in HepMC 2 format, needs Brunel v33r1 or
    later, DaVinci v19r15 or later to decode. (LCG_55a)
  . Added OT bank version for simulation (SIM=63). Currently the same as v3 in
    real data. Needs Brunel v33r1 or later to decode (OTAQ v7r1)

- New features
  . Velo motion system position (for Velo open/closed simulation) now taken
    from SIMCOND (VeloDet v13r3, SQLDDDB v4r7)
  . Magnetic field scale factor, polarity, field maps now taken from CondDB
    (Magnet v5r0, SQLDDDB v4r7)
  . Added QMTest files. Executed with "cmt TestPackage" directive
  . Added Boole().useOracleCondDB flag (default False, uses SQLDDDB)
    (GaudiConf v10r12, DDDB v1r10)
  . Updated valgrind.job to work with python options

- New tuning
  . Enable usage of TT dead strip conditions, uses updated IT and TT dead channel
    maps for 2008 (STDigiAlgorithms v1r3, STDet v4r4, SQLDDDB v4r7)
  . New distinction between Rich L1 hardware and logical ID numbers
    (RichDigiQC v3r10, RichDAQ v3r19, RichDet v11r0, RichKernel v7r14)

- Bug fixes
  . Fix to gaudirun.py to allow producing correct old style options from
    python options (GaudiConf v10r12)
  . Protect Floating Point Exceptions in Rndm::Poisson
    (CaloDigit v2r8, VeloSimulation v3r5)
  . Improve protection against crazy vertex times in PackMCVertex
    (SimComponents v2r11)
  . L0CaloAlg gives correct address in case of saturated cells with equal
    energies in global pi0 candidate (L0Calo v9r16)

2008-07-21 Boole v16r0

This version uses projects Gaudi v20r1, LHCb v24r1, Lbcom v6r20
 and DDDB v1r* (SQLDDDB v4r6 to v4r9), ParamFiles v7r2, FieldMap v5r1

This is a development version. It can process DC06 data, but output format and
tuning is different from DC06. Processing of 2008 data is possible but not yet
commissioned. Output requires Brunel v33r0

- Persistency changes
  . Different OT RawBank encoding, to correspond to real data. Bank version not
    changed (remains v3 as in real data), so change is backward incompatible,
    requires Brunel v33r0 or later to decode (OTDAQ v7r0)
  . Changes, extensions and bug fixes to L0Muon encoding
    (L0Muon v8r0, L0MuonKernel v8r0, ParamFiles v7r2)

- New features
  . VeloSim takes bad stripslist from DeVeloSensor to kill bad strips. Taken from
    SIMCOND for Velo, 1% random for Pileup (VeloSimulation v3r4, VeloDet v13r2)
  . Added bad known bad strips in Velo (SQLDDDB v4r6)
  . New calorimeter description with split halves
    (SQLDDDB v4r6, CaloDet v9r0, CaloDetXmlCnv v3r2)
  . Magnetic field scaling factor now taken from SIMCOND (Magnet v4r0)
  . Add new TCKs for L0 (cosmics triggers) (L0DU v8r7)
  . Possibility to run L0Muon without M1 and M2 (L0Muon v8r0)
  . Adapt Boole_ganga.py to Ganga 5 and python options

- New tuning
  . L0CaloAlg decides which candidate to take in case of equality, to mimic
    real electronics behaviour (L0Calo v9r15)
  . Reduce unneccessary calls to gsl_sf_erf_Q (VeloSimulation v3r4)

- New packaging
  . Update L0Sequences (L0DU v8r7, Boole.opts, BooleMoni.opts)

- Bug fixes
  . Fix uninitialized member variables in CaloDigitAlg (CaloDigit v2r7)
  . Fixes to IT geometry (SQLDDDB v4r6, STDet v4r3)
  . Fix FPE monitoring on Windows (LHCbKernel v8r6)
  . Protect a FPE in MuonDet (MuonDet v8r2)
  . Fix tiny memory leak (DetCond v12r1)

2008-07-07 Boole v15r2

This version uses projects Gaudi v20r1, LHCb v24r0, Lbcom v6r19
 and DDDB v1r* (SQLDDDB v4r5 to v4r9), ParamFiles v7r1, FieldMap v5r1

This is a development version. It can process DC06 data, but output format and
tuning is different from DC06. Processing of 2008 data is possible but not yet
commissioned. Output requires Brunel v32r7 or v32r8

- New features
  . In Boole Configurable, add support for SIMCOND. Now used by default except
    for DC06 geometries (Boole v15r2, GaudiConf v10r10, DDDB v1r8)
  . Implement realistic Ecal Cockroft-Walton noise in CaloDigitAlg, fully
    incoherent noise description as a sum of gaussian (can be set by options).
    Adds about 20% to Ecal RawBank size (CaloDigit v2r6)
  . Improvements to Floating Point Exception auditing
    (LHCbKernel v8r5, LHCbAlgs v2r19)
  . Prepare for IOV based snapshots of ONLINE CondDB (DetCond v12r0)

- New tuning
  . Change 2008 default database tag to head-20080702 (DDDB v1r8, SQLDDDB v4r5)

- Packaging changes
  . Boole.opts no longer includes LHCbApplication.opts, to allow usage of
    .py version in configurable. Added instead to DC06 *.opts files

- Bug fixes
  . Fix default condDBtag in Boole-2008.py
  . Fix bug in CalODigitAlg : missing "/" in "Prev/" prefix -> no spillover
    correction (CaloDiit v2r6)
  . Remove explicit evaluation of environment variables in Python options, to
    allow use on the Grid (GaudiConf v10r10, DDDB v1r8)
  . Fixes and protections for floating point exceptions
    (DetDesc v4r7, MuonDet v8r1, OTDAQ v6r0p1, VeloSimulation v3r2) 
  . Fix in L0DUEmulatorTool (clear before setting configuration not after !)
    (L0DU v8r6)

2008-06-03 Boole v15r1

This version uses projects Gaudi v19r9, LHCb v23r7, Lbcom v6r18
 and DDDB v1r* (SQLDDDB v4r4 to v4r9), ParamFiles v7r1, FieldMap v5r1

This is a development version. It can process DC06 data, but output format and
tuning is different from DC06. Processing of 2008 data is possible but not yet
commissioned. Output requires Brunel v32r7 or v32r8

- Persistency changes (require Brunel v32r7 or v32r8 to read)
  . Outer tracker RawBank is now in 2008 format (OTSimulation v4r0, OTDAQ v6r0)

- Tuning changes
  . OT T0 and R-T relation are now obtained from CondDB via detector element 
    (OTSimulation v4r0)
  . Improved handling of CondDBtag and DDDBtag in Boole configurable. Now,
    if the string contains "default" and one of "DC06" or "2008", the tags are
    taken from the corresponding DDDB/options defaults. Otherwise the tag is
    used as given (GaudiConf v10r9)

- New features
  . Implement "sub-triggers" (L0DU v8r5, L0Event v16r10)
  . New attribute "mainOptions" in Boole() configurable, to define top level
    options file to include (default is $BOOLEOPTS/Boole.opts)
  . Add "FPE" as possible Boole().monitor, to switch on floating point exception
    checking (GaudiConf v10r9, LHCbAlgs v2r18)

- Bug fixes
  . Fix rounding of tdc time in MCOTTimeCreator (OTSimulation v4r0)
  . Fix untested StatusCode (MuonDAQ v4r1, MuonDet v8r0p1)
  . Fix uninitialised data member in L0DUReport (L0Event v16r10)
  . Fixed a divide by zero and sqrt(-N) problem when PrevPrev MCHits gave 
    either zero or negative charge deposition (VeloSimulation v3r2)
  . Protect underflow in PackMCVertex and CompareMCVertex, due to crazy
    vertex times in DC06 simulation (SimComponents v2r10)

2008-05-19 Boole v15r0

This version uses projects Gaudi v19r9, LHCb v23r6, Lbcom v6r17
 and DDDB v1r* (SQLDDDB v4r3 to v4r9), ParamFiles v7r1, FieldMap v5r0

This is a development version. It can process DC06 data, but output format and
tuning is different from DC06. Processing of 2008 data is possible but not yet
commissioned. Output requires Brunel v32r5 or later

- Persistency changes (require Brunel v32r5 or greater to read)
  . OT linker table now using directly OTChannelID, bypasses creation of OTTime
    (DigiAlg v4r9, OTAssociators v4r2, Boole.opts)
  . When using 2008 conditions, simulates Muon RawBank version 2 (MuonDAQ v4r0)

- New tuning
  . Major retuning of Velo simulation
    (VeloAlgorithms v4r7+v4r7p1, VeloSimulation v3r0+v3r1, VeloDet v13r0)
    o Changed scaling in VeloDataProcessor to increase ADC values of clusters
    o VeloClusterMaker now sets strip thresholds from noise levels per strip
    o Changed curve in VeloDataProcessor to 2nd order non-linear response from JC
    o Set ADC output range from 0->256 to -127->127
    o Use ST charge deposit tool to correct GEANT dEdx
    o Use ST amplifier response tool to simulate amplifier response versus time
    o Simulate noise from the DeVeloSensor->stripNoise() distribution per strip
    o Retuned time curves to use vfp = 150 and vfs = 550 : best guess as initial
      BEETLE tune parameters, amount of spillover increased
    o Offset sampling time to get equal amplification to Prev and Next MCHits
    o Added PrevPrev to simulation by default
    o Set capacitve coupling to 1% (from 5%) to get approx 1 and 2 strip
      ratio about right
    o Changed stored condition from strip capacitance to strip noise in
      DeVeloSensor. Requires SQLDDDB >= v4r2
  . Muon cabling readout info moved out of MuonDAQ
    (MuonDet v8r0, MuonDAQ v4r0. Requires SQLDDDB v42 or later)
  . Major changes to ST geometry structure. Changes material distribution seen in
    DC06 geometry. See talks at ST meeting on 2008-03-13).
    (STDet v4r0, STCheckers v2r5, STDigiAlgorithms v1r0p1)
  . Default DC06 tag changed to DC06-20080516 to encompass ST changes
    (DDDB v1r6, SQLDDDB v4r3)
  . Modified default idle connection time-out in CondDBAccessSvc from 600s to
    120s (DetCond v11r10)

- New features
  . Possibility to use 2008 geometries. Default geometry for 2008 is
    head-20080516, defined in LHCb-2008.py (GaudiConf v10r8, DDDB v1r6)
  . Possibility to use measured magnetic field map, used by default with 2008
    default geometry (FieldMap v5r0, Magnet v3r0)
  . In Boole/Configuration.py:
    o Added "monitors" property. When set to ["SC"] performs StatusCode check
      (GaudiConf v10r8)
    o Added "writeDigi" option, default True. If False, .digi is output switched
      off. Can be used independently of "writeMDF"
    o Added options DDDBtag and EvtMax
    o Include Boole.opts directly, BooleCommon.py no longer needed
  . Reorganised configuration files for gaudirun.py - now, configuration is 
    split from example I/O files
    o Predefined configurations: Boole-Default.py, Boole-2008.py
    o Predefined I/O files: DC06-Files.py, 2008-Files.py
    o Syntax is "gaudirun.py Boole-.py .py" 

- Removed features
  . Removed obsolete files BooleCommon.py, v200601.py, v200801.py. Replaced by
    Boole-Default.py, Boole-2008.py, DC06-Files.py, 2008-Files.py

- Bug fixes
  . Muon2Pt was wrong for events with only 1 Muon candidate (Muon1 was used).
    Fix gives reduction in the rate of Muon2Pt (L0DU v8r4)
  . TT cluster killer was called in IT sequence, after writing TT RawBanks
  . Check untested StatusCode (L0Muon v7r8p1)

- Monitoring changes
  . Overhaul of L0Calo and L0DU monitoring (L0Calo v9r12, L0DU v8r4)
  . Monitoring of OTTime moved to Expert monitoring
    (BooleMoni.opts, OTMonitor v2r8)
  . Add back functionality to exclude guard rings in efficiency calculation.
    Default value of STEffChecker.IncludeGuardRings is false (STCheckers v2r4p1)
  . Changed monitoring code to label cluster types properly (VeloAlgorithms v4r7)
  . Give meaningful names to MemoryTool histograms (LHCbAlgs v2r16)
  . Gaudi Histo base classes now print histogram statistics by default at
    finalize (GaudiUtils v1r6, GaudiAlg v10r5)
  . Update SuppressWarnings.opts to not print out histogram statistics
  . In ExpertCheck.opts: switch on StatusCode check by default

2008-03-07 Boole v14r10

This version uses projects Gaudi v19r8, LHCb v23r4, Lbcom v6r15
 and DDDB v1r* (SQLDDDB v4r0 to v4r9), ParamFiles v7r1, FieldMap v4r7

It can process DC06 data, but output format is different from DC06, requires
Brunel v32r1 or greater

- New features
  . Added generic support for execution with gaudirun.py and python options:
    o python/Boole/Configuration.py: Configurable for Boole
    o options/BooleCommon.py: options shared by all configurations
    o v200601.py: example options for DC06 geometries
    o v200801.py: example options for 2008 geometry
    The Boole configurable supports the following non-default configurations: 
    TAE generation, Spillover removal, L0 filtering, L0 ETC writing,
    mdf writing, warnings suppression, expert histos)
  . Added support for post-DC06 geometries, only available via Python options
  . Renamed BooleInit/Boole algorithm to BooleInit,
    avoids clash with Python configurable

- New tuning
  . In SuppressWarnings.opts, timestamp is printed in UTC, keep EventLoopMgr msgs

- New packaging
  . ST digitization algorithms move to new BOOLE STDigiAlgorithms v1r0 package

- Bug fixes
  . Fix TES path of 'Next' spill for spillover (STAlgorithms v2r7)
  . Fix untested StatusCode (SimComponents v2r8p1)

2008-02-04 Boole v14r9

This version uses projects Gaudi v19r7, LHCb v23r3, Lbcom v6r14
 and DDDB v1r* (SQLDDDB v4r0 to v4r9), ParamFiles v7r1, FieldMap v4r7

It can process DC06 data, but output format is different from DC06, requires
Brunel v32r1 or greater

- Persistency changes
  . Add /Event/Link/Raw/Hcal/Digits to DigiContent
    (GaudiConf v19r6, CaloDAQ v4r3, CaloAssociators v6r5, Boole.opts)

- New tuning
  . In valgrind.job, use the new ROOT suppressions file available from LCG_54
  . In SuppressWarnings.opts, add a time stamp to remaining messages
  . Transparent changes to L0 code to make it faster (L0Muon v7r6, PuVeto v7r3)
  . Disable allStrips options in Digit Creators (STAlgorithms v2r6)
  . Add Next spill to MC Deposit Creators (STAlgorithms v2r6)
  . Retune the HPD timing numbers (RichReadout v2r9)

- New features
  . Final changes to allow use of dead strip conditions
    (STDet v3r9, STKernel v1r1, STDAQ v3r4, STTools v3r5)
  . Use new Gaudi XML file catalog instead of the POOL one, using
    FileCatalog.Catalogs option instead of PoolDbCacheSvc.Catalog
    (GaudiPoolDB v3r0)
  . In ExpertCheck.opts add options for CondDb logging (commented out)

- Bug fixes
  . Fix minor memory leak in L0ProcessorDataLocation initialize() (L0DU v8r2)
  . Fix problem with calculation of strip capacitance in VeloSim, database info
    was inconsistent with changes introduced in Boole v14r5 (SQLDDDB v4r0)
  . Add a finalize() to MuonDetectorResponse, to avoid deleting in the destructor
    objects created in initialize() (MuonAlgs v6r6)
  . Fix index out of range in MuonDetectorResponse (MuonAlgs v6r6)
  . Add protection for hit generated by Geant4 outside gap volumes
    (MuonAlgs v6r6, MuonBackground v2r7, MuonMoniDigi v2r4)

- Monitoring changes
  . Extend digit monitor for new background types (HPD reflections and silicon
    back-scattering) (RichDigiQC v3r8)
  . Improved detailed monitoring algorithm to include plots for HPR reflections
    (RichReadout v2r9)
  . If histogram ID is not explicitly given, it is now assigned in a
    deterministic way (GaudiAlg v10r3)

2007-12-13 Boole v14r8

This version uses projects Gaudi v19r6, LHCb v23r2, Lbcom v6r13
 and DDDB v1r* (SQLDDDB v3r1 or greater), ParamFiles v7r0, FieldMap v4r7

It can process DC06 data, but output format is different from DC06, requires
Brunel v32r1 or greater

- New features
  . Updates to allow the time calibrations to be adjusted via options
    (RichReadout v2r8)
  . Functionality to deal with dead strips in ST Digitization (off by default)
    (STAlgorithms v2r5, STDAQ v3r3, STDet v3r8, STKernel v1r0)
    See talk at ST software meeting on 2007-11-27.
  . Adapt Calo calibration simulation to changes in CaloDAQ v4r2 (CaloDigit v2r5)
  . New file options/SuppressWarnings.opts to be used in production for a minimal
    log file

- New tuning
  . In itDigi.opts, change conversion factor from e- to ADC (STAlgorithms v2r5)
  . Smear time, not distance (OTSimulation v3r15)

- Persistency changes
  . Implement the final L0 Calo bank format as defined in EDMS-845277
    Requires "HadronSB" condition to be included in condDB (from SQLDDDB v3r1)
    (L0Calo v9r11)

- Bug fixes
  . Fix unchecked StatusCodes (MuonBackground v2r6, MuonMoniDigi v2r3,
                               MuonAlgs v6r5, MuonDet v7r1, MuonDAQ v3r3)
  . The ID of the L0BufferCnv was not properly defined for CU and SU.
    (L0MuonKernel v7r2)
  . Fixed wrong location of included job options file (L0DU v8r1)
  . Bug fix in neighbour sum histo (STCheckers v2r3)
  . Fix v200601.py to importOptions from absolute path
  . Protection against negative modulus in CaloSignalAlg (CaloDigit v2r5)
  . Fix issue of Rich L1 board (one ingress) with no hits at all, the header for
    that ingress was incorrectly missing in the data bank (RichDAQ v3r13)

2007-11-15 Boole v14r7

This version uses projects Gaudi v19r5, LHCb v23r1, Lbcom v6r12
 and DDDB v1r* (SQLDDDB v3r0 or greater), ParamFiles v7r0, FieldMap v4r7

It can process DC06 data, but output format is different from DC06, requires
Brunel v32r1 or greater

- Persistency changes
  . L0DU Raw bank format is now as described in EDMS 868071 (L0DU v8r0)

- New features
  . Muon geometry now has concept of half stations to allow for misalignment
    conditions (MuonDet v7r0, MuonBackground v2r5, SQLDDDB v3r0)
  . Completely revised implementation of L0DU, including first implementation of
    the Trigger Configuration Key mechanism, improved hardware emulation, new
    default settings for various luminosities
    (L0DU v8r0, L0Calo v9r10, L0Muon v7r5, L0Event v16r6, Boole.opts)
  . Add possibility to make STDigits on all detector strips
    (STAlgorithms v2r4)
  . Use ST dead channel info from detector element in digitization code
    (STAlgorithms v2r4)
  . Add STClusterKiller algorithm, to kill clusters at random. Default efficiency
    is 99.5%
  . Add Empty.opts dummy options file to bootstrap Dirac with non-standard
    configurations

- New tuning
  . Retune conversion factor from e- to ADC for IT (STAlgorithms v2r4)

- Bug fixes
  . In listOfPhysChannels, check if hit was inside a gap was wrongly performed.
    Effect is very small (MuonDet v7r0)
  . Fix error in default Boole_Ganga.py file for latest CMT structure.

- Packaging changes 
  . Change some monitoring algorithms names to avoid clash with another package
    (CaloMoniDigi v2r3, Boole.opts)

2007-10-10 Boole v14r6

This version uses projects Gaudi v19r5, LHCb v22r10, Lbcom v6r10
 and DDDB v1r* (SQLDDDB v2r3 or greater), ParamFiles v7r0, FieldMap v4r7

It can process DC06 data, but output format is different from DC06, requires
Brunel v31r9 or greater

- New features
  . Add options/v200601.py, to execute Boole from Python shell

- Bug fixes
  . Fix L0Muon options to not run RawBank decoder (Boole.opts)
  . Remove unneccessary release() of UMS from TT/ITReadoutTool (STDAQ v3r1)
  . Fix unchecked StatusCode (VeloAlgorithms v4r6p1)
  . Add missing variable initialization (L0Muon v7r4)

2007-09-21 Boole v14r5

This version uses projects Gaudi v19r4, LHCb v22r9, Lbcom v6r9
 and DDDB v1r* (SQLDDDB v2r3 or greater), ParamFiles v7r0, FieldMap v4r7

It can process DC06 data, but output format is different from DC06, requires
Brunel v31r9 or greater

- Persistency changes
  . Change in L0Muon raw bank format

- New functionality
  . Major change in L0Muon emulation to match the hardware (ProcessorKernel v6r0,
    L0MuonKernel v7r1, L0Event v16r5, L0Muon v7r3, L0DU v7r7, ParamFiles v7r0)
  . Update example ganga job to remove warnings about missing features (now
    available) and to add examples of job merging (Boole_Ganga.py)

- New tuning
  . Minor clean-ups and optimisations in MCOTDepositCreator and MCOTTimeCreator
    (OTSimulation v3r13)
  . Optimisations in detector description
    (DetDesc v18r0, OTDet v7r6, STDet v3r6, VeloDet v12r1) 

- Bug fixes
  . Modified the treatment of the timing of particle arrivals to correctly 
    implement spillover with the right fractions in each Velo sensor
    (VeloSimulation v7r6)
  . Fix untested StatusCodes (VeloSimulation v7r6, CaloAssociators v6r4,
    CaloDet v8r4, CaloUtils v7r5, CaloDAQ v4r0, Relations v5r2)
  . Fix bugs related to 'lazy connection' feature (DetCond v11r6)

2007-07-23 Boole v14r4

This version uses projects Gaudi v19r4, LHCb v22r8, Lbcom v6r8
 and DDDB v1r* (SQLDDDB v2r2 or greater), ParamFiles v6r1, FieldMap v4r7

It can process DC06 data, but output format is different from DC06, requires
Brunel v31r5 or greater

- New functionality
  . Add possibility to write an ETC containing the L0 result
    (Uncomment relevant line in v200601.opts)
  . Add possibility to write .digi only for L0 selected events
    (Uncomment relevant line in v200601.opts)

- New tuning
  . Changes to L0Calo to make it correspond better to the hardware
    (L0Calo v9r9, CaloDet v8r3)
  . Speed improvements in Velo detector element (VeloDet v12r0)

- New packaging
  . Add in Boole requirements a no_auto_imports dependency to all used component
    libraries, so they can be reached by cmt broadcast when checked out in 
    User_release_area

- Bug fixes
  . Fix uninitialised variable in CardParam (CaloDet v8r3)

2007-07-16 Boole v14r3

This version uses projects Gaudi v19r4, LHCb v22r7, Lbcom v6r7
 and databases DDDB v1r*, ParamFiles v6r1, FieldMap v4r7

It can process DC06 data, but output format is different from DC06, requires
Brunel v31r5 or greater

- New features
  . New algorithms (L0Filter, L0ETC) and options ($L0DUROOT/options/Boole.opts)
    to select only events passing L0 (L0DU v6r5)

- New tuning
  . Update number of Rich L1 inputs from 9 to 12, to match latest firmware
    (RichKernel v7r7, RichDAQ v3r11)

- Monitoring changes
  . Changes in MC Particle selection, modifies ST efficiency calculation (by <1%)
    (SimComponents v2r7, BooleMoni.opts)
  . Input files of default job have changed, previous ones have been deleted
    (v200601.opts)

- Bug fixes
  . Fix unchecked StatusCode in OTSmearer (OTSimulation v3r12)
  . Remove FromDigi.opts, can only work for DC04 data

2007-06-15 Boole v14r2

This version uses projects Gaudi v19r4, LHCb v22r6, Lbcom v6r6
 and databases DDDB v1r*, ParamFiles v6r1, FieldMap v4r7

It can process DC06 data, but output format is different from DC06, requires
Brunel v31r5 or greater

- Packaging changes
  . Clean up use statements in Boole requirements (Digi/Boole v14r2):
    + Remove explicit versions since these are meaningless with InstallAreas
      (leave explicit versions for databases)
    + Use only packages needed to compile or to setup up run time environment
  . Adapt to new rootInTES convention in Gaudi v19r4
   (CaloDAQ v3r3, CaloDigit v9r4, L0Calo v9r8, MuonDAQ v3r2, MuonMoniDigi v2r2,
    MuonAlgs v6r4, MuonAssociators v3r1, DigiAlg v4r8)

- New functionality
  . Add possibility to smear OT measurements in time instead of distance. Off by
    default (OTSimulation v3r11, see details in talk at 
T-Rec on 2007-06-11
)

- Bug fixes
  . Check untested status codes (MuonAlgs v6r4,MuonBackground v2r4,MuonDet v6r3)
  . Fix FE-card connection to neighbors in DeCalorimeter::buildCards()
    (CaloDet v8r2)

- Monitoring changes
  . Improved format of counters printout (GaudiKernel v22r3)
  . Add time spectrum histogram to OTTimeChecker (OTMonitor v6r6)

2007-05-21 Boole v14r1

This version uses projects Gaudi v19r3, LHCb v22r5, Lbcom v6r5
 and databases DDDB v1r*, ParamFiles v5r0, FieldMap v4r7

It can process DC06 data, but output format is different from DC06, requires
Brunel v31r5 or greater

- Persistency changes
  . DigiHeader has a new field containing CondDB tags used in processing.
    Can only be read by programs based on LHCb v22r5 or later
    (EventBase v2r3, LHcbKernel v7r4, DigiAlgs v4r7) 

- Monitoring changes
  . Add OT detailed monitoring (ExpertCheck.opts, OTMonitor v2r6)
  . Use TimingAuditor for timing, suppress printout from SequencerTimerTool
    (BooleMoni.opts)

- Documentation changes
  . The doxygen web generated for Boole now includes in a single index all
    classes from GAUDI, LHCB, LBCOM, BOOLE projects
  . Options files are included in the doxygen documentation

2007-04-24 Boole v14r0

This version uses projects Gaudi v19r3, LHCb v22r4, Lbcom v6r4
 and databases DDDB v1r*, ParamFiles v5r0, FieldMap v4r7

It can process DC06 data, but output format is different from DC06, requires
Brunel v31r4 or greater

- Persistency changes
  . Changes to ST and Rich RawBank formats to correspond to online format. Bank
    version numbers updated, needs LHCb v22r4/Lbcom v6r4 or greater to decode
    (STDAQ v3r0, RichKernel v7r4, RichDAQ v3r10)

- New tuning
  . Speed improvements to Rich encoding
    (RichKernel v7r4, RichDAQ v3r10, RichDet v10r4)

- Bug fixes
  . Fix unchecked StatusCodes 
    (VeloDet v11r2, OTDAQ v5r2, OTSimulation v3r10, OTMonitor v2r5)
  . Since Boole v13r2, CaloTriggerBitFromRaw was returning only the data of the 
    last TELL1, with drastic effect on L0Calo (CaloDAQ v3r2)
  . Fix printout of Rich L1 summary table (RichKernel v7r4)

2007-03-26 Boole v13r3

This version uses projects Gaudi v19r3, LHCb v22r3, Lbcom v6r3
 and databases DDDB v1r*, ParamFiles v5r0, FieldMap v4r7

It can process DC06 data, but output format is different from DC06, requires
Brunel v31r2 or greater

- Packaging changes
  . Database now accessed via DDDB interface package, no longer SQLDDDB directly

- Bug fixes
  . Fix access to uninitialised pointer (was causing crash on v13r2 on Windows)
    (MuonAlgs v6r3)
  . Use boost::format instead of Gaudi format (gave wrong output when used more
    than once in same stream) (various Rich packages) 
  . Fix many unchecked StatusCodes
  . Many fixes to doxygen documentation
  . Disabled some compiler optimizations in libstdc++ on slc3, was causing
    crashes on SLC3 after disconnection from database (DetCond v1r11)
  . Fix to setting of random seeds on ia64 platform. Now initialisation of 
    random engine works also on ia64, but generated sequense is different on
    ia32 and ia64 (GaudiSvc v15r3)

2007-03-05 Boole v13r2

This version uses projects Gaudi v19r2, LHCb v22r2, Lbcom v6r2
 and databases SQLDDDB v1r*, ParamFiles v5r0, FieldMap v4r7

It can process DC06 data, but output format is different from DC06, requires
Brunel v31r2 or greater

- New features
  . Now uses SQLDDDB database for geometry and conditions data
  . Various fixes to deal with conditions data
    (MuonDet v6r1, OTDet v7r2, STDet v3r2, VeloDet v11r1)
  . Possibility to simulate calorimeter LED data
    (CaloDet v8r1, DigiEvent v2r1, L0Event v16r2, CaloDigit v2r3)

- Persistency changes
  . Ecal banks contain header of PIN-diode FEB data, needs CaloDAQ v3r1
    or greater to decode (CaloDAQ v3r1, SQLDDDB v1r0)

- New tuning
  . Modified for dialog dead time (MuonAlgs v6r2)

- Bug fixes
  . Fix to get rid of biased Velo residuals (VeolSimulation v2r5)
  . Small fix in CaloFillPrsSpdRawBuffer (problem when filling Prs bank when 
    Zsup threshold =0) (CaloDAQ v3r1)
  . Fixed spurious printout (MuonBackground v2r3)

Updated DigiAlg, MuonAlgs, MuonBackground, CaloDigit

2007-02-06 Boole v13r1

This version uses projects Gaudi v19r1, LHCb v22r1, Lbcom v6r1
 and databases XmlDDDB v40r0, XmlConditions v2r5, ParamFiles v5r0, FieldMap v4r7

- New features
  . New Rich1 data format to match latest L1 firmware. Encoding and decoding
    now requires ODIN object, due to new integrity checks in the data format
    New format not yet enabled, default is still DC06 format (RichDAQ v3r7)
  . BooleInit now puts an ODIN object on the TES after creating the ODIN bank
    (DigiAlgs v4r6)

- New tuning
  . Switch on G4 parameterisation of Muon background instead of old GCALOR one
    (Boole.opts)

- Bug fixes
  . Fixed DeOTModule::wireLength method to return correct wire length
    (OTDet v7r1, OTSimulation v3r9)
  . Fix some unchecked StatusCodes (DigiAlg v4r6, OTDet v7r1, OTSimulation v3r9) 

2007-01-23 Boole v13r0

This version uses projects Gaudi v19r1, LHCb v22r0, Lbcom v6r0
 and databases XmlDDDB v30r14, XmlConditions v2r5, ParamFiles v5r0, FieldMap v4r7

It introduces a new working environment, based on CMT projects.

Compatible with DC06 data

- New features
  . Add PilotRun.opts for processing in Pilot Run conditions

- New tuning
  . Update ShowerMax condition for Ecal (XmlConditions v2r5)

- Monitoring changes
  . Change naming of ST checkers, monitors and job options according to naming
    convention (STCheckers v2r0)

- Maintenance changes
  . Fix some unchecked StatusCodes
  . Remove ApplicationMgr.DLLs options, not needed with new plugin manager
  . Adapt valgrind.job to work with new CMT environment
  . Remove obsolete rttc.opts and L0Filter.opts

2006-11-23 Boole v12r10

This version uses projects Gaudi v18r11, LHCb v21r12, Lbcom v5r9
 and databases XmlDDDB v30r14, XmlConditions v2r4, ParamFiles v5r0, FieldMap v4r7

This release fully compatible with the DC06 production. It introduces the 
possibility to generate Time Alignment Events (TAE) as described in EDMS 779819
(
https://edms.cern.ch/document/779819/1
)

- New features
  . Add possibility to generate Time Alignment Events. New phase added for each
    TAE, empty by default. Added example for populating Prev1 TAE, currently
    implemented only for Calo and Muon
    (DigiAlg v4r5, CaloDAQ v2r6, CaloDigit v2r2, MuonDAQ v2r3, MuonAlgs v6r1,
     MuonMoniDigi v2r1, DigiAlg v4r5, Boole.opts, TAE.opts TAE-Prev1.opts)
  . Add a search facility to doxygen documentation

- New tuning
  . Minimize number of open input files by setting PoolDbCacheSvc.AgeLimit
    default to 2 (GaudiPoolDb v2r9)
  . sse2 compilation flags removed, due to too many production sites having
    mixed clusters with PIII and Athlon (GaudiPolicy v6r1)

- Bug fixes
  . Small fix in Muon monitoring, slightly increases measured digit multiplicity
    (MuonMoniDigi v2r1)
  . Fix in isInActiveMethod for Velo phi sensors (VeloDet v10r11)

2006-11-10 Boole v12r9

This version uses projects Gaudi v18r10, LHCb v21r11, Lbcom v5r8
 and databases XmlDDDB v30r13, XmlConditions v2r4, ParamFiles v5r0, FieldMap v4r7

This is a maintenance release, fully compatible with the DC06 production

- New features
  . Add possibility to use new Geant4 parameterisations of Muon background. 
    Default for DC06 is old GCalor parameterisation, example for Geant4 commented
    in v200601.opts (ParamFiles v5r0, MuonBackground v2r2)
  . Add Boole.PrintFreq option (LHCbKernel v6r14) 
    + Values > 0 indicate the rate at which event number should be printed
    + Values < 0 suppress event messages entirely
    + Default is 1, to print each event
  . Add job/Boole_Ganga.py (example to run Boole from Ganga)

- New tuning
  . Print "impossible to add the requested hits" warning only once per job
    (MuonBackground v2r2)

- Bug fixes
 . Fix memory leak in MCOTDepositCreator::singleCellEff()  (OTSimulation v3r8)
 . Fix for memory leak at finalise (RichReadout v2r3)

2006-10-30 Boole v12r8

This version uses projects Gaudi v18r9, LHCb v21r10, Lbcom v5r7

2006-10-13 Boole v12r7

This version uses projects Gaudi v18r8, LHCb v21r9, Lbcom v5r6
 and databases XmlDDDB v30r12, XmlConditions v2r4, ParamFiles v4r4, FieldMap v4r7
Requires input from Gauss v24r3 or greater. Output needs Brunel v30r1 or greater

This is a maintenance release, fully compatible with the DC06 production

- New features
  . Add L0DU_RTTCLumi5Setting.opts options for running L0 with tuning for lumi5,
    as for RTTC. Available in L0DU v7r4 package, but not yet used in Boole
  . Add compatibility with Geant4 Muon background parameterization, not yet
    switched on in Boole (MuonBackground v2r1)
  . Prepare for future use of InstallArea (GaudiPolicy v6r0)
  . Two new options 'RootOnTES' and 'GlobalTimeOffset' added to GaudiAlgorithm to
    prepare for simulation of Time Alignment events (GaudiAlg v9r9)

- Bug fixes
  . Add protection for corrupted MC data (MuonBackground v2r1)

- Packaging changes
  . Repackaging and renaming of L0Muon algorithm (L0Muon v7r0, Boole.opts)

2006-10-02 Boole v12r6

This version uses projects Gaudi v18r7, LHCb v21r8, Lbcom v5r5
 and databases XmlDDDB v30r10, XmlConditions v2r2, ParamFiles v4r4, FieldMap v4r7
Requires input from Gauss v24r3 or greater. Output needs Brunel v30r1 or greater

This is a maintenance release, fully compatible with the DC06 production

- New tuning
  . Binaries built with sse instructions enabled, gains ~10% in execution time
  . New algorithm PuVetoFillRawBuffer to produce the Raw Buffer information.
    The central strip of each group of 4 is coded, not the original strip, and 
    duplicates are removed. This is closer to the hardware (PuVeto v7r2)

- Monitoring changes
  . ST efficiency monitors now use Linker based MC truth
    (Associators v3r4, STCheckers v1r3)
  . STClusterChecker neighbour sum histograms moved to ExpertCheck
    (STCheckers v1r3)

- Persistency changes (GaudiConf v9r9)
  . Remove explicit saving of directory nodes on persistency file definitions:
    spillover diretories only saved if corresponding Header is present
  . MCParticle2MCHit linker tables were being saved to .digi unnecessarily

- Bug fixes
  . Fix uninitialized variable warning from valgrind (ProcessorKernel v3r3)
 
- Packaging changes
  . VeloSimulation and VeloAlgorithms packages moved to LbcomSys, to remove need
    for Vetra to depend on BOOLE project

2006-09-05 Boole v12r5

This version uses projects Gaudi v18r7, LHCb v21r7, Lbcom v5r4
  and databases XmlDDDB v30r9, XmlConditions v2r1, ParamFiles v4r4, FieldMap v4r7
Requires input from Gauss v24r3 or greater. Output needs Brunel v30r1 or greater

This is a bug fix release, fully compatible with the DC06 production

- Persistency changes
  . Fix bug to properly propagate "charge sharing" history flag to Rich summary 
    information (MCEvent v1r6, RichMCTools v3r2, RichReadout v2r2, 
                 RichDigiQC v3r2, RichMCAssociators v2r1)

- Bug fixes
  . Fix a nasty problem in connecting HCAL to ECAL cards: The first cell of the
    first HCAL card doesn't exist -> its size was zero, and then no ECAL-HCAL
    connection was made (L0Calo v9r4)
  . Fix uninitialized variable warning from valgrind (ProcessorKernel v3r2)
  . Several minor fixes in Gaudi, not affecting default behaviour (Gaudi v18r7)

- Packaging changes
  . Change default input files, now uses official production with Gauss v25r0
  . valgrind.job uses more recent valgrind installation from Chris Jones

2006-08-02 Boole v12r4

This version uses projects Gaudi v18r6, LHCb v21r4, Lbcom v5r3p1
  and databases XmlDDDB v30r9, XmlConditions v2r0, ParamFiles v4r3, FieldMap v4r7
Requires input from Gauss v24r3 or greater. Output needs Brunel v30r1 or greater

This is a maintenance release, fully compatible with the DC06 production

- Tuning changes
  . Minor code optimizations (VeloDet v10r8)
  . Remove virtual destructors from xxxID classes (LHCbKernel v6r9)

- Bug fixes
  . Fix a memory leak due to changed IJobOptionsSvc behaviour
    (RichKernel v6r5, LHCbAlgs v2r3)

2006-07-26 Boole v12r3

This version uses projects Gaudi v18r6, LHCb v21r3, Lbcom v5r3
  and databases XmlDDDB v30r8, XmlConditions v1r8, ParamFiles v4r3, FieldMap v4r7
Requires input from Gauss v24r3 or greater. Output needs Brunel v30r1 or greater

This is a maintenance release, fully compatible with the DC06 production

- New features:
  . Application exit status now propagates application manager status. Should
    allow to better catch initialization failures in Dirac (GaudiConf v9r8)
  . Possibility to switch off the magnetic field or use a scaling factor on
    the field map (see options described in Det/Magnet v3r2 release notes)
  . Add Boole.PreloadGeometry option (default false) 
    (LHCbKernel v6r9, DetDescSvc v1r5)

- Bug fixes:
  . No more annoying messages from Cint at start of job (Root 5.12.00)

- Monitoring changes:
  . Normalise OT occupancy histograms per event (OTMonitor v2r3)
  . Improvements in the printout of counters at finalization (GaudiAlg v9r7)
  . Speed up Velo cluster decoding (VeloDAQ v3r4)

- Packaging changes:
  . Digi file content now picked up from $STDOPTS (GaudiConf v9r8)
  . Code cleanups (OTSimulation v3r7, OTAssociators v4r1, OTDet v6r5, OTDAQ v2r6)

2006-06-27 Boole v12r2

This version uses projects Gaudi v18r5, LHCb v21r2, Lbcom v5r2
  and databases XmlDDDB v30r8, XmlConditions v1r8, ParamFiles v4r3, FieldMap v4r7
Requires input from Gauss v24r3 or greater. Output needs Brunel v30r1 or greater

This is a maintenance release, fully compatible with the DC06 production

- Bug fixes:
  . Backward compatible fixes for amd64_gcc345 (DAQEvent v6r5, DigiAlg v4r4p1)
  . Fix a new[]/delete[] mismatch (DAQEvent v6r5)
  . Add missing ./ to path of executables in Boole.job
  . Add default and copy constructors to PackedMCVertex struct (PackedEvent v2r1)

- Environment changes:
  . Modify valgrind.job to always execute on 5 events

- Monitoring changes:
  . Change printout of spillover event numbers

2006-06-22 Boole v12r1

This version uses projects Gaudi v18r5, LHCb v21r1, Lbcom v5r1
  and databases XmlDDDB v30r8, XmlConditions v1r7, ParamFiles v4r3, FieldMap v4r7
Requires input from Gauss v24r3 or greater. Output needs Brunel v30r1 or greater

This is a bug fix release for the DC06 production

It is the first version that can also run on slc4_ia32_gcc345 platform

- Bug fixes:
  . Fix in DigiContent.opts, MCHeaders of spillover events were not saved
  . Fix a header file to compile with gcc 3.4.5 (MuonAlgs v6r0p1)

- Environment changes:
  . Environment variables to force usage of castor2 on linux at CERN no longer
    set by application (now in group login) (GaudiConf v9r7)
  . Change default input files to Gauss v24r9 signal data

- Monitoring change:
  . Add an MC monitoring phase. Checks that MCParticles and MCVertices are the 
    same before and after packing.

- Tuning change:
  . Speed improvements in OT Simulation (OTSimulation v3r6)

2006-05-18 Boole v12r0

This version uses projects Gaudi v18r4, LHCb v21r0, Lbcom v5r0
  and databases XmlDDDB v30r7, XmlConditions v1r6, ParamFiles v4r1, FieldMap v4r7
Requires input from Gauss v24r3 or greater. Output needs Brunel v30r1 or greater

This release is fully compatible with DC06 productions

Changes relative to v11r5:

- Environment change:
  . Set environment variables to force usage of castor2 on linux at CERN
    (GaudiConf v9r6)

- New tuning:
  . Use Boost allocators in Event model classes. Speeds up Digi phase by 10%
    (EventSys v21r5, GaudiObjDesc v9r5)
  . Increased active radius on pixel chip in HPDPanel (RichDet v9r4)
  . Fix an overlap in Rich1 HPDs (XmlDDDB v30r7)

- Monitoring changes:
  . Replace VeloClusterMoni with VeloRawClusterMoni
    (VeloAlgorithms v4r5, BooleMoni.opts)

2006-05-05 Boole v11r5

This version uses projects Gaudi v18r3, LHCb v20r4, Lbcom v4r4
  and databases XmlDDDB v30r6, XmlConditions v1r6, ParamFiles v4r1, FieldMap v4r7
Requires input from Gauss v24r3 or greater. Output needs Brunel v30r1 or greater

This is the second bug fix release for DC06 production.

Bug fixes:
  . MC/Rich/DigitSummaries and MC/Muon/DigitsInfo were not being saved correctly
    to the output .digi file (fixed in DigiContent.opts)
  . Fixed an overlap in Rich1 Aerogel volume (XmlDDDB v30r6)

2006-05-02 Boole v11r4

This version uses projects Gaudi v18r3, LHCb v20r4, Lbcom v4r4
  and databases XmlDDDB v30r5, XmlConditions v1r6, ParamFiles v4r1, FieldMap v4r7
Requires input from Gauss v24r3 or greater. Output needs Brunel v30r1 or greater

This is the first bug fix release for DC06 production.

New tuning:
  . Changed radius of curvature of RICH1 secondary mirrors from 90*m to 1000*m
    (XmlDDDB v30r5). Use v30r4 for data produced with Gauss v24r3 and v24r4
  . OT RawEvent gone from 24 to 48 Tell1 boards. One per quarter
    (OTSimulation v3r4, OTDAQ v4r2) 
  . Changed Velo default noise cut to 4.5 S/N for clusters and high threshold
    to 25 ADC counts. Changed high threshold definition from > number to >=
    (VeloAlgorithms v4r4)
  . Changed default ST thresholds to 4.0 cluster S/N and 10.0 high threshold
    (STAlgorithms v1r3)
  . Remove DAQ error bank from RawEvent, present only if errors from DAQ, e.g.
    missing sources (DigiAlg v4r3)

Bug fixes:
  . Workaround for Microsoft(tm) "extensions" that prevented static data members
    from being accessed consistently via inlined methods (VeloDet v10r5)
  . Bug fixes in the phi min/max of zone in DeVeloRType (VeloDet v10r5)

2006-04-19 Boole v11r3

This version uses projects Gaudi v18r3, LHCb v20r3, Lbcom v4r3
  and databases XmlDDDB v30r4, XmlConditions v1r6, ParamFiles v4r1, FieldMap v4r7
Requires input from Gauss v24r3 or greater. Output needs Brunel v30r1 or greater

This is the release for DC06 production.

Bug fixes:
  . Change logic of ST cluster particle and cluster to hit associators (weight by
    charge) (STAssociators v1r2)
  . Split the raw bank produced by L0CaloCandidate into two banks, one for 
    HCAL and one for the rest (L0Calo v9r2)
  . Split the L0Muon raw bank into 5 banks to match the 5 TELL1s output
    (L0MuonTrigger v5r2)
  . isInsideEfficient was discarding hits in OT stereo layers (OTDet v6r2)
  . Write a Velo bank for every sensor, even the empty sensors (VeloDAQ v3r2)
  . Fix to cope with a single cluster in a sensor in strip zero (VeloDAQ v3r2)
  . Fix bug in neighbour and channel distance methods (VeloDet v10r4)

Code cleanups:
  . Adapt to GaudiHistoAlg (OTMonitor v2r2)
  . Remove printing of PuVeto counter, was not filled (L0DU v7r1p2)
  . Minor clean-ups in DeOTDetector and DeOTModule (OTDet v6r2)
  . Minor clean-ups in OTRandomDepositCreator (OTSimulation v3r3)
  . Speed up in DeSTDetector findSector methods (STDet v2r3)
  . Connect MCHit to geometry using sensDetID (STAlgorithms v1r2,STCheckers v1r2)

2006-04-04 Boole v11r2

This version uses projects Gaudi v18r3, LHCb v20r2, Lbcom v4r2
  and databases XmlDDDB v30r3, XmlConditions v1r6, ParamFiles v4r1, FieldMap v4r7
Requires input from Gauss v24r3 or greater. Output needs Brunel v30r1 or greater

This is the first release for DC06 production.

- New geometry
  . Backward incompatible changes to Velo geometry (VeloDet v10r3, XmlDDDB v30r3)
    . Rotated velo by 180 degrees around the z axis.  First sensor is now on the
      left side of LHCb
    . Fixed z positions of sensors by changing the separation between R and Phi
      sensors in a module.
    . Changed order of sensors on right side of detector to ensure that the
      number of modules with the phi sensor facing downstream is the same as the
      number with the r sensor facing downtream.
  . Fixes to IT sensor numbering (XmlDDDB v30r3)
  . Transparent changes due to beam pipe integration and improved material
    description (details in XmlDDDB v30r3 release notes)

- New tuning
  . Update of Velo resolution parametrisations (VeloAlgorithms v4r2)

- Bug fixes
  . Removed bug in ST strip numbering (STDet v2r2)
  . Protections against divide by zero in VeloDigiMoni (VeloAlgorithms v4r2)
  . Fix in Copy.opts to pick up correct PoolCopy.opts (Boole v11r2)
  . Fix initialization of PU sensor geometry (PuVeto v7r1p1)
  . Fix pulseShape loop (VeloSimulation v2r2)
  . Suppress warnings about missing RichPixelProperties (RichReadout v2r0p1)

- Interface changes
  . New OTDet interface
    (OTDet v6r1, OTDAQ v4r1, OTMonitor v2r1, OTSimulation v3r2, DigiAlg v4r2)

2006-03-27 Boole v11r1

This version uses projects Gaudi v18r2, LHCb v20r1, Lbcom v4r1
  and databases XmlDDDB v30r2, XmlConditions v1r5, ParamFiles v4r1, FieldMap v4r7
Requires input from Gauss v24r2 or greater. Output needs Brunel v30r0 or greater

This is the first bug fix release for commissioning of the software for DC06.

- New tuning
  . Minor tuning of STEffMonitor, STClusterResolution (STCheckers v1r1)
  . Change histogram scales in Calo histograms (CaloMoniDigi v2r1)
  . Use FieldMap v4r7 by default
  . New ActiveToTotal calibration for Ecal and Hcal (XmlConditions v1r5)
  . Add beam pipe to geometry description (XmlDDDBv30r2)

- Bug fixes
  . Fix handling of Velo interstrip position bits and threshold bit
    (VeloDAQ v3r1, DigiEvent v1r1)
  . Fix bug in ST position tool for cluster resolution (STTools v2r1)
  . Fix CaloCandidate type in L0CaloCandidateFromRaw (L0Calo v9r1, L0Event v15r1)
  . Fix bug in RichDigiQC summary printout information (RichDigiQC v3r1)

- Persistency changes
  . Change strip mapping of ST flipped hybrids (STDAQ v2r4, XmlConditions v1r5)
    N.B. This change makes output incompatible with Boole v11r0 output
  . Add L0DU bank to RawEvent (L0DU v7r1)
  . Bug fix when writing L0ProcessorData, MuonCandidates (L0MuonTrigger v5r1)
  . Add the encoding and decoding of the date format in Muon data (MuonDAQ v2r1)
  . Invert order of pixel row and column in RIchSmartID so "natural" sorting
    matches the order of the pixels from the HPD electronics (LHCbKernel v6r3)
  . Update ODIN bank structure according to EDMS 704084 v2.0
    (DigiAlg v4r1, DAQEvent v6r3)
  . Invert order of pixel row and column in RichSmartID (LHCbKernel v6r3)
  . Save VeloCluster linkers instead of VeloDigit ones, and use them for
    BuildMCTrackInfo (VeloAssociators v2r1, DigiAlg v4r1)

- Repackaging
  . Move CaloZSupAlg to CaloDAQ (CaloDAQ v2r1, CaloDigit v2r1)
  . Changes to DeVelo interface (VeloAlgorithms v4r1, VeloSimulation v2r1,
      DigiAlg v4r1, PuVeto v7r1, DeVelo v10r2)
  . OTDataFunctor moved to LHCbKernel (OTSimulation v3r1, LHCbKernel v6r3)
  . Changes to remove RichCondition package 
    (RichDet v9r2, XmlConditions v1r5, XmlDDDB v30r1)

2006-03-13 Boole v11r0

This version uses projects Gaudi v18r2, LHCb v20r0, Lbcom v4r0
  and databases XmlDDDB v30r0, XmlConditions v1r4, ParamFiles v4r1, FieldMap v4r6
Requires input from Gauss v24r1 or greater. 
Output incompatible with existing Brunel versions

This is the first release for commissioning of the software for DC06.

It breaks all backward compatibility and introduces many new features, including
a major redesign of event model classes following the review in Autumn 2006,
changes for the 1MHz readout, changes to the geometry to introduce detector
tilts and capability for misalignement, and changes to change replace CLHEP with
MathCore.

All packages have been touched. Please look at release notes of the individual
packages for details.

2005-12-21 Boole v10r3

This version uses LHCb v19r4, Lbcom v3r2, XmlDDDB v27r1, ParamFiles v4r0
Requires input from Gauss v19r3 or greater. Output needs Brunel v28r1 or greater

- New features
  . New implementation of L0Muon simulation
    (ProcessorKernel v2r0,L0MuonKernel v4r0,L0MuonTrigger v4r0,ParamFiles v4r0)

- New tuning
  . Adapt code to new implementation of L0MuonCandidate
    (L0DU v6r10, L0Checker v3r2p2, Boole.opts)

- Persistency changes
  . L0Muon no longer present in L1Buffer, now added to RawBuffer 

2005-11-18 Boole v10r1

This version uses Gaudi v17r2, LHCb v19r2, Lbcom v3r1, XmlDDDB v27r0
Requires input from Gauss v19r3 or greater. Output needs Brunel v28r1 or greater

Introduces support for Conditions data, taken from DBASE/Det/XmlConditions/v1r3

- New features
  . Rich readout mapping taken from Conditions (RichKernel v5r6, RichDet v8r5, 
           RichDAQ v2r3, RichReadout v1r14, XmlDDDB v27r0, XmlConditions v1r3)

- New tuning
  . OT readout window now 75ns (XmlDDDB v27r0)

- Geometry changes
  . Prepare support for v200511 geometry (spherical secondary Rich mirrors,
    new aerogel description) (RichDet v8r5, RichTools v1r8, 
                              XmlDDDB v27r0, XmlConditions v1r3)
  . Prepare support for Field046 magnetic field map (FieldMap v4r6)
    (For both the above, options not yet released, need Gauss data for testing)

- Persistency changes
  . Add more history information to MCRichDigits (RichReadout v1r14)
  . Add new Rich MC relations MC/Rich/DigitSummaries
    (RichEvent v8r5, RichMCTools v2r7, RichMCAssociators v1r0)

- Bug fixes
  . Make sure a bank always exists for all Rich level1 boards. Previously, no
    bank was saved if its board had no hits in all HPDs 
    (RichReadout v1r14, RichDAQ v2r3)

2005-11-15 Boole v10r0

This version uses Gaudi v17r2, LHCb v19r1, Lbcom v3r0, XmlDDDB v26r2
Requires input from Gauss v19r3 or greater. Output needs Brunel v28r0

- New features:
  . Added Muon digitization monitoring (MuonMoniDigi v1r0)

- New tuning
  . ST clustering by Beetle instead of by port (STDAQ v1r6, ITAlgorithms v15r1)

- Persistency changes:
  . Uses SEAL Reflex persistency. Backwards compatible for input data

2005-09-21 Boole v9r5

This version uses Gaudi v16r5, LHCb v18r9, Lbcom v2r5, XmlDDDB v26r2

- New features:
  . Cleanup options files, to take advantage of new -= syntax for array options
  . valgrind.job now uses faster addrcheck tool instead of memcheck

2005-07-18 Boole v9r4

This version uses Gaudi v16r5, LHCb v18r8, Lbcom v2r4, XmlDDDB v26r1
Requires input from Gauss v19r3 or greater. Output needs Brunel v27r4 to v28r0

- New features:
  . Added FromDigi.opts:    example options for re-running Boole on .digi file
  . Added ExpertCheck.opts: documents available histograms for expert checking
  . Replaced L0Monitor with L0Checker algorithm in MoniL0Seq sequence. Prints a
    a more complete summary table (BooleMoni.opts)

- New tuning
  . New 75 ns readout gate for OT (OTDAQ v1r3)
  . Modification to OT efficiency calculation, following 2005 test beam 
    (OTSimulation v2r0)
  . Removed ResolutionCor from DeOTDetector, following 2005 test beam
    (OTDet v5r6)
  . Improvements to Velo description in 200507 geometry (XmlDDDB v26r1)

- Persistency changes
  . OT RawBank Tell1 headers reduced from three words to one (OTSimulation v2r0)
    Backwards incompatible, requires OTDAQ v3r3 or greater to decode.
  . Real data simulation file (.raw) now contains *only* DAQ, DAQ/RawBuffer and
    DAQ/L1Buffer. It no longer contains empty directory nodes, nor does it
    "rembember" the existence of other directory nodes, which are "killed" by 
    the EventNodeKiller algorithm (RawWriter.opts, LHCbAlgs v1r8)

- Bug fixes:
  . Last Velo Phi bank was missing from L1Buffer in cases when this bank would be
    empty (VeloDAQ v2r3p2)
  . Fix memory leak in XmlMuonRegionCnv (MuonDet v4r8)
  . Do not create GOL headers for empty GOLs in OT RawBank (OTSimulation v2r0)

- Obsolete feature
  . It is no longer necessary to have specific job options for copying a Boole
    output file, one can use instead the new InputCopyStream, as configured in
    $EVENTSYSROOT/options/PoolCopy.opts, with any Gaudi application. CopyRaw.opts
    has been removed from the Boole options, Copy.opts now simply includes
    PoolCopy.opts. (GaudiSvc v14r0, EventSys v20r8)

2005-06-27 Boole v9r3

This version uses Gaudi v16r4, LHCb v18r7, Lbcom v2r3
Requires input from Gauss v19r3 or greater. Output needs Brunel v27r2 to v28r0

- Packages modified: RichDigiQC v2r2, RichReadout v1r13

- New features
  . Property "Boole.HistoProduce" replaces Boole.doHistos" (LHCbAlgs v1r7)
  . Split memory histogram into two, both with "Boole.HistoSize" bins
    + hID=2: one entry per event for first HistoSize events
    + hID=3: one entry every HistoSize events, starting at event 1
    (LHCbAlgs v1r7)
  . Add support for v200507 geometry (same as v200506 plus Velo with alternate
    R-sensors rotated, and with possibility to add external misalignment files)
    (v200507.opts, XmlDDDB v26r0, DetDesc v15r2, DetDescCnv v2r7, VeloDet v9r7)
  . Minor improvements to Rich monitoring printout (RichDigiQC v2r2)

- Repackaging
  . Move non-persistent classes MCRichDeposit and MCRichSummedDeposit from
    RichEvent to RichReadout (RichReadout v1r13, RichEvent v8r4)
  . Rename RichHPDIDTool RichHPDInfoTool (RichDigiQC v2r2, RichDAQ v2r2)

 - Bug fixes:
  . Fix memory leaks at finalisation (XmlTools v5r3p1, DetDesc v15r2)

2005-06-13 Boole v9r2

This version uses Gaudi v16r4, LHCb v18r6, Lbcom v2r2
Requires input from Gauss v19r3 or greater. Output needs Brunel v27r2 to v28r0

- Geometry changes
  . Add support for v200506 geometry (tilted Calo+Muon) (XmlDDDB v25r1)
  . Add support for alignment conditions (DetDesc v15r1, DetDescCnv v2r6)

- Repackaging
  . Links sequence in Relations phase split into Velo, IT, OT, Links
  . All generic options now taken from $LHCBROOT/options/LHCbApplication.opts
    (LHCb v18r6)

- Persistency changes:
  . Packed containers now saved to /Event/pSim (PackedEvent v1r0)
  . Remove registry entry of Event/Header as it's not saved (DAQEvent v5r2)

- New tuning
  . Speed improvement in VeloChannelID constructor (LHCbKernel v5r11)

- Bug fixes
  . Add hack to bypass circular detector element dependency discovered with new
    GeometryInfo implementation (MuonDet v4r7)
  . Always calculate effective number of nucleons N() from A() of materials
    (DetDesc v15r1, DetDescCnv v2r6)
  . Fix the densities of Na, K, Sb, Cs (XmlDDDB v25r1)

2005-05-30 Boole v9r1

This version uses Gaudi v16r4, LHCb v18r5, Lbcom v2r1 (also CLHEP 1.9, ROOT 4.0) 
Requires input from Gauss v19r3 or greater. Output needs Brunel v27r1

- Functionality changes
  . Added Output phase, with Pack sequence, to pack Collisions, MCParticles,
    MCVertices before writing to .digi (Boole.opts, DigiContent.opts)

- Persistency changes:
  . Remove saving of empty directories /Raw, /Rec, /Rec/Relations, as they can be
    recreated explicitly by DataOnDemandSvc
  . Replace MC/Collisions, MC/Particles, MC/Vertices by packed equivalent in
    /Event/Rdst. Unpacked versions (from .sim file) are no longer reachable from
    .digi file. Use $RDSTROOT/options/UnpackDigi.opts to decode (Rdst v1r1)

2005-05-10 Boole v9r0

This version uses Gaudi v16r3, LHCb v18r4, Lbcom v2r0 (also CLHEP 1.9, ROOT 4.0) 
Requires input from Gauss v19r3 or greater. Output needs Brunel v27r0 or greater
Based on v8r4, adapted to new project structure

- Packages removed: ITAlgorithms, ITCheckers (moved to Lbcom)

- Packaging changes
  . Changed handling of RawBuffer/RawEvent in L0Calo simulation
    (CaloDAQ v1r1, L0Calo v8r2, Boole.opts)

- Persistency changes:
  . Add Link/Raw/Calo/Digits (created by CaloAssociators via DataOnDemandSvc)
  . Remove MC/Ecal/Digits, MC/Hcal/Digits, MC/Prs/Digits, MC/Spd/Digits

2005-05-03 Boole v8r4

Merged from branch v8r3b
This version uses Gaudi v16r3, LHCb v18r3, Lbcom v1r3 (also CLHEP 1.9, ROOT 4.0)
Requires input from Gauss v19r3 or greater. Output needs Brunel v26r3 or greater
Incompatible with DC04 data and programs.

- New functionality:
  . Add CopyRaw.opts to merge files produced by RawWriter

- Bug fixes:
  . Fix RawWriter.opts to write also directory nodes needed for reconstruction
  . Fix Copy.opts to copy also required directory nodes

2005-04-21 Boole v8r3

This version uses Gaudi v16r3, LHCb v18r3, Lbcom v1r3 (also CLHEP 1.9, ROOT 4.0) 
Requires input from Gauss v19r3 or greater. Output needs Brunel v26r3 or greater
Incompatible with DC04 data and programs.

- Packages removed:  TrgTools
- Packages modified: ITAlgorithms v14r4p1, MuonBackground v1r10p1,
                     OTSimulation v1r4

- Modified packaging
  . Program name and version now set via preprocessor directives in GaudiMain
    and printed by ApplicationMgr. APPVERSION env. variable no longer needed
    (GaudiSvc v13r3, GaudiConf v9r1, GaudiAlgs v1r5)
  . TrgL0Filter now in EventUtils v1r0, removes dependency on TrgTools

- Bug fixes:
  . Fix bug in Velo sensor thickness, affects S/N (XmlDDDB v24r1)
  . Fix various small memory leaks (OTSimulation v1r4, ITAlgorithms v14r4p1,
    MuonBackground v1r10p1, L0mConf v2r4p4, GaudiAlg v8r7)
  . Fix an uninitialized variable (L0MuonKernel v3r0p1)
  . Remove TBronch warning, fix castor file access on Windows (ROOT 4.03.04a)

2005-04-08 Boole v8r2

This version uses Gaudi v16r2, LHCb v18r2, Lbcom v1r2 (also CLHEP 1.9, ROOT 4.0) 
Requires input from Gauss v19r3 or greater. Output needs Brunel v26r2 or greater
Incompatible with DC04 data and programs.

- Packages added:    TrgTools v7r2
- Packages modified: MuonAlgs v5r7, MuonBackground v1r10

- New features:
  . New Boole.PreloadGeometry option to preload geometry tree at initialize
    (default false) (LHCbAlgs v1r4, DetDesc v6r4)
  . Add options for L0 trigger filtering (L0Filter.opts)
  . Add options for writing the RawBuffer only (RawWriter.opts)
  . Add options for RTTC production (v200412 geometry, output only on L0YES,
    second output .raw stream: RawBuffer and L1Buffer only) (rttc.opts)

- New tuning:
  . L0 bandwidth division thresholds updated for DC04 data (L0DU v6r9)
  . L0 Muon repackaging and performance optimization (L0MuonTrigger v3r0)

- Geometry changes (XmlDDDB v24r0)
  . Update Rich2 centre tube description and add centre tube supports
  . Change Velo sensor thickness to 300um
  . Fix overlaps in Velo RF foil 
  . Remove options for v200402 geometry
  . Give detector element to Velo half stations (with VeloDet v9r4)

- Persistency changes
  . Add Link/ITDigits2MCHits, /Link/OTTimes2MCHits, /Link/VeloClusters2MCHits
    and remove Relations/OTTimes2MCHits Relations/VeloClusters2MCHits,
               Relations/ITDigits2MCHits
  (DigiContent.opts,ITAssociators v2r11,OTAssociators v3r2,VeloAssociators v1r14)
  . Backwards incompatible changes to internals of MCHit and MCParticle
    (Event v4r7)
  . Removed from MCRichHit unneccessary inheritance from MCHit (RichEvent v8r3)
  . Added to MCMuonHit inheritance from MCHit, for consistency (MuonEvent v4r0)
    (and adapted MuonAlgs v5r7, MuonBackground v1r10 accordingly)
  . Added L0Muon bank to L1Buffer (L0MuonTrigger v3r0)
  . Added header word ST RawBuffer banks (STDAQ v1r5)

- Bug fixes:
  . Fix memory leak in XmlDDDB parser tool (XmlTools v3r4)
  . Fix memory leak in L0Muon (L0MuonTrigger v3r0)
  . Fix bug in MCTrackInfo truth information for OT (MCTools v1r13)
  . Backward incompatible (for data) fix to TTLayer.cpp (STDet v1r3)

2005-03-08 Boole v8r1

This version uses Gaudi v16r2, LHCb v18r1 (also CLHEP 1.9, ROOT 4.0) 
Requires input from Gauss v19r2. Cannot process DC04 Gauss output.
Output data incompatible with DC04 versions, needs Brunel v26r1

- Packages modified: RichReadout v1r12, RichDigiQC v1r2

- Modified functionality
  . Improved monitoring of Rich digitization performance (RichDigiQC v1r2)

- Persistency changes:
  . Backwards incompatible changes to RawBuffer (bank header now has 2 words)
    and to L1Buffer bank types for L0Calo, L0DU, L0Muon (DAQEvent v5r0)
  . Add DAQ bank to RawBuffer, replaces "Header" bank   (DAQEvent v5r0)
  . Backwards incompatible changes to RichSmartID       (LHCbKernel v5r8)
  . Add history bit fields to MCRichDigit (RichEvent v8r2, RichReadout v1r12)
  . Remove unused photo-detector numbers from MCRichHit (RichEvent v8r2)

- Bug fixes:   
  . Small fix to isInside method (VeloDet v9r3)
  . Fix problem with "Next" spillover event (RichReadout v1r12)

2005-02-11 Boole v8r0

This version uses Gaudi v16r0, LHCb v18r0 (also CLHEP 1.9, ROOT 4.0) 
Requires input data from Gauss v19r0 or v19r1 - Cannot process DC04 Gauss output.
Output data incompatible with DC04 versions, needs Brunel v26r0

- Packages removed:  AsctToLinker, L0mConf, L0MuonKernel (now in LHCbSys)
          L0Calo, L0DU, L0MuonTrigger, PuVeto, OTMonitor (now in LbcomSys)
- Packages modified: ITCheckers v2r4p1, MuonBackground v1r9, VeloAlgorithms v3r3

- Persistency changes:
  . Monitoring histograms now saved in Root format
  . Uses Root version of Muon background parameterization 
    (MuonBackground v1r9, ParamFiles v3r10)  

- Bug fixes:
  . Changes to avoid duplicate entries in linker tables (AsctToLinker v1r4)
  . Digitize also last four Velo sensors (VeloAlgorithms v3r3, VeloDAQ v2r3)
  . Use correct velo sensor numbering (XmlDDDB v23r2)

- Packaging changes:
  . Removed dependency on HbookCnv, replaced by RootHistCnv

2005-01-25 Boole v7r3

This version uses Gaudi v15r3, LHCb v17r3. Can process DC04 Gauss output.
Output data incompatible with DC04 versions, needs Brunel v25r3

- Packages modified: L0Calo v8r0, CaloDigit v1r8, OTSimulation v1r3, 
                     RichReadout v1r11, RichDigiQC v2r0, ITCheckers v2r4

- New functionality:
  . Add support for L1 board mapping and for zero suppressed HPD format in Rich
    RawBuffer encoding. Default is v2: L1 board mapping, zero suppressed
    (RichReadout v1r11, RichDAQ v2r0, RichKernel v5r2)

- Modified functionality:
  . CaloZSup now produces banks for the L0 Calo trigger. These (and CaloDigits) 
    are also used as input by CaloFillRawBuffer and CaloFillPrsSpdRawBuffer
    (L0Calo v8r0, CaloDigit v1r8, CaloDAQ v1r0)
  . Improvements to Rich monitoring information (RichDigiQC v2r0)
  . Modification to DataQuality configuration file boolerich.xml to reflect 
    changes in Rich monitoring printout

- Persistency changes:
  . More compact coding of Prs/Ecal/Hcal energies in RawBuffer
    (needs CaloDAQ v1r0 to decode)
  . L1 board mapping used for Rich RawBuffer encoding
    (needs RichDAQ v2r0 to decode)

- Bug fixes:
  . Protect against empty OT banks in RawBuffer (OTSimulation v1r3)
  . ITMCDepositChecker: Initialise detector element before use (ITCheckers v2r4)

- Packaging changes:
  . Move to new algorithm base classes (L0Calo v8r0)

2005-01-13 Boole v7r2p1

Documentation moved to BooleSys package (from Digi/Boole):
 . These release notes
 . doxygen configuration files

2004-12-10 Boole v7r2

This version uses Gaudi v15r3, LHCb v17r2. Can process DC04 Gauss output.
Output data incompatible with DC04 versions, needs Brunel v25r2

- Packages modified: PuVeto v6r0, VeloAlgorithms v3r2, L0MuonKernel v2r3,
                     L0MuonTrigger v2r3p1, OTSimulation v1r2, OTMonitor v1r1

- New functionality:
  . Support for v200412 geometry (Rich1 EDR, Rotated Rich2, TT KLM layout,
                                  new Velo numbering)
    Not yet tested, needs new Gauss data (v200412.opts, XmlDDDB v23r1)

- Modified functionality
  . Uses new Velo detector element and geometry. Sensor numbering incompatible
    with DC04 version. (LHCbKernel v5r5, VeloEvent v13r2, VeloDet v9r1,
    VeloDAQ v2r1, VeloAlgorithms v3r2, PuVeto v6r0)

- Removed functionality
  . Support for v200411 geometry (Rich1 EDR, Rotated Rich2, TT KLM layout)

- Persistency changes
  . New velo sensor numbering in RawBuffer, requires VeloDet v9r1, VeloDAQ v2r1
    to decode

- Bug fixes
  . Fix to allow L0 studies with no M1 (L0MuonKernel v2r3, L0MuonTrigger v2r3p1)

- Packaging changes
  . Move to new GaudiAlgorithm base classes
    (OTDAQ v3r2, OTSimulation v1r2, OTMonitor v1r1)

2004-11-25 Boole v7r1

This version uses Gaudi v15r3, LHCb v17r1. Can process DC04 Gauss output.
Output data incompatible with DC04 versions, needs Brunel v25r0 or v25r1

- Packages removed:  CaloMonitor (obsolete)
- Packages added:    CaloMoniDigi (monitoring algorithms for Digi files)
- Packages modified: L0MuonKernel v2r2, L0MuonTrigger v2r3,
                     RichDigiQC v1r8, RichReadout v1r10, ITAlgorithms v14r4

- New functionality:
  . Support for v200411 geometry (Rich1 EDR, Rotated Rich2, TT KLM layout)
    Not yet tested, needs new Gauss data (v200411.opts, XmlDDDB v23r0)
  . Support for Data Quality checking. Data Quality reference files built from
    DC04 log files are provided in $LHCBRELEASES/DBASE/DQ/BooleDQ/v1r0. XML
    descriptions of log file fields to be verified are in $BOOLEROOT/DQ.
    To verify a log file, execute the command:
      python2.2 $LHCBHOME/scripts/checklog.py $BOOLEROOT/DQ/Boole_options.xml
         

- Modified functionality
  . Improvement to initialisation of random numbers. Now three seeds are used
    (run and event numbers, plus hash of string containing name, event number,
    run number). Can optionally skip some random numbers before every event,
    by setting job option Boole.SkipFactor (default is zero). Can revert to
    previous behaviour by setting job option Boole.SingleSeed = true;
    (LHCbAlgs v1r2)
  . Use rootd (instead of rfio) to access castor files
    (GaudiConf v8r1, v200402.opts)
  . New options for L0Muon studies (L0MuonKernel v2r2, L0MuonTrigger v2r3)
  . Minor change to RichSignal algorithm (RichReadout v1r10)
  . Remove explicit creation of MagneticFieldSvc and ParticlePropertySvc. First
    one is created on demand, second one is not needed (Boole.opts)
  . Use clustering by port for RawBuffer filling (STDAQ v1r4, ITAlgorithms v14r4)
  . Number of ST RawBuffer clusters per board limited to 256 (STDAQ v1r4)
  . Use DataOnDemandSvc to instantiate associator algorithms 
    (Relations v2r0, AssociatorsSys v2r1)

- Removed functionality:
  . Removed support for 200402-TT-alt and Field043 geometries 

- New packaging
  . Calo monitoring moved to CaloMoniDigi package

- Persistency changes
  . Fixed TT L1Buffer encoding requires removal of DC04 decoding fix when reading

- Bug fixes
  . Fix in getPadIndex for Muon stations 4 and 5 (L0MuonKernel v2r2)
  . Fix DC04 bug in L1Buffer encoding for TT (ITAlgorithms v14r4)

2004-11-01 Boole v7r0

This version uses Gaudi v15r3, LHCb v17r0. Can process DC04 Gauss output.
Output data incompatible with DC04 versions, needs Brunel v25r0 or greater

- Packages removed:  OTDAQ (moved to LHCbSys), OTAlgorithms (obsolete)
- Packages added:    OTSimulation v1r1, OTMonitor v1r0
- Packages modified: AsctToLinker v1r3

- Modified functionality
  . MCOTTimeCreator replaces MCOTDigitCreator. MCOTTimes used to fill RawBuffer
  . OTDigitMonitor replaced by OTTimeMonitor and OTTimeChecker
  . OTTimeCreator + OTTime2MCHitAlg replace OTDigit2MCHitAlg for truth relations
  . Introduce OT beam tilt capability. Tilt angle currently set to 0.

- Persistency changes
  . More compact RawBuffer (Otis headers removed), requires OTDAQ v3r* to decode
  . Relations/OTTimes2MCHits replaces Relations/OTDigits2MCHits
  . Link/Raw/OT/Times        replaces Link/Raw/OT/Digits

2004-10-27 Boole v6r3

This version uses Gaudi v15r3 and LHCb v16r3. Built on v6r2b2 branch
It can process DC04 data. Data produced requires Brunel v24r3

- Persistency changes
  . Remove Event/Header from output file (can be rebuilt from RawBuffer)

2004-09-20 Boole v6r2

This version uses Gaudi v15r2 and LHCb v16r2. It needs CMT v1r16p*.
It can process DC04 data

- Packages removed:  VeloDAQ, STDAQ, MuonDAQ (Moved to LHCbSys)
- Packages modified: CaloMonitor v2r2p1, CaloDigit v2r7, L0MuonTrigger v2r2,
                     L0DU v6r7p2

- Modified functionality
  . New test input data files taken from DC04 (v200402.opts)

- New tuning
  . Use new Pt kick value in L0 Muon trigger (L0MuonTrigger v2r2, L0DU v6r7p2)

- Bug fixes
  . Workaround for core dump on exit() (GaudiPoolDb v1r9)
  . Various fixes for memory leaks (GaudiSvc v12r3, GaudiPoolDb v1r9)
  . Increase default size of PAWC common block to 250000 words, as workaround 
    to problems seen when extending its size (HbookCnv v14r2p1)

2004-07-26 Boole v6r1

This version uses Gaudi v15r1, needs CMT v1r16. It can process DC04 data

- Packages modified: L0DU v6r7p1

- Bug fixes
  . Fix EventSelector.FirstEvent, in v6r0 was skipping twice the requested 
    events (GaudiSvc v12r2)

2004-07-22 Boole v6r0

This version uses Gaudi v15r0, needs CMT v1r16. It can process DC04 data

- Packages added   : AsctToLinker (converts "Relations" to "Linker")
- Packages removed : LHCbTools, RichDAQ (moved to LHCb)
                     RichDetTools (renamed RichTools, moved to LHCb)
                     RichUtils (suppressed, moved into RichKernel)
                     Trg/* (no longer used in Boole)
- Packages modified: STDAQ v1r3, ITAlgorithms v14r3, ITCheckers v2r3,
                     RichReadout v1r9, RichDigiQC v1r7, DigiAlg v3r0,
                     L0mConf v2r2p3, L0MuonKernel v2r1p1, L0MuonTrigger v2r1,
                     VeloAlgorithms v2r9p3, MuonBackground v1r8, MuonAlgs v5r6,
                     OTAlgorithms v13r4p1

- Modified functionality
  . GaudiAuditors no longer used for algorithm timing, uses GaudiSequencer
    internal timing instead
  . L1 trigger simulation removed (Trg packages can be executed on Boole output)
  . Remove obsolete GaudiRootDb capability

- New tuning
  . Initialize MuonGeometry tool completely at intialisation, not during first
    ~10 events (MuonTools v3r7)
  . New tuning and bug fixes in L0 Muon trigger simulation
    (L0mConf v2r2p3, L0MuonKernel v2r1p1, L0MuonTrigger v2r1, ParamFiles v3r8)

- New packaging
  . Use new GaudiSequencer base class for ProcessPhase (LHCbAlgs v1r0)
  . Use new GaudiAlg base classes
    (STDet v1r2, ITAssociators v2r9, STDAQ v1r3, ITAlgorithms v14r3,
     ITCheckers v2r3, RichReadout v1r9, RichDigiQC v1r7, RichTools v1r0,
     DigiAlg v2r4)
  . Converters of "Relations" to "Linker" MC truth tables moved to AsctToLinker
    package (from TrgChecker) (AsctToLinker v1r2)
  . Removed dependency on GaudiAud, GaudiTools and GaudiDb packages
  . Removed dependency on Trg packages
  . Removed dependency on PYTHIA via HepMC (HepMC v4r121p0)
  . Use new LbAppInit instead of BooleInit (LHCbAlgs v1r0)
  . Use CreateL1Buffer and CreateRawBuffer (DAQEvent v4r4)
  . Take external packages from LCG_Interfaces area

- Bug fixes
  . Add protection for crazy MCHits in BuildMCTrackInfo (MCTools v1r6)
  . Removed fix from L0mConf v2r2p1, due to access violation on Windows

2004-05-24 Boole v5r9

Version used for DC04

- Packages modified: L0mConf v2r2p1, L0Calo v7r6

- Bug fixes
  . Protect size of L1 output bank to not exceed 126 words, so as not to 
    trigger exception and job abort in this rare case (L0Calo v7r6)
  . Release DOM tree after use, in L0MXmlReader (L0mConf v2r2p1)

2004-04-29 Boole v5r8

Version used at start of DC04

- Packages modified: L0Calo v7r5, PuVeto v5r7

- New tuning
  . 12% correction to HCAL calibration coefficient  (XmlDDDB v22r2)
  . 7.2% correction to ECAL calibration coefficient (XmlDDDB v22r2)

- Bug fixes
  . Fix a major bug in filling L1Buffer for L0Calo (L0Calo v7r5)

2004-04-28 Boole v5r7


- Packages modified: TrgTools v3r1, TrgVeloTT v3r1, L1Reco v3r1,
                     MuonBackground v1r7

- Bug fixes
  . Fix to allow processing of TT-alt geometry (TrgVeloTT v3r1)
  . Fix a memory leak (savannah bug 3129) (MuonDet v4r6)
  . Add a protecton, fixes crash in production 478.183 (MuonBackground v1r7)
  . Make MC/Signal optional and Gen/HardProcesses mandatory on Digi definition

2004-04-23 Boole v5r6

Requires data produced with Gauss v15r4 or later

- Packages modified: CaloMonitor v2r2, RichUtils v3r9, RichDAQ v1r4,
                     RichDetTools v4r1, RichReadout v1r8, RichDigiQC v1r6,
                     MuonAlgs v5r5, L0MuonTrigger v1r1p1

- New tuning
  . Faster erase() implementation for KeyedContainers. Speeds up VeloSim by a
    factor 3 (GaudiKernel v15r3)
  . Change Muon digitization time gate to 25. (from 20.) (MuonAlgs v5r5)

- Persistency changes
  . Add Gen/HardProcesses, Gen/HepMCEvents, MC/Signal (produced by Gauss v15r4)
  . Remove Spillover hits from output file
  . Use POOL_1_6_3
  . Move objects described in L1Output.opts file into DigiContent.opts, 
    and remove L1Output.opts

- Bug fixes
  . Do not use spillover hits for Muoncoord2MCParticle association
    (MuonAssociators v1r3)
  . Do not retrieve VeloCluster2MCHitAsct tool at every event
    (VeloAssociators v1r10)
  . Minor fix in a monitor class
    (RichReadout v1r8, RichdigiQC v1r6)
  . Fix L0MuonTrigger.FoiXSize (L0MuonTrigger v1r1p1)

2004-04-15 Boole v5r5

- Packages modified: LHCbTools v1r1, MuonBackground v1r6, MuonAlgs v5r4,
                     MuonDAQ v1r1

- New features
  . Can now use Copy.opts (GaudiSvc v11r6)
  . Location of XmlDDDB file is printed at start of job (GaudiSvc v11r6)

- Changed features
  . PoolDbCacheSvc.InputCatalog and .OutputCatalog no longer supported:
    use PoolDbCacheSvc.Catalog instead, with support for search list;
    first catalog in list is read/write, others are read only. 
    (POOL v1r162p0, GaudiPoolDb v1r6)

- New tuning
  . Tuning of muon background for Gauss data 
    (ParamFiles v3r5, MuonBackground v1r6, MuonAlgs v5r4)

- Persistency changes
  . Using POOL_1_6_2 (POOL v1r162p0, GaudiPoolDb v1r6)

- Bug fixes
  . All tools correctly released at end of job (GaudiSvc v11r6)
  . Fix a typo in TimingTool::finalize (LHCbTools v1r1)
  . Fix the physical pad size in M1R2 and M1R3     (XmlDDDB v22r1)
  . Fix the Xtalk edge sigma in M1 (from cm -> mm) (XmlDDDB v22r1)
  . Fix 1.5 cm shift of a TT ladders near the edge (XmlDDDB v22r1)

2004-04-01 Boole v5r4

Requires XmlDDDB v22r0 or greater
Requires data produced by Gauss v14r3 or greater

- Packages modified: L0mConf v2r2, L0MuonKernel v1r1, L0MuonTrigger v1r1,
                     L0Calo v7r4, PuVeto v5r6, VeloAlgorithms v2r9p2,
                     ITAlgorithms v14r2, ITCheckers v2r2, STDAQ v1r1,
                     TrgChecker v3r0p1, OTDAQ v2r0, MuonAlgs v5r3

- New features
  . Field045 map is the default. To process data produced with the old field
    map, use v200402-Field043.opts instead of v200402.opts
  . Disable addition of SICBMC generated LHC background, due to imcompatibilities
    with current Gauss generated data
  . Additional histograms for Velo detailed monitoring 
    (VeloAlgorithms v2r9p2, VeloDet v8r8p2)
  . Added example job options (Copy.opts) for copying one or more files. Can be
    used to merge several files, or to produce files with reduced (or extended..)
    DIGI content (N.B. requires GaudiSvc v11r5, not yet released)

- Persistency changes
  . Add PuVeto raw hit output to RawBuffer (PuVeto v5r6)
  . New version of RawBuffer for OT: new bank structure, multiple hit
    capability, new straw numbering (OTDAQ v2r0)
  . HepMC can now be made persistent also for POOL data (GenEvent v3r1)
    Disabled from Digi content as it requires data produced with Gauss v15r4
    or greater, not yet released.

- Bug fixes
  . Fix large memory leak (Savannah bug 2821) (L0mConf v2r2)
  . Fix a rounding problem (Savannah bug 2914) (MuonAlgs v5r3)
  . Fix a compiler warning (L0MuonKernel v1r1)
  . Use public instead of private tool (L0MuonTrigger v1r1)
  . Add protection for dead regions on Velo sensor (VeloAlgorithms v2r9p2)
  . Minor fix to test on path length in MCITDepositCreator (ITAlgorithms v14r2)
  . Avoid linking with unnecessary libraries (requirements)

2004-03-18 Boole v5r3

Requires XmlDDDB v22r0 or greater
Requires data produced by Gauss v14r3 or greater

- Packages added:    STDAQ v1r0, VeloDAQ v1r0, TrgMonitor v1r0, L0mConf,
                     L0MuonKernel, L0MuonTrigger
- Packages removed:  L0Muon
- Packages modified: OTDAQ v1r1, VeloAlgorithms v2r9p1, CaloDigit v1r6,
                     CaloMonitor v2r0, ITAlgorithms v14r1, ITCheckers v2r1,
                     RichReadout v1r7, CaloMonitor v2r1, RichUtils v3r8,
                     RichDAQ v1r3, RichDetTools v4r0, RichDigiQC v1r5,
                     TrgTools v3r0, TrgChecker v3r0, TrgVelo v3r0,
                     TrgVeloTT v3r0, L1Reco v3r0

- New features
  - New ST code to fill L1Buffer and RawBuffer (and remove old PrepareTTL1Buffer)
    (STDAQ v1r0, ITAlgorithms v14r1, ITCheckers v2r1, ITAssociators v2r8)
  - New and repackaged Velo code to fill L1Buffer and RawBuffer
    (VeloDAQ v1r0, VeloAlgorithms v2r9p1)
  - Updated Trg packages for L1, to use new ST and Velo buffers, and new tuning
    (TrgTools v3r0, TrgVelo v3r0, TrgVeloTT v3r0, TrgVeloTT v3r0, L1Reco v3r0)
  - New monitoring for Trg primary vertex (TrgMonitor v1r0)
  - New version of the L0 muon trigger simulation
    (L0mConf v2r1, L0MuonKernel v1r0, L0MuonTrigger v1r0, ParamFiles v3r4) 
  - Use new version of ParticlePropertySvc
    (GaudiSvc v11r4, ParamFiles v3r4)
  - Remove fix for Rich energy deposit, now fixed since Gauss v14r3
    (RichReadout v1r7)
  - New HPD layout in Rich2 (backwards incompatible) (XmlDDDB v22r0)

- Persistency changes
  - Default output file is now POOL
  - Backwards incompatible change to internal encoding of VeloChannelID
    (LHCbKernel v4r3)
  - Use VeloChannelID of first strip as key of VeloCluster
    (VeloEvent v13r0p1, backwards incompatible)
  - Remove VeloClusters, ITDigits and OTDigits from Digi output
    (only if POOL output, due to GaudiDb bug)
  - Fix Spillover with POOL (GaudiPoolDb v1r5)

- Bug fixes
  - Fix long finalization time (RichReadout v1r7)

- New packaging
  - Valgrind error suppression file for Gaudi and external package errors moved
    to $STDOPTS/Gaudi.supp (GaudiConf v7r6, valgrind.job)
  - Removed VeloRound, round() function now implemented in Kernel/LHCbMath.h
    (LHCbKernel v4r3, VeloKernel v1r4, VelDet v8r8p1, VeloAlgorithms v2r9p1)
  - Use new Gaudi base classes. New printout for tools not finalised
    (GaudiAlg v7r1, GaudiTools v8r1, LHCbKernel v4r4, CaloMonitor v2r0, 
     CaloDigit v1r6, RichUtils v3r8, RichDetTools v4r0, RichReadout v1r7,
     RichDigiQC v1r5)

2004-02-10 Boole v5r2

Backwards incompatible changes to TT geometry.
Requires data produced with XmlDDDB v21r0 or greater.

- Packages added:    MuonDAQ v1r0, OTDAQ v1r0
- Packages modified: ITAlgorithms v14r0, ITCheckers v2r0,
                     TrgTools v2r1, TrgVeloTT v2r0, RichUtils v3r7,
                     RichDetTools v3r6, RichDAQ v1r2, RichReadout v1r5,
                     MuonAlgs v5r1, L0Calo v7r3, L1Reco v2r1
- Packages removed:  L1VeloTrack, L1Decision

- New functionality
  - Support for new TT layouts (4-3-3-4: v200402.opts, 4-2-1-1-2-4: TT-alt.opts) 
    (XmlDDDB v21r0, STDet v1r0, ITAlgorithms v14r0, ITCheckers v2r0)
  - Possibility to use LHC background events in Rich digitization
    (RichReadout v1r5)
  - Support for mirror segmentation in Rich geometry (switched off by default)
    (RichReadout v1r5, RichDetTools v3r6)
  - Add Muon digits to Raw buffer (MuonDAQ v1r0, MuonDet v4r5, XmlDDDB v21r0)
  - Add OT digits to Raw buffer (OTDAQ v1r0)
  - Add Vertexing and use of L0Muon to Trg tracking
    (PhysEvent v8r1, TrgEvent v2r1, TrgTools v2r1, L1Reco v2r1)

- New tuning
  - Updated TT detector geometry (beam pipe hole, guard ring size etc.)
    (XmlDDDB v21r0)
  - Adaptation of Trg software to new TT geometry (TrgVeloTT v2r0, L1Reco v2r1)
  - Fix physical pad size in M1R1 (XmlDDDB v21r0)

- Event model / persistency changes
  - Add depositedCharge() to ITCluster (ITEvent v13r1, ITAlgorithms v14r0)
  - Add one significant bit to time field of MuonDigit
    (MuonEvent v3r1, MuonAlgs v5r1)
  - Replace Relations/L0CaloCandidates and Relations/L0CaloFullCandidates old
    style relations with new style Link/Trig/L0/Calo, FullCalo (L0Calo v7r3)
  - Remove all (old) L1 objects from Digi output. To be replaced by new Trg
  - Remove Muon/Digits (can be rebuilt form RawBuffer)

- Dropped functionality
  - Dropped support for pre-2004 geometries (removed v200311.opts, RiSicbGeom)
  - Dropped old L1 trigger algorithms (removed L1VeloTrack, L1Decision)

- Known problems
  - Cannot use POOL input file for Spillover or LHC background events. Use a 
    GaudiRootDb file even if main events are read from POOL. To be fixed in Gaudi
  - Usage of LHC background in Rich and ST is switched off in job options
    until LHC background events can be generated in Gauss with latest geometry
  - OTDigits are still on Digi output, due to bug in Gaudi that breaks 
    OTDigits2MCHits relations if OTDigits are not saved
  - L1Decision not available, waiting for new code working in Trg framework

2004-01-23 Boole v5r1

- Packages removed:  MCTools, CaloInterfaces, CaloUtils, RiSicbGeom
                     (all now in LHCB project)

- New tuning
  - use GSL spline in ITChargeSharingTool for interpolation (ITAlgorithms v13r2)

- New functionality
  - Add PrepareL0DUL1Buffer to fill L1 buffer with L0 decision unit result
    (L0DU v6r7)
  - POOL improvements:
    . All output classes can now be written (LHCbKernel v4r1)
    . Factor 2.5 speed improvement in writing - now 1.4 s/evt (Gaudi v14r1)
    . No more limit on output file size (POOL 1.5.0)

- Bug fixes
  - bug 2241: spillover probability was not reproducible because it was 
              determined before event by event random number initialization

2004-01-22 Boole v5r0

Built against GAUDI_v14r0, LHCB_v15r0.

- Packages added: MCTools v1r2, TrgTools v2r0, TrgChecker v2r0, TrgVelo v2r0,
                  TrgVeloTT v1r0, L1Reco v2r0
- Packages modified: RiSicbGeom v3r8, DigiAlg v2r3, L0Calo v7r2, L0Muon v6r7,
                     PuVeto v5r5, L0DU v6r6, L1VeloTrack v5r6, L1Decision v2r4,
                     ITAlgorithms v13r1, CaloInterfaces v3r1, CaloUtils v4r6,
                     CaloMonitor v1r6, CaloDigit v1r5, VeloAlgorithms v2r9,
                     MuonAlgs v5r1, MuonBackground v1r5, RichDigiQC v1r4,
                     RichDAQ v1r1, RichDetTools v3r5, RichReadout v1r4

- New tuning
  - New Ecal and Hcal calibration for "ActiveToTotal" parameter (XmlDDDB v20r1)

- New features
  - Possibility to use POOL persistency. Disabled by default. 
    To be used with care (tests by experts)
  - Populate RawBuffer and L1Buffer with L0Calo (full) clusters. L0CaloDigit
    algorithm removed (L0Calo v7r2)
  - Populate RawBuffer and L1Buffer with Velo clusters (TrgTools v2r0)
  - Populate L1Buffer with TT clusters (TrgTools v2r0)
  - Execute new Trg (L1) tracking starting from L1Buffer
    (TrgTools v2r0, TrgVelo v2r0, TrgVeloTT v1r0, L1Reco v2r0, TrgChecker v2r0)
  - Create MCTrackInfo (acceptance and reconstructible info for MCParticle)
    Currently uses the Trg tracking definition of reconstructible (MCTools v1r2)

- oodigi changes
  - Options file DigiContent.opts moved to Boole from GaudiConf. 
    File BooleOutput.opts is obsolete and has been removed.
  - L0/Calo and L0/FullCalo removed (can be rebuilt from RawBuffer)
  - Gen/HepMCEvents added as optional (will be written if present on Gauss o/p)
  - Link objects added (MC truth for tracking digits)
  - MCTrackInfo added


2003-12-12 Boole v4r0

Built against GAUDI_v13r0, LHCB_v14r0.
 
- Packages modified: RiSicbGeom v3r7, CaloInterfaces v3r0, CaloMonitor v1r5,
                     RichUtils v3r6, ITAlgorithms v13r0p1, RichDetTools v3r4,
                     RichReadout v1r3, MuonBackground v1r4p1, L0Muon v6r6,
                     L1VeloTradck v5r5, L1Decision v2r3, RichDAQ v1r0p1

- New features 
  - multiple PV reconstruction (max 3) for L1 (L1Decision v2r3)

2003-12-04 Boole v3r2

** Input data must be produced with:                                       **
**   Gauss  v12r7  or greater, XmlDDDB v19r0 or greater,  v200311 geometry **
** Output data must be reconstructed with Brunel v21r2 or greater          **

- Packages modified: CaloDigit v1r4p1, ITAlgorithms v13r0, ITCheckers v1r4,
                     L1VeloTrack v5r4, RichDetTools v3r3, RichReadout v1r2p1,
                     OTAlgorithms v13r4

- New features
  - Many changes in IT digitization. (ITAlgorithms v13r0) 
    See talk at Amsterdam tracking workshop 20/11/2003
      * New model for energy deposition in Silicon
      * Convert to adc counts/simulate saturation
      * Noise levels tuned to testbeam
      * Remainders --> retuned to laser/testbeam. Spline parameterization
      * Different noise/remainders in IT L/R T/B boxes
      * Pick up machine background if it is there
  - More IT checking histograms (ITCheckers v1r4)
  - Introduce OTQuarters in OT geometry 
    (OTAlgorithms v13r4, OTDet v5r0, XmlDDDB v20r0)

- oodigi changes (GaudiConf v7r4)
  - Removed Trig/L1/OTClusters
  - Redefinition of OTChannelID bits (backwards incompatible, LHCbKernel v2r10)

- New packaging
  - Modified i/face IITsignalToNoiseTool (ITAlgorithms v13r0, L1VeloTrack v5r3p1)
  - Rename some Rich tools (RichDetTools v3r3, RichReadout v1r2p1)

- Bug fixes
  - Fix an unitialized variable (bug #1963) (CaloDigit v1r4p1)
  - Fix an unitialized variable (bug #1973) (L1VeloTrack v5r4)

- Removed features
  - Remove OTDigitToL1 as this is broken by new OT geometry and will in any
    case be replaced by new algorithm filling L1Buffer. (L1VeloTrack v5r4)
  - Remove support for v256r0 geometry (not supported by OTDet v5r0)

2003-11-28 Boole v3r1

** Input data must be produced with:                               **
**   SICBMC v264r2 or greater + SicbToOORAWH v3r0, v256r0 geometry **
**   Gauss  v12r5  or greater, XmlDDDB v19r0,     v200311 geometry **
** Output data must be reconstructed with Brunel v21r1 or greater  **

- Packages added:    RichDAQ v1r0
- Packages modified: CaloDigit v1r4, DigiAlg v2r0, OTAlgorithms v13r3,
                     RiScbGeom v3r6, RichDetTools v3r2, RichDigiQC v1r3,
                     RichReadout v1r2, RichUtils v3r5

- New features
   - Populate RawBuffer with calorimeter digits (CaloDigit v1r4)
   - Populate RawBuffer with rich digits (RichDAQ v1r0)
   - Handle LHC background in Calo digitization (CaloDigit v1r4)
   - Improved default OT monitoring, with possibility of switching on 
     detailed histograms (OTAlgorithms v13r3)
   - Moved Spillover and LHC background to new "Init" phase, "Data" sequence
   - Moved BooleInit to new "Init" phase, "Boole" sequence

- oodigi changes (GaudiConf v7r3, EventSys v15r2)
   - HltBuffer etc. event classes renamed RawBuffer etc.
     (DAQEvent v3r0, DigiAlg v2r0)
   - RawBuffer now contains encoded rich and calorimeter digits
   - Rich and Calorimeter digits removed, can be rebuilt from RawBuffer
   - Collisions saved also for Spillover events

- New tuning
   - Speed improvements to Rich geometry (RichDet v6r2)
   - Small fixes to Rich (RiSicbGeom v3r6)
   - Speed improvements to Relations (LHCbKernel v2r9)

- Removed features
   - Removed support for SICBMC optimization TDR geometry (v254r1)


2003-11-10 Boole v3r0p1

- Packages modified: DigiAlg v2r1p1, Boole v3r0p1

- Bug fix
   - Correctly serialize HltBuffer and L1Buffer (DAQEvent v2r1)

2003-11-04 Boole v3r0

- New packages: Kernel/LHCbTools v1r0
- Packages modified: RichUtils v3r4, RiSicbGeom v3r5, RichDetTools v3r1,
      RichReadout v1r1, RichDigiQC v1r2, DigiAlg v2r1, L1VeloTrack v5r3

- New features
   - Add a new "Relations" phase, to create all Relations tables needed for the
     output file, independent of whether Moni phase is executed
   - Print a timing normalization at intialization (DigiAlg v2r1, LHCbTools v1r0)
   - Move ITDigitToL1 and OTDigitToL1 to the IT/OT digitization sequences

- New tuning
   - Changes to Rich HPD digitization
     (RiSicbGeom v3r5, RichUtils v3r4, RichDetTools v3r1, RichReadout v1r1)
   - Changes to Rich monitoring (RichDigiQC v1r2)

- DST changes
   - Change to RichSmartID. Data produced with this version of Boole requires
     Brunel v21r*. (RichKernel v4r0, RichEvent v6r0)
   - HLTBuffer event class renamed HltBuffer 
     (DAQEvent v2r0, GaudiConf v7r2, DigiAlgs v2r1)

- Geometry changes
   - Renamed v200309-hpd.opts to v200311.opts
   - Removed v256-MaPMT.opts and v200309.opts (MaPMT geometries)   

- Bug fixes
   - Fix uninitalised variable in RichHPDSignalSICB.cpp (bug 1669)

- Package changes
   - Remove dependency from ParamFiles for beam data in LumiTool: "BeamCrossRate"
     and "TotalCrossSection" taken from job options (DigiAlgs v2r1)
   - Remove dependency from CERNLIB for solution of quartic polynomial. Now done
     in private code, to be submitted to GSL (RichDetTools v3r1)
   - Remove unneccessary usage of ITDigit2MCHit associator from ITDigitToL1
     (L1veloTrack v5r3)

2003-10-16 Boole v2r1

- Packages modified: Boole v2r1, MuonBackground v1r4, DigiAlg v2r0p1
- Packages removed:  MuonUtils

- Bug fixes
   - MuonBackground was not finding new SpilloverAlg (MuonBackground v1r4)
   - Spilloveralg was filling NextNext event instead of PrevPrev (DigiAlg v2r0p1)
   - Fix bugs 1653, 1654 (BooleMoni.opts, BooleMoniProd.opts)
   - Remove some obsolete sicb related commands from Boole.job and valgrind.job

- Packaging changes
   - Remove unneccessary MuonUtils package

2003-10-09 Boole v2r0

First version of Boole completely independent of ZEBRA. To process SICBMC data,
first convert it to oosim format using SicbToOORawh, version v3r0 or greater 

Can process data produced with:
  SICBMC v264r2 or greater
   - for standard cdf geometry,  use v256r0.opts  options file
   - for Rich MaPMT options,     use v256r0-MaPMT.opts options file
  Gauss v12r5 or greater
   - for baseline (MaPMT) September 03 geometry, use v200309.opts options file
   - for September 03 geometry, HPD option,  use v200309-hpd.opts options file

(Can also process 2003 TDR production data, but with low efficiency due to
 incompatibilities of the input data with the new Rich digitization) 

- Packages added:    RichReadout v1r0, RiSicbCnv v3r4
- Packages modified: Boole v2r0, DigiAlg v2r0, ITCheckers v1r3p1, MuonAlgs v5r0,
     MuonBackground v1r3, OTAlgorithms v13r2, RichDetTools v3r0, RichDigiQC v1r1,
     RichUtils v3r3, L1Decision v2r2, VeloAlgorithms v2r8
- Packages removed:  BrunelSicb, BrunelAlgs, MCTools, recevt, recrich

- New features
  . Reads data (including spillover) in oosim format
  . Use MergeEventAlg for spillover, allows any number of spillover events; 
    default is three (/Prev, /Next, /NextNext) (DigiAlg v2r0)
  . Deploy Rich C++ digitization. Supports both MaPMT (baseline) and HPD options 
    (RichKernelv3r2, RichUtils v3r3, RichDet v6r0, RichDetTools v3r0, 
     RichEvent v5r1, RiSicbGeom v3r4, RichReadout v1r0, RichDigiQC v6r2)
  . All parameterisations taken from ParamFiles directory (includes versioning
    needed by production tools). LHCBDBASE environment variable no longer needed.
  . Create L1Buffer and HLTBuffer for data in DAQ format. Currently these are 
    empty, sub-detector code is needed to populate this according to front end
    specifications. (DAQEvent v1r1, DigiAlg v2r0)
  . CreateL1Event algorithm at start of L1 sequence, gives access to L1Buffer in
    L1 algorithms. Should be included in L1 timing measurements.
    (DAQEvent v1r1, DigiAlg v2r0)

- Removed features
  . Removed SICB common block. Can no longer read Zebra data directly, must be
    first converted to oosim by SicbToOORawh program (v3r0 or greater). 
	  Boole.cards no longer needed
  . Removed access to LHCBDBASE. cdf files still in use have been moved to
    ParamFiles package (v2r1 or greater)

- oodigi output changes (GaudiConf v7r1)
  . Add DAQ/L1Buffer and DAQ/HLTBuffer
    (N.B. these are placeholders, currently empty. Will eventaully contain
     the complete digitized event, to simulate data format from DAQ)
  . Add MC/Rich/Digits to preserve relation to MC truth (forgotten in v1r0)

- New tuning
  . Switch on 10kHz noise in OT digitization (OTAlgorithms v13r2)
  . New parameterisation of muon background, following fix to "TOF bug"
    (MuonBackground v1r3)

- Bug fixes
  . Fix to BooleMoni.opts to switch on OT monitoring
  . Fix to BooleMoniProd.opts to switch on CALO monitoring

- New packaging
  . Include RiSicbGeom package in BOOLE project to remove dependency on SICBOO
    project
  . Removed dependencies on NAGC 
    (L1Decision v2r2, ITCheckers v1r3p1, VeloAlgorithms v2r8)


2003-07-17 Boole v1r0

First version of the LHCb digitization program.
  - Replaces the digitization and trigger phases of Brunel
  - Produces output to be reconstructed by Brunel v20r0

This verson is based on digitization+trigger phases of Brunel v19r1.

- Changed packages relative to Brunel v19r1 (to adapt to new Calo, Rich MC Hit):
     DigiAlg v1r1, L0Calo v7r1, CaloDigit v1r3

Changes relative to Brunel v19r1
--------------------------------
Event model changes:
 - Boole cannot read oorawh files produced with SicbToOORawh v1r* due to changes
   in the Calo and Rich MC Hit definitions. Use data converted with SicbToOORawh
   v2r*

Bug fixes:
 - Correct a bug with rotation of TT stereo layers (ITDet v1r5)