Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Memory leak when accessing declared, but uninstatiated, map in c++ #889

Open
2 tasks done
kentkr opened this issue Oct 18, 2024 · 1 comment
Open
2 tasks done

Memory leak when accessing declared, but uninstatiated, map in c++ #889

kentkr opened this issue Oct 18, 2024 · 1 comment

Comments

@kentkr
Copy link

kentkr commented Oct 18, 2024

Description

When accessing a declared, but uninstantiated, map in the Variables view there is a memory leak. Python, neovim, and codelldb begin to use 2+gb of RAM each. Vimspector becomes unresponsive and neovim must be force quit.

Is it reproducible in vim?

Only broken in Neovim

Works with clean config?

Yes

Sample project works?

Reproducible with sample project

Minimal Reproduction

List of steps to reproduce:

  1. Copy and paste the below files into a project
    eg.cpp
#include <map>

int main() {
    auto m = std::map<char, int>();
    m['a'] = 0;
    return 0;
}

CMakeLists.txt

cmake_minimum_required(VERSION 3.26)

project("eg")

# Set the C++ standard
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED True)

# debug and coc-clangd config
set(CMAKE_BUILD_TYPE Debug)
set(CMAKE_CXX_FLAGS_DEBUG "-g")
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

add_executable(eg eg.cpp)

# Install targets
install(TARGETS eg DESTINATION bin)

.vimspector.json

{
  "configurations": {
    "Launch": {
      "adapter": "CodeLLDB",
      "configuration": {
        "request": "launch",
        "program": "eg",
        "args": [],
        "stopAtEntry": true,
        "cwd": "${workspaceRoot}",
        "environment": [],
        "externalConsole": false,
        "MIMode": "lldb",
        "setupCommands": []
      }
    }
  }
}
  1. Build the project with cmake . then cmake --build .
  2. In neovim open up eg.cpp
  3. Create a breakpoint at line 4 :call vimspector#SetLineBreakpoint('eg.cpp', 4)
  4. Launch debugging :call vimspector#Launch()
  5. Immediately move to the buffer vimspector.Variables
  6. Under Scope: local try to to open up the m variable by hovering over it and hitting enter/return
  7. Wait or keep hitting enter. It takes a second for the error to appear.

Expected Behaviour

Accessing the variable before it is instantiated should not cause a memory leak.

Or at least if it does the debugger should be able to reset. It currently goes unresponsive.

Actual Behaviour

The debugger (vimspector commands) are no longer responsive, throwing a python eval error. Neovim stays active (unless in tmux which hangs forever).

The processes for neovim, python, and codelldb begin to use excessive amounts of memory. The only way out of this is to force quite the neovim process that originally launched the vimspector session.

If that process is not stopped then any new session that's created will experience the same issue.

Additional information

I'm a c++ novice so wouldn't be surprised if I'm making a mistake somewhere.

I'm happy to contribute if needed!

Installation Type

Other (specify in notes)

Vimspector version

vim-plug. Sorry I'm not sure what you need from git rev-parse HEAD

Debug Info

All commands, including `VimspectorDebugInfo` become unresponsive. Here's the output right before that moment.


[]
--------------------------------------------------------------------------------
Ex Breakpoints: 
--------------------------------------------------------------------------------
{
  "filters": [
    "cpp_throw"
  ]
}
--------------------------------------------------------------------------------


### Log file

```Text
2024-10-18 09:18:28,890 - INFO - debug_session.py:128 - 0 - **** INITIALISING NEW VIMSPECTOR SESSION FOR ID 0 ****
2024-10-18 09:18:28,890 - INFO - debug_session.py:130 - 0 - API is: neo
2024-10-18 09:18:28,890 - INFO - debug_session.py:131 - 0 - VIMSPECTOR_HOME = /Users/kylekent/.local/share/nvim/plugged/vimspector/python3/vimspector/../..
2024-10-18 09:18:28,890 - INFO - debug_session.py:132 - 0 - gadgetDir = /Users/kylekent/.local/share/nvim/plugged/vimspector/gadgets/macos
2024-10-18 09:18:30,657 - INFO - debug_session.py:226 - 0 - User requested start debug session with {}
2024-10-18 09:18:30,659 - DEBUG - debug_session.py:187 - 0 - Reading configurations from: None
2024-10-18 09:18:30,659 - DEBUG - debug_session.py:187 - 0 - Reading configurations from: /Users/kylekent/Desktop/tmp/vimspector_bug1/.vimspector.json
2024-10-18 09:18:30,662 - DEBUG - debug_session.py:250 - 0 - Reading gadget config: /Users/kylekent/.local/share/nvim/plugged/vimspector/gadgets/macos/.gadgets.json
2024-10-18 09:18:30,665 - DEBUG - debug_session.py:250 - 0 - Reading gadget config: None
2024-10-18 09:18:30,666 - DEBUG - utils.py:633 - None - Returning workspaceRoot from the map for workspaceRoot with args ()
2024-10-18 09:18:30,666 - DEBUG - utils.py:633 - None - Returning gadgetDir from the map for gadgetDir with args ()
2024-10-18 09:18:30,666 - DEBUG - utils.py:684 - None - Put unusedLocalPort into mapping for unusedLocalPort with args ()
2024-10-18 09:18:30,666 - DEBUG - utils.py:633 - None - Returning unusedLocalPort from the map for unusedLocalPort with args ()
2024-10-18 09:18:30,666 - DEBUG - utils.py:633 - None - Returning workspaceRoot from the map for workspaceRoot with args ()
2024-10-18 09:18:30,666 - DEBUG - utils.py:633 - None - Returning unusedLocalPort from the map for unusedLocalPort with args ()
2024-10-18 09:18:30,666 - INFO - debug_session.py:485 - 0 - Configuration: {"adapter": "CodeLLDB", "configuration": {"request": "launch", "program": "eg", "args": [], "stopAtEntry": true, "cwd": "/Users/kylekent/Desktop/tmp/vimspector_bug1", "environment": [], "externalConsole": false, "MIMode": "lldb", "setupCommands": []}}
2024-10-18 09:18:30,666 - INFO - debug_session.py:487 - 0 - Adapter: {"command": ["/Users/kylekent/.local/share/nvim/plugged/vimspector/gadgets/macos/CodeLLDB/adapter/codelldb", "--port", "59915"], "configuration": {"args": [], "cargo": {}, "cwd": "/Users/kylekent/Desktop/tmp/vimspector_bug1", "env": {}, "name": "lldb", "terminal": "integrated", "type": "lldb"}, "name": "CodeLLDB", "port": "59915", "type": "CodeLLDB"}
2024-10-18 09:18:30,670 - DEBUG - debug_session.py:1200 - 0 - min_width/height: 149/50, actual: 214/65 - result: horizontal
2024-10-18 09:18:30,701 - DEBUG - debug_session.py:1786 - 0 - LAUNCH!
2024-10-18 09:18:30,703 - INFO - debug_session.py:1399 - 0 - Starting debug adapter with: {"command": ["/Users/kylekent/.local/share/nvim/plugged/vimspector/gadgets/macos/CodeLLDB/adapter/codelldb", "--port", "59915"], "configuration": {"args": [], "cargo": {}, "cwd": "/Users/kylekent/Desktop/tmp/vimspector_bug1", "env": {}, "name": "lldb", "terminal": "integrated", "type": "lldb"}, "name": "CodeLLDB", "port": "59915", "type": "CodeLLDB"}
2024-10-18 09:18:30,703 - DEBUG - debug_session.py:1418 - 0 - Connection Type: neochannel
2024-10-18 09:18:31,713 - INFO - debug_session.py:1502 - 0 - Debug Adapter Started
2024-10-18 09:18:31,715 - DEBUG - debug_adapter_connection.py:205 - 0 - Sending Message: {"command": "initialize", "arguments": {"adapterID": "CodeLLDB", "clientID": "vimspector", "clientName": "vimspector", "linesStartAt1": true, "columnsStartAt1": true, "locale": "en_GB", "pathFormat": "path", "supportsVariableType": true, "supportsVariablePaging": false, "supportsRunInTerminalRequest": true, "supportsMemoryReferences": true, "supportsStartDebuggingRequest": true}, "seq": 0, "type": "request"}
2024-10-18 09:18:31,826 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 1, 'type': 'response', 'request_seq': 0, 'success': True, 'command': 'initialize', 'body': {'exceptionBreakpointFilters': [{'default': True, 'filter': 'cpp_throw', 'label': 'C++: on throw', 'supportsCondition': True}, {'default': False, 'filter': 'cpp_catch', 'label': 'C++: on catch', 'supportsCondition': True}], 'supportTerminateDebuggee': True, 'supportsCancelRequest': True, 'supportsCompletionsRequest': True, 'supportsConditionalBreakpoints': True, 'supportsConfigurationDoneRequest': True, 'supportsDataBreakpoints': True, 'supportsDelayedStackTraceLoading': True, 'supportsDisassembleRequest': True, 'supportsEvaluateForHovers': True, 'supportsExceptionFilterOptions': True, 'supportsExceptionInfoRequest': True, 'supportsFunctionBreakpoints': True, 'supportsGotoTargetsRequest': True, 'supportsHitConditionalBreakpoints': True, 'supportsInstructionBreakpoints': True, 'supportsLogPoints': True, 'supportsReadMemoryRequest': True, 'supportsSetVariable': True, 'supportsSteppingGranularity': True, 'supportsWriteMemoryRequest': True}}
2024-10-18 09:18:31,827 - DEBUG - debug_adapter_connection.py:205 - 0 - Sending Message: {"command": "launch", "arguments": {"args": [], "cargo": {}, "cwd": "/Users/kylekent/Desktop/tmp/vimspector_bug1", "env": {}, "name": "lldb", "terminal": "integrated", "type": "lldb", "request": "launch", "program": "eg", "stopAtEntry": true, "environment": [], "externalConsole": false, "MIMode": "lldb", "setupCommands": []}, "seq": 1, "type": "request"}
2024-10-18 09:18:31,828 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 2, 'type': 'event', 'event': 'output', 'body': {'category': 'console', 'output': "Console is in 'commands' mode, prefix expressions with '?'.\n"}}
2024-10-18 09:18:31,927 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 3, 'type': 'event', 'event': 'initialized'}
2024-10-18 09:18:33,499 - DEBUG - debug_adapter_connection.py:205 - 0 - Sending Message: {"command": "setBreakpoints", "arguments": {"source": {"name": "eg.cpp", "path": "/Users/kylekent/Desktop/tmp/vimspector_bug1/eg.cpp"}, "breakpoints": [{"line": 4}], "sourceModified": false}, "seq": 2, "type": "request"}
2024-10-18 09:18:33,500 - DEBUG - debug_adapter_connection.py:205 - 0 - Sending Message: {"command": "setFunctionBreakpoints", "arguments": {"breakpoints": []}, "seq": 3, "type": "request"}
2024-10-18 09:18:33,501 - DEBUG - debug_adapter_connection.py:205 - 0 - Sending Message: {"command": "setExceptionBreakpoints", "arguments": {"filters": ["cpp_throw"]}, "seq": 4, "type": "request"}
2024-10-18 09:18:33,501 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 4, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': 'FFFFFFFFFFFFFFFF', 'id': 'FFFFFFFFFFFFFFFF', 'name': 'eg', 'path': '/Users/kylekent/Desktop/tmp/vimspector_bug1/eg', 'symbolFilePath': '/Users/kylekent/Desktop/tmp/vimspector_bug1/eg', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,501 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 5, 'type': 'request', 'command': 'runInTerminal', 'arguments': {'args': ['/Users/kylekent/.local/share/nvim/plugged/vimspector/gadgets/macos/CodeLLDB/adapter/codelldb', 'terminal-agent', '--connect=59918'], 'cwd': '', 'kind': 'integrated', 'title': 'lldb'}}
2024-10-18 09:18:33,501 - DEBUG - debug_session.py:1965 - 0 - Defaulting working directory to /Users/kylekent/Desktop/tmp/vimspector_bug1
2024-10-18 09:18:33,515 - DEBUG - debug_adapter_connection.py:205 - 0 - Sending Message: {"seq": 5, "type": "response", "request_seq": 5, "command": "runInTerminal", "body": {"processId": 14282}, "success": true}
2024-10-18 09:18:33,521 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 6, 'type': 'response', 'request_seq': 2, 'success': True, 'command': 'setBreakpoints', 'body': {'breakpoints': [{'id': 1, 'line': 4, 'message': 'Resolved locations: 0', 'verified': True}]}}
2024-10-18 09:18:33,521 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 7, 'type': 'response', 'request_seq': 3, 'success': True, 'command': 'setFunctionBreakpoints', 'body': {'breakpoints': []}}
2024-10-18 09:18:33,521 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 8, 'type': 'response', 'request_seq': 4, 'success': True, 'command': 'setExceptionBreakpoints'}
2024-10-18 09:18:33,523 - DEBUG - debug_adapter_connection.py:205 - 0 - Sending Message: {"command": "configurationDone", "seq": 6, "type": "request"}
2024-10-18 09:18:33,524 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 9, 'type': 'event', 'event': 'output', 'body': {'category': 'console', 'output': 'Launching: /Users/kylekent/Desktop/tmp/vimspector_bug1/eg\n'}}
2024-10-18 09:18:33,831 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 10, 'type': 'event', 'event': 'output', 'body': {'category': 'console', 'output': 'Launched process 14283\n'}}
2024-10-18 09:18:33,832 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 11, 'type': 'response', 'request_seq': 1, 'success': True, 'command': 'launch'}
2024-10-18 09:18:33,833 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 12, 'type': 'response', 'request_seq': 6, 'success': True, 'command': 'configurationDone'}
2024-10-18 09:18:33,837 - DEBUG - debug_adapter_connection.py:205 - 0 - Sending Message: {"command": "threads", "seq": 7, "type": "request"}
2024-10-18 09:18:33,837 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 13, 'type': 'event', 'event': 'module', 'body': {'module': {'id': '100000000', 'name': ''}, 'reason': 'removed'}}
2024-10-18 09:18:33,838 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 14, 'type': 'event', 'event': 'breakpoint', 'body': {'breakpoint': {'id': 1, 'line': 4, 'message': 'Resolved locations: 1', 'verified': True}, 'reason': 'changed'}}
2024-10-18 09:18:33,839 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 15, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '100010000', 'id': '100010000', 'name': 'dyld', 'path': '/usr/lib/dyld', 'symbolFilePath': '/usr/lib/dyld', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,839 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 16, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '100000000', 'id': '100000000', 'name': 'eg', 'path': '/Users/kylekent/Desktop/tmp/vimspector_bug1/eg', 'symbolFilePath': '/Users/kylekent/Desktop/tmp/vimspector_bug1/eg', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,839 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 17, 'type': 'event', 'event': 'continued', 'body': {'allThreadsContinued': True, 'threadId': 14482768}}
2024-10-18 09:18:33,840 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 18, 'type': 'event', 'event': 'module', 'body': {'module': {'id': 'FFFFFFFFFFFFFFFF', 'name': ''}, 'reason': 'removed'}}
2024-10-18 09:18:33,840 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 19, 'type': 'event', 'event': 'breakpoint', 'body': {'breakpoint': {'id': 1, 'line': 4, 'message': 'Resolved locations: 1', 'verified': True}, 'reason': 'changed'}}
2024-10-18 09:18:33,841 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 20, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18D9AB000', 'id': '18D9AB000', 'name': 'dyld', 'path': '/usr/lib/dyld', 'symbolFilePath': '/usr/lib/dyld', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,841 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 21, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '100000000', 'id': '100000000', 'name': 'eg', 'path': '/Users/kylekent/Desktop/tmp/vimspector_bug1/eg', 'symbolFilePath': '/Users/kylekent/Desktop/tmp/vimspector_bug1/eg', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,841 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 22, 'type': 'response', 'request_seq': 7, 'success': True, 'command': 'threads', 'body': {'threads': [{'id': 14482768, 'name': '1: tid=14482768'}]}}
2024-10-18 09:18:33,882 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 23, 'type': 'event', 'event': 'breakpoint', 'body': {'breakpoint': {'id': 2, 'message': 'Resolved locations: 2', 'verified': True}, 'reason': 'changed'}}
2024-10-18 09:18:33,883 - WARNING - breakpoints.py:561 - 0 - Unexpected update to breakpoint with id 2:breakpiont not found. {'id': 2, 'message': 'Resolved locations: 2', 'verified': True}
2024-10-18 09:18:33,883 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 24, 'type': 'event', 'event': 'breakpoint', 'body': {'breakpoint': {'id': 2, 'message': 'Resolved locations: 2', 'verified': True}, 'reason': 'changed'}}
2024-10-18 09:18:33,883 - WARNING - breakpoints.py:561 - 0 - Unexpected update to breakpoint with id 2:breakpiont not found. {'id': 2, 'message': 'Resolved locations: 2', 'verified': True}
2024-10-18 09:18:33,883 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 25, 'type': 'event', 'event': 'breakpoint', 'body': {'breakpoint': {'id': 2, 'message': 'Resolved locations: 2', 'verified': True}, 'reason': 'changed'}}
2024-10-18 09:18:33,883 - WARNING - breakpoints.py:561 - 0 - Unexpected update to breakpoint with id 2:breakpiont not found. {'id': 2, 'message': 'Resolved locations: 2', 'verified': True}
2024-10-18 09:18:33,883 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 26, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DC45000', 'id': '18DC45000', 'name': 'libc++.1.dylib', 'path': '/usr/lib/libc++.1.dylib', 'symbolFilePath': '/usr/lib/libc++.1.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 27, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A581000', 'id': '19A581000', 'name': 'libSystem.B.dylib', 'path': '/usr/lib/libSystem.B.dylib', 'symbolFilePath': '/usr/lib/libSystem.B.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 28, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DCD3000', 'id': '18DCD3000', 'name': 'libc++abi.dylib', 'path': '/usr/lib/libc++abi.dylib', 'symbolFilePath': '/usr/lib/libc++abi.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 29, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A57B000', 'id': '19A57B000', 'name': 'libcache.dylib', 'path': '/usr/lib/system/libcache.dylib', 'symbolFilePath': '/usr/lib/system/libcache.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 30, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A537000', 'id': '19A537000', 'name': 'libcommonCrypto.dylib', 'path': '/usr/lib/system/libcommonCrypto.dylib', 'symbolFilePath': '/usr/lib/system/libcommonCrypto.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 31, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A562000', 'id': '19A562000', 'name': 'libcompiler_rt.dylib', 'path': '/usr/lib/system/libcompiler_rt.dylib', 'symbolFilePath': '/usr/lib/system/libcompiler_rt.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 32, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A558000', 'id': '19A558000', 'name': 'libcopyfile.dylib', 'path': '/usr/lib/system/libcopyfile.dylib', 'symbolFilePath': '/usr/lib/system/libcopyfile.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 33, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DAA7000', 'id': '18DAA7000', 'name': 'libcorecrypto.dylib', 'path': '/usr/lib/system/libcorecrypto.dylib', 'symbolFilePath': '/usr/lib/system/libcorecrypto.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 34, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DB7C000', 'id': '18DB7C000', 'name': 'libdispatch.dylib', 'path': '/usr/lib/system/libdispatch.dylib', 'symbolFilePath': '/usr/lib/system/libdispatch.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 35, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DD33000', 'id': '18DD33000', 'name': 'libdyld.dylib', 'path': '/usr/lib/system/libdyld.dylib', 'symbolFilePath': '/usr/lib/system/libdyld.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 36, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A571000', 'id': '19A571000', 'name': 'libkeymgr.dylib', 'path': '/usr/lib/system/libkeymgr.dylib', 'symbolFilePath': '/usr/lib/system/libkeymgr.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 37, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A50F000', 'id': '19A50F000', 'name': 'libmacho.dylib', 'path': '/usr/lib/system/libmacho.dylib', 'symbolFilePath': '/usr/lib/system/libmacho.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 38, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '199AAC000', 'id': '199AAC000', 'name': 'libquarantine.dylib', 'path': '/usr/lib/system/libquarantine.dylib', 'symbolFilePath': '/usr/lib/system/libquarantine.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 39, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A56E000', 'id': '19A56E000', 'name': 'libremovefile.dylib', 'path': '/usr/lib/system/libremovefile.dylib', 'symbolFilePath': '/usr/lib/system/libremovefile.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 40, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '1933F4000', 'id': '1933F4000', 'name': 'libsystem_asl.dylib', 'path': '/usr/lib/system/libsystem_asl.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_asl.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 41, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DA40000', 'id': '18DA40000', 'name': 'libsystem_blocks.dylib', 'path': '/usr/lib/system/libsystem_blocks.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_blocks.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 42, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DBC6000', 'id': '18DBC6000', 'name': 'libsystem_c.dylib', 'path': '/usr/lib/system/libsystem_c.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_c.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 43, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A566000', 'id': '19A566000', 'name': 'libsystem_collections.dylib', 'path': '/usr/lib/system/libsystem_collections.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_collections.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 44, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '198D89000', 'id': '198D89000', 'name': 'libsystem_configuration.dylib', 'path': '/usr/lib/system/libsystem_configuration.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_configuration.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 45, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '197E0F000', 'id': '197E0F000', 'name': 'libsystem_containermanager.dylib', 'path': '/usr/lib/system/libsystem_containermanager.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_containermanager.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 46, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A1B2000', 'id': '19A1B2000', 'name': 'libsystem_coreservices.dylib', 'path': '/usr/lib/system/libsystem_coreservices.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_coreservices.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 47, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '1910CF000', 'id': '1910CF000', 'name': 'libsystem_darwin.dylib', 'path': '/usr/lib/system/libsystem_darwin.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_darwin.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 48, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '22D20E000', 'id': '22D20E000', 'name': 'libsystem_darwindirectory.dylib', 'path': '/usr/lib/system/libsystem_darwindirectory.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_darwindirectory.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 49, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A572000', 'id': '19A572000', 'name': 'libsystem_dnssd.dylib', 'path': '/usr/lib/system/libsystem_dnssd.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_dnssd.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 50, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DBC3000', 'id': '18DBC3000', 'name': 'libsystem_featureflags.dylib', 'path': '/usr/lib/system/libsystem_featureflags.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_featureflags.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 51, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DD5F000', 'id': '18DD5F000', 'name': 'libsystem_info.dylib', 'path': '/usr/lib/system/libsystem_info.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_info.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,884 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 52, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A4D4000', 'id': '19A4D4000', 'name': 'libsystem_m.dylib', 'path': '/usr/lib/system/libsystem_m.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_m.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 53, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DB45000', 'id': '18DB45000', 'name': 'libsystem_malloc.dylib', 'path': '/usr/lib/system/libsystem_malloc.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_malloc.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 54, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '193364000', 'id': '193364000', 'name': 'libsystem_networkextension.dylib', 'path': '/usr/lib/system/libsystem_networkextension.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_networkextension.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 55, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '191541000', 'id': '191541000', 'name': 'libsystem_notify.dylib', 'path': '/usr/lib/system/libsystem_notify.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_notify.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 56, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '198D8E000', 'id': '198D8E000', 'name': 'libsystem_sandbox.dylib', 'path': '/usr/lib/system/libsystem_sandbox.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_sandbox.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 57, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A56B000', 'id': '19A56B000', 'name': 'libsystem_secinit.dylib', 'path': '/usr/lib/system/libsystem_secinit.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_secinit.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 58, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DCEB000', 'id': '18DCEB000', 'name': 'libsystem_kernel.dylib', 'path': '/usr/lib/system/libsystem_kernel.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_kernel.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 59, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DD58000', 'id': '18DD58000', 'name': 'libsystem_platform.dylib', 'path': '/usr/lib/system/libsystem_platform.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_platform.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 60, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DD26000', 'id': '18DD26000', 'name': 'libsystem_pthread.dylib', 'path': '/usr/lib/system/libsystem_pthread.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_pthread.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 61, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '194DAB000', 'id': '194DAB000', 'name': 'libsystem_symptoms.dylib', 'path': '/usr/lib/system/libsystem_symptoms.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_symptoms.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 62, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DA8C000', 'id': '18DA8C000', 'name': 'libsystem_trace.dylib', 'path': '/usr/lib/system/libsystem_trace.dylib', 'symbolFilePath': '/usr/lib/system/libsystem_trace.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 63, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A545000', 'id': '19A545000', 'name': 'libunwind.dylib', 'path': '/usr/lib/system/libunwind.dylib', 'symbolFilePath': '/usr/lib/system/libunwind.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 64, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18DA45000', 'id': '18DA45000', 'name': 'libxpc.dylib', 'path': '/usr/lib/system/libxpc.dylib', 'symbolFilePath': '/usr/lib/system/libxpc.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 65, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '18D95C000', 'id': '18D95C000', 'name': 'libobjc.A.dylib', 'path': '/usr/lib/libobjc.A.dylib', 'symbolFilePath': '/usr/lib/libobjc.A.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,885 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 66, 'type': 'event', 'event': 'module', 'body': {'module': {'addressRange': '19A550000', 'id': '19A550000', 'name': 'liboah.dylib', 'path': '/usr/lib/liboah.dylib', 'symbolFilePath': '/usr/lib/liboah.dylib', 'symbolStatus': 'Symbols loaded.'}, 'reason': 'new'}}
2024-10-18 09:18:33,887 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 67, 'type': 'event', 'event': 'stopped', 'body': {'allThreadsStopped': True, 'reason': 'breakpoint', 'threadId': 14482768}}
2024-10-18 09:18:33,890 - DEBUG - debug_adapter_connection.py:205 - 0 - Sending Message: {"command": "threads", "seq": 8, "type": "request"}
2024-10-18 09:18:33,891 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 68, 'type': 'response', 'request_seq': 8, 'success': True, 'command': 'threads', 'body': {'threads': [{'id': 14482768, 'name': '1: tid=14482768'}]}}
2024-10-18 09:18:33,891 - DEBUG - debug_adapter_connection.py:205 - 0 - Sending Message: {"command": "stackTrace", "arguments": {"threadId": 14482768}, "seq": 9, "type": "request"}
2024-10-18 09:18:33,893 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 69, 'type': 'response', 'request_seq': 9, 'success': True, 'command': 'stackTrace', 'body': {'stackFrames': [{'column': 14, 'id': 1001, 'instructionPointerReference': '0x100001D3C', 'line': 4, 'name': 'main', 'source': {'name': 'eg.cpp', 'path': '/Users/kylekent/Desktop/tmp/vimspector_bug1/eg.cpp'}}, {'column': 0, 'id': 1002, 'instructionPointerReference': '0x18D9B10E0', 'line': 593, 'name': 'start', 'presentationHint': 'subtle', 'source': {'name': '@start', 'sourceReference': 1000}}]}}
2024-10-18 09:18:33,896 - DEBUG - debug_adapter_connection.py:205 - 0 - Sending Message: {"command": "scopes", "arguments": {"frameId": 1001}, "seq": 10, "type": "request"}
2024-10-18 09:18:33,900 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 70, 'type': 'response', 'request_seq': 10, 'success': True, 'command': 'scopes', 'body': {'scopes': [{'expensive': False, 'name': 'Local', 'variablesReference': 1003}, {'expensive': False, 'name': 'Static', 'variablesReference': 1004}, {'expensive': False, 'name': 'Global', 'variablesReference': 1005}, {'expensive': False, 'name': 'Registers', 'variablesReference': 1006}]}}
2024-10-18 09:18:33,900 - DEBUG - debug_adapter_connection.py:205 - 0 - Sending Message: {"command": "variables", "arguments": {"variablesReference": 1003}, "seq": 11, "type": "request"}
2024-10-18 09:18:33,910 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 71, 'type': 'response', 'request_seq': 11, 'success': True, 'command': 'variables', 'body': {'variables': [{'evaluateName': 'm', 'memoryReference': '0x16FDFF070', 'name': 'm', 'presentationHint': {'attributes': ['readOnly']}, 'type': 'std::map<char, int>', 'value': 'size=4294967295', 'variablesReference': 1007}]}}
2024-10-18 09:18:36,340 - DEBUG - debug_adapter_connection.py:205 - 0 - Sending Message: {"command": "variables", "arguments": {"variablesReference": 1007}, "seq": 12, "type": "request"}
2024-10-18 09:18:41,342 - DEBUG - debug_adapter_connection.py:266 - 0 - Message received: {'seq': 72, 'type': 'event', 'event': 'output', 'body': {'category': 'stderr', 'output': 'Child list expansion has timed out.\n'}}


### Vim version

```Text
NVIM v0.9.4
Build type: Release
LuaJIT 2.1.1697887905

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/opt/homebrew/Cellar/neovim/0.9.4/share/nvim"

