>>> py3-pathable: Building community/py3-pathable 0.6.0-r0 (using abuild 3.18.0_rc5-r1) started Thu, 10 Sep 2026 18:42:27 +0000 >>> py3-pathable: Validating /home/buildozer/aports/community/py3-pathable/APKBUILD... >>> py3-pathable: Analyzing dependencies... >>> py3-pathable: Installing for build: build-base poetry py3-setuptools py3-gpep517 py3-wheel py3-pytest py3-pytest-cov ( 1/116) Installing libbz2 (1.0.8-r6) ( 2/116) Installing libffi (3.8.0-r0) ( 3/116) Installing xz-libs (5.8.4-r0) ( 4/116) Installing mpdecimal (4.0.1-r0) ( 5/116) Installing libpanelw (6.6_p20260822-r0) ( 6/116) Installing readline (8.3.3-r1) ( 7/116) Installing sqlite-libs (3.53.4-r0) ( 8/116) Installing python3 (3.14.7-r0) ( 9/116) Installing python3-pycache-pyc0 (3.14.7-r0) ( 10/116) Installing pyc (3.14.7-r0) ( 11/116) Installing poetry-pyc (2.3.3-r0) ( 12/116) Installing py3-fastjsonschema-pyc (2.21.2-r2) ( 13/116) Installing py3-poetry-core-pyc (2.3.2-r0) ( 14/116) Installing python3-pyc (3.14.7-r0) ( 15/116) Installing py3-fastjsonschema (2.21.2-r2) ( 16/116) Installing py3-lark-parser (1.2.2-r1) ( 17/116) Installing py3-lark-parser-pyc (1.2.2-r1) ( 18/116) Installing py3-parsing (3.3.2-r1) ( 19/116) Installing py3-parsing-pyc (3.3.2-r1) ( 20/116) Installing py3-packaging (26.2-r0) ( 21/116) Installing py3-packaging-pyc (26.2-r0) ( 22/116) Installing py3-poetry-core (2.3.2-r0) ( 23/116) Installing py3-pyproject-hooks (1.2.0-r1) ( 24/116) Installing py3-pyproject-hooks-pyc (1.2.0-r1) ( 25/116) Installing py3-build (1.4.2-r0) ( 26/116) Installing py3-build-pyc (1.4.2-r0) ( 27/116) Installing py3-msgpack (1.1.2-r1) ( 28/116) Installing py3-msgpack-pyc (1.1.2-r1) ( 29/116) Installing py3-certifi (2026.7.22-r0) ( 30/116) Installing py3-certifi-pyc (2026.7.22-r0) ( 31/116) Installing py3-charset-normalizer (3.5.1-r0) ( 32/116) Installing py3-charset-normalizer-pyc (3.5.1-r0) ( 33/116) Installing py3-idna (3.19-r0) ( 34/116) Installing py3-idna-pyc (3.19-r0) ( 35/116) Installing py3-urllib3 (2.7.0-r0) ( 36/116) Installing py3-urllib3-pyc (2.7.0-r0) ( 37/116) Installing py3-requests (2.34.2-r0) ( 38/116) Installing py3-requests-pyc (2.34.2-r0) ( 39/116) Installing py3-cachecontrol (0.14.3-r1) ( 40/116) Installing py3-cachecontrol-pyc (0.14.3-r1) ( 41/116) Installing py3-crashtest (0.4.1-r6) ( 42/116) Installing py3-crashtest-pyc (0.4.1-r6) ( 43/116) Installing py3-rapidfuzz (3.14.5-r0) ( 44/116) Installing py3-rapidfuzz-pyc (3.14.5-r0) ( 45/116) Installing py3-cleo (2.2.1-r1) ( 46/116) Installing py3-cleo-pyc (2.2.1-r1) ( 47/116) Installing py3-dulwich (1.1.0-r1) ( 48/116) Installing py3-dulwich-pyc (1.1.0-r1) ( 49/116) Installing py3-installer (1.0.1-r0) ( 50/116) Installing py3-installer-pyc (1.0.1-r0) ( 51/116) Installing py3-zipp (3.23.0-r1) ( 52/116) Installing py3-zipp-pyc (3.23.0-r1) ( 53/116) Installing py3-importlib-metadata (9.0.0-r0) ( 54/116) Installing py3-importlib-metadata-pyc (9.0.0-r0) ( 55/116) Installing py3-more-itertools (10.8.0-r1) ( 56/116) Installing py3-more-itertools-pyc (10.8.0-r1) ( 57/116) Installing py3-jaraco.classes (3.4.0-r2) ( 58/116) Installing py3-jaraco.classes-pyc (3.4.0-r2) ( 59/116) Installing py3-jeepney (0.9.0-r1) ( 60/116) Installing py3-jeepney-pyc (0.9.0-r1) ( 61/116) Installing py3-cparser (3.0-r1) ( 62/116) Installing py3-cparser-pyc (3.0-r1) ( 63/116) Installing py3-cffi (2.0.0-r0) ( 64/116) Installing py3-cffi-pyc (2.0.0-r0) ( 65/116) Installing py3-cryptography (50.0.0-r0) ( 66/116) Installing py3-cryptography-pyc (50.0.0-r0) ( 67/116) Installing py3-secretstorage (3.5.0-r1) ( 68/116) Installing py3-secretstorage-pyc (3.5.0-r1) ( 69/116) Installing py3-keyring (24.3.1-r3) ( 70/116) Installing py3-keyring-pyc (24.3.1-r3) ( 71/116) Installing py3-pkginfo (1.12.1.2-r1) ( 72/116) Installing py3-pkginfo-pyc (1.12.1.2-r1) ( 73/116) Installing py3-platformdirs (4.11.5-r0) ( 74/116) Installing py3-platformdirs-pyc (4.11.5-r0) ( 75/116) Installing py3-requests-toolbelt (1.0.0-r2) ( 76/116) Installing py3-requests-toolbelt-pyc (1.0.0-r2) ( 77/116) Installing py3-shellingham (1.5.4-r2) ( 78/116) Installing py3-shellingham-pyc (1.5.4-r2) ( 79/116) Installing py3-tomlkit (0.13.3-r1) ( 80/116) Installing py3-tomlkit-pyc (0.13.3-r1) ( 81/116) Installing py3-trove-classifiers (2026.4.28.13-r0) ( 82/116) Installing py3-trove-classifiers-pyc (2026.4.28.13-r0) ( 83/116) Installing py3-distlib (0.4.3-r0) ( 84/116) Installing py3-distlib-pyc (0.4.3-r0) ( 85/116) Installing py3-filelock (3.29.0-r0) ( 86/116) Installing py3-filelock-pyc (3.29.0-r0) ( 87/116) Installing py3-python-discovery (1.4.4-r0) ( 88/116) Installing py3-python-discovery-pyc (1.4.4-r0) ( 89/116) Installing py3-virtualenv (21.3.3-r0) ( 90/116) Installing py3-virtualenv-pyc (21.3.3-r0) ( 91/116) Installing py3-findpython (0.8.0-r0) ( 92/116) Installing py3-findpython-pyc (0.8.0-r0) ( 93/116) Installing py3-pbs-installer (2026.03.24-r1) ( 94/116) Installing py3-pbs-installer-pyc (2026.03.24-r1) ( 95/116) Installing poetry (2.3.3-r0) ( 96/116) Installing py3-setuptools (84.0.0-r0) ( 97/116) Installing py3-setuptools-pyc (84.0.0-r0) ( 98/116) Installing py3-gpep517 (20-r0) ( 99/116) Installing py3-gpep517-pyc (20-r0) (100/116) Installing py3-wheel (0.48.0-r0) (101/116) Installing py3-wheel-pyc (0.48.0-r0) (102/116) Installing py3-iniconfig (2.3.0-r1) (103/116) Installing py3-iniconfig-pyc (2.3.0-r1) (104/116) Installing py3-pluggy (1.6.0-r1) (105/116) Installing py3-pluggy-pyc (1.6.0-r1) (106/116) Installing py3-py (1.11.0-r5) (107/116) Installing py3-py-pyc (1.11.0-r5) (108/116) Installing py3-pygments (2.21.0-r0) (109/116) Installing py3-pygments-pyc (2.21.0-r0) (110/116) Installing py3-pytest (9.1.1-r0) (111/116) Installing py3-pytest-pyc (9.1.1-r0) (112/116) Installing py3-coverage (7.15.4-r0) (113/116) Installing py3-coverage-pyc (7.15.4-r0) (114/116) Installing py3-pytest-cov (5.0.0-r2) (115/116) Installing py3-pytest-cov-pyc (5.0.0-r2) (116/116) Installing .makedepends-py3-pathable (20260910.184228) Executing busybox-1.38.0-r5.trigger OK: 539.7 MiB in 221 packages >>> py3-pathable: Cleaning up srcdir >>> py3-pathable: Cleaning up pkgdir >>> py3-pathable: Cleaning up tmpdir >>> py3-pathable: Fetching https://distfiles.alpinelinux.org/distfiles/edge/py3-pathable-0.6.0.tar.gz Connecting to distfiles.alpinelinux.org (172.105.82.32:443) wget: server returned error: HTTP/1.1 404 Not Found >>> py3-pathable: Fetching py3-pathable-0.6.0.tar.gz::https://github.com/p1c2u/pathable/archive/refs/tags/0.6.0.tar.gz Connecting to github.com (140.82.121.4:443) Connecting to codeload.github.com (140.82.121.9:443) saving to '/var/cache/distfiles/edge/py3-pathable-0.6.0.tar.gz.part' py3-pathable-0.6.0.t 100% |********************************| 62152 0:00:00 ETA '/var/cache/distfiles/edge/py3-pathable-0.6.0.tar.gz.part' saved /var/cache/distfiles/edge/py3-pathable-0.6.0.tar.gz: OK >>> py3-pathable: Fetching https://distfiles.alpinelinux.org/distfiles/edge/py3-pathable-0.6.0.tar.gz /var/cache/distfiles/edge/py3-pathable-0.6.0.tar.gz: OK >>> py3-pathable: Unpacking /var/cache/distfiles/edge/py3-pathable-0.6.0.tar.gz... 2026-09-10 18:42:30,434 gpep517 INFO Building wheel via backend poetry.core.masonry.api 2026-09-10 18:42:30,522 poetry.core.masonry.builders.wheel INFO Building wheel 2026-09-10 18:42:30,538 poetry.core.masonry.builders.wheel INFO Built pathable-0.6.0-py3-none-any.whl 2026-09-10 18:42:30,538 gpep517 INFO The backend produced .dist/pathable-0.6.0-py3-none-any.whl pathable-0.6.0-py3-none-any.whl ============================= test session starts ============================== platform linux -- Python 3.14.7, pytest-9.1.1, pluggy-1.6.0 -- /home/buildozer/aports/community/py3-pathable/src/pathable-0.6.0/.testenv/bin/python3 cachedir: .pytest_cache rootdir: /home/buildozer/aports/community/py3-pathable/src/pathable-0.6.0 configfile: pyproject.toml plugins: cov-5.0.0 collecting ... collected 281 items tests/unit/test_filesystem.py::TestPathAccessorStat::test_stat_existing_file PASSED tests/unit/test_filesystem.py::TestPathAccessorStat::test_stat_existing_directory PASSED tests/unit/test_filesystem.py::TestPathAccessorStat::test_stat_nonexistent_path_returns_none PASSED tests/unit/test_filesystem.py::TestPathAccessorStat::test_stat_oserror_returns_none PASSED tests/unit/test_filesystem.py::TestPathAccessorStat::test_stat_nested_path PASSED tests/unit/test_filesystem.py::TestPathAccessorStat::test_stat_symlink_not_followed PASSED tests/unit/test_filesystem.py::TestPathAccessorKeys::test_keys_empty_directory PASSED tests/unit/test_filesystem.py::TestPathAccessorKeys::test_keys_with_files PASSED tests/unit/test_filesystem.py::TestPathAccessorKeys::test_keys_with_directories PASSED tests/unit/test_filesystem.py::TestPathAccessorKeys::test_keys_mixed_files_and_directories PASSED tests/unit/test_filesystem.py::TestPathAccessorKeys::test_keys_returns_names_not_paths PASSED tests/unit/test_filesystem.py::TestPathAccessorKeys::test_keys_nested_directory PASSED tests/unit/test_filesystem.py::TestPathAccessorKeys::test_keys_hidden_files PASSED tests/unit/test_filesystem.py::TestPathAccessorKeys::test_keys_non_existing_directory PASSED tests/unit/test_filesystem.py::TestPathAccessorKeys::test_keys_raises_keyerror_for_not_a_directory PASSED tests/unit/test_filesystem.py::TestPathAccessorKeys::test_keys_propagates_permission_error PASSED tests/unit/test_filesystem.py::TestPathAccessorLen::test_len_non_existing_directory PASSED tests/unit/test_filesystem.py::TestPathAccessorLen::test_len_raises_keyerror_for_not_a_directory PASSED tests/unit/test_filesystem.py::TestPathAccessorLen::test_len_propagates_permission_error PASSED tests/unit/test_filesystem.py::TestPathAccessorIsTraversable::test_is_traversable_true_for_directory PASSED tests/unit/test_filesystem.py::TestPathAccessorIsTraversable::test_is_traversable_false_for_file PASSED tests/unit/test_filesystem.py::TestPathAccessorIsTraversable::test_is_traversable_false_for_missing PASSED tests/unit/test_filesystem.py::TestFilesystemPathExists::test_exists_true_for_file PASSED tests/unit/test_filesystem.py::TestFilesystemPathExists::test_exists_true_for_directory PASSED tests/unit/test_filesystem.py::TestFilesystemPathExists::test_exists_false_for_nonexistent PASSED tests/unit/test_filesystem.py::TestFilesystemPathExists::test_exists_false_when_stat_raises_oserror PASSED tests/unit/test_filesystem.py::TestFilesystemPathExists::test_exists_with_nested_path PASSED tests/unit/test_filesystem.py::TestFilesystemPathIsTraversable::test_is_traversable PASSED tests/unit/test_filesystem.py::TestFilesystemPathKeys::test_keys_empty_directory PASSED tests/unit/test_filesystem.py::TestFilesystemPathKeys::test_keys_with_files PASSED tests/unit/test_filesystem.py::TestFilesystemPathKeys::test_keys_returns_names_not_paths PASSED tests/unit/test_filesystem.py::TestFilesystemPathKeys::test_keys_nested_with_child_path PASSED tests/unit/test_filesystem.py::TestFilesystemPathLen::test_len_non_existing_directory PASSED tests/unit/test_lookup_cache.py::test_lookuppath_caches_within_instance PASSED tests/unit/test_lookup_cache.py::test_lookuppath_cache_is_not_shared_between_instances PASSED tests/unit/test_lookup_cache.py::test_lookup_accessor_disable_cache_reads_each_time PASSED tests/unit/test_lookup_cache.py::test_lookup_accessor_clear_cache_forces_reread PASSED tests/unit/test_lookup_cache.py::test_lookup_accessor_lru_eviction_respects_maxsize PASSED tests/unit/test_lookup_cache.py::test_lookup_accessor_node_is_immutable PASSED tests/unit/test_parsers.py::TestParseParts::test_empty PASSED tests/unit/test_parsers.py::TestParseParts::test_one PASSED tests/unit/test_parsers.py::TestParseParts::test_simple PASSED tests/unit/test_parsers.py::TestParseParts::test_none PASSED tests/unit/test_parsers.py::TestParseParts::test_relative PASSED tests/unit/test_parsers.py::TestParseParts::test_separator PASSED tests/unit/test_parsers.py::TestParseParts::test_separator_with_relative PASSED tests/unit/test_parsers.py::TestParseParts::test_int PASSED tests/unit/test_parsers.py::TestParseParts::test_hashable_passthrough PASSED tests/unit/test_parsers.py::TestParseParts::test_bytes PASSED tests/unit/test_parsers.py::TestParseParts::test_invalid_part_message PASSED tests/unit/test_paths.py::TestBasePathParseArgs::test_empty PASSED tests/unit/test_paths.py::TestBasePathParseArgs::test_string PASSED tests/unit/test_paths.py::TestBasePathParseArgs::test_string_many PASSED tests/unit/test_paths.py::TestBasePathParseArgs::test_int PASSED tests/unit/test_paths.py::TestBasePathParseArgs::test_bytes PASSED tests/unit/test_paths.py::TestBasePathParseArgs::test_hashable_passthrough PASSED tests/unit/test_paths.py::TestBasePathParseArgs::test_path PASSED tests/unit/test_paths.py::TestBasePathParseArgs::test_pathlike PASSED tests/unit/test_paths.py::TestBasePathParseArgs::test_invalid_part PASSED tests/unit/test_paths.py::TestBasePathInit::test_default PASSED tests/unit/test_paths.py::TestBasePathInit::test_part_text PASSED tests/unit/test_paths.py::TestBasePathInit::test_part_binary PASSED tests/unit/test_paths.py::TestBasePathInit::test_part_binary_many PASSED tests/unit/test_paths.py::TestBasePathInit::test_part_text_many PASSED tests/unit/test_paths.py::TestBasePathInit::test_part_path PASSED tests/unit/test_paths.py::TestBasePathInit::test_part_path_many PASSED tests/unit/test_paths.py::TestBasePathInit::test_separator PASSED tests/unit/test_paths.py::TestBasePathStr::test_empty PASSED tests/unit/test_paths.py::TestBasePathStr::test_single PASSED tests/unit/test_paths.py::TestBasePathStr::test_double PASSED tests/unit/test_paths.py::TestBasePathStr::test_separator PASSED tests/unit/test_paths.py::TestBasePathStr::test_cparts_cached PASSED tests/unit/test_paths.py::TestBasePathRepr::test_empty PASSED tests/unit/test_paths.py::TestBasePathRepr::test_single PASSED tests/unit/test_paths.py::TestBasePathRepr::test_double PASSED tests/unit/test_paths.py::TestBasePathRepr::test_separator PASSED tests/unit/test_paths.py::TestBasePathHash::test_empty PASSED tests/unit/test_paths.py::TestBasePathHash::test_single PASSED tests/unit/test_paths.py::TestBasePathHash::test_double PASSED tests/unit/test_paths.py::TestBasePathHash::test_separator PASSED tests/unit/test_paths.py::TestBasePathHash::test_cparts_cached PASSED tests/unit/test_paths.py::TestBasePathHash::test_separator_not_part_of_identity PASSED tests/unit/test_paths.py::TestBasePathHash::test_hash_is_cached PASSED tests/unit/test_paths.py::TestBasePathMakeChild::test_none PASSED tests/unit/test_paths.py::TestBasePathMakeChild::test_arg PASSED tests/unit/test_paths.py::TestBasePathMakeChild::test_arg_unparsed PASSED tests/unit/test_paths.py::TestBasePathMakeChild::test_args_many PASSED tests/unit/test_paths.py::TestBasePathMakeChildRelPath::test_part PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_default_empty PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_parts[--parts0-/] PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_parts[-part1-parts1-/] PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_parts[part1--parts2-/] PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_parts[part1-part2-parts3-/] PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_parts[--parts4-/] PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_parts[-part1-parts5-/] PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_parts[part1--parts6-/] PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_parts[part1-part2-parts7-/] PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_parts[part1-part28-parts8-/] PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_parts[part19-part2-parts9-/] PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_parts[part110-part210-parts10-/] PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_combined PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_combined_different_separators PASSED tests/unit/test_paths.py::TestBasePathTruediv::test_type_not_implemented PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_default_empty PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_parts[--parts0-/] PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_parts[-part1-parts1-/] PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_parts[part1--parts2-/] PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_parts[part1-part2-parts3-/] PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_parts[--parts4-/] PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_parts[-part1-parts5-/] PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_parts[part1--parts6-/] PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_parts[part1-part2-parts7-/] PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_parts[part1-part28-parts8-/] PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_parts[part19-part2-parts9-/] PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_parts[part110-part210-parts10-/] PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_combined PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_type_not_implemented PASSED tests/unit/test_paths.py::TestBasePathRtruediv::test_preserves_separator PASSED tests/unit/test_paths.py::TestBasePathEq::test_parts[--True] PASSED tests/unit/test_paths.py::TestBasePathEq::test_parts[-part-False] PASSED tests/unit/test_paths.py::TestBasePathEq::test_parts[part--False] PASSED tests/unit/test_paths.py::TestBasePathEq::test_parts[part-part-True] PASSED tests/unit/test_paths.py::TestBasePathEq::test_parts[part-part24-True] PASSED tests/unit/test_paths.py::TestBasePathEq::test_parts[part15-part-True] PASSED tests/unit/test_paths.py::TestBasePathEq::test_parts[part16-part26-True] PASSED tests/unit/test_paths.py::TestBasePathEq::test_type_not_implemented PASSED tests/unit/test_paths.py::TestBasePathEq::test_type_sensitive_parts PASSED tests/unit/test_paths.py::TestBasePathEq::test_separator_not_part_of_equality PASSED tests/unit/test_paths.py::TestBasePathLt::test_parts[--False] PASSED tests/unit/test_paths.py::TestBasePathLt::test_parts[-part-True] PASSED tests/unit/test_paths.py::TestBasePathLt::test_parts[part--False] PASSED tests/unit/test_paths.py::TestBasePathLt::test_parts[part-part-False] PASSED tests/unit/test_paths.py::TestBasePathLt::test_parts[part-part2-True] PASSED tests/unit/test_paths.py::TestBasePathLt::test_parts[part-part25-False] PASSED tests/unit/test_paths.py::TestBasePathLt::test_parts[part-part26-True] PASSED tests/unit/test_paths.py::TestBasePathLt::test_parts[part17-part-False] PASSED tests/unit/test_paths.py::TestBasePathLt::test_parts[part18-part28-False] PASSED tests/unit/test_paths.py::TestBasePathLt::test_parts[part19-part29-True] PASSED tests/unit/test_paths.py::TestBasePathLt::test_type_not_implemented PASSED tests/unit/test_paths.py::TestBasePathLt::test_mixed_type_ordering_is_deterministic PASSED tests/unit/test_paths.py::TestBasePathLt::test_separator_does_not_affect_ordering PASSED tests/unit/test_paths.py::TestBasePathLt::test_type_identifier_includes_module PASSED tests/unit/test_paths.py::TestBasePathLe::test_parts[--True] PASSED tests/unit/test_paths.py::TestBasePathLe::test_parts[-part-True] PASSED tests/unit/test_paths.py::TestBasePathLe::test_parts[part--False] PASSED tests/unit/test_paths.py::TestBasePathLe::test_parts[part-part-True] PASSED tests/unit/test_paths.py::TestBasePathLe::test_parts[part-part2-True] PASSED tests/unit/test_paths.py::TestBasePathLe::test_parts[part-part25-True] PASSED tests/unit/test_paths.py::TestBasePathLe::test_parts[part-part26-True] PASSED tests/unit/test_paths.py::TestBasePathLe::test_parts[part17-part-True] PASSED tests/unit/test_paths.py::TestBasePathLe::test_parts[part18-part28-True] PASSED tests/unit/test_paths.py::TestBasePathLe::test_parts[part19-part29-True] PASSED tests/unit/test_paths.py::TestBasePathLe::test_type_not_implemented PASSED tests/unit/test_paths.py::TestBasePathGt::test_parts[--False] PASSED tests/unit/test_paths.py::TestBasePathGt::test_parts[-part-False] PASSED tests/unit/test_paths.py::TestBasePathGt::test_parts[part--True] PASSED tests/unit/test_paths.py::TestBasePathGt::test_parts[part-part-False] PASSED tests/unit/test_paths.py::TestBasePathGt::test_parts[part-part2-False] PASSED tests/unit/test_paths.py::TestBasePathGt::test_parts[part-part25-False] PASSED tests/unit/test_paths.py::TestBasePathGt::test_parts[part-part26-False] PASSED tests/unit/test_paths.py::TestBasePathGt::test_parts[part17-part-False] PASSED tests/unit/test_paths.py::TestBasePathGt::test_parts[part18-part28-False] PASSED tests/unit/test_paths.py::TestBasePathGt::test_parts[part19-part29-False] PASSED tests/unit/test_paths.py::TestBasePathGt::test_type_not_implemented PASSED tests/unit/test_paths.py::TestBasePathGe::test_parts[--True] PASSED tests/unit/test_paths.py::TestBasePathGe::test_parts[-part-False] PASSED tests/unit/test_paths.py::TestBasePathGe::test_parts[part--True] PASSED tests/unit/test_paths.py::TestBasePathGe::test_parts[part-part-True] PASSED tests/unit/test_paths.py::TestBasePathGe::test_parts[part-part2-False] PASSED tests/unit/test_paths.py::TestBasePathGe::test_parts[part-part25-True] PASSED tests/unit/test_paths.py::TestBasePathGe::test_parts[part-part26-False] PASSED tests/unit/test_paths.py::TestBasePathGe::test_parts[part17-part-True] PASSED tests/unit/test_paths.py::TestBasePathGe::test_parts[part18-part28-True] PASSED tests/unit/test_paths.py::TestBasePathGe::test_parts[part19-part29-False] PASSED tests/unit/test_paths.py::TestBasePathGe::test_type_not_implemented PASSED tests/unit/test_paths.py::TestAccessorPathLen::test_empty PASSED tests/unit/test_paths.py::TestAccessorPathLen::test_value PASSED tests/unit/test_paths.py::TestAccessorPathKeys::test_empty PASSED tests/unit/test_paths.py::TestAccessorPathKeys::test_value PASSED tests/unit/test_paths.py::TestAccessorPathContains::test_valid PASSED tests/unit/test_paths.py::TestAccessorPathContains::test_invalid PASSED tests/unit/test_paths.py::TestAccessorPathContains::test_missing_path_does_not_raise PASSED tests/unit/test_paths.py::TestAccessorPathContains::test_fast_path_valid PASSED tests/unit/test_paths.py::TestAccessorPathContains::test_fast_path_invalid PASSED tests/unit/test_paths.py::TestAccessorPathContains::test_fast_path_nested PASSED tests/unit/test_paths.py::TestAccessorPathContains::test_fast_path_missing_parent PASSED tests/unit/test_paths.py::TestAccessorPathRequireChild::test_fast_path_valid_child PASSED tests/unit/test_paths.py::TestAccessorPathRequireChild::test_fast_path_invalid_child PASSED tests/unit/test_paths.py::TestAccessorPathRequireChild::test_fast_path_nested_valid PASSED tests/unit/test_paths.py::TestAccessorPathRequireChild::test_fast_path_missing_parent PASSED tests/unit/test_paths.py::TestAccessorPathItems::test_empty PASSED tests/unit/test_paths.py::TestAccessorPathItems::test_keys PASSED tests/unit/test_paths.py::TestAccessorPathIter::test_empty PASSED tests/unit/test_paths.py::TestAccessorPathIter::test_value PASSED tests/unit/test_paths.py::TestLookupPathIter::test_object PASSED tests/unit/test_paths.py::TestLookupPathIter::test_list PASSED tests/unit/test_paths.py::TestLookupPathIter::test_leaf_raises_keyerror PASSED tests/unit/test_paths.py::TestLookupPathGetItem::test_valid PASSED tests/unit/test_paths.py::TestLookupPathGetItem::test_invalid PASSED tests/unit/test_paths.py::TestAccessorPathGetItemPerformance::test_single_traversal_for_leaf_value PASSED tests/unit/test_paths.py::TestLookupPathReadValue::test_valid[resource0-args0-testvalue] PASSED tests/unit/test_paths.py::TestLookupPathReadValue::test_valid[resource1-args1-testvalue] PASSED tests/unit/test_paths.py::TestLookupPathReadValue::test_invalid[resource0-args0] PASSED tests/unit/test_paths.py::TestLookupPathReadValue::test_invalid[resource1-args1] PASSED tests/unit/test_paths.py::TestLookupPathGet::test_non_existing_key_default_none PASSED tests/unit/test_paths.py::TestLookupPathGet::test_non_existing_key_default_defined PASSED tests/unit/test_paths.py::TestLookupPathGet::test_key_exists_returns_leaf_value PASSED tests/unit/test_paths.py::TestLookupPathGet::test_key_exists_returns_subpath PASSED tests/unit/test_paths.py::TestLookupPathExists::test_non_existing_key PASSED tests/unit/test_paths.py::TestLookupPathExists::test_key_exists[resource0-test1] PASSED tests/unit/test_paths.py::TestLookupPathExists::test_key_exists[resource1-test1] PASSED tests/unit/test_paths.py::TestLookupPathExists::test_key_exists[resource2-test1] PASSED tests/unit/test_paths.py::TestLookupPathExists::test_key_exists[resource3-test1] PASSED tests/unit/test_paths.py::TestLookupPathFloorDiv::test_non_existing_key PASSED tests/unit/test_paths.py::TestLookupPathFloorDiv::test_missing_intermediate_raises_missing_segment PASSED tests/unit/test_paths.py::TestLookupPathFloorDiv::test_key_exists[resource0] PASSED tests/unit/test_paths.py::TestLookupPathFloorDiv::test_key_exists[resource1] PASSED tests/unit/test_paths.py::TestLookupPathRfloorDiv::test_non_existing_key PASSED tests/unit/test_paths.py::TestLookupPathRfloorDiv::test_missing_intermediate_raises_missing_segment PASSED tests/unit/test_paths.py::TestLookupPathRfloorDiv::test_key_exists[resource0] PASSED tests/unit/test_paths.py::TestLookupPathRfloorDiv::test_key_exists[resource1] PASSED tests/unit/test_paths.py::TestFilesystemPathValidate::test_validate_missing_first_segment PASSED tests/unit/test_paths.py::TestFilesystemPathValidate::test_validate_missing_intermediate_segment PASSED tests/unit/test_paths.py::TestFilesystemPathKeysAndLenDiagnostics::test_keys_missing_intermediate_reports_first_missing PASSED tests/unit/test_paths.py::TestFilesystemPathKeysAndLenDiagnostics::test_len_missing_intermediate_reports_first_missing PASSED tests/unit/test_paths.py::TestFilesystemPathFloorDivDiagnostics::test_floordiv_missing_intermediate_reports_first_missing PASSED tests/unit/test_paths.py::TestLookupPathLen::test_empty PASSED tests/unit/test_paths.py::TestLookupPathLen::test_value PASSED tests/unit/test_paths.py::TestLookupPathLen::test_single PASSED tests/unit/test_paths.py::TestLookupPathLen::test_list PASSED tests/unit/test_paths.py::TestLookupPathLen::test_non_existing PASSED tests/unit/test_paths.py::TestLookupPathKeys::test_empty PASSED tests/unit/test_paths.py::TestLookupPathKeys::test_value PASSED tests/unit/test_paths.py::TestLookupPathKeys::test_string PASSED tests/unit/test_paths.py::TestLookupPathKeys::test_dict PASSED tests/unit/test_paths.py::TestLookupPathKeys::test_list PASSED tests/unit/test_paths.py::TestLookupPathKeys::test_non_existing PASSED tests/unit/test_paths.py::TestLookupTraversable::test_lookup_accessor_is_traversable PASSED tests/unit/test_paths.py::TestLookupTraversable::test_lookuppath_is_traversable PASSED tests/unit/test_paths.py::TestLookupPathContains::test_valid PASSED tests/unit/test_paths.py::TestLookupPathContains::test_invalid PASSED tests/unit/test_paths.py::TestLookupPathContains::test_missing_intermediate_does_not_raise PASSED tests/unit/test_paths.py::TestLookupPathContains::test_out_of_bounds_list_index_does_not_raise PASSED tests/unit/test_paths.py::TestLookupPathItems::test_empty PASSED tests/unit/test_paths.py::TestLookupPathItems::test_keys PASSED tests/unit/test_paths.py::TestLookupPathOpen::test_content_cached PASSED tests/unit/test_paths.py::TestLookupPathFromLookup::test_from_lookup_matches_private_constructor PASSED tests/unit/test_paths.py::TestAccessorPathOpenAndStat::test_open_yields_read_value PASSED tests/unit/test_paths.py::TestAccessorPathOpenAndStat::test_stat_returns_none_for_missing PASSED tests/unit/test_paths.py::TestPathlibLikeManipulation::test_name_parent_parents PASSED tests/unit/test_paths.py::TestPathlibLikeManipulation::test_joinpath PASSED tests/unit/test_paths.py::TestPathlibLikeManipulation::test_suffix_stem_suffixes PASSED tests/unit/test_paths.py::TestPathlibLikeManipulation::test_with_name_and_with_suffix PASSED tests/unit/test_paths.py::TestPathlibLikeManipulation::test_with_name_respects_separator PASSED tests/unit/test_paths.py::TestPathlibLikeManipulation::test_relative_to_and_is_relative_to PASSED tests/unit/test_paths.py::TestPathlibLikeManipulation::test_relative_to_and_is_relative_to_custom_separator PASSED tests/unit/test_paths.py::TestPathlibLikeManipulation::test_as_posix_and_fspath PASSED tests/unit/test_paths.py::TestNodeAccessorIdentity::test_node_accessor_is_hashable PASSED tests/unit/test_paths.py::TestNodeAccessorIdentity::test_node_accessor_default_is_object_identity PASSED tests/unit/test_paths.py::TestNodeAccessorIdentity::test_lookup_accessor_same_node_compares_equal PASSED tests/unit/test_paths.py::TestNodeAccessorIdentity::test_lookup_accessor_distinct_nodes_compare_unequal PASSED tests/unit/test_paths.py::TestNodeAccessorIdentity::test_lookup_accessor_different_class_not_equal PASSED tests/unit/test_paths.py::TestNodeAccessorIdentity::test_path_accessor_value_equal_on_path PASSED tests/unit/test_paths.py::TestNodeAccessorIdentity::test_path_accessor_different_path_not_equal PASSED tests/unit/test_paths.py::TestNodeAccessorIdentity::test_path_accessor_different_class_not_equal PASSED tests/unit/test_paths.py::TestPathIdentityCrossClass::test_basepath_not_equal_to_accessorpath PASSED tests/unit/test_paths.py::TestPathIdentityCrossClass::test_basepath_not_equal_to_accessorpath_reflected PASSED tests/unit/test_paths.py::TestPathIdentityCrossClass::test_subclass_compares_equal_to_base_when_address_and_binding_match PASSED tests/unit/test_paths.py::TestPathIdentityCrossClass::test_distinct_accessor_subclasses_not_equal PASSED tests/unit/test_paths.py::TestPathIdentityCrossClass::test_accessorpath_ordering_is_address_based_across_bindings PASSED tests/unit/test_paths.py::TestAccessorPathIsSameBinding::test_same_accessor_instance_is_same_binding PASSED tests/unit/test_paths.py::TestAccessorPathIsSameBinding::test_equal_accessors_distinct_instances_not_same_binding PASSED tests/unit/test_paths.py::TestAccessorPathIsSameBinding::test_is_same_binding_requires_accessorpath PASSED tests/unit/test_paths.py::TestPathHashEqInvariant::test_basepath_eq_implies_hash_eq[a0-b0] PASSED tests/unit/test_paths.py::TestPathHashEqInvariant::test_basepath_eq_implies_hash_eq[a1-b1] PASSED tests/unit/test_paths.py::TestPathHashEqInvariant::test_accessorpath_eq_implies_hash_eq PASSED tests/unit/test_paths.py::TestPathHashEqInvariant::test_accessorpath_eq_implies_hash_eq_across_accessor_instances PASSED tests/unit/test_paths.py::TestAccessorPathPathlibCompat::test_parent_preserves_accessor PASSED tests/unit/test_paths.py::TestAccessorPathPathlibCompat::test_relative_to_preserves_accessor PASSED tests/unit/test_paths.py::TestAccessorPathPathlibCompat::test_with_name_preserves_accessor PASSED tests/unit/test_traversable.py::test_is_traversable_falls_back_to_keys PASSED - generated xml file: /home/buildozer/aports/community/py3-pathable/src/pathable-0.6.0/reports/junit.xml - ---------- coverage: platform linux, python 3.14.7-final-0 ----------- Name Stmts Miss Branch BrPart Cover Missing ------------------------------------------------------------------- pathable/__init__.py 14 0 0 0 100% pathable/accessors.py 280 42 54 6 81% 42, 55, 62, 87, 94-95, 139-141, 144, 147-148, 172, 222-223, 226-230, 234-240, 254-255, 259, 279, 338->342, 395-398, 411-416, 438 pathable/parsers.py 38 5 28 2 83% 41, 43-46 pathable/paths.py 322 35 88 20 85% 86-87, 174, 181, 187, 201, 206, 209, 222, 229, 242, 244, 246, 255, 257, 259, 262, 270, 381, 392, 419, 455-456, 495-498, 505-508, 512-515 pathable/protocols.py 8 0 0 0 100% pathable/types.py 5 0 0 0 100% ------------------------------------------------------------------- TOTAL 667 82 170 28 84% Coverage XML written to file reports/coverage.xml ============================= 281 passed in 0.98s ============================== >>> py3-pathable: Entering fakeroot... >>> py3-pathable-pyc*: Running split function pyc... 'usr/lib/python3.14/site-packages/pathable/__pycache__' -> '/home/buildozer/aports/community/py3-pathable/pkg/py3-pathable-pyc/usr/lib/python3.14/site-packages/pathable/__pycache__' >>> py3-pathable-pyc*: Preparing subpackage py3-pathable-pyc... >>> py3-pathable-pyc*: Running postcheck for py3-pathable-pyc >>> py3-pathable*: Running postcheck for py3-pathable >>> py3-pathable*: Preparing package py3-pathable... >>> py3-pathable*: Tracing dependencies... python3~3.14 >>> py3-pathable*: Package size: 58.0 KB >>> py3-pathable*: Compressing data... >>> py3-pathable*: Create checksum... >>> py3-pathable*: Create py3-pathable-0.6.0-r0.apk >>> py3-pathable-pyc*: Tracing dependencies... python3~3.14 >>> py3-pathable-pyc*: Package size: 72.1 KB >>> py3-pathable-pyc*: Compressing data... >>> py3-pathable-pyc*: Create checksum... >>> py3-pathable-pyc*: Create py3-pathable-pyc-0.6.0-r0.apk >>> py3-pathable: Build complete at Thu, 10 Sep 2026 18:42:32 +0000 elapsed time 0h 0m 5s >>> py3-pathable: Cleaning up srcdir >>> py3-pathable: Cleaning up pkgdir >>> py3-pathable: Cleaning up tmpdir >>> py3-pathable: Uninstalling dependencies... ( 1/116) Purging .makedepends-py3-pathable (20260910.184228) ( 2/116) Purging poetry-pyc (2.3.3-r0) ( 3/116) Purging poetry (2.3.3-r0) ( 4/116) Purging py3-poetry-core-pyc (2.3.2-r0) ( 5/116) Purging py3-poetry-core (2.3.2-r0) ( 6/116) Purging py3-lark-parser-pyc (1.2.2-r1) ( 7/116) Purging py3-lark-parser (1.2.2-r1) ( 8/116) Purging py3-build-pyc (1.4.2-r0) ( 9/116) Purging py3-build (1.4.2-r0) ( 10/116) Purging py3-cachecontrol-pyc (0.14.3-r1) ( 11/116) Purging py3-cachecontrol (0.14.3-r1) ( 12/116) Purging py3-msgpack-pyc (1.1.2-r1) ( 13/116) Purging py3-msgpack (1.1.2-r1) ( 14/116) Purging py3-cleo-pyc (2.2.1-r1) ( 15/116) Purging py3-cleo (2.2.1-r1) ( 16/116) Purging py3-crashtest-pyc (0.4.1-r6) ( 17/116) Purging py3-crashtest (0.4.1-r6) ( 18/116) Purging py3-rapidfuzz-pyc (3.14.5-r0) ( 19/116) Purging py3-rapidfuzz (3.14.5-r0) ( 20/116) Purging py3-dulwich-pyc (1.1.0-r1) ( 21/116) Purging py3-dulwich (1.1.0-r1) ( 22/116) Purging py3-fastjsonschema-pyc (2.21.2-r2) ( 23/116) Purging py3-fastjsonschema (2.21.2-r2) ( 24/116) Purging py3-keyring-pyc (24.3.1-r3) ( 25/116) Purging py3-keyring (24.3.1-r3) ( 26/116) Purging py3-importlib-metadata-pyc (9.0.0-r0) ( 27/116) Purging py3-importlib-metadata (9.0.0-r0) ( 28/116) Purging py3-zipp-pyc (3.23.0-r1) ( 29/116) Purging py3-zipp (3.23.0-r1) ( 30/116) Purging py3-jaraco.classes-pyc (3.4.0-r2) ( 31/116) Purging py3-jaraco.classes (3.4.0-r2) ( 32/116) Purging py3-more-itertools-pyc (10.8.0-r1) ( 33/116) Purging py3-more-itertools (10.8.0-r1) ( 34/116) Purging py3-secretstorage-pyc (3.5.0-r1) ( 35/116) Purging py3-secretstorage (3.5.0-r1) ( 36/116) Purging py3-cryptography-pyc (50.0.0-r0) ( 37/116) Purging py3-cryptography (50.0.0-r0) ( 38/116) Purging py3-cffi-pyc (2.0.0-r0) ( 39/116) Purging py3-cffi (2.0.0-r0) ( 40/116) Purging py3-cparser-pyc (3.0-r1) ( 41/116) Purging py3-cparser (3.0-r1) ( 42/116) Purging py3-jeepney-pyc (0.9.0-r1) ( 43/116) Purging py3-jeepney (0.9.0-r1) ( 44/116) Purging py3-pkginfo-pyc (1.12.1.2-r1) ( 45/116) Purging py3-pkginfo (1.12.1.2-r1) ( 46/116) Purging py3-pyproject-hooks-pyc (1.2.0-r1) ( 47/116) Purging py3-pyproject-hooks (1.2.0-r1) ( 48/116) Purging py3-requests-toolbelt-pyc (1.0.0-r2) ( 49/116) Purging py3-requests-toolbelt (1.0.0-r2) ( 50/116) Purging py3-requests-pyc (2.34.2-r0) ( 51/116) Purging py3-requests (2.34.2-r0) ( 52/116) Purging py3-certifi-pyc (2026.7.22-r0) ( 53/116) Purging py3-certifi (2026.7.22-r0) ( 54/116) Purging py3-charset-normalizer-pyc (3.5.1-r0) ( 55/116) Purging py3-charset-normalizer (3.5.1-r0) ( 56/116) Purging py3-idna-pyc (3.19-r0) ( 57/116) Purging py3-idna (3.19-r0) ( 58/116) Purging py3-urllib3-pyc (2.7.0-r0) ( 59/116) Purging py3-urllib3 (2.7.0-r0) ( 60/116) Purging py3-shellingham-pyc (1.5.4-r2) ( 61/116) Purging py3-shellingham (1.5.4-r2) ( 62/116) Purging py3-tomlkit-pyc (0.13.3-r1) ( 63/116) Purging py3-tomlkit (0.13.3-r1) ( 64/116) Purging py3-trove-classifiers-pyc (2026.4.28.13-r0) ( 65/116) Purging py3-trove-classifiers (2026.4.28.13-r0) ( 66/116) Purging py3-virtualenv-pyc (21.3.3-r0) ( 67/116) Purging py3-virtualenv (21.3.3-r0) ( 68/116) Purging py3-distlib-pyc (0.4.3-r0) ( 69/116) Purging py3-distlib (0.4.3-r0) ( 70/116) Purging py3-python-discovery-pyc (1.4.4-r0) ( 71/116) Purging py3-python-discovery (1.4.4-r0) ( 72/116) Purging py3-filelock-pyc (3.29.0-r0) ( 73/116) Purging py3-filelock (3.29.0-r0) ( 74/116) Purging py3-findpython-pyc (0.8.0-r0) ( 75/116) Purging py3-findpython (0.8.0-r0) ( 76/116) Purging py3-platformdirs-pyc (4.11.5-r0) ( 77/116) Purging py3-platformdirs (4.11.5-r0) ( 78/116) Purging py3-pbs-installer-pyc (2026.03.24-r1) ( 79/116) Purging py3-pbs-installer (2026.03.24-r1) ( 80/116) Purging py3-setuptools-pyc (84.0.0-r0) ( 81/116) Purging py3-setuptools (84.0.0-r0) ( 82/116) Purging py3-gpep517-pyc (20-r0) ( 83/116) Purging py3-gpep517 (20-r0) ( 84/116) Purging py3-installer-pyc (1.0.1-r0) ( 85/116) Purging py3-installer (1.0.1-r0) ( 86/116) Purging py3-wheel-pyc (0.48.0-r0) ( 87/116) Purging py3-wheel (0.48.0-r0) ( 88/116) Purging py3-pytest-cov-pyc (5.0.0-r2) ( 89/116) Purging py3-pytest-cov (5.0.0-r2) ( 90/116) Purging py3-pytest-pyc (9.1.1-r0) ( 91/116) Purging py3-pytest (9.1.1-r0) ( 92/116) Purging py3-iniconfig-pyc (2.3.0-r1) ( 93/116) Purging py3-iniconfig (2.3.0-r1) ( 94/116) Purging py3-packaging-pyc (26.2-r0) ( 95/116) Purging py3-packaging (26.2-r0) ( 96/116) Purging py3-parsing-pyc (3.3.2-r1) ( 97/116) Purging py3-parsing (3.3.2-r1) ( 98/116) Purging py3-pluggy-pyc (1.6.0-r1) ( 99/116) Purging py3-pluggy (1.6.0-r1) (100/116) Purging py3-py-pyc (1.11.0-r5) (101/116) Purging py3-py (1.11.0-r5) (102/116) Purging py3-pygments-pyc (2.21.0-r0) (103/116) Purging py3-pygments (2.21.0-r0) (104/116) Purging py3-coverage-pyc (7.15.4-r0) (105/116) Purging py3-coverage (7.15.4-r0) (106/116) Purging python3-pyc (3.14.7-r0) (107/116) Purging python3-pycache-pyc0 (3.14.7-r0) (108/116) Purging pyc (3.14.7-r0) (109/116) Purging python3 (3.14.7-r0) (110/116) Purging libbz2 (1.0.8-r6) (111/116) Purging libffi (3.8.0-r0) (112/116) Purging libpanelw (6.6_p20260822-r0) (113/116) Purging mpdecimal (4.0.1-r0) (114/116) Purging readline (8.3.3-r1) (115/116) Purging sqlite-libs (3.53.4-r0) (116/116) Purging xz-libs (5.8.4-r0) Executing busybox-1.38.0-r5.trigger OK: 427.0 MiB in 105 packages >>> py3-pathable: Updating the community/x86 repository index... >>> py3-pathable: Signing the index...