{"action":"created","issue":{"url":"https://api.github.com/repos/exercism/x-common/issues/536","repository_url":"https://api.github.com/repos/exercism/x-common","labels_url":"https://api.github.com/repos/exercism/x-common/issues/536/labels{/name}","comments_url":"https://api.github.com/repos/exercism/x-common/issues/536/comments","events_url":"https://api.github.com/repos/exercism/x-common/issues/536/events","html_url":"https://github.com/exercism/x-common/pull/536","id":205520153,"number":536,"title":"bowling: be more explicit about when errors should happen","user":{"login":"petertseng","id":346181,"avatar_url":"https://avatars.githubusercontent.com/u/346181?v=3","gravatar_id":"","url":"https://api.github.com/users/petertseng","html_url":"https://github.com/petertseng","followers_url":"https://api.github.com/users/petertseng/followers","following_url":"https://api.github.com/users/petertseng/following{/other_user}","gists_url":"https://api.github.com/users/petertseng/gists{/gist_id}","starred_url":"https://api.github.com/users/petertseng/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/petertseng/subscriptions","organizations_url":"https://api.github.com/users/petertseng/orgs","repos_url":"https://api.github.com/users/petertseng/repos","events_url":"https://api.github.com/users/petertseng/events{/privacy}","received_events_url":"https://api.github.com/users/petertseng/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":14,"created_at":"2017-02-06T08:50:06Z","updated_at":"2017-02-22T05:59:19Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/exercism/x-common/pulls/536","html_url":"https://github.com/exercism/x-common/pull/536","diff_url":"https://github.com/exercism/x-common/pull/536.diff","patch_url":"https://github.com/exercism/x-common/pull/536.patch"},"body":"The JSON file currently says \"When to error is also left up to your\r\nimplementation\", but we should instead be explicit.\r\n\r\nLet's say I `roll 5`, then `roll 6`, then `roll 0` 18 times.\r\nOkay, that's 20 rolls, that's a full game, so I can take the score now,\r\nright?\r\nNow I try to take the score and find that I get an error. Argh!\r\n\r\nIn the absolute best case, the error result from score would be so kind\r\nto tell me that my `roll 6` way back there was invalid, but in the worst\r\ncase it might not, and I would be left to my own devices to figure out\r\nwhat happened, since there was no feedback on any of the individual\r\nrolls.\r\n\r\nThis commit proposes that invalid rolls be made explicit right when the\r\nroll is made, not at some unspecified time in the future (when\r\nattempting to take the score of the game). This is done via a\r\n`roll_should_fail` key that is mutually exclusive with the `expected`\r\nkey.\r\n\r\nPrevious discussions I know of (since I was involved):\r\n* exercism/xrust#213 (comment)\r\n* exercism/xhaskell#440"},"comment":{"url":"https://api.github.com/repos/exercism/x-common/issues/comments/281577550","html_url":"https://github.com/exercism/x-common/pull/536#issuecomment-281577550","issue_url":"https://api.github.com/repos/exercism/x-common/issues/536","id":281577550,"user":{"login":"petertseng","id":346181,"avatar_url":"https://avatars.githubusercontent.com/u/346181?v=3","gravatar_id":"","url":"https://api.github.com/users/petertseng","html_url":"https://github.com/petertseng","followers_url":"https://api.github.com/users/petertseng/followers","following_url":"https://api.github.com/users/petertseng/following{/other_user}","gists_url":"https://api.github.com/users/petertseng/gists{/gist_id}","starred_url":"https://api.github.com/users/petertseng/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/petertseng/subscriptions","organizations_url":"https://api.github.com/users/petertseng/orgs","repos_url":"https://api.github.com/users/petertseng/repos","events_url":"https://api.github.com/users/petertseng/events{/privacy}","received_events_url":"https://api.github.com/users/petertseng/received_events","type":"User","site_admin":false},"created_at":"2017-02-22T05:59:19Z","updated_at":"2017-02-22T05:59:19Z","body":"The unindent is inevitable to match the new schema. But that's why it's in its own commit, so that it is easily seen that that commit *only* unindents."}}
{"actor":{"display_login":"petertseng"}}