diff --git a/README/ReleaseNotes/v642/index.md b/README/ReleaseNotes/v642/index.md index 707ccc265c02d..f15c29adffbfb 100644 --- a/README/ReleaseNotes/v642/index.md +++ b/README/ReleaseNotes/v642/index.md @@ -67,11 +67,12 @@ 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 `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. +* The header `Rpair.h` is deprecated and will be removed after ROOT 6.44. * 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 `RStringView.h` deprecated in ROOT 6.14 will now emit warnings and will be fully removed after ROOT 6.44. Use `ROOT/RStringView.hxx` 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. -* The header `Rpair.h` is deprecated and will be removed after ROOT 6.44. +* The headers `ZipLZMA.h`, `ZipLZ4.h` and `ZipZSTD.h` are deprecated and will be removed in ROOT 6.46, use instead the public methods in the `RZip.h` interface. ## Build System diff --git a/builtins/zip/ZInflate.c b/builtins/zip/ZInflate.c index 844240a6dc2eb..2ae650c4b93bd 100644 --- a/builtins/zip/ZInflate.c +++ b/builtins/zip/ZInflate.c @@ -19,8 +19,65 @@ static const int qflag = 0; #include "zlib.h" #include "RConfigure.h" -#include "ZipLZMA.h" -#include "ZipLZ4.h" + +// TEMPORARY DUPLICATION OF ZipLZMA.h until header is removed from public interface and can be made fully private +// @(#)root/lzma:$Id$ +// Author: David Dagenhart May 2011 + +/************************************************************************* + * Copyright (C) 1995-2011, Rene Brun and Fons Rademakers. * + * All rights reserved. * + * * + * For the licensing terms see $ROOTSYS/LICENSE. * + * For the list of contributors see $ROOTSYS/README/CREDITS. * + *************************************************************************/ + +#ifndef ROOT_ZipLZMA +#define ROOT_ZipLZMA + +#ifdef __cplusplus +extern "C" { +#endif + +void R__zipLZMA(int cxlevel, int *srcsize, const char *src, int *tgtsize, char *tgt, int *irep); + +void R__unzipLZMA(int *srcsize, const unsigned char *src, int *tgtsize, unsigned char *tgt, int *irep); + +#ifdef __cplusplus +} +#endif + +#endif + +// TEMPORARY DUPLICATION OF ZipLZ4.h until header is removed from public interface and can be made fully private +// Author: Brian Bockelman March 2015 + +/************************************************************************* + * Copyright (C) 1995-2017, Rene Brun and Fons Rademakers. * + * All rights reserved. * + * * + * For the licensing terms see $ROOTSYS/LICENSE. * + * For the list of contributors see $ROOTSYS/README/CREDITS. * + *************************************************************************/ + +#ifndef ROOT_ZipLZ4 +#define ROOT_ZipLZ4 + +// NOTE: the ROOT compression libraries aren't consistently written in C++; hence the +// #ifdef's to avoid problems with C code. +#ifdef __cplusplus +extern "C" { +#endif +void R__zipLZ4(int cxlevel, int *srcsize, const char *src, int *tgtsize, char *tgt, int *irep); +void R__unzipLZ4(int *srcsize, const unsigned char *src, int *tgtsize, unsigned char *tgt, int *irep); +#ifdef __cplusplus +} +#endif + +#endif + + + /* inflate.c -- put in the public domain by Mark Adler version c14o, 23 August 1994 */ diff --git a/core/lz4/inc/ZipLZ4.h b/core/lz4/inc/ZipLZ4.h index abe5083066e3b..475997c38a8fa 100644 --- a/core/lz4/inc/ZipLZ4.h +++ b/core/lz4/inc/ZipLZ4.h @@ -11,6 +11,8 @@ #ifndef ROOT_ZipLZ4 #define ROOT_ZipLZ4 +#warning "This header is deprecated and will be removed in 6.46, use instead methods within RZip.h" + // NOTE: the ROOT compression libraries aren't consistently written in C++; hence the // #ifdef's to avoid problems with C code. #ifdef __cplusplus diff --git a/core/lz4/src/ZipLZ4.cxx b/core/lz4/src/ZipLZ4.cxx index 6fdafb851f5ba..9096507489c1d 100644 --- a/core/lz4/src/ZipLZ4.cxx +++ b/core/lz4/src/ZipLZ4.cxx @@ -8,7 +8,33 @@ * For the list of contributors see $ROOTSYS/README/CREDITS. * *************************************************************************/ -#include "ZipLZ4.h" +// TEMPORARY DUPLICATION OF ZipLZ4.h until header is removed from public interface and can be made fully private +// Author: Brian Bockelman March 2015 + +/************************************************************************* + * Copyright (C) 1995-2017, Rene Brun and Fons Rademakers. * + * All rights reserved. * + * * + * For the licensing terms see $ROOTSYS/LICENSE. * + * For the list of contributors see $ROOTSYS/README/CREDITS. * + *************************************************************************/ + +#ifndef ROOT_ZipLZ4 +#define ROOT_ZipLZ4 + +// NOTE: the ROOT compression libraries aren't consistently written in C++; hence the +// #ifdef's to avoid problems with C code. +#ifdef __cplusplus +extern "C" { +#endif +void R__zipLZ4(int cxlevel, int *srcsize, const char *src, int *tgtsize, char *tgt, int *irep); +void R__unzipLZ4(int *srcsize, const unsigned char *src, int *tgtsize, unsigned char *tgt, int *irep); +#ifdef __cplusplus +} +#endif + +#endif + #include "ROOT/RConfig.hxx" diff --git a/core/lzma/inc/ZipLZMA.h b/core/lzma/inc/ZipLZMA.h index 35897965bc6a3..7333a9720437a 100644 --- a/core/lzma/inc/ZipLZMA.h +++ b/core/lzma/inc/ZipLZMA.h @@ -12,6 +12,8 @@ #ifndef ROOT_ZipLZMA #define ROOT_ZipLZMA +#warning "This header is deprecated and will be removed in 6.46, use instead methods within RZip.h" + #ifdef __cplusplus extern "C" { #endif diff --git a/core/lzma/src/ZipLZMA.c b/core/lzma/src/ZipLZMA.c index 4582c59873837..a8f80afff2619 100644 --- a/core/lzma/src/ZipLZMA.c +++ b/core/lzma/src/ZipLZMA.c @@ -12,7 +12,35 @@ #ifdef _MSC_VER #define LZMA_API_STATIC #endif -#include "ZipLZMA.h" +// TEMPORARY DUPLICATION OF ZipLZMA.h until header is removed from public interface and can be made fully private +// @(#)root/lzma:$Id$ +// Author: David Dagenhart May 2011 + +/************************************************************************* + * Copyright (C) 1995-2011, Rene Brun and Fons Rademakers. * + * All rights reserved. * + * * + * For the licensing terms see $ROOTSYS/LICENSE. * + * For the list of contributors see $ROOTSYS/README/CREDITS. * + *************************************************************************/ + +#ifndef ROOT_ZipLZMA +#define ROOT_ZipLZMA + +#ifdef __cplusplus +extern "C" { +#endif + +void R__zipLZMA(int cxlevel, int *srcsize, const char *src, int *tgtsize, char *tgt, int *irep); + +void R__unzipLZMA(int *srcsize, const unsigned char *src, int *tgtsize, unsigned char *tgt, int *irep); + +#ifdef __cplusplus +} +#endif + +#endif + #include "lzma.h" #include diff --git a/core/zip/src/RZip.cxx b/core/zip/src/RZip.cxx index c7fab1dde5d73..3424fee86e2ec 100644 --- a/core/zip/src/RZip.cxx +++ b/core/zip/src/RZip.cxx @@ -10,9 +10,89 @@ #include "RConfigure.h" #include "RZip.h" #include "Bits.h" -#include "ZipLZMA.h" -#include "ZipLZ4.h" -#include "ZipZSTD.h" + +// TEMPORARY DUPLICATION OF ZipLZ4.h until header is removed from public interface and can be made fully private +// Author: Brian Bockelman March 2015 + +/************************************************************************* + * Copyright (C) 1995-2017, Rene Brun and Fons Rademakers. * + * All rights reserved. * + * * + * For the licensing terms see $ROOTSYS/LICENSE. * + * For the list of contributors see $ROOTSYS/README/CREDITS. * + *************************************************************************/ + +#ifndef ROOT_ZipLZ4 +#define ROOT_ZipLZ4 + +// NOTE: the ROOT compression libraries aren't consistently written in C++; hence the +// #ifdef's to avoid problems with C code. +#ifdef __cplusplus +extern "C" { +#endif +void R__zipLZ4(int cxlevel, int *srcsize, const char *src, int *tgtsize, char *tgt, int *irep); +void R__unzipLZ4(int *srcsize, const unsigned char *src, int *tgtsize, unsigned char *tgt, int *irep); +#ifdef __cplusplus +} +#endif + +#endif + +// TEMPORARY DUPLICATION OF ZipLZMA.h until header is removed from public interface and can be made fully private +// @(#)root/lzma:$Id$ +// Author: David Dagenhart May 2011 + +/************************************************************************* + * Copyright (C) 1995-2011, Rene Brun and Fons Rademakers. * + * All rights reserved. * + * * + * For the licensing terms see $ROOTSYS/LICENSE. * + * For the list of contributors see $ROOTSYS/README/CREDITS. * + *************************************************************************/ + +#ifndef ROOT_ZipLZMA +#define ROOT_ZipLZMA + +#ifdef __cplusplus +extern "C" { +#endif + +void R__zipLZMA(int cxlevel, int *srcsize, const char *src, int *tgtsize, char *tgt, int *irep); + +void R__unzipLZMA(int *srcsize, const unsigned char *src, int *tgtsize, unsigned char *tgt, int *irep); + +#ifdef __cplusplus +} +#endif + +#endif + +// TEMPORARY DUPLICATION OF ZipZSTD.h until header is removed from public interface and can be made fully private +// Original Author: Brian Bockelman +/************************************************************************* + * Copyright (C) 1995-2019, Rene Brun and Fons Rademakers. * + * All rights reserved. * + * * + * For the licensing terms see $ROOTSYS/LICENSE. * + * For the list of contributors see $ROOTSYS/README/CREDITS. * + *************************************************************************/ + +#ifndef ROOT_ZipZSTD +#define ROOT_ZipZSTD + +// NOTE: the ROOT compression libraries aren't consistently written in C++; hence the +// #ifdef's to avoid problems with C code. +#ifdef __cplusplus +extern "C" { +#endif +void R__zipZSTD(int cxlevel, int *srcsize, const char *src, int *tgtsize, char *tgt, int *irep); +void R__unzipZSTD(int *srcsize, const unsigned char *src, int *tgtsize, unsigned char *tgt, int *irep); +#ifdef __cplusplus +} +#endif + +#endif + #include "zlib.h" diff --git a/core/zstd/inc/ZipZSTD.h b/core/zstd/inc/ZipZSTD.h index b26925e77a1e7..71547b8ef6fc8 100644 --- a/core/zstd/inc/ZipZSTD.h +++ b/core/zstd/inc/ZipZSTD.h @@ -10,6 +10,8 @@ #ifndef ROOT_ZipZSTD #define ROOT_ZipZSTD +#warning "This header is deprecated and will be removed in 6.46, use instead methods within RZip.h" + // NOTE: the ROOT compression libraries aren't consistently written in C++; hence the // #ifdef's to avoid problems with C code. #ifdef __cplusplus diff --git a/core/zstd/src/ZipZSTD.cxx b/core/zstd/src/ZipZSTD.cxx index a9b6f61dfd080..62a22bacd6157 100644 --- a/core/zstd/src/ZipZSTD.cxx +++ b/core/zstd/src/ZipZSTD.cxx @@ -8,7 +8,32 @@ * For the list of contributors see $ROOTSYS/README/CREDITS. * *************************************************************************/ -#include "ZipZSTD.h" +// TEMPORARY DUPLICATION OF ZipZSTD.h until header is removed from public interface and can be made fully private +// Original Author: Brian Bockelman +/************************************************************************* + * Copyright (C) 1995-2019, Rene Brun and Fons Rademakers. * + * All rights reserved. * + * * + * For the licensing terms see $ROOTSYS/LICENSE. * + * For the list of contributors see $ROOTSYS/README/CREDITS. * + *************************************************************************/ + +#ifndef ROOT_ZipZSTD +#define ROOT_ZipZSTD + +// NOTE: the ROOT compression libraries aren't consistently written in C++; hence the +// #ifdef's to avoid problems with C code. +#ifdef __cplusplus +extern "C" { +#endif +void R__zipZSTD(int cxlevel, int *srcsize, const char *src, int *tgtsize, char *tgt, int *irep); +void R__unzipZSTD(int *srcsize, const unsigned char *src, int *tgtsize, unsigned char *tgt, int *irep); +#ifdef __cplusplus +} +#endif + +#endif + #include "ROOT/RConfig.hxx"