Debian Bug report logs - #1098539
celery: FTBFS: E AssertionError: assert 'No such option: --ini' in ''

version graph

Package: src:celery; Maintainer for src:celery is Debian Python Team <team+python@tracker.debian.org>;

Reported by: Santiago Vila <sanvila@debian.org>

Date: Fri, 21 Feb 2025 23:30:15 UTC

Severity: serious

Tags: ftbfs, sid, trixie

Found in version celery/5.4.0-4

Fixed in version celery/5.4.0-5

Done: Colin Watson <cjwatson@debian.org>

Bug is archived. No further changes may be made.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, sanvila@debian.org, Debian Python Team <team+python@tracker.debian.org>:
Bug#1098539; Package src:celery. (Fri, 21 Feb 2025 23:30:17 GMT) (full text, mbox, link).


Acknowledgement sent to Santiago Vila <sanvila@debian.org>:
New Bug report received and forwarded. Copy sent to sanvila@debian.org, Debian Python Team <team+python@tracker.debian.org>. (Fri, 21 Feb 2025 23:30:17 GMT) (full text, mbox, link).


Message #5 received at submit@bugs.debian.org (full text, mbox, reply):

From: Santiago Vila <sanvila@debian.org>
To: Debian BTS <submit@bugs.debian.org>
Subject: celery: FTBFS: E AssertionError: assert 'No such option: --ini' in ''
Date: Fri, 21 Feb 2025 23:26:32 +0000
Package: src:celery
Version: 5.4.0-4
Severity: serious
Tags: ftbfs trixie sid

Dear maintainer:

During a rebuild of all packages in unstable, your package failed to build:

--------------------------------------------------------------------------------
[...]
 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.12 with "build" module
I: pybuild base:311: python3.12 -m build --skip-dependency-check --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_celery  
* Building wheel...

[... snipped ...]

,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, [ 56%]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, [ 56%]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, [ 56%]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, [ 56%]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, [ 56%]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, [ 56%]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, [ 56%]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, [ 56%]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, [ 56%]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, [ 56%]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, [ 56%]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, [ 56%]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, [ 56%]
,,,,,,,,,,,............................................................. [ 58%]
........................................................................ [ 60%]
.........,,,.,,..,,,,.,,,,,,,.,,,,,,,.,,,,,,,.,,,,.......,,,,.,,,,..,,,, [ 61%]
.                                                                        [ 61%]
t/unit/tasks/test_states.py .............                                [ 62%]
t/unit/tasks/test_tasks.py ............................................. [ 63%]
......................................................................   [ 66%]
t/unit/tasks/test_trace.py ...........................................   [ 67%]
t/unit/test_canvas.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 ..........                               [ 70%]
t/unit/utils/test_functional.py ...................x...,,,,,,........... [ 71%]
............................                                             [ 72%]
t/unit/utils/test_graph.py .........                                     [ 72%]
t/unit/utils/test_imports.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 ......................................... [ 75%]
......................................................                   [ 76%]
t/unit/utils/test_saferepr.py .......................................... [ 78%]
............................                                             [ 79%]
t/unit/utils/test_serialization.py ..............................        [ 80%]
t/unit/utils/test_sysinfo.py ..                                          [ 80%]
t/unit/utils/test_term.py .........................                      [ 81%]
t/unit/utils/test_text.py .............                                  [ 81%]
t/unit/utils/test_threads.py ......                                      [ 81%]
t/unit/utils/test_time.py .............................................. [ 83%]
............                                                             [ 83%]
t/unit/utils/test_timer2.py .........                                    [ 83%]
t/unit/utils/test_utils.py ....                                          [ 84%]
t/unit/worker/test_autoscale.py .............                            [ 84%]
t/unit/worker/test_bootsteps.py ..............................           [ 85%]
t/unit/worker/test_components.py .........                               [ 85%]
t/unit/worker/test_consumer.py ......,,,.,,,.,,,.,,,.,,,.,,,..,,,....... [ 86%]
..............,.,,..,.,.,,..,.,,.,,.,,.,,.,,.......................      [ 88%]
t/unit/worker/test_control.py .......................................... [ 89%]
.........                                                                [ 89%]
t/unit/worker/test_heartbeat.py .....                                    [ 89%]
t/unit/worker/test_loops.py ........................................     [ 91%]
t/unit/worker/test_request.py .......................................... [ 92%]
......................................................................   [ 94%]
t/unit/worker/test_revoke.py .                                           [ 94%]
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_preload_options[subcommand_with_params0] _________________

