Source: zabbix-cli
Version: 3.6.2-1
Severity: normal
Justification: FTBFS
Tags: ftbfs experimental
User: [email protected]
Usertags: python3-click-8.3.3

Hi,

I have completed a rebuild of the reverse dependencies of python3-click in
order to add support for version 8.3.3. The package zabbix-cli was found to
fail to build in that situation.

To reproduce this locally, you need to install python3-click from experimental
on an unstable system or build chroot. Like this:

sbuild --extra-repository='deb http://deb.debian.org/debian experimental main' 
--starting-build-commands='apt-get update && apt-get -t experimental install 
--only-upgrade -y python-click'

Relevant part (hopefully):
> make[1]: Entering directory '/build/reproducible-path/zabbix-cli-3.6.2'
> dh_auto_test -O--buildsystem-pybuild -- --test-args=--inline-snapshot=report
> I: pybuild base:385: cd 
> /build/reproducible-path/zabbix-cli-3.6.2/.pybuild/cpython3_3.13_zabbix-cli/build;
>  python3.13 -m pytest --inline-snapshot=report
> ============================= test session starts 
> ==============================
> platform linux -- Python 3.13.12, pytest-9.0.3, pluggy-1.6.0 -- 
> /usr/bin/python3.13
> cachedir: .pytest_cache
> rootdir: 
> /build/reproducible-path/zabbix-cli-3.6.2/.pybuild/cpython3_3.13_zabbix-cli/build
> configfile: pyproject.toml
> plugins: pytest_httpserver-1.1.3, inline-snapshot-0.32.5, anyio-4.12.1
> collecting ... collected 321 items / 1 skipped
> 
> tests/commands/test_cli_configwizard.py::test_get_enum_attr_docs PASSED  [  
> 0%]
> tests/commands/test_cli_configwizard.py::test_is_enum PASSED             [  
> 0%]
> tests/commands/test_common.py::test_command_param PASSED                 [  
> 0%]
> tests/commands/test_common.py::test_command_param_in_command PASSED      [  
> 1%]
> tests/commands/test_macro.py::test_fmt_macro_name[my_macro-{$MY_MACRO}] 
> PASSED [  1%]
> tests/commands/test_macro.py::test_fmt_macro_name[MY_MACRO-{$MY_MACRO}] 
> PASSED [  1%]
> tests/commands/test_macro.py::test_fmt_macro_name[mY_maCrO-{$MY_MACRO}] 
> PASSED [  2%]
> tests/commands/test_macro.py::test_fmt_macro_name[foo123-{$FOO123}] PASSED [  
> 2%]
> tests/commands/test_macro.py::test_fmt_macro_name[ -] XFAIL              [  
> 2%]
> tests/commands/test_macro.py::test_fmt_macro_name[-] XFAIL               [  
> 3%]
> tests/commands/test_macro.py::test_fmt_macro_name[{$}-] XFAIL            [  
> 3%]
> tests/pyzabbix/test_client.py::test_append_param[non-list (int)] PASSED  [  
> 3%]
> tests/pyzabbix/test_client.py::test_append_param[list (int)] PASSED      [  
> 4%]
> tests/pyzabbix/test_client.py::test_append_param[non-list (str)] PASSED  [  
> 4%]
> tests/pyzabbix/test_client.py::test_append_param[list (str)] PASSED      [  
> 4%]
> tests/pyzabbix/test_client.py::test_append_param[list of lists] PASSED   [  
> 4%]
> tests/pyzabbix/test_client.py::test_add_param[inp0-hostids-2-expect0] PASSED 
> [  5%]
> tests/pyzabbix/test_client.py::test_login_fails PASSED                   [  
> 5%]
> tests/pyzabbix/test_client.py::test_logout_fails PASSED                  [  
> 5%]
> tests/pyzabbix/test_client.py::test_client_server_url[localhost-no-slash] 
> PASSED [  6%]
> tests/pyzabbix/test_client.py::test_client_server_url[localhost-with-slash] 
> PASSED [  6%]
> tests/pyzabbix/test_client.py::test_client_server_url[localhost-full-url] 
> PASSED [  6%]
> tests/pyzabbix/test_client.py::test_client_server_url[localhost-full-url-with-slash]
>  PASSED [  7%]
> tests/pyzabbix/test_client.py::test_client_server_url[tld-no-slash] PASSED [  
> 7%]
> tests/pyzabbix/test_client.py::test_client_server_url[tld-with-slash] PASSED 
> [  7%]
> tests/pyzabbix/test_client.py::test_client_server_url[tld-full-url] PASSED [  
> 8%]
> tests/pyzabbix/test_client.py::test_client_server_url[tld-full-url-with-slash]
>  PASSED [  8%]
> tests/pyzabbix/test_client.py::test_client_auth_method[5.0.0] PASSED     [  
> 8%]
> tests/pyzabbix/test_client.py::test_client_auth_method[5.2.0] PASSED     [  
> 9%]
> tests/pyzabbix/test_client.py::test_client_auth_method[6.0.0] PASSED     [  
> 9%]
> tests/pyzabbix/test_client.py::test_client_auth_method[6.2.0] PASSED     [  
> 9%]
> tests/pyzabbix/test_client.py::test_client_auth_method[6.4.0] PASSED     [  
> 9%]
> tests/pyzabbix/test_client.py::test_client_auth_method[7.0.0] PASSED     [ 
> 10%]
> tests/pyzabbix/test_client.py::test_client_auth_method[7.2.0] PASSED     [ 
> 10%]
> tests/pyzabbix/test_client.py::test_client_logout[token] PASSED          [ 
> 10%]
> tests/pyzabbix/test_client.py::test_client_logout[token (empty string)] 
> PASSED [ 11%]
> tests/pyzabbix/test_client.py::test_client_logout[sessionid] PASSED      [ 
> 11%]
> tests/pyzabbix/test_client.py::test_client_logout[sessionid (empty string)] 
> PASSED [ 11%]
> tests/pyzabbix/test_enums.py::test_apistrenum[AckStatus] PASSED          [ 
> 12%]
> tests/pyzabbix/test_enums.py::test_apistrenum[ActiveInterface] PASSED    [ 
> 12%]
> tests/pyzabbix/test_enums.py::test_apistrenum[DataCollectionMode] PASSED [ 
> 12%]
> tests/pyzabbix/test_enums.py::test_apistrenum[EventStatus] PASSED        [ 
> 13%]
> tests/pyzabbix/test_enums.py::test_apistrenum[GUIAccess] PASSED          [ 
> 13%]
> tests/pyzabbix/test_enums.py::test_apistrenum[HostgroupFlag] PASSED      [ 
> 13%]
> tests/pyzabbix/test_enums.py::test_apistrenum[HostgroupType] PASSED      [ 
> 14%]
> tests/pyzabbix/test_enums.py::test_apistrenum[InterfaceConnectionMode] PASSED 
> [ 14%]
> tests/pyzabbix/test_enums.py::test_apistrenum[InterfaceType] PASSED      [ 
> 14%]
> tests/pyzabbix/test_enums.py::test_apistrenum[InventoryMode] PASSED      [ 
> 14%]
> tests/pyzabbix/test_enums.py::test_apistrenum[ItemType] PASSED           [ 
> 15%]
> tests/pyzabbix/test_enums.py::test_apistrenum[MacroType] PASSED          [ 
> 15%]
> tests/pyzabbix/test_enums.py::test_apistrenum[MaintenanceStatus] PASSED  [ 
> 15%]
> tests/pyzabbix/test_enums.py::test_apistrenum[MaintenanceType] PASSED    [ 
> 16%]
> tests/pyzabbix/test_enums.py::test_apistrenum[MaintenanceWeekType] PASSED [ 
> 16%]
> tests/pyzabbix/test_enums.py::test_apistrenum[MonitoredBy] PASSED        [ 
> 16%]
> tests/pyzabbix/test_enums.py::test_apistrenum[MonitoringStatus] PASSED   [ 
> 17%]
> tests/pyzabbix/test_enums.py::test_apistrenum[ProxyCompatibility] PASSED [ 
> 17%]
> tests/pyzabbix/test_enums.py::test_apistrenum[ProxyGroupState] PASSED    [ 
> 17%]
> tests/pyzabbix/test_enums.py::test_apistrenum[ProxyMode] PASSED          [ 
> 18%]
> tests/pyzabbix/test_enums.py::test_apistrenum[ProxyModePre70] PASSED     [ 
> 18%]
> tests/pyzabbix/test_enums.py::test_apistrenum[SNMPSecurityLevel] PASSED  [ 
> 18%]
> tests/pyzabbix/test_enums.py::test_apistrenum[SNMPAuthProtocol] PASSED   [ 
> 19%]
> tests/pyzabbix/test_enums.py::test_apistrenum[SNMPPrivProtocol] PASSED   [ 
> 19%]
> tests/pyzabbix/test_enums.py::test_apistrenum[TriggerPriority] PASSED    [ 
> 19%]
> tests/pyzabbix/test_enums.py::test_apistrenum[UsergroupPermission] PASSED [ 
> 19%]
> tests/pyzabbix/test_enums.py::test_apistrenum[UserRole] PASSED           [ 
> 20%]
> tests/pyzabbix/test_enums.py::test_apistrenum[ValueType] PASSED          [ 
> 20%]
> tests/pyzabbix/test_enums.py::test_interfacetype PASSED                  [ 
> 20%]
> tests/pyzabbix/test_enums.py::test_exportformat PASSED                   [ 
> 21%]
> tests/pyzabbix/test_types.py::test_model_dump[model0] PASSED             [ 
> 21%]
> tests/pyzabbix/test_types.py::test_model_dump[model1] PASSED             [ 
> 21%]
> tests/pyzabbix/test_types.py::test_model_dump[model2] PASSED             [ 
> 22%]
> tests/pyzabbix/test_types.py::test_model_dump[model3] PASSED             [ 
> 22%]
> tests/pyzabbix/test_types.py::test_model_dump[model4] PASSED             [ 
> 22%]
> tests/pyzabbix/test_types.py::test_model_dump[model5] PASSED             [ 
> 23%]
> tests/pyzabbix/test_types.py::test_model_dump[model6] PASSED             [ 
> 23%]
> tests/pyzabbix/test_types.py::test_model_dump[model7] PASSED             [ 
> 23%]
> tests/pyzabbix/test_types.py::test_model_dump[model8] PASSED             [ 
> 23%]
> tests/pyzabbix/test_types.py::test_model_dump[model9] PASSED             [ 
> 24%]
> tests/pyzabbix/test_types.py::test_model_dump[model10] PASSED            [ 
> 24%]
> tests/pyzabbix/test_types.py::test_model_dump[model11] PASSED            [ 
> 24%]
> tests/pyzabbix/test_types.py::test_model_dump[model12] PASSED            [ 
> 25%]
> tests/pyzabbix/test_types.py::test_model_dump[model13] PASSED            [ 
> 25%]
> tests/pyzabbix/test_types.py::test_model_dump[model14] PASSED            [ 
> 25%]
> tests/pyzabbix/test_types.py::test_model_dump[model15] PASSED            [ 
> 26%]
> tests/pyzabbix/test_types.py::test_model_dump[model16] PASSED            [ 
> 26%]
> tests/pyzabbix/test_types.py::test_model_dump[model17] PASSED            [ 
> 26%]
> tests/pyzabbix/test_types.py::test_model_dump[model18] PASSED            [ 
> 27%]
> tests/pyzabbix/test_types.py::test_model_dump[model19] PASSED            [ 
> 27%]
> tests/pyzabbix/test_types.py::test_model_dump[model20] PASSED            [ 
> 27%]
> tests/pyzabbix/test_types.py::test_model_dump[model21] PASSED            [ 
> 28%]
> tests/pyzabbix/test_types.py::test_model_dump[model22] PASSED            [ 
> 28%]
> tests/pyzabbix/test_types.py::test_model_dump[model23] PASSED            [ 
> 28%]
> tests/pyzabbix/test_types.py::test_model_dump[model24] PASSED            [ 
> 28%]
> tests/pyzabbix/test_types.py::test_model_dump[model25] PASSED            [ 
> 29%]
> tests/pyzabbix/test_types.py::test_model_dump[model26] PASSED            [ 
> 29%]
> tests/pyzabbix/test_types.py::test_model_dump[model27] PASSED            [ 
> 29%]
> tests/test_app.py::test_get_plugin_config PASSED                         [ 
> 30%]
> tests/test_auth.py::test_get_auth_file_paths_defafult PASSED             [ 
> 30%]
> tests/test_auth.py::test_get_auth_file_paths_override PASSED             [ 
> 30%]
> tests/test_auth.py::test_get_auth_token_file_paths_defafult PASSED       [ 
> 31%]
> tests/test_auth.py::test_get_auth_token_file_paths_override PASSED       [ 
> 31%]
> tests/test_auth.py::test_authenticator_login_with_any[expect_auth_token_env] 
> PASSED [ 31%]
> tests/test_auth.py::test_authenticator_login_with_any[expect_auth_token_config]
>  PASSED [ 32%]
> tests/test_auth.py::test_authenticator_login_with_any[expect_session_file] 
> PASSED [ 32%]
> tests/test_auth.py::test_authenticator_login_with_any[expect_password_env] 
> PASSED [ 32%]
> tests/test_auth.py::test_authenticator_login_with_any[expect_password_config] 
> PASSED [ 33%]
> tests/test_auth.py::test_authenticator_login_with_any[expect_password_file] 
> PASSED [ 33%]
> tests/test_auth.py::test_authenticator_login_with_any[expect_legacy_auth_token_file]
>  PASSED [ 33%]
> tests/test_auth.py::test_authenticator_login_with_any[expect_password_prompt] 
> PASSED [ 33%]
> tests/test_auth.py::test_table_renderable_mock_reverted PASSED           [ 
> 34%]
> tests/test_auth.py::test_sessionid_list_set_session PASSED               [ 
> 34%]
> tests/test_auth.py::test_sessionid_list_get_session[initial_sessions0-user1-None]
>  PASSED [ 34%]
> tests/test_auth.py::test_sessionid_list_get_session[initial_sessions1-user1-abc]
>  PASSED [ 35%]
> tests/test_auth.py::test_sessionid_list_get_session[initial_sessions2-user2-None]
>  PASSED [ 35%]
> tests/test_auth.py::test_sessionid_file_get_user_session[https://zabbix1.com-user1-None]
>  PASSED [ 35%]
> tests/test_auth.py::test_sessionid_file_get_user_session[https://zabbix2.com-user2-xyz789]
>  PASSED [ 36%]
> tests/test_auth.py::test_sessionid_file_set_user_session[https://new.com-user1-session1-expected_urls0]
>  PASSED [ 36%]
> tests/test_auth.py::test_sessionid_file_set_user_session[https://existing.com-user2-session2-expected_urls1]
>  PASSED [ 36%]
> tests/test_auth.py::test_sessionid_file_load[True-True-False-False] PASSED [ 
> 37%]
> tests/test_auth.py::test_sessionid_file_load[False-True-False-True] PASSED [ 
> 37%]
> tests/test_auth.py::test_sessionid_file_load[True-False-False-True] PASSED [ 
> 37%]
> tests/test_auth.py::test_sessionid_file_load[True-False-True-False] PASSED [ 
> 38%]
> tests/test_auth.py::test_sessionid_file_save[True-False-True-False] PASSED [ 
> 38%]
> tests/test_auth.py::test_sessionid_file_save[False-False-True-True] PASSED [ 
> 38%]
> tests/test_auth.py::test_sessionid_file_save[True-False-False-False] PASSED [ 
> 38%]
> tests/test_auth.py::test_sessionid_file_save[True-True-False-False] PASSED [ 
> 39%]
> tests/test_bulk.py::test_bulk_command_from_line[simple] PASSED           [ 
> 39%]
> tests/test_bulk.py::test_bulk_command_from_line[Legacy positional args] 
> PASSED [ 39%]
> tests/test_bulk.py::test_bulk_command_from_line[args and kwargs] PASSED  [ 
> 40%]
> tests/test_bulk.py::test_bulk_command_from_line[kwarg between args] PASSED [ 
> 40%]
> tests/test_bulk.py::test_bulk_command_from_line[Trailing comment] PASSED [ 
> 40%]
> tests/test_bulk.py::test_bulk_command_from_line[fails (empty)] XFAIL     [ 
> 41%]
> tests/test_bulk.py::test_bulk_command_from_line[fails (comment symbol)] XFAIL 
> [ 41%]
> tests/test_bulk.py::test_bulk_command_from_line[fails (commented out line)] 
> XFAIL [ 41%]
> tests/test_bulk.py::test_load_command_file PASSED                        [ 
> 42%]
> tests/test_bulk.py::test_bulk_runner_mode_invalid_line_strict[strict] PASSED 
> [ 42%]
> tests/test_bulk.py::test_bulk_runner_mode_invalid_line_strict[continue] 
> PASSED [ 42%]
> tests/test_bulk.py::test_bulk_runner_mode_invalid_line_skip PASSED       [ 
> 42%]
> tests/test_bulk.py::test_load_command_file_not_found PASSED              [ 
> 43%]
> tests/test_bulk.py::test_bulk_runner_exit_code_handling[strict] PASSED   [ 
> 43%]
> tests/test_bulk.py::test_bulk_runner_exit_code_handling[continue] PASSED [ 
> 43%]
> tests/test_bulk.py::test_bulk_commands_complex[strict] PASSED            [ 
> 44%]
> tests/test_bulk.py::test_bulk_commands_complex[continue] PASSED          [ 
> 44%]
> tests/test_bulk.py::test_bulk_commands_complex[skip] PASSED              [ 
> 44%]
> tests/test_compat.py::test_packaging_version_release_sanity PASSED       [ 
> 45%]
> tests/test_compat.py::test_host_proxyid[version0-proxyid] PASSED         [ 
> 45%]
> tests/test_compat.py::test_host_proxyid[version1-proxy_hostid] PASSED    [ 
> 45%]
> tests/test_compat.py::test_host_proxyid[version2-proxy_hostid] PASSED    [ 
> 46%]
> tests/test_compat.py::test_host_proxyid[version3-proxy_hostid] PASSED    [ 
> 46%]
> tests/test_compat.py::test_host_proxyid[version4-proxy_hostid] PASSED    [ 
> 46%]
> tests/test_compat.py::test_host_proxyid[version5-proxy_hostid] PASSED    [ 
> 47%]
> tests/test_compat.py::test_login_user_name[version0-username] PASSED     [ 
> 47%]
> tests/test_compat.py::test_login_user_name[version1-username] PASSED     [ 
> 47%]
> tests/test_compat.py::test_login_user_name[version2-username] PASSED     [ 
> 47%]
> tests/test_compat.py::test_login_user_name[version3-username] PASSED     [ 
> 48%]
> tests/test_compat.py::test_login_user_name[version4-username] PASSED     [ 
> 48%]
> tests/test_compat.py::test_login_user_name[version5-username] PASSED     [ 
> 48%]
> tests/test_compat.py::test_login_user_name[version6-user] PASSED         [ 
> 49%]
> tests/test_compat.py::test_login_user_name[version7-user] PASSED         [ 
> 49%]
> tests/test_compat.py::test_login_user_name[version8-user] PASSED         [ 
> 49%]
> tests/test_compat.py::test_login_user_name[version9-user] PASSED         [ 
> 50%]
> tests/test_compat.py::test_login_user_name[version10-user] PASSED        [ 
> 50%]
> tests/test_compat.py::test_login_user_name[version11-user] PASSED        [ 
> 50%]
> tests/test_compat.py::test_proxy_name[version0-name] PASSED              [ 
> 51%]
> tests/test_compat.py::test_proxy_name[version1-host] PASSED              [ 
> 51%]
> tests/test_compat.py::test_proxy_name[version2-host] PASSED              [ 
> 51%]
> tests/test_compat.py::test_proxy_name[version3-host] PASSED              [ 
> 52%]
> tests/test_compat.py::test_proxy_name[version4-host] PASSED              [ 
> 52%]
> tests/test_compat.py::test_proxy_name[version5-host] PASSED              [ 
> 52%]
> tests/test_compat.py::test_user_name[version0-username] PASSED           [ 
> 52%]
> tests/test_compat.py::test_user_name[version1-username] PASSED           [ 
> 53%]
> tests/test_compat.py::test_user_name[version2-username] PASSED           [ 
> 53%]
> tests/test_compat.py::test_user_name[version3-alias] PASSED              [ 
> 53%]
> tests/test_compat.py::test_user_name[version4-alias] PASSED              [ 
> 54%]
> tests/test_compat.py::test_user_name[version5-alias] PASSED              [ 
> 54%]
> tests/test_compat.py::test_user_name[version6-alias] PASSED              [ 
> 54%]
> tests/test_compat.py::test_user_name[version7-alias] PASSED              [ 
> 55%]
> tests/test_config.py::test_config_default PASSED                         [ 
> 55%]
> tests/test_config.py::test_sample_config PASSED                          [ 
> 55%]
> tests/test_config.py::test_load_config_file_legacy[True] PASSED          [ 
> 56%]
> tests/test_config.py::test_load_config_file_legacy[False] PASSED         [ 
> 56%]
> tests/test_config.py::test_load_config_file[True-True] PASSED            [ 
> 56%]
> tests/test_config.py::test_load_config_file[True-False] PASSED           [ 
> 57%]
> tests/test_config.py::test_load_config_file[False-True] PASSED           [ 
> 57%]
> tests/test_config.py::test_load_config_file[False-False] PASSED          [ 
> 57%]
> tests/test_config.py::test_plugins_config_get PASSED                     [ 
> 57%]
> tests/test_config.py::test_plugin_config_get PASSED                      [ 
> 58%]
> tests/test_config.py::test_config_get_with_annotations PASSED            [ 
> 58%]
> tests/test_config.py::test_plugin_config_set PASSED                      [ 
> 58%]
> tests/test_config.py::test_secret_mode_from_context[context0-hide] PASSED [ 
> 59%]
> tests/test_config.py::test_secret_mode_from_context[context1-masked] PASSED [ 
> 59%]
> tests/test_config.py::test_secret_mode_from_context[context2-plain] PASSED [ 
> 59%]
> tests/test_config.py::test_secret_mode_from_context[context3-hide] PASSED [ 
> 60%]
> tests/test_config.py::test_secret_mode_from_context[context4-masked] PASSED [ 
> 60%]
> tests/test_config.py::test_secret_mode_from_context[context5-plain] PASSED [ 
> 60%]
> tests/test_config.py::test_secret_mode_from_context[context6-masked] PASSED [ 
> 61%]
> tests/test_config.py::test_secret_mode_from_context[None-masked] PASSED  [ 
> 61%]
> tests/test_config.py::test_secret_mode_from_context[<lambda>-masked] PASSED [ 
> 61%]
> tests/test_config.py::test_secret_mode_from_context[context9-plain] PASSED [ 
> 61%]
> tests/test_config.py::test_secret_mode_from_context[context10-masked] PASSED 
> [ 62%]
> tests/test_config.py::test_secret_mode_default PASSED                    [ 
> 62%]
> tests/test_config.py::test_config_dump_to_file_masked PASSED             [ 
> 62%]
> tests/test_config.py::test_deprecated_field_warnings PASSED              [ 
> 63%]
> tests/test_config.py::test_get_deprecated_fields_set PASSED              [ 
> 63%]
> tests/test_config.py::test_get_deprecated_fields_deep_nesting PASSED     [ 
> 63%]
> tests/test_config.py::test_deprecated_fields_updated PASSED              [ 
> 64%]
> tests/test_config.py::test_get_deprecated_fields PASSED                  [ 
> 64%]
> tests/test_config.py::test_load_deprecated_config PASSED                 [ 
> 64%]
> tests/test_config.py::test_load_deprecated_config_with_new_and_old_options 
> PASSED [ 65%]
> tests/test_config.py::test_load_deprecated_config_legacy PASSED          [ 
> 65%]
> tests/test_config.py::test_shared_command_config PASSED                  [ 
> 65%]
> tests/test_config.py::test_config_command_alias_priority PASSED          [ 
> 66%]
> tests/test_config.py::test_fmt_deprecated_fields PASSED                  [ 
> 66%]
> tests/test_console.py::test_get_extra_dict[inp0-expect0] PASSED          [ 
> 66%]
> tests/test_console.py::test_get_extra_dict[inp1-expect1] PASSED          [ 
> 66%]
> tests/test_console.py::test_get_extra_dict[inp2-expect2] PASSED          [ 
> 67%]
> tests/test_console.py::test_get_extra_dict[inp3-expect3] PASSED          [ 
> 67%]
> tests/test_console.py::test_get_extra_dict_reserved_keys PASSED          [ 
> 67%]
> tests/test_console.py::test_debug_kv PASSED                              [ 
> 68%]
> tests/test_console.py::test_debug PASSED                                 [ 
> 68%]
> tests/test_console.py::test_info PASSED                                  [ 
> 68%]
> tests/test_console.py::test_success PASSED                               [ 
> 69%]
> tests/test_console.py::test_warning PASSED                               [ 
> 69%]
> tests/test_console.py::test_error PASSED                                 [ 
> 69%]
> tests/test_console.py::test_exit_err_table PASSED                        [ 
> 70%]
> tests/test_console.py::test_exit_err_json PASSED                         [ 
> 70%]
> tests/test_console.py::test_exit_err_json_with_errors PASSED             [ 
> 70%]
> tests/test_console.py::test_exit_err_json_with_zabbix_api_request_error 
> PASSED [ 71%]
> tests/test_exceptions.py::test_get_cause_args[TypeError] PASSED          [ 
> 71%]
> tests/test_exceptions.py::test_get_cause_args[ValueError] PASSED         [ 
> 71%]
> tests/test_exceptions.py::test_get_cause_args[ZabbixCLIError] PASSED     [ 
> 71%]
> tests/test_exceptions.py::test_get_cause_args[ZabbixAPIException] PASSED [ 
> 72%]
> tests/test_exceptions.py::test_get_cause_args_no_cause PASSED            [ 
> 72%]
> tests/test_exceptions.py::test_get_cause_args_with_api_response PASSED   [ 
> 72%]
> tests/test_exceptions.py::test_get_cause_args_with_api_response_with_data 
> PASSED [ 73%]
> tests/test_logging.py::TestSafeFormatting::test_safe_formatter PASSED    [ 
> 73%]
> tests/test_logging.py::TestSafeFormatting::test_safe_record PASSED       [ 
> 73%]
> tests/test_logging.py::TestSafeFormatting::test_safe_record_attr PASSED  [ 
> 74%]
> tests/test_logging.py::TestSafeFormatting::test_safe_record_basic_message 
> PASSED [ 74%]
> tests/test_logging.py::TestSafeFormatting::test_safe_record_formatted_message 
> PASSED [ 74%]
> tests/test_logging.py::TestSafeFormatting::test_safe_record_missing_dict 
> PASSED [ 75%]
> tests/test_models.py::test_table_renderable_metakey_header[None is default] 
> PASSED [ 75%]
> tests/test_models.py::test_table_renderable_metakey_header[Empty string is 
> default] PASSED [ 75%]
> tests/test_models.py::test_table_renderable_metakey_header[Foo Header-Foo 
> Header] PASSED [ 76%]
> tests/test_models.py::test_table_renderable_metakey_join_char[content0-,-expect0]
>  PASSED [ 76%]
> tests/test_models.py::test_table_renderable_metakey_join_char[content1-|-expect1]
>  PASSED [ 76%]
> tests/test_models.py::test_table_renderable_metakey_join_char[content2- 
> -expect2] PASSED [ 76%]
> tests/test_models.py::test_table_renderable_metakey_join_char[content3--expect3]
>  PASSED [ 77%]
> tests/test_models.py::test_table_renderable_metakey_join_char[content4-,-expect4]
>  PASSED [ 77%]
> tests/test_models.py::test_table_renderable_metakey_join_char[content5-|-expect5]
>  PASSED [ 77%]
> tests/test_models.py::test_table_renderable_metakey_join_char[content6- 
> -expect6] PASSED [ 78%]
> tests/test_models.py::test_table_renderable_metakey_join_char[content7--expect7]
>  PASSED [ 78%]
> tests/test_models.py::test_all_metakeys PASSED                           [ 
> 78%]
> tests/test_models.py::test_rows_with_unknown_base_model PASSED           [ 
> 79%]
> tests/test_patches.py::test_typer_patches_idempotent PASSED              [ 
> 79%]
> tests/test_patches.py::test_patch__get_rich_console PASSED               [ 
> 79%]
> tests/test_patches.py::test_patch_generate_enum_convertor_apistrenum PASSED [ 
> 80%]
> tests/test_patches.py::test_patch_generate_enum_convertor_strenum_lib SKIPPED 
> [ 80%]
> tests/test_patches.py::test_patch_generate_enum_convertor_strenum_stdlib 
> PASSED [ 80%]
> tests/test_patches.py::test_patch_get_click_type FAILED                  [ 
> 80%]
> tests/test_patches.py::test_patch_get_click_type ERROR                   [ 
> 80%]
> tests/test_patches.py::test_patch_help_text_spacing PASSED               [ 
> 81%]
> tests/test_patches.py::test_patch_help_text_style PASSED                 [ 
> 81%]
> tests/test_prompts.py::test_is_headless_set_true[1-CI] PASSED            [ 
> 81%]
> tests/test_prompts.py::test_is_headless_set_true[1-ZABBIX_CLI_HEADLESS] 
> PASSED [ 82%]
> tests/test_prompts.py::test_is_headless_set_true[true-CI] PASSED         [ 
> 82%]
> tests/test_prompts.py::test_is_headless_set_true[true-ZABBIX_CLI_HEADLESS] 
> PASSED [ 82%]
> tests/test_prompts.py::test_is_headless_set_false[0-CI] PASSED           [ 
> 83%]
> tests/test_prompts.py::test_is_headless_set_false[0-ZABBIX_CLI_HEADLESS] 
> PASSED [ 83%]
> tests/test_prompts.py::test_is_headless_set_false[false-CI] PASSED       [ 
> 83%]
> tests/test_prompts.py::test_is_headless_set_false[false-ZABBIX_CLI_HEADLESS] 
> PASSED [ 84%]
> tests/test_prompts.py::test_is_headless_set_false[-CI] PASSED            [ 
> 84%]
> tests/test_prompts.py::test_is_headless_set_false[-ZABBIX_CLI_HEADLESS] 
> PASSED [ 84%]
> tests/test_prompts.py::test_is_headless_set_false[None-CI] PASSED        [ 
> 85%]
> tests/test_prompts.py::test_is_headless_set_false[None-ZABBIX_CLI_HEADLESS] 
> PASSED [ 85%]
> tests/test_prompts.py::test_is_headless_map[DEBIAN_FRONTEND-noninteractive-True]
>  PASSED [ 85%]
> tests/test_prompts.py::test_is_headless_map[DEBIAN_FRONTEND-teletype-False] 
> PASSED [ 85%]
> tests/test_prompts.py::test_is_headless_map[DEBIAN_FRONTEND-readline-False] 
> PASSED [ 86%]
> tests/test_prompts.py::test_is_headless_map[DEBIAN_FRONTEND-dialog-False] 
> PASSED [ 86%]
> tests/test_prompts.py::test_is_headless_map[DEBIAN_FRONTEND-gtk-False] PASSED 
> [ 86%]
> tests/test_prompts.py::test_is_headless_map[DEBIAN_FRONTEND-text-False] 
> PASSED [ 87%]
> tests/test_prompts.py::test_is_headless_map[DEBIAN_FRONTEND-anything-False] 
> PASSED [ 87%]
> tests/test_prompts.py::test_is_headless_map[DEBIAN_FRONTEND-None-False] 
> PASSED [ 87%]
> tests/test_prompts.py::test_is_headless_map[DEBIAN_FRONTEND--False] PASSED [ 
> 88%]
> tests/test_prompts.py::test_is_headless_map[DEBIAN_FRONTEND-0-False] PASSED [ 
> 88%]
> tests/test_prompts.py::test_is_headless_map[DEBIAN_FRONTEND-false-False] 
> PASSED [ 88%]
> tests/test_prompts.py::test_is_headless_map[DEBIAN_FRONTEND-1-False] PASSED [ 
> 89%]
> tests/test_prompts.py::test_is_headless_map[DEBIAN_FRONTEND-true-False] 
> PASSED [ 89%]
> tests/test_repl.py::test_help_internal PASSED                            [ 
> 89%]
> tests/test_style.py::test_color_call PASSED                              [ 
> 90%]
> tests/test_update.py::test_pyinstaller_updater_get_url[linux-x86_64-1.2.3-1.2.3-linux-x86_64]
>  PASSED [ 90%]
> tests/test_update.py::test_pyinstaller_updater_get_url[linux-arm64-1.2.3-1.2.3-linux-arm64]
>  PASSED [ 90%]
> tests/test_update.py::test_pyinstaller_updater_get_url[linux-armv7l-1.2.3-1.2.3-linux-armv7l]
>  PASSED [ 90%]
> tests/test_update.py::test_pyinstaller_updater_get_url[darwin-x86_64-1.2.3-1.2.3-macos-x86_64]
>  PASSED [ 91%]
> tests/test_update.py::test_pyinstaller_updater_get_url[darwin-arm64-1.2.3-1.2.3-macos-arm64]
>  PASSED [ 91%]
> tests/test_update.py::test_pyinstaller_updater_get_url[win32-x86_64-1.2.3-1.2.3-win-x86_64.exe]
>  PASSED [ 91%]
> tests/test_utils.py::test_convert_duration[1 hour-expect0] PASSED        [ 
> 92%]
> tests/test_utils.py::test_convert_duration[1 hour 30 minutes-expect1] PASSED 
> [ 92%]
> tests/test_utils.py::test_convert_duration[1 hour 30 minutes 30 
> seconds-expect2] PASSED [ 92%]
> tests/test_utils.py::test_convert_duration[1 day 1 hour 30 minutes 30 
> seconds-expect3] PASSED [ 93%]
> tests/test_utils.py::test_convert_duration[2 hours 30 seconds-expect4] PASSED 
> [ 93%]
> tests/test_utils.py::test_convert_duration[2h30s-expect5] PASSED         [ 
> 93%]
> tests/test_utils.py::test_convert_duration[2 hours 30 minutes 30 
> seconds-expect6] PASSED [ 94%]
> tests/test_utils.py::test_convert_duration[2 hour 30 minute 30 
> second-expect7] PASSED [ 94%]
> tests/test_utils.py::test_convert_duration[2h30m30s-expect8] PASSED      [ 
> 94%]
> tests/test_utils.py::test_convert_duration[9030s-expect9] PASSED         [ 
> 95%]
> tests/test_utils.py::test_convert_duration[9030-expect10] PASSED         [ 
> 95%]
> tests/test_utils.py::test_convert_duration[0-expect11] PASSED            [ 
> 95%]
> tests/test_utils.py::test_convert_duration[0d0h0m0s-expect12] PASSED     [ 
> 95%]
> tests/test_utils.py::test_convert_timestamp_interval[Legacy format] PASSED [ 
> 96%]
> tests/test_utils.py::test_convert_timestamp_interval[ISO w/o timezone] PASSED 
> [ 96%]
> tests/test_utils.py::test_convert_timestamp_interval[ISO w/o timezone 
> (space-separated)] PASSED [ 96%]
> tests/test_utils.py::test_convert_timestamp[Legacy] PASSED               [ 
> 97%]
> tests/test_utils.py::test_convert_timestamp[ISO w/o timezone] PASSED     [ 
> 97%]
> tests/test_utils.py::test_convert_timestamp[ISO w/o timezone 
> (space-separated)] PASSED [ 97%]
> tests/test_utils.py::test_convert_time_to_interval[Range: Legacy] PASSED [ 
> 98%]
> tests/test_utils.py::test_convert_time_to_interval[Range: ISO w/o timezone] 
> PASSED [ 98%]
> tests/test_utils.py::test_convert_time_to_interval[Range: ISO w/o timezone 
> (space-separated)] PASSED [ 98%]
> tests/test_utils.py::test_convert_time_to_interval[Duration: 1h (long form)] 
> PASSED [ 99%]
> tests/test_utils.py::test_convert_time_to_interval[Duration: 1d1h30m30s (long 
> form)] PASSED [ 99%]
> tests/test_utils.py::test_convert_time_to_interval[Duration: 1h (short form)] 
> PASSED [ 99%]
> tests/test_utils.py::test_convert_time_to_interval[Duration: 1d1h30m30s 
> (short form)] PASSED [100%]
> 
> ═══════════════════════════════ inline-snapshot 
> ════════════════════════════════
> ──────────────────────────────── Fix snapshots 
> ─────────────────────────────────
> ╭─────────────────────────── tests/test_patches.py 
> ────────────────────────────╮
> │ @@ -169,7 +169,7 @@                                                         
>  │
> │                                                                             
>  │
> │          {                                                                  
>  │
> │              "param_type": "Choice",                                        
>  │
> │              "name": "choice",                                              
>  │
> │ -            "choices": ["foo", "bar", "0", "1"],                           
>  │
> │ +            "choices": ('foo', 'bar', '0', '1'),                           
>  │
> │              "case_sensitive": True,                                        
>  │
> │          }                                                                  
>  │
> │      )                                                                      
>  │
> ╰──────────────────────────────────────────────────────────────────────────────╯
> These changes are not applied.
> Use --inline-snapshot=fix to apply them, or use the interactive mode with 
> --inline-snapshot=review
> 
> ─────────────────────────────────── Problems 
> ───────────────────────────────────
> inline-snapshot is not able to format your code.
> This issue can be solved by:
>  * installing inline-snapshot[black] which gives you the same formatting like 
> in
> older versions
>  * adding a `format-command` to your pyproject.toml (see 
> https://15r10nk.github.io/inline-snapshot/latest/configuration/#format-command
>  
> for more information).
> 
> 
> 
> 
> ==================================== ERRORS 
> ====================================
> ________________ ERROR at teardown of test_patch_get_click_type 
> ________________
> some snapshots in this test have incorrect values.
> If you just created this value with --inline-snapshot=create, the value is 
> now created and you can ignore this message.
> =================================== FAILURES 
> ===================================
> __________________________ test_patch_get_click_type 
> ___________________________
> 
>     def test_patch_get_click_type() -> None:
>         original = copy.deepcopy(typer.main.get_click_type)
>         typ.patch_get_click_type()
>         new = typer.main.get_click_type
>         assert original != new
>     
>         class APIEnum(APIStrEnum):
>             FOO = APIStr("foo", 0)
>             BAR = APIStr("bar", 1)
>     
> >       assert new(
>             annotation=APIEnum, parameter_info=ParameterInfo()
>         ).to_info_dict() == snapshot(
>             {
>                 "param_type": "Choice",
>                 "name": "choice",
>                 "choices": ["foo", "bar", "0", "1"],
>                 "case_sensitive": True,
>             }
>         )
> E       AssertionError: assert {'case_sensit...pe': 'Choice'} == 
> {'case_sensit...pe': 'Choice'}
> E         
> E         Omitting 3 identical items, use -vv to show
> E         Differing items:
> E         {'choices': ('foo', 'bar', '0', '1')} != {'choices': ['foo', 'bar', 
> '0', '1']}
> E         
> E         Full diff:
> E           {...
> E         
> E         ...Full output truncated (16 lines hidden), use '-vv' to show
> 
> tests/test_patches.py:166: AssertionError
> =============================== warnings summary 
> ===============================
> tests/pyzabbix/test_types.py: 27 warnings
>   
> /build/reproducible-path/zabbix-cli-3.6.2/.pybuild/cpython3_3.13_zabbix-cli/build/zabbix_cli/pyzabbix/types.py:244:
>  PydanticDeprecatedSince211: Accessing the 'model_computed_fields' attribute 
> on the instance is deprecated. Instead, you should access this attribute from 
> the model class. Deprecated in Pydantic V2.11 to be removed in V3.0.
>     exclude=set(self.model_computed_fields),
> 
> tests/test_app.py: 2 warnings
> tests/test_config.py: 399 warnings
>   
> /build/reproducible-path/zabbix-cli-3.6.2/.pybuild/cpython3_3.13_zabbix-cli/build/zabbix_cli/config/utils.py:109:
>  PydanticDeprecatedSince211: Accessing the 'model_fields' attribute on the 
> instance is deprecated. Instead, you should access this attribute from the 
> model class. Deprecated in Pydantic V2.11 to be removed in V3.0.
>     f = model.model_fields.get(field_name)
> 
> tests/test_auth.py::test_get_auth_token_file_paths_defafult
> tests/test_auth.py::test_get_auth_token_file_paths_override
>   
> /build/reproducible-path/zabbix-cli-3.6.2/.pybuild/cpython3_3.13_zabbix-cli/build/zabbix_cli/auth.py:696:
>  DeprecationWarning: deprecated
>     if config and config.app.auth_token_file not in paths:  # config has 
> custom path
> 
> tests/test_auth.py::test_get_auth_token_file_paths_override
>   
> /build/reproducible-path/zabbix-cli-3.6.2/.pybuild/cpython3_3.13_zabbix-cli/build/zabbix_cli/auth.py:697:
>  DeprecationWarning: deprecated
>     paths.insert(0, config.app.auth_token_file)
> 
> tests/test_config.py: 805 warnings
>   
> /build/reproducible-path/zabbix-cli-3.6.2/.pybuild/cpython3_3.13_zabbix-cli/build/zabbix_cli/config/utils.py:131:
>  PydanticDeprecatedSince211: Accessing the 'model_fields' attribute on the 
> instance is deprecated. Instead, you should access this attribute from the 
> model class. Deprecated in Pydantic V2.11 to be removed in V3.0.
>     field = model.model_fields.get(field_name)
> 
> tests/test_config.py: 174 warnings
>   
> /build/reproducible-path/zabbix-cli-3.6.2/.pybuild/cpython3_3.13_zabbix-cli/build/zabbix_cli/config/utils.py:137:
>  DeprecationWarning: deprecated
>     value = getattr(model, field_name)
> 
> tests/test_models.py: 25 warnings
>   
> /build/reproducible-path/zabbix-cli-3.6.2/.pybuild/cpython3_3.13_zabbix-cli/build/zabbix_cli/models.py:124:
>  PydanticDeprecatedSince211: Accessing the 'model_fields' attribute on the 
> instance is deprecated. Instead, you should access this attribute from the 
> model class. Deprecated in Pydantic V2.11 to be removed in V3.0.
>     **self.model_fields,
> 
> tests/test_models.py: 25 warnings
>   
> /build/reproducible-path/zabbix-cli-3.6.2/.pybuild/cpython3_3.13_zabbix-cli/build/zabbix_cli/models.py:125:
>  PydanticDeprecatedSince211: Accessing the 'model_computed_fields' attribute 
> on the instance is deprecated. Instead, you should access this attribute from 
> the model class. Deprecated in Pydantic V2.11 to be removed in V3.0.
>     **self.model_computed_fields,
> 
> tests/test_models.py: 10 warnings
>   
> /build/reproducible-path/zabbix-cli-3.6.2/.pybuild/cpython3_3.13_zabbix-cli/build/zabbix_cli/models.py:106:
>  PydanticDeprecatedSince211: Accessing the 'model_fields' attribute on the 
> instance is deprecated. Instead, you should access this attribute from the 
> model class. Deprecated in Pydantic V2.11 to be removed in V3.0.
>     f = self.model_fields.get(field, None)
> 
> -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
> =========================== short test summary info 
> ============================
> FAILED tests/test_patches.py::test_patch_get_click_type - AssertionError: 
> ass...
> ERROR tests/test_patches.py::test_patch_get_click_type - Failed: some 
> snapsho...
> = 1 failed, 313 passed, 2 skipped, 6 xfailed, 1470 warnings, 1 error in 2.79s 
> ==
> E: pybuild pybuild:485: test: plugin pyproject failed with: exit code=1: cd 
> /build/reproducible-path/zabbix-cli-3.6.2/.pybuild/cpython3_3.13_zabbix-cli/build;
>  python3.13 -m pytest --inline-snapshot=report
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 
> --test-args=--inline-snapshot=report --parallel=8 returned exit code 13


The full build log is available at
https://people.debian.org/~cipriano/custom-mass-rebuild/python3-click-8.3.3/zabbix-cli_3.6.2-1.log

Attachment: signature.asc
Description: PGP signature

Reply via email to