Skip to content

Re-enable but deprecate visible member of properties #3038

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
18 tasks done
benfrancis opened this issue Dec 12, 2022 · 2 comments
Closed
18 tasks done

Re-enable but deprecate visible member of properties #3038

benfrancis opened this issue Dec 12, 2022 · 2 comments
Labels
Milestone

Comments

@benfrancis
Copy link
Member

benfrancis commented Dec 12, 2022

Shortly after the 1.0 release, support for invisible properties (visible: false) of Things was removed from

In the 1.1.0-alpha.2 release this has resulted in the Zigbee, Z-Wave, HomeKit, Tuya add-ons (which still use this feature) being broken, as well as an unknown number of other add-ons.

A fix has landed for the Tuya adapter and there's an untested fix for the HomeKit adapter, but we don't know how many other add-ons might be affected.

Rather than making this breaking change in the 1.1 release and requiring a fix in all add-ons which use it, another option is to revert the changes at the gateway level in order to continue to support this feature, but print a deprecation warning on the console every time it's used. Then we can remove the feature entirely in a future release.

Apart from being a lot of work, my other concern with this approach is that there was a reported bug with this feature in 1.0 in which invisible properties were always shown to users even if set as not visible. I'm not sure what the UX impact is of this for add-ons which heavily use the feature, and whether that would need to be fixed or whether we leave it that way in order to encourage add-on developers to stop using the feature. Presumably whatever the effect is it has been the case for the past two years so users will already have noticed.

See also: #2670, WebThingsIO/homekit-adapter#62

The steps I think will be necessary to fix this at the gateway level:

@freaktechnik
Copy link
Contributor

Just to make sure we're not reverting too much, as far as I'm aware gateway 1.0 already ignored the actual value of visible and add-ons had to remove invisible properties themselves. It's just the gateway-addon-node/gateway-addon-python that changed behavior.

@benfrancis
Copy link
Member Author

benfrancis commented Dec 12, 2022

@freaktechnik That does seem to be the case from #2670 yes, though I think at the time it was considered more of a bug than a feature.

I'm not sure whether or not we should revert #2672, but it may have no effect (note that PR landed a few days after the 1.0 release).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants