{"push_id":2297725937,"size":9,"distinct_size":1,"ref":"refs/heads/interface-based-rules","head":"4b70be554b383a6b4ca45701333e0d64571db149","before":"06e111b94cf259d2b9ab35ac7d7068cbf80d6713","commits":[{"sha":"86e016cbc6df8bf0968963cc14e7d19c70f3d543","author":{"name":"Jenkins","email":"61eb39d4445155efb6068840385577c11776cd20@nymea.io"},"message":"Automatic translations update by Jenkins","distinct":false,"url":"https://api.github.com/repos/guh/guh/commits/86e016cbc6df8bf0968963cc14e7d19c70f3d543"},{"sha":"f82b6fab9482b50381fb3787a3e07f9574351a66","author":{"name":"Michael Zanetti","email":"1e2299a79c6a0466e538099f6a4760725f27a946@gmx.net"},"message":"repurpose \"name\" property, add displayName* props instead","distinct":false,"url":"https://api.github.com/repos/guh/guh/commits/f82b6fab9482b50381fb3787a3e07f9574351a66"},{"sha":"77c25f7a5abd6d78f64dfb06e3977da0190c60b1","author":{"name":"Michael Zanetti","email":"1e2299a79c6a0466e538099f6a4760725f27a946@gmx.net"},"message":"update mock plugin","distinct":false,"url":"https://api.github.com/repos/guh/guh/commits/77c25f7a5abd6d78f64dfb06e3977da0190c60b1"},{"sha":"bb980547e40d9df9de8376f9f338277e62f400b5","author":{"name":"Michael Zanetti","email":"1e2299a79c6a0466e538099f6a4760725f27a946@gmx.net"},"message":"make testDevices work again","distinct":false,"url":"https://api.github.com/repos/guh/guh/commits/bb980547e40d9df9de8376f9f338277e62f400b5"},{"sha":"0e911b9c1c5f62896136d5a125463049e1560f59","author":{"name":"Michael Zanetti","email":"1e2299a79c6a0466e538099f6a4760725f27a946@gmx.net"},"message":"add displayName in json api","distinct":false,"url":"https://api.github.com/repos/guh/guh/commits/0e911b9c1c5f62896136d5a125463049e1560f59"},{"sha":"5ff1342f9f7e8f10c77665dcb1e99fde4e35b790","author":{"name":"Michael Zanetti","email":"1e2299a79c6a0466e538099f6a4760725f27a946@gmx.net"},"message":"update how debug categories are read in plugins","distinct":false,"url":"https://api.github.com/repos/guh/guh/commits/5ff1342f9f7e8f10c77665dcb1e99fde4e35b790"},{"sha":"1d9cb945acdafc027764c4c3f4f88d9ce3ba2656","author":{"name":"Michael Zanetti","email":"1e2299a79c6a0466e538099f6a4760725f27a946@gmx.net"},"message":"bump json api version","distinct":false,"url":"https://api.github.com/repos/guh/guh/commits/1d9cb945acdafc027764c4c3f4f88d9ce3ba2656"},{"sha":"ec0a122e1a7048494199eef4dfb09540a05e4ac5","author":{"name":"Michael Zanetti","email":"1e2299a79c6a0466e538099f6a4760725f27a946@gmx.net"},"message":"update how id names are generated\n\ninclude the deviceClass/plugin name in all defines to avoid collisions\nbetween deviceClasses within the same file. So far this hasn't\nreally been an issue because using idName we could set random ids.\n\nNow interfaces dictate the names, so having multiple deviceClasses\nin one file and both implementing the same interface would clash.\n\nThis also should improve readability in the plugins code as we won't\nhave ids like: \"bridgeConnected\" and \"connected\" available which\neasily causes the developer to accidentally use \"connected\" where\ninstead \"bridgeConnected\" should be used (I actually found some\nbugs like this while updating plugins for this). The new style\nwould force those states to be named like e.g. \"bridgeConnected\"\nand \"lightConnected\" which are not as easy to mix up.","distinct":false,"url":"https://api.github.com/repos/guh/guh/commits/ec0a122e1a7048494199eef4dfb09540a05e4ac5"},{"sha":"4b70be554b383a6b4ca45701333e0d64571db149","author":{"name":"Michael Zanetti","email":"1e2299a79c6a0466e538099f6a4760725f27a946@gmx.net"},"message":"add support for interface based rules","distinct":true,"url":"https://api.github.com/repos/guh/guh/commits/4b70be554b383a6b4ca45701333e0d64571db149"}]}
{"actor":{"display_login":"mzanetti"}}