{"action":"created","issue":{"url":"https://api.github.com/repos/indexzero/nconf/issues/138","labels_url":"https://api.github.com/repos/indexzero/nconf/issues/138/labels{/name}","comments_url":"https://api.github.com/repos/indexzero/nconf/issues/138/comments","events_url":"https://api.github.com/repos/indexzero/nconf/issues/138/events","html_url":"https://github.com/indexzero/nconf/issues/138","id":52740277,"number":138,"title":"nconf.get is not documented","user":{"login":"vp-hwood","id":7464809,"avatar_url":"https://avatars.githubusercontent.com/u/7464809?v=3","gravatar_id":"","url":"https://api.github.com/users/vp-hwood","html_url":"https://github.com/vp-hwood","followers_url":"https://api.github.com/users/vp-hwood/followers","following_url":"https://api.github.com/users/vp-hwood/following{/other_user}","gists_url":"https://api.github.com/users/vp-hwood/gists{/gist_id}","starred_url":"https://api.github.com/users/vp-hwood/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vp-hwood/subscriptions","organizations_url":"https://api.github.com/users/vp-hwood/orgs","repos_url":"https://api.github.com/users/vp-hwood/repos","events_url":"https://api.github.com/users/vp-hwood/events{/privacy}","received_events_url":"https://api.github.com/users/vp-hwood/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2014-12-23T13:28:24Z","updated_at":"2015-05-11T11:15:50Z","closed_at":null,"body":"`get` is not documented in the API Documentation section of the README. Does it return a new copy of the result each time? Or are we dealing with application-wide singletons here? Or something else? It doesn't matter for primitives but it could be a source of trouble for arrays and objects."},"comment":{"url":"https://api.github.com/repos/indexzero/nconf/issues/comments/100872361","html_url":"https://github.com/indexzero/nconf/issues/138#issuecomment-100872361","issue_url":"https://api.github.com/repos/indexzero/nconf/issues/138","id":100872361,"user":{"login":"Oza94","id":6735336,"avatar_url":"https://avatars.githubusercontent.com/u/6735336?v=3","gravatar_id":"","url":"https://api.github.com/users/Oza94","html_url":"https://github.com/Oza94","followers_url":"https://api.github.com/users/Oza94/followers","following_url":"https://api.github.com/users/Oza94/following{/other_user}","gists_url":"https://api.github.com/users/Oza94/gists{/gist_id}","starred_url":"https://api.github.com/users/Oza94/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Oza94/subscriptions","organizations_url":"https://api.github.com/users/Oza94/orgs","repos_url":"https://api.github.com/users/Oza94/repos","events_url":"https://api.github.com/users/Oza94/events{/privacy}","received_events_url":"https://api.github.com/users/Oza94/received_events","type":"User","site_admin":false},"created_at":"2015-05-11T11:15:50Z","updated_at":"2015-05-11T11:15:50Z","body":"Hi all,\r\n\r\nI'm not sure of my response, but all objects returned by `nconf.merge()` are passed through [`common.merge()`](https://github.com/indexzero/nconf/blob/master/lib/nconf/common.js#L104). This function uses a temporary `MemoryStore` object to merge the results and the `MemoryStore.merge()` seems to copy only native types (and uses recursion on objects).\r\n\r\n**So** I would say that `nconf.get()` returns a copy of the configuration object, **however** since the internal API of nconf is pretty complex, I'm not 100% sure that this is true."}}