Deoplete.nvim: Channel doesn't exist error

Created on 1 Aug 2018  路  25Comments  路  Source: Shougo/deoplete.nvim

Warning: I will close the issue without the minimal init.vim and the reproduction instructions.

Problems summary

Whenever I enter insert mode (or do anything in insert mode), go to a help manual, or open a file, I get an error. Not sure what's wrong. Note that I'm using this on a cluster, so I only have write access to my home directory.

Here's the error I get:

Error detected while processing function deoplete#send_event[2]..deoplete#util#rpcnotify[2]..<SNR>121_notify:
line    9:
E475: Invalid argument: Channel doesn't exist
Error detected while processing function <lambda>1[1]..<SNR>127_completion_begin[16]..deoplete#util#rpcnotify[2]..<SNR>121_notify:
line    9:
E475: Invalid argument: Channel doesn't exist

Expected

To be able to use deoplete without running into an error after every keystroke.

Environment Information

  • deoplete version (SHA1): I don't know, you should probably put instructions here on how to find the version. I installed it brand new today through vim-plug.

  • OS: Oracle Linux Server 7.5

  • neovim/Vim :version output: v0.3.1-1-g489d32f2b

  • :checkhealth or :CheckHealth result(neovim only):

 15 health#nvim#check
 16 ========================================================================
 17 ## Configuration
 18   - OK: no issues found
 19
 20 ## Performance
 21   - OK: Build type: RelWithDebInfo
 22
 23 ## Remote Plugins
 24   - OK: Up to date
 25
 26 ## terminal
 27   - INFO: key_backspace (kbs) terminfo entry: key_backspace=\177
 28   - INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
 29   - INFO: $SSH_TTY='/dev/pts/176'
 30

Provide a minimal init.vim/vimrc with less than 50 lines (Required!)

call plug#begin('~/.local/share/nvim/plugged')
        if has('nvim')
          Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
        else
          Plug 'Shougo/deoplete.nvim'
          Plug 'roxma/nvim-yarp'
          Plug 'roxma/vim-hug-neovim-rpc'
        endif
        let g:deoplete#enable_at_startup = 1
call plug#end()

How to reproduce the problem from neovim/Vim startup (Required!)

  1. launch neovim
  2. go into insert mode
  3. press any key

Generate a logfile if appropriate

  1. export NVIM_PYTHON_LOG_FILE=/tmp/log
  2. export NVIM_PYTHON_LOG_LEVEL=DEBUG
  3. nvim -u minimal.vimrc
  4. some works
  5. cat /tmp/log_{PID}

Screenshot (if possible)

image

Upload the log file

Log File

2018-08-01 16:20:11,131 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 1, b'vim_get_api_info', ()]
2018-08-01 16:20:11,131 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x01\xb0vim_get_api_info\x90''
2018-08-01 16:20:11,132 [DEBUG @ base.py:run:142] 40392 - Entering event loop
2018-08-01 16:20:11,132 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,132 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [0, 1, b'poll', []]
2018-08-01 16:20:11,132 [DEBUG @ async_session.py:_on_request:91] 40392 - received request: b'poll', []
2018-08-01 16:20:11,133 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,133 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,134 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,180 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 1, None, [3, {b'error_types': {b'Exception': {b'id': 0}, b'Validation': {b'id': 1}}, b'types': {b'Window': {b'prefix': b'nvim_win_', b'id': 1}, b'Buffer': {b'prefix': b'nvim_buf_', b'id': 0}, b'Tabpage': {b'prefix': b'nvim_tabpage_', b'id': 2}}, b'ui_events': [{b'name': b'resize', b'since': 3, b'parameters': [[b'Integer', b'width'], [b'Integer', b'height']]}, {b'name': b'clear', b'since': 3, b'parameters': []}, {b'name': b'eol_clear', b'since': 3, b'parameters': []}, {b'name': b'cursor_goto', b'since': 3, b'parameters': [[b'Integer', b'row'], [b'Integer', b'col']]}, {b'name': b'mode_info_set', b'since': 3, b'parameters': [[b'Boolean', b'enabled'], [b'Array', b'cursor_styles']]}, {b'name': b'update_menu', b'since': 3, b'parameters': []}, {b'name': b'busy_start', b'since': 3, b'parameters': []}, {b'name': b'busy_stop', b'since': 3, b'parameters': []}, {b'name': b'mouse_on', b'since': 3, b'parameters': []}, {b'name': b'mouse_off', b'since': 3, b'parameters': []}, {b'name': b'mode_change', b'since': 3, b'parameters': [[b'String', b'mode'], [b'Integer', b'mode_idx']]}, {b'name': b'set_scroll_region', b'since': 3, b'parameters': [[b'Integer', b'top'], [b'Integer', b'bot'], [b'Integer', b'left'], [b'Integer', b'right']]}, {b'name': b'scroll', b'since': 3, b'parameters': [[b'Integer', b'count']]}, {b'name': b'highlight_set', b'since': 3, b'parameters': [[b'Dictionary', b'attrs']]}, {b'name': b'put', b'since': 3, b'parameters': [[b'String', b'str']]}, {b'name': b'bell', b'since': 3, b'parameters': []}, {b'name': b'visual_bell', b'since': 3, b'parameters': []}, {b'name': b'flush', b'since': 3, b'parameters': []}, {b'name': b'update_fg', b'since': 3, b'parameters': [[b'Integer', b'fg']]}, {b'name': b'update_bg', b'since': 3, b'parameters': [[b'Integer', b'bg']]}, {b'name': b'update_sp', b'since': 3, b'parameters': [[b'Integer', b'sp']]}, {b'name': b'default_colors_set', b'since': 4, b'parameters': [[b'Integer', b'rgb_fg'], [b'Integer', b'rgb_bg'], [b'Integer', b'rgb_sp'], [b'Integer', b'cterm_fg'], [b'Integer', b'cterm_bg']]}, {b'name': b'suspend', b'since': 3, b'parameters': []}, {b'name': b'set_title', b'since': 3, b'parameters': [[b'String', b'title']]}, {b'name': b'set_icon', b'since': 3, b'parameters': [[b'String', b'icon']]}, {b'name': b'option_set', b'since': 4, b'parameters': [[b'String', b'name'], [b'Object', b'value']]}, {b'name': b'popupmenu_show', b'since': 3, b'parameters': [[b'Array', b'items'], [b'Integer', b'selected'], [b'Integer', b'row'], [b'Integer', b'col']]}, {b'name': b'popupmenu_hide', b'since': 3, b'parameters': []}, {b'name': b'popupmenu_select', b'since': 3, b'parameters': [[b'Integer', b'selected']]}, {b'name': b'tabline_update', b'since': 3, b'parameters': [[b'Tabpage', b'current'], [b'Array', b'tabs']]}, {b'name': b'cmdline_show', b'since': 3, b'parameters': [[b'Array', b'content'], [b'Integer', b'pos'], [b'String', b'firstc'], [b'String', b'prompt'], [b'Integer', b'indent'], [b'Integer', b'level']]}, {b'name': b'cmdline_pos', b'since': 3, b'parameters': [[b'Integer', b'pos'], [b'Integer', b'level']]}, {b'name': b'cmdline_special_char', b'since': 3, b'parameters': [[b'String', b'c'], [b'Boolean', b'shift'], [b'Integer', b'level']]}, {b'name': b'cmdline_hide', b'since': 3, b'parameters': [[b'Integer', b'level']]}, {b'name': b'cmdline_block_show', b'since': 3, b'parameters': [[b'Array', b'lines']]}, {b'name': b'cmdline_block_append', b'since': 3, b'parameters': [[b'Array', b'lines']]}, {b'name': b'cmdline_block_hide', b'since': 3, b'parameters': []}, {b'name': b'wildmenu_show', b'since': 3, b'parameters': [[b'Array', b'items']]}, {b'name': b'wildmenu_select', b'since': 3, b'parameters': [[b'Integer', b'selected']]}, {b'name': b'wildmenu_hide', b'since': 3, b'parameters': []}], b'functions': [{b'method': True, b'return_type': b'Integer', b'name': b'nvim_buf_line_count', b'parameters': [[b'Buffer', b'buffer']], b'since': 1}, {b'method': False, b'name': b'buffer_get_line', b'since': 0, b'return_type': b'String', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'index']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'Boolean', b'name': b'nvim_buf_attach', b'parameters': [[b'Buffer', b'buffer'], [b'Boolean', b'send_buffer'], [b'Dictionary', b'opts']], b'since': 4}, {b'method': True, b'return_type': b'Boolean', b'name': b'nvim_buf_detach', b'parameters': [[b'Buffer', b'buffer']], b'since': 4}, {b'method': False, b'name': b'buffer_set_line', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'index'], [b'String', b'line']], b'deprecated_since': 1}, {b'method': False, b'name': b'buffer_del_line', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'index']], b'deprecated_since': 1}, {b'method': False, b'name': b'buffer_get_line_slice', b'since': 0, b'return_type': b'ArrayOf(String)', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'start'], [b'Integer', b'end'], [b'Boolean', b'include_start'], [b'Boolean', b'include_end']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'ArrayOf(String)', b'name': b'nvim_buf_get_lines', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'start'], [b'Integer', b'end'], [b'Boolean', b'strict_indexing']], b'since': 1}, {b'method': False, b'name': b'buffer_set_line_slice', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'start'], [b'Integer', b'end'], [b'Boolean', b'include_start'], [b'Boolean', b'include_end'], [b'ArrayOf(String)', b'replacement']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_buf_set_lines', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'start'], [b'Integer', b'end'], [b'Boolean', b'strict_indexing'], [b'ArrayOf(String)', b'replacement']], b'since': 1}, {b'method': True, b'return_type': b'Object', b'name': b'nvim_buf_get_var', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'Integer', b'name': b'nvim_buf_get_changedtick', b'parameters': [[b'Buffer', b'buffer']], b'since': 2}, {b'method': True, b'return_type': b'ArrayOf(Dictionary)', b'name': b'nvim_buf_get_keymap', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'mode']], b'since': 3}, {b'method': True, b'return_type': b'Dictionary', b'name': b'nvim_buf_get_commands', b'parameters': [[b'Buffer', b'buffer'], [b'Dictionary', b'opts']], b'since': 4}, {b'method': True, b'return_type': b'void', b'name': b'nvim_buf_set_var', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_buf_del_var', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'since': 1}, {b'method': False, b'name': b'buffer_set_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': False, b'name': b'buffer_del_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'Object', b'name': b'nvim_buf_get_option', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_buf_set_option', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': True, b'name': b'nvim_buf_get_number', b'since': 1, b'return_type': b'Integer', b'parameters': [[b'Buffer', b'buffer']], b'deprecated_since': 2}, {b'method': True, b'return_type': b'String', b'name': b'nvim_buf_get_name', b'parameters': [[b'Buffer', b'buffer']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_buf_set_name', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'Boolean', b'name': b'nvim_buf_is_valid', b'parameters': [[b'Buffer', b'buffer']], b'since': 1}, {b'method': False, b'name': b'buffer_insert', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'lnum'], [b'ArrayOf(String)', b'lines']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'ArrayOf(Integer, 2)', b'name': b'nvim_buf_get_mark', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'Integer', b'name': b'nvim_buf_add_highlight', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'src_id'], [b'String', b'hl_group'], [b'Integer', b'line'], [b'Integer', b'col_start'], [b'Integer', b'col_end']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_buf_clear_highlight', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'src_id'], [b'Integer', b'line_start'], [b'Integer', b'line_end']], b'since': 1}, {b'method': True, b'return_type': b'ArrayOf(Window)', b'name': b'nvim_tabpage_list_wins', b'parameters': [[b'Tabpage', b'tabpage']], b'since': 1}, {b'method': True, b'return_type': b'Object', b'name': b'nvim_tabpage_get_var', b'parameters': [[b'Tabpage', b'tabpage'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_tabpage_set_var', b'parameters': [[b'Tabpage', b'tabpage'], [b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_tabpage_del_var', b'parameters': [[b'Tabpage', b'tabpage'], [b'String', b'name']], b'since': 1}, {b'method': False, b'name': b'tabpage_set_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Tabpage', b'tabpage'], [b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': False, b'name': b'tabpage_del_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Tabpage', b'tabpage'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'Window', b'name': b'nvim_tabpage_get_win', b'parameters': [[b'Tabpage', b'tabpage']], b'since': 1}, {b'method': True, b'return_type': b'Integer', b'name': b'nvim_tabpage_get_number', b'parameters': [[b'Tabpage', b'tabpage']], b'since': 1}, {b'method': True, b'return_type': b'Boolean', b'name': b'nvim_tabpage_is_valid', b'parameters': [[b'Tabpage', b'tabpage']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_ui_attach', b'parameters': [[b'Integer', b'width'], [b'Integer', b'height'], [b'Dictionary', b'options']], b'since': 1}, {b'method': False, b'name': b'ui_attach', b'since': 0, b'return_type': b'void', b'parameters': [[b'Integer', b'width'], [b'Integer', b'height'], [b'Boolean', b'enable_rgb']], b'deprecated_since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_ui_detach', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_ui_try_resize', b'parameters': [[b'Integer', b'width'], [b'Integer', b'height']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_ui_set_option', b'parameters': [[b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_command', b'parameters': [[b'String', b'command']], b'since': 1}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_get_hl_by_name', b'parameters': [[b'String', b'name'], [b'Boolean', b'rgb']], b'since': 3}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_get_hl_by_id', b'parameters': [[b'Integer', b'hl_id'], [b'Boolean', b'rgb']], b'since': 3}, {b'method': False, b'return_type': b'void', b'name': b'nvim_feedkeys', b'parameters': [[b'String', b'keys'], [b'String', b'mode'], [b'Boolean', b'escape_csi']], b'since': 1}, {b'method': False, b'return_type': b'Integer', b'name': b'nvim_input', b'parameters': [[b'String', b'keys']], b'since': 1}, {b'method': False, b'return_type': b'String', b'name': b'nvim_replace_termcodes', b'parameters': [[b'String', b'str'], [b'Boolean', b'from_part'], [b'Boolean', b'do_lt'], [b'Boolean', b'special']], b'since': 1}, {b'method': False, b'return_type': b'String', b'name': b'nvim_command_output', b'parameters': [[b'String', b'command']], b'since': 1}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_eval', b'parameters': [[b'String', b'expr']], b'since': 1}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_execute_lua', b'parameters': [[b'String', b'code'], [b'Array', b'args']], b'since': 3}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_call_function', b'parameters': [[b'String', b'fn'], [b'Array', b'args']], b'since': 1}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_call_dict_function', b'parameters': [[b'Object', b'dict'], [b'String', b'fn'], [b'Array', b'args']], b'since': 4}, {b'method': False, b'return_type': b'Integer', b'name': b'nvim_strwidth', b'parameters': [[b'String', b'text']], b'since': 1}, {b'method': False, b'return_type': b'ArrayOf(String)', b'name': b'nvim_list_runtime_paths', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_current_dir', b'parameters': [[b'String', b'dir']], b'since': 1}, {b'method': False, b'return_type': b'String', b'name': b'nvim_get_current_line', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_current_line', b'parameters': [[b'String', b'line']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_del_current_line', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_get_var', b'parameters': [[b'String', b'name']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_var', b'parameters': [[b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_del_var', b'parameters': [[b'String', b'name']], b'since': 1}, {b'method': False, b'name': b'vim_set_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_del_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'name']], b'deprecated_since': 1}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_get_vvar', b'parameters': [[b'String', b'name']], b'since': 1}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_get_option', b'parameters': [[b'String', b'name']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_option', b'parameters': [[b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_out_write', b'parameters': [[b'String', b'str']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_err_write', b'parameters': [[b'String', b'str']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_err_writeln', b'parameters': [[b'String', b'str']], b'since': 1}, {b'method': False, b'return_type': b'ArrayOf(Buffer)', b'name': b'nvim_list_bufs', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'Buffer', b'name': b'nvim_get_current_buf', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_current_buf', b'parameters': [[b'Buffer', b'buffer']], b'since': 1}, {b'method': False, b'return_type': b'ArrayOf(Window)', b'name': b'nvim_list_wins', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'Window', b'name': b'nvim_get_current_win', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_current_win', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': False, b'return_type': b'ArrayOf(Tabpage)', b'name': b'nvim_list_tabpages', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'Tabpage', b'name': b'nvim_get_current_tabpage', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_current_tabpage', b'parameters': [[b'Tabpage', b'tabpage']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_subscribe', b'parameters': [[b'String', b'event']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_unsubscribe', b'parameters': [[b'String', b'event']], b'since': 1}, {b'method': False, b'return_type': b'Integer', b'name': b'nvim_get_color_by_name', b'parameters': [[b'String', b'name']], b'since': 1}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_get_color_map', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_get_mode', b'parameters': [], b'since': 2}, {b'method': False, b'return_type': b'ArrayOf(Dictionary)', b'name': b'nvim_get_keymap', b'parameters': [[b'String', b'mode']], b'since': 3}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_get_commands', b'parameters': [[b'Dictionary', b'opts']], b'since': 4}, {b'method': False, b'return_type': b'Array', b'name': b'nvim_get_api_info', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_client_info', b'parameters': [[b'String', b'name'], [b'Dictionary', b'version'], [b'String', b'type'], [b'Dictionary', b'methods'], [b'Dictionary', b'attributes']], b'since': 4}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_get_chan_info', b'parameters': [[b'Integer', b'chan']], b'since': 4}, {b'method': False, b'return_type': b'Array', b'name': b'nvim_list_chans', b'parameters': [], b'since': 4}, {b'method': False, b'return_type': b'Array', b'name': b'nvim_call_atomic', b'parameters': [[b'Array', b'calls']], b'since': 1}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_parse_expression', b'parameters': [[b'String', b'expr'], [b'String', b'flags'], [b'Boolean', b'highlight']], b'since': 4}, {b'method': False, b'return_type': b'Array', b'name': b'nvim_list_uis', b'parameters': [], b'since': 4}, {b'method': False, b'return_type': b'Array', b'name': b'nvim_get_proc_children', b'parameters': [[b'Integer', b'pid']], b'since': 4}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_get_proc', b'parameters': [[b'Integer', b'pid']], b'since': 4}, {b'method': True, b'return_type': b'Buffer', b'name': b'nvim_win_get_buf', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'ArrayOf(Integer, 2)', b'name': b'nvim_win_get_cursor', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_win_set_cursor', b'parameters': [[b'Window', b'window'], [b'ArrayOf(Integer, 2)', b'pos']], b'since': 1}, {b'method': True, b'return_type': b'Integer', b'name': b'nvim_win_get_height', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_win_set_height', b'parameters': [[b'Window', b'window'], [b'Integer', b'height']], b'since': 1}, {b'method': True, b'return_type': b'Integer', b'name': b'nvim_win_get_width', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_win_set_width', b'parameters': [[b'Window', b'window'], [b'Integer', b'width']], b'since': 1}, {b'method': True, b'return_type': b'Object', b'name': b'nvim_win_get_var', b'parameters': [[b'Window', b'window'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_win_set_var', b'parameters': [[b'Window', b'window'], [b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_win_del_var', b'parameters': [[b'Window', b'window'], [b'String', b'name']], b'since': 1}, {b'method': False, b'name': b'window_set_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Window', b'window'], [b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': False, b'name': b'window_del_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Window', b'window'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'Object', b'name': b'nvim_win_get_option', b'parameters': [[b'Window', b'window'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_win_set_option', b'parameters': [[b'Window', b'window'], [b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': True, b'return_type': b'ArrayOf(Integer, 2)', b'name': b'nvim_win_get_position', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'Tabpage', b'name': b'nvim_win_get_tabpage', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'Integer', b'name': b'nvim_win_get_number', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'Boolean', b'name': b'nvim_win_is_valid', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'name': b'buffer_line_count', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'Buffer', b'buffer']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_get_lines', b'since': 0, b'return_type': b'ArrayOf(String)', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'start'], [b'Integer', b'end'], [b'Boolean', b'strict_indexing']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_set_lines', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'start'], [b'Integer', b'end'], [b'Boolean', b'strict_indexing'], [b'ArrayOf(String)', b'replacement']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_get_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_get_option', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_set_option', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_get_number', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'Buffer', b'buffer']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_get_name', b'since': 0, b'return_type': b'String', b'parameters': [[b'Buffer', b'buffer']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_set_name', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_is_valid', b'since': 0, b'return_type': b'Boolean', b'parameters': [[b'Buffer', b'buffer']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_get_mark', b'since': 0, b'return_type': b'ArrayOf(Integer, 2)', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_add_highlight', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'src_id'], [b'String', b'hl_group'], [b'Integer', b'line'], [b'Integer', b'col_start'], [b'Integer', b'col_end']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_clear_highlight', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'src_id'], [b'Integer', b'line_start'], [b'Integer', b'line_end']], b'deprecated_since': 1}, {b'method': True, b'name': b'tabpage_get_windows', b'since': 0, b'return_type': b'ArrayOf(Window)', b'parameters': [[b'Tabpage', b'tabpage']], b'deprecated_since': 1}, {b'method': True, b'name': b'tabpage_get_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Tabpage', b'tabpage'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'tabpage_get_window', b'since': 0, b'return_type': b'Window', b'parameters': [[b'Tabpage', b'tabpage']], b'deprecated_since': 1}, {b'method': True, b'name': b'tabpage_is_valid', b'since': 0, b'return_type': b'Boolean', b'parameters': [[b'Tabpage', b'tabpage']], b'deprecated_since': 1}, {b'method': False, b'name': b'ui_detach', b'since': 0, b'return_type': b'void', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'ui_try_resize', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Integer', b'width'], [b'Integer', b'height']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_command', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'command']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_feedkeys', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'keys'], [b'String', b'mode'], [b'Boolean', b'escape_csi']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_input', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'String', b'keys']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_replace_termcodes', b'since': 0, b'return_type': b'String', b'parameters': [[b'String', b'str'], [b'Boolean', b'from_part'], [b'Boolean', b'do_lt'], [b'Boolean', b'special']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_command_output', b'since': 0, b'return_type': b'String', b'parameters': [[b'String', b'command']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_eval', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'expr']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_call_function', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'fn'], [b'Array', b'args']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_strwidth', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'String', b'text']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_list_runtime_paths', b'since': 0, b'return_type': b'ArrayOf(String)', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_change_directory', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'dir']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_current_line', b'since': 0, b'return_type': b'String', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_set_current_line', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'line']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_del_current_line', b'since': 0, b'return_type': b'void', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'name']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_vvar', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'name']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_option', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'name']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_set_option', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_out_write', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'str']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_err_write', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'str']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_report_error', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'str']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_buffers', b'since': 0, b'return_type': b'ArrayOf(Buffer)', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_current_buffer', b'since': 0, b'return_type': b'Buffer', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_set_current_buffer', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_windows', b'since': 0, b'return_type': b'ArrayOf(Window)', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_current_window', b'since': 0, b'return_type': b'Window', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_set_current_window', b'since': 0, b'return_type': b'void', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_tabpages', b'since': 0, b'return_type': b'ArrayOf(Tabpage)', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_current_tabpage', b'since': 0, b'return_type': b'Tabpage', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_set_current_tabpage', b'since': 0, b'return_type': b'void', b'parameters': [[b'Tabpage', b'tabpage']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_subscribe', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'event']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_unsubscribe', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'event']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_name_to_color', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'String', b'name']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_color_map', b'since': 0, b'return_type': b'Dictionary', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_api_info', b'since': 0, b'return_type': b'Array', b'parameters': [], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_buffer', b'since': 0, b'return_type': b'Buffer', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_cursor', b'since': 0, b'return_type': b'ArrayOf(Integer, 2)', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_set_cursor', b'since': 0, b'return_type': b'void', b'parameters': [[b'Window', b'window'], [b'ArrayOf(Integer, 2)', b'pos']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_height', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_set_height', b'since': 0, b'return_type': b'void', b'parameters': [[b'Window', b'window'], [b'Integer', b'height']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_width', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_set_width', b'since': 0, b'return_type': b'void', b'parameters': [[b'Window', b'window'], [b'Integer', b'width']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Window', b'window'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_option', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Window', b'window'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_set_option', b'since': 0, b'return_type': b'void', b'parameters': [[b'Window', b'window'], [b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_position', b'since': 0, b'return_type': b'ArrayOf(Integer, 2)', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_tabpage', b'since': 0, b'return_type': b'Tabpage', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_is_valid', b'since': 0, b'return_type': b'Boolean', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}], b'version': {b'api_compatible': 0, b'patch': 1, b'minor': 3, b'major': 0, b'api_prerelease': False, b'api_level': 4}, b'ui_options': [b'rgb', b'ext_cmdline', b'ext_popupmenu', b'ext_tabline', b'ext_wildmenu']}]]
2018-08-01 16:20:11,183 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, [3, {b'error_types': {b'Exception': {b'id': 0}, b'Validation': {b'id': 1}}, b'types': {b'Window': {b'prefix': b'nvim_win_', b'id': 1}, b'Buffer': {b'prefix': b'nvim_buf_', b'id': 0}, b'Tabpage': {b'prefix': b'nvim_tabpage_', b'id': 2}}, b'ui_events': [{b'name': b'resize', b'since': 3, b'parameters': [[b'Integer', b'width'], [b'Integer', b'height']]}, {b'name': b'clear', b'since': 3, b'parameters': []}, {b'name': b'eol_clear', b'since': 3, b'parameters': []}, {b'name': b'cursor_goto', b'since': 3, b'parameters': [[b'Integer', b'row'], [b'Integer', b'col']]}, {b'name': b'mode_info_set', b'since': 3, b'parameters': [[b'Boolean', b'enabled'], [b'Array', b'cursor_styles']]}, {b'name': b'update_menu', b'since': 3, b'parameters': []}, {b'name': b'busy_start', b'since': 3, b'parameters': []}, {b'name': b'busy_stop', b'since': 3, b'parameters': []}, {b'name': b'mouse_on', b'since': 3, b'parameters': []}, {b'name': b'mouse_off', b'since': 3, b'parameters': []}, {b'name': b'mode_change', b'since': 3, b'parameters': [[b'String', b'mode'], [b'Integer', b'mode_idx']]}, {b'name': b'set_scroll_region', b'since': 3, b'parameters': [[b'Integer', b'top'], [b'Integer', b'bot'], [b'Integer', b'left'], [b'Integer', b'right']]}, {b'name': b'scroll', b'since': 3, b'parameters': [[b'Integer', b'count']]}, {b'name': b'highlight_set', b'since': 3, b'parameters': [[b'Dictionary', b'attrs']]}, {b'name': b'put', b'since': 3, b'parameters': [[b'String', b'str']]}, {b'name': b'bell', b'since': 3, b'parameters': []}, {b'name': b'visual_bell', b'since': 3, b'parameters': []}, {b'name': b'flush', b'since': 3, b'parameters': []}, {b'name': b'update_fg', b'since': 3, b'parameters': [[b'Integer', b'fg']]}, {b'name': b'update_bg', b'since': 3, b'parameters': [[b'Integer', b'bg']]}, {b'name': b'update_sp', b'since': 3, b'parameters': [[b'Integer', b'sp']]}, {b'name': b'default_colors_set', b'since': 4, b'parameters': [[b'Integer', b'rgb_fg'], [b'Integer', b'rgb_bg'], [b'Integer', b'rgb_sp'], [b'Integer', b'cterm_fg'], [b'Integer', b'cterm_bg']]}, {b'name': b'suspend', b'since': 3, b'parameters': []}, {b'name': b'set_title', b'since': 3, b'parameters': [[b'String', b'title']]}, {b'name': b'set_icon', b'since': 3, b'parameters': [[b'String', b'icon']]}, {b'name': b'option_set', b'since': 4, b'parameters': [[b'String', b'name'], [b'Object', b'value']]}, {b'name': b'popupmenu_show', b'since': 3, b'parameters': [[b'Array', b'items'], [b'Integer', b'selected'], [b'Integer', b'row'], [b'Integer', b'col']]}, {b'name': b'popupmenu_hide', b'since': 3, b'parameters': []}, {b'name': b'popupmenu_select', b'since': 3, b'parameters': [[b'Integer', b'selected']]}, {b'name': b'tabline_update', b'since': 3, b'parameters': [[b'Tabpage', b'current'], [b'Array', b'tabs']]}, {b'name': b'cmdline_show', b'since': 3, b'parameters': [[b'Array', b'content'], [b'Integer', b'pos'], [b'String', b'firstc'], [b'String', b'prompt'], [b'Integer', b'indent'], [b'Integer', b'level']]}, {b'name': b'cmdline_pos', b'since': 3, b'parameters': [[b'Integer', b'pos'], [b'Integer', b'level']]}, {b'name': b'cmdline_special_char', b'since': 3, b'parameters': [[b'String', b'c'], [b'Boolean', b'shift'], [b'Integer', b'level']]}, {b'name': b'cmdline_hide', b'since': 3, b'parameters': [[b'Integer', b'level']]}, {b'name': b'cmdline_block_show', b'since': 3, b'parameters': [[b'Array', b'lines']]}, {b'name': b'cmdline_block_append', b'since': 3, b'parameters': [[b'Array', b'lines']]}, {b'name': b'cmdline_block_hide', b'since': 3, b'parameters': []}, {b'name': b'wildmenu_show', b'since': 3, b'parameters': [[b'Array', b'items']]}, {b'name': b'wildmenu_select', b'since': 3, b'parameters': [[b'Integer', b'selected']]}, {b'name': b'wildmenu_hide', b'since': 3, b'parameters': []}], b'functions': [{b'method': True, b'return_type': b'Integer', b'name': b'nvim_buf_line_count', b'parameters': [[b'Buffer', b'buffer']], b'since': 1}, {b'method': False, b'name': b'buffer_get_line', b'since': 0, b'return_type': b'String', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'index']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'Boolean', b'name': b'nvim_buf_attach', b'parameters': [[b'Buffer', b'buffer'], [b'Boolean', b'send_buffer'], [b'Dictionary', b'opts']], b'since': 4}, {b'method': True, b'return_type': b'Boolean', b'name': b'nvim_buf_detach', b'parameters': [[b'Buffer', b'buffer']], b'since': 4}, {b'method': False, b'name': b'buffer_set_line', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'index'], [b'String', b'line']], b'deprecated_since': 1}, {b'method': False, b'name': b'buffer_del_line', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'index']], b'deprecated_since': 1}, {b'method': False, b'name': b'buffer_get_line_slice', b'since': 0, b'return_type': b'ArrayOf(String)', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'start'], [b'Integer', b'end'], [b'Boolean', b'include_start'], [b'Boolean', b'include_end']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'ArrayOf(String)', b'name': b'nvim_buf_get_lines', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'start'], [b'Integer', b'end'], [b'Boolean', b'strict_indexing']], b'since': 1}, {b'method': False, b'name': b'buffer_set_line_slice', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'start'], [b'Integer', b'end'], [b'Boolean', b'include_start'], [b'Boolean', b'include_end'], [b'ArrayOf(String)', b'replacement']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_buf_set_lines', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'start'], [b'Integer', b'end'], [b'Boolean', b'strict_indexing'], [b'ArrayOf(String)', b'replacement']], b'since': 1}, {b'method': True, b'return_type': b'Object', b'name': b'nvim_buf_get_var', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'Integer', b'name': b'nvim_buf_get_changedtick', b'parameters': [[b'Buffer', b'buffer']], b'since': 2}, {b'method': True, b'return_type': b'ArrayOf(Dictionary)', b'name': b'nvim_buf_get_keymap', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'mode']], b'since': 3}, {b'method': True, b'return_type': b'Dictionary', b'name': b'nvim_buf_get_commands', b'parameters': [[b'Buffer', b'buffer'], [b'Dictionary', b'opts']], b'since': 4}, {b'method': True, b'return_type': b'void', b'name': b'nvim_buf_set_var', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_buf_del_var', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'since': 1}, {b'method': False, b'name': b'buffer_set_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': False, b'name': b'buffer_del_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'Object', b'name': b'nvim_buf_get_option', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_buf_set_option', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': True, b'name': b'nvim_buf_get_number', b'since': 1, b'return_type': b'Integer', b'parameters': [[b'Buffer', b'buffer']], b'deprecated_since': 2}, {b'method': True, b'return_type': b'String', b'name': b'nvim_buf_get_name', b'parameters': [[b'Buffer', b'buffer']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_buf_set_name', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'Boolean', b'name': b'nvim_buf_is_valid', b'parameters': [[b'Buffer', b'buffer']], b'since': 1}, {b'method': False, b'name': b'buffer_insert', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'lnum'], [b'ArrayOf(String)', b'lines']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'ArrayOf(Integer, 2)', b'name': b'nvim_buf_get_mark', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'Integer', b'name': b'nvim_buf_add_highlight', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'src_id'], [b'String', b'hl_group'], [b'Integer', b'line'], [b'Integer', b'col_start'], [b'Integer', b'col_end']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_buf_clear_highlight', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'src_id'], [b'Integer', b'line_start'], [b'Integer', b'line_end']], b'since': 1}, {b'method': True, b'return_type': b'ArrayOf(Window)', b'name': b'nvim_tabpage_list_wins', b'parameters': [[b'Tabpage', b'tabpage']], b'since': 1}, {b'method': True, b'return_type': b'Object', b'name': b'nvim_tabpage_get_var', b'parameters': [[b'Tabpage', b'tabpage'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_tabpage_set_var', b'parameters': [[b'Tabpage', b'tabpage'], [b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_tabpage_del_var', b'parameters': [[b'Tabpage', b'tabpage'], [b'String', b'name']], b'since': 1}, {b'method': False, b'name': b'tabpage_set_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Tabpage', b'tabpage'], [b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': False, b'name': b'tabpage_del_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Tabpage', b'tabpage'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'Window', b'name': b'nvim_tabpage_get_win', b'parameters': [[b'Tabpage', b'tabpage']], b'since': 1}, {b'method': True, b'return_type': b'Integer', b'name': b'nvim_tabpage_get_number', b'parameters': [[b'Tabpage', b'tabpage']], b'since': 1}, {b'method': True, b'return_type': b'Boolean', b'name': b'nvim_tabpage_is_valid', b'parameters': [[b'Tabpage', b'tabpage']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_ui_attach', b'parameters': [[b'Integer', b'width'], [b'Integer', b'height'], [b'Dictionary', b'options']], b'since': 1}, {b'method': False, b'name': b'ui_attach', b'since': 0, b'return_type': b'void', b'parameters': [[b'Integer', b'width'], [b'Integer', b'height'], [b'Boolean', b'enable_rgb']], b'deprecated_since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_ui_detach', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_ui_try_resize', b'parameters': [[b'Integer', b'width'], [b'Integer', b'height']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_ui_set_option', b'parameters': [[b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_command', b'parameters': [[b'String', b'command']], b'since': 1}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_get_hl_by_name', b'parameters': [[b'String', b'name'], [b'Boolean', b'rgb']], b'since': 3}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_get_hl_by_id', b'parameters': [[b'Integer', b'hl_id'], [b'Boolean', b'rgb']], b'since': 3}, {b'method': False, b'return_type': b'void', b'name': b'nvim_feedkeys', b'parameters': [[b'String', b'keys'], [b'String', b'mode'], [b'Boolean', b'escape_csi']], b'since': 1}, {b'method': False, b'return_type': b'Integer', b'name': b'nvim_input', b'parameters': [[b'String', b'keys']], b'since': 1}, {b'method': False, b'return_type': b'String', b'name': b'nvim_replace_termcodes', b'parameters': [[b'String', b'str'], [b'Boolean', b'from_part'], [b'Boolean', b'do_lt'], [b'Boolean', b'special']], b'since': 1}, {b'method': False, b'return_type': b'String', b'name': b'nvim_command_output', b'parameters': [[b'String', b'command']], b'since': 1}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_eval', b'parameters': [[b'String', b'expr']], b'since': 1}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_execute_lua', b'parameters': [[b'String', b'code'], [b'Array', b'args']], b'since': 3}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_call_function', b'parameters': [[b'String', b'fn'], [b'Array', b'args']], b'since': 1}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_call_dict_function', b'parameters': [[b'Object', b'dict'], [b'String', b'fn'], [b'Array', b'args']], b'since': 4}, {b'method': False, b'return_type': b'Integer', b'name': b'nvim_strwidth', b'parameters': [[b'String', b'text']], b'since': 1}, {b'method': False, b'return_type': b'ArrayOf(String)', b'name': b'nvim_list_runtime_paths', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_current_dir', b'parameters': [[b'String', b'dir']], b'since': 1}, {b'method': False, b'return_type': b'String', b'name': b'nvim_get_current_line', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_current_line', b'parameters': [[b'String', b'line']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_del_current_line', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_get_var', b'parameters': [[b'String', b'name']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_var', b'parameters': [[b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_del_var', b'parameters': [[b'String', b'name']], b'since': 1}, {b'method': False, b'name': b'vim_set_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_del_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'name']], b'deprecated_since': 1}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_get_vvar', b'parameters': [[b'String', b'name']], b'since': 1}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_get_option', b'parameters': [[b'String', b'name']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_option', b'parameters': [[b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_out_write', b'parameters': [[b'String', b'str']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_err_write', b'parameters': [[b'String', b'str']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_err_writeln', b'parameters': [[b'String', b'str']], b'since': 1}, {b'method': False, b'return_type': b'ArrayOf(Buffer)', b'name': b'nvim_list_bufs', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'Buffer', b'name': b'nvim_get_current_buf', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_current_buf', b'parameters': [[b'Buffer', b'buffer']], b'since': 1}, {b'method': False, b'return_type': b'ArrayOf(Window)', b'name': b'nvim_list_wins', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'Window', b'name': b'nvim_get_current_win', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_current_win', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': False, b'return_type': b'ArrayOf(Tabpage)', b'name': b'nvim_list_tabpages', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'Tabpage', b'name': b'nvim_get_current_tabpage', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_current_tabpage', b'parameters': [[b'Tabpage', b'tabpage']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_subscribe', b'parameters': [[b'String', b'event']], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_unsubscribe', b'parameters': [[b'String', b'event']], b'since': 1}, {b'method': False, b'return_type': b'Integer', b'name': b'nvim_get_color_by_name', b'parameters': [[b'String', b'name']], b'since': 1}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_get_color_map', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_get_mode', b'parameters': [], b'since': 2}, {b'method': False, b'return_type': b'ArrayOf(Dictionary)', b'name': b'nvim_get_keymap', b'parameters': [[b'String', b'mode']], b'since': 3}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_get_commands', b'parameters': [[b'Dictionary', b'opts']], b'since': 4}, {b'method': False, b'return_type': b'Array', b'name': b'nvim_get_api_info', b'parameters': [], b'since': 1}, {b'method': False, b'return_type': b'void', b'name': b'nvim_set_client_info', b'parameters': [[b'String', b'name'], [b'Dictionary', b'version'], [b'String', b'type'], [b'Dictionary', b'methods'], [b'Dictionary', b'attributes']], b'since': 4}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_get_chan_info', b'parameters': [[b'Integer', b'chan']], b'since': 4}, {b'method': False, b'return_type': b'Array', b'name': b'nvim_list_chans', b'parameters': [], b'since': 4}, {b'method': False, b'return_type': b'Array', b'name': b'nvim_call_atomic', b'parameters': [[b'Array', b'calls']], b'since': 1}, {b'method': False, b'return_type': b'Dictionary', b'name': b'nvim_parse_expression', b'parameters': [[b'String', b'expr'], [b'String', b'flags'], [b'Boolean', b'highlight']], b'since': 4}, {b'method': False, b'return_type': b'Array', b'name': b'nvim_list_uis', b'parameters': [], b'since': 4}, {b'method': False, b'return_type': b'Array', b'name': b'nvim_get_proc_children', b'parameters': [[b'Integer', b'pid']], b'since': 4}, {b'method': False, b'return_type': b'Object', b'name': b'nvim_get_proc', b'parameters': [[b'Integer', b'pid']], b'since': 4}, {b'method': True, b'return_type': b'Buffer', b'name': b'nvim_win_get_buf', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'ArrayOf(Integer, 2)', b'name': b'nvim_win_get_cursor', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_win_set_cursor', b'parameters': [[b'Window', b'window'], [b'ArrayOf(Integer, 2)', b'pos']], b'since': 1}, {b'method': True, b'return_type': b'Integer', b'name': b'nvim_win_get_height', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_win_set_height', b'parameters': [[b'Window', b'window'], [b'Integer', b'height']], b'since': 1}, {b'method': True, b'return_type': b'Integer', b'name': b'nvim_win_get_width', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_win_set_width', b'parameters': [[b'Window', b'window'], [b'Integer', b'width']], b'since': 1}, {b'method': True, b'return_type': b'Object', b'name': b'nvim_win_get_var', b'parameters': [[b'Window', b'window'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_win_set_var', b'parameters': [[b'Window', b'window'], [b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_win_del_var', b'parameters': [[b'Window', b'window'], [b'String', b'name']], b'since': 1}, {b'method': False, b'name': b'window_set_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Window', b'window'], [b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': False, b'name': b'window_del_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Window', b'window'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'return_type': b'Object', b'name': b'nvim_win_get_option', b'parameters': [[b'Window', b'window'], [b'String', b'name']], b'since': 1}, {b'method': True, b'return_type': b'void', b'name': b'nvim_win_set_option', b'parameters': [[b'Window', b'window'], [b'String', b'name'], [b'Object', b'value']], b'since': 1}, {b'method': True, b'return_type': b'ArrayOf(Integer, 2)', b'name': b'nvim_win_get_position', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'Tabpage', b'name': b'nvim_win_get_tabpage', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'Integer', b'name': b'nvim_win_get_number', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'return_type': b'Boolean', b'name': b'nvim_win_is_valid', b'parameters': [[b'Window', b'window']], b'since': 1}, {b'method': True, b'name': b'buffer_line_count', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'Buffer', b'buffer']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_get_lines', b'since': 0, b'return_type': b'ArrayOf(String)', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'start'], [b'Integer', b'end'], [b'Boolean', b'strict_indexing']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_set_lines', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'start'], [b'Integer', b'end'], [b'Boolean', b'strict_indexing'], [b'ArrayOf(String)', b'replacement']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_get_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_get_option', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_set_option', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_get_number', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'Buffer', b'buffer']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_get_name', b'since': 0, b'return_type': b'String', b'parameters': [[b'Buffer', b'buffer']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_set_name', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_is_valid', b'since': 0, b'return_type': b'Boolean', b'parameters': [[b'Buffer', b'buffer']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_get_mark', b'since': 0, b'return_type': b'ArrayOf(Integer, 2)', b'parameters': [[b'Buffer', b'buffer'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_add_highlight', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'src_id'], [b'String', b'hl_group'], [b'Integer', b'line'], [b'Integer', b'col_start'], [b'Integer', b'col_end']], b'deprecated_since': 1}, {b'method': True, b'name': b'buffer_clear_highlight', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer'], [b'Integer', b'src_id'], [b'Integer', b'line_start'], [b'Integer', b'line_end']], b'deprecated_since': 1}, {b'method': True, b'name': b'tabpage_get_windows', b'since': 0, b'return_type': b'ArrayOf(Window)', b'parameters': [[b'Tabpage', b'tabpage']], b'deprecated_since': 1}, {b'method': True, b'name': b'tabpage_get_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Tabpage', b'tabpage'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'tabpage_get_window', b'since': 0, b'return_type': b'Window', b'parameters': [[b'Tabpage', b'tabpage']], b'deprecated_since': 1}, {b'method': True, b'name': b'tabpage_is_valid', b'since': 0, b'return_type': b'Boolean', b'parameters': [[b'Tabpage', b'tabpage']], b'deprecated_since': 1}, {b'method': False, b'name': b'ui_detach', b'since': 0, b'return_type': b'void', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'ui_try_resize', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Integer', b'width'], [b'Integer', b'height']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_command', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'command']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_feedkeys', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'keys'], [b'String', b'mode'], [b'Boolean', b'escape_csi']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_input', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'String', b'keys']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_replace_termcodes', b'since': 0, b'return_type': b'String', b'parameters': [[b'String', b'str'], [b'Boolean', b'from_part'], [b'Boolean', b'do_lt'], [b'Boolean', b'special']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_command_output', b'since': 0, b'return_type': b'String', b'parameters': [[b'String', b'command']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_eval', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'expr']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_call_function', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'fn'], [b'Array', b'args']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_strwidth', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'String', b'text']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_list_runtime_paths', b'since': 0, b'return_type': b'ArrayOf(String)', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_change_directory', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'dir']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_current_line', b'since': 0, b'return_type': b'String', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_set_current_line', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'line']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_del_current_line', b'since': 0, b'return_type': b'void', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'name']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_vvar', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'name']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_option', b'since': 0, b'return_type': b'Object', b'parameters': [[b'String', b'name']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_set_option', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_out_write', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'str']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_err_write', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'str']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_report_error', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'str']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_buffers', b'since': 0, b'return_type': b'ArrayOf(Buffer)', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_current_buffer', b'since': 0, b'return_type': b'Buffer', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_set_current_buffer', b'since': 0, b'return_type': b'void', b'parameters': [[b'Buffer', b'buffer']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_windows', b'since': 0, b'return_type': b'ArrayOf(Window)', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_current_window', b'since': 0, b'return_type': b'Window', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_set_current_window', b'since': 0, b'return_type': b'void', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_tabpages', b'since': 0, b'return_type': b'ArrayOf(Tabpage)', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_current_tabpage', b'since': 0, b'return_type': b'Tabpage', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_set_current_tabpage', b'since': 0, b'return_type': b'void', b'parameters': [[b'Tabpage', b'tabpage']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_subscribe', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'event']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_unsubscribe', b'since': 0, b'return_type': b'void', b'parameters': [[b'String', b'event']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_name_to_color', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'String', b'name']], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_color_map', b'since': 0, b'return_type': b'Dictionary', b'parameters': [], b'deprecated_since': 1}, {b'method': False, b'name': b'vim_get_api_info', b'since': 0, b'return_type': b'Array', b'parameters': [], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_buffer', b'since': 0, b'return_type': b'Buffer', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_cursor', b'since': 0, b'return_type': b'ArrayOf(Integer, 2)', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_set_cursor', b'since': 0, b'return_type': b'void', b'parameters': [[b'Window', b'window'], [b'ArrayOf(Integer, 2)', b'pos']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_height', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_set_height', b'since': 0, b'return_type': b'void', b'parameters': [[b'Window', b'window'], [b'Integer', b'height']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_width', b'since': 0, b'return_type': b'Integer', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_set_width', b'since': 0, b'return_type': b'void', b'parameters': [[b'Window', b'window'], [b'Integer', b'width']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_var', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Window', b'window'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_option', b'since': 0, b'return_type': b'Object', b'parameters': [[b'Window', b'window'], [b'String', b'name']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_set_option', b'since': 0, b'return_type': b'void', b'parameters': [[b'Window', b'window'], [b'String', b'name'], [b'Object', b'value']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_position', b'since': 0, b'return_type': b'ArrayOf(Integer, 2)', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_get_tabpage', b'since': 0, b'return_type': b'Tabpage', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}, {b'method': True, b'name': b'window_is_valid', b'since': 0, b'return_type': b'Boolean', b'parameters': [[b'Window', b'window']], b'deprecated_since': 1}], b'version': {b'api_compatible': 0, b'patch': 1, b'minor': 3, b'major': 0, b'api_prerelease': False, b'api_level': 4}, b'ui_options': [b'rgb', b'ext_cmdline', b'ext_popupmenu', b'ext_tabline', b'ext_wildmenu']}]
2018-08-01 16:20:11,186 [DEBUG @ base.py:stop:153] 40392 - Stopped event loop
2018-08-01 16:20:11,186 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,186 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,187 [DEBUG @ base.py:run:144] 40392 - Exited event loop
2018-08-01 16:20:11,222 [DEBUG @ session.py:_on_request:207] 40392 - received rpc request, greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> will handle it
2018-08-01 16:20:11,222 [DEBUG @ host.py:_on_request:90] 40392 - calling request handler for "poll", args: "[]"
2018-08-01 16:20:11,222 [DEBUG @ host.py:_on_request:92] 40392 - request handler for 'poll []' returns: ok
2018-08-01 16:20:11,222 [DEBUG @ session.py:handler:193] 40392 - greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> finished executing, sending ok as response
2018-08-01 16:20:11,222 [DEBUG @ async_session.py:send:138] 40392 - sending response to request 1: [1, 1, None, 'ok']
2018-08-01 16:20:11,223 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [1, 1, None, 'ok']
2018-08-01 16:20:11,223 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x01\x01\xc0\xa2ok''
2018-08-01 16:20:11,223 [DEBUG @ session.py:handler:203] 40392 - greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> is now dying...
2018-08-01 16:20:11,223 [DEBUG @ base.py:run:142] 40392 - Entering event loop
2018-08-01 16:20:11,224 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,224 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [2, b'/home/jrwrigh/.local/share/nvim/plugged/deoplete.nvim/rplugin/python3/deoplete:function:_deoplete_init', [[]]]
2018-08-01 16:20:11,224 [DEBUG @ async_session.py:_on_notification:107] 40392 - received notification: b'/home/jrwrigh/.local/share/nvim/plugged/deoplete.nvim/rplugin/python3/deoplete:function:_deoplete_init', [[]]
2018-08-01 16:20:11,224 [DEBUG @ session.py:_on_notification:222] 40392 - received rpc notification, greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> will handle it
2018-08-01 16:20:11,224 [DEBUG @ host.py:_on_notification:106] 40392 - calling notification handler for "/home/jrwrigh/.local/share/nvim/plugged/deoplete.nvim/rplugin/python3/deoplete:function:_deoplete_init", args: "[[]]"
2018-08-01 16:20:11,224 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 2, 'nvim_call_function', ('deoplete#custom#_get_option', ['num_processes'])]
2018-08-01 16:20:11,225 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x02\xb2nvim_call_function\x92\xbbdeoplete#custom#_get_option\x91\xadnum_processes''
2018-08-01 16:20:11,225 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,225 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,225 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,256 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,256 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 2, None, 4]
2018-08-01 16:20:11,256 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, 4
2018-08-01 16:20:11,256 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,257 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 3, 'nvim_get_var', ('deoplete#_logging',)]
2018-08-01 16:20:11,257 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x03\xacnvim_get_var\x91\xb1deoplete#_logging''
2018-08-01 16:20:11,257 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,257 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,258 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,258 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,258 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 3, None, {}]
2018-08-01 16:20:11,258 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, {}
2018-08-01 16:20:11,258 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,258 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 4, 'nvim_call_function', ('deoplete#init#_context', ['Init', []])]
2018-08-01 16:20:11,259 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x04\xb2nvim_call_function\x92\xb6deoplete#init#_context\x92\xa4Init\x90''
2018-08-01 16:20:11,259 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,259 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,259 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,261 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,264 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 4, None, {b'bufname': b'', b'vars': {b'deoplete#_rank': {}, b'deoplete#_serveraddr': b'/tmp/nvimiOnDRV/0', b'deoplete#_context': {}, b'deoplete#enable_at_startup': 1, b'deoplete#_logging': {}, b'deoplete#_prev_completion': {b'event': b'', b'candidates': [], b'input': b''}}, b'cwd': b'/home/jrwrigh', b'delay': 50, b'max_menu_width': 134, b'bufpath': b'', b'next_input': b'', b'ignorecase': 0, b'max_abbr_width': 134, b'same_filetypes': [], b'bufvars': {}, b'encoding': b'utf-8', b'bufnr': 1, b'filetypes': [b'nothing'], b'is_windows': False, b'filetype': b'nothing', b'complete_str': b'', b'omni__omnifunc': b'', b'position': [0, 1, 1, 0], b'sources': [], b'dict__dictionary': b'', b'custom': {b'option': {b'delimiters': [b'/'], b'on_insert_enter': True, b'num_processes': 4, b'skip_chars': [b'(', b')'], b'smart_case': 0, b'keyword_patterns': {b'_': b'[a-zA-Z_]\\k*'}, b'complete_method': b'complete', b'min_pattern_length': 2, b'omni_patterns': {b'xhtml': [b'<', b'</', b'<[^>]*\\s[[:alnum:]-]*'], b'xml': [b'<', b'</', b'<[^>]*\\s[[:alnum:]-]*'], b'html': [b'<', b'</', b'<[^>]*\\s[[:alnum:]-]*']}, b'camel_case': False, b'auto_complete': True, b'auto_complete_delay': 50, b'on_text_changed_i': True, b'ignore_sources': {}, b'refresh_always': False, b'auto_refresh_delay': 50, b'profile': False, b'max_list': 500, b'ignore_case': 0, b'yarp': False, b'sources': {}}, b'source': {b'_': {}}}, b'smartcase': 0, b'camelcase': False, b'event': b'Init', b'max_kind_width': 134, b'input': b'', b'changedtick': 2}]
2018-08-01 16:20:11,264 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, {b'bufname': b'', b'vars': {b'deoplete#_rank': {}, b'deoplete#_serveraddr': b'/tmp/nvimiOnDRV/0', b'deoplete#_context': {}, b'deoplete#enable_at_startup': 1, b'deoplete#_logging': {}, b'deoplete#_prev_completion': {b'event': b'', b'candidates': [], b'input': b''}}, b'cwd': b'/home/jrwrigh', b'delay': 50, b'max_menu_width': 134, b'bufpath': b'', b'next_input': b'', b'ignorecase': 0, b'max_abbr_width': 134, b'same_filetypes': [], b'bufvars': {}, b'encoding': b'utf-8', b'bufnr': 1, b'filetypes': [b'nothing'], b'is_windows': False, b'filetype': b'nothing', b'complete_str': b'', b'omni__omnifunc': b'', b'position': [0, 1, 1, 0], b'sources': [], b'dict__dictionary': b'', b'custom': {b'option': {b'delimiters': [b'/'], b'on_insert_enter': True, b'num_processes': 4, b'skip_chars': [b'(', b')'], b'smart_case': 0, b'keyword_patterns': {b'_': b'[a-zA-Z_]\\k*'}, b'complete_method': b'complete', b'min_pattern_length': 2, b'omni_patterns': {b'xhtml': [b'<', b'</', b'<[^>]*\\s[[:alnum:]-]*'], b'xml': [b'<', b'</', b'<[^>]*\\s[[:alnum:]-]*'], b'html': [b'<', b'</', b'<[^>]*\\s[[:alnum:]-]*']}, b'camel_case': False, b'auto_complete': True, b'auto_complete_delay': 50, b'on_text_changed_i': True, b'ignore_sources': {}, b'refresh_always': False, b'auto_refresh_delay': 50, b'profile': False, b'max_list': 500, b'ignore_case': 0, b'yarp': False, b'sources': {}}, b'source': {b'_': {}}}, b'smartcase': 0, b'camelcase': False, b'event': b'Init', b'max_kind_width': 134, b'input': b'', b'changedtick': 2}
2018-08-01 16:20:11,264 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,266 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 5, 'nvim_get_option', ('runtimepath',)]
2018-08-01 16:20:11,266 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x05\xafnvim_get_option\x91\xabruntimepath''
2018-08-01 16:20:11,266 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,266 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,266 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,267 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,267 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 5, None, b'/home/jrwrigh/.config/nvim,/home/jrwrigh/.local/share/nvim/plugged/deoplete.nvim/,/etc/xdg/nvim,/home/jrwrigh/.local/share/nvim/site,/usr/local/share/nvim/site,/usr/share/nvim/site,/home/jrwrigh/bin/neovim/squashfs-root/usr/share/nvim/runtime,/usr/share/nvim/site/after,/usr/local/share/nvim/site/after,/home/jrwrigh/.local/share/nvim/site/after,/etc/xdg/nvim/after,/home/jrwrigh/.config/nvim/after']
2018-08-01 16:20:11,267 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, b'/home/jrwrigh/.config/nvim,/home/jrwrigh/.local/share/nvim/plugged/deoplete.nvim/,/etc/xdg/nvim,/home/jrwrigh/.local/share/nvim/site,/usr/local/share/nvim/site,/usr/share/nvim/site,/home/jrwrigh/bin/neovim/squashfs-root/usr/share/nvim/runtime,/usr/share/nvim/site/after,/usr/local/share/nvim/site/after,/home/jrwrigh/.local/share/nvim/site/after,/etc/xdg/nvim/after,/home/jrwrigh/.config/nvim/after'
2018-08-01 16:20:11,267 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,268 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 6, 'nvim_get_var', ('python3_host_prog',)]
2018-08-01 16:20:11,268 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x06\xacnvim_get_var\x91\xb1python3_host_prog''
2018-08-01 16:20:11,268 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,268 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,268 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,268 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,269 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 6, [1, b"Key 'python3_host_prog' not found"], None]
2018-08-01 16:20:11,269 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: [1, b"Key 'python3_host_prog' not found"], None
2018-08-01 16:20:11,269 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,269 [INFO @ session.py:request:99] 40392 - 'Received error: [1, b"Key 'python3_host_prog' not found"]
2018-08-01 16:20:11,269 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 7, 'nvim_get_var', ('deoplete#_serveraddr',)]
2018-08-01 16:20:11,269 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x07\xacnvim_get_var\x91\xb4deoplete#_serveraddr''
2018-08-01 16:20:11,270 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,270 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,270 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,270 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,270 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 7, None, b'/tmp/nvimiOnDRV/0']
2018-08-01 16:20:11,270 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, b'/tmp/nvimiOnDRV/0'
2018-08-01 16:20:11,271 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,271 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 8, 'nvim_get_var', ('deoplete#_logging',)]
2018-08-01 16:20:11,271 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x08\xacnvim_get_var\x91\xb1deoplete#_logging''
2018-08-01 16:20:11,271 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,271 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,272 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,276 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,276 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 8, None, {}]
2018-08-01 16:20:11,276 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, {}
2018-08-01 16:20:11,276 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,277 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 9, 'nvim_get_var', ('python3_host_prog',)]
2018-08-01 16:20:11,277 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\t\xacnvim_get_var\x91\xb1python3_host_prog''
2018-08-01 16:20:11,277 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,277 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,277 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,278 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,278 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 9, [1, b"Key 'python3_host_prog' not found"], None]
2018-08-01 16:20:11,278 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: [1, b"Key 'python3_host_prog' not found"], None
2018-08-01 16:20:11,278 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,278 [INFO @ session.py:request:99] 40392 - 'Received error: [1, b"Key 'python3_host_prog' not found"]
2018-08-01 16:20:11,279 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 10, 'nvim_get_var', ('deoplete#_serveraddr',)]
2018-08-01 16:20:11,279 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\n\xacnvim_get_var\x91\xb4deoplete#_serveraddr''
2018-08-01 16:20:11,279 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,279 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,279 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,280 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,280 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 10, None, b'/tmp/nvimiOnDRV/0']
2018-08-01 16:20:11,280 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, b'/tmp/nvimiOnDRV/0'
2018-08-01 16:20:11,280 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,280 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 11, 'nvim_get_var', ('deoplete#_logging',)]
2018-08-01 16:20:11,280 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x0b\xacnvim_get_var\x91\xb1deoplete#_logging''
2018-08-01 16:20:11,281 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,281 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,281 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,284 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,284 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 11, None, {}]
2018-08-01 16:20:11,285 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, {}
2018-08-01 16:20:11,285 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,285 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 12, 'nvim_get_var', ('python3_host_prog',)]
2018-08-01 16:20:11,286 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x0c\xacnvim_get_var\x91\xb1python3_host_prog''
2018-08-01 16:20:11,286 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,286 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,286 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,286 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,287 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 12, [1, b"Key 'python3_host_prog' not found"], None]
2018-08-01 16:20:11,287 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: [1, b"Key 'python3_host_prog' not found"], None
2018-08-01 16:20:11,287 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,287 [INFO @ session.py:request:99] 40392 - 'Received error: [1, b"Key 'python3_host_prog' not found"]
2018-08-01 16:20:11,287 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 13, 'nvim_get_var', ('deoplete#_serveraddr',)]
2018-08-01 16:20:11,287 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\r\xacnvim_get_var\x91\xb4deoplete#_serveraddr''
2018-08-01 16:20:11,288 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,288 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,288 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,288 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,288 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 13, None, b'/tmp/nvimiOnDRV/0']
2018-08-01 16:20:11,288 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, b'/tmp/nvimiOnDRV/0'
2018-08-01 16:20:11,289 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,289 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 14, 'nvim_get_var', ('deoplete#_logging',)]
2018-08-01 16:20:11,289 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x0e\xacnvim_get_var\x91\xb1deoplete#_logging''
2018-08-01 16:20:11,289 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,289 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,290 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,293 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,293 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 14, None, {}]
2018-08-01 16:20:11,293 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, {}
2018-08-01 16:20:11,293 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,294 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 15, 'nvim_get_var', ('python3_host_prog',)]
2018-08-01 16:20:11,294 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x0f\xacnvim_get_var\x91\xb1python3_host_prog''
2018-08-01 16:20:11,294 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,294 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,295 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,295 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,295 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 15, [1, b"Key 'python3_host_prog' not found"], None]
2018-08-01 16:20:11,295 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: [1, b"Key 'python3_host_prog' not found"], None
2018-08-01 16:20:11,295 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,295 [INFO @ session.py:request:99] 40392 - 'Received error: [1, b"Key 'python3_host_prog' not found"]
2018-08-01 16:20:11,296 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 16, 'nvim_get_var', ('deoplete#_serveraddr',)]
2018-08-01 16:20:11,296 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x10\xacnvim_get_var\x91\xb4deoplete#_serveraddr''
2018-08-01 16:20:11,296 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,296 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,296 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,297 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,297 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 16, None, b'/tmp/nvimiOnDRV/0']
2018-08-01 16:20:11,297 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, b'/tmp/nvimiOnDRV/0'
2018-08-01 16:20:11,297 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,297 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 17, 'nvim_get_var', ('deoplete#_logging',)]
2018-08-01 16:20:11,298 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x11\xacnvim_get_var\x91\xb1deoplete#_logging''
2018-08-01 16:20:11,298 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,298 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,298 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,301 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,301 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 17, None, {}]
2018-08-01 16:20:11,301 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, {}
2018-08-01 16:20:11,302 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,336 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 18, 'nvim_set_var', ('deoplete#_channel_id', 3)]
2018-08-01 16:20:11,336 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x12\xacnvim_set_var\x92\xb4deoplete#_channel_id\x03''
2018-08-01 16:20:11,337 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,337 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,337 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,337 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,337 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 18, None, None]
2018-08-01 16:20:11,338 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, None
2018-08-01 16:20:11,338 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,338 [DEBUG @ msgpack_stream.py:send:34] 40392 - sent [0, 19, 'nvim_set_var', ('deoplete#_initialized', True)]
2018-08-01 16:20:11,338 [DEBUG @ base.py:send:117] 40392 - Sending 'b'\x94\x00\x13\xacnvim_set_var\x92\xb5deoplete#_initialized\xc3''
2018-08-01 16:20:11,338 [DEBUG @ session.py:_yielding_request:159] 40392 - yielding from greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> to wait for response
2018-08-01 16:20:11,338 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,339 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...
2018-08-01 16:20:11,339 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,339 [DEBUG @ msgpack_stream.py:_on_data:61] 40392 - received message: [1, 19, None, None]
2018-08-01 16:20:11,339 [DEBUG @ async_session.py:_on_response:100] 40392 - received response: None, None
2018-08-01 16:20:11,339 [DEBUG @ session.py:response_cb:155] 40392 - response is available for greenlet <greenlet.greenlet object at 0x7fa9f8dc7470>, switching back
2018-08-01 16:20:11,340 [DEBUG @ session.py:handler:214] 40392 - greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> finished executing
2018-08-01 16:20:11,340 [DEBUG @ session.py:handler:219] 40392 - greenlet <greenlet.greenlet object at 0x7fa9f8dc7470> is now dying...
2018-08-01 16:20:11,340 [DEBUG @ msgpack_stream.py:_on_data:59] 40392 - waiting for message...
2018-08-01 16:20:11,340 [DEBUG @ msgpack_stream.py:_on_data:64] 40392 - unpacker needs more data...

cannot reproduce help wanted

Most helpful comment

I have reverted it.
Please check.

All 25 comments

I'm seeing something similar with the latest version, I had to revert the recent update.

Care to elaborate on how to revert the version. Are you doing that through the repo or through vim-plug (or whatever other plugin manager)?

I'm doing git checkout 59fbd61d492b0a1728f34b8958d8e4dbce165c73. You can pin a specific commit with vim-plug too

git is saying that hash isn't in the tree...

[USERNAME@login001 deoplete.nvim]$ git checkout 59fbd61d492b0a1728f34b8958d8e4dbce165c73
fatal: reference is not a tree: 59fbd61d492b0a1728f34b8958d8e4dbce165c73

Edit: I can see that it is a valid hash, it's just not working for whatever reason.

Please upload the log file.
Python process seems crashed.

I cannot debug it.

Generate a logfile if appropriate

    export NVIM_PYTHON_LOG_FILE=/tmp/log
    export NVIM_PYTHON_LOG_LEVEL=DEBUG
    nvim -u minimal.vimrc
    some works
    cat /tmp/log_{PID}

And please use git bisect.

@Shougo I copied the contents of the log file in the original issue comment.

Edit: also, what am I supposed to git bisect?

@u2berggeist Please use git bisect. I don't get the error reason from the log.

No more information?
I have not much time.

I cannot revert the commit.

Similar issue going on here, together with with autozimu/LanguageClient-neovim. Whenever a buffer with completions handled by LanguageClient is closed, deoplete complains about the buffer not being there. Reverting to the previous commit fixed the issue. I will provide more details as soon as I get home.

Reverting to the previous commit fixed the issue. I will provide more details as soon as I get home.

What is the commit?
It is very important information.

My time limit is AM 9:00 JST.
Please hurry up if possible.

I'm sorry, I'm afraid it's actually a completely different issue from this one and I don't want to hijack it. I can't provide a full report right now, I'll probably be able to in about an hour, but that probably will be outside your availability. Anyway, 7b5144b is the most recent commit that works for me.

Edit: This is the line that will raise an exception after buffers have been closed.
https://github.com/Shougo/deoplete.nvim/blob/514acfaf50f87f6301e79da4951573bc2b66716a/rplugin/python3/deoplete/source/buffer.py#L46

I have reverted it.
Please check.

Thanks for the quick revert. Now working as expected.

I've been trying for a few hours now to reproduce this error checking out 7f469a9 using a minimum config and nothing seems to trigger it. I even added autozimu/LanguageClient-neovim to that config hoping I could get some sort of bad interaction between the two plugins and nothing.

