From f35f1b96762d376a955eacf741173c519f0e2a1c Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Sat, 20 May 2017 10:08:48 -0400 Subject: [PATCH] Add the cache_path parameter to parso calls. --- jedi/api/__init__.py | 1 + jedi/evaluate/compiled/mixed.py | 4 +++- jedi/evaluate/imports.py | 4 +++- jedi/evaluate/sys_path.py | 8 +++++--- jedi/parser_utils.py | 1 - 5 files changed, 12 insertions(+), 6 deletions(-) diff --git a/jedi/api/__init__.py b/jedi/api/__init__.py index bf105de9..08e983c1 100644 --- a/jedi/api/__init__.py +++ b/jedi/api/__init__.py @@ -141,6 +141,7 @@ class Script(object): grammar=self._grammar, cache=False, # No disk cache, because the current script often changes. diff_cache=True, + cache_path=settings.cache_directory ) @cache.memoize_method diff --git a/jedi/evaluate/compiled/mixed.py b/jedi/evaluate/compiled/mixed.py index 107c5bef..31ccd35d 100644 --- a/jedi/evaluate/compiled/mixed.py +++ b/jedi/evaluate/compiled/mixed.py @@ -6,6 +6,7 @@ import inspect import os from parso.python import parse +from jedi import settings from jedi.evaluate import compiled from jedi.cache import underscore_memoization from jedi.evaluate import imports @@ -108,7 +109,8 @@ def _load_module(evaluator, path, python_object): grammar=evaluator.grammar, path=path, cache=True, - diff_cache=True + diff_cache=True, + cache_path=settings.cache_directory ).get_root_node() python_module = inspect.getmodule(python_object) diff --git a/jedi/evaluate/imports.py b/jedi/evaluate/imports.py index ba92076b..13c4ca05 100644 --- a/jedi/evaluate/imports.py +++ b/jedi/evaluate/imports.py @@ -471,7 +471,9 @@ def _load_module(evaluator, path=None, code=None, sys_path=None, parent_module=N if path is not None and path.endswith(('.py', '.zip', '.egg')) \ and dotted_path not in settings.auto_import_modules: - module_node = parse(code=code, path=path, cache=True, diff_cache=True) + module_node = parse( + code=code, path=path, cache=True, diff_cache=True, + cache_path=settings.cache_directory) from jedi.evaluate.representation import ModuleContext return ModuleContext(evaluator, module_node, path=path) diff --git a/jedi/evaluate/sys_path.py b/jedi/evaluate/sys_path.py index 262ba4ae..a93005a7 100644 --- a/jedi/evaluate/sys_path.py +++ b/jedi/evaluate/sys_path.py @@ -7,10 +7,11 @@ from jedi._compatibility import exec_function, unicode from parso.python import tree from parso.python import parse from jedi.evaluate.cache import memoize_default -from jedi import debug -from jedi import common from jedi.evaluate.compiled import CompiledObject from jedi.evaluate.context import ContextualizedNode +from jedi import settings +from jedi import debug +from jedi import common def get_venv_path(venv): @@ -214,7 +215,8 @@ def _get_paths_from_buildout_script(evaluator, buildout_script_path): module_node = parse( path=buildout_script_path, grammar=evaluator.grammar, - cache=True + cache=True, + cache_path=settings.cache_directory ) except IOError: debug.warning('Error trying to read buildout_script: %s', buildout_script_path) diff --git a/jedi/parser_utils.py b/jedi/parser_utils.py index e50596e3..d97f0708 100644 --- a/jedi/parser_utils.py +++ b/jedi/parser_utils.py @@ -239,4 +239,3 @@ def get_parent_scope(node, include_flows=False): break scope = scope.parent return scope -