Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-tables for openSUSE:Factory 
checked in at 2026-09-14 16:41:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-tables (Old)
 and      /work/SRC/openSUSE:Factory/.python-tables.new.1265 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-tables"

Mon Sep 14 16:41:00 2026 rev:30 rq:1377908 version:3.11.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-tables/python-tables.changes      
2025-11-25 15:55:44.997824334 +0100
+++ /work/SRC/openSUSE:Factory/.python-tables.new.1265/python-tables.changes    
2026-09-14 16:41:02.254511552 +0200
@@ -1,0 +2,17 @@
+Mon Sep 14 12:35:16 UTC 2026 - Nico Krapp <[email protected]>
+
+- Update to 3.11.1:
+  * Fix blosc2 loading
+- Update to 3.11.0:
+  * Add support for Python 3.14
+  * Set Cython "freethreading_compatible" directive. Please refer to
+    https://www.pytables.org/cookbook/threading.html for details about
+    threading support
+  * Python wheel packages are now generated exploiting limited API and
+    stable ABI (abi3)
+- drop support-numexpr-2.13.0.patch, merged upstream
+- add blosc2-3-compat.patch to support blosc2 >= 3.0
+- disable 32-bit builds as blosc2 doesn't support it anymore 
+- use libalternatives on modern distros
+
+-------------------------------------------------------------------

Old:
----
  support-numexpr-2.13.0.patch
  tables-3.10.2.tar.gz

New:
----
  blosc2-3-compat.patch
  tables-3.11.1.tar.gz

----------(Old B)----------
  Old:    stable ABI (abi3)
- drop support-numexpr-2.13.0.patch, merged upstream
- add blosc2-3-compat.patch to support blosc2 >= 3.0
----------(Old E)----------

----------(New B)----------
  New:- drop support-numexpr-2.13.0.patch, merged upstream
- add blosc2-3-compat.patch to support blosc2 >= 3.0
- disable 32-bit builds as blosc2 doesn't support it anymore 
----------(New E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-tables.spec ++++++
--- /var/tmp/diff_new_pack.Auk9kE/_old  2026-09-14 16:41:03.995584586 +0200
+++ /var/tmp/diff_new_pack.Auk9kE/_new  2026-09-14 16:41:03.997584670 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package python-tables
 #
-# Copyright (c) 2025 SUSE LLC and contributors
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,6 +17,13 @@
 
 
 %{?sle15_python_module_pythons}
+
+%if 0%{?suse_version} > 1500
+%bcond_without libalternatives
+%else
+%bcond_with libalternatives
+%endif
+
 %global flavor @BUILD_FLAVOR@%{nil}
 %if "%{flavor}" == ""
 %define psuffix %{nil}
@@ -44,14 +51,15 @@
 %endif
 
 Name:           python-tables%{psuffix}
-Version:        3.10.2
+Version:        3.11.1
 Release:        0
 Summary:        Hierarchical datasets for Python
 License:        BSD-3-Clause
 URL:            https://github.com/PyTables/PyTables
 Source0:        
https://files.pythonhosted.org/packages/source/t/tables/tables-%{version}.tar.gz
-# PATCH-FIX-UPSTREAM gh#PyTables/PyTables#1256
-Patch0:         support-numexpr-2.13.0.patch
+# TODO: devendor hdf5-blosc2
+# PATCH-FIX-UPSTREAM blosc2-3-compat.patch 
https://github.com/Blosc/HDF5-Blosc2/pull/3
+Patch0:         blosc2-3-compat.patch
 BuildRequires:  %{python_module base >= 3.10}
 BuildRequires:  python-rpm-macros
 %if ! %{with test}
@@ -85,10 +93,17 @@
 Requires:       python-typing-extensions >= 4.4.0
 # boo#1196682
 %requires_eq    hdf5
+%if %{with libalternatives}
+Requires:       alts
+BuildRequires:  alts
+%else
 Requires(post): update-alternatives
 Requires(postun): update-alternatives
+%endif
 Recommends:     bzip2
 Recommends:     lzo
+# Don't build 32-bit because of blosc2
+ExcludeArch:    %arm %ix86
 %python_subpackages
 
 %description
@@ -130,17 +145,15 @@
 popd
 %endif
 
+%pre
+# If libalternatives is used: Removing old update-alternatives entries.
+%python_libalternatives_reset_alternative pttree
+
 %post
-%python_install_alternative pttree
-%python_install_alternative ptrepack
-%python_install_alternative ptdump
-%python_install_alternative pt2to3
+%python_install_alternative pttree ptrepack ptdump pt2to3
 
 %postun
 %python_uninstall_alternative pttree
-%python_uninstall_alternative ptrepack
-%python_uninstall_alternative ptdump
-%python_uninstall_alternative pt2to3
 
 %if !%{with test}
 %files %{python_files}

++++++ blosc2-3-compat.patch ++++++
>From 562c54c5064d01ce1824c7f4c7c094ce43d7e0a3 Mon Sep 17 00:00:00 2001
From: Antonio Valentino <[email protected]>
Date: Sat, 9 May 2026 17:50:41 +0200
Subject: [PATCH] FIx compatibility with c-blosc2 v3.x

---
 hdf5-blosc2/src/blosc2_filter.c | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/hdf5-blosc2/src/blosc2_filter.c b/hdf5-blosc2/src/blosc2_filter.c
index 03bf789..ec90984 100644
--- a/hdf5-blosc2/src/blosc2_filter.c
+++ b/hdf5-blosc2/src/blosc2_filter.c
@@ -38,14 +38,14 @@
  * - 4: compression level
  * - 5: shuffle method
  * - 6: compressor code
- * - 7: chunk rank (number of dimensions) (present if 1 < rank <= 
BLOSC2_MAX_DIM, for B2ND)
+ * - 7: chunk rank (number of dimensions) (present if 1 < rank <= 
B2ND_MAX_DIM, for B2ND)
  * - 8 + i: length of chunk dimension i (0 <= i < rank)
  *
  * If a value is specified, all values before it must be specified too.
  *
  * If the chunk rank is specified, chunk dimensions must follow.
  */
-#define MAX_FILTER_VALUES (8 + BLOSC2_MAX_DIM)
+#define MAX_FILTER_VALUES (8 + B2ND_MAX_DIM)
 /* Compression level default */
 #define DEFAULT_CLEVEL 5
 /* Shuffle default */
@@ -95,7 +95,7 @@ int register_blosc2(char **version, char **date){
 
     3. Compute the chunk size in bytes and store it in slot 3.
 
-    4. If 1 < rank <= BLOSC2_MAX_DIM, store it in slot 7, and chunk dimensions 
in the following slots.
+    4. If 1 < rank <= B2ND_MAX_DIM, store it in slot 7, and chunk dimensions 
in the following slots.
 */
 herr_t blosc2_set_local(hid_t dcpl, hid_t type, hid_t space) {
 
@@ -157,7 +157,7 @@ herr_t blosc2_set_local(hid_t dcpl, hid_t type, hid_t 
space) {
   fprintf(stderr, "Blosc2: Computed buffer size %d\n", bufsize);
 #endif
 
-  if (1 < ndim && ndim <= BLOSC2_MAX_DIM) {
+  if (1 < ndim && ndim <= B2ND_MAX_DIM) {
     if (nelements < 5) { values[4] = DEFAULT_CLEVEL; }
     if (nelements < 6) { values[5] = DEFAULT_SHUFFLE; }
     if (nelements < 7) { values[6] = DEFAULT_COMPCODE; }
@@ -172,7 +172,7 @@ herr_t blosc2_set_local(hid_t dcpl, hid_t type, hid_t 
space) {
     /* The user may be expecting more efficient storage than we can currently 
provide,
      * so convey some information when tracing. */
     BLOSC_TRACE_WARNING("Chunk rank %d exceeds B2ND build limit %d, "
-                        "using plain Blosc2 instead", ndim, BLOSC2_MAX_DIM);
+                        "using plain Blosc2 instead", ndim, B2ND_MAX_DIM);
   }
 
   r = H5Pmodify_filter(dcpl, FILTER_BLOSC2, flags, nelements, values);
@@ -297,7 +297,7 @@ size_t blosc2_filter_function(unsigned flags, size_t 
cd_nelmts,
 
   /* Filter params that are only set for B2ND */
   int ndim = -1;
-  int32_t chunkshape[BLOSC2_MAX_DIM];
+  int32_t chunkshape[B2ND_MAX_DIM];
   size_t chunksize = typesize;
   if (cd_nelmts >= 8) {
     /* Get chunk shape for B2ND */
@@ -308,10 +308,10 @@ size_t blosc2_filter_function(unsigned flags, size_t 
cd_nelmts,
                ndim);
       goto failed;
     }
-    if (ndim > BLOSC2_MAX_DIM) {
+    if (ndim > B2ND_MAX_DIM) {
       PUSH_ERR("blosc2_filter", H5E_CALLBACK,
                "Chunk rank %d (filter value) exceeds B2ND build limit %d",
-               ndim, BLOSC2_MAX_DIM);
+               ndim, B2ND_MAX_DIM);
       goto failed;
     }
     if (cd_nelmts < (size_t)(8 + ndim)) {
@@ -391,12 +391,12 @@ size_t blosc2_filter_function(unsigned flags, size_t 
cd_nelmts,
         }
         blocksize = sugg_blocksize;
       }
-      int32_t blockdims[BLOSC2_MAX_DIM];
+      int32_t blockdims[B2ND_MAX_DIM];
       cparams.blocksize = compute_b2nd_block_shape(blocksize, typesize,
                                                    ndim, chunkshape,
                                                    blockdims);
 
-      int64_t chunkshape_l[BLOSC2_MAX_DIM];
+      int64_t chunkshape_l[B2ND_MAX_DIM];
       for (int i = 0; i < ndim; i++) {
         chunkshape_l[i] = chunkshape[i];
       }
@@ -504,7 +504,7 @@ size_t blosc2_filter_function(unsigned flags, size_t 
cd_nelmts,
                  "B2ND array rank (%hhd) != filter rank (%d)", array->ndim, 
ndim);
         goto b2nd_decomp_out;
       }
-      int64_t start[BLOSC2_MAX_DIM], stop[BLOSC2_MAX_DIM], size = typesize;
+      int64_t start[B2ND_MAX_DIM], stop[B2ND_MAX_DIM], size = typesize;
       for (int i = 0; i < array->ndim; i++) {
         start[i] = 0;
         stop[i] = array->shape[i];

++++++ tables-3.10.2.tar.gz -> tables-3.11.1.tar.gz ++++++
++++ 3896 lines of diff (skipped)

Reply via email to