{"action":"created","issue":{"url":"https://api.github.com/repos/Valloric/ycmd/issues/120","labels_url":"https://api.github.com/repos/Valloric/ycmd/issues/120/labels{/name}","comments_url":"https://api.github.com/repos/Valloric/ycmd/issues/120/comments","events_url":"https://api.github.com/repos/Valloric/ycmd/issues/120/events","html_url":"https://github.com/Valloric/ycmd/pull/120","id":72233770,"number":120,"title":"Add CodeIntel and a PHP completer","user":{"login":"cweagans","id":101590,"avatar_url":"https://avatars.githubusercontent.com/u/101590?v=3","gravatar_id":"","url":"https://api.github.com/users/cweagans","html_url":"https://github.com/cweagans","followers_url":"https://api.github.com/users/cweagans/followers","following_url":"https://api.github.com/users/cweagans/following{/other_user}","gists_url":"https://api.github.com/users/cweagans/gists{/gist_id}","starred_url":"https://api.github.com/users/cweagans/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cweagans/subscriptions","organizations_url":"https://api.github.com/users/cweagans/orgs","repos_url":"https://api.github.com/users/cweagans/repos","events_url":"https://api.github.com/users/cweagans/events{/privacy}","received_events_url":"https://api.github.com/users/cweagans/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":7,"created_at":"2015-04-30T17:56:07Z","updated_at":"2015-05-07T20:13:21Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/Valloric/ycmd/pulls/120","html_url":"https://github.com/Valloric/ycmd/pull/120","diff_url":"https://github.com/Valloric/ycmd/pull/120.diff","patch_url":"https://github.com/Valloric/ycmd/pull/120.patch"},"body":"cc @jeteon\r\ncc @Kronuz (thought you might like to know about this)\r\n\r\nI mentioned a while ago that I had hired someone to work on a PHP completer for this project. This is the WIP version of the completer.\r\n\r\nThings I think need to be done:\r\n\r\n- [ ] Remove copyright header from the completer files (@Valloric can correct me if I'm wrong here - I think the CLA is also a copyright assignment?)\r\n- [ ] Remove commented code -- @jeteon\r\n- [ ] Sign the CLA (does @jeteon need to do this or should I since I paid for the work?)\r\n- [ ] Decide what should happen if codeintel isn't installed with `pip` - should the ci_completer just not try to do anything? Or is there an automated way to `pip install codeintel` when ycmd is installed? @Valloric, this one is for you.\r\n- [ ] Testing on a large codebase -- @jeteon, can you please provide information about how to get this up and running to be able to test it?\r\n- [ ] Verify that Codeintel supplies built-in PHP functions and classes for indexing/completion -- @jeteon, if you can show me how to get this working, I can do this testing.\r\n\r\nAs mentioned in https://github.com/Valloric/ycmd/issues/96, PHP is just the beginning here. We can use codeintel for other languages if needed. Ruby would be an easy next target, as would CSS/SCSS/SASS."},"comment":{"url":"https://api.github.com/repos/Valloric/ycmd/issues/comments/100003699","html_url":"https://github.com/Valloric/ycmd/pull/120#issuecomment-100003699","issue_url":"https://api.github.com/repos/Valloric/ycmd/issues/120","id":100003699,"user":{"login":"Valloric","id":919444,"avatar_url":"https://avatars.githubusercontent.com/u/919444?v=3","gravatar_id":"","url":"https://api.github.com/users/Valloric","html_url":"https://github.com/Valloric","followers_url":"https://api.github.com/users/Valloric/followers","following_url":"https://api.github.com/users/Valloric/following{/other_user}","gists_url":"https://api.github.com/users/Valloric/gists{/gist_id}","starred_url":"https://api.github.com/users/Valloric/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Valloric/subscriptions","organizations_url":"https://api.github.com/users/Valloric/orgs","repos_url":"https://api.github.com/users/Valloric/repos","events_url":"https://api.github.com/users/Valloric/events{/privacy}","received_events_url":"https://api.github.com/users/Valloric/received_events","type":"User","site_admin":false},"created_at":"2015-05-07T20:13:20Z","updated_at":"2015-05-07T20:13:20Z","body":">  Decide what should happen if codeintel isn't installed with pip - should the ci_completer just not try to do anything? Or is there an automated way to pip install codeintel when ycmd is installed? @Valloric, this one is for you.\r\n\r\nThis one is difficult. The way ycmd currently works is that by default, it provides only some semantic completion out of the box. For semantic engines that need to be compiled, it includes their source code with a submodule and the user can compile them by providing a flag to `build.py`.\r\n\r\nWe can have `build.py` call `pip` with the right params to get everything installed if the user provides a `--php-completer` build flag; if `pip` isn't installed, then we bail out with an error message that the user needs to first install it.\r\n\r\n> Testing on a large codebase -- @jeteon, can you please provide information about how to get this up and running to be able to test it?\r\n\r\nYeah we need to have full end-to-end tests for every semantic completer in ycmd. This might require tweaking the `travis.yml` file so that the correct dependencies are pulled in on the build machines."}}