Bug 2345587

Summary: python-blosc2-3.2.0 is available
Product: [Fedora] Fedora Reporter: Upstream Release Monitoring <upstream-release-monitoring>
Component: python-blosc2Assignee: Zbigniew Jędrzejewski-Szmek <zbyszek>
Status: CLOSED ERRATA QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: code, kkeithle, python-packagers-sig, zbyszek
Target Milestone: ---Keywords: FutureFeature, Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-blosc2-3.1.1-1.fc43 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-02-27 13:50:50 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2344885    

Description Upstream Release Monitoring 2025-02-13 19:02:10 UTC
Releases retrieved: 3.1.0
Upstream release that is considered latest: 3.1.0
Current version/release in rawhide: 2.7.1-3.fc42
URL: https://github.com/Blosc/python-blosc2

Please consult the package updates policy before you issue an update to a stable branch: https://docs.fedoraproject.org/en-US/fesco/Updates_Policy/


More information about the service that created this bug can be found at: https://docs.fedoraproject.org/en-US/package-maintainers/Upstream_Release_Monitoring


Please keep in mind that with any upstream change, there may also be packaging changes that need to be made. Specifically, please remember that it is your responsibility to review the new version to ensure that the licensing is still correct and that no non-free or legally problematic items have been added upstream.


Based on the information from Anitya: https://release-monitoring.org/project/199083/


To change the monitoring settings for the project, please visit:
https://src.fedoraproject.org/rpms/python-blosc2

Comment 1 Upstream Release Monitoring 2025-02-14 13:15:05 UTC
Releases retrieved: 3.1.1
Upstream release that is considered latest: 3.1.1
Current version/release in rawhide: 2.7.1-3.fc42
URL: https://github.com/Blosc/python-blosc2

Please consult the package updates policy before you issue an update to a stable branch: https://docs.fedoraproject.org/en-US/fesco/Updates_Policy/


More information about the service that created this bug can be found at: https://docs.fedoraproject.org/en-US/package-maintainers/Upstream_Release_Monitoring


Please keep in mind that with any upstream change, there may also be packaging changes that need to be made. Specifically, please remember that it is your responsibility to review the new version to ensure that the licensing is still correct and that no non-free or legally problematic items have been added upstream.


Based on the information from Anitya: https://release-monitoring.org/project/199083/


To change the monitoring settings for the project, please visit:
https://src.fedoraproject.org/rpms/python-blosc2

Comment 2 Kaleb KEITHLEY 2025-02-25 14:20:17 UTC
Are you okay with updating to 3.1.1 in rawhide? Then I can use 3.1.1 in epel10? (Which can use python-scikit-build-core, already in epel10, instead of python-scikit-build.)

Comment 3 Upstream Release Monitoring 2025-02-27 12:19:17 UTC
Releases retrieved: 3.2.0
Upstream release that is considered latest: 3.2.0
Current version/release in rawhide: 2.7.1-3.fc42
URL: https://github.com/Blosc/python-blosc2

Please consult the package updates policy before you issue an update to a stable branch: https://docs.fedoraproject.org/en-US/fesco/Updates_Policy/


More information about the service that created this bug can be found at: https://docs.fedoraproject.org/en-US/package-maintainers/Upstream_Release_Monitoring


Please keep in mind that with any upstream change, there may also be packaging changes that need to be made. Specifically, please remember that it is your responsibility to review the new version to ensure that the licensing is still correct and that no non-free or legally problematic items have been added upstream.


Based on the information from Anitya: https://release-monitoring.org/project/199083/


To change the monitoring settings for the project, please visit:
https://src.fedoraproject.org/rpms/python-blosc2

Comment 4 Zbigniew Jędrzejewski-Szmek 2025-02-27 13:21:52 UTC
lecris provided a PR to update to 3.1, so I'll push that to rawhide.

I tried to update to 3.2.0 too, but there seems to be some type confusion
and the build fails (const char* vs. char *).

Comment 5 Fedora Update System 2025-02-27 13:42:51 UTC
FEDORA-2025-59342052e4 (python-blosc2-3.1.1-1.fc43) has been submitted as an update to Fedora 43.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-59342052e4

