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

lsp server doesn't start using coc.vim #2230

Closed
ajkaanbal opened this issue Mar 11, 2022 · 65 comments
Closed

lsp server doesn't start using coc.vim #2230

ajkaanbal opened this issue Mar 11, 2022 · 65 comments
Labels
bug lsp-server graphql-language-service-server

Comments

@ajkaanbal
Copy link

I'm having the same issue described here:

neoclide/coc.nvim#3687

and here:

https://stackoverflow.com/questions/68750196/graphql-lsp-with-coc-neovim

I gather these logs:

vim version: NVIM v0.7.0-dev+1233-gabbc9148d
node version: v17.5.0
coc.nvim version: 0.0.80-a554a31c 2022-03-11 19:04:48 +0800
coc.nvim directory: $HOME/.vim/bundle/coc.nvim
term: tmux
platform: linux

## Log of coc.nvim


2022-03-11T09:17:35.905 INFO (pid:3255126) [services] - registered service "languageserver.graphql"
2022-03-11T09:17:35.908 INFO (pid:3255126) [services] - graphql state change: stopped => starting
2022-03-11T09:17:35.935 INFO (pid:3255126) [plugin] - coc.nvim initialized with node: v17.5.0 after 87ms
2022-03-11T09:17:35.940 INFO (pid:3255126) [language-client-index] - Language server "languageserver.graphql" started with 3255169
2022-03-11T09:17:36.264 INFO (pid:3255126) [services] - graphql state change: starting => running
2022-03-11T09:17:36.268 INFO (pid:3255126) [services] - service languageserver.graphql started
2022-03-11T09:17:36.312 INFO (pid:3255126) [services] - graphql state change: running => stopped
2022-03-11T09:17:36.312 INFO (pid:3255126) [services] - graphql state change: stopped => starting
2022-03-11T09:17:36.315 INFO (pid:3255126) [language-client-index] - Language server "languageserver.graphql" started with 3255218
2022-03-11T09:17:36.633 INFO (pid:3255126) [services] - graphql state change: starting => running
2022-03-11T09:17:36.678 INFO (pid:3255126) [services] - graphql state change: running => stopped
2022-03-11T09:17:36.678 INFO (pid:3255126) [services] - graphql state change: stopped => starting
2022-03-11T09:17:36.680 INFO (pid:3255126) [language-client-index] - Language server "languageserver.graphql" started with 3255249
2022-03-11T09:17:36.991 INFO (pid:3255126) [services] - graphql state change: starting => running
2022-03-11T09:17:37.034 INFO (pid:3255126) [services] - graphql state change: running => stopped
2022-03-11T09:17:37.034 INFO (pid:3255126) [services] - graphql state change: stopped => starting
2022-03-11T09:17:37.037 INFO (pid:3255126) [language-client-index] - Language server "languageserver.graphql" started with 3255260
2022-03-11T09:17:37.342 INFO (pid:3255126) [services] - graphql state change: starting => running
2022-03-11T09:17:37.386 INFO (pid:3255126) [services] - graphql state change: running => stopped
2022-03-11T09:17:40.344 INFO (pid:3255126) [attach] - receive notification: showInfo []
@acao
Copy link
Member

acao commented Mar 23, 2022

@orta it seems those LSP server improvements may be causing some issues with other LSP clients, hmmm

@acao acao added lsp-server graphql-language-service-server bug ide extensions labels Mar 23, 2022
@orta
Copy link
Member

orta commented Mar 23, 2022

The only changes I've made have been to update the babel parser, which shouldn't be causing this I imagine - can coc.vim use a different logging level to show some useful information?

@acao
Copy link
Member

acao commented Mar 23, 2022

@orta true, in those changes you aren’t using the output channel any differently than before that would cause this.

@ajkaanbal i have never used nvim.coc, but looking at the resolution to the issue you referenced, did you try this trace.server: ‘verbose’ config? Does it show additional log output?

https://github.com/neoclide/coc.nvim/wiki/Debug-language-server#using-output-channel

@ajkaanbal
Copy link
Author

ajkaanbal commented Mar 23, 2022

:CocCommand workspace.showOutput gave me these:

View coc logs
[Trace - 3:25:01 PM] Sending request 'initialize - (0)'.
Params: {
    "processId": 1370759,
    "rootPath": "/tmp",
    "rootUri": "file:///tmp",
    "capabilities": {
        "workspace": {
            "applyEdit": true,
            "workspaceEdit": {
                "documentChanges": true,
                "resourceOperations": [
                    "create",
                    "rename",
                    "delete"
                ],
                "failureHandling": "textOnlyTransactional",
                "normalizesLineEndings": true
            },
            "didChangeConfiguration": {
                "dynamicRegistration": true
            },
            "didChangeWatchedFiles": {
                "dynamicRegistration": true
            },
            "symbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                }
            },
            "codeLens": {
                "refreshSupport": true
            },
            "executeCommand": {
                "dynamicRegistration": true
            },
            "configuration": true,
            "fileOperations": {
                "dynamicRegistration": true,
                "didCreate": true,
                "didRename": true,
                "didDelete": true,
                "willCreate": true,
                "willRename": true,
                "willDelete": true
            },
            "semanticTokens": {
                "refreshSupport": true
            },
            "workspaceFolders": true
        },
        "textDocument": {
            "publishDiagnostics": {
                "relatedInformation": true,
                "versionSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1,
                        2
                    ]
                },
                "codeDescriptionSupport": true,
                "dataSupport": true
            },
            "synchronization": {
                "dynamicRegistration": true,
                "willSave": true,
                "willSaveWaitUntil": true,
                "didSave": true
            },
            "completion": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "completionItem": {
                    "snippetSupport": true,
                    "commitCharactersSupport": true,
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "deprecatedSupport": true,
                    "preselectSupport": true,
                    "insertReplaceSupport": true,
                    "tagSupport": {
                        "valueSet": [
                            1
                        ]
                    },
                    "resolveSupport": {
                        "properties": [
                            "documentation",
                            "detail",
                            "additionalTextEdits"
                        ]
                    },
                    "insertTextModeSupport": {
                        "valueSet": [
                            1,
                            2
                        ]
                    }
                },
                "completionItemKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25
                    ]
                },
                "insertTextMode": 2
            },
            "hover": {
                "dynamicRegistration": true,
                "contentFormat": [
                    "markdown",
                    "plaintext"
                ]
            },
            "signatureHelp": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "signatureInformation": {
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "activeParameterSupport": true,
                    "parameterInformation": {
                        "labelOffsetSupport": true
                    }
                }
            },
            "references": {
                "dynamicRegistration": true
            },
            "definition": {
                "dynamicRegistration": true
            },
            "documentHighlight": {
                "dynamicRegistration": true
            },
            "documentSymbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "hierarchicalDocumentSymbolSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                },
                "labelSupport": true
            },
            "codeAction": {
                "dynamicRegistration": true,
                "isPreferredSupport": true,
                "disabledSupport": true,
                "dataSupport": true,
                "honorsChangeAnnotations": false,
                "resolveSupport": {
                    "properties": [
                        "edit"
                    ]
                },
                "codeActionLiteralSupport": {
                    "codeActionKind": {
                        "valueSet": [
                            "",
                            "quickfix",
                            "refactor",
                            "refactor.extract",
                            "refactor.inline",
                            "refactor.rewrite",
                            "source",
                            "source.organizeImports"
                        ]
                    }
                }
            },
            "codeLens": {
                "dynamicRegistration": true
            },
            "formatting": {
                "dynamicRegistration": true
            },
            "rangeFormatting": {
                "dynamicRegistration": true
            },
            "onTypeFormatting": {
                "dynamicRegistration": true
            },
            "rename": {
                "dynamicRegistration": true,
                "prepareSupport": true
            },
            "documentLink": {
                "dynamicRegistration": true,
                "tooltipSupport": true
            },
            "typeDefinition": {
                "dynamicRegistration": true
            },
            "implementation": {
                "dynamicRegistration": true
            },
            "declaration": {
                "dynamicRegistration": true
            },
            "colorProvider": {
                "dynamicRegistration": true
            },
            "foldingRange": {
                "dynamicRegistration": true,
                "rangeLimit": 5000,
                "lineFoldingOnly": true
            },
            "selectionRange": {
                "dynamicRegistration": true
            },
            "callHierarchy": {
                "dynamicRegistration": true
            },
            "linkedEditingRange": {
                "dynamicRegistration": true
            },
            "semanticTokens": {
                "dynamicRegistration": true,
                "tokenTypes": [
                    "namespace",
                    "type",
                    "class",
                    "enum",
                    "interface",
                    "struct",
                    "typeParameter",
                    "parameter",
                    "variable",
                    "property",
                    "enumMember",
                    "event",
                    "function",
                    "method",
                    "macro",
                    "keyword",
                    "modifier",
                    "comment",
                    "string",
                    "number",
                    "regexp",
                    "operator"
                ],
                "tokenModifiers": [
                    "declaration",
                    "definition",
                    "readonly",
                    "static",
                    "deprecated",
                    "abstract",
                    "async",
                    "modification",
                    "documentation",
                    "defaultLibrary"
                ],
                "formats": [
                    "relative"
                ],
                "requests": {
                    "range": true,
                    "full": {
                        "delta": true
                    }
                },
                "multilineTokenSupport": false,
                "overlappingTokenSupport": false
            }
        },
        "window": {
            "showMessage": {
                "messageActionItem": {
                    "additionalPropertiesSupport": true
                }
            },
            "showDocument": {
                "support": true
            },
            "workDoneProgress": true
        },
        "general": {
            "regularExpressions": {
                "engine": "ECMAScript",
                "version": "ES2020"
            },
            "markdown": {
                "parser": "marked",
                "version": "4.0.10"
            }
        }
    },
    "initializationOptions": {},
    "trace": "verbose",
    "workspaceFolders": [
        {
            "uri": "file:///tmp",
            "name": "tmp"
        }
    ],
    "locale": "en_US",
    "clientInfo": {
        "name": "coc.nvim",
        "version": "0.0.80"
    },
    "workDoneToken": "5002ca39-48d1-4240-8d65-da97eda2781c"
}


3/23/2022, 3:25:01 PM [3] (pid: 1370851) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}
[Trace - 3:25:01 PM] Received response 'initialize - (0)' in 362ms.
Result: {
    "capabilities": {
        "workspaceSymbolProvider": true,
        "documentSymbolProvider": true,
        "completionProvider": {
            "resolveProvider": true,
            "triggerCharacters": [
                " ",
                ":",
                "$",
                "\n",
                " ",
                "(",
                "@"
            ]
        },
        "definitionProvider": true,
        "textDocumentSync": 1,
        "hoverProvider": true,
        "workspace": {
            "workspaceFolders": {
                "supported": true,
                "changeNotifications": true
            }
        }
    }
}


[Trace - 3:25:01 PM] Sending notification 'initialized'.
Params: {}


[Trace - 3:25:01 PM] Sending notification 'workspace/didChangeConfiguration'.
Params: {
    "settings": {}
}


[Trace - 3:25:01 PM] Sending notification 'textDocument/didOpen'.
Params: {
    "textDocument": {
        "uri": "file:///tmp/test.graphql",
        "languageId": "graphql",
        "version": 1,
        "text": "\n"
    }
}


