* parser side support for annotations, inline components, new UiVersion
and all the things included in QT 5.15 parser
* SourceLocation moved from QmlJS:AST to QmlJS
* Visitors now need to handle throwRecursionDepthError
* BaseVisitor for visitors that want to override all visit
Task-number: QTCREATORBUG-23591
Change-Id: I682a30d0b08b6c929739fd0e339ef6fbde3eb630
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Add a soft check for duplicated Qml/JS imports which
adds a warning when a file contains imports that
duplicate the same URI / version or file path.
Change-Id: Ib9a1f8a90dd3cf469d90e83abc1d748901b1e353
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
This patch removes all references to QtQuick1 in qml library,
plugin, designer, profiler and tests.
Change-Id: Ie286fad96060299caae3ef328330597cf53e90d3
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Lint message M127 (Expression statements should be assignments, calls
or delete expression only) is a warning and not an error.
Task-number: QTCREATORBUG-19534
Change-Id: Iff93cd77582c28f4160fe7a8dec42f19c22436cb
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Certain ids can be ambiguous and have name clashes with properties.
Those ids are not supported in the designer.
Change-Id: Ida293d24611c467df6ef813a541e8abfc06b51cb
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
The warnings for Javascript follows the rules of JsLint, that can be
non-obvious to the user. This patch add a reference to the relevant
section in QtCreator documentation.
Task-number: QTCREATORBUG-16771
Change-Id: I64ce331c6adf4b45c2510e35d68a6ce7e37ed6d5
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Edit the new messages and add them to the Qt Creator Manual.
Change-Id: Ib494fd20861473ea824dd0d4260cad621c4081a4
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
We properly distinguish between warnings in the Qt Quick Designer and
error in a .ui.qml file.
The warnings are a subset of the errors anyway.
Change-Id: Ib3b21a845436381df10863b464c975b0b39fc063
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
Documents with those types do crash the qmlpuppet and confuse the users.
With this patch we give a clear error message and such files are not supported
anymore.
Change-Id: Iba19def2751d4dc81d90684c0c63c0274fdf49cf
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
WarnImperativeCodeNotEditableInVisualDesigner and
WarnReferenceToParentItemNotSupportedByVisualDesigner were still
declared as errors, which made files having them no editable in
designer.
Task-number: QTCREATORBUG-10940
Change-Id: I6edc03634c2d05b74ab0adf62e48fc6d03049d7e
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
In some cases we use a Qt Quick 1 code model for a file with Qt Quick 2
imports. This patch adds a warning for this, since
auto completion is incomplete.
Change-Id: I60888fd269c02f38da097104f5ecc982dd65573a
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
Moved Document::Language, Import::Type and StaticAnalysis::Severity
enums to qmljsconstants.h and renamed values removing the redundant
part.
Thus the effective length changed little or improved
(Document::QmlLanguage => Language::Qml).
The separate file allows better reuse of enum values without introducing
circular dependencies.
Change-Id: I5186d7c04f5d3f6c289068b919be5ff1ff118326
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
We need this in the rewriter to avoid warning.
Change-Id: Ia99583e080eed936d98517ce553294d3040f8cee
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
Fixed capitalization and punctuation. I will fix the docs in
another commit.
Change-Id: I2d9e34d8f2a3e48a55d29cb9610fed0e42e293c5
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
This patch adds several warnings for qml code not supported by Qt Quick
Designer.
* WarnImperativeCodeNotEditableInVisualDesigner:
This warns about imperative code affecting a visual property.
e.g.: "x = 10;"
* WarnUnsupportedTypeInVisualDesigner:
This warns about types which are currently not supported.
* WarnReferenceToParentItemNotSupportedByDesigner:
This warns about things like: "width: parent.width" in
the root item.
* WarnUndefinedValueForDesigner:
This warns about visual properties that cannot be evaluated in
the local context.
e.g.: "x: somethingNotDefinedInTheLocalContext.x"
* WarnStatesOnlyInRootItemForDesigner:
This warns about states not defined in the root item.
All the Qt Quick designer related warnings are disabled by default
in Check.
Change-Id: If31a8199fb95dc8bf6ac613634a2e442e436e267
Reviewed-by: Christian Kamm <kamm@incasoftware.de>
Getting the #include directives ready for Qt5. This includes the
new-project wizards.
Change-Id: Ia9261f1e8faec06b9285b694d2b7e9a095978d2b
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
Support basic validation for JSON files according to the
draft http://tools.ietf.org/html/draft-zyp-json-schema-03.
This is not a complete implementation yet, but it should
already be useful, since "type" verification along with
many of the attributes is done.
Change-Id: I364bc98dd92937c5e2ea9cba7e15ed8e03eb9beb
Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
It enables all checks, even those that we deem to annoying to be
enabled by default.
Also fix a bug where some disabled checks had the wrong severity.
Change-Id: Id434ad62dabafac979ee2304a85d368b9ea98fa4
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@nokia.com>