>>> linkchecker: Building testing/linkchecker 10.6.0-r1 (using abuild 3.16.0-r0) started Tue, 31 Mar 2026 00:04:15 +0000 >>> linkchecker: Validating /home/buildozer/aports/testing/linkchecker/APKBUILD... >>> linkchecker: Analyzing dependencies... >>> linkchecker: Installing for build: build-base py3-argcomplete py3-beautifulsoup4 py3-dnspython py3-pdfminer py3-requests py3-cryptography py3-pyftpdlib py3-openssl py3-gpep517 py3-setuptools py3-wheel py3-hatchling py3-hatch-vcs py3-pytest gettext ( 1/88) Installing libbz2 (1.0.8-r6) ( 2/88) Installing libffi (3.5.2-r0) ( 3/88) Installing gdbm (1.26-r0) ( 4/88) Installing xz-libs (5.8.2-r0) ( 5/88) Installing mpdecimal (4.0.1-r0) ( 6/88) Installing libpanelw (6.6_p20251231-r0) ( 7/88) Installing sqlite-libs (3.51.2-r1) ( 8/88) Installing python3 (3.14.3-r0) ( 9/88) Installing python3-pycache-pyc0 (3.14.3-r0) (10/88) Installing pyc (3.14.3-r0) (11/88) Installing py3-argcomplete-pyc (3.6.3-r1) (12/88) Installing python3-pyc (3.14.3-r0) (13/88) Installing py3-argcomplete (3.6.3-r1) (14/88) Installing py3-soupsieve (2.7-r1) (15/88) Installing py3-soupsieve-pyc (2.7-r1) (16/88) Installing py3-typing-extensions (4.15.0-r1) (17/88) Installing py3-typing-extensions-pyc (4.15.0-r1) (18/88) Installing py3-beautifulsoup4 (4.14.3-r1) (19/88) Installing py3-beautifulsoup4-pyc (4.14.3-r1) (20/88) Installing py3-dnspython (2.8.0-r1) (21/88) Installing py3-dnspython-pyc (2.8.0-r1) (22/88) Installing py3-charset-normalizer (3.4.6-r1) (23/88) Installing py3-charset-normalizer-pyc (3.4.6-r1) (24/88) Installing py3-cparser (3.0-r1) (25/88) Installing py3-cparser-pyc (3.0-r1) (26/88) Installing py3-cffi (2.0.0-r0) (27/88) Installing py3-cffi-pyc (2.0.0-r0) (28/88) Installing py3-cryptography (46.0.5-r1) (29/88) Installing py3-cryptography-pyc (46.0.5-r1) (30/88) Installing py3-pdfminer (20260107-r1) (31/88) Installing py3-pdfminer-pyc (20260107-r1) (32/88) Installing py3-certifi (2026.2.25-r1) (33/88) Installing py3-certifi-pyc (2026.2.25-r1) (34/88) Installing py3-idna (3.11-r1) (35/88) Installing py3-idna-pyc (3.11-r1) (36/88) Installing py3-urllib3 (2.6.3-r1) (37/88) Installing py3-urllib3-pyc (2.6.3-r1) (38/88) Installing py3-requests (2.32.5-r1) (39/88) Installing py3-requests-pyc (2.32.5-r1) (40/88) Installing py3-openssl (25.3.0-r1) (41/88) Installing py3-openssl-pyc (25.3.0-r1) (42/88) Installing py3-pyasyncore (1.0.5-r1) (43/88) Installing py3-pyasyncore-pyc (1.0.5-r1) (44/88) Installing py3-pyasynchat (1.0.5-r1) (45/88) Installing py3-pyasynchat-pyc (1.0.5-r1) (46/88) Installing py3-pysendfile (2.0.1-r8) (47/88) Installing py3-pyftpdlib (2.2.0-r1) (48/88) Installing py3-pyftpdlib-pyc (2.2.0-r1) (49/88) Installing py3-installer (0.7.0-r3) (50/88) Installing py3-installer-pyc (0.7.0-r3) (51/88) Installing py3-gpep517 (19-r2) (52/88) Installing py3-gpep517-pyc (19-r2) (53/88) Installing py3-parsing (3.3.2-r1) (54/88) Installing py3-parsing-pyc (3.3.2-r1) (55/88) Installing py3-packaging (26.0-r1) (56/88) Installing py3-packaging-pyc (26.0-r1) (57/88) Installing py3-setuptools (82.0.1-r1) (58/88) Installing py3-setuptools-pyc (82.0.1-r1) (59/88) Installing py3-wheel (0.46.3-r1) (60/88) Installing py3-wheel-pyc (0.46.3-r1) (61/88) Installing py3-editables (0.5-r3) (62/88) Installing py3-editables-pyc (0.5-r3) (63/88) Installing py3-pathspec (1.0.4-r1) (64/88) Installing py3-pathspec-pyc (1.0.4-r1) (65/88) Installing py3-pluggy (1.6.0-r1) (66/88) Installing py3-pluggy-pyc (1.6.0-r1) (67/88) Installing py3-trove-classifiers (2026.1.14.14-r1) (68/88) Installing py3-trove-classifiers-pyc (2026.1.14.14-r1) (69/88) Installing py3-hatchling (1.29.0-r1) (70/88) Installing py3-hatchling-pyc (1.29.0-r1) (71/88) Installing py3-setuptools_scm (9.2.2-r1) (72/88) Installing py3-setuptools_scm-pyc (9.2.2-r1) (73/88) Installing py3-hatch-vcs (0.5.0-r1) (74/88) Installing py3-hatch-vcs-pyc (0.5.0-r1) (75/88) Installing py3-iniconfig (2.3.0-r1) (76/88) Installing py3-iniconfig-pyc (2.3.0-r1) (77/88) Installing py3-py (1.11.0-r5) (78/88) Installing py3-py-pyc (1.11.0-r5) (79/88) Installing py3-pygments (2.20.0-r0) (80/88) Installing py3-pygments-pyc (2.20.0-r0) (81/88) Installing py3-pytest (9.0.2-r1) (82/88) Installing py3-pytest-pyc (9.0.2-r1) (83/88) Installing libintl (0.24.1-r1) (84/88) Installing gettext-envsubst (0.24.1-r1) (85/88) Installing gettext-libs (0.24.1-r1) (86/88) Installing libxml2 (2.13.9-r1) (87/88) Installing gettext (0.24.1-r1) (88/88) Installing .makedepends-linkchecker (20260331.000416) Executing busybox-1.37.0-r31.trigger OK: 512.3 MiB in 192 packages >>> linkchecker: Cleaning up srcdir >>> linkchecker: Cleaning up pkgdir >>> linkchecker: Cleaning up tmpdir >>> linkchecker: Fetching https://distfiles.alpinelinux.org/distfiles/edge/linkchecker-10.6.0.tar.gz Connecting to distfiles.alpinelinux.org (172.105.82.32:443) saving to '/var/cache/distfiles/edge/linkchecker-10.6.0.tar.gz.part' linkchecker-10.6.0.t 14% |**** | 81674 0:00:05 ETA linkchecker-10.6.0.t 100% |********************************| 534k 0:00:00 ETA '/var/cache/distfiles/edge/linkchecker-10.6.0.tar.gz.part' saved /var/cache/distfiles/edge/linkchecker-10.6.0.tar.gz: OK >>> linkchecker: Fetching https://distfiles.alpinelinux.org/distfiles/edge/linkchecker-10.6.0.tar.gz /var/cache/distfiles/edge/linkchecker-10.6.0.tar.gz: OK >>> linkchecker: Unpacking /var/cache/distfiles/edge/linkchecker-10.6.0.tar.gz... 2026-03-31 00:04:18,181 gpep517 INFO Building wheel via backend hatchling.build _release.py already exists 2026-03-31 00:04:18,329 gpep517 INFO The backend produced .dist/LinkChecker-10.6.0-py3-none-any.whl LinkChecker-10.6.0-py3-none-any.whl ============================= test session starts ============================== platform linux -- Python 3.14.3, pytest-9.0.2, pluggy-1.6.0 -- /home/buildozer/aports/testing/linkchecker/src/LinkChecker-10.6.0/.testenv/bin/python3 cachedir: .pytest_cache rootdir: /home/buildozer/aports/testing/linkchecker/src/LinkChecker-10.6.0 configfile: pytest.ini testpaths: tests collecting ... collected 289 items / 5 deselected / 284 selected tests/cache/test_urlqueue.py::TestUrlQueue::test_cleanup PASSED [ 0%] tests/cache/test_urlqueue.py::TestUrlQueue::test_empty PASSED [ 0%] tests/cache/test_urlqueue.py::TestUrlQueue::test_get_empty PASSED [ 1%] tests/cache/test_urlqueue.py::TestUrlQueue::test_get_negative_timeout PASSED [ 1%] tests/cache/test_urlqueue.py::TestUrlQueue::test_max_allowed_urls_bad_value PASSED [ 1%] tests/cache/test_urlqueue.py::TestUrlQueue::test_put_cache PASSED [ 2%] tests/cache/test_urlqueue.py::TestUrlQueue::test_put_get PASSED [ 2%] tests/cache/test_urlqueue.py::TestUrlQueue::test_put_has_result_false PASSED [ 2%] tests/cache/test_urlqueue.py::TestUrlQueue::test_put_has_result_true PASSED [ 3%] tests/cache/test_urlqueue.py::TestUrlQueue::test_qsize PASSED [ 3%] tests/checker/test_all_parts.py::TestAllParts::test_all_parts_linenos PASSED [ 3%] tests/checker/test_base.py::TestBase::test_base1 PASSED [ 4%] tests/checker/test_base.py::TestBase::test_base2 PASSED [ 4%] tests/checker/test_base.py::TestBase::test_base3 PASSED [ 4%] tests/checker/test_base.py::TestBase::test_base4 PASSED [ 5%] tests/checker/test_bookmarks.py::TestBookmarks::test_chromium_bookmarks PASSED [ 5%] tests/checker/test_bookmarks.py::TestBookmarks::test_firefox_bookmarks PASSED [ 5%] tests/checker/test_bookmarks.py::TestBookmarks::test_opera_bookmarks PASSED [ 6%] tests/checker/test_bookmarks.py::TestBookmarks::test_safari_bookmarks_xml PASSED [ 6%] tests/checker/test_build_url.py::TestBuildUrl::test_build_url PASSED [ 7%] tests/checker/test_charsets.py::TestBase::test_cp1250 PASSED [ 7%] tests/checker/test_charsets.py::TestBase::test_iso8859_2 PASSED [ 7%] tests/checker/test_charsets.py::TestBase::test_utf8 PASSED [ 8%] tests/checker/test_content_allows_robots.py::TestFileMetaRobots::test_file_meta_robots PASSED [ 8%] tests/checker/test_content_allows_robots.py::TestMetaRobotsVariants::test_nofollow_variants PASSED [ 8%] tests/checker/test_error.py::TestError::test_invalid1 PASSED [ 9%] tests/checker/test_error.py::TestError::test_invalid2 PASSED [ 9%] tests/checker/test_error.py::TestError::test_invalid3 PASSED [ 9%] tests/checker/test_error.py::TestError::test_unrecognized PASSED [ 10%] tests/checker/test_file.py::TestFile::test_asc PASSED [ 10%] tests/checker/test_file.py::TestFile::test_bad_file PASSED [ 10%] tests/checker/test_file.py::TestFile::test_css PASSED [ 11%] tests/checker/test_file.py::TestFile::test_directory_listing XFAIL [ 11%] tests/checker/test_file.py::TestFile::test_directory_listing_unicode PASSED [ 11%] tests/checker/test_file.py::TestFile::test_empty PASSED [ 12%] tests/checker/test_file.py::TestFile::test_good_dir PASSED [ 12%] tests/checker/test_file.py::TestFile::test_good_dir_space PASSED [ 13%] tests/checker/test_file.py::TestFile::test_good_file PASSED [ 13%] tests/checker/test_file.py::TestFile::test_good_file_missing_dslash PASSED [ 13%] tests/checker/test_file.py::TestFile::test_html PASSED [ 14%] tests/checker/test_file.py::TestFile::test_html_url_quote PASSED [ 14%] tests/checker/test_file.py::TestFile::test_markdown PASSED [ 14%] tests/checker/test_file.py::TestFile::test_pdf PASSED [ 15%] tests/checker/test_file.py::TestFile::test_php PASSED [ 15%] tests/checker/test_file.py::TestFile::test_text PASSED [ 15%] tests/checker/test_file.py::TestFile::test_unicode_filename PASSED [ 16%] tests/checker/test_file.py::TestFile::test_urllist PASSED [ 16%] tests/checker/test_file.py::TestFile::test_wml PASSED [ 16%] tests/checker/test_frames.py::TestFrames::test_frames PASSED [ 17%] tests/checker/test_guess_url.py::TestGuestUrl::test_guess_url PASSED [ 17%] tests/checker/test_ignoreerrors.py::TestIgnoreErrors::test_internet PASSED [ 17%] tests/checker/test_ignoreerrors.py::TestIgnoreErrors::test_msg_regex PASSED [ 18%] tests/checker/test_ignoreerrors.py::TestIgnoreErrors::test_no_error PASSED [ 18%] tests/checker/test_ignoreerrors.py::TestIgnoreErrors::test_url_regex PASSED [ 19%] tests/checker/test_ignorewarnings.py::TestIgnoreWarnings::test_empty_warning_spec_matches_anything PASSED [ 19%] tests/checker/test_ignorewarnings.py::TestIgnoreWarnings::test_given_warning_for_given_url_ignored PASSED [ 19%] tests/checker/test_ignorewarnings.py::TestIgnoreWarnings::test_non_matching_warning_for_matching_url_not_ignored PASSED [ 20%] tests/checker/test_ignorewarnings.py::TestIgnoreWarnings::test_warning_for_unmatching_url_not_ignored PASSED [ 20%] tests/checker/test_internpat.py::TestInternpat::test_trailing_slash PASSED [ 20%] tests/checker/test_mail_bad.py::TestMailBad::test_error_mail PASSED [ 21%] tests/checker/test_mail_good.py::TestMailGood::test_good_mail PASSED [ 21%] tests/checker/test_mail_good.py::TestMailGood::test_mail_subject PASSED [ 21%] tests/checker/test_mail_good.py::TestMailGood::test_unicode_mail PASSED [ 22%] tests/checker/test_mail_good.py::TestMailGood::test_valid_mail1 PASSED [ 22%] tests/checker/test_mail_good.py::TestMailGood::test_valid_mail2 PASSED [ 22%] tests/checker/test_mail_good.py::TestMailGood::test_valid_mail3 PASSED [ 23%] tests/checker/test_mail_good.py::TestMailGood::test_valid_mail4 PASSED [ 23%] tests/checker/test_mail_good.py::TestMailGood::test_warn_mail PASSED [ 23%] tests/checker/test_misc.py::TestMisc::test_archive PASSED [ 24%] tests/checker/test_misc.py::TestMisc::test_html5 PASSED [ 24%] tests/checker/test_misc.py::TestMisc::test_itms_services PASSED [ 25%] tests/checker/test_misc.py::TestMisc::test_misc PASSED [ 25%] tests/checker/test_misc.py::TestMisc::test_utf8 PASSED [ 25%] tests/checker/test_unknown.py::TestUnknown::test_feed PASSED [ 26%] tests/checker/test_unknown.py::TestUnknown::test_irc PASSED [ 26%] tests/checker/test_unknown.py::TestUnknown::test_skype PASSED [ 26%] tests/checker/test_unknown.py::TestUnknown::test_steam PASSED [ 27%] tests/checker/test_urllen.py::TestURLLength::test_url_warn PASSED [ 27%] tests/checker/test_whitespace.py::TestWhitespace::test_leading_whitespace PASSED [ 27%] tests/checker/test_whitespace.py::TestWhitespace::test_trailing_whitespace PASSED [ 28%] tests/configuration/test_config.py::TestConfig::test_confparse PASSED [ 28%] tests/configuration/test_config.py::TestConfig::test_confparse_deprecated PASSED [ 28%] tests/configuration/test_config.py::TestConfig::test_confparse_empty PASSED [ 29%] tests/configuration/test_config.py::TestConfig::test_confparse_error1 PASSED [ 29%] tests/configuration/test_config.py::TestConfig::test_confparse_error2 PASSED [ 29%] tests/configuration/test_config.py::TestConfig::test_confparse_missing PASSED [ 30%] tests/logger/test_csvlog.py::TestCsvLogger::test_parts PASSED [ 30%] tests/test_cgi.py::TestWsgi::test_application PASSED [ 30%] tests/test_cgi.py::TestWsgi::test_checklink PASSED [ 31%] tests/test_cgi.py::TestWsgi::test_form_default_url PASSED [ 31%] tests/test_cgi.py::TestWsgi::test_form_empty_url PASSED [ 32%] tests/test_cgi.py::TestWsgi::test_form_invalid_url PASSED [ 32%] tests/test_cgi.py::TestWsgi::test_form_valid_url PASSED [ 32%] tests/test_console.py::TestConsole::test_internal_error PASSED [ 33%] tests/test_containers.py::TestLFUCache::test_num_uses PASSED [ 33%] tests/test_containers.py::TestLFUCache::test_popitem PASSED [ 33%] tests/test_containers.py::TestLFUCache::test_shrink PASSED [ 34%] tests/test_containers.py::TestLFUCache::test_values PASSED [ 34%] tests/test_cookies.py::TestCookies::test_cookie_file PASSED [ 34%] tests/test_cookies.py::TestCookies::test_cookie_parse_error PASSED [ 35%] tests/test_cookies.py::TestCookies::test_cookie_parse_multiple_headers PASSED [ 35%] tests/test_cookies.py::TestCookies::test_cookie_parse_multiple_values PASSED [ 35%] tests/test_cookies.py::TestCookies::test_empty_cookie_file PASSED [ 36%] tests/test_decorators.py::TestDecorators::test_timeit PASSED [ 36%] tests/test_decorators.py::TestDecorators::test_timeit2 PASSED [ 36%] tests/test_dummy.py::TestDummy::test_attributes PASSED [ 37%] tests/test_dummy.py::TestDummy::test_creation PASSED [ 37%] tests/test_dummy.py::TestDummy::test_indexes PASSED [ 38%] tests/test_dummy.py::TestDummy::test_methods PASSED [ 38%] tests/test_fileutil.py::TestFileutil::test_mtime PASSED [ 38%] tests/test_fileutil.py::TestFileutil::test_size PASSED [ 39%] tests/test_ftpparse.py::TestFtpparse::test_ftpparse PASSED [ 39%] tests/test_linkchecker.py::TestLinkchecker::test_linkchecker PASSED [ 39%] tests/test_linkparser.py::TestLinkparser::test_comment_stripping PASSED [ 40%] tests/test_linkparser.py::TestLinkparser::test_css_parsing PASSED [ 40%] tests/test_linkparser.py::TestLinkparser::test_form_parsing PASSED [ 40%] tests/test_linkparser.py::TestLinkparser::test_href_parsing PASSED [ 41%] tests/test_linkparser.py::TestLinkparser::test_img_srcset_parsing PASSED [ 41%] tests/test_linkparser.py::TestLinkparser::test_itemtype_parsing PASSED [ 41%] tests/test_linkparser.py::TestLinkparser::test_link_without_rel_parsing PASSED [ 42%] tests/test_linkparser.py::TestLinkparser::test_rel_parsing PASSED [ 42%] tests/test_linkparser.py::TestLinkparser::test_url_quoting PASSED [ 42%] tests/test_loginformsearch.py::TestFormSearch::test_search_form PASSED [ 43%] tests/test_loginformsearch.py::TestFormSearch::test_search_form_none PASSED [ 43%] tests/test_mimeutil.py::TestMiMeutil::test_mime PASSED [ 44%] tests/test_network.py::TestNetwork::test_iputils PASSED [ 44%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 44%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 45%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 45%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 45%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 46%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 46%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 46%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 47%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 47%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 47%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 48%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 48%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 48%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 49%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 49%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 50%] tests/test_parser.py::TestParser::test_parse[<>-] PASSED [ 50%] tests/test_parser.py::TestParser::test_parse[< >-] PASSED [ 50%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 51%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 51%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 51%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 52%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 52%] tests/test_parser.py::TestParser::test_parse[<-<] PASSED [ 52%] tests/test_parser.py::TestParser::test_parse[

bla

-

bla

] PASSED [ 53%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 53%] tests/test_parser.py::TestParser::test_parse[
-
] PASSED [ 53%] tests/test_parser.py::TestParser::test_parse[
-
] PASSED [ 54%] tests/test_parser.py::TestParser::test_parse[

-

] PASSED [ 54%] tests/test_parser.py::TestParser::test_parse[
-] PASSED [ 54%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 55%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 55%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 55%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 56%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 56%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 57%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 57%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 57%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 58%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 58%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 58%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 59%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 59%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 59%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 60%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 60%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 60%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 61%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 61%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 61%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 62%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 62%] tests/test_parser.py::TestParser::test_parse[1-1] PASSED [ 63%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 63%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 63%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 64%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 64%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 64%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 65%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 65%] tests/test_parser.py::TestParser::test_parse[-] PASSED [ 65%] tests/test_parser.py::TestParser::test_parse[<0.-] PASSED [ 66%] tests/test_parser.py::TestParser::test_parse[