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

Terminate WebTransport sessions when unloading page #6856

Closed
wants to merge 5 commits into from

Conversation

yutakahirano
Copy link
Member

@yutakahirano yutakahirano commented Jul 13, 2021

This is for w3c/webtransport#127.

(See WHATWG Working Mode: Changes for more details.)


/browsing-the-web.html ( diff )
/infrastructure.html ( diff )
/references.html ( diff )

yutakahirano added a commit to w3c/webtransport that referenced this pull request Jul 13, 2021
Before this change, #webtransport-session links to
"WebTransport session" and #webtransport-session① links to
"[[Session]]" for="WebTransport.

In order to have a public link to "[[Session]]" at
whatwg/html#6856, add "for=protocol" to
the link to "WebTransport session".

With this change #protocol-webtransport-session links to
"WebTransport session", and #webtransport-session links to
[[Session]].
@yutakahirano
Copy link
Member Author

@ricea, can you take a look?

@ricea
Copy link

ricea commented Jul 13, 2021

We also need to terminate connections in the "connecting" state. Connecting could take arbitrarily long. Also it is inconvenient for implementations to keep an object alive just to avoid there being an observable difference from the standard.

yutakahirano added a commit to w3c/webtransport that referenced this pull request Jul 14, 2021
Before this change, #webtransport-session links to
"WebTransport session" and #webtransport-session① links to
"[[Session]]" for="WebTransport.

In order to have a public link to "[[Session]]" at
whatwg/html#6856, add "for=protocol" to
the link to "WebTransport session".

With this change #protocol-webtransport-session links to
"WebTransport session", and #webtransport-session links to
[[Session]].

This is for #127.
@yutakahirano
Copy link
Member Author

We also need to terminate connections in the "connecting" state. Connecting could take arbitrarily long.

Added a step to change the state to "failed". This will abort the connection establishment steps in https://w3c.github.io/webtransport/#initialize-webtransport-over-http.

Also it is inconvenient for implementations to keep an object alive just to avoid there being an observable difference from the standard.

Sorry I don't understand this. Can you elaborate it on?

@ricea
Copy link

ricea commented Jul 14, 2021

Also it is inconvenient for implementations to keep an object alive just to avoid there being an observable difference from the standard.

Sorry I don't understand this. Can you elaborate it on?

Sorry this wasn't clear. I meant for example that if we had to keep around WebTransport connections until they had finished connecting in Blink, we'd need to retain them in the browser process even if the render process had gone away.

This comment is no longer relevant since you've changed the behaviour now.

Copy link

@ricea ricea left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@yutakahirano
Copy link
Member Author

I found we can define the unloading document cleanup steps in our spec, so I'm closing this, and opened w3c/webtransport#309.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants