Skip to content

2026-04-14

Latest

Choose a tag to compare

@github-actions github-actions released this 14 Apr 15:11
d1ebbb2
  • Commit: d1ebbb2
  • Diff: c954d83...d1ebbb2
  • Installation:
    julia -e 'using Pkg; Pkg.Apps.add(; url="https://github.com/aviatesk/JETLS.jl", rev="2026-04-14")'

Announcement

Warning

JETLS requires Julia 1.12.2 or later.
It does not support Julia 1.12.1 or earlier, nor Julia 1.13+/nightly.

Warning

JETLS currently has a known memory leak issue where memory usage grows with each re-analysis (#357).
As a temporary workaround, you can disable full-analysis for specific files using the analysis_overrides initialization option:

// VSCode settings.json example
{
  "jetls-client.initializationOptions": {
    "analysis_overrides": [
      { "path": "src/**/*.jl" },
      { "path": "test/**/*.jl" }
    ]
  }
}

This disables analysis for matched files. Basic features like completion still might work, but most LSP features will be unfunctional.
Note that analysis_overrides is provided as a temporary workaround and may be removed or changed at any time. A proper fix is being worked on.

Added

  • Added inference/non-boolean-cond diagnostic that detects non-boolean values used in boolean context (e.g. if, while, ternary ?:, &&, ||).
    function find_zero(xs::Vector{Union{Missing,Int}})
        for i in eachindex(xs)
            xs[i] == 0 && return i  # non-boolean `Missing` found in boolean context
        end
    end

Changed

  • The release script now sets Project.toml version to YYYY.MM.DD (converted from the YYYY-MM-DD release date), so pkg> app status displays a meaningful version (#629).

  • Updated JuliaSyntax.jl and JuliaLowering.jl dependencies.

Fixed

  • Unreachable code after assignment with noreturn RHS (e.g. y = error(x)) is now correctly detected.

  • Fixed errors when opening unsaved buffers in Sublime Text, which uses the buffer: URI scheme instead of VSCode's untitled: scheme convention (#626).

  • Fixed false "macro name not found" diagnostics on macros like @enumx that internally generate baremodules
    (Closed #628).