{"action":"closed","number":191,"pull_request":{"url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/pulls/191","id":167796735,"html_url":"https://github.com/IMSGlobal/openbadges-validator-core/pull/191","diff_url":"https://github.com/IMSGlobal/openbadges-validator-core/pull/191.diff","patch_url":"https://github.com/IMSGlobal/openbadges-validator-core/pull/191.patch","issue_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/issues/191","number":191,"state":"closed","locked":false,"title":"Validate individual extensions","user":{"login":"ottonomy","id":2304883,"avatar_url":"https://avatars1.githubusercontent.com/u/2304883?v=4","gravatar_id":"","url":"https://api.github.com/users/ottonomy","html_url":"https://github.com/ottonomy","followers_url":"https://api.github.com/users/ottonomy/followers","following_url":"https://api.github.com/users/ottonomy/following{/other_user}","gists_url":"https://api.github.com/users/ottonomy/gists{/gist_id}","starred_url":"https://api.github.com/users/ottonomy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ottonomy/subscriptions","organizations_url":"https://api.github.com/users/ottonomy/orgs","repos_url":"https://api.github.com/users/ottonomy/repos","events_url":"https://api.github.com/users/ottonomy/events{/privacy}","received_events_url":"https://api.github.com/users/ottonomy/received_events","type":"User","site_admin":false},"body":"Adds a python entry point to validate an individual extension implementation prior to inclusion in an independently verifiable badge object. Tox tests passing.\r\n\r\nCode contributed by @coffindragger and myself on behalf of Concentric Sky.","created_at":"2018-02-07T20:12:34Z","updated_at":"2018-02-08T16:41:38Z","closed_at":"2018-02-08T16:41:38Z","merged_at":"2018-02-08T16:41:38Z","merge_commit_sha":"7decfc1e853c4a8f1668a670ac554f445f8aa208","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"milestone":null,"commits_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/pulls/191/commits","review_comments_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/pulls/191/comments","review_comment_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/pulls/comments{/number}","comments_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/issues/191/comments","statuses_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/statuses/2e311e7a00712a5ac9eb4963148b36122340a554","head":{"label":"concentricsky:feature/validate-extensions-helper","ref":"feature/validate-extensions-helper","sha":"2e311e7a00712a5ac9eb4963148b36122340a554","user":{"login":"concentricsky","id":313072,"avatar_url":"https://avatars0.githubusercontent.com/u/313072?v=4","gravatar_id":"","url":"https://api.github.com/users/concentricsky","html_url":"https://github.com/concentricsky","followers_url":"https://api.github.com/users/concentricsky/followers","following_url":"https://api.github.com/users/concentricsky/following{/other_user}","gists_url":"https://api.github.com/users/concentricsky/gists{/gist_id}","starred_url":"https://api.github.com/users/concentricsky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concentricsky/subscriptions","organizations_url":"https://api.github.com/users/concentricsky/orgs","repos_url":"https://api.github.com/users/concentricsky/repos","events_url":"https://api.github.com/users/concentricsky/events{/privacy}","received_events_url":"https://api.github.com/users/concentricsky/received_events","type":"Organization","site_admin":false},"repo":{"id":81268268,"name":"badgecheck","full_name":"concentricsky/badgecheck","owner":{"login":"concentricsky","id":313072,"avatar_url":"https://avatars0.githubusercontent.com/u/313072?v=4","gravatar_id":"","url":"https://api.github.com/users/concentricsky","html_url":"https://github.com/concentricsky","followers_url":"https://api.github.com/users/concentricsky/followers","following_url":"https://api.github.com/users/concentricsky/following{/other_user}","gists_url":"https://api.github.com/users/concentricsky/gists{/gist_id}","starred_url":"https://api.github.com/users/concentricsky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concentricsky/subscriptions","organizations_url":"https://api.github.com/users/concentricsky/orgs","repos_url":"https://api.github.com/users/concentricsky/repos","events_url":"https://api.github.com/users/concentricsky/events{/privacy}","received_events_url":"https://api.github.com/users/concentricsky/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/concentricsky/badgecheck","description":"Open Badges validation in python","fork":false,"url":"https://api.github.com/repos/concentricsky/badgecheck","forks_url":"https://api.github.com/repos/concentricsky/badgecheck/forks","keys_url":"https://api.github.com/repos/concentricsky/badgecheck/keys{/key_id}","collaborators_url":"https://api.github.com/repos/concentricsky/badgecheck/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/concentricsky/badgecheck/teams","hooks_url":"https://api.github.com/repos/concentricsky/badgecheck/hooks","issue_events_url":"https://api.github.com/repos/concentricsky/badgecheck/issues/events{/number}","events_url":"https://api.github.com/repos/concentricsky/badgecheck/events","assignees_url":"https://api.github.com/repos/concentricsky/badgecheck/assignees{/user}","branches_url":"https://api.github.com/repos/concentricsky/badgecheck/branches{/branch}","tags_url":"https://api.github.com/repos/concentricsky/badgecheck/tags","blobs_url":"https://api.github.com/repos/concentricsky/badgecheck/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/concentricsky/badgecheck/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/concentricsky/badgecheck/git/refs{/sha}","trees_url":"https://api.github.com/repos/concentricsky/badgecheck/git/trees{/sha}","statuses_url":"https://api.github.com/repos/concentricsky/badgecheck/statuses/{sha}","languages_url":"https://api.github.com/repos/concentricsky/badgecheck/languages","stargazers_url":"https://api.github.com/repos/concentricsky/badgecheck/stargazers","contributors_url":"https://api.github.com/repos/concentricsky/badgecheck/contributors","subscribers_url":"https://api.github.com/repos/concentricsky/badgecheck/subscribers","subscription_url":"https://api.github.com/repos/concentricsky/badgecheck/subscription","commits_url":"https://api.github.com/repos/concentricsky/badgecheck/commits{/sha}","git_commits_url":"https://api.github.com/repos/concentricsky/badgecheck/git/commits{/sha}","comments_url":"https://api.github.com/repos/concentricsky/badgecheck/comments{/number}","issue_comment_url":"https://api.github.com/repos/concentricsky/badgecheck/issues/comments{/number}","contents_url":"https://api.github.com/repos/concentricsky/badgecheck/contents/{+path}","compare_url":"https://api.github.com/repos/concentricsky/badgecheck/compare/{base}...{head}","merges_url":"https://api.github.com/repos/concentricsky/badgecheck/merges","archive_url":"https://api.github.com/repos/concentricsky/badgecheck/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/concentricsky/badgecheck/downloads","issues_url":"https://api.github.com/repos/concentricsky/badgecheck/issues{/number}","pulls_url":"https://api.github.com/repos/concentricsky/badgecheck/pulls{/number}","milestones_url":"https://api.github.com/repos/concentricsky/badgecheck/milestones{/number}","notifications_url":"https://api.github.com/repos/concentricsky/badgecheck/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/concentricsky/badgecheck/labels{/name}","releases_url":"https://api.github.com/repos/concentricsky/badgecheck/releases{/id}","deployments_url":"https://api.github.com/repos/concentricsky/badgecheck/deployments","created_at":"2017-02-08T00:08:28Z","updated_at":"2017-04-07T19:22:12Z","pushed_at":"2018-02-07T20:07:47Z","git_url":"git://github.com/concentricsky/badgecheck.git","ssh_url":"git@github.com:concentricsky/badgecheck.git","clone_url":"https://github.com/concentricsky/badgecheck.git","svn_url":"https://github.com/concentricsky/badgecheck","homepage":null,"size":461,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":7,"mirror_url":null,"archived":false,"open_issues_count":4,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0"},"forks":7,"open_issues":4,"watchers":2,"default_branch":"master"}},"base":{"label":"IMSGlobal:develop","ref":"develop","sha":"7c8501e1ee211c7893f44ad468f5d76448319e57","user":{"login":"IMSGlobal","id":3170527,"avatar_url":"https://avatars1.githubusercontent.com/u/3170527?v=4","gravatar_id":"","url":"https://api.github.com/users/IMSGlobal","html_url":"https://github.com/IMSGlobal","followers_url":"https://api.github.com/users/IMSGlobal/followers","following_url":"https://api.github.com/users/IMSGlobal/following{/other_user}","gists_url":"https://api.github.com/users/IMSGlobal/gists{/gist_id}","starred_url":"https://api.github.com/users/IMSGlobal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/IMSGlobal/subscriptions","organizations_url":"https://api.github.com/users/IMSGlobal/orgs","repos_url":"https://api.github.com/users/IMSGlobal/repos","events_url":"https://api.github.com/users/IMSGlobal/events{/privacy}","received_events_url":"https://api.github.com/users/IMSGlobal/received_events","type":"Organization","site_admin":false},"repo":{"id":84136622,"name":"openbadges-validator-core","full_name":"IMSGlobal/openbadges-validator-core","owner":{"login":"IMSGlobal","id":3170527,"avatar_url":"https://avatars1.githubusercontent.com/u/3170527?v=4","gravatar_id":"","url":"https://api.github.com/users/IMSGlobal","html_url":"https://github.com/IMSGlobal","followers_url":"https://api.github.com/users/IMSGlobal/followers","following_url":"https://api.github.com/users/IMSGlobal/following{/other_user}","gists_url":"https://api.github.com/users/IMSGlobal/gists{/gist_id}","starred_url":"https://api.github.com/users/IMSGlobal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/IMSGlobal/subscriptions","organizations_url":"https://api.github.com/users/IMSGlobal/orgs","repos_url":"https://api.github.com/users/IMSGlobal/repos","events_url":"https://api.github.com/users/IMSGlobal/events{/privacy}","received_events_url":"https://api.github.com/users/IMSGlobal/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/IMSGlobal/openbadges-validator-core","description":"Open Badges validation in python","fork":true,"url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core","forks_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/forks","keys_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/keys{/key_id}","collaborators_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/teams","hooks_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/hooks","issue_events_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/issues/events{/number}","events_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/events","assignees_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/assignees{/user}","branches_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/branches{/branch}","tags_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/tags","blobs_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/git/refs{/sha}","trees_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/git/trees{/sha}","statuses_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/statuses/{sha}","languages_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/languages","stargazers_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/stargazers","contributors_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/contributors","subscribers_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/subscribers","subscription_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/subscription","commits_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/commits{/sha}","git_commits_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/git/commits{/sha}","comments_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/comments{/number}","issue_comment_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/issues/comments{/number}","contents_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/contents/{+path}","compare_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/compare/{base}...{head}","merges_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/merges","archive_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/downloads","issues_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/issues{/number}","pulls_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/pulls{/number}","milestones_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/milestones{/number}","notifications_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/labels{/name}","releases_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/releases{/id}","deployments_url":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/deployments","created_at":"2017-03-07T00:50:36Z","updated_at":"2018-01-22T13:10:41Z","pushed_at":"2018-02-08T16:41:38Z","git_url":"git://github.com/IMSGlobal/openbadges-validator-core.git","ssh_url":"git@github.com:IMSGlobal/openbadges-validator-core.git","clone_url":"https://github.com/IMSGlobal/openbadges-validator-core.git","svn_url":"https://github.com/IMSGlobal/openbadges-validator-core","homepage":null,"size":456,"stargazers_count":13,"watchers_count":13,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6,"mirror_url":null,"archived":false,"open_issues_count":13,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0"},"forks":6,"open_issues":13,"watchers":13,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/pulls/191"},"html":{"href":"https://github.com/IMSGlobal/openbadges-validator-core/pull/191"},"issue":{"href":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/issues/191"},"comments":{"href":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/issues/191/comments"},"review_comments":{"href":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/pulls/191/comments"},"review_comment":{"href":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/pulls/191/commits"},"statuses":{"href":"https://api.github.com/repos/IMSGlobal/openbadges-validator-core/statuses/2e311e7a00712a5ac9eb4963148b36122340a554"}},"author_association":"COLLABORATOR","merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"mgylling","id":1616867,"avatar_url":"https://avatars2.githubusercontent.com/u/1616867?v=4","gravatar_id":"","url":"https://api.github.com/users/mgylling","html_url":"https://github.com/mgylling","followers_url":"https://api.github.com/users/mgylling/followers","following_url":"https://api.github.com/users/mgylling/following{/other_user}","gists_url":"https://api.github.com/users/mgylling/gists{/gist_id}","starred_url":"https://api.github.com/users/mgylling/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mgylling/subscriptions","organizations_url":"https://api.github.com/users/mgylling/orgs","repos_url":"https://api.github.com/users/mgylling/repos","events_url":"https://api.github.com/users/mgylling/events{/privacy}","received_events_url":"https://api.github.com/users/mgylling/received_events","type":"User","site_admin":false},"comments":0,"review_comments":0,"maintainer_can_modify":false,"commits":2,"additions":111,"deletions":23,"changed_files":4}}
{"actor":{"display_login":"mgylling"}}