[Info  - 3:25:01 PM] Connection to server got closed. Server will restart.
[Trace - 3:25:01 PM] Sending request 'initialize - (0)'.
Params: {
    "processId": 1370759,
    "rootPath": "/tmp",
    "rootUri": "file:///tmp",
    "capabilities": {
        "workspace": {
            "applyEdit": true,
            "workspaceEdit": {
                "documentChanges": true,
                "resourceOperations": [
                    "create",
                    "rename",
                    "delete"
                ],
                "failureHandling": "textOnlyTransactional",
                "normalizesLineEndings": true
            },
            "didChangeConfiguration": {
                "dynamicRegistration": true
            },
            "didChangeWatchedFiles": {
                "dynamicRegistration": true
            },
            "symbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                }
            },
            "codeLens": {
                "refreshSupport": true
            },
            "executeCommand": {
                "dynamicRegistration": true
            },
            "configuration": true,
            "fileOperations": {
                "dynamicRegistration": true,
                "didCreate": true,
                "didRename": true,
                "didDelete": true,
                "willCreate": true,
                "willRename": true,
                "willDelete": true
            },
            "semanticTokens": {
                "refreshSupport": true
            },
            "workspaceFolders": true
        },
        "textDocument": {
            "publishDiagnostics": {
                "relatedInformation": true,
                "versionSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1,
                        2
                    ]
                },
                "codeDescriptionSupport": true,
                "dataSupport": true
            },
            "synchronization": {
                "dynamicRegistration": true,
                "willSave": true,
                "willSaveWaitUntil": true,
                "didSave": true
            },
            "completion": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "completionItem": {
                    "snippetSupport": true,
                    "commitCharactersSupport": true,
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "deprecatedSupport": true,
                    "preselectSupport": true,
                    "insertReplaceSupport": true,
                    "tagSupport": {
                        "valueSet": [
                            1
                        ]
                    },
                    "resolveSupport": {
                        "properties": [
                            "documentation",
                            "detail",
                            "additionalTextEdits"
                        ]
                    },
                    "insertTextModeSupport": {
                        "valueSet": [
                            1,
                            2
                        ]
                    }
                },
                "completionItemKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25
                    ]
                },
                "insertTextMode": 2
            },
            "hover": {
                "dynamicRegistration": true,
                "contentFormat": [
                    "markdown",
                    "plaintext"
                ]
            },
            "signatureHelp": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "signatureInformation": {
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "activeParameterSupport": true,
                    "parameterInformation": {
                        "labelOffsetSupport": true
                    }
                }
            },
            "references": {
                "dynamicRegistration": true
            },
            "definition": {
                "dynamicRegistration": true
            },
            "documentHighlight": {
                "dynamicRegistration": true
            },
            "documentSymbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "hierarchicalDocumentSymbolSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                },
                "labelSupport": true
            },
            "codeAction": {
                "dynamicRegistration": true,
                "isPreferredSupport": true,
                "disabledSupport": true,
                "dataSupport": true,
                "honorsChangeAnnotations": false,
                "resolveSupport": {
                    "properties": [
                        "edit"
                    ]
                },
                "codeActionLiteralSupport": {
                    "codeActionKind": {
                        "valueSet": [
                            "",
                            "quickfix",
                            "refactor",
                            "refactor.extract",
                            "refactor.inline",
                            "refactor.rewrite",
                            "source",
                            "source.organizeImports"
                        ]
                    }
                }
            },
            "codeLens": {
                "dynamicRegistration": true
            },
            "formatting": {
                "dynamicRegistration": true
            },
            "rangeFormatting": {
                "dynamicRegistration": true
            },
            "onTypeFormatting": {
                "dynamicRegistration": true
            },
            "rename": {
                "dynamicRegistration": true,
                "prepareSupport": true
            },
            "documentLink": {
                "dynamicRegistration": true,
                "tooltipSupport": true
            },
            "typeDefinition": {
                "dynamicRegistration": true
            },
            "implementation": {
                "dynamicRegistration": true
            },
            "declaration": {
                "dynamicRegistration": true
            },
            "colorProvider": {
                "dynamicRegistration": true
            },
            "foldingRange": {
                "dynamicRegistration": true,
                "rangeLimit": 5000,
                "lineFoldingOnly": true
            },
            "selectionRange": {
                "dynamicRegistration": true
            },
            "callHierarchy": {
                "dynamicRegistration": true
            },
            "linkedEditingRange": {
                "dynamicRegistration": true
            },
            "semanticTokens": {
                "dynamicRegistration": true,
                "tokenTypes": [
                    "namespace",
                    "type",
                    "class",
                    "enum",
                    "interface",
                    "struct",
                    "typeParameter",
                    "parameter",
                    "variable",
                    "property",
                    "enumMember",
                    "event",
                    "function",
                    "method",
                    "macro",
                    "keyword",
                    "modifier",
                    "comment",
                    "string",
                    "number",
                    "regexp",
                    "operator"
                ],
                "tokenModifiers": [
                    "declaration",
                    "definition",
                    "readonly",
                    "static",
                    "deprecated",
                    "abstract",
                    "async",
                    "modification",
                    "documentation",
                    "defaultLibrary"
                ],
                "formats": [
                    "relative"
                ],
                "requests": {
                    "range": true,
                    "full": {
                        "delta": true
                    }
                },
                "multilineTokenSupport": false,
                "overlappingTokenSupport": false
            }
        },
        "window": {
            "showMessage": {
                "messageActionItem": {
                    "additionalPropertiesSupport": true
                }
            },
            "showDocument": {
                "support": true
            },
            "workDoneProgress": true
        },
        "general": {
            "regularExpressions": {
                "engine": "ECMAScript",
                "version": "ES2020"
            },
            "markdown": {
                "parser": "marked",
                "version": "4.0.10"
            }
        }
    },
    "initializationOptions": {},
    "trace": "verbose",
    "workspaceFolders": [
        {
            "uri": "file:///tmp",
            "name": "tmp"
        }
    ],
    "locale": "en_US",
    "clientInfo": {
        "name": "coc.nvim",
        "version": "0.0.80"
    },
    "workDoneToken": "03b1d3ba-a011-45b9-9056-cc6c4558289f"
}


3/23/2022, 3:25:02 PM [3] (pid: 1370867) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}
[Trace - 3:25:02 PM] Received response 'initialize - (0)' in 343ms.
Result: {
    "capabilities": {
        "workspaceSymbolProvider": true,
        "documentSymbolProvider": true,
        "completionProvider": {
            "resolveProvider": true,
            "triggerCharacters": [
                " ",
                ":",
                "$",
                "\n",
                " ",
                "(",
                "@"
            ]
        },
        "definitionProvider": true,
        "textDocumentSync": 1,
        "hoverProvider": true,
        "workspace": {
            "workspaceFolders": {
                "supported": true,
                "changeNotifications": true
            }
        }
    }
}


[Trace - 3:25:02 PM] Sending notification 'initialized'.
Params: {}


[Trace - 3:25:02 PM] Sending notification 'workspace/didChangeConfiguration'.
Params: {
    "settings": {}
}


[Trace - 3:25:02 PM] Sending notification 'textDocument/didOpen'.
Params: {
    "textDocument": {
        "uri": "file:///tmp/test.graphql",
        "languageId": "graphql",
        "version": 1,
        "text": "\n"
    }
}


[Info  - 3:25:02 PM] Connection to server got closed. Server will restart.
[Trace - 3:25:02 PM] Sending request 'initialize - (0)'.
Params: {
    "processId": 1370759,
    "rootPath": "/tmp",
    "rootUri": "file:///tmp",
    "capabilities": {
        "workspace": {
            "applyEdit": true,
            "workspaceEdit": {
                "documentChanges": true,
                "resourceOperations": [
                    "create",
                    "rename",
                    "delete"
                ],
                "failureHandling": "textOnlyTransactional",
                "normalizesLineEndings": true
            },
            "didChangeConfiguration": {
                "dynamicRegistration": true
            },
            "didChangeWatchedFiles": {
                "dynamicRegistration": true
            },
            "symbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                }
            },
            "codeLens": {
                "refreshSupport": true
            },
            "executeCommand": {
                "dynamicRegistration": true
            },
            "configuration": true,
            "fileOperations": {
                "dynamicRegistration": true,
                "didCreate": true,
                "didRename": true,
                "didDelete": true,
                "willCreate": true,
                "willRename": true,
                "willDelete": true
            },
            "semanticTokens": {
                "refreshSupport": true
            },
            "workspaceFolders": true
        },
        "textDocument": {
            "publishDiagnostics": {
                "relatedInformation": true,
                "versionSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1,
                        2
                    ]
                },
                "codeDescriptionSupport": true,
                "dataSupport": true
            },
            "synchronization": {
                "dynamicRegistration": true,
                "willSave": true,
                "willSaveWaitUntil": true,
                "didSave": true
            },
            "completion": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "completionItem": {
                    "snippetSupport": true,
                    "commitCharactersSupport": true,
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "deprecatedSupport": true,
                    "preselectSupport": true,
                    "insertReplaceSupport": true,
                    "tagSupport": {
                        "valueSet": [
                            1
                        ]
                    },
                    "resolveSupport": {
                        "properties": [
                            "documentation",
                            "detail",
                            "additionalTextEdits"
                        ]
                    },
                    "insertTextModeSupport": {
                        "valueSet": [
                            1,
                            2
                        ]
                    }
                },
                "completionItemKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25
                    ]
                },
                "insertTextMode": 2
            },
            "hover": {
                "dynamicRegistration": true,
                "contentFormat": [
                    "markdown",
                    "plaintext"
                ]
            },
            "signatureHelp": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "signatureInformation": {
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "activeParameterSupport": true,
                    "parameterInformation": {
                        "labelOffsetSupport": true
                    }
                }
            },
            "references": {
                "dynamicRegistration": true
            },
            "definition": {
                "dynamicRegistration": true
            },
            "documentHighlight": {
                "dynamicRegistration": true
            },
            "documentSymbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "hierarchicalDocumentSymbolSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                },
                "labelSupport": true
            },
            "codeAction": {
                "dynamicRegistration": true,
                "isPreferredSupport": true,
                "disabledSupport": true,
                "dataSupport": true,
                "honorsChangeAnnotations": false,
                "resolveSupport": {
                    "properties": [
                        "edit"
                    ]
                },
                "codeActionLiteralSupport": {
                    "codeActionKind": {
                        "valueSet": [
                            "",
                            "quickfix",
                            "refactor",
                            "refactor.extract",
                            "refactor.inline",
                            "refactor.rewrite",
                            "source",
                            "source.organizeImports"
                        ]
                    }
                }
            },
            "codeLens": {
                "dynamicRegistration": true
            },
            "formatting": {
                "dynamicRegistration": true
            },
            "rangeFormatting": {
                "dynamicRegistration": true
            },
            "onTypeFormatting": {
                "dynamicRegistration": true
            },
            "rename": {
                "dynamicRegistration": true,
                "prepareSupport": true
            },
            "documentLink": {
                "dynamicRegistration": true,
                "tooltipSupport": true
            },
            "typeDefinition": {
                "dynamicRegistration": true
            },
            "implementation": {
                "dynamicRegistration": true
            },
            "declaration": {
                "dynamicRegistration": true
            },
            "colorProvider": {
                "dynamicRegistration": true
            },
            "foldingRange": {
                "dynamicRegistration": true,
                "rangeLimit": 5000,
                "lineFoldingOnly": true
            },
            "selectionRange": {
                "dynamicRegistration": true
            },
            "callHierarchy": {
                "dynamicRegistration": true
            },
            "linkedEditingRange": {
                "dynamicRegistration": true
            },
            "semanticTokens": {
                "dynamicRegistration": true,
                "tokenTypes": [
                    "namespace",
                    "type",
                    "class",
                    "enum",
                    "interface",
                    "struct",
                    "typeParameter",
                    "parameter",
                    "variable",
                    "property",
                    "enumMember",
                    "event",
                    "function",
                    "method",
                    "macro",
                    "keyword",
                    "modifier",
                    "comment",
                    "string",
                    "number",
                    "regexp",
                    "operator"
                ],
                "tokenModifiers": [
                    "declaration",
                    "definition",
                    "readonly",
                    "static",
                    "deprecated",
                    "abstract",
                    "async",
                    "modification",
                    "documentation",
                    "defaultLibrary"
                ],
                "formats": [
                    "relative"
                ],
                "requests": {
                    "range": true,
                    "full": {
                        "delta": true
                    }
                },
                "multilineTokenSupport": false,
                "overlappingTokenSupport": false
            }
        },
        "window": {
            "showMessage": {
                "messageActionItem": {
                    "additionalPropertiesSupport": true
                }
            },
            "showDocument": {
                "support": true
            },
            "workDoneProgress": true
        },
        "general": {
            "regularExpressions": {
                "engine": "ECMAScript",
                "version": "ES2020"
            },
            "markdown": {
                "parser": "marked",
                "version": "4.0.10"
            }
        }
    },
    "initializationOptions": {},
    "trace": "verbose",
    "workspaceFolders": [
        {
            "uri": "file:///tmp",
            "name": "tmp"
        }
    ],
    "locale": "en_US",
    "clientInfo": {
        "name": "coc.nvim",
        "version": "0.0.80"
    },
    "workDoneToken": "2f6d680f-6c6b-4e4f-86c6-640dbc370f22"
}


3/23/2022, 3:25:02 PM [3] (pid: 1370914) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}
[Trace - 3:25:02 PM] Received response 'initialize - (0)' in 342ms.
Result: {
    "capabilities": {
        "workspaceSymbolProvider": true,
        "documentSymbolProvider": true,
        "completionProvider": {
            "resolveProvider": true,
            "triggerCharacters": [
                " ",
                ":",
                "$",
                "\n",
                " ",
                "(",
                "@"
            ]
        },
        "definitionProvider": true,
        "textDocumentSync": 1,
        "hoverProvider": true,
        "workspace": {
            "workspaceFolders": {
                "supported": true,
                "changeNotifications": true
            }
        }
    }
}


[Trace - 3:25:02 PM] Sending notification 'initialized'.
Params: {}


[Trace - 3:25:02 PM] Sending notification 'workspace/didChangeConfiguration'.
Params: {
    "settings": {}
}


[Trace - 3:25:02 PM] Sending notification 'textDocument/didOpen'.
Params: {
    "textDocument": {
        "uri": "file:///tmp/test.graphql",
        "languageId": "graphql",
        "version": 1,
        "text": "\n"
    }
}


[Info  - 3:25:02 PM] Connection to server got closed. Server will restart.
[Trace - 3:25:02 PM] Sending request 'initialize - (0)'.
Params: {
    "processId": 1370759,
    "rootPath": "/tmp",
    "rootUri": "file:///tmp",
    "capabilities": {
        "workspace": {
            "applyEdit": true,
            "workspaceEdit": {
                "documentChanges": true,
                "resourceOperations": [
                    "create",
                    "rename",
                    "delete"
                ],
                "failureHandling": "textOnlyTransactional",
                "normalizesLineEndings": true
            },
            "didChangeConfiguration": {
                "dynamicRegistration": true
            },
            "didChangeWatchedFiles": {
                "dynamicRegistration": true
            },
            "symbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                }
            },
            "codeLens": {
                "refreshSupport": true
            },
            "executeCommand": {
                "dynamicRegistration": true
            },
            "configuration": true,
            "fileOperations": {
                "dynamicRegistration": true,
                "didCreate": true,
                "didRename": true,
                "didDelete": true,
                "willCreate": true,
                "willRename": true,
                "willDelete": true
            },
            "semanticTokens": {
                "refreshSupport": true
            },
            "workspaceFolders": true
        },
        "textDocument": {
            "publishDiagnostics": {
                "relatedInformation": true,
                "versionSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1,
                        2
                    ]
                },
                "codeDescriptionSupport": true,
                "dataSupport": true
            },
            "synchronization": {
                "dynamicRegistration": true,
                "willSave": true,
                "willSaveWaitUntil": true,
                "didSave": true
            },
            "completion": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "completionItem": {
                    "snippetSupport": true,
                    "commitCharactersSupport": true,
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "deprecatedSupport": true,
                    "preselectSupport": true,
                    "insertReplaceSupport": true,
                    "tagSupport": {
                        "valueSet": [
                            1
                        ]
                    },
                    "resolveSupport": {
                        "properties": [
                            "documentation",
                            "detail",
                            "additionalTextEdits"
                        ]
                    },
                    "insertTextModeSupport": {
                        "valueSet": [
                            1,
                            2
                        ]
                    }
                },
                "completionItemKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25
                    ]
                },
                "insertTextMode": 2
            },
            "hover": {
                "dynamicRegistration": true,
                "contentFormat": [
                    "markdown",
                    "plaintext"
                ]
            },
            "signatureHelp": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "signatureInformation": {
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "activeParameterSupport": true,
                    "parameterInformation": {
                        "labelOffsetSupport": true
                    }
                }
            },
            "references": {
                "dynamicRegistration": true
            },
            "definition": {
                "dynamicRegistration": true
            },
            "documentHighlight": {
                "dynamicRegistration": true
            },
            "documentSymbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "hierarchicalDocumentSymbolSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                },
                "labelSupport": true
            },
            "codeAction": {
                "dynamicRegistration": true,
                "isPreferredSupport": true,
                "disabledSupport": true,
                "dataSupport": true,
                "honorsChangeAnnotations": false,
                "resolveSupport": {
                    "properties": [
                        "edit"
                    ]
                },
                "codeActionLiteralSupport": {
                    "codeActionKind": {
                        "valueSet": [
                            "",
                            "quickfix",
                            "refactor",
                            "refactor.extract",
                            "refactor.inline",
                            "refactor.rewrite",
                            "source",
                            "source.organizeImports"
                        ]
                    }
                }
            },
            "codeLens": {
                "dynamicRegistration": true
            },
            "formatting": {
                "dynamicRegistration": true
            },
            "rangeFormatting": {
                "dynamicRegistration": true
            },
            "onTypeFormatting": {
                "dynamicRegistration": true
            },
            "rename": {
                "dynamicRegistration": true,
                "prepareSupport": true
            },
            "documentLink": {
                "dynamicRegistration": true,
                "tooltipSupport": true
            },
            "typeDefinition": {
                "dynamicRegistration": true
            },
            "implementation": {
                "dynamicRegistration": true
            },
            "declaration": {
                "dynamicRegistration": true
            },
            "colorProvider": {
                "dynamicRegistration": true
            },
            "foldingRange": {
                "dynamicRegistration": true,
                "rangeLimit": 5000,
                "lineFoldingOnly": true
            },
            "selectionRange": {
                "dynamicRegistration": true
            },
            "callHierarchy": {
                "dynamicRegistration": true
            },
            "linkedEditingRange": {
                "dynamicRegistration": true
            },
            "semanticTokens": {
                "dynamicRegistration": true,
                "tokenTypes": [
                    "namespace",
                    "type",
                    "class",
                    "enum",
                    "interface",
                    "struct",
                    "typeParameter",
                    "parameter",
                    "variable",
                    "property",
                    "enumMember",
                    "event",
                    "function",
                    "method",
                    "macro",
                    "keyword",
                    "modifier",
                    "comment",
                    "string",
                    "number",
                    "regexp",
                    "operator"
                ],
                "tokenModifiers": [
                    "declaration",
                    "definition",
                    "readonly",
                    "static",
                    "deprecated",
                    "abstract",
                    "async",
                    "modification",
                    "documentation",
                    "defaultLibrary"
                ],
                "formats": [
                    "relative"
                ],
                "requests": {
                    "range": true,
                    "full": {
                        "delta": true
                    }
                },
                "multilineTokenSupport": false,
                "overlappingTokenSupport": false
            }
        },
        "window": {
            "showMessage": {
                "messageActionItem": {
                    "additionalPropertiesSupport": true
                }
            },
            "showDocument": {
                "support": true
            },
            "workDoneProgress": true
        },
        "general": {
            "regularExpressions": {
                "engine": "ECMAScript",
                "version": "ES2020"
            },
            "markdown": {
                "parser": "marked",
                "version": "4.0.10"
            }
        }
    },
    "initializationOptions": {},
    "trace": "verbose",
    "workspaceFolders": [
        {
            "uri": "file:///tmp",
            "name": "tmp"
        }
    ],
    "locale": "en_US",
    "clientInfo": {
        "name": "coc.nvim",
        "version": "0.0.80"
    },
    "workDoneToken": "47b87f5a-8751-4e83-9064-0c276c48b78a"
}


3/23/2022, 3:25:03 PM [3] (pid: 1370942) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}
[Trace - 3:25:03 PM] Received response 'initialize - (0)' in 353ms.
Result: {
    "capabilities": {
        "workspaceSymbolProvider": true,
        "documentSymbolProvider": true,
        "completionProvider": {
            "resolveProvider": true,
            "triggerCharacters": [
                " ",
                ":",
                "$",
                "\n",
                " ",
                "(",
                "@"
            ]
        },
        "definitionProvider": true,
        "textDocumentSync": 1,
        "hoverProvider": true,
        "workspace": {
            "workspaceFolders": {
                "supported": true,
                "changeNotifications": true
            }
        }
    }
}


[Trace - 3:25:03 PM] Sending notification 'initialized'.
Params: {}


[Trace - 3:25:03 PM] Sending notification 'workspace/didChangeConfiguration'.
Params: {
    "settings": {}
}


[Trace - 3:25:03 PM] Sending notification 'textDocument/didOpen'.
Params: {
    "textDocument": {
        "uri": "file:///tmp/test.graphql",
        "languageId": "graphql",
        "version": 1,
        "text": "\n"
    }
}


[Error  - 3:25:03 PM] Connection to server got closed. Server will not be restarted.

@acao
Copy link
Member

acao commented Mar 24, 2022

Do you have a graphql config?

@ajkaanbal
Copy link
Author

I have this file, where schema is the public github graphql schema here
❯ cat .graphqlrc
schema: ./schema.graphql

I forgot to add this earlier, it may be useful:

  "languageserver": {
    "graphql": {
      "command": "graphql-lsp",
      "trace.server": "verbose",
      "args": ["server", "-m", "stream"],
      "filetypes": ["graphql", "gql"]
    }
  }

@jakehamtexas
Copy link

jakehamtexas commented Mar 28, 2022

Hey! I have this problem as well, but a different "languageserver" configuration.

My `:CocInfo`:
  "languageserver": {
    "graphql": {
      "command": "graphql-lsp",
      "args": ["server", "-m", "stream"],
      "filetypes": ["typescript", "typescriptreact", "graphql"],
      "trace.server": "verbose"
    }
  }
## versions

