From ddef6880ea526eee6767082076ff6f83c1344bc1 Mon Sep 17 00:00:00 2001 From: ferdymercury Date: Mon, 7 Sep 2026 11:42:19 +0200 Subject: [PATCH] [core] deprecate Rstrstream.h --- README/ReleaseNotes/v642/index.md | 5 +++-- core/foundation/inc/Rstrstream.h | 2 ++ core/foundation/src/TClassEdit.cxx | 8 ++++---- core/rint/src/TTabCom.cxx | 10 +++++----- tmva/tmva/src/GeneticPopulation.cxx | 4 +--- 5 files changed, 15 insertions(+), 14 deletions(-) diff --git a/README/ReleaseNotes/v642/index.md b/README/ReleaseNotes/v642/index.md index 7a16b865e42e2..611f4b64cb1a0 100644 --- a/README/ReleaseNotes/v642/index.md +++ b/README/ReleaseNotes/v642/index.md @@ -67,8 +67,9 @@ Users are encouraged to export their models to ONNX and use the retained ONNX pa * The **RooStats::DebuggingSampler** and **RooStats::DebuggingTestStat** classes are removed. They were mock implementations of the `TestStatSampler` and `TestStatistic` interfaces that returned uniform random numbers independent of the data, only meant for debugging the RooStats framework itself during its initial development. * The `RooTrace` class is deprecated and will be removed in ROOT 6.44. It was a RooFit-specific memory tracer whose instrumentation hooks are compiled out by default, so it has been inert and untested for years. For memory debugging, please use general-purpose tools such as AddressSanitizer or Valgrind instead. * Support for the AIX operating system has been removed from the codebase. This support has not been tested since the late v5 releases and the LLVM JIT is not yet supporting AIX. -* The headers Htypes.h and Gtypes.h that were deprecated in ROOT 6.20 will now emit warnings and will be fully removed in ROOT 6.44. -* The header GLConstants.h is no longer part of ROOT installed headers. +* The headers `Htypes.h` and `Gtypes.h` that were deprecated in ROOT 6.20 will now emit warnings and will be fully removed in ROOT 6.44. Use instead `Rtypes.h`. +* The header `GLConstants.h` is no longer part of ROOT installed headers. +* The header `Rstrstream.h` is deprecated and will be removed after ROOT 6.44, use instead ``. * The `ROOT::Math::ParamFunctionBase`, `ROOT::Math::ParamFunctorHandler` and `ROOT::Math::ParamMemFunHandler` classes in `Math/ParamFunctor.h` are removed, together with the `ParamFunctor::GetImpl()` and `ParamFunctor::SetFunction()` methods that exposed them. They implemented the type erasure that `ParamFunctor` now gets from `std::function`, mirroring what was already done for `ROOT::Math::Functor`. Constructing and calling a `ParamFunctor` is unchanged, except that the constructor from an object and one of its member functions now takes a plain pointer to the object instead of anything dereferenceable, so smart pointers are no longer accepted there. ## Build System diff --git a/core/foundation/inc/Rstrstream.h b/core/foundation/inc/Rstrstream.h index 5562908f54a1e..4cbd0d1cbed51 100644 --- a/core/foundation/inc/Rstrstream.h +++ b/core/foundation/inc/Rstrstream.h @@ -12,6 +12,8 @@ #ifndef ROOT_Rstrstream #define ROOT_Rstrstream +#warning "This header is deprecated and will be removed after ROOT 6.44, used instead " + #include #if defined(R__ANSISTREAM) diff --git a/core/foundation/src/TClassEdit.cxx b/core/foundation/src/TClassEdit.cxx index 9c2ccf48c6969..5607a62ad294b 100644 --- a/core/foundation/src/TClassEdit.cxx +++ b/core/foundation/src/TClassEdit.cxx @@ -12,13 +12,15 @@ * For the list of contributors see $ROOTSYS/README/CREDITS. * *************************************************************************/ +#include "TClassEdit.h" +#include "TSpinLockGuard.h" + #include #include #include #include -#include "TClassEdit.h" #include -#include "Rstrstream.h" +#include #include #include // for shared_ptr @@ -27,8 +29,6 @@ #include #include -#include "TSpinLockGuard.h" - using std::string, std::string_view, std::vector, std::set; namespace { diff --git a/core/rint/src/TTabCom.cxx b/core/rint/src/TTabCom.cxx index 8af741db377fb..466d2adf83eef 100644 --- a/core/rint/src/TTabCom.cxx +++ b/core/rint/src/TTabCom.cxx @@ -121,10 +121,6 @@ // // //////////////////////////////////////////////////////////////////////////// -#include -#include -#include - #include "RConfigure.h" #include "TTabCom.h" #include "TClass.h" @@ -145,9 +141,13 @@ #include "TMethodArg.h" #include "TInterpreter.h" #include "Riostream.h" -#include "Rstrstream.h" #include "strlcpy.h" +#include +#include +#include +#include + #define BUF_SIZE 1024 // must be smaller than/equal to fgLineBufSize in Getline.cxx and // lineBufSize in cppcompleter.py #define IfDebug(x) if(gDebug==TTabCom::kDebug) x diff --git a/tmva/tmva/src/GeneticPopulation.cxx b/tmva/tmva/src/GeneticPopulation.cxx index fa7276aad9fa7..5482a98bdcab4 100644 --- a/tmva/tmva/src/GeneticPopulation.cxx +++ b/tmva/tmva/src/GeneticPopulation.cxx @@ -29,9 +29,6 @@ Population definition for genetic algorithm. */ -#include - -#include "Rstrstream.h" #include "TRandom3.h" #include "TH1.h" @@ -39,6 +36,7 @@ Population definition for genetic algorithm. #include "TMVA/GeneticGenes.h" #include "TMVA/MsgLogger.h" +#include using std::vector, std::ostream;