subcommand_with_params = ('purge', '-f')
isolated_cli_runner = <click.testing.CliRunner object at 0x7fc8f27a4c20>

    @pytest.mark.parametrize(
        "subcommand_with_params",
        [
            ("purge", "-f"),
            ("shell",),
        ]
    )
    def test_preload_options(subcommand_with_params: Tuple[str, ...], isolated_cli_runner: CliRunner):
        # Verify commands like shell and purge can accept preload options.
        # Projects like Pyramid-Celery's ini option should be valid preload
        # options.
        res_without_preload = isolated_cli_runner.invoke(
            celery,
            ["-A", "t.unit.bin.proj.app", *subcommand_with_params, "--ini", "some_ini.ini"],
            catch_exceptions=False,
        )
    
>       assert "No such option: --ini" in res_without_preload.stdout
E       AssertionError: assert 'No such option: --ini' in ''
E        +  where '' = <Result SystemExit(2)>.stdout

/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/t/unit/app/test_preload_cli.py:41: AssertionError
________________ test_preload_options[subcommand_with_params1] _________________

subcommand_with_params = ('shell',)
isolated_cli_runner = <click.testing.CliRunner object at 0x7fc8f2929e50>

    @pytest.mark.parametrize(
        "subcommand_with_params",
        [
            ("purge", "-f"),
            ("shell",),
        ]
    )
    def test_preload_options(subcommand_with_params: Tuple[str, ...], isolated_cli_runner: CliRunner):
        # Verify commands like shell and purge can accept preload options.
        # Projects like Pyramid-Celery's ini option should be valid preload
        # options.
        res_without_preload = isolated_cli_runner.invoke(
            celery,
            ["-A", "t.unit.bin.proj.app", *subcommand_with_params, "--ini", "some_ini.ini"],
            catch_exceptions=False,
        )
    
>       assert "No such option: --ini" in res_without_preload.stdout
E       AssertionError: assert 'No such option: --ini' in ''
E        +  where '' = <Result SystemExit(2)>.stdout

/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/t/unit/app/test_preload_cli.py:41: AssertionError
_______________ test_custom_remote_command[inspect-custom_cmd0] ________________

celery_cmd = 'inspect', custom_cmd = ('custom_inspect_cmd', '123')
isolated_cli_runner = <click.testing.CliRunner object at 0x7fc8e95c1cd0>

    @pytest.mark.parametrize(
        ('celery_cmd', 'custom_cmd'),
        [
            ('inspect', ('custom_inspect_cmd', '123')),
            ('control', ('custom_control_cmd', '123', '456')),
        ],
    )
    def test_custom_remote_command(celery_cmd, custom_cmd, isolated_cli_runner: CliRunner):
        res = isolated_cli_runner.invoke(
            celery,
            [*_GLOBAL_OPTIONS, celery_cmd, *_INSPECT_OPTIONS, *custom_cmd],
            catch_exceptions=False,
        )
        assert res.exit_code == EX_UNAVAILABLE, (res, res.stdout)
>       assert res.stdout.strip() == 'Error: No nodes replied within time constraint'
E       AssertionError: assert '' == 'Error: No no...me constraint'
E         
E         - Error: No nodes replied within time constraint

/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/t/unit/bin/test_control.py:37: AssertionError
------------------------------ Captured log call -------------------------------
WARNING  kombu.connection:connection.py:669 No hostname was supplied. Reverting to default 'localhost'
WARNING  kombu.connection:connection.py:669 No hostname was supplied. Reverting to default 'localhost'
_______________ test_custom_remote_command[control-custom_cmd1] ________________

