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

WebIDL snippets with default values are being dropped #34

Closed
lukebjerring opened this issue Jul 18, 2019 · 5 comments
Closed

WebIDL snippets with default values are being dropped #34

lukebjerring opened this issue Jul 18, 2019 · 5 comments

Comments

@foolip
Copy link
Member

foolip commented Jul 18, 2019

Oh, good catch. That suggests that some attempt is being made to parse the IDL before accepting it, but that doesn't jive with my experience of fixing lots of broken IDL in specs that was already in reffy-reports... curious to learn what's behind this :)

@foolip
Copy link
Member

foolip commented Jul 23, 2019

@tidoust @dontcallmedom can either of you help out with this?

@tidoust
Copy link
Member

tidoust commented Jul 24, 2019

Argh. The problem is that right now, Reffy needs to use a pinned version of Respec (23.7.1) because newer versions of Respec do not run under JSDOM (notably because of the use of CreateObjectURL to create a worker). That old version of Respec does not seem to like default values when it parses WebIDL fragments and fails to include the interface in the final IDL index.

I don't know how to make the latest version of Respec run with JSDOM. We may have to get back to running a headless browser instead.

In the meantime, I'll have Reffy extract the IDL from the body of the spec instead of relying on the IDL index at the end of the spec.

tidoust added a commit to w3c/reffy that referenced this issue Jul 25, 2019
Reffy gladly used the IDL index at the end of the spec to extract the IDL
definitions, but ReSpec generates this IDL index on-the-fly and we're currently
stuck to an old version of ReSpec (see #134), which chokes on recent WebIDL
constructs and fails to include them in the IDL index, as described in:
w3c/webref#34

With this update, Reffy now ignores the IDL index and extracts IDL definitions
from main spec sections, and not from the IDL index appendix.

Useless leading spaces are now discarded as well (#130).
tidoust added a commit that referenced this issue Jul 25, 2019
Results generated from the latest version of Reffy, which now extracts WebIDL
definitions from the main body of the spec, and not from the IDL index appendix.
@tidoust
Copy link
Member

tidoust commented Jul 25, 2019

Reffy will now ignore the final IDL index from now on, and rather extract IDL definitions from the core part of the spec.

Not to have to wait for tomorrow's automatic report, I also pushed a manual update of the IDL files for Performance Timeline, Push API, User Timing, Wake Lock, WebNFC and Web Share, which had missing IDL definitions because of this.

Please reopen the issue if I missed something!

@tidoust tidoust closed this as completed Jul 25, 2019
@foolip
Copy link
Member

foolip commented Jul 25, 2019

Sweet, thanks for fixing this, @tidoust!

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

No branches or pull requests

3 participants