Compare commits
2 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
108e712edc | ||
|
|
03696fac62 |
12 changed files with 751 additions and 25 deletions
42
root-Correct-the-regular-expression-for-the-scheme-p.patch
Normal file
42
root-Correct-the-regular-expression-for-the-scheme-p.patch
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
From defef44f15aebc5eca9e34df767f3f92688d594c Mon Sep 17 00:00:00 2001
|
||||
From: Mattias Ellert <mattias.ellert@physics.uu.se>
|
||||
Date: Thu, 4 Jul 2024 18:21:06 +0200
|
||||
Subject: [PATCH 2/2] [core] Correct the regular expression for the scheme part
|
||||
in TUri class
|
||||
|
||||
RFC 3986 (https://datatracker.ietf.org/doc/html/rfc3986) defines the
|
||||
scheme part of a URI as:
|
||||
|
||||
scheme = ALPHA *( ALPHA / DIGIT / "+" / "-" / "." )
|
||||
|
||||
The regular expression for finding the scheme part in the TUri class
|
||||
was defined as
|
||||
|
||||
^[[:alpha:]][[:alpha:][:digit:]+-.]*$
|
||||
|
||||
This does not match the definition in the RFC, since +-. in regular
|
||||
expression syntax is the range of ascii codes from '+' to '.', which
|
||||
means '+', ',', '-' and '.'. I.e. the ',' is included in the regular
|
||||
expression in error. This commit adds a backslash escape to the '-' so
|
||||
that it is interpreted as a literal '-' sign instead of indicating a
|
||||
range in the regular expression.
|
||||
---
|
||||
core/base/src/TUri.cxx | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/core/base/src/TUri.cxx b/core/base/src/TUri.cxx
|
||||
index 9660470556..b324d0ffea 100644
|
||||
--- a/core/base/src/TUri.cxx
|
||||
+++ b/core/base/src/TUri.cxx
|
||||
@@ -270,7 +270,7 @@ Bool_t TUri::SetScheme(const TString &scheme)
|
||||
Bool_t TUri::IsScheme(const TString &string)
|
||||
{
|
||||
return TPRegexp(
|
||||
- "^[[:alpha:]][[:alpha:][:digit:]+-.]*$"
|
||||
+ "^[[:alpha:]][[:alpha:][:digit:]+\\-.]*$"
|
||||
).Match(string);
|
||||
}
|
||||
|
||||
--
|
||||
2.45.2
|
||||
|
||||
68
root-Fix-writing-long-strings.patch
Normal file
68
root-Fix-writing-long-strings.patch
Normal file
|
|
@ -0,0 +1,68 @@
|
|||
From 638593e77b76895db85470a3303d5fe0366e8ec4 Mon Sep 17 00:00:00 2001
|
||||
From: scott snyder <snyder@bnl.gov>
|
||||
Date: Wed, 6 Mar 2024 04:06:50 +0100
|
||||
Subject: [PATCH] Fix writing long strings.
|
||||
|
||||
In TBufferFile::WriteFastArrayString, we had
|
||||
|
||||
```
|
||||
if (n < 255) {
|
||||
*this << (UChar_t)n;
|
||||
} else {
|
||||
*this << (UChar_t)255;
|
||||
*this << n;
|
||||
}
|
||||
```
|
||||
|
||||
A recent commit changed the type of the n parameter from Int_t to Long64_t.
|
||||
This is effectively an incompatible change in the on-disk format, but only for strings
|
||||
which are at least 255 characters long.
|
||||
|
||||
Further, ReadFastArrayString is still reading an Int_t, so this version of ROOT cannot
|
||||
read files that it writes.
|
||||
|
||||
Resolve by changing WriteFastArrayString to explicitly write an Int_t.
|
||||
|
||||
Also move the bounds check on the length to before writing anything into the buffer.
|
||||
|
||||
Fixes a failure seen in the unit tests of the ATLAS EventInfo package
|
||||
in the dev3LCG build.
|
||||
---
|
||||
io/io/src/TBufferFile.cxx | 14 +++++++-------
|
||||
1 file changed, 7 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/io/io/src/TBufferFile.cxx b/io/io/src/TBufferFile.cxx
|
||||
index 7b1fe370bb..81e0f95e02 100644
|
||||
--- a/io/io/src/TBufferFile.cxx
|
||||
+++ b/io/io/src/TBufferFile.cxx
|
||||
@@ -1995,13 +1995,6 @@ void TBufferFile::WriteFastArray(const Char_t *c, Long64_t n)
|
||||
|
||||
void TBufferFile::WriteFastArrayString(const Char_t *c, Long64_t n)
|
||||
{
|
||||
- if (n < 255) {
|
||||
- *this << (UChar_t)n;
|
||||
- } else {
|
||||
- *this << (UChar_t)255;
|
||||
- *this << n;
|
||||
- }
|
||||
-
|
||||
constexpr Int_t dataWidth = static_cast<Int_t>(sizeof(Char_t));
|
||||
const Int_t maxElements = (std::numeric_limits<Int_t>::max() - Length())/dataWidth;
|
||||
if (n < 0 || n > maxElements)
|
||||
@@ -2010,6 +2003,13 @@ void TBufferFile::WriteFastArrayString(const Char_t *c, Long64_t n)
|
||||
return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
|
||||
+ if (n < 255) {
|
||||
+ *this << (UChar_t)n;
|
||||
+ } else {
|
||||
+ *this << (UChar_t)255;
|
||||
+ *this << (Int_t)n;
|
||||
+ }
|
||||
+
|
||||
Int_t l = sizeof(Char_t)*n;
|
||||
if (fBufCur + l > fBufMax) AutoExpand(fBufSize+l);
|
||||
|
||||
--
|
||||
2.45.2
|
||||
|
||||
56
root-Make-TUri-class-PCRE2-compatible.patch
Normal file
56
root-Make-TUri-class-PCRE2-compatible.patch
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
From 9f696986449451d9df951891eb930231e718989b Mon Sep 17 00:00:00 2001
|
||||
From: Mattias Ellert <mattias.ellert@physics.uu.se>
|
||||
Date: Thu, 4 Jul 2024 18:08:32 +0200
|
||||
Subject: [PATCH 1/2] [core] Make TUri class PCRE2 compatible
|
||||
|
||||
PCRE2 has a stricter regular expression syntax parsing than PCRE.
|
||||
Some non-conforming regular expressions that were accepted by PCRE are
|
||||
correcrly rejected by PCRE2.
|
||||
|
||||
Some of the regular expressions used by the TUri class do not follow
|
||||
the syntax rules and were relying on them being acceped by PCRE
|
||||
anyway. This commit corrects the syntax of these expressions so that
|
||||
they are now accepted by PCRE2. The corrected expressions still work
|
||||
correctly with the old PCRE.
|
||||
---
|
||||
core/base/src/TUri.cxx | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/core/base/src/TUri.cxx b/core/base/src/TUri.cxx
|
||||
index 04aab1edb3..9660470556 100644
|
||||
--- a/core/base/src/TUri.cxx
|
||||
+++ b/core/base/src/TUri.cxx
|
||||
@@ -27,10 +27,10 @@ a validating parser.
|
||||
|
||||
//RFC3986:
|
||||
// pchar = unreserved / pct-encoded / sub-delims / ":" / "@"
|
||||
-const char* const kURI_pchar = "(?:[[:alpha:][:digit:]-._~!$&'()*+,;=:@]|%[0-9A-Fa-f][0-9A-Fa-f])";
|
||||
+const char* const kURI_pchar = "(?:[[:alpha:][:digit:]\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f][0-9A-Fa-f])";
|
||||
|
||||
//unreserved characters, see chapter 2.3
|
||||
-const char* const kURI_unreserved = "[[:alpha:][:digit:]-._~]";
|
||||
+const char* const kURI_unreserved = "[[:alpha:][:digit:]\\-._~]";
|
||||
|
||||
// reserved characters, see chapter
|
||||
// reserved = gen-delims / sub-delims
|
||||
@@ -900,7 +900,7 @@ Bool_t TUri::IsPathAbsolute(const TString &string)
|
||||
Bool_t TUri::IsPathNoscheme(const TString &string)
|
||||
{
|
||||
return (TPRegexp(
|
||||
- TString("^(([[:alpha:][:digit:]-._~!$&'()*+,;=@]|%[0-9A-Fa-f][0-9A-Fa-f])+)(/") + TString(kURI_pchar) + "*)*$"
|
||||
+ TString("^(([[:alpha:][:digit:]\\-._~!$&'()*+,;=@]|%[0-9A-Fa-f][0-9A-Fa-f])+)(/") + TString(kURI_pchar) + "*)*$"
|
||||
).Match(string) > 0);
|
||||
}
|
||||
|
||||
@@ -950,7 +950,7 @@ Bool_t TUri::IsPort(const TString &string)
|
||||
Bool_t TUri::IsRegName(const TString &string)
|
||||
{
|
||||
return (TPRegexp(
|
||||
- "^([[:alpha:][:digit:]-._~!$&'()*+,;=]|%[0-9A-Fa-f][0-9A-Fa-f])*$").Match(string) > 0);
|
||||
+ "^([[:alpha:][:digit:]\\-._~!$&'()*+,;=]|%[0-9A-Fa-f][0-9A-Fa-f])*$").Match(string) > 0);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
--
|
||||
2.45.2
|
||||
|
||||
40
root-Whitelist-libtbbmalloc-in-library-import-test.patch
Normal file
40
root-Whitelist-libtbbmalloc-in-library-import-test.patch
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
From 8dc4654de6d569e5040313065fd5cd04d651fb92 Mon Sep 17 00:00:00 2001
|
||||
From: Mattias Ellert <mattias.ellert@physics.uu.se>
|
||||
Date: Fri, 12 Jul 2024 00:20:04 +0200
|
||||
Subject: [PATCH] [pyroot] Whitelist libtbbmalloc in library import test
|
||||
|
||||
6/1344 Test #12: pyunittests-pyroot-import-load-libs .......................................***Failed 1.35 sec
|
||||
test_import (import_load_libs.ImportLoadLibs.test_import)
|
||||
Test libraries loaded after importing ROOT ... ERROR
|
||||
======================================================================
|
||||
ERROR: test_import (import_load_libs.ImportLoadLibs.test_import)
|
||||
Test libraries loaded after importing ROOT
|
||||
----------------------------------------------------------------------
|
||||
Exception: Found not whitelisted libraries after importing ROOT:
|
||||
- libtbbmalloc
|
||||
If the test fails with a library that is loaded on purpose, please add it to the whitelist.
|
||||
----------------------------------------------------------------------
|
||||
Ran 1 test in 1.186s
|
||||
FAILED (errors=1)
|
||||
|
||||
This failure is seen in Fedora 41 after tbb was updated from version
|
||||
2021.11.0 to version 2021.13.0 in the distribution.
|
||||
---
|
||||
bindings/pyroot/pythonizations/test/import_load_libs.py | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/bindings/pyroot/pythonizations/test/import_load_libs.py b/bindings/pyroot/pythonizations/test/import_load_libs.py
|
||||
index 179c76f6fd..c370a3cd42 100644
|
||||
--- a/bindings/pyroot/pythonizations/test/import_load_libs.py
|
||||
+++ b/bindings/pyroot/pythonizations/test/import_load_libs.py
|
||||
@@ -40,6 +40,7 @@ class ImportLoadLibs(unittest.TestCase):
|
||||
'libssl',
|
||||
'libcrypt.*', # by libssl
|
||||
'libtbb',
|
||||
+ 'libtbbmalloc',
|
||||
'liburing', # by libRIO if uring option is enabled
|
||||
# On centos7 libssl links against kerberos pulling in all dependencies below, removed with libssl1.1.0
|
||||
'libgssapi_krb5',
|
||||
--
|
||||
2.45.2
|
||||
|
||||
30
root-allow-any-openssl-3.x-with-civetweb.patch
Normal file
30
root-allow-any-openssl-3.x-with-civetweb.patch
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
From 6952dd5ca51e7be8a8ae74b446ac268949f5f383 Mon Sep 17 00:00:00 2001
|
||||
From: Sergey Linev <S.Linev@gsi.de>
|
||||
Date: Mon, 10 Jun 2024 09:19:47 +0200
|
||||
Subject: [PATCH] [http] Allow to use any of openssl 3.x with civetweb
|
||||
|
||||
civetweb was designed when only openssl 3.0 was existing.
|
||||
Therefore name of define is `OPENSSL_API_3_0`
|
||||
Meanwhile there is openssl 3.1 and 3.2.
|
||||
While seems to be there is no changes in API both can
|
||||
be used with civetweb.
|
||||
---
|
||||
net/http/CMakeLists.txt | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/net/http/CMakeLists.txt b/net/http/CMakeLists.txt
|
||||
index 02d7514400..6ef98a604b 100644
|
||||
--- a/net/http/CMakeLists.txt
|
||||
+++ b/net/http/CMakeLists.txt
|
||||
@@ -78,7 +78,7 @@ if(ssl)
|
||||
MESSAGE(STATUS "Use SSL API VERSION 1.1 for civetweb")
|
||||
target_compile_definitions(RHTTP PUBLIC -DOPENSSL_API_1_1)
|
||||
set(link_ssl ON)
|
||||
- elseif((${ssl_major} EQUAL "3") AND ((${ssl_minor} EQUAL "0") OR (${ssl_minor} EQUAL "1")))
|
||||
+ elseif(${ssl_major} EQUAL "3")
|
||||
MESSAGE(STATUS "Use SSL API VERSION 3.${ssl_minor} for civetweb")
|
||||
target_compile_definitions(RHTTP PUBLIC -DOPENSSL_API_3_0)
|
||||
set(link_ssl ON)
|
||||
--
|
||||
2.45.2
|
||||
|
||||
133
root-fix-typo.patch
Normal file
133
root-fix-typo.patch
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
From 1df0dc67beb8053926f39b69e4a4393322de63ed Mon Sep 17 00:00:00 2001
|
||||
From: ferdymercury <ferdymercury@users.noreply.github.com>
|
||||
Date: Sun, 25 Feb 2024 18:36:40 +0100
|
||||
Subject: [PATCH] [skip-ci] fix typo
|
||||
|
||||
---
|
||||
io/io/src/TBufferFile.cxx | 26 +++++++++++++-------------
|
||||
1 file changed, 13 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/io/io/src/TBufferFile.cxx b/io/io/src/TBufferFile.cxx
|
||||
index 8d2f36cfc9..7b1fe370bb 100644
|
||||
--- a/io/io/src/TBufferFile.cxx
|
||||
+++ b/io/io/src/TBufferFile.cxx
|
||||
@@ -1953,7 +1953,7 @@ void TBufferFile::WriteFastArray(const Bool_t *b, Long64_t n)
|
||||
if (n < 0 || n > maxElements)
|
||||
{
|
||||
Fatal("WriteFastArray", "Not enough space left in the buffer (1GB limit). %lld elements is greater than the max left of %d", n, maxElements);
|
||||
- return; // In case the user re-route the error handler to not die when Fatal is called
|
||||
+ return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
|
||||
Int_t l = sizeof(UChar_t)*n;
|
||||
@@ -1979,7 +1979,7 @@ void TBufferFile::WriteFastArray(const Char_t *c, Long64_t n)
|
||||
if (n < 0 || n > maxElements)
|
||||
{
|
||||
Fatal("WriteFastArray", "Not enough space left in the buffer (1GB limit). %lld elements is greater than the max left of %d", n, maxElements);
|
||||
- return; // In case the user re-route the error handler to not die when Fatal is called
|
||||
+ return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
|
||||
Int_t l = sizeof(Char_t)*n;
|
||||
@@ -2007,7 +2007,7 @@ void TBufferFile::WriteFastArrayString(const Char_t *c, Long64_t n)
|
||||
if (n < 0 || n > maxElements)
|
||||
{
|
||||
Fatal("WriteFastArray", "Not enough space left in the buffer (1GB limit). %lld elements is greater than the max left of %d", n, maxElements);
|
||||
- return; // In case the user re-route the error handler to not die when Fatal is called
|
||||
+ return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
|
||||
Int_t l = sizeof(Char_t)*n;
|
||||
@@ -2028,7 +2028,7 @@ void TBufferFile::WriteFastArray(const Short_t *h, Long64_t n)
|
||||
if (n < 0 || n > maxElements)
|
||||
{
|
||||
Fatal("WriteFastArray", "Not enough space left in the buffer (1GB limit). %lld elements is greater than the max left of %d", n, maxElements);
|
||||
- return; // In case the user re-route the error handler to not die when Fatal is called
|
||||
+ return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
|
||||
Int_t l = sizeof(Short_t)*n;
|
||||
@@ -2060,7 +2060,7 @@ void TBufferFile::WriteFastArray(const Int_t *ii, Long64_t n)
|
||||
if (n < 0 || n > maxElements)
|
||||
{
|
||||
Fatal("WriteFastArray", "Not enough space left in the buffer (1GB limit). %lld elements is greater than the max left of %d", n, maxElements);
|
||||
- return; // In case the user re-route the error handler to not die when Fatal is called
|
||||
+ return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
|
||||
Int_t l = sizeof(Int_t)*n;
|
||||
@@ -2091,7 +2091,7 @@ void TBufferFile::WriteFastArray(const Long_t *ll, Long64_t n)
|
||||
if (n < 0 || n > maxElements)
|
||||
{
|
||||
Fatal("WriteFastArray", "Not enough space left in the buffer (1GB limit). %lld elements is greater than the max left of %d", n, maxElements);
|
||||
- return; // In case the user re-route the error handler to not die when Fatal is called
|
||||
+ return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
|
||||
Int_t l = 8*n;
|
||||
@@ -2113,7 +2113,7 @@ void TBufferFile::WriteFastArray(const ULong_t *ll, Long64_t n)
|
||||
if (n < 0 || n > maxElements)
|
||||
{
|
||||
Fatal("WriteFastArray", "Not enough space left in the buffer (1GB limit). %lld elements is greater than the max left of %d", n, maxElements);
|
||||
- return; // In case the user re-route the error handler to not die when Fatal is called
|
||||
+ return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
|
||||
Int_t l = 8*n;
|
||||
@@ -2133,7 +2133,7 @@ void TBufferFile::WriteFastArray(const Long64_t *ll, Long64_t n)
|
||||
if (n < 0 || n > maxElements)
|
||||
{
|
||||
Fatal("WriteFastArray", "Not enough space left in the buffer (1GB limit). %lld elements is greater than the max left of %d", n, maxElements);
|
||||
- return; // In case the user re-route the error handler to not die when Fatal is called
|
||||
+ return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
|
||||
Int_t l = sizeof(Long64_t)*n;
|
||||
@@ -2159,7 +2159,7 @@ void TBufferFile::WriteFastArray(const Float_t *f, Long64_t n)
|
||||
if (n < 0 || n > maxElements)
|
||||
{
|
||||
Fatal("WriteFastArray", "Not enough space left in the buffer (1GB limit). %lld elements is greater than the max left of %d", n, maxElements);
|
||||
- return; // In case the user re-route the error handler to not die when Fatal is called
|
||||
+ return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
|
||||
Int_t l = sizeof(Float_t)*n;
|
||||
@@ -2190,7 +2190,7 @@ void TBufferFile::WriteFastArray(const Double_t *d, Long64_t n)
|
||||
if (n < 0 || n > maxElements)
|
||||
{
|
||||
Fatal("WriteFastArray", "Not enough space left in the buffer (1GB limit). %lld elements is greater than the max left of %d", n, maxElements);
|
||||
- return; // In case the user re-route the error handler to not die when Fatal is called
|
||||
+ return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
|
||||
Int_t l = sizeof(Double_t)*n;
|
||||
@@ -2217,7 +2217,7 @@ void TBufferFile::WriteFastArrayFloat16(const Float_t *f, Long64_t n, TStreamerE
|
||||
if (n < 0 || n > maxElements)
|
||||
{
|
||||
Fatal("WriteFastArray", "Not enough space left in the buffer (1GB limit). %lld elements is greater than the max left of %d", n, maxElements);
|
||||
- return; // In case the user re-route the error handler to not die when Fatal is called
|
||||
+ return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
|
||||
Int_t l = sizeof(Float_t)*n;
|
||||
@@ -2275,7 +2275,7 @@ void TBufferFile::WriteFastArrayDouble32(const Double_t *d, Long64_t n, TStreame
|
||||
if (n < 0 || n > maxElements)
|
||||
{
|
||||
Fatal("WriteFastArray", "Not enough space left in the buffer (1GB limit). %lld elements is greater than the max left of %d", n, maxElements);
|
||||
- return; // In case the user re-route the error handler to not die when Fatal is called
|
||||
+ return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
|
||||
Int_t l = sizeof(Float_t)*n;
|
||||
@@ -2346,7 +2346,7 @@ void TBufferFile::WriteFastArray(void *start, const TClass *cl, Long64_t n,
|
||||
else if (n < 0)
|
||||
{
|
||||
Fatal("WriteFastArray", "Negative number of elements %lld", n);
|
||||
- return; // In case the user re-route the error handler to not die when Fatal is called
|
||||
+ return; // In case the user re-routes the error handler to not die when Fatal is called
|
||||
}
|
||||
int size = cl->Size();
|
||||
|
||||
--
|
||||
2.45.2
|
||||
|
||||
73
root-format-warnings-32-bit.patch
Normal file
73
root-format-warnings-32-bit.patch
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
From 8592c5e065b8cf46480f5a1efe0363fcf2150551 Mon Sep 17 00:00:00 2001
|
||||
From: Mattias Ellert <mattias.ellert@physics.uu.se>
|
||||
Date: Tue, 4 Jun 2024 08:47:04 +0200
|
||||
Subject: [PATCH] Correct format - warnings seen on 32 bit architectures
|
||||
|
||||
---
|
||||
core/clib/src/mmapsup.c | 2 +-
|
||||
roofit/xroofit/src/xRooNode.cxx | 2 +-
|
||||
tree/dataframe/src/RDFDisplay.cxx | 4 ++--
|
||||
tree/dataframe/src/RDFHelpers.cxx | 2 +-
|
||||
4 files changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/core/clib/src/mmapsup.c b/core/clib/src/mmapsup.c
|
||||
index 81f68a2059..da46dc7ba5 100644
|
||||
--- a/core/clib/src/mmapsup.c
|
||||
+++ b/core/clib/src/mmapsup.c
|
||||
@@ -174,7 +174,7 @@ PTR __mmalloc_mmap_morecore(struct mdesc *mdp, int size)
|
||||
if (mdp -> top != PAGE_ALIGN(mdp -> top)) {
|
||||
fprintf(stderr,
|
||||
"mmap_morecore error: base memory location (%p) is not aligned with %zu as required.\n",
|
||||
- mdp -> top, (long)pagesize);
|
||||
+ mdp -> top, pagesize);
|
||||
return result;
|
||||
}
|
||||
mapto = mmap (mdp -> top, mapbytes, PROT_READ | PROT_WRITE,
|
||||
diff --git a/roofit/xroofit/src/xRooNode.cxx b/roofit/xroofit/src/xRooNode.cxx
|
||||
index f8c96fbf62..852e6997c0 100644
|
||||
--- a/roofit/xroofit/src/xRooNode.cxx
|
||||
+++ b/roofit/xroofit/src/xRooNode.cxx
|
||||
@@ -11075,7 +11075,7 @@ std::string cling::printValue(const xRooNode *v)
|
||||
if(!out.empty()) out += ","; else out += "{";
|
||||
out += n->GetName();
|
||||
if(out.length()>100 && left > 0) {
|
||||
- out += TString::Format(",... and %lu more",left);
|
||||
+ out += TString::Format(",... and %zu more",left);
|
||||
break;
|
||||
}
|
||||
}
|
||||
diff --git a/tree/dataframe/src/RDFDisplay.cxx b/tree/dataframe/src/RDFDisplay.cxx
|
||||
index 9dc555fc1d..2ef7de7ddc 100644
|
||||
--- a/tree/dataframe/src/RDFDisplay.cxx
|
||||
+++ b/tree/dataframe/src/RDFDisplay.cxx
|
||||
@@ -232,12 +232,12 @@ void RDisplay::Print() const
|
||||
// Thus, the first column is only the Row column and the actual first column is printed
|
||||
columnsToPrint = 2;
|
||||
}
|
||||
- Info("Print", "Only showing %lu columns out of %lu\n", columnsToPrint, fNColumns);
|
||||
+ Info("Print", "Only showing %zu columns out of %zu\n", columnsToPrint, fNColumns);
|
||||
allColumnsFit = false;
|
||||
}
|
||||
|
||||
if (fNMaxCollectionElements < 1)
|
||||
- Info("Print", "No collections shown since fNMaxCollectionElements is %lu\n", fNMaxCollectionElements);
|
||||
+ Info("Print", "No collections shown since fNMaxCollectionElements is %zu\n", fNMaxCollectionElements);
|
||||
|
||||
auto nrRows = fTable.size();
|
||||
std::cout << DashesBetweenLines(columnsToPrint, allColumnsFit); // Print dashes in the top of the table
|
||||
diff --git a/tree/dataframe/src/RDFHelpers.cxx b/tree/dataframe/src/RDFHelpers.cxx
|
||||
index 4891454cc0..3490901b5d 100644
|
||||
--- a/tree/dataframe/src/RDFHelpers.cxx
|
||||
+++ b/tree/dataframe/src/RDFHelpers.cxx
|
||||
@@ -74,7 +74,7 @@ unsigned int ROOT::RDF::RunGraphs(std::vector<RResultHandle> handles)
|
||||
const unsigned int nToRun =
|
||||
std::count_if(handles.begin(), handles.end(), [](const auto &h) { return !h.IsReady(); });
|
||||
if (nToRun < handles.size()) {
|
||||
- Warning("RunGraphs", "Got %lu handles from which %lu link to results which are already ready.", handles.size(),
|
||||
+ Warning("RunGraphs", "Got %zu handles from which %zu link to results which are already ready.", handles.size(),
|
||||
handles.size() - nToRun);
|
||||
}
|
||||
if (nToRun == 0u)
|
||||
--
|
||||
2.45.1
|
||||
|
||||
62
root-pyroot-add-python-3.13-attributes.patch
Normal file
62
root-pyroot-add-python-3.13-attributes.patch
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
From 4d1486b95cd8c7850b12bd1777ea4463529f0b96 Mon Sep 17 00:00:00 2001
|
||||
From: Mattias Ellert <mattias.ellert@physics.uu.se>
|
||||
Date: Sat, 8 Jun 2024 17:08:48 +0200
|
||||
Subject: [PATCH] [pyroot] Add __firstlineno__ and __static_attributes__ to
|
||||
blacklist
|
||||
|
||||
For compatibility with Python 3.13
|
||||
|
||||
See: https://docs.python.org/3.13/whatsnew/3.13.html
|
||||
|
||||
From the above page:
|
||||
|
||||
* Classes have a new __firstlineno__ attribute, populated by the
|
||||
compiler, with the line number of the first line of the class
|
||||
definition. (Contributed by Serhiy Storchaka in gh-118465.)
|
||||
|
||||
* Classes have a new __static_attributes__ attribute, populated by the
|
||||
compiler, with a tuple of names of attributes of this class which
|
||||
are accessed through self.X from any function in its
|
||||
body. (Contributed by Irit Katriel in gh-115775.)
|
||||
|
||||
Without adding the new attributes to the blacklist there are errors:
|
||||
|
||||
AttributeError: 'int' object attribute 'doc' is read-only
|
||||
from the __firstlineno__ attribute.
|
||||
|
||||
AttributeError: 'tuple' object attribute 'doc' is read-only
|
||||
from the __static_attributes__ attribute.
|
||||
---
|
||||
.../python/ROOT/_pythonization/_roofit/__init__.py | 2 +-
|
||||
.../pythonizations/python/ROOT/_pythonization/_tmva/__init__.py | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/bindings/pyroot/pythonizations/python/ROOT/_pythonization/_roofit/__init__.py b/bindings/pyroot/pythonizations/python/ROOT/_pythonization/_roofit/__init__.py
|
||||
index 83b3b69e3b..4ebd53736d 100644
|
||||
--- a/bindings/pyroot/pythonizations/python/ROOT/_pythonization/_roofit/__init__.py
|
||||
+++ b/bindings/pyroot/pythonizations/python/ROOT/_pythonization/_roofit/__init__.py
|
||||
@@ -122,7 +122,7 @@ def get_defined_attributes(klass, consider_base_classes=False):
|
||||
any of its base classes (except for `object`).
|
||||
"""
|
||||
|
||||
- blacklist = ["__dict__", "__doc__", "__hash__", "__module__", "__weakref__"]
|
||||
+ blacklist = ["__dict__", "__doc__", "__hash__", "__module__", "__weakref__", "__firstlineno__", "__static_attributes__"]
|
||||
|
||||
if not consider_base_classes:
|
||||
return sorted([attr for attr in klass.__dict__.keys() if attr not in blacklist])
|
||||
diff --git a/bindings/pyroot/pythonizations/python/ROOT/_pythonization/_tmva/__init__.py b/bindings/pyroot/pythonizations/python/ROOT/_pythonization/_tmva/__init__.py
|
||||
index b2dea5b541..72c210663d 100644
|
||||
--- a/bindings/pyroot/pythonizations/python/ROOT/_pythonization/_tmva/__init__.py
|
||||
+++ b/bindings/pyroot/pythonizations/python/ROOT/_pythonization/_tmva/__init__.py
|
||||
@@ -69,7 +69,7 @@ def get_defined_attributes(klass, consider_base_classes=False):
|
||||
any of its base classes (except for `object`).
|
||||
"""
|
||||
|
||||
- blacklist = ["__dict__", "__doc__", "__hash__", "__module__", "__weakref__"]
|
||||
+ blacklist = ["__dict__", "__doc__", "__hash__", "__module__", "__weakref__", "__firstlineno__", "__static_attributes__"]
|
||||
|
||||
if not consider_base_classes:
|
||||
return sorted([attr for attr in klass.__dict__.keys() if attr not in blacklist])
|
||||
--
|
||||
2.45.2
|
||||
|
||||
32
root-r.patch
Normal file
32
root-r.patch
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
From 141f62e800bfc54d2fdf76c0750dc6082d00910d Mon Sep 17 00:00:00 2001
|
||||
From: Mattias Ellert <mattias.ellert@physics.uu.se>
|
||||
Date: Sun, 21 Jul 2024 23:09:54 +0200
|
||||
Subject: [PATCH] Update ROOT's R interface for Rcpp 1.0.13
|
||||
|
||||
---
|
||||
bindings/r/inc/TRInternalFunction.h | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/bindings/r/inc/TRInternalFunction.h b/bindings/r/inc/TRInternalFunction.h
|
||||
index d9bf532205..fa77cbddbc 100644
|
||||
--- a/bindings/r/inc/TRInternalFunction.h
|
||||
+++ b/bindings/r/inc/TRInternalFunction.h
|
||||
@@ -31,7 +31,15 @@ public:
|
||||
|
||||
RCPP_GENERATE_CTOR_ASSIGN(TRInternalFunction_Impl)
|
||||
|
||||
+#if RCPP_VERSION >= Rcpp_Version(1,0,13)
|
||||
+ template <typename OUT, typename... T>
|
||||
+ TRInternalFunction_Impl(OUT(*fun)(T...))
|
||||
+ {
|
||||
+ set(Rcpp::XPtr< Rcpp::CppFunctionN<OUT, T...> >(new Rcpp::CppFunctionN<OUT, T...>(fun), false));
|
||||
+ }
|
||||
+#else
|
||||
#include <TRInternalFunction__ctors.h>
|
||||
+#endif
|
||||
void update(SEXP) {}
|
||||
private:
|
||||
|
||||
--
|
||||
2.45.2
|
||||
|
||||
125
root-write-array.patch
Normal file
125
root-write-array.patch
Normal file
|
|
@ -0,0 +1,125 @@
|
|||
From a7be6f726b13a7ccf1c46dec35f53520781159df Mon Sep 17 00:00:00 2001
|
||||
From: Mattias Ellert <mattias.ellert@physics.uu.se>
|
||||
Date: Fri, 7 Jun 2024 06:49:39 +0200
|
||||
Subject: [PATCH] Put back check for n = 0
|
||||
|
||||
---
|
||||
io/io/src/TBufferFile.cxx | 25 ++++++++++++++++++++++++-
|
||||
1 file changed, 24 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/io/io/src/TBufferFile.cxx b/io/io/src/TBufferFile.cxx
|
||||
index 81e0f95e02..b5b7ef9831 100644
|
||||
--- a/io/io/src/TBufferFile.cxx
|
||||
+++ b/io/io/src/TBufferFile.cxx
|
||||
@@ -1948,6 +1948,8 @@ void TBufferFile::WriteArrayDouble32(const Double_t *d, Int_t n, TStreamerElemen
|
||||
|
||||
void TBufferFile::WriteFastArray(const Bool_t *b, Long64_t n)
|
||||
{
|
||||
+ if (n == 0) return;
|
||||
+
|
||||
constexpr Int_t dataWidth = static_cast<Int_t>(sizeof(UChar_t));
|
||||
const Int_t maxElements = (std::numeric_limits<Int_t>::max() - Length())/dataWidth;
|
||||
if (n < 0 || n > maxElements)
|
||||
@@ -1974,6 +1976,8 @@ void TBufferFile::WriteFastArray(const Bool_t *b, Long64_t n)
|
||||
|
||||
void TBufferFile::WriteFastArray(const Char_t *c, Long64_t n)
|
||||
{
|
||||
+ if (n == 0) return;
|
||||
+
|
||||
constexpr Int_t dataWidth = static_cast<Int_t>(sizeof(Char_t));
|
||||
const Int_t maxElements = (std::numeric_limits<Int_t>::max() - Length())/dataWidth;
|
||||
if (n < 0 || n > maxElements)
|
||||
@@ -1995,6 +1999,8 @@ void TBufferFile::WriteFastArray(const Char_t *c, Long64_t n)
|
||||
|
||||
void TBufferFile::WriteFastArrayString(const Char_t *c, Long64_t n)
|
||||
{
|
||||
+ if (n == 0) return;
|
||||
+
|
||||
constexpr Int_t dataWidth = static_cast<Int_t>(sizeof(Char_t));
|
||||
const Int_t maxElements = (std::numeric_limits<Int_t>::max() - Length())/dataWidth;
|
||||
if (n < 0 || n > maxElements)
|
||||
@@ -2023,6 +2029,8 @@ void TBufferFile::WriteFastArrayString(const Char_t *c, Long64_t n)
|
||||
|
||||
void TBufferFile::WriteFastArray(const Short_t *h, Long64_t n)
|
||||
{
|
||||
+ if (n == 0) return;
|
||||
+
|
||||
constexpr Int_t dataWidth = static_cast<Int_t>(sizeof(Short_t));
|
||||
const Int_t maxElements = (std::numeric_limits<Int_t>::max() - Length())/dataWidth;
|
||||
if (n < 0 || n > maxElements)
|
||||
@@ -2054,7 +2062,8 @@ void TBufferFile::WriteFastArray(const Short_t *h, Long64_t n)
|
||||
|
||||
void TBufferFile::WriteFastArray(const Int_t *ii, Long64_t n)
|
||||
{
|
||||
-
|
||||
+ if (n == 0) return;
|
||||
+
|
||||
constexpr Int_t dataWidth = 4;
|
||||
const Int_t maxElements = (std::numeric_limits<Int_t>::max() - Length())/dataWidth;
|
||||
if (n < 0 || n > maxElements)
|
||||
@@ -2086,6 +2095,8 @@ void TBufferFile::WriteFastArray(const Int_t *ii, Long64_t n)
|
||||
|
||||
void TBufferFile::WriteFastArray(const Long_t *ll, Long64_t n)
|
||||
{
|
||||
+ if (n == 0) return;
|
||||
+
|
||||
constexpr Int_t dataWidth = 8;
|
||||
const Int_t maxElements = (std::numeric_limits<Int_t>::max() - Length())/dataWidth;
|
||||
if (n < 0 || n > maxElements)
|
||||
@@ -2108,6 +2119,8 @@ void TBufferFile::WriteFastArray(const Long_t *ll, Long64_t n)
|
||||
|
||||
void TBufferFile::WriteFastArray(const ULong_t *ll, Long64_t n)
|
||||
{
|
||||
+ if (n == 0) return;
|
||||
+
|
||||
constexpr Int_t dataWidth = 8;
|
||||
const Int_t maxElements = (std::numeric_limits<Int_t>::max() - Length())/dataWidth;
|
||||
if (n < 0 || n > maxElements)
|
||||
@@ -2128,6 +2141,8 @@ void TBufferFile::WriteFastArray(const ULong_t *ll, Long64_t n)
|
||||
|
||||
void TBufferFile::WriteFastArray(const Long64_t *ll, Long64_t n)
|
||||
{
|
||||
+ if (n == 0) return;
|
||||
+
|
||||
constexpr Int_t dataWidth = static_cast<Int_t>(sizeof(Long64_t));
|
||||
const Int_t maxElements = (std::numeric_limits<Int_t>::max() - Length())/dataWidth;
|
||||
if (n < 0 || n > maxElements)
|
||||
@@ -2154,6 +2169,8 @@ void TBufferFile::WriteFastArray(const Long64_t *ll, Long64_t n)
|
||||
|
||||
void TBufferFile::WriteFastArray(const Float_t *f, Long64_t n)
|
||||
{
|
||||
+ if (n == 0) return;
|
||||
+
|
||||
constexpr Int_t dataWidth = static_cast<Int_t>(sizeof(Float_t));
|
||||
const Int_t maxElements = (std::numeric_limits<Int_t>::max() - Length())/dataWidth;
|
||||
if (n < 0 || n > maxElements)
|
||||
@@ -2185,6 +2202,8 @@ void TBufferFile::WriteFastArray(const Float_t *f, Long64_t n)
|
||||
|
||||
void TBufferFile::WriteFastArray(const Double_t *d, Long64_t n)
|
||||
{
|
||||
+ if (n == 0) return;
|
||||
+
|
||||
constexpr Int_t dataWidth = static_cast<Int_t>(sizeof(Double_t));
|
||||
const Int_t maxElements = (std::numeric_limits<Int_t>::max() - Length())/dataWidth;
|
||||
if (n < 0 || n > maxElements)
|
||||
@@ -2212,6 +2231,8 @@ void TBufferFile::WriteFastArray(const Double_t *d, Long64_t n)
|
||||
|
||||
void TBufferFile::WriteFastArrayFloat16(const Float_t *f, Long64_t n, TStreamerElement *ele)
|
||||
{
|
||||
+ if (n == 0) return;
|
||||
+
|
||||
constexpr Int_t dataWidth = static_cast<Int_t>(sizeof(Float_t));
|
||||
const Int_t maxElements = (std::numeric_limits<Int_t>::max() - Length())/dataWidth;
|
||||
if (n < 0 || n > maxElements)
|
||||
@@ -2270,6 +2291,8 @@ void TBufferFile::WriteFastArrayFloat16(const Float_t *f, Long64_t n, TStreamerE
|
||||
|
||||
void TBufferFile::WriteFastArrayDouble32(const Double_t *d, Long64_t n, TStreamerElement *ele)
|
||||
{
|
||||
+ if (n == 0) return;
|
||||
+
|
||||
constexpr Int_t dataWidth = static_cast<Int_t>(sizeof(Float_t));
|
||||
const Int_t maxElements = (std::numeric_limits<Int_t>::max() - Length())/dataWidth;
|
||||
if (n < 0 || n > maxElements)
|
||||
--
|
||||
2.45.2
|
||||
|
||||
113
root.spec
113
root.spec
|
|
@ -55,9 +55,9 @@
|
|||
%global __provides_exclude_from ^%{python3_sitearch}/lib.*\\.so$
|
||||
|
||||
Name: root
|
||||
Version: 6.30.06
|
||||
Version: 6.30.08
|
||||
%global libversion %(cut -d. -f 1-2 <<< %{version})
|
||||
Release: 5%{?dist}
|
||||
Release: 2%{?dist}
|
||||
Summary: Numerical data analysis framework
|
||||
|
||||
License: LGPL-2.1-or-later
|
||||
|
|
@ -120,6 +120,32 @@ Patch14: %{name}-np32.patch
|
|||
Patch15: %{name}-new-zlib.patch
|
||||
# Only for EPEL 8 - disable tests not working with old gtest
|
||||
Patch16: %{name}-old-gtest.patch
|
||||
# Backport from upstream
|
||||
Patch17: %{name}-fix-typo.patch
|
||||
Patch18: %{name}-Fix-writing-long-strings.patch
|
||||
# Avoid segmentation fault on ix86
|
||||
# https://github.com/root-project/root/issues/15738
|
||||
# https://github.com/root-project/root/pull/15780
|
||||
Patch19: %{name}-write-array.patch
|
||||
# Correct format warnings seen on 32 bit architectures
|
||||
# https://github.com/root-project/root/pull/15732
|
||||
Patch20: %{name}-format-warnings-32-bit.patch
|
||||
# Python 3.13 compatibility
|
||||
# https://github.com/root-project/root/issues/15430
|
||||
# https://github.com/root-project/root/pull/15798
|
||||
Patch21: %{name}-pyroot-add-python-3.13-attributes.patch
|
||||
# Backport build fix from upstream
|
||||
Patch22: %{name}-allow-any-openssl-3.x-with-civetweb.patch
|
||||
# Fixes for TUri class
|
||||
# https://github.com/root-project/root/pull/15988
|
||||
Patch23: root-Make-TUri-class-PCRE2-compatible.patch
|
||||
Patch24: root-Correct-the-regular-expression-for-the-scheme-p.patch
|
||||
# Fix test failure with tbb 2021.13.0
|
||||
# https://github.com/root-project/root/pull/16016
|
||||
Patch25: root-Whitelist-libtbbmalloc-in-library-import-test.patch
|
||||
# Update ROOT's R interface for Rcpp 1.0.13
|
||||
# https://github.com/root-project/root/pull/16075
|
||||
Patch26: root-r.patch
|
||||
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: gcc-gfortran
|
||||
|
|
@ -167,12 +193,17 @@ BuildRequires: qt6-qtbase-devel
|
|||
BuildRequires: qt6-qtwebengine-devel
|
||||
%endif
|
||||
BuildRequires: openssl-devel
|
||||
%if %{?fedora}%{!?fedora:0} >= 41
|
||||
# Needed by civetweb.c in root-net-http
|
||||
BuildRequires: openssl-devel-engine
|
||||
%endif
|
||||
BuildRequires: libtool-ltdl-devel
|
||||
BuildRequires: desktop-file-utils
|
||||
BuildRequires: dcap-devel
|
||||
BuildRequires: xrootd-client-devel >= 1:5.0.0
|
||||
BuildRequires: cfitsio-devel
|
||||
BuildRequires: davix-devel >= 0.6.4
|
||||
# Davix version >= 0.6.4, but not between 0.6.8 and 0.7.0
|
||||
BuildRequires: davix-devel >= 0.7.1
|
||||
BuildRequires: R-Rcpp-devel
|
||||
BuildRequires: R-RInside-devel
|
||||
BuildRequires: readline-devel
|
||||
|
|
@ -891,6 +922,9 @@ from marked up sources.
|
|||
%package io
|
||||
Summary: Input/output of ROOT objects
|
||||
Requires: %{name}-core%{?_isa} = %{version}-%{release}
|
||||
%if %{?fedora}%{!?fedora:0}
|
||||
Requires: liburing-devel
|
||||
%endif
|
||||
|
||||
%description io
|
||||
This package provides I/O routines for ROOT objects.
|
||||
|
|
@ -1151,7 +1185,7 @@ Requires: %{name}-montecarlo-eg%{?_isa} = %{version}-%{release}
|
|||
|
||||
%description montecarlo-pythia8
|
||||
This package contains the Pythia version 8 plug-in for ROOT. This
|
||||
package provide the ROOT user with transparent interface to the Pythia
|
||||
package provides the ROOT user with transparent interface to the Pythia
|
||||
(version 8) event generators for hadronic interactions. If the term
|
||||
"hadronic" does not ring any bells, this package is not for you.
|
||||
|
||||
|
|
@ -2013,6 +2047,16 @@ This package contains utility functions for ntuples.
|
|||
%if %{?rhel}%{!?rhel:0} == 8
|
||||
%patch -P 16 -p1
|
||||
%endif
|
||||
%patch -P 17 -p1
|
||||
%patch -P 18 -p1
|
||||
%patch -P 19 -p1
|
||||
%patch -P 20 -p1
|
||||
%patch -P 21 -p1
|
||||
%patch -P 22 -p1
|
||||
%patch -P 23 -p1
|
||||
%patch -P 24 -p1
|
||||
%patch -P 25 -p1
|
||||
%patch -P 26 -p1
|
||||
|
||||
# Remove bundled sources in order to be sure they are not used
|
||||
# * afterimage
|
||||
|
|
@ -2021,19 +2065,14 @@ rm -rf graf2d/asimage/src/libAfterImage
|
|||
rm -rf graf3d/ftgl/src graf3d/ftgl/inc
|
||||
# * freetype
|
||||
rm -rf graf2d/freetype/src
|
||||
# * davix, glew, lz4, nlohmann, openssl, pcre, tbb, xxhash, zlib, zstd
|
||||
rm -rf builtins/davix
|
||||
# * glew, lz4, nlohmann, pcre, xxhash, zlib, zstd
|
||||
rm -rf builtins/glew
|
||||
rm -rf builtins/lz4
|
||||
%if ! %{bundlejson}
|
||||
rm -rf builtins/nlohmann
|
||||
%endif
|
||||
rm -rf builtins/openssl
|
||||
rm -rf builtins/pcre
|
||||
rm -rf builtins/tbb
|
||||
rm -rf builtins/xrootd
|
||||
rm -rf builtins/xxhash
|
||||
rm -rf builtins/zeromq
|
||||
rm -rf builtins/zlib
|
||||
rm -rf builtins/zstd
|
||||
# * lzma
|
||||
|
|
@ -2293,24 +2332,28 @@ mv %{buildroot}%{python3_sitearch}/DistRDF %{buildroot}%{python3_sitelib}
|
|||
%endif
|
||||
fi
|
||||
|
||||
# Create .egg-info files so that rpm auto-generates provides
|
||||
# Create .dist-info files so that rpm auto-generates provides
|
||||
mkdir %{buildroot}%{python3_sitearch}/ROOT-%{version}.dist-info
|
||||
echo 'Name: ROOT' > \
|
||||
%{buildroot}%{python3_sitearch}/ROOT-%{version}.egg-info
|
||||
%{buildroot}%{python3_sitearch}/ROOT-%{version}.dist-info/METADATA
|
||||
echo 'Version: %{version}' >> \
|
||||
%{buildroot}%{python3_sitearch}/ROOT-%{version}.egg-info
|
||||
%{buildroot}%{python3_sitearch}/ROOT-%{version}.dist-info/METADATA
|
||||
mkdir %{buildroot}%{python3_sitearch}/JupyROOT-%{version}.dist-info
|
||||
echo 'Name: JupyROOT' > \
|
||||
%{buildroot}%{python3_sitearch}/JupyROOT-%{version}.egg-info
|
||||
%{buildroot}%{python3_sitearch}/JupyROOT-%{version}.dist-info/METADATA
|
||||
echo 'Version: %{version}' >> \
|
||||
%{buildroot}%{python3_sitearch}/JupyROOT-%{version}.egg-info
|
||||
%{buildroot}%{python3_sitearch}/JupyROOT-%{version}.dist-info/METADATA
|
||||
mkdir %{buildroot}%{python3_sitelib}/JsMVA-%{version}.dist-info
|
||||
echo 'Name: JsMVA' > \
|
||||
%{buildroot}%{python3_sitelib}/JsMVA-%{version}.egg-info
|
||||
%{buildroot}%{python3_sitelib}/JsMVA-%{version}.dist-info/METADATA
|
||||
echo 'Version: %{version}' >> \
|
||||
%{buildroot}%{python3_sitelib}/JsMVA-%{version}.egg-info
|
||||
%{buildroot}%{python3_sitelib}/JsMVA-%{version}.dist-info/METADATA
|
||||
%if %{distrdf}
|
||||
mkdir %{buildroot}%{python3_sitelib}/DistRDF-%{version}.dist-info
|
||||
echo 'Name: DistRDF' > \
|
||||
%{buildroot}%{python3_sitelib}/DistRDF-%{version}.egg-info
|
||||
%{buildroot}%{python3_sitelib}/DistRDF-%{version}.dist-info/METADATA
|
||||
echo 'Version: %{version}' >> \
|
||||
%{buildroot}%{python3_sitelib}/DistRDF-%{version}.egg-info
|
||||
%{buildroot}%{python3_sitelib}/DistRDF-%{version}.dist-info/METADATA
|
||||
%endif
|
||||
|
||||
# Put jupyter stuff in the right places
|
||||
|
|
@ -2395,6 +2438,7 @@ rm TFile/P050_TGFALFile.C
|
|||
rm TGLManager/P020_TGWin32GLManager.C
|
||||
rm TGLManager/P030_TGOSXGLManager.C
|
||||
rm TProofMgr/P010_TXProofMgr.C
|
||||
rm TProofMonSender/P010_TProofMonSenderML.C
|
||||
rm TProofServ/P010_TXProofServ.C
|
||||
rm TSlave/P010_TXSlave.C
|
||||
rm TSQLServer/P040_TOracleServer.C
|
||||
|
|
@ -2604,6 +2648,14 @@ tutorial-pyroot-pyroot004_NumbaDeclare-py|\
|
|||
pyunittests-pyroot-numbadeclare|\
|
||||
test-webgui-ping"
|
||||
|
||||
%if %{?fedora}%{!?fedora:0} >= 41
|
||||
# - pyunittests-pyroot-pyz-ttree-setbranchaddress
|
||||
# Segfault with Python 3.13:
|
||||
# https://github.com/root-project/root/issues/15799
|
||||
excluded="${excluded}|\
|
||||
pyunittests-pyroot-pyz-ttree-setbranchaddress"
|
||||
%endif
|
||||
|
||||
%if ! %{pandas}
|
||||
# - test-import-pandas
|
||||
# - tutorial-dataframe-df026_AsNumpyArrays-py
|
||||
|
|
@ -3016,7 +3068,7 @@ fi
|
|||
%{python3_sitearch}/cppyy
|
||||
%{python3_sitearch}/cppyy_backend
|
||||
%{python3_sitearch}/ROOT
|
||||
%{python3_sitearch}/ROOT-*.egg-info
|
||||
%{python3_sitearch}/ROOT-*.dist-info
|
||||
%{python3_sitearch}/libcppyy%{python3_version_uscore}.so
|
||||
%{python3_sitearch}/libcppyy_backend%{python3_version_uscore}.so
|
||||
%{python3_sitearch}/libROOTPythonizations%{python3_version_uscore}%{python3_ext_suffix}
|
||||
|
|
@ -3026,19 +3078,19 @@ fi
|
|||
|
||||
%files -n python%{python3_pkgversion}-jupyroot
|
||||
%{python3_sitearch}/JupyROOT
|
||||
%{python3_sitearch}/JupyROOT-*.egg-info
|
||||
%{python3_sitearch}/JupyROOT-*.dist-info
|
||||
%{python3_sitearch}/libJupyROOT%{python3_version_uscore}%{python3_ext_suffix}
|
||||
%{_datadir}/jupyter/kernels/python%{python3_pkgversion}-jupyroot
|
||||
%doc bindings/jupyroot/README.md
|
||||
|
||||
%files -n python%{python3_pkgversion}-jsmva
|
||||
%{python3_sitelib}/JsMVA
|
||||
%{python3_sitelib}/JsMVA-*.egg-info
|
||||
%{python3_sitelib}/JsMVA-*.dist-info
|
||||
|
||||
%if %{distrdf}
|
||||
%files -n python%{python3_pkgversion}-distrdf
|
||||
%{python3_sitelib}/DistRDF
|
||||
%{python3_sitelib}/DistRDF-*.egg-info
|
||||
%{python3_sitelib}/DistRDF-*.dist-info
|
||||
%endif
|
||||
|
||||
%files r -f includelist-bindings-r
|
||||
|
|
@ -3433,7 +3485,6 @@ fi
|
|||
%{_libdir}/%{name}/libProofDraw_rdict.pcm
|
||||
%{_libdir}/%{name}/libProofPlayer.*
|
||||
%{_libdir}/%{name}/libProofPlayer_rdict.pcm
|
||||
%{_datadir}/%{name}/plugins/TProofMonSender/P010_TProofMonSenderML.C
|
||||
%{_datadir}/%{name}/plugins/TProofMonSender/P020_TProofMonSenderSQL.C
|
||||
%{_datadir}/%{name}/plugins/TVirtualProofPlayer/P010_TProofPlayer.C
|
||||
%{_datadir}/%{name}/plugins/TVirtualProofPlayer/P020_TProofPlayerRemote.C
|
||||
|
|
@ -3554,7 +3605,10 @@ fi
|
|||
%dir %{_includedir}/%{name}/TMVA/DNN/CNN
|
||||
%dir %{_includedir}/%{name}/TMVA/DNN/RNN
|
||||
%license tmva/doc/LICENSE
|
||||
%exclude %{_includedir}/%{name}/TMVA/RBatchGenerator.hxx
|
||||
%exclude %{_includedir}/%{name}/TMVA/RBatchLoader.hxx
|
||||
%exclude %{_includedir}/%{name}/TMVA/RBDT.hxx
|
||||
%exclude %{_includedir}/%{name}/TMVA/RChunkLoader.hxx
|
||||
%exclude %{_includedir}/%{name}/TMVA/RInferenceUtils.hxx
|
||||
%exclude %{_includedir}/%{name}/TMVA/RReader.hxx
|
||||
%exclude %{_includedir}/%{name}/TMVA/RSofieReader.hxx
|
||||
|
|
@ -3571,7 +3625,10 @@ fi
|
|||
%{_libdir}/%{name}/libTMVAUtils_rdict.pcm
|
||||
%dir %{_includedir}/%{name}/TMVA
|
||||
%dir %{_includedir}/%{name}/TMVA/TreeInference
|
||||
%{_includedir}/%{name}/TMVA/RBatchGenerator.hxx
|
||||
%{_includedir}/%{name}/TMVA/RBatchLoader.hxx
|
||||
%{_includedir}/%{name}/TMVA/RBDT.hxx
|
||||
%{_includedir}/%{name}/TMVA/RChunkLoader.hxx
|
||||
%{_includedir}/%{name}/TMVA/RInferenceUtils.hxx
|
||||
%{_includedir}/%{name}/TMVA/RReader.hxx
|
||||
%{_includedir}/%{name}/TMVA/RSofieReader.hxx
|
||||
|
|
@ -3744,6 +3801,14 @@ fi
|
|||
%endif
|
||||
|
||||
%changelog
|
||||
* Sat Apr 19 2025 Iñaki Úcar <iucar@fedoraproject.org> - 6.30.08-2
|
||||
- R-maint-sig mass rebuild
|
||||
|
||||
* Mon Jul 22 2024 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.30.08-1
|
||||
- Update to 6.30.08
|
||||
- Fixes for TUri class (PCRE2 compatibility)
|
||||
- Update ROOT's R interface for Rcpp 1.0.13
|
||||
|
||||
* Wed May 15 2024 Mattias Ellert <mattias.ellert@physics.uu.se> - 6.30.06-5
|
||||
- Rebuilt for libarrow.so.1601
|
||||
- Improved fontconfig support
|
||||
|
|
|
|||
2
sources
2
sources
|
|
@ -1,2 +1,2 @@
|
|||
SHA512 (root-6.30.06.tar.xz) = 10309321a8e803f1ea2019a4d8ddde6220b052ddfa1ed7dedd432201db5917da748e944b2323794317251fd0d70048b276ad7bed6e3fcd84835de7be88b4c420
|
||||
SHA512 (root-6.30.08.tar.xz) = a0cded2407c84553b5226cc3032a3e6c6aad1db4cb543c22c4e6f129632047e6edee78bd9fd03835ff6801b1e2c0d109d45a2af4884e48d95d1669915baf4aa2
|
||||
SHA512 (root-testfiles.tar.xz) = 945aef1a0cf5af672d4ab84b0ac00b76118e93008ff72447658ee82d9e955a1540af3ff7126e701418872f1d91b92ee96d4985840a519036c42732023a13f00f
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue