---
title: "Leaky timeouts"
publication: "Node Weekly"
issue: 535
published_at: "2024-06-11"
canonical_url: "https://nodeweekly.com/issues/535"
---

Plus extended UUID support, flattening code for LLMs, and an open source feature toggling service. |        

#​535 — June 11, 2024 

[Read on the Web](https://nodeweekly.com/issues/535)  

Together with [![Memetria\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,w_600,h_145/e_make_transparent/co_white,e_outline:7/vvpdctzacmq3xehpvwps.png)](https://dashboard.memetria.com/nodeweekly/)  

![Node.js Weekly](https://res.cloudinary.com/cpress/image/upload/v1653576619/lgfqinzbdqttwmhvljxb.png) 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/eezdlx2kiotqgdunjmvl.jpg)](https://lucumr.pocoo.org/2024/6/5/node-timeout/)  

[Node is Leaking Memory? `setTimeout` Could Be The Reason](https://lucumr.pocoo.org/2024/6/5/node-timeout/) — The folks at Sentry were running into problems with how Node handles timeouts created with `setTimeout` or, more specifically, problems caused by hanging on to the `Timeout` objects `setTimeout`returns.. 

Armin Ronacher   

[Using Node.js's Test Runner: The Official Guide](https://nodejs.org/en/learn/test-runner/using-test-runner) — A useful new guide on the official Node site to the fundamentals of setting up and using Node’s new test runner functionality, along with [snapshot tests](https://nodejs.org/en/learn/test-runner/using-test-runner#snapshot-tests) (as supported by Node 22.3+). 

Jacob Smith   [![\](https://copm.s3.amazonaws.com/2bed2b26.png)](https://dashboard.memetria.com/nodeweekly/) 

[Memetria: Efficient Redis Hosting](https://dashboard.memetria.com/nodeweekly/) — Optimize your Redis with Memetria's efficient hosting. Track keys, view detailed metrics, and maintain consistent uptime for better performance. 

Memetria sponsor   

[Exchanging Messages Between Node Processes with Execa 9.2](https://itnext.io/ipc-made-easy-with-execa-9-2-939c6a358731) — The latest version of the [execa](https://github.com/sindresorhus/execa) process execution library [introduces IPC methods to communicate between processes.](https://github.com/sindresorhus/execa/releases/tag/v9.2.0) Maintainer _ehmicky_ shows us the elegant API that makes it all come together here. 

ehmicky   

**QUICK BITS:** 

- [The first release candidate of TypeScript 5.5](https://devblogs.microsoft.com/typescript/announcing-typescript-5-5-rc/) has been released. Over on YouTube, Theo calls it [▶️ 'the biggest TypeScript update in years'](https://www.youtube.com/watch?v=4XgIvE5SH4Y).
- [TEO](https://teodev.io/) is a new schema-driven web API framework that targets, unusually, Rust, Python _and_ Node.js. You supply the schemas, TEO generates the code.   

📄 [JSR: The JavaScript Package Registry We've Been Waiting For?](https://lev.engineer/blog/jsr-the-javascript-package-registry-we-ve-been-waiting-for) Lev Gelfenbuim 

📄 [Top 12 Git Commands Every Developer Must Know](https://github.blog/2024-06-10-top-12-git-commands-every-developer-must-know/) Kedasha Kerr (GitHub)    

🛠 Code & Tools  

[uuid v10: Generate RFC-Compliant UUIDs in JavaScript](https://github.com/uuidjs/uuid) — Covers UUID v1, v3, v4, v5, v6, v7, and v8. Works across all major browsers and Node 18 and up. [v10.0](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md#1000-2024-06-07) drops Node 12 and 14 support and adds support for further types of RFC9562 UUIDs (namely v6, v7 and v8). 

Robert Kieffer and contributors   

[Lambda API 1.1: A Lightweight Web Framework for Serverless Apps](https://github.com/jeremydaly/lambda-api) — A stripped down framework that takes an Express-esque approach to putting together serverless JavaScript apps to run on AWS Lambda behind API Gateway. 

Jeremy Daly   

[[Webinar\] Saga Pattern: Compensating Transactions at Will Bank](https://t.mp/3R7wjO3) — Hear Will Bank discuss financial transaction challenges and how Temporal's durable execution ensures reliable consistency. 

Temporal Technologies sponsor   

[Merge Anything 6.0: Merge Objects and Other Types Recursively](https://github.com/mesqueeb/merge-anything) — If you’re looking for something that goes a bit _deeper_ than `Object.assign()`, say. 

Luca Ban   

[GraphQL Query Complexity Analysis for GraphQL.js](https://github.com/slicknode/graphql-query-complexity) — Provides GraphQL query analysis and validation to reject complex queries to your GraphQL server to help protect against resource exhaustion and certain DoS attacks. 

Ivo Meißner   

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/uo6mba2m93v3mw8he2oo.jpg)](https://github.com/Unleash/unleash)  

[Unleash 6.0: An Open Source Node-Powered 'Feature Toggle' Service](https://github.com/Unleash/unleash) — The sort of system you’d use if you want to remotely toggle features on and off within an app. Built in JavaScript but has clients for Java, Go, Ruby, Python, PHP, Rust, and .NET Core as well. 

Unleash   

[CodeFlattener: Condense Your Node Code into a Single JS File for Analysis](https://github.com/bchr02/CodeFlattener) — This _isn’t_ your typical build tool, however. The aim is to crush your code down enough such that it can be fed into LLMs and other AI tools for easier analysis. 

Bill Christo      

📰 Classifieds   

📊 [SupaPoll](https://dub.sh/supapoll-nw): An event-driven open-source real-time voting application built with Supabase, Twilio, Hookdeck, and Next.js. [Learn more](https://dub.sh/supapoll-nw). 

--- 

🗣️"Compared to our previous experiences in the security/auth space, [Userfront is an order of magnitude simpler to use](https://userfront.com/?&utm_source=nodeweekly-com&utm_medium=newsletter_classified_listing&utm_campaign=magnitude&utm_content=transformational)."     

- [c8 10.0](https://github.com/bcoe/c8) – Code-coverage reports using Node's built in functionality.
- [YouTube.js 10.0](https://github.com/LuanRT/YouTube.js) – An unofficial way to use YouTube's internal API.
- [pnpm 9.3](https://github.com/pnpm/pnpm/releases/tag/v9.3.0) – The fast, efficiency-focused package manager.
- [npm-package-json-lint 8.0](https://github.com/tclindner/npm-package-json-lint) – A `package.json` linter for Node projects.
- [Ottoman 2.5](https://github.com/couchbaselabs/node-ottoman) – ODM for Couchbase, now with transactions support.
- [Electron Packager 31.0](https://github.com/electron/electron/releases/tag/v31.0.0) – Customize and package Electron apps.
- [ExpressoTS 2.12](https://github.com/expressots/expressots) – TypeScript framework for server-side apps.
- [rpc-websockets 9.0](https://github.com/elpheria/rpc-websockets) – JSON-RPC 2.0 over WebSockets.
- [strong-soap 4.1](https://github.com/loopbackio/strong-soap) – Full-featured SOAP driver.
- [Javet 3.1.3](https://github.com/caoccao/Javet) – Java + V8. Embed JS into Java.    

**Got a link for us?** Reply and tell us. We can't include everything but we'll look at anything you send. _Thanks!_ 

--- 

**Sponsorship:** Email `[kristina@cooperpress.com](mailto:kristina@cooperpress.com)` for details. 

--- 

Published by Cooper Press Ltd.
Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom 

[Cancel your subscription](https://nodeweekly.com/leave/*|UID|*) or [change your address](https://nodeweekly.com/edit_subscription/*|UID|*).
