Your message dated Tue, 09 Sep 2025 21:04:25 +0000
with message-id <[email protected]>
and subject line Bug#1114696: fixed in brian 2.9.0-1
has caused the Debian Bug report #1114696,
regarding brian: FTBFS with NumPy 2.3
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
1114696: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1114696
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Source: brian
Version: 2.8.0.4-1
Severity: important
User: [email protected]
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

--- End Message ---
--- Begin Message ---
Source: brian
Source-Version: 2.9.0-1
Done: Michael R. Crusoe <[email protected]>

We believe that the bug you reported is fixed in the latest version of
brian, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Michael R. Crusoe <[email protected]> (supplier of updated brian package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Tue, 09 Sep 2025 15:32:14 +0200
Source: brian
Architecture: source
Version: 2.9.0-1
Distribution: unstable
Urgency: medium
Maintainer: Debian Med Packaging Team 
<[email protected]>
Changed-By: Michael R. Crusoe <[email protected]>
Closes: 1114696
Changes:
 brian (2.9.0-1) unstable; urgency=medium
 .
   * Team upload.
   * New upstream version. Support NumPy 2.3+ (Closes: #1114696)
   * Standards-Version: 4.7.2 (routine-update)
   * d/patches: refreshed; removed rm-setuptools-dep.patch, it is no
     longer needed.
   * Fixed links to external docs to instead point to the packaged -docs.
   * d/control: add missing pytest plugins.
   * d/rules: respect Debian Policy 4.9.1 and use DEB_BUILD_OPTION_PARALLEL to
     set the level of pytest parallelism via PYTEST_XDIST_AUTO_NUM_WORKERS.
   * Exclude far fewer tests
Checksums-Sha1:
 abf8899befd021ba6ed001fda1b675bd21680ead 2741 brian_2.9.0-1.dsc
 042823447c4576b304aee6d4bba933599a802ab2 1206956 brian_2.9.0.orig.tar.xz
 38f83189c27b8ac6da1f7aad95237e9849e13609 20344 brian_2.9.0-1.debian.tar.xz
 4e9d2fdcccaee7c2f9cd043157667b6c8765d281 14914 brian_2.9.0-1_source.buildinfo
Checksums-Sha256:
 c61c1ba3d832263d918064be6b7ddf200df5f3fab68b6734ec77cc9e59ca45f9 2741 
brian_2.9.0-1.dsc
 02567de2815f9e57eca4c1066d981fff909be6b3e8bca96005e4e7d144f5693e 1206956 
brian_2.9.0.orig.tar.xz
 2fa3ff3d7cf3f954342d44fe64998e93ab350f3590d2afb809ce58b46439f793 20344 
brian_2.9.0-1.debian.tar.xz
 8dabed025024bd9cc70c2620cc99d1da401ccbcb78bcf36bf14d10f7cf1e859e 14914 
brian_2.9.0-1_source.buildinfo
Files:
 9ea6a1b531cb42e5b88a5e1279b9aa50 2741 python optional brian_2.9.0-1.dsc
 258a1f8a70b3c93fc657f9d90e1974e8 1206956 python optional 
brian_2.9.0.orig.tar.xz
 861bc665b95b44213ffd680f64af729f 20344 python optional 
brian_2.9.0-1.debian.tar.xz
 a0a70e42637316c4739da888a211f18e 14914 python optional 
brian_2.9.0-1_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEck1gkzcRPHEFUNdHPCZ2P2xn5uIFAmjAkbUACgkQPCZ2P2xn
5uLkvxAAj83McQHwkRQgRmL2K1Nz/N+sJCpllxdwbdQ4S4o6ZhStG0Ri7b0vncNF
rqyNHgRUuhsIxo3kBXX75NxcWsEz6HWN0A0nzG9n4B6lQV/fD3N737ska0A1B+HL
/BSRwQWdFZlaU6fZOGO3rnR7w79GqHNd7cOQk7hZNXfJe6nBaUdEbUAuUsE/Ique
pv2p9Pew2QkdOqEWUwNGYek4W7tutmRJBmHZ3Nuo9wJ65DlMV4Al+TuZOm3GJCOA
qHlBt20Tf8tc09Tia6UpVMiwrHRSCGmPaktmzDFQEAXOUXtbQRFk+rFcMohDJGrC
R/g33i19WHc5E/AIcbmc8dPvpmVAaYrV+TFFtY05cI+CijTJDO1mwNxrI7azIzsU
a3Kl78X0P8tYYKc3lnSQDj1ppDvDvZuXKa7CfqFWHBhywrQ/mxQQ3U8XKtX8VeP7
apy/AS2COskYV0/3mOMIeyPcQs6jaXEuXIhNzNvc2HUynIFcfKpLKKOMMtxf+fI8
joPteNlG1zBDay/H+F54sBBZBhw/h1Q008a/6ZIAq4Jx8M6ooJGLeZmILtG/iqIm
6jyqAg1Fv2nYOzA+MMieBMeFCgPliLaHI9fGR9QZCw0JQj7YO0V367fP+fIBNGxo
UwDZWWsyobbIVhkhNFL8wXnscxofxr1/QcwC3ORfrwGeuxmUxAY=
=/yHO
-----END PGP SIGNATURE-----

Attachment: pgpqIajfbDU0K.pgp
Description: PGP signature


--- End Message ---

Reply via email to