Skip to content
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

The documented specification shows an invalid example for Device Attributes #203

Closed
cmoore42 opened this issue May 10, 2020 · 13 comments
Closed

Comments

@cmoore42
Copy link

Section 7.1.1 in the spec says, "The following device attributes are mandatory and MUST be send, even if it is just an empty string". It then lists the mandatory Device attributes: $homie, $name, $state, $nodes, and $extensions.

This is followed by an example for a "super-car". However, that example does not contain a $extensions topic, which the specification says is mandatory.

@cmoore42
Copy link
Author

I've noticed something else in this example that appears to be invalid. The homie/super-car/$nodes example sets that attribute to "wheels,engine,lights[]". It is not specifically called out, but I believe these values are supposed to be the ID of the nodes that are supported. "lights[]" is not a valid ID according to section 2.1.

@mjcumming
Copy link
Contributor

fixed the example for $extensions. I cannot find the "lights[]" reference. That was part of the convention prior to v4

@Thalhammer
Copy link
Member

lights[] used to be a valid id and represented an array which got removed in v4. So its possible the examples where missed during updating.

@mjcumming
Copy link
Contributor

I looked and didn't find any. @cmoore42 if you could point to where the "lights []" reference is I'll fix.

@cmoore42
Copy link
Author

cmoore42 commented May 12, 2020 via email

@mjcumming
Copy link
Contributor

@Thalhammer not sure how to fix this, the convention.md file has been fixed but those changes have not propagated to the homie website.

@Thalhammer
Copy link
Member

Thalhammer commented May 13, 2020

Looks like the website is updated by travis and in fact if you look here, it has.
If we would like to have the v4.0.0 version (the default if you click on the spec link) to change, I assume we would need to change the tag to a version that includes the changes.

But we cant simply do that as the master branch already includes other changes that should not be included in 4.0.0.
My idea would be to make a branch per version for stuff like typo and grammar fixes. Since they dont really change the spec, I also dont think they should affect the version number.

@mjcumming
Copy link
Contributor

@Thalhammer agree, we need to a process to manage typo/verbiage issues and protocol changes. Happy to do that any way you want.

@daenney
Copy link

daenney commented Mar 28, 2021

I just ran into this snafoo too. I was trying to figure out what this lights[] thing was about until I stumbled on this issue. I would be nice if typo/verbiage fixes could make it to the naked https://homieiot.github.io/specification/ and versioned https://homieiot.github.io/specification/spec-core-v4_0_0/ locations

@Hypfer
Copy link

Hypfer commented Jan 4, 2022

This apparently was already fixed in 12453d8 in 2019.

Unfortunately, that hasn't been deployed yet it seems

@mjcumming
Copy link
Contributor

mjcumming commented Jan 4, 2022 via email

@daenney
Copy link

daenney commented Jan 5, 2022

@mjcumming The PR for it was #177. The change is there, it's just not deployed properly everywhere.

@Tieske
Copy link
Contributor

Tieske commented Jan 16, 2023

afaict the change were deployed. So closing this.

please reopen if something is still missing.

@Tieske Tieske closed this as completed Jan 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants