-
Notifications
You must be signed in to change notification settings - Fork 164
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
Separate out exported abstract ops from internal ones #372
Comments
I think ideally you can find out from the name which is private and which is public. Would prefixing internal methods with "@" be too weird? |
That seems pretty weird but maybe it will grow on me. You like it better than the tag idea? |
A bit, the tags might not make it into other specifications. |
Yeah, they wouldn't... but if everyone behaves themselves, neither would any @-prefixed internal methods :P |
This has often confused me with ECMAScript too. And is a problem with most specifications today. A lot of algorithms and not clear which are reusable and which are not. Glad you're leading the way. |
Any of separate section, tag, prefixing work for me. Regardless we put tag/prefix or not, grouping into two sections would improve readability, I guess. |
That is, other specifications are supposed to use it, similar to ErrorReadableStream and CloseReadableStream and others. (Related: #372.) See https://github.com/yutakahirano/fetch-with-streams/pull/54/files#diff-04c6e90faac2675aa89e2176d2eec7d8R94.
One way of doing this is to move stuff like https://fetch.spec.whatwg.org/#streams into the spec. That way we achieve a few things at once:
|
I would be happy to use abstract operations in Fetch in due course. Though English might be a tad more readable at times. |
This may break some incoming links from Fetch, but they were already conceptually broken. We will fix that mismatch in #372.
What's the plan here now that Streams is using IDL? |
Roughly the same, and much closer to the top of my to-do list. My current plan is:
|
This incorporates much of https://fetch.spec.whatwg.org/commit-snapshots/ad9a84ad91fb6bd3a2dcdf0406321785f51c4c11/#streams, as well as https://wicg.github.io/compression/#generic-transform-stream. It also looks at how https://wicg.github.io/native-file-system/ uses writable streams, and creates wrapper algorithms to make that easier. Closes #372.
This incorporates much of https://fetch.spec.whatwg.org/commit-snapshots/ad9a84ad91fb6bd3a2dcdf0406321785f51c4c11/#streams, as well as https://wicg.github.io/compression/#generic-transform-stream. It also looks at how https://wicg.github.io/native-file-system/ uses writable streams, and creates wrapper algorithms to make that easier. Closes #372.
This incorporates much of https://fetch.spec.whatwg.org/commit-snapshots/ad9a84ad91fb6bd3a2dcdf0406321785f51c4c11/#streams, as well as https://wicg.github.io/compression/#generic-transform-stream. It also looks at how https://wicg.github.io/native-file-system/ uses writable streams, and creates wrapper algorithms to make that easier. Closes whatwg#372.
Ideally, other specs should only refer to a few of our abstract ops, e.g.:
plus maybe a few more. Others are "implementation details", e.g. FinishClosingReadableStream ( stream ) or RequestReadableStreamPull ( stream ) or similar. Additionally, for each of the above, there are some "usage details" that are important. E.g. see the intro of https://streams.spec.whatwg.org/#enqueue-in-readable-stream
A few strategies:
Thoughts appreciated. Probably especially from @annevk as Fetch editor.
The text was updated successfully, but these errors were encountered: