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)
