>>> py3-ovos-utils: Checking sanity of /home/patrycja/aports/testing/py3-ovos-utils/APKBUILD... >>> py3-ovos-utils: Cleaning up srcdir >>> py3-ovos-utils: Cleaning up pkgdir >>> py3-ovos-utils: Cleaning up tmpdir >>> py3-ovos-utils: Fetching https://github.com/OpenVoiceOS/ovos_utils/archive/V0.0.36/ovos_utils-V0.0.36.tar.gz >>> py3-ovos-utils: Fetching https://github.com/OpenVoiceOS/ovos_utils/archive/V0.0.36/ovos_utils-V0.0.36.tar.gz >>> py3-ovos-utils: Checking sha512sums... ovos_utils-V0.0.36.tar.gz: OK >>> py3-ovos-utils: Preparing build chroot... fetch https://dev.alpinelinux.org/~ncopa/py3.12/testing/x86_64/APKINDEX.tar.gz WARNING: updating and opening https://dev.alpinelinux.org/~ncopa/py3.12/testing: No such file or directory (1/197) Installing musl (1.2.5-r0) (2/197) Installing ca-certificates-bundle (20240226-r0) (3/197) Installing libcrypto3 (3.2.1-r1) (4/197) Installing libssl3 (3.2.1-r1) (5/197) Installing zlib (1.3.1-r0) (6/197) Installing apk-tools (2.14.3-r1) (7/197) Installing libattr (2.5.2-r0) (8/197) Installing attr (2.5.2-r0) (9/197) Installing libcap2 (2.69-r1) (10/197) Installing libcap-getcap (2.69-r1) (11/197) Installing fakeroot (1.33-r0) (12/197) Installing scanelf (1.3.7-r2) (13/197) Installing musl-utils (1.2.5-r0) (14/197) Installing libgcc (13.2.1_git20240309-r0) (15/197) Installing libstdc++ (13.2.1_git20240309-r0) (16/197) Installing lzip (1.24.1-r0) (17/197) Installing openssl (3.2.1-r1) (18/197) Installing patch (2.7.6-r10) (19/197) Installing pkgconf (2.2.0-r0) (20/197) Installing libacl (2.3.2-r0) (21/197) Installing tar (1.35-r2) (22/197) Installing busybox (1.36.1-r25) Executing busybox-1.36.1-r25.post-install (23/197) Installing ssl_client (1.36.1-r25) (24/197) Installing busybox-binsh (1.36.1-r25) (25/197) Installing abuild (3.12.0-r5) Executing abuild-3.12.0-r5.pre-install (26/197) Installing abuild-sudo (3.12.0-r5) (27/197) Installing alpine-baselayout-data (3.6.3-r0) (28/197) Installing alpine-baselayout (3.6.3-r0) Executing alpine-baselayout-3.6.3-r0.pre-install Executing alpine-baselayout-3.6.3-r0.post-install (29/197) Installing ifupdown-ng (0.12.1-r5) (30/197) Installing openrc (0.54-r0) Executing openrc-0.54-r0.post-install (31/197) Installing mdev-conf (4.6-r0) (32/197) Installing busybox-mdev-openrc (1.36.1-r25) (33/197) Installing alpine-conf (3.17.2-r0) (34/197) Installing alpine-keys (2.4-r1) (35/197) Installing alpine-release (3.20.0_alpha20240329-r0) (36/197) Installing busybox-openrc (1.36.1-r25) (37/197) Installing busybox-suid (1.36.1-r25) (38/197) Installing alpine-base (3.20.0_alpha20240329-r0) (39/197) Installing jansson (2.14-r4) (40/197) Installing zstd-libs (1.5.6-r0) (41/197) Installing binutils (2.42-r0) (42/197) Installing libmagic (5.45-r1) (43/197) Installing file (5.45-r1) (44/197) Installing libgomp (13.2.1_git20240309-r0) (45/197) Installing libatomic (13.2.1_git20240309-r0) (46/197) Installing gmp (6.3.0-r0) (47/197) Installing isl26 (0.26-r1) (48/197) Installing mpfr4 (4.2.1-r0) (49/197) Installing mpc1 (1.3.1-r1) (50/197) Installing gcc (13.2.1_git20240309-r0) (51/197) Installing libstdc++-dev (13.2.1_git20240309-r0) (52/197) Installing musl-dev (1.2.5-r0) (53/197) Installing g++ (13.2.1_git20240309-r0) (54/197) Installing make (4.4.1-r2) (55/197) Installing fortify-headers (1.1-r3) (56/197) Installing build-base (0.5-r3) (57/197) Installing hiredis (1.2.0-r0) (58/197) Installing libxxhash (0.8.2-r2) (59/197) Installing ccache (4.9.1-r0) (60/197) Installing ca-certificates (20240226-r0) (61/197) Installing brotli-libs (1.1.0-r2) (62/197) Installing c-ares (1.27.0-r0) (63/197) Installing libunistring (1.2-r0) (64/197) Installing libidn2 (2.3.7-r0) (65/197) Installing nghttp2-libs (1.60.0-r0) (66/197) Installing libpsl (0.21.5-r1) (67/197) Installing libcurl (8.7.1-r0) (68/197) Installing libexpat (2.6.2-r0) (69/197) Installing pcre2 (10.43-r0) (70/197) Installing git (2.44.0-r2) (71/197) Installing git-init-template (2.44.0-r2) (72/197) Installing libbz2 (1.0.8-r6) (73/197) Installing libffi (3.4.6-r0) (74/197) Installing gdbm (1.23-r1) (75/197) Installing xz-libs (5.6.1-r2) (76/197) Installing mpdecimal (4.0.0-r0) (77/197) Installing ncurses-terminfo-base (6.4_p20240309-r0) (78/197) Installing libncursesw (6.4_p20240309-r0) (79/197) Installing libpanelw (6.4_p20240309-r0) (80/197) Installing readline (8.2.10-r0) (81/197) Installing sqlite-libs (3.45.2-r0) (82/197) Installing python3 (3.12.2-r0) (83/197) Installing python3-pycache-pyc0 (3.12.2-r0) (84/197) Installing pyc (3.12.2-r0) (85/197) Installing py3-six (1.16.0-r9) (86/197) Installing py3-six-pyc (1.16.0-r9) (87/197) Installing py3-dateutil-pyc (2.9.0-r1) (88/197) Installing python3-pyc (3.12.2-r0) (89/197) Installing py3-dateutil (2.9.0-r1) (90/197) Installing py3-installer (0.7.0-r2) (91/197) Installing py3-installer-pyc (0.7.0-r2) (92/197) Installing py3-gpep517 (15-r2) (93/197) Installing py3-gpep517-pyc (15-r2) (94/197) Installing py3-filelock (3.13.1-r1) (95/197) Installing py3-filelock-pyc (3.13.1-r1) (96/197) Installing py3-memory-tempfile (2.2.3-r4) (97/197) Installing py3-memory-tempfile-pyc (2.2.3-r4) (98/197) Installing py3-combo-lock (0.2.6-r2) (99/197) Installing py3-combo-lock-pyc (0.2.6-r2) (100/197) Installing py3-json-database (0.7.0-r3) (101/197) Installing py3-json-database-pyc (0.7.0-r3) (102/197) Installing py3-kthread (0.2.3-r2) (103/197) Installing py3-kthread-pyc (0.2.3-r2) (104/197) Installing py3-ptyprocess (0.7.0-r6) (105/197) Installing py3-ptyprocess-pyc (0.7.0-r6) (106/197) Installing py3-pexpect (4.9-r1) (107/197) Installing py3-pexpect-pyc (4.9-r1) (108/197) Installing py3-async_generator (1.10-r6) (109/197) Installing py3-async_generator-pyc (1.10-r6) (110/197) Installing py3-attrs (23.2.0-r1) (111/197) Installing py3-attrs-pyc (23.2.0-r1) (112/197) Installing py3-idna (3.6-r1) (113/197) Installing py3-idna-pyc (3.6-r1) (114/197) Installing py3-cparser (2.21-r5) (115/197) Installing py3-cparser-pyc (2.21-r5) (116/197) Installing py3-cffi (1.16.0-r1) (117/197) Installing py3-cffi-pyc (1.16.0-r1) (118/197) Installing py3-cryptography (42.0.5-r1) (119/197) Installing py3-cryptography-pyc (42.0.5-r1) (120/197) Installing py3-openssl (24.1.0-r1) (121/197) Installing py3-openssl-pyc (24.1.0-r1) (122/197) Installing py3-outcome (1.3.0-r1) (123/197) Installing py3-outcome-pyc (1.3.0-r1) (124/197) Installing py3-curio (1.6-r2) (125/197) Installing py3-curio-pyc (1.6-r2) (126/197) Installing py3-sniffio (1.3.1-r1) (127/197) Installing py3-sniffio-pyc (1.3.1-r1) (128/197) Installing py3-sortedcontainers (2.4.0-r5) (129/197) Installing py3-sortedcontainers-pyc (2.4.0-r5) (130/197) Installing py3-trio (0.25.0-r1) (131/197) Installing py3-trio-pyc (0.25.0-r1) (132/197) Installing py3-zope-interface (6.0-r1) (133/197) Installing py3-zope-interface-pyc (6.0-r1) (134/197) Installing py3-constantly (23.10.4-r1) (135/197) Installing py3-constantly-pyc (23.10.4-r1) (136/197) Installing py3-incremental (22.10.0-r3) (137/197) Installing py3-incremental-pyc (22.10.0-r3) (138/197) Installing py3-automat (22.10.0-r3) (139/197) Installing py3-automat-pyc (22.10.0-r3) (140/197) Installing py3-hyperlink (21.0.0-r5) (141/197) Installing py3-hyperlink-pyc (21.0.0-r5) (142/197) Installing py3-typing-extensions (4.11.0-r0) (143/197) Installing py3-typing-extensions-pyc (4.11.0-r0) (144/197) Installing py3-pyhamcrest (2.1.0-r1) (145/197) Installing py3-pyhamcrest-pyc (2.1.0-r1) (146/197) Installing py3-asn1 (0.6.0-r0) (147/197) Installing py3-asn1-pyc (0.6.0-r0) (148/197) Installing py3-asn1-modules (0.3.0-r2) (149/197) Installing py3-asn1-modules-pyc (0.3.0-r2) (150/197) Installing py3-service_identity (24.1.0-r1) (151/197) Installing py3-service_identity-pyc (24.1.0-r1) (152/197) Installing py3-pyserial (3.5-r7) (153/197) Installing py3-pyserial-pyc (3.5-r7) (154/197) Installing py3-hyperframe (6.0.1-r4) (155/197) Installing py3-hyperframe-pyc (6.0.1-r4) (156/197) Installing py3-hpack (4.0.0-r9) (157/197) Installing py3-hpack-pyc (4.0.0-r9) (158/197) Installing py3-h2 (4.1.0-r3) (159/197) Installing py3-h2-pyc (4.1.0-r3) (160/197) Installing py3-parsing (3.1.2-r1) (161/197) Installing py3-parsing-pyc (3.1.2-r1) (162/197) Installing py3-packaging (24.0-r1) (163/197) Installing py3-packaging-pyc (24.0-r1) (164/197) Installing py3-setuptools (69.2.0-r1) (165/197) Installing py3-setuptools-pyc (69.2.0-r1) (166/197) Installing py3-twisted (22.10.0-r5) (167/197) Installing py3-twisted-pyc (22.10.0-r5) (168/197) Installing py3-vcversioner (2.16.0.0-r8) (169/197) Installing py3-vcversioner-pyc (2.16.0.0-r8) (170/197) Installing py3-pyee (11.1.0-r1) (171/197) Installing py3-pyee-pyc (11.1.0-r1) (172/197) Installing py3-iniconfig (2.0.0-r1) (173/197) Installing py3-iniconfig-pyc (2.0.0-r1) (174/197) Installing py3-pluggy (1.4.0-r1) (175/197) Installing py3-pluggy-pyc (1.4.0-r1) (176/197) Installing py3-py (1.11.0-r3) (177/197) Installing py3-py-pyc (1.11.0-r3) (178/197) Installing py3-pytest (8.1.1-r1) (179/197) Installing py3-pytest-pyc (8.1.1-r1) (180/197) Installing py3-rapidfuzz (3.6.1-r1) (181/197) Installing py3-rapidfuzz-pyc (3.6.1-r1) (182/197) Installing py3-certifi (2024.2.2-r1) (183/197) Installing py3-certifi-pyc (2024.2.2-r1) (184/197) Installing py3-charset-normalizer (3.3.2-r1) (185/197) Installing py3-charset-normalizer-pyc (3.3.2-r1) (186/197) Installing py3-urllib3 (1.26.18-r1) (187/197) Installing py3-urllib3-pyc (1.26.18-r1) (188/197) Installing py3-requests (2.31.0-r2) (189/197) Installing py3-requests-pyc (2.31.0-r2) (190/197) Installing yaml (0.2.5-r2) (191/197) Installing py3-yaml (6.0.1-r3) (192/197) Installing py3-yaml-pyc (6.0.1-r3) (193/197) Installing py3-watchdog (4.0.0-r1) (194/197) Installing py3-watchdog-pyc (4.0.0-r1) (195/197) Installing py3-wheel (0.42.0-r1) (196/197) Installing py3-wheel-pyc (0.42.0-r1) (197/197) Installing tini (0.19.0-r3) Executing busybox-1.36.1-r25.trigger Executing ca-certificates-20240226-r0.trigger OK: 351 MiB in 197 packages >>> py3-ovos-utils: Fetching https://github.com/OpenVoiceOS/ovos_utils/archive/V0.0.36/ovos_utils-V0.0.36.tar.gz >>> py3-ovos-utils: Checking sha512sums... ovos_utils-V0.0.36.tar.gz: OK >>> py3-ovos-utils: Unpacking /var/cache/distfiles/ovos_utils-V0.0.36.tar.gz... 2024-04-06 19:08:37,060 gpep517 INFO Building wheel via backend setuptools.build_meta:__legacy__ 2024-04-06 19:08:37,086 root INFO running bdist_wheel 2024-04-06 19:08:37,104 root INFO running build 2024-04-06 19:08:37,104 root INFO running build_py 2024-04-06 19:08:37,108 root INFO creating build 2024-04-06 19:08:37,108 root INFO creating build/lib 2024-04-06 19:08:37,108 root INFO creating build/lib/ovos_utils 2024-04-06 19:08:37,109 root INFO copying ovos_utils/log.py -> build/lib/ovos_utils 2024-04-06 19:08:37,109 root INFO copying ovos_utils/version.py -> build/lib/ovos_utils 2024-04-06 19:08:37,109 root INFO copying ovos_utils/metrics.py -> build/lib/ovos_utils 2024-04-06 19:08:37,109 root INFO copying ovos_utils/json_helper.py -> build/lib/ovos_utils 2024-04-06 19:08:37,109 root INFO copying ovos_utils/parse.py -> build/lib/ovos_utils 2024-04-06 19:08:37,109 root INFO copying ovos_utils/security.py -> build/lib/ovos_utils 2024-04-06 19:08:37,109 root INFO copying ovos_utils/messagebus.py -> build/lib/ovos_utils 2024-04-06 19:08:37,110 root INFO copying ovos_utils/xml_helper.py -> build/lib/ovos_utils 2024-04-06 19:08:37,110 root INFO copying ovos_utils/bracket_expansion.py -> build/lib/ovos_utils 2024-04-06 19:08:37,110 root INFO copying ovos_utils/dialog.py -> build/lib/ovos_utils 2024-04-06 19:08:37,110 root INFO copying ovos_utils/time.py -> build/lib/ovos_utils 2024-04-06 19:08:37,110 root INFO copying ovos_utils/signal.py -> build/lib/ovos_utils 2024-04-06 19:08:37,110 root INFO copying ovos_utils/system.py -> build/lib/ovos_utils 2024-04-06 19:08:37,110 root INFO copying ovos_utils/smtp_utils.py -> build/lib/ovos_utils 2024-04-06 19:08:37,111 root INFO copying ovos_utils/process_utils.py -> build/lib/ovos_utils 2024-04-06 19:08:37,111 root INFO copying ovos_utils/ovos_service_api.py -> build/lib/ovos_utils 2024-04-06 19:08:37,111 root INFO copying ovos_utils/events.py -> build/lib/ovos_utils 2024-04-06 19:08:37,111 root INFO copying ovos_utils/ssml.py -> build/lib/ovos_utils 2024-04-06 19:08:37,111 root INFO copying ovos_utils/gui.py -> build/lib/ovos_utils 2024-04-06 19:08:37,111 root INFO copying ovos_utils/fingerprinting.py -> build/lib/ovos_utils 2024-04-06 19:08:37,111 root INFO copying ovos_utils/device_input.py -> build/lib/ovos_utils 2024-04-06 19:08:37,112 root INFO copying ovos_utils/__init__.py -> build/lib/ovos_utils 2024-04-06 19:08:37,112 root INFO copying ovos_utils/xdg_utils.py -> build/lib/ovos_utils 2024-04-06 19:08:37,112 root INFO copying ovos_utils/network_utils.py -> build/lib/ovos_utils 2024-04-06 19:08:37,112 root INFO copying ovos_utils/file_utils.py -> build/lib/ovos_utils 2024-04-06 19:08:37,112 root INFO copying ovos_utils/configuration.py -> build/lib/ovos_utils 2024-04-06 19:08:37,112 root INFO creating build/lib/ovos_utils/intents 2024-04-06 19:08:37,112 root INFO copying ovos_utils/intents/intent_service_interface.py -> build/lib/ovos_utils/intents 2024-04-06 19:08:37,113 root INFO copying ovos_utils/intents/converse.py -> build/lib/ovos_utils/intents 2024-04-06 19:08:37,113 root INFO copying ovos_utils/intents/__init__.py -> build/lib/ovos_utils/intents 2024-04-06 19:08:37,113 root INFO copying ovos_utils/intents/layers.py -> build/lib/ovos_utils/intents 2024-04-06 19:08:37,113 root INFO creating build/lib/ovos_utils/sound 2024-04-06 19:08:37,113 root INFO copying ovos_utils/sound/alsa.py -> build/lib/ovos_utils/sound 2024-04-06 19:08:37,113 root INFO copying ovos_utils/sound/pulse.py -> build/lib/ovos_utils/sound 2024-04-06 19:08:37,113 root INFO copying ovos_utils/sound/__init__.py -> build/lib/ovos_utils/sound 2024-04-06 19:08:37,113 root INFO creating build/lib/ovos_utils/enclosure 2024-04-06 19:08:37,113 root INFO copying ovos_utils/enclosure/__init__.py -> build/lib/ovos_utils/enclosure 2024-04-06 19:08:37,114 root INFO copying ovos_utils/enclosure/api.py -> build/lib/ovos_utils/enclosure 2024-04-06 19:08:37,114 root INFO creating build/lib/ovos_utils/enclosure/mark1 2024-04-06 19:08:37,114 root INFO copying ovos_utils/enclosure/mark1/__init__.py -> build/lib/ovos_utils/enclosure/mark1 2024-04-06 19:08:37,114 root INFO creating build/lib/ovos_utils/enclosure/mark1/eyes 2024-04-06 19:08:37,114 root INFO copying ovos_utils/enclosure/mark1/eyes/__init__.py -> build/lib/ovos_utils/enclosure/mark1/eyes 2024-04-06 19:08:37,114 root INFO creating build/lib/ovos_utils/enclosure/mark1/faceplate 2024-04-06 19:08:37,114 root INFO copying ovos_utils/enclosure/mark1/faceplate/cellular_automaton.py -> build/lib/ovos_utils/enclosure/mark1/faceplate 2024-04-06 19:08:37,114 root INFO copying ovos_utils/enclosure/mark1/faceplate/icons.py -> build/lib/ovos_utils/enclosure/mark1/faceplate 2024-04-06 19:08:37,114 root INFO copying ovos_utils/enclosure/mark1/faceplate/animations.py -> build/lib/ovos_utils/enclosure/mark1/faceplate 2024-04-06 19:08:37,115 root INFO copying ovos_utils/enclosure/mark1/faceplate/__init__.py -> build/lib/ovos_utils/enclosure/mark1/faceplate 2024-04-06 19:08:37,115 root INFO creating build/lib/ovos_utils/skills 2024-04-06 19:08:37,115 root INFO copying ovos_utils/skills/settings.py -> build/lib/ovos_utils/skills 2024-04-06 19:08:37,115 root INFO copying ovos_utils/skills/audioservice.py -> build/lib/ovos_utils/skills 2024-04-06 19:08:37,115 root INFO copying ovos_utils/skills/locations.py -> build/lib/ovos_utils/skills 2024-04-06 19:08:37,115 root INFO copying ovos_utils/skills/__init__.py -> build/lib/ovos_utils/skills 2024-04-06 19:08:37,115 root INFO copying ovos_utils/skills/api.py -> build/lib/ovos_utils/skills 2024-04-06 19:08:37,115 root INFO creating build/lib/ovos_utils/lang 2024-04-06 19:08:37,116 root INFO copying ovos_utils/lang/visimes.py -> build/lib/ovos_utils/lang 2024-04-06 19:08:37,116 root INFO copying ovos_utils/lang/phonemes.py -> build/lib/ovos_utils/lang 2024-04-06 19:08:37,116 root INFO copying ovos_utils/lang/__init__.py -> build/lib/ovos_utils/lang 2024-04-06 19:08:37,116 root INFO running egg_info 2024-04-06 19:08:37,116 root INFO creating ovos_utils.egg-info 2024-04-06 19:08:37,119 root INFO writing ovos_utils.egg-info/PKG-INFO 2024-04-06 19:08:37,120 root INFO writing dependency_links to ovos_utils.egg-info/dependency_links.txt 2024-04-06 19:08:37,120 root INFO writing requirements to ovos_utils.egg-info/requires.txt 2024-04-06 19:08:37,120 root INFO writing top-level names to ovos_utils.egg-info/top_level.txt 2024-04-06 19:08:37,120 root INFO writing manifest file 'ovos_utils.egg-info/SOURCES.txt' 2024-04-06 19:08:37,128 root INFO reading manifest file 'ovos_utils.egg-info/SOURCES.txt' 2024-04-06 19:08:37,128 root INFO reading manifest template 'MANIFEST.in' 2024-04-06 19:08:37,129 root INFO adding license file 'LICENSE' 2024-04-06 19:08:37,130 root INFO writing manifest file 'ovos_utils.egg-info/SOURCES.txt' /usr/lib/python3.12/site-packages/setuptools/command/build_py.py:207: _Warning: Package 'ovos_utils.res' is absent from the `packages` configuration. !! ******************************************************************************** ############################ # Package would be ignored # ############################ Python recognizes 'ovos_utils.res' as an importable package[^1], but it is absent from setuptools' `packages` configuration. This leads to an ambiguous overall configuration. If you want to distribute this package, please make sure that 'ovos_utils.res' is explicitly added to the `packages` configuration field. Alternatively, you can also rely on setuptools' discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html If you don't want 'ovos_utils.res' to be distributed and are already explicitly excluding 'ovos_utils.res' via `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`, you can try to use `exclude_package_data`, or `include-package-data=False` in combination with a more fine grained `package-data` configuration. You can read more about "package data files" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/datafiles.html [^1]: For Python, any directory (with suitable naming) can be imported, even if it does not contain any `.py` files. On the other hand, currently there is no concept of package data directory, all directories are treated like packages. ******************************************************************************** !! check.warn(importable) /usr/lib/python3.12/site-packages/setuptools/command/build_py.py:207: _Warning: Package 'ovos_utils.res.platform_fingerprints' is absent from the `packages` configuration. !! ******************************************************************************** ############################ # Package would be ignored # ############################ Python recognizes 'ovos_utils.res.platform_fingerprints' as an importable package[^1], but it is absent from setuptools' `packages` configuration. This leads to an ambiguous overall configuration. If you want to distribute this package, please make sure that 'ovos_utils.res.platform_fingerprints' is explicitly added to the `packages` configuration field. Alternatively, you can also rely on setuptools' discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html If you don't want 'ovos_utils.res.platform_fingerprints' to be distributed and are already explicitly excluding 'ovos_utils.res.platform_fingerprints' via `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`, you can try to use `exclude_package_data`, or `include-package-data=False` in combination with a more fine grained `package-data` configuration. You can read more about "package data files" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/datafiles.html [^1]: For Python, any directory (with suitable naming) can be imported, even if it does not contain any `.py` files. On the other hand, currently there is no concept of package data directory, all directories are treated like packages. ******************************************************************************** !! check.warn(importable) 2024-04-06 19:08:37,134 root INFO creating build/lib/ovos_utils/res 2024-04-06 19:08:37,134 root INFO copying ovos_utils/res/fallback_mycroft.conf -> build/lib/ovos_utils/res 2024-04-06 19:08:37,134 root INFO creating build/lib/ovos_utils/res/platform_fingerprints 2024-04-06 19:08:37,134 root INFO copying ovos_utils/res/platform_fingerprints/spoofed_ovos.json -> build/lib/ovos_utils/res/platform_fingerprints 2024-04-06 19:08:37,142 wheel INFO installing to build/bdist.linux-x86_64/wheel 2024-04-06 19:08:37,142 root INFO running install 2024-04-06 19:08:37,147 root INFO running install_lib 2024-04-06 19:08:37,150 root INFO creating build/bdist.linux-x86_64 2024-04-06 19:08:37,150 root INFO creating build/bdist.linux-x86_64/wheel 2024-04-06 19:08:37,150 root INFO creating build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,150 root INFO copying build/lib/ovos_utils/log.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,151 root INFO copying build/lib/ovos_utils/version.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,151 root INFO copying build/lib/ovos_utils/metrics.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,151 root INFO copying build/lib/ovos_utils/json_helper.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,151 root INFO creating build/bdist.linux-x86_64/wheel/ovos_utils/enclosure 2024-04-06 19:08:37,151 root INFO creating build/bdist.linux-x86_64/wheel/ovos_utils/enclosure/mark1 2024-04-06 19:08:37,151 root INFO creating build/bdist.linux-x86_64/wheel/ovos_utils/enclosure/mark1/faceplate 2024-04-06 19:08:37,151 root INFO copying build/lib/ovos_utils/enclosure/mark1/faceplate/cellular_automaton.py -> build/bdist.linux-x86_64/wheel/ovos_utils/enclosure/mark1/faceplate 2024-04-06 19:08:37,151 root INFO copying build/lib/ovos_utils/enclosure/mark1/faceplate/icons.py -> build/bdist.linux-x86_64/wheel/ovos_utils/enclosure/mark1/faceplate 2024-04-06 19:08:37,151 root INFO copying build/lib/ovos_utils/enclosure/mark1/faceplate/animations.py -> build/bdist.linux-x86_64/wheel/ovos_utils/enclosure/mark1/faceplate 2024-04-06 19:08:37,151 root INFO copying build/lib/ovos_utils/enclosure/mark1/faceplate/__init__.py -> build/bdist.linux-x86_64/wheel/ovos_utils/enclosure/mark1/faceplate 2024-04-06 19:08:37,152 root INFO copying build/lib/ovos_utils/enclosure/mark1/__init__.py -> build/bdist.linux-x86_64/wheel/ovos_utils/enclosure/mark1 2024-04-06 19:08:37,152 root INFO creating build/bdist.linux-x86_64/wheel/ovos_utils/enclosure/mark1/eyes 2024-04-06 19:08:37,152 root INFO copying build/lib/ovos_utils/enclosure/mark1/eyes/__init__.py -> build/bdist.linux-x86_64/wheel/ovos_utils/enclosure/mark1/eyes 2024-04-06 19:08:37,152 root INFO copying build/lib/ovos_utils/enclosure/__init__.py -> build/bdist.linux-x86_64/wheel/ovos_utils/enclosure 2024-04-06 19:08:37,152 root INFO copying build/lib/ovos_utils/enclosure/api.py -> build/bdist.linux-x86_64/wheel/ovos_utils/enclosure 2024-04-06 19:08:37,152 root INFO creating build/bdist.linux-x86_64/wheel/ovos_utils/lang 2024-04-06 19:08:37,152 root INFO copying build/lib/ovos_utils/lang/visimes.py -> build/bdist.linux-x86_64/wheel/ovos_utils/lang 2024-04-06 19:08:37,152 root INFO copying build/lib/ovos_utils/lang/phonemes.py -> build/bdist.linux-x86_64/wheel/ovos_utils/lang 2024-04-06 19:08:37,152 root INFO copying build/lib/ovos_utils/lang/__init__.py -> build/bdist.linux-x86_64/wheel/ovos_utils/lang 2024-04-06 19:08:37,152 root INFO copying build/lib/ovos_utils/parse.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,153 root INFO copying build/lib/ovos_utils/security.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,153 root INFO copying build/lib/ovos_utils/messagebus.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,153 root INFO copying build/lib/ovos_utils/xml_helper.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,153 root INFO copying build/lib/ovos_utils/bracket_expansion.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,153 root INFO creating build/bdist.linux-x86_64/wheel/ovos_utils/intents 2024-04-06 19:08:37,153 root INFO copying build/lib/ovos_utils/intents/intent_service_interface.py -> build/bdist.linux-x86_64/wheel/ovos_utils/intents 2024-04-06 19:08:37,153 root INFO copying build/lib/ovos_utils/intents/converse.py -> build/bdist.linux-x86_64/wheel/ovos_utils/intents 2024-04-06 19:08:37,153 root INFO copying build/lib/ovos_utils/intents/__init__.py -> build/bdist.linux-x86_64/wheel/ovos_utils/intents 2024-04-06 19:08:37,153 root INFO copying build/lib/ovos_utils/intents/layers.py -> build/bdist.linux-x86_64/wheel/ovos_utils/intents 2024-04-06 19:08:37,153 root INFO copying build/lib/ovos_utils/dialog.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,154 root INFO copying build/lib/ovos_utils/time.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,154 root INFO copying build/lib/ovos_utils/signal.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,154 root INFO copying build/lib/ovos_utils/system.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,154 root INFO copying build/lib/ovos_utils/smtp_utils.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,154 root INFO creating build/bdist.linux-x86_64/wheel/ovos_utils/res 2024-04-06 19:08:37,154 root INFO creating build/bdist.linux-x86_64/wheel/ovos_utils/res/platform_fingerprints 2024-04-06 19:08:37,154 root INFO copying build/lib/ovos_utils/res/platform_fingerprints/spoofed_ovos.json -> build/bdist.linux-x86_64/wheel/ovos_utils/res/platform_fingerprints 2024-04-06 19:08:37,154 root INFO copying build/lib/ovos_utils/res/fallback_mycroft.conf -> build/bdist.linux-x86_64/wheel/ovos_utils/res 2024-04-06 19:08:37,154 root INFO copying build/lib/ovos_utils/process_utils.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,154 root INFO copying build/lib/ovos_utils/ovos_service_api.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,155 root INFO copying build/lib/ovos_utils/events.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,155 root INFO copying build/lib/ovos_utils/ssml.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,155 root INFO copying build/lib/ovos_utils/gui.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,155 root INFO copying build/lib/ovos_utils/fingerprinting.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,155 root INFO copying build/lib/ovos_utils/device_input.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,155 root INFO copying build/lib/ovos_utils/__init__.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,155 root INFO creating build/bdist.linux-x86_64/wheel/ovos_utils/skills 2024-04-06 19:08:37,155 root INFO copying build/lib/ovos_utils/skills/settings.py -> build/bdist.linux-x86_64/wheel/ovos_utils/skills 2024-04-06 19:08:37,155 root INFO copying build/lib/ovos_utils/skills/audioservice.py -> build/bdist.linux-x86_64/wheel/ovos_utils/skills 2024-04-06 19:08:37,156 root INFO copying build/lib/ovos_utils/skills/locations.py -> build/bdist.linux-x86_64/wheel/ovos_utils/skills 2024-04-06 19:08:37,156 root INFO copying build/lib/ovos_utils/skills/__init__.py -> build/bdist.linux-x86_64/wheel/ovos_utils/skills 2024-04-06 19:08:37,156 root INFO copying build/lib/ovos_utils/skills/api.py -> build/bdist.linux-x86_64/wheel/ovos_utils/skills 2024-04-06 19:08:37,156 root INFO copying build/lib/ovos_utils/xdg_utils.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,156 root INFO copying build/lib/ovos_utils/network_utils.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,156 root INFO creating build/bdist.linux-x86_64/wheel/ovos_utils/sound 2024-04-06 19:08:37,156 root INFO copying build/lib/ovos_utils/sound/alsa.py -> build/bdist.linux-x86_64/wheel/ovos_utils/sound 2024-04-06 19:08:37,156 root INFO copying build/lib/ovos_utils/sound/pulse.py -> build/bdist.linux-x86_64/wheel/ovos_utils/sound 2024-04-06 19:08:37,156 root INFO copying build/lib/ovos_utils/sound/__init__.py -> build/bdist.linux-x86_64/wheel/ovos_utils/sound 2024-04-06 19:08:37,156 root INFO copying build/lib/ovos_utils/file_utils.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,157 root INFO copying build/lib/ovos_utils/configuration.py -> build/bdist.linux-x86_64/wheel/ovos_utils 2024-04-06 19:08:37,157 root INFO running install_egg_info 2024-04-06 19:08:37,161 root INFO Copying ovos_utils.egg-info to build/bdist.linux-x86_64/wheel/ovos_utils-0.0.36-py3.12.egg-info 2024-04-06 19:08:37,161 root INFO running install_scripts 2024-04-06 19:08:37,163 wheel INFO creating build/bdist.linux-x86_64/wheel/ovos_utils-0.0.36.dist-info/WHEEL 2024-04-06 19:08:37,163 wheel INFO creating '/home/patrycja/aports/testing/py3-ovos-utils/src/ovos-utils-0.0.36/.dist/.tmp-mig_iof0/ovos_utils-0.0.36-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it 2024-04-06 19:08:37,163 wheel INFO adding 'ovos_utils/__init__.py' 2024-04-06 19:08:37,163 wheel INFO adding 'ovos_utils/bracket_expansion.py' 2024-04-06 19:08:37,163 wheel INFO adding 'ovos_utils/configuration.py' 2024-04-06 19:08:37,164 wheel INFO adding 'ovos_utils/device_input.py' 2024-04-06 19:08:37,164 wheel INFO adding 'ovos_utils/dialog.py' 2024-04-06 19:08:37,164 wheel INFO adding 'ovos_utils/events.py' 2024-04-06 19:08:37,164 wheel INFO adding 'ovos_utils/file_utils.py' 2024-04-06 19:08:37,164 wheel INFO adding 'ovos_utils/fingerprinting.py' 2024-04-06 19:08:37,164 wheel INFO adding 'ovos_utils/gui.py' 2024-04-06 19:08:37,164 wheel INFO adding 'ovos_utils/json_helper.py' 2024-04-06 19:08:37,164 wheel INFO adding 'ovos_utils/log.py' 2024-04-06 19:08:37,165 wheel INFO adding 'ovos_utils/messagebus.py' 2024-04-06 19:08:37,165 wheel INFO adding 'ovos_utils/metrics.py' 2024-04-06 19:08:37,165 wheel INFO adding 'ovos_utils/network_utils.py' 2024-04-06 19:08:37,165 wheel INFO adding 'ovos_utils/ovos_service_api.py' 2024-04-06 19:08:37,165 wheel INFO adding 'ovos_utils/parse.py' 2024-04-06 19:08:37,165 wheel INFO adding 'ovos_utils/process_utils.py' 2024-04-06 19:08:37,165 wheel INFO adding 'ovos_utils/security.py' 2024-04-06 19:08:37,165 wheel INFO adding 'ovos_utils/signal.py' 2024-04-06 19:08:37,165 wheel INFO adding 'ovos_utils/smtp_utils.py' 2024-04-06 19:08:37,165 wheel INFO adding 'ovos_utils/ssml.py' 2024-04-06 19:08:37,166 wheel INFO adding 'ovos_utils/system.py' 2024-04-06 19:08:37,166 wheel INFO adding 'ovos_utils/time.py' 2024-04-06 19:08:37,166 wheel INFO adding 'ovos_utils/version.py' 2024-04-06 19:08:37,166 wheel INFO adding 'ovos_utils/xdg_utils.py' 2024-04-06 19:08:37,166 wheel INFO adding 'ovos_utils/xml_helper.py' 2024-04-06 19:08:37,166 wheel INFO adding 'ovos_utils/enclosure/__init__.py' 2024-04-06 19:08:37,166 wheel INFO adding 'ovos_utils/enclosure/api.py' 2024-04-06 19:08:37,166 wheel INFO adding 'ovos_utils/enclosure/mark1/__init__.py' 2024-04-06 19:08:37,166 wheel INFO adding 'ovos_utils/enclosure/mark1/eyes/__init__.py' 2024-04-06 19:08:37,167 wheel INFO adding 'ovos_utils/enclosure/mark1/faceplate/__init__.py' 2024-04-06 19:08:37,167 wheel INFO adding 'ovos_utils/enclosure/mark1/faceplate/animations.py' 2024-04-06 19:08:37,167 wheel INFO adding 'ovos_utils/enclosure/mark1/faceplate/cellular_automaton.py' 2024-04-06 19:08:37,167 wheel INFO adding 'ovos_utils/enclosure/mark1/faceplate/icons.py' 2024-04-06 19:08:37,167 wheel INFO adding 'ovos_utils/intents/__init__.py' 2024-04-06 19:08:37,167 wheel INFO adding 'ovos_utils/intents/converse.py' 2024-04-06 19:08:37,167 wheel INFO adding 'ovos_utils/intents/intent_service_interface.py' 2024-04-06 19:08:37,167 wheel INFO adding 'ovos_utils/intents/layers.py' 2024-04-06 19:08:37,168 wheel INFO adding 'ovos_utils/lang/__init__.py' 2024-04-06 19:08:37,168 wheel INFO adding 'ovos_utils/lang/phonemes.py' 2024-04-06 19:08:37,168 wheel INFO adding 'ovos_utils/lang/visimes.py' 2024-04-06 19:08:37,168 wheel INFO adding 'ovos_utils/res/fallback_mycroft.conf' 2024-04-06 19:08:37,168 wheel INFO adding 'ovos_utils/res/platform_fingerprints/spoofed_ovos.json' 2024-04-06 19:08:37,168 wheel INFO adding 'ovos_utils/skills/__init__.py' 2024-04-06 19:08:37,168 wheel INFO adding 'ovos_utils/skills/api.py' 2024-04-06 19:08:37,168 wheel INFO adding 'ovos_utils/skills/audioservice.py' 2024-04-06 19:08:37,168 wheel INFO adding 'ovos_utils/skills/locations.py' 2024-04-06 19:08:37,169 wheel INFO adding 'ovos_utils/skills/settings.py' 2024-04-06 19:08:37,169 wheel INFO adding 'ovos_utils/sound/__init__.py' 2024-04-06 19:08:37,169 wheel INFO adding 'ovos_utils/sound/alsa.py' 2024-04-06 19:08:37,169 wheel INFO adding 'ovos_utils/sound/pulse.py' 2024-04-06 19:08:37,169 wheel INFO adding 'ovos_utils-0.0.36.dist-info/LICENSE' 2024-04-06 19:08:37,169 wheel INFO adding 'ovos_utils-0.0.36.dist-info/METADATA' 2024-04-06 19:08:37,169 wheel INFO adding 'ovos_utils-0.0.36.dist-info/WHEEL' 2024-04-06 19:08:37,169 wheel INFO adding 'ovos_utils-0.0.36.dist-info/top_level.txt' 2024-04-06 19:08:37,169 wheel INFO adding 'ovos_utils-0.0.36.dist-info/RECORD' 2024-04-06 19:08:37,170 wheel INFO removing build/bdist.linux-x86_64/wheel 2024-04-06 19:08:37,171 gpep517 INFO The backend produced .dist/ovos_utils-0.0.36-py3-none-any.whl ovos_utils-0.0.36-py3-none-any.whl ============================= test session starts ============================== platform linux -- Python 3.12.2, pytest-8.1.1, pluggy-1.4.0 rootdir: /home/patrycja/aports/testing/py3-ovos-utils/src/ovos-utils-0.0.36 collected 147 items / 1 deselected / 146 selected test/unittests/test_audio_utils.py ..FF.FF.FF.. [ 8%] test/unittests/test_bracket_expansion.py ....... [ 13%] test/unittests/test_device_input.py ... [ 15%] test/unittests/test_dialog.py .... [ 17%] test/unittests/test_file_utils.py ............ [ 26%] test/unittests/test_intents.py ................... [ 39%] test/unittests/test_json_helpers.py ............ [ 47%] test/unittests/test_lang.py .... [ 50%] test/unittests/test_log.py .... [ 52%] test/unittests/test_metrics.py ... [ 54%] test/unittests/test_network_utils.py ....... [ 59%] test/unittests/test_parse.py ..... [ 63%] test/unittests/test_sound.py ............. [ 71%] test/unittests/test_ssml.py ........ [ 77%] test/unittests/test_system.py ..................... [ 91%] test/unittests/test_utils.py ............ [100%] =================================== FAILURES =================================== ____________________ TestPlaySounds.test_play_mp3_exception ____________________ self = mock_log = mock_subprocess = mock_conf = @mock.patch('ovos_utils.sound.LOG') def test_play_mp3_exception(self, mock_log, mock_subprocess, mock_conf): """Test that stack trace is provided when unknown excpetion occurs""" def raise_exception(*arg, **kwarg): raise Exception mock_subprocess.Popen.side_effect = raise_exception mock_conf.return_value = test_config self.assertEqual(play_mp3('praise.mp3'), None) > mock_log.exception.called_once_with(Anything()) test/unittests/test_audio_utils.py:90: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = name = 'called_once_with' def __getattr__(self, name): if name in {'_mock_methods', '_mock_unsafe'}: raise AttributeError(name) elif self._mock_methods is not None: if name not in self._mock_methods or name in _all_magics: raise AttributeError("Mock object has no attribute %r" % name) elif _is_magic(name): raise AttributeError(name) if not self._mock_unsafe and (not self._mock_methods or name not in self._mock_methods): if name.startswith(('assert', 'assret', 'asert', 'aseert', 'assrt')) or name in _ATTRIB_DENY_LIST: > raise AttributeError( f"{name!r} is not a valid assertion. Use a spec " f"for the mock if {name!r} is meant to be an attribute.") E AttributeError: 'called_once_with' is not a valid assertion. Use a spec for the mock if 'called_once_with' is meant to be an attribute.. Did you mean: 'assert_called_once_with'? /usr/lib/python3.12/unittest/mock.py:663: AttributeError ----------------------------- Captured stdout call ----------------------------- 2024-04-06 19:08:37.842 - OVOS - ovos_utils.sound:play_mp3 - WARNING - Deprecation version=0.1.0. Caller=test_audio_utils:89. please emit mycroft.audio.play_sound instead _________________ TestPlaySounds.test_play_mp3_file_not_found __________________ self = mock_log = mock_subprocess = mock_conf = @mock.patch('ovos_utils.sound.LOG') def test_play_mp3_file_not_found(self, mock_log, mock_subprocess, mock_conf): """Test that simple log is raised when subprocess can't find command. """ def raise_filenotfound(*arg, **kwarg): raise FileNotFoundError('TEST FILE NOT FOUND') mock_subprocess.Popen.side_effect = raise_filenotfound mock_conf.return_value = test_config self.assertEqual(play_mp3('praise.mp3'), None) > mock_log.error.called_once_with(Anything()) test/unittests/test_audio_utils.py:78: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = name = 'called_once_with' def __getattr__(self, name): if name in {'_mock_methods', '_mock_unsafe'}: raise AttributeError(name) elif self._mock_methods is not None: if name not in self._mock_methods or name in _all_magics: raise AttributeError("Mock object has no attribute %r" % name) elif _is_magic(name): raise AttributeError(name) if not self._mock_unsafe and (not self._mock_methods or name not in self._mock_methods): if name.startswith(('assert', 'assret', 'asert', 'aseert', 'assrt')) or name in _ATTRIB_DENY_LIST: > raise AttributeError( f"{name!r} is not a valid assertion. Use a spec " f"for the mock if {name!r} is meant to be an attribute.") E AttributeError: 'called_once_with' is not a valid assertion. Use a spec for the mock if 'called_once_with' is meant to be an attribute.. Did you mean: 'assert_called_once_with'? /usr/lib/python3.12/unittest/mock.py:663: AttributeError ----------------------------- Captured stdout call ----------------------------- 2024-04-06 19:08:37.876 - OVOS - ovos_utils.sound:play_mp3 - WARNING - Deprecation version=0.1.0. Caller=test_audio_utils:77. please emit mycroft.audio.play_sound instead ____________________ TestPlaySounds.test_play_ogg_exception ____________________ self = mock_log = mock_subprocess = mock_conf = @mock.patch('ovos_utils.sound.LOG') def test_play_ogg_exception(self, mock_log, mock_subprocess, mock_conf): """Test that stack trace is provided when unknown excpetion occurs""" def raise_exception(*arg, **kwarg): raise Exception mock_subprocess.Popen.side_effect = raise_exception mock_conf.return_value = test_config self.assertEqual(play_ogg('insult.ogg'), None) > mock_log.exception.called_once_with(Anything()) test/unittests/test_audio_utils.py:58: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = name = 'called_once_with' def __getattr__(self, name): if name in {'_mock_methods', '_mock_unsafe'}: raise AttributeError(name) elif self._mock_methods is not None: if name not in self._mock_methods or name in _all_magics: raise AttributeError("Mock object has no attribute %r" % name) elif _is_magic(name): raise AttributeError(name) if not self._mock_unsafe and (not self._mock_methods or name not in self._mock_methods): if name.startswith(('assert', 'assret', 'asert', 'aseert', 'assrt')) or name in _ATTRIB_DENY_LIST: > raise AttributeError( f"{name!r} is not a valid assertion. Use a spec " f"for the mock if {name!r} is meant to be an attribute.") E AttributeError: 'called_once_with' is not a valid assertion. Use a spec for the mock if 'called_once_with' is meant to be an attribute.. Did you mean: 'assert_called_once_with'? /usr/lib/python3.12/unittest/mock.py:663: AttributeError ----------------------------- Captured stdout call ----------------------------- 2024-04-06 19:08:37.911 - OVOS - ovos_utils.sound:play_ogg - WARNING - Deprecation version=0.1.0. Caller=test_audio_utils:57. please emit mycroft.audio.play_sound instead _________________ TestPlaySounds.test_play_ogg_file_not_found __________________ self = mock_log = mock_subprocess = mock_conf = @mock.patch('ovos_utils.sound.LOG') def test_play_ogg_file_not_found(self, mock_log, mock_subprocess, mock_conf): """Test that simple log is raised when subprocess can't find command. """ def raise_filenotfound(*arg, **kwarg): raise FileNotFoundError('TEST FILE NOT FOUND') mock_subprocess.Popen.side_effect = raise_filenotfound mock_conf.return_value = test_config self.assertEqual(play_ogg('insult.ogg'), None) > mock_log.error.called_once_with(Anything()) test/unittests/test_audio_utils.py:46: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = name = 'called_once_with' def __getattr__(self, name): if name in {'_mock_methods', '_mock_unsafe'}: raise AttributeError(name) elif self._mock_methods is not None: if name not in self._mock_methods or name in _all_magics: raise AttributeError("Mock object has no attribute %r" % name) elif _is_magic(name): raise AttributeError(name) if not self._mock_unsafe and (not self._mock_methods or name not in self._mock_methods): if name.startswith(('assert', 'assret', 'asert', 'aseert', 'assrt')) or name in _ATTRIB_DENY_LIST: > raise AttributeError( f"{name!r} is not a valid assertion. Use a spec " f"for the mock if {name!r} is meant to be an attribute.") E AttributeError: 'called_once_with' is not a valid assertion. Use a spec for the mock if 'called_once_with' is meant to be an attribute.. Did you mean: 'assert_called_once_with'? /usr/lib/python3.12/unittest/mock.py:663: AttributeError ----------------------------- Captured stdout call ----------------------------- 2024-04-06 19:08:37.943 - OVOS - ovos_utils.sound:play_ogg - WARNING - Deprecation version=0.1.0. Caller=test_audio_utils:45. please emit mycroft.audio.play_sound instead ____________________ TestPlaySounds.test_play_wav_exception ____________________ self = mock_log = mock_subprocess = mock_conf = @mock.patch('ovos_utils.sound.LOG') def test_play_wav_exception(self, mock_log, mock_subprocess, mock_conf): """Test that stack trace is provided when unknown excpetion occurs""" def raise_exception(*arg, **kwarg): raise Exception mock_subprocess.Popen.side_effect = raise_exception mock_conf.return_value = test_config self.assertEqual(play_wav('indifference.wav'), None) > mock_log.exception.called_once_with(Anything()) test/unittests/test_audio_utils.py:122: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = name = 'called_once_with' def __getattr__(self, name): if name in {'_mock_methods', '_mock_unsafe'}: raise AttributeError(name) elif self._mock_methods is not None: if name not in self._mock_methods or name in _all_magics: raise AttributeError("Mock object has no attribute %r" % name) elif _is_magic(name): raise AttributeError(name) if not self._mock_unsafe and (not self._mock_methods or name not in self._mock_methods): if name.startswith(('assert', 'assret', 'asert', 'aseert', 'assrt')) or name in _ATTRIB_DENY_LIST: > raise AttributeError( f"{name!r} is not a valid assertion. Use a spec " f"for the mock if {name!r} is meant to be an attribute.") E AttributeError: 'called_once_with' is not a valid assertion. Use a spec for the mock if 'called_once_with' is meant to be an attribute.. Did you mean: 'assert_called_once_with'? /usr/lib/python3.12/unittest/mock.py:663: AttributeError ----------------------------- Captured stdout call ----------------------------- 2024-04-06 19:08:37.978 - OVOS - ovos_utils.sound:play_wav - WARNING - Deprecation version=0.1.0. Caller=test_audio_utils:121. please emit mycroft.audio.play_sound instead _________________ TestPlaySounds.test_play_wav_file_not_found __________________ self = mock_log = mock_subprocess = mock_conf = @mock.patch('ovos_utils.sound.LOG') def test_play_wav_file_not_found(self, mock_log, mock_subprocess, mock_conf): """Test that simple log is raised when subprocess can't find command. """ def raise_filenotfound(*arg, **kwarg): raise FileNotFoundError('TEST FILE NOT FOUND') mock_subprocess.Popen.side_effect = raise_filenotfound mock_conf.return_value = test_config self.assertEqual(play_wav('indifference.wav'), None) > mock_log.error.called_once_with(Anything()) test/unittests/test_audio_utils.py:110: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = name = 'called_once_with' def __getattr__(self, name): if name in {'_mock_methods', '_mock_unsafe'}: raise AttributeError(name) elif self._mock_methods is not None: if name not in self._mock_methods or name in _all_magics: raise AttributeError("Mock object has no attribute %r" % name) elif _is_magic(name): raise AttributeError(name) if not self._mock_unsafe and (not self._mock_methods or name not in self._mock_methods): if name.startswith(('assert', 'assret', 'asert', 'aseert', 'assrt')) or name in _ATTRIB_DENY_LIST: > raise AttributeError( f"{name!r} is not a valid assertion. Use a spec " f"for the mock if {name!r} is meant to be an attribute.") E AttributeError: 'called_once_with' is not a valid assertion. Use a spec for the mock if 'called_once_with' is meant to be an attribute.. Did you mean: 'assert_called_once_with'? /usr/lib/python3.12/unittest/mock.py:663: AttributeError ----------------------------- Captured stdout call ----------------------------- 2024-04-06 19:08:38.008 - OVOS - ovos_utils.sound:play_wav - WARNING - Deprecation version=0.1.0. Caller=test_audio_utils:109. please emit mycroft.audio.play_sound instead =============================== warnings summary =============================== ../../../../../../../usr/lib/python3.12/site-packages/pyee/__init__.py:42 ../../../../../../../usr/lib/python3.12/site-packages/pyee/__init__.py:42 /usr/lib/python3.12/site-packages/pyee/__init__.py:42: DeprecationWarning: pyee.BaseEventEmitter is deprecated and will be removed in a future major version; you should instead use pyee.EventEmitter. warn( -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED test/unittests/test_audio_utils.py::TestPlaySounds::test_play_mp3_exception FAILED test/unittests/test_audio_utils.py::TestPlaySounds::test_play_mp3_file_not_found FAILED test/unittests/test_audio_utils.py::TestPlaySounds::test_play_ogg_exception FAILED test/unittests/test_audio_utils.py::TestPlaySounds::test_play_ogg_file_not_found FAILED test/unittests/test_audio_utils.py::TestPlaySounds::test_play_wav_exception FAILED test/unittests/test_audio_utils.py::TestPlaySounds::test_play_wav_file_not_found =========== 6 failed, 140 passed, 1 deselected, 2 warnings in 14.72s =========== >>> ERROR: py3-ovos-utils: check failed >>> ERROR: py3-ovos-utils: rootbld failed >>> py3-ovos-utils: Cleaning up build chroot