{"action":"created","issue":{"url":"https://api.github.com/repos/shopware/shopware/issues/654","repository_url":"https://api.github.com/repos/shopware/shopware","labels_url":"https://api.github.com/repos/shopware/shopware/issues/654/labels{/name}","comments_url":"https://api.github.com/repos/shopware/shopware/issues/654/comments","events_url":"https://api.github.com/repos/shopware/shopware/issues/654/events","html_url":"https://github.com/shopware/shopware/pull/654","id":170761601,"number":654,"title":"Register controllers automatically","user":{"login":"jeboehm","id":3028277,"avatar_url":"https://avatars.githubusercontent.com/u/3028277?v=3","gravatar_id":"","url":"https://api.github.com/users/jeboehm","html_url":"https://github.com/jeboehm","followers_url":"https://api.github.com/users/jeboehm/followers","following_url":"https://api.github.com/users/jeboehm/following{/other_user}","gists_url":"https://api.github.com/users/jeboehm/gists{/gist_id}","starred_url":"https://api.github.com/users/jeboehm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeboehm/subscriptions","organizations_url":"https://api.github.com/users/jeboehm/orgs","repos_url":"https://api.github.com/users/jeboehm/repos","events_url":"https://api.github.com/users/jeboehm/events{/privacy}","received_events_url":"https://api.github.com/users/jeboehm/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2016-08-11T22:24:20Z","updated_at":"2016-08-17T05:51:48Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/shopware/shopware/pulls/654","html_url":"https://github.com/shopware/shopware/pull/654","diff_url":"https://github.com/shopware/shopware/pull/654.diff","patch_url":"https://github.com/shopware/shopware/pull/654.patch"},"body":"Hi,\r\ni'm really in love with the new plugin implementation. It works like a charm!\r\nWhile nearly everything is configured by convention, the controllers have to be registered in the old way.\r\n\r\nI tried to improve this by scanning the plugin directory for controller files. The next step will be to add a CompilerPass to the `ContainerBuilder`. It creates a new listener definition and adds the ControllerPath event (Enlight_Controller_Dispatcher_ControllerPath_X_Y) to a new `shopware.event_listener` tag for each found controller. In an additional array, the listener will store all ControllerPath events and their matching controller paths.\r\n\r\nWhile running at build time, there should be no performance issues. The great advantage is the registration of controllers without any additional configuration, just by adding them to the filesystem.\r\n\r\nI look forward to your feedback!"},"comment":{"url":"https://api.github.com/repos/shopware/shopware/issues/comments/240319661","html_url":"https://github.com/shopware/shopware/pull/654#issuecomment-240319661","issue_url":"https://api.github.com/repos/shopware/shopware/issues/654","id":240319661,"user":{"login":"dnoegel","id":1114384,"avatar_url":"https://avatars.githubusercontent.com/u/1114384?v=3","gravatar_id":"","url":"https://api.github.com/users/dnoegel","html_url":"https://github.com/dnoegel","followers_url":"https://api.github.com/users/dnoegel/followers","following_url":"https://api.github.com/users/dnoegel/following{/other_user}","gists_url":"https://api.github.com/users/dnoegel/gists{/gist_id}","starred_url":"https://api.github.com/users/dnoegel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dnoegel/subscriptions","organizations_url":"https://api.github.com/users/dnoegel/orgs","repos_url":"https://api.github.com/users/dnoegel/repos","events_url":"https://api.github.com/users/dnoegel/events{/privacy}","received_events_url":"https://api.github.com/users/dnoegel/received_events","type":"User","site_admin":false},"created_at":"2016-08-17T05:51:48Z","updated_at":"2016-08-17T05:51:48Z","body":"For our current routing system, convention over configuration is perfect IMHO. If we had a router such as the symfony router with the possibilities of a routing.xml with placeholders etc, configuration would be a better approach. But for our current system I see no benefit in explicitly registering controllers via services. \r\n\r\nSo basically Jeffrey's approach is what I would go for :+1: "}}
{"actor":{"display_login":"dnoegel"}}