Close gap between URL writing and parser sections#905
Open
Conversation
1. Domain-percent-encoded — error for percent-encoding in domains (e.g., exam%70le.com). 2. Domain-non-strict — error when strict domain-to-ASCII would fail (e.g., _dmarc.example.com). 3. Invalid-URL-unit — now also emitted for spaces in opaque paths (e.g., foo:bar baz). 4. Writing grammar — non-special absolute URLs now allow opaque paths directly, fixing foo:a:b being incorrectly invalid. Fixes #796. Fixes #797. Helps with #704.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #796. Fixes #797. Helps with #704.
💥 Error: 422 Unprocessable Entity 💥
PR Preview failed to build. (Last tried on Apr 14, 2026, 4:49 PM UTC).
More
PR Preview relies on a number of web services to run. There seems to be an issue with the following one:
🚨 Spec Generator - Spec Generator is the web service used to build bikeshed/ReSpec specs
🔗 Related URL
Error output:
[ { "lineNum": "372:1", "messageType": "link", "text": "Multiple possible 'code point' dfn refs for '['/']'.\nArbitrarily chose https://w3c.github.io/i18n-glossary/#dfn-code-point\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:i18n-glossary; type:dfn; text:code point\nspec:infra; type:dfn; text:code point\n<a bs-line-number=\"372:1\" data-link-for=\"/\" data-link-type=\"dfn\" data-lt=\"code point\">code point</a>" }, { "lineNum": "376:63", "messageType": "link", "text": "Multiple possible 'code point' dfn refs for '['/']'.\nArbitrarily chose https://w3c.github.io/i18n-glossary/#dfn-code-point\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:i18n-glossary; type:dfn; text:code point\nspec:infra; type:dfn; text:code point\n<a bs-line-number=\"376:63\" data-link-for=\"/\" data-link-type=\"dfn\" data-lt=\"code point\">code point</a>" }, { "lineNum": "467:61", "messageType": "link", "text": "Multiple possible 'code points' dfn refs for '['/']'.\nArbitrarily chose https://w3c.github.io/i18n-glossary/#dfn-code-point\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:i18n-glossary; type:dfn; text:code point\nspec:infra; type:dfn; text:code point\n<a bs-line-number=\"467:61\" data-link-for=\"/\" data-link-type=\"dfn\" data-lt=\"code points\">code points</a>" }, { "lineNum": "470:68", "messageType": "link", "text": "Multiple possible 'code points' dfn refs.\nArbitrarily chose https://w3c.github.io/i18n-glossary/#dfn-code-point\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:i18n-glossary; type:dfn; text:code point\nspec:infra; type:dfn; text:code point\n<a bs-line-number=\"470:68\" data-link-type=\"dfn\" data-lt=\"code points\">code points</a>" }, { "lineNum": "554:42", "messageType": "link", "text": "Multiple possible 'code point' dfn refs for '['/']'.\nArbitrarily chose https://w3c.github.io/i18n-glossary/#dfn-code-point\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:i18n-glossary; type:dfn; text:code point\nspec:infra; type:dfn; text:code point\n<a bs-line-number=\"554:42\" data-link-for=\"/\" data-link-type=\"dfn\" data-lt=\"code point\">code point</a>" }, { "lineNum": "588:1", "messageType": "link", "text": "Multiple possible 'scalar value' dfn refs for '['/']'.\nArbitrarily chose https://infra.spec.whatwg.org/#scalar-value\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:infra; type:dfn; text:scalar value\nspec:i18n-glossary; type:dfn; text:scalar value\n<a bs-line-number=\"588:1\" data-link-for=\"/\" data-link-type=\"dfn\" data-lt=\"scalar value\">scalar value</a>" }, { "lineNum": "672:44", "messageType": "link", "text": "Multiple possible 'code points' dfn refs.\nArbitrarily chose https://w3c.github.io/i18n-glossary/#dfn-code-point\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:i18n-glossary; type:dfn; text:code point\nspec:infra; type:dfn; text:code point\n<a bs-line-number=\"672:44\" data-link-type=\"dfn\" data-lt=\"code points\">code points</a>" }, { "lineNum": "986:62", "messageType": "link", "text": "Multiple possible 'ascii case-insensitive' dfn refs.\nArbitrarily chose https://infra.spec.whatwg.org/#ascii-case-insensitive\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:infra; type:dfn; text:ascii case-insensitive\nspec:i18n-glossary; type:dfn; text:ascii case-insensitive\n<a bs-line-number=\"986:62\" data-link-type=\"dfn\" data-lt=\"ASCII case-insensitive\">ASCII case-insensitive</a>" }, { "lineNum": "1441:40", "messageType": "link", "text": "Multiple possible 'code point' dfn refs.\nArbitrarily chose https://w3c.github.io/i18n-glossary/#dfn-code-point\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:i18n-glossary; type:dfn; text:code point\nspec:infra; type:dfn; text:code point\n<a bs-line-number=\"1441:40\" data-link-type=\"dfn\" data-lt=\"code point\">code point</a>" }, { "lineNum": "1444:63", "messageType": "link", "text": "Multiple possible 'code points' dfn refs.\nArbitrarily chose https://w3c.github.io/i18n-glossary/#dfn-code-point\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:i18n-glossary; type:dfn; text:code point\nspec:infra; type:dfn; text:code point\n<a bs-line-number=\"1444:63\" data-link-type=\"dfn\" data-lt=\"code points\">code points</a>" }, { "lineNum": "1907:67", "messageType": "link", "text": "Multiple possible 'ascii case-insensitive' dfn refs.\nArbitrarily chose https://infra.spec.whatwg.org/#ascii-case-insensitive\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:infra; type:dfn; text:ascii case-insensitive\nspec:i18n-glossary; type:dfn; text:ascii case-insensitive\n<a bs-line-number=\"1907:67\" data-link-type=\"dfn\" data-lt=\"ASCII case-insensitive\">ASCII case-insensitive</a>" }, { "lineNum": "1913:68", "messageType": "link", "text": "Multiple possible 'ascii case-insensitive' dfn refs.\nArbitrarily chose https://infra.spec.whatwg.org/#ascii-case-insensitive\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:infra; type:dfn; text:ascii case-insensitive\nspec:i18n-glossary; type:dfn; text:ascii case-insensitive\n<a bs-line-number=\"1913:68\" data-link-type=\"dfn\" data-lt=\"ASCII case-insensitive\">ASCII case-insensitive</a>" }, { "lineNum": "2027:47", "messageType": "link", "text": "Multiple possible 'ascii case-insensitive' dfn refs.\nArbitrarily chose https://infra.spec.whatwg.org/#ascii-case-insensitive\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:infra; type:dfn; text:ascii case-insensitive\nspec:i18n-glossary; type:dfn; text:ascii case-insensitive\n<a bs-line-number=\"2027:47\" data-link-type=\"dfn\" data-lt=\"ASCII case-insensitive\">ASCII case-insensitive</a>" }, { "lineNum": "2028:35", "messageType": "link", "text": "Multiple possible 'ascii case-insensitive' dfn refs.\nArbitrarily chose https://infra.spec.whatwg.org/#ascii-case-insensitive\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:infra; type:dfn; text:ascii case-insensitive\nspec:i18n-glossary; type:dfn; text:ascii case-insensitive\n<a bs-line-number=\"2028:35\" data-link-type=\"dfn\" data-lt=\"ASCII case-insensitive\">ASCII case-insensitive</a>" }, { "lineNum": "2030:60", "messageType": "link", "text": "Multiple possible 'ascii case-insensitive' dfn refs.\nArbitrarily chose https://infra.spec.whatwg.org/#ascii-case-insensitive\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:infra; type:dfn; text:ascii case-insensitive\nspec:i18n-glossary; type:dfn; text:ascii case-insensitive\n<a bs-line-number=\"2030:60\" data-link-type=\"dfn\" data-lt=\"ASCII case-insensitive\">ASCII case-insensitive</a>" }, { "lineNum": "2033:47", "messageType": "link", "text": "Multiple possible 'ascii case-insensitive' dfn refs.\nArbitrarily chose https://infra.spec.whatwg.org/#ascii-case-insensitive\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:infra; type:dfn; text:ascii case-insensitive\nspec:i18n-glossary; type:dfn; text:ascii case-insensitive\n<a bs-line-number=\"2033:47\" data-link-type=\"dfn\" data-lt=\"ASCII case-insensitive\">ASCII case-insensitive</a>" }, { "lineNum": "2156:5", "messageType": "link", "text": "Multiple possible 'code points' dfn refs.\nArbitrarily chose https://w3c.github.io/i18n-glossary/#dfn-code-point\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:i18n-glossary; type:dfn; text:code point\nspec:infra; type:dfn; text:code point\n<a bs-line-number=\"2156:5\" data-link-type=\"dfn\" data-lt=\"code points\">code points</a>" }, { "lineNum": "3570:65", "messageType": "link", "text": "Multiple possible 'TypeError' idl refs.\nArbitrarily chose https://tc39.es/ecma262/multipage/fundamental-objects.html#sec-native-error-types-used-in-this-standard-typeerror\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:ecmascript; type:exception; text:TypeError\nspec:webidl; type:exception; text:TypeError\n{{TypeError}}" }, { "lineNum": "3658:65", "messageType": "link", "text": "Multiple possible 'TypeError' idl refs.\nArbitrarily chose https://tc39.es/ecma262/multipage/fundamental-objects.html#sec-native-error-types-used-in-this-standard-typeerror\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:ecmascript; type:exception; text:TypeError\nspec:webidl; type:exception; text:TypeError\n{{TypeError}}" }, { "lineNum": "3973:4", "messageType": "link", "text": "Multiple possible 'TypeError' idl refs.\nArbitrarily chose https://tc39.es/ecma262/multipage/fundamental-objects.html#sec-native-error-types-used-in-this-standard-typeerror\nTo auto-select one of the following refs, insert one of these lines into a <pre class=link-defaults> block:\nspec:ecmascript; type:exception; text:TypeError\nspec:webidl; type:exception; text:TypeError\n{{TypeError}}" }, { "lineNum": null, "messageType": "failure", "text": "Did not generate, due to errors exceeding the allowed error level." } ]This seems to be an issue with the Spec Generator service. PR Preview doesn't manage this service and so has no control over it. If you've identified an issue with it, you can report the issue to the maintainers of Spec Generator directly. Please be courteous. Thank you!
If you don't have enough information above to solve the error by yourself or if the issue doesn't seem related to Spec Generator, you can file an issue with PR Preview.