idnits 2.17.1 draft-bfarias-javascript-mjs-00.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. (Using the creation date from RFC4329, updated by this document, for RFC5378 checks: 2001-09-24) -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (August 16, 2017) is 2443 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 3023 (Obsoleted by RFC 7303) ** Obsolete normative reference: RFC 4329 (Obsoleted by RFC 9239) Summary: 3 errors (**), 0 flaws (~~), 2 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group B. Farias 3 Internet-Draft 4 Updates: 4329 (if approved) M. Miller 5 Intended status: Informational Mozilla 6 Expires: February 17, 2018 August 16, 2017 8 EMCAScript Media Types Updates 9 draft-bfarias-javascript-mjs-00 11 Abstract 13 This document proposes updates to the ECMAScript media types, 14 superseding the existing registrations for "application/javascript" 15 and "text/javascript" by adding an additional extension and removing 16 usage warnings. This document updates RFC4329, "Scripting Media 17 Types". 19 Note to Readers 21 The issues list for this draft can be found at 22 https://github.com/bfarias/I-D/labels/javascript-mjs. 24 The most recent (often, unpublished) draft is at 25 https://github.com/bfarias/I-D/tree/master/javascript-mjs. 27 Recent changes are listed at https://github.com/bfarias/I- 28 D/commits/master/javascript-mjs. 30 Status of This Memo 32 This Internet-Draft is submitted in full conformance with the 33 provisions of BCP 78 and BCP 79. 35 Internet-Drafts are working documents of the Internet Engineering 36 Task Force (IETF). Note that other groups may also distribute 37 working documents as Internet-Drafts. The list of current Internet- 38 Drafts is at http://datatracker.ietf.org/drafts/current/. 40 Internet-Drafts are draft documents valid for a maximum of six months 41 and may be updated, replaced, or obsoleted by other documents at any 42 time. It is inappropriate to use Internet-Drafts as reference 43 material or to cite them other than as "work in progress." 45 This Internet-Draft will expire on February 17, 2018. 47 Copyright Notice 49 Copyright (c) 2017 IETF Trust and the persons identified as the 50 document authors. All rights reserved. 52 This document is subject to BCP 78 and the IETF Trust's Legal 53 Provisions Relating to IETF Documents 54 (http://trustee.ietf.org/license-info) in effect on the date of 55 publication of this document. Please review these documents 56 carefully, as they describe your rights and restrictions with respect 57 to this document. Code Components extracted from this document must 58 include Simplified BSD License text as described in Section 4.e of 59 the Trust Legal Provisions and are provided without warranty as 60 described in the Simplified BSD License. 62 Table of Contents 64 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 65 2. Background . . . . . . . . . . . . . . . . . . . . . . . . . 2 66 3. Notational Conventions . . . . . . . . . . . . . . . . . . . 3 67 4. Registration . . . . . . . . . . . . . . . . . . . . . . . . 3 68 4.1. text/javascript . . . . . . . . . . . . . . . . . . . . . 3 69 4.2. application/javascript . . . . . . . . . . . . . . . . . 4 70 5. References . . . . . . . . . . . . . . . . . . . . . . . . . 5 71 5.1. Normative References . . . . . . . . . . . . . . . . . . 5 72 5.2. Informative References . . . . . . . . . . . . . . . . . 5 73 Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 6 74 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 76 1. Introduction 78 This document updates the existing media types for the ECMAScript 79 programming language. It supersedes the media types registrations in 80 [RFC4329] for "application/javascript" and "text/javascript". 82 2. Background 84 In order to formalize support for modular programs [ECMA-262] now 85 defines two top-level goal symbols for the ECMAScript grammar. This 86 means that (in the absence of additional information) there are two 87 possible interpretations for any given ECMAScript Source Text. The 88 TC39 standards body for ECMAScript has determined that media types 89 are outside of their scope of work [TC39-MIME-ISSUE]. 91 It is not possible to fully determine if a Source Text of ECMAScript 92 is meant to be parsed in the Module or Script grammar goals based 93 upon content alone. Therefore, scripting environments must use out 94 of band information in order to determine what goal a Source Text 95 should be treated as. To this end some scripting environments have 96 chosen to adopt a new file extension of .mjs for determining the goal 97 of a given Source Text. 99 3. Notational Conventions 101 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 102 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 103 document are to be interpreted as described in [RFC2119]. 105 4. Registration 107 The ECMAScript media types are to be updated to point to a non-vendor 108 specific standard undated specification of ECMAScript. In addition, 109 a new file extension of .mjs is to be added to the list of file 110 extensions with the restriction that it must correspond to the Module 111 grammar of [ECMA-262]. Finally, the [HTML] specification is using 112 text/javascript as the default media type of ECMAScript when 113 preparing script tags; therefore, text/javascript has been moved 114 intended usage from OBSOLETE to COMMON. 116 4.1. text/javascript 118 Type name: text 120 Subtype name: javascript 122 Required parameters: none 124 Optional parameters: charset, see section 4.1 of [RFC4329]. 126 Encoding considerations: The same as the considerations in section 127 3.1 of [RFC3023]. 129 Security considerations: See section 5 of [RFC4329]. 131 Interoperability considerations: See notes in various sections of 132 [RFC4329]. This media type does not specify the grammar of 133 [ECMA-262] used. 135 Published specification: [[RFCXXXX]] 137 Applications which use this media type: Script interpreters as 138 discussed in [RFC4329]. 140 Additional information: 142 Magic number(s): n/a 143 File extension(s): .js, .mjs 145 Macintosh File Type Code(s): TEXT 147 Person & email address to contact for further information: See 148 Author's Address section. 150 Intended usage: COMMON 152 Restrictions on usage: The file extension .mjs must be parsed using 153 the Module grammar of [ECMA-262] 155 Author: See Author's Address section. 157 Change controller: IESG 159 4.2. application/javascript 161 Type name: application 163 Subtype name: javascript 165 Required parameters: none 167 Optional parameters: charset, see section 4.1 of [RFC4329]. 169 Encoding considerations: The same as the considerations in section 170 3.2 of [RFC3023]. 172 Security considerations: See section 5 of [RFC4329]. 174 Interoperability considerations: See notes in various sections of 175 [RFC4329]. This media type does not specify the grammar of 176 [ECMA-262] used. 178 Published specification: [[RFCXXXX]] 180 Applications which use this media type: Script interpreters as 181 discussed in [RFC4329]. 183 Additional information: 185 Magic number(s): n/a 187 File extension(s): .js, .mjs 189 Macintosh File Type Code(s): TEXT 191 Person & email address to contact for further information: See 192 Author's Address section. 194 Intended usage: COMMON 196 Restrictions on usage: The file extension .mjs must be parsed using 197 the Module grammar of [ECMA-262] 199 Author: See Author's Address section. 201 Change controller: IESG . 203 5. References 205 5.1. Normative References 207 [ECMA-262] 208 Ecma International, "Standard ECMA-262: ECMAScript 209 Language Specification", August 2017, . 212 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 213 Requirement Levels", BCP 14, RFC 2119, 214 DOI 10.17487/RFC2119, March 1997, 215 . 217 [RFC3023] Murata, M., St. Laurent, S., and D. Kohn, "XML Media 218 Types", RFC 3023, DOI 10.17487/RFC3023, January 2001, 219 . 221 [RFC4329] Hoehrmann, B., "Scripting Media Types", RFC 4329, 222 DOI 10.17487/RFC4329, April 2006, 223 . 225 5.2. Informative References 227 [HTML] WHATWG, "HTML Living Standard", August 2017, 228 . 231 [TC39-MIME-ISSUE] 232 TC39, "Add `application/javascript+module` mime to remove 233 ambiguity5", August 2017, . 236 Appendix A. Acknowledgements 238 Thanks to Suresh Krishnan, Alexey Melnikov, Mark Nottingham, James 239 Snell, Matthew A. Miller, Adam Roach, and Allen Wirfs-Brock for 240 guiding me through this process. 242 Authors' Addresses 244 Bradley Farias 246 Email: bradley.meck@gmail.com 248 Matthew A. Miller 249 Mozilla 251 Email: linuxwolf+ietf@outer-planes.net