From 1ea10dbc9e8c37533d8bc3cbe6f08b2a02cc33d2 Mon Sep 17 00:00:00 2001 From: Yagiz Nizipli Date: Sun, 7 May 2023 15:41:21 -0400 Subject: [PATCH 1/2] url: improve `isURL` detection PR-URL: https://github.com/nodejs/node/pull/47886 Reviewed-By: Rich Trott Reviewed-By: Matthew Aitken Reviewed-By: Mohammed Keyvanzadeh Reviewed-By: Luigi Pinca --- test/parallel/test-url-is-url.js | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 test/parallel/test-url-is-url.js diff --git a/test/parallel/test-url-is-url.js b/test/parallel/test-url-is-url.js new file mode 100644 index 00000000000000..0b42bb3b2f2d4a --- /dev/null +++ b/test/parallel/test-url-is-url.js @@ -0,0 +1,11 @@ +// Flags: --expose-internals +'use strict'; + +require('../common'); + +const { URL, parse } = require('url'); +const assert = require('assert'); +const { isURL } = require('internal/url'); + +assert.strictEqual(isURL(new URL('https://www.nodejs.org')), true); +assert.strictEqual(isURL(parse('https://www.nodejs.org')), false); From e0891a85abf5c161601c41af30e3e38c4b4291c1 Mon Sep 17 00:00:00 2001 From: Zhuo Zhang Date: Wed, 26 Jul 2023 11:59:25 +0800 Subject: [PATCH 2/2] url: fix `isURL` detection by checking `path` Fixes: https://github.com/nodejs/node/issues/48921 PR-URL: https://github.com/nodejs/node/pull/48928 Fixes: https://github.com/getsentry/sentry-javascript/issues/8552 Fixes: https://github.com/request/request/issues/3458 Reviewed-By: Yagiz Nizipli Reviewed-By: Luigi Pinca Reviewed-By: Matthew Aitken Reviewed-By: Debadree Chatterjee --- test/parallel/test-url-is-url.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/test/parallel/test-url-is-url.js b/test/parallel/test-url-is-url.js index 0b42bb3b2f2d4a..6bb8a1595df2a0 100644 --- a/test/parallel/test-url-is-url.js +++ b/test/parallel/test-url-is-url.js @@ -9,3 +9,8 @@ const { isURL } = require('internal/url'); assert.strictEqual(isURL(new URL('https://www.nodejs.org')), true); assert.strictEqual(isURL(parse('https://www.nodejs.org')), false); +assert.strictEqual(isURL({ + href: 'https://www.nodejs.org', + protocol: 'https:', + path: '/', +}), false);