AI Workshop: learn to build apps with AI →
Debugging: How to solve the `util.pump is not a function` error in Node.js

Join the AI Workshop and learn to build real-world apps with AI. A hands-on, practical program to level up your skills.


If you experience the error “util.pump is not a function” while running a Node.js app or a Node.js snippet, it’s because the app code is too old for the current Node.js runtime.

The pump() method that Node.js used to provide wrote a readable stream to a writable stream using this syntax:

util.pump(readableStream, writableStream)

This method is now gone, deprecated for a long time and removed when Node.js 6.0 was released in April 2016.

Luckily, it’s easy to fix this problem.

Replace the above syntax with:

const { pipeline } = require('stream')

//...

pipeline(readableStream, writableStream, () => {})

The third argument is a callback function that runs when the pipeline has finished.

Read more on pipeline here.

Lessons in this unit:

0: Introduction
1: Fix Node.js imports types errors in VS Code
2: referenceerror: window is not defined, how to solve
3: Use the Chrome DevTools to debug a Node.js app
4: Error handling in Node.js
5: ▶︎ How to solve the `util.pump is not a function` error in Node.js