ROOT Version v5-26-00 Patch Release Notes
A new production version ROOT v5-26-00g has been released September 29, 2011.
Binary tar balls are not available for patch releases.
The AFS version of v5-26-00g for many different platforms and compilers can be found at:
/afs/cern.ch/sw/lcg/app/releases/ROOT/5.26.00g/
The complete source tree for all systems (23.5 MB) is available here:
ftp://root.cern/root/root_v5.26.00g.source.tar.gz
Alternatively get the source from Subversion (broken) using:
svn co http://root.cern/svn/root/tags/v5-26-00g root
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-26-00-patches branch do:
svn co http://root.cern/svn/root/branches/v5-26-00-patches root
Changes in the head of the v5-26-00-patches branch
- configure
- Import patches to support smooth configuration on Ubuntu 11.04 or newer (automatic detection of the new location of the system libraries)
- Proof
- Import patches #41393 and #41399 fixing possible issues with PATH and LD_LIBRARY_PATH settings for proofserv.
- Adapt patch #39078 to bypass a compilation problem with gcc 4.5.2 on linux.
Changes in version v5-26-00g (September 29, 2011)
- Core
- Allow home directory to be specified via HOME shell var in case there is no correct passwd file entry, fixes issue 83268
- xrootd
- Backport in xrootd of this fix for ATLAS.
Changes in version v5-26-00f (June 21, 2011)
- IO
- Avoid spurrious warning message when reading file with a TTree writen with ROOT 5.29/03 or later:
Warning in <tstreamerinfo::compile>: Counter fNClusterRange should not be skipped from class TTree</tstreamerinfo::compile>
- Avoid spurrious warning message when reading file with a TTree writen with ROOT 5.29/03 or later:
- Proof
- In TProofPlayerRemote::IsClient, import fix #36440 adding a missing protection to fix a crash in submerger mode when the output list contained TProofOutputFile objects.
- In TProof, import fix #35965 to correctly update the number of submergers when workers die (it should fix an issue experienced by ALICE).
- Hist
- Xrootd
- In XrdSecProtocolkrb5, fix possible source of infinite loop during token init (backport from the Xroot head).
- In XrdClientConn, fix possible source of infinite loop during the authentication phase (includes check on the tty; backport from the Xroot head)
Changes in version v5-26-00e (Oct 13, 2010)
- Cint
- When generating code for the typedef within a class, make sure to treat bool as a built-in.
- Avoid a segmentation fault when parsing a class with virtual inheratance and a using declaration.
- genreflex: fix for functions taking a template with an array template parameter (r35203, bug #71800).
- Properly set the class version for ClassDef()'ed classes with a Reflex dictionary (r35514, r35515; bug #72749).
- Tree
- Prevent the use of an optimized StreamerInfo when reading a collection streamed member wise. The solves the issue 73642 reported in Atlas' Savannah.
- Fix TTree::Draw's problem with STL container accessed via a function (See bug #72398)
- Net
- In TFileStager::IsStaged, Import fix #32312: always close files after testing.
- Proof
- Fix out-of-bounds buffer access in RecvLogFile().
- Math
- Fix a problem in both Minuit2Minimizer and TMInuitMinimizer when re-defining a parameter (see ROOT Forum post 9947).
Changes in version v5-26-00d (Aug 24, 2010)
- Cint
- Enable genreflex selection of free-standing operators (r34616 r34639, bug #70660)
- Correctly handle C++-style comments in multi-line input. (r34746, bug #71186)
- Fix reset of value reference after parameter conversion (r34763).
- IO
- Add a protection when reading a file that contains a collection streamed memberwise .. but the collection was always empty.
- Proof
Changes in version v5-26-00c (Jul 6, 2010)
- Core
- Restore and improve time required to startup root.exe and load shared libraries.
- Improve configure's -fPIC detection for static libraries (r32354).
- Support of version detection for non-English Microsoft Compilers (r32434, bug #63411).
TString::operator+=(double)
had an insufficient precision (r32435, bug #62965).- Fix terminal interaction of ROOT started in the background (r32638).
- Fixes in TRefArray for issues: [Bad link], [Bad link], [Bad link].
- Fix warning issued by VC9 in TTimeStamp.h, fixes issue: [Bad link].
- Do not skip the first line when reading a root history file ([Bad link]).
- If the process is not attached to a tty or if it is in the background, do not ask the (absent) user if the process should be prevented from exiting in case of error ([Bad link])
- Improve's ACLiC handling of include directive (in particular add support for directory named "something-ICC" (r32784 r32873)
- Fix the ACLiC .d file by using the build directory in the target part (rather than the source directory) ([Bad link])
- In ACLiC's dependency files (.d) make sure to only use the unix notation (on windows) ([Bad link])
- Fix ACLiC's .d file dictionary version part ([Bad link])
- Make the error message of TClonesArray::SetClass(const char*) more specific. ([Bad link])
- Editline now allows FILE* based I/O on stdin if it's not a tty (Savannah #67484, r33561).
- In TClassTable, normalize 'long long' to 'Long64_t' in lookups as we are already doing on input (Savannah #66312, r34038).
- Add protection in TUnixSystem::StackTrace() in case gApplication is 0 ([Bad link]).
- Add missing entry for gsidcap protocol in P020_TDCacheSystem.C plugin macro ([Bad link]).
- I/O
- Added support for reading file written by 5.27/02 and containing a data member like:
std::container *fDataObjects;
which has been streamed member-wise (see revision r33173 of the trunk). - Avoid spurious warning message when reading file produced by ROOT v5.27 and above.
- Properly handle the case where a read rule is associate with the 'current' TStreamerInfo when this TStreamerInfo is used for writing.
- If the process is not attached to a tty or if it is in the background, do not ask the (absent) user if the process should be prevented from exiting in case of error ([Bad link])
- Improve's ACLiC handling of include directive (in particular add support for directory named "something-ICC" (r32784 r32873)
- Fix the ACLiC .d file by using the build directory in the target part (rather than the source directory) ([Bad link])
- In ACLiC's dependency files (.d) make sure to only use the unix notation (on windows) ([Bad link])
- Fix ACLiC's .d file dictionary version part ([Bad link])
- Make the error message of TClonesArray::SetClass(const char*) more specific. ([Bad link])
- Added support for reading file written by 5.27/02 and containing a data member like:
- Meta/Cint
- Prevent the automatic dictionary's name from containing colon characters (r32383).
- Add dictionary for
vector<pair<int, int> >
used inTSchemaRule
(r32476, bug #53130). - Prevent object related to TClass and CINT from being allocated inside a TMapFile.
- Fix the handling of function pointer types in TCint (r33121).
- Fix out of string range access error in TClassEdit ([Bad link]).
- Avoid reading before the start of an empty string in TClassEdit.cxx ([Bad link])
- Add one more valgrind suppression about TClassRef ([Bad link]).
- Add missing protection against creation of CINT and Meta objects during a TMapFile streaming ([Bad link])
- Remove fixed length array in TCint.cxx ([Bad link])
- Avoid problem case where TROOT::LoadClass is being called with a string that is changed/deleted during its execution (by an autoload for example). This fixes the problem seen in the forum topic [Bad link] ([Bad link])
- Cint
- PyCintex now uses RuntimeError instead of string exception (r32422, bug #63328)
- In genreflex, fix suppression of array-bounds warning with GCC (r32433, bug #63267).
- Improve detection of character set to not swallow some non-ASCII7 characters (r32445).
- Fix crashes in function invocations through Cintex on Windows with debug runtime (r32634).
- Work around an issue with calling virtual destructors in bases on Windows (r32635).
- Don't generate collection proxy for Windows iterators (r32637).
- Fix uninitialized members reported by Coverity (r32639, r32640, r32641).
- Avoid using colons in the AutoDict file names ([Bad link]).
- Replace a crash by an error message in the case where stdout or stderr is already redirect when a redirection is aksed for ( r32416).
- properly reset G__value::reftype.reftype when needed in the bytecode engine ([Bad link])
- Do not cause an overflow signal just because we cast the result of line processing to a long. Set it to LONG_MAX/MIN instead. ([Bad link]).
- In shift operators, do not always promote to long, stop at int first. ([Bad link])
- Fix the cases where the wrong function's parameter was being reset ([Bad link])
- Fix random memory read in G__cattemplatearg by avoid to use a pointer into memory thay might be move ([Bad link])
- Try to load explicitly ./filename but filename as the earlier is more friendly to dlopen ([Bad link])
- make sure we are loading the dictionary information about member function before looking for a template member function instance. This fixes the report [Bad link] in Savannah.([Bad link])
- Make sure to autoload a class before allocating any object of that type ([Bad link])
- Properly parse typedef long long* pointer when there is more than one space betweent the star and the typedef name. Generate the dictionary for vector < long long > and vector < unsigned long long > ([Bad link])
- Make sure the list of library is recalculated whenever G__smart_unload is used; This fixes Savannah [Bad link] ([Bad link])
- Avoid premature deletion of objects used as the default parameter of an interpreted function.
- Fix a crash caused by a misplaced semicolon (issue #68454, r33860)
- Avoid a crash when interpreting an (illegal) call to a non-static member function without an object
- TTree
- Prevent DropBaskets from dropping baskets that are not stored individually (and hence potentially not recoverable).
- Fix a lookup problem resulting a TTree::Draw not finding the data in some (complex) case of object nesting.
- Do not core dump when called with an emtpy chain. Show the branches of a chain's underlying's tree's friend in addition to the branches of the chain and of the chain's friends ([Bad link]).
- Add missing re-initialization in TBranchProxy (part of TTree::MakeProxy) ([Bad link]).
- When drawing a polymarker make Same is the same as same ([Bad link])
- Fix a couple of internal memory leaks ([Bad link])
- Properly re-update the friend branch address when the friend is a chain composed of 'smaller' trees than the main chain is. This fixes savannah [Bad link] ([Bad link])
- Improve the error message(s) issued by TTree::Show in case of failure to load the data ([Bad link])
- Add missing protection in the case we have an embedded object in a split branch which has been 'removed' from the current schema ([Bad link])
- Do no use any array dimension in the branchnames created by TTree::ReadFile ([Bad link])
- In TTree::Draw: Avoid confusing '2000 < var' with in a file name '2000' (due to IsFileInIncludePath stripping what it thinks to be an I/O indirection) ([Bad link])
- In TChain::SetEntryList use only the treename to lookup the (sub)entryList (instead subdir/treename) ([Bad link])
- Do no over-write the default value for TTree::fgMaxTreeSize as it is the one we want (and the setting smaller than expected by a factor 10) ([Bad link])
- Add missing protection in the case we have an embedded object in a split branch which has been 'removed' from the current schema ([Bad link])
- Make sure that gPerfStats is properly updated if the TTreePerfStats is deleted ([Bad link])
- Properly detect all ACLiC modes in TSelector::GetSelector ([Bad link])
- Update TTree::SetDirectory to allow update the BranchRef when needed. This fixes the forum topic [Bad link] ([Bad link])
- Avoid attempting to print the content of empty TClonesArray even if this 'content' are strings (see roottest/root/treeformula/scan/execmissingString.C) ([Bad link])
- Hist
- Proof
- In XrdProofdAdmin, import fix #32808: fix bug preventing a correct check of the exported paths
- In TProofServ, import fix #32812 and #32814: fix bug affecting the behaviour of kBuildPackage for packages in the global directories
- In TXProofMgr, import fix #32815: disable TXSocket handling while sending / receiving files; this fixes occasional freeze in TXProofMgr::GetFile / TXProofMgr::PutFile due to a screw up of the synchronization in the TXSocket pipe
- In TProofMgr, import fix #32874: avoid contacting the DNS when initializing TProofMgr as base class of TProofMgrLite: it is not needed and it may introduce long startup delays
- In TProof, import fix #32833: fix a problem counting valid nodes in sequential or 'masteronly' mode, generating the fake error message "GoParallel: attaching to candidate!"
- In TProofLite, import changes (#32897, #32898 and #32900) to fix a problem with the unix sock path length affecting MacOS X
- In XrdProofdManager, XrdProofdProofServMgr import fix #32953 to fix a problem with the unix sock path length affecting MacOS X
- In XrdProofdProofServMgr import fix #33003 to fix a problem with open file descriptors potentially showing up in the case of very fast daemon restarts (and many users).
- In TProofServ import fix #33009: in Reset(), check that the directory make sense; fixes an issue with a fake error message in PROOF-Lite when issuing TProof::SetParallel().
- In TProofPlayerLite import fix #33015: properly initialize the merging progress counter; fixes problem with negative values for 'workers still sending' in PROOF-Lite .
- In TProofLite import fixes #33027 and #33035: fix possible segvs when processing a dataset where none of the files had been validated and/or when starting a query right after.
- In TProof import fix #33153: fix an issue with the parsing of the option field when forcing the creation of a new session, e.g. TProof::Open("<master>/?N") .
- In TProofServ import fix #33418: make sure that information used internally in the option field on the master (about the aclic option) is not sent to workers while issuing the Process message.
- In TXProofMgr import fix #33639: fix problem affecting TProofMgr::Find.
- Import fix #33640: fix a few issues affecting the usage of tree friends in PROOF and a bug affecting the locality check for files in TDSet.
- In TProof::ClearData() import fix #33641: fix problem observed when the dataset repository is empty
- In TProof import fix #33648: fix an issue with the workers names in TSlaveInfo in PROOF-Lite .
- In TPacketizerAdaptive and TPacketizer, import part of fix #33781: fix a subtle bug affecting the (possibly rare) case when not all entries are required and # entries does not correspond to an complete subset of files (e.g. # entries = 1001000 with files of 100000 entries each).
- Xrootd
- Import fixes to build on MacOS X 10.4 (#32679, #32680, #32683, #32707)
- Import fixes #32800:
- Tiny fix in XrdSecProtocolkrb5.cc (remove a redundant unlock)
- Improvements in 'xrdgsiproxy':
- Add support for -exists (-e) switch for the 'info' mode (as in 'grid-proxy-info') to test existence and validity of a proxy.
- Add also support for a clock skew in testing validity (default 30 secs; can be changed with the switch -clockskew).
- Import fixes #33677 fixing a fake authentication failure with proxies created by voms-proxy-init when the input certificates are PKCS12-formatted
- GUI
- Fix double deletion in TGFileBrowser (r32684, bug #64596)
- Fix crash in TBrowser when looking for an icon associated with a class for which TClass::GetClass(class_name) was returning 0 (r32516, bug #64082)
- RooStats
- Fix a minor bug in HybridPlot::Draw (bug #64854)
- PyROOT
- Fix issue #70229
Changes in version v5-26-00b (Feb 9, 2010)
- Core
- Editline: allow cooked terminal interaction after creation of TRint (r32170, bug #62119)
- I/O
- TDCacheFile: fix regression which caused dcap://host:port/path to fail.
- Added TXMLEngine::ParseString.
- Net
- TGrid::Mkdir() and TAlien::Mkdir() return now an Int_t instead of a Bool_t. Patch is needed for the ALICE ODBC.
- CINT
- Improve heap efficiency of function calls through Cintex. (r32081, r32088)
- Work around warning "cast from pointer-to-function and pointer to object" in some Reflex dictionaries. (r32074 r32085, bug #61758)
- Proof
- Import patch #32237 to fix a problem occuring when submergers cannot open the required sockets (output was not always sent ot the master).
- Xrootd
- New version (v20100205-0000) containing a crucial fix on the server side required by ALICE. This version also includes the new SSL module for authentication needed by Castor.
- Import crucial fix #32322 on for the krb5 security module.
- TMVA
- Method ReadStateFromStream() made public again: accommodate reading of weights from 'in memory' text-weightfiles.
- Method ReadStateFromXMLString() added: accommodate reading of weights from 'in memory' xml-weightfiles.
- MethodLikelihood: fix bug that prevented saving of method specific histograms.
- Remove global pointer access from inline functions.
- Import fix #32302 for the missing external symbol problem for PDF::IGetVal
Changes in version v5-26-00a (Jan 19, 2010)
- Core
- Hide editline's symbols to prevent clashes with readline (r31990, Forum post 41352).
- Fix in rootcint when using the -p option ([Bad link]).
- CINT
- Fix function invocations through Cintex in non-optimized builds (r31991).
- For Cintex wrappers, respect NX bit also on MacOS X (r32009, #61225).
- Hist
- Fix a bug in TGraph::Eval when evaluating at the graph point values.
- Fix a bug in TH3::Project3D when using on 2 3d histograms with same name (fix #61464)
- Tree
- Protect TTree::OptimizeBaskets() in case of very high compression factors (> 100). TTree::Fill now calls TTree::OptimizeBaskets() with the fAutoFlush value instead of the total number of bytes written so far.
- In the TTreeViewer, show the branches of a chain's underlying's tree's freind in addition to the branches of the chain and of the chain's friends.
- Graf
- TLatex: revert http://root.cern/viewvc?view=rev&revision=29285 this fix had side effects. Indexes on Greek characters did not work.
- Proof
- Fix memory leaks in TProofServ::HandleProcess and TEventIterTree (fix #31946)
- Fix double deletion in TProofServ::HandleSubMerger and memory leak in TEventIterUnit (fix #32003)
- Fix a problem with real-time notification during dataset verification (fix #32031)
- XrdProofd plugin (fixes #31934, #31935 and #31937):
- Fix an issue with return codes of sending methods preventing a proper detection of failures by masters and/or clients
- Fix an issue with the garbage collection of inter-daemon connections
- Reduce the locked phase during inter-daemon broadcasting
- Math
- Fix a bug in the multinomial random generation ( ROOT::Math::Random::Multinomial ).
- PyROOT
- Fix #59945 and #61105.
- Properly handle the extra thread created in PyROOT to process events (r31983 and r31996, Forum post 9640 and 7748).