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

History traversal is probably out of date #3625

Closed
yutakahirano opened this issue Apr 12, 2018 · 1 comment · Fixed by #6315
Closed

History traversal is probably out of date #3625

yutakahirano opened this issue Apr 12, 2018 · 1 comment · Fixed by #6315

Comments

@yutakahirano
Copy link
Member

See more context at: #3592

We need to rewrite https://html.spec.whatwg.org/multipage/browsing-the-web.html#traverse-the-history. It invokes the navigate algorithm with Document's URL but we need attach more information, such as request method and request body.

Raw IRC log from https://freenode.logbot.info/whatwg/20180410:

09:06 yhirano__ Regarding whatwg/html #3592, are you talking about html.spec.whatwg.org/multipage/brow…-the-web.html#traverse-the-history? or do you have other call sites in your mind?
09:08 annevk yhirano__: the other one I'm unclear on is reloading
09:08 annevk yhirano__: it says to use the Document object's URL, but it also takes into account other state such as whether the Document object was created as the result of a POST
09:09 annevk yhirano__: which leads me to think it doesn't actually use a URL
09:11 yhirano__ annevk: html.spec.whatwg.org/#traverse-the-history gives a URL to the navigate algorithm. I can give a request with body and method set from the history entry instead, I think. As reloading reuses the previously used resource that will fix the reload case as well. Does it make sense?
09:13 annevk yhirano__: I'm not sure; I suspect that's still wrong for browsers with a "fast" back implementation, where they keep the tree alive
09:16 yhirano__ sorry, what does the "fast" case mean?
09:18 annevk yhirano__: Firefox doesn't always rebuild the node tree
09:18 annevk yhirano__: so you go back and you end up with the same node instances as before
09:18 yhirano__ annevk: So are you talking about the case where the first step is skipped (i.e., Document is alive), right?
09:19 annevk yhirano__: the HTML Standard supports this to some extent, though it's buggy
09:19 annevk yhirano__: I'm not sure what you're referring to; none of these algorithms are particularly fresh for me
09:20 annevk I wish I had managed to refactor these at some point so this wouldn't be such a problem, but I didn't succeed :/

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

Successfully merging a pull request may close this issue.

2 participants