<feed xmlns='http://www.w3.org/2005/Atom'>
<title>qt/qtdeclarative.git/tools/qmlls/qmllanguageservertool.cpp, branch 6.4.2</title>
<subtitle>Qt Declarative (Quick 2)
</subtitle>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/'/>
<entry>
<title>Port from container::count() and length() to size() - V5</title>
<updated>2022-11-18T22:52:04+00:00</updated>
<author>
<name>Marc Mutz</name>
<email>marc.mutz@qt.io</email>
</author>
<published>2022-11-11T14:53:00+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=7a501ec6c82c8f8d5997b5d30e667d7820faed1c'/>
<id>7a501ec6c82c8f8d5997b5d30e667d7820faed1c</id>
<content type='text'>
This is a the same semantic patch (qt-port-to-std-compatible-api V5
with config Scope: 'Container') as in dev. I've re-ran it in 6.4 to
avoid cherry-pick conflicts.

Change-Id: I9621dee5ed328b47e78919a34c307105e4311903
Reviewed-by: Volker Hilsheimer &lt;volker.hilsheimer@qt.io&gt;
Reviewed-by: Qt CI Bot &lt;qt_ci_bot@qt-project.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a the same semantic patch (qt-port-to-std-compatible-api V5
with config Scope: 'Container') as in dev. I've re-ran it in 6.4 to
avoid cherry-pick conflicts.

Change-Id: I9621dee5ed328b47e78919a34c307105e4311903
Reviewed-by: Volker Hilsheimer &lt;volker.hilsheimer@qt.io&gt;
Reviewed-by: Qt CI Bot &lt;qt_ci_bot@qt-project.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qmlls: reduce latency by using "dry" QHttpMessageStreamParser</title>
<updated>2022-09-06T13:53:25+00:00</updated>
<author>
<name>Sami Shalayel</name>
<email>sami.shalayel@qt.io</email>
</author>
<published>2022-06-10T10:05:33+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=e47a6cf215ca3dc503728fa3c790be3720b43e12'/>
<id>e47a6cf215ca3dc503728fa3c790be3720b43e12</id>
<content type='text'>
StdinReader::run() (qmllanguageservertool.cpp) just uses readSome,
which might read just a single character (and on several platforms
that is what it does), and then sends it via signal to another thread.

This is rather expensive, we should read larger chunks to be more
efficient, but we should never wait for more data if a full message
was already read (to avoid deadlocks). This commit uses
QHttpMessageStreamParser in dry mode to know when to send the data
via the signal, that is, when a message has been entirely read.

Change-Id: Iee795ded0a539413ec15c686a416f2ccf6673ec9
Task-number: QTBUG-104553
Fixes: QTBUG-104150
Reviewed-by: Fabian Kosmale &lt;fabian.kosmale@qt.io&gt;
(cherry picked from commit 1c7c277bf17c33fe00583db79626cb1015c5d15f)
Reviewed-by: Qt Cherry-pick Bot &lt;cherrypick_bot@qt-project.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
StdinReader::run() (qmllanguageservertool.cpp) just uses readSome,
which might read just a single character (and on several platforms
that is what it does), and then sends it via signal to another thread.

This is rather expensive, we should read larger chunks to be more
efficient, but we should never wait for more data if a full message
was already read (to avoid deadlocks). This commit uses
QHttpMessageStreamParser in dry mode to know when to send the data
via the signal, that is, when a message has been entirely read.

Change-Id: Iee795ded0a539413ec15c686a416f2ccf6673ec9
Task-number: QTBUG-104553
Fixes: QTBUG-104150
Reviewed-by: Fabian Kosmale &lt;fabian.kosmale@qt.io&gt;
(cherry picked from commit 1c7c277bf17c33fe00583db79626cb1015c5d15f)
Reviewed-by: Qt Cherry-pick Bot &lt;cherrypick_bot@qt-project.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Use SPDX license identifiers</title>
<updated>2022-06-14T15:44:31+00:00</updated>
<author>
<name>Lucie Gérard</name>
<email>lucie.gerard@qt.io</email>
</author>
<published>2022-05-13T13:12:05+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=99f501c2fca1c8cc33b48ff694c9243b92d0742c'/>
<id>99f501c2fca1c8cc33b48ff694c9243b92d0742c</id>
<content type='text'>
Replace the current license disclaimer in files by
a SPDX-License-Identifier.
Files that have to be modified by hand are modified.
License files are organized under LICENSES directory.

