René's URL Explorer Experiment


Title: pyls crashes after invalid path exception on Windows · Issue #94 · palantir/python-language-server · GitHub

Open Graph Title: pyls crashes after invalid path exception on Windows · Issue #94 · palantir/python-language-server

X Title: pyls crashes after invalid path exception on Windows · Issue #94 · palantir/python-language-server

Description: I am evaluating the new LSP package for Sublime Text 3 together with python-language-server at the moment. Sublime Text freezes frequently with LSP connected to pyls, which is discussed in sublimelsp/LSP#12 After some investigation I fou...

Open Graph Description: I am evaluating the new LSP package for Sublime Text 3 together with python-language-server at the moment. Sublime Text freezes frequently with LSP connected to pyls, which is discussed in sublimel...

X Description: I am evaluating the new LSP package for Sublime Text 3 together with python-language-server at the moment. Sublime Text freezes frequently with LSP connected to pyls, which is discussed in sublimel...

Opengraph URL: https://github.com/palantir/python-language-server/issues/94

X: @github

direct link

Domain: github.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"pyls crashes after invalid path exception on Windows","articleBody":"I am evaluating the new [LSP package](https://github.com/tomv564/LSP) for Sublime Text 3 together with python-language-server at the moment.\r\n\r\nSublime Text freezes frequently with LSP connected to pyls, which is discussed in https://github.com/tomv564/LSP/issues/12\r\n\r\nAfter some investigation I found a crash of pyls to cause LSP to hang while reading from stdout/stderr, which might be the reason for the troubles.\r\n\r\nI configured pyls to write a logfile instead of writing errors to stderr, which seems to prevent ST from freezing so far. The log shows following errors at some point.\r\n\r\nIt looks like pyls to not translate the file uri correctly at some point, which causes invalid path exceptions on file evaluation. I haven't located the issue nor did I try to fix it yet, so I am not quite sure whether it is  an issue caused by LSP or pyls. As LSP sends an uri like `file://C:/...` I consider pyls to not translate the file path correctly.\r\n\r\n```\r\n2017-08-18 18:14:03,293 UTC - ERROR - pyls.language_server - CAUGHT\r\nTraceback (most recent call last):\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\language_server.py\", line 67, in wrapped\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\python_ls.py\", line 137, in m_text_document__hover\r\n    return self.hover(textDocument['uri'], position)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\python_ls.py\", line 88, in hover\r\n    return self._hook(self._hooks.pyls_hover, doc_uri, position=position) or {'contents': ''}\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\python_ls.py\", line 57, in _hook\r\n    return hook(config=self.config, workspace=self.workspace, document=doc, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 745, in __call__\r\n    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 339, in _hookexec\r\n    return self._inner_hookexec(hook, methods, kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 302, in __call__\r\n    return outcome.get_result()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 279, in get_result\r\n    raise ex[1].with_traceback(ex[2])\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 265, in __init__\r\n    self.result = func()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 300, in \u003clambda\u003e\r\n    outcome = _CallOutcome(lambda: self.oldcall(hook, hook_impls, kwargs))\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 334, in \u003clambda\u003e\r\n    _MultiCall(methods, kwargs, hook.spec_opts).execute()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 614, in execute\r\n    res = hook_impl.function(*args)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\plugins\\hover.py\", line 10, in pyls_hover\r\n    definitions = document.jedi_script(position).goto_definitions()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\api\\__init__.py\", line 203, in goto_definitions\r\n    definitions = helpers.evaluate_goto_definition(self._evaluator, context, leaf)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\api\\helpers.py\", line 198, in evaluate_goto_definition\r\n    return evaluator.goto_definitions(context, leaf)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 452, in goto_definitions\r\n    return self.eval_statement(context, def_, name)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 135, in eval_statement\r\n    return self._eval_stmt(context, stmt, seek_name)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 151, in _eval_stmt\r\n    types = self.eval_element(context, rhs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 252, in eval_element\r\n    return self._eval_element_if_evaluated(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 264, in _eval_element_if_evaluated\r\n    return self._eval_element_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 268, in _eval_element_cached\r\n    return self._eval_element_not_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 289, in _eval_element_not_cached\r\n    types = self.eval_atom(context, first_child)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 347, in eval_atom\r\n    search_global=True\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\_compatibility.py\", line 213, in \u003clambda\u003e\r\n    return lambda *args, **kwargs: self.func(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 52, in py__getattribute__\r\n    self, name_or_str, name_context, position, search_global, is_goto)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 130, in find_types\r\n    return f.find(filters, attribute_lookup=not search_global)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 64, in find\r\n    types = self._names_to_types(names, attribute_lookup)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in _names_to_types\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in unite\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in \u003cgenexpr\u003e\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in \u003cgenexpr\u003e\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\filters.py\", line 117, in infer\r\n    return self.get_param().infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\param.py\", line 224, in infer\r\n    return self._lazy_context.infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\instance.py\", line 384, in infer\r\n    return self._param.infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 51, in infer\r\n    return unite(p.infer() for p in self._executed_params)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in unite\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in \u003cgenexpr\u003e\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 51, in \u003cgenexpr\u003e\r\n    return unite(p.infer() for p in self._executed_params)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\param.py\", line 224, in infer\r\n    return self._lazy_context.infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 120, in infer\r\n    return self._context.eval_node(self.data)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 37, in eval_node\r\n    return self.evaluator.eval_element(self, node)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 252, in eval_element\r\n    return self._eval_element_if_evaluated(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 264, in _eval_element_if_evaluated\r\n    return self._eval_element_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 268, in _eval_element_cached\r\n    return self._eval_element_not_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 276, in _eval_element_not_cached\r\n    types = self.eval_atom(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 347, in eval_atom\r\n    search_global=True\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\_compatibility.py\", line 213, in \u003clambda\u003e\r\n    return lambda *args, **kwargs: self.func(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 52, in py__getattribute__\r\n    self, name_or_str, name_context, position, search_global, is_goto)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 130, in find_types\r\n    return f.find(filters, attribute_lookup=not search_global)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 64, in find\r\n    types = self._names_to_types(names, attribute_lookup)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in _names_to_types\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in unite\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in \u003cgenexpr\u003e\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in \u003cgenexpr\u003e\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\filters.py\", line 101, in infer\r\n    return self.get_param().infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\filters.py\", line 104, in get_param\r\n    params = self.parent_context.get_params()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\representation.py\", line 407, in get_params\r\n    return search_params(self.evaluator, self.parent_context, self.tree_node)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 78, in search_params\r\n    funcdef\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 196, in wrapper\r\n    return list(func(*args, **kwargs))\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 114, in _search_function_executions\r\n    evaluator, [module_context], func_string_name):\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\imports.py\", line 530, in get_modules_containing_name\r\n    for file_name in os.listdir(d):\r\nOSError: [WinError 123] Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch: 'C:\\\\C:\\\\Apps\\\\Sublime\\\\Data\\\\Packages\\\\LSP'\r\n2017-08-18 18:14:03,302 UTC - ERROR - jsonrpc.manager - API Exception: {'type': 'OSError', 'args': (22, 'Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch'), 'message': \"[WinError 123] Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch: 'C:\\\\\\\\C:\\\\\\\\Apps\\\\\\\\Sublime\\\\\\\\Data\\\\\\\\Packages\\\\\\\\LSP'\"}\r\nTraceback (most recent call last):\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jsonrpc\\manager.py\", line 108, in _get_responses\r\n    result = method(*request.args, **request.kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\language_server.py\", line 67, in wrapped\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\python_ls.py\", line 137, in m_text_document__hover\r\n    return self.hover(textDocument['uri'], position)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\python_ls.py\", line 88, in hover\r\n    return self._hook(self._hooks.pyls_hover, doc_uri, position=position) or {'contents': ''}\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\python_ls.py\", line 57, in _hook\r\n    return hook(config=self.config, workspace=self.workspace, document=doc, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 745, in __call__\r\n    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 339, in _hookexec\r\n    return self._inner_hookexec(hook, methods, kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 302, in __call__\r\n    return outcome.get_result()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 279, in get_result\r\n    raise ex[1].with_traceback(ex[2])\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 265, in __init__\r\n    self.result = func()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 300, in \u003clambda\u003e\r\n    outcome = _CallOutcome(lambda: self.oldcall(hook, hook_impls, kwargs))\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 334, in \u003clambda\u003e\r\n    _MultiCall(methods, kwargs, hook.spec_opts).execute()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 614, in execute\r\n    res = hook_impl.function(*args)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\plugins\\hover.py\", line 10, in pyls_hover\r\n    definitions = document.jedi_script(position).goto_definitions()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\api\\__init__.py\", line 203, in goto_definitions\r\n    definitions = helpers.evaluate_goto_definition(self._evaluator, context, leaf)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\api\\helpers.py\", line 198, in evaluate_goto_definition\r\n    return evaluator.goto_definitions(context, leaf)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 452, in goto_definitions\r\n    return self.eval_statement(context, def_, name)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 135, in eval_statement\r\n    return self._eval_stmt(context, stmt, seek_name)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 151, in _eval_stmt\r\n    types = self.eval_element(context, rhs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 252, in eval_element\r\n    return self._eval_element_if_evaluated(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 264, in _eval_element_if_evaluated\r\n    return self._eval_element_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 268, in _eval_element_cached\r\n    return self._eval_element_not_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 289, in _eval_element_not_cached\r\n    types = self.eval_atom(context, first_child)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 347, in eval_atom\r\n    search_global=True\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\_compatibility.py\", line 213, in \u003clambda\u003e\r\n    return lambda *args, **kwargs: self.func(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 52, in py__getattribute__\r\n    self, name_or_str, name_context, position, search_global, is_goto)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 130, in find_types\r\n    return f.find(filters, attribute_lookup=not search_global)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 64, in find\r\n    types = self._names_to_types(names, attribute_lookup)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in _names_to_types\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in unite\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in \u003cgenexpr\u003e\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in \u003cgenexpr\u003e\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\filters.py\", line 117, in infer\r\n    return self.get_param().infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\param.py\", line 224, in infer\r\n    return self._lazy_context.infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\instance.py\", line 384, in infer\r\n    return self._param.infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 51, in infer\r\n    return unite(p.infer() for p in self._executed_params)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in unite\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in \u003cgenexpr\u003e\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 51, in \u003cgenexpr\u003e\r\n    return unite(p.infer() for p in self._executed_params)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\param.py\", line 224, in infer\r\n    return self._lazy_context.infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 120, in infer\r\n    return self._context.eval_node(self.data)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 37, in eval_node\r\n    return self.evaluator.eval_element(self, node)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 252, in eval_element\r\n    return self._eval_element_if_evaluated(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 264, in _eval_element_if_evaluated\r\n    return self._eval_element_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 268, in _eval_element_cached\r\n    return self._eval_element_not_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 276, in _eval_element_not_cached\r\n    types = self.eval_atom(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 347, in eval_atom\r\n    search_global=True\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\_compatibility.py\", line 213, in \u003clambda\u003e\r\n    return lambda *args, **kwargs: self.func(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 52, in py__getattribute__\r\n    self, name_or_str, name_context, position, search_global, is_goto)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 130, in find_types\r\n    return f.find(filters, attribute_lookup=not search_global)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 64, in find\r\n    types = self._names_to_types(names, attribute_lookup)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in _names_to_types\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in unite\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in \u003cgenexpr\u003e\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in \u003cgenexpr\u003e\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\filters.py\", line 101, in infer\r\n    return self.get_param().infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\filters.py\", line 104, in get_param\r\n    params = self.parent_context.get_params()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\representation.py\", line 407, in get_params\r\n    return search_params(self.evaluator, self.parent_context, self.tree_node)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 78, in search_params\r\n    funcdef\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 196, in wrapper\r\n    return list(func(*args, **kwargs))\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 114, in _search_function_executions\r\n    evaluator, [module_context], func_string_name):\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\imports.py\", line 530, in get_modules_containing_name\r\n    for file_name in os.listdir(d):\r\nOSError: [WinError 123] Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch: 'C:\\\\C:\\\\Apps\\\\Sublime\\\\Data\\\\Packages\\\\LSP'\r\n2017-08-18 18:14:10,134 UTC - ERROR - pyls.language_server - CAUGHT\r\nTraceback (most recent call last):\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\language_server.py\", line 67, in wrapped\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\python_ls.py\", line 137, in m_text_document__hover\r\n    return self.hover(textDocument['uri'], position)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\python_ls.py\", line 88, in hover\r\n    return self._hook(self._hooks.pyls_hover, doc_uri, position=position) or {'contents': ''}\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\python_ls.py\", line 57, in _hook\r\n    return hook(config=self.config, workspace=self.workspace, document=doc, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 745, in __call__\r\n    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 339, in _hookexec\r\n    return self._inner_hookexec(hook, methods, kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 302, in __call__\r\n    return outcome.get_result()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 279, in get_result\r\n    raise ex[1].with_traceback(ex[2])\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 265, in __init__\r\n    self.result = func()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 300, in \u003clambda\u003e\r\n    outcome = _CallOutcome(lambda: self.oldcall(hook, hook_impls, kwargs))\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 334, in \u003clambda\u003e\r\n    _MultiCall(methods, kwargs, hook.spec_opts).execute()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 614, in execute\r\n    res = hook_impl.function(*args)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\plugins\\hover.py\", line 10, in pyls_hover\r\n    definitions = document.jedi_script(position).goto_definitions()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\api\\__init__.py\", line 203, in goto_definitions\r\n    definitions = helpers.evaluate_goto_definition(self._evaluator, context, leaf)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\api\\helpers.py\", line 198, in evaluate_goto_definition\r\n    return evaluator.goto_definitions(context, leaf)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 462, in goto_definitions\r\n    return helpers.evaluate_call_of_leaf(context, name)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\helpers.py\", line 53, in evaluate_call_of_leaf\r\n    return context.eval_node(leaf)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 37, in eval_node\r\n    return self.evaluator.eval_element(self, node)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 252, in eval_element\r\n    return self._eval_element_if_evaluated(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 264, in _eval_element_if_evaluated\r\n    return self._eval_element_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 268, in _eval_element_cached\r\n    return self._eval_element_not_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 276, in _eval_element_not_cached\r\n    types = self.eval_atom(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 347, in eval_atom\r\n    search_global=True\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\_compatibility.py\", line 213, in \u003clambda\u003e\r\n    return lambda *args, **kwargs: self.func(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 52, in py__getattribute__\r\n    self, name_or_str, name_context, position, search_global, is_goto)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 130, in find_types\r\n    return f.find(filters, attribute_lookup=not search_global)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 64, in find\r\n    types = self._names_to_types(names, attribute_lookup)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in _names_to_types\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in unite\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in \u003cgenexpr\u003e\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in \u003cgenexpr\u003e\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\filters.py\", line 117, in infer\r\n    return self.get_param().infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\param.py\", line 224, in infer\r\n    return self._lazy_context.infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\instance.py\", line 384, in infer\r\n    return self._param.infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 51, in infer\r\n    return unite(p.infer() for p in self._executed_params)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in unite\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in \u003cgenexpr\u003e\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 51, in \u003cgenexpr\u003e\r\n    return unite(p.infer() for p in self._executed_params)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\param.py\", line 224, in infer\r\n    return self._lazy_context.infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 120, in infer\r\n    return self._context.eval_node(self.data)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 37, in eval_node\r\n    return self.evaluator.eval_element(self, node)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 252, in eval_element\r\n    return self._eval_element_if_evaluated(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 264, in _eval_element_if_evaluated\r\n    return self._eval_element_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 268, in _eval_element_cached\r\n    return self._eval_element_not_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 276, in _eval_element_not_cached\r\n    types = self.eval_atom(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 347, in eval_atom\r\n    search_global=True\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\_compatibility.py\", line 213, in \u003clambda\u003e\r\n    return lambda *args, **kwargs: self.func(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 52, in py__getattribute__\r\n    self, name_or_str, name_context, position, search_global, is_goto)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 130, in find_types\r\n    return f.find(filters, attribute_lookup=not search_global)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 64, in find\r\n    types = self._names_to_types(names, attribute_lookup)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in _names_to_types\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in unite\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in \u003cgenexpr\u003e\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in \u003cgenexpr\u003e\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\filters.py\", line 101, in infer\r\n    return self.get_param().infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\filters.py\", line 104, in get_param\r\n    params = self.parent_context.get_params()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\representation.py\", line 407, in get_params\r\n    return search_params(self.evaluator, self.parent_context, self.tree_node)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 78, in search_params\r\n    funcdef\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 196, in wrapper\r\n    return list(func(*args, **kwargs))\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 114, in _search_function_executions\r\n    evaluator, [module_context], func_string_name):\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\imports.py\", line 530, in get_modules_containing_name\r\n    for file_name in os.listdir(d):\r\nOSError: [WinError 123] Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch: 'C:\\\\C:\\\\Apps\\\\Sublime\\\\Data\\\\Packages\\\\LSP'\r\n2017-08-18 18:14:10,136 UTC - ERROR - jsonrpc.manager - API Exception: {'type': 'OSError', 'args': (22, 'Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch'), 'message': \"[WinError 123] Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch: 'C:\\\\\\\\C:\\\\\\\\Apps\\\\\\\\Sublime\\\\\\\\Data\\\\\\\\Packages\\\\\\\\LSP'\"}\r\nTraceback (most recent call last):\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jsonrpc\\manager.py\", line 108, in _get_responses\r\n    result = method(*request.args, **request.kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\language_server.py\", line 67, in wrapped\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\python_ls.py\", line 137, in m_text_document__hover\r\n    return self.hover(textDocument['uri'], position)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\python_ls.py\", line 88, in hover\r\n    return self._hook(self._hooks.pyls_hover, doc_uri, position=position) or {'contents': ''}\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\python_ls.py\", line 57, in _hook\r\n    return hook(config=self.config, workspace=self.workspace, document=doc, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 745, in __call__\r\n    return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 339, in _hookexec\r\n    return self._inner_hookexec(hook, methods, kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 302, in __call__\r\n    return outcome.get_result()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 279, in get_result\r\n    raise ex[1].with_traceback(ex[2])\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 265, in __init__\r\n    self.result = func()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 300, in \u003clambda\u003e\r\n    outcome = _CallOutcome(lambda: self.oldcall(hook, hook_impls, kwargs))\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 334, in \u003clambda\u003e\r\n    _MultiCall(methods, kwargs, hook.spec_opts).execute()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pluggy.py\", line 614, in execute\r\n    res = hook_impl.function(*args)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\pyls\\plugins\\hover.py\", line 10, in pyls_hover\r\n    definitions = document.jedi_script(position).goto_definitions()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\api\\__init__.py\", line 203, in goto_definitions\r\n    definitions = helpers.evaluate_goto_definition(self._evaluator, context, leaf)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\api\\helpers.py\", line 198, in evaluate_goto_definition\r\n    return evaluator.goto_definitions(context, leaf)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 462, in goto_definitions\r\n    return helpers.evaluate_call_of_leaf(context, name)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\helpers.py\", line 53, in evaluate_call_of_leaf\r\n    return context.eval_node(leaf)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 37, in eval_node\r\n    return self.evaluator.eval_element(self, node)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 252, in eval_element\r\n    return self._eval_element_if_evaluated(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 264, in _eval_element_if_evaluated\r\n    return self._eval_element_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 268, in _eval_element_cached\r\n    return self._eval_element_not_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 276, in _eval_element_not_cached\r\n    types = self.eval_atom(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 347, in eval_atom\r\n    search_global=True\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\_compatibility.py\", line 213, in \u003clambda\u003e\r\n    return lambda *args, **kwargs: self.func(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 52, in py__getattribute__\r\n    self, name_or_str, name_context, position, search_global, is_goto)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 130, in find_types\r\n    return f.find(filters, attribute_lookup=not search_global)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 64, in find\r\n    types = self._names_to_types(names, attribute_lookup)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in _names_to_types\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in unite\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in \u003cgenexpr\u003e\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in \u003cgenexpr\u003e\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\filters.py\", line 117, in infer\r\n    return self.get_param().infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\param.py\", line 224, in infer\r\n    return self._lazy_context.infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\instance.py\", line 384, in infer\r\n    return self._param.infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 51, in infer\r\n    return unite(p.infer() for p in self._executed_params)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in unite\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in \u003cgenexpr\u003e\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 51, in \u003cgenexpr\u003e\r\n    return unite(p.infer() for p in self._executed_params)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\param.py\", line 224, in infer\r\n    return self._lazy_context.infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 120, in infer\r\n    return self._context.eval_node(self.data)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 37, in eval_node\r\n    return self.evaluator.eval_element(self, node)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 252, in eval_element\r\n    return self._eval_element_if_evaluated(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 264, in _eval_element_if_evaluated\r\n    return self._eval_element_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 268, in _eval_element_cached\r\n    return self._eval_element_not_cached(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 276, in _eval_element_not_cached\r\n    types = self.eval_atom(context, element)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 347, in eval_atom\r\n    search_global=True\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\_compatibility.py\", line 213, in \u003clambda\u003e\r\n    return lambda *args, **kwargs: self.func(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\context.py\", line 52, in py__getattribute__\r\n    self, name_or_str, name_context, position, search_global, is_goto)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\__init__.py\", line 130, in find_types\r\n    return f.find(filters, attribute_lookup=not search_global)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 64, in find\r\n    types = self._names_to_types(names, attribute_lookup)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in _names_to_types\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in unite\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 191, in \u003cgenexpr\u003e\r\n    return set(typ for types in iterable for typ in types)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\finder.py\", line 147, in \u003cgenexpr\u003e\r\n    types = unite(name.infer() for name in names)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\filters.py\", line 101, in infer\r\n    return self.get_param().infer()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\filters.py\", line 104, in get_param\r\n    params = self.parent_context.get_params()\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\representation.py\", line 407, in get_params\r\n    return search_params(self.evaluator, self.parent_context, self.tree_node)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\debug.py\", line 81, in wrapper\r\n    return func(*args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 78, in search_params\r\n    funcdef\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\cache.py\", line 41, in wrapper\r\n    rv = function(obj, *args, **kwargs)\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\common.py\", line 196, in wrapper\r\n    return list(func(*args, **kwargs))\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\dynamic.py\", line 114, in _search_function_executions\r\n    evaluator, [module_context], func_string_name):\r\n  File \"c:\\apps\\python36\\lib\\site-packages\\jedi\\evaluate\\imports.py\", line 530, in get_modules_containing_name\r\n    for file_name in os.listdir(d):\r\nOSError: [WinError 123] Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch: 'C:\\\\C:\\\\Apps\\\\Sublime\\\\Data\\\\Packages\\\\LSP'\r\n```\r\n---\r\n- Windows 10 x64 1703\r\n- python 3.6.2\r\n- pyls 0.4.1 installed using pip\r\n","author":{"url":"https://github.com/deathaxe","@type":"Person","name":"deathaxe"},"datePublished":"2017-08-18T16:25:25.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":8},"url":"https://github.com/94/python-language-server/issues/94"}

