dknowles2 / ha-pitboss

Home Assistant Custom Integration for PitBoss smokers and grills
MIT License
32 stars 4 forks source link

Not working in 2024.2 #42

Closed savdagod closed 8 months ago

savdagod commented 9 months ago

System Health details

System Information

version core-2024.1.6
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.11.6
os_name Linux
os_version 6.1.74-haos
arch x86_64
timezone America/New_York
config_dir /config
Home Assistant Community Store GitHub API | ok -- | -- GitHub Content | ok GitHub Web | ok GitHub API Calls Remaining | 5000 Installed Version | 1.34.0 Stage | running Available Repositories | 1392 Downloaded Repositories | 24
Home Assistant Cloud logged_in | true -- | -- subscription_expiration | December 18, 2024 at 7:00 PM relayer_connected | true relayer_region | us-east-1 remote_enabled | true remote_connected | true alexa_enabled | false google_enabled | false remote_server | us-east-1-2.ui.nabu.casa certificate_status | ready instance_id | 599a136f6ea74e00b69aacb75e70d4c1 can_reach_cert_server | ok can_reach_cloud_auth | ok can_reach_cloud | ok
Home Assistant Supervisor host_os | Home Assistant OS 11.5 -- | -- update_channel | stable supervisor_version | supervisor-2024.01.1 agent_version | 1.6.0 docker_version | 24.0.7 disk_total | 58.3 GB disk_used | 20.3 GB healthy | true supported | true board | ova supervisor_api | ok version_api | ok installed_addons | MariaDB (2.6.1), Studio Code Server (5.15.0), Samba share (12.2.0), Home Assistant Google Drive Backup (0.112.1), ESPHome (2023.12.5), Mosquitto broker (6.4.0), PS5 MQTT (1.3.1), Frigate Proxy (1.4), Zigbee2MQTT Proxy (0.2.0), Matter Server (5.0.4), chrony (3.0.1), Scrypted (18-jammy-full.s6-v0.93.0)
Dashboards dashboards | 4 -- | -- resources | 14 views | 29 mode | storage
Recorder oldest_recorder_run | January 31, 2024 at 12:49 PM -- | -- current_recorder_run | February 7, 2024 at 6:27 PM estimated_db_size | 1776.44 MiB database_engine | mysql database_version | 10.6.12
Spotify api_endpoint_reachable | ok -- | --

Checklist

Describe the issue

Integration does not load in 2024.2

Reproduction steps

  1. Install 2024.2
  2. Config will not load ...

Debug logs

Already rolled system back, can upgrade again to provide logs

Diagnostics dump

No response

TTLucian commented 9 months ago
Logger: homeassistant.loader
Source: loader.py:847
First occurred: 13:49:48 (5 occurrences)
Last logged: 14:28:04

Unexpected exception importing platform custom_components.pitboss.config_flow
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/loader.py", line 847, in get_platform
    cache[full_name] = self._import_platform(platform_name)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/loader.py", line 864, in _import_platform
    return importlib.import_module(f"{self.pkg_path}.{platform_name}")
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/importlib/__init__.py", line 90, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1310, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 994, in exec_module
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "/config/custom_components/pitboss/__init__.py", line 17, in <module>
    from .coordinator import PitBossDataUpdateCoordinator
  File "/config/custom_components/pitboss/coordinator.py", line 15, in <module>
    from pytboss import BleConnection, PitBoss
  File "/usr/local/lib/python3.12/site-packages/pytboss/__init__.py", line 3, in <module>
    from .api import PitBoss  # noqa: F401
    ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/pytboss/api.py", line 9, in <module>
    from . import grills
  File "/usr/local/lib/python3.12/site-packages/pytboss/grills.py", line 10, in <module>
    import js2py
  File "/usr/local/lib/python3.12/site-packages/js2py/__init__.py", line 72, in <module>
    from .base import PyJsException
  File "/usr/local/lib/python3.12/site-packages/js2py/base.py", line 2965, in <module>
    @Js
     ^^
  File "/usr/local/lib/python3.12/site-packages/js2py/base.py", line 165, in Js
    return PyJsFunction(val, FunctionPrototype)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/js2py/base.py", line 1377, in __init__
    cand = fix_js_args(func)
           ^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/js2py/utils/injector.py", line 27, in fix_js_args
    code = append_arguments(six.get_function_code(func), ('this', 'arguments'))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/js2py/utils/injector.py", line 121, in append_arguments
    arg = name_translations[inst.arg]
          ~~~~~~~~~~~~~~~~~^^^^^^^^^^
