-
-
Notifications
You must be signed in to change notification settings - Fork 14
Labels
good first issueGood for newcomersGood for newcomershelp wantedExtra attention is neededExtra attention is neededlet's do it
Description
Description
Since util.is**()
is deprecated in Node.js v23.9.0, we should provide a codemod to replace it.
- The codemod should remove import if it's only thing imported or remove the member if not anymore used.
- The codemod should modify any call expression of this api.
Examples
Before:
import util from 'node:util';
if (util.isArray(someValue)) {
console.log('someValue is an array');
}
if (util.isBoolean(someValue)) {
console.log('someValue is a boolean');
}
if (util.isBuffer(someValue)) {
console.log('someValue is a buffer');
}
if (util.isDate(someValue)) {
console.log('someValue is a date');
}
if (util.isError(someValue)) {
console.log('someValue is an error');
}
if (util.isFunction(someValue)) {
console.log('someValue is a function');
}
if (util.isNull(someValue)) {
console.log('someValue is null');
}
if (util.isNullOrUndefined(someValue)) {
console.log('someValue is null or undefined');
}
if (util.isNumber(someValue)) {
console.log('someValue is a number');
}
if (util.isObject(someValue)) {
console.log('someValue is an object');
}
if (util.isPrimitive(someValue)) {
console.log('someValue is a primitive');
}
if (util.isRegExp(someValue)) {
console.log('someValue is a regular expression');
}
if (util.isString(someValue)) {
console.log('someValue is a string');
}
if (util.isSymbol(someValue)) {
console.log('someValue is a symbol');
}
if (util.isUndefined(someValue)) {
console.log('someValue is undefined');
}
After:
if (Array.isArray(someValue)) {
console.log('someValue is an array');
}
if (typeof someValue === 'boolean') {
console.log('someValue is a boolean');
}
if (Buffer.isBuffer(someValue)) {
console.log('someValue is a buffer');
}
if (someValue instanceof Date) {
console.log('someValue is a date');
}
if (someValue instanceof Error) {
console.log('someValue is an error');
}
if (typeof someValue === 'function') {
console.log('someValue is a function');
}
if (someValue === null) {
console.log('someValue is null');
}
if (someValue == null) {
console.log('someValue is null or undefined');
}
if (typeof someValue === 'number') {
console.log('someValue is a number');
}
if (typeof someValue === 'object' && someValue !== null) {
console.log('someValue is an object');
}
if (someValue !== Object(someValue)) {
console.log('someValue is a primitive');
}
if (someValue instanceof RegExp) {
console.log('someValue is a regular expression');
}
if (typeof someValue === 'string') {
console.log('someValue is a string');
}
if (typeof someValue === 'symbol') {
console.log('someValue is a symbol');
}
if (typeof someValue === 'undefined') {
console.log('someValue is undefined');
}
REFS
- DEP0044:
util.isArray()
- DEP0045:
util.isBoolean()
- DEP0046:
util.isBuffer()
- DEP0047:
util.isDate()
- DEP0048:
util.isError()
- DEP0049:
util.isFunction()
- DEP0050:
util.isNull()
- DEP0051:
util.isNullOrUndefined()
- DEP0052:
util.isNumber()
- DEP0053:
util.isObject()
- DEP0054:
util.isPrimitive()
- DEP0055:
util.isRegExp()
- DEP0056:
util.isString()
- DEP0057:
util.isSymbol()
- DEP0058:
util.isUndefined()
Metadata
Metadata
Assignees
Labels
good first issueGood for newcomersGood for newcomershelp wantedExtra attention is neededExtra attention is neededlet's do it
Type
Projects
Status
🏗 In progress