Source: python-numpy-groupies
Version: 0.10.2-1
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-20250414 ftbfs-trixie

Hi,

During a rebuild of all packages in testing (trixie), your package failed
to build on i386.


Relevant part (hopefully):
> make[1]: Entering directory 
> '/build/reproducible-path/python-numpy-groupies-0.10.2'
> pytest-3 -rls
> ============================= test session starts 
> ==============================
> platform linux -- Python 3.13.2, pytest-8.3.5, pluggy-1.5.0
> rootdir: /build/reproducible-path/python-numpy-groupies-0.10.2
> configfile: pyproject.toml
> plugins: typeguard-4.4.2
> collected 1117 items / 260 deselected / 857 selected
> 
> numpy_groupies/tests/test_compare.py ..............s..s...........s..s.. [  
> 4%]
> sssssss..................sssssssss...ssssss......sssssssssssssssssssssss [ 
> 12%]
> ssssssssssssssss....ssssssssssssssssssssssssssssssssssssssssssssssssssss [ 
> 20%]
> sssssssssssssssssssssssssssssssss...........................FF.......... [ 
> 29%]
> ......sss.....................FF.ss.ss.sss....                           [ 
> 34%]
> numpy_groupies/tests/test_generic.py .......................sss......... [ 
> 38%]
> ..............s.s.s....s...s......................................s....s [ 
> 47%]
> s..........ssssss..................ssssss...................sss......... [ 
> 55%]
> ..........sss.........sssssss...s.s..s.ss.s.s.......s...s..ss..s.sss...s [ 
> 63%]
> s..ss..ss..ss..................sssssssss...ssssss......sssssssssssssssss [ 
> 72%]
> ssssssssssssssssssssss.................................................. [ 
> 80%]
> ........................................................................ [ 
> 89%]
> ....sss..............................ssss..s..s..s.sssssssssssss........ [ 
> 97%]
> ................                                                         [ 
> 99%]
> numpy_groupies/tests/test_indices.py ss                                  [ 
> 99%]
> numpy_groupies/tests/test_utils.py ...                                   
> [100%]
> 
> =================================== FAILURES 
> ===================================
> __________________________ test_cmp[pandas/np-len-0] 
> ___________________________
> 
> aggregate_cmp = {'request': <SubRequest 'aggregate_cmp' for <Function 
> test_cmp[pandas/np-sum-0]>>, 'seed': 100, 'test_pair': 'pandas/n..., 'somea': 
> array([       nan, 0.        , 0.51545692, ..., 1.51932228, 0.        ,
>        0.87432034], shape=(20000,))}
> func = 'len', fill_value = 0, decimal = 10
> 
>     @pytest.mark.filterwarnings("ignore:numpy.ufunc size changed")
>     @pytest.mark.deselect_if(func=_deselect_purepy_nanfuncs)
>     @pytest.mark.parametrize("fill_value", [0, 1, np.nan])
>     @pytest.mark.parametrize("func", func_list, ids=lambda x: getattr(x, 
> "__name__", x))
>     def test_cmp(aggregate_cmp, func, fill_value, decimal=10):
>         is_nanfunc = "nan" in getattr(func, "__name__", func)
>         a = aggregate_cmp.nana if is_nanfunc else aggregate_cmp.a
>         try:
>             ref = aggregate_cmp.func_ref(aggregate_cmp.group_idx, a, 
> func=func, fill_value=fill_value)
>         except ValueError:
>             with pytest.raises(ValueError):
>                 aggregate_cmp.func(aggregate_cmp.group_idx, a, func=func, 
> fill_value=fill_value)
>         else:
>             try:
>                 res = aggregate_cmp.func(aggregate_cmp.group_idx, a, 
> func=func, fill_value=fill_value)
>             except ValueError:
>                 if np.isnan(fill_value) and 
> aggregate_cmp.test_pair.endswith("py"):
>                     pytest.skip(
>                         "pure python version uses lists and does not raise 
> ValueErrors when inserting nan into integers"
>                     )
>                 else:
>                     raise
>             if isinstance(ref, np.ndarray):
> >               assert res.dtype == ref.dtype
> E               AssertionError: assert dtype('int64') == dtype('int32')
> E                +  where dtype('int64') = array([20, 20, 20, 20, 20, 20, 20, 
> 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,\n       20, 20, 20, 20, 20, 20, 20, 
> 20, 20, ... 20, 20, 20, 20, 20, 20, 20, 20, 20,\n       20, 20, 20, 20, 20, 
> 20, 20, 20, 20, 20, 20, 20, 20, 20],\n      dtype=int64).dtype
> E                +  and   dtype('int32') = array([20, 20, 20, 20, 20, 20, 20, 
> 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,\n       20, 20, 20, 20, 20, 20, 20, 
> 20, 20, ...20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,\n       
> 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20]).dtype
> 
> numpy_groupies/tests/test_compare.py:122: AssertionError
> __________________________ test_cmp[pandas/np-len-1] 
> ___________________________
> 
> aggregate_cmp = {'request': <SubRequest 'aggregate_cmp' for <Function 
> test_cmp[pandas/np-sum-0]>>, 'seed': 100, 'test_pair': 'pandas/n..., 'somea': 
> array([       nan, 0.        , 0.51545692, ..., 1.51932228, 0.        ,
>        0.87432034], shape=(20000,))}
> func = 'len', fill_value = 1, decimal = 10
> 
>     @pytest.mark.filterwarnings("ignore:numpy.ufunc size changed")
>     @pytest.mark.deselect_if(func=_deselect_purepy_nanfuncs)
>     @pytest.mark.parametrize("fill_value", [0, 1, np.nan])
>     @pytest.mark.parametrize("func", func_list, ids=lambda x: getattr(x, 
> "__name__", x))
>     def test_cmp(aggregate_cmp, func, fill_value, decimal=10):
>         is_nanfunc = "nan" in getattr(func, "__name__", func)
>         a = aggregate_cmp.nana if is_nanfunc else aggregate_cmp.a
>         try:
>             ref = aggregate_cmp.func_ref(aggregate_cmp.group_idx, a, 
> func=func, fill_value=fill_value)
>         except ValueError:
>             with pytest.raises(ValueError):
>                 aggregate_cmp.func(aggregate_cmp.group_idx, a, func=func, 
> fill_value=fill_value)
>         else:
>             try:
>                 res = aggregate_cmp.func(aggregate_cmp.group_idx, a, 
> func=func, fill_value=fill_value)
>             except ValueError:
>                 if np.isnan(fill_value) and 
> aggregate_cmp.test_pair.endswith("py"):
>                     pytest.skip(
>                         "pure python version uses lists and does not raise 
> ValueErrors when inserting nan into integers"
>                     )
>                 else:
>                     raise
>             if isinstance(ref, np.ndarray):
> >               assert res.dtype == ref.dtype
> E               AssertionError: assert dtype('int64') == dtype('int32')
> E                +  where dtype('int64') = array([20, 20, 20, 20, 20, 20, 20, 
> 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,\n       20, 20, 20, 20, 20, 20, 20, 
> 20, 20, ... 20, 20, 20, 20, 20, 20, 20, 20, 20,\n       20, 20, 20, 20, 20, 
> 20, 20, 20, 20, 20, 20, 20, 20, 20],\n      dtype=int64).dtype
> E                +  and   dtype('int32') = array([20, 20, 20, 20, 20, 20, 20, 
> 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,\n       20, 20, 20, 20, 20, 20, 20, 
> 20, 20, ...20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,\n       
> 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20]).dtype
> 
> numpy_groupies/tests/test_compare.py:122: AssertionError
> _________________________ test_cmp[pandas/np-nanlen-0] 
> _________________________
> 
> aggregate_cmp = {'request': <SubRequest 'aggregate_cmp' for <Function 
> test_cmp[pandas/np-sum-0]>>, 'seed': 100, 'test_pair': 'pandas/n..., 'somea': 
> array([       nan, 0.        , 0.51545692, ..., 1.51932228, 0.        ,
>        0.87432034], shape=(20000,))}
> func = 'nanlen', fill_value = 0, decimal = 10
> 
>     @pytest.mark.filterwarnings("ignore:numpy.ufunc size changed")
>     @pytest.mark.deselect_if(func=_deselect_purepy_nanfuncs)
>     @pytest.mark.parametrize("fill_value", [0, 1, np.nan])
>     @pytest.mark.parametrize("func", func_list, ids=lambda x: getattr(x, 
> "__name__", x))
>     def test_cmp(aggregate_cmp, func, fill_value, decimal=10):
>         is_nanfunc = "nan" in getattr(func, "__name__", func)
>         a = aggregate_cmp.nana if is_nanfunc else aggregate_cmp.a
>         try:
>             ref = aggregate_cmp.func_ref(aggregate_cmp.group_idx, a, 
> func=func, fill_value=fill_value)
>         except ValueError:
>             with pytest.raises(ValueError):
>                 aggregate_cmp.func(aggregate_cmp.group_idx, a, func=func, 
> fill_value=fill_value)
>         else:
>             try:
>                 res = aggregate_cmp.func(aggregate_cmp.group_idx, a, 
> func=func, fill_value=fill_value)
>             except ValueError:
>                 if np.isnan(fill_value) and 
> aggregate_cmp.test_pair.endswith("py"):
>                     pytest.skip(
>                         "pure python version uses lists and does not raise 
> ValueErrors when inserting nan into integers"
>                     )
>                 else:
>                     raise
>             if isinstance(ref, np.ndarray):
> >               assert res.dtype == ref.dtype
> E               AssertionError: assert dtype('int64') == dtype('int32')
> E                +  where dtype('int64') = array([12, 13,  7, 13,  0,  6,  7, 
> 14,  7,  7, 14,  0,  0,  7,  0,  0,  7,\n       14, 14, 14,  0,  0,  0,  7,  
> 6,  0, ... 14,  7,  7,  0,  7,  6,  6, 14,  6,\n        7,  6,  0,  7,  6,  
> 0, 12, 14,  0,  7,  7, 13,  7,  0],\n      dtype=int64).dtype
> E                +  and   dtype('int32') = array([12, 13,  7, 13,  0,  6,  7, 
> 14,  7,  7, 14,  0,  0,  7,  0,  0,  7,\n       14, 14, 14,  0,  0,  0,  7,  
> 6,  0, ... 6, 13,  0,  7,  7, 14,  7,  7,  0,  7,  6,  6, 14,  6,\n        7, 
>  6,  0,  7,  6,  0, 12, 14,  0,  7,  7, 13,  7,  0]).dtype
> 
> numpy_groupies/tests/test_compare.py:122: AssertionError
> _________________________ test_cmp[pandas/np-nanlen-1] 
> _________________________
> 
> aggregate_cmp = {'request': <SubRequest 'aggregate_cmp' for <Function 
> test_cmp[pandas/np-sum-0]>>, 'seed': 100, 'test_pair': 'pandas/n..., 'somea': 
> array([       nan, 0.        , 0.51545692, ..., 1.51932228, 0.        ,
>        0.87432034], shape=(20000,))}
> func = 'nanlen', fill_value = 1, decimal = 10
> 
>     @pytest.mark.filterwarnings("ignore:numpy.ufunc size changed")
>     @pytest.mark.deselect_if(func=_deselect_purepy_nanfuncs)
>     @pytest.mark.parametrize("fill_value", [0, 1, np.nan])
>     @pytest.mark.parametrize("func", func_list, ids=lambda x: getattr(x, 
> "__name__", x))
>     def test_cmp(aggregate_cmp, func, fill_value, decimal=10):
>         is_nanfunc = "nan" in getattr(func, "__name__", func)
>         a = aggregate_cmp.nana if is_nanfunc else aggregate_cmp.a
>         try:
>             ref = aggregate_cmp.func_ref(aggregate_cmp.group_idx, a, 
> func=func, fill_value=fill_value)
>         except ValueError:
>             with pytest.raises(ValueError):
>                 aggregate_cmp.func(aggregate_cmp.group_idx, a, func=func, 
> fill_value=fill_value)
>         else:
>             try:
>                 res = aggregate_cmp.func(aggregate_cmp.group_idx, a, 
> func=func, fill_value=fill_value)
>             except ValueError:
>                 if np.isnan(fill_value) and 
> aggregate_cmp.test_pair.endswith("py"):
>                     pytest.skip(
>                         "pure python version uses lists and does not raise 
> ValueErrors when inserting nan into integers"
>                     )
>                 else:
>                     raise
>             if isinstance(ref, np.ndarray):
> >               assert res.dtype == ref.dtype
> E               AssertionError: assert dtype('int64') == dtype('int32')
> E                +  where dtype('int64') = array([12, 13,  7, 13,  1,  6,  7, 
> 14,  7,  7, 14,  1,  1,  7,  1,  1,  7,\n       14, 14, 14,  1,  1,  1,  7,  
> 6,  1, ... 14,  7,  7,  1,  7,  6,  6, 14,  6,\n        7,  6,  1,  7,  6,  
> 1, 12, 14,  1,  7,  7, 13,  7,  1],\n      dtype=int64).dtype
> E                +  and   dtype('int32') = array([12, 13,  7, 13,  1,  6,  7, 
> 14,  7,  7, 14,  1,  1,  7,  1,  1,  7,\n       14, 14, 14,  1,  1,  1,  7,  
> 6,  1, ... 6, 13,  1,  7,  7, 14,  7,  7,  1,  7,  6,  6, 14,  6,\n        7, 
>  6,  1,  7,  6,  1, 12, 14,  1,  7,  7, 13,  7,  1]).dtype
> 
> numpy_groupies/tests/test_compare.py:122: AssertionError
> =============================== warnings summary 
> ===============================
> numpy_groupies/tests/test_generic.py::test_ndim_group_idx[ufunc-None]
> numpy_groupies/tests/test_generic.py::test_ndim_group_idx[ufunc-size1]
> numpy_groupies/tests/test_generic.py::test_ndim_group_idx[numpy-None]
> numpy_groupies/tests/test_generic.py::test_ndim_group_idx[numpy-size1]
> numpy_groupies/tests/test_generic.py::test_ndim_group_idx[pandas-None]
> numpy_groupies/tests/test_generic.py::test_ndim_group_idx[pandas-size1]
>   
> /build/reproducible-path/python-numpy-groupies-0.10.2/numpy_groupies/utils.py:308:
>  RuntimeWarning: overflow encountered in scalar multiply
>     maxval = np.iinfo(a_dtype).max * n
> 
> -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
> =========================== short test summary info 
> ============================
> SKIPPED [5] numpy_groupies/tests/test_compare.py:116: pure python version 
> uses lists and does not raise ValueErrors when inserting nan into integers
> SKIPPED [191] numpy_groupies/tests/__init__.py:55: Functionality not 
> implemented
> SKIPPED [81] numpy_groupies/tests/test_compare.py:99: Implementation not 
> available
> SKIPPED [4] numpy_groupies/tests/test_compare.py:132: Implementation not 
> available
> SKIPPED [4] numpy_groupies/tests/test_compare.py:127: pandas doesn't fill 
> indices for all-nan groups with fill_value, but with -inf instead
> SKIPPED [7] numpy_groupies/tests/test_generic.py:238: pandas always skips nan 
> values
> SKIPPED [1] numpy_groupies/tests/test_generic.py:253: pandas always skips nan 
> values
> SKIPPED [1] numpy_groupies/tests/test_generic.py:276: pandas always ignores 
> nans
> SKIPPED [1] numpy_groupies/tests/test_generic.py:291: pandas doesn't fill 
> indices for all-nan groups with fill_value but with -inf instead
> SKIPPED [1] numpy_groupies/tests/test_generic.py:511: pandas always skips nan 
> values
> SKIPPED [1] numpy_groupies/tests/test_indices.py: got empty parameter set 
> ['aggregate_nb_wv'], function test_step_indices_length at 
> /build/reproducible-path/python-numpy-groupies-0.10.2/numpy_groupies/tests/test_indices.py:16
> SKIPPED [1] numpy_groupies/tests/test_indices.py: got empty parameter set 
> ['aggregate_nb_wv'], function test_step_indices_fields at 
> /build/reproducible-path/python-numpy-groupies-0.10.2/numpy_groupies/tests/test_indices.py:25
> ==== 4 failed, 555 passed, 298 skipped, 260 deselected, 6 warnings in 3.20s 
> ====
> make[1]: *** [debian/rules:18: override_dh_auto_test] Error 1


The full build log is available from:
http://qa-logs.debian.net/2025/04/14/python-numpy-groupies_0.10.2-1_testing-i386.log

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20250414;users=lu...@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20250414&fusertaguser=lu...@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.

Reply via email to