您尚未登录。

#1 2016-06-27 16:58:58

foodtooth
会员
注册时间: 2016-03-26
帖子: 26

在Vim用AUR里安装的YCM时候,会有HTTPError: 500 Server Error

Hi~

每次用dot请求补全的时候都会出现;Google Groups上问了也暂时没有回复

贴一下我之前发的信息,有需要额外的信息我再贴,请大家帮忙!

I use

System:    Host: myarcher Kernel: 4.6.2-1-ARCH x86_64 (64 bit) Desktop: Gnome 3.20.2 Distro: Arch Linux

And I installed ycm from aur package vim-youcompleteme-git.

Whenever I request a complete by using dot character, the error below occurs:

2016-06-15 18:37:58,735 - INFO - Received completion request
2016-06-15 18:37:58,737 - INFO - Starting new HTTP connection (1): 127.0.0.1
Traceback (most recent call last):
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/bottle/bottle.py", line 861, in _handle
    return route.call(**args)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/bottle/bottle.py", line 1734, in wrapper
    rv = callback(*a, **ka)
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/watchdog_plugin.py", line 106, in wrapper
    return callback( *args, **kwargs )
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/hmac_plugin.py", line 72, in wrapper
    body = callback( *args, **kwargs )
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/handlers.py", line 98, in GetCompletions
    .ComputeCandidates( request_data ) )
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/completers/completer.py", line 218, in ComputeCandidates
    candidates = self._GetCandidatesFromSubclass( request_data )
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/completers/completer.py", line 234, in _GetCandidatesFromSubclass
    raw_completions = self.ComputeCandidatesInner( request_data )
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/completers/python/jedi_completer.py", line 256, in ComputeCandidatesInner
    for completion in self._JediCompletions( request_data ) ]
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/completers/python/jedi_completer.py", line 261, in _JediCompletions
    request_data )[ 'completions' ]
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/completers/python/jedi_completer.py", line 199, in _GetResponse
    response.raise_for_status()
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/requests/requests/models.py", line 840, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
HTTPError: 500 Server Error: Internal Server Error for url: http://127.0.0.1:33205/completions

My shadowsocks is running as a daemon and use port 1080. But I have no idea whether it's related.

Any idea to fix it?

离线

#2 2016-06-27 17:36:00

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,444
个人网站

Re: 在Vim用AUR里安装的YCM时候,会有HTTPError: 500 Server Error

你去看看在 127.0.0.1:33205 提供服务的那个进程的日志呢。

离线

#3 2016-06-27 22:15:04

zsrkmyn
lazy...
注册时间: 2013-05-05
帖子: 331

Re: 在Vim用AUR里安装的YCM时候,会有HTTPError: 500 Server Error

在 .vimrc 里添上

let g:ycm_server_log_level = 'debug'

然后再来贴下报错信息。

离线

#4 2016-06-28 15:14:23

foodtooth
会员
注册时间: 2016-03-26
帖子: 26

Re: 在Vim用AUR里安装的YCM时候,会有HTTPError: 500 Server Error

依云 说:

你去看看在 127.0.0.1:33205 提供服务的那个进程的日志呢。

这次显示错在50773上,查看YcmDebugInfo如下:

-- Server has Clang support compiled in: True
-- Clang version: clang version 3.8.0 (tags/RELEASE_380/final)
-- JediHTTP running at 127.0.0.1:50773
--   python binary: /usr/bin/python2.7
--   stdout log: /tmp/ycm_temp/jedihttp_50773_stdout.log
--   stderr log: /tmp/ycm_temp/jedihttp_50773_stderr.log
-- Server running at: http://127.0.0.1:34707
-- Server process ID: 20943
-- Server logfiles:
--   /tmp/ycm_temp/server_34707_stdout.log
--   /tmp/ycm_temp/server_34707_stderr.log

下面是加了log=debug之后ycm server的log:

2016-06-28 14:56:18,423 - INFO - Received completion request
2016-06-28 14:56:18,423 - DEBUG - Using filetype completion: True
2016-06-28 14:56:18,424 - DEBUG - Making JediHTTP request: POST b'http://127.0.0.1:50773/completions' {u'content-type': u'application/json',
 u'x-jedihttp-hmac': 'Os0AgIUMtn6oBAaBvvqZRgRAhh1errQtNFRFOWvoZQ0='} b'{"source": <这里是我的代码,很长>, "line": 172, "source_path": <这里是我的path,很长>, "col": 45}'