Task-number: QTBUG-67283
Change-Id: I63563bbeb6f60f89d2c99660400dca7fab78a294
Reviewed-by: Shawn Rutledge &lt;shawn.rutledge@qt.io&gt;
(cherry picked from commit 0dc4fd240a2897c5c443a0ef6d84c416843e4938)
Reviewed-by: Jörg Bornemann &lt;joerg.bornemann@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Replace the current license disclaimer in files by
a SPDX-License-Identifier.
Files that have to be modified by hand are modified.
License files are organized under LICENSES directory.

Task-number: QTBUG-67283
Change-Id: I63563bbeb6f60f89d2c99660400dca7fab78a294
Reviewed-by: Shawn Rutledge &lt;shawn.rutledge@qt.io&gt;
(cherry picked from commit 0dc4fd240a2897c5c443a0ef6d84c416843e4938)
Reviewed-by: Jörg Bornemann &lt;joerg.bornemann@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qmlls: completion support</title>
<updated>2022-05-19T09:03:39+00:00</updated>
<author>
<name>Fawzi Mohamed</name>
<email>fawzi.mohamed@qt.io</email>
</author>
<published>2022-03-14T13:51:13+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=538600cf5adb748f7162aa8ea706072a7874bd02'/>
<id>538600cf5adb748f7162aa8ea706072a7874bd02</id>
<content type='text'>
Add support for completions to qmlls. This is a preliminary support
that uses QmlDom. For this reason it has some limitations, mainly
that it only uses QML types, no js completions are provided,
and no type propagation is kept into account.
On the plus side it is immediately up to date when dependencies
are updated.
The completion tries to find in which part of the qml file one is
and distinguishes mainly 4 parts:
* outside all QmlObjects
* in an import
* in a QmlObject, declaring a new binding
* in a script, or similar
It looks at the position in the editor and ts context, namely:
* the word before the cursor (which is used as filter in the client),
* the dot expression before that word
* the whole line before the cursor.

Change-Id: Iefd1332451c060d3d10c68bb427b26c1bc020666
Reviewed-by: Sona Kurazyan &lt;sona.kurazyan@qt.io&gt;
Reviewed-by: Qt CI Bot &lt;qt_ci_bot@qt-project.org&gt;
Reviewed-by: Ulf Hermann &lt;ulf.hermann@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add support for completions to qmlls. This is a preliminary support
that uses QmlDom. For this reason it has some limitations, mainly
that it only uses QML types, no js completions are provided,
and no type propagation is kept into account.
On the plus side it is immediately up to date when dependencies
are updated.
The completion tries to find in which part of the qml file one is
and distinguishes mainly 4 parts:
* outside all QmlObjects
* in an import
* in a QmlObject, declaring a new binding
* in a script, or similar
It looks at the position in the editor and ts context, namely:
* the word before the cursor (which is used as filter in the client),
* the dot expression before that word
* the whole line before the cursor.

Change-Id: Iefd1332451c060d3d10c68bb427b26c1bc020666
Reviewed-by: Sona Kurazyan &lt;sona.kurazyan@qt.io&gt;
Reviewed-by: Qt CI Bot &lt;qt_ci_bot@qt-project.org&gt;
Reviewed-by: Ulf Hermann &lt;ulf.hermann@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qmlls: add build paths</title>
<updated>2022-05-02T19:58:59+00:00</updated>
<author>
<name>Fawzi Mohamed</name>
<email>fawzi.mohamed@qt.io</email>
</author>
<published>2022-04-22T10:30:27+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=0db023bf2338f52224648822a88e90ce868e5a0c'/>
<id>0db023bf2338f52224648822a88e90ce868e5a0c</id>
<content type='text'>
keep track of build paths, keeping a build path per
project (workspace).
The build path has the following precedence:
- explicitly set build dir for all uris with a given start (for example
in a given directory)
- settings
- default value set from command line
- environment variable QMLLS_BUILD_DIRS
- heuristic looking for build* directories going up the path

