-
Notifications
You must be signed in to change notification settings - Fork 5.3k
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
[WIP] feat(web): Serializable platform objects #12505
Conversation
For context, since the registered interfaces are stored in |
@lucacasonato @kitsonk @bartlomieju PTAL This currently only makes |
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions. |
Not stale, this is pending on denoland/rusty_v8#862. |
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions. |
Still pending on denoland/rusty_v8#862. That PR is in turn pending on me figuring out if the generics for the new scopes make sense together with the rest of scopes. |
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions. |
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions. |
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.
Requires rebase, and of course a fair bit of work. However, this seems to be a pretty awesome feature that I hadn't even fully understood existed on the Web platform. Transferable streams?! That's proper multithreading right there, innit?
I would love to see work on this, and not only from @andreubotella 's side.
@andreubotella I know you are very busy, but if you find some time, could you please write a few pointers what still needs to happen for this PR to be landable? |
I haven't looked too much at this PR lately, and some of the design constraints I was working under in 2021 no longer apply. The main one is that, in order to be able to customize serialization for an object, it had to have embedder fields (i.e. it had to be created through There should still be a single place where the list of serializable interfaces, and their serialization/deserialization functions should be collected – and that maps well to this PR's There's also the fact that the |
Andreu Botella seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. You have signed the CLA already but the status is still pending? Let us recheck it. |
I'm going close this PR for now because most of the code that it interacts with has been moved to denoland/deno_core repo. In the future we still want to implement this functionality, but current priorities don't include working on it. Thank you Andreu, this is solid foundation to build on. We will consult this PR when working on the new implementation. |
This is a prototype implementation of the serializable part of the API in #12067 (comment), to gather feedback.