{"action":"created","issue":{"url":"https://api.github.com/repos/juju-solutions/layer-basic/issues/36","repository_url":"https://api.github.com/repos/juju-solutions/layer-basic","labels_url":"https://api.github.com/repos/juju-solutions/layer-basic/issues/36/labels{/name}","comments_url":"https://api.github.com/repos/juju-solutions/layer-basic/issues/36/comments","events_url":"https://api.github.com/repos/juju-solutions/layer-basic/issues/36/events","html_url":"https://github.com/juju-solutions/layer-basic/pull/36","id":134086773,"number":36,"title":"Added config states","user":{"login":"johnsca","id":406082,"avatar_url":"https://avatars.githubusercontent.com/u/406082?v=3","gravatar_id":"","url":"https://api.github.com/users/johnsca","html_url":"https://github.com/johnsca","followers_url":"https://api.github.com/users/johnsca/followers","following_url":"https://api.github.com/users/johnsca/following{/other_user}","gists_url":"https://api.github.com/users/johnsca/gists{/gist_id}","starred_url":"https://api.github.com/users/johnsca/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/johnsca/subscriptions","organizations_url":"https://api.github.com/users/johnsca/orgs","repos_url":"https://api.github.com/users/johnsca/repos","events_url":"https://api.github.com/users/johnsca/events{/privacy}","received_events_url":"https://api.github.com/users/johnsca/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":9,"created_at":"2016-02-16T20:19:15Z","updated_at":"2016-02-16T22:09:47Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/juju-solutions/layer-basic/pulls/36","html_url":"https://github.com/juju-solutions/layer-basic/pull/36","diff_url":"https://github.com/juju-solutions/layer-basic/pull/36.diff","patch_url":"https://github.com/juju-solutions/layer-basic/pull/36.patch"},"body":"Now you can detect config value changes with states:\r\n\r\n```python\r\n@when('config.changed')\r\ndef any_config_changed():\r\n    pass\r\n\r\n@when('config.changed.my-option')\r\ndef my_option_changed():\r\n    pass\r\n```"},"comment":{"url":"https://api.github.com/repos/juju-solutions/layer-basic/issues/comments/184895806","html_url":"https://github.com/juju-solutions/layer-basic/pull/36#issuecomment-184895806","issue_url":"https://api.github.com/repos/juju-solutions/layer-basic/issues/36","id":184895806,"user":{"login":"mbruzek","id":6385185,"avatar_url":"https://avatars.githubusercontent.com/u/6385185?v=3","gravatar_id":"","url":"https://api.github.com/users/mbruzek","html_url":"https://github.com/mbruzek","followers_url":"https://api.github.com/users/mbruzek/followers","following_url":"https://api.github.com/users/mbruzek/following{/other_user}","gists_url":"https://api.github.com/users/mbruzek/gists{/gist_id}","starred_url":"https://api.github.com/users/mbruzek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbruzek/subscriptions","organizations_url":"https://api.github.com/users/mbruzek/orgs","repos_url":"https://api.github.com/users/mbruzek/repos","events_url":"https://api.github.com/users/mbruzek/events{/privacy}","received_events_url":"https://api.github.com/users/mbruzek/received_events","type":"User","site_admin":false},"created_at":"2016-02-16T22:09:47Z","updated_at":"2016-02-16T22:09:47Z","body":"States are arbitrary and technically developers can pick what ever they want. If they happen to pick \"config.changed\" as a state their layer emits, this breaks the functionality of the \"if configuration changes\". This feels to me more like a new decorator is needed @when_any_changed('A', 'B', 'C') or @when_changed('A') rather than an arbitrary state that could actually collide with the \"config.changed\" state. "}}