KeyError: 3
dknowles2 commented 9 months ago

I am unable to reproduce this.

The stack trace from @TTLucian is strange, as it's failing when loading a python dependency. Maybe try reinstalling the integration? I think that should force the dependencies to be reinstalled.

TTLucian commented 9 months ago

This started after upgrading ha to 2024.2. I don't know if it's relevant but changelog said python was upgraded to 3.12. Now I can't even delete the integration. Error below:

Logger: aiohttp.server
Source: /usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py:421
First occurred: 18:20:32 (2 occurrences)
Last logged: 19:19:09

Error handling request
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/loader.py", line 827, in get_component
    ComponentProtocol, importlib.import_module(self.pkg_path)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/importlib/__init__.py", line 90, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 994, in exec_module
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "/config/custom_components/pitboss/__init__.py", line 17, in <module>
    from .coordinator import PitBossDataUpdateCoordinator
  File "/config/custom_components/pitboss/coordinator.py", line 15, in <module>
    from pytboss import BleConnection, PitBoss
  File "/usr/local/lib/python3.12/site-packages/pytboss/__init__.py", line 3, in <module>
    from .api import PitBoss  # noqa: F401
    ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/pytboss/api.py", line 9, in <module>
    from . import grills
  File "/usr/local/lib/python3.12/site-packages/pytboss/grills.py", line 10, in <module>
    import js2py
  File "/usr/local/lib/python3.12/site-packages/js2py/__init__.py", line 72, in <module>
    from .base import PyJsException
  File "/usr/local/lib/python3.12/site-packages/js2py/base.py", line 2965, in <module>
    @Js
     ^^
  File "/usr/local/lib/python3.12/site-packages/js2py/base.py", line 165, in Js
    return PyJsFunction(val, FunctionPrototype)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/js2py/base.py", line 1377, in __init__
    cand = fix_js_args(func)
           ^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/js2py/utils/injector.py", line 27, in fix_js_args
    code = append_arguments(six.get_function_code(func), ('this', 'arguments'))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/js2py/utils/injector.py", line 121, in append_arguments
    arg = name_translations[inst.arg]
          ~~~~~~~~~~~~~~~~~^^^^^^^^^^
KeyError: 3

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py", line 452, in _handle_request
    resp = await request_handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/web_app.py", line 543, in _handle
    resp = await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/web_middlewares.py", line 114, in impl
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 91, in security_filter_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 100, in forwarded_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 28, in request_context_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 80, in ban_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 235, in auth_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/headers.py", line 31, in headers_middleware
    response = await handler(request)
               ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 149, in handle
    result = await handler(request, **request.match_info)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 88, in delete
    result = await hass.config_entries.async_remove(entry_id)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1252, in async_remove
    await entry.async_remove(self.hass)
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 639, in async_remove
    component = integration.get_component()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/loader.py", line 835, in get_component
    raise ImportError(f"Exception importing {self.pkg_path}") from err
ImportError: Exception importing custom_components.pitboss
007GTCS commented 9 months ago

Just adding to this. I did a full manual uninstall and reloaded it. Integration wont load.

Error Message: Config flow could not be loaded: {"message":"Invalid handler specified"}

Also some more logs: Logger: homeassistant.loader Source: loader.py:847 First occurred: 11:27:00 AM (2 occurrences) Last logged: 11:27:07 AM

