Package: src:zabbix-cli
Version: 3.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/202608/

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

Thanks.

--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean --buildsystem=pybuild
   dh_auto_clean -O--buildsystem=pybuild
   dh_autoreconf_clean -O--buildsystem=pybuild
   dh_clean -O--buildsystem=pybuild
 debian/rules binary
dh binary --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:142: Building wheel for python3.14 with "build" 
module
I: pybuild base:385: python3.14 -m build --skip-dependency-check --no-isolation 
--wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_zabbix-cli  
* Building wheel...
Successfully built zabbix_cli_uio-3.6.2-py3-none-any.whl

[... snipped ...]

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 {'param_type'...sitive': True} == 
{'param_type'...sitive': True}
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
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_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
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_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
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_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
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_zabbix-cli/build/zabbix_cli/auth.py:697:
 DeprecationWarning: deprecated
    paths.insert(0, config.app.auth_token_file)

tests/test_config.py: 805 warnings
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_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
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_zabbix-cli/build/zabbix_cli/config/utils.py:137:
 DeprecationWarning: deprecated
    value = getattr(model, field_name)

tests/test_models.py: 25 warnings
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_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
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_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
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_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.48s ==
E: pybuild pybuild:485: test: plugin pyproject failed with: exit code=1: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.14_zabbix-cli/build; python3.14 -m pytest 
--inline-snapshot=report
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.14 
--test-args=--inline-snapshot=report --parallel=2 returned exit code 13
make[1]: *** [debian/rules:9: override_dh_auto_test] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:6: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit 
status 2
--------------------------------------------------------------------------------

Reply via email to