Change-Id: Icd6fd4e42b242be59e574cbf8a45623d04558b08
Reviewed-by: Ulf Hermann &lt;ulf.hermann@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
keep track of build paths, keeping a build path per
project (workspace).
The build path has the following precedence:
- explicitly set build dir for all uris with a given start (for example
in a given directory)
- settings
- default value set from command line
- environment variable QMLLS_BUILD_DIRS
- heuristic looking for build* directories going up the path

Change-Id: Icd6fd4e42b242be59e574cbf8a45623d04558b08
Reviewed-by: Ulf Hermann &lt;ulf.hermann@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qmlls: set application name consistent with executable name (qmlls)</title>
<updated>2022-04-25T09:44:26+00:00</updated>
<author>
<name>Fawzi Mohamed</name>
<email>fawzi.mohamed@qt.io</email>
</author>
<published>2022-04-22T10:26:56+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=78f58a8222a5cc3c4147f895081625ce90d88670'/>
<id>78f58a8222a5cc3c4147f895081625ce90d88670</id>
<content type='text'>
Change-Id: Ica183ce08c5a647f2f7145db01dd91380992e7d3
Reviewed-by: Maximilian Goldstein &lt;max.goldstein@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ica183ce08c5a647f2f7145db01dd91380992e7d3
Reviewed-by: Maximilian Goldstein &lt;max.goldstein@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qmlls: improve documentation</title>
<updated>2021-12-23T17:42:59+00:00</updated>
<author>
<name>Fawzi Mohamed</name>
<email>fawzi.mohamed@qt.io</email>
</author>
<published>2021-12-22T08:46:39+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=4383a585efe0709104ef43edee7a1adf7d028178'/>
<id>4383a585efe0709104ef43edee7a1adf7d028178</id>
<content type='text'>
Pick-to: 6.3
Change-Id: I6092dc4f2ab5bd2fcd40e5a708ccabbf2c03eafb
Reviewed-by: Andrei Golubev &lt;andrei.golubev@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pick-to: 6.3
Change-Id: I6092dc4f2ab5bd2fcd40e5a708ccabbf2c03eafb
Reviewed-by: Andrei Golubev &lt;andrei.golubev@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qmlls: fix license header (tool -&gt; GPL)</title>
<updated>2021-12-22T09:56:51+00:00</updated>
<author>
<name>Fawzi Mohamed</name>
<email>fawzi.mohamed@qt.io</email>
</author>
<published>2021-12-21T13:06:26+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=f5ae18639d3f7516af46466d9ed3a467cb2105cb'/>
<id>f5ae18639d3f7516af46466d9ed3a467cb2105cb</id>
<content type='text'>
Pick-to: 6.3
Change-Id: I6ebd1e8f3ca9fc88f2c92cd10703540154040baf
Reviewed-by: Andrei Golubev &lt;andrei.golubev@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pick-to: 6.3
Change-Id: I6ebd1e8f3ca9fc88f2c92cd10703540154040baf
Reviewed-by: Andrei Golubev &lt;andrei.golubev@qt.io&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>qmlls: qml language server implementation</title>
<updated>2021-12-21T11:25:41+00:00</updated>
<author>
<name>Fawzi Mohamed</name>
<email>fawzi.mohamed@qt.io</email>
</author>
<published>2021-12-13T02:41:19+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=25ac957f6da559333938430eec9cc341823e22cc'/>
<id>25ac957f6da559333938430eec9cc341823e22cc</id>
<content type='text'>
This is the initial commit, with just qmllint integration, but
many of the tricky bits and the architecture are already there,
see the description in qqmllanguageserver.cpp and qqmlcodemodel.cpp

Pick-to: 6.3
Change-Id: Ie493fed02276f938fde641e8d91c67aed0514d1f
Reviewed-by: Andrei Golubev &lt;andrei.golubev@qt.io&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is the initial commit, with just qmllint integration, but
many of the tricky bits and the architecture are already there,
see the description in qqmllanguageserver.cpp and qqmlcodemodel.cpp

Pick-to: 6.3
Change-Id: Ie493fed02276f938fde641e8d91c67aed0514d1f
Reviewed-by: Andrei Golubev &lt;andrei.golubev@qt.io&gt;
</pre>
</div>
</content>
</entry>
</feed>
