Node.js deprecation warning DEP0169

Where does the bug appear (feature/product)?

Cursor CLI

Describe the Bug

When running the Cursor CLI to check/update extensions, Cursor emits Node.js deprecation warning DEP0169 indicating that url.parse() is being used.

The command itself completes successfully and reports that there are no extensions to update, but the deprecation warning is printed every time the extension update check runs.

Observed output:

(node:49304) [DEP0169] DeprecationWarning: url.parse() behavior is not standardized and prone to errors that have security implications. Use the WHATWG URL API instead. CVEs are not issued for url.parse() vulnerabilities.
(Use Cursor --trace-deprecation ... to show where the warning was created)
No extension to update

Steps to Reproduce

  1. Open Terminal on macOS.
  2. Run Cursor’s CLI extension update/check command. In my case, this is invoked automatically by Topgrade during its “Cursor extensions” update stage.
  3. Observe the terminal output.
  4. Cursor completes the extension check successfully, but Node.js prints the [DEP0169] deprecation warning for url.parse().

Expected Behavior

Cursor CLI’s extension-management command should complete without emitting Node.js deprecation warnings.

Cursor or its bundled dependencies should use the WHATWG URL API instead of the deprecated url.parse() API.

Operating System

MacOS

Version Information

3.20.17

Additional Information

The issue is reproducible when Topgrade invokes Cursor’s extension update functionality. The extension check itself succeeds, so this appears to be a deprecation warning originating from Cursor CLI or one of its bundled Node.js dependencies rather than an extension update failure.
My shell uses Node.js 24.21.0 via mise. However, I am reporting this because the warning is emitted specifically while Cursor CLI is running its extension-management operation.
I can provide output using --trace-deprecation if that would help identify the exact call site.

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hey, thanks for the detailed report. This is just a cosmetic warning. It comes from the Node.js runtime bundled into Cursor. Node 24 now deprecates the old url.parse() API directly at runtime, and it gets printed once by the network layer that checks the Marketplace for extension updates. The update check itself works fine, which is what you’re seeing, and it doesn’t affect your setup or extensions in any way. You’ll see the same warning in the VS Code CLI on current builds for the same reason.

If you want clean output in Topgrade, set NODE_NO_WARNINGS=1 in the environment where Topgrade launches Cursor, for example:

NODE_NO_WARNINGS=1 cursor --update-extensions

Small note: NODE_OPTIONS=--no-deprecation won’t work through the cursor wrapper (the wrapper resets NODE_OPTIONS), but NODE_NO_WARNINGS passes through fine.

A similar warning already showed up for another Node deprecation with the same command: Updating extensions warns: punycode module is deprecated. Please use a userland alternative instead

I’ve passed this to the team so the CLI can stop printing it over time. No need to send --trace-deprecation, we already know where it’s coming from.