Skip to content

Commit afb1f3f

Browse files
committed
Add additional edits resulting from TC53's review
1 parent 9a9460c commit afb1f3f

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

index.bs

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ There is a wide base of ECMAScript runtime environments being used beyond web br
2121

2222
Since code running in web browsers makes up the vast majority of ECMAScript code, runtimes are incentivised to support the same APIs as web browsers. However without a specification of which web platform APIs to be implemented, the resulting landscape provides poor interoperability across such environments.
2323

24-
As such, this Ecma Standard defines the Minimum common web API specification, which lists a curated minimum subset of web platform APIs for server-side and edge runtimes to implement if they aim to be web-interoperable. This is the first edition of the standard, corresponding to the 2025 snapshot. As the web platform (and non-web runtimes) grow and evolve, the committee will aim to publish with an annual cadence.
24+
As such, this Ecma Standard defines the Minimum common web API specification, which defines a subset of Web Platform APIs for server runtimes to implement for interoperability with the web. This is the first edition of the standard, corresponding to the 2025 snapshot. As the web platform and web server runtimes grow and evolve, the committee will aim to publish with an annual cadence.
2525

2626
This Ecma Standard was developed by Technical Committee 55 and was adopted by the General Assembly of December 2025.
2727

@@ -52,12 +52,12 @@ This Ecma Standard was developed by Technical Committee 55 and was adopted by th
5252
Scope {#scope}
5353
==========================
5454

55-
This Standard defines the 2025 snapshot of the Minimum common web API, a curated subset of APIs defined by web platform standards from W3C and WHATWG, which is intended to define a minimum set of capabilities common to browser and non-browser ECMAScript-based runtime environments.
55+
This Standard defines the 2025 snapshot of the Minimum common web API, a curated subset of APIs defined by web platform standards from W3C and WHATWG, which is intended to define a minimum set of capabilities common to browser and web server runtime environments based on ECMAScript.
5656

5757
Conformance {#conformance}
5858
==========================
5959

60-
A conforming implementation of the Minimum Common Web Platform API shall conform to ECMA-262, and additionally shall provide the interfaces and properties listed in this Standard, according to their definition in the corresponding W3C or WHATWG standard.
60+
A conforming implementation of this Standard shall provide the interfaces and properties listed in this specification, according to their definition in the corresponding W3C or WHATWG standard. A conforming implementation shall also conform to ECMA-262.
6161

6262
Runtime-specific extensions to any Web Platform API may be implemented by conforming runtimes. Such extensions shall be defined so that their use neither contradicts, nor causes the non-conformance of, normative functionality of any Web Platform API. It is important to carefully consider use of such extensions, as it reduces interoperability and portability of code across runtimes.
6363

@@ -90,9 +90,11 @@ The term "Web-interoperable Runtime" is intentionally broad. The primary focus o
9090
Common API Index {#api-index}
9191
=========================
9292

93-
All <a>Web-interoperable Runtimes</a> conforming to this Standard shall implement each of the following <a>Web Platform</a> APIs. These should be implemented in accordance with their normative requirements except where modified here. Where any runtime environment must diverge from a normative requirement for technical or structural reasons, clear documentation shall be provided. Documentation shall include both explanation and impact of deviation.
93+
All <a>Web-interoperable Runtimes</a> conforming to this Standard shall implement each of the following <a>Web Platform</a> APIs. These should be implemented in accordance with their normative requirements except as specified in [[#global-scope]]. Where any runtime environment must diverge from a normative requirement for technical or structural reasons, clear documentation shall be provided. Documentation shall include both explanation and impact of deviation.
9494

95-
All of the following interfaces shall be exposed on the global object accessible through `globalThis`, unless otherwise specified in this Standard:
95+
Note: Since web server runtimes do not have an [=origin=] concept, they may willingly violate [[!FETCH]]'s requirement of appending an `Origin` header to network requests.
96+
97+
All of the following interfaces shall be exposed on the global object accessible through `globalThis`:
9698

9799
* {{AbortController}} [[!DOM]]
98100
* {{AbortSignal}} [[!DOM]]
@@ -148,7 +150,7 @@ All of the following interfaces shall be exposed on the global object accessible
148150
* {{WritableStreamDefaultController}} [[!STREAMS]]
149151
* {{WritableStreamDefaultWriter}} [[!STREAMS]]
150152

151-
All of the following methods and properties shall be exposed on the global object accessible through `globalThis`, unless otherwise specified in this Standard:
153+
All of the following methods and properties shall be exposed on the global object accessible through `globalThis`, except as specified in [[#global-scope]]:
152154

153155
* {{globalThis}} [[!ECMASCRIPT]]
154156
* `globalThis.`{{atob()}} [[!HTML]]
@@ -179,7 +181,7 @@ All of the following methods and properties shall be exposed on the global objec
179181
If a web-interoperable runtime supports workers, it shall also expose {{WorkerGlobalScope/onerror}},
180182
{{WorkerGlobalScope/onunhandledrejection}}, {{WorkerGlobalScope/onrejectionhandled}} and
181183
{{WorkerGlobalScope/self}} on the worker's `globalThis`,
182-
unless otherwise specified in this Standard. [[!HTML]]
184+
except as specified in [[#global-scope]]. [[!HTML]]
183185

184186
The Global Scope {#global-scope}
185187
================================

0 commit comments

Comments
 (0)