vim version: NVIM v0.7.0-dev+1295-g04d2476d3
node version: v16.14.2
coc.nvim version: 0.0.80-5830e03d 2022-03-27 04:58:12 +0800
coc.nvim directory: /Users/jake/.local/share/nvim/site/pack/packer/start/coc.nvim
term: tmux
platform: darwin

## Log of coc.nvim

2022-03-28T15:22:12.312 INFO (pid:77069) [configurations] - Add folder configuration from cwd: /Users/jake/projects/qnr-server/.vim/coc-settings.json
2022-03-28T15:22:12.314 INFO (pid:77069) [configurations] - Change folder configuration from cwd to: /Users/jake/projects/qnr-server/.vim/coc-settings.json
2022-03-28T15:22:12.474 INFO (pid:77069) [services] - registered service "languageserver.graphql"
2022-03-28T15:22:12.504 INFO (pid:77069) [coc-git] - Looking for git in: git
2022-03-28T15:22:12.728 INFO (pid:77069) [plugin] - coc.nvim initialized with node: v16.14.2 after 348ms
2022-03-28T15:22:13.153 INFO (pid:77069) [attach] - receive notification: highlight []
2022-03-28T15:22:13.802 INFO (pid:77069) [attach] - receive notification: highlight []
2022-03-28T15:22:16.512 INFO (pid:77069) [attach] - receive notification: openLocalConfig []
2022-03-28T15:22:16.651 INFO (pid:77069) [services] - registered service "json"
2022-03-28T15:22:16.652 INFO (pid:77069) [services] - Json language server state change: stopped => starting
2022-03-28T15:22:16.752 INFO (pid:77069) [services] - Json language server state change: starting => running
2022-03-28T15:22:16.756 INFO (pid:77069) [services] - service json started
2022-03-28T15:22:17.044 INFO (pid:77069) [attach] - receive notification: highlight []
2022-03-28T15:22:19.380 INFO (pid:77069) [attach] - receive notification: highlight []
2022-03-28T15:22:22.929 INFO (pid:77069) [attach] - receive notification: highlight []
2022-03-28T15:22:27.657 INFO (pid:77069) [attach] - receive notification: highlight []
2022-03-28T15:22:52.740 INFO (pid:77069) [attach] - receive notification: showInfo []

And some logging from the language server (NDA source code removed):

[Trace - 3:13:34 PM] Sending request 'initialize - (0)'.
Params: {
    "processId": 75484,
    "rootPath": "/Users/jake/projects/qnr-server",
    "rootUri": "file:///Users/jake/projects/qnr-server",
    "capabilities": {
        "workspace": {
            "applyEdit": true,
            "workspaceEdit": {
                "documentChanges": true,
                "resourceOperations": [
                    "create",
                    "rename",
                    "delete"
                ],
                "failureHandling": "textOnlyTransactional",
                "normalizesLineEndings": true
            },
            "didChangeConfiguration": {
                "dynamicRegistration": true
            },
            "didChangeWatchedFiles": {
                "dynamicRegistration": true
            },
            "symbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                }
            },
            "codeLens": {
                "refreshSupport": true
            },
            "executeCommand": {
                "dynamicRegistration": true
            },
            "configuration": true,
            "fileOperations": {
                "dynamicRegistration": true,
                "didCreate": true,
                "didRename": true,
                "didDelete": true,
                "willCreate": true,
                "willRename": true,
                "willDelete": true
            },
            "semanticTokens": {
                "refreshSupport": true
            },
            "workspaceFolders": true
        },
        "textDocument": {
            "publishDiagnostics": {
                "relatedInformation": true,
                "versionSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1,
                        2
                    ]
                },
                "codeDescriptionSupport": true,
                "dataSupport": true
            },
            "synchronization": {
                "dynamicRegistration": true,
                "willSave": true,
                "willSaveWaitUntil": true,
                "didSave": true
            },
            "completion": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "completionItem": {
                    "snippetSupport": true,
                    "commitCharactersSupport": true,
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "deprecatedSupport": true,
                    "preselectSupport": true,
                    "insertReplaceSupport": true,
                    "tagSupport": {
                        "valueSet": [
                            1
                        ]
                    },
                    "resolveSupport": {
                        "properties": [
                            "documentation",
                            "detail",
                            "additionalTextEdits"
                        ]
                    },
                    "insertTextModeSupport": {
                        "valueSet": [
                            1,
                            2
                        ]
                    }
                },
                "completionItemKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25
                    ]
                },
                "insertTextMode": 2
            },
            "hover": {
                "dynamicRegistration": true,
                "contentFormat": [
                    "markdown",
                    "plaintext"
                ]
            },
            "signatureHelp": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "signatureInformation": {
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "activeParameterSupport": true,
                    "parameterInformation": {
                        "labelOffsetSupport": true
                    }
                }
            },
            "references": {
                "dynamicRegistration": true
            },
            "definition": {
                "dynamicRegistration": true
            },
            "documentHighlight": {
                "dynamicRegistration": true
            },
            "documentSymbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "hierarchicalDocumentSymbolSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                },
                "labelSupport": true
            },
            "codeAction": {
                "dynamicRegistration": true,
                "isPreferredSupport": true,
                "disabledSupport": true,
                "dataSupport": true,
                "honorsChangeAnnotations": false,
                "resolveSupport": {
                    "properties": [
                        "edit"
                    ]
                },
                "codeActionLiteralSupport": {
                    "codeActionKind": {
                        "valueSet": [
                            "",
                            "quickfix",
                            "refactor",
                            "refactor.extract",
                            "refactor.inline",
                            "refactor.rewrite",
                            "source",
                            "source.organizeImports"
                        ]
                    }
                }
            },
            "codeLens": {
                "dynamicRegistration": true
            },
            "formatting": {
                "dynamicRegistration": true
            },
            "rangeFormatting": {
                "dynamicRegistration": true
            },
            "onTypeFormatting": {
                "dynamicRegistration": true
            },
            "rename": {
                "dynamicRegistration": true,
                "prepareSupport": true
            },
            "documentLink": {
                "dynamicRegistration": true,
                "tooltipSupport": true
            },
            "typeDefinition": {
                "dynamicRegistration": true
            },
            "implementation": {
                "dynamicRegistration": true
            },
            "declaration": {
                "dynamicRegistration": true
            },
            "colorProvider": {
                "dynamicRegistration": true
            },
            "foldingRange": {
                "dynamicRegistration": true,
                "rangeLimit": 5000,
                "lineFoldingOnly": true
            },
            "selectionRange": {
                "dynamicRegistration": true
            },
            "callHierarchy": {
                "dynamicRegistration": true
            },
            "linkedEditingRange": {
                "dynamicRegistration": true
            },
            "semanticTokens": {
                "dynamicRegistration": true,
                "tokenTypes": [
                    "namespace",
                    "type",
                    "class",
                    "enum",
                    "interface",
                    "struct",
                    "typeParameter",
                    "parameter",
                    "variable",
                    "property",
                    "enumMember",
                    "event",
                    "function",
                    "method",
                    "macro",
                    "keyword",
                    "modifier",
                    "comment",
                    "string",
                    "number",
                    "regexp",
                    "operator"
                ],
                "tokenModifiers": [
                    "declaration",
                    "definition",
                    "readonly",
                    "static",
                    "deprecated",
                    "abstract",
                    "async",
                    "modification",
                    "documentation",
                    "defaultLibrary"
                ],
                "formats": [
                    "relative"
                ],
                "requests": {
                    "range": true,
                    "full": {
                        "delta": true
                    }
                },
                "multilineTokenSupport": false,
                "overlappingTokenSupport": false
            }
        },
        "window": {
            "showMessage": {
                "messageActionItem": {
                    "additionalPropertiesSupport": true
                }
            },
            "showDocument": {
                "support": true
            },
            "workDoneProgress": true
        },
        "general": {
            "regularExpressions": {
                "engine": "ECMAScript",
                "version": "ES2020"
            },
            "markdown": {
                "parser": "marked",
                "version": "4.0.10"
            }
        }
    },
    "initializationOptions": {},
    "trace": "verbose",
    "workspaceFolders": [
        {
            "uri": "file:///Users/jake/projects/qnr-server",
            "name": "qnr-server"
        }
    ],
    "locale": "en_US",
    "clientInfo": {
        "name": "coc.nvim",
        "version": "0.0.80"
    },
    "workDoneToken": "acb41fb5-331c-422d-bf19-4ed63012c979"
}


3/28/2022, 3:13:35 PM [3] (pid: 75508) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}
[Trace - 3:13:35 PM] Received response 'initialize - (0)' in 732ms.
Result: {
    "capabilities": {
        "workspaceSymbolProvider": true,
        "documentSymbolProvider": true,
        "completionProvider": {
            "resolveProvider": true,
            "triggerCharacters": [
                " ",
                ":",
                "$",
                "\n",
                " ",
                "(",
                "@"
            ]
        },
        "definitionProvider": true,
        "textDocumentSync": 1,
        "hoverProvider": true,
        "workspace": {
            "workspaceFolders": {
                "supported": true,
                "changeNotifications": true
            }
        }
    }
}


[Trace - 3:13:35 PM] Sending notification 'initialized'.
Params: {}


[Trace - 3:13:35 PM] Sending notification 'workspace/didChangeConfiguration'.
Params: {
    "settings": {}
}


[Trace - 3:13:35 PM] Sending notification 'textDocument/didOpen'.
Params: {
    "textDocument": {
        "uri": "file:///Users/jake/projects/qnr-server/apps/server/src/client/components/settings/org/cards/ApiKeysSettings.tsx",
        "languageId": "typescriptreact",
        "version": 1,
    }
}


[Info  - 3:13:35 PM] Connection to server got closed. Server will restart.
[Trace - 3:13:35 PM] Sending request 'initialize - (0)'.
Params: {
    "processId": 75484,
    "rootPath": "/Users/jake/projects/qnr-server",
    "rootUri": "file:///Users/jake/projects/qnr-server",
    "capabilities": {
        "workspace": {
            "applyEdit": true,
            "workspaceEdit": {
                "documentChanges": true,
                "resourceOperations": [
                    "create",
                    "rename",
                    "delete"
                ],
                "failureHandling": "textOnlyTransactional",
                "normalizesLineEndings": true
            },
            "didChangeConfiguration": {
                "dynamicRegistration": true
            },
            "didChangeWatchedFiles": {
                "dynamicRegistration": true
            },
            "symbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                }
            },
            "codeLens": {
                "refreshSupport": true
            },
            "executeCommand": {
                "dynamicRegistration": true
            },
            "configuration": true,
            "fileOperations": {
                "dynamicRegistration": true,
                "didCreate": true,
                "didRename": true,
                "didDelete": true,
                "willCreate": true,
                "willRename": true,
                "willDelete": true
            },
            "semanticTokens": {
                "refreshSupport": true
            },
            "workspaceFolders": true
        },
        "textDocument": {
            "publishDiagnostics": {
                "relatedInformation": true,
                "versionSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1,
                        2
                    ]
                },
                "codeDescriptionSupport": true,
                "dataSupport": true
            },
            "synchronization": {
                "dynamicRegistration": true,
                "willSave": true,
                "willSaveWaitUntil": true,
                "didSave": true
            },
            "completion": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "completionItem": {
                    "snippetSupport": true,
                    "commitCharactersSupport": true,
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "deprecatedSupport": true,
                    "preselectSupport": true,
                    "insertReplaceSupport": true,
                    "tagSupport": {
                        "valueSet": [
                            1
                        ]
                    },
                    "resolveSupport": {
                        "properties": [
                            "documentation",
                            "detail",
                            "additionalTextEdits"
                        ]
                    },
                    "insertTextModeSupport": {
                        "valueSet": [
                            1,
                            2
                        ]
                    }
                },
                "completionItemKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25
                    ]
                },
                "insertTextMode": 2
            },
            "hover": {
                "dynamicRegistration": true,
                "contentFormat": [
                    "markdown",
                    "plaintext"
                ]
            },
            "signatureHelp": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "signatureInformation": {
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "activeParameterSupport": true,
                    "parameterInformation": {
                        "labelOffsetSupport": true
                    }
                }
            },
            "references": {
                "dynamicRegistration": true
            },
            "definition": {
                "dynamicRegistration": true
            },
            "documentHighlight": {
                "dynamicRegistration": true
            },
            "documentSymbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "hierarchicalDocumentSymbolSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                },
                "labelSupport": true
            },
            "codeAction": {
                "dynamicRegistration": true,
                "isPreferredSupport": true,
                "disabledSupport": true,
                "dataSupport": true,
                "honorsChangeAnnotations": false,
                "resolveSupport": {
                    "properties": [
                        "edit"
                    ]
                },
                "codeActionLiteralSupport": {
                    "codeActionKind": {
                        "valueSet": [
                            "",
                            "quickfix",
                            "refactor",
                            "refactor.extract",
                            "refactor.inline",
                            "refactor.rewrite",
                            "source",
                            "source.organizeImports"
                        ]
                    }
                }
            },
            "codeLens": {
                "dynamicRegistration": true
            },
            "formatting": {
                "dynamicRegistration": true
            },
            "rangeFormatting": {
                "dynamicRegistration": true
            },
            "onTypeFormatting": {
                "dynamicRegistration": true
            },
            "rename": {
                "dynamicRegistration": true,
                "prepareSupport": true
            },
            "documentLink": {
                "dynamicRegistration": true,
                "tooltipSupport": true
            },
            "typeDefinition": {
                "dynamicRegistration": true
            },
            "implementation": {
                "dynamicRegistration": true
            },
            "declaration": {
                "dynamicRegistration": true
            },
            "colorProvider": {
                "dynamicRegistration": true
            },
            "foldingRange": {
                "dynamicRegistration": true,
                "rangeLimit": 5000,
                "lineFoldingOnly": true
            },
            "selectionRange": {
                "dynamicRegistration": true
            },
            "callHierarchy": {
                "dynamicRegistration": true
            },
            "linkedEditingRange": {
                "dynamicRegistration": true
            },
            "semanticTokens": {
                "dynamicRegistration": true,
                "tokenTypes": [
                    "namespace",
                    "type",
                    "class",
                    "enum",
                    "interface",
                    "struct",
                    "typeParameter",
                    "parameter",
                    "variable",
                    "property",
                    "enumMember",
                    "event",
                    "function",
                    "method",
                    "macro",
                    "keyword",
                    "modifier",
                    "comment",
                    "string",
                    "number",
                    "regexp",
                    "operator"
                ],
                "tokenModifiers": [
                    "declaration",
                    "definition",
                    "readonly",
                    "static",
                    "deprecated",
                    "abstract",
                    "async",
                    "modification",
                    "documentation",
                    "defaultLibrary"
                ],
                "formats": [
                    "relative"
                ],
                "requests": {
                    "range": true,
                    "full": {
                        "delta": true
                    }
                },
                "multilineTokenSupport": false,
                "overlappingTokenSupport": false
            }
        },
        "window": {
            "showMessage": {
                "messageActionItem": {
                    "additionalPropertiesSupport": true
                }
            },
            "showDocument": {
                "support": true
            },
            "workDoneProgress": true
        },
        "general": {
            "regularExpressions": {
                "engine": "ECMAScript",
                "version": "ES2020"
            },
            "markdown": {
                "parser": "marked",
                "version": "4.0.10"
            }
        }
    },
    "initializationOptions": {},
    "trace": "verbose",
    "workspaceFolders": [
        {
            "uri": "file:///Users/jake/projects/qnr-server",
            "name": "qnr-server"
        }
    ],
    "locale": "en_US",
    "clientInfo": {
        "name": "coc.nvim",
        "version": "0.0.80"
    },
    "workDoneToken": "d2dea1c4-2cbd-43af-b267-fae2f1de9d25"
}


3/28/2022, 3:13:35 PM [3] (pid: 75531) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}
[Trace - 3:13:35 PM] Received response 'initialize - (0)' in 566ms.
Result: {
    "capabilities": {
        "workspaceSymbolProvider": true,
        "documentSymbolProvider": true,
        "completionProvider": {
            "resolveProvider": true,
            "triggerCharacters": [
                " ",
                ":",
                "$",
                "\n",
                " ",
                "(",
                "@"
            ]
        },
        "definitionProvider": true,
        "textDocumentSync": 1,
        "hoverProvider": true,
        "workspace": {
            "workspaceFolders": {
                "supported": true,
                "changeNotifications": true
            }
        }
    }
}


[Trace - 3:13:35 PM] Sending notification 'initialized'.
Params: {}


[Trace - 3:13:35 PM] Sending notification 'workspace/didChangeConfiguration'.
Params: {
    "settings": {}
}


[Trace - 3:13:35 PM] Sending notification 'textDocument/didOpen'.
Params: {
    "textDocument": {
        "uri": "file:///Users/jake/projects/qnr-server/apps/server/src/client/components/settings/org/cards/ApiKeysSettings.tsx",
        "languageId": "typescriptreact",
        "version": 1,
    }
}


[Info  - 3:13:35 PM] Connection to server got closed. Server will restart.
[Trace - 3:13:35 PM] Sending request 'initialize - (0)'.
Params: {
    "processId": 75484,
    "rootPath": "/Users/jake/projects/qnr-server",
    "rootUri": "file:///Users/jake/projects/qnr-server",
    "capabilities": {
        "workspace": {
            "applyEdit": true,
            "workspaceEdit": {
                "documentChanges": true,
                "resourceOperations": [
                    "create",
                    "rename",
                    "delete"
                ],
                "failureHandling": "textOnlyTransactional",
                "normalizesLineEndings": true
            },
            "didChangeConfiguration": {
                "dynamicRegistration": true
            },
            "didChangeWatchedFiles": {
                "dynamicRegistration": true
            },
            "symbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                }
            },
            "codeLens": {
                "refreshSupport": true
            },
            "executeCommand": {
                "dynamicRegistration": true
            },
            "configuration": true,
            "fileOperations": {
                "dynamicRegistration": true,
                "didCreate": true,
                "didRename": true,
                "didDelete": true,
                "willCreate": true,
                "willRename": true,
                "willDelete": true
            },
            "semanticTokens": {
                "refreshSupport": true
            },
            "workspaceFolders": true
        },
        "textDocument": {
            "publishDiagnostics": {
                "relatedInformation": true,
                "versionSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1,
                        2
                    ]
                },
                "codeDescriptionSupport": true,
                "dataSupport": true
            },
            "synchronization": {
                "dynamicRegistration": true,
                "willSave": true,
                "willSaveWaitUntil": true,
                "didSave": true
            },
            "completion": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "completionItem": {
                    "snippetSupport": true,
                    "commitCharactersSupport": true,
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "deprecatedSupport": true,
                    "preselectSupport": true,
                    "insertReplaceSupport": true,
                    "tagSupport": {
                        "valueSet": [
                            1
                        ]
                    },
                    "resolveSupport": {
                        "properties": [
                            "documentation",
                            "detail",
                            "additionalTextEdits"
                        ]
                    },
                    "insertTextModeSupport": {
                        "valueSet": [
                            1,
                            2
                        ]
                    }
                },
                "completionItemKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25
                    ]
                },
                "insertTextMode": 2
            },
            "hover": {
                "dynamicRegistration": true,
                "contentFormat": [
                    "markdown",
                    "plaintext"
                ]
            },
            "signatureHelp": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "signatureInformation": {
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "activeParameterSupport": true,
                    "parameterInformation": {
                        "labelOffsetSupport": true
                    }
                }
            },
            "references": {
                "dynamicRegistration": true
            },
            "definition": {
                "dynamicRegistration": true
            },
            "documentHighlight": {
                "dynamicRegistration": true
            },
            "documentSymbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "hierarchicalDocumentSymbolSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                },
                "labelSupport": true
            },
            "codeAction": {
                "dynamicRegistration": true,
                "isPreferredSupport": true,
                "disabledSupport": true,
                "dataSupport": true,
                "honorsChangeAnnotations": false,
                "resolveSupport": {
                    "properties": [
                        "edit"
                    ]
                },
                "codeActionLiteralSupport": {
                    "codeActionKind": {
                        "valueSet": [
                            "",
                            "quickfix",
                            "refactor",
                            "refactor.extract",
                            "refactor.inline",
                            "refactor.rewrite",
                            "source",
                            "source.organizeImports"
                        ]
                    }
                }
            },
            "codeLens": {
                "dynamicRegistration": true
            },
            "formatting": {
                "dynamicRegistration": true
            },
            "rangeFormatting": {
                "dynamicRegistration": true
            },
            "onTypeFormatting": {
                "dynamicRegistration": true
            },
            "rename": {
                "dynamicRegistration": true,
                "prepareSupport": true
            },
            "documentLink": {
                "dynamicRegistration": true,
                "tooltipSupport": true
            },
            "typeDefinition": {
                "dynamicRegistration": true
            },
            "implementation": {
                "dynamicRegistration": true
            },
            "declaration": {
                "dynamicRegistration": true
            },
            "colorProvider": {
                "dynamicRegistration": true
            },
            "foldingRange": {
                "dynamicRegistration": true,
                "rangeLimit": 5000,
                "lineFoldingOnly": true
            },
            "selectionRange": {
                "dynamicRegistration": true
            },
            "callHierarchy": {
                "dynamicRegistration": true
            },
            "linkedEditingRange": {
                "dynamicRegistration": true
            },
            "semanticTokens": {
                "dynamicRegistration": true,
                "tokenTypes": [
                    "namespace",
                    "type",
                    "class",
                    "enum",
                    "interface",
                    "struct",
                    "typeParameter",
                    "parameter",
                    "variable",
                    "property",
                    "enumMember",
                    "event",
                    "function",
                    "method",
                    "macro",
                    "keyword",
                    "modifier",
                    "comment",
                    "string",
                    "number",
                    "regexp",
                    "operator"
                ],
                "tokenModifiers": [
                    "declaration",
                    "definition",
                    "readonly",
                    "static",
                    "deprecated",
                    "abstract",
                    "async",
                    "modification",
                    "documentation",
                    "defaultLibrary"
                ],
                "formats": [
                    "relative"
                ],
                "requests": {
                    "range": true,
                    "full": {
                        "delta": true
                    }
                },
                "multilineTokenSupport": false,
                "overlappingTokenSupport": false
            }
        },
        "window": {
            "showMessage": {
                "messageActionItem": {
                    "additionalPropertiesSupport": true
                }
            },
            "showDocument": {
                "support": true
            },
            "workDoneProgress": true
        },
        "general": {
            "regularExpressions": {
                "engine": "ECMAScript",
                "version": "ES2020"
            },
            "markdown": {
                "parser": "marked",
                "version": "4.0.10"
            }
        }
    },
    "initializationOptions": {},
    "trace": "verbose",
    "workspaceFolders": [
        {
            "uri": "file:///Users/jake/projects/qnr-server",
            "name": "qnr-server"
        }
    ],
    "locale": "en_US",
    "clientInfo": {
        "name": "coc.nvim",
        "version": "0.0.80"
    },
    "workDoneToken": "868d81f6-e8a1-4f73-b527-62db3f8ec0a9"
}


