>>> py3-webauthn: Building community/py3-webauthn 2.7.1-r0 (using abuild 3.16.0-r0) started Sun, 01 Mar 2026 17:04:02 +0000 >>> py3-webauthn: Validating /home/buildozer/aports/community/py3-webauthn/APKBUILD... >>> py3-webauthn: Analyzing dependencies... >>> py3-webauthn: Installing for build: build-base py3-asn1 py3-cbor2 py3-openssl py3-cryptography py3-setuptools py3-gpep517 py3-wheel py3-pytest ( 1/48) Installing libbz2 (1.0.8-r6) ( 2/48) Installing libffi (3.5.2-r0) ( 3/48) Installing gdbm (1.26-r0) ( 4/48) Installing xz-libs (5.8.2-r0) ( 5/48) Installing mpdecimal (4.0.1-r0) ( 6/48) Installing libpanelw (6.5_p20251123-r0) ( 7/48) Installing sqlite-libs (3.51.2-r0) ( 8/48) Installing python3 (3.12.12-r0) ( 9/48) Installing python3-pycache-pyc0 (3.12.12-r0) (10/48) Installing pyc (3.12.12-r0) (11/48) Installing py3-asn1-pyc (0.6.1-r0) (12/48) Installing python3-pyc (3.12.12-r0) (13/48) Installing py3-asn1 (0.6.1-r0) (14/48) Installing py3-cbor2 (5.6.5-r0) (15/48) Installing py3-cbor2-pyc (5.6.5-r0) (16/48) Installing py3-cparser (2.22-r1) (17/48) Installing py3-cparser-pyc (2.22-r1) (18/48) Installing py3-cffi (1.17.1-r1) (19/48) Installing py3-cffi-pyc (1.17.1-r1) (20/48) Installing py3-cryptography (46.0.3-r0) (21/48) Installing py3-cryptography-pyc (46.0.3-r0) (22/48) Installing py3-typing-extensions (4.15.0-r0) (23/48) Installing py3-typing-extensions-pyc (4.15.0-r0) (24/48) Installing py3-openssl (25.3.0-r0) (25/48) Installing py3-openssl-pyc (25.3.0-r0) (26/48) Installing py3-parsing (3.2.5-r0) (27/48) Installing py3-parsing-pyc (3.2.5-r0) (28/48) Installing py3-packaging (25.0-r0) (29/48) Installing py3-packaging-pyc (25.0-r0) (30/48) Installing py3-setuptools (80.9.0-r2) (31/48) Installing py3-setuptools-pyc (80.9.0-r2) (32/48) Installing py3-installer (0.7.0-r2) (33/48) Installing py3-installer-pyc (0.7.0-r2) (34/48) Installing py3-gpep517 (19-r1) (35/48) Installing py3-gpep517-pyc (19-r1) (36/48) Installing py3-wheel (0.46.1-r0) (37/48) Installing py3-wheel-pyc (0.46.1-r0) (38/48) Installing py3-iniconfig (2.3.0-r0) (39/48) Installing py3-iniconfig-pyc (2.3.0-r0) (40/48) Installing py3-pluggy (1.6.0-r0) (41/48) Installing py3-pluggy-pyc (1.6.0-r0) (42/48) Installing py3-py (1.11.0-r4) (43/48) Installing py3-py-pyc (1.11.0-r4) (44/48) Installing py3-pygments (2.19.2-r0) (45/48) Installing py3-pygments-pyc (2.19.2-r0) (46/48) Installing py3-pytest (8.4.2-r1) (47/48) Installing py3-pytest-pyc (8.4.2-r1) (48/48) Installing .makedepends-py3-webauthn (20260301.170405) Executing busybox-1.37.0-r30.trigger OK: 730.3 MiB in 153 packages >>> py3-webauthn: Cleaning up srcdir >>> py3-webauthn: Cleaning up pkgdir >>> py3-webauthn: Cleaning up tmpdir >>> py3-webauthn: Fetching https://distfiles.alpinelinux.org/distfiles/v3.23/py3-webauthn-2.7.1.tar.gz Connecting to distfiles.alpinelinux.org (172.105.82.32:443) wget: server returned error: HTTP/1.1 404 Not Found >>> py3-webauthn: Fetching py3-webauthn-2.7.1.tar.gz::https://github.com/duo-labs/py_webauthn/archive/refs/tags/v2.7.1.tar.gz Connecting to github.com (140.82.121.4:443) Connecting to codeload.github.com (140.82.121.10:443) saving to '/var/cache/distfiles/v3.23/py3-webauthn-2.7.1.tar.gz.part' py3-webauthn-2.7.1.t 100% |********************************| 125k 0:00:00 ETA '/var/cache/distfiles/v3.23/py3-webauthn-2.7.1.tar.gz.part' saved /var/cache/distfiles/v3.23/py3-webauthn-2.7.1.tar.gz: OK >>> py3-webauthn: Fetching https://distfiles.alpinelinux.org/distfiles/v3.23/py3-webauthn-2.7.1.tar.gz /var/cache/distfiles/v3.23/py3-webauthn-2.7.1.tar.gz: OK >>> py3-webauthn: Unpacking /var/cache/distfiles/v3.23/py3-webauthn-2.7.1.tar.gz... 2026-03-01 17:04:09,553 gpep517 INFO Building wheel via backend setuptools.build_meta 2026-03-01 17:04:09,824 root INFO running bdist_wheel 2026-03-01 17:04:09,913 root INFO running build 2026-03-01 17:04:09,913 root INFO running build_py 2026-03-01 17:04:09,932 root INFO creating build/lib/webauthn 2026-03-01 17:04:09,934 root INFO copying webauthn/__init__.py -> build/lib/webauthn 2026-03-01 17:04:09,936 root INFO creating build/lib/webauthn/authentication 2026-03-01 17:04:09,938 root INFO copying webauthn/authentication/__init__.py -> build/lib/webauthn/authentication 2026-03-01 17:04:09,939 root INFO copying webauthn/authentication/verify_authentication_response.py -> build/lib/webauthn/authentication 2026-03-01 17:04:09,941 root INFO copying webauthn/authentication/generate_authentication_options.py -> build/lib/webauthn/authentication 2026-03-01 17:04:09,943 root INFO creating build/lib/webauthn/registration 2026-03-01 17:04:09,944 root INFO copying webauthn/registration/__init__.py -> build/lib/webauthn/registration 2026-03-01 17:04:09,945 root INFO copying webauthn/registration/verify_registration_response.py -> build/lib/webauthn/registration 2026-03-01 17:04:09,947 root INFO copying webauthn/registration/generate_registration_options.py -> build/lib/webauthn/registration 2026-03-01 17:04:09,951 root INFO creating build/lib/webauthn/helpers 2026-03-01 17:04:09,952 root INFO copying webauthn/helpers/generate_user_handle.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,953 root INFO copying webauthn/helpers/decoded_public_key_to_cryptography.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,955 root INFO copying webauthn/helpers/decode_credential_public_key.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,957 root INFO copying webauthn/helpers/exceptions.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,958 root INFO copying webauthn/helpers/parse_client_data_json.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,960 root INFO copying webauthn/helpers/bytes_to_base64url.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,961 root INFO copying webauthn/helpers/__init__.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,963 root INFO copying webauthn/helpers/hash_by_alg.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,964 root INFO copying webauthn/helpers/generate_challenge.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,966 root INFO copying webauthn/helpers/cose.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,967 root INFO copying webauthn/helpers/aaguid_to_string.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,969 root INFO copying webauthn/helpers/parse_backup_flags.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,970 root INFO copying webauthn/helpers/parse_registration_options_json.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,972 root INFO copying webauthn/helpers/algorithms.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,974 root INFO copying webauthn/helpers/encode_cbor.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,975 root INFO copying webauthn/helpers/parse_cbor.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,977 root INFO copying webauthn/helpers/parse_attestation_statement.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,978 root INFO copying webauthn/helpers/byteslike_to_bytes.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,980 root INFO copying webauthn/helpers/options_to_json.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,981 root INFO copying webauthn/helpers/verify_signature.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,983 root INFO copying webauthn/helpers/known_root_certs.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,985 root INFO copying webauthn/helpers/pem_cert_bytes_to_open_ssl_x509.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,986 root INFO copying webauthn/helpers/parse_registration_credential_json.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,988 root INFO copying webauthn/helpers/parse_attestation_object.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,989 root INFO copying webauthn/helpers/structs.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,991 root INFO copying webauthn/helpers/verify_safetynet_timestamp.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,992 root INFO copying webauthn/helpers/snake_case_to_camel_case.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,994 root INFO copying webauthn/helpers/parse_authentication_credential_json.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,996 root INFO copying webauthn/helpers/parse_authenticator_data.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,997 root INFO copying webauthn/helpers/base64url_to_bytes.py -> build/lib/webauthn/helpers 2026-03-01 17:04:09,999 root INFO copying webauthn/helpers/validate_certificate_chain.py -> build/lib/webauthn/helpers 2026-03-01 17:04:10,000 root INFO copying webauthn/helpers/parse_authentication_options_json.py -> build/lib/webauthn/helpers 2026-03-01 17:04:10,002 root INFO copying webauthn/helpers/options_to_json_dict.py -> build/lib/webauthn/helpers 2026-03-01 17:04:10,004 root INFO creating build/lib/webauthn/registration/formats 2026-03-01 17:04:10,005 root INFO copying webauthn/registration/formats/tpm.py -> build/lib/webauthn/registration/formats 2026-03-01 17:04:10,007 root INFO copying webauthn/registration/formats/__init__.py -> build/lib/webauthn/registration/formats 2026-03-01 17:04:10,008 root INFO copying webauthn/registration/formats/android_key.py -> build/lib/webauthn/registration/formats 2026-03-01 17:04:10,010 root INFO copying webauthn/registration/formats/packed.py -> build/lib/webauthn/registration/formats 2026-03-01 17:04:10,011 root INFO copying webauthn/registration/formats/fido_u2f.py -> build/lib/webauthn/registration/formats 2026-03-01 17:04:10,013 root INFO copying webauthn/registration/formats/android_safetynet.py -> build/lib/webauthn/registration/formats 2026-03-01 17:04:10,014 root INFO copying webauthn/registration/formats/apple.py -> build/lib/webauthn/registration/formats 2026-03-01 17:04:10,016 root INFO creating build/lib/webauthn/helpers/asn1 2026-03-01 17:04:10,017 root INFO copying webauthn/helpers/asn1/__init__.py -> build/lib/webauthn/helpers/asn1 2026-03-01 17:04:10,019 root INFO copying webauthn/helpers/asn1/android_key.py -> build/lib/webauthn/helpers/asn1 2026-03-01 17:04:10,021 root INFO creating build/lib/webauthn/helpers/tpm 2026-03-01 17:04:10,022 root INFO copying webauthn/helpers/tpm/map_tpm_manufacturer.py -> build/lib/webauthn/helpers/tpm 2026-03-01 17:04:10,024 root INFO copying webauthn/helpers/tpm/__init__.py -> build/lib/webauthn/helpers/tpm 2026-03-01 17:04:10,025 root INFO copying webauthn/helpers/tpm/parse_cert_info.py -> build/lib/webauthn/helpers/tpm 2026-03-01 17:04:10,027 root INFO copying webauthn/helpers/tpm/structs.py -> build/lib/webauthn/helpers/tpm 2026-03-01 17:04:10,028 root INFO copying webauthn/helpers/tpm/parse_pub_area.py -> build/lib/webauthn/helpers/tpm 2026-03-01 17:04:10,030 root INFO running egg_info 2026-03-01 17:04:10,047 root INFO creating webauthn.egg-info 2026-03-01 17:04:10,048 root INFO writing webauthn.egg-info/PKG-INFO 2026-03-01 17:04:10,051 root INFO writing dependency_links to webauthn.egg-info/dependency_links.txt 2026-03-01 17:04:10,052 root INFO writing requirements to webauthn.egg-info/requires.txt 2026-03-01 17:04:10,053 root INFO writing top-level names to webauthn.egg-info/top_level.txt 2026-03-01 17:04:10,054 root INFO writing manifest file 'webauthn.egg-info/SOURCES.txt' 2026-03-01 17:04:10,086 root INFO reading manifest file 'webauthn.egg-info/SOURCES.txt' 2026-03-01 17:04:10,088 root INFO adding license file 'LICENSE' 2026-03-01 17:04:10,096 root INFO writing manifest file 'webauthn.egg-info/SOURCES.txt' 2026-03-01 17:04:10,104 root INFO copying webauthn/py.typed -> build/lib/webauthn 2026-03-01 17:04:10,145 root INFO installing to build/bdist.linux-riscv64/wheel 2026-03-01 17:04:10,146 root INFO running install 2026-03-01 17:04:10,208 root INFO running install_lib 2026-03-01 17:04:10,226 root INFO creating build/bdist.linux-riscv64/wheel 2026-03-01 17:04:10,228 root INFO creating build/bdist.linux-riscv64/wheel/webauthn 2026-03-01 17:04:10,229 root INFO creating build/bdist.linux-riscv64/wheel/webauthn/authentication 2026-03-01 17:04:10,230 root INFO copying build/lib/webauthn/authentication/__init__.py -> build/bdist.linux-riscv64/wheel/./webauthn/authentication 2026-03-01 17:04:10,231 root INFO copying build/lib/webauthn/authentication/verify_authentication_response.py -> build/bdist.linux-riscv64/wheel/./webauthn/authentication 2026-03-01 17:04:10,232 root INFO copying build/lib/webauthn/authentication/generate_authentication_options.py -> build/bdist.linux-riscv64/wheel/./webauthn/authentication 2026-03-01 17:04:10,234 root INFO copying build/lib/webauthn/__init__.py -> build/bdist.linux-riscv64/wheel/./webauthn 2026-03-01 17:04:10,235 root INFO copying build/lib/webauthn/py.typed -> build/bdist.linux-riscv64/wheel/./webauthn 2026-03-01 17:04:10,236 root INFO creating build/bdist.linux-riscv64/wheel/webauthn/registration 2026-03-01 17:04:10,237 root INFO copying build/lib/webauthn/registration/__init__.py -> build/bdist.linux-riscv64/wheel/./webauthn/registration 2026-03-01 17:04:10,239 root INFO creating build/bdist.linux-riscv64/wheel/webauthn/registration/formats 2026-03-01 17:04:10,240 root INFO copying build/lib/webauthn/registration/formats/tpm.py -> build/bdist.linux-riscv64/wheel/./webauthn/registration/formats 2026-03-01 17:04:10,241 root INFO copying build/lib/webauthn/registration/formats/__init__.py -> build/bdist.linux-riscv64/wheel/./webauthn/registration/formats 2026-03-01 17:04:10,242 root INFO copying build/lib/webauthn/registration/formats/android_key.py -> build/bdist.linux-riscv64/wheel/./webauthn/registration/formats 2026-03-01 17:04:10,243 root INFO copying build/lib/webauthn/registration/formats/packed.py -> build/bdist.linux-riscv64/wheel/./webauthn/registration/formats 2026-03-01 17:04:10,244 root INFO copying build/lib/webauthn/registration/formats/fido_u2f.py -> build/bdist.linux-riscv64/wheel/./webauthn/registration/formats 2026-03-01 17:04:10,246 root INFO copying build/lib/webauthn/registration/formats/android_safetynet.py -> build/bdist.linux-riscv64/wheel/./webauthn/registration/formats 2026-03-01 17:04:10,247 root INFO copying build/lib/webauthn/registration/formats/apple.py -> build/bdist.linux-riscv64/wheel/./webauthn/registration/formats 2026-03-01 17:04:10,248 root INFO copying build/lib/webauthn/registration/verify_registration_response.py -> build/bdist.linux-riscv64/wheel/./webauthn/registration 2026-03-01 17:04:10,250 root INFO copying build/lib/webauthn/registration/generate_registration_options.py -> build/bdist.linux-riscv64/wheel/./webauthn/registration 2026-03-01 17:04:10,251 root INFO creating build/bdist.linux-riscv64/wheel/webauthn/helpers 2026-03-01 17:04:10,252 root INFO copying build/lib/webauthn/helpers/generate_user_handle.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,254 root INFO copying build/lib/webauthn/helpers/decoded_public_key_to_cryptography.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,255 root INFO copying build/lib/webauthn/helpers/decode_credential_public_key.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,256 root INFO copying build/lib/webauthn/helpers/exceptions.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,257 root INFO copying build/lib/webauthn/helpers/parse_client_data_json.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,258 root INFO copying build/lib/webauthn/helpers/bytes_to_base64url.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,259 root INFO copying build/lib/webauthn/helpers/__init__.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,261 root INFO copying build/lib/webauthn/helpers/hash_by_alg.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,262 root INFO copying build/lib/webauthn/helpers/generate_challenge.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,263 root INFO copying build/lib/webauthn/helpers/cose.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,264 root INFO copying build/lib/webauthn/helpers/aaguid_to_string.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,265 root INFO copying build/lib/webauthn/helpers/parse_backup_flags.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,267 root INFO copying build/lib/webauthn/helpers/parse_registration_options_json.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,268 root INFO copying build/lib/webauthn/helpers/algorithms.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,269 root INFO copying build/lib/webauthn/helpers/encode_cbor.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,270 root INFO copying build/lib/webauthn/helpers/parse_cbor.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,271 root INFO copying build/lib/webauthn/helpers/parse_attestation_statement.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,273 root INFO copying build/lib/webauthn/helpers/byteslike_to_bytes.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,274 root INFO copying build/lib/webauthn/helpers/options_to_json.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,275 root INFO copying build/lib/webauthn/helpers/verify_signature.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,276 root INFO copying build/lib/webauthn/helpers/known_root_certs.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,278 root INFO creating build/bdist.linux-riscv64/wheel/webauthn/helpers/asn1 2026-03-01 17:04:10,279 root INFO copying build/lib/webauthn/helpers/asn1/__init__.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers/asn1 2026-03-01 17:04:10,280 root INFO copying build/lib/webauthn/helpers/asn1/android_key.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers/asn1 2026-03-01 17:04:10,281 root INFO copying build/lib/webauthn/helpers/pem_cert_bytes_to_open_ssl_x509.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,282 root INFO copying build/lib/webauthn/helpers/parse_registration_credential_json.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,284 root INFO copying build/lib/webauthn/helpers/parse_attestation_object.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,285 root INFO copying build/lib/webauthn/helpers/structs.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,287 root INFO creating build/bdist.linux-riscv64/wheel/webauthn/helpers/tpm 2026-03-01 17:04:10,288 root INFO copying build/lib/webauthn/helpers/tpm/map_tpm_manufacturer.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers/tpm 2026-03-01 17:04:10,289 root INFO copying build/lib/webauthn/helpers/tpm/__init__.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers/tpm 2026-03-01 17:04:10,290 root INFO copying build/lib/webauthn/helpers/tpm/parse_cert_info.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers/tpm 2026-03-01 17:04:10,291 root INFO copying build/lib/webauthn/helpers/tpm/structs.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers/tpm 2026-03-01 17:04:10,293 root INFO copying build/lib/webauthn/helpers/tpm/parse_pub_area.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers/tpm 2026-03-01 17:04:10,294 root INFO copying build/lib/webauthn/helpers/verify_safetynet_timestamp.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,295 root INFO copying build/lib/webauthn/helpers/snake_case_to_camel_case.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,296 root INFO copying build/lib/webauthn/helpers/parse_authentication_credential_json.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,297 root INFO copying build/lib/webauthn/helpers/parse_authenticator_data.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,299 root INFO copying build/lib/webauthn/helpers/base64url_to_bytes.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,300 root INFO copying build/lib/webauthn/helpers/validate_certificate_chain.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,301 root INFO copying build/lib/webauthn/helpers/parse_authentication_options_json.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,302 root INFO copying build/lib/webauthn/helpers/options_to_json_dict.py -> build/bdist.linux-riscv64/wheel/./webauthn/helpers 2026-03-01 17:04:10,303 root INFO running install_egg_info 2026-03-01 17:04:10,321 root INFO Copying webauthn.egg-info to build/bdist.linux-riscv64/wheel/./webauthn-2.7.1-py3.12.egg-info 2026-03-01 17:04:10,326 root INFO running install_scripts 2026-03-01 17:04:10,333 root INFO creating build/bdist.linux-riscv64/wheel/webauthn-2.7.1.dist-info/WHEEL 2026-03-01 17:04:10,335 wheel INFO creating '/home/buildozer/aports/community/py3-webauthn/src/py_webauthn-2.7.1/.dist/.tmp-se58h4vm/webauthn-2.7.1-py3-none-any.whl' and adding 'build/bdist.linux-riscv64/wheel' to it 2026-03-01 17:04:10,337 wheel INFO adding 'webauthn/__init__.py' 2026-03-01 17:04:10,339 wheel INFO adding 'webauthn/py.typed' 2026-03-01 17:04:10,340 wheel INFO adding 'webauthn/authentication/__init__.py' 2026-03-01 17:04:10,342 wheel INFO adding 'webauthn/authentication/generate_authentication_options.py' 2026-03-01 17:04:10,343 wheel INFO adding 'webauthn/authentication/verify_authentication_response.py' 2026-03-01 17:04:10,345 wheel INFO adding 'webauthn/helpers/__init__.py' 2026-03-01 17:04:10,347 wheel INFO adding 'webauthn/helpers/aaguid_to_string.py' 2026-03-01 17:04:10,348 wheel INFO adding 'webauthn/helpers/algorithms.py' 2026-03-01 17:04:10,350 wheel INFO adding 'webauthn/helpers/base64url_to_bytes.py' 2026-03-01 17:04:10,351 wheel INFO adding 'webauthn/helpers/bytes_to_base64url.py' 2026-03-01 17:04:10,352 wheel INFO adding 'webauthn/helpers/byteslike_to_bytes.py' 2026-03-01 17:04:10,354 wheel INFO adding 'webauthn/helpers/cose.py' 2026-03-01 17:04:10,355 wheel INFO adding 'webauthn/helpers/decode_credential_public_key.py' 2026-03-01 17:04:10,356 wheel INFO adding 'webauthn/helpers/decoded_public_key_to_cryptography.py' 2026-03-01 17:04:10,358 wheel INFO adding 'webauthn/helpers/encode_cbor.py' 2026-03-01 17:04:10,359 wheel INFO adding 'webauthn/helpers/exceptions.py' 2026-03-01 17:04:10,361 wheel INFO adding 'webauthn/helpers/generate_challenge.py' 2026-03-01 17:04:10,362 wheel INFO adding 'webauthn/helpers/generate_user_handle.py' 2026-03-01 17:04:10,363 wheel INFO adding 'webauthn/helpers/hash_by_alg.py' 2026-03-01 17:04:10,365 wheel INFO adding 'webauthn/helpers/known_root_certs.py' 2026-03-01 17:04:10,367 wheel INFO adding 'webauthn/helpers/options_to_json.py' 2026-03-01 17:04:10,368 wheel INFO adding 'webauthn/helpers/options_to_json_dict.py' 2026-03-01 17:04:10,369 wheel INFO adding 'webauthn/helpers/parse_attestation_object.py' 2026-03-01 17:04:10,371 wheel INFO adding 'webauthn/helpers/parse_attestation_statement.py' 2026-03-01 17:04:10,372 wheel INFO adding 'webauthn/helpers/parse_authentication_credential_json.py' 2026-03-01 17:04:10,374 wheel INFO adding 'webauthn/helpers/parse_authentication_options_json.py' 2026-03-01 17:04:10,375 wheel INFO adding 'webauthn/helpers/parse_authenticator_data.py' 2026-03-01 17:04:10,377 wheel INFO adding 'webauthn/helpers/parse_backup_flags.py' 2026-03-01 17:04:10,378 wheel INFO adding 'webauthn/helpers/parse_cbor.py' 2026-03-01 17:04:10,379 wheel INFO adding 'webauthn/helpers/parse_client_data_json.py' 2026-03-01 17:04:10,381 wheel INFO adding 'webauthn/helpers/parse_registration_credential_json.py' 2026-03-01 17:04:10,382 wheel INFO adding 'webauthn/helpers/parse_registration_options_json.py' 2026-03-01 17:04:10,384 wheel INFO adding 'webauthn/helpers/pem_cert_bytes_to_open_ssl_x509.py' 2026-03-01 17:04:10,385 wheel INFO adding 'webauthn/helpers/snake_case_to_camel_case.py' 2026-03-01 17:04:10,387 wheel INFO adding 'webauthn/helpers/structs.py' 2026-03-01 17:04:10,389 wheel INFO adding 'webauthn/helpers/validate_certificate_chain.py' 2026-03-01 17:04:10,390 wheel INFO adding 'webauthn/helpers/verify_safetynet_timestamp.py' 2026-03-01 17:04:10,392 wheel INFO adding 'webauthn/helpers/verify_signature.py' 2026-03-01 17:04:10,393 wheel INFO adding 'webauthn/helpers/asn1/__init__.py' 2026-03-01 17:04:10,395 wheel INFO adding 'webauthn/helpers/asn1/android_key.py' 2026-03-01 17:04:10,396 wheel INFO adding 'webauthn/helpers/tpm/__init__.py' 2026-03-01 17:04:10,398 wheel INFO adding 'webauthn/helpers/tpm/map_tpm_manufacturer.py' 2026-03-01 17:04:10,399 wheel INFO adding 'webauthn/helpers/tpm/parse_cert_info.py' 2026-03-01 17:04:10,401 wheel INFO adding 'webauthn/helpers/tpm/parse_pub_area.py' 2026-03-01 17:04:10,402 wheel INFO adding 'webauthn/helpers/tpm/structs.py' 2026-03-01 17:04:10,404 wheel INFO adding 'webauthn/registration/__init__.py' 2026-03-01 17:04:10,405 wheel INFO adding 'webauthn/registration/generate_registration_options.py' 2026-03-01 17:04:10,407 wheel INFO adding 'webauthn/registration/verify_registration_response.py' 2026-03-01 17:04:10,409 wheel INFO adding 'webauthn/registration/formats/__init__.py' 2026-03-01 17:04:10,410 wheel INFO adding 'webauthn/registration/formats/android_key.py' 2026-03-01 17:04:10,412 wheel INFO adding 'webauthn/registration/formats/android_safetynet.py' 2026-03-01 17:04:10,414 wheel INFO adding 'webauthn/registration/formats/apple.py' 2026-03-01 17:04:10,415 wheel INFO adding 'webauthn/registration/formats/fido_u2f.py' 2026-03-01 17:04:10,416 wheel INFO adding 'webauthn/registration/formats/packed.py' 2026-03-01 17:04:10,417 wheel INFO adding 'webauthn/registration/formats/tpm.py' 2026-03-01 17:04:10,419 wheel INFO adding 'webauthn-2.7.1.dist-info/licenses/LICENSE' 2026-03-01 17:04:10,421 wheel INFO adding 'webauthn-2.7.1.dist-info/METADATA' 2026-03-01 17:04:10,422 wheel INFO adding 'webauthn-2.7.1.dist-info/WHEEL' 2026-03-01 17:04:10,422 wheel INFO adding 'webauthn-2.7.1.dist-info/top_level.txt' 2026-03-01 17:04:10,424 wheel INFO adding 'webauthn-2.7.1.dist-info/RECORD' 2026-03-01 17:04:10,426 root INFO removing build/bdist.linux-riscv64/wheel 2026-03-01 17:04:10,435 gpep517 INFO The backend produced .dist/webauthn-2.7.1-py3-none-any.whl webauthn-2.7.1-py3-none-any.whl ============================= test session starts ============================== platform linux -- Python 3.12.12, pytest-8.4.2, pluggy-1.6.0 -- /home/buildozer/aports/community/py3-webauthn/src/py_webauthn-2.7.1/.testenv/bin/python3 cachedir: .pytest_cache rootdir: /home/buildozer/aports/community/py3-webauthn/src/py_webauthn-2.7.1 configfile: pyproject.toml collecting ... collected 183 items tests/test_aaguid_to_string.py::TestAAGUIDToString::test_converts_bytes_to_uuid_format PASSED [ 0%] tests/test_base64url_to_bytes.py::TestWebAuthnBase64URLToBytes::test_converts_base64url_string_to_buffer PASSED [ 1%] tests/test_bytes_subclass_support.py::TestWebAuthnBytesSubclassSupport::test_handles_bytes_subclasses PASSED [ 1%] tests/test_bytes_subclass_support.py::TestWebAuthnBytesSubclassSupport::test_handles_memoryviews PASSED [ 2%] tests/test_bytes_to_base64url.py::TestWebAuthnBytesToBase64URL::test_converts_buffer_to_base64url_string PASSED [ 2%] tests/test_decode_credential_public_key.py::TestDecodeCredentialPublicKey::test_decode_rsa_public_key PASSED [ 3%] tests/test_decode_credential_public_key.py::TestDecodeCredentialPublicKey::test_decode_uncompressed_ec2_public_key PASSED [ 3%] tests/test_decode_credential_public_key.py::TestDecodeCredentialPublicKey::test_decodes_ec2_public_key PASSED [ 4%] tests/test_generate_authentication_options.py::TestWebAuthnGenerateAttestationOptions::test_generates_options_with_custom_values PASSED [ 4%] tests/test_generate_authentication_options.py::TestWebAuthnGenerateAttestationOptions::test_generates_options_with_defaults PASSED [ 5%] tests/test_generate_authentication_options.py::TestWebAuthnGenerateAttestationOptions::test_raises_on_empty_rp_id PASSED [ 6%] tests/test_generate_challenge.py::TestWebAuthnGenerateChallenge::test_generates_byte_sequence PASSED [ 6%] tests/test_generate_challenge.py::TestWebAuthnGenerateChallenge::test_generates_unique_value_each_time PASSED [ 7%] tests/test_generate_registration_options.py::TestGenerateRegistrationOptions::test_generated_random_id_on_empty_user_id PASSED [ 7%] tests/test_generate_registration_options.py::TestGenerateRegistrationOptions::test_generates_options_with_custom_values PASSED [ 8%] tests/test_generate_registration_options.py::TestGenerateRegistrationOptions::test_generates_options_with_defaults PASSED [ 8%] tests/test_generate_registration_options.py::TestGenerateRegistrationOptions::test_raises_on_empty_rp_id PASSED [ 9%] tests/test_generate_registration_options.py::TestGenerateRegistrationOptions::test_raises_on_empty_rp_name PASSED [ 9%] tests/test_generate_registration_options.py::TestGenerateRegistrationOptions::test_raises_on_empty_user_name PASSED [ 10%] tests/test_generate_registration_options.py::TestGenerateRegistrationOptions::test_raises_on_non_bytes_user_id PASSED [ 10%] tests/test_generate_user_handle.py::TestWebAuthnGenerateUserHandle::test_generates_byte_sequence PASSED [ 11%] tests/test_generate_user_handle.py::TestWebAuthnGenerateUserHandle::test_generates_unique_value_each_time PASSED [ 12%] tests/test_map_tpm_manufacturer_id.py::TestWebAuthnGenerateUserHandle::test_handles_recognized_id PASSED [ 12%] tests/test_map_tpm_manufacturer_id.py::TestWebAuthnGenerateUserHandle::test_raises_on_unrecognized_id PASSED [ 13%] tests/test_options_to_json.py::TestWebAuthnOptionsToJSON::test_converts_authentication_options_to_JSON PASSED [ 13%] tests/test_options_to_json.py::TestWebAuthnOptionsToJSON::test_converts_registration_options_to_JSON PASSED [ 14%] tests/test_options_to_json.py::TestWebAuthnOptionsToJSON::test_includes_optional_value_when_set PASSED [ 14%] tests/test_options_to_json.py::TestWebAuthnOptionsToJSON::test_raises_on_bad_input PASSED [ 15%] tests/test_options_to_json_dict.py::TestWebAuthnOptionsToJSON::test_converts_authentication_options_to_JSON PASSED [ 15%] tests/test_options_to_json_dict.py::TestWebAuthnOptionsToJSON::test_converts_authentication_options_to_JSON_custom_bytes_encoder PASSED [ 16%] tests/test_options_to_json_dict.py::TestWebAuthnOptionsToJSON::test_converts_registration_options_to_JSON PASSED [ 16%] tests/test_parse_attestation_object.py::TestParseAttestationObject::test_can_parse_good_none_attestation_object PASSED [ 17%] tests/test_parse_attestation_object.py::TestParseAttestationObject::test_can_parse_good_packed_attestation_object PASSED [ 18%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_handles_authenticator_attachment PASSED [ 18%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_handles_bad_authenticator_attachment PASSED [ 19%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_handles_missing_user_handle PASSED [ 19%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_handles_user_handle PASSED [ 20%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_raises_on_invalid_credential_type PASSED [ 20%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_raises_on_missing_authenticator_data PASSED [ 21%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_raises_on_missing_client_data_json PASSED [ 21%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_raises_on_missing_id PASSED [ 22%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_raises_on_missing_raw_id PASSED [ 22%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_raises_on_missing_response PASSED [ 23%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_raises_on_missing_signature PASSED [ 24%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_raises_on_non_base64url_authenticator_data PASSED [ 24%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_raises_on_non_base64url_client_data_json PASSED [ 25%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_raises_on_non_base64url_raw_id PASSED [ 25%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_raises_on_non_base64url_signature PASSED [ 26%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_raises_on_non_dict_json PASSED [ 26%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_success_from_dict PASSED [ 27%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_success_from_str PASSED [ 27%] tests/test_parse_authentication_credential_json.py::TestParseClientDataJSON::test_validates_credential_type PASSED [ 28%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_raises_on_allow_credentials_entry_invalid_transports PASSED [ 28%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_raises_on_allow_credentials_entry_invalid_transports_entry PASSED [ 29%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_raises_on_allow_credentials_entry_missing_id PASSED [ 30%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_raises_on_invalid_user_verification PASSED [ 30%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_raises_on_missing_challenge PASSED [ 31%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_raises_on_missing_user_verification PASSED [ 31%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_raises_on_non_dict_json PASSED [ 32%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_returns_parsed_options_full PASSED [ 32%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_returns_parsed_options_simple PASSED [ 33%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_supports_json_string PASSED [ 33%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_supports_optional_allow_credentials PASSED [ 34%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_supports_optional_rp_id PASSED [ 34%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_supports_optional_timeout PASSED [ 35%] tests/test_parse_authentication_options.py::TestParseAuthenticationOptionsJSON::test_supports_options_to_json_output PASSED [ 36%] tests/test_parse_authenticator_data.py::TestWebAuthnParseAuthenticatorData::test_correctly_parses_attested_credential_data PASSED [ 36%] tests/test_parse_authenticator_data.py::TestWebAuthnParseAuthenticatorData::test_correctly_parses_simple PASSED [ 37%] tests/test_parse_authenticator_data.py::TestWebAuthnParseAuthenticatorData::test_parses_attested_credential_data_and_extension_data PASSED [ 37%] tests/test_parse_authenticator_data.py::TestWebAuthnParseAuthenticatorData::test_parses_backup_state_flags PASSED [ 38%] tests/test_parse_authenticator_data.py::TestWebAuthnParseAuthenticatorData::test_parses_bad_eddsa_auth_data PASSED [ 38%] tests/test_parse_authenticator_data.py::TestWebAuthnParseAuthenticatorData::test_parses_only_extension_data PASSED [ 39%] tests/test_parse_authenticator_data.py::TestWebAuthnParseAuthenticatorData::test_parses_uv_false PASSED [ 39%] tests/test_parse_backup_flags.py::TestParseBackupFlags::test_raises_on_invalid_backup_state_flags PASSED [ 40%] tests/test_parse_backup_flags.py::TestParseBackupFlags::test_returns_multi_device_backed_up PASSED [ 40%] tests/test_parse_backup_flags.py::TestParseBackupFlags::test_returns_multi_device_not_backed_up PASSED [ 41%] tests/test_parse_backup_flags.py::TestParseBackupFlags::test_returns_single_device_not_backed_up PASSED [ 42%] tests/test_parse_client_data_json.py::TestParseClientDataJSON::test_can_parse_attestation_client_data PASSED [ 42%] tests/test_parse_client_data_json.py::TestParseClientDataJSON::test_include_token_binding_when_present PASSED [ 43%] tests/test_parse_client_data_json.py::TestParseClientDataJSON::test_omit_cross_origin_if_not_present PASSED [ 43%] tests/test_parse_client_data_json.py::TestParseClientDataJSON::test_omit_id_when_missing_from_token_binding PASSED [ 44%] tests/test_parse_client_data_json.py::TestParseClientDataJSON::test_omit_token_binding_if_not_present PASSED [ 44%] tests/test_parse_client_data_json.py::TestParseClientDataJSON::test_raises_exception_on_bad_json PASSED [ 45%] tests/test_parse_client_data_json.py::TestParseClientDataJSON::test_require_status_in_token_binding_when_present PASSED [ 45%] tests/test_parse_client_data_json.py::TestParseClientDataJSON::test_requires_challenge PASSED [ 46%] tests/test_parse_client_data_json.py::TestParseClientDataJSON::test_requires_origin PASSED [ 46%] tests/test_parse_client_data_json.py::TestParseClientDataJSON::test_requires_type PASSED [ 47%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_handles_authenticator_attachment PASSED [ 48%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_handles_bad_authenticator_attachment PASSED [ 48%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_handles_missing_transports PASSED [ 49%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_ignores_non_list_transports PASSED [ 49%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_parses_transports PASSED [ 50%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_raises_on_invalid_credential_type PASSED [ 50%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_raises_on_missing_attestation_object PASSED [ 51%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_raises_on_missing_client_data_json PASSED [ 51%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_raises_on_missing_id PASSED [ 52%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_raises_on_missing_raw_id PASSED [ 53%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_raises_on_missing_response PASSED [ 53%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_raises_on_non_base64url_attestation_object PASSED [ 54%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_raises_on_non_base64url_client_data_json PASSED [ 54%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_raises_on_non_base64url_raw_id PASSED [ 55%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_raises_on_non_dict_json PASSED [ 55%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_success_from_dict PASSED [ 56%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_success_from_str PASSED [ 56%] tests/test_parse_registration_credential_json.py::TestParseRegistrationCredentialJSON::test_validates_credential_type PASSED [ 57%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_exclude_credentials_entry_invalid_transports PASSED [ 57%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_exclude_credentials_entry_invalid_transports_entry PASSED [ 58%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_exclude_credentials_entry_missing_id PASSED [ 59%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_invalid_authenticator_selection_authenticator_attachment PASSED [ 59%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_invalid_authenticator_selection_require_resident_key PASSED [ 60%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_invalid_authenticator_selection_resident_key PASSED [ 60%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_invalid_authenticator_selection_user_verification PASSED [ 61%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_invalid_hints_assignment PASSED [ 61%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_invalid_hints_entry PASSED [ 62%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_malformed_rp_id PASSED [ 62%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_missing_attestation PASSED [ 63%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_missing_challenge PASSED [ 63%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_missing_missing_rp_name PASSED [ 64%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_missing_pub_key_cred_params PASSED [ 65%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_missing_rp PASSED [ 65%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_missing_user PASSED [ 66%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_missing_user_display_name PASSED [ 66%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_missing_user_id PASSED [ 67%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_missing_user_name PASSED [ 67%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_non_dict_json PASSED [ 68%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_pub_key_cred_params_entry_with_invalid_alg PASSED [ 68%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_raises_on_unrecognized_attestation PASSED [ 69%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_returns_parsed_options_full PASSED [ 69%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_returns_parsed_options_simple PASSED [ 70%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_supports_empty_hints PASSED [ 71%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_supports_json_string PASSED [ 71%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_supports_missing_timeout PASSED [ 72%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_supports_optional_authenticator_selection PASSED [ 72%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_supports_optional_exclude_credentials PASSED [ 73%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_supports_optional_hints PASSED [ 73%] tests/test_parse_registration_options_json.py::TestParseRegistrationOptionsJSON::test_supports_options_to_json_output PASSED [ 74%] tests/test_snake_case_to_camel_case.py::TestWebAuthnSnakeCaseToCamelCase::test_converts_client_data_json PASSED [ 74%] tests/test_snake_case_to_camel_case.py::TestWebAuthnSnakeCaseToCamelCase::test_converts_snake_case_to_camel_case PASSED [ 75%] tests/test_structs.py::TestStructsRegistrationCredential::test_parse_registration_credential_json PASSED [ 75%] tests/test_tpm_parse_cert_info.py::TestWebAuthnTPMParseCertInfo::test_properly_parses_cert_info_bytes PASSED [ 76%] tests/test_tpm_parse_pub_area.py::TestWebAuthnTPMParsePubArea::test_properly_parses_pub_area_bytes PASSED [ 77%] tests/test_validate_certificate_chain.py::TestValidateCertificateChain::test_includes_original_exception_when_raising PASSED [ 77%] tests/test_validate_certificate_chain.py::TestValidateCertificateChain::test_passes_on_empty_root_certs_array PASSED [ 78%] tests/test_validate_certificate_chain.py::TestValidateCertificateChain::test_passes_on_no_root_certs PASSED [ 78%] tests/test_validate_certificate_chain.py::TestValidateCertificateChain::test_throws_on_bad_root_cert PASSED [ 79%] tests/test_validate_certificate_chain.py::TestValidateCertificateChain::test_validates_certificate_chain PASSED [ 79%] tests/test_verify_authentication_response.py::TestVerifyAuthenticationResponse::test_raises_exception_on_incorrect_public_key PASSED [ 80%] tests/test_verify_authentication_response.py::TestVerifyAuthenticationResponse::test_raises_exception_on_uv_required_but_false PASSED [ 80%] tests/test_verify_authentication_response.py::TestVerifyAuthenticationResponse::test_supports_already_parsed_credential PASSED [ 81%] tests/test_verify_authentication_response.py::TestVerifyAuthenticationResponse::test_supports_dict_credential PASSED [ 81%] tests/test_verify_authentication_response.py::TestVerifyAuthenticationResponse::test_supports_multiple_expected_origins PASSED [ 82%] tests/test_verify_authentication_response.py::TestVerifyAuthenticationResponse::test_verify_authentication_response_with_EC2_public_key PASSED [ 83%] tests/test_verify_authentication_response.py::TestVerifyAuthenticationResponse::test_verify_authentication_response_with_OKP_public_key PASSED [ 83%] tests/test_verify_authentication_response.py::TestVerifyAuthenticationResponse::test_verify_authentication_response_with_RSA_public_key PASSED [ 84%] tests/test_verify_registration_response.py::TestVerifyRegistrationResponse::test_raises_exception_on_unsupported_attestation_type PASSED [ 84%] tests/test_verify_registration_response.py::TestVerifyRegistrationResponse::test_raises_useful_error_on_bad_attestation_object PASSED [ 85%] tests/test_verify_registration_response.py::TestVerifyRegistrationResponse::test_raises_when_root_cert_invalid_for_response PASSED [ 85%] tests/test_verify_registration_response.py::TestVerifyRegistrationResponse::test_supports_already_parsed_credential PASSED [ 86%] tests/test_verify_registration_response.py::TestVerifyRegistrationResponse::test_supports_dict_credential PASSED [ 86%] tests/test_verify_registration_response.py::TestVerifyRegistrationResponse::test_supports_multiple_expected_origins PASSED [ 87%] tests/test_verify_registration_response.py::TestVerifyRegistrationResponse::test_verifies_none_attestation_response PASSED [ 87%] tests/test_verify_registration_response.py::TestVerifyRegistrationResponse::test_verifies_registration_over_cable PASSED [ 88%] tests/test_verify_registration_response.py::TestVerifyRegistrationResponse::test_verifies_response_optional_user_presence PASSED [ 89%] tests/test_verify_registration_response_android_key.py::TestVerifyRegistrationResponseAndroidKey::test_verify_attestation_android_key_hardware_authority PASSED [ 89%] tests/test_verify_registration_response_android_safetynet.py::TestVerifyRegistrationResponseAndroidSafetyNet::test_raise_attestation_android_safetynet_basic_integrity_false_cts_profile_match_false PASSED [ 90%] tests/test_verify_registration_response_android_safetynet.py::TestVerifyRegistrationResponseAndroidSafetyNet::test_verify_attestation_android_safetynet PASSED [ 90%] tests/test_verify_registration_response_android_safetynet.py::TestVerifyRegistrationResponseAndroidSafetyNet::test_verify_attestation_android_safetynet_basic_integrity_true_cts_profile_match_false PASSED [ 91%] tests/test_verify_registration_response_apple.py::TestVerifyRegistrationResponseApple::test_verify_attestation_apple_passkey PASSED [ 91%] tests/test_verify_registration_response_fido_u2f.py::TestVerifyRegistrationResponseFIDOU2F::test_verify_attestation_from_fido_conformance PASSED [ 92%] tests/test_verify_registration_response_fido_u2f.py::TestVerifyRegistrationResponseFIDOU2F::test_verify_attestation_from_yubikey_firefox PASSED [ 92%] tests/test_verify_registration_response_fido_u2f.py::TestVerifyRegistrationResponseFIDOU2F::test_verify_attestation_with_unsupported_token_binding PASSED [ 93%] tests/test_verify_registration_response_fido_u2f.py::TestVerifyRegistrationResponseFIDOU2F::test_verify_attestation_with_unsupported_token_binding_status PASSED [ 93%] tests/test_verify_registration_response_packed.py::TestVerifyRegistrationResponsePacked::test_verify_attestation_from_yubikey_firefox PASSED [ 94%] tests/test_verify_registration_response_packed.py::TestVerifyRegistrationResponsePacked::test_verify_attestation_with_okp_public_key PASSED [ 95%] tests/test_verify_registration_response_tpm.py::TestVerifyRegistrationResponseTPM::test_verify_attestation_dell_xps_13 PASSED [ 95%] tests/test_verify_registration_response_tpm.py::TestVerifyRegistrationResponseTPM::test_verify_attestation_lenovo_carbon_x1 PASSED [ 96%] tests/test_verify_registration_response_tpm.py::TestVerifyRegistrationResponseTPM::test_verify_attestation_surface_pro_4 PASSED [ 96%] tests/test_verify_registration_response_tpm.py::TestVerifyRegistrationResponseTPM::test_verify_tpm_with_ecc_public_area_type PASSED [ 97%] tests/test_verify_safetynet_timestamp.py::TestVerifySafetyNetTimestamp::test_does_not_raise_on_last_possible_millisecond PASSED [ 97%] tests/test_verify_safetynet_timestamp.py::TestVerifySafetyNetTimestamp::test_does_not_raise_on_timestamp_slightly_in_future PASSED [ 98%] tests/test_verify_safetynet_timestamp.py::TestVerifySafetyNetTimestamp::test_does_not_raise_on_timestamp_slightly_in_past PASSED [ 98%] tests/test_verify_safetynet_timestamp.py::TestVerifySafetyNetTimestamp::test_raises_on_timestamp_too_far_in_future PASSED [ 99%] tests/test_verify_safetynet_timestamp.py::TestVerifySafetyNetTimestamp::test_raises_on_timestamp_too_far_in_past PASSED [100%] ============================= 183 passed in 3.82s ============================== >>> py3-webauthn: Entering fakeroot... >>> py3-webauthn-pyc*: Running split function pyc... 'usr/lib/python3.12/site-packages/webauthn/authentication/__pycache__' -> '/home/buildozer/aports/community/py3-webauthn/pkg/py3-webauthn-pyc/usr/lib/python3.12/site-packages/webauthn/authentication/__pycache__' 'usr/lib/python3.12/site-packages/webauthn/registration/formats/__pycache__' -> '/home/buildozer/aports/community/py3-webauthn/pkg/py3-webauthn-pyc/usr/lib/python3.12/site-packages/webauthn/registration/formats/__pycache__' 'usr/lib/python3.12/site-packages/webauthn/registration/__pycache__' -> '/home/buildozer/aports/community/py3-webauthn/pkg/py3-webauthn-pyc/usr/lib/python3.12/site-packages/webauthn/registration/__pycache__' 'usr/lib/python3.12/site-packages/webauthn/__pycache__' -> '/home/buildozer/aports/community/py3-webauthn/pkg/py3-webauthn-pyc/usr/lib/python3.12/site-packages/webauthn/__pycache__' 'usr/lib/python3.12/site-packages/webauthn/helpers/__pycache__' -> '/home/buildozer/aports/community/py3-webauthn/pkg/py3-webauthn-pyc/usr/lib/python3.12/site-packages/webauthn/helpers/__pycache__' 'usr/lib/python3.12/site-packages/webauthn/helpers/asn1/__pycache__' -> '/home/buildozer/aports/community/py3-webauthn/pkg/py3-webauthn-pyc/usr/lib/python3.12/site-packages/webauthn/helpers/asn1/__pycache__' 'usr/lib/python3.12/site-packages/webauthn/helpers/tpm/__pycache__' -> '/home/buildozer/aports/community/py3-webauthn/pkg/py3-webauthn-pyc/usr/lib/python3.12/site-packages/webauthn/helpers/tpm/__pycache__' >>> py3-webauthn-pyc*: Preparing subpackage py3-webauthn-pyc... >>> py3-webauthn-pyc*: Running postcheck for py3-webauthn-pyc >>> py3-webauthn*: Running postcheck for py3-webauthn >>> py3-webauthn*: Preparing package py3-webauthn... >>> py3-webauthn-pyc*: Tracing dependencies... python3~3.12 >>> py3-webauthn-pyc*: Package size: 200.8 KB >>> py3-webauthn-pyc*: Compressing data... >>> py3-webauthn-pyc*: Create checksum... >>> py3-webauthn-pyc*: Create py3-webauthn-pyc-2.7.1-r0.apk >>> py3-webauthn*: Tracing dependencies... py3-asn1 py3-cbor2 py3-openssl py3-cryptography python3~3.12 >>> py3-webauthn*: Package size: 201.3 KB >>> py3-webauthn*: Compressing data... >>> py3-webauthn*: Create checksum... >>> py3-webauthn*: Create py3-webauthn-2.7.1-r0.apk >>> py3-webauthn: Build complete at Sun, 01 Mar 2026 17:04:19 +0000 elapsed time 0h 0m 17s >>> py3-webauthn: Cleaning up srcdir >>> py3-webauthn: Cleaning up pkgdir >>> py3-webauthn: Cleaning up tmpdir >>> py3-webauthn: Uninstalling dependencies... ( 1/48) Purging .makedepends-py3-webauthn (20260301.170405) ( 2/48) Purging py3-asn1-pyc (0.6.1-r0) ( 3/48) Purging py3-asn1 (0.6.1-r0) ( 4/48) Purging py3-cbor2-pyc (5.6.5-r0) ( 5/48) Purging py3-cbor2 (5.6.5-r0) ( 6/48) Purging py3-openssl-pyc (25.3.0-r0) ( 7/48) Purging py3-openssl (25.3.0-r0) ( 8/48) Purging py3-typing-extensions-pyc (4.15.0-r0) ( 9/48) Purging py3-typing-extensions (4.15.0-r0) (10/48) Purging py3-cryptography-pyc (46.0.3-r0) (11/48) Purging py3-cryptography (46.0.3-r0) (12/48) Purging py3-cffi-pyc (1.17.1-r1) (13/48) Purging py3-cffi (1.17.1-r1) (14/48) Purging py3-cparser-pyc (2.22-r1) (15/48) Purging py3-cparser (2.22-r1) (16/48) Purging py3-setuptools-pyc (80.9.0-r2) (17/48) Purging py3-setuptools (80.9.0-r2) (18/48) Purging py3-gpep517-pyc (19-r1) (19/48) Purging py3-gpep517 (19-r1) (20/48) Purging py3-installer-pyc (0.7.0-r2) (21/48) Purging py3-installer (0.7.0-r2) (22/48) Purging py3-wheel-pyc (0.46.1-r0) (23/48) Purging py3-wheel (0.46.1-r0) (24/48) Purging py3-pytest-pyc (8.4.2-r1) (25/48) Purging py3-pytest (8.4.2-r1) (26/48) Purging py3-iniconfig-pyc (2.3.0-r0) (27/48) Purging py3-iniconfig (2.3.0-r0) (28/48) Purging py3-packaging-pyc (25.0-r0) (29/48) Purging py3-packaging (25.0-r0) (30/48) Purging py3-parsing-pyc (3.2.5-r0) (31/48) Purging py3-parsing (3.2.5-r0) (32/48) Purging py3-pluggy-pyc (1.6.0-r0) (33/48) Purging py3-pluggy (1.6.0-r0) (34/48) Purging py3-py-pyc (1.11.0-r4) (35/48) Purging py3-py (1.11.0-r4) (36/48) Purging py3-pygments-pyc (2.19.2-r0) (37/48) Purging py3-pygments (2.19.2-r0) (38/48) Purging python3-pyc (3.12.12-r0) (39/48) Purging python3-pycache-pyc0 (3.12.12-r0) (40/48) Purging pyc (3.12.12-r0) (41/48) Purging python3 (3.12.12-r0) (42/48) Purging gdbm (1.26-r0) (43/48) Purging libbz2 (1.0.8-r6) (44/48) Purging libffi (3.5.2-r0) (45/48) Purging libpanelw (6.5_p20251123-r0) (46/48) Purging mpdecimal (4.0.1-r0) (47/48) Purging sqlite-libs (3.51.2-r0) (48/48) Purging xz-libs (5.8.2-r0) Executing busybox-1.37.0-r30.trigger OK: 666.7 MiB in 105 packages >>> py3-webauthn: Updating the community/riscv64 repository index... >>> py3-webauthn: Signing the index...