Comment 6 Fedora Update System 2025-02-27 13:50:50 UTC
FEDORA-2025-59342052e4 (python-blosc2-3.1.1-1.fc43) has been pushed to the Fedora 43 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 7 Ben Beasley 2025-02-27 19:21:35 UTC
(In reply to Zbigniew Jędrzejewski-Szmek from comment #4)
> I tried to update to 3.2.0 too, but there seems to be some type confusion
> and the build fails (const char* vs. char *).

I gave it a quick try myself. It looks like the const-related diagnostics are “merely” warnings:

  In file included from /usr/lib64/python3.13/site-packages/numpy/_core/include/numpy/ndarraytypes.h:1913,
                   from /usr/lib64/python3.13/site-packages/numpy/_core/include/numpy/ndarrayobject.h:12,
                   from /usr/lib64/python3.13/site-packages/numpy/_core/include/numpy/arrayobject.h:5,
                   from /builddir/build/BUILD/python-blosc2-3.2.0-build/python-blosc2-3.2.0/.pyproject-builddir/tmpah1npr5j/build/blosc2_ext.c:1248:
  /usr/lib64/python3.13/site-packages/numpy/_core/include/numpy/npy_1_7_deprecated_api.h:17:2: warning: #warning "Using deprecated NumPy API, disable it with " "#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
     17 | #warning "Using deprecated NumPy API, disable it with " \
        |  ^~~~~~~
  /builddir/build/BUILD/python-blosc2-3.2.0-build/python-blosc2-3.2.0/.pyproject-builddir/tmpah1npr5j/build/blosc2_ext.c: In function ‘__pyx_pf_6blosc2_10blosc2_ext_6SChunk_22insert_chunk’:
  /builddir/build/BUILD/python-blosc2-3.2.0-build/python-blosc2-3.2.0/.pyproject-builddir/tmpah1npr5j/build/blosc2_ext.c:38131:77: warning: passing argument 3 of ‘blosc2_schunk_insert_chunk’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
  38131 |   __pyx_v_rc = blosc2_schunk_insert_chunk(__pyx_v_self->schunk, __pyx_t_5, (&(*((uint8_t const  *) ( /* dim=0 */ (__pyx_v_typed_view_chunk.data + __pyx_t_6 * __pyx_v_typed_view_chunk.strides[0]) )))), 1);
        |                                                                            ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  In file included from /builddir/build/BUILD/python-blosc2-3.2.0-build/python-blosc2-3.2.0/.pyproject-builddir/tmpah1npr5j/build/blosc2_ext.c:1253:
  /usr/include/blosc2.h:1959:97: note: expected ‘uint8_t *’ {aka ‘unsigned char *’} but argument is of type ‘const uint8_t *’ {aka ‘const unsigned char *’}
   1959 | BLOSC_EXPORT int64_t blosc2_schunk_insert_chunk(blosc2_schunk *schunk, int64_t nchunk, uint8_t *chunk, bool copy);
        |                                                                                        ~~~~~~~~~^~~~~
  /builddir/build/BUILD/python-blosc2-3.2.0-build/python-blosc2-3.2.0/.pyproject-builddir/tmpah1npr5j/build/blosc2_ext.c: In function ‘__pyx_pf_6blosc2_10blosc2_ext_6SChunk_26update_chunk’:
  /builddir/build/BUILD/python-blosc2-3.2.0-build/python-blosc2-3.2.0/.pyproject-builddir/tmpah1npr5j/build/blosc2_ext.c:38885:77: warning: passing argument 3 of ‘blosc2_schunk_update_chunk’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
  38885 |   __pyx_v_rc = blosc2_schunk_update_chunk(__pyx_v_self->schunk, __pyx_t_5, (&(*((uint8_t const  *) ( /* dim=0 */ (__pyx_v_typed_view_chunk.data + __pyx_t_6 * __pyx_v_typed_view_chunk.strides[0]) )))), 1);
        |                                                                            ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /usr/include/blosc2.h:1945:97: note: expected ‘uint8_t *’ {aka ‘unsigned char *’} but argument is of type ‘const uint8_t *’ {aka ‘const unsigned char *’}
   1945 | BLOSC_EXPORT int64_t blosc2_schunk_update_chunk(blosc2_schunk *schunk, int64_t nchunk, uint8_t *chunk, bool copy);
        |                                                                                        ~~~~~~~~~^~~~~

The real errors are:

  /builddir/build/BUILD/python-blosc2-3.2.0-build/python-blosc2-3.2.0/.pyproject-builddir/tmpah1npr5j/build/blosc2_ext.c: In function ‘__pyx_f_6blosc2_10blosc2_ext_aux_udf’:
  /builddir/build/BUILD/python-blosc2-3.2.0-build/python-blosc2-3.2.0/.pyproject-builddir/tmpah1npr5j/build/blosc2_ext.c:46386:18: error: implicit declaration of function ‘b2nd_copy_buffer2’; did you mean ‘b2nd_copy_buffer’? [-Wimplicit-function-declaration]
  46386 |     __pyx_v_rc = b2nd_copy_buffer2(__pyx_v_udata->array->ndim, __pyx_v_typesize, __pyx_v_buf->buf, __pyx_v_slice_shape, __pyx_v_start, __pyx_v_slice_shape, __pyx_v_params_output, __pyx_v_blockshape_int64, __pyx_v_start);
        |                  ^~~~~~~~~~~~~~~~~
        |                  b2nd_copy_buffer
  /builddir/build/BUILD/python-blosc2-3.2.0-build/python-blosc2-3.2.0/.pyproject-builddir/tmpah1npr5j/build/blosc2_ext.c: In function ‘__pyx_pymod_exec_blosc2_ext’:
  /builddir/build/BUILD/python-blosc2-3.2.0-build/python-blosc2-3.2.0/.pyproject-builddir/tmpah1npr5j/build/blosc2_ext.c:73983:48: error: ‘BLOSC2_MAXTYPESIZE’ undeclared (first use in this function); did you mean ‘BLOSC_MAX_TYPESIZE’?
  73983 |   __pyx_t_7 = __Pyx_PyInt_From___pyx_anon_enum(BLOSC2_MAXTYPESIZE); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 540, __pyx_L1_error)
        |                                                ^~~~~~~~~~~~~~~~~~
        |                                                BLOSC_MAX_TYPESIZE
  /builddir/build/BUILD/python-blosc2-3.2.0-build/python-blosc2-3.2.0/.pyproject-builddir/tmpah1npr5j/build/blosc2_ext.c:73983:48: note: each undeclared identifier is reported only once for each function it appears in


These are due to API changes from blosc2 2.15.2 to 2.17.0. Compare

https://github.com/Blosc/c-blosc2/compare/v2.15.2...v2.17.0

and

https://github.com/Blosc/python-blosc2/compare/v3.1.1...v3.2.0

Assuming those errors are the only problems, you’ll simply have to update blosc2 to 2.17.0, bug 2345179, at the same time you ship python-blosc2 3.2.0.