{"action":"created","issue":{"url":"https://api.github.com/repos/cs50/check50/issues/93","repository_url":"https://api.github.com/repos/cs50/check50","labels_url":"https://api.github.com/repos/cs50/check50/issues/93/labels{/name}","comments_url":"https://api.github.com/repos/cs50/check50/issues/93/comments","events_url":"https://api.github.com/repos/cs50/check50/issues/93/events","html_url":"https://github.com/cs50/check50/pull/93","id":297443003,"node_id":"MDExOlB1bGxSZXF1ZXN0MTY5MzY5MjA5","number":93,"title":"Lets remove some boilerplating! class X(Checks) in checks","user":{"login":"Jelleas","id":1257775,"node_id":"MDQ6VXNlcjEyNTc3NzU=","avatar_url":"https://avatars2.githubusercontent.com/u/1257775?v=4","gravatar_id":"","url":"https://api.github.com/users/Jelleas","html_url":"https://github.com/Jelleas","followers_url":"https://api.github.com/users/Jelleas/followers","following_url":"https://api.github.com/users/Jelleas/following{/other_user}","gists_url":"https://api.github.com/users/Jelleas/gists{/gist_id}","starred_url":"https://api.github.com/users/Jelleas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Jelleas/subscriptions","organizations_url":"https://api.github.com/users/Jelleas/orgs","repos_url":"https://api.github.com/users/Jelleas/repos","events_url":"https://api.github.com/users/Jelleas/events{/privacy}","received_events_url":"https://api.github.com/users/Jelleas/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"crossroads1112","id":3654575,"node_id":"MDQ6VXNlcjM2NTQ1NzU=","avatar_url":"https://avatars3.githubusercontent.com/u/3654575?v=4","gravatar_id":"","url":"https://api.github.com/users/crossroads1112","html_url":"https://github.com/crossroads1112","followers_url":"https://api.github.com/users/crossroads1112/followers","following_url":"https://api.github.com/users/crossroads1112/following{/other_user}","gists_url":"https://api.github.com/users/crossroads1112/gists{/gist_id}","starred_url":"https://api.github.com/users/crossroads1112/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/crossroads1112/subscriptions","organizations_url":"https://api.github.com/users/crossroads1112/orgs","repos_url":"https://api.github.com/users/crossroads1112/repos","events_url":"https://api.github.com/users/crossroads1112/events{/privacy}","received_events_url":"https://api.github.com/users/crossroads1112/received_events","type":"User","site_admin":false},"assignees":[{"login":"crossroads1112","id":3654575,"node_id":"MDQ6VXNlcjM2NTQ1NzU=","avatar_url":"https://avatars3.githubusercontent.com/u/3654575?v=4","gravatar_id":"","url":"https://api.github.com/users/crossroads1112","html_url":"https://github.com/crossroads1112","followers_url":"https://api.github.com/users/crossroads1112/followers","following_url":"https://api.github.com/users/crossroads1112/following{/other_user}","gists_url":"https://api.github.com/users/crossroads1112/gists{/gist_id}","starred_url":"https://api.github.com/users/crossroads1112/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/crossroads1112/subscriptions","organizations_url":"https://api.github.com/users/crossroads1112/orgs","repos_url":"https://api.github.com/users/crossroads1112/repos","events_url":"https://api.github.com/users/crossroads1112/events{/privacy}","received_events_url":"https://api.github.com/users/crossroads1112/received_events","type":"User","site_admin":false}],"milestone":null,"comments":1,"created_at":"2018-02-15T13:20:04Z","updated_at":"2018-06-24T20:59:34Z","closed_at":null,"author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/cs50/check50/pulls/93","html_url":"https://github.com/cs50/check50/pull/93","diff_url":"https://github.com/cs50/check50/pull/93.diff","patch_url":"https://github.com/cs50/check50/pull/93.patch"},"body":"We can bind the methods decorated with `@check` dynamically to an instance of `Checks`. This way you don't have to nest `@check` methods in some class that inherits from `Checks`.\r\n\r\nSee: https://github.com/Jelleas/checks/blob/master/cs50/2017/x/hello/check50/__init__.py\r\nTry: `python3 check50.py cs50/2017/x/hello@jelleas/checks --local`\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/cs50/check50/issues/comments/399787207","html_url":"https://github.com/cs50/check50/pull/93#issuecomment-399787207","issue_url":"https://api.github.com/repos/cs50/check50/issues/93","id":399787207,"node_id":"MDEyOklzc3VlQ29tbWVudDM5OTc4NzIwNw==","user":{"login":"crossroads1112","id":3654575,"node_id":"MDQ6VXNlcjM2NTQ1NzU=","avatar_url":"https://avatars3.githubusercontent.com/u/3654575?v=4","gravatar_id":"","url":"https://api.github.com/users/crossroads1112","html_url":"https://github.com/crossroads1112","followers_url":"https://api.github.com/users/crossroads1112/followers","following_url":"https://api.github.com/users/crossroads1112/following{/other_user}","gists_url":"https://api.github.com/users/crossroads1112/gists{/gist_id}","starred_url":"https://api.github.com/users/crossroads1112/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/crossroads1112/subscriptions","organizations_url":"https://api.github.com/users/crossroads1112/orgs","repos_url":"https://api.github.com/users/crossroads1112/repos","events_url":"https://api.github.com/users/crossroads1112/events{/privacy}","received_events_url":"https://api.github.com/users/crossroads1112/received_events","type":"User","site_admin":false},"created_at":"2018-06-24T20:59:34Z","updated_at":"2018-06-24T20:59:34Z","author_association":"CONTRIBUTOR","body":"Closing the new version of check50 addresses this."}}
{"actor":{"display_login":"crossroads1112"}}