ROOT Version v5-32-00 Patch Release Notes
A new production version ROOT v5-32-04 has been released June 13, 2012.
The AFS version of v5-32-04 for many different platforms and compilers can be found at:
/afs/cern.ch/sw/lcg/app/releases/ROOT/5.32.04/
The complete source tree for all systems (54 MB) is available here:
ftp://root.cern/root/root_v5.32.04.source.tar.gz
Alternatively get the source from Git using:
git clone http://root.cern/git/root.git root-v5-32 cd root-v5-32 git checkout -b v5-32-04 v5-32-04
After obtaining the source read the file README/INSTALL (in short just do: cd root; ./configure; make).
To get the source of the head of the v5-32-00-patches branch do:
git clone -b v5-32-00-patches http://root.cern/git/root.git root-v5-32
Changes in head of v5-32-00-patches branch
- I/O
- Corrected the calculation of the number of read calls in TRFIOFile (See the forum post on the subject. Fixed by revision 45140).
- Add protection against corrupted ROOT File (wrong length stored in the file header) (Revision 45170).
- Fix for recent versions of castor (Revision 48474).
- Proof
- CINT
- Silence warnings on MacOS 10.7 with current XCode (r46000).
Changes in version v5-32-04 (June 13, 2012)
- Core
- Avoid risk of executing the tear down routines twice at process termination when -q is used and there is no input file descriptor. (revision 44838).
- Fix linking of qtcint.dll when explicitly linking is required (see the related forum post).
- Net
- Fix in TWebFile reading using https (via TSSLSocket).
- I/O
- Avoid seg in I/O operation if you change the prefetch settings after the cache is created (revision 44755).
- Add an explicit 'Close' for the read cache so that we can insure that all the (concurrent) outstanding connection/use of the TFile are closed before closing the file.
Warning: Binary incompatible change in TFileCacheRead.h
- Tree
- ReadFile() must stop at EOF (r44196, bug #94455).
- Prevent negative consequences of call SetAutoFlush with a default value (44279, bug #94669).
- Repair the plotting of string histogram by TTree::Draw
- Fixes issue in TChainIndex that made reading the first entry of the 2nd and subsequent files in the TChain not beeing properly reading when using the index. (Fixes Savannah #94910).
- Avoid an unnecessary flushing of the TTreeCache after the first time it filled (revision 44750)
- Proof
- Import patch #44397 changing the default merging procedure used histograms to cover correctly all the cases.
- Import patch #44048 removing the automatic creation of TDrawFeedback by TProofChain.
- Import patch #44701 fixing several stability issues in xproofd. Patch is server side only; only the upgraded xproofd (or libXrdProofd) is equired.
- Import patch #42703 removing unused variables in xproofd.
- CINT
- genreflex: fix an issue with base classes defining operator new() (bug #94981, r44426).
- RooFit
- Fix bug in binned generation of extended pdf (patch #44630 )
- Hist
Changes in version v5-32-03 (May 9, 2012)
- Build System
- Port to gcc 4.7 in both c++03 and c++11 mode.
- Core
- Fix a (10 year) old issue with wrong MacOS X TZ reporting (which for OSX included the DST). Now we return purely the geographical TZ offset from UTC independent of DST (as for all other platforms).
- On MacOS X correctly return the physical memory in GetSysInfo().
- Enable AltGr on Windows (r44098, bug #94123).
- I/O
- In TFileMerger and hadd when objects can not be merged do not overwrite the last object in the set with the first (but rather, appending it to the output file like the others elements of the set). This fixes Savannah #93193
- In TSeqCollection::Merge (and hence in TFileMerger), do not append non-mergeable object but rather add a copy of the original. This fixes Savannah issue #93401.
- In TFileMerger and hadd, re-enable the warning about non-mergeable objects.
- Tree
- Fix circular TTree when its contains objects. This fixes Savannah issue #93282.
- TreeViewer
- Fix a problem with array names (e.g. fVertex[]) as reported on the forum.
- Proof
- Import patch #42921 to add also to TXUnixSocket the possibility to disable reconnections via the variable TXSocket.Reconnect (0 disable reconnections; default is 1) .
- Import patches #42775, #42788, #42882 and #42883 enabling parallel dataset verification.
- Import patches #43101, #43884 and #43886 adding in proofbench full support for dataset generation on external storage.
- Import patch #43567 fixing a few issues with dataset verification of back-ends different from xrootd.
Changes in version v5-32-02 (March 27, 2012)
- Build System
- Fix for building with external OpenSSL in non system location. Fixes issue #92502, r43338.
- CINT
- Avoid creating dictionary where TClass can not find the CINT dictionary for an STL collection (case of nested collection where the inner collection are requested with the explicit std::). This fixes the Savannah report 92491.
- I/O
- Proof
- Import patch #43245 fixing an issue with forcing local copies of files before merging (bit not always honored).
- Import patch #43295 to remove dependencies of netx on xrootd-related internal headers (the patch also removes external support for xrootd versions older than 4 years)
- Import patch #43107 to add the possibility to force submerging at node level, i.e. one submerger per physical machine; in this way the network traffic can be minimized, for example when merging large output files.
- Import patch #43426 fixing a problem with TProofOutputFile (more flexibility in the automatic definition of the env LOCALDATASERVER).
- Import patch #43440 fixing an issue with the username used to access a remote file in the xproofd daemon. Fixes a problem when retrieving files from workers where the username is different, e.g. PoD on gLite.
- Import patch #43470 fixing an backward compatibility issue affecting TProofBench::MakeDataSet.
- QT
- Repair generation of qtcint (see the forum post #13636.
- Histfactory
- adjusts the ranges of the nuisance parameters for the statistical uncertainties and adds a simple method that is needed for the analytical Barlow-Beeston-lite-like optimization.
- fix a typo in the XML parsing for an option that has rarely been used.
Changes in version v5-32-01 (February 29, 2012)
- Build System
- Various corrections to the cmake build system.
- Better Solaris 11.11 / CC 5.12 support (r42776, r42777).
- Make distribution roottest-able, add missing stress files (r42879, r42880).
- Do not remove essential files during make clean (bug #90487, r43131).
- Cint
- Import patch #42566 fixing an issue preventing the generation on the dictionary for MathCore on some 32bits distributions This fixes #90906.
- Import patch #42805 fixing the problem #83909 which leading to failure of the auto-dictionary generator when dealing with class template inside a namespace.
- Fix parsing of templated function names in Linkdefs (Savannah #90486, r42849).
- Fix G__ONELINE at 1024 even if configuring --with-cint-longline (bug #90330, r42584).
- Warn if selection.xml references a field that does not exist (bug #90061, r42899).
- Silence warning in Shadow.h on Windows (r42902).
- Fix the executing of TPad * pp = (TPad*)gPad, see the report on the forum.
- Core
- Import patch #42757 fixing memory leak due to multiple allocations of gLibraryVersion.
- Add missing implementation for TGenericClassInfo::GetDirectoryAutoAdd.
- I/O
- TTree
- Resolve #89645 which could lead to segmentation fault when writing a sparse branch (in a large TTree) with a very long branch name.
- Make sure that in the tertiary operator implementation we always load the branch that are needed (even in the case cond ? y : -y where cond is false). This fixes #90826.
- Net
- Fix in case of redirection in TWebFile (fixes issue 91689).
- RooFit
- Extend string parsing buffer in RooWorkspace factory to 10k
- Allow explicit control over normalization of constraint terms through argument GlobalObservables() in RooAbsPdf::fitTo()
- In RooMultiVarGaussian Support analytical integration of parameters as well
- Faster parameter lookup inside RooMinuit
- Bug fix in RooAddPdf in handling of recursive fractions with non-extended pdfs
- Bug fix in RooAddPdf::expectedEvents() with fraction coefficients where transformation by range integral ratio is needed for expected yield
- Bug fix in RooHist::makePullHist (solves Savannah #89945)
- Bug fix in RooCurve::findPoint (solves Savannah #89949)
- Bug fix in RooDataHist::adjustBinning (solves Savannah #89947)
- Bug fix in error messaging in RooProdPdf (solves Savannah #89125)
- Bug fix in private copy ctor of RooDataHist (solves Savannah #85506)
- Documentation fix for RooAbsData (solves Savannah #84662)
- Add option house average instead of bin center for residual and pull histograms (patch #4948)
- Use createIntegral() inside RooAbsReal::createPlotProjection so that pdf projections with multiple ranges are supported
- Bug fix in RooAbsData::fillHistogram (solves Savannah #83858)
- Apply auto-conversion to vector-based data storage in legacy RooDataSet constructors that take TTrees as argument
- In RooAbsOptTestStatistic disable cache-and-track optimization if storage class is not RooVectorDataStore (as it is only supported by this class)
- Bug fix in RooRealMPFE -- pass applyWeightSquared flag to remote server - fixes problems with weighted likelihoods calculated with >1 CPU (solves Savannah #84369)
- Bug fix in RooAbsTestStatistic, forward applyWeightSquared flag to all components (solves Savannah #88479)
- In RooTruthModel fix analytical integration ranges for 'expBasis' for non-standard ranges
- Bug fix in RooAbsHiddenReal - fix infinite loop cause by typo
- In RooAbsAnaConvPdf only evaluate convolutions that are prefixed by a non-zero coefficient
- Bug fix in RooEffProd normalization when explicit normalization range is used
- In RooVectorDataStore fix caching of conditional pdfs in level-2 cache mode
- In RooVectorDataStore restrict cache recalculation to active elements (restores normal performance scaling behavior for NCPU>1)
- Fix bug in RooAbsAnaConv so that generation from convoluted pdfs also works after persistence (solves Savannah#90986)
- Fix bug in RooCachedReal so that passthrough debug mode is functional
- Fix uninitialized data member in RooCachedReal to fix unreproducible behavior when fitting with parameterized integral caching
- Bug fix in RooGaussModel in sinh and cosh convolution terms (solves Savannah #90845)
- Bug fix in expression of partial integral in RooSpHarmonic
- Reduce abundant info messages in operation of RooAbsCachedReal and RooCachedReal to debug stream
- Make size of RooAICRegistry payload scale dynamically to support complex fits
- Fix memory leak in RooAbsTestStatistic
- In RooEffGenContext use known maximum of efficiency function if advertised for more efficient operation
- Fix persistence problems in RooUnblind* classes (solves Savannah #91268)
- In RooProdPdf terminate calculation when value is <= cutoff rather than
- In RooAbsAnaConvPdf improve performance by caching range name strings in RooNameReg
- Make payload of RooCacheManager scale dynamically to improve performance of complex fits
- In RooHistPdf also fast-track integration over named ranges if these map to the full range definition
- In RooDataHist fix bug in partial bin volume corrections in partial integrals.
- Remove stray debug comment in RooAbsData
- Make RooDataSet::fillHistogram() also work correctly for weighted datasets
- RooStats
- Use flag=2 for constant term optimization in the evaluation of the profile likelihood test statistic
- Fix a bug in running an automatic scan in the HypoTestInverter.
- Fix a bug in making the Asimov data set in the AsymptoticCalculator when using workspaces generated with the new HistFactory version (see this RootForum post).
- Add possibility to make an AsimovDataSet using nominal nuisance parameter values
- Add ProfileLikelihoodTestStat::SetOneSidedDiscovery() for q0 and added ::SetSigned() option to allow test statistic to probe fluctuations corresponding to p-values >50%.
- Misc. fixes to SamplingDistPlot and HypoTestPlot
- HistFactory
- Fix a bug in ParamHistFunc constructor needed for bin-by-bin uncertainties (StatError Activate="True" and ShapeFactor) to work properly
- Change Poisson constraint terms to use "no rounding" flag, important for asymptotic calculations.
- Added InterpCode=4 to FlexibleInterpVar which avoids kink in likelihood near alpha=0 that cause problems for MINUIT.
- Hist
- Remove extra semicolon in THnSparse_internal.h (bug #89917, r42532)
- Proof
- Import in stressProof the patches introducing new tests, adding a return code consistent with standard test facilities and the option '-noprogress' to switch off the progress information which may create problems in wrapper applications intercepting the output (e.g. ctest). Patches imported: 42000,42142,42302,42303,42376,42386,42387,42393,42400,42416,42434,42451,42462 .
- Import patch #42578 fixing in getProof.C some issues mostly related to PROOF-Lite.
- Import class to analyse the performance tree (see description (broken) )
- Adapt patch #42671 fixing a problem with TProof::Load reported in the PROOF forum, caused by the fact that the additional files were not copied in the master sandbox but left in the cache.
- Import patch #42798 in TDataSetManagerFile consolidating the way duplicates are removed.
- Import patch #42904 in TProofOutputFile changing the default mode for merging histograms in TFileMerger, to reduce the memory footprint.
- Import patch #43074 fixing the way errors are handled when uploading files (e.g. UploadPackage).
- Import patch #43157 fixing a compilation issue with xrootd 3.0.2 .
- Core / Textinput
- Handle '{' on windows keyboards requiring Shift+AltGr+... (bug #90192, r42582, r42595).
- Graf3D
- Import rev 42084 from trunk: Fix crash on exit when stamped element map is not empty.
- GUI
- Import patch #42940 fixing a problem with new style when using SetBackgroundPixmap() with flat buttons.
- PyROOT
- Patch for #91505: allow null-characters in strings passed through the binding.
Changes in v5-32-00 (December 2, 2011)
- Build System
- Refine (aka fix) configuration of internal CINT array sizes (r42210, #88752).
- Hist
- Minuit2
- Roofit
- Add binned integration support for RooStats
- HistFactory
- Add ParamHistFunc for bin by bin statistical errors for template shapes
- Math
- Fix warning "undefined order of evaluation" in KDTree (r42191).
- Proof
- Core
- Zero out unused slots in TClonesArray::ExpandCreateFast(), was causing stale TClonesArray elements across TTree entries (r42333).
- I/O
- Fix issue in case of corrupted file with unreadable StreamerInfo record (#87896).
Changes in v5-32-00-rc2 (November 16, 2011)
- Build System
- Port to IBM AIX 7.
- Port to Solaris 11.11.11.
- Fix for libMathCore being removed from root.exe by smart linkers like on Ubuntu 11.
- Fixing missing dependency on Windows cmake build.
- Enable configuration of internal CINT array sizes (r41942, #88752).
- Core
- Fix the user of TThread static function before the creation of any TThread object.
- Make TSystem::StackTrace() work on Solaris and Ubuntu.
- Proof
- Import patch #41771 fixing an issue locating the xrootd authentication framework plugin in the PROOF client
- Import patch #41772 fixing an issue with the configuration of xrootd lib paths when xrootd libs are in system lib paths.
- Import patches #41785 and #41786 fixing an issue with packetizers preventing proper entry range processing and the file ordering in datasets.
- Import patch #41788 fixing an issue with AddInputData when objects are TTree or derived.
- Import patch #41801 fixing an issue in the packetizers potentially crashing PROOF-Lite at exit when using file-resident outputs.
- Import patch #41869 cleaning-up and simplifying the configuration of xrootd-related list of libraries.
- Import patches #41958 and #41999 to improve checks, definition and cleaning of the working dir in tutorials/proof/getProof.C
- Import patch #41904 extending TProofMgr::Ping functionality to 'xrootd' too. This is useful to test if an xrootd server is available at a given address.
- Hist
- Import patch #42017 to fix a bug in SetContent with time display histograms
- TCanvas::SaveAs() in a .C produced invalid C++ code for histograms drawn with the option COLZ (patch #42107)
- MathCore
- Import patch #41834 to fix a bug in TMath::Quantiles
- Import patch #41984 for fixes in Fitter classes for weighted and extended likelihood fits
- MathMore
- Import patch #42011 for fixing pruning of warning messages in Interpolation classes
- RooFit/RooFitCore
- Import patch #41862, #41871, #41899, #41976 to improve cache optimizations
- Patch #42089 (add new bin-integrator)
- Patch #42128 (various optimizations in pdf handling)
- Patch #42153 (further optimizations, expand bin-integrator to 2/3d, support for mixed binned/unbinned generation)
- RooStats
- Import patch #41799 to fix NLL evaluations in the AsymptoticCalculator
- Import patch #41810 to fix computation of expected limits in HypoTestInverterResult
- Import patch #41985 to fix for zero toys in HypoTest calculators
- Import patch #41887 to fix for reusing of NLL in SimpleLikelihoodRatioTestStat