Package: src:celery Version: 5.6.2-1 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/202601/ 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:celery, so that this is still visible in the BTS web page for this package. Thanks. -------------------------------------------------------------------------------- [...] debian/rules clean dh clean --with sphinxdoc --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 sphinxdoc --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:139: Building wheel for python3.14 with "build" module I: pybuild base:384: python3.14 -m build --skip-dependency-check --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_celery * Building wheel... <string>:131: DeprecationWarning: codecs.open() is deprecated. Use open() instead. [... snipped ...] t/unit/test_canvas.py . [ 67%] t/unit/test_loops.py . [ 67%] t/unit/utils/test_annotations.py ......... [ 67%] t/unit/utils/test_collections.py ....................................... [ 68%] ............. [ 69%] t/unit/utils/test_debug.py ............. [ 69%] t/unit/utils/test_deprecated.py ... [ 69%] t/unit/utils/test_dispatcher.py ........... [ 69%] t/unit/utils/test_functional.py ...................x.................... [ 71%] ...................... [ 71%] t/unit/utils/test_graph.py ......... [ 72%] t/unit/utils/test_imports.py ......... [ 72%] t/unit/utils/test_iso8601.py ......... [ 72%] t/unit/utils/test_local.py ........................ [ 73%] t/unit/utils/test_nodenames.py . [ 73%] t/unit/utils/test_objects.py . [ 73%] t/unit/utils/test_pickle.py .. [ 73%] t/unit/utils/test_platforms.py ......................................... [ 74%] ........................................................ [ 76%] t/unit/utils/test_saferepr.py .......................................... [ 77%] ............................ [ 78%] t/unit/utils/test_serialization.py .............................. [ 79%] t/unit/utils/test_sysinfo.py .. [ 79%] t/unit/utils/test_term.py ............................ [ 80%] t/unit/utils/test_text.py ............. [ 80%] t/unit/utils/test_threads.py ...... [ 81%] t/unit/utils/test_time.py .............................................. [ 82%] ............ [ 82%] t/unit/utils/test_timer2.py ......... [ 83%] t/unit/utils/test_utils.py .... [ 83%] t/unit/worker/test_autoscale.py .............. [ 83%] t/unit/worker/test_bootsteps.py .............................. [ 84%] t/unit/worker/test_components.py ......... [ 84%] t/unit/worker/test_consumer.py ......................................... [ 86%] ............................................... [ 87%] t/unit/worker/test_control.py .......................................... [ 88%] ............. [ 89%] t/unit/worker/test_heartbeat.py ..... [ 89%] t/unit/worker/test_loops.py ........................................ [ 90%] t/unit/worker/test_native_delayed_delivery.py .......................... [ 91%] . [ 91%] t/unit/worker/test_request.py .......................................... [ 92%] ........................................................................ [ 94%] .... [ 95%] t/unit/worker/test_revoke.py . [ 95%] t/unit/worker/test_state.py ................ [ 95%] t/unit/worker/test_strategy.py ......................................... [ 96%] ............................ [ 97%] t/unit/worker/test_worker.py ..................................s........ [ 99%] .............................. [100%] =================================== FAILURES =================================== _____________________ test_MongoBackend.test_store_result ______________________ self = <t.unit.backends.test_mongodb.test_MongoBackend object at 0x7fd53bd8f3e0> mock_get_database = <MagicMock name='_get_database' id='140553660116208'> @patch('celery.backends.mongodb.MongoBackend._get_database') def test_store_result(self, mock_get_database): self.backend.taskmeta_collection = MONGODB_COLLECTION mock_database = MagicMock(spec=['__getitem__', '__setitem__']) mock_collection = Mock() mock_get_database.return_value = mock_database mock_database.__getitem__.return_value = mock_collection ret_val = self.backend._store_result( sentinel.task_id, sentinel.result, sentinel.status) mock_get_database.assert_called_once_with() mock_database.__getitem__.assert_called_once_with(MONGODB_COLLECTION) mock_collection.replace_one.assert_called_once_with(ANY, ANY, upsert=True) assert sentinel.result == ret_val > mock_collection.replace_one.side_effect = InvalidDocument() ^^^^^^^^^^^^^^^^^ E TypeError: InvalidDocument.__init__() missing 1 required positional argument: 'message' t/unit/backends/test_mongodb.py:393: TypeError _______________ test_MongoBackend.test_store_result_with_request _______________ self = <t.unit.backends.test_mongodb.test_MongoBackend object at 0x7fd53ba7ad50> mock_get_database = <MagicMock name='_get_database' id='140553660119568'> @patch('celery.backends.mongodb.MongoBackend._get_database') def test_store_result_with_request(self, mock_get_database): self.backend.taskmeta_collection = MONGODB_COLLECTION mock_database = MagicMock(spec=['__getitem__', '__setitem__']) mock_collection = Mock() mock_request = MagicMock(spec=['parent_id']) mock_get_database.return_value = mock_database mock_database.__getitem__.return_value = mock_collection mock_request.parent_id = sentinel.parent_id ret_val = self.backend._store_result( sentinel.task_id, sentinel.result, sentinel.status, request=mock_request) mock_get_database.assert_called_once_with() mock_database.__getitem__.assert_called_once_with(MONGODB_COLLECTION) parameters = mock_collection.replace_one.call_args[0][1] assert parameters['parent_id'] == sentinel.parent_id assert sentinel.result == ret_val > mock_collection.replace_one.side_effect = InvalidDocument() ^^^^^^^^^^^^^^^^^ E TypeError: InvalidDocument.__init__() missing 1 required positional argument: 'message' t/unit/backends/test_mongodb.py:420: TypeError =============================== warnings summary =============================== t/unit/app/test_beat.py::test_Scheduler::test_ticks_microseconds /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/t/unit/app/test_beat.py:418: DeprecationWarning: datetime.datetime.utcfromtimestamp() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.fromtimestamp(timestamp, datetime.UTC). now = datetime.utcfromtimestamp(now_ts) t/unit/tasks/test_canvas.py::test_chord::test_links_to_body t/unit/tasks/test_canvas.py::test_chord::test_flag_allow_error_cb_on_chord_header t/unit/tasks/test_stamping.py::test_stamping_mechanism::test_link_error_does_not_duplicate_stamps /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/canvas.py:2302: CPendingDeprecationWarning: task_allow_error_cb_on_chord_header=False is pending deprecation in a future release of Celery. Please test the new behavior by setting task_allow_error_cb_on_chord_header to True and report any concerns you might have in our issue tracker before we make a final decision regarding how errbacks should behave when used with chords. warnings.warn( t/unit/tasks/test_stamping.py::test_stamping_mechanism::test_callback_stamping t/unit/tasks/test_stamping.py::test_stamping_mechanism::test_callback_stamping_link_after_stamp t/unit/tasks/test_stamping.py::test_stamping_mechanism::test_callback_stamping_link_multiple_visitors /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/canvas.py:400: AlwaysEagerIgnored: task_always_eager has no effect on send_task return _apply(args, kwargs, **options) t/unit/tasks/test_trace.py::test_trace::test_backend_error_should_report_failure t/unit/worker/test_request.py::test_Request::test_execute_backend_error_acks_late /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py:705: RuntimeWarning: Exception raised outside body: Exception(): Traceback (most recent call last): File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py", line 550, in trace_task task.backend.mark_as_done( ~~~~~~~~~~~~~~~~~~~~~~~~~^ uuid, retval, task_request, publish_result, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/usr/lib/python3.13/unittest/mock.py", line 1169, in __call__ return self._mock_call(*args, **kwargs) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/mock.py", line 1173, in _mock_call return self._execute_mock_call(*args, **kwargs) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/mock.py", line 1228, in _execute_mock_call raise effect Exception warn(RuntimeWarning( t/unit/tasks/test_trace.py::test_trace::test_backend_error_should_report_failure t/unit/worker/test_request.py::test_Request::test_execute_backend_error_acks_late /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py:705: RuntimeWarning: Exception raised outside body: Exception(): Traceback (most recent call last): File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py", line 550, in trace_task task.backend.mark_as_done( ~~~~~~~~~~~~~~~~~~~~~~~~~^ uuid, retval, task_request, publish_result, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/usr/lib/python3.13/unittest/mock.py", line 1169, in __call__ return self._mock_call(*args, **kwargs) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/mock.py", line 1173, in _mock_call return self._execute_mock_call(*args, **kwargs) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/mock.py", line 1228, in _execute_mock_call raise effect Exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py", line 618, in trace_task return task.__trace__(uuid, args, kwargs, request) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py", line 606, in trace_task I, _, _, _ = on_error(task_request, exc) ~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py", line 407, in on_error R = I.handle_error_state( task, request, eager=eager, call_errbacks=call_errbacks, ) File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py", line 175, in handle_error_state return { ~ RETRY: self.handle_retry, ~~~~~~~~~~~~~~~~~~~~~~~~~ FAILURE: self.handle_failure, ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ }[self.state](task, req, ~~~~~~~~~~~~~^^^^^^^^^^^ store_errors=store_errors, ^^^^^^^^^^^^^^^^^^^^^^^^^^ call_errbacks=call_errbacks) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py", line 236, in handle_failure task.backend.mark_as_failure( ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ req.id, exc, einfo.traceback, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ request=req, store_result=store_errors, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call_errbacks=call_errbacks, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/usr/lib/python3.13/unittest/mock.py", line 1169, in __call__ return self._mock_call(*args, **kwargs) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/mock.py", line 1173, in _mock_call return self._execute_mock_call(*args, **kwargs) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/mock.py", line 1228, in _execute_mock_call raise effect Exception warn(RuntimeWarning( t/unit/utils/test_iso8601.py: 14 warnings t/unit/utils/test_time.py: 4 warnings /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/utils/iso8601.py:55: CPendingDeprecationWarning: parse_iso8601 is scheduled for deprecation in version v5.3 and removal in version vv6. datetime.datetime.fromisoformat or dateutil.parser.isoparse warn("parse_iso8601", "v5.3", "v6", "datetime.datetime.fromisoformat or dateutil.parser.isoparse") t/unit/worker/test_consumer.py: 16 warnings t/unit/worker/test_worker.py: 1 warning /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/worker/consumer/consumer.py:397: CPendingDeprecationWarning: In Celery 5.1 we introduced an optional breaking change which on connection loss cancels all currently executed tasks with late acknowledgement enabled. These tasks cannot be acknowledged as the connection is gone, and the tasks are automatically redelivered back to the queue. You can enable this behavior using the worker_cancel_long_running_tasks_on_connection_loss setting. In Celery 5.1 it is set to False by default. The setting will be set to True by default in Celery 6.0. warnings.warn(CANCEL_TASKS_BY_DEFAULT, CPendingDeprecationWarning) t/unit/worker/test_consumer.py::test_Consumer::test_ensure_connected[True-None-False] t/unit/worker/test_consumer.py::test_Consumer::test_ensure_connected[False-None-False] t/unit/worker/test_worker.py::test_Consumer::test_receive_message_eta t/unit/worker/test_worker.py::test_Consumer::test_receive_message_eta /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/worker/consumer/consumer.py:516: CPendingDeprecationWarning: The broker_connection_retry configuration setting will no longer determine whether broker connection retries are made during startup in Celery 6.0 and above. If you wish to refrain from retrying connections on startup, you should set broker_connection_retry_on_startup to False instead. warnings.warn( t/unit/worker/test_request.py::test_Request::test_from_message_invalid_kwargs /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py:705: RuntimeWarning: Exception raised outside body: InvalidTaskError('Task keyword arguments is not a mapping'): Traceback (most recent call last): File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py", line 429, in trace_task kwargs.items AttributeError: 'str' object has no attribute 'items' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py", line 431, in trace_task raise InvalidTaskError( 'Task keyword arguments is not a mapping') celery.exceptions.InvalidTaskError: Task keyword arguments is not a mapping warn(RuntimeWarning( -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED t/unit/backends/test_mongodb.py::test_MongoBackend::test_store_result FAILED t/unit/backends/test_mongodb.py::test_MongoBackend::test_store_result_with_request = 2 failed, 3228 passed, 25 skipped, 8 deselected, 3 xfailed, 51 warnings in 110.63s (0:01:50) = E: pybuild pybuild:483: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build; python3.13 -m pytest --ignore=t/unit/backends/test_base.py --ignore=t/unit/backends/test_gcs.py --ignore=t/unit/backends/test_rpc.py --ignore=t/unit/contrib/test_pytest.py --ignore=t/unit/concurrency/test_eventlet.py --ignore=t/unit/concurrency/test_prefork.py -k "not test_check_privileges[accept_content0] and not test_check_privileges[accept_content1] and not test_check_privileges[accept_content2] and not test_regression_worker_startup_info and not test_with_guid and not test_only_gid and not test_init_mongodb_dnspython2_pymongo3_seedlist" t/unit dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.14 3.13" returned exit code 13 make: *** [debian/rules:10: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2 --------------------------------------------------------------------------------

