ROOT version 6.36.00 is scheduled for release at the end of May 2025.
For more information, see:
The following people have contributed to this new version:
Bertrand Bellenot, CERN/EP-SFT,
Jakob Blomer, CERN/EP-SFT,
Philippe Canal, FNAL,
Mattias Ellert, Uppsala University,
Florine de Geus, CERN/University of Twente,
Fernando Hueso Gonzalez, CSIC/University of Valencia,
Enrico Lusiani, INFN Padova,
Alberto Mecca, University of Turin,
Lorenzo Moneta, CERN/EP-SFT,
Mark Owen, University of Glasgow,
Vincenzo Eduardo Padulano, CERN/EP-SFT,
Giacomo Parolini, CERN/EP-SFT,
Danilo Piparo, CERN/EP-SFT,
Jonas Rembser, CERN/EP-SFT,
Manuel Tobias Schiller, University of Glasgow,
Surya Somayyajula, UMass Amherst,
Petr Stepanov, @petrstepanov,
Dongliang Zhang, University of Science and Technology of China
TPython::Eval()
function that was deprecated in
ROOT 6.34 and scheduled for removal in ROOT 6.36 is removed.RooDataSet
constructors to construct a dataset from
a part of an existing dataset are deprecated and will be removed in ROOT
6.38. This is to avoid interface duplication. Please use
RooAbsData::reduce()
instead, or if you need to change the
weight column, use the universal constructor with the
Import()
, Cut()
, and WeightVar()
arguments.mysql
, odbc
,
pgsql
and qt5web
have been deprecated. Please
complain with root-dev@cern.ch should you still need one!html
has been removed.RooStats::HLFactory
class was deprecated will be
removed in ROOT 6.38. It provided little advantage over using the
RooWorkspace directly or any of the other higher-level frameworks that
exist in the RooFit ecosystem.RooRealVar::format()
function was changed to return
a std::string
instead of a TString *
. The
former return type was not memory safe, since the caller had to delete
the TString
. This pattern was not appropriate for a modern
C++ library. If you absolutely need the old return type, wrap the call
to format()
inside
new TString{var.format(..)}
. However, this is not
recommended.RooAbsReal::createHistogram()
with extended pdfsThere was a problem with RooAbsReal::createHistogram()
when using it to get histograms with predicted yields for extended pdfs.
The Scale(bool)
argument was always set internally to
false
in case createHistogram()
was called on
an extended pdf. There was no way for the user to override that. This
meant that one could not get yield histograms that were correctly scaled
by the bin volumes using that function. This release changes that
behavior, meaning the Scale(bool)
command argument is now
respected for extended pdfs.
Davix.GSI.CACheck
parameter also in the
ROOT::Internal::RRawFileDavix
class.TFileMerger::SetMergeOptions
)
hadd
when no other compression option is
specified;enum class
with a non default
underlying size, for example enum smallenum: std::int16_t
.
The default is 32 bits. All enums, independently of their in memory size
are stored on file using 32 bits to enable forward compatibility of the
file; files created with a enum class
with a non default
underlying size can be read with old version of ROOT into a
enum
type of default size.enum class
with an underlying size strictly
greater than 32 bits are not supported since they would be truncated
when stored on file.TStreamerInfo
has been increase
to 10 to encoded the addition of the support for enum class
with a non default underlying size. This allows the opportunity to
detect files written by old version of ROOT (v9
and older
of TStreamerInfo
) where enum class
with a non
default underlying size where stored incorrectly but recoverably. Those
files can be recover by using I/O customization rules that takes in
consideration their size at the time of writing (this information is not
recorded in the ROOT
file). See
https://github.com/root-project/root/pull/17009#issuecomment-2522228598
for some examples.CanIgnore
.
When using this attribute the rule will be ignored if the input is
missing from the schema/class-layout they apply to instead of issue a
Warning