Skip to content

Releases: g-plane/wasm-language-tools

v0.5.0

14 May 07:24
v0.5.0
0e0da63
Compare
Choose a tag to compare

Features

  • Added support of expression in module field table.
  • service: Recognize funcidx in elem list.
  • service: Recognize tableidx in table use.
  • service: Detect typeidx in ref.null.
  • service: Added completions of funcidx after func keyword in module field elem.
  • service: Added completions for instructions in module field table.
  • service: Added completions for ref keyword in table type.
  • service: Added support of type checking in module field table.
  • service: Added support of type checking in elem list.
  • service: Added support of type checking in offset.
  • service: Check mem type.
  • service: Check table expression if it is constant.
  • service: Check offset expression if it is constant.
  • service: Check elem expression if it is constant.
  • service: Check ref type in module field elem.
  • service: Added support of hovering on memory.
  • service: Added support of hovering on table.

Fixes

  • service: Fixed completion of item keyword.
  • formatter: Fixed formatting implicit module.
  • formatter: Added missing node kinds in range formatting.

v0.4.1

13 Apr 03:52
v0.4.1
86f1fb1
Compare
Choose a tag to compare

Features

  • service: Added support of br_on_cast.
  • service: Added support of br_on_cast_fail.
  • service: Added support of ref.func.
  • service: Check non-defaultable in *.new_default instructions.

Fixes

  • service: Function can be a block label.
  • service: Fixed "import-occurrence" false positive.

v0.4.0

30 Mar 02:32
v0.4.0
8d42711
Compare
Choose a tag to compare

🎉 This release comes with WebAssembly GC support.

Breaking Changes

  • Renamed "module field type" to "type def".
  • Removed "val_type" syntax kind.

Features

  • service: Updated message of needless-mut.
  • service: Moved from global-mut to mutated-immutable.
  • service: Added lint for multiple memories.
  • service: Made multi-modules configurable.
  • service: Added support of global.set in type checking.
  • service: Added support of local.set and local.tee in type checking.
  • service: Show global's type in "document symbol".
  • service: Show function local types in "document symbol".
  • service: Check global expression.
  • service: Check block type.
  • service: Check start function.
  • service: Tweaked selection range of document symbol.
  • service: Enhanced "document symbol" of type definitions.
  • service: Type hierarchy support.
  • service: Show symbol kind text in document symbols.
  • service: Added completions support for memory.* instructions.
  • service: Recognize memidx in memory instructions.
  • service: Added signature help support for return_call and return_call_indirect.
  • service: Marked return_call_indirect leading to unreachable.
  • service: Added support of multiple memories when checking immediates.
  • service: Added completions support for memidx in load and store instructions.
  • service: Added "idx_conversion" code action.
  • formatter: Wrap if type def too long.

Fixes

  • server: Fixed reading client capabilities of diagnostics.
  • service: Added missing config key alias.
  • service: Don't replace trivia in completions.
  • service: Avoid completions for instrs after $.
  • service: Fixed renaming symbols.
  • service: Use new type matching method for block end.
  • service: Sort symbols for "document symbol" response.
  • service: Fixed completions of ident with dot.
  • parser: Allow single quote in identifier.

v0.3.2

07 Feb 12:21
v0.3.2
daace96
Compare
Choose a tag to compare

Fixes

  • server: Fixed server not exit after stdin closed.

v0.3.1

06 Feb 14:33
v0.3.1
fef6aca
Compare
Choose a tag to compare

Fixes

  • server: Fixed editors compatibility of settings.
  • service: Fixed document highlight on non-idx integer.
  • service: Fixed checking unreachable after loop.
  • service: Fixed false positive of reachable block end.

v0.3.0

05 Feb 14:55
v0.3.0
229e67b
Compare
Choose a tag to compare

Breaking Changes

  • parser: Removed Parser type. Use parse function instead.

Features

  • server: Handle LSP requests in parallel.
  • service: Removed parameters from diagnostics' related information.
  • service: Detect unreachable code.
  • service: Detect mutating on immutable globals.
  • service: Detect needless mutable global.
  • service: Check import occurrence.
  • service: Check br_table branches.
  • service: Check immediates of call_indirect.
  • service: Report top-level error tokens.
  • service: Filter instruction names when there's a dot in completions.
  • service: Added more support of type checking.
  • service: Ensure at least one immediate in br_table.
  • service: Added "br_if_to_if_br" code action.
  • service: Added "if_br_to_br_if" code action.
  • service: Added "inline_func_type" code action.
  • service: Added code action for removing mut.
  • service: Added support of joining results and locals as code actions.
  • service: Added support of inlay hints on blocks.
  • service: Added support of "export descriptor global".
  • service: Added support of signature help on call_indirect.
  • service: Treat idx starts with underscore as used.
  • service: Show symbol kind in error message.
  • service: Recognize symbol in call_indirect.
  • service: Recognize memidx in memory instructions.
  • syntax: Added "immediate" syntax kind and remove "operand".

Fixes

  • service: Fixed missing instructions.
  • service: Fixed checking immediates of select.
  • service: Fixed hover on select with or without result type.
  • service: Fixed completions for immediates.
  • service: Fixed keyword completions in block type.
  • service: Fixed idx of different kinds.
  • service: Fixed checking duplicated names on module field table.
  • service: Fixed imported global in type checking.
  • service: Fixed false positive of unused parameters in imported function.
  • service: Fixed checking immediates in memory instructions.
  • parser: Fixed type use as immediate.

v0.2.0

05 Jan 06:56
v0.2.0
9dc2072
Compare
Choose a tag to compare

Features

  • service: Full completions support.
  • service: Selection range support.
  • service: Signature help support.
  • service: Document highlight support.
  • service: Added support of configuring formatting and linting.
  • service: Detect duplicated exports.
  • service: Detect unused items.
  • service: Detect shadowing.
  • service: Detect unknown instr.
  • service: Detect invalid immediates usage.
  • service: Prioritize type-matched locals and globals in completions.
  • service: Show compact signature for functions in completions.
  • service: Added support of implicit module.
  • service: Added diagnostic code.
  • service: Added support of block type.
  • service: Improved error message for type mismatch.
  • service: Added more support of type checking.
  • service: Added support of hover on blocks.
  • service: Show block detail in completions.

Fixes

  • service: Fixed to allow different kinds of idx with same name.
  • service: Fixed instr completions after paren in instr.
  • service: Fixed finding references of blocks.
  • service: Fixed missing instrs.
  • formatter: Fixed comments before first module field or first instr.
  • parser: Fixed recovery for many cases.
  • parser: Allowed missing then-block in if-block.

v0.1.0

30 Nov 04:19
v0.1.0
eee1136
Compare
Choose a tag to compare

Initial release.