Granted, this is my home computer, which is different from my work computer, but I use the exact same configuration for neovim on both. There's probably some other plugin influencing this heisenbug, and by the looks of people having issues, it should be a fairly common plugin. I will keep trying to reproduce it tomorrow and when I'm able to do it I'll report back.

I just updated my deoplete using git pull origin master. I'm still getting the same error. Note that I never had a working deoplete to begin with, so this might be something else.

@Shougo I'd love to use bisect, but for whatever reason git checkout [COMMIT HASH] just isn't working for me. It continues to come up with fatal: reference is not a tree: [COMMIT HAS].

I'll delete, and then reinstall to see what happens. Otherwise, I'll just try and find out why I can't checkout commits.

Edit: can confirm that reinstall didn't change anything for me. I'm still continuing to get the git checkout error as well. So I'm pretty much helpless until I can get that figured out I guess.

Edit 2: Can confirm that after the reinstall I am on the most recent commit. git log output:

[USERNAME@login001 deoplete.nvim]$ git log
commit 57ae32605a786fbb2c88bd5c7427dec41df0e209
Author: Shougo Matsushita <[email protected]>
Date:   Thu Aug 2 07:57:01 2018 +0900

    Revert "Add clean cache"

    This reverts commit 514acfaf50f87f6301e79da4951573bc2b66716a.

Still can't figure out why git checkout [COMMIT HASH] isn't working, but I was able to git checkout tags and branches. Here are the results organized by error. (Spoiler alert, none of them worked. :( )

Error in the original description:

  • master
  • flicker
  • refresh

New Error:

Error detected while processing function <SNR>126_completion_begin[29]..deoplete#util#rpcnotify[4]..<SNR>121_notify:
line    6:
E475: Invalid argument: Channel doesn't exist
  • 4.0-serial
  • 3.0

I can grab the log files for the tags with the new error if you want. I didn't bother for right now seeing as those are _many_ commits behind the current.

Alright, I deleted the deoplete.nvim directory inside .local/share/nvim/plugged/ and then just cloned the repo into that. Now I can successfully checkout specific commits. (I think vim-plug does git commit --depth=1 which meant that I didn't have access to the other commits. Or something along those lines).

It also appears that I was missing an error in the original issue report. I've updated that now. The full error messages are now:


Error detected while processing function deoplete#send_event[2]..deoplete#util#rpcnotify[2]..<SNR>121_notify:
line    9:
E475: Invalid argument: Channel doesn't exist
Error detected while processing function <lambda>1[1]..<SNR>127_completion_begin[16]..deoplete#util#rpcnotify[2]..<SNR>121_notify:
line    9:
E475: Invalid argument: Channel doesn't exist

Getting a slightly different error after going back a few commits: deoplete#send_event[2] --> deoplete#send_event[1]

Error detected while processing function deoplete#send_event[1]..deoplete#util#rpcnotify[2]..<SNR>121_notify:
line    9:
E475: Invalid argument: Channel doesn't exist
Error detected while processing function <lambda>1[1]..<SNR>127_completion_begin[16]..deoplete#util#rpcnotify[2]..<SNR>121_notify:
line    9:
E475: Invalid argument: Channel doesn't exist

Using git bisect, this the error changed from deoplete#send_event[2] to deoplete#send_event[1] at commit 96fb777. Not sure if that helps any.

I went through commits all the way back into May and still am running into the same issue. I'm not sure what to do next. Let me know if there's anything else I can do.

@u2berggeist Your problem is not related my change.

My suggestion:

  • Upgrade neovim module
$ pip3 install neovim --upgrade
  • Disable parallel feature.
call deoplete#custom#option('num_processes', 1)

I use neovim in CentOS 7. I don't reproduce the problem.

I've tried the suggested and am still not getting a fix. Is there anywhere I can look to possibly find a solution/culprit?

Note that I'm running on a login node of a HPC Cluster, so I don't have write/read access to the main directories (bin, etc, usr, ...). Neovim is installed via AppImage and I have to run pip3 install --user neovim in order to install libraries. Not sure if that helps anything.

If so, I cannot help you.
neovim module does not work. I don't know why.

For documentation's sake, the issue was found to be some kind of resource limitation that is given on the login node. See neovim/python-client#353 for more details.

OK.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

lowski picture lowski  路  3Comments

ChristianChiarulli picture ChristianChiarulli  路  5Comments

tchia04 picture tchia04  路  3Comments

pappasam picture pappasam  路  4Comments

callmekohei picture callmekohei  路  4Comments