celery_cmd = 'control', custom_cmd = ('custom_control_cmd', '123', '456')
isolated_cli_runner = <click.testing.CliRunner object at 0x7fc8f0342f90>

    @pytest.mark.parametrize(
        ('celery_cmd', 'custom_cmd'),
        [
            ('inspect', ('custom_inspect_cmd', '123')),
            ('control', ('custom_control_cmd', '123', '456')),
        ],
    )
    def test_custom_remote_command(celery_cmd, custom_cmd, isolated_cli_runner: CliRunner):
        res = isolated_cli_runner.invoke(
            celery,
            [*_GLOBAL_OPTIONS, celery_cmd, *_INSPECT_OPTIONS, *custom_cmd],
            catch_exceptions=False,
        )
        assert res.exit_code == EX_UNAVAILABLE, (res, res.stdout)
>       assert res.stdout.strip() == 'Error: No nodes replied within time constraint'
E       AssertionError: assert '' == 'Error: No no...me constraint'
E         
E         - Error: No nodes replied within time constraint

/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/t/unit/bin/test_control.py:37: AssertionError
____ test_unrecognized_remote_command[inspect-this_command_does_not_exist] _____

celery_cmd = 'inspect', remote_cmd = 'this_command_does_not_exist'
isolated_cli_runner = <click.testing.CliRunner object at 0x7fc8e84db240>

    @pytest.mark.parametrize(
        ('celery_cmd', 'remote_cmd'),
        [
            # Test nonexistent commands
            ('inspect', 'this_command_does_not_exist'),
            ('control', 'this_command_does_not_exist'),
            # Test commands that exist, but are of the wrong type
            ('inspect', 'custom_control_cmd'),
            ('control', 'custom_inspect_cmd'),
        ],
    )
    def test_unrecognized_remote_command(celery_cmd, remote_cmd, isolated_cli_runner: CliRunner):
        res = isolated_cli_runner.invoke(
            celery,
            [*_GLOBAL_OPTIONS, celery_cmd, *_INSPECT_OPTIONS, remote_cmd],
            catch_exceptions=False,
        )
        assert res.exit_code == 2, (res, res.stdout)
>       assert f'Error: Command {remote_cmd} not recognized. Available {celery_cmd} commands: ' in res.stdout
E       AssertionError: assert 'Error: Command this_command_does_not_exist not recognized. Available inspect commands: ' in ''
E        +  where '' = <Result SystemExit(2)>.stdout

/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/t/unit/bin/test_control.py:58: AssertionError
____ test_unrecognized_remote_command[control-this_command_does_not_exist] _____

celery_cmd = 'control', remote_cmd = 'this_command_does_not_exist'
isolated_cli_runner = <click.testing.CliRunner object at 0x7fc8e84d97b0>

    @pytest.mark.parametrize(
        ('celery_cmd', 'remote_cmd'),
        [
            # Test nonexistent commands
            ('inspect', 'this_command_does_not_exist'),
            ('control', 'this_command_does_not_exist'),
            # Test commands that exist, but are of the wrong type
            ('inspect', 'custom_control_cmd'),
            ('control', 'custom_inspect_cmd'),
        ],
    )
    def test_unrecognized_remote_command(celery_cmd, remote_cmd, isolated_cli_runner: CliRunner):
        res = isolated_cli_runner.invoke(
            celery,
            [*_GLOBAL_OPTIONS, celery_cmd, *_INSPECT_OPTIONS, remote_cmd],
            catch_exceptions=False,
        )
        assert res.exit_code == 2, (res, res.stdout)
>       assert f'Error: Command {remote_cmd} not recognized. Available {celery_cmd} commands: ' in res.stdout
E       AssertionError: assert 'Error: Command this_command_does_not_exist not recognized. Available control commands: ' in ''
E        +  where '' = <Result SystemExit(2)>.stdout

/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/t/unit/bin/test_control.py:58: AssertionError
_________ test_unrecognized_remote_command[inspect-custom_control_cmd] _________

