There have been some recent changes in the standards governing our [new URL parser API](https://nodejs.org/api/url.html#url_the_whatwg_url_api). We need to keep up with those changes in our implementation of the API. - [x] **Add space to class string of iterator objects** (https://github.com/heycam/webidl/commit/4fcfaeaa3d9ed1141c5f5c75047c2ba2aaa45cea) (#17558) Change the `'URLSearchParamsIterator'` in https://github.com/nodejs/node/blob/e55b7d62863b7eae82e4afccf0b874e0f5ebba16/lib/internal/url.js#L1201 to `'URLSearchParams Iterator'`, and update tests if necessary. - [x] **Percent-encode additional characters in "fragment state"** (https://github.com/whatwg/url/commit/7a3c69f8a1583b33e730c3fea85141a618e7c697) (#17627) - Add a new `FRAGMENT_ENCODE_SET` lookup table like https://github.com/nodejs/node/blob/e55b7d62863b7eae82e4afccf0b874e0f5ebba16/src/node_url.cc#L215-L280 but with bits corresponding to 0x20, 0x22, 0x3C, 0x3E, and 0x60 set in additional to what's already set in `C0_CONTROL_ENCODE_SET`, per [spec](https://url.spec.whatwg.org/#fragment-percent-encode-set). - Replace `C0_CONTROL_ENCODE_SET` with the new lookup table under `kFragment` state in `URL::Parse()`. - Port https://github.com/w3c/web-platform-tests/commit/cb0662be1599d7f82e8d8572e8b43c3176863a63 to [`test/fixtures/url-setter-tests.js`](https://github.com/nodejs/node/blob/master/test/fixtures/url-setter-tests.js) and [`test/fixtures/url-tests.js`](https://github.com/nodejs/node/blob/master/test/fixtures/url-tests.js). - Make corresponding changes in the documentation in [`doc/api/url.md`](https://github.com/nodejs/node/blob/09e9e2bd82d5b82747100ab9163ebadba4cb3972/doc/api/url.md#whatwg-api)