route-pattern/_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format)
route-controllervoltron_issues_fragments
route-actionissue_layout
fetch-noncev2:ce5d3a19-0964-4577-4c45-dd924af83e3c
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-id9358:53774:7C0412:A6CC3A:6A5CD777
html-safe-nonced4e2fbf105fc552aed78a9eb801111c291e5201328cd3fdc0c93b8f67eb079a4
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5MzU4OjUzNzc0OjdDMDQxMjpBNkNDM0E6NkE1Q0Q3NzciLCJ2aXNpdG9yX2lkIjoiMjk1MDM0MDYxOTQxMDM5NzA0NyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac12cc060cd85ac1892dfc580183e91775abfbec4359e36b04492dc2b512210223
hovercard-subject-tagissue:251295439
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/issues_fragments/issue_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/palantir/python-language-server/94/issue_layout
twitter:imagehttps://opengraph.githubassets.com/53ef92f09344dbd1149f226d030ad760c0e2b9a1d536634be9c9543ff4bc318c/palantir/python-language-server/issues/94
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/53ef92f09344dbd1149f226d030ad760c0e2b9a1d536634be9c9543ff4bc318c/palantir/python-language-server/issues/94
og:image:altI am evaluating the new LSP package for Sublime Text 3 together with python-language-server at the moment. Sublime Text freezes frequently with LSP connected to pyls, which is discussed in sublimel...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernamedeathaxe
hostnamegithub.com
expected-hostnamegithub.com
None5290d7e14309ad1e76106a9c4237bd1041517e83ea182c8ab756752cb0c6940b
turbo-cache-controlno-preview
go-importgithub.com/palantir/python-language-server git https://github.com/palantir/python-language-server.git
octolytics-dimension-user_id303157
octolytics-dimension-user_loginpalantir
octolytics-dimension-repository_id78797564
octolytics-dimension-repository_nwopalantir/python-language-server
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id78797564
octolytics-dimension-repository_network_root_nwopalantir/python-language-server
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release9c975978430e9ad293956f2bbdaf153b1bd84a99
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/palantir/python-language-server/issues/94#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpalantir%2Fpython-language-server%2Fissues%2F94
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpalantir%2Fpython-language-server%2Fissues%2F94
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=palantir%2Fpython-language-server
Reloadhttps://github.com/palantir/python-language-server/issues/94
Reloadhttps://github.com/palantir/python-language-server/issues/94
Reloadhttps://github.com/palantir/python-language-server/issues/94
Please reload this pagehttps://github.com/palantir/python-language-server/issues/94
palantir https://github.com/palantir
python-language-serverhttps://github.com/palantir/python-language-server
Notifications https://github.com/login?return_to=%2Fpalantir%2Fpython-language-server
Fork 290 https://github.com/login?return_to=%2Fpalantir%2Fpython-language-server
Star 2.7k https://github.com/login?return_to=%2Fpalantir%2Fpython-language-server
Code https://github.com/palantir/python-language-server
Issues 160 https://github.com/palantir/python-language-server/issues
Pull requests 27 https://github.com/palantir/python-language-server/pulls
Actions https://github.com/palantir/python-language-server/actions
Security and quality 0 https://github.com/palantir/python-language-server/security
Insights https://github.com/palantir/python-language-server/pulse
Code https://github.com/palantir/python-language-server
Issues https://github.com/palantir/python-language-server/issues
Pull requests https://github.com/palantir/python-language-server/pulls
Actions https://github.com/palantir/python-language-server/actions
Security and quality https://github.com/palantir/python-language-server/security
Insights https://github.com/palantir/python-language-server/pulse
pyls crashes after invalid path exception on Windowshttps://github.com/palantir/python-language-server/issues/94#top
https://github.com/deathaxe
deathaxehttps://github.com/deathaxe
on Aug 18, 2017https://github.com/palantir/python-language-server/issues/94#issue-251295439
LSP packagehttps://github.com/tomv564/LSP
sublimelsp/LSP#12https://github.com/sublimelsp/LSP/issues/12
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.