-
Notifications
You must be signed in to change notification settings - Fork 144
Revise processing model, fix queue size attributes #493
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
Conversation
@padenot @aboba - review guide:
This first commit revises the processing model and updates AudioDecoder.configure() and AudioDecoder.decode() to use the new way. Will go further after getting some initial feedback. |
@sandersdan FYI |
@padenot has gone OOO for a bit, so planning to TBR for his review (he's already blessed the first round of change for AudioDecoder). @dalecurtis, could you take a look at the ImageDecoder changes here. Should be no change at all to Chrome's behavior - just editorial refactoring to align spec:chrome. Happy to go through it on VC if you'd like. |
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.
Seems to make things more complicated than necessary for ImageDecoder, but it's probably better to be consistent throughout the document on the processing model.
instance. See [=[[control message queue]]=]. | ||
|
||
: <dfn attribute for=ImageDecoder>[[message queue blocked]]</dfn> | ||
:: A boolean indicating when processing the |
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.
Currently there are no operations which can block the work queue for ImageDecoder. The only things close are reset() and track changes, both of which will abort the queue.
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 constructor has an async step to configure the decoder, similar to how configure() works for the other interfaces. This gets queued as a control message and blocks any subsequent decode() until configure resolves. It may be that our impl is actually simpler than this, and I don't know that the blockage is really observable anyway, but it seemed nice to be consistent w/ the other configure() control messages in this way.
@@ -4870,7 +5073,7 @@ | |||
6. Return `true`. | |||
|
|||
A <dfn>valid image MIME type</dfn> is a string that is a [=valid MIME type | |||
string=] and for which the `type`, per Section 3.1.1.1 of [[RFC7231]], is | |||
string=] and for which the `type`, per Section 3.1.1.1 of [[RFC9110]], is |
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.
Was this a typo before?
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.
Bikeshed let me know that the original RFC was obsoleted by this new one.
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.
Thanks @dalecurtis.
I definitely agree w/ your sentiment that this is more complicated than I'd make it were ImageDecoder a standalone thing.
instance. See [=[[control message queue]]=]. | ||
|
||
: <dfn attribute for=ImageDecoder>[[message queue blocked]]</dfn> | ||
:: A boolean indicating when processing the |
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 constructor has an async step to configure the decoder, similar to how configure() works for the other interfaces. This gets queued as a control message and blocks any subsequent decode() until configure resolves. It may be that our impl is actually simpler than this, and I don't know that the blockage is really observable anyway, but it seemed nice to be consistent w/ the other configure() control messages in this way.
@@ -4870,7 +5073,7 @@ | |||
6. Return `true`. | |||
|
|||
A <dfn>valid image MIME type</dfn> is a string that is a [=valid MIME type | |||
string=] and for which the `type`, per Section 3.1.1.1 of [[RFC7231]], is | |||
string=] and for which the `type`, per Section 3.1.1.1 of [[RFC9110]], is |
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.
Bikeshed let me know that the original RFC was obsoleted by this new one.
Thanks everyone. @padenot, I'll go ahead and merge as TBR while you're OOO. Late feedback welcome. |
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
SHA: e24686d Reason: push, by @chcunningham Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
A few changes
Preview | Diff