{"action":"closed","issue":{"url":"https://api.github.com/repos/sjtug/lug/issues/27","repository_url":"https://api.github.com/repos/sjtug/lug","labels_url":"https://api.github.com/repos/sjtug/lug/issues/27/labels{/name}","comments_url":"https://api.github.com/repos/sjtug/lug/issues/27/comments","events_url":"https://api.github.com/repos/sjtug/lug/issues/27/events","html_url":"https://github.com/sjtug/lug/issues/27","id":296645546,"number":27,"title":"Enhance configuration/command line flags","user":{"login":"htfy96","id":8121231,"avatar_url":"https://avatars3.githubusercontent.com/u/8121231?v=4","gravatar_id":"","url":"https://api.github.com/users/htfy96","html_url":"https://github.com/htfy96","followers_url":"https://api.github.com/users/htfy96/followers","following_url":"https://api.github.com/users/htfy96/following{/other_user}","gists_url":"https://api.github.com/users/htfy96/gists{/gist_id}","starred_url":"https://api.github.com/users/htfy96/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/htfy96/subscriptions","organizations_url":"https://api.github.com/users/htfy96/orgs","repos_url":"https://api.github.com/users/htfy96/repos","events_url":"https://api.github.com/users/htfy96/events{/privacy}","received_events_url":"https://api.github.com/users/htfy96/received_events","type":"User","site_admin":false},"labels":[{"id":397382454,"url":"https://api.github.com/repos/sjtug/lug/labels/enhancement","name":"enhancement","color":"84b6eb","default":true}],"state":"closed","locked":false,"assignee":{"login":"htfy96","id":8121231,"avatar_url":"https://avatars3.githubusercontent.com/u/8121231?v=4","gravatar_id":"","url":"https://api.github.com/users/htfy96","html_url":"https://github.com/htfy96","followers_url":"https://api.github.com/users/htfy96/followers","following_url":"https://api.github.com/users/htfy96/following{/other_user}","gists_url":"https://api.github.com/users/htfy96/gists{/gist_id}","starred_url":"https://api.github.com/users/htfy96/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/htfy96/subscriptions","organizations_url":"https://api.github.com/users/htfy96/orgs","repos_url":"https://api.github.com/users/htfy96/repos","events_url":"https://api.github.com/users/htfy96/events{/privacy}","received_events_url":"https://api.github.com/users/htfy96/received_events","type":"User","site_admin":false},"assignees":[{"login":"htfy96","id":8121231,"avatar_url":"https://avatars3.githubusercontent.com/u/8121231?v=4","gravatar_id":"","url":"https://api.github.com/users/htfy96","html_url":"https://github.com/htfy96","followers_url":"https://api.github.com/users/htfy96/followers","following_url":"https://api.github.com/users/htfy96/following{/other_user}","gists_url":"https://api.github.com/users/htfy96/gists{/gist_id}","starred_url":"https://api.github.com/users/htfy96/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/htfy96/subscriptions","organizations_url":"https://api.github.com/users/htfy96/orgs","repos_url":"https://api.github.com/users/htfy96/repos","events_url":"https://api.github.com/users/htfy96/events{/privacy}","received_events_url":"https://api.github.com/users/htfy96/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2018-02-13T08:06:06Z","updated_at":"2018-02-13T12:35:03Z","closed_at":"2018-02-13T12:35:03Z","author_association":"CONTRIBUTOR","body":"Current implementation maintains separated flag/configuration mappings. Precedences are implemented through manual overriding. These designs lead to redundancy and inconsistency (e.g. some options can only be specified by command line, while others can only be changed in configuration files). \r\n\r\nTo address these issues, a backward-incompatible change will be introduced, including the following enhancements:\r\n- [x] `flag` package will be substituted by [`pflag`](https://godoc.org/github.com/spf13/pflag) providing POSIX-style flags(`--help`)\r\n- [x] Configurations will be managed through [`viper`](https://github.com/spf13/viper). All options are now configurable at `config.yaml`. Command-line flags will provide some shorthands to override options(e.g. `port`).\r\n- [x] Update according docs\r\n\r\nIncompatible changes (incomplete):\r\n- flags: Go flag style (`-la` = an option named `la`) -> UNIX style (`-la` = `-l -a`)\r\n- flags: some may be removed"}}
{"actor":{"display_login":"htfy96"}}