{"action":"created","issue":{"url":"https://api.github.com/repos/davidhalter/jedi/issues/915","repository_url":"https://api.github.com/repos/davidhalter/jedi","labels_url":"https://api.github.com/repos/davidhalter/jedi/issues/915/labels{/name}","comments_url":"https://api.github.com/repos/davidhalter/jedi/issues/915/comments","events_url":"https://api.github.com/repos/davidhalter/jedi/issues/915/events","html_url":"https://github.com/davidhalter/jedi/issues/915","id":223664303,"number":915,"title":"_do_import/infer_import don't make use of cache (read) but do write.","user":{"login":"Carreau","id":335567,"avatar_url":"https://avatars3.githubusercontent.com/u/335567?v=4","gravatar_id":"","url":"https://api.github.com/users/Carreau","html_url":"https://github.com/Carreau","followers_url":"https://api.github.com/users/Carreau/followers","following_url":"https://api.github.com/users/Carreau/following{/other_user}","gists_url":"https://api.github.com/users/Carreau/gists{/gist_id}","starred_url":"https://api.github.com/users/Carreau/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Carreau/subscriptions","organizations_url":"https://api.github.com/users/Carreau/orgs","repos_url":"https://api.github.com/users/Carreau/repos","events_url":"https://api.github.com/users/Carreau/events{/privacy}","received_events_url":"https://api.github.com/users/Carreau/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":13,"created_at":"2017-04-23T20:18:37Z","updated_at":"2017-08-26T13:40:21Z","closed_at":null,"body":"Adding pint statements to `_save_to_file_system` and running something like:\r\n\r\n```\r\nimport matplotlib.pyplot as plt\r\nfrom jedi import Interpreter, Script\r\n\r\ninterpreter = Script('''import matplotlib.pyplot as plt\r\nplt.''')\r\ncompletions = interpreter.completions()\r\nfor c in completions:\r\n    c.type\r\n```\r\n\r\nAllow one to see that jedi will save a lot of parser information everytime the script is ran:\r\n\r\n```\r\nsave to fs /Users/bussonniermatthias/anaconda/lib/python3.6/site-packages/matplotlib/pyplot.py <Module: @3-4144> False\r\nsave to fs /Users/bussonniermatthias/anaconda/lib/python3.6/__future__.py <Module: @1-141> False\r\nsave to fs /Users/bussonniermatthias/anaconda/lib/python3.6/site-packages/matplotlib/text.py <Module: @1-2382> False\r\nsave to fs /Users/bussonniermatthias/anaconda/lib/python3.6/site-packages/matplotlib/patches.py <Module: @3-4615> False\r\nsave to fs /Users/bussonniermatthias/anaconda/lib/python3.6/site-packages/matplotlib/artist.py <Module: @1-1520> False\r\nsave to fs /Users/bussonniermatthias/anaconda/lib/python3.6/site-packages/matplotlib/ticker.py <Module: @1-2462> False\r\nsave to fs /Users/bussonniermatthias/anaconda/lib/python3.6/site-packages/matplotlib/axes/_subplots.py <Module: @1-227> False\r\nsave to fs /Users/bussonniermatthias/anaconda/lib/python3.6/s...\r\n```\r\n\r\nDiving into this one can see that the cached files are never read. So something is missing the opportunity to use caching.\r\n\r\nI'm going to __guess__ that might be because file content may change. My I suggest a caching base not only on file path, but file content hash ?"},"comment":{"url":"https://api.github.com/repos/davidhalter/jedi/issues/comments/325128569","html_url":"https://github.com/davidhalter/jedi/issues/915#issuecomment-325128569","issue_url":"https://api.github.com/repos/davidhalter/jedi/issues/915","id":325128569,"user":{"login":"sirfz","id":4741099,"avatar_url":"https://avatars3.githubusercontent.com/u/4741099?v=4","gravatar_id":"","url":"https://api.github.com/users/sirfz","html_url":"https://github.com/sirfz","followers_url":"https://api.github.com/users/sirfz/followers","following_url":"https://api.github.com/users/sirfz/following{/other_user}","gists_url":"https://api.github.com/users/sirfz/gists{/gist_id}","starred_url":"https://api.github.com/users/sirfz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sirfz/subscriptions","organizations_url":"https://api.github.com/users/sirfz/orgs","repos_url":"https://api.github.com/users/sirfz/repos","events_url":"https://api.github.com/users/sirfz/events{/privacy}","received_events_url":"https://api.github.com/users/sirfz/received_events","type":"User","site_admin":false},"created_at":"2017-08-26T13:40:21Z","updated_at":"2017-08-26T13:40:21Z","body":"In my experience, neocomplete freezes only the first time when completion is being loaded for a large module (e.g. numpy or tensorflow) and later attempts all complete fast. YCM doesn't freeze, but you won't see any completion until loading is done (but you can still use vim in the meantime)."}}
{"actor":{"display_login":"sirfz"}}