So far, `noscript` is the only case where using the real tree builder would differ from Chrome: Īnother difference between Chrome and the real tree builder: That is, it could be a speculative real parse. In particular, the prescan could be the real parse if UTF-8 is declared and none of the scripts `document.write`. > the only difference then would be the prescan running without scripting? The only difference then would be the prescan running without scripting? Also, if using the tree builder works, the prescan process could yield speculative loads.) (As for why not just go ahead and do exactly what Chrome does: That would involve introducing the capability of the tokenizer to have different kinds of token sinks in Gecko. (With this test the reload is so fast that you don't notice.) Specifically, I'm trying to make Gecko load like WebKit/Blink without reloading. The one that I'm trying to resolve in Gecko. Looking for the end of `head` is a WebKit/Blink difference from the spec. Is that another difference with the prescanner? (after ``) Please leave your intuition at the door as well? Too bad that for TLS reasons, it's very annoying to test IE6 these days. That WebKit/Blink got away with goes against my intuition of the Web. My hypothesis is few sites are deliberately trying to avoid the prescanner □ Wouldn't that have to be `document.write(" I can find very little evidence for sites using `document.write(" ")` at least, but yeah, I suspect it would break the web due to sites having the meta after a first scriptĮven just changing changing it to certain on a `document.write` call would I expect break things :( > I guess it's somewhat difficult to avoid the actual parser changing encoding from `document.write`, and probably practically unacceptable :(Ī more radical suggestion to deal with `document.write` for the parser would be to change the confidence to `certain` before executing any script I wonder how often that would change things… I guess local-storage would involve having to edit a test-specific key into each test. Write in localStorage? though I guess that depends on how it deals with committing things there What would be a simple way for the page to self-diagnose whether there was a charset reload? If I'm reading the Chromium code correctly, it's running the tokeniser with scripting disabled, which means the prescan would pick up ` ` I have a suspicion that it didn't handle `` for the sake of keeping the prescan as simple as possible? However, I could be wrong and maybe the spec is creative in ways it shouldn't have been. > I thought Hixie specced it the way it's specced in order to imitate IE6. I thought Hixie specced it the way it's specced in order to imitate IE6. > I don't know the origins of why Hixie spec'd it as allowing it, though… me gets inspired to put on a far more acceptable band, The Jesus and the Mary Chain (also I think to quote The Smiths these days, one need to pretend that Morrissey doesn't exist and it's all Johnny Marr) I guess it's somewhat difficult to avoid the actual parser changing encoding from `document.write`, and probably practically unacceptable :(Ĭompat is nice / but compat can stop you / from doing all the things in life you'd like to. I don't know the origins of why Hixie spec'd it as allowing it, though…Ĭompat is nice and all, but sometimes I understand why people wanted to burn it all to the ground Need to write tests.įWIW, I would be strongly in favour of not allowing this (or `meta` inside `noscript`), if we could get away this from a compat POV > AFAICT, the biggest risk is probably `meta` inside `script` in a manner that should be honored for compat. Something weird going on with how the copypasteable URL updates.ĪFAICT, the biggest risk is probably `meta` inside `script` in a manner that should be honored for compat. That is, running the tree builder in the scripting enabled mode without actually executing scripts during the `meta` prescan? But not the real tree builder: l=58Ĭan anyone think of bad Web compat consequences from using the real tree builder algorithm for figuring out where `body` starts? l=58 indeed looks a lot like Chromium is using the real HTML tokenizer. I was actively reading that and the next chunk of example code. I'll still probably submit a PR to add an example of this to the description, as it's not clear from anywhere *outside* that algo that this is possible. Hm, it's not possible to set an ObservableArray attribute directly to an array (having it replace all the members), is it? is possible see
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |