{"action":"created","issue":{"url":"https://api.github.com/repos/etsy/phan/issues/22","labels_url":"https://api.github.com/repos/etsy/phan/issues/22/labels{/name}","comments_url":"https://api.github.com/repos/etsy/phan/issues/22/comments","events_url":"https://api.github.com/repos/etsy/phan/issues/22/events","html_url":"https://github.com/etsy/phan/issues/22","id":121241050,"number":22,"title":"Language analyzer as a service","user":{"login":"mindplay-dk","id":103348,"avatar_url":"https://avatars.githubusercontent.com/u/103348?v=3","gravatar_id":"","url":"https://api.github.com/users/mindplay-dk","html_url":"https://github.com/mindplay-dk","followers_url":"https://api.github.com/users/mindplay-dk/followers","following_url":"https://api.github.com/users/mindplay-dk/following{/other_user}","gists_url":"https://api.github.com/users/mindplay-dk/gists{/gist_id}","starred_url":"https://api.github.com/users/mindplay-dk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mindplay-dk/subscriptions","organizations_url":"https://api.github.com/users/mindplay-dk/orgs","repos_url":"https://api.github.com/users/mindplay-dk/repos","events_url":"https://api.github.com/users/mindplay-dk/events{/privacy}","received_events_url":"https://api.github.com/users/mindplay-dk/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/etsy/phan/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":{"login":"morria","id":387209,"avatar_url":"https://avatars.githubusercontent.com/u/387209?v=3","gravatar_id":"","url":"https://api.github.com/users/morria","html_url":"https://github.com/morria","followers_url":"https://api.github.com/users/morria/followers","following_url":"https://api.github.com/users/morria/following{/other_user}","gists_url":"https://api.github.com/users/morria/gists{/gist_id}","starred_url":"https://api.github.com/users/morria/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/morria/subscriptions","organizations_url":"https://api.github.com/users/morria/orgs","repos_url":"https://api.github.com/users/morria/repos","events_url":"https://api.github.com/users/morria/events{/privacy}","received_events_url":"https://api.github.com/users/morria/received_events","type":"User","site_admin":false},"milestone":null,"comments":10,"created_at":"2015-12-09T13:38:41Z","updated_at":"2015-12-15T05:08:37Z","closed_at":null,"body":"Have you thought ahead as far as allowing for the static code analysis engine to run as (part of) a service?\r\n\r\nThat is, I'd like to eventually run the language analyzer in the background, continuously integrating changed files into the working model and providing updated analysis - e.g. allowing it to run as a service with (say) a REST API to which any modern IDE or text-editor could connect and continuously obtain information about the source-code.\r\n\r\nTypescript has the right approach to this, with it's [incremental compiler/analyzer](https://github.com/Microsoft/TypeScript/wiki/Using-the-Language-Service-API) which runs as a service, and has enabled quick, accurate integration with a range of IDEs and editors.\r\n\r\nIt would be really awesome if we could have consistent static analysis at design-time on our local systems, as on our continuous integration server, so I think it's worth thinking ahead to this?\r\n"},"comment":{"url":"https://api.github.com/repos/etsy/phan/issues/comments/164646254","html_url":"https://github.com/etsy/phan/issues/22#issuecomment-164646254","issue_url":"https://api.github.com/repos/etsy/phan/issues/22","id":164646254,"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},"created_at":"2015-12-15T05:08:37Z","updated_at":"2015-12-15T05:08:37Z","body":"@mindplay-dk So what gain do you see by having a process running in the background? As I see it, the only thing that needs to be running is a file watcher, and when a file changes, the normal one-off analysis can be run on that file. Is that accurate? Or are you envisioning something else?"}}