Source: python-itemadapter
Version: 0.9.0-1
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: [email protected]
Usertags: ftbfs-20240728 ftbfs-trixie
Hi,
During a rebuild of all packages in sid, your package failed to build
on amd64.
Relevant part (hopefully):
> 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:311: python3.12 setup.py config
> running config
> dh_auto_build -O--buildsystem=pybuild
> I: pybuild base:311: /usr/bin/python3 setup.py build
> running build
> running build_py
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build/itemadapter
> copying itemadapter/adapter.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build/itemadapter
> copying itemadapter/utils.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build/itemadapter
> copying itemadapter/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build/itemadapter
> copying itemadapter/_imports.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build/itemadapter
> running egg_info
> creating itemadapter.egg-info
> writing itemadapter.egg-info/PKG-INFO
> writing dependency_links to itemadapter.egg-info/dependency_links.txt
> writing top-level names to itemadapter.egg-info/top_level.txt
> writing manifest file 'itemadapter.egg-info/SOURCES.txt'
> reading manifest file 'itemadapter.egg-info/SOURCES.txt'
> reading manifest template 'MANIFEST.in'
> adding license file 'LICENSE'
> writing manifest file 'itemadapter.egg-info/SOURCES.txt'
> copying itemadapter/py.typed ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build/itemadapter
> dh_auto_test -O--buildsystem=pybuild
> I: pybuild base:311: cd
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build; python3.12 -m
> pytest -v
> ============================= test session starts
> ==============================
> platform linux -- Python 3.12.4, pytest-8.3.1, pluggy-1.5.0 --
> /usr/bin/python3.12
> cachedir: .pytest_cache
> rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build
> configfile: pytest.ini
> collecting ... collected 131 items
>
> tests/test_adapter.py::ItemAdapterReprTestCase::test_repr_attrs PASSED [
> 0%]
> tests/test_adapter.py::ItemAdapterReprTestCase::test_repr_attrs_init_false
> PASSED [ 1%]
> tests/test_adapter.py::ItemAdapterReprTestCase::test_repr_dataclass PASSED [
> 2%]
> tests/test_adapter.py::ItemAdapterReprTestCase::test_repr_dataclass_init_false
> PASSED [ 3%]
> tests/test_adapter.py::ItemAdapterReprTestCase::test_repr_dict PASSED [
> 3%]
> tests/test_adapter.py::ItemAdapterReprTestCase::test_repr_pydantic PASSED [
> 4%]
> tests/test_adapter.py::ItemAdapterReprTestCase::test_repr_scrapy_item PASSED
> [ 5%]
> tests/test_adapter.py::ItemAdapterInitError::test_non_item PASSED [
> 6%]
> tests/test_adapter.py::DictTestCase::test_as_dict PASSED [
> 6%]
> tests/test_adapter.py::DictTestCase::test_as_dict_nested PASSED [
> 7%]
> tests/test_adapter.py::DictTestCase::test_empty_metadata PASSED [
> 8%]
> tests/test_adapter.py::DictTestCase::test_field_names PASSED [
> 9%]
> tests/test_adapter.py::DictTestCase::test_field_names_from_class PASSED [
> 9%]
> tests/test_adapter.py::DictTestCase::test_field_names_updated PASSED [
> 10%]
> tests/test_adapter.py::DictTestCase::test_get_set_value PASSED [
> 11%]
> tests/test_adapter.py::DictTestCase::test_get_value_keyerror PASSED [
> 12%]
> tests/test_adapter.py::DictTestCase::test_get_value_keyerror_item_dict PASSED
> [ 12%]
> tests/test_adapter.py::ScrapySubclassedItemTestCase::test_as_dict PASSED [
> 13%]
> tests/test_adapter.py::ScrapySubclassedItemTestCase::test_as_dict_nested
> PASSED [ 14%]
> tests/test_adapter.py::ScrapySubclassedItemTestCase::test_delitem_len_iter
> PASSED [ 15%]
> tests/test_adapter.py::ScrapySubclassedItemTestCase::test_field_names PASSED
> [ 16%]
> tests/test_adapter.py::ScrapySubclassedItemTestCase::test_field_names_from_class
> PASSED [ 16%]
> tests/test_adapter.py::ScrapySubclassedItemTestCase::test_field_names_from_class_empty
> PASSED [ 17%]
> tests/test_adapter.py::ScrapySubclassedItemTestCase::test_field_names_from_class_nested
> PASSED [ 18%]
> tests/test_adapter.py::ScrapySubclassedItemTestCase::test_get_field_meta_defined_fields
> PASSED [ 19%]
> tests/test_adapter.py::ScrapySubclassedItemTestCase::test_get_set_value
> PASSED [ 19%]
> tests/test_adapter.py::ScrapySubclassedItemTestCase::test_get_value_keyerror
> PASSED [ 20%]
> tests/test_adapter.py::ScrapySubclassedItemTestCase::test_get_value_keyerror_item_dict
> PASSED [ 21%]
> tests/test_adapter.py::ScrapySubclassedItemTestCase::test_metadata_common
> PASSED [ 22%]
> tests/test_adapter.py::ScrapySubclassedItemTestCase::test_set_value_keyerror
> PASSED [ 22%]
> tests/test_adapter.py::PydanticModelTestCase::test_as_dict PASSED [
> 23%]
> tests/test_adapter.py::PydanticModelTestCase::test_as_dict_nested PASSED [
> 24%]
> tests/test_adapter.py::PydanticModelTestCase::test_delitem_len_iter PASSED [
> 25%]
> tests/test_adapter.py::PydanticModelTestCase::test_field_names PASSED [
> 25%]
> tests/test_adapter.py::PydanticModelTestCase::test_field_names_from_class
> PASSED [ 26%]
> tests/test_adapter.py::PydanticModelTestCase::test_field_names_from_class_empty
> PASSED [ 27%]
> tests/test_adapter.py::PydanticModelTestCase::test_field_names_from_class_nested
> PASSED [ 28%]
> tests/test_adapter.py::PydanticModelTestCase::test_get_field_meta_defined_fields
> FAILED [ 29%]
> tests/test_adapter.py::PydanticModelTestCase::test_get_set_value PASSED [
> 29%]
> tests/test_adapter.py::PydanticModelTestCase::test_get_value_keyerror PASSED
> [ 30%]
> tests/test_adapter.py::PydanticModelTestCase::test_metadata_common FAILED [
> 31%]
> tests/test_adapter.py::PydanticModelTestCase::test_set_value_keyerror PASSED
> [ 32%]
> tests/test_adapter.py::DataClassItemTestCase::test_as_dict PASSED [
> 32%]
> tests/test_adapter.py::DataClassItemTestCase::test_as_dict_nested PASSED [
> 33%]
> tests/test_adapter.py::DataClassItemTestCase::test_delitem_len_iter PASSED [
> 34%]
> tests/test_adapter.py::DataClassItemTestCase::test_field_names PASSED [
> 35%]
> tests/test_adapter.py::DataClassItemTestCase::test_field_names_from_class
> PASSED [ 35%]
> tests/test_adapter.py::DataClassItemTestCase::test_field_names_from_class_empty
> PASSED [ 36%]
> tests/test_adapter.py::DataClassItemTestCase::test_field_names_from_class_nested
> PASSED [ 37%]
> tests/test_adapter.py::DataClassItemTestCase::test_get_field_meta_defined_fields
> PASSED [ 38%]
> tests/test_adapter.py::DataClassItemTestCase::test_get_set_value PASSED [
> 38%]
> tests/test_adapter.py::DataClassItemTestCase::test_get_value_keyerror PASSED
> [ 39%]
> tests/test_adapter.py::DataClassItemTestCase::test_metadata_common PASSED [
> 40%]
> tests/test_adapter.py::DataClassItemTestCase::test_set_value_keyerror PASSED
> [ 41%]
> tests/test_adapter.py::AttrsItemTestCase::test_as_dict PASSED [
> 41%]
> tests/test_adapter.py::AttrsItemTestCase::test_as_dict_nested PASSED [
> 42%]
> tests/test_adapter.py::AttrsItemTestCase::test_delitem_len_iter PASSED [
> 43%]
> tests/test_adapter.py::AttrsItemTestCase::test_field_names PASSED [
> 44%]
> tests/test_adapter.py::AttrsItemTestCase::test_field_names_from_class PASSED
> [ 45%]
> tests/test_adapter.py::AttrsItemTestCase::test_field_names_from_class_empty
> PASSED [ 45%]
> tests/test_adapter.py::AttrsItemTestCase::test_field_names_from_class_nested
> PASSED [ 46%]
> tests/test_adapter.py::AttrsItemTestCase::test_get_field_meta_defined_fields
> PASSED [ 47%]
> tests/test_adapter.py::AttrsItemTestCase::test_get_set_value PASSED [
> 48%]
> tests/test_adapter.py::AttrsItemTestCase::test_get_value_keyerror PASSED [
> 48%]
> tests/test_adapter.py::AttrsItemTestCase::test_metadata_common PASSED [
> 49%]
> tests/test_adapter.py::AttrsItemTestCase::test_set_value_keyerror PASSED [
> 50%]
> tests/test_adapter_attrs.py::AttrsTestCase::test_deprecated_is_instance
> PASSED [ 51%]
> tests/test_adapter_attrs.py::AttrsTestCase::test_false PASSED [
> 51%]
> tests/test_adapter_attrs.py::AttrsTestCase::test_module_import_error PASSED [
> 52%]
> tests/test_adapter_attrs.py::AttrsTestCase::test_module_not_available PASSED
> [ 53%]
> tests/test_adapter_attrs.py::AttrsTestCase::test_true PASSED [
> 54%]
> tests/test_adapter_dataclasses.py::DataclassTestCase::test_deprecated_is_instance
> PASSED [ 54%]
> tests/test_adapter_dataclasses.py::DataclassTestCase::test_false PASSED [
> 55%]
> tests/test_adapter_dataclasses.py::DataclassTestCase::test_true PASSED [
> 56%]
> tests/test_adapter_pydantic.py::PydanticTestCase::test_deprecated_is_instance
> PASSED [ 57%]
> tests/test_adapter_pydantic.py::PydanticTestCase::test_false PASSED [
> 58%]
> tests/test_adapter_pydantic.py::PydanticTestCase::test_module_import_error
> PASSED [ 58%]
> tests/test_adapter_pydantic.py::PydanticTestCase::test_module_not_available
> PASSED [ 59%]
> tests/test_adapter_pydantic.py::PydanticTestCase::test_true FAILED [
> 60%]
> tests/test_adapter_scrapy.py::ScrapyItemTestCase::test_deprecated_is_instance
> PASSED [ 61%]
> tests/test_adapter_scrapy.py::ScrapyItemTestCase::test_false PASSED [
> 61%]
> tests/test_adapter_scrapy.py::ScrapyItemTestCase::test_module_import_error
> PASSED [ 62%]
> tests/test_adapter_scrapy.py::ScrapyItemTestCase::test_module_not_available
> PASSED [ 63%]
> tests/test_adapter_scrapy.py::ScrapyItemTestCase::test_true PASSED [
> 64%]
> tests/test_adapter_scrapy.py::ScrapyDeprecatedBaseItemTestCase::test_deprecated_baseitem
> SKIPPED [ 64%]
> tests/test_adapter_scrapy.py::ScrapyDeprecatedBaseItemTestCase::test_deprecated_underscore_baseitem
> SKIPPED [ 65%]
> tests/test_adapter_scrapy.py::ScrapyDeprecatedBaseItemTestCase::test_removed_baseitem
> PASSED [ 66%]
> tests/test_interface.py::AdapterInterfaceTest::test_interface_class_methods
> PASSED [ 67%]
> tests/test_interface.py::BaseFakeItemAdapterTest::test_as_dict PASSED [
> 67%]
> tests/test_interface.py::BaseFakeItemAdapterTest::test_delitem_len_iter
> PASSED [ 68%]
> tests/test_interface.py::BaseFakeItemAdapterTest::test_field_names PASSED [
> 69%]
> tests/test_interface.py::BaseFakeItemAdapterTest::test_get_field_meta PASSED
> [ 70%]
> tests/test_interface.py::BaseFakeItemAdapterTest::test_get_field_meta_from_class
> PASSED [ 70%]
> tests/test_interface.py::BaseFakeItemAdapterTest::test_get_set_value PASSED [
> 71%]
> tests/test_interface.py::BaseFakeItemAdapterTest::test_get_set_value_init
> PASSED [ 72%]
> tests/test_interface.py::BaseFakeItemAdapterTest::test_get_value_keyerror
> PASSED [ 73%]
> tests/test_interface.py::BaseFakeItemAdapterTest::test_get_value_keyerror_item_dict
> PASSED [ 74%]
> tests/test_interface.py::BaseFakeItemAdapterTest::test_repr PASSED [
> 74%]
> tests/test_interface.py::BaseFakeItemAdapterTest::test_set_value_keyerror
> PASSED [ 75%]
> tests/test_interface.py::MetadataFakeItemAdapterTest::test_as_dict PASSED [
> 76%]
> tests/test_interface.py::MetadataFakeItemAdapterTest::test_delitem_len_iter
> PASSED [ 77%]
> tests/test_interface.py::MetadataFakeItemAdapterTest::test_field_names PASSED
> [ 77%]
> tests/test_interface.py::MetadataFakeItemAdapterTest::test_get_field_meta
> PASSED [ 78%]
> tests/test_interface.py::MetadataFakeItemAdapterTest::test_get_field_meta_from_class
> PASSED [ 79%]
> tests/test_interface.py::MetadataFakeItemAdapterTest::test_get_set_value
> PASSED [ 80%]
> tests/test_interface.py::MetadataFakeItemAdapterTest::test_get_set_value_init
> PASSED [ 80%]
> tests/test_interface.py::MetadataFakeItemAdapterTest::test_get_value_keyerror
> PASSED [ 81%]
> tests/test_interface.py::MetadataFakeItemAdapterTest::test_get_value_keyerror_item_dict
> PASSED [ 82%]
> tests/test_interface.py::MetadataFakeItemAdapterTest::test_repr PASSED [
> 83%]
> tests/test_interface.py::MetadataFakeItemAdapterTest::test_set_value_keyerror
> PASSED [ 83%]
> tests/test_interface.py::FieldNamesFakeItemAdapterTest::test_as_dict PASSED [
> 84%]
> tests/test_interface.py::FieldNamesFakeItemAdapterTest::test_delitem_len_iter
> PASSED [ 85%]
> tests/test_interface.py::FieldNamesFakeItemAdapterTest::test_field_names
> PASSED [ 86%]
> tests/test_interface.py::FieldNamesFakeItemAdapterTest::test_get_field_meta
> PASSED [ 87%]
> tests/test_interface.py::FieldNamesFakeItemAdapterTest::test_get_field_meta_from_class
> PASSED [ 87%]
> tests/test_interface.py::FieldNamesFakeItemAdapterTest::test_get_set_value
> PASSED [ 88%]
> tests/test_interface.py::FieldNamesFakeItemAdapterTest::test_get_set_value_init
> PASSED [ 89%]
> tests/test_interface.py::FieldNamesFakeItemAdapterTest::test_get_value_keyerror
> PASSED [ 90%]
> tests/test_interface.py::FieldNamesFakeItemAdapterTest::test_get_value_keyerror_item_dict
> PASSED [ 90%]
> tests/test_interface.py::FieldNamesFakeItemAdapterTest::test_repr PASSED [
> 91%]
> tests/test_interface.py::FieldNamesFakeItemAdapterTest::test_set_value_keyerror
> PASSED [ 92%]
> tests/test_itemadapter.py::ItemAdapterTestCase::test_repr PASSED [
> 93%]
> tests/test_itemadapter.py::ItemAdapterTestCase::test_repr_subclass PASSED [
> 93%]
> tests/test_utils.py::FieldMetaFromClassTestCase::test_empty_meta_for_dict
> PASSED [ 94%]
> tests/test_utils.py::FieldMetaFromClassTestCase::test_invalid_item_class
> PASSED [ 95%]
> tests/test_utils.py::ItemLikeTestCase::test_false PASSED [
> 96%]
> tests/test_utils.py::ItemLikeTestCase::test_true_attrs PASSED [
> 96%]
> tests/test_utils.py::ItemLikeTestCase::test_true_dataclass PASSED [
> 97%]
> tests/test_utils.py::ItemLikeTestCase::test_true_dict PASSED [
> 98%]
> tests/test_utils.py::ItemLikeTestCase::test_true_pydantic PASSED [
> 99%]
> tests/test_utils.py::ItemLikeTestCase::test_true_scrapy PASSED
> [100%]
>
> =================================== FAILURES
> ===================================
> ___________ PydanticModelTestCase.test_get_field_meta_defined_fields
> ___________
>
> self = <tests.test_adapter.PydanticModelTestCase
> testMethod=test_get_field_meta_defined_fields>
>
> def test_get_field_meta_defined_fields(self):
> adapter = ItemAdapter(self.item_class())
> > self.assertEqual(adapter.get_field_meta("name"),
> > MappingProxyType({"serializer": str}))
>
> tests/test_adapter.py:189:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
> itemadapter/adapter.py:345: in get_field_meta
> return self.adapter.get_field_meta(field_name)
> itemadapter/adapter.py:62: in get_field_meta
> return self.get_field_meta_from_class(self.item.__class__, field_name)
> itemadapter/adapter.py:174: in get_field_meta_from_class
> return _get_pydantic_model_metadata(item_class, field_name)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> item_model = <class 'tests.PydanticModel'>, field_name = 'name'
>
> def _get_pydantic_model_metadata(item_model: Any, field_name: str) ->
> MappingProxyType:
> metadata = {}
> > field = item_model.__fields__[field_name].field_info
> E AttributeError: 'FieldInfo' object has no attribute 'field_info'
>
> itemadapter/utils.py:26: AttributeError
> __________________ PydanticModelTestCase.test_metadata_common
> __________________
>
> self = <tests.test_adapter.PydanticModelTestCase
> testMethod=test_metadata_common>
>
> def test_metadata_common(self):
> adapter = ItemAdapter(self.item_class())
> > self.assertIsInstance(adapter.get_field_meta("name"),
> > MappingProxyType)
>
> tests/test_adapter.py:182:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
> itemadapter/adapter.py:345: in get_field_meta
> return self.adapter.get_field_meta(field_name)
> itemadapter/adapter.py:62: in get_field_meta
> return self.get_field_meta_from_class(self.item.__class__, field_name)
> itemadapter/adapter.py:174: in get_field_meta_from_class
> return _get_pydantic_model_metadata(item_class, field_name)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> item_model = <class 'tests.PydanticModel'>, field_name = 'name'
>
> def _get_pydantic_model_metadata(item_model: Any, field_name: str) ->
> MappingProxyType:
> metadata = {}
> > field = item_model.__fields__[field_name].field_info
> E AttributeError: 'FieldInfo' object has no attribute 'field_info'
>
> itemadapter/utils.py:26: AttributeError
> __________________________ PydanticTestCase.test_true
> __________________________
>
> self = <tests.test_adapter_pydantic.PydanticTestCase testMethod=test_true>
>
> @unittest.skipIf(not PydanticModel, "pydantic module is not available")
> def test_true(self):
> from itemadapter.adapter import PydanticAdapter
>
> self.assertTrue(PydanticAdapter.is_item(PydanticModel()))
> self.assertTrue(PydanticAdapter.is_item(PydanticModel(name="asdf",
> value=1234)))
> # field metadata
> self.assertEqual(
> > get_field_meta_from_class(PydanticModel, "name"),
> MappingProxyType({"serializer": str}),
> )
>
> tests/test_adapter_pydantic.py:67:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
> itemadapter/utils.py:81: in get_field_meta_from_class
> return ItemAdapter.get_field_meta_from_class(item_class, field_name)
> itemadapter/adapter.py:313: in get_field_meta_from_class
> return adapter_class.get_field_meta_from_class(item_class, field_name)
> itemadapter/adapter.py:174: in get_field_meta_from_class
> return _get_pydantic_model_metadata(item_class, field_name)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
>
> item_model = <class 'tests.PydanticModel'>, field_name = 'name'
>
> def _get_pydantic_model_metadata(item_model: Any, field_name: str) ->
> MappingProxyType:
> metadata = {}
> > field = item_model.__fields__[field_name].field_info
> E AttributeError: 'FieldInfo' object has no attribute 'field_info'
>
> itemadapter/utils.py:26: AttributeError
> =============================== warnings summary
> ===============================
> ../../../../../../usr/lib/python3/dist-packages/pydantic/fields.py:798
> ../../../../../../usr/lib/python3/dist-packages/pydantic/fields.py:798
> /usr/lib/python3/dist-packages/pydantic/fields.py:798:
> PydanticDeprecatedSince20: Using extra keyword arguments on `Field` is
> deprecated and will be removed. Use `json_schema_extra` instead. (Extra keys:
> 'serializer'). Deprecated in Pydantic V2.0 to be removed in V3.0. See
> Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.4/migration/
> warn(
>
> ../../../../../../usr/lib/python3/dist-packages/pydantic/fields.py:789
> /usr/lib/python3/dist-packages/pydantic/fields.py:789:
> PydanticDeprecatedSince20: `allow_mutation` is deprecated and will be
> removed. use `frozen` instead. Deprecated in Pydantic V2.0 to be removed in
> V3.0. See Pydantic V2 Migration Guide at
> https://errors.pydantic.dev/2.4/migration/
> warn('`allow_mutation` is deprecated and will be removed. use `frozen`
> instead', DeprecationWarning)
>
> ../../../../../../usr/lib/python3/dist-packages/pydantic/_internal/_config.py:267
> ../../../../../../usr/lib/python3/dist-packages/pydantic/_internal/_config.py:267
> /usr/lib/python3/dist-packages/pydantic/_internal/_config.py:267:
> PydanticDeprecatedSince20: Support for class-based `config` is deprecated,
> use ConfigDict instead. Deprecated in Pydantic V2.0 to be removed in V3.0.
> See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.4/migration/
> warnings.warn(DEPRECATION_MESSAGE, DeprecationWarning)
>
> tests/test_adapter.py: 10 warnings
>
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build/itemadapter/adapter.py:206:
> PydanticDeprecatedSince20: The `__fields__` attribute is deprecated, use
> `model_fields` instead. Deprecated in Pydantic V2.0 to be removed in V3.0.
> See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.4/migration/
> return iter(attr for attr in self.item.__fields__ if hasattr(self.item,
> attr))
>
> tests/test_adapter.py: 44 warnings
> /usr/lib/python3/dist-packages/pydantic/main.py:935:
> PydanticDeprecatedSince20: The `__fields__` attribute is deprecated, use
> `model_fields` instead. Deprecated in Pydantic V2.0 to be removed in V3.0.
> See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.4/migration/
> warnings.warn('The `__fields__` attribute is deprecated, use
> `model_fields` instead.', DeprecationWarning)
>
> tests/test_adapter.py: 24 warnings
>
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build/itemadapter/adapter.py:186:
> PydanticDeprecatedSince20: The `__fields__` attribute is deprecated, use
> `model_fields` instead. Deprecated in Pydantic V2.0 to be removed in V3.0.
> See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.4/migration/
> if field_name in self.item.__fields__:
>
> tests/test_adapter.py::PydanticModelTestCase::test_delitem_len_iter
> tests/test_adapter.py::PydanticModelTestCase::test_delitem_len_iter
> tests/test_adapter.py::PydanticModelTestCase::test_delitem_len_iter
> tests/test_adapter.py::PydanticModelTestCase::test_delitem_len_iter
> tests/test_adapter.py::PydanticModelTestCase::test_delitem_len_iter
>
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build/itemadapter/adapter.py:197:
> PydanticDeprecatedSince20: The `__fields__` attribute is deprecated, use
> `model_fields` instead. Deprecated in Pydantic V2.0 to be removed in V3.0.
> See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.4/migration/
> if field_name in self.item.__fields__:
>
> tests/test_adapter.py::PydanticModelTestCase::test_field_names
> tests/test_adapter.py::PydanticModelTestCase::test_field_names
>
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build/itemadapter/adapter.py:183:
> PydanticDeprecatedSince20: The `__fields__` attribute is deprecated, use
> `model_fields` instead. Deprecated in Pydantic V2.0 to be removed in V3.0.
> See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.4/migration/
> return KeysView(self.item.__fields__)
>
> tests/test_adapter.py::PydanticModelTestCase::test_field_names_from_class
> tests/test_adapter.py::PydanticModelTestCase::test_field_names_from_class_empty
> tests/test_adapter.py::PydanticModelTestCase::test_field_names_from_class_nested
>
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build/itemadapter/adapter.py:180:
> PydanticDeprecatedSince20: The `__fields__` attribute is deprecated, use
> `model_fields` instead. Deprecated in Pydantic V2.0 to be removed in V3.0.
> See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.4/migration/
> return list(item_class.__fields__.keys()) # type: ignore[attr-defined]
>
> tests/test_adapter.py::PydanticModelTestCase::test_field_names_from_class
> tests/test_adapter.py::PydanticModelTestCase::test_field_names_from_class_empty
> tests/test_adapter.py::PydanticModelTestCase::test_field_names_from_class_nested
> tests/test_adapter.py::PydanticModelTestCase::test_get_field_meta_defined_fields
> tests/test_adapter.py::PydanticModelTestCase::test_metadata_common
> tests/test_adapter_pydantic.py::PydanticTestCase::test_true
>
> /usr/lib/python3/dist-packages/pydantic/_internal/_model_construction.py:249:
> PydanticDeprecatedSince20: The `__fields__` attribute is deprecated, use
> `model_fields` instead. Deprecated in Pydantic V2.0 to be removed in V3.0.
> See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.4/migration/
> warnings.warn('The `__fields__` attribute is deprecated, use
> `model_fields` instead.', DeprecationWarning)
>
> tests/test_adapter.py::PydanticModelTestCase::test_get_field_meta_defined_fields
> tests/test_adapter.py::PydanticModelTestCase::test_metadata_common
> tests/test_adapter_pydantic.py::PydanticTestCase::test_true
>
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build/itemadapter/utils.py:26:
> PydanticDeprecatedSince20: The `__fields__` attribute is deprecated, use
> `model_fields` instead. Deprecated in Pydantic V2.0 to be removed in V3.0.
> See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.4/migration/
> field = item_model.__fields__[field_name].field_info
>
> tests/test_adapter.py::PydanticModelTestCase::test_get_set_value
> tests/test_adapter.py::PydanticModelTestCase::test_get_set_value
> tests/test_adapter.py::PydanticModelTestCase::test_set_value_keyerror
>
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build/itemadapter/adapter.py:191:
> PydanticDeprecatedSince20: The `__fields__` attribute is deprecated, use
> `model_fields` instead. Deprecated in Pydantic V2.0 to be removed in V3.0.
> See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.4/migration/
> if field_name in self.item.__fields__:
>
> -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
> =========================== short test summary info
> ============================
> FAILED
> tests/test_adapter.py::PydanticModelTestCase::test_get_field_meta_defined_fields
> FAILED tests/test_adapter.py::PydanticModelTestCase::test_metadata_common -
> A...
> FAILED tests/test_adapter_pydantic.py::PydanticTestCase::test_true -
> Attribut...
> ============ 3 failed, 126 passed, 2 skipped, 105 warnings in 0.35s
> ============
> E: pybuild pybuild:389: test: plugin distutils failed with: exit code=1: cd
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_itemadapter/build; python3.12 -m
> pytest -v
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.12
> returned exit code 13
The full build log is available from:
http://qa-logs.debian.net/2024/07/28/python-itemadapter_0.9.0-1_unstable.log
All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20240728;[email protected]
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20240728&[email protected]&allbugs=1&cseverity=1&ctags=1&caffected=1#results
A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!
If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects
If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.