3/28/2022, 3:13:36 PM [3] (pid: 75535) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}
[Trace - 3:13:36 PM] Received response 'initialize - (0)' in 558ms.
Result: {
    "capabilities": {
        "workspaceSymbolProvider": true,
        "documentSymbolProvider": true,
        "completionProvider": {
            "resolveProvider": true,
            "triggerCharacters": [
                " ",
                ":",
                "$",
                "\n",
                " ",
                "(",
                "@"
            ]
        },
        "definitionProvider": true,
        "textDocumentSync": 1,
        "hoverProvider": true,
        "workspace": {
            "workspaceFolders": {
                "supported": true,
                "changeNotifications": true
            }
        }
    }
}


[Trace - 3:13:36 PM] Sending notification 'initialized'.
Params: {}


[Trace - 3:13:36 PM] Sending notification 'workspace/didChangeConfiguration'.
Params: {
    "settings": {}
}


[Trace - 3:13:36 PM] Sending notification 'textDocument/didOpen'.
Params: {
    "textDocument": {
        "uri": "file:///Users/jake/projects/qnr-server/apps/server/src/client/components/settings/org/cards/ApiKeysSettings.tsx",
        "languageId": "typescriptreact",
        "version": 1,
    }
}


[Info  - 3:13:36 PM] Connection to server got closed. Server will restart.
[Trace - 3:13:36 PM] Sending request 'initialize - (0)'.
Params: {
    "processId": 75484,
    "rootPath": "/Users/jake/projects/qnr-server",
    "rootUri": "file:///Users/jake/projects/qnr-server",
    "capabilities": {
        "workspace": {
            "applyEdit": true,
            "workspaceEdit": {
                "documentChanges": true,
                "resourceOperations": [
                    "create",
                    "rename",
                    "delete"
                ],
                "failureHandling": "textOnlyTransactional",
                "normalizesLineEndings": true
            },
            "didChangeConfiguration": {
                "dynamicRegistration": true
            },
            "didChangeWatchedFiles": {
                "dynamicRegistration": true
            },
            "symbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                }
            },
            "codeLens": {
                "refreshSupport": true
            },
            "executeCommand": {
                "dynamicRegistration": true
            },
            "configuration": true,
            "fileOperations": {
                "dynamicRegistration": true,
                "didCreate": true,
                "didRename": true,
                "didDelete": true,
                "willCreate": true,
                "willRename": true,
                "willDelete": true
            },
            "semanticTokens": {
                "refreshSupport": true
            },
            "workspaceFolders": true
        },
        "textDocument": {
            "publishDiagnostics": {
                "relatedInformation": true,
                "versionSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1,
                        2
                    ]
                },
                "codeDescriptionSupport": true,
                "dataSupport": true
            },
            "synchronization": {
                "dynamicRegistration": true,
                "willSave": true,
                "willSaveWaitUntil": true,
                "didSave": true
            },
            "completion": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "completionItem": {
                    "snippetSupport": true,
                    "commitCharactersSupport": true,
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "deprecatedSupport": true,
                    "preselectSupport": true,
                    "insertReplaceSupport": true,
                    "tagSupport": {
                        "valueSet": [
                            1
                        ]
                    },
                    "resolveSupport": {
                        "properties": [
                            "documentation",
                            "detail",
                            "additionalTextEdits"
                        ]
                    },
                    "insertTextModeSupport": {
                        "valueSet": [
                            1,
                            2
                        ]
                    }
                },
                "completionItemKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25
                    ]
                },
                "insertTextMode": 2
            },
            "hover": {
                "dynamicRegistration": true,
                "contentFormat": [
                    "markdown",
                    "plaintext"
                ]
            },
            "signatureHelp": {
                "dynamicRegistration": true,
                "contextSupport": true,
                "signatureInformation": {
                    "documentationFormat": [
                        "markdown",
                        "plaintext"
                    ],
                    "activeParameterSupport": true,
                    "parameterInformation": {
                        "labelOffsetSupport": true
                    }
                }
            },
            "references": {
                "dynamicRegistration": true
            },
            "definition": {
                "dynamicRegistration": true
            },
            "documentHighlight": {
                "dynamicRegistration": true
            },
            "documentSymbol": {
                "dynamicRegistration": true,
                "symbolKind": {
                    "valueSet": [
                        1,
                        2,
                        3,
                        4,
                        5,
                        6,
                        7,
                        8,
                        9,
                        10,
                        11,
                        12,
                        13,
                        14,
                        15,
                        16,
                        17,
                        18,
                        19,
                        20,
                        21,
                        22,
                        23,
                        24,
                        25,
                        26
                    ]
                },
                "hierarchicalDocumentSymbolSupport": true,
                "tagSupport": {
                    "valueSet": [
                        1
                    ]
                },
                "labelSupport": true
            },
            "codeAction": {
                "dynamicRegistration": true,
                "isPreferredSupport": true,
                "disabledSupport": true,
                "dataSupport": true,
                "honorsChangeAnnotations": false,
                "resolveSupport": {
                    "properties": [
                        "edit"
                    ]
                },
                "codeActionLiteralSupport": {
                    "codeActionKind": {
                        "valueSet": [
                            "",
                            "quickfix",
                            "refactor",
                            "refactor.extract",
                            "refactor.inline",
                            "refactor.rewrite",
                            "source",
                            "source.organizeImports"
                        ]
                    }
                }
            },
            "codeLens": {
                "dynamicRegistration": true
            },
            "formatting": {
                "dynamicRegistration": true
            },
            "rangeFormatting": {
                "dynamicRegistration": true
            },
            "onTypeFormatting": {
                "dynamicRegistration": true
            },
            "rename": {
                "dynamicRegistration": true,
                "prepareSupport": true
            },
            "documentLink": {
                "dynamicRegistration": true,
                "tooltipSupport": true
            },
            "typeDefinition": {
                "dynamicRegistration": true
            },
            "implementation": {
                "dynamicRegistration": true
            },
            "declaration": {
                "dynamicRegistration": true
            },
            "colorProvider": {
                "dynamicRegistration": true
            },
            "foldingRange": {
                "dynamicRegistration": true,
                "rangeLimit": 5000,
                "lineFoldingOnly": true
            },
            "selectionRange": {
                "dynamicRegistration": true
            },
            "callHierarchy": {
                "dynamicRegistration": true
            },
            "linkedEditingRange": {
                "dynamicRegistration": true
            },
            "semanticTokens": {
                "dynamicRegistration": true,
                "tokenTypes": [
                    "namespace",
                    "type",
                    "class",
                    "enum",
                    "interface",
                    "struct",
                    "typeParameter",
                    "parameter",
                    "variable",
                    "property",
                    "enumMember",
                    "event",
                    "function",
                    "method",
                    "macro",
                    "keyword",
                    "modifier",
                    "comment",
                    "string",
                    "number",
                    "regexp",
                    "operator"
                ],
                "tokenModifiers": [
                    "declaration",
                    "definition",
                    "readonly",
                    "static",
                    "deprecated",
                    "abstract",
                    "async",
                    "modification",
                    "documentation",
                    "defaultLibrary"
                ],
                "formats": [
                    "relative"
                ],
                "requests": {
                    "range": true,
                    "full": {
                        "delta": true
                    }
                },
                "multilineTokenSupport": false,
                "overlappingTokenSupport": false
            }
        },
        "window": {
            "showMessage": {
                "messageActionItem": {
                    "additionalPropertiesSupport": true
                }
            },
            "showDocument": {
                "support": true
            },
            "workDoneProgress": true
        },
        "general": {
            "regularExpressions": {
                "engine": "ECMAScript",
                "version": "ES2020"
            },
            "markdown": {
                "parser": "marked",
                "version": "4.0.10"
            }
        }
    },
    "initializationOptions": {},
    "trace": "verbose",
    "workspaceFolders": [
        {
            "uri": "file:///Users/jake/projects/qnr-server",
            "name": "qnr-server"
        }
    ],
    "locale": "en_US",
    "clientInfo": {
        "name": "coc.nvim",
        "version": "0.0.80"
    },
    "workDoneToken": "528b75ec-0c2e-49b0-9887-29ad2a2d52b5"
}


3/28/2022, 3:13:36 PM [3] (pid: 75536) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}
[Trace - 3:13:36 PM] Received response 'initialize - (0)' in 562ms.
Result: {
    "capabilities": {
        "workspaceSymbolProvider": true,
        "documentSymbolProvider": true,
        "completionProvider": {
            "resolveProvider": true,
            "triggerCharacters": [
                " ",
                ":",
                "$",
                "\n",
                " ",
                "(",
                "@"
            ]
        },
        "definitionProvider": true,
        "textDocumentSync": 1,
        "hoverProvider": true,
        "workspace": {
            "workspaceFolders": {
                "supported": true,
                "changeNotifications": true
            }
        }
    }
}


[Trace - 3:13:36 PM] Sending notification 'initialized'.
Params: {}


[Trace - 3:13:36 PM] Sending notification 'workspace/didChangeConfiguration'.
Params: {
    "settings": {}
}


[Trace - 3:13:36 PM] Sending notification 'textDocument/didOpen'.
Params: {
    "textDocument": {
        "uri": "file:///Users/jake/projects/qnr-server/apps/server/src/client/components/settings/org/cards/ApiKeysSettings.tsx",
        "languageId": "typescriptreact",
        "version": 1,
    }
}


[Error  - 3:13:36 PM] Connection to server got closed. Server will not be restarted.

@acao
Copy link
Member

acao commented Mar 29, 2022

@ajkaanbal I wish I could see a stack trace from the language server. might have to get my vim configured to use this extension. perhaps there is more information in the log files? it should be in /tmp/graphql-language-service-server/ unless vim coc also aliases FS like vscode and creates isolated partitions for each extension ala snap

I think I might have a lead on this issue - the vscode extension usually provides default settings values, and the server might be failing from expecting those. But without seeing errors from the server I'm kinda stumped.

can you try providing vscode-graphql.debug: true in your LSP client settings?

@ajkaanbal
Copy link
Author

I think that is an option specific to vscode (I tried and got nothing different). Is there a way to enable debug logs on the cli? https://github.com/graphql/graphiql/tree/main/packages/graphql-language-service-cli ?

@acao
Copy link
Member

acao commented Mar 30, 2022

@ajkaanbal the more verbose output should be in the log file, do you see it?

@ajkaanbal
Copy link
Author

I don't see any log file, where should it be?

@acao
Copy link
Member

acao commented Mar 31, 2022

@ajkaanbal can you try the latest release?

@ajkaanbal
Copy link
Author

❯ graphql-lsp --version
3.2.18

Nope, I keep getting same error as above

....
[Error  - 1:10:31 PM] Connection to server got closed. Server will not be restarted.

and I found a log file but it only contains:

cat /tmp/graphql-language-service-logs/graphql-language-service-log-ajkaanbal-2022-3-31.log

