Repository: nodejs/node
Pull request: doc: include url.resolve() in DEP0169 application deprecation

Fixes: https://github.com/nodejs/node/issues/61816
Refs: https://github.com/nodejs/node/pull/61780 (supersedes)

## Situation

[DEP0169: Insecure url.parse()](https://nodejs.org/docs/latest/api/deprecations.html#DEP0169) lists an Application deprecation (non-node_modules code only) for `url.parse()` that was applied in v24.0.0.

The text notes that passing a string to `url.format()` also invokes the deprecation warning, since `url.parse()` is called internally.

The same reasoning also applies to `url.resolve()`, although this is not documented here.

## Change

Builds on work from @legendecas in PR https://github.com/nodejs/node/pull/61780.

Related to https://github.com/nodejs/node/pull/55017 for v24.0.0:

For [DEP0116: Legacy URL API](https://nodejs.org/docs/latest/api/deprecations.html#DEP0116):

- Add `url.resolve()` to the text
- Change the `url.format()` link to point directly to the deprecated [url.format(urlString)](https://nodejs.org/docs/latest/api/url.html#urlformaturlstring) section instead of to [url.format(urlObject)](https://nodejs.org/docs/latest/api/url.html#urlformaturlstring)

For [DEP0116: Legacy URL API](https://nodejs.org/docs/latest/api/deprecations.html#DEP0116) (history):

- Add text for `url.format()` and `url.resolve()` to refer to DEP0169. See https://github.com/nodejs/node/pull/61780#issuecomment-3890844050 from @richardlau

For [url.resolve()](https://nodejs.org/docs/latest/api/url.html#urlresolvefrom-to)

- Add history note that it is deprecated again through DEP0169
- Mark as deprecated


Changed files:
filename: doc/api/deprecations.md
patch: @@ -2665,11 +2665,15 @@ future release.
 
 <!-- YAML
 changes:
+  - version:
+      - v24.0.0
+    pr-url: https://github.com/nodejs/node/pull/55017
+    description: DEP0169 covers also `url.format()` and `url.resolve()`.
   - version:
       - v19.0.0
       - v18.13.0
     pr-url: https://github.com/nodejs/node/pull/44919
-    description: \`url.parse()` is deprecated again in DEP0169.
+    description: DEP0169 deprecates `url.parse()` again.
   - version:
       - v15.13.0
       - v14.17.0
@@ -3783,7 +3787,7 @@ Type: Application (non-`node_modules` code only)
 have security implications. Use the [WHATWG URL API][] instead. CVEs are not
 issued for `url.parse()` vulnerabilities.
 
-Passing a string argument to [`url.format()`][] invokes `url.parse()`
+Calling [`url.format(urlString)`][] or [`url.resolve()`][] invokes `url.parse()`
 internally, and is therefore also covered by this deprecation.
 
 ### DEP0170: Invalid port when using `url.parse()`
@@ -4597,6 +4601,7 @@ const server = http2.createSecureServer({
 [`tls.createSecureContext()`]: tls.md#tlscreatesecurecontextoptions
 [`tls.createServer()`]: tls.md#tlscreateserveroptions-secureconnectionlistener
 [`url.format()`]: url.md#urlformaturlobject
+[`url.format(urlString)`]: url.md#urlformaturlstring
 [`url.parse()`]: url.md#urlparseurlstring-parsequerystring-slashesdenotehost
 [`url.resolve()`]: url.md#urlresolvefrom-to
 [`util._extend()`]: util.md#util_extendtarget-source

filename: doc/api/url.md
patch: @@ -1839,7 +1839,7 @@ changes:
 
 `url.format(urlString)` is shorthand for `url.format(url.parse(urlString))`.
 
-Because it invokes the deprecated [`url.parse()`][], passing a string argument
+Because it invokes the deprecated [`url.parse()`][] internally, passing a string argument
 to `url.format()` is itself deprecated.
 
 Canonicalizing a URL string can be performed using the WHATWG URL API, by
@@ -1956,6 +1956,10 @@ npx codemod@latest @nodejs/node-url-to-whatwg-url
 <!-- YAML
 added: v0.1.25
 changes:
+  - version:
+      - v24.0.0
+    pr-url: https://github.com/nodejs/node/pull/55017
+    description: Deprecated again through DEP0169.
   - version:
       - v15.13.0
       - v14.17.0
@@ -1979,6 +1983,8 @@ changes:
                  contains a hostname.
 -->
 
+> Stability: 0 - Deprecated: Use the WHATWG URL API instead.
+
 * `from` {string} The base URL to use if `to` is a relative URL.
 * `to` {string} The target URL to resolve.
 
@@ -1992,6 +1998,8 @@ url.resolve('http://example.com/', '/one');    // 'http://example.com/one'
 url.resolve('http://example.com/one', '/two'); // 'http://example.com/two'
 ```
 
+Because it invokes the deprecated [`url.parse()`][] internally, `url.resolve()` is itself deprecated.
+
 To achieve the same result using the WHATWG URL API:
 
 ```js