| 00:11 | <TabAtkins> | Worse for me (rachel doesn't get home until late on fridays) |
| 00:11 | <MikeSmith> | what exactly is https://www.w3.org/Bugs/Public/show_bug.cgi?id=23254 asking for? |
| 00:11 | <TabAtkins> | whoops, wrong window |
| 00:11 | <MikeSmith> | is it asking that any arbitrary element that has a hype in it should be considered valid/conformant? |
| 00:12 | <MikeSmith> | *has a hypen in it |
| 00:12 | <MikeSmith> | only about document conformance? |
| 00:15 | <MikeSmith> | Hixie_: any clue about https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/qcDiw-QP4RE ? |
| 00:16 | <MikeSmith> | I already pointed out to him (off list) that he should be reading the whatwg spec, not the TR link he cited |
| 00:16 | <MikeSmith> | but in this case the TR and whatwg source don't have any difference |
| 00:17 | <Hixie_> | https://www.w3.org/Bugs/Public/show_bug.cgi?id=23254 looks to be rather premature, since until we merge in web components, it's only applicable to web components... |
| 00:18 | <Hixie_> | (presumably only elements that are bound would be conforming) |
| 00:18 | <MikeSmith> | Hixie_: ok |
| 00:18 | <Hixie_> | (dglazkov and i chat about this stuff occasionally to keep in sync re what should be merged into html) |
| 00:19 | <MikeSmith> | yeah, I figured |
| 00:19 | <Hixie_> | as far as that chromium-dev post is concerned -- would have to see the output to comment |
| 00:20 | <MikeSmith> | he seems to be saying the blink requires the length to be specified in the headers, but he can't find any spec that requires that |
| 00:20 | <Hixie_> | HTTP headers? |
| 00:22 | <MikeSmith> | I assume so |
| 00:22 | <MikeSmith> | dunno what else he'd mean |
| 00:22 | <MikeSmith> | hex-encoded |
| 00:24 | <MikeSmith> | seems like he's saying he can't even figure out what chromium expects |
| 00:24 | <MikeSmith> | anyway, I just figured there might be something he was missing as far his reading of the specs |
| 00:24 | <MikeSmith> | but it seems not |
| 00:25 | <Hixie_> | "to each message" is what confuses me |
| 00:25 | <MikeSmith> | yeah that too |
| 00:25 | <Hixie_> | so i dunno |
| 00:25 | <Hixie_> | would have to see the output |
| 00:26 | <dev11> | What is wrong with chrome |
| 00:26 | <dev11> | all have problems or just me |
| 00:26 | <MikeSmith> | but if he's running into problems implementing server support compatible with Chrome's SSE implementation, it makes me wonder how others manage to implement it without running into the same problem |
| 00:27 | <dev11> | someone that works in chrome project here |
| 00:27 | <dev11> | ? |
| 00:28 | <Hixie_> | dev11: what's up? |
| 00:28 | <Hixie_> | MikeSmith: yeah, i dunno |
| 00:28 | <Hixie_> | MikeSmith: i have to admit that i just do websockets now, for pretty much everything |
| 00:29 | <dev11> | something is very bad right now |
| 00:29 | <dev11> | I am not sure if its just me or all thats why I though to ask sorry |
| 00:29 | <dev11> | that I ask here Hixie.. |
| 00:29 | <Hixie_> | MikeSmith: anything that's not just static file serving, i do over web sockets |
| 00:29 | <Hixie_> | MikeSmith: so i never actually used sse :-) |
| 00:29 | <dev11> | youtube videos don't open and pages don't open, I am doing 112412 thingsright now so I am not sure whats goin on |
| 00:29 | <Hixie_> | dev11: are you on a dev build? |
| 00:30 | <dev11> | no |
| 00:30 | <dev11> | normal |
| 00:30 | <Hixie_> | weird |
| 00:30 | <dev11> | wait ill try on other pc lol I forgot that I have 6 pcs :D |
| 00:30 | <MikeSmith> | Hixie_: yeah I kind of wonder why at this point somebody would put work into implementing SSE support in a server rather than just providing websocket support |
| 00:30 | <Hixie_> | dev11: if you can't get any help here, try #chromium |
| 00:30 | <dev11> | yeah |
| 00:30 | <dev11> | it chrome |
| 00:30 | <dev11> | laptop is same |
| 00:31 | <dev11> | hm let me recheck |
| 00:31 | <dev11> | damn its my pc, sorry for annoying |
| 00:55 | <inaimathi> | Hi; I've been asking questions about SSE server implementations. |
| 00:55 | <inaimathi> | Someone wanted to see some output? :D |
| 00:55 | <MikeSmith> | hi inaimathi yeah Hixie_ might be able to provide some insights |
| 00:56 | <MikeSmith> | since he's the one who wrote the spec |
| 00:56 | <MikeSmith> | way back when.. |
| 00:57 | <inaimathi> | Ok. Let me get my notes in order and I'll try to summarize. |
| 01:07 | <inaimathi> | So. |
| 01:07 | <inaimathi> | The server implementation I worked up is here (I don't have a repo up on Github yet): http://langnostic.blogspot.ca/2013/09/deal-journal-interlude-one-treatise-on.html |
| 01:07 | <inaimathi> | As written, the stream it generates for one message looks like this: http://pastebin.com/KPBS7egD |
| 01:07 | <inaimathi> | which doesn't conform to the spec as far as I understand, because it contains two lines that have no colons, but aren't ignored. |
| 01:08 | <inaimathi> | If I change that stream output so that it instead looks like this: http://pastebin.com/A57URpnK |
| 01:08 | <inaimathi> | it stops working with Firefox/Iceweasel/Conkeror/etc and Chromium. |
| 01:08 | <inaimathi> | Firefox+friends eat the first message, correctly process the second, and choke on the third (tripping the `onerror` event). Chromium chokes on the first message, immediately tries to reconnect and continues that cycle for each message you send. |
| 01:09 | <inaimathi> | My question boils down to: why? |
| 01:10 | <inaimathi> | My best theory at this point is that those lines represent length headers which the named browsers use to allocate space for incoming messages (either the full stream, or on a message by-message basis), but I don't understand what the benefit is, and I can't find a specification for how exactly they're supposed to work. |
| 01:17 | <inaimathi> | Any hints in the right direction would be appreciated. |
| 01:22 | <inaimathi> | Huh |
| 01:22 | <inaimathi> | I guess I should have checked if Hixie |
| 01:22 | <inaimathi> | was online before dumping that. |
| 01:23 | <inaimathi> | Will he appear if I type his name three times? |
| 01:23 | <inaimathi> | Hixie_ Hixie_ Hixie_ |
| 01:24 | <Hixie_> | here |
| 01:24 | <Hixie_> | sorry, was having dinner |
| 01:24 | <Hixie_> | so the hex length stuff you're outputting is HTTP's chunked encoding |
| 01:24 | <Hixie_> | has nothing to do with Event Source per e |
| 01:25 | <Hixie_> | per s |
| 01:25 | <Hixie_> | per SE |
| 01:25 | <Hixie_> | i am not familiar with it enough to tell you if it's right |
| 01:25 | <Hixie_> | but |
| 01:25 | <Hixie_> | if you just load the file regularly in a browser, not in EventSource, what does it look like? |
| 01:25 | <Hixie_> | inaimathi: ^ |
| 01:27 | <inaimathi> | 1e |
| 01:27 | <inaimathi> | data: Got a message! G1064 |
| 01:27 | <Hixie_> | you shouldn't be seeing the "1e" if you are doing the chuncked encoding correctly |
| 01:27 | <inaimathi> | That's as written, connecting directly to the event-stream handler and publishing one message |
| 01:27 | <Hixie_> | it should get processed at the HTTP layer |
| 01:27 | <Hixie_> | so my guess is that you're mangling the http chunked transfer encoding stuff |
| 01:28 | <inaimathi> | High probability. |
| 01:28 | <inaimathi> | Ok, I'm off to read up on HTTP chunked transfer encoding |
| 01:28 | <inaimathi> | Thanks for your help, Hixie_ |
| 01:29 | <Hixie_> | good luck... |
| 01:29 | <inaimathi> | Heh. I get the feeling I'll need it. |
| 01:29 | <inaimathi> | Anywhere you think I should start? |
| 01:31 | <Hixie_> | what's your web server? |
| 01:32 | <inaimathi> | I'm writing one (which is more or less the problem). |
| 01:32 | <Hixie_> | oh, in that case, i recommend writing a websocket server instead. |
| 01:32 | <Hixie_> | it's i zillion times easier, and gets you more. |
| 01:32 | <inaimathi> | Huh. |
| 01:33 | <Hixie_> | (and then serve the static resources from that off-the-shelf http server like apache or something) |
| 01:33 | <Hixie_> | s/that/an/ |
| 01:33 | <inaimathi> | I'll give it a shot. My impression was that websocket support wasn't as consistent across browsers as SSEs. |
| 01:34 | <Hixie_> | what browsers do you care about? |
| 01:34 | <Hixie_> | caniuse.com suggest websocket is actually better supported than SSE |
| 01:35 | <Hixie_> | dunno how reliable that is |
| 01:35 | <inaimathi> | FF, Chrome and their Debian counterparts (although my pet browser is Conkeror, so I'd like to support it if I can at all manage). I take your point I guess. |
| 01:35 | <Hixie_> | ff and chrome definitely support websockets |
| 01:35 | <Hixie_> | no idea about conkeror |
| 01:36 | <Hixie_> | if you were using apache then i'd say use sse, because it's trivial to output sse messages from a CGI script |
| 01:36 | <Hixie_> | but if you're about to write your own HTTP server, then that changes the calculus a lot |
| 01:37 | <Hixie_> | web sockets is a couple hundred lines of code on the server in most languages at most |
| 01:37 | <Hixie_> | http takes thousands to do a half-decent implementation |
| 01:41 | <inaimathi> | Ok, I'll look into it. |
| 01:41 | <inaimathi> | You're right, from what I'm reading here, it's not high effort at all. |
| 01:41 | <inaimathi> | Thanks again |
| 02:11 | <zewt> | help, SSE means http://en.wikipedia.org/wiki/Streaming_SIMD_Extensions to me and my parser keeps having to backtrack |
| 02:34 | <TabAtkins> | On the other hand, every time someone mentions SIMD stuff, I get confused and think they're talking about HTML. |
| 07:50 | <matjas> | http://isup.me/whatwg.org http://isup.me/software.hixie.ch |
| 09:08 | <jgraham> | zewt: I have the same issue whenever someone mentions NFC and doesn't mean "Normal Form C" |
| 09:09 | <hsivonen> | jgraham: me, too |
| 09:40 | <zcorpan> | when people talk about HTML i think of High Temperature Materials Laboratory |
| 10:56 | <jgraham> | zcorpan: Are you happy with the whole timeout=normal/long idea, rather than giving more precision? |
| 10:57 | <jgraham> | (for the overall harness, not for individual tests) |
| 10:57 | <zcorpan> | jgraham: what was the idea? |
| 10:58 | <jgraham> | By default you get a short timeout, say 10s. You can opt in to a longer timeout, say 60s. There are no more choices. |
| 10:59 | <jgraham> | (obviously the actual values there would be adjusted in autoimation scenarios so that all non-brokwn tests would actually complete) |
| 11:00 | <jgraham> | The theory seems to be that letting authors specify a number of ms doesn't make much sense because in many cases it totally depends on the nature of the system that the test is running on |
| 11:06 | <jgraham> | (for individual tests, I think a number-of-ms makes more sense because particular tests often do things like setTimeout that will take a known amount of time to complete) |
| 11:51 | <zcorpan> | <http://www.w3.org/mid/5238389B.7010701⊙nc> ... i wonder why they don't use critic |
| 11:52 | <zcorpan> | jgraham: i'm OK with that |
| 11:52 | <jgraham> | Why use one convenient, integrated system, when you can spread it out over email, wikis, github and notes on bits of paper passed under the door |
| 11:53 | <jgraham> | zcorpan: OK, I will have a got at implementing it then |
| 11:53 | <jgraham> | Well, I already started;) |
| 11:54 | <zcorpan> | would it make sense for the harness to be smart about the timeout if tests declare their timeout? |
| 11:54 | <jgraham> | Define "smart"? |
| 11:54 | <jgraham> | It is a common bug that people set test timeouts that are longer than the harness timeout |
| 11:54 | <zcorpan> | so for instance if a test has 15s timeout, the file's timeout could be e.g. 15+normal |
| 11:55 | <jgraham> | But I don't really know how to deal with that because I don't know the test timeout when the overall timeout is set |
| 11:55 | <zcorpan> | just increase the overall timeout dynamically |
| 11:55 | <jgraham> | And, moreover, for automation I plan to set the overall timeout externally before I even load the test |
| 11:55 | <jgraham> | and diable the in-harness timeout |
| 11:57 | <jgraham> | (of course it is *possible* to pass a message about that back to the automation. But it's not exactly easy) |
| 11:57 | <zcorpan> | ok |
| 16:37 | <JakeA> | Is there any spec reason browser couldn't allow a video as the src for an <img> |
| 16:37 | <JakeA> | Maybe play it without sound |
| 16:39 | <Hixie_> | the spec talks about that, iirc |
| 16:43 | <JakeA> | There's mention of gif/apng |
| 16:43 | <JakeA> | It doesn't explicitly disallow, say, webm |
| 16:43 | <JakeA> | No mention of audio |
| 16:44 | <JakeA> | Basically, animated webp needs to die |
| 16:44 | <JakeA> | such a silly idea |
| 16:44 | <Hixie_> | it just says that you can't have scripted content, right? |
| 16:44 | <Hixie_> | says you can't use HTML |
| 16:44 | <Hixie_> | and doesn't disallow video |
| 16:55 | <jgraham> | If you want video, what's wrong with a video element? |
| 17:01 | <JakeA> | I guess the question is, why do people use gif? |
| 17:03 | <miketaylr> | because it just works™ |
| 17:04 | <jgraham> | I don't know, but I wish they wouldn't :p |
| 17:04 | <JakeA> | Just works, as in autoplays everywhere? |
| 17:05 | <JakeA> | animated webp sounds like the wrong answer for a question no one's asking |
| 17:05 | <miketaylr> | pretty much. and you can host them basically anywhere. |
| 17:06 | <miketaylr> | without needing to know about servers and content type and formats, etc |
| 17:06 | <zewt> | ... there aren't exactly any alternatives, if you want something that works everywhere, supports transparency (even if bad transparency), and is computationally cheap |
| 17:06 | <Hixie_> | apng? |
| 17:06 | <zewt> | does that actually work? |
| 17:07 | <Hixie_> | sure |
| 17:07 | <zewt> | i don't have any software that can output it, so i haven't tried it |
| 17:07 | <miketaylr> | http://caniuse.com/apng |
| 17:07 | <Hixie_> | (in firefox) |
| 17:07 | <zewt> | (in firefox) != actually works :P |
| 17:08 | <Hixie_> | well, same as webp :-) |
| 17:08 | <miketaylr> | there's been a few articles about using animated gifs to get around certain mobile browsers not being able to play inline |
| 17:08 | <zewt> | miketaylr: :| |
| 17:09 | <jgraham> | In unrelated questions, if I have a scatter graph with an axis that looks like ' 4 ' 5 ' 6 ', what is the correct way to vent my frustration? |
| 17:09 | <miketaylr> | similar hack, zewt https://docs.google.com/document/pub?id=1GWTMLjqQsQS45FWwqNG9ztQTdGF48hQYpjQHR_d1WsI |
| 17:10 | <Hixie_> | jgraham: are you complaining about the origin, or the postioning of the grid? |
| 17:10 | <jgraham> | Hixie_: The psoitioning of the grid |
| 17:10 | <Hixie_> | then i recommend venting on twitter. |
| 17:10 | <jgraham> | Haha |
| 17:11 | <jgraham> | (although the fact that the origin isn't 0 makes the positioning of the grid harder to deal) |
| 17:12 | <zewt> | miketaylr: at least there's some justice in them having to use gross hacks to work around limitations of ... their own platform |
| 17:12 | <miketaylr> | :)~ |
| 17:13 | <Hixie_> | jgraham: (if the number represent periods of time, e.g. days, months, years, then i think that alignment makes sense. if they represent specific moments, then yeah, that's dumb and annoying. |
| 17:14 | <Domenic_> | Hixie_: what would you have recommended if he was complaining about the origin? :P |
| 17:15 | <Hixie_> | facebook. |
| 17:16 | <jgraham> | Hixie_: Well, it's times of day. |
| 17:16 | <jgraham> | So looking closely, the tickmarks are totally misleading |
| 17:16 | <Hixie_> | oh no, i didn't close my brackets.) |
| 17:16 | <jgraham> | Assuming that the data is sampled on the hour, they are half-hour tick marks |
| 17:17 | <jgraham> | OTOH, it's possible that the data is sampled on the half hour and I still have mu original problem |
| 17:17 | <jgraham> | Basically this chart is rubbish |
| 17:17 | <jgraham> | I wonder how people who deal with this sort of thing ever day manage to get anything done |
| 17:18 | <jgraham> | *every |
| 17:18 | <zewt> | there's a question everyone, of every walk of life, asks themselves periodically |
| 17:19 | <zewt> | one of those little things we all share, as carlin put it |
| 17:27 | <bradleymeck> | is there any spec working on improving keyboard accessibility, looked in the DOM groups on w3c but didn't see too much activity for keyboard accessibility |
| 17:28 | <Hixie_> | HTML has done some work in that area, e.g. by providing new types in form controls |
| 17:28 | <Hixie_> | what specific problem are you thinking about? |
| 17:30 | <bradleymeck> | Hixie_: dialogs/modals/3rd party widgets need a little bit finer control over focus. IE modals should be where iteration starts/stops when iterating on a document. 3rd party widgets may want to have slightly better control over tab index if you mix tabindex=0 and tabindex=number |
| 17:31 | <bradleymeck> | I've written up the basics of what we did at BV as a spec, but am inclined to port it to existing stuff if it exists |
| 17:33 | <bradleymeck> | the big use cases are modals, and <form>s that are positioned with CSS rather than dom tree due to nesting problems and supporting older browsers |
| 17:37 | <Hixie_> | ah, yes. HTML has addressed that. Look for the inert="" attribute in the spec. http://whatwg.org/html#inert |
| 17:38 | <bradleymeck> | mmm could do a crawl when popping up a modal i guess and that fixes modals, anything about <form>s that are inlined for CSS? |
| 17:39 | <Hixie_> | "modals" are handled in HTML by the new <dialog> element |
| 17:39 | <Hixie_> | http://whatwg.org/html#dialog |
| 17:39 | <Hixie_> | makes it all work basically automatically, including making the other parts of the spec inert |
| 17:39 | <Hixie_> | er |
| 17:39 | <Hixie_> | parts of the doc |
| 17:39 | <Hixie_> | not sure what you mean by "<form>s that are inlined for CSS" |
| 17:41 | <bradleymeck> | we have submission forms that are appended to the bottom of the body (we provide 3rd party widgets), these are inlined for display / keyboard purposes to places higher in the dom tree since our customers may have wrapped the area of the 3rd party widget in a <form>. we cannot use form="x" due to supporting older browsers and not wanting to "infect" client <forms>. |
| 17:42 | <bradleymeck> | dialog might work if we can polyfill it properly as well |
| 17:42 | <Hixie_> | i have no idea what that means, sorry. what is the difference between "appended to the bottom of the body" and "inlined for display / keyboard purposes" ? |
| 17:42 | <bradleymeck> | ill make a jsfiddle |
| 17:43 | <Hixie_> | do you mean "positioned" rather than "inlined"? |
| 17:43 | <Hixie_> | i think the solution is probably form="". |
| 17:44 | <Hixie_> | anything we add to the spec will naturally take some time to be usable, though |
| 17:44 | <Hixie_> | but that's true of anything |
| 17:46 | <bradleymeck> | positioned, yes |
| 17:47 | <bradleymeck> | http://jsfiddle.net/6WchK/ |
| 17:47 | <bradleymeck> | either way if form="" is the way to do it I guess we can't move to that for quite a while |
| 17:47 | <bradleymeck> | thanks for the <dialog> info, will try and see if we can make that work |
| 17:50 | <Hixie_> | web components are probably the even better long-term solution to that |
| 17:50 | <Hixie_> | so i guess, to answer your original question, HTML and Web Components are indeed fixing the accessibility issues you're worried about. :-) |
| 17:51 | <bradleymeck> | yep, just can't use form= ever until it is supported everywhere |
| 17:54 | <Jasper> | Hixie_, how are the two path examples you gave in http://lists.w3.org/Archives/Public/public-whatwg-archive/2013Sep/0186.html different? |
| 17:54 | <Jasper> | erm, wrong link |
| 17:54 | <Jasper> | Hixie_, how are the two examples in http://lists.w3.org/Archives/Public/public-whatwg-archive/2013Sep/0185.html different? |
| 17:55 | <Jasper> | Hixie_, the only thing I can imagine is that you'll double-paint the arc and get some fringes around the edges |
| 17:57 | <Hixie_> | oh, i meant to put beginPath() after hte first fill(), my bad |
| 17:58 | <Jasper> | Hixie_, so I'm not the only one who makes that mistake. |
| 17:58 | <Jasper> | good to know |
| 17:58 | <Hixie_> | i make that mistake all the freaking time |
| 17:59 | <Jasper> | it's the biggest mistake in the canvas API. doing an operation should really clear the working path |
| 17:59 | <Jasper> | and it would be nice if save()/restore() saved and cleared the path as well |
| 17:59 | <Jasper> | but oh well |
| 18:01 | <Hixie_> | well, you sometimes want to both stroke and fill a path |
| 18:01 | <Hixie_> | but yeah, that's one thing hte Path API is supposed to fix |
| 18:01 | <Jasper> | Hixie_, yeah, cairo has fill_preserve(); stroke_preserve(); for this use case |
| 18:32 | <Hixie_> | TabAtkins: (further to my e-mail just now) but really i just wish we had real type checking. |
| 19:20 | <matjas> | annevk: thanks for filing that ES identifier bug and CCing me |
| 19:21 | <annevk> | matjas: figured you'd be interested |
| 19:21 | <annevk> | matjas: everyone basically agreed that since IE throws and ES having magic lists was not desirable, relying on Unicode would be better for this |