Package: src:pyicloud Version: 2.0.1-1 Severity: serious Tags: ftbfs forky sid
Dear maintainer: During a rebuild of all packages in unstable, your package failed to build. Below you will find how the build ends (probably the most relevant part, but not necessarily). If required, the full build log is available here: https://people.debian.org/~sanvila/build-logs/202509/ 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 could not 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:pyicloud, so that this is still visible in the BTS web page for this package. Thanks. -------------------------------------------------------------------------------- [...] debian/rules clean dh clean --with python3 --buildsystem=pybuild dh_auto_clean -O--buildsystem=pybuild dh_autoreconf_clean -O--buildsystem=pybuild dh_clean -O--buildsystem=pybuild debian/rules binary dh binary --with python3 --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:129: Building wheel for python3.13 with "build" module I: pybuild base:311: python3.13 -m build --skip-dependency-check --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pyicloud * Building wheel... running bdist_wheel running build running build_py creating build/lib/pyicloud copying pyicloud/exceptions.py -> build/lib/pyicloud copying pyicloud/base.py -> build/lib/pyicloud copying pyicloud/session.py -> build/lib/pyicloud copying pyicloud/const.py -> build/lib/pyicloud copying pyicloud/cmdline.py -> build/lib/pyicloud copying pyicloud/utils.py -> build/lib/pyicloud copying pyicloud/__init__.py -> build/lib/pyicloud creating build/lib/pyicloud/services copying pyicloud/services/calendar.py -> build/lib/pyicloud/services copying pyicloud/services/drive.py -> build/lib/pyicloud/services copying pyicloud/services/base.py -> build/lib/pyicloud/services copying pyicloud/services/account.py -> build/lib/pyicloud/services copying pyicloud/services/hidemyemail.py -> build/lib/pyicloud/services copying pyicloud/services/ubiquity.py -> build/lib/pyicloud/services copying pyicloud/services/contacts.py -> build/lib/pyicloud/services copying pyicloud/services/findmyiphone.py -> build/lib/pyicloud/services copying pyicloud/services/reminders.py -> build/lib/pyicloud/services copying pyicloud/services/photos.py -> build/lib/pyicloud/services copying pyicloud/services/__init__.py -> build/lib/pyicloud/services running egg_info creating pyicloud.egg-info writing pyicloud.egg-info/PKG-INFO writing dependency_links to pyicloud.egg-info/dependency_links.txt writing entry points to pyicloud.egg-info/entry_points.txt writing requirements to pyicloud.egg-info/requires.txt writing top-level names to pyicloud.egg-info/top_level.txt writing manifest file 'pyicloud.egg-info/SOURCES.txt' reading manifest file 'pyicloud.egg-info/SOURCES.txt' adding license file 'LICENSE.txt' writing manifest file 'pyicloud.egg-info/SOURCES.txt' 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/pyicloud copying build/lib/pyicloud/exceptions.py -> build/bdist.linux-x86_64/wheel/./pyicloud copying build/lib/pyicloud/base.py -> build/bdist.linux-x86_64/wheel/./pyicloud creating build/bdist.linux-x86_64/wheel/pyicloud/services copying build/lib/pyicloud/services/calendar.py -> build/bdist.linux-x86_64/wheel/./pyicloud/services copying build/lib/pyicloud/services/drive.py -> build/bdist.linux-x86_64/wheel/./pyicloud/services copying build/lib/pyicloud/services/base.py -> build/bdist.linux-x86_64/wheel/./pyicloud/services copying build/lib/pyicloud/services/account.py -> build/bdist.linux-x86_64/wheel/./pyicloud/services copying build/lib/pyicloud/services/hidemyemail.py -> build/bdist.linux-x86_64/wheel/./pyicloud/services copying build/lib/pyicloud/services/ubiquity.py -> build/bdist.linux-x86_64/wheel/./pyicloud/services copying build/lib/pyicloud/services/contacts.py -> build/bdist.linux-x86_64/wheel/./pyicloud/services copying build/lib/pyicloud/services/findmyiphone.py -> build/bdist.linux-x86_64/wheel/./pyicloud/services copying build/lib/pyicloud/services/reminders.py -> build/bdist.linux-x86_64/wheel/./pyicloud/services copying build/lib/pyicloud/services/photos.py -> build/bdist.linux-x86_64/wheel/./pyicloud/services copying build/lib/pyicloud/services/__init__.py -> build/bdist.linux-x86_64/wheel/./pyicloud/services copying build/lib/pyicloud/session.py -> build/bdist.linux-x86_64/wheel/./pyicloud copying build/lib/pyicloud/const.py -> build/bdist.linux-x86_64/wheel/./pyicloud copying build/lib/pyicloud/cmdline.py -> build/bdist.linux-x86_64/wheel/./pyicloud copying build/lib/pyicloud/utils.py -> build/bdist.linux-x86_64/wheel/./pyicloud copying build/lib/pyicloud/__init__.py -> build/bdist.linux-x86_64/wheel/./pyicloud running install_egg_info Copying pyicloud.egg-info to build/bdist.linux-x86_64/wheel/./pyicloud-0.0.0.egg-info running install_scripts creating build/bdist.linux-x86_64/wheel/pyicloud-0.0.0.dist-info/WHEEL creating '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pyicloud/.tmp-fto0s39j/pyicloud-0.0.0-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'pyicloud/__init__.py' adding 'pyicloud/base.py' adding 'pyicloud/cmdline.py' adding 'pyicloud/const.py' adding 'pyicloud/exceptions.py' adding 'pyicloud/session.py' adding 'pyicloud/utils.py' adding 'pyicloud/services/__init__.py' adding 'pyicloud/services/account.py' adding 'pyicloud/services/base.py' adding 'pyicloud/services/calendar.py' adding 'pyicloud/services/contacts.py' adding 'pyicloud/services/drive.py' adding 'pyicloud/services/findmyiphone.py' adding 'pyicloud/services/hidemyemail.py' adding 'pyicloud/services/photos.py' adding 'pyicloud/services/reminders.py' adding 'pyicloud/services/ubiquity.py' adding 'pyicloud-0.0.0.dist-info/licenses/LICENSE.txt' adding 'pyicloud-0.0.0.dist-info/METADATA' adding 'pyicloud-0.0.0.dist-info/WHEEL' adding 'pyicloud-0.0.0.dist-info/entry_points.txt' adding 'pyicloud-0.0.0.dist-info/top_level.txt' adding 'pyicloud-0.0.0.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel Successfully built pyicloud-0.0.0-py3-none-any.whl I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.13 with "installer" module dh_auto_test -O--buildsystem=pybuild I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pyicloud/build; python3.13 -m pytest tests ============================= test session starts ============================== platform linux -- Python 3.13.7, pytest-8.4.1, pluggy-1.6.0 rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pyicloud/build configfile: pyproject.toml plugins: socket-0.7.0, typeguard-4.4.4 collected 137 items tests/test_account.py ....... [ 5%] tests/test_base.py ..................... [ 20%] tests/test_calendar.py ......FFFFFF [ 29%] tests/test_cmdline.py ............... [ 40%] tests/test_contacts.py ...... [ 44%] tests/test_drive.py ......................... [ 62%] tests/test_findmyiphone.py .... [ 65%] tests/test_hidemyemail.py ......... [ 72%] tests/test_photos.py ....................... [ 89%] tests/test_reminders.py ..... [ 92%] tests/test_ubiquity.py .......... [100%] =================================== FAILURES =================================== _____________________ test_calendar_service_get_calendars ______________________ def test_calendar_service_get_calendars() -> None: """Test CalendarService get_calendars method.""" mock_session = MagicMock(spec=PyiCloudSession) mock_response = MagicMock(spec=Response) mock_response.json.return_value = {"Collection": [{"title": "Test Calendar"}]} mock_session.get.return_value = mock_response with patch("pyicloud.services.calendar.get_localzone_name", return_value="UTC"): service = CalendarService( "https://example.com", mock_session, {"dsid": "12345"} ) > calendars = service.get_calendars() ^^^^^^^^^^^^^^^^^^^^^^^ tests/test_calendar.py:82: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pyicloud/services/calendar.py:298: in get_calendars params: dict[str, Any] = self.default_params ^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pyicloud.services.calendar.CalendarService object at 0x7fe697a41550> @property def default_params(self) -> dict[str, Any]: """Returns the default parameters for the calendar service.""" today: datetime = datetime.today() first_day, last_day = monthrange(today.year, today.month) > from_dt = datetime(today.year, today.month, first_day) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E ValueError: day is out of range for month pyicloud/services/calendar.py:224: ValueError ______________________ test_calendar_service_add_calendar ______________________ def test_calendar_service_add_calendar() -> None: """Test CalendarService add_calendar method.""" mock_session = MagicMock(spec=PyiCloudSession) mock_response = MagicMock(spec=Response) mock_response.json.return_value = {"status": "success"} mock_session.post.return_value = mock_response with patch("pyicloud.services.calendar.get_localzone_name", return_value="UTC"): service = CalendarService( "https://example.com", mock_session, {"dsid": "12345"} ) calendar = CalendarObject(title="New Calendar") > response = service.add_calendar(calendar) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_calendar.py:98: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pyicloud/services/calendar.py:313: in add_calendar params: dict[str, Any] = self.default_params ^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pyicloud.services.calendar.CalendarService object at 0x7fe697689450> @property def default_params(self) -> dict[str, Any]: """Returns the default parameters for the calendar service.""" today: datetime = datetime.today() first_day, last_day = monthrange(today.year, today.month) > from_dt = datetime(today.year, today.month, first_day) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E ValueError: day is out of range for month pyicloud/services/calendar.py:224: ValueError ____________________ test_calendar_service_remove_calendar _____________________ def test_calendar_service_remove_calendar() -> None: """Test CalendarService remove_calendar method.""" mock_session = MagicMock(spec=PyiCloudSession) mock_response = MagicMock(spec=Response) mock_response.json.return_value = {"status": "success"} mock_session.post.return_value = mock_response with patch("pyicloud.services.calendar.get_localzone_name", return_value="UTC"): service = CalendarService( "https://example.com", mock_session, {"dsid": "12345"} ) > response = service.remove_calendar("calendar123") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_calendar.py:113: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pyicloud/services/calendar.py:326: in remove_calendar params: dict[str, Any] = self.default_params ^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pyicloud.services.calendar.CalendarService object at 0x7fe697688190> @property def default_params(self) -> dict[str, Any]: """Returns the default parameters for the calendar service.""" today: datetime = datetime.today() first_day, last_day = monthrange(today.year, today.month) > from_dt = datetime(today.year, today.month, first_day) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E ValueError: day is out of range for month pyicloud/services/calendar.py:224: ValueError _______________________ test_calendar_service_get_events _______________________ def test_calendar_service_get_events() -> None: """Test CalendarService get_events method.""" mock_session = MagicMock(spec=PyiCloudSession) mock_response = MagicMock(spec=Response) mock_response.json.return_value = {"Event": [{"title": "Test Event"}]} mock_session.get.return_value = mock_response with patch("pyicloud.services.calendar.get_localzone_name", return_value="UTC"): service = CalendarService( "https://example.com", mock_session, {"dsid": "12345"} ) > events = service.get_events() ^^^^^^^^^^^^^^^^^^^^ tests/test_calendar.py:127: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pyicloud/services/calendar.py:361: in get_events response: dict[str, Any] = self.refresh_client(from_dt, to_dt) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pyicloud.services.calendar.CalendarService object at 0x7fe6976b2650> from_dt = None, to_dt = None def refresh_client(self, from_dt=None, to_dt=None) -> dict[str, Any]: """ Refreshes the CalendarService endpoint, ensuring that the event data is up-to-date. If no 'from_dt' or 'to_dt' datetimes have been given, the range becomes this month. """ today: datetime = datetime.today() first_day, last_day = monthrange(today.year, today.month) if not from_dt: > from_dt = datetime(today.year, today.month, first_day) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E ValueError: day is out of range for month pyicloud/services/calendar.py:267: ValueError _______________________ test_calendar_service_add_event ________________________ def test_calendar_service_add_event() -> None: """Test CalendarService add_event method.""" mock_session = MagicMock(spec=PyiCloudSession) mock_response = MagicMock(spec=Response) mock_response.json.return_value = {"status": "success"} mock_session.post.return_value = mock_response with patch("pyicloud.services.calendar.get_localzone_name", return_value="UTC"): service = CalendarService( "https://example.com", mock_session, {"dsid": "12345"} ) service.get_ctag = MagicMock(return_value="etag123") event = EventObject(pguid="calendar123", title="New Event") > response = service.add_event(event) ^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_calendar.py:144: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pyicloud/services/calendar.py:402: in add_event params = self.default_params ^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pyicloud.services.calendar.CalendarService object at 0x7fe697b5cd60> @property def default_params(self) -> dict[str, Any]: """Returns the default parameters for the calendar service.""" today: datetime = datetime.today() first_day, last_day = monthrange(today.year, today.month) > from_dt = datetime(today.year, today.month, first_day) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E ValueError: day is out of range for month pyicloud/services/calendar.py:224: ValueError ______________________ test_calendar_service_remove_event ______________________ def test_calendar_service_remove_event() -> None: """Test CalendarService remove_event method.""" mock_session = MagicMock(spec=PyiCloudSession) mock_response = MagicMock(spec=Response) mock_response.json.return_value = {"status": "success"} mock_session.post.return_value = mock_response with patch("pyicloud.services.calendar.get_localzone_name", return_value="UTC"): service = CalendarService( "https://example.com", mock_session, {"dsid": "12345"} ) service.get_ctag = MagicMock(return_value="etag123") event = EventObject(pguid="calendar123", title="New Event") > response = service.remove_event(event) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_calendar.py:161: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ pyicloud/services/calendar.py:419: in remove_event params: dict[str, Any] = self.default_params ^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <pyicloud.services.calendar.CalendarService object at 0x7fe6977004d0> @property def default_params(self) -> dict[str, Any]: """Returns the default parameters for the calendar service.""" today: datetime = datetime.today() first_day, last_day = monthrange(today.year, today.month) > from_dt = datetime(today.year, today.month, first_day) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E ValueError: day is out of range for month pyicloud/services/calendar.py:224: ValueError =============================== warnings summary =============================== tests/test_base.py::test_confirm_security_key_success tests/test_base.py::test_confirm_security_key_success tests/test_base.py::test_confirm_security_key_success tests/test_base.py::test_confirm_security_key_success tests/test_base.py::test_confirm_security_key_success tests/test_base.py::test_confirm_security_key_success tests/test_base.py::test_confirm_security_key_success tests/test_base.py::test_confirm_security_key_success tests/test_base.py::test_confirm_security_key_success /usr/lib/python3/dist-packages/fido2/features.py:66: DeprecationWarning: Deprecated use of webauthn_json_mapping. You are using deprecated functionality which will change in the next major version of python-fido2. You can opt-in to use the new functionality now by adding the following to your code somewhere where it gets executed prior to using the affected functionality: import fido2.features fido2.features.webauthn_json_mapping.enabled = True To silence this warning but retain the current behavior, instead set enabled to False: fido2.features.webauthn_json_mapping.enabled = False JSON values for WebAuthn data class Mapping interface. This changes the keys and values used by the webauthn data classes when accessed using the Mapping (dict) interface (eg. user_entity["id"] and the from_dict() methods) to be JSON-friendly and align with the current draft of the next WebAuthn Level specification. For the most part, this means that binary values (bytes) are represented as URL-safe base64 encoded strings instead. warnings.warn( -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED tests/test_calendar.py::test_calendar_service_get_calendars - ValueErr... FAILED tests/test_calendar.py::test_calendar_service_add_calendar - ValueErro... FAILED tests/test_calendar.py::test_calendar_service_remove_calendar - ValueE... FAILED tests/test_calendar.py::test_calendar_service_get_events - ValueError:... FAILED tests/test_calendar.py::test_calendar_service_add_event - ValueError: ... FAILED tests/test_calendar.py::test_calendar_service_remove_event - ValueErro... ================== 6 failed, 131 passed, 9 warnings in 0.54s =================== E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pyicloud/build; python3.13 -m pytest tests dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 returned exit code 13 make: *** [debian/rules:7: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 --------------------------------------------------------------------------------

