Bug#1114708: pycollada: FTBFS with NumPy 2.3

roehling at debian.org roehling at debian.org
Mon Sep 8 20:44:25 BST 2025


Source: pycollada
Version: 0.8-1
Severity: important
User: debian-python at lists.debian.org
Usertags: numpy2.3
Tags: ftbfs, forky, sid

Dear maintainer,

During a test rebuild for NumPy 2.3, pycollada failed to rebuild.

Log Summary:
-------------------------------------------------------------------------------
[...]
test_perspective_camera_saving (collada.tests.test_camera.TestCamera.test_perspective_camera_saving) ... ok
test_perspective_camera_xfov_yfov_aspect_ratio (collada.tests.test_camera.TestCamera.test_perspective_camera_xfov_yfov_aspect_ratio) ... ok
test_collada_attribute_replace (collada.tests.test_collada.TestCollada.test_collada_attribute_replace) ... ok
test_collada_duck_poly (collada.tests.test_collada.TestCollada.test_collada_duck_poly) ... ok
test_collada_duck_tris (collada.tests.test_collada.TestCollada.test_collada_duck_tris) ... ok
test_collada_duck_zip (collada.tests.test_collada.TestCollada.test_collada_duck_zip) ... ok
test_collada_empty_triangles (collada.tests.test_collada.TestCollada.test_collada_empty_triangles) ... ok
test_collada_empty_triangles_with_multiple_ns (collada.tests.test_collada.TestCollada.test_collada_empty_triangles_with_multiple_ns) ... ok
test_collada_saving (collada.tests.test_collada.TestCollada.test_collada_saving) ... ok
test_collada_trifans (collada.tests.test_collada.TestCollada.test_collada_trifans) ... ok
test_collada_tristrips (collada.tests.test_collada.TestCollada.test_collada_tristrips) ... ok
test_namespace (collada.tests.test_collada.TestCollada.test_namespace)
Test loading a file with a different namespace. ... ok
test_empty_geometry_saving (collada.tests.test_geometry.TestGeometry.test_empty_geometry_saving) ... ok
test_geometry_lineset_adding_with_material (collada.tests.test_geometry.TestGeometry.test_geometry_lineset_adding_with_material) ... ok
test_geometry_lineset_adding_without_material (collada.tests.test_geometry.TestGeometry.test_geometry_lineset_adding_without_material) ... ok
test_geometry_polygons_adding (collada.tests.test_geometry.TestGeometry.test_geometry_polygons_adding) ... ok
test_geometry_polylist_adding (collada.tests.test_geometry.TestGeometry.test_geometry_polylist_adding) ... ok
test_geometry_triangleset_adding (collada.tests.test_geometry.TestGeometry.test_geometry_triangleset_adding) ... ok
test_incomplete (collada.tests.test_ignore.TestColladaIgnore.test_incomplete) ... ok
test_malformed (collada.tests.test_ignore.TestColladaIgnore.test_malformed) ... ERROR
test_polylist_iterator_vert_normals (collada.tests.test_iteration.TestIteration.test_polylist_iterator_vert_normals) ... /usr/lib/python3/dist-packages/numpy/matrixlib/defmatrix.py:70: PendingDeprecationWarning: the matrix subclass is not the recommended way to represent matrices or deal with linear algebra (see https://docs.scipy.org/doc/numpy/user/numpy-for-matlab-users.html). Please adjust your code to use regular ndarray.
  return matrix(data, dtype=dtype, copy=False)
ok
test_triangle_iterator_vert_normals (collada.tests.test_iteration.TestIteration.test_triangle_iterator_vert_normals) ... ok
test_ambient_light_saving (collada.tests.test_light.TestLight.test_ambient_light_saving) ... ok
test_directional_light_saving (collada.tests.test_light.TestLight.test_directional_light_saving) ... ok
test_point_light_saving (collada.tests.test_light.TestLight.test_point_light_saving) ... ok
test_spot_light_saving (collada.tests.test_light.TestLight.test_spot_light_saving) ... ok
test_empty_lineset_saving (collada.tests.test_lineset.TestLineset.test_empty_lineset_saving) ... ok
test_lineset_construction (collada.tests.test_lineset.TestLineset.test_lineset_construction) ... ok
test_cimage_data_loading (collada.tests.test_material.TestMaterial.test_cimage_data_loading) ... /build/reproducible-path/pycollada-0.8/.pybuild/cpython3_3.13/build/collada/tests/test_material.py:108: ResourceWarning: unclosed file <_io.BufferedReader name='/build/reproducible-path/pycollada-0.8/.pybuild/cpython3_3.13/build/collada/tests/data/duckCM.tga'>
  texdata = open(texture_file_path, 'rb').read()
ResourceWarning: Enable tracemalloc to get the object allocation traceback
ok
test_cimage_saving (collada.tests.test_material.TestMaterial.test_cimage_saving) ... ok
test_effect_saving (collada.tests.test_material.TestMaterial.test_effect_saving) ... ok
test_effect_with_params (collada.tests.test_material.TestMaterial.test_effect_with_params) ... ok
test_map_saving (collada.tests.test_material.TestMaterial.test_map_saving) ... ok
test_material_saving (collada.tests.test_material.TestMaterial.test_material_saving) ... ok
test_rgbzero (collada.tests.test_material.TestMaterial.test_rgbzero) ... ok
test_sampler2d_saving (collada.tests.test_material.TestMaterial.test_sampler2d_saving) ... ok
test_surface_empty (collada.tests.test_material.TestMaterial.test_surface_empty) ... ok
test_surface_saving (collada.tests.test_material.TestMaterial.test_surface_saving) ... ok
test_scene_camera_node_saving (collada.tests.test_scene.TestScene.test_scene_camera_node_saving) ... ok
test_scene_geometry_node (collada.tests.test_scene.TestScene.test_scene_geometry_node) ... ok
test_scene_light_node_saving (collada.tests.test_scene.TestScene.test_scene_light_node_saving) ... ok
test_scene_lookat_node (collada.tests.test_scene.TestScene.test_scene_lookat_node) ... ok
test_scene_material_node (collada.tests.test_scene.TestScene.test_scene_material_node) ... ok
test_scene_matrix_node (collada.tests.test_scene.TestScene.test_scene_matrix_node) ... ok
test_scene_node_combos (collada.tests.test_scene.TestScene.test_scene_node_combos) ... ok
test_scene_node_saving (collada.tests.test_scene.TestScene.test_scene_node_saving) ... ok
test_scene_node_with_instances (collada.tests.test_scene.TestScene.test_scene_node_with_instances) ... ok
test_scene_rotate_node (collada.tests.test_scene.TestScene.test_scene_rotate_node) ... ok
test_scene_scale_node (collada.tests.test_scene.TestScene.test_scene_scale_node) ... ok
test_scene_translate_node (collada.tests.test_scene.TestScene.test_scene_translate_node) ... ok
test_scene_with_nodes (collada.tests.test_scene.TestScene.test_scene_with_nodes) ... ok
test_float_source_saving (collada.tests.test_source.TestSource.test_float_source_saving) ... ok
test_idref_source_saving (collada.tests.test_source.TestSource.test_idref_source_saving) ... ok
test_name_source_saving (collada.tests.test_source.TestSource.test_name_source_saving) ... ok

======================================================================
ERROR: test_malformed (collada.tests.test_ignore.TestColladaIgnore.test_malformed)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/build/reproducible-path/pycollada-0.8/.pybuild/cpython3_3.13/build/collada/tests/test_ignore.py", line 81, in test_malformed
    collada.Collada(f, ignore=[DaeMalformedError,
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                               DaeBrokenRefError])
                               ^^^^^^^^^^^^^^^^^^^
  File "/build/reproducible-path/pycollada-0.8/.pybuild/cpython3_3.13/build/collada/__init__.py", line 236, in __init__
    self._loadScenes()
    ~~~~~~~~~~~~~~~~^^
  File "/build/reproducible-path/pycollada-0.8/.pybuild/cpython3_3.13/build/collada/__init__.py", line 466, in _loadScenes
    S = scene.Scene.load(self, scenenode)
  File "/build/reproducible-path/pycollada-0.8/.pybuild/cpython3_3.13/build/collada/scene.py", line 954, in load
    N = loadNode(collada, nodenode, localscope)
  File "/build/reproducible-path/pycollada-0.8/.pybuild/cpython3_3.13/build/collada/scene.py", line 870, in loadNode
    return Node.load(collada, node, localscope)
           ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/build/reproducible-path/pycollada-0.8/.pybuild/cpython3_3.13/build/collada/scene.py", line 426, in load
    n = loadNode(collada, subnode, localscope)
  File "/build/reproducible-path/pycollada-0.8/.pybuild/cpython3_3.13/build/collada/scene.py", line 872, in loadNode
    return TranslateTransform.load(collada, node)
           ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
  File "/build/reproducible-path/pycollada-0.8/.pybuild/cpython3_3.13/build/collada/scene.py", line 118, in load
    floats = numpy.fromstring(node.text, dtype=numpy.float32, sep=' ')
ValueError: string or file could not be read to its end due to unmatched data

----------------------------------------------------------------------
Ran 58 tests in 0.613s

FAILED (errors=1)
E: pybuild pybuild:389: test: plugin distutils failed with: exit code=1: cd /build/reproducible-path/pycollada-0.8/.pybuild/cpython3_3.13/build; python3.13 -m unittest discover -v 
dh_auto_test: error: pybuild --test -i python{version} -p 3.13 returned exit code 13
make: *** [debian/rules:6: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2025-09-08T05:38:54Z

-------------------------------------------------------------------------------

The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here (for the next 30 days):
https://debusine.debian.net/debian/developers-roehling.numpy/artifact/2453692/

About the archive rebuild: The build was made on debusine.debian.net,
using sbuild.

You can find the build task here:
https://debusine.debian.net/debian/developers-roehling.numpy/work-request/163669/

If this is really a bug in one of the build-depends, please use
reassign and affects, so that this is still visible in the BTS web
page for this package.

Cheers
Timo



More information about the debian-science-maintainers mailing list