celery_cmd = 'inspect', remote_cmd = 'custom_control_cmd'
isolated_cli_runner = <click.testing.CliRunner object at 0x7fc8e9b89c50>

    @pytest.mark.parametrize(
        ('celery_cmd', 'remote_cmd'),
        [
            # Test nonexistent commands
            ('inspect', 'this_command_does_not_exist'),
            ('control', 'this_command_does_not_exist'),
            # Test commands that exist, but are of the wrong type
            ('inspect', 'custom_control_cmd'),
            ('control', 'custom_inspect_cmd'),
        ],
    )
    def test_unrecognized_remote_command(celery_cmd, remote_cmd, isolated_cli_runner: CliRunner):
        res = isolated_cli_runner.invoke(
            celery,
            [*_GLOBAL_OPTIONS, celery_cmd, *_INSPECT_OPTIONS, remote_cmd],
            catch_exceptions=False,
        )
        assert res.exit_code == 2, (res, res.stdout)
>       assert f'Error: Command {remote_cmd} not recognized. Available {celery_cmd} commands: ' in res.stdout
E       AssertionError: assert 'Error: Command custom_control_cmd not recognized. Available inspect commands: ' in ''
E        +  where '' = <Result SystemExit(2)>.stdout

/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/t/unit/bin/test_control.py:58: AssertionError
_________ test_unrecognized_remote_command[control-custom_inspect_cmd] _________

celery_cmd = 'control', remote_cmd = 'custom_inspect_cmd'
isolated_cli_runner = <click.testing.CliRunner object at 0x7fc8e9b89550>

    @pytest.mark.parametrize(
        ('celery_cmd', 'remote_cmd'),
        [
            # Test nonexistent commands
            ('inspect', 'this_command_does_not_exist'),
            ('control', 'this_command_does_not_exist'),
            # Test commands that exist, but are of the wrong type
            ('inspect', 'custom_control_cmd'),
            ('control', 'custom_inspect_cmd'),
        ],
    )
    def test_unrecognized_remote_command(celery_cmd, remote_cmd, isolated_cli_runner: CliRunner):
        res = isolated_cli_runner.invoke(
            celery,
            [*_GLOBAL_OPTIONS, celery_cmd, *_INSPECT_OPTIONS, remote_cmd],
            catch_exceptions=False,
        )
        assert res.exit_code == 2, (res, res.stdout)
>       assert f'Error: Command {remote_cmd} not recognized. Available {celery_cmd} commands: ' in res.stdout
E       AssertionError: assert 'Error: Command custom_inspect_cmd not recognized. Available control commands: ' in ''
E        +  where '' = <Result SystemExit(2)>.stdout

