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

Use Contiguous IDL for WebIDL definitions #170

Closed
ddorwin opened this issue Apr 21, 2016 · 8 comments
Closed

Use Contiguous IDL for WebIDL definitions #170

ddorwin opened this issue Apr 21, 2016 · 8 comments
Assignees
Milestone

Comments

@ddorwin
Copy link
Contributor

ddorwin commented Apr 21, 2016

When loading encrypted-media-respec.html, the following console warning is emitted:

Defining WebIDL in dl elements is deprecated. Please use Contiguous IDL instead: https://www.w3.org/respec/guide.html#contiguous-idl

It would be nice to switch to the new model and eliminate this warning.

@mwatson2
Copy link
Contributor

mwatson2 commented May 2, 2016

Contiguous IDL does not support automatic creation of the method parameter tables that we are presently using. I am wondering if we need anything more than the Parameter / Description columns since the other columns (Type, Nullable, Optional) are duplicative of information in the WebIDL itself ?

@ddorwin
Copy link
Contributor Author

ddorwin commented May 2, 2016

I'm not so concerned about those other columns, but it seems odd that the tables have been eliminated, requiring spec authors to manually format tables or lists and ensure they don't forget any. It's probably worth asking about this (is this intentional? best practices?) in the ReSpec repo.

@mwatson2
Copy link
Contributor

mwatson2 commented May 2, 2016

What I read here is that the tables were considered harmful because of the redundancy. In fact for requestMediaKeySystemAccess there is no information in the table which is not already in the material above, so I basically just removed it.

@mwatson2
Copy link
Contributor

mwatson2 commented May 2, 2016

On further investigation there are other features (enumeration descriptions, dictionary descriptions) that we use extensively. Dictionary descriptions looks like regular <dl> format, so that is probably not a problem, but enumeration descriptions have a table format which would be messy to code by hand.

The rationale seems to be that all descriptions should be imperative (in the procedures) not declarative, which is not something I fully subscribe to (notwithstanding it being now an article of faith).

Since the changes would be quite extensive, I'd like to leave this one until we have addressed the blocking issues. At least these changes probably shouldn't be attempted with a lot of other PRs outstanding.

@plehegar
Copy link
Member

plehegar commented May 5, 2016

This is indeed a pretty substantial editorial to do, speaking as someone who did it for some of the webperf spec. I support leaving on the side for the moment and keep it in the category "nice to have if time allows".

@ddorwin ddorwin modified the milestones: V1NonBlocking, V1Editorial May 17, 2016
@mwatson2
Copy link
Contributor

So, it turns out that @dontcallmedom has a magical version of ReSpec which "converts" old school to contiguous IDL. I now have this working, but we need iterable support in the contiguous IDL version first.

mwatson2 added a commit to mwatson2/encrypted-media that referenced this issue Jul 14, 2016
@ddorwin
Copy link
Contributor Author

ddorwin commented Jul 19, 2016

@mwatson2, Your ReSpec PR has been merged, so you should be able to make a PR of the above commit.

@ddorwin ddorwin removed the blocked label Jul 19, 2016
@mwatson2
Copy link
Contributor

mwatson2 commented Jul 19, 2016

Here is the Pull Request: #274. Could someone take a look before I merge ?

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

3 participants