Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-126290

qmlls crashes when used from the qt-official VS Code extension

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P1: Critical
    • 6.7.2
    • 6.7.1
    • QML: Tooling
    • None
    • Linux/Wayland

    Description

      qmlls that comes with 6.7.1 and 6.7.2 crashes when used from the VS Code extension.

      I've did a debug build of the 6.7 branch, and here's the verbose output:

      qt.languageserver.server: runStatus 2
      qt.languageserver.server: Did Setup
      Using the build directories found in the .qmlls.ini file. Your build folder might not be found if no .qmlls.ini files are present in the root source folder.
      Build directory path omitted: Your source folders will be searched for .qmlls.ini files.
      qt.languageserver.server: init
      qt.languageserver.server: runStatus 3
      qt.languageserver.server: runStatus 4
      [Trace - 1:35:48 PM] Received request 'client/registerCapability - (1)'.
      Params: {
          "registrations": [
              {
                  "id": "workspace.didChangeWatchedFiles",
                  "method": "workspace.didChangeWatchedFiles",
                  "registerOptions": {
                      "watchers": [
                          {
                              "globPattern": "*.{qml,js,mjs}",
                              "kind": 7
                          },
                          {
                              "globPattern": "qmldir",
                              "kind": 7
                          },
                          {
                              "globPattern": "*.qmltypes",
                              "kind": 7
                          }
                      ]
                  }
              }
          ]
      }
      
      
      [Trace - 1:35:48 PM] Sending response 'client/registerCapability - (1)'. Processing request took 0ms
      qt.languageserver.codemodel: openNeedUpdate
      qt.languageserver.codemodel: openUpdateStart
      qt.languageserver.codemodel: openUpdateSome start
      qt.languageserver.codemodel: updating doc "file:///home/jobor/playground/Qt-6.7.1/quick/quickwidgets/quickwidget/rotatingsquare.qml" to version 1 ( 1845 chars)
      qt.languageserver.server: "registration of file udates failed, will miss file changes done outside the editor due to error -32603 Request client/registerCapability failed with message: No feature implementation for workspace.didChangeWatchedFiles found. Registration failed."
      [Trace - 1:35:48 PM] Received notification 'window/logMessage'.
      Params: {
          "message": "registration of file udates failed, will miss file changes done outside the editor due to error -32603 Request client/registerCapability failed with message: No feature implementation for workspace.didChangeWatchedFiles found. Registration failed.",
          "type": 2
      }
      
      
      [Warn  - 1:35:48 PM] registration of file udates failed, will miss file changes done outside the editor due to error -32603 Request client/registerCapability failed with message: No feature implementation for workspace.didChangeWatchedFiles found. Registration failed.
      [Trace - 1:35:48 PM] Sending request 'textDocument/codeAction - (1)'.
      Params: {
          "textDocument": {
              "uri": "file:///home/jobor/playground/Qt-6.7.1/quick/quickwidgets/quickwidget/rotatingsquare.qml"
          },
          "range": {
              "start": {
                  "line": 30,
                  "character": 0
              },
              "end": {
                  "line": 30,
                  "character": 0
              }
          },
          "context": {
              "diagnostics": [],
              "triggerKind": 2
          }
      }
      
      
      [Trace - 1:35:48 PM] Received response 'textDocument/codeAction - (1)' in 25ms.
      Result: []
      
      
      ASSERT failure in takeVariant: "Should be a variant, did the parser change?", file /home/jobor/dev/qt/6.7/qtdeclarative/src/qmldom/qqmldomastcreator_p.h, line 99
      [Trace - 1:35:49 PM] Sending request 'textDocument/codeAction - (2)'.
      Params: {
          "textDocument": {
              "uri": "file:///home/jobor/playground/Qt-6.7.1/quick/quickwidgets/quickwidget/rotatingsquare.qml"
          },
          "range": {
              "start": {
                  "line": 30,
                  "character": 0
              },
              "end": {
                  "line": 30,
                  "character": 0
              }
          },
          "context": {
              "diagnostics": [],
              "triggerKind": 2
          }
      }
      
      
      [Trace - 1:35:49 PM] Sending notification '$/cancelRequest'.
      Params: {
          "id": 2
      }
      
      
      [Trace - 1:35:49 PM] Sending request 'textDocument/codeAction - (3)'.
      Params: {
          "textDocument": {
              "uri": "file:///home/jobor/playground/Qt-6.7.1/quick/quickwidgets/quickwidget/rotatingsquare.qml"
          },
          "range": {
              "start": {
                  "line": 30,
                  "character": 0
              },
              "end": {
                  "line": 30,
                  "character": 0
              }
          },
          "context": {
              "diagnostics": [],
              "triggerKind": 2
          }
      }
      
      
      [Error - 1:35:49 PM] Server process exited with signal SIGABRT.
      [Info  - 1:35:49 PM] Connection to server got closed. Server will restart.
      true
      qt.languageserver.server: runStatus 2
      qt.languageserver.server: Did Setup
      Using the build directories found in the .qmlls.ini file. Your build folder might not be found if no .qmlls.ini files are present in the root source folder.
      Build directory path omitted: Your source folders will be searched for .qmlls.ini files.
      qt.languageserver.server: init
      qt.languageserver.server: runStatus 3
      qt.languageserver.server: runStatus 4
      qt.languageserver.codemodel: openNeedUpdate
      qt.languageserver.codemodel: openUpdateStart
      qt.languageserver.server: "registration of file udates failed, will miss file changes done outside the editor due to error -32603 Request client/registerCapability failed with message: No feature implementation for workspace.didChangeWatchedFiles found. Registration failed."
      qt.languageserver.codemodel: openUpdateSome start
      qt.languageserver.codemodel: updating doc "file:///home/jobor/playground/Qt-6.7.1/quick/quickwidgets/quickwidget/rotatingsquare.qml" to version 1 ( 1845 chars)
      [Warn  - 1:35:49 PM] registration of file udates failed, will miss file changes done outside the editor due to error -32603 Request client/registerCapability failed with message: No feature implementation for workspace.didChangeWatchedFiles found. Registration failed.
      ASSERT failure in takeVariant: "Should be a variant, did the parser change?", file /home/jobor/dev/qt/6.7/qtdeclarative/src/qmldom/qqmldomastcreator_p.h, line 99
      [Error - 1:35:49 PM] Server process exited with signal SIGABRT.
      [Info  - 1:35:49 PM] Connection to server got closed. Server will restart.
      true
      qt.languageserver.server: runStatus 2
      qt.languageserver.server: Did Setup
      Using the build directories found in the .qmlls.ini file. Your build folder might not be found if no .qmlls.ini files are present in the root source folder.
      Build directory path omitted: Your source folders will be searched for .qmlls.ini files.
      qt.languageserver.server: init
      qt.languageserver.server: runStatus 3
      qt.languageserver.server: runStatus 4
      qt.languageserver.codemodel: openNeedUpdate
      qt.languageserver.codemodel: openUpdateStart
      qt.languageserver.server: "registration of file udates failed, will miss file changes done outside the editor due to error -32603 Request client/registerCapability failed with message: No feature implementation for workspace.didChangeWatchedFiles found. Registration failed."
      qt.languageserver.codemodel: openUpdateSome start
      qt.languageserver.codemodel: updating doc "file:///home/jobor/playground/Qt-6.7.1/quick/quickwidgets/quickwidget/rotatingsquare.qml" to version 1 ( 1845 chars)
      [Warn  - 1:35:49 PM] registration of file udates failed, will miss file changes done outside the editor due to error -32603 Request client/registerCapability failed with message: No feature implementation for workspace.didChangeWatchedFiles found. Registration failed.
      ASSERT failure in takeVariant: "Should be a variant, did the parser change?", file /home/jobor/dev/qt/6.7/qtdeclarative/src/qmldom/qqmldomastcreator_p.h, line 99
      [Error - 1:35:50 PM] Server process exited with signal SIGABRT.
      [Info  - 1:35:50 PM] Connection to server got closed. Server will restart.
      true
      qt.languageserver.server: runStatus 2
      qt.languageserver.server: Did Setup
      Using the build directories found in the .qmlls.ini file. Your build folder might not be found if no .qmlls.ini files are present in the root source folder.
      Build directory path omitted: Your source folders will be searched for .qmlls.ini files.
      qt.languageserver.server: init
      qt.languageserver.server: runStatus 3
      qt.languageserver.server: runStatus 4
      qt.languageserver.codemodel: openNeedUpdate
      qt.languageserver.codemodel: openUpdateStart
      qt.languageserver.server: "registration of file udates failed, will miss file changes done outside the editor due to error -32603 Request client/registerCapability failed with message: No feature implementation for workspace.didChangeWatchedFiles found. Registration failed."
      qt.languageserver.codemodel: openUpdateSome start
      qt.languageserver.codemodel: updating doc "file:///home/jobor/playground/Qt-6.7.1/quick/quickwidgets/quickwidget/rotatingsquare.qml" to version 1 ( 1845 chars)
      [Warn  - 1:35:50 PM] registration of file udates failed, will miss file changes done outside the editor due to error -32603 Request client/registerCapability failed with message: No feature implementation for workspace.didChangeWatchedFiles found. Registration failed.
      ASSERT failure in takeVariant: "Should be a variant, did the parser change?", file /home/jobor/dev/qt/6.7/qtdeclarative/src/qmldom/qqmldomastcreator_p.h, line 99
      [Error - 1:35:50 PM] Server process exited with signal SIGABRT.
      [Info  - 1:35:50 PM] Connection to server got closed. Server will restart.
      true
      qt.languageserver.server: runStatus 2
      qt.languageserver.server: Did Setup
      Using the build directories found in the .qmlls.ini file. Your build folder might not be found if no .qmlls.ini files are present in the root source folder.
      Build directory path omitted: Your source folders will be searched for .qmlls.ini files.
      qt.languageserver.server: init
      qt.languageserver.server: runStatus 3
      qt.languageserver.server: runStatus 4
      qt.languageserver.codemodel: openNeedUpdate
      qt.languageserver.codemodel: openUpdateStart
      qt.languageserver.server: "registration of file udates failed, will miss file changes done outside the editor due to error -32603 Request client/registerCapability failed with message: No feature implementation for workspace.didChangeWatchedFiles found. Registration failed."
      qt.languageserver.codemodel: openUpdateSome start
      qt.languageserver.codemodel: updating doc "file:///home/jobor/playground/Qt-6.7.1/quick/quickwidgets/quickwidget/rotatingsquare.qml" to version 1 ( 1845 chars)
      [Warn  - 1:35:50 PM] registration of file udates failed, will miss file changes done outside the editor due to error -32603 Request client/registerCapability failed with message: No feature implementation for workspace.didChangeWatchedFiles found. Registration failed.
      ASSERT failure in takeVariant: "Should be a variant, did the parser change?", file /home/jobor/dev/qt/6.7/qtdeclarative/src/qmldom/qqmldomastcreator_p.h, line 99
      [Error - 1:35:50 PM] Server process exited with signal SIGABRT.
      [Error - 1:35:50 PM] The qmlls server crashed 5 times in the last 3 minutes. The server will not be restarted. See the output for more information.
      

      Note that the problem doesn't happen with Qt 6.8.0.

      If there's something that we can do on the VS Code side to work around this issue, we'd be happy to implement it.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            qtqmlteam Qt Qml Team User
            jbornema Joerg Bornemann
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes