From e5cf5abf396fd4e4b60d6eadd28710911d56d66b Mon Sep 17 00:00:00 2001 From: Miguel Marcondes Date: Fri, 25 Apr 2025 15:34:14 -0300 Subject: [PATCH 1/3] util: update util.isArray() to eol --- doc/api/deprecations.md | 7 +++++-- doc/api/util.md | 27 --------------------------- lib/util.js | 3 --- test/parallel/test-util.js | 13 ------------- 4 files changed, 5 insertions(+), 45 deletions(-) diff --git a/doc/api/deprecations.md b/doc/api/deprecations.md index 88f051904f8b7c..cee384d6a82b95 100644 --- a/doc/api/deprecations.md +++ b/doc/api/deprecations.md @@ -981,6 +981,9 @@ The `tls.SecurePair` class is deprecated. Please use -Type: Runtime +Type: End-of-Life -The [`util.isArray()`][] API is deprecated. Please use `Array.isArray()` +The [`util.isArray()`][] API has been removed. Please use `Array.isArray()` instead. ### DEP0045: `util.isBoolean()` diff --git a/doc/api/util.md b/doc/api/util.md index 413b05cb5d9694..edf9d4491b017b 100644 --- a/doc/api/util.md +++ b/doc/api/util.md @@ -3669,33 +3669,6 @@ Node.js modules. The community found and used it anyway. It is deprecated and should not be used in new code. JavaScript comes with very similar built-in functionality through [`Object.assign()`][]. -### `util.isArray(object)` - - - -> Stability: 0 - Deprecated: Use [`Array.isArray()`][] instead. - -* `object` {any} -* Returns: {boolean} - -Alias for [`Array.isArray()`][]. - -Returns `true` if the given `object` is an `Array`. Otherwise, returns `false`. - -```js -const util = require('node:util'); - -util.isArray([]); -// Returns: true -util.isArray(new Array()); -// Returns: true -util.isArray({}); -// Returns: false -``` - [Common System Errors]: errors.md#common-system-errors [Custom inspection functions on objects]: #custom-inspection-functions-on-objects [Custom promisified functions]: #custom-promisified-functions diff --git a/lib/util.js b/lib/util.js index 233da10e83c48d..97262957d898ee 100644 --- a/lib/util.js +++ b/lib/util.js @@ -438,9 +438,6 @@ module.exports = { getSystemErrorMessage, inherits, inspect, - isArray: deprecate(ArrayIsArray, - 'The `util.isArray` API is deprecated. Please use `Array.isArray()` instead.', - 'DEP0044'), isDeepStrictEqual(a, b) { if (internalDeepEqual === undefined) { internalDeepEqual = require('internal/util/comparisons') diff --git a/test/parallel/test-util.js b/test/parallel/test-util.js index 1ecddc829a0fdb..7696716863a355 100644 --- a/test/parallel/test-util.js +++ b/test/parallel/test-util.js @@ -27,19 +27,6 @@ const util = require('util'); const errors = require('internal/errors'); const context = require('vm').runInNewContext; -// isArray -assert.strictEqual(util.isArray([]), true); -assert.strictEqual(util.isArray(Array()), true); -assert.strictEqual(util.isArray(new Array()), true); -assert.strictEqual(util.isArray(new Array(5)), true); -assert.strictEqual(util.isArray(new Array('with', 'some', 'entries')), true); -assert.strictEqual(util.isArray(context('Array')()), true); -assert.strictEqual(util.isArray({}), false); -assert.strictEqual(util.isArray({ push: function() {} }), false); -assert.strictEqual(util.isArray(/regexp/), false); -assert.strictEqual(util.isArray(new Error()), false); -assert.strictEqual(util.isArray({ __proto__: Array.prototype }), false); - // _extend assert.deepStrictEqual(util._extend({ a: 1 }), { a: 1 }); assert.deepStrictEqual(util._extend({ a: 1 }, []), { a: 1 }); From d1e08e53cb824aa608ebc70b2de480f8cacfdcfd Mon Sep 17 00:00:00 2001 From: Miguel Marcondes Date: Sat, 26 Apr 2025 14:50:34 -0300 Subject: [PATCH 2/3] doc: update deprecation notice for util.isArray() removal --- doc/api/deprecations.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/doc/api/deprecations.md b/doc/api/deprecations.md index cee384d6a82b95..5ce85ca5140fe5 100644 --- a/doc/api/deprecations.md +++ b/doc/api/deprecations.md @@ -1001,8 +1001,7 @@ changes: Type: End-of-Life -The [`util.isArray()`][] API has been removed. Please use `Array.isArray()` -instead. +The `util.isArray()` API has been removed. Please use `Array.isArray()` instead. ### DEP0045: `util.isBoolean()` @@ -4046,7 +4045,6 @@ an internal nodejs implementation rather than a public facing API, use `node:tls [`util.getSystemErrorName()`]: util.md#utilgetsystemerrornameerr [`util.inspect()`]: util.md#utilinspectobject-options [`util.inspect.custom`]: util.md#utilinspectcustom -[`util.isArray()`]: util.md#utilisarrayobject [`util.promisify`]: util.md#utilpromisifyoriginal [`util.toUSVString()`]: util.md#utiltousvstringstring [`util.types`]: util.md#utiltypes From d81952312c3a136845b5951e06ba65c3d696c52c Mon Sep 17 00:00:00 2001 From: Miguel Marcondes Date: Sat, 26 Apr 2025 15:06:58 -0300 Subject: [PATCH 3/3] doc: remove unused reference to Array.isArray() in util documentation --- doc/api/util.md | 1 - 1 file changed, 1 deletion(-) diff --git a/doc/api/util.md b/doc/api/util.md index edf9d4491b017b..f50d10b76bda8c 100644 --- a/doc/api/util.md +++ b/doc/api/util.md @@ -3678,7 +3678,6 @@ similar built-in functionality through [`Object.assign()`][]. [WHATWG Encoding Standard]: https://encoding.spec.whatwg.org/ [`'uncaughtException'`]: process.md#event-uncaughtexception [`'warning'`]: process.md#event-warning -[`Array.isArray()`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray [`ArrayBuffer.isView()`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer/isView [`JSON.stringify()`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify [`MIMEparams`]: #class-utilmimeparams