Run :checkhealth for more info


### Python version

3.11.6 (main, Oct  2 2023, 20:46:14) [Clang 14.0.3 (clang-1403.0.22.14.1)]

### Neovim diagnostics

```Text
==============================================================================
coc: health#coc#check

- OK nvim version satisfied
- OK Environment check passed
- OK Javascript bundle build/index.js found
- OK Service started

==============================================================================
nvim: require("nvim.health").check()

Configuration ~
- OK no issues found

Runtime ~
- OK $VIMRUNTIME: /opt/homebrew/Cellar/neovim/0.9.4/share/nvim/runtime

Performance ~
- OK Build type: Release

Remote Plugins ~
- OK Up to date

terminal ~
- key_backspace (kbs) terminfo entry: `key_backspace=^H`
- key_dc (kdch1) terminfo entry: `key_dc=\E[3~`
- $TERM_PROGRAM="iTerm.app"
- $COLORTERM="truecolor"

==============================================================================
nvim-treesitter: require("nvim-treesitter.health").check()

Installation ~
- OK `tree-sitter` found 0.20.8 (parser generator, only needed for :TSInstallFromGrammar)
- OK `node` found v22.9.0 (only needed for :TSInstallFromGrammar)
- OK `git` executable found.
- OK `cc` executable found. Selected from { vim.NIL, "cc", "gcc", "clang", "cl", "zig" }
  Version: Apple clang version 15.0.0 (clang-1500.0.40.1)
- OK Neovim was compiled with tree-sitter runtime ABI version 14 (required >=13). Parsers must be compatible with runtime ABI.

OS Info:
{
  machine = "arm64",
  release = "23.1.0",
  sysname = "Darwin",
  version = "Darwin Kernel Version 23.1.0: Mon Oct  9 21:27:24 PDT 2023; root:xnu-10002.41.9~6/RELEASE_ARM64_T6000"
} ~

Parser/Features         H L F I J
  - arduino             ✓ ✓ ✓ ✓ ✓
  - bash                ✓ ✓ ✓ . ✓
  - c                   ✓ ✓ ✓ ✓ ✓
  - cmake               ✓ . ✓ ✓ ✓
  - cpp                 ✓ ✓ ✓ ✓ ✓
  - css                 ✓ . ✓ ✓ ✓
  - csv                 ✓ . . . .
  - dockerfile          ✓ . . . ✓
  - gitignore           ✓ . . . ✓
  - html                ✓ ✓ ✓ ✓ ✓
  - htmldjango          ✓ . ✓ ✓ ✓
  - ini                 ✓ . ✓ . ✓
  - javascript          ✓ ✓ ✓ ✓ ✓
  - json                ✓ ✓ ✓ ✓ .
  - lua                 ✓ ✓ ✓ ✓ ✓
  - markdown            ✓ . ✓ ✓ ✓
  - proto               ✓ . ✓ ✓ ✓
  - python              ✓ ✓ ✓ ✓ ✓
  - query               ✓ ✓ ✓ ✓ ✓
  - rust                ✓ ✓ ✓ ✓ ✓
  - sql                 ✓ . . ✓ ✓
  - typescript          ✓ ✓ ✓ ✓ ✓
  - vim                 ✓ ✓ ✓ . ✓
  - vimdoc              ✓ . . . ✓
  - yaml                ✓ ✓ ✓ ✓ ✓

  Legend: H[ighlight], L[ocals], F[olds], I[ndents], In[j]ections
         +) multiple parsers found, only one will be used
         x) errors found in the query, try to run :TSUpdate {lang} ~

==============================================================================
provider: health#provider#check

Clipboard (optional) ~
- OK Clipboard tool found: pbcopy

Python 3 provider (optional) ~
- `g:python3_host_prog` is not set.  Searching for python3.11 in the environment.
- Executable: /opt/homebrew/bin/python3.11
- Python version: 3.11.6
- pynvim version: 0.5.0
- OK Latest pynvim is installed.

Python virtualenv ~
- OK no $VIRTUAL_ENV

Ruby provider (optional) ~
- Ruby: ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin23]
- WARNING `neovim-ruby-host` not found.
  - ADVICE:
    - Run `gem install neovim` to ensure the neovim RubyGem is installed.
    - Run `gem environment` to ensure the gem bin directory is in $PATH.
    - If you are using rvm/rbenv/chruby, try "rehashing".
    - See :help |g:ruby_host_prog| for non-standard gem installations.
    - You may disable this provider (and warning) by adding `let g:loaded_ruby_provider = 0` to your init.vim

Node.js provider (optional) ~
- Node.js: v22.9.0
- Nvim node.js host: /opt/homebrew/lib/node_modules/neovim/bin/cli.js
- WARNING Package "neovim" is out-of-date. Installed: 4.10.1, latest: 5.3.0
  - ADVICE:
    - Run in shell: npm install -g neovim
    - Run in shell (if you use yarn): yarn global add neovim
    - Run in shell (if you use pnpm): pnpm install -g neovim

Perl provider (optional) ~
- WARNING "Neovim::Ext" cpan module is not installed
  - ADVICE:
    - See :help |provider-perl| for more information.
    - You may disable this provider (and warning) by adding `let g:loaded_perl_provider = 0` to your init.vim

==============================================================================
vim.lsp: require("vim.lsp.health").check()

- LSP log level : WARN
- Log path: /Users/kylekent/.local/state/nvim/lsp.log
- Log size: 0 KB

vim.lsp: Active Clients ~
- No active clients

==============================================================================
vim.treesitter: require("vim.treesitter.health").check()

- Nvim runtime ABI version: 14
- OK Parser: arduino    ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/arduino.so
- OK Parser: bash       ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/bash.so
- OK Parser: c          ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/c.so
- OK Parser: cmake      ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/cmake.so
- OK Parser: cpp        ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/cpp.so
- OK Parser: css        ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/css.so
- OK Parser: csv        ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/csv.so
- OK Parser: dockerfile ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/dockerfile.so
- OK Parser: gitignore  ABI: 13, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/gitignore.so
- OK Parser: html       ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/html.so
- OK Parser: htmldjango ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/htmldjango.so
- OK Parser: ini        ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/ini.so
- OK Parser: javascript ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/javascript.so
- OK Parser: json       ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/json.so
- OK Parser: lua        ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/lua.so
- OK Parser: markdown   ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/markdown.so
- OK Parser: proto      ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/proto.so
- OK Parser: python     ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/python.so
- OK Parser: query      ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/query.so
- OK Parser: rust       ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/rust.so
- OK Parser: sql        ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/sql.so
- OK Parser: typescript ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/typescript.so
- OK Parser: vim        ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/vim.so
- OK Parser: vimdoc     ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/vimdoc.so
- OK Parser: yaml       ABI: 14, path: /Users/kylekent/.local/share/nvim/plugged/nvim-treesitter/parser/yaml.so
- OK Parser: c          ABI: 14, path: /opt/homebrew/Cellar/neovim/0.9.4/lib/nvim/parser/c.so
- OK Parser: lua        ABI: 14, path: /opt/homebrew/Cellar/neovim/0.9.4/lib/nvim/parser/lua.so
- OK Parser: query      ABI: 14, path: /opt/homebrew/Cellar/neovim/0.9.4/lib/nvim/parser/query.so
- OK Parser: vim        ABI: 14, path: /opt/homebrew/Cellar/neovim/0.9.4/lib/nvim/parser/vim.so
- OK Parser: vimdoc     ABI: 14, path: /opt/homebrew/Cellar/neovim/0.9.4/lib/nvim/parser/vimdoc.so

Operating System

Darwin Kyles-MBP-2.attlocal.net 23.1.0 Darwin Kernel Version 23.1.0: Mon Oct 9 21:27:24 PDT 2023; root:xnu-10002.41.9~6/RELEASE_ARM64_T6000 arm64

Declaration

@kentkr
Copy link
Author

kentkr commented Oct 29, 2024

So this actually does replicate in vim.

Luckily on further inspection just waiting +30s to let vimspector do its thing allows it to function. The problem must've been running things like :VimspectorRestart in the middle of a process.

This doesn't occur in lldb on its own, so vimspector isn't working as expected. I'm happy to help profile and contribute if needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant