TypeScript.fm - The Friendly Show for TypeScript Developers

New Biome, Mocha, Jest, and k6 Releases All Kissed by TypeScript | News | Ep 23


Listen Later

News for the week of June 16, 2025: Biome v2 features type-aware linting without TSC, Mocha and Jest both get native ESM and TS upgrades, and Grafana Lab's k6 load testing tool... also can now run native TS tests. From the community: type safety for WebGPU shaders, type narrowing map and indexed key access, and resilient import maps.

Chapters

  • (00:00) - Introduction and Personal News
  • (05:02) - News: Biome v2 Features Type-aware Linting Without TSC
  • (08:25) - News: Mocha 11.7.0 Adds Support for Native ESM and TypeScript
  • (09:35) - News: Jest 30 Also Adds Native ESM and TypeScript Support
  • (11:12) - News: Grafana k6 Celebrates 1.0 Release with TS Support
  • (13:30) - News: WebGPU is (Finally) Coming to All Major Browsers
  • (14:36) - News: Astro 5.9 Adds Support for Content Security Policy
  • (15:47) - PSA: Deno's Homebrew Release is Behind Other Versions
  • (16:34) - Community Highlight: Bridging ESM and CommonJS by Joyee Cheung
  • (18:16) - Community Highlight: How Queues Work in TypeScript
  • (19:00) - Community Highlight: Dr. Axel's Corner
  • (21:11) - Community Highlight: Better Import Maps from Shopify Engineering
  • (24:32) - Community Highlight: VoidZero Discusses Vite+ Plans
  • (28:22) - Community Highlight: TypeScript Native Port Speeds Up Slack's CI Builds
  • (29:09) - Community Highlight: TypeGPU Lets You Write WGPU Code in a Type-safe Way
  • (33:21) - Community Highlight: Remembering Mikael Rogers
  • (35:08) - Cool API: Promise.try
  • (36:52) - Cool Read: The Dying Art We All Depend On by Raptitude
  • (38:16) - Cool Watch: The Story of Rollup with Rich Harris

  • News
    • Biome v2 codename Biotype brings type-aware linting without TSC!
      • You can check out what the noFloatingPromises rule looks like to write type-aware rules
    • Mocha 11.7.0 is now compatible with Node’s require(ESM) & type stripping (h/t Rob Palmer)
    • After 3 years, Jest 30 is a massive release which includes native ESM and TS support
      • Fun fact: Christoph Nakazawa open sourced his game: https://github.com/nkzw-tech/athena-crisis 
    • Grafana k6 celebrates a 1.0 release with native support for TypeScript tests
    • Firefox will unflag WebGPU in v141 (Firefox Release Calendar), bringing WGPU support to all major browsers for iOS, Windows, and macOS in the next year or so.
    • Astro 5.9 brings Content Security Policy (CSP) support for more secure web app development
    • PSA: Deno Homebrew version is behind because of a bug in Rust

    From the Community

    • Joyee Cheung (Node TSC) talk on Bridging CommonJS and ESM in Node.js
    • freeCodeCamp Blog: How Queues Work in TypeScript by Yazdun
    • Dr. Axel's Corner: 
      • How TypeScript solved its global `Iterator` name clash
      • TypeScript: checking Map keys and Array indices 
    • Resilient Import Maps - Better Theme Development and Beyond (2025) - Shopify 
    • Vite’s Creator on a Unified JavaScript Toolchain and Vite+ - The New Stack
    • @slack.engineering on Bluesky shares CI improvements by migrating to TSGO
    • TypeGPU 0.5.9 release by Iwo Plaza 
      • Video: Iwo Plaza – The Road to Type-Safety on the GPU | RNCK #15
      • Video: Erik's Stream: Learning WebGPU Together 

    In Memoriam: Mikeal Rogers

    Via Node.js foundation

    We’re heartbroken by the loss of Mikeal Rogers, a key figure in the Node.js ecosystem and a force behind what makes this community what it is. To help preserve his legacy, we’ve opened a GitHub repo for stories, photos, and memories: github.com/nodejs/mikeal

    💚 Thank you, Mikeal.


    Via Linux Foundation: In Memory of Mikeal Rogers: A Builder of Communities

    Cool Stuff

    • Promise.try - wrap a function in a promise or execute immediately, avoiding a microtask when not needed
    • The Dying Art We All Depend On by David from Raptitude
    • The Story of Rollup with Rich Harris (via Matt Jennings) 


    Sponsored by Excalibur.js
    Excalibur.js is the friendly TypeScript game engine for making 2D web games. Use your TypeScript or JavaScript skills to make games! Excalibur comes out-of-the-box with everything you need to make web games, like physics, sprites, animations, sound effects, input, and particles. Design your assets with tools like Aseprite and Tiled, then load them natively using first-party plugins.

    Music
    Seahorse Dreams by Kubbi (Spotify)

    ...more
    View all episodesView all episodes
    Download on the App Store

    TypeScript.fm - The Friendly Show for TypeScript DevelopersBy Kamran Ayub and Erik Onarheim