https://github.com/lmoneta/root

sort by:
Revision Author Date Message Commit Date
1953a38 [tmva][tutorial] Fix a potential issue when creating the test data sets When creating the test data sets for the CNN and RNN tutorials, it is better to create the TTree attached to the output file so we can avoid a potential issue when deleting the file and the TTree's 17 January 2024, 13:56:20 UTC
da7fa2d [hist] Fix the option X in TH1::KSTest Use as parent distribution for generating the toys for the NULL distribution of the test statistics the histogram with higer statistics. If it is a function use that one as parent. This commit takes into account the comment of Jonas in the PR 17 January 2024, 13:48:16 UTC
67c2b4b [hist] Fix TH1::KolmogorovTest with option X when one histogram has zero errors Fix the case of using KS test when one of the histogram has zero errors (i.e is a function). Improve KS test adding possibility to specify number of toys by using option "X=number" for example "X=1000" This fixes the issue #13697 17 January 2024, 13:48:16 UTC
2956ffb [math][fitter] Fix return chi2 when fitting user provided chi2 functions This fixes a bug introduced in 6.30 for returning the chi2 value when the user provides his own chi2 using `Fitter::FitFCN`, for example in the tutorial combinedFit.C 17 January 2024, 11:13:50 UTC
02cc5cd [skip-ci] Add the `--cxxstandard` option in root-config.bat 17 January 2024, 08:08:44 UTC
2a82e3a Use `kMaxEntries` instead of numeric_limits to signal this is about entries. Co-authored-by: Vincenzo Eduardo Padulano <v.e.padulano@gmail.com> 16 January 2024, 20:58:16 UTC
fa54ac3 [tree] Prefer Long64_t to int64_t for the number of TTree entries For consistency with the rest of libTree. 16 January 2024, 20:58:16 UTC
684d217 [NFC][DF] Minor improvements to comments 16 January 2024, 20:58:16 UTC
f6cee6e [core] Make some constants constexpr This allows us to avoid generating symbols in libCore for these constants keeping the same amount of open calls at ROOT startup time. 16 January 2024, 20:57:54 UTC
1eb0146 [tree] Replace `kTRUE` and `kFALSE` also in TLeaf member documantion 16 January 2024, 20:28:22 UTC
d419106 [tree] Replace [Bool_t, kTrue, kFalse] -> [bool, true, false] These type and value aliases are not necessary anymore. 16 January 2024, 20:28:22 UTC
7435a83 [ntuple] remove RNTupleModel::GenerateBulk() 16 January 2024, 20:24:09 UTC
8a4421e [ntuple] remove unnecessary RNTupleModel::RFieldProxy 16 January 2024, 20:24:09 UTC
b63c75f [ntuple] return const ref from RNTupleModel::GetField() 16 January 2024, 20:24:09 UTC
61cb15c [ntuple] return const ref from RNTupleModel::GetFieldZero 16 January 2024, 20:24:09 UTC
e7cfd38 [ntuple] doc fix for RNTupleModel::MakeField (NFC) 16 January 2024, 20:24:09 UTC
913cd14 [ntuple] update RNTupleModel class doc (NFC) 16 January 2024, 20:24:09 UTC
fcfa773 [tmva][sofie] Fix GNN parser tutorial for C++20 Fix the creation of TTree branches in PyROOT using std::vector for C++20 One does not need to use std::address of std::vector object in the `TTree::Branch` function, but just the std::vector object directly thanks to PyROOT pythonizations 16 January 2024, 17:09:55 UTC
f4559f2 [DF][NFC] Misc improvements to test_headnode 16 January 2024, 15:47:28 UTC
f359b58 [DF][relnotes] Update for constructor with multiple files 16 January 2024, 15:47:28 UTC
57eec41 [DF] Add new test for constructor with multiple files 16 January 2024, 15:47:28 UTC
416473e [DF] Adapt tests to new unified constructor with multiple files 16 January 2024, 15:47:28 UTC
c88a607 [DF] Also unify constructor overload with multiple files 16 January 2024, 15:47:28 UTC
a4deb37 [ntuple] rename RValue::BindValue() --> Bind() 16 January 2024, 14:11:37 UTC
3f04415 [ntuple] return const ref from RValue::GetField() 16 January 2024, 14:11:37 UTC
d487a42 [cmake] Set CMAKE_CXX_STANDARD explicitly in RootUseFile.cmake Closes #6384, --------- Co-authored-by: Jonas Rembser <jonas.rembser@cern.ch> 16 January 2024, 09:10:48 UTC
bd36801 [ntuple] prevent writable access to RValues in REntry 16 January 2024, 07:43:27 UTC
2e97fb5 [ntuple] move XyzDescriptorBuilder classes to Internal namespace 16 January 2024, 07:38:06 UTC
47ca67d [llvm-project] Replace submitted changes with proper backports 16 January 2024, 07:27:52 UTC
a065cdb [ntuple] Plot page size distribution for all column types on empty list 15 January 2024, 18:02:30 UTC
7db199e [ntuple] Add `RNTupleImporter::GetColumnTypes()` 15 January 2024, 18:02:30 UTC
8b64472 [ntuple] Add `GetPageSizeDistribution` for multiple column types 15 January 2024, 18:02:30 UTC
cc9c83e [ntuple] Add additional page size histogram tests 15 January 2024, 18:02:30 UTC
87a62d1 [ntuple] Set page size histogram default axis titles 15 January 2024, 18:02:30 UTC
72be135 [ntuple] Return empty histogram for column types not present 15 January 2024, 18:02:30 UTC
66b8dd3 [ntuple] move DAOS internal affairs to Internal namespace 15 January 2024, 16:42:15 UTC
9ef2b9d Revert "[core] Materialize symbols for TError variables" This reverts commit 329fb5ae0c5717aec95fe50ec276f07450ac7f11. 15 January 2024, 16:24:11 UTC
05693e8 [core] Prefer variable initializer over symbol search Symbol lookup is a quite expensive operation and might result in JIT compilation and library loading. Co-authored-by: Jonas Hahnfeld <jonas.hahnfeld@cern.ch> 15 January 2024, 16:24:11 UTC
f8dbdb7 [core] Evaluate initializer of constant variables Co-authored-by: Jonas Hahnfeld <jonas.hahnfeld@cern.ch> 15 January 2024, 16:24:11 UTC
e601bf8 [core] Reduce symbol search only to when autoloading is enabled. The llvm9 JIT issued callbacks when a symbol was missing and we reacted on it by loading the relevant library. In root-project/root@9b2041e3 we have kept the logic but now the JIT started querying more often even for symbols which are okay to be missing. In turn that leads to scanning all libraries causing performance issues. This patch tries to limit this functionality only in contexts where automatic loading is allowed. 15 January 2024, 16:24:11 UTC
5f3bbfd [DF] Update RDF 6.32 release notes 15 January 2024, 16:11:41 UTC
e1c3625 [DF] Avoid nullptr dereference in printValue function The construction of the RLoopManager can now fail, in case a user tries to create it from a non-existing file. Thus, make the appropriate checks in the printValue function. Also add tests for the cling::printValue function. There seems to be no good way to test the case of the RLoopManager throwing an exception in the constructor (i.e. due to a non-existing file) and then the user trying to print the value of the badly-initialized RDataFrame object. This situation practically only occurs at the prompt, where the variable is stored globally and not removed by cling. In any other case the exception thrown by the RLoopManager constructor will stop execution. 15 January 2024, 16:11:41 UTC
fcdd1ff [DF] Adapt tests to new constructor behaviour RDataFrame now throws an exception if the input file does not exist, we have to make sure that all tests use existing files. 15 January 2024, 16:11:41 UTC
083a92b [DF][NFC] Add tests for unified constructor 15 January 2024, 16:11:41 UTC
3889fff [DF] Enable creating RDataFrame from TTree or RNTuple without specifying which one The RDataFrame constructor `RDataFrame(std::string_view treeName, std::string_view fileNameGlob, ...)` now checks whether the file in `fileNameGlob` contains a TTree or an RNTuple dataset. This behaviour is only active if ROOT7 libraries are present. This is a backwards-incompatible change in behaviour w.r.t. previous RDataFrame workflows. In particular, this means that: 1. If the user supplies a non-existing file, this is caught immediately in the constructor, whereas previously it was only caught the first time an operation was requested. 2. Calls to Snapshot call this constructor with the filename being the output file of the Snapshot, which does not exist until the Snapshot is actually run. Issue (1) is addressed by throwing an early exception at construction time if the file could not be opened for any reason. This behaviour is now the default in all cases, even without building ROOT7 libraries, for consistency. Issue (2) is addressed by directly creating an RLoopManager with the TTree name and the file name, since Snapshot currently only supports writing to TTree. The file name is not opened in this case. 15 January 2024, 16:11:41 UTC
1e196f7 [DF] Add RLoopManager constructor with unique_ptr<TTree> It will be needed when creating a TChain in a free function used by the constructor of RLoopManager, where ownership must be transferred directly to the instance. 15 January 2024, 16:11:41 UTC
daaf5ea [cmake] Add R__HAS_ROOT7 macro 15 January 2024, 16:11:41 UTC
d9ce7f2 [RF] Refactor to avoid code duplication in NLL and chi2 fitting The implementation of the `fitTo()` and `chi2FitTo()` functions are merged to a single function. This is the first step in unifying the NLL and chi2-fitting code path. In later refactorings, we will also change the user interface to do chi-square fits like this: ```c++ model.fitTo(data, FitType("chi-square")); ``` The reason why this is done now is because this will make it easy to achieve feature parity of the chi2 fits with respect to the NLL fits. In particular, it will make it easy to use the new vectorizing CPU backend, which should be made the default in RooFit this year. 15 January 2024, 16:00:09 UTC
b99067c [RF] Factor out likelihood and chi2 fitting code to `FitHelpers` This is done so that we can easily reuse code between the likelihood and chi2 fitting. Also, the likelihood creation helpers from the former `BatchModeHelpers` file was moved to `FitHelpers`, which is the only place where is was used. It's not good to have a file called `BatchModeHelpers` if we don't call it `BatchMode` anymore. 15 January 2024, 16:00:09 UTC
3d12e43 [RF] Remove RooCmdArg-constructors of old test statistic classes The old test statistic classes are deprecated already and they will be removed from the public interface in ROOT 6.34. Therefore, it should be alright to change the current public interface. This commit replaces the `RooCmdArg`-based constructor of the RooChi2Var with a simpler constructor based on a configuration struct, as has already been done some time ago for the RooNLLVar. This gives more flexibility in writing the `createChi2` function, and in particular we will be able to avoid code duplication with the NLL code path. And now that the `RooCmdArg`-based constructors are not relevant anymore for any test statistics, they are removed. 15 January 2024, 16:00:09 UTC
2e7aa7c [RF] Fix pointer vs. reference confusion in RooDataSet documentation The correct signature is `RooFit::Import(TTree&)`. This was noticed thanks to the following forum post. https://root-forum.cern.ch/t/how-to-use-weighted-unbinned-dataset-in-roofit/57631 15 January 2024, 15:57:23 UTC
151292e [RF] Deprecate some RooDataSet constructors The RooDataSet has some constructors that are redundant with specific cases that can be covered with the command-argument constructor. This can cause confusion like here in the forum: https://root-forum.cern.ch/t/how-to-use-weighted-unbinned-dataset-in-roofit/57631 To avoid this interface duplication, these constructors are deprecated and will be removed in ROOT 6.34. 15 January 2024, 15:57:23 UTC
f6521c3 [RF] Don't warn if not all vars are used in RooDataSet cut expressions When using the `RooFit::Cut("...")` command argument in the RooDataSet constructor to filter imported datasets, the `RooFormulaVar` representing the cut should not check if all the variables in the dataset are used for the expression. This is already done in other code branches like the `RooVectorDataStore` constructors, and this commit adds this tweak also to the remaining `RooDataSet` constructors to make the behavior consistent. 15 January 2024, 15:57:23 UTC
c062c5c [RF] Always use RooDataSet constructor with command args in xroofit Avoid using some redundant RooDataSet constructors that will be deprecated. Separate commit from the previous one so it can be backported. 15 January 2024, 15:57:23 UTC
b88fa5c [RF] Always use RooDataSet constructor with command arguments Avoid using some redundant RooDataSet constructors that will be deprecated. 15 January 2024, 15:57:23 UTC
2be3da1 [RF] Avoid false positives in checking vars for analytical integration In RooRealIntegral, if any of the branches in the computation graph of the function depend on the integrated variable, we can't do analytical integration. The only case where this would work is if the branch is an l-value with known Jacobian, which is dealt with in the beginning of the RooRealIntegral constructor by reexpressing the original integration variables in terms of higher-order l-values if possible. In the RooRealIntegral constructor, there is a function that checks if a variable is in principle okay for analytical integration. It waves through all fundamental variables that are direct serves of the function. However, this can result in false positives if a variable is both a direct server *and* a server on an intermediate branch, for example in `Gaussian(x, mu, sigma(x))`. To fix this, this commit suggests a new check that filters out all the indirect servers first. A unit test with the reproducer in the reporting issue is also implemented. Closes #14320. 15 January 2024, 15:55:49 UTC
ff6d23b [RF] Fix bug because of wrong `dependsOnValue` call in RooRealIntegral At some place in the RooRealIntegral constructor, there is a check if a branch in the computation graph is a value server of the function. However, this didn't work, because my mistake the `dependsOnValue()` function was called on `this`, which is the RooRealIntegral, and not the function. That is not the point of the logic, at that point in the constructor the RooRealIntegral doesn't even have any servers. 15 January 2024, 15:55:49 UTC
547f32e [RF] Refactor RooRealIntegral Only technical changes, no logic is modified. 15 January 2024, 15:55:49 UTC
ac8765f [RF] Remove unnecessary `_facListOwned` member from RooRealIntegral Owned RooAbsArgs can already be added to a RooAbsArg via `RooAbsArg::addOewnedComponents()`. Also, remove some unneeded `mutable` specifiers. 15 January 2024, 15:55:49 UTC
bc4dc58 [ntuple] code consistency improvements 15 January 2024, 13:57:47 UTC
e06626a [ntuple] pass RFieldZero to RCollectionField 15 January 2024, 13:57:47 UTC
10a4f2a [ntuple] rename parameters in RCollectionField constructor 15 January 2024, 13:57:47 UTC
0d5b37d [ntuple] don't use full model in RCollectionField 15 January 2024, 13:57:47 UTC
00881fe [ntuple] rename RCollectionField::fCollectionNTuple --> fCollectionWriter 15 January 2024, 13:57:47 UTC
8446def [cmake] Adapt to ZeroMQ 4.3.5 being now released So far, ROOT, in particular the `roofit_multiprocess` feature was depending on a feature developed by @egpbos that was not part of the ZeroMQ 4.3.4 release yet. Therefore, it was a bit awkward to check if ZeroMQ had that feature. Now that it's released, we can just do a proper cmake version check. The only caveat is that ZeroMQ needs to be built with `-DENABLE_DRAFTS` to work for `roofit_multiprocess`, which is explained in the build options documentation. Also, move some compilation flags to specifically RooFitZMQ, where they are needed. 15 January 2024, 12:08:14 UTC
3f87660 [ntuple] optimization in const RFieldBase::GetSubFields() 15 January 2024, 10:26:58 UTC
dab8e52 [ntuple] constness of RFieldBase::GetSubFields() 15 January 2024, 10:26:58 UTC
5baf696 [ntuple] return const field from RFieldBase::GetParent() 15 January 2024, 10:26:58 UTC
c22f26a Fix JupyROOT crash on Windows. Fixes the issue #14302 Remove `#include <cassert>` from `TGeoExtension.h` and move it to the `TGeoExtension.cxx` source file, fixing a potential crash of JupyROOT when running on a machine with a different version of the Windows SDK than the one used to build ROOT, as described in the Github issue #14302 and as shown below. The issue comes from this code in `JupyROOT\helpers\utils.py`: ``` def GetGeometryDrawer(): if not hasattr(ROOT,'gGeoManager'): return if not ROOT.gGeoManager: return if not ROOT.gGeoManager.GetUserPaintVolume(): return vol = ROOT.gGeoManager.GetTopVolume() if vol: return NotebookDrawer(vol) ``` triggering the autoloading of libGeom, leading to this error: ``` In file included from libGeom dictionary payload:17: In file included from C:/root-dev/root\include\TGeoExtension.h:15: In file included from C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\cassert:9: In file included from C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\assert.h:12: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\corecrt.h:260:12: error: redefinition of '_CrtEnableIf<true, _Ty>' struct _CrtEnableIf<true, _Ty> ^~~~~~~~~~~~~~~~~~~~~~~ C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\ucrt\corecrt.h:260:12: note: previous definition is here struct _CrtEnableIf<true, _Ty> ^ In file included from libGeom dictionary payload:17: In file included from C:/root-dev/root\include\TGeoExtension.h:15: In file included from C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\cassert:9: In file included from C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\assert.h:12: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\corecrt.h:610:16: error: redefinition of '__crt_locale_data_public' typedef struct __crt_locale_data_public ^ C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\ucrt\corecrt.h:610:16: note: previous definition is here typedef struct __crt_locale_data_public ^ In file included from libGeom dictionary payload:17: In file included from C:/root-dev/root\include\TGeoExtension.h:15: In file included from C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\cassert:9: In file included from C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\assert.h:12: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\corecrt.h:617:16: error: redefinition of '__crt_locale_pointers' typedef struct __crt_locale_pointers ^ C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\ucrt\corecrt.h:617:16: note: previous definition is here typedef struct __crt_locale_pointers ^ In file included from libGeom dictionary payload:17: In file included from C:/root-dev/root\include\TGeoExtension.h:15: In file included from C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\cassert:9: In file included from C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\assert.h:12: C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt\corecrt.h:625:16: error: redefinition of '_Mbstatet' typedef struct _Mbstatet ^ C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\ucrt\corecrt.h:625:16: note: previous definition is here typedef struct _Mbstatet ^ Error in <TInterpreter::AutoParse>: Error parsing payload code for class gGeoManager with content: ... Assertion failed: !m_Unloading && "Must not nest within unloading transaction", file C:\root-dev\git\master\interpreter\cling\lib\Interpreter\Transaction.cpp, line 98 *** Break *** abort ========================================== =============== STACKTRACE =============== ========================================== ... ``` 15 January 2024, 10:02:54 UTC
b488d79 [ntuple] Move RNTuple(De)Compressor to Internal namespace 15 January 2024, 09:10:16 UTC
8e8380f [ntuple] Move RPagePool to Internal namespace 15 January 2024, 08:45:01 UTC
466431d [ntuple] make RFieldBase::RValue::GetNonOwningCopy() const 15 January 2024, 08:44:06 UTC
cdc68c9 TGeoTessellated remove TGeoFacet::ComputeNormal declaration (#14339) The function is no longer implemented, see #14327 Can lead to linking issues when undefined symbols are not ignored. 15 January 2024, 08:19:46 UTC
72e7038 [ntuple] Pass entries in cluster to CommitCluster ... instead of the total number of entries. This will make parallel writing much easier because every thread only needs to know about its own cluster size. 14 January 2024, 21:05:04 UTC
45b0ea3 [ntuple] Remove useless assert Since RClusterSize is 64bit since commit 847a0c18ae, this assert was not checking anything anymore. 14 January 2024, 21:05:04 UTC
e92aa27 [ntuple] Consistently use alias ClusterSize_t 14 January 2024, 21:05:04 UTC
4088261 [ntuple] Update comment that RClusterSize is 64bit Since commit 847a0c18ae. 14 January 2024, 21:05:04 UTC
7a7f262 [ntuple] Remove nEntries argument of CommitClusterImpl 14 January 2024, 21:05:04 UTC
ae26c5b [ntuple] Simplify RPageSinkBuf::CommitCluster After the last commit, RPageSinkBuf always seals all pages so they can be simply vector-committed. 14 January 2024, 19:05:49 UTC
e052b58 [ntuple] RPageSinkBuf: Always seal before CommitCluster Without a task scheduler, seal in CommitPage. This avoids a page allocation and, in most cases, a copy of the uncompressed buffer (unless the element type is mappable and compression is disabled, in which case the sealed page would otherwise alias the page buffer). It also ensures that CommitCluster can vector-commit all sealed pages. 14 January 2024, 19:05:49 UTC
a100334 [ntuple] Add note about RBlob keys to specifications.md 13 January 2024, 19:10:54 UTC
2e62a98 [ntuple] Implement RPageSinkFile::CommitSealedPageVImpl Instead of writing one key per page, the vector of sealed pages can be written into a single key by first reserving an appropriate size. 13 January 2024, 19:10:54 UTC
343c865 [ntuple] Implement functionality to reserve blobs This will be useful to create a blob key and write into the buffer separately. 13 January 2024, 19:10:54 UTC
0ef1308 [ntuple] Decouple key placement from file position This prepares for the future implementation of reserving blobs (by only writing the key, but not the buffer) and eventually fully parallel writing into such reserved buffers. 13 January 2024, 19:10:54 UTC
5427d99 [ntuple] Make buffer optional for RFileProper::WriteKey This aligns the implementation with RFileSimple. 13 January 2024, 19:10:54 UTC
7d231f1 [ntuple] Add test to verify key linked list 13 January 2024, 19:10:54 UTC
39d4b5b [ntuple] RMiniFile: Update key length for big keys 13 January 2024, 19:10:54 UTC
552a99e [ntuple] RMiniFile: Assert that key lengths fit 13 January 2024, 19:10:54 UTC
711926a [ci] Use builtin_xxhash=ON on Ubuntu 20.04 Since commit 9030460858 ("[ntuple] add xxhash3 checksum handling to anchor"), we require xxHash 0.8 while Ubuntu 20.04 only has version 0.7.3 in its package repositories. 13 January 2024, 15:55:30 UTC
edfda03 [ntuple] rename REnvelopeLink::fUnzippedLength --> fLength 12 January 2024, 15:41:05 UTC
5af9c55 [ntuple] add clarifying comment (NFC) 12 January 2024, 15:41:05 UTC
f6e5720 [ntuple] add typical cluster size to specs (NFC) 12 January 2024, 15:41:05 UTC
fb165ef [ntuple, NFC] fix typo in code comment Co-authored-by: Vincenzo Eduardo Padulano <v.e.padulano@gmail.com> 12 January 2024, 15:41:05 UTC
f10feb2 [ntuple] fix-up includes of RNTupleMerger 12 January 2024, 15:41:05 UTC
e7913d5 [ntuple] clarification in the specs (NFC) 12 January 2024, 15:41:05 UTC
742f616 [ntuple, NFC] syntax fix in the specs Co-authored-by: Florine de Geus <git@fwdg.nl> 12 January 2024, 15:41:05 UTC
921b2f7 [ntuple] fix-up cluster unit test 12 January 2024, 15:41:05 UTC
d5dbf0c [ntuple] simplify frame layout 12 January 2024, 15:41:05 UTC
0136e5d [ntuple] add Glossary section to specs (NFC) 12 January 2024, 15:41:05 UTC
7503732 [ntuple] rename REnvelopeLink.fUnzippedSize --> fUnzippedLength 12 January 2024, 15:41:05 UTC
back to top