- Apr 07, 2023
-
-
Jonas Rembser authored
These files are unused and can be removed. This should fix this warning in the ROOT nightlies on the mac13 node: ``` core/clib/src/mmtrace.c:32:14: warning: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] extern char *getenv (); ``` https://lcgapp-services.cern.ch/root-jenkins/view/ROOT%20Nightly/job/root-nightly-master/LABEL=mac13,SPEC=cxx20,V=master/lastBuild/parsed_console/
-
- Apr 06, 2023
-
-
Jonas Rembser authored
This should fix some warnings in the CI: https://lcgapp-services.cern.ch/root-jenkins/view/ROOT%20Nightly/job/root-nightly-master/LABEL=mac11arm,SPEC=noimt,V=master/lastBuild/parsed_console/ Also, the equality operator is replaced with the free function version because this is preferred in C++20.
-
Jonas Rembser authored
This is a follow-up to 82d17fb6, fixing these warnings seen in the nightlies (Ubuntu 20.04): https://lcgapp-services.cern.ch/root-jenkins/view/ROOT%20Nightly/job/root-nightly-master/LABEL=ROOT-ubuntu2004-clang,SPEC=soversion,V=master/lastBuild/parsed_console/ ``` /home/sftnight/build/night/LABEL/ROOT-ubuntu2004-clang/SPEC/soversion/V/master/build/roofit/roofitcore/G__RooFitCore.cxx:8047:11: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation] if(onfile._vecEL) _vecEL = *onfile._vecEL; \ ^ /home/sftnight/build/night/LABEL/ROOT-ubuntu2004-clang/SPEC/soversion/V/master/build/roofit/roofitcore/G__RooFitCore.cxx:8046:7: note: previous statement is here if(onfile._vecE) _vecE = *onfile._vecE; \ ^ /home/sftnight/build/night/LABEL/ROOT-ubuntu2004-clang/SPEC/soversion/V/master/build/roofit/roofitcore/G__RooFitCore.cxx:8048:11: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation] if(onfile._vecEH) _vecEH = *onfile._vecEH; ^ /home/sftnight/build/night/LABEL/ROOT-ubuntu2004-clang/SPEC/soversion/V/master/build/roofit/roofitcore/G__RooFitCore.cxx:8047:11: note: previous statement is here if(onfile._vecEL) _vecEL = *onfile._vecEL; \ ^ ```
-
Axel Naumann authored
-
Axel Naumann authored
isysroot influences where clang will pick up libc++. Without this, and with Xcode 14.3, cling will use libc++ from Xcode (or the command line tools) rather than stdc++ from the macOS SDK, as clang would normally use. Passing the isysroot (which point to the SDK) fixes this. This solves build errors such as: ``` While building module 'Core': While building module 'std' imported from input_line_1:1: In file included from <module-includes>:17: In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/math.h:309: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/type_traits:462:1: error: cannot template a using declaration using _BoolConstant _LIBCPP_NODEBUG_TYPE = integral_constant<bool, _Val>; ^ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/type_traits:462:21: error: C++ requires a type specifier for all declarations using _BoolConstant _LIBCPP_NODEBUG_TYPE = integral_constant<bool, _Val>; ^ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/type_traits:462:68: error: use of undeclared identifier '_Val' using _BoolConstant _LIBCPP_NODEBUG_TYPE = integral_constant<bool, _Val>; ^ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/type_traits:462:73: error: expected '(' for function-style cast or type construction using _BoolConstant _LIBCPP_NODEBUG_TYPE = integral_constant<bool, _Val>; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ ```
-
- Apr 05, 2023
-
-
Paul Gessinger authored
-
Kyle Knoepfel authored
-
Ilya Biryukov authored
The C++ Standard requires a complete type T when using any members of `vector<T>`, see https://eel.is/c++draft/vector#overview-4. This only breaks with latest libc++ in C++20 mode and does not show up in common configurations. We have an internal experimental configuration that discovered this. Reviewed By: alexfh Differential Revision: https://reviews.llvm.org/D131595
-
serge-sans-paille authored
Some methods of json::Array require json::Value to be completely defined, so they can't be defined in-class. Fix that by defining them out of class. Fix #55780
-
Axel Naumann authored
-
Jonas Rembser authored
In 13670912, the class version of the `RooAbsReal` class was incremented. As explained in #8791, there are sometimes warnings in the IO of derived classes if their version number is not increased as well. Increasing the class version of RooRealVar indeed fixes this warning that one gets right now when reading old workspaces: ``` Warning in <TStreamerInfo::CompareContent>: The following data member of the on-file layout version 9 of class 'RooRealVar' differs from the in-memory layout version 9: RooAbsBinning _binning; // vs unique_ptr<RooAbsBinning,default_delete<RooAbsBinning> > _binning; ``` Thanks to @will-cern for catching this problem!
-
Jonas Rembser authored
Like this, the code that uses the JSON interface in RooFit HS3 can be made less verbose.
-
Jonas Rembser authored
-
Jonas Rembser authored
This fixes the remaining differences in the fit result from old and new HistFactory.
-
Jonas Rembser authored
-
Jonas Rembser authored
-
Jonas Rembser authored
This commit works around a problem in RooStats/HistFactory that was only fixed in ROOT 6.30 (commit `ee0b06a3`): until then, the weight variable of the observerd dataset, called "weightVar", was added to the observables. Therefore, it also got added to the Asimov dataset. But the Asimov has its own weight variable, called "binWeightAsimov", making "weightVar" an actual observable in the Asimov data. But this is only by accident and should be removed.
-
Jonas Rembser authored
Check if any exported RooDataSet actually represents a binned dataset, and then import it like a RooDataHist. This happens frequently when people create combined RooDataSets from binned data to fit HistFactory models. In this case, it doesn't make sense to export them like an unbinned dataset, because the coordinates are redundant information with the binning. We only do this for 1D data for now.
-
Jonas Rembser authored
-
Jonas Rembser authored
When having combined datasets that are meant for a simultaenous fit, it's more efficient to use the associated RooSimultaneous to figure out which observables need to be stripped off the component datasets. This also fixes a problem with RooDataSets with single entries being exported incorrectly.
-
Garima Singh authored
Instead of guessing the number of paramters for the model represented by RooFuncWrapper, we now introduce a parameter size function which can be used to declare gradient output arrays of the right size.
-
Axel Naumann authored
-
- Apr 04, 2023
-
-
Olivier Couet authored
-
Jonas Rembser authored
Closes JIRA issue 6039: https://sft.its.cern.ch/jira/browse/ROOT-6039 In the issue, it was suggested to make that the default, but I think this is a too drastic change. People often have long variable titles, and putting these by default in the plot labels might mess up the plots. As a compromise, this commit suggests an easy option to change the behavior of `paramOn()`, just using `T` in the format string instead of `N`.
-
Jonas Rembser authored
The `Format(const char*, int)` command arg for `RooAbsPdf::paramOn()` is long superseeded by `Format(const char*, ...)`, which takes additional command arguments instead of a single additional integer to specify the number of significant digits.
-
Jonas Rembser authored
This should obviously be `CUDA_TOOLKIT_ROOT` with an L. I don't know if this typo has any negative consequences, but it's maybe better to fix it before there are bugs creeping up because of that.
-
Bertrand Bellenot authored
* [ci][windows] Enable mathmore on Windows * [ci][windows] Remove duplicates wrt global.txt
-
- Apr 03, 2023
-
-
Bertrand Bellenot authored
* [c++20] Add spaceship operator <=> in TString In the following code (from `TFormula.cxx`): ``` map< std::pair<TString,Int_t>, pair<TString,TString> > functions; pair<TString, Int_t> key = make_pair(funName, dim); if (functions.find(key) == functions.end()) { ``` `functions.find(key)` always returns `functions.end()`. Adding the spaceship operator `<=>` in TString fixes the issue. This fixes also many failing tests with `std:c++20` * Use __cpp_impl_three_way_comparison instead of __cplusplus version (thanks Bernhard Manfred Gruber!) * Apply suggestion from Bernhard Manfred Gruber * Make sure we only include <compare> with at least std=c++20 * Implement the proper way (avoid hidden friend) thanks Bernhard * Prevent calling 'operator <=>' recursively Prevent the following warning on Windows: ``` C:\root-dev\git\master\core\base\inc\TString.h(175,16): warning C5232: in C++20 this comparison calls 'std::strong_ordering operator <=>(const TString &,const TString &)' recursively ```
-
Enrico Guiraud authored
The expected output of Display was set to what Display returned, but what Display returned was wrong (because of #12597).
-
Enrico Guiraud authored
Before this commit, RDisplay forgot to reset the state of the collection representation between events. This fixes #12597.
-
Jonas Rembser authored
The implementations of the virtual `RooAbsL::getParameters()` either returned an owning of a non-owning pointer, depending on the implementation class. RooSubsidiaryL returned a non-owning pointer, and the default implementation an owning pointer. The caller code of course doesn't know what to do with this, resulting in memory leaks. To fix this problem, the interface is suggested to return `std::unique_ptr<RooArgSet>`. Changing this interface now is okay because it has not been adopted by the users yet (it's from the new test statistic classes introduced in ROOT 6.26).
-
Jonas Hahnfeld authored
As noted in commit 538396a8 some weeks ago, Clang 15 warns that the variable v may be used uninitialized because it does not understand the pointer hackery to read individual bytes.
-
- Mar 31, 2023
-
-
Jonas Rembser authored
These are just technical changes to avoid code duplication in the RooFit JSON IO.
-
Jonas Rembser authored
It is only necessary to set the `combined_data_name` of a simultaneous pdf that gets exported to JSON when you also have a ModelConfig that will get exported to an `analysis` object in the JSON.
-
Jonas Rembser authored
Just like with the combined datasets, the JSON needs to contain all the necessary information to reconstruct simultaneous pdfs. Now, the unit test that validates the IO of a simultaneous model can also be fully activated.
-
Jonas Rembser authored
It was not good to first export RooHistPdf to TH1 before writing them to the JSON. The problem is that the exported TH1 is normalized, and rounding errors in the normalization change the information. Now, the unit test for the RooHistPdf IO can also contain more random numbers, which was not possible before because of the precision errors.
-
Jonas Rembser authored
Technical changes to reduce code duplication.
-
Jonas Rembser authored
To correctly import and export combined datasets from RooFit, the JSON needs to contain all the information to rebuild the combined dataset from the components.
-
Ianna Osborne authored
Co-authored-by:
Wim Lavrijsen <WLavrijsen@lbl.gov>
-
Axel Naumann authored
We only have release builds for incrementals, i.e. only release builds use artifacts, so there is no point in building debug artifacts.
-