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
Issue #83: Move media-source spec to Contiguous IDL #127
Conversation
@mwatson2 : media-source.html should not be changed by this PR. It needs to remain as a redirector to index.html. Thanks for preparing this. I'll do further review on this before EOW. |
The new IDL text seems to render fine in HTML, but isn't very readable in text form because it's one long run-on line. I've prefer these be broken up, like the examples in the Contiguous IDL document: [Constructor] interface Dahut : Mammal { const unsigned short LEVROGYROUS = 0; const unsigned short DEXTROGYROUS = 1; readonly attribute DOMString chirality; attribute unsigned long age; Dahut turnAround(float angle, boolean fall); unsigned long trip(); void yell([AllowAny] unsigned long volume, [TreatNullAs=EmptyString] DOMString sentence); }; You mentioned the conversion was largely done by an updated version of respec. Does it do the current formatting? |
Oops. Fixed that.
Not sure what you mean. Do you mean there is a case there is IDL is on one run-on line ? Or are you talking about the HTML for the attribute / method tables ?
Yes, it does what ReSpec does with "Old School" IDL (convert to the HTML for the IDL itself, the method and attribute tables and description sections) and nothing else. So, what you are left with is Contiguous IDL. Then you need to go in and patch up all the links, which have changed. |
I did an update and don't see as clear of an example as previously. The formatting is ragged around the IDL content though, like this:
|
@jdsmith3000 Yes, it didn't format the HTML it generated nicely. We could tidy it up by hand (in one go, or as we work on each part of the spec) or we could use a tool to reformat the whole thing. |
If you know of a tool, that would be great. If not, the cleanup looks straightforward and wouldn't be too hard to do manually. We could merge this change (since it is functional) and enter an issue for cleanup, if there is time. |
interface MediaSource : EventTarget { | ||
readonly attribute SourceBufferList sourceBuffers; | ||
readonly attribute SourceBufferList activeSourceBuffers; | ||
readonly attribute ReadyState readyState; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
index.html no longer contains a hyperlink from "readyState" to the attribute's definition from the WebIDL table. Please fix.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a ReSpec bug: w3c/respec#893
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does the respec bug also encompass the enum link I just noted for enum ReadyState?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I expect so. It gets confused internally between readyState and ReadyState.
<dl title="interface SourceBufferList : EventTarget" class="idl"> | ||
<dt>readonly attribute unsigned long length</dt> | ||
<dd> | ||
<div><pre class="idl">interface SourceBufferList : EventTarget { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ditto (many types missing links here, in this object's IDL, attribute and method details...)
@mwatson2 Please also update the publishDate (or I can do that if that's all that's remaining before merging). |
Note that when I was originally trying to fix those respec errors, I hit a similar problem where the links evaporated: see #68 (comment) |
I've finished this iteration of review as of 1f5f9f3 -- it looks much better, @mwatson2. Thank you! If w3c/respec#893 only impacts readyState and appendBuffer, it seems we could file another V1Editorial to fix-up those (or work-around those) separately. |
@wolenetz In response to the several "Is this expected ?", the conversion script is very ad hoc and such instructions as I was given note that you'll have to fix up some links, so in that sense, yes, it is expected that it will break some links and mess up some formatting which we will then have to fix. Regarding w3c/respec#893, I only just filed it so I'm not sure there's an ETA. If I knew how to work around it, I'd just fix the underlying bug myself ;-) The missing appendBuffer links is likely a different ReSpec issue: there is nothing we can do in the source to fix it, since the source is just the pure IDL. I did ask about this issue and it was suggested to replace the two methods with:
(WebIDL apparently doesn't really have overloading, but it does have union types). So, I will fix the formatting issues. |
Sounds good. If we need to work around the respec bug manually in On Jul 28, 2016 4:56 PM, "mwatson2" notifications@github.com wrote:
|
I have a question in on the ReSpec bug. A cannot find a way to fix the appendBuffer problem. We might have to patch that up by hand in media-source.js. The other problems should be fixed now. |
<dl title="enum ReadyState" class="idl"> | ||
<dt>closed</dt> | ||
<dd> | ||
<div><pre class="idl">enum ReadyState { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The enum ReadyState is linked to the readyState attribute description, and that attribute (lower down) has no link.
It looks like both the ReadyState enum and attribute have link problems still as well. I also noted a link from the TrackDefaultList interface to it's constructor that is new. |
Regarding the problem of auto-linking of With that, the id |
This PR now includes the work-around for the readyState link problem as well as 6 other issues (per the commits above). I think it is now good-to-go. |
I believe all the issues are fixed now. Shall I merge this ? |
The only odd thing I noticed was the ReadyState enum has a link to itself, where the common format would have no link. Right? |
I've landed some large chunks (removing the 3 at-risk features) on gh-pages, so before reviewing, I'll try to add a merge commit to this PR that resolves those conflicts. |
Looks mostly good. There's still a little weirdness around "ReadyState" type of the "readyState" attribute linking to the readyState attribute IDL, not the ReadyState enum. I believe that's the only issue I spotted related to this PR when I merged it with current gh-pages locally. I'll attempt to add that merge commit to this PR now. |
As I expected, I don't have permissions to push to mwatson2's fork of w3c/media-source. I'll redo this PR using my own fork and post that PR reference here shortly. |
No description provided.