diff --git a/HISTORY.md b/HISTORY.md index 62b9750..88601d3 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -4,6 +4,11 @@ unreleased * Remove `setImmediate` support check * Restore `debug` dependency +3.0.0 / ????-??-?? +================== + +* Replace `is-promise` dependency with `instanceof` check (drops support for non-native promises) + 2.1.0 / 2025-02-10 ================== diff --git a/index.js b/index.js index 5c5caa2..dda6ff7 100644 --- a/index.js +++ b/index.js @@ -12,7 +12,6 @@ * @private */ -const isPromise = require('is-promise') const Layer = require('./lib/layer') const { METHODS } = require('node:http') const parseUrl = require('parseurl') @@ -646,7 +645,7 @@ function processParams (params, layer, called, req, res, done) { try { const ret = fn(req, res, paramCallback, paramVal, key) - if (isPromise(ret)) { + if (ret instanceof Promise) { ret.then(null, function (error) { paramCallback(error || new Error('Rejected promise')) }) diff --git a/lib/layer.js b/lib/layer.js index d228617..70e9beb 100644 --- a/lib/layer.js +++ b/lib/layer.js @@ -12,7 +12,6 @@ * @private */ -const isPromise = require('is-promise') const pathRegexp = require('path-to-regexp') const debug = require('debug')('router:layer') @@ -115,7 +114,7 @@ Layer.prototype.handleError = function handleError (error, req, res, next) { const ret = fn(error, req, res, next) // wait for returned promise - if (isPromise(ret)) { + if (ret instanceof Promise) { ret.then(null, function (error) { next(error || new Error('Rejected promise')) }) @@ -147,7 +146,7 @@ Layer.prototype.handleRequest = function handleRequest (req, res, next) { const ret = fn(req, res, next) // wait for returned promise - if (isPromise(ret)) { + if (ret instanceof Promise) { ret.then(null, function (error) { next(error || new Error('Rejected promise')) }) diff --git a/package.json b/package.json index d819cd3..82a5062 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,6 @@ "repository": "pillarjs/router", "dependencies": { "debug": "^4.4.0", - "is-promise": "^4.0.0", "parseurl": "^1.3.3", "path-to-regexp": "^8.0.0" },