Package: src:mdp
Version: 3.6-10
Severity: serious
Tags: ftbfs forky sid

Dear maintainer:

During a rebuild of all packages in unstable, this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

https://people.debian.org/~sanvila/build-logs/202510/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

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

Thanks.

--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean --buildsystem=pybuild
   dh_auto_clean -O--buildsystem=pybuild
I: pybuild base:311: python3.13 setup.py clean 
/<<PKGBUILDDIR>>/setup.py:2: SetuptoolsDeprecationWarning: The test command is 
disabled and references to it are deprecated.
!!

        
********************************************************************************
        Please remove any references to `setuptools.command.test` in all 
supported versions of the affected package.

        This deprecation is overdue, please update your project and remove 
deprecated
        calls to avoid build errors in the future.
        
********************************************************************************

!!

[... snipped ...]

    ???
mdp/signal_node.py:631: in stop_training
    self._train_seq[self._train_phase][1](*args, **kwargs)
mdp/nodes/scikits_nodes.py:252: in _stop_training
    return self.scikits_alg.fit(self.data, self.labels, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/sklearn/base.py:1365: in wrapper
    return fit_method(estimator, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/sklearn/semi_supervised/_self_training.py:265: 
in fit
    self.estimator_ = self._get_estimator()
                      ^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SelfTrainingClassifier()

    def _get_estimator(self):
        """Get the estimator.
    
        Returns
        -------
        estimator_ : estimator object
            The cloned estimator object.
        """
        # TODO(1.8): remove and only keep clone(self.estimator)
        if self.estimator is None and self.base_estimator != "deprecated":
            estimator_ = clone(self.base_estimator)
    
            warn(
                (
                    "`base_estimator` has been deprecated in 1.6 and will be 
removed"
                    " in 1.8. Please use `estimator` instead."
                ),
                FutureWarning,
            )
        # TODO(1.8) remove
        elif self.estimator is None and self.base_estimator == "deprecated":
>           raise ValueError(
                "You must pass an estimator to SelfTrainingClassifier. Use 
`estimator`."
E               ValueError: You must pass an estimator to 
SelfTrainingClassifier. Use `estimator`.

/usr/lib/python3/dist-packages/sklearn/semi_supervised/_self_training.py:219: 
ValueError
__________ test_dimdtypeset[FixedThresholdClassifierScikitsLearnNode] __________

klass = <class 'mdp.nodes.wrap_scikits_classifier.<locals>.ScikitsNode'>
init_args = []
inp_arg_gen = <function generic_test_factory.<locals>.<lambda> at 
0x7f86f5a539c0>
sup_arg_gen = <function _rand_labels at 0x7f86f5ad5620>, execute_arg_gen = None

    def test_dimdtypeset(klass, init_args, inp_arg_gen,
                         sup_arg_gen, execute_arg_gen):
        init_args = call_init_args(init_args)
        inp = inp_arg_gen()
        # See https://github.com/mdp-toolkit/mdp-toolkit/pull/47
        # and https://github.com/mdp-toolkit/mdp-toolkit/issues/62.
        if klass.__name__ in ABSINPUT_NODES:
            inp = numx.absolute(inp)
>       node = klass(*init_args)
               ^^^^^^^^^^^^^^^^^

mdp/test/test_nodes_generic.py:305: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = FixedThresholdClassifierScikitsLearnNode(input_dim=None, 
output_dim=None, dtype=None)
input_dim = None, output_dim = None, dtype = None, kwargs = {}

    def __init__(self, input_dim=None, output_dim=None, dtype=None,
                 **kwargs):
        """
        Initializes an object of type 'ScikitsNode'.
    
        :param input_dim: Dimensionality of the input.
            Default is None.
        :type input_dim: int
    
        :param output_dim: Dimensionality of the output.
            Default is None.
        :type output_dim: int
    
        :param dtype: Datatype of the input.
            Default is None.
        :type dtype: numpy.dtype or str
        """
        if output_dim is not None:
            # output_dim and n_components cannot be defined at the same time
            if 'n_components' in kwargs:
                msg = ("Dimensionality set both by "
                       "output_dim=%d and n_components=%d""")
                raise ScikitsException(msg % (output_dim,
                                              kwargs['n_components']))
    
    
        super(ScikitsNode, self).__init__(input_dim=input_dim,
                                          output_dim=output_dim,
                                          dtype=dtype)
>       self.scikits_alg = scikits_class(**kwargs)
                           ^^^^^^^^^^^^^^^^^^^^^^^
E       TypeError: FixedThresholdClassifier.__init__() missing 1 required 
positional argument: 'estimator'

mdp/nodes/scikits_nodes.py:246: TypeError
_________ test_dimdtypeset[TunedThresholdClassifierCVScikitsLearnNode] _________

klass = <class 'mdp.nodes.wrap_scikits_classifier.<locals>.ScikitsNode'>
init_args = []
inp_arg_gen = <function generic_test_factory.<locals>.<lambda> at 
0x7f86f5a53a60>
sup_arg_gen = <function _rand_labels at 0x7f86f5ad5620>, execute_arg_gen = None

    def test_dimdtypeset(klass, init_args, inp_arg_gen,
                         sup_arg_gen, execute_arg_gen):
        init_args = call_init_args(init_args)
        inp = inp_arg_gen()
        # See https://github.com/mdp-toolkit/mdp-toolkit/pull/47
        # and https://github.com/mdp-toolkit/mdp-toolkit/issues/62.
        if klass.__name__ in ABSINPUT_NODES:
            inp = numx.absolute(inp)
>       node = klass(*init_args)
               ^^^^^^^^^^^^^^^^^

mdp/test/test_nodes_generic.py:305: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = TunedThresholdClassifierCVScikitsLearnNode(input_dim=None, 
output_dim=None, dtype=None)
input_dim = None, output_dim = None, dtype = None, kwargs = {}

    def __init__(self, input_dim=None, output_dim=None, dtype=None,
                 **kwargs):
        """
        Initializes an object of type 'ScikitsNode'.
    
        :param input_dim: Dimensionality of the input.
            Default is None.
        :type input_dim: int
    
        :param output_dim: Dimensionality of the output.
            Default is None.
        :type output_dim: int
    
        :param dtype: Datatype of the input.
            Default is None.
        :type dtype: numpy.dtype or str
        """
        if output_dim is not None:
            # output_dim and n_components cannot be defined at the same time
            if 'n_components' in kwargs:
                msg = ("Dimensionality set both by "
                       "output_dim=%d and n_components=%d""")
                raise ScikitsException(msg % (output_dim,
                                              kwargs['n_components']))
    
    
        super(ScikitsNode, self).__init__(input_dim=input_dim,
                                          output_dim=output_dim,
                                          dtype=dtype)
>       self.scikits_alg = scikits_class(**kwargs)
                           ^^^^^^^^^^^^^^^^^^^^^^^
E       TypeError: TunedThresholdClassifierCV.__init__() missing 1 required 
positional argument: 'estimator'

mdp/nodes/scikits_nodes.py:246: TypeError
___________ test_dimdtypeset[SelfTrainingClassifierScikitsLearnNode] ___________

klass = <class 'mdp.nodes.wrap_scikits_classifier.<locals>.ScikitsNode'>
init_args = []
inp_arg_gen = <function generic_test_factory.<locals>.<lambda> at 
0x7f86f5a64fe0>
sup_arg_gen = <function _rand_labels at 0x7f86f5ad5620>, execute_arg_gen = None

    def test_dimdtypeset(klass, init_args, inp_arg_gen,
                         sup_arg_gen, execute_arg_gen):
        init_args = call_init_args(init_args)
        inp = inp_arg_gen()
        # See https://github.com/mdp-toolkit/mdp-toolkit/pull/47
        # and https://github.com/mdp-toolkit/mdp-toolkit/issues/62.
        if klass.__name__ in ABSINPUT_NODES:
            inp = numx.absolute(inp)
        node = klass(*init_args)
        _train_if_necessary(inp, node, sup_arg_gen)
>       _stop_training_or_execute(node, inp)

mdp/test/test_nodes_generic.py:307: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
mdp/test/test_nodes_generic.py:93: in _stop_training_or_execute
    node.stop_training()
<string>:1: in <lambda>
    ???
mdp/signal_node.py:631: in stop_training
    self._train_seq[self._train_phase][1](*args, **kwargs)
mdp/nodes/scikits_nodes.py:252: in _stop_training
    return self.scikits_alg.fit(self.data, self.labels, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/sklearn/base.py:1365: in wrapper
    return fit_method(estimator, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/sklearn/semi_supervised/_self_training.py:265: 
in fit
    self.estimator_ = self._get_estimator()
                      ^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = SelfTrainingClassifier()

    def _get_estimator(self):
        """Get the estimator.
    
        Returns
        -------
        estimator_ : estimator object
            The cloned estimator object.
        """
        # TODO(1.8): remove and only keep clone(self.estimator)
        if self.estimator is None and self.base_estimator != "deprecated":
            estimator_ = clone(self.base_estimator)
    
            warn(
                (
                    "`base_estimator` has been deprecated in 1.6 and will be 
removed"
                    " in 1.8. Please use `estimator` instead."
                ),
                FutureWarning,
            )
        # TODO(1.8) remove
        elif self.estimator is None and self.base_estimator == "deprecated":
>           raise ValueError(
                "You must pass an estimator to SelfTrainingClassifier. Use 
`estimator`."
E               ValueError: You must pass an estimator to 
SelfTrainingClassifier. Use `estimator`.

/usr/lib/python3/dist-packages/sklearn/semi_supervised/_self_training.py:219: 
ValueError
=============================== warnings summary ===============================
mdp/linear_flows_online.py:381
  /<<PKGBUILDDIR>>/mdp/linear_flows_online.py:381: SyntaxWarning: invalid 
escape sequence '\ '
    \    /

mdp/nodes/isfa_nodes.py:109
  /<<PKGBUILDDIR>>/mdp/nodes/isfa_nodes.py:109: SyntaxWarning: invalid escape 
sequence '\k'
    \kappa_{ICA}^{\tau} in the paper). Default is 1.

../../../usr/lib/python3/dist-packages/zombie_imp/__init__.py:1
  /usr/lib/python3/dist-packages/zombie_imp/__init__.py:1: DeprecationWarning: 
the imp module was removed in favour of importlib. Someone brought it back, but 
it's not a good idea to use it.
    from .imp_3_11 import *

mdp/test/test_IncSFANode.py: 74995 warnings
mdp/test/test_MCANode.py: 80880 warnings
mdp/test/test_nodes_generic.py: 20000 warnings
  /<<PKGBUILDDIR>>/mdp/nodes/mca_nodes_online.py:132: DeprecationWarning: 
Conversion of an array with ndim > 0 to a scalar is deprecated, and will error 
in future. Ensure you extract a single element from your array before 
performing this operation. (Deprecated NumPy 1.25.)
    self.d[j] = mdp.numx.sqrt(l)

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
===================================== NOTE =====================================
          python: 3.13.9.final.0
             mdp: 3.6
 parallel python: NOT AVAILABLE: No module named 'pp'
          shogun: NOT AVAILABLE: No module named 'shogun'
          libsvm: NOT AVAILABLE: No module named 'libsvm'
          joblib: 1.4.2
         sklearn: 1.7.2
            numx: numpy 2.3.4
          symeig: symeig_fake
Random Seed: 725021957

IMPORTANT: some tests use random numbers. This could
occasionally lead to failures due to numerical degeneracies.
To rule this out, please run the tests more than once.
If you get reproducible failures please report a bug!

=========================== short test summary info ============================
FAILED 
mdp/test/test_nodes_generic.py::test_dtype_consistency[FixedThresholdClassifierScikitsLearnNode]
FAILED 
mdp/test/test_nodes_generic.py::test_dtype_consistency[TunedThresholdClassifierCVScikitsLearnNode]
FAILED 
mdp/test/test_nodes_generic.py::test_dtype_consistency[SelfTrainingClassifierScikitsLearnNode]
FAILED 
mdp/test/test_nodes_generic.py::test_outputdim_consistency[FixedThresholdClassifierScikitsLearnNode]
FAILED 
mdp/test/test_nodes_generic.py::test_outputdim_consistency[TunedThresholdClassifierCVScikitsLearnNode]
FAILED 
mdp/test/test_nodes_generic.py::test_outputdim_consistency[SelfTrainingClassifierScikitsLearnNode]
FAILED 
mdp/test/test_nodes_generic.py::test_dimdtypeset[FixedThresholdClassifierScikitsLearnNode]
FAILED 
mdp/test/test_nodes_generic.py::test_dimdtypeset[TunedThresholdClassifierCVScikitsLearnNode]
FAILED 
mdp/test/test_nodes_generic.py::test_dimdtypeset[SelfTrainingClassifierScikitsLearnNode]
==== 9 failed, 843 passed, 16 skipped, 175878 warnings in 72.17s (0:01:12) =====
E: pybuild pybuild:389: test: plugin custom failed with: exit code=1: 
python3.13 -m pytest --seed=725021957 mdp && python3.13 -m pytest 
--seed=725021957 bimdp
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 
returned exit code 13
make[1]: *** [debian/rules:10: override_dh_auto_test] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:7: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------

Reply via email to