
#javascript
The latest javascript news, releases, and analysis for TypeScript and web developers.
38 articles tagged with javascript


Rolldown 1.1.4 Disables `experimental.lazyBarrel` by Default Again, One Month After 1.1.0 Made It Default-On
Rolldown [v1.1.4](https://github.com/rolldown/rolldown/releases/tag/v1.1.4), published 2026-07-01T14:02:02Z, ships one feature change and 19 bug fixes. The feature change is a partial reversal of the [v1.1.0 default-flip](https://github.com/rolldown/rolldown/releases/tag/v1.1.0) that landed on 2026-06-03: `experimental.lazyBarrel` is now disabled by default again, after four weeks of correctness reports against the default-on behaviour. The release also hardens the dev-mode path by forcing `lazyBarrel` off whenever `experimental.devMode` is set (PR [#10060](https://github.com/rolldown/rolldown/pull/10060)), on top of the existing force-off for `treeshake`. The default-flip revert (PR [#10071](https://github.com/rolldown/rolldown/pull/10071)) and the dev-mode fix both author as one line each: "disable `experimental.lazyBarrel` by default" and "fix(dev): disable lazy barrel in dev mode", and the root-cause tracking is the new [issue #10085](https://github.com/rolldown/rolldown/issues/10085) "Tracking strictExecutionOrder correctness and architecture issues", opened the day after the release. The release follows [Rolldown v1.1.3](https://github.com/rolldown/rolldown/releases/tag/v1.1.3) (2026-06-24) and is the first release since 1.1.0 to touch the lazyBarrel config surface.

Prettier 3.9 Overhauls Five Parsers: micromark for Markdown, yaml v2, GraphQL.js v17, a Rust-Based Flow Parser, and Angular
Prettier 3.9.0, released June 27, 2026 (prettier/prettier, blog post by Fisker Cheung), is a parser-heavy release that upgrades Markdown from remark-parse v8 to micromark v4 (better CommonMark and GFM compliance and a stack of long-standing bug fixes), YAML to yaml v2, GraphQL to GraphQL.js v17 (fragment arguments and directives on directive definitions), Flow to the Flow team's new Rust-based oxidized parser (roughly 37% faster on Prettier's valid Flow fixtures and 43% faster on flow_parser.js in local parser-only benchmarks), and Angular. The JavaScript and TypeScript printer is reworked too, particularly in --no-semi mode where comments around break and continue are now stable across repeated formats (an idempotency fix), plus redundant parenthesis removal in return statements, embedded-template interpolation alignment, and logical-not inlining. The release drops the legacy import ... assert {} syntax (Babel 8 removed the parser plugin; migrate to with), fixes a silently broken --cache-strategy content option, and stops EditorConfig files above Git worktrees from leaking in. The team reiterates pinning the exact version in package.json because the formatting changes will produce diffs.

Playwright v1.61.0 Lands WebAuthn Passkeys, a Real WebStorage API, and Trace-Style Video Modes for the Test Runner
Playwright v1.61.0 (June 15, 2026) ships a virtual authenticator for WebAuthn/passkey ceremonies, a first-class page.localStorage / page.sessionStorage API, network security details on API responses, and brings test runner video recording to parity with trace recording. Browser channels: Chromium 149, Firefox 151, WebKit 26.5.

Vite 8.1 Beta Lands Direct `.wasm` Imports, `build.chunkImportMap`, and a `server.hmr` → `server.ws` Rename
Vite 8.1.0-beta.0 (June 15, 2026) is the first beta of the 8.1 line. It ships the WASM ESM Integration standard as direct .wasm imports, a build.chunkImportMap option that uses import maps to improve chunk cache hit rates, integration with Vite Task for zero-config build caching, support for lightningcss plugin dependencies, and a breaking rename of every `server.hmr` option to `server.ws`.

esbuild 0.28.1: First Release in Two Months Ships a High-Severity Deno RCE, a Windows Path Traversal, and a `using` Disposal Bug
esbuild v0.28.1 (June 11, 2026) is the first release since April. It fixes a CVSS 8.1 remote code execution in the Deno API via NPM_CONFIG_REGISTRY, a Windows-only dev-server path traversal, and a minifier bug that silently broke `using` and `await using` resource disposal.

Biome 2.5 Ships with `@biomejs/js-api` v6.0.0: A Major Bump for the JS API
Biome's CLI hits 2.5.0 and the JavaScript API moves to a major v6.0.0. The headline is a new spanInBytesToSpanInCodeUnits helper that fixes a real bug in non-ASCII text extraction, plus a long list of SCSS, JSON, linter, and CLI improvements.









Oxc v0.126.0: Turbopack Magic Comments Land in the Parser, Allocator Breaking Changes
Oxc v0.126.0 ships support for Turbopack magic comments in the parser, a breaking rename of Box and Vec allocator methods, new NAPI transform options for enum optimization, and continued performance work on the lexer and allocator.






The CSS vertical-align Problem Is Finally Solved: text-box-trim and margin-block
For decades, centering text vertically in buttons, badges, and layouts felt slightly off. The culprit: leading space, invisible padding built into every font's metrics. Two CSS properties now solve this at different levels: text-box-trim for inline text and margin-block with cap/lh units for block layouts.

JetStream 3: The Benchmark That Actually Reflects How Modern Web Apps Run
WebKit, Google, and Mozilla just released JetStream 3, the first major overhaul of the benchmark suite since 2019. It drops microbenchmarks in favor of realistic workloads, rewrites WebAssembly scoring, and introduces Dart, Kotlin, and Rust compiled to Wasm.

Google's JSIR: An MLIR-Based Intermediate Representation for JavaScript Analysis
Google has open sourced JSIR, a next-generation JavaScript analysis tool built on MLIR. It supports both high-level dataflow analysis and lossless source-to-source transformation, used internally for Hermes bytecode decompilation and AI-powered JavaScript deobfuscation.

QuickBEAM: A JavaScript Runtime for the BEAM VM, JavaScript Meets Erlang's OTP
QuickBEAM is a JavaScript runtime that runs inside the BEAM VM, the same virtual machine powering Erlang and Elixir. It integrates JavaScript into OTP supervision trees, lets JS call Elixir functions and OTP libraries, and ships with a built-in TypeScript toolchain.

Astro 6.1 Brings Fine-Grained Image Control and Smarter i18n Routing
Astro 6.1 lets you tune Sharp's encoder settings at the pipeline level, adds advanced SmartyPants configuration, and exposes i18n fallback routes to the integration hook system. Cloudflare acquisition continues to shape the roadmap.


Deno 2.7 Stabilizes the Temporal API, Adds Windows ARM Support and npm Overrides
Deno 2.7 is a substantial mid-cycle release: the Temporal API is now production-ready, native Windows on ARM builds land, npm overrides work like in Node, and dozens of Node.js compatibility improvements land across worker_threads, child_process, zlib, and sqlite.



numpy-ts 1.2: Bit-for-Bit NumPy RNG Parity and Float16 Support in Pure TypeScript
The pure TypeScript NumPy implementation reaches a correctness milestone: random number generation now matches NumPy bit for bit, Float16 lands as a first-class dtype, and the package no longer needs per-runtime entry points.


Astro 6 Takes Center Stage: Rust Compiler, Live Content, and a Cloudflare Future
Astro 6.0 and 6.1 land within weeks of each other, bringing an experimental Rust compiler, request-time content collections, a built-in Fonts API, CSP tooling, and deeper Cloudflare integration, all while the framework doubles its adoption for the third year running.




Bun vs Node vs Deno in 2026: The Runtime Showdown Nobody Asked For (But Everyone's Having)
Three JavaScript runtimes. Three different philosophies. Independent benchmarks across HTTP throughput, cold starts, and async performance tell a clearer story than marketing ever could. Here's the brutally honest breakdown for developers choosing their next server-side JS platform.

Vite+: One CLI to Rule Them All, Or Just Another Layer of Hype?
VoidZero's Vite+ promises to unify runtime, package manager, bundler, linter, formatter, and test runner under a single command. We read the announcements, benchmarked the claims, and talked to people using it in production. Here is what we found.