{"action":"created","issue":{"url":"https://api.github.com/repos/chef/chef/issues/3275","labels_url":"https://api.github.com/repos/chef/chef/issues/3275/labels{/name}","comments_url":"https://api.github.com/repos/chef/chef/issues/3275/comments","events_url":"https://api.github.com/repos/chef/chef/issues/3275/events","html_url":"https://github.com/chef/chef/issues/3275","id":70561775,"number":3275,"title":"Concerns about the new Chef.node API","user":{"login":"coderanger","id":128243,"avatar_url":"https://avatars.githubusercontent.com/u/128243?v=3","gravatar_id":"","url":"https://api.github.com/users/coderanger","html_url":"https://github.com/coderanger","followers_url":"https://api.github.com/users/coderanger/followers","following_url":"https://api.github.com/users/coderanger/following{/other_user}","gists_url":"https://api.github.com/users/coderanger/gists{/gist_id}","starred_url":"https://api.github.com/users/coderanger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coderanger/subscriptions","organizations_url":"https://api.github.com/users/coderanger/orgs","repos_url":"https://api.github.com/users/coderanger/repos","events_url":"https://api.github.com/users/coderanger/events{/privacy}","received_events_url":"https://api.github.com/users/coderanger/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2015-04-24T02:05:09Z","updated_at":"2015-04-24T16:30:03Z","closed_at":null,"body":"So I'm really worried that this new API is a line we shouldn't cross. We has so far avoided having per-run data (i.e. not truly global config et al) in globals, passing the `node` or `run_context` object through APIs as needed. This is certainly frustrating sometimes, but adding a global variable for this kind of indirection risks all the old campfire stories about global-driven spaghetti code. It is probably too late to pull this API from 12.3 but as a compromise could we mark them as explicitly internal and not subject to API compatibility? This would allow a do-over for 12.4, as I think @jkeiser is planning to majorly revamp the code that caused `Chef.node` to be added in the first place."},"comment":{"url":"https://api.github.com/repos/chef/chef/issues/comments/95985827","html_url":"https://github.com/chef/chef/issues/3275#issuecomment-95985827","issue_url":"https://api.github.com/repos/chef/chef/issues/3275","id":95985827,"user":{"login":"jkeiser","id":654882,"avatar_url":"https://avatars.githubusercontent.com/u/654882?v=3","gravatar_id":"","url":"https://api.github.com/users/jkeiser","html_url":"https://github.com/jkeiser","followers_url":"https://api.github.com/users/jkeiser/followers","following_url":"https://api.github.com/users/jkeiser/following{/other_user}","gists_url":"https://api.github.com/users/jkeiser/gists{/gist_id}","starred_url":"https://api.github.com/users/jkeiser/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jkeiser/subscriptions","organizations_url":"https://api.github.com/users/jkeiser/orgs","repos_url":"https://api.github.com/users/jkeiser/repos","events_url":"https://api.github.com/users/jkeiser/events{/privacy}","received_events_url":"https://api.github.com/users/jkeiser/received_events","type":"User","site_admin":false},"created_at":"2015-04-24T16:30:03Z","updated_at":"2015-04-24T16:30:03Z","body":"> I don't see why they would. Can you explain why you think so?\r\n\r\nI have no idea--I inferred it from @coderanger's initial comment.  Thus why I'm asking if they are true :)"}}