Package: src:traittypes Version: 0.2.1-5 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/202606/ 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:traittypes, 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:385: python3.14 setup.py clean /usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: BSD License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() 'build/bdist.linux-x86_64' does not exist -- can't clean it 'build/scripts-3.14' does not exist -- can't clean it I: pybuild base:385: python3.13 setup.py clean /usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: BSD License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() 'build/bdist.linux-x86_64' does not exist -- can't clean it 'build/scripts-3.13' does not exist -- can't clean it dh_autoreconf_clean -O--buildsystem=pybuild dh_clean -O--buildsystem=pybuild debian/rules binary dh binary --buildsystem=pybuild dh_update_autotools_config -O--buildsystem=pybuild dh_autoreconf -O--buildsystem=pybuild dh_auto_configure -O--buildsystem=pybuild I: pybuild base:385: python3.14 setup.py config /usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: BSD License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() I: pybuild base:385: python3.13 setup.py config /usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: BSD License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() dh_auto_build -O--buildsystem=pybuild I: pybuild base:385: /usr/bin/python3.14 setup.py build /usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: BSD License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() I: pybuild base:385: /usr/bin/python3 setup.py build /usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: BSD License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() dh_auto_test -O--buildsystem=pybuild I: pybuild base:385: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_traittypes/build; python3.14 -m pytest ============================= test session starts ============================== platform linux -- Python 3.14.5, pytest-9.0.3, pluggy-1.6.0 rootdir: /<<PKGBUILDDIR>> plugins: typeguard-4.4.4 collected 26 items traittypes/tests/test_import_errors.py . [ 3%] traittypes/tests/test_traittypes.py ....................F.. [ 92%] traittypes/tests/test_validators.py .. [100%] =================================== FAILURES =================================== _______________________ TestDataset.test_initial_values ________________________ self = <traittypes.traittypes.Dataset object at 0x7f243ac5b5c0> obj = <traittypes.tests.test_traittypes.TestDataset.test_initial_values.<locals>.Foo object at 0x7f243ac827b0> cls = <class 'traittypes.tests.test_traittypes.TestDataset.test_initial_values.<locals>.Foo'> def get(self, obj: HasTraits, cls: type[t.Any] | None = None) -> G | None: assert self.name is not None try: > value = obj._trait_values[self.name] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E KeyError: 'a' /usr/lib/python3/dist-packages/traitlets/traitlets.py:632: KeyError During handling of the above exception, another exception occurred: self = <traittypes.traittypes.Dataset object at 0x7f243ac5b5c0> obj = <traittypes.tests.test_traittypes.TestDataset.test_initial_values.<locals>.Foo object at 0x7f243ac827b0> value = <xarray.Dataset> Size: 0B Dimensions: () Data variables: *empty* def validate(self, obj, value): if value is None and not self.allow_none: self.error(obj, value) if value is None or value is Undefined: return super(XarrayType, self).validate(obj, value) try: > value = self.klass(value) ^^^^^^^^^^^^^^^^^ traittypes/traittypes.py:222: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <[RecursionError('maximum recursion depth exceeded') raised in repr()] Dataset object at 0x7f243ab63150> data_vars = <xarray.Dataset> Size: 0B Dimensions: () Data variables: *empty* coords = None, attrs = None def __init__( self, # could make a VariableArgs to use more generally, and refine these # categories data_vars: DataVars | None = None, coords: Mapping[Any, Any] | None = None, attrs: Mapping[Any, Any] | None = None, ) -> None: if data_vars is None: data_vars = {} if isinstance(data_vars, Dataset): > raise TypeError( "Passing a Dataset as `data_vars` to the Dataset constructor is" " not supported. Use `ds.copy()` to create a copy of a Dataset." ) E TypeError: Passing a Dataset as `data_vars` to the Dataset constructor is not supported. Use `ds.copy()` to create a copy of a Dataset. /usr/lib/python3/dist-packages/xarray/core/dataset.py:389: TypeError During handling of the above exception, another exception occurred: self = <traittypes.tests.test_traittypes.TestDataset testMethod=test_initial_values> def test_initial_values(self): class Foo(HasTraits): a = Dataset() b = Dataset(None, allow_none=True) d = Dataset(Undefined) foo = Foo() > self.assertTrue(foo.a.equals(xr.Dataset())) ^^^^^ traittypes/tests/test_traittypes.py:206: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/traitlets/traitlets.py:687: in __get__ return t.cast(G, self.get(obj, cls)) # the G should encode the Optional ^^^^^^^^^^^^^^^^^^ /usr/lib/python3/dist-packages/traitlets/traitlets.py:649: in get value = self._validate(obj, default) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib/python3/dist-packages/traitlets/traitlets.py:722: in _validate value = self.validate(obj, value) ^^^^^^^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <traittypes.traittypes.Dataset object at 0x7f243ac5b5c0> obj = <traittypes.tests.test_traittypes.TestDataset.test_initial_values.<locals>.Foo object at 0x7f243ac827b0> value = <xarray.Dataset> Size: 0B Dimensions: () Data variables: *empty* def validate(self, obj, value): if value is None and not self.allow_none: self.error(obj, value) if value is None or value is Undefined: return super(XarrayType, self).validate(obj, value) try: value = self.klass(value) except (ValueError, TypeError) as e: > raise TraitError(e) E traitlets.traitlets.TraitError: Passing a Dataset as `data_vars` to the Dataset constructor is not supported. Use `ds.copy()` to create a copy of a Dataset. traittypes/traittypes.py:224: TraitError =============================== warnings summary =============================== ../../../../../../usr/lib/python3/dist-packages/traitlets/__init__.py:28 /usr/lib/python3/dist-packages/traitlets/__init__.py:28: DeprecationWarning: Sentinel is not a public part of the traitlets API. It was published by mistake, and may be removed in the future. warn( .pybuild/cpython3_3.14_traittypes/build/traittypes/tests/test_traittypes.py::TestArray::test_initial_values .pybuild/cpython3_3.14_traittypes/build/traittypes/tests/test_traittypes.py::TestDataFrame::test_initial_values .pybuild/cpython3_3.14_traittypes/build/traittypes/tests/test_traittypes.py::TestSeries::test_initial_values .pybuild/cpython3_3.14_traittypes/build/traittypes/tests/test_traittypes.py::TestDataArray::test_initial_values /usr/lib/python3/dist-packages/traitlets/traitlets.py:637: DeprecationWarning: Explicit using of Undefined as the default value is deprecated in traitlets 5.0, and may cause exceptions in the future. warn( .pybuild/cpython3_3.14_traittypes/build/traittypes/tests/test_traittypes.py::TestDataFrame::test_allow_none /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_traittypes/build/traittypes/traittypes.py:188: DeprecationWarning: metadata {'dtype': None} was set from the constructor. With traitlets 4.1, metadata should be set using the .tag() method, e.g., Int().tag(key1='value1', key2='value2') super(DataFrame, self).__init__( -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED traittypes/tests/test_traittypes.py::TestDataset::test_initial_values =================== 1 failed, 25 passed, 6 warnings in 0.47s =================== E: pybuild pybuild:485: test: plugin distutils failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_traittypes/build; python3.14 -m pytest I: pybuild base:385: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_traittypes/build; python3.13 -m pytest ============================= test session starts ============================== platform linux -- Python 3.13.12, pytest-9.0.3, pluggy-1.6.0 rootdir: /<<PKGBUILDDIR>> plugins: typeguard-4.4.4 collected 26 items traittypes/tests/test_import_errors.py . [ 3%] traittypes/tests/test_traittypes.py ....................F.. [ 92%] traittypes/tests/test_validators.py .. [100%] =================================== FAILURES =================================== _______________________ TestDataset.test_initial_values ________________________ self = <traittypes.traittypes.Dataset object at 0x7f8eddb196e0> obj = <traittypes.tests.test_traittypes.TestDataset.test_initial_values.<locals>.Foo object at 0x7f8eddb78830> cls = <class 'traittypes.tests.test_traittypes.TestDataset.test_initial_values.<locals>.Foo'> def get(self, obj: HasTraits, cls: type[t.Any] | None = None) -> G | None: assert self.name is not None try: > value = obj._trait_values[self.name] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E KeyError: 'a' /usr/lib/python3/dist-packages/traitlets/traitlets.py:632: KeyError During handling of the above exception, another exception occurred: self = <traittypes.traittypes.Dataset object at 0x7f8eddb196e0> obj = <traittypes.tests.test_traittypes.TestDataset.test_initial_values.<locals>.Foo object at 0x7f8eddb78830> value = <xarray.Dataset> Size: 0B Dimensions: () Data variables: *empty* def validate(self, obj, value): if value is None and not self.allow_none: self.error(obj, value) if value is None or value is Undefined: return super(XarrayType, self).validate(obj, value) try: > value = self.klass(value) ^^^^^^^^^^^^^^^^^ traittypes/traittypes.py:222: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <[RecursionError('maximum recursion depth exceeded') raised in repr()] Dataset object at 0x7f8eddb6f8d0> data_vars = <xarray.Dataset> Size: 0B Dimensions: () Data variables: *empty* coords = None, attrs = None def __init__( self, # could make a VariableArgs to use more generally, and refine these # categories data_vars: DataVars | None = None, coords: Mapping[Any, Any] | None = None, attrs: Mapping[Any, Any] | None = None, ) -> None: if data_vars is None: data_vars = {} if isinstance(data_vars, Dataset): > raise TypeError( "Passing a Dataset as `data_vars` to the Dataset constructor is" " not supported. Use `ds.copy()` to create a copy of a Dataset." ) E TypeError: Passing a Dataset as `data_vars` to the Dataset constructor is not supported. Use `ds.copy()` to create a copy of a Dataset. /usr/lib/python3/dist-packages/xarray/core/dataset.py:389: TypeError During handling of the above exception, another exception occurred: self = <traittypes.tests.test_traittypes.TestDataset testMethod=test_initial_values> def test_initial_values(self): class Foo(HasTraits): a = Dataset() b = Dataset(None, allow_none=True) d = Dataset(Undefined) foo = Foo() > self.assertTrue(foo.a.equals(xr.Dataset())) ^^^^^ traittypes/tests/test_traittypes.py:206: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/traitlets/traitlets.py:687: in __get__ return t.cast(G, self.get(obj, cls)) # the G should encode the Optional ^^^^^^^^^^^^^^^^^^ /usr/lib/python3/dist-packages/traitlets/traitlets.py:649: in get value = self._validate(obj, default) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib/python3/dist-packages/traitlets/traitlets.py:722: in _validate value = self.validate(obj, value) ^^^^^^^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <traittypes.traittypes.Dataset object at 0x7f8eddb196e0> obj = <traittypes.tests.test_traittypes.TestDataset.test_initial_values.<locals>.Foo object at 0x7f8eddb78830> value = <xarray.Dataset> Size: 0B Dimensions: () Data variables: *empty* def validate(self, obj, value): if value is None and not self.allow_none: self.error(obj, value) if value is None or value is Undefined: return super(XarrayType, self).validate(obj, value) try: value = self.klass(value) except (ValueError, TypeError) as e: > raise TraitError(e) E traitlets.traitlets.TraitError: Passing a Dataset as `data_vars` to the Dataset constructor is not supported. Use `ds.copy()` to create a copy of a Dataset. traittypes/traittypes.py:224: TraitError =============================== warnings summary =============================== ../../../../../../usr/lib/python3/dist-packages/traitlets/__init__.py:28 /usr/lib/python3/dist-packages/traitlets/__init__.py:28: DeprecationWarning: Sentinel is not a public part of the traitlets API. It was published by mistake, and may be removed in the future. warn( .pybuild/cpython3_3.13_traittypes/build/traittypes/tests/test_traittypes.py::TestArray::test_initial_values .pybuild/cpython3_3.13_traittypes/build/traittypes/tests/test_traittypes.py::TestDataFrame::test_initial_values .pybuild/cpython3_3.13_traittypes/build/traittypes/tests/test_traittypes.py::TestSeries::test_initial_values .pybuild/cpython3_3.13_traittypes/build/traittypes/tests/test_traittypes.py::TestDataArray::test_initial_values /usr/lib/python3/dist-packages/traitlets/traitlets.py:637: DeprecationWarning: Explicit using of Undefined as the default value is deprecated in traitlets 5.0, and may cause exceptions in the future. warn( .pybuild/cpython3_3.13_traittypes/build/traittypes/tests/test_traittypes.py::TestDataFrame::test_allow_none /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_traittypes/build/traittypes/traittypes.py:188: DeprecationWarning: metadata {'dtype': None} was set from the constructor. With traitlets 4.1, metadata should be set using the .tag() method, e.g., Int().tag(key1='value1', key2='value2') super(DataFrame, self).__init__( -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED traittypes/tests/test_traittypes.py::TestDataset::test_initial_values =================== 1 failed, 25 passed, 6 warnings in 0.46s =================== E: pybuild pybuild:485: test: plugin distutils failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_traittypes/build; python3.13 -m pytest dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.14 3.13" --parallel=2 returned exit code 13 make: *** [debian/rules:6: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2 --------------------------------------------------------------------------------