/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/t/unit/bin/test_control.py:58: AssertionError
=============================== warnings summary ===============================
t/unit/app/test_backends.py: 1 warning
t/unit/contrib/test_worker.py: 2 warnings
t/unit/worker/test_consumer.py: 2 warnings
t/unit/worker/test_worker.py: 17 warnings
  /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/celery/worker/consumer/consumer.py:508: 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 retain the existing behavior for retrying connections on startup,
  you should set broker_connection_retry_on_startup to True.
    warnings.warn(

t/unit/app/test_beat.py::test_Scheduler::test_ticks_microseconds
  /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_celery/build/t/unit/app/test_beat.py:416: 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/bin/test_daemonization.py::test_daemon_options_from_config[events]
  /usr/lib/python3/dist-packages/click/core.py:1179: UserWarning: The parameter -d is used more than once. Remove its duplicate as parameters should be unique.
    parser = self.make_parser(ctx)

t/unit/bin/test_daemonization.py::test_daemon_options_from_config[events]
  /usr/lib/python3/dist-packages/click/core.py:1172: UserWarning: The parameter -d is used more than once. Remove its duplicate as parameters should be unique.
    self.parse_args(ctx, args)

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:2303: 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 1167, in __call__
      return self._mock_call(*args, **kwargs)
             ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call
      return self._execute_mock_call(*args, **kwargs)
             ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.13/unittest/mock.py", line 1226, 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 1167, in __call__
      return self._mock_call(*args, **kwargs)
             ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call
      return self._execute_mock_call(*args, **kwargs)
             ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.13/unittest/mock.py", line 1226, 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 1167, in __call__
      return self._mock_call(*args, **kwargs)
             ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.13/unittest/mock.py", line 1171, in _mock_call
      return self._execute_mock_call(*args, **kwargs)
             ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.13/unittest/mock.py", line 1226, in _execute_mock_call
      raise effect
  Exception
  
    warn(RuntimeWarning(

t/unit/utils/test_time.py::test_iso8601::test_parse_with_timezone
t/unit/utils/test_time.py::test_iso8601::test_parse_with_timezone
t/unit/utils/test_time.py::test_iso8601::test_parse_with_timezone
t/unit/utils/test_time.py::test_iso8601::test_parse_with_timezone
  /<<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:391: 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:508: 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 retain the existing behavior for retrying connections on startup,
  you should set broker_connection_retry_on_startup to False.
    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/app/test_preload_cli.py::test_preload_options[subcommand_with_params0]
FAILED t/unit/app/test_preload_cli.py::test_preload_options[subcommand_with_params1]
FAILED t/unit/bin/test_control.py::test_custom_remote_command[inspect-custom_cmd0]
FAILED t/unit/bin/test_control.py::test_custom_remote_command[control-custom_cmd1]
FAILED t/unit/bin/test_control.py::test_unrecognized_remote_command[inspect-this_command_does_not_exist]
FAILED t/unit/bin/test_control.py::test_unrecognized_remote_command[control-this_command_does_not_exist]
FAILED t/unit/bin/test_control.py::test_unrecognized_remote_command[inspect-custom_control_cmd]
FAILED t/unit/bin/test_control.py::test_unrecognized_remote_command[control-custom_inspect_cmd]
= 8 failed, 2994 passed, 26 skipped, 8 deselected, 3 xfailed, 90 warnings, 28910 subtests passed in 75.82s (0:01:15) =
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.12 3.13" returned exit code 13
make: *** [debian/rules:10: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------

The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here:

https://people.debian.org/~sanvila/build-logs/202502/

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:celery, so that this is still
visible in the BTS web page for this package.

Thanks.



Added blocking bug(s) of 1098539: 1098507 Request was from Colin Watson <cjwatson@debian.org> to 1098507-submit@bugs.debian.org. (Mon, 24 Feb 2025 01:03:02 GMT) (full text, mbox, link).


Message sent on to Santiago Vila <sanvila@debian.org>:
Bug#1098539. (Sat, 01 Mar 2025 21:03:51 GMT) (full text, mbox, link).


Message #10 received at 1098539-submitter@bugs.debian.org (full text, mbox, reply):

From: Colin Watson <cjwatson@debian.org>
To: 1098539-submitter@bugs.debian.org
Subject: Bug#1098539 marked as pending in celery
Date: Sat, 01 Mar 2025 20:59:30 +0000
Control: tag -1 pending

Hello,

Bug #1098539 in celery reported by you has been fixed in the
Git repository and is awaiting an upload. You can see the commit
message below and you can check the diff of the fix at:

https://salsa.debian.org/python-team/packages/celery/-/commit/4f07d849f7f1a53613d3b91f00b15a266eb55e40

------------------------------------------------------------------------
Fix tests with Click 8.2

Closes: #1098539
------------------------------------------------------------------------

(this message was generated automatically)
-- 
Greetings

https://bugs.debian.org/1098539



Added tag(s) pending. Request was from Colin Watson <cjwatson@debian.org> to 1098539-submitter@bugs.debian.org. (Sat, 01 Mar 2025 21:03:51 GMT) (full text, mbox, link).


Reply sent to Colin Watson <cjwatson@debian.org>:
You have taken responsibility. (Sat, 01 Mar 2025 22:09:06 GMT) (full text, mbox, link).


Notification sent to Santiago Vila <sanvila@debian.org>:
Bug acknowledged by developer. (Sat, 01 Mar 2025 22:09:06 GMT) (full text, mbox, link).


Message #17 received at 1098539-close@bugs.debian.org (full text, mbox, reply):

From: Debian FTP Masters <ftpmaster@ftp-master.debian.org>
To: 1098539-close@bugs.debian.org
Subject: Bug#1098539: fixed in celery 5.4.0-5
Date: Sat, 01 Mar 2025 22:05:24 +0000
[Message part 1 (text/plain, inline)]
Source: celery
Source-Version: 5.4.0-5
Done: Colin Watson <cjwatson@debian.org>

We believe that the bug you reported is fixed in the latest version of
celery, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1098539@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Colin Watson <cjwatson@debian.org> (supplier of updated celery package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Sat, 01 Mar 2025 20:58:45 +0000
Source: celery
Architecture: source
Version: 5.4.0-5
Distribution: unstable
Urgency: medium
Maintainer: Debian Python Team <team+python@tracker.debian.org>
Changed-By: Colin Watson <cjwatson@debian.org>
Closes: 1098539
Changes:
 celery (5.4.0-5) unstable; urgency=medium
 .
   * Team upload.
   * Fix tests with Click 8.2 (closes: #1098539).
Checksums-Sha1:
 70d820a594e16930392f751cd6a2586c2b7173bf 2921 celery_5.4.0-5.dsc
 860c7bc27181ca634ded8a998097c574e62b3c83 23540 celery_5.4.0-5.debian.tar.xz
Checksums-Sha256:
 cd5f81ce4c7d8011fa2f3fee89ef40697ddd7bd3568fbe4a1e6e0c81afdd3e8f 2921 celery_5.4.0-5.dsc
 12a35ab067a87ddabe3dd7437c57b3e00e9f3ba99d548cac591b71e4ad05adff 23540 celery_5.4.0-5.debian.tar.xz
Files:
 a0eb614081792b20e23060c9bc1b2a4d 2921 python optional celery_5.4.0-5.dsc
 4d315d6db441d1e09218b66441ec9829 23540 python optional celery_5.4.0-5.debian.tar.xz

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEErApP8SYRtvzPAcEROTWH2X2GUAsFAmfDdSYACgkQOTWH2X2G
UAt4DQ/9EcC0HbeZnaKKFOxJ7jIY9hpLxCMbv3dRojIwue8kXYUm9234Idt0bCAC
qxC6Zea1vhHd8SU0d0DAH8ph3oOtIUZajVVQYiv+nUnK+0Wt7kSg5MpwUSpzo7fr
Ww/62Z1YWUDTobi5M9FgCxhF7tmAp7r5rjlqrFTMkuby7eyPLDXJjbvsWMmsw0Lg
cZ7Z6f4Y7yZJc2ABVzRFpZ/HdUdb0a3sUovNdAmF1ox/nqjeFv5eGKfDZCBDOWeE
qM/Rr4FO8y7hLoF5cPGzcOLBf1GZqw9LQanGYZvEBmYFrOBU2MmiktBWroD8D7rA
5TRC6l1CqTxrTQARwNw0YYZuWlnR5U1yoh49GJ2t2i4Sv5V/c3X7wHP6yPGANusC
oFSlNsnEEv3eEh+Z3cViVRpombEZnQfpn6QDAb4AYxwYQHRaSyi5BwLPcI0w4qLf
kT2mmOHwFdIeCe8MVwCNwPs6BXtqZ+0SnE9uNU94lRO0aR8L8PZPKnI0HwITmPPD
n1zr1TyK+3G/MV6EouU6steYujdZsMoVBSlqjpH1KffJKYyJeNu3q67WNc4+mkee
N8iOPDt+pKm7q/kc9Ve8CMOuh6qbgvPyAcIkWXb6LpabyrOkt2SMpqcDLjqHYgRK
zfkYX6NEejZbh7ecshu9KRzxJGPTHKHfFDQM3lI+CRS2LoGgN5g=
=Lz+V
-----END PGP SIGNATURE-----

[Message part 2 (application/pgp-signature, inline)]

Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Tue, 01 Apr 2025 07:25:41 GMT) (full text, mbox, link).


Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Wed Apr 9 10:21:39 2025; Machine Name: buxtehude

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU General Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.