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

qmllint library search regression

    XMLWordPrintable

    Details

    • Commits:
      889aeb20bd282744c78c74bf22ba1df7c7d57040 716619e43edaaaa4daff96be28760cc8cfcfcf66 3e47823cd1534f9167c8704d4b1c970105eca861 88bdce23e260cce2d3a163997d9032c3e6fac858 fe013bdbaecd9605ebf715215cef3cd82c1a712f

      Description

      I tried to move from a1c91787264f6f535b5cf094b57ee53058856df4 (Fri Jun 19) to current dev (not it is 86379e265e19a078545306d93c59b0d92c04920a).

      With a1c91787264f6f535b5cf094b57ee53058856df4 I can run qmllint from dev branch against 5.15 code with such command:
      qmllint -I /usr/lib/qt/qml -I /usr/lib/qt/qml/QtQml

      import QtQuick.Controls 2.15
      import QtQuick 2.15
      
      Rectangle {
          Button {
              text: "AAAA"
              onClicked: console.log("hi")
          }
      }
      

      all worked fine. If I changed onClicked to onClickedXYZ it will report unknown signal.

      But with qmllint 86379e265e19a078545306d93c59b0d92c04920a, I got:

      $ ./qtbase/bin/qmllint -I /usr/lib/qt/qml -I /usr/lib/qt/qml/QtQml /tmp/Test.qml 
      Warning: QQuickButton was not found. Did you add all import paths?
      Warning: no matching signal found for handler "onClicked" at /tmp/Test.qml:7:9
              onClicked: console.log("hi")
              ^^^^^^^^^
      

      I tried to add all paths like this:

      $ ./qtbase/bin/qmllint -I /usr/lib/qt/qml -I /usr/lib/qt/qml/QtQml -I /usr/lib/qt/qml/QtQuick/Templates.2  -I /usr/lib/qt/qml/QtQuick/Controls.2 /tmp/Test.qml 
      $ ./qtbase/bin/qmllint -I /usr/lib/qt/qml -I /usr/lib/qt/qml/QtQml -i /usr/lib/qt/qml/QtQuick/Templates.2/plugins.qmltypes  -i /usr/lib/qt/qml/QtQuick/Controls.2/plugins.qmltypes /tmp/Test.qml
      

      but still no success.

      So may be qmltypes format changed, I tried qmltypes from the same source code base
      as qmllint, but without success, if you don't use `-I` and `-i` I got:

      $ ./qtbase/bin/qmllint /tmp/Test.qml
      Warning: Button was not found. Did you add all import paths?
      Warning: no matching signal found for handler "onClicked" at /tmp/Test.qml:7:9
              onClicked: console.log("hi")
              ^^^^^^^^^
      

      If I add all possible paths:

      {nofrmat}

      ./qtbase/bin/qmllint -i qtbase/qml/QtQml/WorkerScript/plugins.qmltypes -i qtbase/qml/QtQml/plugins.qmltypes -i qtbase/qml/QtQml/Models/plugins.qmltypes -i qtbase/qml/QtQuick/Shapes/plugins.qmltypes -i qtbase/qml/QtQuick/plugins.qmltypes -i qtbase/qml/QtQuick/Layouts/plugins.qmltypes -i qtbase/qml/QtQuick/Templates/plugins.qmltypes -i qtbase/qml/QtQuick/Particles/plugins.qmltypes -i qtbase/qml/QtQuick/LocalStorage/plugins.qmltypes -i qtbase/qml/QtQuick/NativeStyle/plugins.qmltypes -i qtbase/qml/QtQuick/Controls/plugins.qmltypes -i qtbase/qml/QtQuick/Controls/Material/impl/plugins.qmltypes -i qtbase/qml/QtQuick/Controls/impl/plugins.qmltypes -i qtbase/qml/QtQuick/Controls/Fusion/impl/plugins.qmltypes -i qtbase/qml/QtQuick/Controls/Imagine/impl/plugins.qmltypes -i qtbase/qml/QtQuick/Controls/Default/impl/plugins.qmltypes -i qtbase/qml/QtQuick/Controls/Universal/impl/plugins.qmltypes -i qtbase/qml/builtins.qmltypes -i qtbase/qml/Qt/labs/wavefrontmesh/plugins.qmltypes -i qtbase/qml/Qt/labs/animation/plugins.qmltypes -i qtbase/qml/Qt/labs/settings/plugins.qmltypes -i qtbase/qml/Qt/labs/folderlistmodel/plugins.qmltypes -i qtbase/qml/Qt/labs/sharedimage/plugins.qmltypes -i qtbase/qml/Qt/labs/qmlmodels/plugins.qmltypes -i qtbase/qml/QtTest/plugins.qmltypes -i qtdeclarative/tools/qml/qml.qmltypes -i qtdeclarative/tools/qmltime/qmltime.qmltypes -i qtdeclarative/src/qml/plugins.qmltypes -i qtdeclarative/src/qmlworkerscript/plugins.qmltypes -i qtdeclarative/src/quickshapes/plugins.qmltypes -i qtdeclarative/src/imports/wavefrontmesh/plugins.qmltypes -i qtdeclarative/src/imports/layouts/plugins.qmltypes -i qtdeclarative/src/imports/localstorage/plugins.qmltypes -i qtdeclarative/src/imports/settings/plugins.qmltypes -i qtdeclarative/src/imports/folderlistmodel/plugins.qmltypes -i qtdeclarative/src/imports/sharedimage/plugins.qmltypes -i qtdeclarative/src/imports/labsmodels/plugins.qmltypes -i qtdeclarative/src/imports/labsanimation/plugins.qmltypes -i qtdeclarative/src/quick/plugins.qmltypes -i qtdeclarative/src/qmlmodels/plugins.qmltypes -i qtdeclarative/src/particles/plugins.qmltypes -i qtquickcontrols2/src/quicktemplates2/plugins.qmltypes -i qtquickcontrols2/src/quickcontrols2impl/plugins.qmltypes -i qtquickcontrols2/src/imports/controls/imagine/plugins.qmltypes -i qtquickcontrols2/src/imports/controls/imagine/impl/plugins.qmltypes -i qtquickcontrols2/src/imports/controls/material/plugins.qmltypes -i qtquickcontrols2/src/imports/controls/material/impl/plugins.qmltypes -i qtquickcontrols2/src/imports/controls/fusion/plugins.qmltypes -i qtquickcontrols2/src/imports/controls/fusion/impl/plugins.qmltypes -i qtquickcontrols2/src/imports/controls/default/plugins.qmltypes -i qtquickcontrols2/src/imports/controls/default/impl/plugins.qmltypes -i qtquickcontrols2/src/imports/controls/universal/plugins.qmltypes -i qtquickcontrols2/src/imports/controls/universal/impl/plugins.qmltypes -i qtquickcontrols2/src/imports/nativestyle/plugins.qmltypes -i qtquickcontrols2/src/quickcontrols2/plugins.qmltypes /tmp/Test.qml
      Warning: QQuickItem was not found. Did you add all import paths?

      
      

      So it find Button somehow, but can not find QQuickItem, though I add qmltypes execept from tests.

        Attachments

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

          Activity

            People

            Assignee:
            ulherman Ulf Hermann
            Reporter:
            evgeniy_dushistov evgeniy_dushistov
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews