Gleam 1.16 Ships JavaScript Source Maps and Parallel Error Reporting in Its First Major Release of 2026
Gleam v1.16.0, released April 24, adds JavaScript source maps, package-wide parallel error reporting, and a roughly 30% speedup for single-character string-prefix matching on JavaScript.
Overview
The Gleam team has released version 1.16.0 of the type-safe functional language that targets the Erlang VM and JavaScript. According to the official release announcement authored by language creator Louis Pilfold, the release shipped on April 24, 2026, and is headlined by long-requested support for JavaScript source maps. The corresponding tag is published on the project’s GitHub releases page, and the release was discussed by the broader programming-languages community on Lobsters.
What Shipped
Gleam compiles to either Erlang bytecode or JavaScript, and on the JavaScript target the gap between source code and the executed output has historically made debugging awkward. Version 1.16 closes that gap by emitting source map files alongside the generated JavaScript, so browsers and JavaScript runtimes can display original Gleam code in stack traces and breakpoints, according to the release announcement. Source maps are opt-in via a source_maps setting in gleam.toml, the announcement notes.
The release also reworks how the build tool surfaces errors. The release announcement describes a new package-level fault tolerance model in which the compiler prunes failing module subtrees and continues compiling the rest of the package, so developers see all discoverable errors at once rather than stopping at the first failure. The same change feeds into the language server, giving editor integrations more complete diagnostics even when an upstream module is broken, according to the announcement.
On performance, the release announcement reports that the JavaScript backend now generates more efficient code for matching single-character string prefixes. The team benchmarked the glance Gleam parser as running roughly 30% faster on the JavaScript target, with median execution dropping from 14.74 ms to 10.72 ms, the announcement states.
Several smaller compiler and tooling changes round out the release, per the release announcement:
- Record update analysis is now fault-tolerant and produces clearer errors when used with variants that have no labelled fields.
- A new warning fires on the JavaScript target when a bit-array pattern tries to extract an integer larger than JavaScript’s 52-bit safe integer range.
- The compiler now flags lookalike Unicode characters that can otherwise produce confusing parse errors.
- Lists can now be prepended in constants, using the existing
[head, ..tail]syntax forconstdefinitions. - The formatter improves the layout of long, deeply nested tuples.
- External code can now be referenced from
.mts,.cts,.jsx, and.tsxfiles in addition to plain.jsand.ts.
Language-server-side, the release announcement lists new code actions for toggling between anonymous functions and direct function references, extracting expressions out of pipelines and assignments into named functions, and replacing type holes (_) with the inferred type. Record-update completions and unanalyzable-file diagnostics are also new.
Context
Gleam compiles to either Erlang bytecode or JavaScript, giving the language two very different runtime targets. Source-map support has been a long-standing community request for the JavaScript backend, tracked on the project’s GitHub repository for years before landing in 1.16. The Lobsters thread on the release drew sixteen comments, with the discussion drifting from the source-maps feature itself toward broader debates about LLM code generation and language ergonomics.
What We Don’t Know
The official announcement does not commit to a specific release window for Gleam 1.17 or to which long-running roadmap items — such as further work on glance-driven tooling or additional Erlang-target optimizations — will land next. The benchmark numbers reported for the glance speedup come from the project’s own measurements; independent third-party benchmarks of Gleam 1.16 versus 1.15 are not yet available.