convention icon indicating copy to clipboard operation
convention copied to clipboard

The documented specification shows an invalid example for Device Attributes

Open cmoore42 opened this issue 4 years ago • 12 comments

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 avatar May 10 '20 19:05 cmoore42

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.

cmoore42 avatar May 10 '20 19:05 cmoore42

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

mjcumming avatar May 11 '20 12:05 mjcumming

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.

Thalhammer avatar May 11 '20 21:05 Thalhammer

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

mjcumming avatar May 12 '20 19:05 mjcumming

Homie specification online at https://homieiot.github.io/specification/

Section 7.1.1.

At the end of the section, just before 7.1.2, the following example is given:

homie/super-car/$homie → "2.1.0"

homie/super-car/$name → "Super car"

homie/super-car/$nodes → "wheels,engine,lights[]"

homie/super-car/$implementation → "esp8266"

homie/super-car/$state → "ready"

The value for the $nodes attribute is not valid under this version of the spec.

From: Michael Cumming [email protected] Sent: Tuesday, May 12, 2020 12:01 PM To: homieiot/convention [email protected] Cc: cmoore42 [email protected]; Mention [email protected] Subject: Re: [homieiot/convention] The documented specification shows an invalid example for Device Attributes (#203)

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

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/homieiot/convention/issues/203#issuecomment-627532030 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ABBCKDW65C6JVJHXAAOH2CLRRGMHXANCNFSM4M5LWTDA . https://github.com/notifications/beacon/ABBCKDXCT5D4NY5SKGBPQR3RRGMHXA5CNFSM4M5LWTDKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEVTWB7Q.gif

cmoore42 avatar May 12 '20 19:05 cmoore42

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

mjcumming avatar May 12 '20 19:05 mjcumming

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.

Thalhammer avatar May 13 '20 11:05 Thalhammer

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

mjcumming avatar May 13 '20 17:05 mjcumming

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

daenney avatar Mar 28 '21 15:03 daenney

This apparently was already fixed in 12453d851b85783dd5323430ce3aa85fcc376641 in 2019.

Unfortunately, that hasn't been deployed yet it seems

Hypfer avatar Jan 04 '22 10:01 Hypfer

I don’t see a formal pull request for the change


From: Sören Beye @.> Sent: Tuesday, January 4, 2022 5:56:12 AM To: homieiot/convention @.> Cc: Michael Cumming @.>; Comment @.> Subject: Re: [homieiot/convention] The documented specification shows an invalid example for Device Attributes (#203)

This apparently was already fixed in 12453d8https://github.com/homieiot/convention/commit/12453d851b85783dd5323430ce3aa85fcc376641 in 2019.

Unfortunately, that hasn't been deployed yet it seems

— Reply to this email directly, view it on GitHubhttps://github.com/homieiot/convention/issues/203#issuecomment-1004709676, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAKEYCBDXA6VXAUR3UXXY3DUULG4ZANCNFSM4M5LWTDA. Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub. You are receiving this because you commented.Message ID: @.***>

mjcumming avatar Jan 04 '22 21:01 mjcumming

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

daenney avatar Jan 05 '22 10:01 daenney

afaict the change were deployed. So closing this.

please reopen if something is still missing.

Tieske avatar Jan 16 '23 20:01 Tieske