root/root-python3.8-object.patch
Mattias Ellert b2cd752635 Update to 6.22.00
Drop patches accepted upstream
  root-FitData-assert-fix.patch
  root-clang-altivec-vector.patch
  root-format-fix.patch
  root-moved-file.patch
  root-xmlmodify-dep.patch
New and improved Python bindings
The new Python bindings can be built for both Python 2 and Python 3
  out of the box. Dropped the workaround in specfile for this (EPEL 7)
Dropped the python3-other packages (EPEL 7)
The new Python bindings has split the TPython interface to a separate
  library. Now in a separate root-tpython package
root-tpython and root-tmva-python are now using Python 3 on EPEL 7
New subpackage root-gui-browsable
New patches (submitted upstream)
  Fix too aggressive -Werror replacements
  Add missing call to TFile::SetCacheFileDir in a TMVA tutorial
  Adjust stressGraphics.ref
  Fix off-by-one error in histogram v7 bin iterator
  Compatibility with python 2.7 versions before 2.7.9
  Fix the RNTuple.LargeFile test on 32bit (i386 and armv7hf)
  Fix doxygen issues
  Fix bad regex in TProofMgr
  Compatibility with xrootd 5
2020-07-15 04:44:51 +02:00

334 lines
14 KiB
Diff

diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt 2020-06-21 20:54:24.848992803 +0200
@@ -85,11 +85,6 @@
target_compile_options(${libname} PRIVATE -Wno-deprecated-register)
endif()
- # Disables warnings due to new field tp_vectorcall in Python 3.8
- if(NOT MSVC AND ${python_version_string} VERSION_GREATER_EQUAL "3.8")
- target_compile_options(${libname} PRIVATE -Wno-missing-field-initializers)
- endif()
-
target_include_directories(${libname}
PRIVATE
${CMAKE_SOURCE_DIR}/core/foundation/inc # needed for string_view backport
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPDataMember.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPDataMember.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPDataMember.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPDataMember.cxx 2020-06-21 20:53:49.651914431 +0200
@@ -167,7 +167,8 @@
sizeof(CPPDataMember), // tp_basicsize
0, // tp_itemsize
(destructor)pp_dealloc, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -216,6 +217,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPExcInstance.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPExcInstance.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPExcInstance.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPExcInstance.cxx 2020-06-21 20:53:49.651914431 +0200
@@ -158,7 +158,8 @@
sizeof(CPPExcInstance), // tp_basicsize
0, // tp_itemsize
(destructor)ep_dealloc, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -211,6 +212,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPInstance.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPInstance.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPInstance.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPInstance.cxx 2020-06-21 20:53:49.651914431 +0200
@@ -746,7 +746,8 @@
sizeof(CPPInstance), // tp_basicsize
0, // tp_itemsize
(destructor)op_dealloc, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -798,6 +799,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPOverload.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPOverload.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPOverload.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPOverload.cxx 2020-06-21 20:53:49.652914433 +0200
@@ -866,7 +866,8 @@
sizeof(CPPOverload), // tp_basicsize
0, // tp_itemsize
(destructor)mp_dealloc, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -915,6 +916,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPScope.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPScope.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPPScope.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPPScope.cxx 2020-06-21 20:53:49.652914433 +0200
@@ -616,7 +616,8 @@
sizeof(CPyCppyy::CPPScope), // tp_basicsize
0, // tp_itemsize
0, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -669,6 +670,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
Endast i root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src: CPPScope.cxx.orig
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPyCppyyModule.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPyCppyyModule.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CPyCppyyModule.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CPyCppyyModule.cxx 2020-06-21 20:53:49.652914433 +0200
@@ -141,6 +141,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
namespace {
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CustomPyTypes.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CustomPyTypes.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/CustomPyTypes.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/CustomPyTypes.cxx 2020-06-21 20:53:49.652914433 +0200
@@ -34,6 +34,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
//= long type allowed for reference passing ==================================
@@ -60,6 +66,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
//- custom type representing typedef to pointer of class ---------------------
@@ -90,6 +102,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
//= instancemethod object with a more efficient call function ================
@@ -255,6 +273,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
@@ -305,6 +329,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
@@ -364,6 +394,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/LowLevelViews.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/LowLevelViews.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/LowLevelViews.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/LowLevelViews.cxx 2020-06-21 20:53:49.653914436 +0200
@@ -651,7 +651,8 @@
sizeof(CPyCppyy::LowLevelView),// tp_basicsize
0, // tp_itemsize
(destructor)ll_dealloc, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -701,6 +702,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/TemplateProxy.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/TemplateProxy.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/TemplateProxy.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/TemplateProxy.cxx 2020-06-21 20:53:49.653914436 +0200
@@ -730,7 +730,8 @@
sizeof(TemplateProxy), // tp_basicsize
0, // tp_itemsize
(destructor)tpp_dealloc, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -779,6 +780,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy
diff -ur root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/TupleOfInstances.cxx root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/TupleOfInstances.cxx
--- root-6.22.00.orig/bindings/pyroot/cppyy/CPyCppyy/src/TupleOfInstances.cxx 2020-06-14 17:51:48.000000000 +0200
+++ root-6.22.00/bindings/pyroot/cppyy/CPyCppyy/src/TupleOfInstances.cxx 2020-06-21 20:53:49.653914436 +0200
@@ -82,6 +82,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
@@ -161,7 +167,8 @@
0, // tp_basicsize
0, // tp_itemsize
0, // tp_dealloc
- 0, // tp_print
+ 0, // tp_print (python < 3.8)
+ // tp_vectorcall_offset (python >= 3.8)
0, // tp_getattr
0, // tp_setattr
0, // tp_compare
@@ -211,6 +218,12 @@
#if PY_VERSION_HEX >= 0x03040000
, 0 // tp_finalize
#endif
+#if PY_VERSION_HEX >= 0x03080000
+ , 0 // tp_vectorcall
+#if PY_VERSION_HEX < 0x03090000
+ , 0 // tp_print (python 3.8 only)
+#endif
+#endif
};
} // namespace CPyCppyy