{"action":"opened","issue":{"url":"https://api.github.com/repos/trezor/python-trezor/issues/271","repository_url":"https://api.github.com/repos/trezor/python-trezor","labels_url":"https://api.github.com/repos/trezor/python-trezor/issues/271/labels{/name}","comments_url":"https://api.github.com/repos/trezor/python-trezor/issues/271/comments","events_url":"https://api.github.com/repos/trezor/python-trezor/issues/271/events","html_url":"https://github.com/trezor/python-trezor/issues/271","id":330267145,"node_id":"MDU6SXNzdWUzMzAyNjcxNDU=","number":271,"title":"trezorctl: common exception handling","user":{"login":"matejcik","id":596073,"node_id":"MDQ6VXNlcjU5NjA3Mw==","avatar_url":"https://avatars3.githubusercontent.com/u/596073?v=4","gravatar_id":"","url":"https://api.github.com/users/matejcik","html_url":"https://github.com/matejcik","followers_url":"https://api.github.com/users/matejcik/followers","following_url":"https://api.github.com/users/matejcik/following{/other_user}","gists_url":"https://api.github.com/users/matejcik/gists{/gist_id}","starred_url":"https://api.github.com/users/matejcik/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matejcik/subscriptions","organizations_url":"https://api.github.com/users/matejcik/orgs","repos_url":"https://api.github.com/users/matejcik/repos","events_url":"https://api.github.com/users/matejcik/events{/privacy}","received_events_url":"https://api.github.com/users/matejcik/received_events","type":"User","site_admin":false},"labels":[{"id":19181032,"node_id":"MDU6TGFiZWwxOTE4MTAzMg==","url":"https://api.github.com/repos/trezor/python-trezor/labels/enhancement","name":"enhancement","color":"84b6eb","default":true}],"state":"open","locked":false,"assignee":{"login":"matejcik","id":596073,"node_id":"MDQ6VXNlcjU5NjA3Mw==","avatar_url":"https://avatars3.githubusercontent.com/u/596073?v=4","gravatar_id":"","url":"https://api.github.com/users/matejcik","html_url":"https://github.com/matejcik","followers_url":"https://api.github.com/users/matejcik/followers","following_url":"https://api.github.com/users/matejcik/following{/other_user}","gists_url":"https://api.github.com/users/matejcik/gists{/gist_id}","starred_url":"https://api.github.com/users/matejcik/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matejcik/subscriptions","organizations_url":"https://api.github.com/users/matejcik/orgs","repos_url":"https://api.github.com/users/matejcik/repos","events_url":"https://api.github.com/users/matejcik/events{/privacy}","received_events_url":"https://api.github.com/users/matejcik/received_events","type":"User","site_admin":false},"assignees":[{"login":"matejcik","id":596073,"node_id":"MDQ6VXNlcjU5NjA3Mw==","avatar_url":"https://avatars3.githubusercontent.com/u/596073?v=4","gravatar_id":"","url":"https://api.github.com/users/matejcik","html_url":"https://github.com/matejcik","followers_url":"https://api.github.com/users/matejcik/followers","following_url":"https://api.github.com/users/matejcik/following{/other_user}","gists_url":"https://api.github.com/users/matejcik/gists{/gist_id}","starred_url":"https://api.github.com/users/matejcik/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matejcik/subscriptions","organizations_url":"https://api.github.com/users/matejcik/orgs","repos_url":"https://api.github.com/users/matejcik/repos","events_url":"https://api.github.com/users/matejcik/events{/privacy}","received_events_url":"https://api.github.com/users/matejcik/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/trezor/python-trezor/milestones/3","html_url":"https://github.com/trezor/python-trezor/milestone/3","labels_url":"https://api.github.com/repos/trezor/python-trezor/milestones/3/labels","id":3168926,"node_id":"MDk6TWlsZXN0b25lMzE2ODkyNg==","number":3,"title":"v1.0","description":null,"creator":{"login":"matejcik","id":596073,"node_id":"MDQ6VXNlcjU5NjA3Mw==","avatar_url":"https://avatars3.githubusercontent.com/u/596073?v=4","gravatar_id":"","url":"https://api.github.com/users/matejcik","html_url":"https://github.com/matejcik","followers_url":"https://api.github.com/users/matejcik/followers","following_url":"https://api.github.com/users/matejcik/following{/other_user}","gists_url":"https://api.github.com/users/matejcik/gists{/gist_id}","starred_url":"https://api.github.com/users/matejcik/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matejcik/subscriptions","organizations_url":"https://api.github.com/users/matejcik/orgs","repos_url":"https://api.github.com/users/matejcik/repos","events_url":"https://api.github.com/users/matejcik/events{/privacy}","received_events_url":"https://api.github.com/users/matejcik/received_events","type":"User","site_admin":false},"open_issues":3,"closed_issues":0,"state":"open","created_at":"2018-03-07T14:22:31Z","updated_at":"2018-06-07T13:15:15Z","due_on":null,"closed_at":null},"comments":0,"created_at":"2018-06-07T13:15:15Z","updated_at":"2018-06-07T13:15:15Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"Currently, every command has to handle its own exceptions. So most canceled actions throw a stack trace, unless specifically coded against.\r\n\r\nThat is stupid.\r\n\r\nWe should have a common exception handler for the subcommands and output nice messages whenever it makes sense.\r\n\r\nAlso maybe stop for a minute and rethink raising exceptions when an action is canceled?"}}
{"actor":{"display_login":"matejcik"}}