Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
224 commits
Select commit Hold shift + click to select a range
a0e45ce
[core] optparse: fix multiple `--` and add some extra features:
silverweed Jun 23, 2026
a1dd883
[core] optparse: make Parse signature more const-correct
silverweed Jun 24, 2026
3c672fc
[core] StringUtils: add SplitAt() and iterator-based overload for Join
silverweed Jun 23, 2026
0527c71
[core] use optparse in TApplication
silverweed Jun 23, 2026
5a31e47
[core] Add comment about `--` in TApplication help msg
silverweed Jun 29, 2026
db033d8
[core] TApplication: mark some flags as deprecated
silverweed Jun 29, 2026
afdb54c
[cmake] Produce python .dist-info metadata
jase231 Jun 23, 2026
3df438b
Small improvements in df tutorials (#22739)
couet Jul 2, 2026
bb06dce
[tgaxis] completely remove gVirtualX usage
linev Jul 1, 2026
4cf1095
[tview3d] remove gVirtualX usage
linev Jul 1, 2026
3391785
[core] move TApplication's cmdline help string into a separate file
silverweed Jul 1, 2026
2447b12
[rootx] Stop generating rootx cmdline help via argparse2help.py
silverweed Jul 1, 2026
b7bf155
[tmva][sofie] Remove IO support for RModel
guitargeek Jun 30, 2026
4556f1c
[io] consistently use TNetXNGFile ^[x]?root[s]?:// URLs
jblomer Jul 2, 2026
34a01c5
[df] Add standalone test of distributed FromSpec
vepadulano Jul 3, 2026
a08a4df
[df] Improve RSample I/O for distributed RDataFrame usage
vepadulano Jul 3, 2026
6d98c84
[df] Ruff fixes on changed files
vepadulano Jul 3, 2026
883308c
[Minuit2] Code modernization
guitargeek Jun 28, 2026
19fd37d
[RF] Fix binning used in 2D RooDataHist weight interpolation
guitargeek Jun 25, 2026
8c50bad
[RF] Default RooFit variables to zero bins instead of 100
guitargeek Jun 25, 2026
956a881
[cling] Use SuppressUnwrittenScope to strip anonymous namespace names
devajithvs Jul 3, 2026
31720d2
[HS3] Bugfixes to HS3 histfactoy_dist handling and other minor bugs
Phmonski Jul 6, 2026
f384a05
[tmva][sofie] Translate Keras and PyTorch parser tests to Python
guitargeek Jul 6, 2026
3a333be
[Minuit2] Document why covariance transform omits 2nd-derivative term
guitargeek Jun 28, 2026
98097c1
[core] Fix wrong handling of --web in TApplication
silverweed Jul 2, 2026
b841c8e
[win] Fix testRooFitHS3 linker error on Windows
bellenot Jul 6, 2026
7e39bbf
[RF][HS3] Use single static config function for RooJSONFactoryWSTool
guitargeek Jul 7, 2026
f440976
[clad] Fix nullptr dereference introduced by Clad 2.4
guitargeek Jul 7, 2026
7b180a2
Feat: Import datasets & modelConfigs using JSON I/O
yashnator Aug 28, 2023
c6d445a
Test: Add test for defining histfactory model directly from dictionaries
yashnator Aug 28, 2023
bc5f396
[RF][HS3] Deduplicate axis serialization and remove dead code
guitargeek Jul 7, 2026
280bb3e
[cling] Fix bookkeeping corruption when unloading files
guitargeek Jul 6, 2026
055bbc9
[core] Re-enable TClingLoadUnloadFileTests
guitargeek Jul 6, 2026
8753499
[treeplayer] Evaluate the "long" Scan format through long double
guitargeek Jun 15, 2026
6d55820
[treeplayer] Report integer Scan values that cannot be printed exactly
guitargeek Jun 15, 2026
db77e18
[asan] Fix argv array for PyROOT applications (#22768)
bellenot Jul 8, 2026
047aa57
[tmva][sofie] Default-initialize variables in Range operator code
sanjibansg Jul 8, 2026
5291be3
[tmva][sofie] Fix big endian
ellert Jun 28, 2026
2fec582
[tmva][sofie] Complete big-endian support for ONNX initializer tensors
guitargeek Jul 8, 2026
63097c0
[ntuple] add test for ShiftAliasColumn xHeader patch-up
silverweed Jul 2, 2026
f813574
[tmva][sofie] Translate PyTorch parser tutorial from C++ to Python
guitargeek Jul 6, 2026
590381f
[tmva][sofie] Translate PyTorch parser to Python
guitargeek Jul 6, 2026
3b28e0d
[tmva][sofie] Register Swish operator in the ONNX parser
harz05 Jun 10, 2026
004bdb6
[tmva][sofie] Drop unused template parameter from ROperator_Swish
harz05 Jun 11, 2026
41fa336
[df] Split long test into smaller googletest cases
vepadulano Jun 8, 2026
da08f46
[df] Avoid relying on side-effect in test
vepadulano Jun 15, 2026
79a53d2
Fix a buffer overflow in TLatex.
hageboeck Jun 30, 2026
5aa524d
[pyroot] Allow libasan to be loaded when running with gcc sanitizer.
hageboeck Jun 30, 2026
f4c65ba
[clad] Fix compilation failure when TMVA is off.
hageboeck Jun 30, 2026
6b3be69
[asan] Correct file name of the gcc asan runtime library.
hageboeck Jun 29, 2026
54e2a1d
[asan] Move address sanitizer flags into CMAKE_CXX_FLAGS.
hageboeck Jun 30, 2026
cc01b89
[asan] Sanitize all executables defined in ROOT's build system.
hageboeck Jul 1, 2026
a4227d6
Improve finalisation step of RNTuple Snapshot (#22779)
vepadulano Jul 9, 2026
b739858
[tut][nfc] Remove duplicated line in the tmva documentation
dpiparo Jul 10, 2026
f85ca2b
[cppinterop] Upgrade to upstream bdf062f2
aaronj0 Jun 29, 2026
023df4b
[interpreter] Stage new Box.h to etc/cppinterop
aaronj0 Jun 29, 2026
17c57aa
[metacling] Adapt CppInterOp API calls to new opaque-handle types
aaronj0 Jun 29, 2026
2ac0fa2
[metacling] Skip CppInterOp UseExternalInterpreter if rootcling
aaronj0 Jun 29, 2026
2a7c805
[df] Doc fix: add required argument to Define
vepadulano Jul 7, 2026
c4e7afc
[RDF][NFC] Remove an unused field, correct language.
hageboeck Jul 10, 2026
9d59a11
[core] Handle non-space whitespace in TClassEdit::CleanType
guitargeek Jul 7, 2026
d375094
build(minuit2): modernize standalone CMake
henryiii Jul 11, 2026
eb36083
[tmva][sofie] Fix Conv+Add fusion null path
markknoffler Apr 20, 2026
3c73be9
[tmva][sofie] Add test for Conv+Add fusion ONNX parser
markknoffler May 3, 2026
227e075
[cmake] Quote list-valued cache variable in root-config generation
chrisburr Jul 12, 2026
07c4852
[tmva][sofie] Account for dilation in Conv2D same padding calculation
harz05 Mar 25, 2026
6dc6007
[tmva][sofie] Add HardSigmoid operator for ONNX inference
AdityaDRathore Apr 21, 2026
ad7d50e
[tmva][sofie] Enhance Softplus stability in ROperator_BasicUnary
AdityaDRathore Jan 25, 2026
2c6faec
[roottest] disable warning on unused private fields in roottest
silverweed Jul 10, 2026
0191cdb
[tmva][sofie] Add HardSwish operator for ONNX inference
AdityaDRathore Jan 18, 2026
7cf1115
[tmva][sofie] Use `double` for accumulator in num. diff. result
guitargeek Jul 12, 2026
b86a2dc
[tmva][sofie] Add new comparison operator tests
Aug 25, 2025
5be4887
[tmva][sofie] Use multidirectional broadcasting in comparison operators
guitargeek Jul 12, 2026
d44574d
[graf2d] Fix memory leak of the freetype library.
hageboeck Jul 10, 2026
bc9e98e
[core] fix UUID test
jblomer Jul 7, 2026
b5fa847
[NFC][ntuple,DAOS] update comment
jblomer Jun 30, 2026
f95b296
[ntuple] shared_ptr --> unique_ptr for DAOS pool handle
jblomer Jul 1, 2026
b8fc6ea
[ntuple] fix RPageSourceDaos::CloneImpl()
jblomer Jul 2, 2026
066b51b
[ntuple] unconditionally generate full object ID in RDaosObject()
jblomer Jul 2, 2026
4d0cf80
[ntuple] allow 'UNKNOWN' DAOS object class
jblomer Jul 2, 2026
ec8bf24
[ntuple] hard-code (only) DAOS anchor object class
jblomer Jul 2, 2026
cd040a7
[ntuple] set DAOS default object class to UNKNOWN
jblomer Jul 2, 2026
8780cfc
[skip-ci] fix off by one docu
ferdymercury Jul 13, 2026
b355a20
[tmva][sofie] Updated and faster ROperator_Tile
Jul 17, 2025
e6d966a
[RF][HS3] Align RooFit HS3 JSON I/O with the current HS3
Phmonski Jul 1, 2026
9a11185
[RF][HS3] Merge HS3 into one executable
guitargeek Jul 13, 2026
51dfa58
[RF][HS3] Fix math expression replacements
guitargeek Jul 13, 2026
040d579
[RF][HS3] Remove some dead code about constraint handling
guitargeek Jul 13, 2026
ddc6c6f
[RF] Remove RYMLParser class and CMake code to find Rapid YAML
guitargeek Jul 13, 2026
6732eba
[RF][HS3] Reduce class defintion boilerplate code by using functions
guitargeek Jul 13, 2026
9267d90
[test] Fix PyKeras tests
dpiparo Jul 13, 2026
6b7e3b4
[tmva][sofie] Document why Tanh must stay std::tanh, use size_t loop idx
Jul 23, 2025
dc66b3d
[test] Use correct stl include
dpiparo Jul 13, 2026
f68b322
[RF] Make RooAbsDataHelper::Exec well-formed for an empty parameter pack
guitargeek Jul 14, 2026
b25bf36
[ntuple] add helper method to RSoAField constructor
jblomer Jun 24, 2026
70436d5
[ntuple] prepare SoA field construction for nested types
jblomer Jun 24, 2026
3b814a3
[ntuple] add support for nested SoA types
jblomer Jul 3, 2026
dc7a86f
[ntuple] add support for inheritance in SoA fields
jblomer Jul 6, 2026
a08f013
[CI] Try using ctest --rerun-failed on Windows.
hageboeck Jul 10, 2026
77e4e03
[NFC] Make ruff happier with build_root.py
hageboeck Jul 10, 2026
99f8c16
[curl] Make RCurlConnection::SetUrl public
JasMehta08 Jun 27, 2026
2718c06
[ntuple] Move page sealing to the base sink, drop CommitPageImpl
JasMehta08 Jul 9, 2026
d22fad3
[ntuple] Add RPageSinkS3 for the basic S3 write path
JasMehta08 Jul 9, 2026
45efd3c
[tree] Fix TBasket out of bounds write of fEntryOffset
silverweed Jul 13, 2026
0aa4f0c
[tmva][sofie] fix padding order for Conv operator in Keras parser
sanjibansg Jul 14, 2026
4687df8
[RF] Avoid invalid comparisons in RooStats Python tutorials
guitargeek Jul 14, 2026
08164d9
[ntuple] Fix typo
dpiparo Jul 14, 2026
d3542ea
[ntuple][nfc] Clang-format some tests
enirolf Jul 15, 2026
3a3a64a
[ci] Do not just define exceptions, but raise them too
dpiparo Jul 15, 2026
ee93d80
[tut] Print warnings
dpiparo Jul 15, 2026
fe8b440
[asan][win] Fix ASAN build on Windows
bellenot Jul 15, 2026
1b148ac
[cmake] mv glad to builtins
ferdymercury Jun 25, 2026
55bd59c
[RF][HS3] Fix copy-paste error and typo in testRooFitHS3
guitargeek Jul 14, 2026
a147670
[cppyy] Fix std::string return-type tests to match Pythonizations
guitargeek Jul 16, 2026
49fb353
[RF] Delete fit objects before plotting in rf619_discrete_profiling.py
guitargeek Jul 15, 2026
a79168b
[ntuple] Remove root field from PrintSchemaProfile
albfsg Jul 6, 2026
ebc6315
[ntuple] Move column index to the front of name string
albfsg Jul 6, 2026
32f264c
[ntuple] Merge Speedscopes strings
albfsg Jul 6, 2026
8a60d4a
[ntuple] Add [[maybe_unused]] to suppress warning
albfsg Jul 6, 2026
591a611
[RF][HS3] Remove remnants of YAML IO
guitargeek Jul 16, 2026
168a442
[RF][HS3] Canonicalize multiple modifiers with same name and type
Phmonski Jul 16, 2026
6698ba1
[RF][HS3] Avoid code duplication in testRooFitHS3 with helper functions
guitargeek Jul 16, 2026
f87a55e
[RF][HS3] Deduplicate gamma constraint relative-error dispatch
guitargeek Jul 16, 2026
2e8863d
[RF][HS3] Simplify isNumber using standard stream parsing
guitargeek Jul 16, 2026
2eea2de
[RF][HS3] Fix unsafe downcasts in importers
guitargeek Jul 16, 2026
fa718af
[RF][HS3] Remove dead code
guitargeek Jul 16, 2026
afe0d33
[RF][HS3] Streamline documentation of internal helpers
guitargeek Jul 16, 2026
9ea4ec6
[RF] Let RooGenericPdf/RooFormulaVar declare a piecewise-flat binning
guitargeek Jun 25, 2026
240db97
Remove JsMVA source code
guitargeek Jul 16, 2026
2cebd26
[math][nfc] Improve doc, fix typos
dpiparo Jul 14, 2026
99c7a96
[math] Fix mistake in Laplacian calculation
dpiparo Jul 14, 2026
9851599
[MathCore] Add a roottest for TMath::Gradient and Laplace.
hageboeck Jul 15, 2026
f715d64
[math] Improve interface, docs and errors of finite differences methods.
hageboeck Jul 15, 2026
f3d03cb
[math] Fix TMath::Gradient/Laplace tests.
hageboeck Jul 16, 2026
739a704
[cmake][interop][win] Fix compiler error C1128
bellenot Jul 16, 2026
61e7135
[ntuple] Fix entry loading across joined chains
enirolf Jul 15, 2026
a1c3bbf
[tmva][sofie] Generate ONNX models and refs instead of binaries in repo
guitargeek Jul 13, 2026
88978ed
Import ROOT-llvm22
devajithvs Feb 27, 2026
9e81eec
[cling][LLVM22] Misc adaptations for updated APIs
devajithvs Feb 27, 2026
e7d03f8
[cling] Unload: TopLevelStmtDecl special casing
devajithvs Mar 11, 2026
992c662
[core][LLVM22] Adapt to LLVM 22 API changes
devajithvs Mar 5, 2026
406d30d
[cling][AST] Add utility function `QualifyTypeUnderPrefix`
devajithvs Jun 11, 2026
50b07f4
[cling][AST] Copy `QualTypeName.cpp` functions into `AST.cpp`
devajithvs Mar 5, 2026
d7597f7
[cling][LLVM22] Adapt to the LLVM 22 NestedNameSpecifier changes
devajithvs Mar 3, 2026
683411c
[core][LLVM22] Adapt to the LLVM 22 NestedNameSpecifier changes
devajithvs Mar 12, 2026
2ed93f3
[cling][AST] Add `getFullyQualifiedType` changes needed for cling
devajithvs Jun 12, 2026
be90f2b
[cling][AST][Desugar] Strip AutoType early before the type-specific h…
devajithvs May 13, 2026
081af22
[cling][AST] PartialDesugaring: Fix loss of namespace prefix for TST
devajithvs Jun 15, 2026
755183a
[cling][AST] Strip unnecessary global '::' qualifier for TemplateNames
devajithvs Apr 17, 2026
ff14cec
[cling][AST] Restore partial desugaring of global RecordType prefixes…
devajithvs Apr 10, 2026
529d95c
[cling][AST] Remove dead ElaboratedType code paths
devajithvs Jun 16, 2026
f2059a6
[cling] Desugar `__size_t` and `__ptrdiff_t` aliases back to standard…
devajithvs Jul 10, 2026
fc2b780
[TCling] Strip tag keywords to handle LLVM22 elaborated type removal
devajithvs Apr 1, 2026
74b9056
[cling][test] Update output print types
devajithvs Mar 11, 2026
ec9fd5d
[cling][test] Fix Transform test: populate m_toReplace for std::string
devajithvs Jun 15, 2026
37b1cc8
[roottest] Update reference files after LLVM22
devajithvs Mar 20, 2026
dc130b0
[roottest][meta] Update test-case to reflect what was written
devajithvs Apr 15, 2026
1d544d6
[cppyy] Unmark xfail, this test now passes with LLVM22
devajithvs Apr 20, 2026
3c22804
[cling] Enable SuppressTagKeywordInAnonNames by default
devajithvs Apr 10, 2026
e6935ef
[cling][macos] Allow framework includes in System group in CopyInclud…
devajithvs May 13, 2026
921a25f
[cling] Clear `UnsubstitutedConstraintSatisfactionCache` on unload
devajithvs May 19, 2026
994da04
[cling] Suppress SFINAE diagnostics in InstantiateTemplateWithDefaults
devajithvs Jun 3, 2026
0c42dbe
[adaptivecpp] Turn off AdaptiveCpp temporarily
devajithvs Mar 23, 2026
1ecd8b7
[CI][llvm-project] Only compare what is already there in third-party
devajithvs Jun 24, 2026
b74dbe4
[cling] Fix dangling StringRef
devajithvs Jul 8, 2026
1d44ae0
[interpreter] Update `CLANG_CMAKE_DIR` after LLVM22 update
devajithvs Jul 2, 2026
6b99253
[clad] Add upstream patch fixing windows builds
devajithvs Jul 7, 2026
3e278b3
[cling][AST] Preserve `using` aliases in GetFullTypeName
devajithvs Jul 13, 2026
3587115
[cmake][interpreter] Remove `CLANG_ENABLE_ARCMT`
devajithvs Jul 20, 2026
f82906a
[llvm] Update ROOT and Cling to LLVM22
dpiparo Jul 21, 2026
437afad
[ntuple] fix type check in REntry::BindRawPtr()
jblomer Jul 20, 2026
9f4a1ea
[ntuple] fix RVec resize from small to large vector
jblomer Jul 20, 2026
99bba46
[gdml] Resolve material fractions by exact reference
agheata Jul 16, 2026
b6f8d4d
[interpreter] Update expected LLVM version number to 22
devajithvs Jul 21, 2026
86cda43
[pyroot] Fix and speed up the used-class scan in _find_used_classes
guitargeek Jul 17, 2026
8c70508
[tmva][sofie] Add InstanceNormalization operator for ONNX inference
gluonparticle Jul 20, 2026
6aa9ab4
[doc] Improvements to doxygen `make preview`
silverweed Jul 20, 2026
28b3942
[RF] Fix implementation of RooGenericPdf/RooFormulaVar::binBoundaries()
guitargeek Jul 20, 2026
0e17cb7
[roottest] Remove python tests that are redundant with the cppyy tests
guitargeek Jul 21, 2026
4415906
[cmake][win] Prevent checking libgen dependencies
bellenot Jul 21, 2026
59bd316
[graf2d] Further simplify freetype resource cleanup.
hageboeck Jul 14, 2026
abbaf5b
[graf2d] Ensure that the freetype library is initialised.
hageboeck Jul 14, 2026
3200e21
[tutorials][ML] Add RDataLoader classification tutorial with XGBoost
siliataider Jul 17, 2026
f4bb828
[skip-ci][ntuple] Update outdated doc comment in MakeField
silverweed Jul 21, 2026
6efd5a4
[tmva][sofie] Fix AveragePool divisor for partial ceil_mode windows
guitargeek Jul 20, 2026
9e4b611
[tmva][sofie] Ignore ceil_mode pooling windows that start past the input
guitargeek Jul 20, 2026
f03e19f
[tmva][sofie] Fix tests with non-discriminating reference values
guitargeek Jul 20, 2026
c2b3de1
[tmva][sofie] Use the comparison helpers instead of hand-rolled loops
guitargeek Jul 20, 2026
ea8b3b1
[tmva][sofie] Share the common code of the PyTorch model generators
guitargeek Jul 20, 2026
acbb353
[tmva][sofie] Support asymmetric padding in Im2col
guitargeek Jul 20, 2026
3458469
[Tutorials] Disable all g3d tutorials when geom is off.
hageboeck Jul 17, 2026
c7093b5
[roottest] Disable treeformula/casting test when geom is off.
hageboeck Jul 17, 2026
a836115
[graf3d] Reduce includes in graf3d headers.
hageboeck Jul 17, 2026
c1ac796
Reduce dependencies to graf3d.
hageboeck Jul 17, 2026
099f150
[NFC] Organise graf3d CMakeLists.
hageboeck Jul 17, 2026
74c0d2f
[graf3d] Decouple TMarker3D and similar from TGeometry.
hageboeck Jul 17, 2026
e010052
[graf3d] Add X3DBuffer include to TGeometry shapes.
hageboeck Jul 20, 2026
f225c11
[graf3d] Move TGeometry (Geant 3 shapes) into their own library.
hageboeck Jul 17, 2026
5d82468
Add TGeometry to root-config --libs.
hageboeck Jul 17, 2026
f7f4a5f
[graf3d] Add test for interaction between g3d and TGeometry.
hageboeck Jul 20, 2026
a322098
[graf3d] Improve const correctness of TGeometry.
hageboeck Jul 20, 2026
ac8caf7
[RelNotes] Add entry for moving TGeometry into its own library.
hageboeck Jul 20, 2026
da93fbd
[win] Disable a couple of failing tests (VS2026)
bellenot Jul 22, 2026
9935cbb
[RF][HS3] Implement RooGeneric/RooFormulaVar binning information
Phmonski Jul 17, 2026
c0c7762
[RF][HS3] Reject non-numeric generic-formula axis bounds
guitargeek Jul 22, 2026
4f46873
[RF][HS3] Accept integer-valued float encodings of generic-formula nbins
guitargeek Jul 22, 2026
2403247
[RF][HS3] Absorb RooFitJSONInterface library into RooFitHS3
guitargeek Jul 18, 2026
59aaddd
[RVec] Inline nodiscard attribute
hahnjo Jul 22, 2026
65573e5
[RVec] Inline std::uninitialized_value_construct
hahnjo Jul 22, 2026
118d293
[df] Inline std::disjunction
hahnjo Jul 22, 2026
787952f
[test] Exclude test if TShape is not available
dpiparo Jul 23, 2026
068ce3d
[RDF] Add BarChart() action for categorical/string columns
MehkaanKhan Jul 13, 2026
68e67f0
Revert "[RDF] Add BarChart() action for categorical/string columns"
MehkaanKhan Jul 14, 2026
d7bcd98
[tutorial] Add example filling a bar chart from a categorical column
MehkaanKhan Jul 14, 2026
7acc8c5
[tutorial] Fix clang-format indentation
MehkaanKhan Jul 14, 2026
c3cd628
Address review: self-contained data, clearer naming, no leaked TCanvas
MehkaanKhan Jul 21, 2026
2426b60
[ntuple] Fix unused parameter warning
vepadulano Jul 21, 2026
acdbef1
[Cling] Refactor CIFactory and add incremental action support
SahilPatidar Apr 13, 2026
d7d20b9
Refactor code, update PCH generation logic, and handle CladPlugin
SahilPatidar May 19, 2026
b0148b5
Fix LinkDef-related errors and cleanup
SahilPatidar May 25, 2026
6bc2754
Update clad cmake
SahilPatidar May 26, 2026
c6eafc0
Update clad cmake git-tag
SahilPatidar Jul 1, 2026
5d0df19
Update logic according to llvm22
SahilPatidar Jul 25, 2026
a92dd4e
Refactor code
SahilPatidar Jul 29, 2026
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
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
4 changes: 4 additions & 0 deletions .github/workflows/llvm-diff.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,5 +34,9 @@ jobs:
for f in $(ls -A); do
[ -e ../root/interpreter/llvm-project/$f ] || rm -r $f
done
# Only compare what is already there in third-party
for f in $(ls -A third-party); do
[ -e ../root/interpreter/llvm-project/third-party/$f ] || rm -r third-party/$f
done
- name: Compare
run: diff -ur llvm-project/ root/interpreter/llvm-project/
12 changes: 9 additions & 3 deletions .github/workflows/root-ci-config/build_root.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,9 @@ def main():
if pull_request:
# We check whether the PR is done from a branch that has the same name of
# the target branch in the ROOT repository using base_ref and head_ref:
# - The base_ref is e.g. "master" or "v6-38-00-patches"
# - The base_ref is e.g. "master" or "v6-38-00-patches"
# - The head_ref for PRs is formatted as <PR branch>:<Fork branch> e.g. "refs/pull/20742/head:cppyy_fixup"
if not ":" in args.head_ref:
if ":" not in args.head_ref:
build_utils.print_error(f"This has been identified as a PR build. However, the head-ref is {args.head_ref}.")
branch_in_fork = args.head_ref.split(":")[-1]
if branch_in_fork == args.base_ref:
Expand All @@ -85,7 +85,7 @@ def main():

if "minimal" in platform_options and platform_options["minimal"] == "ON":
options_dict = platform_options
print(f"Minimal build detected in the platform options. Ignoring global configuration.")
print("Minimal build detected in the platform options. Ignoring global configuration.")
else:
options_dict.update(platform_options)
print(f"Build option overrides for {args.platform_config}:")
Expand Down Expand Up @@ -372,6 +372,12 @@ def run_ctest(extra_ctest_flags: str) -> int:
{setupROOTEnv}
ctest --output-on-failure --parallel {os.cpu_count()} --output-junit TestResults.xml {extra_ctest_flags}
""")
if WINDOWS and ctest_result != 0:
ctest_result = subprocess_with_log(f"""
cd '{builddir}'
{setupROOTEnv}
ctest --output-on-failure --rerun-failed --output-junit TestResults.xml {extra_ctest_flags}
""")

return ctest_result

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/root-ci-config/buildconfig/fedora43.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
CMAKE_CXX_STANDARD=23
experimental_adaptivecpp=ON
experimental_adaptivecpp=OFF
pythia8=ON
roofit_multiprocess=ON
test_distrdf_dask=OFF
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/root-ci-config/buildconfig/fedora44.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
CMAKE_CXX_STANDARD=23
experimental_adaptivecpp=ON
experimental_adaptivecpp=OFF
pythia8=ON
roofit_multiprocess=ON
test_distrdf_pyspark=OFF
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
CMAKE_BUILD_TYPE=RelWithDebInfo
cuda=ON
experimental_adaptivecpp=ON
experimental_genvectorx=ON
experimental_adaptivecpp=OFF
experimental_genvectorx=OFF
gdml=OFF
spectrum=OFF
sqlite=OFF
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/root-ci-config/buildconfig/ubuntu2404.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
experimental_adaptivecpp=ON
experimental_genvectorx=ON
experimental_adaptivecpp=OFF
experimental_genvectorx=OFF
2 changes: 1 addition & 1 deletion .github/workflows/utilities/backport_pr.py
Original file line number Diff line number Diff line change
Expand Up @@ -331,7 +331,7 @@ def principal():
thePR.postComment(prComment)

if bpPRUrlBranch == []:
Exception('The PR was not ported to any branch!')
raise Exception('The PR was not ported to any branch!')

# Let's write a clear message as a comment to communicate everything went well
prComment = 'This PR has been backported to'
Expand Down
43 changes: 33 additions & 10 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -297,10 +297,8 @@ if(asan)
set(ASAN_EXTRA_LD_PRELOAD "${CMAKE_BINARY_DIR}/lib/${CMAKE_SHARED_LIBRARY_PREFIX}ROOTSanitizerConfig${CMAKE_SHARED_LIBRARY_SUFFIX}:${ASAN_RUNTIME_LIBRARY}")
endif()

foreach(item IN LISTS ASAN_EXTRA_CXX_FLAGS)
add_compile_options($<$<COMPILE_LANGUAGE:CXX>:${item}>)
endforeach()
#add_link_options() not available in our CMake version:
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ASAN_EXTRA_CXX_FLAGS}")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${ASAN_EXTRA_CXX_FLAGS}")
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${ASAN_EXTRA_SHARED_LINKER_FLAGS}")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${ASAN_EXTRA_EXE_LINKER_FLAGS}")
endif()
Expand Down Expand Up @@ -358,9 +356,6 @@ file(GLOB_RECURSE artifact_files RELATIVE ${CMAKE_SOURCE_DIR} etc/*)
# Exclude the *.in files, just like in the install tree
list(FILTER artifact_files EXCLUDE REGEX "\.(in)$")

# Exclude etc/notebook/JsMVA
list(FILTER artifact_files EXCLUDE REGEX "^etc/notebook/JsMVA/")

foreach(artifact_file ${artifact_files})
add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${artifact_file}
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_SOURCE_DIR}/${artifact_file} ${CMAKE_BINARY_DIR}/${artifact_file}
Expand Down Expand Up @@ -405,6 +400,9 @@ add_subdirectory (io)
add_subdirectory (net)
add_subdirectory (builtins/mathtext) # hard coded builtin for graf2d
add_subdirectory (graf2d)
if (opengl)
add_subdirectory (builtins/glad) # hard coded builtin for graf3d
endif()
add_subdirectory (graf3d)
if(NOT minimal)
add_subdirectory (gui)
Expand Down Expand Up @@ -529,7 +527,6 @@ install(
PATTERN "*.pcm"
PATTERN "modules.idx"
PATTERN "JupyROOT" EXCLUDE
PATTERN "JsMVA" EXCLUDE
PATTERN "python*" EXCLUDE
PATTERN "cmake" EXCLUDE
PATTERN "pkgconfig" EXCLUDE
Expand Down Expand Up @@ -605,7 +602,7 @@ add_custom_target(dist COMMAND cpack --config CPackConfig.cmake)
get_cmake_property(variables CACHE_VARIABLES)
foreach(var ${variables})
if((var MATCHES "_(LIBRARIES|LIBRARY|INCLUDE|VERSION)") AND
(NOT ${${var}} STREQUAL "") AND
(NOT "${${var}}" STREQUAL "") AND
(NOT ${var} MATCHES "NOTFOUND"))
if (var MATCHES "^QT_")
# filter out the very long list of Qt libraries and include dirs
Expand Down Expand Up @@ -636,7 +633,6 @@ if(NOT CMAKE_SOURCE_DIR STREQUAL CMAKE_INSTALL_PREFIX)
endif()
install(DIRECTORY etc/ DESTINATION ${CMAKE_INSTALL_SYSCONFDIR} USE_SOURCE_PERMISSIONS
${DIR_PERMISSIONS}
PATTERN "notebook/JsMVA" EXCLUDE
PATTERN "system.rootrc" EXCLUDE
PATTERN "root.mimes" EXCLUDE
PATTERN "*.in" EXCLUDE)
Expand Down Expand Up @@ -691,6 +687,9 @@ if(pyroot)
set(PYTESTS_WILLFAIL WILLFAIL)
endif()

#---Insert Python metadata for ROOT import package----------------------------------------------
include(InstallPythonMetadata)

#---Configure Testing using CTest----------------------------------------------------------------
configure_file(${CMAKE_SOURCE_DIR}/cmake/modules/CTestCustom.cmake ${CMAKE_BINARY_DIR} COPYONLY)
if(testing)
Expand Down Expand Up @@ -728,6 +727,30 @@ if(LLVM_LINKER_IS_MOLD)
endif()
endif()

if(asan)
# Now sanitize all executables that are not created with ROOT_EXECUTABLE()
# See core/sanitizer for details
function(sanitize_all_targets DIR_TO_SEARCH)
get_property(subdirs DIRECTORY "${DIR_TO_SEARCH}" PROPERTY SUBDIRECTORIES)
foreach(subdir IN LISTS subdirs)
sanitize_all_targets("${subdir}")
endforeach()

get_directory_property(directory_targets DIRECTORY "${DIR_TO_SEARCH}" BUILDSYSTEM_TARGETS)
if(NOT MSVC)
foreach(target IN LISTS directory_targets)
get_target_property(target_type ${target} TYPE)
get_target_property(target_libs ${target} LINK_LIBRARIES)
if(target_type STREQUAL EXECUTABLE AND NOT target STREQUAL ROOTStaticSanitizerConfig AND NOT target_libs MATCHES "ROOTStaticSanitizerConfig")
target_link_libraries(${target} PRIVATE ROOTStaticSanitizerConfig)
message(VERBOSE "Adding sanitizer library to ${target} (not created via a ROOT macro): ${target_libs}")
endif()
endforeach()
endif()
endfunction()
sanitize_all_targets(${CMAKE_CURRENT_SOURCE_DIR})
endif()

cmake_host_system_information(RESULT PROCESSOR QUERY PROCESSOR_DESCRIPTION)

message(STATUS "ROOT Configuration \n
Expand Down
21 changes: 21 additions & 0 deletions README/ReleaseNotes/v642/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,8 @@ The following people have contributed to this new version:
* Several enums that are redundant with `ROOT::ESTLType` are deprecated and will be removed in ROOT 6.44: `TClassEdit::ESTLType`, `TDictionary::ESTLType`, `TStreamerElement::ESTLType`. Please use `ROOT::ESTLType` instead.
* The inclusion by external projects of Makefile templates contained within ROOT is deprecated in 6.42, a warning will be raised if you use them. These files will be removed in ROOT 7.
* The conversion from Python set to **RooArgSet** is deprecated and won't work anymore in ROOT 6.44. The problem is that Python sets are unordered while RooArgSets are ordered, and this mismatch can lead to subtle problems later on. Prefer conversion from Python lists or tuples, which are ordered too.
* The ROOT IO capability for the `TMVA::Experimental::SOFIE::RModel` has been removed. Users should not be encouraged to serialize models in experimental classes. For the serialization of ONNX models one can already use ONNX directly, and even serialize the ONNX bytes to a ROOT file if required.
* The **JsMVA** feature for interactive TMVA training in Jupyter notebooks is now removed. It was not functional for years and was therefore already excluded from ROOT 6.38. This also removes the `TMVA::IPythonInteractive` class and the related interactive-training interfaces from the TMVA method and fitter classes, such as `MethodBase::ExitFromTraining()` or `FitterBase::SetIPythonInteractive()`.

## Python Interface

Expand Down Expand Up @@ -88,6 +90,21 @@ Users are strongly encouraged to switch to the vectorized CPU backend if they ar

If the vectorized backend does not work for a given use case, **please report it by opening an issue on the ROOT GitHub repository**.

### Default binning of RooFit variables changed to zero bins

A freshly-constructed `RooRealVar` (or `RooErrorVar`) no longer has a default binning of 100 bins.
Instead, `RooAbsRealLValue::getBins()` now returns `0` until a binning is explicitly set (e.g. via `RooRealVar::setBins()`).
This makes it possible to distinguish a variable whose binning was deliberately chosen from one that was left at the default, which avoids
writing redundant `nbins` fields when serializing workspaces to HS3 JSON.

For the cases that previously relied on the default of 100 bins, that value is now injected by the relevant routine:
unbinned-dataset plotting (`RooAbsRealLValue::frame()`), `RooAbsPdf::generateBinned()`, and `RooAbsRealLValue::createHistogram()`
all fall back to `RooAbsRealLValue::DefaultNBins` (100) when the variable has no binning set.
As a result, plotting, generating binned data and creating histograms from a default-constructed variable behave exactly as before.

Code that reads `getBins()`/`numBins()` of a bare variable and expected the value `100` should either set the binning explicitly,
or read the bin count from the relevant histogram or plot frame instead.

## Graphics and GUI

### Store canvas as HTML file
Expand All @@ -106,6 +123,10 @@ Such file can be loaded locally in any web browser or send as attachment in emai

## Geometry

The [TGeometry](https://root.cern/doc/master/classTGeometry.html) classes (Geant 3 shapes) have been moved out of Graf3D into their own library.
To link to these classes, use the cmake target `TGeometry` (preferred), `root-config --libs`, or link with `-lTGeometry`.
When ROOT is configured with `-Dgeom=Off`, these classes are now off as well.

## Documentation and Examples

## Build, Configuration and Testing
Expand Down
Loading