[Debian-med-packaging] Bug#1114696: brian: FTBFS with NumPy 2.3
roehling at debian.org
roehling at debian.org
Mon Sep 8 20:44:12 BST 2025
Source: brian
Version: 2.8.0.4-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, brian failed to rebuild.
Log Summary:
-------------------------------------------------------------------------------
[...]
Message: "No numerical integration method specified for group 'neurongroup_1', using method 'euler' (took 0.00s, trying other methods took 0.00s)."
Arguments: ()
____________________ test_synapse_creation_generator_random ____________________
self = <brian2.codegen.runtime.cython_rt.cython_rt.CythonCodeObject object at 0x7f4c7f5816a0>
block = 'run'
def run_block(self, block):
compiled_code = self.compiled_code[block]
if compiled_code:
try:
> return compiled_code.main(self.namespace)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../debian/tmp/usr/lib/python3.13/dist-packages/brian2/codegen/runtime/cython_rt/cython_rt.py:199:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.cython/brian_extensions/_cython_magic_880208a1063c6c8dc24a4e1c2f9ce43c.pyx:214: in _cython_magic_880208a1063c6c8dc24a4e1c2f9ce43c.main
???
.cython/brian_extensions/_cython_magic_880208a1063c6c8dc24a4e1c2f9ce43c.pyx:63: in _cython_magic_880208a1063c6c8dc24a4e1c2f9ce43c._rand
???
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
attr = 'NPY_OWNDATA'
def __getattr__(attr):
# Warn for expired attributes
import warnings
if attr == "linalg":
import numpy.linalg as linalg
return linalg
elif attr == "fft":
import numpy.fft as fft
return fft
elif attr == "dtypes":
import numpy.dtypes as dtypes
return dtypes
elif attr == "random":
import numpy.random as random
return random
elif attr == "polynomial":
import numpy.polynomial as polynomial
return polynomial
elif attr == "ma":
import numpy.ma as ma
return ma
elif attr == "ctypeslib":
import numpy.ctypeslib as ctypeslib
return ctypeslib
elif attr == "exceptions":
import numpy.exceptions as exceptions
return exceptions
elif attr == "testing":
import numpy.testing as testing
return testing
elif attr == "matlib":
import numpy.matlib as matlib
return matlib
elif attr == "f2py":
import numpy.f2py as f2py
return f2py
elif attr == "typing":
import numpy.typing as typing
return typing
elif attr == "rec":
import numpy.rec as rec
return rec
elif attr == "char":
import numpy.char as char
return char
elif attr == "array_api":
raise AttributeError("`numpy.array_api` is not available from "
"numpy 2.0 onwards", name=None)
elif attr == "core":
import numpy.core as core
return core
elif attr == "strings":
import numpy.strings as strings
return strings
elif attr == "distutils":
if 'distutils' in __numpy_submodules__:
import numpy.distutils as distutils
return distutils
else:
raise AttributeError("`numpy.distutils` is not available from "
"Python 3.12 onwards", name=None)
if attr in __future_scalars__:
# And future warnings for those that will change, but also give
# the AttributeError
warnings.warn(
f"In the future `np.{attr}` will be defined as the "
"corresponding NumPy scalar.", FutureWarning, stacklevel=2)
if attr in __former_attrs__:
raise AttributeError(__former_attrs__[attr], name=None)
if attr in __expired_attributes__:
raise AttributeError(
f"`np.{attr}` was removed in the NumPy 2.0 release. "
f"{__expired_attributes__[attr]}",
name=None
)
if attr == "chararray":
warnings.warn(
"`np.chararray` is deprecated and will be removed from "
"the main namespace in the future. Use an array with a string "
"or bytes dtype instead.", DeprecationWarning, stacklevel=2)
import numpy.char as char
return char.chararray
> raise AttributeError(f"module {__name__!r} has no attribute {attr!r}")
E AttributeError: module 'numpy' has no attribute 'NPY_OWNDATA'
/usr/lib/python3/dist-packages/numpy/__init__.py:795: AttributeError
The above exception was the direct cause of the following exception:
@pytest.mark.standalone_compatible
def test_synapse_creation_generator_random():
G1 = NeuronGroup(10, "v:1")
G2 = NeuronGroup(20, "v:1")
G1.v = "i"
G2.v = "10 + i"
SG1 = G1[:5]
SG2 = G2[10:]
# connect based on pre-/postsynaptic state variables
S2 = Synapses(SG1, SG2)
> S2.connect(j="k for k in sample(N_post, p=1.0*int(v_pre > 2))")
../debian/tmp/usr/lib/python3.13/dist-packages/brian2/tests/test_subgroup.py:461:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../debian/tmp/usr/lib/python3.13/dist-packages/brian2/core/base.py:346: in device_override_decorated_function
return func(*args, **kwds)
^^^^^^^^^^^^^^^^^^^
../debian/tmp/usr/lib/python3.13/dist-packages/brian2/synapses/synapses.py:1627: in connect
self._add_synapses_generator(
../debian/tmp/usr/lib/python3.13/dist-packages/brian2/synapses/synapses.py:2122: in _add_synapses_generator
codeobj()
../debian/tmp/usr/lib/python3.13/dist-packages/brian2/codegen/codeobject.py:131: in __call__
return self.run()
^^^^^^^^^^
../debian/tmp/usr/lib/python3.13/dist-packages/brian2/codegen/codeobject.py:159: in run
return self.run_block("run")
^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <brian2.codegen.runtime.cython_rt.cython_rt.CythonCodeObject object at 0x7f4c7f5816a0>
block = 'run'
def run_block(self, block):
compiled_code = self.compiled_code[block]
if compiled_code:
try:
return compiled_code.main(self.namespace)
except Exception as exc:
message = (
"An exception occured during the execution of the "
f"'{block}' block of code object '{self.name}'.\n"
)
> raise BrianObjectException(message, self.owner) from exc
E brian2.core.base.BrianObjectException: Error encountered with object named 'synapses'.
E Object was created here (most recent call only, full details in debug log):
E File '/usr/lib/python3/dist-packages/_pytest/python.py', line 157, in pytest_pyfunc_call
E result = testfunction(**testargs)
E
E An exception occured during the execution of the 'run' block of code object 'synapses_synapses_create_generator_codeobject'.
E (See above for original error message and traceback.)
../debian/tmp/usr/lib/python3.13/dist-packages/brian2/codegen/runtime/cython_rt/cython_rt.py:205: BrianObjectException
=============================== warnings summary ===============================
../../../../usr/lib/python3/dist-packages/_pytest/config/__init__.py:1474
/usr/lib/python3/dist-packages/_pytest/config/__init__.py:1474: PytestConfigWarning: Unknown config option: timeout
self._warn_or_fail_if_strict(f"Unknown config option: {key}\n")
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
FAILED ../debian/tmp/usr/lib/python3.13/dist-packages/brian2/tests/test_complex_examples.py::test_cuba
FAILED ../debian/tmp/usr/lib/python3.13/dist-packages/brian2/tests/test_poissoninput.py::test_poissoninput
FAILED ../debian/tmp/usr/lib/python3.13/dist-packages/brian2/tests/test_poissoninput.py::test_poissoninput_refractory
FAILED ../debian/tmp/usr/lib/python3.13/dist-packages/brian2/tests/test_subgroup.py::test_synapse_creation_generator_random
4 failed, 33 passed, 1 skipped, 244 deselected, 1 warning in 154.65s (0:02:34)
ERROR: 1/4 test suite(s) did not complete successfully (see above).
make[1]: *** [debian/rules:58: execute_after_dh_auto_install] Error 1
make[1]: Leaving directory '/build/reproducible-path/brian-2.8.0.4'
make: *** [debian/rules:32: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2025-09-07T21:21:16Z
-------------------------------------------------------------------------------
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/2448433/
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/163207/
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-med-packaging
mailing list