wingo opened issue #11778:
RFC 3986 §3.1, referred to by RFC 9110, specifies that URI schemes should begin with an ascii alphabetic character and then continue the same but also allowing
+,-, numbers and.:scheme = ALPHA *( ALPHA / DIGIT / "+" / "-" / "." )And in Wasmtime, we have the expected behavior in that
request.set_methodallows the productions above and rejects most others, but it is more lenient in that it allows schemes that begin with a character in+-.0123456789~. Probably that needs tightening up.
wingo added the bug label to Issue #11778.
wingo commented on issue #11778:
We should probably also eagerly lower-case "other" schemes, i.e. that
get-methodafterset-method("A")should return"a":Although schemes are case-insensitive, the canonical form is lowercase and documents that specify schemes must do so with lowercase letters. An implementation should accept uppercase letters as equivalent to lowercase in scheme names e.g., allow "HTTP" as well as "http") for the sake of robustness but should only produce lowercase scheme names for consistency.
alexcrichton added the wasi:impl label to Issue #11778.
fitzgen added the wasi:spec label to Issue #11778.
Last updated: Dec 06 2025 at 07:03 UTC