Issue
When using @upstash/qstash, Node.js emits a deprecation warning on every request:
(node:xxx) [DEP0169] DeprecationWarning: url.parse() behavior is not standardized
and prone to errors that have security implications. Use the WHATWG URL API instead.
Root cause
crypto-js (pulled in as a dependency of @upstash/qstash) uses the deprecated
url.parse() API internally.
Traced via:
$ grep -r "url.parse(" node_modules/crypto-js --include="*.js" -l
node_modules/crypto-js/enc-base64url.js
node_modules/crypto-js/crypto-js.js
Environment
- @upstash/qstash: 2.11.0
- crypto-js: 4.2.0
- Node.js: v24.14.0
Expected behavior
No deprecation warnings. Consider replacing crypto-js with the native
Web Crypto API (globalThis.crypto), which is available in Node.js 16+
and all modern runtimes.
References
Issue
When using
@upstash/qstash, Node.js emits a deprecation warning on every request:(node:xxx) [DEP0169] DeprecationWarning:
url.parse()behavior is not standardizedand prone to errors that have security implications. Use the WHATWG URL API instead.
Root cause
crypto-js(pulled in as a dependency of@upstash/qstash) uses the deprecatedurl.parse()API internally.Traced via:
$ grep -r "url.parse(" node_modules/crypto-js --include="*.js" -l
node_modules/crypto-js/enc-base64url.js
node_modules/crypto-js/crypto-js.js
Environment
Expected behavior
No deprecation warnings. Consider replacing
crypto-jswith the nativeWeb Crypto API (
globalThis.crypto), which is available in Node.js 16+and all modern runtimes.
References