Package: src:celery Version: 5.5.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/202510/ 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 python3,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 python3,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: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_celery * Building wheel... /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'tests_require' [... snipped ...] **mb._prepare_client_options() ) t/unit/backends/test_mongodb.py:302: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.13/unittest/mock.py:991: in assert_called_once_with return self.assert_called_with(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <MagicMock name='MongoClient' id='140029953377680'>, args = () kwargs = {'authmechanism': 'SCRAM-SHA-256', 'host': ['localhost:27017'], 'maxPoolSize': 10, 'password': 'celerypassword', ...} expected = call(host=['localhost:27017'], username='celeryuser', password='celerypassword', authmechanism='SCRAM-SHA-256', maxPoolSize=10) actual = call(maxPoolSize=10, authMechanism='SCRAM-SHA-256', host=['localhost:27017'], username='celeryuser', password='celerypassword') _error_message = <function NonCallableMock.assert_called_with.<locals>._error_message at 0x7f5b4377e0c0> cause = None def assert_called_with(self, /, *args, **kwargs): """assert that the last call was made with the specified arguments. Raises an AssertionError if the args and keyword args passed in are different to the last call to the mock.""" if self.call_args is None: expected = self._format_mock_call_signature(args, kwargs) actual = 'not called.' error_message = ('expected call not found.\nExpected: %s\n Actual: %s' % (expected, actual)) raise AssertionError(error_message) def _error_message(): msg = self._format_mock_failure_message(args, kwargs) return msg expected = self._call_matcher(_Call((args, kwargs), two=True)) actual = self._call_matcher(self.call_args) if actual != expected: cause = expected if isinstance(expected, Exception) else None > raise AssertionError(_error_message()) from cause E AssertionError: expected call not found. E Expected: MongoClient(host=['localhost:27017'], username='celeryuser', password='celerypassword', authmechanism='SCRAM-SHA-256', maxPoolSize=10) E Actual: MongoClient(maxPoolSize=10, authMechanism='SCRAM-SHA-256', host=['localhost:27017'], username='celeryuser', password='celerypassword') /usr/lib/python3.13/unittest/mock.py:979: AssertionError _____ test_MongoBackend.test_get_connection_with_authmechanism_no_username _____ self = <t.unit.backends.test_mongodb.test_MongoBackend object at 0x7f5b4c58ac90> def test_get_connection_with_authmechanism_no_username(self): with patch('pymongo.MongoClient') as mock_Connection: self.app.conf.mongodb_backend_settings = None uri = ('mongodb://' 'localhost:27017/' 'celerydatabase?authMechanism=SCRAM-SHA-256') mb = MongoBackend(app=self.app, url=uri) mock_Connection.side_effect = ConfigurationError( 'SCRAM-SHA-256 requires a username.') with pytest.raises(ConfigurationError): mb._get_connection() > mock_Connection.assert_called_once_with( host=['localhost:27017'], authmechanism='SCRAM-SHA-256', **mb._prepare_client_options() ) t/unit/backends/test_mongodb.py:322: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.13/unittest/mock.py:991: in assert_called_once_with return self.assert_called_with(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <MagicMock name='MongoClient' id='140029953389440'>, args = () kwargs = {'authmechanism': 'SCRAM-SHA-256', 'host': ['localhost:27017'], 'maxPoolSize': 10} expected = call(host=['localhost:27017'], authmechanism='SCRAM-SHA-256', maxPoolSize=10) actual = call(maxPoolSize=10, authMechanism='SCRAM-SHA-256', host=['localhost:27017']) _error_message = <function NonCallableMock.assert_called_with.<locals>._error_message at 0x7f5b43eedee0> cause = None def assert_called_with(self, /, *args, **kwargs): """assert that the last call was made with the specified arguments. Raises an AssertionError if the args and keyword args passed in are different to the last call to the mock.""" if self.call_args is None: expected = self._format_mock_call_signature(args, kwargs) actual = 'not called.' error_message = ('expected call not found.\nExpected: %s\n Actual: %s' % (expected, actual)) raise AssertionError(error_message) def _error_message(): msg = self._format_mock_failure_message(args, kwargs) return msg expected = self._call_matcher(_Call((args, kwargs), two=True)) actual = self._call_matcher(self.call_args) if actual != expected: cause = expected if isinstance(expected, Exception) else None > raise AssertionError(_error_message()) from cause E AssertionError: expected call not found. E Expected: MongoClient(host=['localhost:27017'], authmechanism='SCRAM-SHA-256', maxPoolSize=10) E Actual: MongoClient(maxPoolSize=10, authMechanism='SCRAM-SHA-256', host=['localhost:27017']) /usr/lib/python3.13/unittest/mock.py:979: AssertionError =============================== 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:417: 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/backends/test_s3.py: 29 warnings /usr/lib/python3/dist-packages/botocore/auth.py:425: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). datetime_now = datetime.datetime.utcnow() t/unit/events/test_dumper.py::test_on_event_task_received t/unit/events/test_dumper.py::test_on_event_non_task /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/events/dumper.py:51: 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). timestamp = datetime.utcfromtimestamp(ev.pop('timestamp')) 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:2301: 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:662: RuntimeWarning: Exception raised outside body: Exception(): Traceback (most recent call last): File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py", line 520, 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:662: RuntimeWarning: Exception raised outside body: Exception(): Traceback (most recent call last): File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py", line 520, 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 586, in trace_task return task.__trace__(uuid, args, kwargs, request) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py", line 574, in trace_task I, _, _, _ = on_error(task_request, exc) ~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/app/trace.py", line 381, 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 227, 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:392: 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:511: 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:662: 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 403, 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 405, 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_init_with_settings FAILED t/unit/backends/test_mongodb.py::test_MongoBackend::test_init_mongodb_dnspython2_pymongo4_seedlist FAILED t/unit/backends/test_mongodb.py::test_MongoBackend::test_get_connection_with_authmechanism FAILED t/unit/backends/test_mongodb.py::test_MongoBackend::test_get_connection_with_authmechanism_no_username = 4 failed, 3158 passed, 25 skipped, 8 deselected, 3 xfailed, 82 warnings, 28958 subtests passed in 96.20s (0:01:36) = E: pybuild pybuild:389: 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.13 returned exit code 13 make: *** [debian/rules:10: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 --------------------------------------------------------------------------------

