{"action":"created","issue":{"url":"https://api.github.com/repos/sh4nks/flaskbb/issues/183","repository_url":"https://api.github.com/repos/sh4nks/flaskbb","labels_url":"https://api.github.com/repos/sh4nks/flaskbb/issues/183/labels{/name}","comments_url":"https://api.github.com/repos/sh4nks/flaskbb/issues/183/comments","events_url":"https://api.github.com/repos/sh4nks/flaskbb/issues/183/events","html_url":"https://github.com/sh4nks/flaskbb/issues/183","id":137803161,"number":183,"title":"Plugin System","user":{"login":"sh4nks","id":1510708,"avatar_url":"https://avatars.githubusercontent.com/u/1510708?v=3","gravatar_id":"","url":"https://api.github.com/users/sh4nks","html_url":"https://github.com/sh4nks","followers_url":"https://api.github.com/users/sh4nks/followers","following_url":"https://api.github.com/users/sh4nks/following{/other_user}","gists_url":"https://api.github.com/users/sh4nks/gists{/gist_id}","starred_url":"https://api.github.com/users/sh4nks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sh4nks/subscriptions","organizations_url":"https://api.github.com/users/sh4nks/orgs","repos_url":"https://api.github.com/users/sh4nks/repos","events_url":"https://api.github.com/users/sh4nks/events{/privacy}","received_events_url":"https://api.github.com/users/sh4nks/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/sh4nks/flaskbb/milestones/2","html_url":"https://github.com/sh4nks/flaskbb/milestones/2.0","labels_url":"https://api.github.com/repos/sh4nks/flaskbb/milestones/2/labels","id":1042944,"number":2,"title":"2.0","description":"When I have a new idea I am adding it to this milestone. I really want to release first 0.1 which should be a stable basis - but before we can do this, we have to squash the last few issues for 0.1 first.","creator":{"login":"sh4nks","id":1510708,"avatar_url":"https://avatars.githubusercontent.com/u/1510708?v=3","gravatar_id":"","url":"https://api.github.com/users/sh4nks","html_url":"https://github.com/sh4nks","followers_url":"https://api.github.com/users/sh4nks/followers","following_url":"https://api.github.com/users/sh4nks/following{/other_user}","gists_url":"https://api.github.com/users/sh4nks/gists{/gist_id}","starred_url":"https://api.github.com/users/sh4nks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sh4nks/subscriptions","organizations_url":"https://api.github.com/users/sh4nks/orgs","repos_url":"https://api.github.com/users/sh4nks/repos","events_url":"https://api.github.com/users/sh4nks/events{/privacy}","received_events_url":"https://api.github.com/users/sh4nks/received_events","type":"User","site_admin":false},"open_issues":6,"closed_issues":1,"state":"open","created_at":"2015-03-28T14:46:47Z","updated_at":"2016-03-02T18:49:40Z","due_on":null,"closed_at":null},"comments":4,"created_at":"2016-03-02T08:07:50Z","updated_at":"2016-05-27T06:45:46Z","closed_at":null,"body":"I was just thinking about our plugin system after I have read @justanr comment on #182 issue about just pip installing a plugin.\r\nAt the moment, we use a homegrown plugin system where you simply place the plugins in the ``plugins/`` folder and disable them by placing a ``DISABLED`` file in the plugins folder.\r\n\r\nThe more I think about plugins that you can just install with pip the more I like the idea. Below I have listed a few pros/cons about both systems that came to my mind:\r\n\r\n**Current Plugin System:** \r\n- (-) No dependency management\r\n- (-) No version management (what to do upon a new FlaskBB release, that deprecates stuff?)\r\n- (-) No \"central\" repository/infrastructure available (can be implemented)\r\n- (+) Easy to install and enable\r\n\r\n\r\n**pip/PyPI based system:**\r\n- (+) Dependency management - a plugin can define the dependencies in the ``setup.py`` file\r\n- (+) Version management\r\n- (+) Infrastructure already available (PyPI)\r\n- (~) Installation of plugins (some might prefer this method over dropping them into a folder)\r\n- (?) How to say which plugins you want to have enabled and which not without uninstalling them? \r\n\r\nThese are just some random thoughts at the moment, but what do you think about that?"},"comment":{"url":"https://api.github.com/repos/sh4nks/flaskbb/issues/comments/222072562","html_url":"https://github.com/sh4nks/flaskbb/issues/183#issuecomment-222072562","issue_url":"https://api.github.com/repos/sh4nks/flaskbb/issues/183","id":222072562,"user":{"login":"sh4nks","id":1510708,"avatar_url":"https://avatars.githubusercontent.com/u/1510708?v=3","gravatar_id":"","url":"https://api.github.com/users/sh4nks","html_url":"https://github.com/sh4nks","followers_url":"https://api.github.com/users/sh4nks/followers","following_url":"https://api.github.com/users/sh4nks/following{/other_user}","gists_url":"https://api.github.com/users/sh4nks/gists{/gist_id}","starred_url":"https://api.github.com/users/sh4nks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sh4nks/subscriptions","organizations_url":"https://api.github.com/users/sh4nks/orgs","repos_url":"https://api.github.com/users/sh4nks/repos","events_url":"https://api.github.com/users/sh4nks/events{/privacy}","received_events_url":"https://api.github.com/users/sh4nks/received_events","type":"User","site_admin":false},"created_at":"2016-05-27T06:45:46Z","updated_at":"2016-05-27T06:45:46Z","body":"I'll have a closer look on this when I have more time.."}}
{"actor":{"display_login":"sh4nks"}}