{"action":"created","issue":{"url":"https://api.github.com/repos/learningequality/kolibri/issues/494","repository_url":"https://api.github.com/repos/learningequality/kolibri","labels_url":"https://api.github.com/repos/learningequality/kolibri/issues/494/labels{/name}","comments_url":"https://api.github.com/repos/learningequality/kolibri/issues/494/comments","events_url":"https://api.github.com/repos/learningequality/kolibri/issues/494/events","html_url":"https://github.com/learningequality/kolibri/pull/494","id":173571865,"number":494,"title":"Self contained plugins","user":{"login":"rtibbles","id":1680573,"avatar_url":"https://avatars.githubusercontent.com/u/1680573?v=3","gravatar_id":"","url":"https://api.github.com/users/rtibbles","html_url":"https://github.com/rtibbles","followers_url":"https://api.github.com/users/rtibbles/followers","following_url":"https://api.github.com/users/rtibbles/following{/other_user}","gists_url":"https://api.github.com/users/rtibbles/gists{/gist_id}","starred_url":"https://api.github.com/users/rtibbles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rtibbles/subscriptions","organizations_url":"https://api.github.com/users/rtibbles/orgs","repos_url":"https://api.github.com/users/rtibbles/repos","events_url":"https://api.github.com/users/rtibbles/events{/privacy}","received_events_url":"https://api.github.com/users/rtibbles/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/learningequality/kolibri/labels/needs%20review","name":"needs review","color":"fbca04"}],"state":"open","locked":false,"assignee":{"login":"benjaoming","id":374612,"avatar_url":"https://avatars.githubusercontent.com/u/374612?v=3","gravatar_id":"","url":"https://api.github.com/users/benjaoming","html_url":"https://github.com/benjaoming","followers_url":"https://api.github.com/users/benjaoming/followers","following_url":"https://api.github.com/users/benjaoming/following{/other_user}","gists_url":"https://api.github.com/users/benjaoming/gists{/gist_id}","starred_url":"https://api.github.com/users/benjaoming/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benjaoming/subscriptions","organizations_url":"https://api.github.com/users/benjaoming/orgs","repos_url":"https://api.github.com/users/benjaoming/repos","events_url":"https://api.github.com/users/benjaoming/events{/privacy}","received_events_url":"https://api.github.com/users/benjaoming/received_events","type":"User","site_admin":false},"assignees":[{"login":"benjaoming","id":374612,"avatar_url":"https://avatars.githubusercontent.com/u/374612?v=3","gravatar_id":"","url":"https://api.github.com/users/benjaoming","html_url":"https://github.com/benjaoming","followers_url":"https://api.github.com/users/benjaoming/followers","following_url":"https://api.github.com/users/benjaoming/following{/other_user}","gists_url":"https://api.github.com/users/benjaoming/gists{/gist_id}","starred_url":"https://api.github.com/users/benjaoming/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benjaoming/subscriptions","organizations_url":"https://api.github.com/users/benjaoming/orgs","repos_url":"https://api.github.com/users/benjaoming/repos","events_url":"https://api.github.com/users/benjaoming/events{/privacy}","received_events_url":"https://api.github.com/users/benjaoming/received_events","type":"User","site_admin":false},{"login":"jamalex","id":618416,"avatar_url":"https://avatars.githubusercontent.com/u/618416?v=3","gravatar_id":"","url":"https://api.github.com/users/jamalex","html_url":"https://github.com/jamalex","followers_url":"https://api.github.com/users/jamalex/followers","following_url":"https://api.github.com/users/jamalex/following{/other_user}","gists_url":"https://api.github.com/users/jamalex/gists{/gist_id}","starred_url":"https://api.github.com/users/jamalex/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamalex/subscriptions","organizations_url":"https://api.github.com/users/jamalex/orgs","repos_url":"https://api.github.com/users/jamalex/repos","events_url":"https://api.github.com/users/jamalex/events{/privacy}","received_events_url":"https://api.github.com/users/jamalex/received_events","type":"User","site_admin":false},{"login":"indirectlylit","id":2367265,"avatar_url":"https://avatars.githubusercontent.com/u/2367265?v=3","gravatar_id":"","url":"https://api.github.com/users/indirectlylit","html_url":"https://github.com/indirectlylit","followers_url":"https://api.github.com/users/indirectlylit/followers","following_url":"https://api.github.com/users/indirectlylit/following{/other_user}","gists_url":"https://api.github.com/users/indirectlylit/gists{/gist_id}","starred_url":"https://api.github.com/users/indirectlylit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/indirectlylit/subscriptions","organizations_url":"https://api.github.com/users/indirectlylit/orgs","repos_url":"https://api.github.com/users/indirectlylit/repos","events_url":"https://api.github.com/users/indirectlylit/events{/privacy}","received_events_url":"https://api.github.com/users/indirectlylit/received_events","type":"User","site_admin":false}],"milestone":null,"comments":6,"created_at":"2016-08-27T01:56:25Z","updated_at":"2016-09-16T16:19:19Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/learningequality/kolibri/pulls/494","html_url":"https://github.com/learningequality/kolibri/pull/494","diff_url":"https://github.com/learningequality/kolibri/pull/494.diff","patch_url":"https://github.com/learningequality/kolibri/pull/494.patch"},"body":"## Summary\r\n\r\nAllows plugins to have their own package.json, and webpack.config.js - to allow for all plugin specific configuration and dependencies to be bundled into the plugin only.\r\n\r\nNote: this *does* also allow for the building and use of plugins with frontend code that reside outside of the main Kolibri folder, and allow for plugins to be pip installed!\r\n\r\n## TODO\r\n\r\n- [X] Have tests been written for the new code?\r\n- [x] Has documentation been written/updated?\r\n- [X] New dependencies (if any) added to requirements file\r\n- [x] Add an entry to CHANGELOG.rst\r\n\r\n## Reviewer guidance\r\n\r\nAdds a new command to install dependencies in plugins.\r\n\r\nReconfigures all the renderer plugins to use the new system.\r\n\r\nTo test, run and build as usual!\r\n\r\nThis should not be merged until after we have branched for the MVP, but I wanted to get feedback on it, so we can merge it pretty swiftly, so this can be used in developing the Perseus Exercise renderer plugin.\r\n\r\n## Issues addressed\r\n\r\nFixes #193 \r\n\r\n## Documentation\r\n\r\nhttps://github.com/rtibbles/kolibri/blob/8bf0aed36cb5d7d6b5d3eb84bb3b08f388522c01/docs/dev/frontend.rst"},"comment":{"url":"https://api.github.com/repos/learningequality/kolibri/issues/comments/247643366","html_url":"https://github.com/learningequality/kolibri/pull/494#issuecomment-247643366","issue_url":"https://api.github.com/repos/learningequality/kolibri/issues/494","id":247643366,"user":{"login":"rtibbles","id":1680573,"avatar_url":"https://avatars.githubusercontent.com/u/1680573?v=3","gravatar_id":"","url":"https://api.github.com/users/rtibbles","html_url":"https://github.com/rtibbles","followers_url":"https://api.github.com/users/rtibbles/followers","following_url":"https://api.github.com/users/rtibbles/following{/other_user}","gists_url":"https://api.github.com/users/rtibbles/gists{/gist_id}","starred_url":"https://api.github.com/users/rtibbles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rtibbles/subscriptions","organizations_url":"https://api.github.com/users/rtibbles/orgs","repos_url":"https://api.github.com/users/rtibbles/repos","events_url":"https://api.github.com/users/rtibbles/events{/privacy}","received_events_url":"https://api.github.com/users/rtibbles/received_events","type":"User","site_admin":false},"created_at":"2016-09-16T16:19:19Z","updated_at":"2016-09-16T16:19:19Z","body":"| but this allows frontend focused plugins to be built independently of the main Kolibri repo\r\n\r\nSlight misspeak here, it is built in the context of the main Kolibri repo, but the frontend bundle is put into the independent plugin, so that it can be distributed independently."}}
{"actor":{"display_login":"rtibbles"}}