2016-06-28 14:56:18,424 - INFO - Starting new HTTP connection (1): 127.0.0.1
2016-06-28 14:56:18,478 - DEBUG - "POST /completions HTTP/1.1" 500 31739
Traceback (most recent call last):
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/bottle/bottle.py", line 861, in _handle
    return route.call(**args)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/bottle/bottle.py", line 1734, in wrapper
    rv = callback(*a, **ka)
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/watchdog_plugin.py", line 106, in wrapper
    return callback( *args, **kwargs )
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/hmac_plugin.py", line 72, in wrapper
    body = callback( *args, **kwargs )
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/handlers.py", line 98, in GetCompletions
    .ComputeCandidates( request_data ) )
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/completers/completer.py", line 218, in ComputeCandidates
    candidates = self._GetCandidatesFromSubclass( request_data )
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/completers/completer.py", line 234, in _GetCandidatesFromSubclass
    raw_completions = self.ComputeCandidatesInner( request_data )
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/completers/python/jedi_completer.py", line 256, in ComputeCandidatesInner
    for completion in self._JediCompletions( request_data ) ]
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/completers/python/jedi_completer.py", line 261, in _JediCompletions
    request_data )[ 'completions' ]
  File "/usr/share/vim/vimfiles/third_party/ycmd/ycmd/../ycmd/completers/python/jedi_completer.py", line 199, in _GetResponse
    response.raise_for_status()
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/requests/requests/models.py", line 840, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
HTTPError: 500 Server Error: Internal Server Error for url: http://127.0.0.1:50773/completions
2016-06-28 14:56:20,734 - INFO - Received event notification
2016-06-28 14:56:20,734 - DEBUG - Event name: InsertLeave

错误所指向的JediHTTP running at 127.0.0.1:50773上的errlog:

Traceback (most recent call last):
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/bottle/bottle.py", line 862, in _handle
    return route.call(**args)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/bottle/bottle.py", line 1732, in wrapper
    rv = callback(*a, **ka)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/jedihttp/hmac_plugin.py", line 58, in wrapper
    body = callback( *args, **kwargs )
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/jedihttp/handlers.py", line 63, in completions
    } for completion in script.completions() ]
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/api/__init__.py", line 188, in completions
    completion_names = get_completions(user_stmt, b)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/api/__init__.py", line 174, in get_completions
    completion_names += self._simple_complete(path, dot, like)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/api/__init__.py", line 250, in _simple_complete
    scopes = list(self._prepare_goto(path, True))
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/api/__init__.py", line 294, in _prepare_goto
    scopes = self._evaluator.eval_element(eval_stmt)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 169, in eval_element
    return self._eval_atom(element)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 230, in _eval_atom
    return self.find_types(scope, atom, stmt.start_pos, search_global=True)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 120, in find_types
    return f.find(scopes, search_global)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 87, in find
    types = self._names_to_types(names, search_global)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 233, in _names_to_types
    new_types = _name_to_types(self._evaluator, name, self.scope)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 278, in _name_to_types
    types += _remove_statements(evaluator, typ, name)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 323, in _remove_statements
    types += evaluator.eval_statement(stmt, seek_name=name)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/recursion.py", line 23, in run
    result = func(evaluator, stmt, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 135, in eval_statement
    types = self.eval_element(stmt.get_rhs())
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 187, in eval_element
    types = self.eval_trailer(types, trailer)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 259, in eval_trailer
    new_types += self.execute(typ, node, trailer)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 299, in execute
    types = func(self, arguments)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/_compatibility.py", line 124, in <lambda>
    return lambda *args, **kwargs: self.func(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 560, in py__call__
    return FunctionExecution(evaluator, self, params).get_return_types()
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/recursion.py", line 100, in run
    result = func(execution, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 620, in get_return_types
    check = flow_analysis.break_check(self._evaluator, self, r)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/flow_analysis.py", line 48, in break_check
    return _break_check(evaluator, stmt, base_scope, element_scope)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/flow_analysis.py", line 65, in _break_check
    reachable = _check_if(evaluator, node)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/flow_analysis.py", line 79, in _check_if
    types = evaluator.eval_element(node)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 169, in eval_element
    return self._eval_atom(element)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 230, in _eval_atom
    return self.find_types(scope, atom, stmt.start_pos, search_global=True)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 120, in find_types
    return f.find(scopes, search_global)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 86, in find
    names = self.filter_name(scopes)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 177, in filter_name
    names = self.names_dict_lookup(names_dict, position)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 159, in names_dict_lookup
    stmt, origin_scope)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/flow_analysis.py", line 48, in break_check
    return _break_check(evaluator, stmt, base_scope, element_scope)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/flow_analysis.py", line 59, in _break_check
    reachable = _check_if(evaluator, check_node)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/flow_analysis.py", line 79, in _check_if
    types = evaluator.eval_element(node)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 187, in eval_element
    types = self.eval_trailer(types, trailer)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 259, in eval_trailer
    new_types += self.execute(typ, node, trailer)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 289, in execute
    return stdlib.execute(self, obj, arguments)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/stdlib.py", line 42, in execute
    return _implemented[module_name][obj_name](evaluator, obj, params)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/stdlib.py", line 81, in wrapper
    lst = list(arguments.eval_argument_clinic(clinic_args))
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/param.py", line 135, in eval_argument_clinic
    for el in va_values))
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/param.py", line 135, in <genexpr>
    for el in va_values))
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 169, in eval_element
    return self._eval_atom(element)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 230, in _eval_atom
    return self.find_types(scope, atom, stmt.start_pos, search_global=True)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 120, in find_types
    return f.find(scopes, search_global)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 87, in find
    types = self._names_to_types(names, search_global)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 233, in _names_to_types
    new_types = _name_to_types(self._evaluator, name, self.scope)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 276, in _name_to_types
    types += _eval_param(evaluator, typ, scope)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 364, in _eval_param
    return res_new + param.eval(evaluator)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/param.py", line 174, in eval
    types += evaluator.eval_element(v)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 183, in eval_element
    types = self._eval_atom(element.children[0])
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 230, in _eval_atom
    return self.find_types(scope, atom, stmt.start_pos, search_global=True)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 120, in find_types
    return f.find(scopes, search_global)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 87, in find
    types = self._names_to_types(names, search_global)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 233, in _names_to_types
    new_types = _name_to_types(self._evaluator, name, self.scope)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 278, in _name_to_types
    types += _remove_statements(evaluator, typ, name)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 323, in _remove_statements
    types += evaluator.eval_statement(stmt, seek_name=name)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/recursion.py", line 23, in run
    result = func(evaluator, stmt, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 135, in eval_statement
    types = self.eval_element(stmt.get_rhs())
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 187, in eval_element
    types = self.eval_trailer(types, trailer)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 259, in eval_trailer
    new_types += self.execute(typ, node, trailer)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 299, in execute
    types = func(self, arguments)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 364, in py__call__
    return Function.py__call__(self, evaluator, params)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/_compatibility.py", line 122, in <lambda>
    return lambda *args, **kwargs: self.func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 560, in py__call__
    return FunctionExecution(evaluator, self, params).get_return_types()
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/recursion.py", line 100, in run
    result = func(execution, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 624, in get_return_types
    types += self._evaluator.eval_element(r.children[1])
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 187, in eval_element
    types = self.eval_trailer(types, trailer)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 259, in eval_trailer
    new_types += self.execute(typ, node, trailer)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 299, in execute
    types = func(self, arguments)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 364, in py__call__
    return Function.py__call__(self, evaluator, params)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/_compatibility.py", line 122, in <lambda>
    return lambda *args, **kwargs: self.func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 560, in py__call__
    return FunctionExecution(evaluator, self, params).get_return_types()
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/recursion.py", line 100, in run
    result = func(execution, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 624, in get_return_types
    types += self._evaluator.eval_element(r.children[1])
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 169, in eval_element
    return self._eval_atom(element)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 230, in _eval_atom
    return self.find_types(scope, atom, stmt.start_pos, search_global=True)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 120, in find_types
    return f.find(scopes, search_global)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 87, in find
    types = self._names_to_types(names, search_global)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 233, in _names_to_types
    new_types = _name_to_types(self._evaluator, name, self.scope)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 278, in _name_to_types
    types += _remove_statements(evaluator, typ, name)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 323, in _remove_statements
    types += evaluator.eval_statement(stmt, seek_name=name)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/recursion.py", line 23, in run
    result = func(evaluator, stmt, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 135, in eval_statement
    types = self.eval_element(stmt.get_rhs())
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 187, in eval_element
    types = self.eval_trailer(types, trailer)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 259, in eval_trailer
    new_types += self.execute(typ, node, trailer)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 299, in execute
    types = func(self, arguments)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 364, in py__call__
    return Function.py__call__(self, evaluator, params)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/_compatibility.py", line 122, in <lambda>
    return lambda *args, **kwargs: self.func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 560, in py__call__
    return FunctionExecution(evaluator, self, params).get_return_types()
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/recursion.py", line 100, in run
    result = func(execution, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 624, in get_return_types
    types += self._evaluator.eval_element(r.children[1])
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 169, in eval_element
    return self._eval_atom(element)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 230, in _eval_atom
    return self.find_types(scope, atom, stmt.start_pos, search_global=True)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 120, in find_types
    return f.find(scopes, search_global)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 87, in find
    types = self._names_to_types(names, search_global)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 233, in _names_to_types
    new_types = _name_to_types(self._evaluator, name, self.scope)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 278, in _name_to_types
    types += _remove_statements(evaluator, typ, name)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 323, in _remove_statements
    types += evaluator.eval_statement(stmt, seek_name=name)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/recursion.py", line 23, in run
    result = func(evaluator, stmt, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 135, in eval_statement
    types = self.eval_element(stmt.get_rhs())
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 187, in eval_element
    types = self.eval_trailer(types, trailer)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 259, in eval_trailer
    new_types += self.execute(typ, node, trailer)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 299, in execute
    types = func(self, arguments)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 364, in py__call__
    return Function.py__call__(self, evaluator, params)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/_compatibility.py", line 122, in <lambda>
    return lambda *args, **kwargs: self.func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 560, in py__call__
    return FunctionExecution(evaluator, self, params).get_return_types()
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/recursion.py", line 100, in run
    result = func(execution, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/representation.py", line 624, in get_return_types
    types += self._evaluator.eval_element(r.children[1])
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 187, in eval_element
    types = self.eval_trailer(types, trailer)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 267, in eval_trailer
    new_types += get(self, node)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/iterable.py", line 229, in get_index_types
    types += self.get_exact_index_types(index.obj)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/iterable.py", line 255, in get_exact_index_types
    return self._evaluator.eval_element(self._items()[mixed_index])
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 169, in eval_element
    return self._eval_atom(element)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 230, in _eval_atom
    return self.find_types(scope, atom, stmt.start_pos, search_global=True)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/__init__.py", line 120, in find_types
    return f.find(scopes, search_global)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/debug.py", line 52, in wrapper
    result = func(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 87, in find
    types = self._names_to_types(names, search_global)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 233, in _names_to_types
    new_types = _name_to_types(self._evaluator, name, self.scope)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/cache.py", line 41, in wrapper
    rv = function(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/finder.py", line 269, in _name_to_types
    for_types = iterable.get_iterator_types(for_types)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/iterable.py", line 418, in get_iterator_types
    result += it.iter_content()
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/iterable.py", line 575, in iter_content
    module = self.var_args.get_parent_until()
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/evaluate/param.py", line 56, in get_parent_until
    return element.get_parent_until(*args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/_compatibility.py", line 124, in <lambda>
    return lambda *args, **kwargs: self.func(obj, *args, **kwargs)
  File "/usr/share/vim/vimfiles/third_party/ycmd/third_party/JediHTTP/vendor/jedi/jedi/parser/tree.py", line 123, in get_parent_until
    while scope.parent is not None:
AttributeError: 'ListComprehension' object has no attribute 'parent'

全都是这一个抛出错误在重复。

最近编辑记录 foodtooth (2016-06-28 16:00:20)

离线

#5 2016-06-28 15:21:54

foodtooth
会员
注册时间: 2016-03-26
帖子: 26

Re: 在Vim用AUR里安装的YCM时候,会有HTTPError: 500 Server Error

zsrkmyn 说:

在 .vimrc 里添上

let g:ycm_server_log_level = 'debug'

然后再来贴下报错信息。

你好,添了之后的报错信息在#4楼

离线

#6 2016-06-28 22:45:48

zsrkmyn
lazy...
注册时间: 2013-05-05
帖子: 331

Re: 在Vim用AUR里安装的YCM时候,会有HTTPError: 500 Server Error

看起来是 jedi 的错,然而并不知道问题在哪……最讨厌这种 vendor 了 sad
所以推荐安装 archlinuxcn 源的 vim-youcompleteme-git

离线

#7 2016-06-29 14:33:55

foodtooth
会员
注册时间: 2016-03-26
帖子: 26

Re: 在Vim用AUR里安装的YCM时候,会有HTTPError: 500 Server Error

zsrkmyn 说:

看起来是 jedi 的错,然而并不知道问题在哪……最讨厌这种 vendor 了 sad
所以推荐安装 archlinuxcn 源的 vim-youcompleteme-git

换了archlinuxcn的,仍然是jedi报错:

AttributeError: 'MergedNamesDict' object has no attribute 'get'

这个错的循环……而且是刚开始可以正常使用,一会儿就不行了好怪啊 sad

离线

#8 2016-07-07 17:19:48

foodtooth
会员
注册时间: 2016-03-26
帖子: 26

Re: 在Vim用AUR里安装的YCM时候,会有HTTPError: 500 Server Error

原来这个在davidhalter/jedi上,一直都是opened bug

https://github.com/davidhalter/jedi/issues/592

离线

#9 2016-07-08 00:28:55

zsrkmyn
lazy...
注册时间: 2013-05-05
帖子: 331

Re: 在Vim用AUR里安装的YCM时候,会有HTTPError: 500 Server Error

foodtooth 说:

原来这个在davidhalter/jedi上,一直都是opened bug

https://github.com/davidhalter/jedi/issues/592

0.0 好吧,因为好久不写代码了,所以没有遇到过……

离线

页脚