Skip to content

Releases: cushycush/qml-language-server

v1.7.0

Choose a tag to compare

@cushycush cushycush released this 17 Apr 04:07
563f76e

What's Changed

  • Document links for import statements by @cushycush in #16
  • Cross-file go-to-definition for workspace components by @cushycush in #17
  • Type inference for id member expressions in completion by @cushycush in #18
  • docs: README updates for id-member completion, cross-file go-to-def, and document links by @cushycush in #19

Full Changelog: v1.6.0...v1.7.0

v1.6.0

Choose a tag to compare

@cushycush cushycush released this 17 Apr 02:20
5b16ce3

What's Changed

  • Fix RELEASE_PAT: use token param instead of env by @cushycush in #14
  • Signature help from qmltypes, range formatting, folding ranges (1.6.0) by @cushycush in #13
  • Fix AUR workflow: create builder user for makepkg by @cushycush in #15

Full Changelog: v1.5.0...v1.6.0

v1.5.0

Choose a tag to compare

@github-actions github-actions released this 16 Apr 21:33
2e95a03
Walk prototype chain for inherited completions, drop ResolveProvider,…

v1.4.0

Choose a tag to compare

@github-actions github-actions released this 16 Apr 07:24
e40f4f5
Parse qmltypes/qmldir for full Qt module type discovery (1.4.0) (#7)

* feat(qmltypes): add data structures for parsed qmltypes and qmldir

* feat(qmltypes): recursive descent parser for .qmltypes DSL

Tokenizer and parser that handles Module, Component, Property, Signal,
Method, Enum, and Parameter blocks. Supports both Qt5 (object-map) and
Qt6 (string-array) enum value formats, dotted C++ type names, and the
import preamble. Includes cppTypeToQML for mapping C++ types to
QML-visible names.

* feat(qmltypes): add qmldir file parser

* feat(qmltypes): discover Qt modules and register types at startup

Walks /usr/lib/qt6/qml, /usr/lib/qt/qml, and QML_IMPORT_PATH for
qmldir files, parses their referenced .qmltypes, and registers types,
properties, signals, methods, and enums into the symbol registry.
Hard-coded entries are never overwritten — qmltypes augments them.
Discovery runs in a goroutine during Initialize.

* test(qmltypes): cover parser, qmldir, exports, and real Qt6 files

Fixes the identifier lexer to only consume :: (C++ scope operator) and
not single : (attribute separator). Adds tests for component attributes,
properties, signals, methods, enums (Qt5 and Qt6 format), C++ type
mapping, export parsing, qmldir parsing, and an integration test
against the real Qt6 QtQuick module.

* docs: cut 1.4.0 with qmltypes module discovery

* dist: add AUR PKGBUILDs for -bin and -git packages

* ci: auto-update AUR -bin package on release

Triggers on non-prerelease GitHub releases. Downloads the Linux
zip assets, computes sha256sums, updates the PKGBUILD with the new
version and checksums, generates .SRCINFO, and pushes to AUR.
Requires AUR_SSH_KEY secret.

* fix: remove unused lookupPrototype and qtVersionFromExport

* docs: update README with new features and AUR installation

* docs: restore full blink.cmp config in README

* docs: simplify blink.cmp config to essentials

v1.3.1

Choose a tag to compare

@github-actions github-actions released this 16 Apr 05:23
0e5c370
Fix redundant inlay hints on property bindings (1.3.1) (#6)

* fix(inlay-hints): only show parameter hints on function call arguments

Inlay hints previously echoed the property name on every ui_binding,
which was redundant since the name is already visible in the source.
Now hints are only emitted for call-expression arguments whose callee
is in the known signature registry (Qt.rect, console.log, etc.),
showing the parameter name being filled in.

* docs: cut 1.3.1 with inlay hints fix

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 15 Apr 08:31
db3e891
Document formatting (1.3.0) (#5)

* feat(formatting): re-indent + trim whitespace pass for textDocument/formatting

Whitespace-only formatter that walks the document tracking string and
comment state so braces inside those don't move the indent depth. Each
line is re-indented to its brace depth, trailing whitespace is trimmed,
runs of blank lines collapse to one, and the file is given exactly one
trailing newline. Honours the client's TabSize and InsertSpaces options.
Token content is never modified — broken docs format the parts that
parse cleanly.

* feat(formatting): advertise DocumentFormattingProvider in capabilities

* test(formatting): cover indentation, trim, blanks, tabs, strings, finalize

* docs: cut 1.3.0 with document formatting

v1.2.0

Choose a tag to compare

@github-actions github-actions released this 15 Apr 08:31
376a2ab
Workspace symbol search (1.2.0) (#4)

* feat(workspace-symbol): add workspace/symbol search backed by index

* feat(workspace-symbol): advertise WorkspaceSymbolProvider in capabilities

* test(workspace-symbol): cover empty query, substring filter, case-insensitivity

* docs: cut 1.2.0 with workspace symbol search

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 15 Apr 08:31
c8e8834
Semantic tokens (1.1.0) (#3)

* feat(semantic-tokens): emit tokens from the tree-sitter parse tree

Adds a textDocument/semanticTokens/full handler that walks the parse
tree and emits tokens for imports (namespace + import keyword), object
types, property and binding names, signal handlers (event), required
properties, comments, strings, numbers, regexes, and keyword literals.
Multi-line strings/comments are split per line so clients render every
line. Tokens are delta-encoded per the LSP spec.

* feat(semantic-tokens): advertise SemanticTokensProvider in capabilities

* test(semantic-tokens): cover legend, delta encoding, and token coverage

* docs: cut 1.1.0 with semantic tokens, tests, and DocumentSymbol fix

v1.0.2

Choose a tag to compare

@github-actions github-actions released this 15 Apr 06:48
99244f9
v1.0.2 — Type-aware property completions

- Property completions now appear inside any `Foo { ... }` body (blank
  line, mid-typing, and tree-sitter-collapsed-to-ERROR cases handled
  via brace-balance fallback).
- Per-type property tables for Window, Text, Rectangle, Image,
  MouseArea, AbstractButton, Flickable, ListView, GridView, Loader,
  Timer, Column, Row, Grid, with inheritance (e.g. ApplicationWindow
  picks up Window's properties).

v1.0.1

Choose a tag to compare

@github-actions github-actions released this 15 Apr 03:24
v1.0.1 - CI fixes