3/31/2022, 1:08:44 PM [3] (pid: 4121463) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}
3/31/2022, 1:08:45 PM [3] (pid: 4121482) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}
3/31/2022, 1:08:45 PM [3] (pid: 4121548) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}
3/31/2022, 1:08:46 PM [3] (pid: 4121562) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}

@ajkaanbal
Copy link
Author

@acao I finally make it work!

I changed these lines from here:

connection.onDidChangeConfiguration(

to

  connection.onNotification(DidChangeConfigurationNotification.type, params =>
      messageProcessor.handleDidChangeConfiguration(params)
  )

@acao
Copy link
Member

acao commented Apr 1, 2022

@ajkaanbal thank you! I think this fixes a bug reported elsewhere! I will get this fix released soon

@ajkaanbal
Copy link
Author

Another change I had to make because it kept crashing "randomly"

this._settings.load?.fileName

@acao
Copy link
Member

acao commented Apr 3, 2022

does this canary release work for y'all?

graphql-language-service-cli@3.2.19-canary-5991895d.0

aka

npm install -g graphql-language-service-cli@3.2.19-canary-5991895d.0

@ajkaanbal
Copy link
Author

it works for me

@ernie
Copy link

ernie commented Apr 20, 2022

Canary build not working here. Also using CoC in neovim. Trace log cycles like this and eventually shuts down:

[Trace - 12:05:51 PM] Sending notification 'textDocument/didOpen'.
Params: {
    "textDocument": {
        "uri": "file:///path/to/schema.graphql",
        "languageId": "graphql",
        "version": 1,
        "text": "**removed**"
    }
}


[Trace - 12:05:51 PM] Received request 'workspace/configuration - (0)'.
Params: {
    "items": [
        {
            "section": "graphql-config"
        }
    ]
}


[Trace - 12:05:51 PM] Sending response 'workspace/configuration - (0)'. Processing request took 0ms
Result: [
    null
]


[Trace - 12:05:51 PM] Received request 'workspace/configuration - (1)'.
Params: {
    "items": [
        {
            "section": "graphql-config"
        }
    ]
}


[Trace - 12:05:51 PM] Sending response 'workspace/configuration - (1)'. Processing request took 0ms
Result: [
    null
]


[Trace - 12:05:51 PM] Received request 'workspace/configuration - (2)'.
Params: {
    "items": [
        {
            "section": "vscode-graphql"
        }
    ]
}


[Trace - 12:05:51 PM] Sending response 'workspace/configuration - (2)'. Processing request took 0ms
Result: [
    null
]


[Trace - 12:05:51 PM] Received request 'workspace/configuration - (3)'.
Params: {
    "items": [
        {
            "section": "vscode-graphql"
        }
    ]
}


[Trace - 12:05:51 PM] Sending response 'workspace/configuration - (3)'. Processing request took 0ms
Result: [
    null
]


[Error  - 12:05:54 PM] Connection to server got closed. Server will not be restarted.

Language server config:

{
  "languageserver": {
    "graphql": {
      "command": "graphql-lsp",
      "args": ["server", "-m", "stream"],
      "filetypes": [
        "typescript",
        "typescriptreact",
        "javascript",
        "javascriptreact",
        "graphql"
      ],
      "trace.server": "verbose"
    }
  }
}

@acao
Copy link
Member

acao commented Apr 20, 2022

@ernie canary release i broken, please use stable (we are having issues with automating the pre-releases)

@ernie
Copy link

ernie commented Apr 20, 2022

@acao I wound up in this thread because I was having a problem with stable, unfortunately. I hoped the build you referenced above would work as a fix but didn't. :(

@shaksiper
Copy link

I am having the same issue with the version 3.2.27,
using vanilla config provided by neovim/nvim-lspconfig
so still no fix...

There are others having the same problem

@wilhelmeek
Copy link

wilhelmeek commented Jun 13, 2022

3.2.27 as well using neovim/nvim-lspconfig.

My logs show the following errors:

graphql-language-service-usage-logs: Error: Cannot read property 'catch' of undefined\n"
UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'getProjectForFile' of undefined\n    at MessageProcessor.handleDidOpenOrSaveNotification (/Users/wilhelmeek/.config/yarn/global/node_modules/graphql-language-service-server/dist/MessageProcessor.js:193:44)\n    at processTicksAndRejections (internal/process/task_queues.js:95:5)\n    at async /Users/wilhelmeek/.config/yarn/global/node_modules/graphql-language-service-server/dist/startServer.js:145:29\n"
UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'catch' of undefined\n    at reply (/Users/wilhelmeek/.config/yarn/global/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.js:375:41)\n    at /Users/wilhelmeek/.config/yarn/global/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.js:454:25\n"

Haven't looked into it deeply, but quick skim looks like it may be related to the GraphQLCache object on the MessageProcessor.

@acao tagging you because you asked for a stack trace above

@acao
Copy link
Member

acao commented Jun 13, 2022

@wilhelmeek can you try a few patch versions earlier?

someone merged some untested changes as eslint fixes for this release over the weekend, without giving me a chance to test the language server

@wilhelmeek
Copy link

wilhelmeek commented Jun 13, 2022

@acao thanks for that. On 3.2.19 the above errors are no longer present in logs. Unfortunately this version still doesn't seem to work with my standard Neovim LSP setup.

If it's of any help, here are some logs when running only the GraphQL client configuration:

[INFO][2022-06-13 16:29:52] .../vim/lsp/rpc.lua:261	"Starting RPC client"	{  args = { "server", "-m", "stream" },  cmd = "graphql-lsp",  extra = {    cwd = "REMOVED",    env = {      PATH = "REMOVED"    }  }}
[DEBUG][2022-06-13 16:29:52] .../vim/lsp/rpc.lua:347	"rpc.send"	{  id = 1,  jsonrpc = "2.0",  method = "initialize",  params = {    capabilities = {      callHierarchy = {        dynamicRegistration = false      },      textDocument = {        codeAction = {          codeActionLiteralSupport = {            codeActionKind = {              valueSet = { "", "Empty", "QuickFix", "Refactor", "RefactorExtract", "RefactorInline", "RefactorRewrite", "Source", "SourceOrganizeImports", "quickfix", "refactor", "refactor.extract", "refactor.inline", "refactor.rewrite", "source", "source.organizeImports" }            }          },          dataSupport = true,          dynamicRegistration = false,          resolveSupport = {            properties = { "edit" }          }        },        completion = {          completionItem = {            commitCharactersSupport = true,            deprecatedSupport = true,            documentationFormat = { "markdown", "plaintext" },            insertReplaceSupport = true,            labelDetailsSupport = true,            preselectSupport = true,            resolveSupport = {              properties = { "documentation", "detail", "additionalTextEdits" }            },            snippetSupport = true,            tagSupport = {              valueSet = { 1 }            }          },          completionItemKind = {            valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 }          },          contextSupport = false,          dynamicRegistration = false        },        declaration = {          linkSupport = true        },        definition = {          linkSupport = true        },        documentHighlight = {          dynamicRegistration = false        },        documentSymbol = {          dynamicRegistration = false,          hierarchicalDocumentSymbolSupport = true,          symbolKind = {            valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 }          }        },        hover = {          contentFormat = { "markdown", "plaintext" },          dynamicRegistration = false        },        implementation = {          linkSupport = true        },        publishDiagnostics = {          relatedInformation = true,          tagSupport = {            valueSet = { 1, 2 }          }        },        references = {          dynamicRegistration = false        },        rename = {          dynamicRegistration = false,          prepareSupport = true        },        signatureHelp = {          dynamicRegistration = false,          signatureInformation = {            activeParameterSupport = true,            documentationFormat = { "markdown", "plaintext" },            parameterInformation = {              labelOffsetSupport = true            }          }        },        synchronization = {          didSave = true,          dynamicRegistration = false,          willSave = false,          willSaveWaitUntil = false        },        typeDefinition = {          linkSupport = true        }      },      window = {        showDocument = {          support = false        },        showMessage = {          messageActionItem = {            additionalPropertiesSupport = false          }        },        workDoneProgress = true      },      workspace = {        applyEdit = true,        configuration = true,        symbol = {          dynamicRegistration = false,          hierarchicalWorkspaceSymbolSupport = true,          symbolKind = {            valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 }          }        },        workspaceEdit = {          resourceOperations = { "rename", "create", "delete" }        },        workspaceFolders = true      }    },    clientInfo = {      name = "Neovim",      version = "0.7.0"    },    initializationOptions = vim.empty_dict(),    processId = 34729,    rootPath = "REMOVED",    rootUri = "REMOVED",    trace = "off",    workspaceFolders = { {        name = "REMOVED",        uri = "REMOVED"      } }  }}
[ERROR][2022-06-13 16:29:52] .../vim/lsp/rpc.lua:420	"rpc"	"graphql-lsp"	"stderr"	'13/06/2022, 4:29:52 pm [3] (pid: 34853) graphql-language-service-usage-logs: {"type":"usage","messageType":"initialize"}\n'
[DEBUG][2022-06-13 16:29:52] .../vim/lsp/rpc.lua:454	"rpc.receive"	{  id = 1,  jsonrpc = "2.0",  result = {    capabilities = {      completionProvider = {        resolveProvider = true,        triggerCharacters = { " ", ":", "$", "(", "@" }      },      definitionProvider = true,      documentSymbolProvider = true,      hoverProvider = true,      textDocumentSync = 1,      workspace = {        workspaceFolders = {          changeNotifications = true,          supported = true        }      },      workspaceSymbolProvider = true    }  }}
[DEBUG][2022-06-13 16:29:52] .../vim/lsp/rpc.lua:347	"rpc.send"	{  jsonrpc = "2.0",  method = "initialized",  params = vim.empty_dict()}
[DEBUG][2022-06-13 16:29:52] .../lua/vim/lsp.lua:982	"LSP[graphql]"	"server_capabilities"	{  completionProvider = {    resolveProvider = true,    triggerCharacters = { " ", ":", "$", "(", "@" }  },  definitionProvider = true,  documentSymbolProvider = true,  hoverProvider = true,  textDocumentSync = 1,  workspace = {    workspaceFolders = {      changeNotifications = true,      supported = true    }  },  workspaceSymbolProvider = true}
[INFO][2022-06-13 16:29:52] .../lua/vim/lsp.lua:983	"LSP[graphql]"	"initialized"	{  resolved_capabilities = {    call_hierarchy = false,    code_action = false,    code_lens = false,    code_lens_resolve = false,    completion = true,    declaration = false,    document_formatting = false,    document_highlight = false,    document_range_formatting = false,    document_symbol = true,    execute_command = false,    find_references = false,    goto_definition = true,    hover = true,    implementation = false,    rename = false,    signature_help = false,    signature_help_trigger_characters = {},    text_document_did_change = 1,    text_document_open_close = true,    text_document_save = true,    text_document_save_include_text = false,    text_document_will_save = false,    text_document_will_save_wait_until = false,    type_definition = false,    workspace_folder_properties = {      changeNotifications = true,      supported = true    },    workspace_symbol = true  }}
[DEBUG][2022-06-13 16:29:52] .../vim/lsp/rpc.lua:347	"rpc.send"	{  jsonrpc = "2.0",  method = "textDocument/didOpen",  params = {    textDocument = {      languageId = "typescriptreact",      text = "REMOVED",      uri = "REMOVED",      version = 0    }  }}

No other messages are sent or received regardless of actioned hover requests on my part. I'm not receiving any diagnostics events either.

Let me know if there's anything else I can provide that may be of help.

