在将 vim-nox 从 8.0.0095-1 更新到 8.0.0134-1 和一些 python 包之后,youcompleteme 停止工作并在我启动 vim 时抛出错误。
YcmDebugInfo 的输出:
Printing YouCompleteMe debug information...
Error detected while processing function <SNR>39_DebugInfo[2]..<SNR>39_Pyeval:
line 4:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/usr/share/vim-youcompleteme/python/ycm/youcompleteme.py", line 550, in DebugInfo
'debug_info' )
File "/usr/share/vim-youcompleteme/python/ycm/client/base_request.py", line 81, in PostDataToHandler
timeout ) )
File "/usr/share/vim-youcompleteme/python/ycm/client/base_request.py", line 174, in JsonFromFuture
_ValidateResponseObject( response )
File "/usr/share/vim-youcompleteme/python/ycm/client/base_request.py", line 203, in _ValidateResponseObject
their_hmac = ToBytes( b64decode( response.headers[ _HMAC_HEADER ] ) )
File "/usr/lib/python3/dist-packages/requests/structures.py", line 54, in __getitem__
return self._store[key.lower()][1]
KeyError: 'x-ycm-hmac'
E858: Eval did not return a valid python object
看起来 ycmd 和 vim 对应的 youcompleteme 之间的通信不再正常工作了。debian 不稳定的 vim8 使用 python 3,而 ycmd 使用 python 2.7 启动。ycmd 和 youcompleteme 的软件包版本是匹配的并且最近没有更改(它使用相同的版本)。有人让你完成了 debian 不稳定的最新更新吗?