{"comment":{"url":"https://api.github.com/repos/Clever/redshifter/comments/9348770","html_url":"https://github.com/Clever/redshifter/commit/9cec7a347c9e51a3f0353b86cc994e7ce9cdf8b2#commitcomment-9348770","id":9348770,"user":{"login":"agclever","id":10036433,"avatar_url":"https://avatars.githubusercontent.com/u/10036433?v=3","gravatar_id":"","url":"https://api.github.com/users/agclever","html_url":"https://github.com/agclever","followers_url":"https://api.github.com/users/agclever/followers","following_url":"https://api.github.com/users/agclever/following{/other_user}","gists_url":"https://api.github.com/users/agclever/gists{/gist_id}","starred_url":"https://api.github.com/users/agclever/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agclever/subscriptions","organizations_url":"https://api.github.com/users/agclever/orgs","repos_url":"https://api.github.com/users/agclever/repos","events_url":"https://api.github.com/users/agclever/events{/privacy}","received_events_url":"https://api.github.com/users/agclever/received_events","type":"User","site_admin":false},"position":null,"line":null,"path":"","commit_id":"9cec7a347c9e51a3f0353b86cc994e7ce9cdf8b2","created_at":"2015-01-20T00:44:59Z","updated_at":"2015-01-20T00:44:59Z","body":"I think both solutions are sub-optimal. Sometimes, an environment variable being empty is intended. A possible solution is to use a flag like approach, minus the defaults. You register all the environment variables in the beginning and throw an error at another method call (say Populate) which must be invoked before the variables are used. This should probably go in a some central go library that we maintain."}}