00:00 | <Hixie> | Philip`: how's this?: |
00:00 | <Hixie> | <p>Unless otherwise stated, any method call with a numeric argument |
00:00 | <Hixie> | whose value is an infinite or NaN value must be ignored. Similarly, |
00:00 | <Hixie> | any numeric property setter called with a value that is infinite or |
00:00 | <Hixie> | a NaN value must be ignored.</p> |
00:00 | <Philip`> | Is that applying just to canvas, or the whole of HTML5? |
00:01 | <Hixie> | canvas |
00:01 | <Hixie> | 2D context specifically |
00:02 | <Philip`> | I don't see anything objectionable there |
00:02 | <Hixie> | k |
00:02 | <jgraham_> | aseem: It is something ruby specific so, given Sam wrote those tests and he has offered to port your code to ruby I wouldn't worry too much about it :) |
00:03 | <Philip`> | (create{Linear,Radial}Gradient and isPointInPath and getImageData seem to be the places that would need some otherwise statements) |
00:03 | <Hixie> | =oh? |
00:04 | <Hixie> | why? |
00:04 | <Philip`> | Because they have to return something of the correct type |
00:04 | <Hixie> | oh right |
00:04 | <Philip`> | so they'd have to return null or false or whatever |
00:04 | <Philip`> | s/or whatever// |
00:05 | <annevk> | i can't find the toDataURL() + drawImage(data: ) issue in the issue tracker |
00:07 | <Philip`> | annevk: That was resolved ages ago since the spec said it was permitted |
00:07 | <Philip`> | (but maybe things have changed since then) |
00:08 | <annevk> | it did? |
00:09 | <Philip`> | http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2007-May/011308.html |
00:10 | <annevk> | i see, that's not what browsers do |
00:11 | <Philip`> | Browsers are bad and wrong :-) |
00:11 | <annevk> | and doesn't cover <img src=evil.com> that redirects to a data: URI |
00:11 | <annevk> | as far as I can tell |
00:11 | <annevk> | the origin section is pretty vague about what "image" means in this case too |
00:12 | <Hixie> | that presumably wouldn't be evil.com |
00:12 | <Hixie> | it would be victim.com |
00:13 | <aseem> | jgraham: so I guess I will leave them empty. thanks |
00:14 | <annevk> | Hixie, i guess so, yeah |
00:14 | <jgraham_> | aseem: Are you copying the whole file? |
00:14 | <Hixie> | brb |
00:14 | <aseem> | jgraham: yes that was my intent, and then I was planning to remove anything that did not need to be there |
00:16 | <jgraham_> | Hmm. You might want to think about adding the stripped behavior as an extra field in the current file. That way we're less likely o get tests for the two parts out of sync |
00:18 | <aseem> | I did think abou that. The reason I thought about forking the data file and the test too is because there are in line tests in the test_sanitizer.py. I could of course modify the addtest method to also accept a stripped output param, but was hesitant to change that |
00:19 | <aseem> | mainly because the change would require quite a few more things to be added to SanitizeTest class |
00:20 | <aseem> | that is something I might need to do even if I added the extra field in the data file also |
00:24 | <Hixie> | right, checked in the changes |
00:24 | <Hixie> | for infinities |
00:24 | <Hixie> | this changes how transformations handle inf, btw |
00:24 | <jgraham_> | aseem: I suggest you make sanitize_html take a kwarg strip=False |
00:25 | <jgraham_> | Then modify buildTestSuite to add the tests from the same data file but your new field being read for the expected value |
00:25 | <jgraham_> | Then modify all the inline tests to also have a strip=True version |
00:26 | <jgraham_> | (of course you need to actually implement strip=True in sanitize_html) |
00:26 | <jgraham_> | Does that make sense? |
00:26 | <aseem> | sure... that was the original plan, I just balked at the amount of change that would require :) |
00:27 | <aseem> | and chose to take the lazier route |
00:28 | <aseem> | also I think there might be a problem with the toxml method for tokens. |
00:28 | <jgraham_> | ? |
00:28 | <aseem> | ie the original _base.Node.toxml accepts and encoding= param which none of the base class implementations do which may cause it to barf |
00:28 | <Hixie> | so for createLinearyGradient i support we just sayt that the two points are subjected to the CTM and that's that |
00:28 | <Hixie> | but for createRadialGradient... |
00:29 | <aseem> | sorry I meant derived class implementations |
00:29 | <aseem> | We ran into that recently and I had to go back to the example that I had originally posted on the mailing list because there I can pass in an encoding parameter |
00:29 | Hixie | cheats his way out and moves on |
00:33 | <aseem> | oops! I misspoke, its the Document.toxml() that has the encoding parameter, which is not available for others Node derived classes |
00:35 | <jgraham_> | That makes more sense :) |
00:35 | <jgraham_> | I'm not quite sure we want to be using .toxml() at all at this point; the proper serializer seems like a better option |
00:36 | <aseem> | In any case I will try out the original approach (the one you outlined) and get it to work, before tackling the encoding related issue |
00:36 | <aseem> | which is what is in the example that I posted in the mailing list :) |
00:37 | jgraham_ | wonders if people are using toxml |
00:38 | <aseem> | the using html5lib wiki page provides the serializer oriented example, however the code in the test suite looks quite compact and attractive :) |
00:40 | <aseem> | one good thing about the toxml approach is that the element attribute ordering is not messed up in the output. I have not been able to figure out how to do that with the serializer (yet). |
01:16 | <Hixie> | how can Referer: possibly be relative |
01:16 | <Hixie> | i don't understand wha that would mean |
01:16 | <Hixie> | oh we can just make it "#PING" |
01:17 | <Hixie> | since that's non-conforming today |
01:25 | <Hixie> | bbl |
06:36 | <takkaria> | Prince really is pretty fantastic |
08:55 | gsnedders | is reminded by that to report a bug with his print styles in WebKit :P |
10:54 | <annevk> | Hixie, data:,ping |
10:58 | gsnedders | treats the above as application/octet+stream as it has no defined MIME type |
11:00 | <annevk> | that'd be a bug |
11:00 | gsnedders | needs http://bugs.gsnedders.com/ |
11:02 | <hsivonen> | Lachy: there are articles pending review in the blog queue |
11:03 | <gsnedders> | hmm, if I declare a public entity, does it exist in a system entity? |
11:39 | <jgraham_> | hsivonen: I think all three of those articles are spam (I only deleted the English one) |
11:39 | <hsivonen> | jgraham_: ok |
11:51 | <Lachy> | the other two are spam as well. I was just about to delete the english one too |
11:55 | <annevk> | should we transition the WHATWG blog to HTML 5? |
12:01 | <Lachy> | we could do that. |
12:02 | <Lachy> | we had done that once before |
12:04 | <Lachy> | actually, it could be good to develop an HTML5 WordPress template |
12:10 | <annevk> | yep |
14:16 | <gsnedders> | annevk: if you allow DOCTYPEs in XML5, can you _please_ allow parsed entities to have them |
15:00 | <annevk> | http://lists.w3.org/Archives/Public/public-html/2008Feb/0021.html |
15:00 | <annevk> | hmm |
15:03 | <Philip`> | The HTML-to-plain-text email conversion there is really broken |
15:04 | <annevk> | oh, that's how i see it too |
15:06 | <Philip`> | The plain-text <HYPERLINK "http://www.htmlhelp.com/reference/html40/tables/td.html"TD nowrap> is meant to be <TD nowrap> where the "TD" is a link |
15:08 | <Philip`> | (I don't know what validator it is that links to htmlhelp.com...) |
15:09 | <annevk> | http://htmlhelp.com/tools/validator/ ? |
15:09 | <Philip`> | Oh, could be |
20:11 | <Hixie> | people really should stop appealing to webarch to defend their arguments |
20:12 | <Hixie> | it's a little like referring to a religious text |
20:12 | <Hixie> | it only works when the other person is converted |
20:14 | <Dashiva> | So Hixie, did zcorpan mention the issue with acid3 test 48? |
20:17 | <Hixie> | i don't think so |
20:18 | <Hixie> | what's the problem? |
20:18 | Philip` | tries not to wonder what happens when you use arcTo to draw an infinitely long line while the CTM has a scale factor of zero |
20:18 | <Dashiva> | If the iframe onload to remove the class fails, the test will pass automatically |
20:18 | <Hixie> | Philip`: how can you draw an infinitely long line? |
20:19 | <Philip`> | Hixie: By using arcTo so that it draws a line to (x_{inf}, y_{inf}) |
20:19 | <Hixie> | Philip`: calls to arcTo() with Infinity as an argument would get ignored per the latest tet |
20:19 | <Hixie> | Dashiva: hm |
20:20 | <Philip`> | Hixie: arcTo with finite arguments is explicitly defined to draw an infinite line in certain cases |
20:20 | <Hixie> | Philip`: oh |
20:20 | <Philip`> | Anyway, I'd be happiest to ignore it and have it implicitly undefined behaviour because it's not really going to matter for real-world interoperability |
20:21 | <Hixie> | Philip`: ignore the infinite cases or ignore the CTM 0 case? |
20:22 | <Philip`> | Hixie: The cases with both infinite lines and CTM 0 |
20:23 | <Philip`> | (Each by itself is alright and is useful to define) |
20:23 | <Hixie> | ah |
20:23 | <Hixie> | send mail :-) |
20:23 | <Hixie> | Dashiva: any suggestions? |
20:25 | <Dashiva> | Well, the error I'm seeing is gEBI failing, which could be solved by using a closure instead. |
20:26 | <Dashiva> | I thought there was a test for gEBI updating, but I can't seem to find it. |
20:27 | <Philip`> | Hixie: By "ignore it", I mean "not send mail", because sending mail would be the opposite of ignoring the problem, and the mail would just suggest doing nothing at all and ignoring the problem since it's a worthless edge case :-) |
20:36 | <Hixie> | Dashiva: ok, it'll make test 80 fail if it doesn't work now |
20:36 | <Hixie> | Philip`: oh, i just meant we should make the spec say to draw nothing in that case |
20:37 | <Hixie> | Dashiva: what browser was this for? |
20:37 | <Dashiva> | Opera |
20:38 | <Dashiva> | It does pass the actual thing test 48 is for, funny enough |
20:38 | <Hixie> | yep, opera now says "linktest didn't fire onload" |
20:39 | <Dashiva> | Well, what happens is that onload does fire, but the onload handler errors because it can't find the linktest element |
20:39 | <Philip`> | Hixie: I think that would be unpleasantly complex (hence not worthwhile) to define, since it depends on the direction of the infinite line and whether the CTM is zero in that direction (e.g. scale(0,1) would cause problems for infinite horizontal lines, but would be perfectly sensible for infinite vertical lines) |
20:40 | <Philip`> | But I've failed at ignoring the problem since I've started discussing here, so I'll just send mail instead :-) |
20:40 | <Dashiva> | Maybe it could set a variable in the onload, then attempt to remove the class attr |
20:40 | <Dashiva> | That way you could see if onload never fired, or just failed to succeed |
20:44 | <Hixie> | Dashiva: i'll leave that to the people debugging the test |
20:44 | <annevk> | Hixie, where is webarch used? |
20:46 | <Hixie> | in the religious acts of the ivory tower's inhabitants, i presume |
20:49 | <Hixie> | i'd like to thank you all, especially hsivonen and Philip`, for moving the focus of the discussion on public-html to studying actual data |
20:49 | <Hixie> | it is so refreshing to see "expert opinions" be replaced by actual data |
20:51 | <Philip`> | (Aha! I don't actually need to send mail about the infinite arcTo thing, since a zero scale will make points coincident in the only case that would have been a problem, and so it's no longer an issue, so please feel free to ignore me) |
20:53 | <Hixie> | works for me! |
20:53 | <Hixie> | what does chris mean when he says: |
20:53 | <Hixie> | The rounding arc should be chosen |
20:53 | <Hixie> | so that it is not contained in the convex hull of the stroke path segments |
20:53 | <Hixie> | terminated at the points where the arc begins. |
20:54 | <Philip`> | About the "it used to say "another" point": it did say that, but I think it's acceptable to think of a point P and 'another' point Q regardless of whether P=Q, so it's better to be explicit :-) |
20:56 | <Philip`> | Hixie: I'm not exactly sure about the "stroke path segments terminated at the points where the arc begins", but the idea sounds correct |
20:57 | <Philip`> | If you start with just the end edges of the stroke that are perpendicular to their lines, then the convex hull will be the smallest triangle or quadrilateral that surrounds those edges |
20:58 | <Philip`> | and then the arc will be not inside that convex hull |
20:58 | <Philip`> | Oh, but actually that's not right |
20:59 | <Philip`> | since both possible arcs would be outside that shape |
21:01 | Philip` | tries to reply to that email |
21:08 | <Philip`> | Oh, actually, I think it is right, as long as you include a non-zero part of the stroke when calculating the convex hull (which is always possible since lines never have zero length) |
21:08 | Philip` | throws away his ASCII art pictures of circles :-( |
21:41 | <Hixie> | i have no idea what that e-mail means |
21:41 | <Hixie> | i don't know how to change the spec to address that e-mail |
21:45 | <hsivonen> | hmm. I'm not getting mail from W3C lists. |
21:46 | <hsivonen> | are others getting W3C list mail normally? |
21:48 | <Hixie> | hsivonen: yes |
21:48 | <jgraham_> | hsivonen: I'm getting public-html ok |
21:48 | <hsivonen> | ok. thanks |
21:48 | <Hixie> | hsivonen: including from you :-) |
21:49 | <Hixie> | btw, for the spaces-in-URIs thing... do we really want to define URI5? |
21:49 | <Hixie> | or IRI5 i guess |
21:49 | <Hixie> | we could fix other problems at the same time, like the encoding issue |
21:49 | <gsnedders> | Hixie: I'd just do what XML does for system identifiers |
21:50 | <hsivonen> | I don't know, but I think it is worth spending a thought or two on |
21:50 | <gsnedders> | (non-fatal error handling in XML!) |
21:50 | <Hixie> | what's that? |
21:50 | <Hixie> | gsnedders: well we're talking about making this a non-error |
21:50 | <gsnedders> | ah |
21:50 | <gsnedders> | I'd keep it as an error |
21:50 | <hsivonen> | gsnedders: the IRI lib I'm using can even be configured to check for XML system ID conformance separately from IRI conformance! |
21:50 | jgraham_ | wonders if the "All software expands until it can read mail" thing will apply to html5, so eventually we'll end up doing IMAP5 |
21:51 | <Dashiva> | jgraham: We already have sockets, what more do we need? :) |
21:51 | <hsivonen> | gsnedders: Is the XML thing really error handling or just a processing step? |
21:51 | <gsnedders> | woah. |
21:51 | <gsnedders> | I misremembered what XML said. |
21:52 | <gsnedders> | "System identifiers (and other XML strings meant to be used as URI references) may contain characters that, according to [IETF RFC 3986], must be escaped before a URI can be used to retrieve the referenced resource. The characters to be escaped are the control characters #x0 to #x1F and #x7F (most of which cannot appear in XML), space #x20, the delimiters '<' #x3C, '>' #x3E and '"' #x22, the unwise characters '{' #x7B, |
21:52 | <gsnedders> | That means that XML System IDs can contain spaces! |
21:53 | <gsnedders> | hsivonen: just a processing step, looking it up |
21:54 | <gsnedders> | http://www.w3.org/TR/xml/#dt-sysid |
21:56 | <hsivonen> | fwiw, Validator.nu converts the IRIs entered in the UI to URIs with the lib in the IRI mode but converts XML system ids to URIs in the XML system ID mode. |
21:58 | <hsivonen> | craziness. the lib supports 6 different conformance modes for URI-like strings: |
21:58 | <hsivonen> | URI |
21:58 | <hsivonen> | IRI |
21:58 | <hsivonen> | RDF |
21:58 | <hsivonen> | XML Schema |
21:58 | <hsivonen> | XML system ID |
21:58 | <hsivonen> | XLink |
21:59 | <gsnedders> | Standards Suck. |
21:59 | <gsnedders> | Standards Suck 5 anyone? |
22:17 | <Philip`> | Hixie: Kristof's email? For his first paragraph, I'm guessing he was not disagreeing with what I said, so there's nothing to do. For the second paragraph, you could change the spec's definition of 'round' to require the drawn arc to be the one satisfying the condition he suggested |
22:18 | <Philip`> | (though I currently think the condition he suggested is not correct) |
22:22 | <hsivonen> | what validator back end is http://inursite.com/ running? |
22:27 | <jgraham_> | hsivonen: It appears to be using the w3c validator |
22:27 | <Philip`> | hsivonen: On the results page its "live validation" links to validator.w3.org |
22:28 | <Philip`> | (and it gives exactly the same validation messages as validator.w3.org) |
22:28 | <hsivonen> | jgraham_, Philip`: thanks |
22:54 | <Hixie> | Philip`: what is wrong with the current text? (or did you send mail already :-) ) |
23:04 | <Philip`> | Hixie: About round, I did send mail (as a direct reply to you in "Canvas line styles comments"), saying "there's two possible arcs connecting those two corners (one clockwise, one anticlockwise), so it should specify which one is meant." |
23:24 | <Hixie> | k |
23:24 | <Hixie> | bbl |