/irc-logs / freenode / #whatwg / 2009-05-29 / end

Options:

  1. # Session Start: Fri May 29 00:00:00 2009
  2. # Session Ident: #whatwg
  3. # [00:00] <roc> video question... The spec says "When the current playback position reaches the end of the media resource when the direction of playback is forwards, then the user agent must follow these steps:"
  4. # [00:01] <roc> does "reaches the end of the media resource" include reaching the end due to seeking?
  5. # [00:03] <Hixie> yes
  6. # [00:04] * Quits: weinig (n=weinig@17.246.18.103)
  7. # [00:04] <Philip`> Hmm, Chromium seems to be the only thing that's trivially available on Gentoo, but it complains "version `GLIBCXX_3.4.9' not found (required by ./chrome)" :-(
  8. # [00:04] <gsnedders> Hmm, I need to disable an onclick event when a click on an interactive element triggers it
  9. # [00:05] * Joins: mat_t_ (n=mattomas@80.67.104.110)
  10. # [00:05] <Hixie> it's so funny seeing jd defend flash everywhere
  11. # [00:06] <Philip`> Oh, right, it works fine if I change LD_LIBRARY_PATH to point to gcc-4.3.2, so that's okay
  12. # [00:06] <Hixie> i think the fact that so many people are so happy to hear they might be able to get rid of flash pretty much sums up how frustrating his job must be
  13. # [00:06] * Quits: mat_t (n=mattomas@80.67.104.110) (Connection reset by peer)
  14. # [00:06] * gsnedders wonders how to do this
  15. # [00:07] <Philip`> olliej: Ooh, it's very fast in Chromium, except I don't know how fast because it doesn't render any of the text saying how fast it is
  16. # [00:08] <gsnedders> Is there any way to tell if something has a default action?
  17. # [00:08] <Hixie> i'm also amused by the people trying to get Microsoft to admit to working on <canvas>
  18. # [00:08] <Hixie> how about getting them to admit to working on DOM2 Events or something more fundamental like that first? :-)
  19. # [00:09] <roc> Hixie: thanks
  20. # [00:09] * gsnedders has a strong disdain for DOM Events…
  21. # [00:10] <roc> where are people trying to get Microsoft to admit to stuff?
  22. # [00:10] <olliej> Philip`: oddly it's faster in webkit trunk, which shouldn't happen -- i assume mac chrome has some perf hit i'm unaware of
  23. # [00:10] <olliej> thy used to be on par
  24. # [00:11] * Joins: weinig (n=weinig@17.244.0.114)
  25. # [00:13] <olliej> Philip`: hehehe
  26. # [00:13] <olliej> Philip`: performance characteristics of our gc
  27. # [00:14] <olliej> Philip`: starts at 30ms a frame, becomes 100ms once all the zeros go away
  28. # [00:15] * Quits: mpt (n=mpt@canonical/launchpad/mpt) (Read error: 60 (Operation timed out))
  29. # [00:18] * kinetik_ is now known as kinetik
  30. # [00:19] * Joins: rubys (n=rubys@guest-225.mountainview.mozilla.com)
  31. # [00:21] <gsnedders> http://codingforums.com/showthread.php?p=821898#post821898
  32. # [00:24] * Quits: mgrdcm (n=mgrdcm@65.111.247.194)
  33. # [00:27] * abarth is now known as abarth_deceased
  34. # [00:28] * Quits: mat_t_ (n=mattomas@80.67.104.110) (Connection timed out)
  35. # [00:29] * Quits: nessy (n=nessy@124-168-245-234.dyn.iinet.net.au) ("This computer has gone to sleep")
  36. # [00:31] * Joins: doublec (n=doublec@202.0.36.64)
  37. # [00:34] * Joins: bgalbraith (n=bgalbrai@32.177.51.217)
  38. # [00:39] * Quits: tndH (n=Rob@james-baillie-pc083-229.student-halls.leeds.ac.uk) ("ChatZilla 0.9.84-rdmsoft [XULRunner 1.9.0.1/2008072406]")
  39. # [00:39] * Joins: philipj (n=philipj@pat.se.opera.com)
  40. # [00:42] * Joins: nessy (n=nessy@115.128.5.20)
  41. # [00:42] * Joins: riven` (n=colin@53525B67.cable.casema.nl)
  42. # [00:45] * Quits: riven (n=colin@pdpc/supporter/professional/riven) (Nick collision from services.)
  43. # [00:45] * riven` is now known as riven
  44. # [00:49] <Hixie> roc: e.g. http://processingjs.org/blog/?p=77
  45. # [00:52] <roc> ta
  46. # [00:53] <Philip`> Seems to be quite a bit of wishful thinking in how they interpret the Microsoft people's responses
  47. # [00:56] * Joins: wakaba (n=wakaba@EM114-51-23-193.pool.e-mobile.ne.jp)
  48. # [00:57] * Joins: hdh (n=hdh@118.71.98.15)
  49. # [00:59] * jwalden concurs
  50. # [01:01] <hober> http://www.w3.org/QA/2009/05/_watching_the_google_io.html
  51. # [01:09] * Quits: nessy (n=nessy@115.128.5.20) (Read error: 60 (Operation timed out))
  52. # [01:12] * Quits: wakaba_ (n=wakaba@EM114-51-10-45.pool.e-mobile.ne.jp) (Read error: 110 (Connection timed out))
  53. # [01:15] * Joins: shepazu (n=schepers@63.80.141.130)
  54. # [01:16] * Joins: nessy (n=nessy@115.128.26.74)
  55. # [01:16] <othermaciej_> hober: PLH has some good factual points, but I think it's the first time I have seen the W3C object to even a WD-level spec being promoted...
  56. # [01:17] * othermaciej_ is now known as othermaciej
  57. # [01:18] * Quits: weinig (n=weinig@17.244.0.114)
  58. # [01:18] <rubys> I don't see the word "object" in PLH's post
  59. # [01:18] * Joins: dglazkov (n=dglazkov@nat/google/x-775ee47fab92998b)
  60. # [01:18] * Quits: drostie (n=hopkins@5ED17066.cable.ziggo.nl) (Remote closed the connection)
  61. # [01:20] <othermaciej> most objections are not phrased in the form "I object"
  62. # [01:21] <othermaciej> let me put it this way, he spent more words on aspects he didn't like of Google's promotion of HTML5, than on aspects he liked
  63. # [01:30] * Parts: billmason (n=billmaso@ip147.unival.com)
  64. # [01:32] * Quits: olliej (n=oliver@nat/apple/x-198f2bb2639b3786)
  65. # [01:34] * Joins: olliej (n=oliver@nat/apple/x-bbc2f9b6f0011193)
  66. # [01:34] * abarth_deceased is now known as abarth
  67. # [01:41] * Joins: weinig (n=weinig@17.246.17.241)
  68. # [01:42] * Quits: dglazkov (n=dglazkov@nat/google/x-775ee47fab92998b)
  69. # [01:42] <Hixie> hsivonen: yt?
  70. # [01:44] * Quits: heycam (n=cam@210-84-19-113.dyn.iinet.net.au) ("bye")
  71. # [01:48] <Hixie> well i'll make this change and see if hsivonen complains, i guess
  72. # [01:50] * Quits: archtech (n=stanv@83.228.56.37)
  73. # [01:52] * Quits: shepazu (n=schepers@63.80.141.130)
  74. # [01:52] * Quits: weinig (n=weinig@17.246.17.241)
  75. # [01:55] * Quits: pmuellr_ (n=pmuellr@user-0ce2gjn.cable.mindspring.com)
  76. # [01:56] * Joins: sayrer (n=chatzill@guest-225.mountainview.mozilla.com)
  77. # [01:56] * Quits: nessy (n=nessy@115.128.26.74) ("This computer has gone to sleep")
  78. # [01:56] * Quits: slightlyoff (n=slightly@72.14.229.81) (Read error: 110 (Connection timed out))
  79. # [01:57] * sayrer is reminded of
  80. # [01:57] <sayrer> http://tomayko.com/writings/that-dilbert-cartoon
  81. # [01:59] * Joins: weinig (n=weinig@17.246.17.241)
  82. # [02:07] * Quits: philipj (n=philipj@pat.se.opera.com) (Read error: 110 (Connection timed out))
  83. # [02:07] <Hixie> othermaciej: your e-mail cuts off after "if Larry feels there is a resemblance between"
  84. # [02:08] * Quits: rubys (n=rubys@guest-225.mountainview.mozilla.com) ("Leaving.")
  85. # [02:09] <othermaciej> Hixie: thanks
  86. # [02:19] * Joins: theanxy_ (n=wzajac@student.agh.edu.pl)
  87. # [02:20] * Philip` sees that Hixie is single-handedly making tens of percents of web pages less invalid than before
  88. # [02:20] * Quits: theanxy (n=wzajac@student.agh.edu.pl) (Success)
  89. # [02:20] <Hixie> i'm trying
  90. # [02:20] * Quits: bgalbraith (n=bgalbrai@32.177.51.217)
  91. # [02:24] * Joins: riven` (n=colin@53525B67.cable.casema.nl)
  92. # [02:24] * Quits: riven (n=colin@pdpc/supporter/professional/riven) (Nick collision from services.)
  93. # [02:24] * riven` is now known as riven
  94. # [02:25] * Quits: sayrer (n=chatzill@guest-225.mountainview.mozilla.com) (Read error: 110 (Connection timed out))
  95. # [02:29] * Quits: aroben (n=aroben@unaffiliated/aroben) (Read error: 104 (Connection reset by peer))
  96. # [02:30] * Joins: webben (n=benh@91.85.199.213)
  97. # [02:34] * Joins: heycam (n=cam@clm-laptop.infotech.monash.edu.au)
  98. # [02:42] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
  99. # [02:48] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
  100. # [02:52] * Quits: webben (n=benh@91.85.199.213) (Read error: 60 (Operation timed out))
  101. # [03:03] * Joins: sayrer (n=chatzill@guest-225.mountainview.mozilla.com)
  102. # [03:05] <Hixie> re http://www.w3.org/QA/2009/05/_watching_the_google_io.html -- maybe i should change the title on the whatwg version to "HTML5 Draft Standard" instead of "HTML5 Draft Recommendation" to remove any confusion... :-P
  103. # [03:05] * Quits: abarth (n=abarth@c-98-210-108-185.hsd1.ca.comcast.net) ("Leaving")
  104. # [03:12] * Quits: othermaciej (n=mjs@c-69-181-42-237.hsd1.ca.comcast.net)
  105. # [03:24] * Quits: weinig (n=weinig@17.246.17.241)
  106. # [03:25] * Quits: sayrer (n=chatzill@guest-225.mountainview.mozilla.com) (Read error: 110 (Connection timed out))
  107. # [03:26] * Joins: nessy (n=nessy@115.128.15.234)
  108. # [03:39] <theMadness> Hixie, yes please.
  109. # [03:39] <theMadness> Change it HARD.
  110. # [03:43] * Quits: nessy (n=nessy@115.128.15.234) (Read error: 104 (Connection reset by peer))
  111. # [03:48] * Joins: othermaciej (n=mjs@c-69-181-42-237.hsd1.ca.comcast.net)
  112. # [03:49] * Joins: nessy (n=nessy@115.128.24.125)
  113. # [04:01] * Quits: nessy (n=nessy@115.128.24.125) (Read error: 104 (Connection reset by peer))
  114. # [04:02] * Joins: annevk2 (n=annevk@5ED2D22C.cable.ziggo.nl)
  115. # [04:03] * Joins: mgrdcm (n=mgrdcm@69.246.244.191)
  116. # [04:16] * Quits: annevk2 (n=annevk@5ED2D22C.cable.ziggo.nl)
  117. # [04:26] * Joins: grimboy (n=grimboy@78-86-152-156.zone2.bethere.co.uk)
  118. # [04:30] <roc> hehe
  119. # [04:31] * Quits: dolske (n=dolske@firefox/developer/dolske)
  120. # [04:31] * Joins: sbublava (n=stephan@77.117.163.158.wireless.dyn.drei.com)
  121. # [04:32] <roc> the latest Roy email is priceless
  122. # [04:34] <ezyang> linky?
  123. # [04:36] <othermaciej> roc: I find his "I'm the expert, stfu" attitude tiresom
  124. # [04:37] <othermaciej> roc: and I will reply to that effect on the list so I can be Shelley-compatible in my behavior
  125. # [04:38] <roc> yes
  126. # [04:38] <roc> plus the assertion about how browsers are only 1% of HTML clients
  127. # [04:38] <ezyang> gsnedders... you didn't unit test InputStream...
  128. # [04:39] <ezyang> This is an offense punishable... by death.
  129. # [04:39] <othermaciej> roc: I didn't even bother to argue with that
  130. # [04:39] <othermaciej> roc: but perhaps he is counting by distinct pieces of software as opposed to by number of users or volume of use
  131. # [04:39] <roc> yes, I think he is
  132. # [04:40] <othermaciej> which is not completely irrational, if he is using that to support an argument that the spec should be more general
  133. # [04:40] <roc> IIRC from threads long ago
  134. # [04:40] <othermaciej> but he still hasn't given any concrete examples
  135. # [04:40] <othermaciej> I'd *love* to hear how it's impossible for libwww-perl to comply with HTML5
  136. # [04:40] <roc> it's still irrational in at least two ways
  137. # [04:41] <roc> you've got to weight by how much an application is used, or you'll be swamped by never-used edge cases
  138. # [04:41] <roc> also, authors test in browsers, not any of these other hypothetical applications
  139. # [04:41] <roc> (maybe search engines, sort of)
  140. # [04:42] <othermaciej> as I see it, software that consumes HTML falls into one of two categories:
  141. # [04:42] <othermaciej> (a) it is intended to consume arbitrary HTML content from the Web
  142. # [04:42] <roc> so applications that want to process HTML need to process it the way authors do, if they want to capture the author's intent
  143. # [04:42] <othermaciej> (b) it is intended to consume only a restricted subset of the language or a specific set of documents in a controlled environment
  144. # [04:43] <othermaciej> it seems to me that category (a) must interoperate with browsers
  145. # [04:43] <roc> yeah
  146. # [04:43] <othermaciej> and for category (b), the spec is irrelevant
  147. # [04:43] <roc> right
  148. # [04:43] <othermaciej> if they want a relevant spec, they have to spec their subset
  149. # [04:43] <othermaciej> or they can just work ad-hoc without a spec
  150. # [04:44] <othermaciej> though I will add, that even for category (b) it is often desirable to use standard tools to create content and ordinary browsers to test
  151. # [04:44] * Quits: dbaron (n=dbaron@pool-98-111-140-54.phlapa.fios.verizon.net) ("8403864 bytes have been tenured, next gc will be global.")
  152. # [04:44] <othermaciej> so even then, it may be highly desirable to interoperate with browsers
  153. # [04:45] * Quits: sbublava (n=stephan@77.117.163.158.wireless.dyn.drei.com)
  154. # [04:49] * Joins: dglazkov (n=dglazkov@69.181.143.54)
  155. # [04:52] * Quits: jwalden (n=waldo@corp-241.mountainview.mozilla.com) ("->out")
  156. # [04:55] <ezyang> Sweet. Extra five fails came from change in substr() behavior
  157. # [04:55] <ezyang> Now fixed
  158. # [04:58] <ezyang> Sigh, Google Code authorization is acting up again.
  159. # [04:58] <ezyang> Seriously dudes. You're google.
  160. # [04:58] <ezyang> You eat your own dogfood. (I hope)
  161. # [04:59] <ezyang> Strangely enough, the problem seems to fix itself when I navigate to my code.google.com/hosting/settings page :-/
  162. # [05:04] * Quits: dglazkov (n=dglazkov@69.181.143.54)
  163. # [05:07] <othermaciej> Shelley quit again?
  164. # [05:11] * Joins: nessy (n=nessy@124-168-245-234.dyn.iinet.net.au)
  165. # [05:12] <ezyang> Oh, awesome, the rest of the tokenizer fails are parse-error fails
  166. # [05:16] <othermaciej> roc: I guess if I were more inclined to be indignant I would be scandalized by Roy's claim that I am "clueless" about interpreters and "don't know anything about the field" of HTML
  167. # [05:17] <roc> you should be
  168. # [05:17] <othermaciej> I think it just makes him look like an idiot to say things like that
  169. # [05:18] * Joins: dolske (n=dolske@c-76-103-40-203.hsd1.ca.comcast.net)
  170. # [05:19] * Joins: dglazkov (n=dglazkov@69.181.143.54)
  171. # [05:23] * Quits: billyjackass (n=MikeSmit@EM114-48-161-72.pool.e-mobile.ne.jp) ("Tomorrow to fresh woods, and pastures new.")
  172. # [05:50] * Joins: jwalden (n=waldo@c-98-248-40-206.hsd1.ca.comcast.net)
  173. # [05:54] * Joins: onar_ (n=onar@c-67-180-87-66.hsd1.ca.comcast.net)
  174. # [05:56] <olliej> othermaciej: are you claiming you know stuff about interpreters again?
  175. # [05:56] <ezyang> Oh hey, whoops. Parse errors are not tokens
  176. # [05:57] <othermaciej> olliej: yeah, I like to pretend
  177. # [05:58] <olliej> othermaciej: :D
  178. # [06:28] <ezyang> Argh foster parenting
  179. # [06:29] * Quits: nessy (n=nessy@124-168-245-234.dyn.iinet.net.au) (verne.freenode.net irc.freenode.net)
  180. # [06:29] * Quits: scherkus (n=scherkus@72.14.227.1) (verne.freenode.net irc.freenode.net)
  181. # [06:29] * Quits: VeXocide (i=vexocide@snail.stack.nl) (verne.freenode.net irc.freenode.net)
  182. # [06:30] * Joins: jruderman (n=jruderma@c-98-248-40-206.hsd1.ca.comcast.net)
  183. # [06:32] * Joins: VeXocide (i=vexocide@snail.stack.nl)
  184. # [06:32] * Joins: dave_levin_ (n=dave_lev@72.14.224.1)
  185. # [06:35] * Joins: scherkus (n=scherkus@72.14.227.1)
  186. # [06:35] * Joins: nessy (n=nessy@124-168-245-234.dyn.iinet.net.au)
  187. # [06:36] * Joins: weinig (n=weinig@17.246.17.241)
  188. # [06:41] <mpilgrim> hixie: html5/reddit alert: http://www.reddit.com/r/technology/comments/8nzok/google_waves_goodbye_to_email/c09w4u0
  189. # [06:41] <mpilgrim> that may overstate the situation somewhat
  190. # [06:42] <mpilgrim> would you settle for "html5 reference on reddit"?
  191. # [06:46] <mpilgrim> discussion of html5 video and codecs: http://www.reddit.com/r/programming/comments/8np9i/youtube_experimenting_with_html5_video/
  192. # [06:46] <mpilgrim> more video: http://www.reddit.com/r/programming/comments/8nr98/daily_motion_uses_html_5_video_with_ogg_theora/
  193. # [06:48] <mpilgrim> some meta-discussion: http://www.reddit.com/r/programming/comments/8ns2l/dear_proggit_html5_is_not_programming/
  194. # [06:54] <othermaciej> wow, lotsa discussion
  195. # [06:54] <othermaciej> (I believe Hixie has seen at least some of those threads)
  196. # [06:55] <othermaciej> mpilgrim: I
  197. # [06:55] <othermaciej> I'm waiting to see how your linking of those threads can be spun as malevolent
  198. # [06:56] <jwalden> 1. knowledge is power. 2. power corrupts. 3. ... 4. GOOGLE PROFIT!
  199. # [06:57] * Quits: wakaba (n=wakaba@EM114-51-23-193.pool.e-mobile.ne.jp) (Read error: 104 (Connection reset by peer))
  200. # [06:59] * Joins: wakaba (n=wakaba@EM114-51-155-31.pool.e-mobile.ne.jp)
  201. # [07:00] * Joins: cying (n=cying@adsl-75-41-114-136.dsl.pltn13.sbcglobal.net)
  202. # [07:01] <othermaciej> Google Wave looks a lot more visually busy than the typical Google web app
  203. # [07:01] * Quits: olliej (n=oliver@nat/apple/x-bbc2f9b6f0011193)
  204. # [07:01] * Joins: sayrer (n=chatzill@ip67-152-86-163.z86-152-67.customer.algx.net)
  205. # [07:07] <roc> I wonder why these codec discussions fail to mention that the moratorium on H.264 Internet "broadcasting" fees runs out next year
  206. # [07:09] * Quits: dave_levin (n=dave_lev@72.14.227.1)
  207. # [07:12] * Joins: ikester (n=jimmyhof@65.243.148.47)
  208. # [07:12] * Parts: ikester (n=jimmyhof@65.243.148.47)
  209. # [07:21] * Quits: dglazkov (n=dglazkov@69.181.143.54)
  210. # [07:28] * Joins: archtech (n=stanv@83.228.56.37)
  211. # [07:30] * Quits: weinig (n=weinig@17.246.17.241)
  212. # [07:30] * Quits: cying (n=cying@adsl-75-41-114-136.dsl.pltn13.sbcglobal.net)
  213. # [07:39] * Joins: shepazu (n=schepers@c-71-202-124-114.hsd1.ca.comcast.net)
  214. # [07:39] * Quits: doublec (n=doublec@202.0.36.64) ("Leaving")
  215. # [07:52] <othermaciej> "HTML5 Could be the OS Killer"
  216. # [07:52] <othermaciej> apparently I'm suicidal
  217. # [07:54] <othermaciej> at the same time: "Google shows Native Client built into HTML 5"
  218. # [07:58] * Joins: weinig (n=weinig@c-67-180-35-124.hsd1.ca.comcast.net)
  219. # [07:59] * ezyang deals the death blow to the bug and emerges victorious
  220. # [07:59] <ezyang> Now, time for sleep
  221. # [08:03] * Quits: roc (n=roc@202.0.36.64)
  222. # [08:05] * Joins: Mrmil (n=ut_ollie@host-77-236-204-8.blue4.cz)
  223. # [08:06] * Joins: roc (n=roc@202.0.36.64)
  224. # [08:13] * Quits: gavin (n=gavin@firefox/developer/gavin) (Read error: 60 (Operation timed out))
  225. # [08:13] * Joins: maikmerten (n=merten@ls5dhcp196.cs.uni-dortmund.de)
  226. # [08:14] * Quits: virtuelv (n=virtuelv@084202133045.customer.alfanett.no) (Read error: 110 (Connection timed out))
  227. # [08:16] * Joins: gavin (n=gavin@firefox/developer/gavin)
  228. # [08:16] * Joins: pauld (n=pauld@92.40.103.94.sub.mbb.three.co.uk)
  229. # [08:25] * Joins: pesla (n=retep@procurios.xs4all.nl)
  230. # [08:26] * Quits: roc (n=roc@202.0.36.64) (Read error: 110 (Connection timed out))
  231. # [08:32] * Quits: hdh (n=hdh@118.71.98.15) (Remote closed the connection)
  232. # [08:36] * Joins: takoratta (n=takoratt@220.109.219.244)
  233. # [08:42] * Joins: tndH (n=Rob@james-baillie-pc083-229.student-halls.leeds.ac.uk)
  234. # [08:42] * Quits: onar_ (n=onar@c-67-180-87-66.hsd1.ca.comcast.net)
  235. # [08:45] * Quits: wakaba (n=wakaba@EM114-51-155-31.pool.e-mobile.ne.jp) (Read error: 110 (Connection timed out))
  236. # [08:47] * Joins: MikeSmith (n=MikeSmit@EM114-48-134-23.pool.e-mobile.ne.jp)
  237. # [08:51] * Quits: nessy (n=nessy@124-168-245-234.dyn.iinet.net.au) ("This computer has gone to sleep")
  238. # [08:55] * Quits: pauld (n=pauld@92.40.103.94.sub.mbb.three.co.uk) (Read error: 110 (Connection timed out))
  239. # [08:55] * Joins: Maurice (n=ano@a80-101-46-164.adsl.xs4all.nl)
  240. # [08:55] * Quits: heycam (n=cam@clm-laptop.infotech.monash.edu.au) ("bye")
  241. # [08:57] * Joins: abarth (n=abarth@c-98-210-108-185.hsd1.ca.comcast.net)
  242. # [09:00] * Quits: sayrer (n=chatzill@ip67-152-86-163.z86-152-67.customer.algx.net) (Read error: 110 (Connection timed out))
  243. # [09:04] * Quits: maikmerten (n=merten@ls5dhcp196.cs.uni-dortmund.de) (Remote closed the connection)
  244. # [09:08] * Joins: mpt (n=mpt@canonical/launchpad/mpt)
  245. # [09:10] <Hixie> wait... did shelley leave the wg again?
  246. # [09:10] <Hixie> man, she makes me dizzy
  247. # [09:10] * Joins: zcorpan (n=zcorpan@c83-252-196-43.bredband.comhem.se)
  248. # [09:11] <othermaciej> it seems that she is not presently a member of the HTML WG
  249. # [09:12] <othermaciej> according to the member list on the Web
  250. # [09:14] <Hixie> i guess it must be thursday
  251. # [09:14] * Joins: mat_t (n=mattomas@conference/ubuntu-developer-summit/x-e0c66e1fcb0a1902)
  252. # [09:16] <othermaciej> I assume she was offended by Sam pointing out that while she complains about outside-the-list snark/hostility, she also produces it
  253. # [09:17] * Joins: itpastorn (n=itpastor@82.99.1.179)
  254. # [09:20] * Joins: virtuelv (n=virtuelv@pat-tdc.opera.com)
  255. # [09:21] * Joins: jwalden_ (n=waldo@c-98-248-40-206.hsd1.ca.comcast.net)
  256. # [09:25] * Quits: jruderman (n=jruderma@c-98-248-40-206.hsd1.ca.comcast.net) (Read error: 113 (No route to host))
  257. # [09:26] * Joins: zcorpan_ (n=zcorpan@c83-252-196-43.bredband.comhem.se)
  258. # [09:26] * Quits: jwalden (n=waldo@c-98-248-40-206.hsd1.ca.comcast.net) (Read error: 113 (No route to host))
  259. # [09:26] * jwalden_ is now known as jwalden
  260. # [09:26] * Quits: zcorpan (n=zcorpan@c83-252-196-43.bredband.comhem.se) (Read error: 110 (Connection timed out))
  261. # [09:28] * Joins: pauld (n=pauld@194.102.13.6)
  262. # [09:31] <Hixie> othermaciej: no, i didn't intend the asymmetric case, i'll fix that in due course
  263. # [09:32] <othermaciej> Hixie: are you still going to allow UAs to switch between the two options at any time?
  264. # [09:32] <Hixie> othermaciej: yeah
  265. # [09:32] <Hixie> the requirement should be that for ports A and B
  266. # [09:32] <othermaciej> seems like a pretty low-value option if they would have to do so synchronously for both endpoints
  267. # [09:32] <Hixie> it doesn't have to be symmetric
  268. # [09:32] <Hixie> for port A, either A.owner->A or B->A
  269. # [09:32] <othermaciej> if you want to make it less of a loophole the requirement should be that A is either owned by B or by A's owner
  270. # [09:32] <othermaciej> right
  271. # [09:33] <Hixie> right now the text says either A.owner-> or A->B
  272. # [09:33] <Hixie> which is bogus
  273. # [09:33] <Hixie> the idea is still that you don't have to keep a reference to the object for it to survive long, since otherwise we expose GC
  274. # [09:34] <Hixie> "why do the first five messages get through?" "because after that it got around to GCing your port away" isn't a conversation i ever want to have :-)
  275. # [09:34] <othermaciej> so long as .close() gives you an out to clean up your resources, that's not so bad
  276. # [09:34] <othermaciej> but
  277. # [09:34] <Hixie> yeah
  278. # [09:34] <othermaciej> I don't see why exposing the potential unpredictability of GC is so bad
  279. # [09:34] <othermaciej> in an API to be used with concurrency
  280. # [09:34] <othermaciej> because concurrency means you can't really have deterministic guarantees of order of operations anyway
  281. # [09:35] <Hixie> you think this conversation is one that authors will be ok with? "why do the first five messages get through?" "because after that it got around to GCing your port away"
  282. # [09:35] * Joins: ZombieLoffe (n=e@unaffiliated/zombieloffe)
  283. # [09:35] <othermaciej> I wouldn't answer that way - I'd say "hold a reference to your MessagePort while you are using it"
  284. # [09:35] <Hixie> i think debugging such a bug would be a nightmare
  285. # [09:35] * Quits: mpt (n=mpt@canonical/launchpad/mpt) ("Ex-Chat")
  286. # [09:35] <othermaciej> debugging concurrency bugs is often a nightmare
  287. # [09:36] * Joins: mpt (n=mpt@canonical/launchpad/mpt)
  288. # [09:36] <othermaciej> imagine if your code subtly depends on whether worker A receives a message from worker B or window W first
  289. # [09:36] <othermaciej> you might never see the wrong order on "your" test system
  290. # [09:36] <Hixie> i agree that it has intrinsic pain
  291. # [09:36] <Hixie> adding more seems bad
  292. # [09:36] <othermaciej> this is why I think removing nondeterminism from an API for a concurrent system is wasted effort
  293. # [09:37] <othermaciej> well, by always either holding a reference or using .close() you can easily remove the risk
  294. # [09:37] <othermaciej> the only difference at this point is what happens to authors who are not careful in this way
  295. # [09:38] <othermaciej> do they get random memory leaks (result of the strong reference rule) or a bit of extra nondeterminism (result of not having such a rule at all)
  296. # [09:38] <zcorpan_> MikeSmith: "If the area element has no href attribute, then the area represented by the element cannot be selected, and the alt attribute must be omitted."
  297. # [09:39] <othermaciej> I don't think it's so important which happens, so I am not very concerned about the choice, as long as there is a reasonable way for content authors to do the right thing
  298. # [09:40] <Hixie> othermaciej: i think the memory leaks are the better option since if they are found to be common, browsers will just do the more complicated alternative.
  299. # [09:40] <Hixie> othermaciej: whereas they can't do anything about the other problem.
  300. # [09:40] <othermaciej> I don't think you understand how complicated the alternative is
  301. # [09:40] <othermaciej> if the leaks become a problem, I'd just violate the spec
  302. # [09:42] <othermaciej> (but hopefully giving authors the tools to DTRT will be sufficient)
  303. # [09:43] <Hixie> i don't think teh alternative is as bad as you make out. you just need to keep track of when port gets to zero js references, and when that happens, tell the other side the ID of the last message you received and the ID of the last message you sent, and say that you're ready to go away. when both sides do that and they both sent the same IDs, then they both know they can go away.
  304. # [09:43] <Hixie> consider the opposite problem -- one browser with 90% market share does GC every 20 seconds, the other does GC aggressively. a page that always sends two messages only always works on the former browser, always fails on the other.
  305. # [09:44] <othermaciej> JS isn't reference counted
  306. # [09:44] <othermaciej> there isn't a simple concept of "get to 0 references"
  307. # [09:44] <othermaciej> but there are also much more complex cases than you describe
  308. # [09:44] <Hixie> s/zero js references/would otherwise get sweeped/
  309. # [09:44] <othermaciej> consider a triangle of MessageChannels
  310. # [09:44] <othermaciej> where the MessagePorts in each window indirectly reference each other
  311. # [09:45] <Hixie> yeah, that's a tough one
  312. # [09:45] <othermaciej> (keep in mind also that linkage between three heaps is still a far simpler case for distributed GC than the fully general case)
  313. # [09:46] * Joins: annevk2 (n=annevk@5ED2D22C.cable.ziggo.nl)
  314. # [09:47] <othermaciej> (btw it's easy to get 3-way linkage like that through event listener closures capturing multiple message ports in scope)
  315. # [09:47] <othermaciej> (so it's not some bizzarre theoretical construct)
  316. # [09:49] * Quits: mat_t (n=mattomas@conference/ubuntu-developer-summit/x-e0c66e1fcb0a1902) ("This computer has gone to sleep")
  317. # [09:49] <Hixie> agreed
  318. # [09:50] <othermaciej> so the upshot is that the opposite-endpoint ownership model is not really practical if you have separate heaps for workers, thus MessagePorts are immortal until you close() one of the endpoints or the other, or leave the Document
  319. # [09:51] <othermaciej> (er, for the last bit, I guess I should say, "until you navigate away")
  320. # [09:52] <Hixie> well exposing the GC just doesn't seem like an option to me
  321. # [09:52] <Hixie> i mean, we're going to extreme lengths to avoid it elsewhere
  322. # [09:53] <othermaciej> that just means that explicit resource management is the alternative
  323. # [09:53] <othermaciej> which is not necessarily that terrible
  324. # [09:53] <Hixie> yeah, i guess
  325. # [09:53] <Hixie> though people will screw that up too
  326. # [09:53] <othermaciej> just saying, it's not super helpful for the spec to make it seem like you can count on automatic resource management of these things
  327. # [09:56] <Hixie> hm, yes, we could make it more explicit that you should call .close() on ports
  328. # [09:57] * Quits: mpt (n=mpt@canonical/launchpad/mpt) ("Ex-Chat")
  329. # [09:58] * Joins: mpt (n=mpt@canonical/launchpad/mpt)
  330. # [10:03] <Hixie> http://beta.w3.org/standards/about.html
  331. # [10:04] <Hixie> after 15 years of telling people the w3c wasn't in the business of writing standards but was in fact in the business of writing recommendations, they're planning on confusing everyone by changing their mind
  332. # [10:04] <Hixie> good work w3c.
  333. # [10:07] * Quits: abarth (n=abarth@c-98-210-108-185.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
  334. # [10:07] <annevk2> seems like a positive change to me
  335. # [10:08] * Joins: takoratt_ (n=takoratt@220.109.219.244)
  336. # [10:09] <Philip`> othermaciej: libwww-perl uses the HTML::HeadParser module which uses HTML::Parser and then looks for things like <meta http-equiv> and <base> and <link> and <isindex>
  337. # [10:09] <othermaciej> most people think of them as "Standards"
  338. # [10:09] <Philip`> (so they can be exposed via the HTTP header API)
  339. # [10:09] <othermaciej> calling them "Recommendations" and not standards was just confusing
  340. # [10:09] <othermaciej> Philip`: I did not know that
  341. # [10:10] * Joins: heycam (n=cam@210-84-19-113.dyn.iinet.net.au)
  342. # [10:11] <othermaciej> Philip`: is HTML::HeadParser // HTML::Parser unable to conform to HTML5?
  343. # [10:11] <othermaciej> (I assume not, since people have written HTML5 parsers in perl...)
  344. # [10:12] <Philip`> othermaciej: I see no reason that it couldn't use an HTML5 parser
  345. # [10:12] <Philip`> (though I don't know whether that's enough to technically "conform to HTML5")
  346. # [10:13] <othermaciej> I would guess it falls under the 'Data mining tools' conformance class
  347. # [10:13] <othermaciej> though perhaps there should be a conformance class for reusable parser libraries
  348. # [10:13] <othermaciej> since such a library is testable by itself usually, but can't predict what kind of software will use it
  349. # [10:14] <Philip`> Seems hard to specify since the libraries will all have different output formats
  350. # [10:14] <othermaciej> Philip`: anyway - thanks for pointing that out, though overall I still think Roy is wrong in his assertions, and incredibly rude
  351. # [10:14] <othermaciej> well, XML has rules for XML processors and people are able to determine whether XML parser libraries conform
  352. # [10:15] <Philip`> I guess it would have to specify equivalence between the conceptual DOM created by the spec's algorithm, and the concrete DOM/SAX/ElementTree/etc created by implementations
  353. # [10:15] * Joins: philipj (n=philipj@pat.se.opera.com)
  354. # [10:15] <Philip`> or just leave it undefined and tell people to use common sense
  355. # [10:18] <Philip`> http://translate.google.com/translate?hl=en&sl=ru&tl=en&u=http://robotstxt.org.ru/rurobots/yandex
  356. # [10:18] <Philip`> "Yandex Robot supports tag noindex, which prohibits job Yandex index queries (office) of the text. At the beginning of a service fragment is <noindex>, but in the end - </ noindex>, Yandex, and will not index the site text."
  357. # [10:19] <zcorpan_> apache indexes would benefit from using an html5 parser here http://simon.html5.org/test/html/parsing/fragment/content-model-flag/
  358. # [10:20] <zcorpan_> (it shows just "setting innerHTML" instead of the correct "setting innerHTML on <title>")
  359. # [10:20] <zcorpan_> "setting innerHTML on"
  360. # [10:21] <zcorpan_> nowadays i try to remember escaping < as &lt; in titles to cater for the apache bug but it would be nice if it worked correctly
  361. # [10:25] * Quits: ZombieLoffe (n=e@unaffiliated/zombieloffe) (Read error: 60 (Operation timed out))
  362. # [10:25] * Joins: ROBOd (n=robod@89.122.216.38)
  363. # [10:25] * Quits: takoratta (n=takoratt@220.109.219.244) (Read error: 110 (Connection timed out))
  364. # [10:26] * Joins: takoratta (n=takoratt@220.109.219.244)
  365. # [10:29] <zcorpan_> Hixie: how was http://www.w3.org/Bugs/Public/show_bug.cgi?id=6586 fixed?
  366. # [10:29] * Joins: ZombieLoffe (n=e@unaffiliated/zombieloffe)
  367. # [10:30] <Hixie> it was fixed lng ago
  368. # [10:30] <Hixie> i just forgot to mark the bug as fixed
  369. # [10:30] <Hixie> spec now says:
  370. # [10:30] <Hixie> # When a Document is in quirks mode, margins on HTML elements at the top or bottom of the initial containing block, or the top of bottom of td or th elements, are expected to be collapsed to zero.
  371. # [10:31] <Hixie> othermaciej: your e-mail to roy had an incomplete sentence again
  372. # [10:31] <Hixie> "If they can only handle a defined subset inside their walled garden, then they are not conforming implementations. If they are"
  373. # [10:31] <othermaciej> Hixie: in case you coudn't tell, I edit out of order a lot
  374. # [10:31] <zcorpan_> Hixie: the spec quotes that exact text and says it's wrong
  375. # [10:32] <zcorpan_> er
  376. # [10:32] <othermaciej> *couldn't
  377. # [10:32] <zcorpan_> the bug
  378. # [10:32] <Hixie> othermaciej: so do i, but then i proof-read :-P
  379. # [10:32] * Quits: takoratt_ (n=takoratt@220.109.219.244) (Read error: 60 (Operation timed out))
  380. # [10:32] <othermaciej> I do too - had a real bad headache today though
  381. # [10:32] <othermaciej> surprised I was able to be coherent at all
  382. # [10:32] <othermaciej> I should do a TL;DR reply to myself
  383. # [10:32] <Hixie> zcorpan_: no, the text in the bug is different
  384. # [10:32] <othermaciej> because in all the arguing, I do have an interesting main point
  385. # [10:32] <Hixie> othermaciej: ah, sorry to hear that
  386. # [10:32] <Hixie> about the headache, not the point
  387. # [10:33] <othermaciej> which is that HTML processors either (a) are expected to work with general public Web content, in which case they must interoperate with browsers, or (b) work with a restricted subset of content (either conforming to some subset rule or in a walled garden) in which case the spec is irrelevant to them
  388. # [10:35] <zcorpan_> Hixie: ok it's different, but i don't see how it collapses when the body has a border
  389. # [10:36] <Hixie> zcorpan_: why would the border affect it?
  390. # [10:36] <Hixie> the margins just collapse to zero whatever else is there
  391. # [10:36] <Hixie> with whatever else, i mean
  392. # [10:37] <zcorpan_> Hixie: the body is not the initial containing block, and margin collapsing doesn't happen when there's a border, so as i read it it wouldn't collapse when there's a border
  393. # [10:38] <zcorpan_> Hixie: instead the body's margins would collapse, which they shouldn't
  394. # [10:38] <Hixie> oh it should say top or bottom of the <body>, not the ICB?
  395. # [10:38] <zcorpan_> yeah
  396. # [10:41] * dave_levin_ is now known as dave_levin
  397. # [10:41] <Mrmil> Dear WHATWG, I'm yet-another-I-want-to-help person and I would like to ask you kindly for your feedback.
  398. # [10:41] <Mrmil> I'm working on a case-study, a common web presentation homepage written in HTML 5, which (when finished) can get chopped up into smaller parts and form a tutorial.
  399. # [10:41] <Mrmil> Please note it's not finished at all, many things need to be done and I need to educate myself, too. :) If you are interested, you can find it here: http://server.ebrana.cz/olda/_apps/html5/ .
  400. # [10:41] <Mrmil> It's a temporary URL until I/we decide what to do with it next.
  401. # [10:41] <Mrmil> I'm planning on adding more feature to this page, so I'll post here again when done. If you want to provide feedback, please email me at vetesnik@mrmil.cz. And yeh, I'll buy you a cup of coffee. :) Thanks.
  402. # [10:42] <zcorpan_> mmm coffee
  403. # [10:43] <zcorpan_> Mrmil: http://gsnedders.html5.org/outliner/
  404. # [10:44] <Mrmil> zcorpan_: Ooo, cool, thanks!
  405. # [10:44] <zcorpan_> Mrmil: <html lang="cs"> - shouldn't it be "en"?
  406. # [10:45] <Mrmil> zcorpan_: Yes, I'm czech so I forgot to change it.
  407. # [10:45] <Mrmil> zcorpan_: done
  408. # [10:45] <hsivonen> Philip`: I thought the correspondence of DOM/SAX/ElementTree etc. to infoset is already understood
  409. # [10:45] <zcorpan_> <section id="header"> - without checking the outline or further in the source, knee-jerk reaction is that this should be <header>
  410. # [10:46] <hsivonen> Philip`: and HTML5 defines how to coerce the output of the parsing algorithm to infoste
  411. # [10:47] <zcorpan_> hsivonen: still people say "HTML5 talks about DOM, there are tools that don't use a DOM, hence HTML5 is useless for those tools"
  412. # [10:47] <hsivonen> zcorpan_: It's a sign of people not having read the spec carefully
  413. # [10:48] <zcorpan_> Mrmil: the <h1>Navigation</h1> should probably go inside the <nav>
  414. # [10:48] <jgraham> Mrmil: <p class="skipLinks"> should be unnecessary (the whole paragraph)
  415. # [10:49] <zcorpan_> <div id="wrapper"> is unnecessary too (style <body> instead)
  416. # [10:49] <jgraham> <section id="content"> -> <article> maybe
  417. # [10:49] <jgraham> <section id="sidebar"> -> <aside> aiui
  418. # [10:49] <Philip`> hsivonen: Coercion to infosets doesn't seem an ideal way to define equivalence, since the coercion can lose information
  419. # [10:50] <jgraham> Philip`: I'm still not sure I understand what information is lost
  420. # [10:50] <zcorpan_> Mrmil: i would probably have a single <nav> and have subheadings for quicknav and language
  421. # [10:50] <Philip`> jgraham: It can e.g. drop attributes whose name starts with "xmlns"
  422. # [10:50] <zcorpan_> s/subheadings/subsections/
  423. # [10:50] <jgraham> Philip`: Oh yeah, I had forgotten that.
  424. # [10:51] <hsivonen> Philip`: I think common sense should be enough to fill in the gaps given the stream to DOM spec and the coercion spec, but I guess it could be more explicit
  425. # [10:51] <zcorpan_> Mrmil: <hr class="displayNone"> - clearly presentational abuse of class
  426. # [10:51] <hsivonen> Philip`: is there any implementor who hasn't been able to figure out how to map the non-infoset parts of the DOM to an arbitrary non-infoset-enforcing API?
  427. # [10:51] <Philip`> Maybe it should be explicit that you should use common sense
  428. # [10:52] <hsivonen> common sense is rare, though :-(
  429. # [10:52] <Philip`> e.g. add a conformance class for "HTML parser library" and require that it has a common-sense equivalence to the DOM produced by the specified algorithm
  430. # [10:52] <jgraham> zcorpan_: Presenational "abuse" of class isn't forbidden is it?
  431. # [10:52] <zcorpan_> How to read this specification: use common sense
  432. # [10:52] <jgraham> (but I think that <hr> should go)
  433. # [10:52] <Mrmil> zcorpan_: I was wondering about that, I'll switch it to the <nav>
  434. # [10:53] <hsivonen> Philip`: common-sense equivalance or where prohibited, using the coercion section's rules
  435. # [10:53] <zcorpan_> jgraham: no it's not forbidden but it's not good practice
  436. # [10:53] <Philip`> hsivonen: That sounds sensible
  437. # [10:53] <Mrmil> jgraham: what would you suggest then?
  438. # [10:53] <hsivonen> Philip`: I think I could formulate general rules for any API using the infoset as an aid
  439. # [10:53] <Mrmil> jgraham: removing whole skiplinks or removing the <p>?
  440. # [10:53] <jgraham> Mrmil: Why do you need an <hr>?
  441. # [10:53] <hsivonen> because the problems are mostly arbitrary restrictions on what characters are allowed where
  442. # [10:54] <zcorpan_> Mrmil: the arvhices list in the sidebar probably doesn't need <nav>
  443. # [10:55] <hsivonen> Philip`: 1) figure out how the infoset maps to API X
  444. # [10:55] <zcorpan_> Mrmil: <section id="footer"> - <footer>
  445. # [10:55] <Philip`> I suppose I just think it'd be nice to be able to say "this is a conforming HTML5 parser library according to the spec", instead of having to say "this is an HTML5 parser library which could be used as part of a data mining tool and would not by itself cause the data mining tool to be non-conforming"
  446. # [10:55] <hsivonen> Philip`: 2) Apply the DOM to infoset coercion from DOM Level 3
  447. # [10:55] <Hixie> nn
  448. # [10:55] <jgraham> Mrmil: Remove the skiplink. AIUI they don't work that well in practice an in theory the browser can guess rather well anyway (e.g. look for the first <article>)
  449. # [10:55] * Quits: takoratta (n=takoratt@220.109.219.244) (Read error: 110 (Connection timed out))
  450. # [10:55] <hsivonen> Philip`: in step #2, pretend that restrictions on what characters are allowed where don't apply
  451. # [10:56] <Mrmil> jgraham: hr's removed, OK, will remove skiplinks too :)
  452. # [10:56] <jgraham> Mrmil: <section class="todo"> no need for the wrapper <div>
  453. # [10:56] <Mrmil> jgraham: done
  454. # [10:56] <hsivonen> Philip`: 3) Map infoset to API X per step 1
  455. # [10:56] <Mrmil> jgraham: I use the div only for styling purpose
  456. # [10:56] <zcorpan_> Mrmil: "© Company Name 2009, All rights reserved. Company Product" doesn't make sense as a paragraph
  457. # [10:56] <hsivonen> Philip`: 4) If this causes API X to fail, remove failures by applying the coercion section
  458. # [10:57] <hsivonen> Philip`: is that comprehensive enough?
  459. # [10:58] <jgraham> Mrmil: I bet you don't really need it
  460. # [10:58] <hsivonen> Hixie: you should make a reference to DOM Level 3 for the baseline DOM to infoset mapping that the coercion rules modify when needed
  461. # [10:58] <Philip`> hsivonen: I guess that could work
  462. # [10:59] <hsivonen> Philip`: works for everything but RDFa
  463. # [10:59] <Mrmil> jgraham: you bet right, but what if I got a design with rounded corners?
  464. # [10:59] * zcorpan_ ponders about <address> in the sidebar
  465. # [10:59] <jgraham> Mrmil: border-radius?
  466. # [11:00] <Mrmil> jgraham: doesn't work in ie, not implemented enough, cannot use it for production use, my superiors would kill me
  467. # [11:00] <Mrmil> jgraham: will have to wait for css3 a little while
  468. # [11:01] <jgraham> Mrmil: I thought this was a case study not a production site for clients who demand precidely the same look in all browsers
  469. # [11:01] <jgraham> *precisely
  470. # [11:01] <Mrmil> jgraham: Well it's a case study based on real demands, I don't want to make it a SCI-FI, people need real tutorials for real needs, I should've said that I guess
  471. # [11:02] <zcorpan_> Mrmil: the link farm at the bottom should probably go in the <footer>, too
  472. # [11:04] <Mrmil> zcorpan_: Are all the things you said alright now?
  473. # [11:04] <hsivonen> zcorpan_: are you planning on having a mapping from Web DOM to Infoset?
  474. # [11:05] * Quits: MikeSmith (n=MikeSmit@EM114-48-134-23.pool.e-mobile.ne.jp) (Read error: 110 (Connection timed out))
  475. # [11:05] <Mrmil> zcorpan_: "? Company Name 2009, All rights reserved. Company Product" doesn't make sense as a paragraph -> what would you suggest then? I don't like the idea of <div>ing everthing
  476. # [11:06] <hsivonen> Mrmil: it's a "paragraph" in the HTML5 sense of "paragraph"
  477. # [11:06] <zcorpan_> Mrmil: <p><small>copyright</small></p><p><a><img>...
  478. # [11:08] <zcorpan_> hsivonen: dunno
  479. # [11:09] <zcorpan_> hsivonen: i guess it would be good
  480. # [11:09] <Mrmil> zcorpan_: better now? I'm a bit confused :)
  481. # [11:09] <zcorpan_> Mrmil: yes, now at least the copyright paragraph makes sense. :)
  482. # [11:10] <Mrmil> zcorpan_: ok :)
  483. # [11:11] <zcorpan_> now where's my coffee?
  484. # [11:11] <Mrmil> zcorpan_: let me know if there are any other problems, I'll have some lunch now. Thanks for the feedback. Mmm, how do you like your coffee?
  485. # [11:11] <zcorpan_> Mrmil: black
  486. # [11:12] <Mrmil> zcorpan_: there you go http://www.nothinggeek.com/wp-content/uploads/2009/01/black-coffee.jpg
  487. # [11:12] <zcorpan_> thanks!
  488. # [11:12] <Mrmil> Cheers. I'll have some after lunch. Love it.
  489. # [11:13] <Mrmil> I have a question: should there be only one <nav> on a page?
  490. # [11:13] <zcorpan_> there's no such rule
  491. # [11:13] <zcorpan_> but i guess it makes the page easier to navigate
  492. # [11:14] <Philip`> zcorpan_: Maybe the TAG could give you some advice on the difference between coffee and a representation of coffee
  493. # [11:15] <Philip`> (Seems a similar problem to http://www.w3.org/2001/tag/issues#httpRange-14)
  494. # [11:15] <Mrmil> zcorpan_: On some of our presentations, we have a header-menu which goes throughout whole site, and then we have a column menu which goes into subpages for the particular page. Does that mean that both of them should be in a nav? I guess so.
  495. # [11:19] <Mrmil> jgraham: <section id="content"> -> <article> -> I was thinking about that. Then if I have real news up there, I'll nest <article> right?
  496. # [11:20] <Mrmil> jgraham: <section id="sidebar"> -> <aside> aiui -> I was thinking about that too, but wasn't sure
  497. # [11:20] <jgraham> Mrmil: Well it should only be <article> if it really is an article
  498. # [11:20] <jgraham> If it is a collection of articles <section> is probably fine
  499. # [11:21] <Mrmil> jgraham: it's not always an article. The contents of the #content part varies - depending whether you are on homepage, detail product, checkout, etc.
  500. # [11:21] <jgraham> Mrmil: If it is a collection of things then <section> probably works better
  501. # [11:21] <Mrmil> jgraham: Ok.
  502. # [11:21] <jgraham> (a collection on the same page)
  503. # [11:23] <Mrmil> jgraham: is my #sidebar had a product catalogue, bestselling products or banners, should it still be an <aside>?
  504. # [11:23] <jgraham> Like <section><h1>Blog posts</h1><article><h1>My first Blog Post</h1></article><article><h1>My second blog post</h1></article>
  505. # [11:23] <jgraham> </section>
  506. # [11:24] <jgraham> Is better than it would be with s/section/article/
  507. # [11:24] <jgraham> But <article><h1>Product details</h1></article> is fine
  508. # [11:25] <jgraham> Mrmil: Per spec, yes
  509. # [11:25] <jgraham> (re: <aside>)
  510. # [11:26] <annevk2> Hixie, reason for quitting seems other work: http://twitter.com/burningbird/status/1953228067
  511. # [11:27] <zcorpan_> Mrmil: i usually have a sub list for that case i.e. <nav><ul><li><a>home</a><li><a>products</a><ul><li>product 1<li><a>product 2</a></ul><li><a>etc
  512. # [11:30] <zcorpan_> Philip`: i can always print the representation of coffe to obtain a physical form
  513. # [11:31] <zcorpan_> coffee
  514. # [11:32] * Quits: zcorpan_ (n=zcorpan@c83-252-196-43.bredband.comhem.se)
  515. # [11:43] * Quits: othermaciej (n=mjs@c-69-181-42-237.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
  516. # [11:43] * Joins: othermaciej (n=mjs@c-69-181-42-237.hsd1.ca.comcast.net)
  517. # [11:44] <annevk2> "Hurray for the tracking view!" nice to know it's appreciated :)
  518. # [11:45] <annevk2> it's unfortunate that making it better means a significant increase in complexity (afaict)
  519. # [11:48] <jgraham> annevk2: Where are you quoting?
  520. # [11:49] * Quits: itpastorn (n=itpastor@82.99.1.179) ("Leaving.")
  521. # [11:50] <Philip`> jgraham: http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2009-May/019982.html
  522. # [11:55] * Joins: takoratta (n=takoratt@p4076-ipbf6604marunouchi.tokyo.ocn.ne.jp)
  523. # [11:58] * Joins: maikmerten (n=merten@ls5dhcp196.cs.uni-dortmund.de)
  524. # [12:07] * Quits: mpt (n=mpt@canonical/launchpad/mpt) (Read error: 113 (No route to host))
  525. # [12:08] * Joins: mpt (n=mpt@canonical/launchpad/mpt)
  526. # [12:09] <Mrmil> Ok, any other suggestions for http://server.ebrana.cz/olda/_apps/html5/ ?
  527. # [12:11] <jgraham> <section id="header"> -> <header>
  528. # [12:12] <jgraham> You could probably remove <section id="content"> altogether
  529. # [12:12] <jgraham> (just keep the articles)
  530. # [12:12] <jgraham> Since you don't have another <h1> that applies to the <body>
  531. # [12:13] <jgraham> The empty <span> elements are kind of ugly
  532. # [12:14] <jgraham> Having both <section id="footer"> and <footer> seems odd
  533. # [12:15] * Quits: maikmerten (n=merten@ls5dhcp196.cs.uni-dortmund.de) (Read error: 60 (Operation timed out))
  534. # [12:19] <Mrmil> jgraham: removing <section id="content"> might be a problem due to 2-col layout and 3-col layout problems, but will try it occasionally.
  535. # [12:20] <Mrmil> jgraham: empty span elements are ugly but they convey meaning so I have to keep the text behind it so it's accessible with images disabled. And I don't want to use <img>'s for that, that's even more ugly. :)
  536. # [12:23] <Mrmil> jgraham: I changed section id="header" to header id="header", I need the id so I don't style every header this way. What would you suggest do with the footers? I'd change the section id="footer" into footer element but then there would be 2 footer's. The link farm is ugly but our IM dept. adds it everywhere so I have to deal with it somehow.
  537. # [12:27] * Joins: webben (n=benh@nat/yahoo/x-df2e7ae42e1dee83)
  538. # [12:27] <annevk2> http://twitter.com/gazcoop/statuses/1957781728 :)
  539. # [12:29] <annevk2> http://twitter.com/martin_probst/statuses/1958288180 -- "HTML5 Spec is a weird document. Offline Applications section is almost just C code, nothing about intent, expected outcomes or behaviour." hard to argue with that; hopefully the introduction section addresses these concerns adequately
  540. # [12:30] * Joins: itpastorn (n=itpastor@82.99.1.179)
  541. # [12:33] * Joins: zcorpan (n=zcorpan@pat.se.opera.com)
  542. # [12:35] * Joins: roc (n=roc@121-72-173-187.dsl.telstraclear.net)
  543. # [12:40] * Quits: webben (n=benh@nat/yahoo/x-df2e7ae42e1dee83) ("leaving")
  544. # [12:40] * Joins: webben (n=benh@nat/yahoo/x-9976041ac5d2c5ef)
  545. # [12:44] <Mrmil> jgraham: One more qustion, if I want to keep the #content section just for styling purposes then, should I make it <div> instead?
  546. # [12:44] <hsivonen> Whew. The check-in message for r3148 is wrong.
  547. # [12:44] <hsivonen> Spec looking good.
  548. # [12:50] <annevk2> Google Wave looks pretty neat
  549. # [12:50] <annevk2> little bit scared of all the probable data lock-in though
  550. # [12:51] <zcorpan> http://www.techcrunch.com/2009/05/28/google-wave-the-full-video-from-google-io/ - drag and drop several images from desktop to web app in one go
  551. # [12:52] <jgraham> annevk2: Isn't it supposed to be an open protocol somehow?
  552. # [12:53] <annevk2> I was not assuming open protocol means that really
  553. # [12:53] <annevk2> but I don't know the details of that yet
  554. # [12:56] <jgraham> Mrmil: Re: #content it probably doesn't matter much, but per spec, if the <body> doesn't have a <h1> then it will look like an empty section in an outline
  555. # [12:57] * Quits: Mrmil (n=ut_ollie@host-77-236-204-8.blue4.cz) (Read error: 104 (Connection reset by peer))
  556. # [12:58] <jgraham> But I'm trying to get Hixie to change that
  557. # [12:59] <jgraham> (because I expect a bunch of people to do essentially the same thing that you have done)
  558. # [13:03] * Quits: dave_levin (n=dave_lev@72.14.224.1)
  559. # [13:13] <gsnedders> ezyang: But all the Tokenizer test cases test it :P
  560. # [13:14] <annevk2> I guess since they open source it it's ok
  561. # [13:14] * Joins: Lachy (n=Lachy@pat-tdc.opera.com)
  562. # [13:15] <annevk2> Hopefully the network effects are still good enough if you run your own...
  563. # [13:15] <gsnedders> ""\"\"\"\"geoffers\"\"\"@gmail com — that's certainly an interesting email address to receive from
  564. # [13:16] <Philip`> annevk2: http://www.waveprotocol.org/ - sounds like the idea is that you can be part of the global network without being locked into Google's servers
  565. # [13:17] <annevk2> yeah
  566. # [13:17] <Philip`> Seems like it's basically XMPP (Jabber) with some extensions
  567. # [13:17] <annevk2> TAG might enjoy speculating about that versioning issue :)
  568. # [13:17] * Quits: mpt (n=mpt@canonical/launchpad/mpt) (Read error: 113 (No route to host))
  569. # [13:17] <Philip`> so it should have the same level of openness as XMPP, with everyone able to link to each other's servers
  570. # [13:19] <Philip`> and the extensions seem to be a way of encoding deltas for XML documents
  571. # [13:19] <Philip`> (in a composable way)
  572. # [13:26] * Joins: maikmerten (n=merten@ls5dhcp196.cs.uni-dortmund.de)
  573. # [13:26] * Quits: gsnedders (n=gsnedder@host86-164-130-180.range86-164.btcentralplus.com) (Remote closed the connection)
  574. # [13:27] * Joins: gsnedders (n=gsnedder@host86-164-130-180.range86-164.btcentralplus.com)
  575. # [13:31] * Joins: pauld_ (n=pauld@194.102.13.2)
  576. # [13:32] * Quits: jmb (n=jmb@login.ecs.soton.ac.uk) (Remote closed the connection)
  577. # [13:32] * Joins: pauld__ (n=pauld@194.102.13.6)
  578. # [13:32] * Quits: pauld (n=pauld@194.102.13.6) (Read error: 104 (Connection reset by peer))
  579. # [13:40] * Joins: jmb (n=jmb@login.ecs.soton.ac.uk)
  580. # [13:40] * Joins: pauld (n=pauld@194.102.13.2)
  581. # [13:40] * Quits: pauld_ (n=pauld@194.102.13.2) (Read error: 104 (Connection reset by peer))
  582. # [13:46] * Quits: pauld (n=pauld@194.102.13.2)
  583. # [13:47] * Joins: hdh (n=hdh@58.187.202.243)
  584. # [13:49] * Joins: Mrmil (n=ut_ollie@host-77-236-204-8.blue4.cz)
  585. # [14:02] * Quits: pauld__ (n=pauld@194.102.13.6) (Read error: 110 (Connection timed out))
  586. # [14:08] <annevk2> I wonder how HTML WG discussions would look in Wave. I have the feeling it might be pretty overwhelming.
  587. # [14:12] <jgraham> annevk2: I was thinking the same thing
  588. # [14:13] <Philip`> HTML WG discussions are pretty overwhelming regardless of the medium
  589. # [14:14] <annevk2> I wonder how URL addressing works with Wave. I guess you'd have a "bot" that is invited in Wave discussions that pushes content out now and then...
  590. # [14:14] * Joins: doublec (n=doublec@118-93-177-220.dsl.dyn.ihug.co.nz)
  591. # [14:20] * Quits: takoratta (n=takoratt@p4076-ipbf6604marunouchi.tokyo.ocn.ne.jp) (Read error: 110 (Connection timed out))
  592. # [14:26] * Parts: itpastorn (n=itpastor@82.99.1.179)
  593. # [14:28] * Joins: pmuellr (n=pmuellr@user-0ce2gjn.cable.mindspring.com)
  594. # [14:34] <Lachy> wow, I just noticed that pave the cowpaths is getting discussed again. Haven't read the whole thread yet, guessing it's going to be a lot of nonsense and misunderstanding again
  595. # [14:35] * Joins: mpt (n=mpt@canonical/launchpad/mpt)
  596. # [14:35] * Joins: Madness (n=petal@85.20.140.167)
  597. # [14:38] * Quits: theMadness (n=petal@85.20.140.167) (Read error: 104 (Connection reset by peer))
  598. # [14:40] * Joins: zdobersek (n=zan@cpe-92-37-77-80.dynamic.amis.net)
  599. # [14:50] * Joins: riven` (n=colin@53525B67.cable.casema.nl)
  600. # [14:51] * Quits: riven (n=colin@pdpc/supporter/professional/riven) (Nick collision from services.)
  601. # [14:51] * riven` is now known as riven
  602. # [14:55] * Joins: ap (n=ap@194.154.88.34)
  603. # [15:03] <gsnedders> "How do you work this [computer]? You go click! Oh fuck it, why doesn't it work, I thought if you put the thing [cursor] there [over text field] it would go there!"
  604. # [15:03] * Joins: pauld (n=pauld@194.102.13.6)
  605. # [15:05] * Joins: pauld_ (n=pauld@194.102.13.2)
  606. # [15:06] * gsnedders sighs
  607. # [15:06] <gsnedders> being around my mother using a computer is stressful.
  608. # [15:07] <hsivonen> I want to complain about HotSpot's 8000-byte limit, but you've heard it already
  609. # [15:07] <hsivonen> seems crazy to have to tweak code around a magic number like that
  610. # [15:09] * Joins: dbaron (n=dbaron@pool-98-111-140-54.phlapa.fios.verizon.net)
  611. # [15:10] * Joins: nessy (n=nessy@124.168.245.234)
  612. # [15:10] <jgraham> hsivonen: I promise to say nothing about proposals about charset declerations only working in the first 512/1024/some other fixed number of bytes
  613. # [15:11] <jgraham> ;)
  614. # [15:11] <hsivonen> jgraham: that's totally different!
  615. # [15:12] <Philip`> Is there no command-line option to change HotSpot's behaviour?
  616. # [15:12] * Quits: doublec (n=doublec@118-93-177-220.dsl.dyn.ihug.co.nz) ("Leaving")
  617. # [15:13] * Quits: zcorpan (n=zcorpan@pat.se.opera.com)
  618. # [15:13] <hsivonen> Philip`: -XX:-DontCompileHugeMethods
  619. # [15:13] * Quits: mpt (n=mpt@canonical/launchpad/mpt) (Read error: 113 (No route to host))
  620. # [15:14] <hsivonen> Philip`: but requiring library users to know about a flag like that would not be cool
  621. # [15:14] <hsivonen> I wonder if AppEngine has a limitation like that
  622. # [15:15] * hsivonen starts refactoring the tokenizer loop for better perf, line numbers in C++ and better localizability
  623. # [15:15] <gsnedders> http://codingforums.com/showthread.php?t=167485 — anyone help?
  624. # [15:16] <hsivonen> oh, and CRLF and \0 suck too
  625. # [15:17] * Joins: drostie (n=hopkins@5ED17066.cable.ziggo.nl)
  626. # [15:19] <hsivonen> maybe I can start an HTML optimization meme about how much faster HTML parser if it has no CR characters and has LFs instead
  627. # [15:20] <hsivonen> s/parser/parses/
  628. # [15:20] <jgraham> gsnedders: Don't know but you are describing a partial solution rather than a problem. If you describe a problem you may get better help
  629. # [15:20] <gsnedders> jgraham: The problem is calling a function on click except when the click falls on an element with a default action!
  630. # [15:21] <jgraham> gsnedders: I doubt it. That's part of a solution to some other problem
  631. # [15:21] * Quits: pauld (n=pauld@194.102.13.6) (Read error: 110 (Connection timed out))
  632. # [15:21] <gsnedders> jgraham: I want to be able to click on a block to hide and show content.
  633. # [15:24] * Quits: webben (n=benh@nat/yahoo/x-9976041ac5d2c5ef) (Read error: 110 (Connection timed out))
  634. # [15:32] * Joins: aroben (n=aroben@unaffiliated/aroben)
  635. # [15:36] * Joins: dave_levin (n=dave_lev@c-98-203-247-78.hsd1.wa.comcast.net)
  636. # [15:36] * Quits: dave_levin (n=dave_lev@c-98-203-247-78.hsd1.wa.comcast.net) (Client Quit)
  637. # [15:46] <hsivonen> w00t! refactoring error messages saves hundreds of byte codes
  638. # [15:46] <hsivonen> (innocent string appends compile into a lot of byte codes)
  639. # [15:47] <ezyang> gsnedders: Nonsense!
  640. # [15:47] <gsnedders> ezyang: Yes, I'm a bad little boy.
  641. # [15:47] <ezyang> gsnedders: More seriously, if there ever is a failing test-case in Tokenizer, it's nice to know that it actually is Tokenizer's fault, and not InputStream's. A test-suite goes a way to do this
  642. # [15:47] <gsnedders> ezyang: Indeed
  643. # [15:48] <gsnedders> ezyang: Some of it was really not very fun to debug while splitting it out with obscure bugs in the input stream
  644. # [15:48] <ezyang> Yeah. Kudos on getting Parse Errors to mostly work
  645. # [15:49] <ezyang> Like, that's some pretty in-depth work you did
  646. # [15:49] <ezyang> (also, I'm ignoring parse errors completely for TreeConstructer, so you get to do it again :-)
  647. # [15:49] <gsnedders> ezyang: But I couldn't decide how to do a test suite for something where we weren't using JSON, etc. for input. We'd probably end up disagreeing how to do it. :P
  648. # [15:50] <gsnedders> ezyang: Have you merged back into trunk yet?
  649. # [15:50] <ezyang> Yeah, it's all in the trunk
  650. # [15:50] * gsnedders ought to do revision for his computing exam
  651. # [15:50] <ezyang> Re test suite: I dunno; I think that the class is simple enough that pure PHP works
  652. # [15:50] * Quits: virtuelv (n=virtuelv@pat-tdc.opera.com) ("Ex-Chat")
  653. # [15:50] <ezyang> I thought you finished your exams?
  654. # [15:50] <gsnedders> Actually, learning for the first time some of it.
  655. # [15:51] <gsnedders> No, computing next Thursday.
  656. # [15:51] * Joins: virtuelv (n=virtuelv@pat-tdc.opera.com)
  657. # [15:53] * Quits: mgrdcm (n=mgrdcm@69.246.244.191)
  658. # [15:55] * Quits: pmuellr (n=pmuellr@user-0ce2gjn.cable.mindspring.com) (Read error: 60 (Operation timed out))
  659. # [15:58] <hsivonen> form feeds are almost as bad as CRs
  660. # [15:58] * Joins: pmuellr (n=pmuellr@user-0ce2gjn.cable.mindspring.com)
  661. # [16:00] * Quits: riven (n=colin@pdpc/supporter/professional/riven) (Read error: 110 (Connection timed out))
  662. # [16:05] <hsivonen> http://www.builderau.com.au/news/soa/Google-Chrome-gets-HTML-video-support/0,339028227,339296704,00.htm
  663. # [16:09] <Lachy> hsivonen, I wouldn't object to the validator issuing warnings about the use of CR or CRLF.
  664. # [16:09] <Lachy> it's unfortunate, though, that nothing you do could ever lead to CR being abolished entirely :-(
  665. # [16:10] <jgraham> Lachy: Windows users wouldn't like that
  666. # [16:11] <Lachy> jgraham, only Notepad users would have serious problems with it. But they have bigger issues to worry about anyway.
  667. # [16:11] <hsivonen> Lachy: yeah, it's unfortunate :-(
  668. # [16:12] <hsivonen> to make speculative parsing work sanely, the only solution I've come up with makes CR slower than LF
  669. # [16:12] <jgraham> Also, "Consider use cases" doesn't convey the spirit of "pave the cowpaths" at all
  670. # [16:12] <Lachy> I wonder what it would take to get Microsoft to start migrating to the use of LF only
  671. # [16:12] <Lachy> jgraham, yes it does, since pave the cowpaths is entirely about use cases
  672. # [16:13] <Lachy> well, at least, it's meant to be
  673. # [16:13] <jgraham> Lachy: No it's about solutions
  674. # [16:13] <Lachy> no it's not!
  675. # [16:13] <jgraham> It is.
  676. # [16:13] <hsivonen> hmm. I think I'm not going to support speculative parsing and coercion into XML infoset in the same parser instance
  677. # [16:14] * Quits: nessy (n=nessy@124.168.245.234) ("This computer has gone to sleep")
  678. # [16:14] <jgraham> Lachy: There should probably be a principle like "Work from use cases" but it doesn't mean anything like "pave the cowpaths"
  679. # [16:14] <othermaciej> I agree with jgraham
  680. # [16:14] <othermaciej> "Work from use cases" should be a principle
  681. # [16:15] <othermaciej> "solve real problems" is meant to convey that idea but its title is needlessly confrontational
  682. # [16:15] <Lachy> jgraham, it's about looking at what authors are trying to do and providing solutions, possibly based on the existing solution, or providing a better solution
  683. # [16:15] <othermaciej> "pave the cowpaths" is all about "if authors do X a lot in markup, then it's probably a good idea to enable that, or something close to it, as a feature"
  684. # [16:15] <Lachy> othermaciej, that's not what it's meant to be.
  685. # [16:15] <othermaciej> "as opposed to making up a wildly different solution to the same thing"
  686. # [16:16] <othermaciej> well, I put it in the Design Principles document, back when it was a wiki page
  687. # [16:16] <jgraham> Lachy: That is part of it but "pave the cowpaths" implies that common practice should be given more consideration than it would if it was not in common practice
  688. # [16:16] <othermaciej> I would like to think I knew what I was saying
  689. # [16:16] <othermaciej> it's inspired by the microformats principle of the same name
  690. # [16:16] <jgraham> e.g. we would never invent <br/> if it wasn't already common practice but since authors want to do it, we allow it
  691. # [16:17] <Lachy> yeah, and I remember tantek coming in here once and insisting that cowpaths was about use cases, and that that's how it's applied to microformats
  692. # [16:18] <othermaciej> microformats wiki says:
  693. # [16:18] <othermaciej> "Remember, we're paving the cowpaths- before you do that you have to find the cowpaths. Your examples should be a collection of real world sites and pages which are publishing the kind of data you wish to structure with a microformat. From those pages and sites, you should extract markup examples and the schemas implied therein, and provide analysis."
  694. # [16:18] <jgraham> Lachy: It is about use cases in the sense that a cow path must be something that people want to do
  695. # [16:18] <jgraham> and already do do
  696. # [16:18] <Lachy> http://krijnhoetmer.nl/irc-logs/whatwg/20070812#l-86
  697. # [16:18] <othermaciej> HTML5 also considers use cases that aren't anything anyone does
  698. # [16:18] <Lachy> jgraham, yes
  699. # [16:18] <othermaciej> those would not be a "cow path"
  700. # [16:18] * Joins: takoratta (n=takoratt@p4076-ipbf6604marunouchi.tokyo.ocn.ne.jp)
  701. # [16:19] <annevk2> http://microformats.org/wiki/process#Document_Current_Behavior
  702. # [16:19] <othermaciej> (or rather, aren't anything anyone does, because you can't yet)
  703. # [16:19] <jgraham> Lachy: But it explicitly favours adopting solutions that are close to the de-facto solutions even if they are not the ones that you would design with a clean-slate approach
  704. # [16:20] <othermaciej> anyway, I would be happy to remove the exact phrase "pave the cowpaths" if only so I never have to hear accessibility enthusiasts argue that some markup feature is or isn't a cowpath
  705. # [16:20] <Lachy> jgraham, to the extent that the existing solutions are not significantly problematic, yes.
  706. # [16:21] <othermaciej> but I think the idea should be captured
  707. # [16:21] <othermaciej> and it's not the same as "work from use cases"
  708. # [16:21] <jgraham> Lachy: Of course. "Favours" is not absolute. It is, as always, a trade off
  709. # [16:22] <jgraham> othermaciej: I agree that e should remove the phrase "pave the cowpaths". Whilst it seems intuitive to me what it implied by such a principle it seems like it creates a great deal of confusion
  710. # [16:22] <jgraham> Maybe it should be captured by a principle like "Support common practice" or something
  711. # [16:23] <Lachy> How about "Analyse Existing Practices"
  712. # [16:23] <Lachy> or what jgraham suggested
  713. # [16:23] <jgraham> I was just about to suggest "investigate existing practice"
  714. # [16:24] <jgraham> :)
  715. # [16:24] <Lachy> either of those work
  716. # [16:26] <jgraham> Maybe with the principle saying something like "[...] where the existing solution does not have significant drawbacks consider adopting it rather than forbidding it or creating something new"
  717. # [16:27] <Lachy> that's close to Don't Reinvent the Wheel
  718. # [16:28] <jgraham> Lachy: You would need more text at the start to explain that you have to investigate the ways that things are already being done
  719. # [16:29] <jgraham> (my main point was that an explicit disclaimer that solutions with big problems should not be adopted wholesale)
  720. # [16:29] <Lachy> ok
  721. # [16:33] * Quits: zdobersek (n=zan@cpe-92-37-77-80.dynamic.amis.net) (Read error: 110 (Connection timed out))
  722. # [16:34] * Joins: zdobersek (n=zan@cpe-92-37-68-126.dynamic.amis.net)
  723. # [16:36] * Joins: mgrdcm (n=mgrdcm@65.111.247.194)
  724. # [16:37] <Lachy> Something like this might work as part of the description "Investigate existing, de-facto solutions to problems and evaluate them in regards to the use cases being addressed. Consider either adopting or developing solutions based on the existing practices."
  725. # [16:38] <Lachy> (in addition to something like what jgraham suggested)
  726. # [16:39] * Joins: zdobersek1 (n=zan@cpe-92-37-76-218.dynamic.amis.net)
  727. # [16:41] <annevk2> Don't Reinvent the Wheel is more about impl
  728. # [16:44] <annevk2> so Google does both Theora and H.264
  729. # [16:44] <hsivonen> annevk2: if the story is correct
  730. # [16:45] <hsivonen> annevk2: it doesn't make sense to me, though.
  731. # [16:45] <jgraham> annevk2: pointer?
  732. # [16:45] <annevk2> see inbox
  733. # [16:45] <jgraham> Oh, interesting
  734. # [16:46] <jgraham> It makes no sense to me either
  735. # [16:46] <annevk2> http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2009-May/019992.html
  736. # [16:46] <annevk2> no sense how?
  737. # [16:47] * Joins: mpt (n=mpt@canonical/launchpad/mpt)
  738. # [16:47] <Lachy> annevk2, don't reinvent the wheel isn't about reusing implementations. It's about reusing existing solutions if they work
  739. # [16:47] <hsivonen> annevk2: if they don't think Theora is the kind of risk that Apple and Nokia claim, why not ship Theora only and switch YouTube to Theora?
  740. # [16:48] <annevk2> Lachy, I didn't say that
  741. # [16:48] <Lachy> then I don't understand what you meant by "Don't Reinvent the Wheel is more about impl"
  742. # [16:49] <jgraham> hsivonen: Possibly because H.264 would have better quality/bandwidth so they would save bandwidth costs exceeding the cost of licensing H.264
  743. # [16:49] <Philip`> hsivonen: Because it's lower quality and rarely used and doesn't have hardware support, perhaps?
  744. # [16:49] <annevk2> and then they'd need three versions of each video
  745. # [16:49] <annevk2> well, two, I guess
  746. # [16:49] <jgraham> hsivonen: Although it still requires that they ship a H.264 implementation with chrome
  747. # [16:49] <hsivonen> Philip`: rarely used would not apply if YouTube switched :-)
  748. # [16:49] <jgraham> annevk2: That seems like much less of a problem
  749. # [16:50] <Philip`> hsivonen: It would if you count the number of people who are familiar with the process of encoding to Theora :-)
  750. # [16:50] <annevk2> jgraham, hah, they get 20 hours of content every minute
  751. # [16:50] <hsivonen> annevk2: YouTube already has 3 per video: flv, H.264 and .3gp
  752. # [16:50] <annevk2> hsivonen, 3gp? isn't flv just streaming the H.264?
  753. # [16:50] <jgraham> I would be somewhat unsurprised if Youtube offered Theora to theora-only browsers
  754. # [16:51] <hsivonen> annevk2: there's traditional YouTube (flv), there's "HD" (h.264) and there's non-iPhone mobile (3gp)
  755. # [16:51] <hsivonen> 3gp is MPEG-4 Simple Profile in small size
  756. # [16:51] <Philip`> The BBC iPlayer seems to have ten versions of some videos
  757. # [16:51] <annevk2> i thought they were in the process of converting the traditional stuff to h264
  758. # [16:51] <annevk2> but okay, I guess we'll see :)
  759. # [16:52] <hsivonen> annevk2: oh. I don't know about that.
  760. # [16:52] <Philip`> (http://beebhack.wikia.com/wiki/IPlayer_TV#Comparison_Table)
  761. # [16:53] <Lachy> hsivonen, there's actually standard quality, high quality, HD, plus the mobile phone versions
  762. # [16:53] <Philip`> (They probably don't get more than about a minute of video per minute, though)
  763. # [16:53] * Quits: zdobersek (n=zan@cpe-92-37-68-126.dynamic.amis.net) (Read error: 110 (Connection timed out))
  764. # [16:53] <hsivonen> it's amazing that there's enough compute power in the world to encode all those videos
  765. # [16:54] <annevk2> http://twitter.com/circa1977/statuses/1960304218 -- "... HTML will always be XML subset." look, someone is wrong on the internet!
  766. # [16:54] <Lachy> I assume YouTube also keeps the original uploaded videos around too, for any future conversions
  767. # [16:54] <hsivonen> I wonder if they are shipping both in order to demonstrate their ability to jettison h.264 to MPEG-LA
  768. # [16:55] <hsivonen> anyway, very cool that they'll ship theora
  769. # [16:55] <Philip`> hsivonen: It sounds like you seriously underestimate the amount of compute power in the world :-)
  770. # [16:56] * hsivonen wonders what the carbon footprint of YouTube is
  771. # [16:57] <Philip`> hsivonen: If it's 20 hours of video per minute, you only need 1200 machines doing real-time conversion (and I guess you can do better than real-time on modern CPUs), multiplied by however many versions of videos you've got
  772. # [16:57] * Joins: webben (n=benh@nat/yahoo/x-075d27a43b7ad8be)
  773. # [16:57] <annevk2> I guess H.264 won't be done via FFmpeg
  774. # [16:57] <hsivonen> Philip`: re-encoding the back catalog is a lot of minutes
  775. # [16:58] * Quits: takoratta (n=takoratt@p4076-ipbf6604marunouchi.tokyo.ocn.ne.jp) (Read error: 110 (Connection timed out))
  776. # [16:59] <Philip`> hsivonen: I wonder if they only bother converting the relatively popular videos to newer formats
  777. # [16:59] <Philip`> (I guess there are lots of videos that had 12 views a year ago and have never been looked at since)
  778. # [17:01] <jgraham> There are a rather large number of videos that are audio + a static picture (e.g. some copyright-infringing music "videos")
  779. # [17:01] * Philip` would kind of guess that Google has lots of spare CPU capacity since most of its work will be limited by network I/O instead
  780. # [17:01] * Quits: maikmerten (n=merten@ls5dhcp196.cs.uni-dortmund.de) (Remote closed the connection)
  781. # [17:01] <Philip`> though I could be totally wrong
  782. # [17:02] <Philip`> jgraham: It's weird that a video sharing site is the most popular way to share music
  783. # [17:02] * Joins: dglazkov (n=dglazkov@69.181.143.54)
  784. # [17:02] <hsivonen> I wonder if it's possible to recode lazily on demand
  785. # [17:03] <Lachy> Philip`, it's probably because there are no popular social networking sites built around the idea of publishing and listening to audio
  786. # [17:04] * Quits: hdh (n=hdh@58.187.202.243) (Remote closed the connection)
  787. # [17:04] * Quits: Maurice (n=ano@a80-101-46-164.adsl.xs4all.nl) ("Disconnected...")
  788. # [17:05] <Philip`> hsivonen: As in real-time encoding and streaming? That sounds like it'd be entirely incompatible with their usual architecture of serving videos as plain files from caching HTTP servers, so I guess it'd be quite a pain to do
  789. # [17:06] * Joins: myakura (n=myakura@p2062-ipbf4308marunouchi.tokyo.ocn.ne.jp)
  790. # [17:08] <Lachy> I doubt on-demand encoding would work given the number of simultaneous views they get across all their videos.
  791. # [17:08] <Lachy> but they would probably prioritise re-encoding of the back catalogue based on popularity or some other metrics
  792. # [17:08] <Philip`> Lachy: I assume the idea is they could recode the video on demand when somebody first views it, and then save the recoded output to send to any other viewers
  793. # [17:09] <Philip`> which would mean everybody would be able to see the recoded version of every video with no delay, without requiring a giant batch conversion before switching to the new format
  794. # [17:10] * Quits: Madness (n=petal@85.20.140.167) (Read error: 104 (Connection reset by peer))
  795. # [17:12] * Quits: virtuelv (n=virtuelv@pat-tdc.opera.com) ("Ex-Chat")
  796. # [17:13] * Joins: theMadness (n=petal@85.20.140.136)
  797. # [17:13] * Joins: dave_levin (n=dave_lev@72.14.227.1)
  798. # [17:13] <Philip`> Streaming video seem to be the kind of thing that telecom companies care a lot about, so they want to invest in high-bandwidth high-reliability low-latency links and Quality of Service and multicast and all sorts of proprietary protocols and everything, but then consumers don't care about any of that and just download video files over HTTP and wait a few seconds until it's buffered enough to start playing smoothly
  799. # [17:15] <hsivonen> telcos care about QoS a lot more than justified by their customers' willingness to pay for it
  800. # [17:15] * Quits: mpt (n=mpt@canonical/launchpad/mpt) ("Ex-Chat")
  801. # [17:16] * Joins: mpt (n=mpt@canonical/launchpad/mpt)
  802. # [17:19] * Quits: weinig (n=weinig@c-67-180-35-124.hsd1.ca.comcast.net)
  803. # [17:20] * Parts: Mrmil (n=ut_ollie@host-77-236-204-8.blue4.cz)
  804. # [17:23] * Joins: nessy (n=nessy@124-168-245-234.dyn.iinet.net.au)
  805. # [17:23] * Philip` is not yet sure to what extent QoS is a real issue for the internet, and how much is just outdated Bellhead vs Nethead ideas
  806. # [17:25] * Quits: dglazkov (n=dglazkov@69.181.143.54)
  807. # [17:26] * Quits: theMadness (n=petal@85.20.140.136) (Read error: 113 (No route to host))
  808. # [17:26] * Quits: nessy (n=nessy@124-168-245-234.dyn.iinet.net.au) (Client Quit)
  809. # [17:27] * Joins: theMadness (n=petal@85.20.140.161)
  810. # [17:29] <mgrdcm> hsivonen: one reason telcos care about it is to give their own VoIP traffic priority. they care about it within their own networks at least.
  811. # [17:30] * mgrdcm used to work on big telco traffic quality monitoring software
  812. # [17:31] <hsivonen> mgrdcm: my point is that telcos fret about Erland formulas and circuit switching when the casual customer is happy with the Skype level of uncertainty
  813. # [17:32] * Quits: gsnedders (n=gsnedder@host86-164-130-180.range86-164.btcentralplus.com) ("Adios intarwebs.")
  814. # [17:33] * Quits: pesla (n=retep@procurios.xs4all.nl) ("( www.nnscript.com :: NoNameScript 4.21 :: www.esnation.com )")
  815. # [17:34] <mgrdcm> hsivonen: for voice, though, i think customers' expectations of quality are higher when provided by a "phone company", even if it is over IP just like they'd be getting from vonage.
  816. # [17:37] <hsivonen> what does Vonage do for 911 calls?
  817. # [17:38] <ezyang> gsnedders: Houston, we have a problem.
  818. # [17:38] * Philip` 's university switched to VOIP last year, and every few months there are data network outages that cause the phone system to fail for several hours
  819. # [17:39] * ezyang 's university is switching to VOIP, but none of the students use the phones anyway...
  820. # [17:39] * Joins: gsnedders (n=gsnedder@host86-164-130-180.range86-164.btcentralplus.com)
  821. # [17:39] * Quits: pauld_ (n=pauld@194.102.13.2)
  822. # [17:40] <jgraham> Philip`: Very locally that worked nicely for me since you couldn't hear anyone on the analouge phone that was in our office (it was too quiet)
  823. # [17:40] <jgraham> (and had a many-metre extension cable)
  824. # [17:40] <Philip`> (The phone system has actually been *less* reliable than the data network, since my building has a backup link for data but the phone is on a different VLAN that apparently won't work over the backup link)
  825. # [17:41] <jgraham> (so being able to hear people sometimes was overall a worthwhile gain)
  826. # [17:41] * Joins: wakaba (n=wakaba@EM114-51-19-231.pool.e-mobile.ne.jp)
  827. # [17:42] <Philip`> Analogue phones have the advantage that you don't have to wait a minute for them to reboot and acquire an IP address whenever there's a problem or whenever they get unplugged
  828. # [17:43] <Philip`> But when the VOIP phones work, they seem to work fine and they have new features and stuff, so I guess that'd good
  829. # [17:43] * Joins: sayrer (n=chatzill@ip67-152-86-163.z86-152-67.customer.algx.net)
  830. # [17:43] <Philip`> s/'d/'s/
  831. # [17:45] <ezyang> Do you have the feature where you can have voicemail emailed to you as an MP3?
  832. # [17:47] * gsnedders notes that would mean paying the fees to encode an MP3
  833. # [17:47] <Philip`> ezyang: Not sure, but there is a web page where you can listen the voicemail as an .au file or something
  834. # [17:48] <ezyang> Basically the same
  835. # [17:48] <Philip`> (That's actually the only way I know how to listen to voicemail - I'm sure there must be some feature on the phone itself to do that, but I haven't figured it out)
  836. # [17:48] <ezyang> gsnedders: So, you know how we're optimizing tokenizer by globbing as many characters as we can? Well, it's actually kind of important to keep whitespace separated
  837. # [17:48] <Philip`> (But I've only had one voicemail message in the past year, so I haven't cared a lot)
  838. # [17:48] <gsnedders> ezyang: I know
  839. # [17:49] <gsnedders> ezyang: But only when we move in or out of the data state, IIRC
  840. # [17:49] <Philip`> I imagine you don't want to split on whitespace between words inside an element, because that'd hurt performance a lot
  841. # [17:50] <ezyang> Yeah... I'm trying to find which one is causing the test case to fail
  842. # [17:50] * Philip` isn't sure how Python html5lib handles this (if it handles it at all)
  843. # [17:50] <ezyang> But if you have: <!DOCTYPE html><script> <!-- </script> --> </script> EOF
  844. # [17:50] <ezyang> (note space between </script> and EOF)
  845. # [17:50] <gsnedders> Philip`: It only gives WhitespaceCharacters when moving into the data state, IIRC
  846. # [17:50] <ezyang> The whitespace gets placed in <head>, but EOF gets placed in <body>
  847. # [17:51] * gsnedders notes it is quite likely his memory is wrong
  848. # [17:52] <ezyang> Ok, this is definitely data' fault; my fix was just wrong
  849. # [17:54] <ezyang> What does HTML5 define as whitespace?
  850. # [17:54] <gsnedders> We should probably have a constant for that
  851. # [17:54] <gsnedders> but from memory: U+0009, U+000A, U+000C, U+000D, U+0020
  852. # [17:55] <hsivonen> gsnedders: yes
  853. # [17:55] <ezyang> Hmm. U+000B isn't one of them?
  854. # [17:55] <gsnedders> Nope.
  855. # [17:55] <ezyang> Ok, so, like, all of our code is wrong :-)
  856. # [17:55] <hsivonen> ezyang: not anymore
  857. # [17:55] <gsnedders> ezyang: Tok doesn't allow it
  858. # [17:55] <ezyang> Ah, that makes sense
  859. # [17:56] <ezyang> So, in TreeConstructer, we've got loads and loads of preg_match('/^[\t\n\x0b\x0c ]+$/'
  860. # [17:56] <ezyang> I should to a global search replace at some point
  861. # [17:56] <ezyang> In favor of a constant
  862. # [17:56] <gsnedders> Ah, in TreeConstructor
  863. # [17:56] <ezyang> Oh yeah, that's bugging me to
  864. # [17:56] <ezyang> We should rename the class
  865. # [17:56] <ezyang> *too
  866. # [17:56] <gsnedders> Also: remove pcre dependancy.
  867. # [17:57] <ezyang> I'll let you do that, since you're the resident expert :-)
  868. # [17:57] <gsnedders> Me!?
  869. # [17:57] <hsivonen> seems like you are using much higher-level constructs in the tokenizer than I am
  870. # [17:57] <gsnedders> hsivonen: This isn't tokenizer there.
  871. # [17:57] * Joins: dglazkov (n=dglazkov@nat/google/x-cc0b3a36c5d25cd4)
  872. # [17:57] <gsnedders> hsivonen: We're about the same level in the tokenizer as Python
  873. # [17:59] <ezyang> gsnedders: InputStream takes care of \r, so I don't need to check for it, right?
  874. # [17:59] <gsnedders> ezyang: What about &#x0d; ?
  875. # [18:00] * Joins: onar_ (n=onar@17.244.69.87)
  876. # [18:00] <ezyang> Oh, yeah, good point
  877. # [18:01] <Philip`> Doesn't &#x0d; get replaced in the tokeniser?
  878. # [18:01] <ezyang> Huh. Fixing that introduced three more fails
  879. # [18:01] <gsnedders> Philip`: dunno
  880. # [18:01] * Quits: webben (n=benh@nat/yahoo/x-075d27a43b7ad8be) (Read error: 110 (Connection timed out))
  881. # [18:01] * Quits: mpt (n=mpt@canonical/launchpad/mpt) (Read error: 113 (No route to host))
  882. # [18:02] <Philip`> http://www.whatwg.org/specs/web-apps/current-work/multipage/syntax.html#tokenizing-character-references says replace 0x0D with U+000A
  883. # [18:02] <gsnedders> Oh well, OK
  884. # [18:02] <gsnedders> ezyang: You don't need to check for it.
  885. # [18:08] <gsnedders> ezyang: Where about are you working atm?
  886. # [18:08] <ezyang> I'm smashing tree builder bugs
  887. # [18:08] <ezyang> As long as TreeBuilderTest.php keeps working, you can do whatever you want to Tokenizer/InputStream
  888. # [18:08] <ezyang> Let me just commit and push my recent changes
  889. # [18:08] <gsnedders> Uh, yeah, I may end up touching TreeBuilderTest :)
  890. # [18:09] <hsivonen> http://en.wikipedia.org/w/index.php?title=HTML_5&diff=293104533&oldid=prev
  891. # [18:09] <ezyang> As long as it keeps working
  892. # [18:09] <ezyang> I'm not really editing that file per se. Just using it.
  893. # [18:10] <ezyang> Question: Why does the </cite> in <b>A<cite>B<div>C</cite>D *not* close the <div>?
  894. # [18:11] <ezyang> <cite> is not mentioned anywhere in the spec, so it should close the div...
  895. # [18:11] <gsnedders> "Please leave your sense of logic at the door, thanks!"
  896. # [18:12] <ezyang> No, this is w.r.t. the spec
  897. # [18:12] <ezyang> AFAICT, the spec mandates that <div> get closed
  898. # [18:12] <ezyang> But the test-case asserts differently
  899. # [18:12] <ezyang> Oh, my algo is wrong. Savvy
  900. # [18:13] <Philip`> "TreeConstructer.php"?!
  901. # [18:13] <gsnedders> Philip`: We didn't decide to call it that!
  902. # [18:14] <ezyang> Yeah, that's what the original was named
  903. # [18:14] <ezyang> and I didn't feel like renaming it without a bunch of tests first
  904. # [18:14] <gsnedders> Where has Jeroen gone? I haven't heard from him in a while
  905. # [18:15] <Philip`> You should rename it before anyone starts relying on it :-)
  906. # [18:15] * Philip` is reminded of http://blogs.msdn.com/oldnewthing/archive/2008/05/19/8518565.aspx
  907. # [18:15] <gsnedders> Philip`: There are uglier things
  908. # [18:15] <ezyang> Philip`: aye-aye, sir
  909. # [18:15] <Philip`> gsnedders: Like the use of PHP?
  910. # [18:15] <gsnedders> Philip`: For example
  911. # [18:16] <Philip`> You really should have written it in Haskell instead
  912. # [18:16] <ezyang> Hahaha
  913. # [18:16] <ezyang> I mean, I'm totaly learning Haskell right now
  914. # [18:16] <ezyang> *totally
  915. # [18:16] <gsnedders> Philip`: Or Referer in HTTP
  916. # [18:16] * gsnedders had learning Haskell on his to-do list for last summer
  917. # [18:16] <gsnedders> I never got to the end of the first item over the summer
  918. # [18:17] <ezyang> Haskell is totally worth skipping the rest of your list for.
  919. # [18:17] <ezyang> Catamorphisms yum!
  920. # [18:18] <gsnedders> So, InputStream tests…
  921. # [18:19] <gsnedders> What do I want to extend for the class?
  922. # [18:19] <Philip`> Python html5lib has a few you could steal, but I'm not sure how useful or appropriate or extensive they are
  923. # [18:19] <ezyang> Hmm... so it looks like foster parented elements don't get active formatting elements applied to them.
  924. # [18:19] <ezyang> Oh wait they do.
  925. # [18:19] <gsnedders> ezyang: I guess not HTML5_TestDataHarness…
  926. # [18:20] <gsnedders> ezyang: UnitTestCase?
  927. # [18:20] <ezyang> Hmm?
  928. # [18:20] <ezyang> Oh yeah, UnitTestCase is what you want
  929. # [18:20] <ezyang> that and $this->assertIdentical() are probably all you need
  930. # [18:20] <ezyang> maybe a setUp() or two
  931. # [18:20] * ezyang does sit ups
  932. # [18:20] * gsnedders hasn't used SimpleTest before
  933. # [18:21] * gsnedders wishes it did code coverage…
  934. # [18:22] <ezyang> Does PHPUnit do code coverage these days?
  935. # [18:22] <gsnedders> Has for ages.
  936. # [18:23] * gsnedders wishes there was a generic code-coverage tool for PHP that worked with any script
  937. # [18:23] <ezyang> YEah, it's called XDebug
  938. # [18:23] <gsnedders> That doesn't create anything nice to look at, just arrays
  939. # [18:24] <ezyang> Well, it's like a really simple PHP script to get some nice output
  940. # [18:24] <ezyang> (just someone has to write it)
  941. # [18:24] * gsnedders doesn't remember it being overly simple
  942. # [18:24] <gsnedders> I started to write something, then realized it was more than I could be bothered to write
  943. # [18:25] <ezyang> Let me bang something out
  944. # [18:27] <gsnedders> Do we want one test per method?
  945. # [18:28] <ezyang> Yep.
  946. # [18:28] <ezyang> Pick expressive method names
  947. # [18:29] * Quits: annevk2 (n=annevk@5ED2D22C.cable.ziggo.nl)
  948. # [18:34] <ezyang> Done
  949. # [18:34] <gsnedders> Done what?
  950. # [18:34] <ezyang> With the highlight script
  951. # [18:34] <gsnedders> ah
  952. # [18:34] <ezyang> Let me stick in GitHub or something
  953. # [18:34] <ezyang> So you can try it out.
  954. # [18:35] <Philip`> Hmm, excellent, new versions of MySQL think width-140 with unsigned smallint width=80 should result in 18446744073709551556
  955. # [18:35] <Philip`> (compared to a much older version that thought it was some crazy like -60)
  956. # [18:37] * Joins: abarth (n=abarth@c-98-210-108-185.hsd1.ca.comcast.net)
  957. # [18:37] <ezyang> Use case is to do the code coverage, and then save it as a .ser file
  958. # [18:37] <ezyang> http://github.com/ezyang/xdebug-highlight/tree/master
  959. # [18:37] <ezyang> I haven't tested it myself
  960. # [18:38] * Quits: sayrer (n=chatzill@ip67-152-86-163.z86-152-67.customer.algx.net) (Read error: 110 (Connection timed out))
  961. # [18:38] * Joins: weinig (n=weinig@17.246.17.241)
  962. # [18:38] * Joins: Maurice (i=copyman@5ED548D4.cable.ziggo.nl)
  963. # [18:39] <gsnedders> ezyang: That doesn't break down into coverage % for functions, etc. :P
  964. # [18:39] <hsivonen> Hixie: how did http://dev.w3.org/html5/spec/Overview.html#declarative-3d-scenes end up in the spec?
  965. # [18:40] <ezyang> Oh, you want that info
  966. # [18:40] <ezyang> Yeah, then I officially don't care.
  967. # [18:40] <ezyang> Port our test-cases to PHPUnit or something
  968. # [18:40] <gsnedders> ezyang: Uh, that implies effort.
  969. # [18:41] <ezyang> You're working on html5lib. Come on, mate.
  970. # [18:41] <gsnedders> :P
  971. # [18:41] <gsnedders> ezyang: "Please leave your sense of logic at the door, thanks!"
  972. # [18:41] <ezyang> Anyway, I'm a SimpleTest dev, so I can fix problems and stuff.
  973. # [18:41] <ezyang> Also, SimpleTest has an experimental code coverage branch
  974. # [18:42] <ezyang> I've never used it though.
  975. # [18:44] <Philip`> hsivonen: There was some discussion about 3d <canvas> years and years ago, and someone mentioned X3D in there, so I guess that's what resulted in it being mentioned in the spec
  976. # [18:45] <Philip`> (Some of the X3D people seem to be misinterpreting it as stating that X3D is the official solution for embedding 3D in HTML5)
  977. # [18:45] <hsivonen> has any browser vendor shown interest in X3D?
  978. # [18:46] <Philip`> No, as far as I'm aware
  979. # [18:46] <hsivonen> Mozilla, Google and Opera have all tried something else
  980. # [18:46] <Philip`> All the current X3D support is just in plugins (or standalone applications), I believe
  981. # [18:47] <Philip`> but various X3D people want more integration with the browser
  982. # [18:47] <Philip`> e.g. linking it directly to the DOM inside an XHTML page, like with SVG
  983. # [18:51] * Joins: pauld (n=pauld@92.40.120.128.sub.mbb.three.co.uk)
  984. # [18:51] <Philip`> (Maybe it could be useful in the same way that having both SVG and 2d <canvas> is useful, since they're appropriate for different situations)
  985. # [18:52] <Philip`> (Alternatively, maybe it could be a waste of effort in the same that having both SVG and 2d <canvas> is a waste of effort, since there's significant overlap)
  986. # [18:53] * Quits: weinig (n=weinig@17.246.17.241)
  987. # [18:56] * Joins: sayrer (n=chatzill@guest-225.mountainview.mozilla.com)
  988. # [18:56] <ezyang> Subtle: if we reconstruct an active formatting element, *that* becomes the foster parent. I wonder where the python implementation special cases this.
  989. # [19:00] <Dashiva> So if you build a paved road, and later a few lonely cows start walking on it... does it even make sense to call it a cowpath?
  990. # [19:02] * Joins: jruderman (n=jruderma@c-98-248-40-206.hsd1.ca.comcast.net)
  991. # [19:03] <Philip`> What if you can't see any cows at all, but the road is covered in cow pats?
  992. # [19:04] <ezyang> Is it a cow if no one sees it?
  993. # [19:04] <Philip`> ezyang: Yes
  994. # [19:06] <Dashiva> Well, I'm just wondering because there seem to be a few people saying "<existing spec feature> is a cowpath because some people use it"
  995. # [19:07] * Joins: maikmerten (n=maikmert@Zbc25.z.pppool.de)
  996. # [19:10] * Joins: bgalbraith (n=bgalbrai@206-80-17-29.static.twtelecom.net)
  997. # [19:12] <gsnedders> Dashiva: But cows are cute!
  998. # [19:12] <gsnedders> We must keep them!
  999. # [19:15] * Joins: abarth_ (n=abarth@c-98-210-108-185.hsd1.ca.comcast.net)
  1000. # [19:16] <Philip`> gsnedders: That's the main reason I use Gentoo
  1001. # [19:16] <Philip`> "emerge moo" prints a nice picture of the mascot, Larry the Cow
  1002. # [19:18] <Dashiva> Philip`: You linked that bytes-to-encoding image again, which reminded me that you were going to make one with a more sensible y axis :)
  1003. # [19:18] <Philip`> Was I?
  1004. # [19:19] <Dashiva> Logarithmic in the percentage of non-working sites, I think
  1005. # [19:19] * Quits: philipj (n=philipj@pat.se.opera.com) (Read error: 110 (Connection timed out))
  1006. # [19:19] <Philip`> You mean like http://philip.html5.org/data/encoding-detection-loglog.svg or something?
  1007. # [19:22] * Joins: jgalvez_ (n=jgalvez@201-68-158-202.dsl.telesp.net.br)
  1008. # [19:22] <Dashiva> Yeah, that
  1009. # [19:23] <Dashiva> I guess I just forgot you had made it :)
  1010. # [19:23] * Joins: mpilgrim_ (n=mark@72.14.229.81)
  1011. # [19:24] * Quits: pauld (n=pauld@92.40.120.128.sub.mbb.three.co.uk) (Read error: 110 (Connection timed out))
  1012. # [19:24] * Joins: pauld (n=pauld@92.40.11.188.sub.mbb.three.co.uk)
  1013. # [19:24] <Philip`> How could you forget? It wasn't even 15 months ago
  1014. # [19:24] * Quits: mpilgrim (n=mark@12.144.179.214) (Read error: 110 (Connection timed out))
  1015. # [19:24] * mpilgrim_ is now known as mpilgrim
  1016. # [19:24] <Philip`> (I suppose I do have the distinct advantage of being able to see the directory listing...)
  1017. # [19:25] <Dashiva> Maybe I assumed you would've linked that one if it existed, even though it's just my personal taste saying it's better
  1018. # [19:25] <Philip`> The other graph does a better job of misrepresenting the data so that 512 bytes looks like a sensible figure to choose
  1019. # [19:26] * Joins: mpilgrim_ (n=mark@67.218.109.164)
  1020. # [19:26] <Dashiva> One thing I've wondered is, does it really make a difference to wait until 1024 bytes?
  1021. # [19:26] <Dashiva> Isn't that usually within the first packet anyhow?
  1022. # [19:26] * Quits: gsnedders (n=gsnedder@host86-164-130-180.range86-164.btcentralplus.com) (Remote closed the connection)
  1023. # [19:26] <Philip`> Usually, but not close to always
  1024. # [19:27] * Joins: slightlyoff (n=slightly@72.14.229.81)
  1025. # [19:27] <Philip`> http://krijnhoetmer.nl/irc-logs/whatwg/20090528#l-1107
  1026. # [19:27] * Joins: gsnedders (n=gsnedder@host86-164-130-180.range86-164.btcentralplus.com)
  1027. # [19:28] * Quits: pauld (n=pauld@92.40.11.188.sub.mbb.three.co.uk) (Client Quit)
  1028. # [19:28] <Philip`> (Packets are usually a bit under 1500 bytes, I think)
  1029. # [19:29] <Dashiva> Hmm, so if the header is 400+ you might run past the first packet
  1030. # [19:29] <gsnedders> ezyang: Right, so I think we basically need to have our own UTF-8 decoder, but we can skip it if we have an up-to-date copy of PCRE with Unicode or a sane iconv, _and_ we have PCRE.
  1031. # [19:29] * Quits: abarth_ (n=abarth@c-98-210-108-185.hsd1.ca.comcast.net) ("Leaving")
  1032. # [19:30] <ezyang> Sounds like it. hsivonen has one
  1033. # [19:30] <gsnedders> I have one too.
  1034. # [19:30] * Joins: philipj (n=philipj@pat.se.opera.com)
  1035. # [19:30] <gsnedders> I have an MIT licensed one, which is more useful for html5lib than hsivonen's
  1036. # [19:30] * Quits: jgalvez (n=jgalvez@201-68-27-149.dsl.telesp.net.br) (Read error: 110 (Connection timed out))
  1037. # [19:31] <Dashiva> My internet connection is too fast for me to be able to care about the difference in one and two packets, I suppose :)
  1038. # [19:33] <gsnedders> ezyang: The only reason we need PCRE always for when we don't need to use our own UTF-8 decoder is what is currently line 130 of inputstream
  1039. # [19:33] * Joins: riven (n=colin@53525B67.cable.casema.nl)
  1040. # [19:33] * Quits: abarth (n=abarth@c-98-210-108-185.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
  1041. # [19:33] <ezyang> I've seen. It's quite an impressive regex you have there.
  1042. # [19:34] <gsnedders> Yeah. It was fun to write. </sarcasm>
  1043. # [19:34] <Philip`> Dashiva: Latency matters more than bandwidth, and I assume your internet connection still suffers from latency when accessing data on the other side of the world
  1044. # [19:34] <Philip`> although I don't how much it actually matters in reality
  1045. # [19:34] <Philip`> because I don't really have any idea how TCP works
  1046. # [19:34] * aroben is now known as aroben|lunch
  1047. # [19:34] <Philip`> (Will it send lots of response packets at once, rather than doing the first and waiting for an ACK?)
  1048. # [19:34] <gsnedders> ezyang: I used to require PCRE with UTF-8 support there, but that says any string containing low surrogates is invalid, which doesn't work when we want to detect them.
  1049. # [19:35] <gsnedders> (It's also cheaper not having to decode it)
  1050. # [19:35] <ezyang> Awesome.
  1051. # [19:35] * Joins: sr0unet (i=a305ff3f@gateway/web/ajax/mibbit.com/x-21cd477331d9d876)
  1052. # [19:35] <Dashiva> Philip`: It will send several, yes
  1053. # [19:36] <Philip`> I guess this has something to do with the default window size
  1054. # [19:36] <sr0unet> Hello.
  1055. # [19:36] <gsnedders> ezyang: (Most of the test case failures I have so far come from using iconv!)
  1056. # [19:36] <Dashiva> Yeah
  1057. # [19:36] <sr0unet> Is this a WPF channel ?
  1058. # [19:36] <gsnedders> s/most/all/
  1059. # [19:36] <Dashiva> That's how far ahead it's willing to go, as I recall
  1060. # [19:36] <Dashiva> sr0unet: What's WPF? Wikipedia foundation?
  1061. # [19:36] <sr0unet> ^^
  1062. # [19:36] <Dashiva> Then no
  1063. # [19:36] <ezyang> As in, we need to emit parse errors and iconv doesn't do that?
  1064. # [19:36] <Philip`> Walrus protection fund?
  1065. # [19:36] <sr0unet> WPF C#
  1066. # [19:36] <gsnedders> ezyang: No
  1067. # [19:37] <gsnedders> ezyang: Replace invalid sequences with U+FFFD
  1068. # [19:37] <Dashiva> This is where HTML happens
  1069. # [19:37] <Philip`> I don't think anyone using an HTML5 parser library is actually going to care about parse errors, so it'd be much easier to not implement them :-)
  1070. # [19:37] <gsnedders> Philip`: But we already have :P
  1071. # [19:38] * Quits: dave_levin (n=dave_lev@72.14.227.1) (Remote closed the connection)
  1072. # [19:38] * Joins: dave_levin (n=dave_lev@72.14.227.1)
  1073. # [19:38] * Philip` should add a no-error mode to Python html5lib so it doesn't have to go through all the bother of tracking line numbers and suchlike
  1074. # [19:41] <ezyang> aha
  1075. # [19:41] <ezyang> Philip`: Actually, people surprisingly do
  1076. # [19:41] * Parts: sr0unet (i=a305ff3f@gateway/web/ajax/mibbit.com/x-21cd477331d9d876)
  1077. # [19:42] * Quits: jruderman (n=jruderma@c-98-248-40-206.hsd1.ca.comcast.net) ("Leaving...")
  1078. # [19:43] * Quits: dbaron (n=dbaron@pool-98-111-140-54.phlapa.fios.verizon.net) ("8403864 bytes have been tenured, next gc will be global.")
  1079. # [19:44] * Quits: mpilgrim (n=mark@72.14.229.81) (Read error: 110 (Connection timed out))
  1080. # [19:51] <gsnedders> Wait, what…
  1081. # [19:51] <gsnedders> DOM Level 2 Events uses "thru"
  1082. # [19:53] <Dashiva> To the Errata-mobile
  1083. # [19:54] * Quits: riven (n=colin@pdpc/supporter/professional/riven) ("Hi, I'm a quit message virus. Please replace your old line with this line and help me take over the world of IRC.")
  1084. # [19:56] <gsnedders> How do you get each member of a NodeList in ECMAScript?
  1085. # [19:56] <gsnedders> My out of practiceness of JS shows
  1086. # [19:57] * Joins: dave_levin_ (n=dave_lev@72.14.227.1)
  1087. # [19:57] * Quits: dave_levin (n=dave_lev@72.14.227.1)
  1088. # [19:57] * dave_levin_ is now known as dave_levin
  1089. # [19:59] * Quits: archtech (n=stanv@83.228.56.37) (No route to host)
  1090. # [19:59] <gsnedders> Can you not set an event handler on DOMActivate?
  1091. # [20:00] <ezyang> Hey, question for y'all: when the spec says 'Process the token using the rules for the "in head" insertion mode.', do they implicitly want me to temporarily add <head> to the top of the stack?
  1092. # [20:00] <Dashiva> gsnedders: .length and iteration?
  1093. # [20:00] <ezyang> This is section 9.2.5.10
  1094. # [20:00] <gsnedders> http://hixie.ch/tests/adhoc/dom/events/DOMActivate/001.html makes it seem you can, but Op 10 fails
  1095. # [20:00] <Dashiva> DOMActivate is part of mutation, isn't it?
  1096. # [20:02] * Quits: myakura (n=myakura@p2062-ipbf4308marunouchi.tokyo.ocn.ne.jp) ("Leaving...")
  1097. # [20:02] <gsnedders> Oh, wait. I realize what I'm doing wrong.
  1098. # [20:04] <gsnedders> Is it bad I more or less permanently have HTML 5 open?
  1099. # [20:04] <ezyang> Hmm, it looks like the spec doesn't actually want that
  1100. # [20:04] <Dashiva> Philip`: What's your comment to being labeled as not part of the whatwg crowd?
  1101. # [20:05] <hsivonen> http://lists.w3.org/Archives/Member/tag/2009May/0084.html
  1102. # [20:07] * Quits: jwalden (n=waldo@c-98-248-40-206.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
  1103. # [20:07] * Dashiva misses being member of a Member so he could read Member mails
  1104. # [20:07] <Philip`> Dashiva: Depends on whether that comment came from a cool person i.e. a WHATWG member, or someone else
  1105. # [20:09] <Dashiva> It was our friend Shelley
  1106. # [20:09] <gsnedders> Does 'a, img[usemap], video[controls], audio[controls], label, input:not([type=hidden]), button, select, textarea, keygen, details, datagrid, bb, menu[type=toolbar]' match all interactive elements?
  1107. # [20:10] * Joins: mlpug (n=mlpug@a88-115-171-214.elisa-laajakaista.fi)
  1108. # [20:12] <ezyang> Ok, I think I see a bug in the test-cases
  1109. # [20:12] <Philip`> Dashiva: Hmm, where was that?
  1110. # [20:12] <ezyang> <head></html><meta><p> should result in <meta> being placed in <body>, since </html> pops us to AFTER_AFTER_BODY
  1111. # [20:13] <ezyang> Oh shoot, I'm in the wrong mode
  1112. # [20:13] <Dashiva> http://lists.w3.org/Archives/Public/public-html/2009May/0537.html
  1113. # [20:13] <ezyang> Oh no, it's the same behavior
  1114. # [20:13] <ezyang> Awesome. I think this is legit. Anyone else want to verify?
  1115. # [20:14] <hsivonen> http://lists.w3.org/Archives/Public/www-tag/2009May/0123.html has interesting bits
  1116. # [20:15] <ezyang> The question is does <head></html> result in AFTER_AFTER_BODY or IN_HEAD mode
  1117. # [20:15] <Philip`> Dashiva: Oh, right
  1118. # [20:16] <hsivonen> ezyang: V.nu may have a bug in that case
  1119. # [20:16] <Dashiva> ezyang: What's the non-legit behavior seen elsewhere?
  1120. # [20:17] <ezyang> The python, V.nu, and test-case think that tihs should result in IN_HEAD
  1121. # [20:17] <ezyang> I think it should be AFTER_AFTER_BODY
  1122. # [20:17] <Dashiva> Okay
  1123. # [20:19] * Quits: Amorphous (i=jan@unaffiliated/amorphous) (Read error: 110 (Connection timed out))
  1124. # [20:20] <Dashiva> So the </html> is "in head", becomes "after head", becomes "in body", becomes "after body", becomes "after after body". Then the <meta> is sent to "in body", and then sent to "in head"
  1125. # [20:21] <ezyang> Dashiva: yep.
  1126. # [20:21] * Joins: Amorphous (i=jan@unaffiliated/amorphous)
  1127. # [20:22] <ezyang> But the "in body" case doesn't push the head_pointer onto the stack, so meta ends up in body, not html
  1128. # [20:22] <Dashiva> But the <meta> ends up in the head
  1129. # [20:22] <ezyang> s/html/head/
  1130. # [20:22] <ezyang> If meta should end up in head, I think we have a spec bug.
  1131. # [20:22] <Dashiva> Oh, you mean in the code?
  1132. # [20:22] <ezyang> The Python/V.nu code puts it in the head. I think spec puts it in body.
  1133. # [20:22] <Dashiva> Not that I can see
  1134. # [20:23] <ezyang> It's subtle. When you're "in body", it passes it on to "in head"
  1135. # [20:23] <Dashiva> Here's how I see it in the spec: You start in "after after body". You follow the step "anything else" which sends you to "in body"
  1136. # [20:23] <Dashiva> There you follow A start tag token whose tag name is one of: "base", "command", "link", "meta" ... which takes you to "in head"
  1137. # [20:23] <ezyang> But the top of the stack is still <body>, not <head>
  1138. # [20:23] <ezyang> yep and yep
  1139. # [20:23] <Dashiva> Ah, I see what you mean
  1140. # [20:23] <ezyang> We are in agreement.
  1141. # [20:23] * Quits: bgalbraith (n=bgalbrai@206-80-17-29.static.twtelecom.net)
  1142. # [20:24] <hsivonen> ezyang: at some point, the spec said that </body> and </html> were ignored in head
  1143. # [20:24] <ezyang> Yep.
  1144. # [20:25] <ezyang> So, assuming that the spec change is correct, this test-case needs to change
  1145. # [20:25] <hsivonen> yes
  1146. # [20:25] * Joins: bgalbraith (n=bgalbrai@206-80-17-29.static.twtelecom.net)
  1147. # [20:26] <ezyang> Ok, will do.
  1148. # [20:26] <ezyang> I'll also patch the Python implementation for free :-)
  1149. # [20:26] <Dashiva> But the intent is still that <meta> should always end up in head, isn't it?
  1150. # [20:27] <Dashiva> That is, it's a spec bug too
  1151. # [20:27] <ezyang> Well, we have test-cases that very specifically say <meta> should end up in <body>
  1152. # [20:27] <Dashiva> Oh
  1153. # [20:27] <Dashiva> Microdata, of course
  1154. # [20:27] <Dashiva> I had things mixed up
  1155. # [20:28] * Quits: sayrer (n=chatzill@guest-225.mountainview.mozilla.com) (Read error: 110 (Connection timed out))
  1156. # [20:29] <hsivonen> Dashiva: it predates microdata. IE and Opera compat
  1157. # [20:29] <hsivonen> the parsing spec was *not* changed for microdata
  1158. # [20:29] * hsivonen waves to log readers
  1159. # [20:29] * Quits: mpilgrim_ (n=mark@67.218.109.164) (Read error: 110 (Connection timed out))
  1160. # [20:29] <Dashiva> But remembering microdata told me which way is the intended one :)
  1161. # [20:30] <ezyang> Browsers are... special.
  1162. # [20:30] <ezyang> Yup yup
  1163. # [20:30] <Dashiva> hsivonen: It's a bit worrisome if anyone were to take anything I say as reasonable
  1164. # [20:30] * jgraham wonders if Philip` has a clever way of making parseerrorless html5lib significantly faster whilst still allowing the possibility of reporting parse errors
  1165. # [20:31] * gsnedders notes the perf. hit was fairly low even in PHP
  1166. # [20:31] <Dashiva> jgraham: Would it be parseerrorless if it had that capability?
  1167. # [20:31] <Philip`> jgraham: Depends on whether 5% counts as significant
  1168. # [20:31] <hsivonen> jgalvez_: does python compile away empty methods that could be filled in by a subclass but aren't at the time of execution?
  1169. # [20:32] <gsnedders> Does 'a, img[usemap], video[controls], audio[controls], label, input:not([type=hidden]), button, select, textarea, keygen, details, datagrid, bb, menu[type=toolbar]' match all interactive elements?
  1170. # [20:32] <ezyang> "two-heads-are-not-better-than-one" HAHAHA
  1171. # [20:32] <hsivonen> s/jgalvez_/jgraham/
  1172. # [20:32] <jgraham> hsivonen: Assuming you meant me, no idea but I doubt it
  1173. # [20:33] <jgraham> Philip`: How?
  1174. # [20:33] * Quits: shepazu (n=schepers@c-71-202-124-114.hsd1.ca.comcast.net)
  1175. # [20:34] <hsivonen> jgraham: I'm refactoring code assuming that HotSpot does that
  1176. # [20:34] <Dashiva> hsivonen: So tag is getting involved in the RDFa side of things?
  1177. # [20:34] <jgraham> ezyang: Ah, the delicate touch of mpilgrim
  1178. # [20:34] <Philip`> jgraham: By not bothering to keep track of line numbers
  1179. # [20:34] <hsivonen> Dashiva: looks like it might
  1180. # [20:34] <Philip`> jgraham: (I think it saved roughly that much when I last checked)
  1181. # [20:35] <jgraham> Philip`: So just an if (parse_errors): calculate_line_numbers type thing
  1182. # [20:35] <Philip`> jgraham: Something like that
  1183. # [20:35] <jgraham> It would be nice to cut all the method calls to parseError()
  1184. # [20:35] <jgraham> But that is harder I guess
  1185. # [20:36] <Dashiva> At least the talk seemed rather calm and reasonable
  1186. # [20:36] <ezyang> jgraham: Ah, so this is mpilgrim's baby :-)
  1187. # [20:36] <Dashiva> No flaming rhetoric from the get-go :)
  1188. # [20:36] * Joins: jgalvez (n=jgalvez@201-68-145-207.dsl.telesp.net.br)
  1189. # [20:36] <jgraham> ezyang: mpilgrim tried making a html5lib based validator
  1190. # [20:36] * ezyang .oO{ghetto}
  1191. # [20:36] <jgraham> Which never really went anywhere
  1192. # [20:36] <ezyang> Ah.
  1193. # [20:37] <ezyang> So, sorta like V.nu, except vapourware?
  1194. # [20:37] <jgraham> ezyang: sort of
  1195. # [20:37] * Joins: riven (n=colin@53525B67.cable.casema.nl)
  1196. # [20:38] <Philip`> ezyang: Not really, since there wasn't any vapour
  1197. # [20:38] <Philip`> Just some code that checked a few conformance requirements
  1198. # [20:38] <ezyang> Aha.
  1199. # [20:39] <ezyang> (in other news, test-case fix pushed. Rubyistas and Javaistas, fix yer code!)
  1200. # [20:39] <ezyang> Maybe I should fix the ruby impl too.
  1201. # [20:41] <gsnedders> When was DOM 3 XPath support added to browsers?
  1202. # [20:42] * Joins: jwalden (n=waldo@corp-241.mountainview.mozilla.com)
  1203. # [20:44] * aroben|lunch is now known as aroben
  1204. # [20:44] * Quits: jgalvez_ (n=jgalvez@201-68-158-202.dsl.telesp.net.br) (Read error: 110 (Connection timed out))
  1205. # [20:45] * Quits: bgalbraith (n=bgalbrai@206-80-17-29.static.twtelecom.net)
  1206. # [20:48] * Joins: bgalbraith (n=bgalbrai@206-80-17-29.static.twtelecom.net)
  1207. # [20:50] <hsivonen> gsnedders: March 2002
  1208. # [20:51] <hsivonen> gsnedders: http://bonsai.mozilla.org/cvslog.cgi?file=mozilla/dom/public/idl/xpath/nsIDOMXPathEvaluator.idl&rev=HEAD&mark=1.3
  1209. # [20:51] <hsivonen> dunno about other code bases
  1210. # [20:51] <ezyang> Ugh, fixing the ruby impl increased the fail count by two
  1211. # [21:00] <hsivonen> http://twitter.com/jdowdell/status/1961148437
  1212. # [21:01] <ezyang> Is there any particular reason there's a smattering of test-cases that have error messages like "Unexpected end tag (). Ignored."?
  1213. # [21:02] <ezyang> (four, specifically)
  1214. # [21:06] <jwalden> judging by this channel, jd is an extremely effective troll
  1215. # [21:09] <Hixie> don't confuse people being entertained with people being enraged :-)
  1216. # [21:10] <jwalden> lots of talk for not that much entertainment, to me :-)
  1217. # [21:10] * Quits: jwalden (n=waldo@corp-241.mountainview.mozilla.com) ("lunchy-lunch")
  1218. # [21:10] <ezyang> I'm not poking the ruby implementation any more (although I managed to introduce 10 more failing cases.) >:-(
  1219. # [21:11] * Joins: sayrer (n=chatzill@guest-225.mountainview.mozilla.com)
  1220. # [21:13] * Joins: atwilson (n=atwilson@74.125.59.1)
  1221. # [21:13] * Quits: ZombieLoffe (n=e@unaffiliated/zombieloffe) (Read error: 104 (Connection reset by peer))
  1222. # [21:14] * Joins: ZombieLoffe (n=e@unaffiliated/zombieloffe)
  1223. # [21:14] * Quits: bgalbraith (n=bgalbrai@206-80-17-29.static.twtelecom.net)
  1224. # [21:19] * Quits: philipj (n=philipj@pat.se.opera.com) (Read error: 110 (Connection timed out))
  1225. # [21:27] * Joins: jruderman (n=jruderma@corp-241.mountainview.mozilla.com)
  1226. # [21:28] * Joins: mpilgrim (n=mark@nat/google/x-e2d75153db4c983f)
  1227. # [21:28] * Joins: bgalbraith (n=bgalbrai@206-80-17-29.static.twtelecom.net)
  1228. # [21:30] * Quits: sayrer (n=chatzill@guest-225.mountainview.mozilla.com) (Read error: 110 (Connection timed out))
  1229. # [21:32] * Joins: Wolfman2000 (n=Wolfman2@cpe-065-184-176-090.ec.res.rr.com)
  1230. # [21:32] <Wolfman2000> Morning/afternoon. www.pumpproedits.com <-- I present, the newest member of the HTML5 family.
  1231. # [21:36] * Joins: jwalden (n=waldo@corp-241.mountainview.mozilla.com)
  1232. # [21:37] <ezyang> tests1.dat -> full passes with PHP implementation
  1233. # [21:37] <ezyang> moving on to tests2.dat
  1234. # [21:38] <Wolfman2000> ...testing? What type of testing?
  1235. # [21:39] <ezyang> Woflman2000: the PHP port of html5lib
  1236. # [21:41] <Wolfman2000> Will a python library be required?
  1237. # [21:42] <ezyang> Nope. That's the port of a port.
  1238. # [21:42] <Wolfman2000> ...I'll get clarification on that later
  1239. # [21:42] <ezyang> erm, *point of a port
  1240. # [21:43] <ezyang> (port of a point? port of a sherry? The mystery deepens)
  1241. # [21:43] <gsnedders> What about the side of a port, then?
  1242. # [21:43] <Wolfman2000> I'll rephrase the question
  1243. # [21:44] <Wolfman2000> will a Python port be required?
  1244. # [21:44] <Wolfman2000> to be built
  1245. # [21:44] <ezyang> We already have a Python port
  1246. # [21:45] <Wolfman2000> *nods*
  1247. # [21:45] <ezyang> (I suppose, if the Python impl was first, it's not technically a port...)
  1248. # [21:45] * beowulf has an image of snakes weighing anchor
  1249. # [21:46] * Joins: billmason (n=billmaso@ip147.unival.com)
  1250. # [21:46] <ezyang> We can call it starboard, or something
  1251. # [21:48] <Philip`> We can just call it html5lib
  1252. # [21:48] <Philip`> (All the others are pretenders)
  1253. # [21:49] <ezyang> Ok, another test-case bug (I think)
  1254. # [21:49] * Quits: bgalbraith (n=bgalbrai@206-80-17-29.static.twtelecom.net)
  1255. # [21:50] <ezyang> nvm.
  1256. # [21:51] <mpilgrim> http://www.youtube.com/html5 works in chrome 3.0.182.3
  1257. # [21:51] <Wolfman2000> ...and my copy of Firefox won't work on that
  1258. # [21:52] <Wolfman2000> 3.0.10 for the record
  1259. # [21:52] <mpilgrim> http://commons.wikimedia.org/wiki/Category:Ogg_video works in chrome 3.0.182.3 too
  1260. # [21:52] * Joins: pauld (n=pauld@host86-144-251-8.range86-144.btcentralplus.com)
  1261. # [21:56] <mpilgrim> mark@atlantis:~% mp4creator -list google_main.mp4
  1262. # [21:56] <mpilgrim> Track Type Info
  1263. # [21:56] <mpilgrim> 1 audio MPEG-4 AAC LC, 58.049 secs, 125 kbps, 44100 Hz
  1264. # [21:56] <mpilgrim> 2 video H264 Baseline@2.1, 57.599 secs, 499 kbps, 480x270 @ 29.983159 fps
  1265. # [21:56] <mpilgrim> (google_main.mp4 is the video on http://www.youtube.com/html5 )
  1266. # [21:56] <mpilgrim> wikimedia commons has theora video with vorbis audio in an OGG container
  1267. # [21:58] <Wolfman2000> mpilgrim: the youtube.com/html5 thing is NOT working on Firefox 3.5 beta 4 on Mac OS X
  1268. # [21:58] <Wolfman2000> the video is not playing
  1269. # [21:59] <scherkus> the youtube site uses h264/aac, which as of right now is only supported in chrome 3.0.182.3 and safari 4 beta
  1270. # [21:59] <mpilgrim> i am aware of that
  1271. # [21:59] <Wolfman2000> scherkus: thank you
  1272. # [21:59] <mpilgrim> i'm testing google chrome right now
  1273. # [22:00] <mpilgrim> http://wearehugh.com/public/2006/12/20061225-large.mp4 plays in google chrome 3.0.182.3
  1274. # [22:00] <mpilgrim> stats on that:
  1275. # [22:00] <mpilgrim> Track Type Info
  1276. # [22:00] <mpilgrim> 1 video H264 Main@5.1, 142.842 secs, 751 kbps, 640x480 @ 29.970177 fps
  1277. # [22:00] <mpilgrim> 2 audio MPEG-4 AAC LC, 142.762 secs, 0 kbps, 48000 Hz
  1278. # [22:00] <mpilgrim> so that's H.264 Main Profile video, AAC-LC audio, in an MP4 container
  1279. # [22:01] <mpilgrim> i don't have any H.264 High Profile video handy
  1280. # [22:01] <Wolfman2000> ...wonder when Firefox will support h264/aac then
  1281. # [22:02] <hsivonen> mpilgrim: is the h.264 part open source?
  1282. # [22:02] <Rik|work> btw, openvideo on dailymotion now works in safari 4
  1283. # [22:02] <mpilgrim> i'm assuming it's ffmpeg
  1284. # [22:02] <mpilgrim> as discussed a few days ago
  1285. # [22:03] <hsivonen> Rik|work: with XiphQT
  1286. # [22:03] <hsivonen> mpilgrim: interesting considering licensing
  1287. # [22:03] * mpilgrim wonders if google chrome for mac could bundle XiphQT
  1288. # [22:03] <hsivonen> Rik|work: with XiphQT?
  1289. # [22:03] <Rik|work> hsivonen: no, with mp4
  1290. # [22:03] <mpilgrim> bbiab
  1291. # [22:03] <hsivonen> Rik|work: also interesting
  1292. # [22:04] <Rik|work> hsivonen: but they're not using <source>, they do browser sniffing
  1293. # [22:04] <ezyang> Ok, this algorithm is confusing me
  1294. # [22:04] <hsivonen> :-(
  1295. # [22:04] <Rik|work> I'm talking with the devs (I'm french) and they answered they have many reasons for not using that
  1296. # [22:04] <ezyang> Otherwise, set node to the previous entry in the stack of open elements and return to step 2." and then "Initialize node to be the current node (the bottommost node of the stack). "
  1297. # [22:04] <Rik|work> one of them was lack of support in a previous firefox beta
  1298. # [22:05] <ezyang> Does the second step mean that we pop nodes node is the current node, or what?
  1299. # [22:05] <ezyang> Or does the spec actually mean I should go to step 3?
  1300. # [22:06] <ezyang> Hmm, looks like I somehow fixed it. Nevermind
  1301. # [22:07] * Joins: Groovy (n=opera@93-103-98-148.dynamic.dsl.t-2.net)
  1302. # [22:09] <Groovy> you noticed google.com stopped being <!doctype html> ?
  1303. # [22:09] <Wolfman2000> I never noticed them using it to begin with.
  1304. # [22:09] <ezyang> Huh. We don't have PLAINTEXT support in our tokenizer. wtf
  1305. # [22:10] * Quits: pauld (n=pauld@host86-144-251-8.range86-144.btcentralplus.com)
  1306. # [22:11] <ezyang> Huh. The spec doesn't handle PLAINTEXT
  1307. # [22:11] <Groovy> Wolfman2000: yea, about from beginning of may to now they went <!doctype html>
  1308. # [22:11] <ezyang> Uhh... Hixie? Any comments?
  1309. # [22:11] <Wolfman2000> ...they must be secretly in bed with Microsoft
  1310. # [22:12] <Wolfman2000> HTML5 doesn't work for IE unless you use javascript to add the elements to the DOM
  1311. # [22:14] * Joins: mpilgrim_ (n=mark@nat/google/x-6381b3b848944ce9)
  1312. # [22:15] <gsnedders> ezyang: It's an optimization.
  1313. # [22:15] <ezyang> Huh?
  1314. # [22:15] <ezyang> Sorry, I don't follow.
  1315. # [22:16] <gsnedders> ezyang: PLAINTEXT state means everything stays in the data state
  1316. # [22:16] <gsnedders> ezyang: We handle it by special casing other content models
  1317. # [22:16] <ezyang> Uhm, no we don't
  1318. # [22:16] <gsnedders> ezyang: Yes we do.
  1319. # [22:16] <gsnedders> ezyang: We do nothing for it. In it, you will never move out of the data state.
  1320. # [22:16] <ezyang> If we did, this test would pass: <table><plaintext><td>
  1321. # [22:17] <ezyang> the tokenizer is happly continuing parsing even after being put in PLAINTEXT content model
  1322. # [22:17] <ezyang> *happily
  1323. # [22:17] <gsnedders> We should be in the data state after it
  1324. # [22:18] <ezyang> Right. And we never check for mode PLAINTEXT
  1325. # [22:18] <gsnedders> We don't need to.
  1326. # [22:18] * Parts: Groovy (n=opera@93-103-98-148.dynamic.dsl.t-2.net)
  1327. # [22:18] <ezyang> REally?
  1328. # [22:18] <gsnedders> Hence we always stay in the data state.
  1329. # [22:18] <gsnedders> ezyang: Look at the spec.
  1330. # [22:18] <gsnedders> ezyang: We only move out of it after checking state is PCDATA, RCDATA or CDATA
  1331. # [22:19] <gsnedders> The tokenizer looks fine to mee.
  1332. # [22:19] <gsnedders> *me
  1333. # [22:20] <ezyang> Oh, well, that's because PLAINTEXT content model is not getting set.
  1334. # [22:20] <gsnedders> :D
  1335. # [22:20] * Quits: jruderman (n=jruderma@corp-241.mountainview.mozilla.com) ("Leaving...")
  1336. # [22:20] <gsnedders> See, the code I've been working on works. :P
  1337. # [22:21] <ezyang> Yep.
  1338. # [22:21] <ezyang> You're right
  1339. # [22:21] <gsnedders> Of course.
  1340. # [22:22] * Quits: mpilgrim (n=mark@nat/google/x-e2d75153db4c983f) (Read error: 110 (Connection timed out))
  1341. # [22:22] * Quits: maikmerten (n=maikmert@Zbc25.z.pppool.de) (Read error: 60 (Operation timed out))
  1342. # [22:23] * Joins: maikmerten (n=maikmert@Z9a0a.z.pppool.de)
  1343. # [22:23] <ezyang> This return the content model business is obnoxious
  1344. # [22:23] <ezyang> I think I'm going to refactor it out.
  1345. # [22:26] * Quits: ROBOd (n=robod@89.122.216.38) ("http://www.robodesign.ro")
  1346. # [22:26] * Quits: ap (n=ap@194.154.88.34)
  1347. # [22:27] * Quits: mpilgrim_ (n=mark@nat/google/x-6381b3b848944ce9) (Read error: 60 (Operation timed out))
  1348. # [22:30] * Joins: weinig (n=weinig@17.203.15.200)
  1349. # [22:32] * Joins: jruderman (n=jruderma@corp-241.mountainview.mozilla.com)
  1350. # [22:34] * Quits: zdobersek1 (n=zan@cpe-92-37-76-218.dynamic.amis.net) ("Leaving.")
  1351. # [22:35] * Joins: riven` (n=colin@53525B67.cable.casema.nl)
  1352. # [22:35] * Quits: riven (n=colin@pdpc/supporter/professional/riven) (Nick collision from services.)
  1353. # [22:35] * riven` is now known as riven
  1354. # [22:36] * Quits: mlpug (n=mlpug@a88-115-171-214.elisa-laajakaista.fi) (Remote closed the connection)
  1355. # [22:42] * Quits: jruderman (n=jruderma@corp-241.mountainview.mozilla.com) ("Leaving...")
  1356. # [22:44] * Joins: wakaba_ (n=wakaba@EM114-51-0-247.pool.e-mobile.ne.jp)
  1357. # [22:45] * Quits: jwalden (n=waldo@corp-241.mountainview.mozilla.com) ("->S")
  1358. # [22:46] * Quits: othermaciej (n=mjs@c-69-181-42-237.hsd1.ca.comcast.net)
  1359. # [22:50] * Quits: pmuellr (n=pmuellr@user-0ce2gjn.cable.mindspring.com)
  1360. # [22:50] <ezyang> Ok, so if I have <p><b></p> <p> does the space get wrapped by <b>?
  1361. # [22:51] <ezyang> I'm leaning towards yes, althought the test case claims it doesn't.
  1362. # [22:51] <ezyang> Also, the Python implementation agrees with me
  1363. # [22:51] <ezyang> So does the Ruby implementation
  1364. # [22:52] <ezyang> (could it be? could ezyang have actually found a real test-case bug?
  1365. # [22:52] * Joins: jwalden (n=waldo@corp-241.mountainview.mozilla.com)
  1366. # [22:53] * Joins: jruderman (n=jruderma@corp-241.mountainview.mozilla.com)
  1367. # [22:54] <ezyang> It could be a spec bug, since what then happens is we stick the <p> inside the <b><i><u> tags, which is not what active formatting elements is supposed to do.
  1368. # [22:55] <ezyang> Any comments?
  1369. # [22:56] <jgraham> ezyang: WDVND?
  1370. # [22:56] <ezyang> come again?
  1371. # [22:57] <jgraham> (What does Validator.nu do?)
  1372. # [22:57] <ezyang> Oh, yeah
  1373. # [22:58] <ezyang> V.nu does the test-case behavior
  1374. # [22:59] <ezyang> I guess I could figure out what they did different.
  1375. # [23:01] * Quits: wakaba (n=wakaba@EM114-51-19-231.pool.e-mobile.ne.jp) (Read error: 110 (Connection timed out))
  1376. # [23:01] <jgraham> ezyang: Henri is generally more up to date than html5lib. Although there is a case with whitespace that he preemptively changed anticipating a spec change that hasn't happened
  1377. # [23:02] <ezyang> Yep, that seems like it.
  1378. # [23:02] <ezyang> hsivonen is not reconstructing active formatting elements when there's whitespace
  1379. # [23:03] * Joins: dimich (n=dimich@c-98-203-230-54.hsd1.wa.comcast.net)
  1380. # [23:03] <ezyang> The spec hasn't changed w.r.t. yet, though
  1381. # [23:04] <ezyang> I thought tokenizing/treebuilding was pretty stable now?
  1382. # [23:08] <ezyang> "Update the tree building tests with frameset-ok, new AAA and (not yet in spec) WebKit-style foster-parenting"
  1383. # [23:08] * Quits: maikmerten (n=maikmert@Z9a0a.z.pppool.de) (Remote closed the connection)
  1384. # [23:08] <hsivonen> if something depends on whitespace in 'in body', it's likely a bug
  1385. # [23:08] <ezyang> So it's the webkit thing again :-)
  1386. # [23:08] * Joins: olliej (n=oliver@17.246.18.201)
  1387. # [23:08] <hsivonen> oh, you meant foster parenting
  1388. # [23:08] <hsivonen> that's deliberate
  1389. # [23:09] <ezyang> So, I understand that the spec may not be at the point that V.nu is
  1390. # [23:09] <ezyang> But having tests that the spec deliberately fails really doesn't help me out, if I'm trying for 0 fails
  1391. # [23:09] <hsivonen> ezyang: when I checked that in, Hixie's IRC statements hinted at spec going that way
  1392. # [23:10] <ezyang> Anyway, it's whitespace "in body"
  1393. # [23:11] <ezyang> Specifically, the difference is V.nu checks if a character token is whitespace, and if it is, doesn't reconstruct active formatting elements
  1394. # [23:11] <hsivonen> ezyang: not while foster parenting?
  1395. # [23:11] <ezyang> Nope.
  1396. # [23:11] <ezyang> No foster parenting at all.
  1397. # [23:11] <ezyang> You changed the test case, however, in commit 535a1040e2df
  1398. # [23:11] <hsivonen> weird
  1399. # [23:12] <ezyang> for which I just posted the summary
  1400. # [23:12] <hsivonen> wait, have the test cases moved to hg?
  1401. # [23:12] <hsivonen> I've been checking in to svn still
  1402. # [23:12] <ezyang> Yes.
  1403. # [23:13] <hsivonen> ouch
  1404. # [23:13] <ezyang> Does Google Code magically transfer it?
  1405. # [23:14] <ezyang> I mean, there's no way to tell if there was an svn repository from Google Code website anymore
  1406. # [23:14] <jgraham> ezyang: Dunno. I had to do the initial migration manually though
  1407. # [23:14] <ezyang> Oh hey, that's the last commit you made, according to mercurial
  1408. # [23:15] <ezyang> (re hsivonen)
  1409. # [23:15] <ezyang> jgraham: aha
  1410. # [23:15] <ezyang> When did the migration occur?
  1411. # [23:15] <hsivonen> ezyang: you'll save a lot of EOF grief if you get my changes from this week from svn
  1412. # [23:16] <ezyang> But I don't even remember where the svn repository *is*
  1413. # [23:16] <hsivonen> I don't either. I'm not on the computer that has my html5lib sandbox
  1414. # [23:17] <ezyang> Anyway, not turning off access to the subversion repos seems... poor.
  1415. # [23:17] <ezyang> I'm not sure how we can easily merge your changes back in.
  1416. # [23:17] <jgraham> ezyang: https://html5lib.googlecode.com/svn/trunk/
  1417. # [23:17] <ezyang> Awesome
  1418. # [23:17] * Joins: sayrer (n=chatzill@guest-225.mountainview.mozilla.com)
  1419. # [23:17] <jgraham> It seems like svn should become read-only
  1420. # [23:19] <jgraham> (I mean ideally, not that it does)
  1421. # [23:19] * Joins: bgalbraith (n=bgalbrai@216.239.45.19)
  1422. # [23:21] * Quits: bgalbraith (n=bgalbrai@216.239.45.19) (Client Quit)
  1423. # [23:21] <ezyang> AWesome, we only lost one commit
  1424. # [23:21] <ezyang> (maybe two, if one of those was in a branch)
  1425. # [23:21] * Joins: archtech (n=stanv@83.228.56.37)
  1426. # [23:22] <ezyang> hsivonen: you can probably take its diff and apply to the new hg repository
  1427. # [23:22] <hsivonen> I haven't committed to branches
  1428. # [23:22] <hsivonen> ezyang: I'll do that when I get to my work computer
  1429. # [23:23] <ezyang> Odd. 1303 has nothing in it
  1430. # [23:23] <ezyang> Great.
  1431. # [23:24] <ezyang> Holy crap that's a big change
  1432. # [23:25] <ezyang> Oh, these are all tokenizer updates
  1433. # [23:25] <ezyang> Hmm... we already pass all of the tests... uh oh
  1434. # [23:25] <ezyang> Anyway, hsivonen, you maintain that Hixie is going to change the spec to follow V.nu behavior?
  1435. # [23:28] <hsivonen> ezyang: I intend to keep pushing Hixie that way :-)
  1436. # [23:28] <Wolfman2000> ...huh. The <header> tag has changed functionality?
  1437. # [23:28] * Wolfman2000 catches up on the blog reading
  1438. # [23:28] <Wolfman2000> ...am I really only allowed to use <header> with <h#>?
  1439. # [23:28] <hsivonen> ezyang: the tokenizer changed to discard tag token if EOF happens inside tag
  1440. # [23:28] <ezyang> Ok. Do you mind if I separate out that test to its own file?
  1441. # [23:28] <ezyang> Aha.
  1442. # [23:29] <hsivonen> ezyang: that would be good
  1443. # [23:29] * Joins: bgalbraith (n=bgalbrai@216.239.45.19)
  1444. # [23:31] * Quits: bgalbraith (n=bgalbrai@216.239.45.19) (Client Quit)
  1445. # [23:33] <jgraham> Wolfman2000: You can only use <hgroup> with <hx> <header> you can use with anything
  1446. # [23:33] <ezyang> Done.
  1447. # [23:33] <ezyang> I should document this somewhere
  1448. # [23:34] <Wolfman2000> ok
  1449. # [23:36] * Joins: mpilgrim (n=mark@nat/google/x-2f23a7c3ec47365b)
  1450. # [23:39] <ezyang> hsivonen: I assume test 44 is another one of those?
  1451. # [23:39] <ezyang> (in tests2.dat)
  1452. # [23:40] <ezyang> This one is <p><b><i><u></p>\n<p>X
  1453. # [23:41] <hsivonen> ezyang: if that one deviates from spec, it's a bug
  1454. # [23:43] <ezyang> It's the same thing (note that in my post \n was meant to be interpreted as an scape)
  1455. # [23:43] * jgraham wonders how to stop hg merge from merging the python3 directory into the python directory
  1456. # [23:43] <ezyang> V.nu doesn't reconstruct active formatting elements on \n; everyone else does
  1457. # [23:43] <hsivonen> ezyang: sounds like a bug in V.nu
  1458. # [23:43] <ezyang> You could ask #mercurial about it
  1459. # [23:43] <ezyang> But... \n is whitespace
  1460. # [23:44] <hsivonen> ezyang: I need to study what code I have written
  1461. # [23:44] <ezyang> ok
  1462. # [23:45] * ezyang thinks "Wow, it's not often I get three reference implementations :-)"
  1463. # [23:47] <ezyang> THIRTY-SIX!
  1464. # [23:47] <ezyang> (failures, that is)
  1465. # [23:48] * Quits: dolske (n=dolske@firefox/developer/dolske)
  1466. # [23:49] * Quits: slightlyoff (n=slightly@72.14.229.81)
  1467. # [23:49] <ezyang> Ok, now I need to implement the fragment algorithm
  1468. # [23:53] * Quits: olliej (n=oliver@17.246.18.201)
  1469. # [23:53] * Joins: slightlyoff (n=slightly@72.14.229.81)
  1470. # [23:56] * Quits: sayrer (n=chatzill@guest-225.mountainview.mozilla.com) (Read error: 110 (Connection timed out))
  1471. # [23:56] * Joins: othermaciej (n=mjs@c-69-181-42-237.hsd1.ca.comcast.net)
  1472. # [23:58] <ezyang> I think that's enough html5lib hacking for today
  1473. # [23:58] <ezyang> Test suites 1-3 are now passing
  1474. # Session Close: Sat May 30 00:00:00 2009

The end :)