Open annevk opened 6 years ago
@annevk
https://tools.ietf.org/html/rfc2046#section-1
MIME implementations must also ignore any parameters whose names they do not recognize.
There is no need to state that not all consumers/clients will use it.
@allenwb I think goal symbols are specified in the ECMA262 spec, but we could specify that this parameter only applies to the ones in Syntactic Grammar. What do you think?
There is no need to state that not all consumers/clients will use it.
I think there is, since by defining the parameter you are setting the expectation that it will be recognized.
@bmeck Yes, the official ECMA-262 are the ones listed in the Syntactic Grammar clause you referenced.
But what about cjs modules? Technically, they don't parse as either the Script or Module goal. I can imagine that a package manager that serves all kinds of js code could usefully distinguish all three.
@allenwb CJS is getting a separate MIME https://github.com/nodejs/TSC/issues/371
@annevk
I think there is, since by defining the parameter you are setting the expectation that it will be recognized.
Wouldn't a possible solution be to amend the HTML spec for this parameter as well? It isn't as intrusive as a completely new MIME.
What kind of modification do you have in mind?
(I don't really see how it's less intrusive btw.)
@annevk
https://html.spec.whatwg.org/multipage/webappapis.html#fetch-a-classic-script
Already checks content-type
metadata for information on encoding. Any reason it can't check for goal
existing and not equaling script
there? IDK if <script>
type= check relates really since it doesn't use content-type
.
https://html.spec.whatwg.org/multipage/webappapis.html#fetch-a-single-module-script
Doesn't do the encoding check, but does check the actual content-type
. Any reason it can't check goal
existing and not equaling module
there?
The spec here has clarified the goal symbols and case insensitivity, so that should be cleared up. Let me know if spec needs any more clarifications.
Sure, such modifications could be made, provided there's implementers willing to implement that.
However, until that's actually proposed and carried through by someone, https://github.com/bmeck/I-D/issues/17#issuecomment-341472957 stands.
@annevk I've made such a proposed change to start the process of discussing that then.
I've seen it used in an ASCII case-insensitive way, but it's not defined as such.
It's also not stated how it's to be used while parsing.
Also, not all hosts are going to use it since this kind of thing was rejected for HTML integration of JavaScript modules. So perhaps there should be some note that not all consumers/clients will use it.
cc @domenic