Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
577 commits
Select commit Hold shift + click to select a range
b594104
In getIntersectAt() look for controll object also in parent
alja Oct 11, 2021
1474ced
Fix selection of REveDataCollection items from table or GED controller.
alja Oct 11, 2021
1380cc1
Implement the \legacy command (#9104)
couet Oct 12, 2021
4449ef4
[skip-ci] new \legacy interface
couet Oct 12, 2021
e18b171
[skip-ci] update to doxygen 1.9.3 (#9111)
couet Oct 13, 2021
6856f33
[skip-ci] this tutorial produced a wrong output (#9110)
couet Oct 13, 2021
86b7a3a
Fix jupyroot on Windows (supersedes #9107)
bellenot Oct 13, 2021
4de17ec
[DF][Fix #6981] RDisplay::Print to list custom number of elements fro…
ikabadzhov Oct 13, 2021
ec4d01b
[skip-ci] the geometry and graphpainter anchors clashes (#9113)
couet Oct 14, 2021
a4b39b3
[cling] getSymbolAddressWithoutMangling() already handles injected sy…
Axel-Naumann Aug 5, 2021
adec92d
[cling] Do not emit existing weak symbols:
Axel-Naumann Aug 5, 2021
5a941f3
[cling] Windows: always emit definitions of JITed "weak" variables
Axel-Naumann Aug 9, 2021
7943e23
[cling] Remove llvm_unreachable:
Axel-Naumann Aug 10, 2021
0afa915
[io] Add error message before assert (#8387).
Axel-Naumann Jun 17, 2021
1a7d279
[ntuple] Vectorize RPageSource::LoadCluster(s)
jblomer Sep 20, 2021
2d43bd8
[ntuple] Combine read requests from preloading multiple clusters
jblomer Sep 23, 2021
16ab156
[ntuple] Rename RPageSource::ColumnSet_t --> RCluster::ColumnSet_t
jblomer Sep 24, 2021
23ab0da
[ntuple] Introduce RCluster::RKey helper struct
jblomer Sep 24, 2021
3bddca0
[ntuple] Add capability to issue vector cluster preloads
jblomer Sep 25, 2021
d625799
[ntuple] Cluster pool: control vector read size with cluster bunch IDs
jblomer Oct 10, 2021
ffaa19f
[ntuple] Fix comment typo (NFC)
jblomer Oct 10, 2021
3ad4e4e
[ntuple] Add capability to preload bunches of clusters
jblomer Oct 10, 2021
0aa9f3f
[ntuple] Fix-up cluster pool unit tests
jblomer Oct 11, 2021
2cd1af3
[ntuple] Simplify vector construction in friend page source
jblomer Oct 12, 2021
f0ace64
Revert "[ntuple] Simplify vector construction in friend page source"
jblomer Oct 12, 2021
b7344a6
Some tutorials did not show correctly in the ref guide. (#9125)
couet Oct 18, 2021
ef81ad1
Grammar and typo fixes in TH1 documentation (#9129)
jernej-9 Oct 18, 2021
93a4f5b
Fix blocking stdout/stderr capture on Windows
bellenot Oct 18, 2021
43c07a2
Enable StreamCapture() on Windows
bellenot Oct 18, 2021
56e0257
Fix NotebookApp startup error on Windows
bellenot Oct 18, 2021
07f2bdb
[DF] Remove unused variable
eguiraud Oct 18, 2021
ca72e32
[NFC][DF] Remove HTML tags from docs
eguiraud Oct 18, 2021
89a658e
[DF] Avoid crash in tutorial due to reused canvas name
eguiraud Oct 18, 2021
c725bca
[RF] Fix memory leaks in RooFactoryWSTool
guitargeek Oct 14, 2021
fa5ce32
[DF][Fix #7205] Print() now indicates non-fitting columns
ikabadzhov Oct 15, 2021
bb9bb09
[ntuple] Fix flaky unit test for RClusterPool
jblomer Oct 18, 2021
09c584f
Add public function to scale TGraph and derived classes (#8143)
ferdymercury Oct 19, 2021
3b7cc16
[PyROOT] Remove TTree.AsMatrix in 6.26
etejedor Oct 19, 2021
3699a80
[DF][PyROOT] Set minimum Python version for DistRDF to 3.7
vepadulano Oct 1, 2021
69efe78
Add the '--notebook' option for Windows (#9142)
bellenot Oct 20, 2021
bcc7892
[rfiledialog] let enable/disable change of current directory
linev Oct 20, 2021
56407a7
[eve7] fix typo in JS code
linev Oct 20, 2021
2f3a5fc
[rfiledialog] if configured, disable path changing already in client
linev Oct 20, 2021
4f155db
[jsroot] dev 19/10/2021
linev Oct 20, 2021
261f358
[ntuple] Fix memory management on read of std::vector elements
jblomer Oct 20, 2021
39bac22
Print a warning when (#9147)
couet Oct 21, 2021
7c1127a
THStack::GetXaxis->SetRange did not auto-zoom Yaxis range (#9149)
couet Oct 21, 2021
6b94707
use proper bitmap_pad in XCreateImage (#8681)
ferdymercury Oct 21, 2021
bab2959
Fix unresolved external statics on Windows
bellenot Oct 21, 2021
4a9f26a
Apply some fixes for stressRoofit
lmoneta Oct 18, 2021
c9eae81
Update reference file and use empty range for full range.
lmoneta Oct 19, 2021
4967f82
Fix input shape when evaluating regression and multiclass values
lmoneta Sep 6, 2021
edba9f5
Add the DL GPU case in the TMVA regression tutorial
lmoneta Jun 29, 2021
18531a4
fix an issue with drawing progress bar when evaluating regression events
lmoneta Sep 6, 2021
05240af
[ntuple] Discard const/volatile qualifiers in type names
jalopezg-git Oct 21, 2021
f71cf25
[ntuple] Improve ntuple_types test
jalopezg-git Oct 21, 2021
7c53066
[rbrowsable] provide "svg+xml" image type for svg images
linev Oct 21, 2021
4efd04a
[jsroot] dev 21/10/2021 with improved TPave drawing
linev Oct 21, 2021
bccf758
[RF] Define norm. set for multi-range fit normalization integrals
guitargeek Oct 20, 2021
81cb50e
[RF] Introduce new `RooFitResult::isIdenticalNoCov` function
guitargeek Oct 21, 2021
826a6c3
[RF] Fix weights in `SumW2Error()` fits to RooDataHist with batch mode
guitargeek Oct 21, 2021
25c791e
[RF] Add unit test for `SumW2Error()`-corrected fits with batch mode
guitargeek Oct 21, 2021
2cf7832
[DF] Make dataframe/test/CMakeLists.txt more readable
eguiraud Oct 20, 2021
0203350
[DF] Run dataframe_snapshot if M1_BROKEN_TESTS OR win_broken_tests
eguiraud Oct 20, 2021
f390bb4
[DF] Remove unused data members from RDefineBase
eguiraud Oct 21, 2021
3f2be00
[DF] No need to store nSlots in RDefine, RDefinePerSample
eguiraud Oct 21, 2021
6059727
[webgui] let catch RWebWindow::Show call
linev Oct 21, 2021
3816637
[rbrowser] catch RWebWindow::Show calls to embed selected widgets
linev Oct 21, 2021
44bf48e
[webgui] specify widget kind for web-based TCanvas/RCanvas windows
linev Oct 21, 2021
4638c92
[webgui] provide appropriate method to get relative addr for RWebWindow
linev Oct 21, 2021
dfef2f3
[rbrowser] catch web-based TCanvas and geometry viewer
linev Oct 21, 2021
d00a985
[rbrowser] let enable/disable catch of RWebWindow::Show calls
linev Oct 21, 2021
058718e
[eve7] fix jsroot-based geometry rendering
linev Oct 21, 2021
86713b9
[jsroot] fix geom painter for eve7
linev Oct 21, 2021
ddff522
[ntuple] Simplify RPageSourceFriends::LoadClusters() implementation
jblomer Oct 20, 2021
d01c121
[DF] Add proper error handling to TTreeProcessorMT::GetFriendEntries
eguiraud Oct 22, 2021
2a18abb
[RF] Add `const` qualifier to `RooAbsCollection::assign()` family
guitargeek Jul 12, 2021
d56946f
[RF] Use `RooAbsCollection::assign()` in RooFit code
guitargeek Jul 12, 2021
25b53e2
[rfiledialog] let set working path from client
linev Oct 22, 2021
c418ceb
[rbrowsable] correctly handle items corresponding to empty container
linev Oct 22, 2021
ce32219
[netxng] Implementation of RRawFileNetXNG.
simonmichal Sep 17, 2021
3e4918f
[netxng] Tests for RRawFileNetXNG.
simonmichal Oct 21, 2021
ef7695e
In selection refresh check elements exists before unselection
alja Oct 14, 2021
0573519
[RF] Add `-q` quiet option to stressRooFit
guitargeek Oct 20, 2021
4146a5e
[RF] Add BatchMode option in stressRooFit
manolismih Jun 8, 2021
1404a75
[RF] Always use RooVectorDataStore in stressRooFit
guitargeek Aug 10, 2021
952e1c6
[math] Remove unused headers:
Axel-Naumann Jul 26, 2021
0a6b251
Add missing include cmath for std::abs
lmoneta Oct 4, 2021
89587e2
Fix header guard for correct file name
lmoneta Oct 21, 2021
bc4f8e9
[RF] Refactor weight summing for extended term
guitargeek Jun 8, 2021
a8a159a
[RF] RooLagrangianMorphFunc::Config as struct
rahulgrit Aug 17, 2021
70b6a55
[DF] Internal function to trigger computation graph
vepadulano Oct 20, 2021
78c5466
[DF] Trigger computation graph in ComputationGraphGenerator
vepadulano Oct 13, 2021
0c5079e
[DF][NFC] Adjust test to new ComputationGraphGenerator behaviour
vepadulano Oct 14, 2021
755ff03
[skip-ci] improve TPad::Print doc (#9181)
couet Oct 25, 2021
8b83c23
[DF] Remove useless data member from RFilter, avoid (rare) reallocations
eguiraud Oct 21, 2021
9c8acb7
[qt6web] Introducing qt6web plugin
linev Oct 25, 2021
7a98892
[qt6web] provide "qt6" web display
linev Oct 25, 2021
9569687
[jsroot] dev 25/10/2021
linev Oct 25, 2021
50b4a72
[webgui] update comment in qt scheme handler
linev Oct 26, 2021
b7e62e5
[GSoC][TMVA][SOFIE] Add LSTM operator (#8846)
axmat Oct 26, 2021
7ec687c
[NFC][DF] Fix comment
eguiraud Oct 26, 2021
bc410b9
[NFC][DF] Comment on why we need to declare namespace alias twice
eguiraud Oct 26, 2021
dbeecba
[DF] Do not rely on transitive inclusion of RLoopManager
eguiraud Oct 26, 2021
87f55d3
[DF] Clarify code around SFINAE'd constructor
eguiraud Oct 26, 2021
eef41e2
[DF] Move, don't copy local variable into new RInterface object
eguiraud Oct 26, 2021
716732c
[tcling] Disable runtime resolution for type identifiers
jalopezg-git Oct 21, 2021
4d95974
[NFC] Add Jakob as owner of tree/ntuple/v7
eguiraud Oct 27, 2021
1a7dd5b
[ntuple] Use different filenames in different tests
eguiraud Oct 27, 2021
39a1e33
[ntuple, rdf] Fix reading anonymous collections
jblomer Oct 27, 2021
b902fab
[ntuple, df] Add unit test for cardinality column of anonymous collec…
jblomer Oct 27, 2021
6b8106b
[rbrowser] allow to embed different windows for all kind of displayes
linev Oct 26, 2021
6301d28
[webgui] handle special case also for qt6
linev Oct 26, 2021
d640ff6
[webgui] increase polling time TWebCanvas when shown in qt5/qt6/cef
linev Oct 26, 2021
56f48c4
[webgui] adjust code and readme to latest CEF version
linev Oct 26, 2021
afb0320
[webgui] update docu of RWebWindow-related classes
linev Oct 27, 2021
5c62922
[DF] Lift some data members and logic to non-template base classes
eguiraud Oct 26, 2021
89e24ae
[NFC][DF] Add comment to clarify function argument
eguiraud Oct 26, 2021
999863f
[DF] Windows needs the fully qualified name for this alias
eguiraud Oct 27, 2021
3e660dc
[core] Port to Win64 (replace Long_t by Longptr_t)
bellenot Oct 27, 2021
6d86f96
[treeplayer] Fix TSimpleAnalysis / rootdrawtree with no args.
Axel-Naumann Jul 31, 2021
6918e98
[rootdrawtree] diagnose missing arguments.
Axel-Naumann Jul 31, 2021
2987bbe
[rootdrawtree.py] convert indentation tabs to spaces.
Axel-Naumann Oct 25, 2021
9d8b61b
[roofit] Port to Win64 (pointer formatting)
bellenot Oct 28, 2021
a7233b2
[http] analyze websocket opcode in civetweb (#9207)
linev Oct 29, 2021
34ccc25
[rbrowser] let run python scripts from editor tab
linev Oct 29, 2021
f6bd4f4
[jsroot] dev 28/10/2021
linev Oct 29, 2021
e4c8725
[openui5] update Component.js and manifest.json files
linev Oct 29, 2021
ff8dfa5
[webgui] create Component-preload.js file for canvas application
linev Oct 29, 2021
65ae1b5
add clang-format job
egpbos Jun 23, 2021
06db720
trigger on pull_request without branch specified
egpbos Jun 23, 2021
25ece38
fetch all history and tags so we can compare for clang-format
egpbos Jun 23, 2021
9ed8aa1
try to separately pull in master
egpbos Jun 23, 2021
e2e9540
change to fetch
egpbos Jun 23, 2021
505a10b
pass in BASE_COMMIT using a github actions variable
egpbos Jun 24, 2021
625c635
actually point to base SHA instead of head SHA
egpbos Jun 24, 2021
b3c0d55
fetch base ref
egpbos Jun 24, 2021
f608902
install clang tools to also get git-clang-format
egpbos Jun 24, 2021
eb2fd24
install clang-format instead
egpbos Jun 24, 2021
a098b3d
revert format_script.sh change
egpbos Jun 24, 2021
2489fe2
pass BASE_COMMIT to format_script.sh
egpbos Jun 24, 2021
ed6e942
[RF] Implement `RooResolutionModel::selfNormalized`
guitargeek Oct 29, 2021
e4db15b
[montecarlo] Use correct argument types
bellenot Oct 29, 2021
03d7710
[tree] Port to Win64 (supersedes #8013)
bellenot Oct 29, 2021
cba4172
Update TLatex.cxx (#9211)
Triple-S Nov 1, 2021
9908c66
[webgui] support batch mode in Firefox
linev Nov 1, 2021
5f222d8
bump built-in gtest's version from 1.10 to 1.11
bellenot Nov 1, 2021
33a1731
[DF][Fix root-project#9116] Display pretty Print and AsString
ikabadzhov Oct 28, 2021
37e8adb
[NFC][DF] Add Ivan to release notes
eguiraud Nov 1, 2021
62270ff
Add example usage of RDF + Numba.Declare + RVec
eguiraud Nov 1, 2021
08850fd
[NFC][DF] Mention Numba.Declare+RVec feature in RDF user guide
eguiraud Nov 1, 2021
b0ebd61
[README] Add Vincenzo's contributions for release 6.26
vepadulano Oct 30, 2021
8c4ddbf
[RF] Avoid including `RooMath.h` in RooFit headers and stress tests
guitargeek Oct 29, 2021
1dfa318
[RF] Test that `RooMath.h` can be included from the ROOT interpreter
guitargeek Nov 1, 2021
1fb1d37
[Build System] Change name of file to check connectivity in build
vepadulano Nov 3, 2021
96158fa
[DF] Use more meaningful name in CSV datasource test
vepadulano Nov 3, 2021
ed33ba4
[DF] Change https to http in datasource_csv test
vepadulano Nov 3, 2021
4fe36b1
[NFC][DF] Add comment about http vs https
eguiraud Nov 3, 2021
db4be46
Adds -Bsymbolic linker option for libCling.so in order get the symbol…
grasph Jul 20, 2021
99c558d
Grouped flags related to link premption togeher in the interpreter/CM…
grasph Jul 23, 2021
886d407
Adds -Bsymbolic linker option for libCling.so in order get the symbol…
grasph Jul 20, 2021
6e7f975
Grouped flags related to link premption togeher in the interpreter/CM…
grasph Jul 23, 2021
aa395a5
Update interpreter/CMakeLists.txt
grasph Jul 23, 2021
1dd4734
cosmetics
grasph Aug 24, 2021
8d788ce
[cmake] Intentation (NFC).
Axel-Naumann Aug 26, 2021
6180ff6
[dictgen] Add rootcling support for `-isystem`.
Axel-Naumann Aug 26, 2021
3adc558
[dictgen] compiler default incl paths must not become -isystem:
Axel-Naumann Nov 3, 2021
5db9910
[cmake] Pass SYSTEM include dirs as `-isystem` to rootcling:
Axel-Naumann Aug 26, 2021
1a1f833
[cmake] Use SYSTEM include for external libs:
Axel-Naumann Aug 26, 2021
2f7406d
[NFC][DF] Fix function name in comments
eguiraud Oct 29, 2021
1024425
[DF] Move CheckDefineType from RDefineReader.hxx to Utils.hxx
eguiraud Oct 29, 2021
641ba7d
[DF] Remove now empy RDefineReader.cxx
eguiraud Oct 29, 2021
7e26564
[gpadv7] Port to Win64 (replace Long_t by Longptr_t)
bellenot Nov 4, 2021
db1c119
Port a couple of tests and tutorials to Win64 (replace Long_t by Long…
bellenot Nov 4, 2021
e08a85b
[win32gdk] Port to Win64
bellenot Nov 4, 2021
52afd08
[gui] Port to Win64 (replace Long_t by Longptr_t + pointer formatting…
bellenot Nov 4, 2021
80db7c7
Complete fhistogram limits computations (#9229)
couet Nov 4, 2021
3dfd9cb
[io] Port to Win64 (replace Long_t by Longptr_t)
bellenot Oct 28, 2021
504b9dc
[cling] Remove unneed `assert()`
jalopezg-git Nov 4, 2021
2d5a28e
[win64][skip-ci] Don't export llvm and clang symbols
bellenot Nov 3, 2021
dc524cd
[html] Port to Win64 (replace Long_t by Longptr_t + pointer formatting)
bellenot Oct 28, 2021
da2a4bd
Fix compilation warnings on Windows 64 bit
bellenot Oct 28, 2021
10e2991
Fix bindexplib on Windows 64 bit (#9228)
bellenot Nov 5, 2021
beb4379
[webgui] when --web=off specified, do not try to load libROOTWebGUI lib
linev Nov 5, 2021
057135c
[webgui] do not use --incognito mode for chrome
linev Nov 5, 2021
11bf424
[webgui] prevent RWebWindow::Show or starting server when --web=off
linev Nov 5, 2021
af8581c
[jsroot] dev 4/11/2021 with new TLatex parser
linev Nov 5, 2021
7efa074
Remove useless command
bellenot Nov 5, 2021
b347a28
[ntuple] Fix race in RClusterPool destruction
jblomer Nov 1, 2021
2461a66
Revert "[ntuple] Fix race in RClusterPool destruction"
jblomer Nov 2, 2021
1aba25e
[ntuple] Improve testability of cluster pool
jblomer Nov 2, 2021
0cdfa69
[cxxmodules] Enable a module if json is present.
vgvassilev Nov 5, 2021
f00c982
[VecOps] Allow implicit conversions in Where
eguiraud Nov 1, 2021
1be1584
[VecOps] Increase test coverage for Where
eguiraud Nov 5, 2021
b83feef
[DF][Fix root-project#9117] Applied aliases in tutorials
ikabadzhov Oct 28, 2021
69b58a1
[tcling] Suppress -Wunused-result diagnostics in wrappers generated b…
jalopezg-git Nov 4, 2021
50df68b
[tcling] Add test against issue #8622
jalopezg-git Nov 5, 2021
8844e28
[test] Moved `FilterDiagsRAII` class to ROOTUnitTestSupport.h
jalopezg-git Nov 7, 2021
fb6095f
[skip-ci] Fix compilation error of constructors.cxx on Win64
bellenot Nov 8, 2021
ba66b33
[DF][NFC] Document Snapshotting to subdirectories
eguiraud Nov 8, 2021
e1f95f2
[NFC][DF] Typo fixes in Snapshot docs
eguiraud Nov 8, 2021
63a7d27
[DF] Use assert, not R__ASSERT when checks are unnecessary in releases
eguiraud Nov 8, 2021
d1a4307
[DF] Use different file names in different tests
eguiraud Nov 8, 2021
0fa817d
[RF] Avoid heap allocation of `RooArgSet` in `Roo(Abs)GenContext`
guitargeek Nov 7, 2021
ab55145
remove getpagesize() declaration
balejk Nov 8, 2021
5e5cb3f
change conditions for R__VA_COPY definition
balejk Nov 8, 2021
adefbc8
remove fpu_control.h
balejk Nov 8, 2021
5fb070e
[sqliteds] Prevent temporary table to be written on disk
jblomer Nov 9, 2021
af2cc2d
[sqliteds] Explain the use of temp_store pragma (NFC)
jblomer Nov 9, 2021
335dcfc
[test] Fix several tests on Win64
bellenot Nov 9, 2021
ff1ee8d
Revert changes in TArrayL (use Long_t instead of Longptr_t)
bellenot Nov 9, 2021
7f0988b
[DF] Remove unnecessary include from df102_NanoAODDimuonAnalysis
eguiraud Nov 10, 2021
7ffb87e
[DF] Use assert, not R__ASSERT when we are checking for bugs
eguiraud Jul 5, 2021
e9b0304
Improve graph painter doc (#9273)
couet Nov 11, 2021
b3ead61
[DF] Avoid useless computation when we don't need its result.
eguiraud Nov 11, 2021
004b6a7
When using in TEfficiency TDirectory::TContext to avoid adding intenr…
lmoneta Nov 9, 2021
3bb0d77
[DF] Correct doc format for ROOT::VecOps::Mean
ShamrockLee Nov 7, 2021
5209a5d
[DF] Correct doc VecOps::Sort, "ArgSort" -> "Argsort"
ShamrockLee Nov 7, 2021
e508640
[DF] Correct doc (example code)
ShamrockLee Nov 8, 2021
8a5074c
[DF] Use SparkContext attribute to optimize npartitions
vepadulano Oct 30, 2021
1d74488
[NFC] Adapt one test, remove another which was redundant
vepadulano Oct 31, 2021
f9eff41
[RF] Cleanup `RooRealVar::_sharedPropList` in RooRealVar destructor
guitargeek Nov 10, 2021
ae1f984
[RF] Forbid copying of `RooSharedProperties` and derived classes
guitargeek Nov 10, 2021
789954a
[cling] Let opt of transaction decide on inlining, fixes O3.
Axel-Naumann Feb 3, 2021
6996016
[cling] Set default CompilationOptions opt level to 1:
Axel-Naumann Feb 24, 2021
fa49cf3
[cling] Swap also TBAA as it references OldBuilder->CXXABI:
Axel-Naumann Feb 24, 2021
852b439
[cling] Prevent traling whitespace in -isystem.
Axel-Naumann Apr 12, 2021
9fcb691
[llvm] Disable out-of-bounds assertion:
Axel-Naumann Nov 10, 2021
f89c883
[cling] ReuseExistingWeakSymbols: prevent stale symbol emission:
Axel-Naumann Nov 11, 2021
f2e3b91
[cling] EvaluateInternal: capture ValuePrinting request early:
Axel-Naumann Nov 11, 2021
6ab1f24
Revert "[cxxmodules] Enable a module if json is present."
Axel-Naumann Nov 12, 2021
5e6ae6d
[eve7] Do not rely on transient include of json.
Axel-Naumann Nov 12, 2021
1ff9050
[cmake] Spelling (NFC).
Axel-Naumann Nov 12, 2021
8566bd5
Revert "[json] add json_fwd.hpp file"
Axel-Naumann Nov 12, 2021
9bf0c7c
Revert "Test if json_fwd.hpp exists"
Axel-Naumann Nov 12, 2021
666cd79
[eve7] Use fwd decls of nlohmann/json types.
Axel-Naumann Nov 12, 2021
5c160e9
[DF] Introduce the distributed RDataFrame Dask backend
vepadulano Oct 23, 2021
6d231cc
[NFC] Extend RDF docs with Dask backend
vepadulano Oct 23, 2021
9f050e5
[Build System] Add option test_distrdf_dask
vepadulano Oct 23, 2021
ded6175
[dataframe] Silence RSqliteDS warning / var used only in assert.
Axel-Naumann Nov 13, 2021
b69d352
Initial commit for AWS
Vetchu Aug 25, 2021
39e2e01
update
Vetchu Aug 25, 2021
fc7e3e8
another small adj
Vetchu Aug 27, 2021
e623804
more
Vetchu Aug 27, 2021
2e0f027
working version
Vetchu Aug 29, 2021
31a6194
pass the certs
Vetchu Aug 30, 2021
f928dff
update to newest
Vetchu Sep 15, 2021
8387142
Headers
Kamilbur Sep 16, 2021
4046e07
General refactoring
Kamilbur Oct 19, 2021
304ce19
Fix missing file bug.
Kamilbur Nov 1, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 0 additions & 1 deletion .ci/format_script.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

set -ex

BASE_COMMIT=$(git rev-parse $TRAVIS_BRANCH)
echo "Running clang-format against branch $TRAVIS_BRANCH, with hash $BASE_COMMIT"
COMMIT_FILES=$(git diff --name-only $BASE_COMMIT | grep -i -v LinkDef)
RESULT_OUTPUT="$(git-clang-format --commit $BASE_COMMIT --diff --binary `which clang-format` $COMMIT_FILES)"
Expand Down
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
/tree/ @pcanal
/tutorials/ @couet
/tree/dataframe @eguiraud
/tree/ntuple/v7/ @jblomer

# Projects that span over several code modules:
/bindings/r/ @omazapa
Expand Down
23 changes: 23 additions & 0 deletions .github/workflows/code_analysis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: clang-tools code analysis

on: pull_request
# push:
# branches: [ $default-branch ]
# pull_request:
# branches: [ $default-branch ]

jobs:
clang-format:
runs-on: ubuntu-latest
env:
TRAVIS_BRANCH: ${{ github.base_ref }}
TRAVIS_PULL_REQUEST_BRANCH: ${{ github.head_ref }}
BASE_COMMIT: ${{ github.event.pull_request.base.sha }}
steps:
- uses: actions/checkout@v2
- name: Fetch base_ref HEAD
run: git fetch --depth=1 origin +refs/heads/${{github.base_ref}}:refs/remotes/origin/${{github.base_ref}}
- name: install clang-format
run: sudo apt-get install -y clang-format
- name: run clang-format script
run: .ci/format_script.sh
6 changes: 5 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,11 @@ matrix:
include:
- env: TOOL=clang-format
script: &format_script
- if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then .ci/format_script.sh; fi
- |
if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then
export BASE_COMMIT=$(git rev-parse $TRAVIS_BRANCH)
.ci/format_script.sh
fi

- env: TOOL=clang-tidy-analyzer
before_script: &copy_headers
Expand Down
15 changes: 11 additions & 4 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ endif()

#---Try to download a file to check internet connection-----------------------------------------
message(STATUS "Checking internet connectivity...")
file(DOWNLOAD https://root.cern/files/test.txt ${CMAKE_CURRENT_BINARY_DIR}/test.txt
file(DOWNLOAD https://root.cern/files/cmake_connectivity_test.txt ${CMAKE_CURRENT_BINARY_DIR}/cmake_connectivity_test.txt
TIMEOUT 5 STATUS DOWNLOAD_STATUS
)
# Get the status code from the download status
Expand All @@ -128,7 +128,7 @@ if(${STATUS_CODE} EQUAL 0)
# Succcess
message(STATUS "Yes")
# Now let's delete the file
file(REMOVE ${CMAKE_CURRENT_BINARY_DIR}/test.txt)
file(REMOVE ${CMAKE_CURRENT_BINARY_DIR}/cmake_connectivity_test.txt)
set(NO_CONNECTION FALSE)
else()
# Error
Expand Down Expand Up @@ -619,15 +619,22 @@ if(testing)
find_package(Git REQUIRED)

if(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/.git)
execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD
execute_process(COMMAND ${GIT_EXECUTABLE} for-each-ref --points-at=HEAD --count=1 --format=%\(refname:short\)
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
OUTPUT_VARIABLE GIT_BRANCH OUTPUT_STRIP_TRAILING_WHITESPACE)
else()
set(GIT_BRANCH v${ROOT_MAJOR_VERSION}-${ROOT_MINOR_VERSION}-${ROOT_PATCH_VERSION})
endif()

# Resolve the `latest-stable` branch to the latest merged head/tag
if("${GIT_BRANCH}" STREQUAL "latest-stable")
execute_process(COMMAND ${GIT_EXECUTABLE} for-each-ref --points-at=latest-stable^2 --format=%\(refname:short\)
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
OUTPUT_VARIABLE GIT_BRANCH OUTPUT_STRIP_TRAILING_WHITESPACE)
endif()

execute_process(COMMAND
${GIT_EXECUTABLE} ls-remote --heads
${GIT_EXECUTABLE} ls-remote --heads --tags
https://github.com/root-project/roottest.git ${GIT_BRANCH}
OUTPUT_VARIABLE ROOTTEST_GIT_BRANCH)

Expand Down
5 changes: 3 additions & 2 deletions README/CREDITS
Original file line number Diff line number Diff line change
Expand Up @@ -615,8 +615,9 @@ E: loizides@MIT.EDU
D: PROOF testing and debugging

N: Javier Lopez-Gomez
E: jalopezg@inf.uc3m.es
D: Cling support for redefinitions
E: j.lopez@cern.ch
D: Cling support for redefinitions; cling improvements
D: RNTuple/DAOS integration

N: Johan Lundberg
E: johan.lundberg@cern.ch
Expand Down
127 changes: 124 additions & 3 deletions README/ReleaseNotes/v626/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,13 @@ The following people have contributed to this new version:
Andrei Gheata, CERN/SFT,\
Enrico Guiraud, CERN/SFT,\
Jonas Hahnfeld, CERN/SFT,\
Ivan Kabadzhov, CERN/SFT,\
Sergey Linev, GSI,\
Javier Lopez-Gomez, CERN/SFT,\
Pere Mato, CERN/SFT,\
Lorenzo Moneta, CERN/SFT,\
Axel Naumann, CERN/SFT,\
Vincenzo Eduardo Padulano, CERN/SFT and UPV,\
Max Orok, U Ottawa,\
Alexander Penev, University of Plovdiv,\
Danilo Piparo, CERN/SFT,\
Expand All @@ -49,13 +52,44 @@ The following people have contributed to this new version:

## Core Libraries

### Interpreter

- As of v6.26, cling diagnostic messages can be redirected to the ROOT error handler. Users may enable/disable this via `TCling::ReportDiagnosticsToErrorHandler()`, e.g.
```cpp
root [1] gInterpreter->ReportDiagnosticsToErrorHandler();
root [2] int f() { return; }
Error in <cling>: ROOT_prompt_2:1:11: non-void function 'f' should return a value [-Wreturn-type]
int f() { return; }
^
```
More details at [PR #8737](https://github.com/root-project/root/pull/8737).

## I/O Libraries

- `TDirectory::WriteObject` now always saves the object's title to the file if it is derived from `TObject` (PR [#8394](https://github.com/root-project/root/pull/8934)).

### Command line utilities

- `rootls` now follows the same logic of `TFile::ls()` to print the key cycle number and its tag when listing contents of a file with the `-l` option (PR [#7878](https://github.com/root-project/root/pull/7878)):
```
$: rootls -l https://root.cern/files/ttree_read_imt.root
TTree Mar 13 17:17 2019 TreeIMT;2 "TTree for IMT test" [current cycle]
TTree Mar 13 17:17 2019 TreeIMT;1 "TTree for IMT test" [backup cycle]
```
- `root` will now error on receiving unrecognized options, similarly to other command line tools (PR [#8868](https://github.com/root-project/root/pull/8868)):
```
$: root --random -z --nonexistingoption
root: unrecognized option '--random'
root: unrecognized option '-z'
root: unrecognized option '--nonexistingoption'
Try 'root --help' for more information.
```

## TTree Libraries

- `TTreeReader::GetEntryStatus` now always reports `kEntryBeyondEnd` after an event loop correctly completes. In previous versions, it could sometime return `kEntryNotFound` even for well-behaved event loops.
- Add `TEntryList::AddSubList` to specifically add a sub-list to the main list of entries. Consequently, add also a new option `"sync"` in `TChain::SetEntryList` to connect the sub-trees of the chain to the sub-lists of the entry list in lockstep (PR [#8660](https://github.com/root-project/root/pull/8660)).
- Add `TEntryList::EnterRange` to add all entries in a certain range `[start, end)` to the entry list (PR [#8740](https://github.com/root-project/root/pull/8740)).

## RDataFrame

Expand All @@ -64,8 +98,42 @@ The following people have contributed to this new version:
- Add `Redefine` to the `RDataFrame` interface, which allows to overwrite the value of an existing column.
- Add `Describe` to the `RDataFrame` interface, which allows to get useful information, e.g. the columns and their types.
- Add `DescribeDataset` to the `RDataFrame` interface, which allows to get information about the dataset (subset of the output of Describe()).
- `Book` now suports just-in-time compilation, i.e. it can be called without passing the column types as template parameters (with some performance penalty, as usual).
- As an aid to `RDataSource` implementations with which collection sizes can be retrieved more efficiently than the full collection, `#var` can now be used as a short-hand notation for column name `R_rdf_sizeof_var`
- Add [DefinePerSample](https://root.cern/doc/master/classROOT_1_1RDF_1_1RInterface.html#a29d77593e95c0f84e359a802e6836a0e), a method which makes it possible to define columns based on the sample and entry range being processed. It is also a useful way to register callbacks that should only be called when the input dataset/TTree changes.
- `Book` now supports just-in-time compilation, i.e. it can be called without passing the column types as template parameters (with some performance penalty, as usual).
- As an aid to `RDataSource` implementations with which collection sizes can be retrieved more efficiently than the full collection, `#var` can now be used as a short-hand notation for column name `R_rdf_sizeof_var`.
- Helpers have been added to export data from `RDataFrame` to RooFit datasets. See the "RooFit Libraries" section below for more details.
- The output format of `Display` has been significantly improved.

### Experimental Distributed RDataFrame
The distributed RDataFrame module has been improved. Now it supports sending RDataFrame tasks to a [Dask](https://dask.org/) scheduler. Through Dask, RDataFrame can be also scaled to a cluster of machines managed through a batch system like HTCondor or Slurm. Here is an example:

```python
import ROOT
from dask.distributed import Client
RDataFrame = ROOT.RDF.Experimental.Distributed.Dask.RDataFrame

# In a Python script the Dask client needs to be initalized in a context
# Jupyter notebooks / Python session don't need this
if __name__ == "__main__":
client = Client("SCHEDULER_ADDRESS")
df = RDataFrame("mytree","myfile.root", daskclient=client)
# Proceed as usual
df.Define("x","someoperation").Histo1D("x")
```

Other notable additions and improvements include:

- Greatly reduce distributed tasks processing overhead. This involved:
- Changing the distributed execution logic with the `TTree` data source to use `TEntryList` in order to select the range of entries that each task will read from the tree. This highly reduces the waiting time spent in retrieving the correct entries for processing, as it was previously done using the `Range` operation.
- Refactoring the internal mechanism to store information about data sources and create ranges for the distributed tasks accordingly. This will also allow in the future to easily extend the supported data sources in distributed RDataFrame.
- Refactor triggering of the computation graph in the distributed tasks, so that it now runs with the Python GIL released. This allows interoperability with frameworks like Dask that run different Python threads along the main processing one.
- Set minimum Python version to use this tool to 3.7. This allows using more modern Python functionality in distributed RDataFrame code and is in line with the Python support provided by Spark and Dask.
- Add support for the `DefinePerSample` operation.
- Fixed a bug that disregarded user provided `npartitions` parameter in distributed Spark execution.
- Improve support for friend trees in distributed executions with TTree as data source. This fixes a long-standing issue with distributed RDataFrame [#7584](https://github.com/root-project/root/issues/7584).
- Changed naming scheme of the files written by a distributed `Snapshot` operation. Now, each task will be assigned with a sequential id that will be appended to the name of the file created during the execution. For example, calling `Snapshot("mytree","myfile.root")` on a distributed RDataFrame with 3 partitions will create three files named like so: `myfile_0.root, myfile_1.root, myfile_2.root`.
- Add support for TChain data sources with no tree name and multiple different tree subnames.
- Raise an error if an in-memory-only TTree is passed as data source to a distributed RDataFrame.

### Other improvements

Expand All @@ -78,7 +146,11 @@ The following people have contributed to this new version:

## Math Libraries

- `RVec` has been heavily re-engineered in order to add a small buffer optimization and to streamline its internals. The change should provide a small performance boost to
applications that make heavy use of `RVec`s and should otherwise be user-transparent. Please report any issues you should encounter.
- I/O support of `RVec` objects has been optimized. As a side-effect, `RVec`s can now be read back as `std::vector`s and vice-versa.
- added `ROOT::VecOps::Drop`, an operation that removes `RVec` elements at the specified indices.
- handy aliases `ROOT::RVecI`, `ROOT::RVecD`, `ROOT::RVecF`, ..., have been introduced as short-hands for `RVec<int>`, `RVec<double>`, `RVec<float>`, ...


## RooFit Libraries
Expand All @@ -96,6 +168,48 @@ RooFit now contains two RDataFrame action helpers, `RooDataSetHelper` and `RooDa
```
For more details, consult the tutorial [rf408_RDataFrameToRooFit](https://root.cern/doc/v626/rf408__RDataFrameToRooFit_8C.html).

### Storing global observables in RooFit datasets

RooFit groups model variables into *observables* and *parameters*, depending on if their values are stored in the dataset.
For fits with parameter constraints, there is a third kind of variables, called *global observables*.
These represent the results of auxiliary measurements that constrain the nuisance parameters.
In the RooFit implementation, a likelihood is generally the sum of two terms:
* the likelihood of the data given the parameters, where the normalization set is the set of observables (implemented by `RooNLLVar`)
* the constraint term, where the normalization set is the set of *global observables* (implemented by `RooConstraintSum`)

Before this release, the global observable values were always taken from the model/pdf.
With this release, a mechanism is added to store a snapshot of global observables in any `RooDataSet` or `RooDataHist`.
For toy studies where the global observables assume a different values for each toy, the bookkeeping of the set of global observables and in particular their values is much easier with this change.

Usage example for a model with global observables `g1` and `g2`:
```C++
auto data = model.generate(x, 1000); // data has only the single observables x
data->setGlobalObservables(g1, g2); // now, data also stores a snapshot of g1 and g2

// If you fit the model to the data, the global observables and their values
// are taken from the dataset:
model.fitTo(*data);

// You can still define the set of global observables yourself, but the values
// will be takes from the dataset if available:
model.fitTo(*data, GlobalObservables(g1, g2));

// To force `fitTo` to take the global observable values from the model even
// though they are in the dataset, you can use the new `GlobalObservablesSource`
// command argument:
model.fitTo(*data, GlobalObservables(g1, g2), GlobalObservablesSource("model"));
// The only other allowed value for `GlobalObservablesSource` is "data", which
// corresponds to the new default behavior explained above.
```

In case you create a RooFit dataset directly by calling its constructor, you can also pass the global observables in a command argument instead of calling `setGlobalObservables()` later:
```C++
RooDataSet data{"dataset", "dataset", x, RooFit::GlobalObservables(g1, g2)};
```

To access the set of global observables stored in a `RooAbsData`, call `RooAbsData::getGlobalObservables()`.
It returns a `nullptr` if no global observable snapshots are stored in the dataset.

### Changes in `RooAbsPdf::fitTo` behaviour for multi-range fits

The `RooAbsPdf::fitTo` and `RooAbsPdf::createNLL` functions accept a command argument to specify the fit range.
Expand All @@ -106,7 +220,7 @@ From now on, the likelihoods are normalized by the sum of integrals in each rang

### Deprecation of the `RooMinuit` class

The `RooMinuit` class was the old interface between RooFit and minuit. With ROOT version 5.24, a the more general `RooMinimizer` adapter was introduced, which became the default with ROOT 6.08.
The `RooMinuit` class was the old interface between RooFit and minuit. With ROOT version 5.24, the more general `RooMinimizer` adapter was introduced, which became the default with ROOT 6.08.

Before 6.26, it was possible to still use the `RooMinuit` by passing the `Minimizer("OldMinuit", "minimizer")` command argument to `RooAbsPdf::fitTo()`. This option is now removed.

Expand All @@ -118,6 +232,8 @@ The class version of `RooAbsArg` was incremented from 7 to 8 in this release. In

- Implement the option `X+` and `Y+` for reverse axis on TGraph.
- Offsets for axis titles with absolute-sized fonts (size%10 == 3) are now relative only to the font size (i.e. no longer relative to pad dimensions).
- In `TPaletteAxis` when the palette width is bigger than the palette height, the palette
in automatically drawn horizontally.

## 3D Graphics Libraries

Expand Down Expand Up @@ -167,3 +283,8 @@ The class version of `RooAbsArg` was incremented from 7 to 8 in this release. In


## Build, Configuration and Testing Infrastructure

## PyROOT

- The `ROOT` Python module is now properly serializable so that it is automatically available in the Python environment if a function or ROOT object needs to be serialized. See issue [#6764](https://github.com/root-project/root/issues/6764) for a concrete usecase.
- Improve overload resolution of functions that accept classes with long inheritance trees. Now prefer to call the function overload of the most derived class type (PR [#9092](https://github.com/root-project/root/pull/9092)).
5 changes: 3 additions & 2 deletions bindings/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright (C) 1995-2019, Rene Brun and Fons Rademakers.
# Copyright (C) 1995-2021, Rene Brun and Fons Rademakers.
# All rights reserved.
#
# For the licensing terms see $ROOTSYS/LICENSE.
Expand All @@ -25,7 +25,8 @@ if(pyroot)
add_subdirectory(tpython)
add_subdirectory(jupyroot)
add_subdirectory(jsmva)
if(dataframe)
if(dataframe AND (PYTHON_VERSION_STRING_Development_Main VERSION_GREATER_EQUAL 3.7))
# TODO: Add a status message to signal both if DistRDF is being built or if it isn't
add_subdirectory(experimental/distrdf)
endif()

Expand Down
17 changes: 8 additions & 9 deletions bindings/experimental/distrdf/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -23,17 +23,16 @@ set(py_sources
DistRDF/Backends/Utils.py
DistRDF/Backends/Spark/__init__.py
DistRDF/Backends/Spark/Backend.py
DistRDF/Backends/AWS/__init__.py
DistRDF/Backends/AWS/Backend.py
)

foreach(val RANGE ${how_many_pythons})
list(GET python_executables ${val} python_executable)

# Compile .py files
foreach(py_source ${py_sources})
install(CODE "execute_process(COMMAND ${python_executable} -m py_compile ${localruntimedir}/${py_source})")
install(CODE "execute_process(COMMAND ${python_executable} -O -m py_compile ${localruntimedir}/${py_source})")
endforeach()

# Compile .py files
# We include DistRDF in the build only if Python 3.7+ is used,
# so we can directly use the main Python executable to compile the sources
foreach(py_source ${py_sources})
install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE_Development_Main} -m py_compile ${localruntimedir}/${py_source})")
install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE_Development_Main} -O -m py_compile ${localruntimedir}/${py_source})")
endforeach()

# Install Python sources and bytecode
Expand Down
Loading