2.11.0 (2023-01-31)
Changed
-
Debian: The apt repository signing key expired on (2023-01-21). This causes
apt-get updateto fail. To fix this issue, add the latest signing key by
running the following command:$ curl https://c.quick-lint-js.com/quick-lint-js-release.key | sudo apt-key add - -
LSP: The quick-lint-js LSP server no longer accepts JSON-RPC 2.0 batch
messages. In practice, LSP clients don't use this feature, so this breaking
change should do no harm. The LSP specification recently started
prohibiting batch
messages to
match the status quo.
Added
- LSP: The LSP server now recognizes and lints TypeScript and TypeScript JSX
code. However, the editor plugins currently do not use this feature by
default. - Vim: You can opt into TypeScript support. Search for
EXPERIMENTALin
:help quick-lint-js. (Disabled by default.) - VS Code: You can now opt into experimental TypeScript support. Set the
quick-lint-js.experimental-typescriptsetting totrue. (Disabled by
default.) switch (c) { case A: break; case A: break; }now reports E0347
("duplicated case clause in switch statement") (implemented by Rebraws).- Translations: Brazilian Portuguese (implemented by Guilherme Vasconcelos).
- Mixing up the order of the
export,async, andfunctionkeywords now
reports E0326 or E0327 (implemented by Alek Lefebvre). - TypeScript types like
string?now report E0348 (implemented by
Alek Lefebvre). - Extra parentheses in function parameters now report E0349 (function
parameter cannot be parenthesized) (implemented by Harshit Aghera). - QuickJS's global variables are now recognized by default via the new
quickjs
global group (implemented by wagner riffel). - E0190 is now reported if the literal is
undefined, not onlynull,
strings, and numbers (implemented by Harshit Aghera).
Fixed
- Variables can be named according to Unicode 15 (previously Unicode 14).
- In tracing files, the thread IDs in the file headers are now correct if
tracing was enabled after startup. - E0325 is now an error rather than a warning.
0o123.toString(),0x123.toString(),0b101.toString(), and
0123.toString()no longer incorrectly report E0046, E0047, or
E0048.- Using a variable called
async, then exporting something, no longer reports
an unexpected token error (implemented by Alek Lefebvre). class C { x = 0, y; }now reports E0330 ("',' should be ';' instead")
instead of E0057 ("use of undeclared variable: y") (implemented by
clegoz).