{"action":"created","issue":{"url":"https://api.github.com/repos/JukkaL/mypy/issues/1187","labels_url":"https://api.github.com/repos/JukkaL/mypy/issues/1187/labels{/name}","comments_url":"https://api.github.com/repos/JukkaL/mypy/issues/1187/comments","events_url":"https://api.github.com/repos/JukkaL/mypy/issues/1187/events","html_url":"https://github.com/JukkaL/mypy/pull/1187","id":129595276,"number":1187,"title":"Further optimize find_module","user":{"login":"gnprice","id":28173,"avatar_url":"https://avatars.githubusercontent.com/u/28173?v=3","gravatar_id":"","url":"https://api.github.com/users/gnprice","html_url":"https://github.com/gnprice","followers_url":"https://api.github.com/users/gnprice/followers","following_url":"https://api.github.com/users/gnprice/following{/other_user}","gists_url":"https://api.github.com/users/gnprice/gists{/gist_id}","starred_url":"https://api.github.com/users/gnprice/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gnprice/subscriptions","organizations_url":"https://api.github.com/users/gnprice/orgs","repos_url":"https://api.github.com/users/gnprice/repos","events_url":"https://api.github.com/users/gnprice/events{/privacy}","received_events_url":"https://api.github.com/users/gnprice/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2016-01-28T22:01:07Z","updated_at":"2016-01-28T22:02:34Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/JukkaL/mypy/pulls/1187","html_url":"https://github.com/JukkaL/mypy/pull/1187","diff_url":"https://github.com/JukkaL/mypy/pull/1187.diff","patch_url":"https://github.com/JukkaL/mypy/pull/1187.patch"},"body":"These three commits take the time we spend in find_module on an example codebase from 10% of mypy's total time down to 1.4%. At this point I think I'm done optimizing this for a while. :-)\r\n\r\nThe main improvement is the middle commit, which caches a lot of work that is otherwise repeated between find_module calls.\r\n"},"comment":{"url":"https://api.github.com/repos/JukkaL/mypy/issues/comments/176441711","html_url":"https://github.com/JukkaL/mypy/pull/1187#issuecomment-176441711","issue_url":"https://api.github.com/repos/JukkaL/mypy/issues/1187","id":176441711,"user":{"login":"gnprice","id":28173,"avatar_url":"https://avatars.githubusercontent.com/u/28173?v=3","gravatar_id":"","url":"https://api.github.com/users/gnprice","html_url":"https://github.com/gnprice","followers_url":"https://api.github.com/users/gnprice/followers","following_url":"https://api.github.com/users/gnprice/following{/other_user}","gists_url":"https://api.github.com/users/gnprice/gists{/gist_id}","starred_url":"https://api.github.com/users/gnprice/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gnprice/subscriptions","organizations_url":"https://api.github.com/users/gnprice/orgs","repos_url":"https://api.github.com/users/gnprice/repos","events_url":"https://api.github.com/users/gnprice/events{/privacy}","received_events_url":"https://api.github.com/users/gnprice/received_events","type":"User","site_admin":false},"created_at":"2016-01-28T22:02:34Z","updated_at":"2016-01-28T22:02:34Z","body":"(The first Travis build above failed because I accidentally pushed a branch to the main repo instead of my own fork, and then deleted it after Travis had gotten notified but before it got around to cloning it. Looks like Travis is building it again after the actual PR.)\r\n"}}