"Error doing job: Task exception was never retrieved" (was Version 0.61+ and ISY994i)

Can someone add this to Github so that it eventually gets corrected in a future release? Not sure how to do this…


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.

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…

  1. Create a custom_components folder inside your config directory
  2. Add the referenced file inside that directory
  3. Restart
  4. ???
  5. Profit

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:

to my local “custom_components” directory. I edited the file as suggested above (line 472 and 473 of isy994.py), then restarted HA. I think that’s the only thing I need to do. That new file should automatically be used instead of the “old” built-in one.

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:?


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… :frowning:

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.

1 Like

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.