>>> py3-pykwalify: Building community/py3-pykwalify 1.8.0-r6 (using abuild 3.16.0_rc4-r0) started Sat, 25 Oct 2025 07:20:18 +0000 >>> py3-pykwalify: Validating /home/buildozer/aports/community/py3-pykwalify/APKBUILD... >>> py3-pykwalify: Analyzing dependencies... >>> py3-pykwalify: Installing for build: build-base python3 py3-docopt py3-ruamel.yaml py3-dateutil py3-setuptools py3-pytest py3-testfixtures ( 1/39) Installing libbz2 (1.0.8-r6) ( 2/39) Installing libffi (3.5.2-r0) ( 3/39) Installing gdbm (1.26-r0) ( 4/39) Installing xz-libs (5.8.1-r0) ( 5/39) Installing mpdecimal (4.0.1-r0) ( 6/39) Installing libpanelw (6.5_p20251010-r0) ( 7/39) Installing sqlite-libs (3.50.4-r1) ( 8/39) Installing python3 (3.12.12-r0) ( 9/39) Installing python3-pycache-pyc0 (3.12.12-r0) (10/39) Installing pyc (3.12.12-r0) (11/39) Installing python3-pyc (3.12.12-r0) (12/39) Installing py3-docopt (0.6.2-r11) (13/39) Installing py3-docopt-pyc (0.6.2-r11) (14/39) Installing py3-ruamel.yaml.clib (0.2.8-r2) (15/39) Installing py3-ruamel.yaml (0.18.15-r0) (16/39) Installing py3-ruamel.yaml-pyc (0.18.15-r0) (17/39) Installing py3-six (1.17.0-r0) (18/39) Installing py3-six-pyc (1.17.0-r0) (19/39) Installing py3-dateutil (2.9.0-r2) (20/39) Installing py3-dateutil-pyc (2.9.0-r2) (21/39) Installing py3-parsing (3.2.3-r0) (22/39) Installing py3-parsing-pyc (3.2.3-r0) (23/39) Installing py3-packaging (25.0-r0) (24/39) Installing py3-packaging-pyc (25.0-r0) (25/39) Installing py3-setuptools (80.9.0-r1) (26/39) Installing py3-setuptools-pyc (80.9.0-r1) (27/39) Installing py3-iniconfig (2.3.0-r0) (28/39) Installing py3-iniconfig-pyc (2.3.0-r0) (29/39) Installing py3-pluggy (1.6.0-r0) (30/39) Installing py3-pluggy-pyc (1.6.0-r0) (31/39) Installing py3-py (1.11.0-r4) (32/39) Installing py3-py-pyc (1.11.0-r4) (33/39) Installing py3-pygments (2.19.2-r0) (34/39) Installing py3-pygments-pyc (2.19.2-r0) (35/39) Installing py3-pytest (8.4.2-r1) (36/39) Installing py3-pytest-pyc (8.4.2-r1) (37/39) Installing py3-testfixtures (7.2.2-r1) (38/39) Installing py3-testfixtures-pyc (7.2.2-r1) (39/39) Installing .makedepends-py3-pykwalify (20251025.072103) busybox-1.37.0-r24.trigger: Executing script... OK: 484 MiB in 144 packages >>> py3-pykwalify: Cleaning up srcdir >>> py3-pykwalify: Cleaning up pkgdir >>> py3-pykwalify: Cleaning up tmpdir >>> py3-pykwalify: Fetching https://distfiles.alpinelinux.org/distfiles/v3.23/pykwalify-1.8.0.tar.gz Connecting to distfiles.alpinelinux.org (172.105.82.32:443) saving to '/var/cache/distfiles/v3.23/pykwalify-1.8.0.tar.gz.part' pykwalify-1.8.0.tar. 100% |********************************| 74592 0:00:00 ETA '/var/cache/distfiles/v3.23/pykwalify-1.8.0.tar.gz.part' saved /var/cache/distfiles/v3.23/pykwalify-1.8.0.tar.gz: OK >>> py3-pykwalify: Fetching https://distfiles.alpinelinux.org/distfiles/v3.23/pykwalify-1.8.0.tar.gz /var/cache/distfiles/v3.23/pykwalify-1.8.0.tar.gz: OK >>> py3-pykwalify: Unpacking /var/cache/distfiles/v3.23/pykwalify-1.8.0.tar.gz... /usr/lib/python3.12/site-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: MIT License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running build running build_py creating build/lib/pykwalify copying pykwalify/__init__.py -> build/lib/pykwalify copying pykwalify/compat.py -> build/lib/pykwalify copying pykwalify/core.py -> build/lib/pykwalify copying pykwalify/cli.py -> build/lib/pykwalify copying pykwalify/types.py -> build/lib/pykwalify copying pykwalify/rule.py -> build/lib/pykwalify copying pykwalify/errors.py -> build/lib/pykwalify ============================= test session starts ============================== platform linux -- Python 3.12.12, pytest-8.4.2, pluggy-1.6.0 rootdir: /home/buildozer/aports/community/py3-pykwalify/src/pykwalify-1.8.0 configfile: pytest.ini collected 48 items tests/test_cli.py .. [ 4%] tests/test_core.py .............F [ 33%] tests/test_core_methods.py .... [ 41%] tests/test_exceptions.py .. [ 45%] tests/test_rule.py ....................... [ 93%] tests/test_types.py . [ 95%] tests/test_unicode.py FF [100%] =================================== FAILURES =================================== ___________________________ TestCore.test_core_files ___________________________ self = def test_core_files(self): # These tests should pass with no exception raised pass_tests = [ # All tests for keyword assert "test_assert.yaml", # All tests for keyword default "test_default.yaml", # All tests for keyword desc "test_desc.yaml", # All tests for keyword enum "test_enum.yaml", # All tests for keyword example "test_example.yaml", # All tests for keyword extensions "test_extensions.yaml", # All tests for keyword func "test_func.yaml", # All tests for keyword ident "test_ident.yaml", # All tests for keyword include "test_include.yaml", # All tests for keyword length "test_length.yaml", # All tests for keyword mapping "test_mapping.yaml", # All tests for keyword matching "test_matching.yaml", # All tests for keyword name "test_name.yaml", # All tests for keyword nullable "test_nullable.yaml", # All tests for keyword pattern "test_pattern.yaml", # All tests for keyword range "test_range.yaml", # All tests for keyword required "test_required.yaml", # All tests for keyword schema "test_schema.yaml", # All tests for keyword sequence "test_sequence.yaml", # All tests for keyword unique "test_unique.yaml", # All tests for keyword version "test_version.yaml", # All test cases for Multiple sequence checks "test_sequence_multi.yaml", # All test cases for merging "test_merge.yaml", # All test cases for yaml anchors "test_anchor.yaml", # All tests for TYPE: any "test_type_any.yaml", # All tests for TYPE: bool "test_type_bool.yaml", # All tests for TYPE: date "test_type_date.yaml", # All tests for TYPE: enum "test_type_enum.yaml", # All tests for TYPE: float "test_type_float.yaml", # All tests for TYPE: int "test_type_int.yaml", # All tests for TYPE: map "test_type_map.yaml", # All tests for TYPE: none "test_type_none.yaml", # All tests for TYPE: number "test_type_number.yaml", # All tests for TYPE: scalar "test_type_scalar.yaml", # All tests for TYPE: seq "test_type_seq.yaml", # All tests for TYPE: str "test_type_str.yaml", # All tests for TYPE: symbol "test_type_symbol.yaml", # All tests for TYPE: text "test_type_text.yaml", # All tests for TYPE: timestamp "test_type_timestamp.yaml", # All tests for TYPE: email "test_type_email.yaml", # All tests for TYPE: url "test_type_url.yaml", ] _fail_tests = [ # All tests for keyword assert ("test_assert.yaml", SchemaError), # All tests for keyword default ("test_default.yaml", SchemaError), # All tests for keyword desc ("test_desc.yaml", SchemaError), # All tests for keyword enum ("test_enum.yaml", SchemaError), # All tests for keyword example ("test_example.yaml", SchemaError), # All tests for keyword extensions ("test_extensions.yaml", SchemaError), # All tests for keyword func ("test_func.yaml", SchemaError), # All tests for keyword ident ("test_ident.yaml", SchemaError), # All tests for keyword include ("test_include.yaml", SchemaError), # All tests for keyword length ("test_length.yaml", SchemaError), # All tests for keyword mapping ("test_mapping.yaml", SchemaError), # All tests for keyword matching ("test_matching.yaml", SchemaError), # All tests for keyword name ("test_name.yaml", SchemaError), # All tests for keyword nullable ("test_nullable.yaml", SchemaError), # All tests for keyword pattern ("test_pattern.yaml", SchemaError), # All tests for keyword range ("test_range.yaml", SchemaError), # All tests for keyword required ("test_required.yaml", SchemaError), # All tests for keyword schema ("test_schema.yaml", SchemaError), # All tests for keyword sequence ("test_sequence.yaml", SchemaError), # All tests for keyword unique ("test_unique.yaml", SchemaError), # All tests for keyword version ("test_version.yaml", SchemaError), # All test cases for Multiple sequence checks ("test_sequence_multi.yaml", SchemaError), # All test cases for merging ("test_merge.yaml", SchemaError), # All test cases for yaml anchors ("test_anchor.yaml", SchemaError), # All tests for TYPE: any ("test_type_any.yaml", SchemaError), # All tests for TYPE: bool ("test_type_bool.yaml", SchemaError), # All tests for TYPE: date ("test_type_date.yaml", SchemaError), # All tests for TYPE: float ("test_type_float.yaml", SchemaError), # All tests for TYPE: int ("test_type_int.yaml", SchemaError), # All tests for TYPE: map ("test_type_map.yaml", SchemaError), # All tests for TYPE: none ("test_type_none.yaml", SchemaError), # All tests for TYPE: number ("test_type_number.yaml", SchemaError), # All tests for TYPE: scalar ("test_type_scalar.yaml", SchemaError), # All tests for TYPE: seq ("test_type_seq.yaml", SchemaError), # All tests for TYPE: str ("test_type_str.yaml", SchemaError), # All tests for TYPE: symbol ("test_type_symbol.yaml", SchemaError), # All tests for TYPE: text ("test_type_text.yaml", SchemaError), # All tests for TYPE: timestamp ("test_type_timestamp.yaml", SchemaError), # All tests for TYPE: email ("test_type_email.yaml", SchemaError), # All tests for TYPE: url ("test_type_url.yaml", SchemaError), ] # Add override magic to make it easier to test a specific file if "S" in os.environ: pass_tests = [os.environ["S"]] _fail_tests = [] elif "F" in os.environ: pass_tests = [] _fail_tests = [(os.environ["F"], SchemaError)] for passing_test_file in pass_tests: f = self.f(os.path.join("success", passing_test_file)) with open(f, "r") as stream: > yaml_data = yaml.safe_load_all(stream) ^^^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_core.py:570: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/site-packages/ruamel/yaml/main.py:1117: in safe_load_all error_deprecation('safe_load_all', 'load_all', arg="typ='safe', pure=True") _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fun = 'safe_load_all', method = 'load_all', arg = "typ='safe', pure=True" comment = 'instead of' def error_deprecation(fun: Any, method: Any, arg: str = '', comment: str = 'instead of') -> None: # NOQA import inspect s = f'\n"{fun}()" has been removed, use\n\n yaml = YAML({arg})\n yaml.{method}(...)\n\n{comment}' # NOQA try: info = inspect.getframeinfo(inspect.stack()[2][0]) context = '' if info.code_context is None else "".join(info.code_context) s += f' file "{info.filename}", line {info.lineno}\n\n{context}' except Exception as e: _ = e s += '\n' if sys.version_info < (3, 10): raise AttributeError(s) else: > raise AttributeError(s, name=None) E AttributeError: E "safe_load_all()" has been removed, use E E yaml = YAML(typ='safe', pure=True) E yaml.load_all(...) E E instead of file "/home/buildozer/aports/community/py3-pykwalify/src/pykwalify-1.8.0/tests/test_core.py", line 570 E E yaml_data = yaml.safe_load_all(stream) /usr/lib/python3.12/site-packages/ruamel/yaml/main.py:1042: AttributeError _____________ TestUnicode.test_files_with_unicode_content_success ______________ self = tmpdir = local('/tmp/pytest-of-buildozer/pytest-81/test_files_with_unicode_conten0') def test_files_with_unicode_content_success(self, tmpdir): """ These tests should pass with no exception raised """ fail_data_2s_yaml = { 'schema': { 'type': 'map', 'mapping': { 'msg': { 'type': 'int', }, } }, 'data': { 'msg': 123, }, 'errors': [] } source_f = tmpdir.join(u"2så.json") > source_f.write(yaml.safe_dump(fail_data_2s_yaml, allow_unicode=True)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_unicode.py:50: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/site-packages/ruamel/yaml/main.py:1263: in safe_dump error_deprecation('safe_dump', 'dump', arg="typ='safe', pure=True") _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fun = 'safe_dump', method = 'dump', arg = "typ='safe', pure=True" comment = 'instead of' def error_deprecation(fun: Any, method: Any, arg: str = '', comment: str = 'instead of') -> None: # NOQA import inspect s = f'\n"{fun}()" has been removed, use\n\n yaml = YAML({arg})\n yaml.{method}(...)\n\n{comment}' # NOQA try: info = inspect.getframeinfo(inspect.stack()[2][0]) context = '' if info.code_context is None else "".join(info.code_context) s += f' file "{info.filename}", line {info.lineno}\n\n{context}' except Exception as e: _ = e s += '\n' if sys.version_info < (3, 10): raise AttributeError(s) else: > raise AttributeError(s, name=None) E AttributeError: E "safe_dump()" has been removed, use E E yaml = YAML(typ='safe', pure=True) E yaml.dump(...) E E instead of file "/home/buildozer/aports/community/py3-pykwalify/src/pykwalify-1.8.0/tests/test_unicode.py", line 50 E E source_f.write(yaml.safe_dump(fail_data_2s_yaml, allow_unicode=True)) /usr/lib/python3.12/site-packages/ruamel/yaml/main.py:1042: AttributeError _____________ TestUnicode.test_files_with_unicode_content_failing ______________ self = tmpdir = local('/tmp/pytest-of-buildozer/pytest-81/test_files_with_unicode_conten1') def test_files_with_unicode_content_failing(self, tmpdir): """ These tests should fail with the specified exception """ # To trigger schema exception we must pass in a source file fail_data_2f_yaml = { 'schema': { 'type': 'map', 'mapping': { 'msg': { 'type': 'int', }, } }, 'data': { 'msg': 'Foobar', }, 'errors': ["Value 'Foobar' is not of type 'int'. Path: '/msg'"] } source_f = tmpdir.join(u"2få.json") > source_f.write(yaml.safe_dump(fail_data_2f_yaml, allow_unicode=True)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_unicode.py:105: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/site-packages/ruamel/yaml/main.py:1263: in safe_dump error_deprecation('safe_dump', 'dump', arg="typ='safe', pure=True") _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fun = 'safe_dump', method = 'dump', arg = "typ='safe', pure=True" comment = 'instead of' def error_deprecation(fun: Any, method: Any, arg: str = '', comment: str = 'instead of') -> None: # NOQA import inspect s = f'\n"{fun}()" has been removed, use\n\n yaml = YAML({arg})\n yaml.{method}(...)\n\n{comment}' # NOQA try: info = inspect.getframeinfo(inspect.stack()[2][0]) context = '' if info.code_context is None else "".join(info.code_context) s += f' file "{info.filename}", line {info.lineno}\n\n{context}' except Exception as e: _ = e s += '\n' if sys.version_info < (3, 10): raise AttributeError(s) else: > raise AttributeError(s, name=None) E AttributeError: E "safe_dump()" has been removed, use E E yaml = YAML(typ='safe', pure=True) E yaml.dump(...) E E instead of file "/home/buildozer/aports/community/py3-pykwalify/src/pykwalify-1.8.0/tests/test_unicode.py", line 105 E E source_f.write(yaml.safe_dump(fail_data_2f_yaml, allow_unicode=True)) /usr/lib/python3.12/site-packages/ruamel/yaml/main.py:1042: AttributeError =========================== short test summary info ============================ FAILED tests/test_core.py::TestCore::test_core_files - AttributeError: FAILED tests/test_unicode.py::TestUnicode::test_files_with_unicode_content_success FAILED tests/test_unicode.py::TestUnicode::test_files_with_unicode_content_failing ========================= 3 failed, 45 passed in 0.69s ========================= >>> ERROR: py3-pykwalify: check failed >>> py3-pykwalify: Uninstalling dependencies... ( 1/39) Purging .makedepends-py3-pykwalify (20251025.072103) ( 2/39) Purging py3-docopt-pyc (0.6.2-r11) ( 3/39) Purging py3-docopt (0.6.2-r11) ( 4/39) Purging py3-ruamel.yaml-pyc (0.18.15-r0) ( 5/39) Purging py3-ruamel.yaml (0.18.15-r0) ( 6/39) Purging py3-ruamel.yaml.clib (0.2.8-r2) ( 7/39) Purging py3-dateutil-pyc (2.9.0-r2) ( 8/39) Purging py3-dateutil (2.9.0-r2) ( 9/39) Purging py3-six-pyc (1.17.0-r0) (10/39) Purging py3-six (1.17.0-r0) (11/39) Purging py3-setuptools-pyc (80.9.0-r1) (12/39) Purging py3-setuptools (80.9.0-r1) (13/39) Purging py3-pytest-pyc (8.4.2-r1) (14/39) Purging py3-pytest (8.4.2-r1) (15/39) Purging py3-iniconfig-pyc (2.3.0-r0) (16/39) Purging py3-iniconfig (2.3.0-r0) (17/39) Purging py3-packaging-pyc (25.0-r0) (18/39) Purging py3-packaging (25.0-r0) (19/39) Purging py3-parsing-pyc (3.2.3-r0) (20/39) Purging py3-parsing (3.2.3-r0) (21/39) Purging py3-pluggy-pyc (1.6.0-r0) (22/39) Purging py3-pluggy (1.6.0-r0) (23/39) Purging py3-py-pyc (1.11.0-r4) (24/39) Purging py3-py (1.11.0-r4) (25/39) Purging py3-pygments-pyc (2.19.2-r0) (26/39) Purging py3-pygments (2.19.2-r0) (27/39) Purging py3-testfixtures-pyc (7.2.2-r1) (28/39) Purging py3-testfixtures (7.2.2-r1) (29/39) Purging python3-pyc (3.12.12-r0) (30/39) Purging python3-pycache-pyc0 (3.12.12-r0) (31/39) Purging pyc (3.12.12-r0) (32/39) Purging python3 (3.12.12-r0) (33/39) Purging gdbm (1.26-r0) (34/39) Purging libbz2 (1.0.8-r6) (35/39) Purging libffi (3.5.2-r0) (36/39) Purging libpanelw (6.5_p20251010-r0) (37/39) Purging mpdecimal (4.0.1-r0) (38/39) Purging sqlite-libs (3.50.4-r1) (39/39) Purging xz-libs (5.8.1-r0) busybox-1.37.0-r24.trigger: Executing script... OK: 426 MiB in 105 packages