Can someone add this to Github so that it eventually gets corrected in a future release? Not sure how to do this…
Thanks!
Can someone add this to Github so that it eventually gets corrected in a future release? Not sure how to do this…
Thanks!
I would, but I don’t have anything with aux_properties, so I can’t really test if my suggestion would work. I’m pretty sure it would, but it would also be nice to know.
I can be a tester if needed.
I am not familiar with Hass.io. Do you have the ability to modify a component? We would need to make a copy of the isy994.py file and then make some changes to the original.
I don’t think so… At least, I don’t see how…
We might try to do it as a custom component.
https://community.home-assistant.io/t/editing-component-files-in-hassio/
See the link of the topic above.
You would need to create a custom_components folder inside your config directory, and then we would put a modified copy of isy994.py there. Does that seem like something you want to try?
Also, what version are you running?
Yes, I could do that. That’s a great idea. A custom component would override the existing one. Can you post the original one and the modification required? I will test…
I’m always on the latest version of HA…
Hopefully it’ll work the first time. I’m not in a position to be able to test anything right now.
Is #3 in the following pull to address this issue:
If so, I will wait until the next update. If not, I will try the custom component…
No, it does not address this specific issue
Here is what I did: I copied the isy994.py file from:
The results are exactly the same. Nothing got broken from what I can see, but I get the same error message in my logs:
Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/lib/python3.6/asyncio/tasks.py", line 180, in _step
result = coro.send(None)
File "/usr/lib/python3.6/site-packages/homeassistant/helpers/entity.py", line 223, in async_update_ha_state
device_attr = self.device_state_attributes
File "/usr/lib/python3.6/site-packages/homeassistant/components/isy994.py", line 472, in device_state_attributes
for name, val in self._node.aux_properties.items():
AttributeError: 'list' object has no attribute 'items'
How can I tell if that new file is really used?
It isn’t using your edits from the custom_components directory for some reason. Not sure why. Your config folder looks like:?
custom_components\
isy994.py
configuration.yaml
If so, then I don’t know. Either a hass.io thing or the changes didn’t get saved.
Yes, that’s what I did. I checked and my changes are there…
I don’t know then. Must be a hass.io thing. I don’t use it, so I am not familiar with its specific behaviors, sorry.
The error message from the log still points to “/usr/lib/python3.6/site-packages/homeassistant/components/isy994.py”. If the new custom component was loaded and replacing the built-in one, shouldn’t the message point to the “custom_components” location?
Yes, it should.
Edit: I think the reason is because the individual components, like light, switch, etc has a reference to the original one, maybe.
from homeassistant.components.isy994 import ISY994_NODES, ISYDevice
So, maybe for this particular component, the custom_components route isn’t going to work without a lot of effort.
That makes a lot of sense. I will revert the custom component and wait for this to get fixed. Everything seems to work, it’s just that it’s filling up my logs with the same message all the time.
Thanks again,
If you open an issue on github with all the information I will put in a pull request with the changes.
Has anyone submitted this issue to github yet? If not, I’ll do it. Issue remains in 0.64.0.
I would but I have no clue how. Please do it and post it here so I can learn how it’s done.
Thanks!