Open t-animal opened 4 weeks ago
I think this might be related to the issues in #157 and #159.
Yes. I manually installed stream-unzip==0.0.95
inside the container, but version 0.0.97
is still installed (probably as a sub-dependency of simple_dwd_weatherforecast
or so? I don't know how pip resolves dependencies and their versions)
Yes, this might indeed be the reason. However I don't think fixing this by pinning the version in simple_dwd_weatherforecast
won't help, as then the package simple_dwd_weatherforecast
itself won't update correctly due to the broken install mechanism of HA packages.
We have hope, that this will be fixed in the 2024.11 release.
Looks like .11 didnt fix it. Still the same error in HA2024.11 for me, and having it since some update of dwd. So, would be great to see a fix on this side as its been a daily driver for me and one of the few things a place on my main dashboard on the tablet in the center of our house ... ;-)
Logger: homeassistant.setup
Quelle: setup.py:269
Erstmals aufgetreten: 08:14:05 (1 Vorkommnisse)
Zuletzt protokolliert: 08:14:05
Setup failed for custom integration 'dwd_weather': Requirements for dwd_weather not found: ['simple_dwd_weatherforecast==2.1.10', 'stream-unzip==0.0.95'].
Logger: homeassistant.util.package
Quelle: util/package.py:152
Erstmals aufgetreten: 08:11:24 (6 Vorkommnisse)
Zuletzt protokolliert: 08:14:05
Unable to install package simple_dwd_weatherforecast==2.1.10: error: Failed to prepare distributions Caused by: Failed to download and build `stream-unzip==0.0.97` Caused by: Build backend failed to build wheel through `build_wheel` (exit status: 1) [stdout] Running `maturin pep517 build-wheel -i /tmp/.tmpMMkg6e/builds-v0/.tmp1zkVCq/bin/python --compatibility off` [stderr] π₯ maturin failed Caused by: Cargo metadata failed. Do you have cargo in your PATH? Caused by: No such file or directory (os error 2) Error: command ['maturin', 'pep517', 'build-wheel', '-i', '/tmp/.tmpMMkg6e/builds-v0/.tmp1zkVCq/bin/python', '--compatibility', 'off'] returned non-zero exit status 1
Unable to install package simple_dwd_weatherforecast==2.1.10: error: Failed to prepare distributions Caused by: Failed to download and build `stream-unzip==0.0.97` Caused by: Build backend failed to build wheel through `build_wheel` (exit status: 1) [stdout] Running `maturin pep517 build-wheel -i /tmp/.tmpdVJzuD/builds-v0/.tmpf0RxsG/bin/python --compatibility off` [stderr] π₯ maturin failed Caused by: Cargo metadata failed. Do you have cargo in your PATH? Caused by: No such file or directory (os error 2) Error: command ['maturin', 'pep517', 'build-wheel', '-i', '/tmp/.tmpdVJzuD/builds-v0/.tmpf0RxsG/bin/python', '--compatibility', 'off'] returned non-zero exit status 1
Unable to install package stream-unzip==0.0.95: error: Failed to prepare distributions Caused by: Failed to download and build `stream-inflate==0.0.40` Caused by: Build backend failed to build wheel through `build_wheel` (exit status: 1) [stdout] Building... macros: [] compiler_directives: {} running bdist_wheel running build running build_py creating build/lib.linux-armv7l-cpython-312 copying stream_inflate.py -> build/lib.linux-armv7l-cpython-312 running egg_info writing stream_inflate.egg-info/PKG-INFO writing dependency_links to stream_inflate.egg-info/dependency_links.txt writing requirements to stream_inflate.egg-info/requires.txt writing top-level names to stream_inflate.egg-info/top_level.txt reading manifest file 'stream_inflate.egg-info/SOURCES.txt' adding license file 'LICENSE' writing manifest file 'stream_inflate.egg-info/SOURCES.txt' running build_ext building 'stream_inflate' extension creating build/temp.linux-armv7l-cpython-312 gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O3 -Wall -fno-semantic-interposition -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -DTHREAD_STACK_SIZE=0x100000 -fPIC -I/tmp/.tmpwWtS3f/builds-v0/.tmpdAlMAD/include -I/usr/local/include/python3.12 -c stream_inflate.c -o build/temp.linux-armv7l-cpython-312/stream_inflate.o [stderr] /tmp/.tmpwWtS3f/builds-v0/.tmpdAlMAD/lib/python3.12/site-packages/setuptools/dist.py:337: InformationOnly: Normalizing 'v0.0.40' to '0.0.40' self.metadata.version = self._normalize_version(self.metadata.version) /tmp/.tmpwWtS3f/builds-v0/.tmpdAlMAD/lib/python3.12/site-packages/setuptools/config/_apply_pyprojecttoml.py:78: SetuptoolsWarning: `extras_require` overwritten in `pyproject.toml` (optional-dependencies) corresp(dist, value, root_dir) error: command 'gcc' failed: No such file or directory
Unable to install package stream-unzip==0.0.95: error: Failed to prepare distributions Caused by: Failed to download and build `stream-inflate==0.0.40` Caused by: Build backend failed to build wheel through `build_wheel` (exit status: 1) [stdout] Building... macros: [] compiler_directives: {} running bdist_wheel running build running build_py creating build/lib.linux-armv7l-cpython-312 copying stream_inflate.py -> build/lib.linux-armv7l-cpython-312 running egg_info writing stream_inflate.egg-info/PKG-INFO writing dependency_links to stream_inflate.egg-info/dependency_links.txt writing requirements to stream_inflate.egg-info/requires.txt writing top-level names to stream_inflate.egg-info/top_level.txt reading manifest file 'stream_inflate.egg-info/SOURCES.txt' adding license file 'LICENSE' writing manifest file 'stream_inflate.egg-info/SOURCES.txt' running build_ext building 'stream_inflate' extension creating build/temp.linux-armv7l-cpython-312 gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O3 -Wall -fno-semantic-interposition -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -DTHREAD_STACK_SIZE=0x100000 -fPIC -I/tmp/.tmpb08tA0/builds-v0/.tmp0ePUQ8/include -I/usr/local/include/python3.12 -c stream_inflate.c -o build/temp.linux-armv7l-cpython-312/stream_inflate.o [stderr] /tmp/.tmpb08tA0/builds-v0/.tmp0ePUQ8/lib/python3.12/site-packages/setuptools/dist.py:337: InformationOnly: Normalizing 'v0.0.40' to '0.0.40' self.metadata.version = self._normalize_version(self.metadata.version) /tmp/.tmpb08tA0/builds-v0/.tmp0ePUQ8/lib/python3.12/site-packages/setuptools/config/_apply_pyprojecttoml.py:78: SetuptoolsWarning: `extras_require` overwritten in `pyproject.toml` (optional-dependencies) corresp(dist, value, root_dir) error: command 'gcc' failed: No such file or directory
Unable to install package stream-unzip==0.0.95: error: Failed to prepare distributions Caused by: Failed to download and build `stream-inflate==0.0.40` Caused by: Build backend failed to build wheel through `build_wheel` (exit status: 1) [stdout] Building... macros: [] compiler_directives: {} running bdist_wheel running build running build_py creating build/lib.linux-armv7l-cpython-312 copying stream_inflate.py -> build/lib.linux-armv7l-cpython-312 running egg_info writing stream_inflate.egg-info/PKG-INFO writing dependency_links to stream_inflate.egg-info/dependency_links.txt writing requirements to stream_inflate.egg-info/requires.txt writing top-level names to stream_inflate.egg-info/top_level.txt reading manifest file 'stream_inflate.egg-info/SOURCES.txt' adding license file 'LICENSE' writing manifest file 'stream_inflate.egg-info/SOURCES.txt' running build_ext building 'stream_inflate' extension creating build/temp.linux-armv7l-cpython-312 gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O3 -Wall -fno-semantic-interposition -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -DTHREAD_STACK_SIZE=0x100000 -fPIC -I/tmp/.tmpR7uEIT/builds-v0/.tmpvVtJeW/include -I/usr/local/include/python3.12 -c stream_inflate.c -o build/temp.linux-armv7l-cpython-312/stream_inflate.o [stderr] /tmp/.tmpR7uEIT/builds-v0/.tmpvVtJeW/lib/python3.12/site-packages/setuptools/dist.py:337: InformationOnly: Normalizing 'v0.0.40' to '0.0.40' self.metadata.version = self._normalize_version(self.metadata.version) /tmp/.tmpR7uEIT/builds-v0/.tmpvVtJeW/lib/python3.12/site-packages/setuptools/config/_apply_pyprojecttoml.py:78: SetuptoolsWarning: `extras_require` overwritten in `pyproject.toml` (optional-dependencies) corresp(dist, value, root_dir) error: command 'gcc' failed: No such file or directory
@Dunstkreis What version of HA are you using? Container or HAOS?
@Dunstkreis What version of HA are you using? Container or HAOS?
Containered with Docker on RaspPi, Ubuntu.
Ok, I'll see what I can find out. However as this error is in a package I have to use I'll have to troubleshoot this with them. I linked the issue above, so let's see if we can fix this soon.
@Dunstkreis Thanks for the info. Can you please install v2.1.23 and check if this still occurs? You have to enable pre-releases in HACS for the installation.
I think I have the same error, HAOS with HACS everything up to date.
Core 2024.11.1 Supervisor 2024.11.2 Operating System 13.2 Frontend 20241106.2 HACS 2.0.1 dwd_weather v2.1.23
I have tried deleting the integration and reinstalling it.
Logger: homeassistant.util.package
Quelle: util/package.py:152
Erstmals aufgetreten: 13:17:07 (3 Vorkommnisse)
Zuletzt protokolliert: 13:17:21
Unable to install package simple_dwd_weatherforecast==2.1.11: error: Failed to prepare distributions Caused by: Failed to download and build `stream-inflate==0.0.40` Caused by: Build backend failed to determine requirements with `build_wheel()` (exit status: 1) [stderr] Traceback (most recent call last): File "<string>", line 14, in <module> File "/tmp/.tmpQTdcUC/builds-v0/.tmp3NMS0B/lib/python3.12/site-packages/setuptools/build_meta.py", line 333, in get_requires_for_build_wheel return self._get_build_requires(config_settings, requirements=[]) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/tmp/.tmpQTdcUC/builds-v0/.tmp3NMS0B/lib/python3.12/site-packages/setuptools/build_meta.py", line 303, in _get_build_requires self.run_setup() File "/tmp/.tmpQTdcUC/builds-v0/.tmp3NMS0B/lib/python3.12/site-packages/setuptools/build_meta.py", line 319, in run_setup exec(code, locals()) File "<string>", line 3, in <module> File "/tmp/.tmpQTdcUC/builds-v0/.tmp3NMS0B/lib/python3.12/site-packages/Cython/Build/__init__.py", line 1, in <module> from .Dependencies import cythonize File "/tmp/.tmpQTdcUC/builds-v0/.tmp3NMS0B/lib/python3.12/site-packages/Cython/Build/Dependencies.py", line 42, in <module> from .. import Utils ImportError: Error loading shared library /tmp/.tmpQTdcUC/builds-v0/.tmp3NMS0B/lib/python3.12/site-packages/Cython/Utils.cpython-312-arm-linux-musleabihf.so: Operation not permitted
Unable to install package simple_dwd_weatherforecast==2.1.11: error: Failed to prepare distributions Caused by: Failed to download and build `stream-inflate==0.0.40` Caused by: Build backend failed to determine requirements with `build_wheel()` (exit status: 1) [stderr] Traceback (most recent call last): File "<string>", line 14, in <module> File "/tmp/.tmpp4Zcqr/builds-v0/.tmprBUlCf/lib/python3.12/site-packages/setuptools/build_meta.py", line 333, in get_requires_for_build_wheel return self._get_build_requires(config_settings, requirements=[]) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/tmp/.tmpp4Zcqr/builds-v0/.tmprBUlCf/lib/python3.12/site-packages/setuptools/build_meta.py", line 303, in _get_build_requires self.run_setup() File "/tmp/.tmpp4Zcqr/builds-v0/.tmprBUlCf/lib/python3.12/site-packages/setuptools/build_meta.py", line 319, in run_setup exec(code, locals()) File "<string>", line 3, in <module> File "/tmp/.tmpp4Zcqr/builds-v0/.tmprBUlCf/lib/python3.12/site-packages/Cython/Build/__init__.py", line 1, in <module> from .Dependencies import cythonize File "/tmp/.tmpp4Zcqr/builds-v0/.tmprBUlCf/lib/python3.12/site-packages/Cython/Build/Dependencies.py", line 42, in <module> from .. import Utils ImportError: Error loading shared library /tmp/.tmpp4Zcqr/builds-v0/.tmprBUlCf/lib/python3.12/site-packages/Cython/Utils.cpython-312-arm-linux-musleabihf.so: Operation not permitted
Unable to install package simple_dwd_weatherforecast==2.1.11: error: Failed to prepare distributions Caused by: Failed to download and build `stream-inflate==0.0.40` Caused by: Build backend failed to determine requirements with `build_wheel()` (exit status: 1) [stderr] Traceback (most recent call last): File "<string>", line 14, in <module> File "/tmp/.tmpiIhqvi/builds-v0/.tmpUfWkkL/lib/python3.12/site-packages/setuptools/build_meta.py", line 333, in get_requires_for_build_wheel return self._get_build_requires(config_settings, requirements=[]) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/tmp/.tmpiIhqvi/builds-v0/.tmpUfWkkL/lib/python3.12/site-packages/setuptools/build_meta.py", line 303, in _get_build_requires self.run_setup() File "/tmp/.tmpiIhqvi/builds-v0/.tmpUfWkkL/lib/python3.12/site-packages/setuptools/build_meta.py", line 319, in run_setup exec(code, locals()) File "<string>", line 3, in <module> File "/tmp/.tmpiIhqvi/builds-v0/.tmpUfWkkL/lib/python3.12/site-packages/Cython/Build/__init__.py", line 1, in <module> from .Dependencies import cythonize File "/tmp/.tmpiIhqvi/builds-v0/.tmpUfWkkL/lib/python3.12/site-packages/Cython/Build/Dependencies.py", line 42, in <module> from .. import Utils ImportError: Error loading shared library /tmp/.tmpiIhqvi/builds-v0/.tmpUfWkkL/lib/python3.12/site-packages/Cython/Utils.cpython-312-arm-linux-musleabihf.so: Operation not permitted
Logger: aiohttp.server
Quelle: /usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py:448
Erstmals aufgetreten: 13:17:21 (1 Vorkommnisse)
Zuletzt protokolliert: 13:17:21
Error handling request
Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py", line 477, in _handle_request
resp = await request_handler(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_app.py", line 559, in _handle
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_middlewares.py", line 117, in impl
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 92, in security_filter_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 83, in forwarded_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 26, in request_context_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 86, in ban_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 242, in auth_middleware
return await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/headers.py", line 32, in headers_middleware
response = await handler(request)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/http.py", line 73, in handle
result = await handler(request, **request.match_info)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/decorators.py", line 81, in with_admin
return await func(self, request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 74, in wrapper
return await method(view, request, data, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 172, in post
return await self._post_impl(request, data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 179, in _post_impl
return await super()._post_impl(request, data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/data_entry_flow.py", line 84, in _post_impl
result = await self._flow_mgr.async_init(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1301, in async_init
flow, result = await self._async_init(flow_id, handler, context, data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1326, in _async_init
flow = await self.async_create_flow(handler, context=context, data=data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1518, in async_create_flow
handler = await _async_get_flow_handler(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 3268, in _async_get_flow_handler
await _load_integration(hass, domain, hass_config)
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 3245, in _load_integration
await async_process_deps_reqs(hass, hass_config, integration)
File "/usr/src/homeassistant/homeassistant/setup.py", line 575, in async_process_deps_reqs
await requirements.async_get_integration_with_requirements(
File "/usr/src/homeassistant/homeassistant/requirements.py", line 54, in async_get_integration_with_requirements
return await manager.async_get_integration_with_requirements(domain)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/requirements.py", line 170, in async_get_integration_with_requirements
await future
File "/usr/src/homeassistant/homeassistant/requirements.py", line 159, in async_get_integration_with_requirements
await self._async_process_integration(integration, done)
File "/usr/src/homeassistant/homeassistant/requirements.py", line 182, in _async_process_integration
await self.async_process_requirements(
File "/usr/src/homeassistant/homeassistant/requirements.py", line 269, in async_process_requirements
await self._async_process_requirements(name, missing)
File "/usr/src/homeassistant/homeassistant/requirements.py", line 307, in _async_process_requirements
raise RequirementsNotFound(name, list(failures))
homeassistant.requirements.RequirementsNotFound: Requirements for dwd_weather not found: ['simple_dwd_weatherforecast==2.1.11'].
Still the same (?) error
Logger: homeassistant.util.package
Quelle: util/package.py:152
Erstmals aufgetreten: 12:59:29 (3 Vorkommnisse)
Zuletzt protokolliert: 13:00:25
Unable to install package simple_dwd_weatherforecast==2.1.11: error: Failed to prepare distributions Caused by: Failed to download and build `stream-unzip==0.0.97` Caused by: Build backend failed to build wheel through `build_wheel` (exit status: 1) [stdout] Running `maturin pep517 build-wheel -i /tmp/.tmpAr3Z9W/builds-v0/.tmp5HTyYL/bin/python --compatibility off` [stderr] π₯ maturin failed Caused by: Cargo metadata failed. Do you have cargo in your PATH? Caused by: No such file or directory (os error 2) Error: command ['maturin', 'pep517', 'build-wheel', '-i', '/tmp/.tmpAr3Z9W/builds-v0/.tmp5HTyYL/bin/python', '--compatibility', 'off'] returned non-zero exit status 1
Unable to install package simple_dwd_weatherforecast==2.1.11: error: Failed to prepare distributions Caused by: Failed to download and build `stream-unzip==0.0.97` Caused by: Build backend failed to build wheel through `build_wheel` (exit status: 1) [stdout] Running `maturin pep517 build-wheel -i /tmp/.tmpf0T8ze/builds-v0/.tmpINYP6c/bin/python --compatibility off` [stderr] π₯ maturin failed Caused by: Cargo metadata failed. Do you have cargo in your PATH? Caused by: No such file or directory (os error 2) Error: command ['maturin', 'pep517', 'build-wheel', '-i', '/tmp/.tmpf0T8ze/builds-v0/.tmpINYP6c/bin/python', '--compatibility', 'off'] returned non-zero exit status 1
Unable to install package simple_dwd_weatherforecast==2.1.11: error: Failed to prepare distributions Caused by: Failed to download and build `stream-unzip==0.0.97` Caused by: Build backend failed to build wheel through `build_wheel` (exit status: 1) [stdout] Running `maturin pep517 build-wheel -i /tmp/.tmpnRJuRq/builds-v0/.tmpkIjWac/bin/python --compatibility off` [stderr] π₯ maturin failed Caused by: Cargo metadata failed. Do you have cargo in your PATH? Caused by: No such file or directory (os error 2) Error: command ['maturin', 'pep517', 'build-wheel', '-i', '/tmp/.tmpnRJuRq/builds-v0/.tmpkIjWac/bin/python', '--compatibility', 'off'] returned non-zero exit status 1
@Dunstkreis @RaptorDE On which devices are you using HA? On a RPI?
Thats correct. running it on RPI. Planning to switch to HassOS on an Nuc sooner or later though ...
Like I said, I'm not a python dev, but I suspect that the dependency is implemented in Rust and ships binaries for x86/arm64... If it is installed on a system with an architecture that isn't supported directly (like arm on a rpi), it requires cargo to compile the source. Since cargo is not available in the hass container (and possibly on haos?!), it cannot compile the low level implementation. Honestly, I'd stay away from such packages, they have given me a huge headache with other runtime-based languages in the past, because they may not compile for a bunch of reasons. Anyways, if I'm right the only solution is to ask upstream if they can provide arm binaries for rpi or switch packages (or installing the rust dev package and hoping no other issues arise, but at least on haos that's impossible, if it isn't already there). Or maybe this project could build and provide the binary? Sounds like a lot of work and fragile, though. Bummer.
@t-animal You are completely right. This is also what I've found and was the reason for asking if a RPI is used.
I would switch packages if I could, however I need stream-zip for the parsing of the hourly weather data due to its large size. In the past this has caused crashes on some users systems: #122, #129.
I'll try to add support for ARM in the package and if it takes too long, I think about forking it as I can also work with Rust.
Again, not a python dev, but it looks like there might be alternatives to the rust implementation https://stackoverflow.com/questions/67554520/stream-unzip-archive Good luck! I really liked this integration <3 Thanks for all your work
@t-animal Can you please check if you have a file /etc/pip.conf
on your system with the contents
[global]
extra-index-url=https://www.piwheels.org/simple
Taken from here.
The other packages were not fitting my specific use-case, but thank anyway for providing the link.
On my test RPI if have the above link and I can install the package without issues.
Unfortunately I'm not at home for a week, but I just use the official docker image https://hub.docker.com/r/homeassistant/home-assistant and didn't modify this file. I can check the content of this file and which architecture I'm using exactly when I'm back home in a week.
@t-animal that would be great, yes!
@RaptorDE @Dunstkreis Can you please check this as well?
me@hass:~ $ cat /etc/pip.conf
[global]
extra-index-url=https://www.piwheels.org/simple
@Dunstkreis Can you please run this command on your instance and post the output?
pip3 install stream-unzip -i https://www.piwheels.org/simple
Hi, I have installed Home Assistant with the official HASO image on an ODROID-XU4 (ARM).
Here is the information from the Terminal & SSH addon:
[core-ssh ~]$ cat /etc/pip.conf
[global]
disable-pip-version-check = true
extra-index-url = https://wheels.home-assistant.io/musllinux-index/
no-cache-dir = false
prefer-binary = true
[core-ssh ~]$ pip3 install stream-unzip -i https://www.piwheels.org/simple
bash: pip3: command not found
"same" here:
-bash: pip3: Kommando nicht gefunden.
did this:
sudo apt install python3-pip
rerun prev install unzip now got:
Successfully installed pycryptodome-3.21.0 stream-inflate-0.0.23 stream-unzip-0.0.95
restarted homeassistant still same error:
Logger: homeassistant.util.package
Quelle: util/package.py:152
Erstmals aufgetreten: 21:42:36 (3 Vorkommnisse)
Zuletzt protokolliert: 21:43:31
Unable to install package simple_dwd_weatherforecast==2.1.11: error: Failed to prepare distributions Caused by: Failed to download and build `stream-unzip==0.0.97` Caused by: Build backend failed to build wheel through `build_wheel` (exit status: 1) [stdout] Running `maturin pep517 build-wheel -i /tmp/.tmpT6q6lg/builds-v0/.tmp3ejFK8/bin/python --compatibility off` [stderr] π₯ maturin failed Caused by: Cargo metadata failed. Do you have cargo in your PATH? Caused by: No such file or directory (os error 2) Error: command ['maturin', 'pep517', 'build-wheel', '-i', '/tmp/.tmpT6q6lg/builds-v0/.tmp3ejFK8/bin/python', '--compatibility', 'off'] returned non-zero exit status 1
Unable to install package simple_dwd_weatherforecast==2.1.11: error: Failed to prepare distributions Caused by: Failed to download and build `stream-unzip==0.0.97` Caused by: Build backend failed to build wheel through `build_wheel` (exit status: 1) [stdout] Running `maturin pep517 build-wheel -i /tmp/.tmpQeRGJ2/builds-v0/.tmp1niycb/bin/python --compatibility off` [stderr] π₯ maturin failed Caused by: Cargo metadata failed. Do you have cargo in your PATH? Caused by: No such file or directory (os error 2) Error: command ['maturin', 'pep517', 'build-wheel', '-i', '/tmp/.tmpQeRGJ2/builds-v0/.tmp1niycb/bin/python', '--compatibility', 'off'] returned non-zero exit status 1
Unable to install package simple_dwd_weatherforecast==2.1.11: error: Failed to prepare distributions Caused by: Failed to download and build `stream-unzip==0.0.97` Caused by: Build backend failed to build wheel through `build_wheel` (exit status: 1) [stdout] Running `maturin pep517 build-wheel -i /tmp/.tmpiIFFZB/builds-v0/.tmpudQv7B/bin/python --compatibility off` [stderr] π₯ maturin failed Caused by: Cargo metadata failed. Do you have cargo in your PATH? Caused by: No such file or directory (os error 2) Error: command ['maturin', 'pep517', 'build-wheel', '-i', '/tmp/.tmpiIFFZB/builds-v0/.tmpudQv7B/bin/python', '--compatibility', 'off'] returned non-zero exit status 1
I guess my Rasbian 10 Buster is a bit old? ^^
Did you install this inside the container? If you install it on the host, this doesn't matter (and inside the container, your host os version doesn't matter).
Also, if you install it in the container, make sure to just restart home assistant via the web interface, not the container. Otherwise your changes will be lost. (Just making sure there is no confusion, apologies if I'm telling you stuff you're aware of)
@Dunstkreis @RaptorDE You have to run the command within the HA container. Can you please run this command and post the result:
python3 -c 'import pip._internal.utils.compatibility_tags; print(pip._internal.utils.compatibility_tags.get_supported())'
I am trying to find out what wheels are missing for your specific versions, as on my (up-to-date) RPI I can't reproduce this.
I have the same issue as the other 2. First, @FL550 : Thanks a lot for all your effort
Output:
[<cp312-cp312-musllinux_1_2_armv7l @ 3060336200>, <cp312-cp312-musllinux_1_1_armv7l @ 3059744872>, <cp312-cp312-musllinux_1_0_armv7l @ 3059745096>, <cp312-cp312-linux_armv7l @ 3059745192>, <cp312-abi3-musllinux_1_2_armv7l @ 3059745416>, <cp312-abi3-musllinux_1_1_armv7l @ 3059745352>, <cp312-abi3-musllinux_1_0_armv7l @ 3059745544>, <cp312-abi3-linux_armv7l @ 3059745576>, <cp312-none-musllinux_1_2_armv7l @ 3059745672>, <cp312-none-musllinux_1_1_armv7l @ 3062040840>, <cp312-none-musllinux_1_0_armv7l @ 3059745832>, <cp312-none-linux_armv7l @ 3059745928>, <cp311-abi3-musllinux_1_2_armv7l @ 3062040328>, <cp311-abi3-musllinux_1_1_armv7l @ 3059746024>, <cp311-abi3-musllinux_1_0_armv7l @ 3059746120>, <cp311-abi3-linux_armv7l @ 3059746216>, <cp310-abi3-musllinux_1_2_armv7l @ 3059746312>, <cp310-abi3-musllinux_1_1_armv7l @ 3059746408>, <cp310-abi3-musllinux_1_0_armv7l @ 3059746504>, <cp310-abi3-linux_armv7l @ 3059746600>, <cp39-abi3-musllinux_1_2_armv7l @ 3059746696>, <cp39-abi3-musllinux_1_1_armv7l @ 3059746792>, <cp39-abi3-musllinux_1_0_armv7l @ 3059746888>, <cp39-abi3-linux_armv7l @ 3059746984>, <cp38-abi3-musllinux_1_2_armv7l @ 3059747080>, <cp38-abi3-musllinux_1_1_armv7l @ 3059747176>, <cp38-abi3-musllinux_1_0_armv7l @ 3059747272>, <cp38-abi3-linux_armv7l @ 3059747368>, <cp37-abi3-musllinux_1_2_armv7l @ 3059747464>, <cp37-abi3-musllinux_1_1_armv7l @ 3059747560>, <cp37-abi3-musllinux_1_0_armv7l @ 3059747656>, <cp37-abi3-linux_armv7l @ 3059747752>, <cp36-abi3-musllinux_1_2_armv7l @ 3059747848>, <cp36-abi3-musllinux_1_1_armv7l @ 3059747944>, <cp36-abi3-musllinux_1_0_armv7l @ 3059748040>, <cp36-abi3-linux_armv7l @ 3059748136>, <cp35-abi3-musllinux_1_2_armv7l @ 3059748232>, <cp35-abi3-musllinux_1_1_armv7l @ 3059748328>, <cp35-abi3-musllinux_1_0_armv7l @ 3059748424>, <cp35-abi3-linux_armv7l @ 3059748520>, <cp34-abi3-musllinux_1_2_armv7l @ 3059748616>, <cp34-abi3-musllinux_1_1_armv7l @ 3059748712>, <cp34-abi3-musllinux_1_0_armv7l @ 3059748808>, <cp34-abi3-linux_armv7l @ 3059761224>, <cp33-abi3-musllinux_1_2_armv7l @ 3059761320>, <cp33-abi3-musllinux_1_1_armv7l @ 3059761416>, <cp33-abi3-musllinux_1_0_armv7l @ 3059761512>, <cp33-abi3-linux_armv7l @ 3059761608>, <cp32-abi3-musllinux_1_2_armv7l @ 3059761704>, <cp32-abi3-musllinux_1_1_armv7l @ 3059761800>, <cp32-abi3-musllinux_1_0_armv7l @ 3059761896>, <cp32-abi3-linux_armv7l @ 3059761992>, <py312-none-musllinux_1_2_armv7l @ 3059762216>, <py312-none-musllinux_1_1_armv7l @ 3059762280>, <py312-none-musllinux_1_0_armv7l @ 3059762376>, <py312-none-linux_armv7l @ 3059762472>, <py3-none-musllinux_1_2_armv7l @ 3059762184>, <py3-none-musllinux_1_1_armv7l @ 3059762600>, <py3-none-musllinux_1_0_armv7l @ 3059762664>, <py3-none-linux_armv7l @ 3059762728>, <py311-none-musllinux_1_2_armv7l @ 3059762824>, <py311-none-musllinux_1_1_armv7l @ 3059762920>, <py311-none-musllinux_1_0_armv7l @ 3059763016>, <py311-none-linux_armv7l @ 3059763112>, <py310-none-musllinux_1_2_armv7l @ 3059762792>, <py310-none-musllinux_1_1_armv7l @ 3059763304>, <py310-none-musllinux_1_0_armv7l @ 3059763400>, <py310-none-linux_armv7l @ 3059763496>, <py39-none-musllinux_1_2_armv7l @ 3059763208>, <py39-none-musllinux_1_1_armv7l @ 3059763688>, <py39-none-musllinux_1_0_armv7l @ 3059763784>, <py39-none-linux_armv7l @ 3059763880>, <py38-none-musllinux_1_2_armv7l @ 3059763592>, <py38-none-musllinux_1_1_armv7l @ 3059764072>, <py38-none-musllinux_1_0_armv7l @ 3059764168>, <py38-none-linux_armv7l @ 3059764264>, <py37-none-musllinux_1_2_armv7l @ 3059763976>, <py37-none-musllinux_1_1_armv7l @ 3059764456>, <py37-none-musllinux_1_0_armv7l @ 3059764552>, <py37-none-linux_armv7l @ 3059764648>, <py36-none-musllinux_1_2_armv7l @ 3059764360>, <py36-none-musllinux_1_1_armv7l @ 3059764840>, <py36-none-musllinux_1_0_armv7l @ 3059764936>, <py36-none-linux_armv7l @ 3059765032>, <py35-none-musllinux_1_2_armv7l @ 3059764744>, <py35-none-musllinux_1_1_armv7l @ 3059765224>, <py35-none-musllinux_1_0_armv7l @ 3059769448>, <py35-none-linux_armv7l @ 3059769544>, <py34-none-musllinux_1_2_armv7l @ 3059765128>, <py34-none-musllinux_1_1_armv7l @ 3059769736>, <py34-none-musllinux_1_0_armv7l @ 3059769832>, <py34-none-linux_armv7l @ 3059769928>, <py33-none-musllinux_1_2_armv7l @ 3059769640>, <py33-none-musllinux_1_1_armv7l @ 3059770120>, <py33-none-musllinux_1_0_armv7l @ 3059770216>, <py33-none-linux_armv7l @ 3059770312>, <py32-none-musllinux_1_2_armv7l @ 3059770024>, <py32-none-musllinux_1_1_armv7l @ 3059770504>, <py32-none-musllinux_1_0_armv7l @ 3059770600>, <py32-none-linux_armv7l @ 3059770696>, <py31-none-musllinux_1_2_armv7l @ 3059770408>, <py31-none-musllinux_1_1_armv7l @ 3059770888>, <py31-none-musllinux_1_0_armv7l @ 3059770984>, <py31-none-linux_armv7l @ 3059771080>, <py30-none-musllinux_1_2_armv7l @ 3059770792>, <py30-none-musllinux_1_1_armv7l @ 3059771272>, <py30-none-musllinux_1_0_armv7l @ 3059771368>, <py30-none-linux_armv7l @ 3059771464>, <cp312-none-any @ 3059771560>, <py312-none-any @ 3059771176>, <py3-none-any @ 3059771656>, <py311-none-any @ 3059771816>, <py310-none-any @ 3059771784>, <py39-none-any @ 3059771912>, <py38-none-any @ 3059772008>, <py37-none-any @ 3059772104>, <py36-none-any @ 3059772200>, <py35-none-any @ 3059772296>, <py34-none-any @ 3059772392>, <py33-none-any @ 3059772488>, <py32-none-any @ 3059772584>, <py31-none-any @ 3059772680>, <py30-none-any @ 3059772776>]
@perabo65 Thanks for the output. And you are also using a RPI? If so, which OS version is installed?
Also, if you install it in the container, make sure to just restart home assistant via the web interface, not the container. Otherwise your changes will be lost. (Just making sure there is no confusion, apologies if I'm telling you stuff you're aware of)
damn it, was to late. no apologies needed, I was a bit dumb here ... ^^
@Dunstkreis @RaptorDE You have to run the command within the HA container. Can you please run this command and post the result:
python3 -c 'import pip._internal.utils.compatibility_tags; print(pip._internal.utils.compatibility_tags.get_supported())'
I am trying to find out what wheels are missing for your specific versions, as on my (up-to-date) RPI I can't reproduce this.
Jupp. Using portainer, console for container in there, dont know if thats important, here is the output:
octohass:/config# python3 -c 'import pip._internal.utils.compatibility_tags;
> print(pip._internal.utils.compatibility_tags.get_supported())'
[<cp312-cp312-musllinux_1_2_armv7l @ 3060136424>, <cp312-cp312-musllinux_1_1_armv7l @ 3059557288>, <cp312-cp312-musllinux_1_0_armv7l @ 3059557512>, <cp312-cp312-linux_armv7l @ 3059557608>, <cp312-abi3-musllinux_1_2_armv7l @ 3059557832>, <cp312-abi3-musllinux_1_1_armv7l @ 3059557768>, <cp312-abi3-musllinux_1_0_armv7l @ 3059557960>, <cp312-abi3-linux_armv7l @ 3059557992>, <cp312-none-musllinux_1_2_armv7l @ 3059558088>, <cp312-none-musllinux_1_1_armv7l @ 3061860680>, <cp312-none-musllinux_1_0_armv7l @ 3059558248>, <cp312-none-linux_armv7l @ 3059558344>, <cp311-abi3-musllinux_1_2_armv7l @ 3061860168>, <cp311-abi3-musllinux_1_1_armv7l @ 3059558440>, <cp311-abi3-musllinux_1_0_armv7l @ 3059558536>, <cp311-abi3-linux_armv7l @ 3059558632>, <cp310-abi3-musllinux_1_2_armv7l @ 3059558728>, <cp310-abi3-musllinux_1_1_armv7l @ 3059558824>, <cp310-abi3-musllinux_1_0_armv7l @ 3059558920>, <cp310-abi3-linux_armv7l @ 3059559016>, <cp39-abi3-musllinux_1_2_armv7l @ 3059559112>, <cp39-abi3-musllinux_1_1_armv7l @ 3059559208>, <cp39-abi3-musllinux_1_0_armv7l @ 3059559304>, <cp39-abi3-linux_armv7l @ 3059559400>, <cp38-abi3-musllinux_1_2_armv7l @ 3059559496>, <cp38-abi3-musllinux_1_1_armv7l @ 3059559592>, <cp38-abi3-musllinux_1_0_armv7l @ 3059559688>, <cp38-abi3-linux_armv7l @ 3059559784>, <cp37-abi3-musllinux_1_2_armv7l @ 3059559880>, <cp37-abi3-musllinux_1_1_armv7l @ 3059559976>, <cp37-abi3-musllinux_1_0_armv7l @ 3059560072>, <cp37-abi3-linux_armv7l @ 3059560168>, <cp36-abi3-musllinux_1_2_armv7l @ 3059560264>, <cp36-abi3-musllinux_1_1_armv7l @ 3059560360>, <cp36-abi3-musllinux_1_0_armv7l @ 3059572776>, <cp36-abi3-linux_armv7l @ 3059572872>, <cp35-abi3-musllinux_1_2_armv7l @ 3059572968>, <cp35-abi3-musllinux_1_1_armv7l @ 3059573064>, <cp35-abi3-musllinux_1_0_armv7l @ 3059573160>, <cp35-abi3-linux_armv7l @ 3059573256>, <cp34-abi3-musllinux_1_2_armv7l @ 3059573352>, <cp34-abi3-musllinux_1_1_armv7l @ 3059573448>, <cp34-abi3-musllinux_1_0_armv7l @ 3059573544>, <cp34-abi3-linux_armv7l @ 3059573640>, <cp33-abi3-musllinux_1_2_armv7l @ 3059573736>, <cp33-abi3-musllinux_1_1_armv7l @ 3059573832>, <cp33-abi3-musllinux_1_0_armv7l @ 3059573928>, <cp33-abi3-linux_armv7l @ 3059574024>, <cp32-abi3-musllinux_1_2_armv7l @ 3059574120>, <cp32-abi3-musllinux_1_1_armv7l @ 3059574216>, <cp32-abi3-musllinux_1_0_armv7l @ 3059574312>, <cp32-abi3-linux_armv7l @ 3059574408>, <py312-none-musllinux_1_2_armv7l @ 3059574600>, <py312-none-musllinux_1_1_armv7l @ 3059574696>, <py312-none-musllinux_1_0_armv7l @ 3059574792>, <py312-none-linux_armv7l @ 3059574888>, <py3-none-musllinux_1_2_armv7l @ 3059574632>, <py3-none-musllinux_1_1_armv7l @ 3059575016>, <py3-none-musllinux_1_0_armv7l @ 3059575080>, <py3-none-linux_armv7l @ 3059575144>, <py311-none-musllinux_1_2_armv7l @ 3059575240>, <py311-none-musllinux_1_1_armv7l @ 3059575336>, <py311-none-musllinux_1_0_armv7l @ 3059575432>, <py311-none-linux_armv7l @ 3059575528>, <py310-none-musllinux_1_2_armv7l @ 3059575208>, <py310-none-musllinux_1_1_armv7l @ 3059575720>, <py310-none-musllinux_1_0_armv7l @ 3059575816>, <py310-none-linux_armv7l @ 3059575912>, <py39-none-musllinux_1_2_armv7l @ 3059575624>, <py39-none-musllinux_1_1_armv7l @ 3059576104>, <py39-none-musllinux_1_0_armv7l @ 3059576200>, <py39-none-linux_armv7l @ 3059576296>, <py38-none-musllinux_1_2_armv7l @ 3059576008>, <py38-none-musllinux_1_1_armv7l @ 3059576488>, <py38-none-musllinux_1_0_armv7l @ 3059576584>, <py38-none-linux_armv7l @ 3059576680>, <py37-none-musllinux_1_2_armv7l @ 3059576392>, <py37-none-musllinux_1_1_armv7l @ 3059581000>, <py37-none-musllinux_1_0_armv7l @ 3059581096>, <py37-none-linux_armv7l @ 3059581192>, <py36-none-musllinux_1_2_armv7l @ 3059576776>, <py36-none-musllinux_1_1_armv7l @ 3059581384>, <py36-none-musllinux_1_0_armv7l @ 3059581480>, <py36-none-linux_armv7l @ 3059581576>, <py35-none-musllinux_1_2_armv7l @ 3059581288>, <py35-none-musllinux_1_1_armv7l @ 3059581768>, <py35-none-musllinux_1_0_armv7l @ 3059581864>, <py35-none-linux_armv7l @ 3059581960>, <py34-none-musllinux_1_2_armv7l @ 3059581672>, <py34-none-musllinux_1_1_armv7l @ 3059582152>, <py34-none-musllinux_1_0_armv7l @ 3059582248>, <py34-none-linux_armv7l @ 3059582344>, <py33-none-musllinux_1_2_armv7l @ 3059582056>, <py33-none-musllinux_1_1_armv7l @ 3059582536>, <py33-none-musllinux_1_0_armv7l @ 3059582632>, <py33-none-linux_armv7l @ 3059582728>, <py32-none-musllinux_1_2_armv7l @ 3059582440>, <py32-none-musllinux_1_1_armv7l @ 3059582920>, <py32-none-musllinux_1_0_armv7l @ 3059583016>, <py32-none-linux_armv7l @ 3059583112>, <py31-none-musllinux_1_2_armv7l @ 3059582824>, <py31-none-musllinux_1_1_armv7l @ 3059583304>, <py31-none-musllinux_1_0_armv7l @ 3059583400>, <py31-none-linux_armv7l @ 3059583496>, <py30-none-musllinux_1_2_armv7l @ 3059583208>, <py30-none-musllinux_1_1_armv7l @ 3059583688>, <py30-none-musllinux_1_0_armv7l @ 3059583784>, <py30-none-linux_armv7l @ 3059583880>, <cp312-none-any @ 3059583976>, <py312-none-any @ 3059583592>, <py3-none-any @ 3059584072>, <py311-none-any @ 3059584232>, <py310-none-any @ 3059584200>, <py39-none-any @ 3059584328>, <py38-none-any @ 3059584424>, <py37-none-any @ 3059584520>, <py36-none-any @ 3059584616>, <py35-none-any @ 3059584712>, <py34-none-any @ 3059584808>, <py33-none-any @ 3059584904>, <py32-none-any @ 3059585000>, <py31-none-any @ 3059585128>, <py30-none-any @ 3059585224>]
octohass:/config#
Here is the output of the stream unzip installation, I guess 0.0.95 is still not enough as within hass it says its missing 0.0.97
octohass:/config# cat /etc/pip.conf
[global]
disable-pip-version-check = true
extra-index-url = https://wheels.home-assistant.io/musllinux-index/
no-cache-dir = false
prefer-binary = true
octohass:/config# pip3 install stream-unzip -i https://www.piwheels.org/simple
Looking in indexes: https://www.piwheels.org/simple, https://wheels.home-assistant.io/musllinux-index/
Collecting stream-unzip
Downloading https://www.piwheels.org/simple/stream-unzip/stream_unzip-0.0.95-py3-none-any.whl (9.0 kB)
Requirement already satisfied: pycryptodome>=3.10.1 in /usr/local/lib/python3.12/site-packages (from stream-unzip) (3.21.0)
Requirement already satisfied: stream-inflate>=0.0.12 in /usr/local/lib/python3.12/site-packages (from stream-unzip) (0.0.14)
Installing collected packages: stream-unzip
Successfully installed stream-unzip-0.0.95
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager, possibly rendering your system unusable.It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv. Use the --root-user-action option if you know what you are doing and want to suppress this warning.
octohass:/config#
Here is the output of the stream unzip installation, I guess 0.0.95 is still not enough as within hass it says its missing 0.0.97
This is explainable by the output of the previous command, as they have changed the provided wheels.
Yes, an RPI4 with Raspbian Bookworm. And Home Assistant is running in a docker container
@perabo65 Can you provide me the output of this command as well:
python3 -V
octohass:/config# python3 -V
Python 3.12.4
I think i'm getting a picture now.
stream-inflate
provides wheels for the architectures amd64, x86_64, aarch64. You need armv7l as you are using a Raspberry Pi.octohass:/config# python3 -V Python 3.12.4
Same version here
Okay, and its because you need the stream-unzip package for dwd_weather to work? So this is gonna be broken for many folks? (after updating home assistant because of newest py version?)
Possible fixes would be? Downgrade Home Assistant? Use another plattform? Didnt get why its working for you as you said on your test py its running!?
@Dunstkreis My test on a pi was directly on the console and not in a HA container on a pi. And yes, I need the package, as otherwise the memory consumption for the hourly update would be too large.
In fact this error only occurs to users running HA in a container (which it is if using HAOS) on a raspberry pi.
I already started to work on a fix: https://github.com/michalc/stream-inflate/pull/100 As this package is not under my control, we have to wait until a new version of stream-inflate
is released with the new python wheels.
@Dunstkreis
Possible fixes would be? Downgrade Home Assistant? Use another plattform? Didnt get why its working for you as you said on your test py its running!?
And just to make this clear and make sure we all have the same expectations: I do everything here at my free time. And (apart from some donations) I get nothing for working on this.
I think i'm getting a picture now.
stream-inflate
provides wheels for the architectures amd64, x86_64, aarch64. You need armv7l as you are using a Raspberry Pi.- piwheels provides wheels for armv7l, however only for python 3.11 as this is the standard python version for the Raspberry Pi OS Bookworm.
- You need wheels for python 3.12 which is not a standard python version for the raspberry pi. This is due to HA shipping with the newest python version
Classic. Great investigative work! Thanks! If I remember correctly I'm running my pi with aarch64 (can docker "override" this? I guess not, since it isn't true virtualization), but if they don't ship this for 3.12 either, that's probably the reason.
Thanks for reporting this upstream. I guess this will fix itself eventually when3.12 becomes more prevalent? I just hope HA isn't shipped with 3.13 by then π
@t-animal
Classic. Great investigative work! Thanks! If I remember correctly I'm running my pi with aarch64 (can docker "override" this? I guess not, since it isn't true virtualization), but if they don't ship this for 3.12 either, that's probably the reason.
No docker can't override this. This is the reason some docker images can't run on some platforms. Can you please provide me the output of python3 -c 'import pip._internal.utils.compatibility_tags; print(pip._internal.utils.compatibility_tags.get_supported())'
as aarch64 should be available as a wheel.
Thanks for reporting this upstream. I guess this will fix itself eventually when3.12 becomes more prevalent? I just hope HA isn't shipped with 3.13 by then π
The PR I introduced upstream also already covers python 3.13 and i'll keep an eye on this ;)
@Dunstkreis
Possible fixes would be? Downgrade Home Assistant? Use another plattform? Didnt get why its working for you as you said on your test py its running!?
And just to make this clear and make sure we all have the same expectations: I do everything here at my free time. And (apart from some donations) I get nothing for working on this.
I know. Didnt meant to be disrespectful. In fact I am already wondering about your quick responses. :-) Gonna drop another portion of caffeine in the morning soon ... ;-)
octohass:/config# python3 -c 'import pip._internal.utils.compatibility_tags; print(pip._internal.utils.compatibility_tags.get_supported())'
[<cp312-cp312-musllinux_1_2_armv7l @ 3060390376>, <cp312-cp312-musllinux_1_1_armv7l @ 3059811240>, <cp312-cp312-musllinux_1_0_armv7l @ 3059811464>, <cp312-cp312-linux_armv7l @ 3059811560>, <cp312-abi3-musllinux_1_2_armv7l @ 3059811784>, <cp312-abi3-musllinux_1_1_armv7l @ 3059811720>, <cp312-abi3-musllinux_1_0_armv7l @ 3059811912>, <cp312-abi3-linux_armv7l @ 3059811944>, <cp312-none-musllinux_1_2_armv7l @ 3059812040>, <cp312-none-musllinux_1_1_armv7l @ 3062114632>, <cp312-none-musllinux_1_0_armv7l @ 3059812200>, <cp312-none-linux_armv7l @ 3059812296>, <cp311-abi3-musllinux_1_2_armv7l @ 3062114120>, <cp311-abi3-musllinux_1_1_armv7l @ 3059812392>, <cp311-abi3-musllinux_1_0_armv7l @ 3059812488>, <cp311-abi3-linux_armv7l @ 3059812584>, <cp310-abi3-musllinux_1_2_armv7l @ 3059812680>, <cp310-abi3-musllinux_1_1_armv7l @ 3059812776>, <cp310-abi3-musllinux_1_0_armv7l @ 3059812872>, <cp310-abi3-linux_armv7l @ 3059812968>, <cp39-abi3-musllinux_1_2_armv7l @ 3059813064>, <cp39-abi3-musllinux_1_1_armv7l @ 3059813160>, <cp39-abi3-musllinux_1_0_armv7l @ 3059813256>, <cp39-abi3-linux_armv7l @ 3059813352>, <cp38-abi3-musllinux_1_2_armv7l @ 3059813448>, <cp38-abi3-musllinux_1_1_armv7l @ 3059813544>, <cp38-abi3-musllinux_1_0_armv7l @ 3059813640>, <cp38-abi3-linux_armv7l @ 3059813736>, <cp37-abi3-musllinux_1_2_armv7l @ 3059813832>, <cp37-abi3-musllinux_1_1_armv7l @ 3059813928>, <cp37-abi3-musllinux_1_0_armv7l @ 3059814024>, <cp37-abi3-linux_armv7l @ 3059814120>, <cp36-abi3-musllinux_1_2_armv7l @ 3059814216>, <cp36-abi3-musllinux_1_1_armv7l @ 3059814312>, <cp36-abi3-musllinux_1_0_armv7l @ 3059826728>, <cp36-abi3-linux_armv7l @ 3059826824>, <cp35-abi3-musllinux_1_2_armv7l @ 3059826920>, <cp35-abi3-musllinux_1_1_armv7l @ 3059827016>, <cp35-abi3-musllinux_1_0_armv7l @ 3059827112>, <cp35-abi3-linux_armv7l @ 3059827208>, <cp34-abi3-musllinux_1_2_armv7l @ 3059827304>, <cp34-abi3-musllinux_1_1_armv7l @ 3059827400>, <cp34-abi3-musllinux_1_0_armv7l @ 3059827496>, <cp34-abi3-linux_armv7l @ 3059827592>, <cp33-abi3-musllinux_1_2_armv7l @ 3059827688>, <cp33-abi3-musllinux_1_1_armv7l @ 3059827784>, <cp33-abi3-musllinux_1_0_armv7l @ 3059827880>, <cp33-abi3-linux_armv7l @ 3059827976>, <cp32-abi3-musllinux_1_2_armv7l @ 3059828072>, <cp32-abi3-musllinux_1_1_armv7l @ 3059828168>, <cp32-abi3-musllinux_1_0_armv7l @ 3059828264>, <cp32-abi3-linux_armv7l @ 3059828360>, <py312-none-musllinux_1_2_armv7l @ 3059828552>, <py312-none-musllinux_1_1_armv7l @ 3059828648>, <py312-none-musllinux_1_0_armv7l @ 3059828744>, <py312-none-linux_armv7l @ 3059828840>, <py3-none-musllinux_1_2_armv7l @ 3059828584>, <py3-none-musllinux_1_1_armv7l @ 3059828968>, <py3-none-musllinux_1_0_armv7l @ 3059829032>, <py3-none-linux_armv7l @ 3059829096>, <py311-none-musllinux_1_2_armv7l @ 3059829192>, <py311-none-musllinux_1_1_armv7l @ 3059829288>, <py311-none-musllinux_1_0_armv7l @ 3059829384>, <py311-none-linux_armv7l @ 3059829480>, <py310-none-musllinux_1_2_armv7l @ 3059829160>, <py310-none-musllinux_1_1_armv7l @ 3059829672>, <py310-none-musllinux_1_0_armv7l @ 3059829768>, <py310-none-linux_armv7l @ 3059829864>, <py39-none-musllinux_1_2_armv7l @ 3059829576>, <py39-none-musllinux_1_1_armv7l @ 3059830056>, <py39-none-musllinux_1_0_armv7l @ 3059830152>, <py39-none-linux_armv7l @ 3059830248>, <py38-none-musllinux_1_2_armv7l @ 3059829960>, <py38-none-musllinux_1_1_armv7l @ 3059830440>, <py38-none-musllinux_1_0_armv7l @ 3059830536>, <py38-none-linux_armv7l @ 3059830632>, <py37-none-musllinux_1_2_armv7l @ 3059830344>, <py37-none-musllinux_1_1_armv7l @ 3059834952>, <py37-none-musllinux_1_0_armv7l @ 3059835048>, <py37-none-linux_armv7l @ 3059835144>, <py36-none-musllinux_1_2_armv7l @ 3059830728>, <py36-none-musllinux_1_1_armv7l @ 3059835336>, <py36-none-musllinux_1_0_armv7l @ 3059835432>, <py36-none-linux_armv7l @ 3059835528>, <py35-none-musllinux_1_2_armv7l @ 3059835240>, <py35-none-musllinux_1_1_armv7l @ 3059835720>, <py35-none-musllinux_1_0_armv7l @ 3059835816>, <py35-none-linux_armv7l @ 3059835912>, <py34-none-musllinux_1_2_armv7l @ 3059835624>, <py34-none-musllinux_1_1_armv7l @ 3059836104>, <py34-none-musllinux_1_0_armv7l @ 3059836200>, <py34-none-linux_armv7l @ 3059836296>, <py33-none-musllinux_1_2_armv7l @ 3059836008>, <py33-none-musllinux_1_1_armv7l @ 3059836488>, <py33-none-musllinux_1_0_armv7l @ 3059836584>, <py33-none-linux_armv7l @ 3059836680>, <py32-none-musllinux_1_2_armv7l @ 3059836392>, <py32-none-musllinux_1_1_armv7l @ 3059836872>, <py32-none-musllinux_1_0_armv7l @ 3059836968>, <py32-none-linux_armv7l @ 3059837064>, <py31-none-musllinux_1_2_armv7l @ 3059836776>, <py31-none-musllinux_1_1_armv7l @ 3059837256>, <py31-none-musllinux_1_0_armv7l @ 3059837352>, <py31-none-linux_armv7l @ 3059837448>, <py30-none-musllinux_1_2_armv7l @ 3059837160>, <py30-none-musllinux_1_1_armv7l @ 3059837640>, <py30-none-musllinux_1_0_armv7l @ 3059837736>, <py30-none-linux_armv7l @ 3059837832>, <cp312-none-any @ 3059837928>, <py312-none-any @ 3059837544>, <py3-none-any @ 3059838024>, <py311-none-any @ 3059838184>, <py310-none-any @ 3059838152>, <py39-none-any @ 3059838280>, <py38-none-any @ 3059838376>, <py37-none-any @ 3059838472>, <py36-none-any @ 3059838568>, <py35-none-any @ 3059838664>, <py34-none-any @ 3059838760>, <py33-none-any @ 3059838856>, <py32-none-any @ 3059838952>, <py31-none-any @ 3059839080>, <py30-none-any @ 3059839176>]
this? - edit: ah no, guess you meant the other guy, sorry, just running through here trying to provide input if needed. But please just ignore it and dont bother if its not useful ... ^^
@FL550 chiming in here as it looks like issue https://github.com/FL550/dwd_weather/issues/170#issuecomment-2469877066 and this one are both rooted in the very same root cause. First, excellent analysis, looks like you have nailed it down!
Running in my HAOS container:
python3 -c 'import pip._internal.utils.compatibility_tags; print(pip._internal.utils.compatibility_tags.get_supported())'
gives me the following output:`
[<cp312-cp312-musllinux_1_2_armv7l @ 3061721960>, <cp312-cp312-musllinux_1_1_armv7l @ 3058900360>, <cp312-cp312-musllinux_1_0_armv7l @ 3058900552>, <cp312-cp312-linux_armv7l @ 3058899912>, <cp312-abi3-musllinux_1_2_armv7l @ 3058899592>, <cp312-abi3-musllinux_1_1_armv7l @ 3058899336>, <cp312-abi3-musllinux_1_0_armv7l @ 3058899112>, <cp312-abi3-linux_armv7l @ 3058898664>, <cp312-none-musllinux_1_2_armv7l @ 3058898216>, <cp312-none-musllinux_1_1_armv7l @ 3064190856>, <cp312-none-musllinux_1_0_armv7l @ 3058899432>, <cp312-none-linux_armv7l @ 3059711208>, <cp311-abi3-musllinux_1_2_armv7l @ 3064190792>, <cp311-abi3-musllinux_1_1_armv7l @ 3059708008>, <cp311-abi3-musllinux_1_0_armv7l @ 3059709704>, <cp311-abi3-linux_armv7l @ 3059710024>, <cp310-abi3-musllinux_1_2_armv7l @ 3059710248>, <cp310-abi3-musllinux_1_1_armv7l @ 3059710472>, <cp310-abi3-musllinux_1_0_armv7l @ 3059709768>, <cp310-abi3-linux_armv7l @ 3059711400>, <cp39-abi3-musllinux_1_2_armv7l @ 3059711560>, <cp39-abi3-musllinux_1_1_armv7l @ 3059711784>, <cp39-abi3-musllinux_1_0_armv7l @ 3058839592>, <cp39-abi3-linux_armv7l @ 3058840136>, <cp38-abi3-musllinux_1_2_armv7l @ 3058840648>, <cp38-abi3-musllinux_1_1_armv7l @ 3058840808>, <cp38-abi3-musllinux_1_0_armv7l @ 3058841256>, <cp38-abi3-linux_armv7l @ 3058841480>, <cp37-abi3-musllinux_1_2_armv7l @ 3058841800>, <cp37-abi3-musllinux_1_1_armv7l @ 3058842280>, <cp37-abi3-musllinux_1_0_armv7l @ 3058842664>, <cp37-abi3-linux_armv7l @ 3058843464>, <cp36-abi3-musllinux_1_2_armv7l @ 3058831688>, <cp36-abi3-musllinux_1_1_armv7l @ 3058832008>, <cp36-abi3-musllinux_1_0_armv7l @ 3058832520>, <cp36-abi3-linux_armv7l @ 3058833160>, <cp35-abi3-musllinux_1_2_armv7l @ 3058833448>, <cp35-abi3-musllinux_1_1_armv7l @ 3058834024>, <cp35-abi3-musllinux_1_0_armv7l @ 3058834408>, <cp35-abi3-linux_armv7l @ 3058834664>, <cp34-abi3-musllinux_1_2_armv7l @ 3058835112>, <cp34-abi3-musllinux_1_1_armv7l @ 3058823432>, <cp34-abi3-musllinux_1_0_armv7l @ 3058823656>, <cp34-abi3-linux_armv7l @ 3058824136>, <cp33-abi3-musllinux_1_2_armv7l @ 3058824296>, <cp33-abi3-musllinux_1_1_armv7l @ 3058824808>, <cp33-abi3-musllinux_1_0_armv7l @ 3058824968>, <cp33-abi3-linux_armv7l @ 3058825128>, <cp32-abi3-musllinux_1_2_armv7l @ 3058825480>, <cp32-abi3-musllinux_1_1_armv7l @ 3058825704>, <cp32-abi3-musllinux_1_0_armv7l @ 3058825928>, <cp32-abi3-linux_armv7l @ 3058826440>, <py312-none-musllinux_1_2_armv7l @ 3061721800>, <py312-none-musllinux_1_1_armv7l @ 3058909448>, <py312-none-musllinux_1_0_armv7l @ 3058909704>, <py312-none-linux_armv7l @ 3058910152>, <py3-none-musllinux_1_2_armv7l @ 3061721864>, <py3-none-musllinux_1_1_armv7l @ 3058910280>, <py3-none-musllinux_1_0_armv7l @ 3058910664>, <py3-none-linux_armv7l @ 3058911080>, <py311-none-musllinux_1_2_armv7l @ 3058911560>, <py311-none-musllinux_1_1_armv7l @ 3058911976>, <py311-none-musllinux_1_0_armv7l @ 3058912168>, <py311-none-linux_armv7l @ 3061792552>, <py310-none-musllinux_1_2_armv7l @ 3058911400>, <py310-none-musllinux_1_1_armv7l @ 3061788936>, <py310-none-musllinux_1_0_armv7l @ 3061789384>, <py310-none-linux_armv7l @ 3061789672>, <py39-none-musllinux_1_2_armv7l @ 3061788744>, <py39-none-musllinux_1_1_armv7l @ 3061790472>, <py39-none-musllinux_1_0_armv7l @ 3061790632>, <py39-none-linux_armv7l @ 3061790952>, <py38-none-musllinux_1_2_armv7l @ 3061790280>, <py38-none-musllinux_1_1_armv7l @ 3061791400>, <py38-none-musllinux_1_0_armv7l @ 3061792744>, <py38-none-linux_armv7l @ 3061792296>, <py37-none-musllinux_1_2_armv7l @ 3061791112>, <py37-none-musllinux_1_1_armv7l @ 3058924680>, <py37-none-musllinux_1_0_armv7l @ 3058924584>, <py37-none-linux_armv7l @ 3058924488>, <py36-none-musllinux_1_2_armv7l @ 3058925224>, <py36-none-musllinux_1_1_armv7l @ 3058924296>, <py36-none-musllinux_1_0_armv7l @ 3058924200>, <py36-none-linux_armv7l @ 3058924072>, <py35-none-musllinux_1_2_armv7l @ 3058924392>, <py35-none-musllinux_1_1_armv7l @ 3058923816>, <py35-none-musllinux_1_0_armv7l @ 3058923688>, <py35-none-linux_armv7l @ 3058923208>, <py34-none-musllinux_1_2_armv7l @ 3058923912>, <py34-none-musllinux_1_1_armv7l @ 3058913672>, <py34-none-musllinux_1_0_armv7l @ 3058915880>, <py34-none-linux_armv7l @ 3059704552>, <py33-none-musllinux_1_2_armv7l @ 3058921736>, <py33-none-musllinux_1_1_armv7l @ 3059704744>, <py33-none-musllinux_1_0_armv7l @ 3059704840>, <py33-none-linux_armv7l @ 3059704936>, <py32-none-musllinux_1_2_armv7l @ 3059704648>, <py32-none-musllinux_1_1_armv7l @ 3059705128>, <py32-none-musllinux_1_0_armv7l @ 3059705224>, <py32-none-linux_armv7l @ 3059705320>, <py31-none-musllinux_1_2_armv7l @ 3059705032>, <py31-none-musllinux_1_1_armv7l @ 3059705512>, <py31-none-musllinux_1_0_armv7l @ 3059705608>, <py31-none-linux_armv7l @ 3059705704>, <py30-none-musllinux_1_2_armv7l @ 3059705416>, <py30-none-musllinux_1_1_armv7l @ 3059705896>, <py30-none-musllinux_1_0_armv7l @ 3059705992>, <py30-none-linux_armv7l @ 3059706088>, <cp312-none-any @ 3059706184>, <py312-none-any @ 3059705800>, <py3-none-any @ 3059706280>, <py311-none-any @ 3059706440>, <py310-none-any @ 3059706408>, <py39-none-any @ 3059706536>, <py38-none-any @ 3059706632>, <py37-none-any @ 3059706728>, <py36-none-any @ 3059706824>, <py35-none-any @ 3059706920>, <py34-none-any @ 3059707016>, <py33-none-any @ 3059707112>, <py32-none-any @ 3059707208>, <py31-none-any @ 3059707304>, <py30-none-any @ 3059707400>]
I guess that this confirms your hypothesis. Great work - that means we just have to be a bit patient until the stream-inflate package gets updated. Thanks so much for your work @FL550 !!!!
(I will close my own issue as being a duplicate)
This should hopefully now be resolved with 2.1.24.
This was some hell of a ride digging into the compile and distribution logic of Python and Rust.
Outstanding!!! I just tried it, and everything works now again!!!! Super job, thank you so much for having believed into our issues, going into the root cause analysis and resolving it!
Just sent you 3 coffees as a little thank you! :-)
Fantastic! It's working again, thanks thanks thanks
I could update and restart remotely and can also confirm that it works again. Thank you!
Great to hear! :)
It's working again for me too. Thank you very much.
A bit late to the show but big surprise its working again for me too! :-) ty so much man! Gonna drop another coffee but you are welcome to convert it to a beer this weekend. Cheers mate.
Installing/updating the integration requires
cargo
, which is not available in the home-assistant docker container.Version of home_assistant
2024.10.1
Version of the custom_component
2.1.19
Describe the bug
When I start home assistant I get the notification:
Debug log