{"action":"created","issue":{"url":"https://api.github.com/repos/endophage/gotuf/issues/15","labels_url":"https://api.github.com/repos/endophage/gotuf/issues/15/labels{/name}","comments_url":"https://api.github.com/repos/endophage/gotuf/issues/15/comments","events_url":"https://api.github.com/repos/endophage/gotuf/issues/15/events","html_url":"https://github.com/endophage/gotuf/pull/15","id":94820065,"number":15,"title":"Signer changes","user":{"login":"aaronlehmann","id":10601430,"avatar_url":"https://avatars.githubusercontent.com/u/10601430?v=3","gravatar_id":"","url":"https://api.github.com/users/aaronlehmann","html_url":"https://github.com/aaronlehmann","followers_url":"https://api.github.com/users/aaronlehmann/followers","following_url":"https://api.github.com/users/aaronlehmann/following{/other_user}","gists_url":"https://api.github.com/users/aaronlehmann/gists{/gist_id}","starred_url":"https://api.github.com/users/aaronlehmann/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaronlehmann/subscriptions","organizations_url":"https://api.github.com/users/aaronlehmann/orgs","repos_url":"https://api.github.com/users/aaronlehmann/repos","events_url":"https://api.github.com/users/aaronlehmann/events{/privacy}","received_events_url":"https://api.github.com/users/aaronlehmann/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":8,"created_at":"2015-07-13T21:48:58Z","updated_at":"2015-07-13T22:01:45Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/endophage/gotuf/pulls/15","html_url":"https://github.com/endophage/gotuf/pull/15","diff_url":"https://github.com/endophage/gotuf/pull/15.diff","patch_url":"https://github.com/endophage/gotuf/pull/15.patch"},"body":"* Change KeyService interface, and types for signature and key type constants\r\n* Remove Signer interface\r\n\r\nSupersedes https://github.com/endophage/gotuf/pull/14\r\n\r\n@diogomonica @endophage"},"comment":{"url":"https://api.github.com/repos/endophage/gotuf/issues/comments/121075204","html_url":"https://github.com/endophage/gotuf/pull/15#issuecomment-121075204","issue_url":"https://api.github.com/repos/endophage/gotuf/issues/15","id":121075204,"user":{"login":"aaronlehmann","id":10601430,"avatar_url":"https://avatars.githubusercontent.com/u/10601430?v=3","gravatar_id":"","url":"https://api.github.com/users/aaronlehmann","html_url":"https://github.com/aaronlehmann","followers_url":"https://api.github.com/users/aaronlehmann/followers","following_url":"https://api.github.com/users/aaronlehmann/following{/other_user}","gists_url":"https://api.github.com/users/aaronlehmann/gists{/gist_id}","starred_url":"https://api.github.com/users/aaronlehmann/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaronlehmann/subscriptions","organizations_url":"https://api.github.com/users/aaronlehmann/orgs","repos_url":"https://api.github.com/users/aaronlehmann/repos","events_url":"https://api.github.com/users/aaronlehmann/events{/privacy}","received_events_url":"https://api.github.com/users/aaronlehmann/received_events","type":"User","site_admin":false},"created_at":"2015-07-13T22:01:45Z","updated_at":"2015-07-13T22:01:45Z","body":"The const values definitely help. There are some cases where a function takes a parameter that's interpreted as either a key type or signature algorithm, but since they were all \"string\" it was possible to pass the wrong kind of constant without the compiler being able to warn about it. I think the custom types are helpful (despite some drawbacks), though I don't have strong feelings."}}