Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WASM] CR transition for WebAssembly Core Specification #119

Closed
ericprud opened this issue Feb 17, 2019 · 9 comments
Closed

[WASM] CR transition for WebAssembly Core Specification #119

ericprud opened this issue Feb 17, 2019 · 9 comments
Assignees

Comments

@ericprud
Copy link
Member

ericprud commented Feb 17, 2019

Document title, URLs, estimated publication date

target: https://www.w3.org/TR/2019/CR-wasm-core-1-20190306/
source: https://webassembly.github.io/spec/core/bikeshed/
to be published with: JavaScript Interface and WebAPI

Abstract

This document describes version 1.0 of the core WebAssembly standard, a safe, portable, low-level code format designed for efficient execution and compact representation.

Part of a collection of related documents: the Core WebAssembly Specification, the WebAssembly JS Interface, and the WebAssembly Web API.

Status

Standard Bikeshed SOTD plus text about exit criteria and CR deadline (see below).

Link to group's decision to request transition

https://github.com/WebAssembly/meetings/blob/master/2019/WG-02-13.md#--request-that-we-move-forward-with-a-candidate-recommendation-cr

Changes

This is a short list so I'd be tempted to include notation changes as it won't saturate the reader's brain.

Requirements satisfied

N/A

Dependencies met (or not)

no changes to dependencies or normative references.

Wide Review

see issues

Issues addressed

We expect to fix some of the open issues but probably more will emerge and they are typically behavior in error conditions.
WebAssembly/spec#960. Clarify alignment "hint" being in "base 2 logarithmic representation"? will close in the next few hours
WebAssembly/spec#899. Embedded devices: i8/i16 and memory pages less than 64KiB (invited to make WASM profile for embedded devices)
WebAssembly/spec#890. Relicense test/js-api/limits.js possible license issue on some submitted tests
WebAssembly/design#1540. Optional and dependent features (Meta discussion about optional features -- no specific proposals)
WebAssembly/spec#830. support Unicode(or UTF-8 encoded) identifiers (affects text representation, only used for testing)
WebAssembly/spec#809. [interpreter] rounding for floating-point constants (awaiting close by commenter)
WebAssembly/spec#804. Any intention add fp16 & i16 native support in webassembly? (feature req that will not go into 1st REC)
WebAssembly/spec#757. [spec] Error type for fetch cancellation (awaiting close by commenter)
WebAssembly/spec#728. [spec review] 4 - Execution editorial wasm-core-1 (awaiting close by commenter)
WebAssembly/spec#617. Roundtrip names with strange symbols in text format (feature req that will not go into 1st REC)
WebAssembly/spec#573. [web] Register application/wasm MIME type (TODO: track down flaxgor's registration and push it along)
WebAssembly/spec#421. [interpreter] f32.convert_u/i64 and f32_convert_s/i64 have incorrect rounding (awaiting close by commenter)

Formal Objections

Commentor achun disputes the wisdom of where the group went:
945. [spec] Support i8 and i16? (addressed in meeting
941. [spec] Support address value type? (addressed in response)
We will contact achun during CR to ask if he/she would like to file a formal objection.

Implementation

exit criteria: 2+ impls of everything in WPT https://wpt.fyi/results/wasm
We expect to pass all positive tests. Some impls map fail some negative tests so long as they reject.
minimum CR duration: End of June (4 weeks)
expect immediate transition to PR.

Patent disclosures

https://www.w3.org/2004/01/pp-impl/101196/status#current-disclosures


There are some publication challenges, some of which may be addressed by manual intervention:

WebAssembly/spec#896. [bikeshed] Incorrect links in footnotes
WebAssembly/spec#794. [bikeshed] Vertical alignment of footnote numbers editorial
WebAssembly/spec#680. [bikeshed] All references should go to References section editorial
WebAssembly/spec#676. [bikeshed] Reduce width of TOC editorial
WebAssembly/spec#670. [bikeshed] Vertical alignment of arrays editorial
WebAssembly/spec#643. [website] highlighting breaks the MathML render editorial

Editorial and scale testing issues:

WebAssembly/spec#886. Typo: n -> m (re-use of names in formulae)
WebAssembly/spec#880. Embedding limits test should test max module size of 1 GiB (practical limitations)
WebAssembly/spec#598. [papers] Add an index page to the papers directory editorial (paging)
WebAssembly/spec#593. The OPAM package properly provides the .mli interfaces, but not the .ml files for modules such as Ast (included files)
WebAssembly/spec#124. [interpreter] fp tests fail on Windows due to bit pattern mismatches (Not sure what to do. I last pestered folks in Sept and it was still a PITA for testers.)

all issues for all specs

This is a reverse-ordered list of open issues. These have been sorted into the three TR transition requests:
985. [js-api] Review object caching (Mar 14, 2019)
974. [test] uncovered edge cases (Feb 22, 2019)
960. Clarify alignment "hint" being in "base 2 logarithmic representation"? (Feb 1, 2019)
945. [spec] Support i8 and i16? (Jan 17, 2019)
941. [spec] Support address value type? (Jan 13, 2019)
899. Embedded devices: i8/i16 and memory pages less than 64KiB (Oct 24, 2018)
896. [bikeshed] Incorrect links in footnotes (Oct 19, 2018)
890. Relicense test/js-api/limits.js (Oct 11, 2018)
886. Typo: n -> m (Oct 5, 2018)
880. Embedding limits test should test max module size of 1 GiB (Sep 24, 2018)
870. Optional and dependent features (Sep 5, 2018)
830. support Unicode(or UTF-8 encoded) identifiers (Jul 5, 2018)
810. js api: improve definition of error objects (May 24, 2018)
809. [interpreter] rounding for floating-point constants (May 23, 2018)
804. Any intention add fp16 & i16 native support in webassembly? (May 13, 2018)
794. [bikeshed] Vertical alignment of footnote numbers editorial (May 3, 2018)
757. [spec] Error type for fetch cancellation (Mar 21, 2018)
741. [js-api] Allow optional asynchronous steps after instantiation? (Mar 4, 2018)
728. [spec review] 4 - Execution editorial wasm-core-1 (Feb 28, 2018)
680. [bikeshed] All references should go to References section editorial (Feb 13, 2018)
676. [bikeshed] Reduce width of TOC editorial (Feb 13, 2018)
670. [bikeshed] Vertical alignment of arrays editorial (Feb 13, 2018)
643. [website] highlighting breaks the MathML render editorial (Jan 9, 2018)
617. Roundtrip names with strange symbols in text format (Dec 6, 2017)
598. [papers] Add an index page to the papers directory editorial (Nov 6, 2017)
593. The OPAM package properly provides the .mli interfaces, but not the .ml files for modules such as Ast (Oct 26, 2017)
573. [web] Register application/wasm MIME type (Oct 5, 2017)
421. [interpreter] f32.convert_u/i64 and f32_convert_s/i64 have incorrect rounding (Feb 9, 2017)
124. [interpreter] fp tests fail on Windows due to bit pattern mismatches (Oct 10, 2015)

@ericprud ericprud added the Entering CR First Candidate Recommendation label Feb 17, 2019
@binji
Copy link

binji commented Mar 5, 2019

@plehegar
Copy link
Member

plehegar commented Apr 4, 2019

@ericprud , not sure about the status of this request. Is it ready for the Director to look at?

@ericprud
Copy link
Member Author

ericprud commented Apr 8, 2019

We have a few more things to take care of. @binji and I will meet this week to take care of them.

@plehegar
Copy link
Member

ping?

@swickr
Copy link
Contributor

swickr commented May 24, 2019

Transition approved.

There are some editorial things I noticed:

  • The second paragraph of section 1.1 is inconsistent with the SoTD and likely extraneous.
  • There is an extraneous copyright statement at the end of the Execution section of A.8.

And a question:
In 2.3.3 there's a non-normative note about the length of the result type vector for functions. Is the correct interpretation of 4.4.7.3 that this is a normative constraint on host functions as well?

One more thing; I encourage a comment for #945 explaining the conclusion.

@swickr swickr added Awaiting Team Contact and removed [DO NOT USE] Awaiting Director Deprecated. Use Awaiting Team Verification. labels May 24, 2019
@binji
Copy link

binji commented May 24, 2019

Thanks! @rossberg to address your questions.

@rossberg
Copy link

There are some editorial things I noticed:

  • The second paragraph of section 1.1 is inconsistent with the SoTD and likely extraneous.

Happy to remove. Do you have a link to the SoTD?

  • There is an extraneous copyright statement at the end of the Execution section of A.8.

This seems to be a problem with the Bikeshed conversion. @binji, do you know?

And a question:
In 2.3.3 there's a non-normative note about the length of the result type vector for functions. Is the correct interpretation of 4.4.7.3 that this is a normative constraint on host functions as well?

Yes, indirectly. A function type not satisfying this constraint does not validate, so host functions are constrained in so far that it is not possible to import them with a type not satisfying this constraint.

One more thing; I encourage a comment for WebAssembly/spec#945 explaining the conclusion.

Hm, do you have anything specific in mind? (Note that the CG decided that the spec is not the right place to discuss design rationales, and it's avoided for everything else.)

@swickr swickr assigned ericprud and unassigned swickr May 28, 2019
@binji
Copy link

binji commented May 30, 2019

This seems to be a problem with the Bikeshed conversion. @binji, do you know?

I think this fixes it: WebAssembly/spec#1030

@plehegar
Copy link
Member

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants
@ericprud @binji @plehegar @swickr @rossberg @w3cbot and others