Unexpected exception importing platform custom_components.pitboss.config_flow Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/loader.py", line 847, in get_platform cache[full_name] = self._import_platform(platform_name) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/loader.py", line 864, in _import_platform return importlib.import_module(f"{self.pkg_path}.{platform_name}") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/importlib/init.py", line 90, in import_module return _bootstrap._gcd_import(name[level:], package, level) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 1387, in _gcd_import File "", line 1360, in _find_and_load File "", line 1310, in _find_and_load_unlocked File "", line 488, in _call_with_frames_removed File "", line 1387, in _gcd_import File "", line 1360, in _find_and_load File "", line 1331, in _find_and_load_unlocked File "", line 935, in _load_unlocked File "", line 994, in exec_module File "", line 488, in _call_with_frames_removed File "/config/custom_components/pitboss/init.py", line 17, in from .coordinator import PitBossDataUpdateCoordinator File "/config/custom_components/pitboss/coordinator.py", line 15, in from pytboss import BleConnection, PitBoss File "/usr/local/lib/python3.12/site-packages/pytboss/init.py", line 3, in from .api import PitBoss # noqa: F401 ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/pytboss/api.py", line 9, in from . import grills File "/usr/local/lib/python3.12/site-packages/pytboss/grills.py", line 10, in import js2py File "/usr/local/lib/python3.12/site-packages/js2py/init.py", line 72, in from .base import PyJsException File "/usr/local/lib/python3.12/site-packages/js2py/base.py", line 2965, in @Js ^^ File "/usr/local/lib/python3.12/site-packages/js2py/base.py", line 165, in Js return PyJsFunction(val, FunctionPrototype) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/js2py/base.py", line 1377, in init cand = fix_js_args(func) ^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/js2py/utils/injector.py", line 27, in fix_js_args code = append_arguments(six.get_function_code(func), ('this', 'arguments')) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/js2py/utils/injector.py", line 121, in append_arguments arg = name_translations[inst.arg]


KeyError: 3

Logger: homeassistant.config_entries
Source: config_entries.py:2247
First occurred: 11:27:00 AM (2 occurrences)
Last logged: 11:27:07 AM

Error occurred loading flow for integration pitboss: Exception importing custom_components.pitboss.config_flow
dknowles2 commented 9 months ago

Ah, I haven't updated HAOS yet, so I don't think I've picked up the new python version.

Sounds like https://github.com/PiotrDabkowski/Js2Py/issues/317 may be the culprit, but it appears that js2py may be unmaintained at this point. :(

I'll have to see if there's another alternative.

JShoota commented 9 months ago

I am experiencing the exact same issue as posted above. Happy to help with testing, if required.

dknowles2 commented 9 months ago

I pushed a new version that technically works with python 3.12, but it doesn't seem to work with Home Assistant (at least not with HAOS). It appears that the new dependency I added doesn't install correctly in HA. I understand why it's happening but I'm not sure how to fix it yet.

If I have more time this weekend I'll keep poking at it, but I've exhausted my mental capacity for the night.

ClownnHammer commented 9 months ago

I am having a similar issue, Config flow could not be loaded: 500 Internal Server Error Server got itself in trouble let me know if you need anymore information. I am new to this

cap60552 commented 9 months ago

I'm getting:

Failed to install - unable to compile dukpy [Unable to install package pytboss==2024.2.0]

I have an issue open on the dukpy project. But I'm not sure if that was the right place to do it. It seems like HAOS not having the gcc compiler installed is the root problem for dukpy.

dknowles2 commented 9 months ago

https://github.com/amol-/dukpy/issues/76 is the problem in dukpy. We need a new wheel compiled that supports python 3.12.

HAOS lacking gcc is working as intended. They don't want to compile dependencies on-the-fly when modules are installed and instead want pre-compiled dependencies inside python wheels that can be installed directly. Seems totally reasonable to me.

In order to fix this integration, we'll either need:

dknowles2 commented 9 months ago

I just pushed a 2024.2.1 release which should fix this.

TTLucian commented 9 months ago

It works great. Thank you!

AbidingOhmsLaw commented 8 months ago

Still can't get this to work using pitboss 2024.2.1 installed with HACS. HAOS running on a dedicated Raspberry Pi 4.

Core 2024.3.0 Supervisor 2024.02.1 Operating System 12.0 Frontend 20240306.0

I keep getting the same error as described above by @ClownnHammer "500 Internal Server Error Server got itself in trouble" Like others it was working before updating HA to 2024.2 but has not worked since. I have uninstalled and reinstalled with HACS several times as well as manually deleting the /homeassistanst/custom_components/pitboss folder and reinstall with HACS, every attempt results in the "500 Internal Server Error Server got itself in trouble" error when trying to install the integration. @dknowles2 noted that 2024.2.1 was pushed to fix this but it does not seem to work for me. I have removed all of the entities related to my grill as well. I believe that everything pitboss, pytboss, or grill related has been removed before attempting to reinstall, Is there something else I need to remove?

Here is the system log from attempting to install the integration:

Logger: aiohttp.server
Source: /usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py:421
First occurred: 11:01:42 AM (2 occurrences)
Last logged: 11:20:37 AM

Error handling request
Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py", line 452, in _handle_request
    resp = await request_handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/web_app.py", line 543, in _handle
    resp = await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/web_middlewares.py", line 114, in impl
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 91, in security_filter_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 100, in forwarded_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 25, in request_context_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 79, in ban_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 235, in auth_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/headers.py", line 31, in headers_middleware
    response = await handler(request)
               ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/http.py", line 68, in handle
    result = await handler(request, **request.match_info)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/decorators.py", line 72, in with_admin
    return await func(self, request, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 159, in post
    return await super().post(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 72, in wrapper
    result = await method(view, request, data, *args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/data_entry_flow.py", line 71, in post
    result = await self._flow_mgr.async_init(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1050, in async_init
    flow, result = await self._async_init(flow_id, handler, context, data)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1070, in _async_init
    flow = await self.async_create_flow(handler, context=context, data=data)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1205, in async_create_flow
    handler = await _async_get_flow_handler(
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 2463, in _async_get_flow_handler
    await _load_integration(hass, domain, hass_config)
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 2440, in _load_integration
    await async_process_deps_reqs(hass, hass_config, integration)
  File "/usr/src/homeassistant/homeassistant/setup.py", line 529, in async_process_deps_reqs
    await requirements.async_get_integration_with_requirements(
  File "/usr/src/homeassistant/homeassistant/requirements.py", line 52, in async_get_integration_with_requirements
    return await manager.async_get_integration_with_requirements(domain)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/requirements.py", line 175, in async_get_integration_with_requirements
    await self._async_process_integration(integration, done)
  File "/usr/src/homeassistant/homeassistant/requirements.py", line 192, in _async_process_integration
    await self.async_process_requirements(
  File "/usr/src/homeassistant/homeassistant/requirements.py", line 274, in async_process_requirements
    self._raise_for_failed_requirements(name, missing)
  File "/usr/src/homeassistant/homeassistant/requirements.py", line 302, in _raise_for_failed_requirements
    raise RequirementsNotFound(integration, [req])
homeassistant.requirements.RequirementsNotFound: Requirements for pitboss not found: ['pytboss==2024.2.1'].
dknowles2 commented 8 months ago

I'm guessing there's some dependency that's failing to install, but those logs don't show what it is.

AbidingOhmsLaw commented 8 months ago

Is there something more I can provide to you, or someway I can figure out what dependency is needed?

tylerpyatt commented 8 months ago

I am having similar issue as V=IR and completed similar steps (remove all traces of Pitboss integration to try and remedy, I did not remove/reinstall HACS, though) and have the following log entry that might provide some additional insight. After the 2024.2 update I tried multiple attempts at trying to get it to work (downgrade, update, reinstall) and each time it seemed like "pytboss==2024.2.1" was always the/a culprit.

I really appreciate this integration and all the effort that has gone in to making it function. I can make a pretty capable spreadsheet but what I am about to paste is well out of my realm of understanding.

My appologies if this is pasted incorrectly, it looks like logbook vomit:

`Logger: homeassistant.util.package Source: util/package.py:122 First occurred: 2:31:29 AM (3 occurrences) Last logged: 2:32:13 AM

Unable to install package pytboss==2024.2.1: error: subprocess-exited-with-error × python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [144 lines of output] running bdist_wheel running build running build_py creating build creating build/lib.linux-aarch64-cpython-312 creating build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/tsc.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/run.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/nodelike.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/module_loader.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/lessc.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/install.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/evaljs.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/coffee.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/babel.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/init.py -> build/lib.linux-aarch64-cpython-312/dukpy creating build/lib.linux-aarch64-cpython-312/dukpy/webassets copying dukpy/webassets/typescriptfilter.py -> build/lib.linux-aarch64-cpython-312/dukpy/webassets copying dukpy/webassets/lessfilter.py -> build/lib.linux-aarch64-cpython-312/dukpy/webassets copying dukpy/webassets/jsxfilter.py -> build/lib.linux-aarch64-cpython-312/dukpy/webassets copying dukpy/webassets/babelfilter.py -> build/lib.linux-aarch64-cpython-312/dukpy/webassets copying dukpy/webassets/init.py -> build/lib.linux-aarch64-cpython-312/dukpy/webassets creating build/lib.linux-aarch64-cpython-312/dukpy/jscore copying dukpy/jscore/url.js -> build/lib.linux-aarch64-cpython-312/dukpy/jscore copying dukpy/jscore/querystring.js -> build/lib.linux-aarch64-cpython-312/dukpy/jscore copying dukpy/jscore/punycode.js -> build/lib.linux-aarch64-cpython-312/dukpy/jscore copying dukpy/jscore/path.js -> build/lib.linux-aarch64-cpython-312/dukpy/jscore copying dukpy/jscore/fs.js -> build/lib.linux-aarch64-cpython-312/dukpy/jscore creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules copying dukpy/jsmodules/typescriptServices.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules copying dukpy/jsmodules/semver.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules copying dukpy/jsmodules/coffeescript.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules copying dukpy/jsmodules/babel-6.26.0.min.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/react copying dukpy/jsmodules/react/react.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/react copying dukpy/jsmodules/react/react-dom-server.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/react creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/url-file-manager.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/plugin-loader.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/lessc-helper.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/index.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/image-size.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/fs.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/file-manager.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/environment.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/utils.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/transform-tree.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/source-map-output.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/source-map-builder.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/render.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/plugin-manager.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/parse.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/parse-tree.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/logger.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/less-error.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/index.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/import-manager.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/contexts.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/visitor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/to-css-visitor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/set-tree-visibility-visitor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/join-selector-visitor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/index.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/import-visitor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/import-sequencer.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/extend-visitor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/variable.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/value.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/url.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/unit.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/unicode-descriptor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/selector.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/ruleset.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/ruleset-call.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/rule.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/quoted.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/paren.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/operation.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/node.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/negative.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/mixin-definition.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/mixin-call.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/media.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/keyword.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/js-eval-node.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/javascript.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/index.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/import.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/extend.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/expression.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/element.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/directive.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/dimension.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/detached-ruleset.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/debug-info.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/condition.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/comment.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/combinator.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/color.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/call.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/attribute.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/assignment.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/anonymous.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/alpha.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/plugins copying dukpy/jsmodules/less/less/plugins/function-importer.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/plugins creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/parser copying dukpy/jsmodules/less/less/parser/parser.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/parser copying dukpy/jsmodules/less/less/parser/parser-input.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/parser copying dukpy/jsmodules/less/less/parser/chunker.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/parser creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/types.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/svg.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/string.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/number.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/math.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/math-helper.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/index.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/function-registry.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/function-caller.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/default.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/data-uri.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/color.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/color-blending.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/environment copying dukpy/jsmodules/less/less/environment/file-manager-api.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/environment copying dukpy/jsmodules/less/less/environment/environment.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/environment copying dukpy/jsmodules/less/less/environment/environment-api.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/environment copying dukpy/jsmodules/less/less/environment/abstract-file-manager.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/environment creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/data copying dukpy/jsmodules/less/less/data/unit-conversions.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/data copying dukpy/jsmodules/less/less/data/index.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/data copying dukpy/jsmodules/less/less/data/colors.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/data running build_ext building 'dukpy._dukpy' extension creating build/temp.linux-aarch64-cpython-312 creating build/temp.linux-aarch64-cpython-312/src creating build/temp.linux-aarch64-cpython-312/src/duktape 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 -DDUK_OPT_NONSTD_REGEXP_DOLLAR_ESCAPE=1 -DDUK_OPT_OCTAL_SUPPORT=1 -I./src/duktape -I/usr/local/include/python3.12 -c src/_support.c -o build/temp.linux-aarch64-cpython-312/src/_support.o error: command 'gcc' failed: No such file or directory [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for dukpy ERROR: Could not build wheels for dukpy, which is required to install pyproject.toml-based projects`

JavaScriptJohn commented 8 months ago

I'm having a similar issue: homeassistant.requirements.RequirementsNotFound: Requirements for pitboss not found: ['pytboss==2024.2.1'].

TTLucian commented 8 months ago

@JavaScriptJohn What's your HA version?

JavaScriptJohn commented 8 months ago

@JavaScriptJohn What's your HA version?

image

TTLucian commented 8 months ago

I don't know what's going on. It's working fine for me. HA OS installed on WMWare Workstation.

JavaScriptJohn commented 8 months ago

I get an error message when I first install it from HACS:

image

Logger: homeassistant.util.package Source: util/package.py:122 First occurred: 11:22:57 AM (2 occurrences) Last logged: 11:23:03 AM

Unable to install package pytboss==2024.2.1: error: subprocess-exited-with-error × python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [144 lines of output] running bdist_wheel running build running build_py creating build creating build/lib.linux-aarch64-cpython-312 creating build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/tsc.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/run.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/nodelike.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/module_loader.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/lessc.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/install.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/evaljs.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/coffee.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/babel.py -> build/lib.linux-aarch64-cpython-312/dukpy copying dukpy/__init__.py -> build/lib.linux-aarch64-cpython-312/dukpy creating build/lib.linux-aarch64-cpython-312/dukpy/webassets copying dukpy/webassets/typescriptfilter.py -> build/lib.linux-aarch64-cpython-312/dukpy/webassets copying dukpy/webassets/lessfilter.py -> build/lib.linux-aarch64-cpython-312/dukpy/webassets copying dukpy/webassets/jsxfilter.py -> build/lib.linux-aarch64-cpython-312/dukpy/webassets copying dukpy/webassets/babelfilter.py -> build/lib.linux-aarch64-cpython-312/dukpy/webassets copying dukpy/webassets/__init__.py -> build/lib.linux-aarch64-cpython-312/dukpy/webassets creating build/lib.linux-aarch64-cpython-312/dukpy/jscore copying dukpy/jscore/url.js -> build/lib.linux-aarch64-cpython-312/dukpy/jscore copying dukpy/jscore/querystring.js -> build/lib.linux-aarch64-cpython-312/dukpy/jscore copying dukpy/jscore/punycode.js -> build/lib.linux-aarch64-cpython-312/dukpy/jscore copying dukpy/jscore/path.js -> build/lib.linux-aarch64-cpython-312/dukpy/jscore copying dukpy/jscore/fs.js -> build/lib.linux-aarch64-cpython-312/dukpy/jscore creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules copying dukpy/jsmodules/typescriptServices.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules copying dukpy/jsmodules/semver.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules copying dukpy/jsmodules/coffeescript.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules copying dukpy/jsmodules/babel-6.26.0.min.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/react copying dukpy/jsmodules/react/react.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/react copying dukpy/jsmodules/react/react-dom-server.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/react creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/url-file-manager.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/plugin-loader.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/lessc-helper.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/index.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/image-size.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/fs.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/file-manager.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node copying dukpy/jsmodules/less/less-node/environment.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less-node creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/utils.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/transform-tree.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/source-map-output.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/source-map-builder.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/render.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/plugin-manager.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/parse.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/parse-tree.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/logger.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/less-error.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/index.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/import-manager.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less copying dukpy/jsmodules/less/less/contexts.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/visitor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/to-css-visitor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/set-tree-visibility-visitor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/join-selector-visitor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/index.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/import-visitor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/import-sequencer.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors copying dukpy/jsmodules/less/less/visitors/extend-visitor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/visitors creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/variable.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/value.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/url.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/unit.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/unicode-descriptor.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/selector.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/ruleset.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/ruleset-call.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/rule.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/quoted.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/paren.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/operation.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/node.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/negative.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/mixin-definition.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/mixin-call.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/media.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/keyword.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/js-eval-node.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/javascript.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/index.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/import.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/extend.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/expression.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/element.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/directive.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/dimension.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/detached-ruleset.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/debug-info.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/condition.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/comment.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/combinator.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/color.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/call.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/attribute.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/assignment.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/anonymous.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree copying dukpy/jsmodules/less/less/tree/alpha.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/tree creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/plugins copying dukpy/jsmodules/less/less/plugins/function-importer.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/plugins creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/parser copying dukpy/jsmodules/less/less/parser/parser.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/parser copying dukpy/jsmodules/less/less/parser/parser-input.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/parser copying dukpy/jsmodules/less/less/parser/chunker.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/parser creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/types.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/svg.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/string.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/number.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/math.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/math-helper.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/index.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/function-registry.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/function-caller.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/default.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/data-uri.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/color.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions copying dukpy/jsmodules/less/less/functions/color-blending.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/functions creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/environment copying dukpy/jsmodules/less/less/environment/file-manager-api.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/environment copying dukpy/jsmodules/less/less/environment/environment.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/environment copying dukpy/jsmodules/less/less/environment/environment-api.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/environment copying dukpy/jsmodules/less/less/environment/abstract-file-manager.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/environment creating build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/data copying dukpy/jsmodules/less/less/data/unit-conversions.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/data copying dukpy/jsmodules/less/less/data/index.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/data copying dukpy/jsmodules/less/less/data/colors.js -> build/lib.linux-aarch64-cpython-312/dukpy/jsmodules/less/less/data running build_ext building 'dukpy._dukpy' extension creating build/temp.linux-aarch64-cpython-312 creating build/temp.linux-aarch64-cpython-312/src creating build/temp.linux-aarch64-cpython-312/src/duktape 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 -DDUK_OPT_NONSTD_REGEXP_DOLLAR_ESCAPE=1 -DDUK_OPT_OCTAL_SUPPORT=1 -I./src/duktape -I/usr/local/include/python3.12 -c src/_support.c -o build/temp.linux-aarch64-cpython-312/src/_support.o error: command 'gcc' failed: No such file or directory [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for dukpy ERROR: Could not build wheels for dukpy, which is required to install pyproject.toml-based projects

dknowles2 commented 8 months ago

Ah, dukpy doesn't have a wheel compiled for the aarch64 architecture. It's compiled for arm64 which is really the same thing, but gcc gets confused about it. I'll open a bug against dukpy to see if they can add aarch64 support.

dknowles2 commented 8 months ago

Ah, actually I read that wrong. They're building a wheel for apple arm64. It looks like the default for Linux is the local native platform where it's being built, which would be amd64.

The point still stands that we'll need an aarch64 wheel for it to work for you.

dknowles2 commented 8 months ago

I sent https://github.com/amol-/dukpy/pull/77. Once that's merged and a new dukpy release is cut I can bump all the dependencies here which should fix the problem.

amol- commented 8 months ago

Wheels for aarch64 are now available for DukPy 0.3.1

AbidingOhmsLaw commented 8 months ago

I just updated to:

Home Assistant

Core. 2024.3.1
Supervisor. 2024.03.0
Operating System. 12.1
Frontend. 20240307.0

The integration installs now and ask for the grill model, having an issue with the grill being discovered but I think that might a ESPhome Bluetooth proxy issue.

rsabol77 commented 8 months ago

I just updated to:

Home Assistant

Core. 2024.3.1
Supervisor. 2024.03.0
Operating System. 12.1
Frontend. 20240307.0

The integration installs now and ask for the grill model, having an issue with the grill being discovered but I think that might a ESPhome Bluetooth proxy issue.

I have been having issues off and on but seems like every time I update my proxy wirelessly it never works after. I end up plugging it into computer and flashing from the website and everything works again.

AbidingOhmsLaw commented 8 months ago

@rsabol77 That is an issue with ESPHome and not HA-PitBoss but I have had that issue with my ESPhome Bluetooth proxy as well, This last time I updated it from ESPHome wirelessly but it would not be recognized by ESPHome or HA after that. It would be found to update again however and was update-able via the ESPHome web tool but would not show up. I ended up generating the binary file from ESPHome and reflashing the ESP32 with the espressif command line flash tool.

https://docs.espressif.com/projects/esptool/en/latest/esp32/