Package: src:python-typish Version: 1.9.3-2 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/202512/ 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:python-typish, 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 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 dh_auto_build -O--buildsystem=pybuild I: pybuild plugin_pyproject:131: Building wheel for python3.14 with "build" module I: pybuild base:317: python3.14 -m build --skip-dependency-check --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14 * Building wheel... /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'tests_require' warnings.warn(msg) /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'test_suite' warnings.warn(msg) /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 :: MIT License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running bdist_wheel running build running build_py creating build/lib/typish copying typish/_meta.py -> build/lib/typish copying typish/_types.py -> build/lib/typish copying typish/_state.py -> build/lib/typish copying typish/__init__.py -> build/lib/typish creating build/lib/typish/functions copying typish/functions/_common_ancestor.py -> build/lib/typish/functions copying typish/functions/_get_type_hints_of_callable.py -> build/lib/typish/functions copying typish/functions/_is_from_typing.py -> build/lib/typish/functions copying typish/functions/_get_args.py -> build/lib/typish/functions copying typish/functions/_get_type.py -> build/lib/typish/functions copying typish/functions/_is_optional_type.py -> build/lib/typish/functions copying typish/functions/_get_alias.py -> build/lib/typish/functions copying typish/functions/_get_mro.py -> build/lib/typish/functions copying typish/functions/_get_simple_name.py -> build/lib/typish/functions copying typish/functions/_get_origin.py -> build/lib/typish/functions copying typish/functions/_instance_of.py -> build/lib/typish/functions copying typish/functions/_subclass_of.py -> build/lib/typish/functions copying typish/functions/__init__.py -> build/lib/typish/functions copying typish/functions/_is_type_annotation.py -> build/lib/typish/functions creating build/lib/typish/classes copying typish/classes/_union_type.py -> build/lib/typish/classes copying typish/classes/_something.py -> build/lib/typish/classes copying typish/classes/_cls_dict.py -> build/lib/typish/classes copying typish/classes/_cls_function.py -> build/lib/typish/classes copying typish/classes/_subscriptable_type.py -> build/lib/typish/classes copying typish/classes/_literal.py -> build/lib/typish/classes copying typish/classes/__init__.py -> build/lib/typish/classes creating build/lib/typish/decorators copying typish/decorators/_hintable.py -> build/lib/typish/decorators copying typish/decorators/__init__.py -> build/lib/typish/decorators installing to build/bdist.linux-x86_64/wheel running install running install_lib creating build/bdist.linux-x86_64/wheel creating build/bdist.linux-x86_64/wheel/typish copying build/lib/typish/_meta.py -> build/bdist.linux-x86_64/wheel/./typish creating build/bdist.linux-x86_64/wheel/typish/functions copying build/lib/typish/functions/_common_ancestor.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_type_hints_of_callable.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_is_from_typing.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_args.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_type.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_is_optional_type.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_alias.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_mro.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_simple_name.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_origin.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_instance_of.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_subclass_of.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/__init__.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_is_type_annotation.py -> build/bdist.linux-x86_64/wheel/./typish/functions creating build/bdist.linux-x86_64/wheel/typish/classes copying build/lib/typish/classes/_union_type.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/classes/_something.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/classes/_cls_dict.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/classes/_cls_function.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/classes/_subscriptable_type.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/classes/_literal.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/classes/__init__.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/_types.py -> build/bdist.linux-x86_64/wheel/./typish copying build/lib/typish/_state.py -> build/bdist.linux-x86_64/wheel/./typish creating build/bdist.linux-x86_64/wheel/typish/decorators copying build/lib/typish/decorators/_hintable.py -> build/bdist.linux-x86_64/wheel/./typish/decorators copying build/lib/typish/decorators/__init__.py -> build/bdist.linux-x86_64/wheel/./typish/decorators copying build/lib/typish/__init__.py -> build/bdist.linux-x86_64/wheel/./typish running install_egg_info running egg_info creating typish.egg-info writing typish.egg-info/PKG-INFO writing dependency_links to typish.egg-info/dependency_links.txt writing requirements to typish.egg-info/requires.txt writing top-level names to typish.egg-info/top_level.txt writing manifest file 'typish.egg-info/SOURCES.txt' reading manifest file 'typish.egg-info/SOURCES.txt' adding license file 'LICENSE' writing manifest file 'typish.egg-info/SOURCES.txt' Copying typish.egg-info to build/bdist.linux-x86_64/wheel/./typish-1.9.3.egg-info running install_scripts creating build/bdist.linux-x86_64/wheel/typish-1.9.3.dist-info/WHEEL creating '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/.tmp-kpv7bzet/typish-1.9.3-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'typish/__init__.py' adding 'typish/_meta.py' adding 'typish/_state.py' adding 'typish/_types.py' adding 'typish/classes/__init__.py' adding 'typish/classes/_cls_dict.py' adding 'typish/classes/_cls_function.py' adding 'typish/classes/_literal.py' adding 'typish/classes/_something.py' adding 'typish/classes/_subscriptable_type.py' adding 'typish/classes/_union_type.py' adding 'typish/decorators/__init__.py' adding 'typish/decorators/_hintable.py' adding 'typish/functions/__init__.py' adding 'typish/functions/_common_ancestor.py' adding 'typish/functions/_get_alias.py' adding 'typish/functions/_get_args.py' adding 'typish/functions/_get_mro.py' adding 'typish/functions/_get_origin.py' adding 'typish/functions/_get_simple_name.py' adding 'typish/functions/_get_type.py' adding 'typish/functions/_get_type_hints_of_callable.py' adding 'typish/functions/_instance_of.py' adding 'typish/functions/_is_from_typing.py' adding 'typish/functions/_is_optional_type.py' adding 'typish/functions/_is_type_annotation.py' adding 'typish/functions/_subclass_of.py' adding 'typish-1.9.3.dist-info/licenses/LICENSE' adding 'typish-1.9.3.dist-info/METADATA' adding 'typish-1.9.3.dist-info/WHEEL' adding 'typish-1.9.3.dist-info/top_level.txt' adding 'typish-1.9.3.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel Successfully built typish-1.9.3-py3-none-any.whl I: pybuild plugin_pyproject:155: Unpacking wheel built for python3.14 with "installer" module I: pybuild plugin_pyproject:131: Building wheel for python3.13 with "build" module I: pybuild base:317: python3.13 -m build --skip-dependency-check --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13 * Building wheel... /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'tests_require' warnings.warn(msg) /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'test_suite' warnings.warn(msg) /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 :: MIT License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running bdist_wheel running build running build_py installing to build/bdist.linux-x86_64/wheel running install running install_lib creating build/bdist.linux-x86_64/wheel creating build/bdist.linux-x86_64/wheel/typish copying build/lib/typish/_meta.py -> build/bdist.linux-x86_64/wheel/./typish creating build/bdist.linux-x86_64/wheel/typish/functions copying build/lib/typish/functions/_common_ancestor.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_type_hints_of_callable.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_is_from_typing.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_args.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_type.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_is_optional_type.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_alias.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_mro.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_simple_name.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_get_origin.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_instance_of.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_subclass_of.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/__init__.py -> build/bdist.linux-x86_64/wheel/./typish/functions copying build/lib/typish/functions/_is_type_annotation.py -> build/bdist.linux-x86_64/wheel/./typish/functions creating build/bdist.linux-x86_64/wheel/typish/classes copying build/lib/typish/classes/_union_type.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/classes/_something.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/classes/_cls_dict.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/classes/_cls_function.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/classes/_subscriptable_type.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/classes/_literal.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/classes/__init__.py -> build/bdist.linux-x86_64/wheel/./typish/classes copying build/lib/typish/_types.py -> build/bdist.linux-x86_64/wheel/./typish copying build/lib/typish/_state.py -> build/bdist.linux-x86_64/wheel/./typish creating build/bdist.linux-x86_64/wheel/typish/decorators copying build/lib/typish/decorators/_hintable.py -> build/bdist.linux-x86_64/wheel/./typish/decorators copying build/lib/typish/decorators/__init__.py -> build/bdist.linux-x86_64/wheel/./typish/decorators copying build/lib/typish/__init__.py -> build/bdist.linux-x86_64/wheel/./typish running install_egg_info running egg_info writing typish.egg-info/PKG-INFO writing dependency_links to typish.egg-info/dependency_links.txt writing requirements to typish.egg-info/requires.txt writing top-level names to typish.egg-info/top_level.txt reading manifest file 'typish.egg-info/SOURCES.txt' adding license file 'LICENSE' writing manifest file 'typish.egg-info/SOURCES.txt' Copying typish.egg-info to build/bdist.linux-x86_64/wheel/./typish-1.9.3.egg-info running install_scripts creating build/bdist.linux-x86_64/wheel/typish-1.9.3.dist-info/WHEEL creating '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/.tmp-cchqzp19/typish-1.9.3-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'typish/__init__.py' adding 'typish/_meta.py' adding 'typish/_state.py' adding 'typish/_types.py' adding 'typish/classes/__init__.py' adding 'typish/classes/_cls_dict.py' adding 'typish/classes/_cls_function.py' adding 'typish/classes/_literal.py' adding 'typish/classes/_something.py' adding 'typish/classes/_subscriptable_type.py' adding 'typish/classes/_union_type.py' adding 'typish/decorators/__init__.py' adding 'typish/decorators/_hintable.py' adding 'typish/functions/__init__.py' adding 'typish/functions/_common_ancestor.py' adding 'typish/functions/_get_alias.py' adding 'typish/functions/_get_args.py' adding 'typish/functions/_get_mro.py' adding 'typish/functions/_get_origin.py' adding 'typish/functions/_get_simple_name.py' adding 'typish/functions/_get_type.py' adding 'typish/functions/_get_type_hints_of_callable.py' adding 'typish/functions/_instance_of.py' adding 'typish/functions/_is_from_typing.py' adding 'typish/functions/_is_optional_type.py' adding 'typish/functions/_is_type_annotation.py' adding 'typish/functions/_subclass_of.py' adding 'typish-1.9.3.dist-info/licenses/LICENSE' adding 'typish-1.9.3.dist-info/METADATA' adding 'typish-1.9.3.dist-info/WHEEL' adding 'typish-1.9.3.dist-info/top_level.txt' adding 'typish-1.9.3.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel Successfully built typish-1.9.3-py3-none-any.whl I: pybuild plugin_pyproject:155: Unpacking wheel built for python3.13 with "installer" module dh_auto_test -O--buildsystem=pybuild I: pybuild base:317: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build; python3.14 -m pytest tests ============================= test session starts ============================== platform linux -- Python 3.14.2, pytest-9.0.2, pluggy-1.6.0 rootdir: /<<PKGBUILDDIR>> plugins: typeguard-4.4.4 collected 122 items tests/classes/test_cls_dict.py ...... [ 4%] tests/classes/test_cls_function.py ..F......... [ 14%] tests/classes/test_literal_meta.py ... [ 17%] tests/classes/test_something.py ....... [ 22%] tests/classes/test_subscribtable_type.py ... [ 25%] tests/decorators/test_hintable.py ........................... [ 47%] tests/functions/test_common_ancestor.py ...... [ 52%] tests/functions/test_get_args_and_return_type.py .... [ 55%] tests/functions/test_get_mro.py ... [ 58%] tests/functions/test_get_type.py .............. [ 69%] tests/functions/test_get_type_hints_of_callable.py ..... [ 73%] tests/functions/test_instance_of.py .............. [ 85%] tests/functions/test_is_optional_type.py . [ 86%] tests/functions/test_is_type_annotation.py . [ 86%] tests/functions/test_origin_and_alias.py .. [ 88%] tests/functions/test_subclass_of.py .......... [ 96%] tests/test_generic_collection_type.py ... [ 99%] tests/test_meta.py . [100%] =================================== FAILURES =================================== __________________ TestClsFunction.test_complex_cls_function ___________________ self = <tests.classes.test_cls_function.TestClsFunction testMethod=test_complex_cls_function> def test_complex_cls_function(self): # Test if a more complex ClsFunction can be created without problems. _Size = Union[int, Literal[Any]] _Type = Union[type, Literal[Any]] > ClsFunction({ _Size: lambda: 1, _Type: lambda: 2, Tuple[_Size, _Type]: lambda: 3, Tuple[_Size, ...]: lambda: 4, Tuple[Tuple[_Size, ...], _Type]: lambda: 5, Tuple[Tuple[_Size, EllipsisType], _Type]: lambda: 6, Tuple[Tuple[Literal[Any], EllipsisType], Literal[Any]]: lambda: 7, }) tests/classes/test_cls_function.py:128: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ typish/classes/_cls_function.py:24: in __init__ self.body = ClsDict(body) ^^^^^^^^^^^^^ typish/classes/_cls_dict.py:25: in __new__ if not all([is_type_annotation(key) for key in args[0]]): ^^^^^^^^^^^^^^^^^^^^^^^ typish/functions/_is_type_annotation.py:22: in is_type_annotation or instance_of(item, super_cls) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ typish/functions/_instance_of.py:18: in instance_of return all(_instance_of(obj, clsinfo, state) for clsinfo in args) ^^^ typish/functions/_instance_of.py:18: in <genexpr> return all(_instance_of(obj, clsinfo, state) for clsinfo in args) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ typish/functions/_instance_of.py:35: in _instance_of return subclass_of(type_, clsinfo) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ typish/functions/_subclass_of.py:19: in subclass_of return all(_subclass_of(cls, clsinfo) for clsinfo in args) ^^^ typish/functions/_subclass_of.py:19: in <genexpr> return all(_subclass_of(cls, clsinfo) for clsinfo in args) ^^^^^^^^^^^^^^^^^^^^^^^^^^ typish/functions/_subclass_of.py:36: in _subclass_of result = _forward_subclass_check(cls, clsinfo) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ typish/functions/_subclass_of.py:54: in _forward_subclass_check cls_args = get_args(cls) ^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ t = <class 'typing.Union'> def get_args(t: type) -> typing.Tuple[type, ...]: """ Get the arguments from a collection type (e.g. ``typing.List[int]``) as a ``tuple``. :param t: the collection type. :return: a ``tuple`` containing types. """ args_ = getattr(t, '__args__', tuple()) or tuple() > args = tuple([attr for attr in args_ ^^^^^ if type(attr) != typing.TypeVar]) E TypeError: 'member_descriptor' object is not iterable typish/functions/_get_args.py:12: TypeError =========================== short test summary info ============================ FAILED tests/classes/test_cls_function.py::TestClsFunction::test_complex_cls_function ======================== 1 failed, 121 passed in 0.25s ========================= E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14/build; python3.14 -m pytest tests I: pybuild base:317: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build; python3.13 -m pytest tests ============================= test session starts ============================== platform linux -- Python 3.13.11, pytest-9.0.2, pluggy-1.6.0 rootdir: /<<PKGBUILDDIR>> plugins: typeguard-4.4.4 collected 122 items tests/classes/test_cls_dict.py ...... [ 4%] tests/classes/test_cls_function.py ............ [ 14%] tests/classes/test_literal_meta.py ... [ 17%] tests/classes/test_something.py ....... [ 22%] tests/classes/test_subscribtable_type.py ... [ 25%] tests/decorators/test_hintable.py ........................... [ 47%] tests/functions/test_common_ancestor.py ...... [ 52%] tests/functions/test_get_args_and_return_type.py .... [ 55%] tests/functions/test_get_mro.py ... [ 58%] tests/functions/test_get_type.py .............. [ 69%] tests/functions/test_get_type_hints_of_callable.py ..... [ 73%] tests/functions/test_instance_of.py .............. [ 85%] tests/functions/test_is_optional_type.py . [ 86%] tests/functions/test_is_type_annotation.py . [ 86%] tests/functions/test_origin_and_alias.py .. [ 88%] tests/functions/test_subclass_of.py .......... [ 96%] tests/test_generic_collection_type.py ... [ 99%] tests/test_meta.py . [100%] ============================= 122 passed in 0.33s ============================== dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.14 3.13" returned exit code 13 make: *** [debian/rules:4: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 --------------------------------------------------------------------------------

