82fc2dc | Axel Naumann | 07 June 2022, 15:59:39 UTC | "Update ROOT version files to v6.26/04." | 07 June 2022, 15:59:39 UTC |
8256d5d | Axel Naumann | 07 June 2022, 15:56:57 UTC | [relnotes] Update for 6.26/04. | 07 June 2022, 15:56:57 UTC |
bc9afb3 | Enrico Guiraud | 04 June 2022, 10:15:31 UTC | [DF] Fix invalid reads in Vary with many variations and multiple columns When varying multiple columns simultaneously, RVariation was destroying and re-creating the per-column RVecs of varied values at every entry, which resulted in a change in the address of the varied values between entries, which caused invalid reads on the part of the RVariationReader (which assumes the addresses of varied values are stable). The issue was hidden by RVec's small buffer optimization, which was keeping addresses stable as long as the number of variations fit the small buffer. A regression test has been added. | 04 June 2022, 13:16:26 UTC |
6b11c23 | Enrico Guiraud | 03 June 2022, 15:33:57 UTC | [DF] Fix potential invalid memory access when using Vary Users can vary a single column or multiple columns simultaneously. In the latter case, RVariation::fLastResults contains, for each processing slot, an RVec of RVecs of results where the outer dimension runs over the different columns and the inner one over the varied values of each column. Before this commit, RVariation was initializing fLastResults to the wrong size in the case of multiple columns varied simultaneously, which ended up causing invalid memory accesses during the event loop in some cases. This patch fixes the problem and adds a regression test. | 04 June 2022, 13:16:26 UTC |
dfa7cc3 | Enrico Guiraud | 03 June 2022, 13:20:48 UTC | [DF] Fix crash with jitted Define and non-jitted Vary Sanity checks for a non-jitted Vary asked the nominal Define'd columns static type information that a jitted Define did not have. With this patch RJittedDefine should also have that type information in most if not all cases. | 04 June 2022, 13:16:26 UTC |
15eceb4 | Enrico Guiraud | 03 June 2022, 12:32:42 UTC | [DF] Add test for jitted Define+non-jitted Vary type checking | 04 June 2022, 13:16:26 UTC |
296857d | Axel Naumann | 16 May 2022, 11:49:40 UTC | [cmake] Use lcgpackages@cern, rather than unstable github: hashes are not stable when downloading release sources from github, see https://security.stackexchange.com/a/240209 https://github.com/root-project/root/issues/10503 (cherry picked from commit 8f05559cb9d74e5bc6c65bbd39a0dce82b18a3eb) | 02 June 2022, 20:12:00 UTC |
1f4dc01 | Axel Naumann | 20 May 2022, 14:27:25 UTC | [cmake] Bump Vc to 1.4.3; fixes macOS warnings: the patch is now included in the release; remove it. (cherry picked from commit 8e6f7236bc02d28cd5d767fc3d1462b1da211c64) | 02 June 2022, 20:09:53 UTC |
6d33f1e | Enrico Guiraud | 01 June 2022, 09:21:30 UTC | [DF] Do not create a RVariedAction if there are no variations Before this commit, if users requested `VariationsFor(result)` but `result` did not depend on any variation, we constructed a (no-op) RVariedAction anyway and added it to the computation graph. With this patch we do not add this no-op node to the computation graph if it's not needed. RResultMap had to be taught how to deal with this case. | 01 June 2022, 22:31:42 UTC |
925f8ae | Chris Burr | 10 May 2022, 06:48:13 UTC | Fix running with macOS 12.0+ SDK after building with an older SDK When building with a macOS SDK before 12.0 and running with 12.0+ the validation of private modulemaps fails due to a change in layout. This change disables the check when DisablePCHValidation is active. (cherry picked from commit 85c757ad962e609779dcf8171e37cf70f611d238) | 31 May 2022, 06:21:57 UTC |
9debd9a | Jonas Rembser | 22 May 2022, 00:35:06 UTC | [RF] Implement extended fits in subrange in new BatchMode Extended fits in a subrange didn't work so far in the new BatchMode, because the term that scales down the number of expected events to the subrange was missing. This is implemented with this commit. To make that happen, the interface of `RooAbsPdf::extendedTerm()` was extended by an overload that accepts the number of expected events directly, so they can be scaled down by the caller before. The `testSumW2Error` unit test was extended to cover also extended fits in subranges, also with the SumW2 correction enabled. | 31 May 2022, 01:51:47 UTC |
f49d822 | Jonas Rembser | 21 May 2022, 17:15:24 UTC | [RF] Use BatchMode also in RooMCStudy tests in `stressRooFit_tests` With some recent updates to the RooFit BatchMode, it can now also be activated for the RooMCStudies in `stressRooFit_tests` as the fit results are the same. | 31 May 2022, 01:51:47 UTC |
2dee0a7 | Jonas Rembser | 20 May 2022, 11:21:35 UTC | [RF] Synchronize NLL computation in BatchMode with the scalar mode NLL The BatchMode gave different results and went throught different minimization paths when the recovery from undefined regions was involved, because it was implemented a bit differently. This commit updates the RooNLLVarNew to do exactly the same computations as the original RooNLLVar in scalar mode to avoid any differences caused by this. | 31 May 2022, 01:51:47 UTC |
dd04c48 | Jonas Rembser | 21 May 2022, 17:04:56 UTC | [RF] Drop zero-weight entries when filling data map in BatchMode The RooFit BatchMode had a bug in case of zero-weight events. The scalar mode doesn't evaluate the pdf for zero-weight entries, so if the pdf is undefined at this point it doesn't matter and no error is logged to force the minimizer out of that region. In the batch mode, these zero weight entried need to be skipped when filling the data map, such that they don't get evaluated and cause false errors. | 31 May 2022, 01:51:47 UTC |
45f34e2 | Jonas Rembser | 18 May 2022, 15:34:26 UTC | [RF] Correctly implement additional dataset feature in HistFactory In HistFactory, the presence of a `Channel::GetAdditionalDatas` function hinted to the possibility of defining additional datases for a HistFactory model, besides the nominal observations dataset named `"obsData"`. When reading a user-generated HistFactory XML, the additional datasets were in fact read into the `Channel::fAdditionalData` member, and corresponding RooDataSets were created in the per-channel proto workspaces. However, when defining the Measurement object in C++ and dumping the XML via `PrintXML`, the additional datasets were not considered. They were also not considered when merging the datasets in the per-channel proto workspaces into the simultaneous dataset. This commit suggests to implement this correctly. Now, one can define additional datasets as follows in the XML: ```xml <Data HistoName="data" InputFile="data/example.root" HistoPath="" Name="addData"/> ``` If there is no `Name` tag, the RooDataSet in the workspace will use the `HistoName` as its name. Closes #10538. | 31 May 2022, 01:51:47 UTC |
a7b3e15 | Jonas Rembser | 09 May 2022, 22:35:42 UTC | [RF] Some code cleaning and modernization in HistFactory | 31 May 2022, 01:51:47 UTC |
8e96b52 | Enrico Guiraud | 26 May 2022, 18:29:51 UTC | [DF] Do not duplicate work for nominal case when variations are present With this patch, RResultMap points to the one and only nominal result and we do not duplicate work for the nominal value (i.e. we don't handle the nominal case in RVariedAction anymore). | 30 May 2022, 19:35:49 UTC |
0f9b172 | moneta | 17 May 2022, 14:45:12 UTC | [TMVA][SOFIE] Add header guards to the include file generated by SOFIE This fixes #10586 | 25 May 2022, 07:54:40 UTC |
aeabc14 | Sergey Linev | 24 May 2022, 12:20:28 UTC | Add missing TClass.h include in NormalizationHelpers.cxx | 25 May 2022, 07:15:00 UTC |
7615aed | moneta | 27 January 2022, 15:09:42 UTC | Disable a warning compiling unuran code. The warning was observed on fedora32 with gcc 10.3.1 Warning: root/src/methods/mvtdr_init.ch:886:17: warning: argument 1 value ‘18446744073709551608’ exceeds maximum object size 9223372036854775807 [-Walloc-size-larger-than=] 886 | GEN->etable = malloc( size * sizeof(E_TABLE*) ); It can be fixed by casting to an int the input to malloc or checking if it is not larger than 2^63-1 This warning could be probably disabled in the code by casting from size_t to int the input to malloc | 24 May 2022, 17:57:38 UTC |
d10fd75 | Chris Jones | 24 May 2022, 15:05:36 UTC | Minor Geometry optimization [v6-26] (#10642) * Return node created in AddNode call * Allow skipping of voxelization in CloseGeometry call | 24 May 2022, 15:05:36 UTC |
9230e5a | Sergey Linev | 24 May 2022, 10:42:34 UTC | [jsroot] correctly cleanup canvas painter Also add TGraph point index to tooltip | 24 May 2022, 12:06:05 UTC |
c4a2c9e | Enrico Guiraud | 19 May 2022, 22:21:44 UTC | [DF] Reuse nominal Defines whenever possible Due to faulty logic, we were using different RDefine objects for each systematic variation even if the define itself did not depend on the systematic variation under consideration. | 20 May 2022, 16:47:11 UTC |
23a1523 | Enrico Guiraud | 18 May 2022, 08:53:19 UTC | [DF] Do not ask cling a typeid if it does not know the type Before this patch, in order to assert that the column type returned by a Vary expression matched the type of the column we always asked cling to provide a type id for the existing column via TypeName2TypeID(GetColumnType(colName)). That failed if the column had a type not known to the interpreter, e.g. because it was Define'd and the expression returned a user-defined type. With this patch we use the typeid information coming from the RDefine node if it is available, otherwise we try with cling. | 20 May 2022, 16:47:11 UTC |
261a58a | Enrico Guiraud | 09 May 2022, 08:52:26 UTC | [DF] Fix wrong downcast in {RRange,RFilter}::GetVariedFilter When previous node of a RRange or RFilter node was a RJittedFilter, we were wrongly downcasting _varied_ filters to the RJittedFilter type, but varied filters are _not_ jitted filters, they are copies of the actual concrete filter. With this patch, if the type of the previous node is RJittedFilter, we treat it everywhere as the generic base class RFilterBase, which fixes the problem and it is consistent with what we already do in RVariedAction. | 20 May 2022, 16:47:11 UTC |
2c3b2d4 | Enrico Guiraud | 09 May 2022, 12:41:33 UTC | [DF] Better error message for Vary+Fill+no Reset method | 20 May 2022, 16:47:11 UTC |
24dab14 | Enrico Guiraud | 09 May 2022, 09:46:48 UTC | [DF] Throw if a varied column is redefined ...because we'd only redefine the _nominal_ value, which would be extremely confusing. | 20 May 2022, 16:47:11 UTC |
bf26780 | Jonas Rembser | 28 April 2022, 19:24:43 UTC | [RF] Silence warnings in stressRooFit | 19 May 2022, 17:30:23 UTC |
3ab4317 | Jonas Rembser | 07 March 2022, 17:02:52 UTC | [RF] Run stressRooFit with CUDA and CPU-only BatchMode in unit tests | 19 May 2022, 17:30:23 UTC |
a91e7c8 | Jonas Rembser | 18 May 2022, 23:09:06 UTC | [RF] Avoid setting oper mode to `Auto` in RooAbsReal::computeBatch With all the recent BatchMode developments, it is not necessary anymore to set the operation mode to `Auto` in `RooAbsReal::computeBatch` to make the RooAbsCachedPdf work. Doing this results in a big speedup for the batch mode, bringing the runitme for stressRooFit down from 8 to 7 seconds for the CPU mode (without the BatchMode, the stressRooFit suite takes 7.7 seconds to run). | 19 May 2022, 17:30:23 UTC |
940399c | Jonas Rembser | 18 May 2022, 22:13:28 UTC | [RF] Don't use `RooAbsReal::getVal()` in RooFitDriver anymore For scalar nodes, the RooFitDriver was still doing the evaluation via `RooAbsReal::getVal()` this was because of a problem with the normalization sets of constrained pdfs in the BatchMode. This problem got resolved in this commit, so it's now possible to go for `computeBatch` all the way now. | 19 May 2022, 17:30:23 UTC |
ea294e7 | Jonas Rembser | 16 May 2022, 13:30:48 UTC | [RF] Move DataMap handling out of RooBatchCompute The RooBatchCompute library should not need to know about the data map implementation. It does not depend on the architecture, and also there are often incompatibilities when using `std::map` (or `std::unordered_map`) with nvcc with the standard library headers on the system. | 19 May 2022, 17:30:23 UTC |
93d410d | Jonas Rembser | 23 February 2022, 01:52:14 UTC | [RF] Remove unused normalization integral interfaces from RooAbsPdf The removed functions were only introduced in 6.26 as RooFit implementation details to begin with, so removing them again should be harmless. | 19 May 2022, 17:30:23 UTC |
929c438 | Jonas Rembser | 19 February 2022, 17:43:15 UTC | [RF] Simplify subrange correction term in RooNLLVarNew | 19 May 2022, 17:30:23 UTC |
a668ea1 | Jonas Rembser | 19 February 2022, 04:09:33 UTC | [RF] Don't do normalization in RooBatchCompute/`computeBatch` anymore The normalization is now covered by the separate integral objects in the computation graph. | 19 May 2022, 17:30:23 UTC |
c142fb0 | Jonas Rembser | 02 May 2022, 23:28:05 UTC | [RF] Extract norm. integrals to computation graph in RooFitDriver | 19 May 2022, 17:30:23 UTC |
e7495a7 | Jonas Rembser | 11 March 2022, 13:08:41 UTC | [RF] Add RooNormalizedPdf class A RooNormalizedPdf wraps a pdf divided by it's integral for a given normalization set into a new self-normalized pdf. It is an implementation detail of the RooFit batch mode with the RooFitDriver. | 19 May 2022, 17:30:23 UTC |
ffa16c3 | Jonas Rembser | 02 May 2022, 23:17:37 UTC | [RF] NormalizationIntegralUnfolder puts integrals in computation graph | 19 May 2022, 17:30:23 UTC |
9c8d922 | Jonas Rembser | 02 May 2022, 17:39:06 UTC | [RF] New RooAbsArg::fillNormSetForServers function indicates norm sets | 19 May 2022, 17:30:23 UTC |
099be98 | Jonas Rembser | 02 May 2022, 20:05:54 UTC | [RF] Add back code in the RooFit driver that waits servers to finish This logic has accidentally been removed in a previous commit. | 19 May 2022, 17:30:23 UTC |
08e54e1 | Jonas Rembser | 02 May 2022, 18:40:16 UTC | [RF] Use value servers for output size determination | 19 May 2022, 17:30:23 UTC |
04bd5a5 | Mattias Ellert | 15 March 2022, 08:08:39 UTC | Add #include <cstring> for std::memcpy In file included from /builddir/build/BUILD/root-6.26.00/tmva/sofie/inc/TMVA/RModel.hxx:14, from /builddir/build/BUILD/root-6.26.00/tmva/sofie/src/RModel.cxx:3: /builddir/build/BUILD/root-6.26.00/tmva/sofie/inc/TMVA/SOFIE_common.hxx: In member function 'void TMVA::Experimental::SOFIE::InitializedTensor::CastPersistentToShared()': /builddir/build/BUILD/root-6.26.00/tmva/sofie/inc/TMVA/SOFIE_common.hxx:75:12: error: 'memcpy' is not a member of 'std'; did you mean 'wmemcpy'? 75 | std::memcpy(tData.get(), fPersistentData,fSize * sizeof(float)); | ^~~~~~ | wmemcpy gmake[2]: *** [tmva/sofie/CMakeFiles/ROOTTMVASofie.dir/build.make:79: tmva/sofie/CMakeFiles/ROOTTMVASofie.dir/src/RModel.cxx.o] Error 1 (cherry picked from commit 5c4c23d9d67bc35cabb0bff251de3e08914237c7) | 17 May 2022, 12:52:25 UTC |
233da18 | Vassil Vassilev | 30 April 2022, 14:29:28 UTC | [cxxmodules] Reduce the amount of header duplications in the modules. This resolves a merging bug with libstdc++12. Fixes root-project/root#10478 Backport includes the following commit: [cxxmodules] Fix std.modulemap for older GCC (#10529) The header bits/utility.h only exists since libstdc++-12. (cherry picked from commits e88d533f1c79754dae892249818f53d0155e88fa and 2750395660c5c8c3ae617a18fefd27193587ec79) | 17 May 2022, 06:30:49 UTC |
b3959f0 | Sergey Linev | 12 May 2022, 11:11:26 UTC | [rbrowser] do not try to read object without dictionary Even when class instance is created, it cannot be used normally | 13 May 2022, 06:15:14 UTC |
095b11e | Sergey Linev | 12 May 2022, 10:47:02 UTC | [rbrowser] use proper title for catched TCanvas | 13 May 2022, 06:15:14 UTC |
d842141 | Sergey Linev | 12 May 2022, 09:31:02 UTC | [rbrowser] let display TGeoNode object Display associated TGeoVolume | 13 May 2022, 06:15:14 UTC |
448005f | Jonas Hahnfeld | 11 May 2022, 15:34:38 UTC | [cling] Do not throw CompilationExceptions on Apple M1 (#10563) See https://github.com/root-project/root/issues/7541 for details. Closes #10548 | 11 May 2022, 15:34:38 UTC |
2fbb3bb | Jonas Rembser | 09 May 2022, 14:09:17 UTC | [RF] Avoid using `_normSet` member in RooAddPdf The `RooAbsPdf::_normSet` member should be not used, because it can happen in many situations that the RooArgSet it points to gets out of scope and then you get a crash. There were several cases reported on the forum where this happened with a RooAddPdf recently, becaues with ROOT 6.26 some logic of the RooAddPdf got changed to better deal with empty normalization sets. This commit avoids using `_normSet` by overriding `getValV` in RooAddPdf directly, instead of `evaluate()`. This way, it has access to the actual normalization set that is passed to the call to `getVal()`. For the batch mode, we now pass `nullptr` to `RooAddPdf::getNormAndCache()` instead of `_normSet`. In this case it falls back to using `_copyOfLastNormSet`, which is guaranteed to still be valid because it's a unique_ptr owned by the RooAddPdf itself. | 10 May 2022, 13:42:46 UTC |
df9e408 | Jonas Rembser | 04 May 2022, 13:49:18 UTC | [RF] Consistent behavior for uniform constraint terms in HistFactory In HistFactory, normalization uncertainties and shape uncertainties were treated differently when setting the constraint type to uniform, e.g.: ```xml <ConstraintTerm Type="Uniform" RelativeUncertainty="1">NP_shape</ConstraintTerm> <ConstraintTerm Type="Uniform" RelativeUncertainty="1">NP_norm</ConstraintTerm> ``` See #9070 for a very good explanation of the problem. For non-shape uncertainties, the uniform constraint was treated as a special case of the Gaussian constraint with "infinite" sigma. For shape uncertainties, the `Uniform` type was ignored. This commit suggests to refactor the creation of Gaussian constraints such that the logic that considers the "Uniform" tag is also used for shape uncertainties. Closes #9070. | 10 May 2022, 13:42:46 UTC |
f42d1ca | will-cern | 04 May 2022, 14:12:29 UTC | [RF] Allow any RooAbsReal instead of just RooRealVar for params Allow any RooAbsReal instead of just RooRealVar for params. Also make isBinnedDistribution depend on the vars rather than always return true. | 10 May 2022, 13:42:46 UTC |
ad7ddf4 | Jonas Rembser | 09 May 2022, 15:09:55 UTC | [RF] Add class rules for `RooCollectionProxy` for forward compatibility In ROOT 6.28, some proxy classes were replaced: `RooSetProxy` -> `RooCollectionProxy<RooArgSet>` `RooListProxy` -> `RooCollectionProxy<RooListProxy>` This breaks reading workspaces created with 6.28 by 6.26. Even though we generally don't guarantee forward compatibility, the problem can be fixed easily in this case by adding a class rule to treat the new class names as aliases for the old ones. | 09 May 2022, 20:31:03 UTC |
9059e41 | Sergey Linev | 05 May 2022, 07:06:59 UTC | [rcanvas] do not call ReleaseHeldCanvases in canvas cleanup instance Cleanup performed properly anyway | 05 May 2022, 11:02:39 UTC |
53a75ac | Sergey Linev | 04 May 2022, 12:54:25 UTC | [rcanvas] prevent that cleanup directory append to gDirectory | 05 May 2022, 11:02:39 UTC |
8d2f6ea | Olivier Couet | 04 May 2022, 09:31:35 UTC | [skip-ci] Update doc Makefile. (#10521) | 04 May 2022, 09:31:35 UTC |
32156fa | Jonas Rembser | 18 April 2022, 11:35:35 UTC | [RF] Add `RooAbsCollection::sortTopologically()` member function Add member function to RooAbsCollection to sort topologically: the servers of any RooAbsArg will be before that RooAbsArg in the collection. Will throw an exception if all servers are missing in the collection. This function is useful for computation graph analysis like in the RooFitDriver. | 03 May 2022, 22:56:55 UTC |
8f7b30b | Jonas Rembser | 16 April 2022, 13:16:08 UTC | [RF] Correctly replace normSets in RooProdPdf In the case of conditional fits, the RooProdPdf stores normalization sets individually for each pdf. When redirecting servers, the RooAbsArgs in these normalization sets also need to be considered. | 03 May 2022, 22:56:55 UTC |
08906ac | Jonas Rembser | 29 April 2022, 15:16:29 UTC | [RF] Ignore categories with no PDF in RooSimultaneous helper code A unit test based to check that this is done correctly was also implemented. Closes #10473. | 03 May 2022, 22:56:55 UTC |
792b0c7 | Jonas Rembser | 28 April 2022, 16:37:26 UTC | [RF] Slim down `RooFitDriver.h` by moving things to other files The RooFitDriver is central to how the new RooFit BatchMode works, and it's interface should be small to make it accessible to new contributors. | 03 May 2022, 22:56:55 UTC |
8728f13 | Jonas Rembser | 28 April 2022, 13:28:59 UTC | [RF] Continue RooFitDriver refactoring and improvements The RooFitDriver is further refactored to make the code more understandable. Furthermore, some code in the constructor that was only relevant for the CUDA mode is now only run when CUDA is enabled. | 03 May 2022, 22:56:55 UTC |
3165e03 | Jonas Rembser | 28 April 2022, 05:08:51 UTC | [RF] Refactor RooFitDriver and move some functionality to other files The `RooFitDriver.cxx` source file was growing a lot recently, and many functional parts were mixed together. For example, the loading of spans from the dataset and the analysis of the computation graph are two separate things but they were mixed in this file. This commit suggests to improve the situation by moving all data related functionality to a new file `BatchModeDataHelpers.cxx`. Some CUDA helpers are also moved to `CUDAHelpers.cxx`. Another helper function was moded to `BatchModeHelpers.cxx` to keep the footprint of `RooFitDriver.cxx` small such that new contributors can get started more easily. Documentation was also added to the new files, which are pure implementation details and no new public headers are added. | 03 May 2022, 22:56:55 UTC |
75a4570 | Jonas Rembser | 27 April 2022, 10:03:58 UTC | [RF] Add unit test for extended fit with SumW2Error and BatchMode Also move the `testSumW2Error` to `roofitcore` where it belongs. | 03 May 2022, 22:56:55 UTC |
bb905ff | Jonas Rembser | 26 April 2022, 17:54:09 UTC | [RF] Fix SumW2Error with extended term BatchMode The extended term needs a special correction, it should not just be reevaluated with the squared weights replacing the weights. This is not implemented correctly. The way how weights are handled in the batch mode was also simplified. Previously, a dummy `RooRealVar` was created for the weight and the squared weight each, but now the conventional name for the weight variable is used directly to look up the names in the data map. | 03 May 2022, 22:56:55 UTC |
53ce389 | Bertrand Bellenot | 02 May 2022, 11:59:31 UTC | Update the checksum for xrootd-5.4.2.tar.gz (fixes #10503) | 03 May 2022, 12:20:00 UTC |
44d083e | Philippe Canal | 19 April 2022, 20:55:26 UTC | stdpair: Don't reuse of emulated StreamerInfo (when having compiled info) Also: don't read past the end of the array of StreamerInfo (the indices start at -1) | 28 April 2022, 19:01:15 UTC |
c75b3ed | Javier Lopez-Gomez | 26 April 2022, 15:17:55 UTC | [core] TViewPubDataMembersIter: avoid using deprecated `std::iterator` `std::iterator` was deprecated in C++17; manually declare the member types. Fixes #10351. | 28 April 2022, 16:26:25 UTC |
58a2d21 | Vincenzo Eduardo Padulano | 13 April 2022, 08:14:48 UTC | [DF] Copy Snapshot operation arguments in a distributed task The Snapshot operation file name is modified in-place to append the range id of a certain task. This can lead to a task receiving the input operation from a previous task with an already modified file name. Thus, the current task would create a wrong file name with more than one range id. Solve this by creating a deep copy of the Snapshot operation arguments in each task, so that the filename is correctly changed in isolation. This commit is adapted to the implementation available in 6.26 | 22 April 2022, 07:05:32 UTC |
e62a02e | Josh Bendavid | 14 January 2022, 17:30:22 UTC | bypass UUID registration when using READ_WITHOUT_GLOBALREGISTRATION Normally the registration of UUIDs from TFiles is needed to support the use of TRefs pointing to a TFile. The READ_WITHOUT_GLOBALREGISTRATION option is used (by default) by TTreeProcessorMT, and in this case the use of TRefs pointing to TFile objects is anyways not thread safe since the same file (with identical UUID) may be opened by multiple threads. | 14 April 2022, 15:33:41 UTC |
7f3f74b | Enric Tejedor Saavedra | 04 March 2022, 10:32:29 UTC | [PyROOT] Py_TYPE is changed to an inline static function in Py3.11 As mentioned in the Python docs: https://docs.python.org/3.11/whatsnew/3.11.html Already available upstream in: https://github.com/wlav/CPyCppyy/commit/a8f41df0618f40ecc9a2a0b5a51fd12ddf2e6673 | 14 April 2022, 12:26:20 UTC |
59a5b95 | Axel Naumann | 12 April 2022, 16:57:00 UTC | [relnotes] Mention #10353 is fixed in 6.26/02. | 12 April 2022, 16:57:00 UTC |
f9facdf | Axel Naumann | 12 April 2022, 16:46:45 UTC | "Update ROOT version files to v6.26/03." | 12 April 2022, 16:46:45 UTC |
54807d9 | Axel Naumann | 12 April 2022, 16:24:02 UTC | "Update ROOT version files to v6.26/02." | 12 April 2022, 16:24:02 UTC |
c67b5e1 | Axel Naumann | 12 April 2022, 16:16:55 UTC | [relnotes] Update for 6.26/02. | 12 April 2022, 16:16:55 UTC |
fb0d9ef | Philippe Canal | 11 April 2022, 16:37:40 UTC | Add missing 'continue' to actually enable cache in StdLen | 12 April 2022, 14:39:15 UTC |
73a07b6 | Philippe Canal | 11 April 2022, 15:15:00 UTC | Split static init and lambda decl. Hopefully this does not increase the number of statics | 12 April 2022, 14:39:15 UTC |
87cacf8 | Philippe Canal | 08 April 2022, 23:00:57 UTC | TClassEdit: simplify and reduce cost of static initialization. | 12 April 2022, 14:39:15 UTC |
c4ca830 | Philippe Canal | 08 April 2022, 23:02:45 UTC | TClassEdit: make usage of static cache container thread safe. This should fix issue #10353. | 12 April 2022, 14:39:15 UTC |
139fde5 | Carsten Burgard | 11 April 2022, 11:08:23 UTC | [RF] Added missing snapshot creation Fixes a bug where snapshots were not imported from JSON. | 11 April 2022, 11:24:45 UTC |
d411b81 | Axel Naumann | 05 April 2022, 07:46:57 UTC | [cmake] Enable openssl3 for xrootd: For Ubuntu 22.04 we will otherwise get a build error. See https://github.com/xrootd/xrootd/issues/1666 (cherry picked from commit f4bd8e740a99828d1232494b9d92a25fe2c39f65) | 11 April 2022, 10:53:14 UTC |
ab3d1a6 | Axel Naumann | 30 March 2022, 13:09:00 UTC | [cmake] Bump davix to 0.8.1: Fixes macOS 12 builds (no "python", only "python3"). Davix now uses curl instead of neon. (cherry picked from commit 4fb53c7adfb4df5fb2652b234c609af951a98edc) | 11 April 2022, 10:53:03 UTC |
7450c0b | Enrico Guiraud | 08 April 2022, 12:55:28 UTC | [I/O] Use thread-local collection proxy in TClass::Destructor This fixes #10357 (a race condition when reading vectors with custom allocators with TTreeProcessorMT that also affected RDataFrame). Co-authored-by: Philippe Canal <pcanal@fnal.gov> | 10 April 2022, 16:46:33 UTC |
88ddada | Jonas Rembser | 10 March 2022, 10:33:13 UTC | [RF] Don't used fixed-size stack arrays in RooBatchCompute in CPU case In the CPU case in `RooBatchCompute`, we can use `std::vector` instead of fixed-size stack arrays to pass data around, and the `Batches` object can be passed to the compute functions by reference. This fixes crashes with models where the numer of inputs for a RooAbsArg exceeds the maximum number of parameters supported by the fixed-size array buffer, at least in the CPU case. In the GPU case, we now throw a nicer error if the buffers are to small, instead of just crashing. The `stressRooFit` tests for the CPU or GPU batch mode still pass after this commit. | 09 April 2022, 07:52:14 UTC |
0c6f5a0 | Jonas Rembser | 08 April 2022, 11:58:03 UTC | [RF] Move `RooMath` from RooBatchCompute back into RooFitCore Moving `RooMath` to RooBatchCompute caused linker errors for users that we want to avoid: RooBatchCompute is a RooFit implementation detail and we don't want poeple to link against it. For this reason, RooMath is moved back into RooFitCore, and the Faddeeva implementation that is also used in RooBatchCompute is split off into a new file `faddeeva_impl.h` that is not part of the public interface. | 09 April 2022, 07:52:14 UTC |
4813de8 | Jonas Rembser | 07 April 2022, 18:00:33 UTC | [RF] Fix architecture logging RooFitDriver * print the **value** of the `RF_ARCH` macro, not the macro name * avoid looging same info repeatedly | 09 April 2022, 07:52:14 UTC |
1d8e2f2 | Vincenzo Eduardo Padulano | 08 April 2022, 08:41:10 UTC | [DF][NFC] Disable also distributed tutorials on Mac ARM | 08 April 2022, 14:48:41 UTC |
ea93441 | Sergey Linev | 06 April 2022, 12:45:02 UTC | [rbrowser] ignore escape characters in terminal output Some terminal commands (like ls) may produce escape characters for coloring. These characters are ignored for the beginning | 07 April 2022, 07:44:54 UTC |
0a8a6cd | Sergey Linev | 06 April 2022, 14:37:00 UTC | [rbrowser] fix typo in settings menu | 07 April 2022, 07:44:54 UTC |
f7bab47 | Ivan Kabadzhov | 06 April 2022, 09:56:25 UTC | [VecOps] Prefer using namespace ROOT::Detail::VecOps inside tests | 07 April 2022, 06:28:15 UTC |
3f7a3eb | Ivan Kabadzhov | 05 April 2022, 15:10:23 UTC | [VecOps] Introduce value parameterized tests for VecOpsSwap Added unit test fixture to test both `ROOT::VecOps::swap` and `std::swap`. Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com> | 07 April 2022, 06:28:15 UTC |
3168517 | Ivan Kabadzhov | 04 April 2022, 10:18:05 UTC | [VecOps] Add a test suite for possible vector swaps Possible combinations of vectors to swap: 1. small <-> small 2. regular <-> regular (not small, not adopting) 3. adopting <-> adopting 4. small <-> regular (and vice versa) 5. small <-> adopting (and vice versa) 6. regular <-> adopting (and vice versa) | 07 April 2022, 06:28:15 UTC |
917cd2d | Ivan Kabadzhov | 01 April 2022, 14:17:23 UTC | [VecOps] Add public `IsSmall` and `IsAdopting` methods Introduce ROOT::Detail::VecOps::IsSmall(v) and ROOT::Detail::VecOps::IsAdopting(v) to check whether an RVec is small and owning its memory respectively. | 07 April 2022, 06:28:15 UTC |
06ddf9f | Ivan Kabadzhov | 05 April 2022, 08:23:26 UTC | [VecOps] Handle swap of small and adopting vectors There was one combination of vectors that was braking the Rvec's `swap` previously - small and adopting vectors. This case is now fixed. | 07 April 2022, 06:28:15 UTC |
7d7b4f1 | Philippe Canal | 06 April 2022, 11:58:30 UTC | [NFC] Simplify code in TListOfEnums | 06 April 2022, 15:50:26 UTC |
a3c0a15 | Philippe Canal | 06 April 2022, 11:54:59 UTC | Remove unnecessary trailing semi-colon | 06 April 2022, 15:50:26 UTC |
678e98c | Philippe Canal | 31 March 2022, 23:48:12 UTC | CollectionProxy: pass pair hint to R__CreateValue | 06 April 2022, 15:50:26 UTC |
531fc24 | Philippe Canal | 31 March 2022, 22:10:19 UTC | Avoid reading pass the end of the StreamerInfo container. This was happening when, inadvertently, StreamerInfo were created multiple times and then immeditately deleted (for map<enumtype_without_dict, somethinelse>) | 06 April 2022, 15:50:26 UTC |
e3c4bbd | Philippe Canal | 31 March 2022, 22:09:08 UTC | TGenCollectionProxy init: fail if the value's StreamerInfo is not there. This happened in a user case where the container (map) for a pair of an enum, which had not dictionary and something else that did have a dictionary. | 06 April 2022, 15:50:26 UTC |
e6ebd0e | Philippe Canal | 31 March 2022, 22:04:48 UTC | TBufferFile: create StreamerInfo only if needed. In the 'root_serialization' use case, we ended in TBufferFile::WriteClassBuffer with no StreamerInfo created yet for the TClass for `std::vector<float>` and thus go into the branch that creates the StreamerInfo ... However, at least in that case, the call to `BuildRealData` induced the creation of the StreamerInfo but the code in `TBufferFile::WriteClassBuffer` did not notice and thus create a second one and tried to register it in the same slot. (The actual negative side effect was only an error message and a memory leak). | 06 April 2022, 15:50:26 UTC |
ca08a1c | Philippe Canal | 29 March 2022, 20:11:13 UTC | Do the pair TClass StreamerInfo refresh only when needed | 06 April 2022, 15:50:26 UTC |
322f814 | Philippe Canal | 29 March 2022, 19:31:51 UTC | TClass: clear fLastReadInfo, fCurrentInfo when deleting TStreamerInfos | 06 April 2022, 15:50:26 UTC |
bcb23bd | Philippe Canal | 29 March 2022, 19:31:20 UTC | pair: Also treat unordered map | 06 April 2022, 15:50:26 UTC |