Source: gitlint Version: 0.12.0-0.1 Severity: serious Justification: FTBFS on amd64 Tags: buster sid Usertags: ftbfs-20200222 ftbfs-buster
Hi, During a rebuild of all packages in sid, your package failed to build on amd64. Relevant part (hopefully): > make[1]: Entering directory '/<<PKGBUILDDIR>>' > PYBUILD_SYSTEM=custom dh_auto_test > I: pybuild base:217: python3.8 -m coverage run > --omit='/usr/*,/<<PKGBUILDDIR>>/gitlint/tests/*,/<<PKGBUILDDIR>>/gitlint/qa/*' > -m unittest discover -v -s /<<PKGBUILDDIR>>/gitlint/tests > test_contrib_rule_instantiated (contrib.test_contrib_rules.ContribRuleTests) > Tests that all contrib rules can be instantiated without errors. ... ok > test_contrib_rule_naming_conventions > (contrib.test_contrib_rules.ContribRuleTests) > Tests that contrib rules follow certain naming conventions. ... ok > test_contrib_rule_uniqueness (contrib.test_contrib_rules.ContribRuleTests) > Tests that all contrib rules have unique identifiers. ... ok > test_contrib_tests_exist (contrib.test_contrib_rules.ContribRuleTests) > Tests that every contrib rule file has an associated test file. ... ok > test_conventional_commits > (contrib.test_conventional_commit.ContribConventionalCommitTests) ... ok > test_enable (contrib.test_conventional_commit.ContribConventionalCommitTests) > ... ok > test_enable (contrib.test_signedoff_by.ContribSignedOffByTests) ... ok > test_signedoff_by (contrib.test_signedoff_by.ContribSignedOffByTests) ... ok > test_body_changed_file_mention (rules.test_body_rules.BodyRuleTests) ... ok > test_body_first_line_empty (rules.test_body_rules.BodyRuleTests) ... ok > test_body_min_length (rules.test_body_rules.BodyRuleTests) ... ok > test_body_missing (rules.test_body_rules.BodyRuleTests) ... ok > test_body_missing_merge_commit (rules.test_body_rules.BodyRuleTests) ... ok > test_hard_tabs (rules.test_body_rules.BodyRuleTests) ... ok > test_max_line_length (rules.test_body_rules.BodyRuleTests) ... ok > test_trailing_whitespace (rules.test_body_rules.BodyRuleTests) ... ok > test_ignore_by_body (rules.test_configuration_rules.ConfigurationRuleTests) > ... ok > test_ignore_by_title (rules.test_configuration_rules.ConfigurationRuleTests) > ... ok > test_author_valid_email_rule (rules.test_meta_rules.MetaRuleTests) ... ok > test_author_valid_email_rule_custom_regex > (rules.test_meta_rules.MetaRuleTests) ... ok > test_hard_tabs (rules.test_title_rules.TitleRuleTests) ... ok > test_leading_whitespace (rules.test_title_rules.TitleRuleTests) ... ok > test_max_line_length (rules.test_title_rules.TitleRuleTests) ... ok > test_regex_matches (rules.test_title_rules.TitleRuleTests) ... ok > test_title_must_not_contain_word (rules.test_title_rules.TitleRuleTests) ... > ok > test_trailing_punctuation (rules.test_title_rules.TitleRuleTests) ... ok > test_trailing_whitespace (rules.test_title_rules.TitleRuleTests) ... ok > test_assert_valid_rule_class (rules.test_user_rules.UserRuleTests) ... ok > test_assert_valid_rule_class_negative (rules.test_user_rules.UserRuleTests) > ... ok > test_assert_valid_rule_class_negative_id > (rules.test_user_rules.UserRuleTests) ... ok > test_assert_valid_rule_class_negative_name > (rules.test_user_rules.UserRuleTests) ... ok > test_assert_valid_rule_class_negative_option_spec > (rules.test_user_rules.UserRuleTests) ... ok > test_assert_valid_rule_class_negative_parent > (rules.test_user_rules.UserRuleTests) ... ok > test_assert_valid_rule_class_negative_target > (rules.test_user_rules.UserRuleTests) ... ok > test_assert_valid_rule_class_negative_validate > (rules.test_user_rules.UserRuleTests) ... ok > test_empty_user_classes (rules.test_user_rules.UserRuleTests) ... ok > test_extra_path_specified_by_file (rules.test_user_rules.UserRuleTests) ... ok > test_failed_module_import (rules.test_user_rules.UserRuleTests) ... ok > test_find_rule_classes (rules.test_user_rules.UserRuleTests) ... ok > test_find_rule_classes_nonexisting_path (rules.test_user_rules.UserRuleTests) > ... ok > test_rules_from_init_file (rules.test_user_rules.UserRuleTests) ... ok > test_config_file (test_cli.CLITests) > Test for --config option ... ok > test_config_file_negative (test_cli.CLITests) > Negative test for --config option ... ok > test_contrib (test_cli.CLITests) ... ok > test_contrib_negative (test_cli.CLITests) ... ok > test_debug (test_cli.CLITests) > Test for --debug option ... FAIL > test_extra_path (test_cli.CLITests) > Test for --extra-path flag ... ok > test_generate_config (test_cli.CLITests) > Test for the generate-config subcommand ... ok > test_generate_config_negative (test_cli.CLITests) > Negative test for the generate-config subcommand ... ok > test_git_error (test_cli.CLITests) > Tests that the cli handles git errors properly ... ok > test_input_stream (test_cli.CLITests) > Test for linting when a message is passed via stdin ... ok > test_install_hook (test_cli.CLITests) > Test for install-hook subcommand ... ok > test_install_hook_negative (test_cli.CLITests) > Negative test for install-hook subcommand ... ok > test_install_hook_target (test_cli.CLITests) > Test for install-hook subcommand with a specific --target option specified > ... ok > test_lint (test_cli.CLITests) > Test for basic simple linting functionality ... FAIL > test_lint_ignore_stdin (test_cli.CLITests) > Test for ignoring stdin when --ignore-stdin flag is enabled ... FAIL > test_lint_multiple_commits (test_cli.CLITests) > Test for --commits option ... FAIL > test_lint_multiple_commits_config (test_cli.CLITests) > Test for --commits option where some of the commits have gitlint config in > the commit message ... FAIL > test_lint_multiple_commits_configuration_rules (test_cli.CLITests) > Test for --commits option where where we have configured gitlint to ignore > certain rules for certain commits ... FAIL > test_msg_filename (test_cli.CLITests) ... ok > test_no_commits_in_range (test_cli.CLITests) > Test for --commits with the specified range being empty. ... ok > test_silent_mode (test_cli.CLITests) > Test for --silent option ... ok > test_target (test_cli.CLITests) > Test for the --target option ... ok > test_target_negative (test_cli.CLITests) > Negative test for the --target option ... ok > test_uninstall_hook (test_cli.CLITests) > Test for uninstall-hook subcommand ... ok > test_uninstall_hook_negative (test_cli.CLITests) > Negative test for uninstall-hook subcommand ... ok > test_verbosity (test_cli.CLITests) > Test for --verbosity option ... ok > test_version (test_cli.CLITests) > Test for --version option ... ok > test_e (test_display.DisplayTests) ... ok > test_v (test_display.DisplayTests) ... ok > test_commit_msg_custom_commentchar (test_git.GitTests) ... ok > test_from_commit_msg_comment (test_git.GitTests) ... ok > test_from_commit_msg_empty (test_git.GitTests) ... ok > test_from_commit_msg_fixup_squash_commit (test_git.GitTests) ... ok > test_from_commit_msg_full (test_git.GitTests) ... ok > test_from_commit_msg_just_title (test_git.GitTests) ... ok > test_from_commit_msg_merge_commit (test_git.GitTests) ... ok > test_from_local_repository_specific_ref (test_git.GitTests) ... ERROR > test_get_latest_commit (test_git.GitTests) ... ERROR > test_get_latest_commit_command_not_found (test_git.GitTests) ... ok > test_get_latest_commit_fixup_squash_commit (test_git.GitTests) ... ERROR > test_get_latest_commit_git_error (test_git.GitTests) ... ok > test_get_latest_commit_merge_commit (test_git.GitTests) ... ERROR > test_git_commentchar (test_git.GitTests) ... ok > test_git_hooks_dir (test_git.GitTests) ... ok > test_gitcommit_equality (test_git.GitTests) ... ok > test_commit_msg_hook_path (test_hooks.HookTests) ... ok > test_install_commit_msg_hook (test_hooks.HookTests) ... ok > test_install_commit_msg_hook_negative (test_hooks.HookTests) ... ok > test_uninstall_commit_msg_hook (test_hooks.HookTests) ... ok > test_uninstall_commit_msg_hook_negative (test_hooks.HookTests) ... ok > test_lint_configuration_rule (test_lint.LintTests) ... ok > test_lint_ignore (test_lint.LintTests) ... ok > test_lint_meta (test_lint.LintTests) > Lint sample2 but also add some metadata to the commit so we that get's linted > as well ... ok > test_lint_sample1 (test_lint.LintTests) ... ok > test_lint_sample2 (test_lint.LintTests) ... ok > test_lint_sample3 (test_lint.LintTests) ... ok > test_lint_sample4 (test_lint.LintTests) ... ok > test_lint_sample5 (test_lint.LintTests) ... ok > test_lint_special_commit (test_lint.LintTests) ... ok > test_print_violations (test_lint.LintTests) ... ok > test_boolean_option (test_options.RuleOptionTests) ... ok > test_int_option (test_options.RuleOptionTests) ... ok > test_list_option (test_options.RuleOptionTests) ... ok > test_option_equals (test_options.RuleOptionTests) ... ok > test_path_option (test_options.RuleOptionTests) ... ok > test_str_option (test_options.RuleOptionTests) ... ok > > ====================================================================== > ERROR: test_from_local_repository_specific_ref (test_git.GitTests) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/usr/lib/python3.8/unittest/mock.py", line 1348, in patched > return func(*newargs, **newkeywargs) > File "/<<PKGBUILDDIR>>/gitlint/tests/test_git.py", line 79, in > test_from_local_repository_specific_ref > context = GitContext.from_local_repository(u"fåke/path", sample_sha) > File "/<<PKGBUILDDIR>>/gitlint/git.py", line 212, in from_local_repository > commit_date = arrow.get(ustr(date), "YYYY-MM-DD HH:mm:ss Z").datetime > File "/usr/lib/python3/dist-packages/arrow/api.py", line 21, in get > return _factory.get(*args, **kwargs) > File "/usr/lib/python3/dist-packages/arrow/factory.py", line 243, in get > dt = parser.DateTimeParser(locale).parse(args[0], args[1]) > File "/usr/lib/python3/dist-packages/arrow/parser.py", line 223, in parse > raise ParserMatchError( > arrow.parser.ParserMatchError: Failed to match 'YYYY-MM-DD HH:mm:ss Z' when > parsing '2016-12-03 15:28:15 01:00' > > ====================================================================== > ERROR: test_get_latest_commit (test_git.GitTests) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/usr/lib/python3.8/unittest/mock.py", line 1348, in patched > return func(*newargs, **newkeywargs) > File "/<<PKGBUILDDIR>>/gitlint/tests/test_git.py", line 46, in > test_get_latest_commit > context = GitContext.from_local_repository(u"fåke/path") > File "/<<PKGBUILDDIR>>/gitlint/git.py", line 212, in from_local_repository > commit_date = arrow.get(ustr(date), "YYYY-MM-DD HH:mm:ss Z").datetime > File "/usr/lib/python3/dist-packages/arrow/api.py", line 21, in get > return _factory.get(*args, **kwargs) > File "/usr/lib/python3/dist-packages/arrow/factory.py", line 243, in get > dt = parser.DateTimeParser(locale).parse(args[0], args[1]) > File "/usr/lib/python3/dist-packages/arrow/parser.py", line 223, in parse > raise ParserMatchError( > arrow.parser.ParserMatchError: Failed to match 'YYYY-MM-DD HH:mm:ss Z' when > parsing '2016-12-03 15:28:15 01:00' > > ====================================================================== > ERROR: test_get_latest_commit_fixup_squash_commit (test_git.GitTests) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/usr/lib/python3.8/unittest/mock.py", line 1348, in patched > return func(*newargs, **newkeywargs) > File "/<<PKGBUILDDIR>>/gitlint/tests/test_git.py", line 146, in > test_get_latest_commit_fixup_squash_commit > context = GitContext.from_local_repository(u"fåke/path") > File "/<<PKGBUILDDIR>>/gitlint/git.py", line 212, in from_local_repository > commit_date = arrow.get(ustr(date), "YYYY-MM-DD HH:mm:ss Z").datetime > File "/usr/lib/python3/dist-packages/arrow/api.py", line 21, in get > return _factory.get(*args, **kwargs) > File "/usr/lib/python3/dist-packages/arrow/factory.py", line 243, in get > dt = parser.DateTimeParser(locale).parse(args[0], args[1]) > File "/usr/lib/python3/dist-packages/arrow/parser.py", line 223, in parse > raise ParserMatchError( > arrow.parser.ParserMatchError: Failed to match 'YYYY-MM-DD HH:mm:ss Z' when > parsing '2016-12-03 15:28:15 01:00' > > ====================================================================== > ERROR: test_get_latest_commit_merge_commit (test_git.GitTests) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/usr/lib/python3.8/unittest/mock.py", line 1348, in patched > return func(*newargs, **newkeywargs) > File "/<<PKGBUILDDIR>>/gitlint/tests/test_git.py", line 112, in > test_get_latest_commit_merge_commit > context = GitContext.from_local_repository(u"fåke/path") > File "/<<PKGBUILDDIR>>/gitlint/git.py", line 212, in from_local_repository > commit_date = arrow.get(ustr(date), "YYYY-MM-DD HH:mm:ss Z").datetime > File "/usr/lib/python3/dist-packages/arrow/api.py", line 21, in get > return _factory.get(*args, **kwargs) > File "/usr/lib/python3/dist-packages/arrow/factory.py", line 243, in get > dt = parser.DateTimeParser(locale).parse(args[0], args[1]) > File "/usr/lib/python3/dist-packages/arrow/parser.py", line 223, in parse > raise ParserMatchError( > arrow.parser.ParserMatchError: Failed to match 'YYYY-MM-DD HH:mm:ss Z' when > parsing '2016-12-03 15:28:15 01:00' > > ====================================================================== > FAIL: test_debug (test_cli.CLITests) > Test for --debug option > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/usr/lib/python3.8/unittest/mock.py", line 1348, in patched > return func(*newargs, **newkeywargs) > File "/<<PKGBUILDDIR>>/gitlint/tests/test_cli.py", line 302, in test_debug > self.assertEqual(stderr.getvalue(), expected) > AssertionError: '' != 'Commit 6f29bf81a8:\n3: B5\n\nCommit 25053[61 > chars]B6\n' > + Commit 6f29bf81a8: > + 3: B5 > + > + Commit 25053ccec5: > + 1: T3 > + 3: B5 > + > + Commit 4da2656b0d: > + 2: B4 > + 3: B5 > + 3: B6 > > > ====================================================================== > FAIL: test_lint (test_cli.CLITests) > Test for basic simple linting functionality > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/usr/lib/python3.8/unittest/mock.py", line 1348, in patched > return func(*newargs, **newkeywargs) > File "/<<PKGBUILDDIR>>/gitlint/tests/test_cli.py", line 81, in test_lint > self.assertEqual(stderr.getvalue(), u'3: B5 Body message is too short > (11<20): "commït-body"\n') > AssertionError: '' != '3: B5 Body message is too short (11<20): > "commït-body"\n' > + 3: B5 Body message is too short (11<20): "commït-body" > > > ====================================================================== > FAIL: test_lint_ignore_stdin (test_cli.CLITests) > Test for ignoring stdin when --ignore-stdin flag is enabled > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/usr/lib/python3.8/unittest/mock.py", line 1348, in patched > return func(*newargs, **newkeywargs) > File "/<<PKGBUILDDIR>>/gitlint/tests/test_cli.py", line 214, in > test_lint_ignore_stdin > self.assertEqual(stderr.getvalue(), u'3: B5 Body message is too short > (11<20): "commït-body"\n') > AssertionError: '' != '3: B5 Body message is too short (11<20): > "commït-body"\n' > + 3: B5 Body message is too short (11<20): "commït-body" > > > ====================================================================== > FAIL: test_lint_multiple_commits (test_cli.CLITests) > Test for --commits option > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/usr/lib/python3.8/unittest/mock.py", line 1348, in patched > return func(*newargs, **newkeywargs) > File "/<<PKGBUILDDIR>>/gitlint/tests/test_cli.py", line 113, in > test_lint_multiple_commits > self.assertEqual(stderr.getvalue(), expected) > AssertionError: '' != 'Commit 6f29bf81a8:\n3: B5 Body message is[190 > chars]3"\n' > + Commit 6f29bf81a8: > + 3: B5 Body message is too short (12<20): "commït-body1" > + > + Commit 25053ccec5: > + 3: B5 Body message is too short (12<20): "commït-body2" > + > + Commit 4da2656b0d: > + 3: B5 Body message is too short (12<20): "commït-body3" > > > ====================================================================== > FAIL: test_lint_multiple_commits_config (test_cli.CLITests) > Test for --commits option where some of the commits have gitlint config in > the commit message > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/usr/lib/python3.8/unittest/mock.py", line 1348, in patched > return func(*newargs, **newkeywargs) > File "/<<PKGBUILDDIR>>/gitlint/tests/test_cli.py", line 146, in > test_lint_multiple_commits_config > self.assertEqual(stderr.getvalue(), expected) > AssertionError: '' != 'Commit 6f29bf81a8:\n3: B5 Body message is[171 > chars]3"\n' > + Commit 6f29bf81a8: > + 3: B5 Body message is too short (12<20): "commït-body1" > + > + Commit 4da2656b0d: > + 1: T3 Title has trailing punctuation (.): "commït-title3." > + 3: B5 Body message is too short (12<20): "commït-body3" > > > ====================================================================== > FAIL: test_lint_multiple_commits_configuration_rules (test_cli.CLITests) > Test for --commits option where where we have configured gitlint to ignore > certain rules for certain commits > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/usr/lib/python3.8/unittest/mock.py", line 1348, in patched > return func(*newargs, **newkeywargs) > File "/<<PKGBUILDDIR>>/gitlint/tests/test_cli.py", line 185, in > test_lint_multiple_commits_configuration_rules > self.assertEqual(stderr.getvalue(), expected) > AssertionError: '' != 'Commit 6f29bf81a8:\n3: B5 Body message is[114 > chars]."\n' > + Commit 6f29bf81a8: > + 3: B5 Body message is too short (12<20): "commït-body1" > + > + Commit 4da2656b0d: > + 1: T3 Title has trailing punctuation (.): "commït-title3." > > > ---------------------------------------------------------------------- > Ran 107 tests in 0.308s > > FAILED (failures=6, errors=4) > E: pybuild pybuild:341: test: plugin custom failed with: exit code=1: > python3.8 -m coverage run > --omit='/usr/*,/<<PKGBUILDDIR>>/gitlint/tests/*,/<<PKGBUILDDIR>>/gitlint/qa/*' > -m unittest discover -v -s /<<PKGBUILDDIR>>/gitlint/tests > dh_auto_test: error: pybuild --test -i python{version} -p "3.8 3.7" returned > exit code 13 The full build log is available from: http://qa-logs.debian.net/2020/02/22/gitlint_0.12.0-0.1_unstable.log A list of current common problems and possible solutions is available at http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute! About the archive rebuild: The rebuild was done on EC2 VM instances from Amazon Web Services, using a clean, minimal and up-to-date chroot. Every failed build was retried once to eliminate random failures.