@wilhelmeek
Copy link

@acao thanks for looping back on this! Really sorry for the confusion, but the cache error disappeared entirely for me when using patch version 19 as I mentioned in this comment: #2230 (comment)

The broken behaviour I (and I believe other nvim lsp / coc.nvim users) are experiencing is initial client/server handshake and then silence rather than the cache errors I had initially reported.

@acao
Copy link
Member

acao commented Jun 25, 2022

ah! likely related to requesting settings then, perhaps

I'm not ashamed to admit I have no idea what I'm doing here, does this seem to indicate that i have vim coc installed? should i be using nvim instead of vim? I ran :CocInstall coc-graphql and it completed, but I still have more to configure to get the LSP server working it seems

Screenshot 2022-06-25 at 12 08 04

update: reproduced it finally! forgot we use a legacy config at work because of intellij users, so i just had to tweak my config:

{
 "languageserver": {
  "graphql": {
    "command": "graphql-lsp",
    "args": ["server", "-m", "stream"],
    // customize filetypes to your needs
    "filetypes": ["typescript", "typescriptreact", "graphql"],
    "initializationOptions": { "graphql-config.load.legacy": true }
  }
 }
}

Screenshot 2022-06-25 at 12 21 23

@acao
Copy link
Member

acao commented Jun 25, 2022

In my case, it's a benign graphql-config [ProjectNotFoundError] that should be trapped and never reported as per a recent change. So the issue here is probably with how vim-coc is handling our exceptions, or how we are trapping the ones we don't care about. The LSP server should not be triggering process.on('uncaghtException') with any client, which is how the client is reporting this error it seems https://github.com/neoclide/coc.nvim/blob/70f11e074f45bc1bed1c17e3b0c2cf687f5582b6/src/main.ts#L13

@acao
Copy link
Member

acao commented Jun 25, 2022

I'm confused as to how to debug this locally, and hitting a wall. The above instructions for getting it working with a local copy aren't working for me, perhaps because I ran :CocInstall coc-graphql and my local coc-settings.json is being bypassed? The same graphql config is working fine with the latest vscode-graphql, and there these exceptions are swallowed as designed, without crashing the server.

Hopefully I'll have more time next weekend, but after 5 hours on this I have gotten nowhere, though at least I think I have it set up and can reproduce the bug.

Edit:

@benjie is much more experienced with vim than I, he is extremely busy, but perhaps he knows some other graphql core oss folks who are vim users who would like to help?

or perhaps @wilhelmeek would you like to schedule a time to work through this together?

@benjie
Copy link
Member

benjie commented Jun 29, 2022

Afraid I've not used coc-graphql in a while, though it's awesomely helpful I tend to only use it when I'm working on a GraphQL frontend, and these days I'm focussed more on the backend (and on things that coc-graphql can't really help with). I've sent out a tweet though... so 😌😉

@acao
Copy link
Member

acao commented Jun 29, 2022

@benjie thank you! Hopefully someone has time or interest. @stonexer perhaps you‘d be interested in taking a look? Both vscode and nvim coc have changed their exception handling all of a sudden and I just resolved the former.

I think it’s just a lingering uncaught exception somewhere, or just that the LSP server is behaving differently because of something the nvim coc client expects. I tried debugging the LSP server with vim to log to output channel uncaught exceptions using process.on(), but i couldn’t get my vim instance to load the locally built LSP server I was trying to debug, or this was not showing an uncaught exception. I at least figured out some of the COC commands for debugging the lsp server in vim.

@wilhelmeek
Copy link

wilhelmeek commented Jun 29, 2022

Hey @acao very sorry for the delay in replying. I'd be happy to schedule some time to have a look at this together 😄 Not sure what the best way is to get this arranged, but I can hop on a Discord or Zoom (or equiv) sometime that suits both of our timezones

@howlinbash
Copy link

howlinbash commented Jul 6, 2022

I have the same problem. I wont be able to do much work on it today but I can offer a slight improvement to graphql-lsp binary.

https://github.com/graphql/graphiql/blob/main/packages/graphql-language-service-cli/src/cli.ts#L113-L115

      process.stdout.write(
        'An error was thrown from GraphQL language service: ' + String(error),
      );

This line should be changed to

process.stderr.write(

Also I console.logged the error and I got a stack trace from :CocCommand workspace.showOutput

TypeError: Cannot read properties of undefined (reading 'catch')
    at reply (/home/bash/.nvm/versions/node/v16.15.1/lib/node_modules/graphql-language-service-cli/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.js:375:41)
    at /home/bash/.nvm/versions/node/v16.15.1/lib/node_modules/graphql-language-service-cli/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.js:454:25
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
An error was thrown from GraphQL language service: TypeError: Cannot read properties of undefined (reading 'catch')[Info  - 10:59:56] Connection to server got closed. Server will restart.

This line in the vscode-jsonrpc is returning undefined from the write method

    messageWriter.write(message).catch(() => logger.error(`Sending response failed.`));

I will have a little bit more time to look at this next week perhaps but thought I should at least share these findings for now.

@acao, Would you like me to make a PR for the stdout --> stderr change?

@acao
Copy link
Member

acao commented Jul 6, 2022

Ahhh that would do it! And it explains why this is in the CLI and not other server implementations. Please open that PR, that would be wonderful.

i think nvim-coc changed it’s behavior on unhandled exceptions to match a recent vscode release, so a non-0 exit code would trigger this behavior where a bit of the CLI service layer causing this escaped me

@acao
Copy link
Member

acao commented Jul 6, 2022

@wilhelmeek thank you kindly for the offer, but working on a huge project at work right now so it might be a while before I have much headspace for this again. Hopefully this stderr usage in cli is it!

xuanduc987 added a commit to xuanduc987/graphiql that referenced this issue Jul 7, 2022
Between MINOR version of vscode-languageserver-protocol, the version of
vscode-jsonrpc that it depends on changed in **MAJOR** version.

Thus, this PR try to ensure the user of this package use compatible
version of vscode-languageserver-protocol and vscode-jsonrpc.

I think this will fixes graphql#2230
xuanduc987 added a commit to xuanduc987/graphiql that referenced this issue Jul 7, 2022
…lved

Between MINOR version of vscode-languageserver-protocol, the version of
vscode-jsonrpc that it depends on changed in **MAJOR** version.

Thus, this PR try to ensure the user of this package use compatible
version of vscode-languageserver-protocol and vscode-jsonrpc.

I think this will fixes graphql#2230
@acao acao mentioned this issue Jul 8, 2022
@acao
Copy link
Member

acao commented Jul 8, 2022

thanks to @xuanduc987 we have a new fix release (I hope) for graphql-language-service-cli! please give it a try if y'all can and let me know if that helps! I will close the ticket once users confirm the fix, of course :)

sorry this took so long everyone :/

@lorenries
Copy link

lorenries commented Jul 8, 2022

I can't say anything about coc, but 3.2.30 fixed the graphql language service with the neovim lsp client (which I think was the same issue)! Thanks for the release 🙏🏻

@wilhelmeek
Copy link

Thanks @acao and @howlinbash — works great now 🙏

@wongjiahau
Copy link

3.2.30 works for me too! Thank you @acao and @howlinbash 🙏

@xuanduc987
Copy link

I'm afraid the fix is not enough for yarn user like me (install graphql-language-service-cli with yarn global add)

Go to yarn global dir, and run yarn why vscode-languageserver-protocol show

yarn why v1.22.18
warning package.json: No license field
[1/4] 🤔  Why do we have the module "vscode-languageserver-protocol"...?
[2/4] 🚚  Initialising dependency graph...
[3/4] 🔍  Finding dependency...
[4/4] 🚡  Calculating file sizes...
=> Found "vscode-languageserver-protocol@3.15.3"
info Reasons this module exists
   - "graphql-language-service-cli#graphql-language-service-server" depends on it
   - Hoisted from "graphql-language-service-cli#graphql-language-service-server#vscode-languageserver-protocol"
info Disk size without dependencies: "284KB"
info Disk size with unique dependencies: "836KB"
info Disk size with transitive dependencies: "836KB"
info Number of shared dependencies: 2
=> Found "vscode-languageserver#vscode-languageserver-protocol@3.17.1"
info This module exists because "graphql-language-service-cli#graphql-language-service-server#vscode-languageserver" depends on it.
info Disk size without dependencies: "504KB"
info Disk size with unique dependencies: "1.03MB"
info Disk size with transitive dependencies: "1.03MB"
info Number of shared dependencies: 2
✨  Done in 0.23s.

yarn doesn't select the hoisted version for vscode-languageserver#vscode-languageserver-protocol, but instead use the latest version satisfy version range specified in vscode-languageserver package.json.

I guess we have to upgrade vscode-languageserver to latest version to fix this completely (which could be very time consuming)


Workaround:
add resolutions field to package.json file in yarn global dir force yarn to choose vscode-languageserver-protocol@3.15.3

  "resolutions": {
    "graphql-language-service-cli/graphql-language-service-server/vscode-languageserver/vscode-languageserver-protocol": "3.15.3"
  }

@acao
Copy link
Member

acao commented Jul 9, 2022

Glad this workaround works for some

I will take a look at upgrading vscode-languageserver. we need to update our implementation anyways, yeah. perhaps it will give us more features for (eventual) workspaces support, nvim.coc supports LSP workspaces correct?

acao added a commit that referenced this issue Jul 10, 2022
… hood. seems to work fine for IPC in vscode-graphql at least!

hopefully this solves #2230 once and for all!
acao added a commit that referenced this issue Jul 10, 2022
… hood. seems to work fine for IPC in vscode-graphql at least!

hopefully this solves #2230 once and for all!
@acao
Copy link
Member

acao commented Jul 10, 2022

@xuanduc987 this upgrade of vscode-languageservice and vscode-jsonrpc seems to consolidate things a bit!

here is a canary release of the CLI for folks to try with nvim.coc:
#2557 (comment)

graphql-language-service-cli@3.3.0-canary-8d6d7f38.0

so:

npm i -g graphql-language-service-cli@3.3.0-canary-8d6d7f38.0
or
yarn global add graphql-language-service-cli@3.3.0-canary-8d6d7f38.0
or
yarn dlx graphql-language-service-cli@3.3.0-canary-8d6d7f38.0

or however you have the cli installed

really hope this works!

update: I can't seem to get nvim.coc working at all with graphql now :( i don't know if my coc-settings.json is even picking up now. hopfully i figure this out!

acao added a commit that referenced this issue Jul 10, 2022
…mplementations under the hood.

also upgrades `vscode-languageclient` to match. seems to work fine for IPC in `vscode-graphql` at least!

hopefully this solves #2230 once and for all!
@acao
Copy link
Member

acao commented Jul 10, 2022

@howlinbash i also added to this PR theprocess.stderr fix you suggested for CLI! so you can try it with the canary, if that was part of your issue. i decided to try not exiting on unhandled promise rejections for better or worse, what do you think?

@xuanduc987
Copy link

Thank you very much @acao
graphql-language-service-cli@3.3.0-canary-0ab0e498.0 works for me.

@acao acao mentioned this issue Jul 10, 2022
@acao
Copy link
Member

acao commented Jul 10, 2022

3.3.0 of the cli has been released! i think this should take care of it. if anyone else is having issues after this update, please re-open

@acao acao closed this as completed Jul 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug lsp-server graphql-language-service-server
Projects
None yet
Development

Successfully merging a pull request may close this issue.