/irc-logs / freenode / #whatwg / 2009-11-01 / end

Options:

  1. # Session Start: Sun Nov 01 00:00:00 2009
  2. # Session Ident: #whatwg
  3. # [00:00] * Quits: karlcow (n=karl@nerval.la-grange.net) ("This computer has gone to sleep")
  4. # [00:05] * Joins: archtech (i=stanv@83.228.56.37)
  5. # [00:40] <jgraham> gsnedders: Breifly
  6. # [00:40] <gsnedders> jgraham: I can't remember now.
  7. # [00:40] <jgraham> gsnedders: Oh well in that case it can't be too important
  8. # [00:42] * Quits: fishd_ (n=darin@nat/google/x-jyrqjsyvakotpxep) (Read error: 110 (Connection timed out))
  9. # [00:44] * Quits: gsnedders (n=gsnedder@c83-252-233-130.bredband.comhem.se)
  10. # [00:55] * Joins: yoshu (n=josh@174-18-206-205.tcso.qwest.net)
  11. # [01:07] * Joins: Famic_ (i=titi@vol75-9-82-239-72-190.fbx.proxad.net)
  12. # [01:09] <jptix> hello
  13. # [01:09] <jptix> i'm implementing a browser automation tool that has a quasi-DOM as part of its API
  14. # [01:09] <jptix> my idea is to generate that code from the XHTML and/or HTML5 spec, keeping it easy to maintain
  15. # [01:09] * Quits: Maurice (i=copyman@5ED548D4.cable.ziggo.nl)
  16. # [01:10] <jptix> at the minimum i'll just need a map of { «tag name»: [«attribute», ...], ... }, but also some type info would be nice (e.g. 'disabled' => boolean)
  17. # [01:10] <jptix> any tips on where to start or any code that does something similar already would be greatly appreciated
  18. # [01:11] <webben> jptix: what happens if you need to automate something involving elements/attributes the browser supports that aren't conforming in HTML5?
  19. # [01:12] <jptix> webben: probably add it manually or have the user do browser.attributeValue("some-attribute")
  20. # [01:12] <jptix> s/browser/element
  21. # [01:13] * Quits: yoshu (n=josh@174-18-206-205.tcso.qwest.net)
  22. # [01:13] <jptix> at the moment i'm just playing with the idea.. having at least some part of the code generated from the spec
  23. # [01:14] <jptix> am i heading down the wrong road here?
  24. # [01:15] <webben> it's an interesting idea
  25. # [01:15] <webben> not sure how good an idea it is ;)
  26. # [01:16] <webben> if worst comes to worst you could extract that programmatically from the spec's source, I guess.
  27. # [01:16] <webben> e.g. grab all dl.element instances
  28. # [01:16] * Joins: mitnavn (n=mitnavn@unaffiliated/mitnavn)
  29. # [01:18] <jptix> yes, that's the least appealing approach :)
  30. # [01:20] <jptix> i've been looking at the relaxng files in https://whattf.svn.cvsdude.com/syntax/trunk
  31. # [01:20] <jptix> but wanted to check if anyone here have an opinion
  32. # [01:21] <jptix> not sure if those are kept up to date
  33. # [01:21] <webben> that looks better
  34. # [01:21] <jptix> they seem to be
  35. # [01:23] <webben> jptix: I /think/ those are used by hsivonen's validator, in which case I would assume they're reasonably up-to-date
  36. # [01:24] * Quits: Famic (i=famic@vol75-9-82-239-72-190.fbx.proxad.net) (Read error: 110 (Connection timed out))
  37. # [01:24] * Quits: gratz|home (n=gratz@cpc3-brig15-2-0-cust237.3-3.cable.virginmedia.com) ("Leaving")
  38. # [01:26] * Quits: Steve^ (n=steve@94.197.235.13.threembb.co.uk) (Read error: 60 (Operation timed out))
  39. # [01:26] <webben> jptix: out of interest why a "quasi-dom" rather than a dom?
  40. # [01:27] <jptix> webben: i'm re-implementing an existing API which has a quite large user base
  41. # [01:29] <jptix> so the "quasi" part is mostly about making it fit nicer to the language (ruby)
  42. # [01:29] <jptix> but hopefully it will be more accurate if my approach succeeds :)
  43. # [01:33] * Quits: dglazkov (n=dglazkov@nat/google/x-yeoyrlphutopnwjs)
  44. # [02:08] * Quits: archtech (i=stanv@83.228.56.37)
  45. # [02:11] * Joins: kfish (n=conrad@134.EC0183.cyberhome.ne.jp)
  46. # [02:12] * Joins: yoshu (n=josh@174-18-206-205.tcso.qwest.net)
  47. # [02:15] * Joins: dglazkov (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net)
  48. # [02:18] * Joins: dglazkov_ (n=dglazkov@nat/google/x-oqnuixlcetjpqxkc)
  49. # [02:20] * Quits: dglazkov (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net) (Read error: 60 (Operation timed out))
  50. # [02:20] * dglazkov_ is now known as dglazkov
  51. # [02:20] * Quits: ttepasse (n=ttepas--@p5B01545C.dip.t-dialin.net) ("?Q")
  52. # [02:21] <AryehGregor> Ugh, camelCase property values for image-rendering. Can't we just systematically hyphenize, like CSS things are systematically camelCased when they need to be JS identifiers?
  53. # [02:23] <AryehGregor> Oh, I see, SVG is responsible for introducing zillions of camelCase values for CSS properties? Great.
  54. # [02:24] * Quits: yoshu (n=josh@174-18-206-205.tcso.qwest.net)
  55. # [02:27] * Joins: GarethAdams|Home (n=GarethAd@pdpc/supporter/active/GarethAdams)
  56. # [02:38] * Joins: dglazkov_ (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net)
  57. # [02:40] * Quits: dglazkov_ (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net) (Client Quit)
  58. # [02:49] * Joins: dglazkov_ (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net)
  59. # [02:58] * Quits: dglazkov (n=dglazkov@nat/google/x-oqnuixlcetjpqxkc) (Read error: 110 (Connection timed out))
  60. # [02:58] * dglazkov_ is now known as dglazkov
  61. # [02:59] * Joins: dglazkov_ (n=dglazkov@nat/google/x-ipsdkzhpuaktiyjf)
  62. # [03:05] * Quits: dglazkov (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net) (Read error: 60 (Operation timed out))
  63. # [03:05] * dglazkov_ is now known as dglazkov
  64. # [03:12] * Joins: dglazkov_ (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net)
  65. # [03:14] * Quits: Amorphous (i=jan@unaffiliated/amorphous) (Read error: 113 (No route to host))
  66. # [03:16] * Joins: dglazkov__ (n=dglazkov@nat/google/x-xnzosgvenihzrueh)
  67. # [03:16] * Joins: Amorphous (i=jan@unaffiliated/amorphous)
  68. # [03:20] * Quits: dglazkov (n=dglazkov@nat/google/x-ipsdkzhpuaktiyjf) (Read error: 60 (Operation timed out))
  69. # [03:20] * dglazkov__ is now known as dglazkov
  70. # [03:35] * Quits: dglazkov_ (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
  71. # [03:53] * Joins: JonathanNeal (n=Jonathan@adsl-99-74-52-97.dsl.lsan03.sbcglobal.net)
  72. # [03:54] <JonathanNeal> Hi all!
  73. # [03:55] * Joins: JoePeck (n=JoePeck@cpe-74-69-85-249.rochester.res.rr.com)
  74. # [03:57] * Joins: dglazkov_ (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net)
  75. # [04:00] * JoePeck is now known as JoePeck|ghost
  76. # [04:05] * Joins: dglazkov__ (n=dglazkov@nat/google/x-aaevlxdxpkmpdytw)
  77. # [04:08] * Joins: karlcow (n=karl@nerval.la-grange.net)
  78. # [04:12] * Quits: dglazkov_ (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net) (Read error: 60 (Operation timed out))
  79. # [04:15] * Quits: dglazkov (n=dglazkov@nat/google/x-xnzosgvenihzrueh) (Read error: 110 (Connection timed out))
  80. # [04:15] * dglazkov__ is now known as dglazkov
  81. # [04:17] * Joins: othree (n=othree@admin39.ct.ntust.edu.tw)
  82. # [04:23] * Quits: GarethAdams|Home (n=GarethAd@pdpc/supporter/active/GarethAdams)
  83. # [04:33] * Joins: TabAtkins (n=chatzill@70-139-15-246.lightspeed.rsbgtx.sbcglobal.net)
  84. # [04:34] <TabAtkins> Ah, hacking in HTML and CSS is so relaxing.
  85. # [04:37] <JonathanNeal> Hacking in HTML, of course.
  86. # [04:37] <JonathanNeal> Injecting <plaintext> tags into forums that allow html.
  87. # [04:39] <ment> btw how does html serialization rutine deal with plaintext?
  88. # [04:46] <ment> because "<plaintext>data" gets serialized as "<plaintext>data</plaintext>"
  89. # [05:07] * Joins: abii (n=macbook@rescomp-09-148450.Stanford.EDU)
  90. # [05:08] * JoePeck|ghost is now known as JoePeck
  91. # [05:21] * Joins: nessy (n=Adium@adsl-69-107-93-121.dsl.pltn13.pacbell.net)
  92. # [05:21] * Joins: dglazkov_ (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net)
  93. # [05:26] * Quits: nessy (n=Adium@adsl-69-107-93-121.dsl.pltn13.pacbell.net) ("Leaving.")
  94. # [05:26] * Joins: nessy (n=Adium@adsl-69-107-93-121.dsl.pltn13.pacbell.net)
  95. # [05:32] <ment> hooray
  96. # [05:32] <ment> my html5 parser is finally able to parse it's specification
  97. # [05:33] * Joins: roc (n=roc@121-72-214-66.dsl.telstraclear.net)
  98. # [05:39] * Quits: dglazkov (n=dglazkov@nat/google/x-aaevlxdxpkmpdytw) (Read error: 110 (Connection timed out))
  99. # [05:39] * dglazkov_ is now known as dglazkov
  100. # [05:40] * Quits: nessy (n=Adium@adsl-69-107-93-121.dsl.pltn13.pacbell.net) ("Leaving.")
  101. # [05:47] * Quits: TabAtkins (n=chatzill@70-139-15-246.lightspeed.rsbgtx.sbcglobal.net) (Read error: 110 (Connection timed out))
  102. # [06:29] * Quits: roc (n=roc@121-72-214-66.dsl.telstraclear.net)
  103. # [06:30] * Quits: drry (n=drry@ct91.opt2.point.ne.jp) ("Server Configuration changed; disconnect")
  104. # [06:41] * Quits: dglazkov (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net)
  105. # [07:17] * Joins: drry (n=drry@ct91.opt2.point.ne.jp)
  106. # [07:40] * Quits: dbaron_ (n=dbaron@c-98-234-51-190.hsd1.ca.comcast.net) ("8403864 bytes have been tenured, next gc will be global.")
  107. # [07:51] * Joins: mpilgrim__ (n=mark@rrcs-96-10-240-189.midsouth.biz.rr.com)
  108. # [07:51] * Quits: mpilgrim_ (n=mark@rrcs-96-10-240-189.midsouth.biz.rr.com) (Read error: 104 (Connection reset by peer))
  109. # [08:49] * Joins: roc (n=roc@121-72-214-66.dsl.telstraclear.net)
  110. # [08:50] * Joins: yatil (n=Adium@78.104.102.186)
  111. # [09:05] * Parts: yatil (n=Adium@78.104.102.186)
  112. # [09:10] * Joins: archtech (i=stanv@83.228.56.37)
  113. # [09:14] * lmorchard is now known as lmorchard|away
  114. # [09:21] * Quits: roc (n=roc@121-72-214-66.dsl.telstraclear.net)
  115. # [09:33] * Joins: Maurice (i=copyman@5ED548D4.cable.ziggo.nl)
  116. # [10:20] * Quits: archtech (i=stanv@83.228.56.37)
  117. # [10:32] * Joins: Mathias (n=Mathias@9.96-241-81.adsl-dyn.isp.belgacom.be)
  118. # [10:32] <Mathias> I have an HTML5 markup-related question
  119. # [10:33] <Mathias> If I was to use HTML5 for this page: http://optiekockerman.be/merken, what would be the best way to mark up the list of brands? (Which is basically the only "content" on that page)
  120. # [10:33] <Mathias> Would it be okay to use a secondary <nav> element?
  121. # [10:34] * Joins: yatil (n=Adium@78.104.102.186)
  122. # [10:42] * Joins: gsnedders (n=gsnedder@c83-252-233-86.bredband.comhem.se)
  123. # [10:45] * Joins: archtech (i=stanv@83.228.56.37)
  124. # [10:59] * Quits: archtech (i=stanv@83.228.56.37)
  125. # [11:04] * Joins: GarethAdams|Home (n=GarethAd@pdpc/supporter/active/GarethAdams)
  126. # [11:08] * Quits: shepazu (n=schepers@adsl-227-105-48.rmo.bellsouth.net) (Read error: 110 (Connection timed out))
  127. # [11:22] * Quits: Mathias (n=Mathias@9.96-241-81.adsl-dyn.isp.belgacom.be)
  128. # [11:31] * Quits: gsnedders (n=gsnedder@c83-252-233-86.bredband.comhem.se) (Read error: 104 (Connection reset by peer))
  129. # [11:31] * Joins: gsnedders_ (n=gsnedder@c83-252-233-86.bredband.comhem.se)
  130. # [11:31] * gsnedders_ is now known as gsnedders
  131. # [11:35] <gsnedders> ment: It doesn't really cope with plaintext, but the current whacky behaviour is already done and avoids special casing it
  132. # [11:38] * Quits: abii (n=macbook@rescomp-09-148450.Stanford.EDU)
  133. # [12:13] * Joins: archtech (i=stanv@83.228.56.37)
  134. # [12:24] * Quits: othree (n=othree@admin39.ct.ntust.edu.tw) (Read error: 60 (Operation timed out))
  135. # [12:25] * Joins: othree (n=othree@admin39.ct.ntust.edu.tw)
  136. # [12:33] * Joins: abii (n=macbook@rescomp-09-148450.Stanford.EDU)
  137. # [12:48] <gsnedders> What does "'NoneType' object is unsubscriptable" mean?
  138. # [12:49] <Philip`> x = None; y = x[0]
  139. # [12:50] <gsnedders> When it's throwing on print repr(self.currentToken["name"])?
  140. # [12:50] <Philip`> self.currentToken is None
  141. # [12:50] <gsnedders> Ah, just realized that
  142. # [12:50] * gsnedders facepalms
  143. # [12:50] <Philip`> Don't worry, it's easy to miss when the error message tells you precisely what the error is :-p
  144. # [12:53] * gsnedders finds a fairly major bug in his tokenizer
  145. # [12:55] <jgraham> Philip`: To be fair it would be nicer if it knew what the variable name was
  146. # [13:01] <gsnedders> Where do end tags have their names lowercased?
  147. # [13:01] <gsnedders> (in the tokenizer)
  148. # [13:02] * gsnedders finds a fairly major bug in the test runner
  149. # [13:03] <gsnedders> (we only ever run one test of each test with multiple content model flags)
  150. # [13:03] <gsnedders> Oh well, that's not really relevant any more
  151. # [13:03] <Philip`> gsnedders: Looks like emitCurrentToken lowercases all tag names
  152. # [13:04] <gsnedders> So all tags should go through that? Or everything?
  153. # [13:04] <gsnedders> Currently most doesn't go through that
  154. # [13:05] <Philip`> Looks like all tokens except errors and characters go through that
  155. # [13:06] <gsnedders> Down to 12 test failures…
  156. # [13:09] <gsnedders> Hmm, spec changed with expected result of <xmp>foo</xmp
  157. # [13:10] <Philip`> nonXmlBMPRegexp = re.compile(u'[\x00-,|/|:-@|\\\\[-\\\\^|`|\\\\{-\xb6|\xb8-\xbf|\xd7|\xf7|...')
  158. # [13:11] <Philip`> Am I mistaken, or is that completely bogus?
  159. # [13:12] <Philip`> It's matching characters which are in the range \0 to ',', or '|', or '/', or '|', or ..., or '\', or '\', or in the range '[' to '\', ...
  160. # [13:12] <jgraham> Philip`: Could be
  161. # [13:14] <Philip`> For example, it doesn't match ']'
  162. # [13:15] <Philip`> (whereas it does match '[')
  163. # [13:17] * gsnedders wonders why spec editing stopped on the 27th
  164. # [13:17] <gsnedders> Is there any way to get more on http://html5.org/tools/web-apps-tracker?
  165. # [13:17] * gsnedders guesses the answer is hack the code and ping annevk
  166. # [13:18] <Philip`> gsnedders: Because there were 0 bugs that weren't serious enough to be issues, and therefore the spec was perfect and needed no further editing
  167. # [13:18] <gsnedders> :P
  168. # [13:19] <jgraham> Philip`: Do feel free to fix it btw
  169. # [13:19] <jgraham> Since clearly I am a bozo
  170. # [13:19] <Philip`> I hate how the Google Code issues list intercepts the '/' key to focus the search box
  171. # [13:19] <Philip`> and therefore means I can't do find-in-page like I want to
  172. # [13:19] * Quits: kinetik (n=kinetik@121.98.132.55) (Read error: 60 (Operation timed out))
  173. # [13:20] * Joins: erlehmann (n=erlehman@82.113.106.5)
  174. # [13:21] <jgraham> gsnedders: Issue 96 is irrelevant. The code is never run (it is used to build the incorrect regexp)
  175. # [13:21] <jgraham> It shouldn't block 1.0
  176. # [13:22] <gsnedders> It wasn't going to block anyway :P
  177. # [13:22] <gsnedders> So RAWTEXT and RCDATA now don't have comments?
  178. # [13:23] <jgraham> gsnedders: That's not what you said in the issue tracker :p
  179. # [13:23] <Philip`> jgraham: Might try to fix it some time; just filed an issue for now
  180. # [13:23] <jgraham> gsnedders: I think that is correct
  181. # [13:24] <gsnedders> Priority-High was stuff I wanted to get in, but not block
  182. # [13:25] <jgraham> gsnedders: It was maked Release-1.0
  183. # [13:25] <gsnedders> [u'EndTag', u'xmp', False] — how come that has a False explicitly there?
  184. # [13:26] <jgraham> Philip`: Your regexp doesn't work does it? You need to escape special characters like [ surely?
  185. # [13:26] <gsnedders> OK, so two of these test failures I'm pretty sure are spec bugs
  186. # [13:27] <gsnedders> The rest are tests needing updating
  187. # [13:27] * Quits: abii (n=macbook@rescomp-09-148450.Stanford.EDU)
  188. # [13:29] * daedb| is now known as daedb
  189. # [13:30] <Philip`> jgraham: You only need to escape ']', and '-' if it's not at the start/end of the regexp, and '^' if it's at the start
  190. # [13:31] <Philip`> Oh, and '\' I guess
  191. # [13:33] * Quits: tndH (n=Rob@77.86.43.45) ("ChatZilla 0.9.85-rdmsoft [XULRunner 1.9.0.1/2008072406]")
  192. # [13:33] * Joins: ttepasse (n=ttepas--@p5B017382.dip.t-dialin.net)
  193. # [13:39] * Quits: archtech (i=stanv@83.228.56.37)
  194. # [13:40] * gsnedders has a tokenizer that passes all the test cases now!
  195. # [13:41] <gsnedders> HG: changed python/src/html5lib/html5parser.py
  196. # [13:41] <gsnedders> HG: changed python/src/html5lib/inputstream.py
  197. # [13:41] <gsnedders> HG: changed python/src/html5lib/tokenizer.py
  198. # [13:41] <gsnedders> HG: changed python/tests/test_tokenizer.py
  199. # [13:41] <gsnedders> HG: changed testdata/tokenizer/contentModelFlags.test
  200. # [13:41] <gsnedders> HG: changed testdata/tokenizer/escapeFlag.test
  201. # [13:41] <gsnedders> HG: changed testdata/tokenizer/test3.test
  202. # [13:41] <gsnedders> Small commit.
  203. # [13:41] <gsnedders> (There are still two test failures, actually, but they're spec bug)
  204. # [13:45] <gsnedders> Oh, woops, html5parser shouldn't be in that commit
  205. # [13:48] <jgraham> Does anyone have a favourite way to set the idness of the "id" attribute
  206. # [13:48] <gsnedders> DOCTYPEs!
  207. # [13:48] * jgraham thinks DOM3 Element.setIdAttribute might be the way forward
  208. # [13:48] * Parts: yatil (n=Adium@78.104.102.186)
  209. # [13:49] <jgraham> gsnedders: Yeah but injecting false doctypes is bad if we want to preserve the fact that documents with no doctype have no doctype
  210. # [13:49] * gsnedders notes that doesn't help minidom
  211. # [13:49] <jgraham> gsnedders: I think it does
  212. # [13:50] <jgraham> Oh.
  213. # [13:50] <jgraham> It only works if the element already has an attribute with the name "id"
  214. # [13:51] <gsnedders> WHAT!?
  215. # [13:51] <jgraham> Well that is out then
  216. # [13:51] <gsnedders> DOM--
  217. # [13:51] <jgraham> s/with the name id/with the name you are trying to set as the id attribute name/
  218. # [13:52] <jgraham> gsnedders: Well if sort of makes sense if you don;t think there should be hidden state
  219. # [13:52] * Quits: mitnavn (n=mitnavn@unaffiliated/mitnavn) (Read error: 104 (Connection reset by peer))
  220. # [13:52] <jgraham> Sadly, what we want right now is hidden state :(
  221. # [13:53] * Quits: riven (n=colin@pdpc/supporter/professional/riven) (Read error: 131 (Connection reset by peer))
  222. # [13:53] * Joins: riven (n=colin@53518387.cable.casema.nl)
  223. # [13:55] <gsnedders> Where does setIdAttribute come from?
  224. # [13:55] <gsnedders> Ah, it is in core
  225. # [13:56] <gsnedders> I guess all we can do is loop over all elements with @id and set setIdAttribute
  226. # [13:56] <gsnedders> Or, more likely, do it when creating the element with attributes
  227. # [13:57] * Joins: svl (n=me@ip565744a7.direct-adsl.nl)
  228. # [13:59] <jgraham> gsnedders: That is worse than the current behaviour
  229. # [13:59] <gsnedders> jgraham: How so?
  230. # [13:59] <jgraham> Because it leads to surprisin, hard to predict, bugs rather than obvious "this doesn't work at all" bugs
  231. # [13:59] <gsnedders> jgraham: Why?
  232. # [14:00] <jgraham> Speifically if someone adds a node to the document after thay have parsed it then it won't have the idness set right
  233. # [14:00] <jgraham> Or if they add an id attribute to an existing element
  234. # [14:00] <gsnedders> Gah. Yeah.
  235. # [14:01] <gsnedders> then dtd is the only option.
  236. # [14:01] <gsnedders> (w00t)
  237. # [14:01] <jgraham> Yes but it will cause everything to get a DTD when serialized even if it didn't start with one
  238. # [14:02] * Joins: mitnavn (n=mitnavn@unaffiliated/mitnavn)
  239. # [14:02] <gsnedders> Yeah.
  240. # [14:02] <gsnedders> Can we parse with a DTD then replace the DTD via removeChild and document.implementation.createDocumentType and appendChild?
  241. # [14:03] <jgraham> I previously thouht I couldn't dislike DOM more. Now I realise that that was a mee mild distate compared to my current loathing
  242. # [14:03] <jgraham> *mere
  243. # [14:03] <jgraham> *distaste
  244. # [14:04] <jgraham> gsnedders: I have no idea if that will work or do something surprising
  245. # [14:04] <gsnedders> jgraham: Nor do I
  246. # [14:04] <gsnedders> jgraham: Can you think of any other fix?
  247. # [14:04] <jgraham> I suspect any new elements created will not get the idness set
  248. # [14:06] <jgraham> There is a fixed list of doctypes that trigger quirks mode, right?
  249. # [14:06] <gsnedders> No
  250. # [14:06] <gsnedders> It's a list of stuff that if it starts with x…
  251. # [14:06] <gsnedders> RTFS :P
  252. # [14:07] <jgraham> I am but it's slow :(
  253. # [14:10] <jgraham> And makes my computer very hot :(
  254. # [14:12] <jgraham> Anyway we could invent a new quirks-mode doctype and teach our serializer to strip it out
  255. # [14:13] <jgraham> It seems very ugly though :(
  256. # [14:13] <gsnedders> But then how do deal when there are DOCTYPEs in the document?
  257. # [14:13] <gsnedders> How do we get them to round trip?
  258. # [14:13] <jgraham> I thought we could edit them now?
  259. # [14:13] <jgraham> Oh I see
  260. # [14:13] <jgraham> Erm.
  261. # [14:13] <gsnedders> You can only have one DOCTYPE in a document.
  262. # [14:13] <jgraham> Yeah I know
  263. # [14:14] <gsnedders> I guess we could add in the internal subset idness
  264. # [14:14] <jgraham> Indeed
  265. # [14:14] <jgraham> The only quetion is what happens on serialization
  266. # [14:14] <gsnedders> Oh man, this is ugly.
  267. # [14:14] <gsnedders> The seriailizer ignores any internal subset
  268. # [14:14] <jgraham> our serializer would be fine
  269. # [14:15] <jgraham> gsnedders: I suggest we try your approach for the no-doctype case first to see if it works
  270. # [14:15] <gsnedders> Which? Adding doctype and removing it?
  271. # [14:15] <jgraham> gsnedders: yeah
  272. # [14:15] <gsnedders> I'd try that for both cases.
  273. # [14:15] <jgraham> I doubt it will work but you never know
  274. # [14:15] <gsnedders> (But I won't actually, so you do it)
  275. # [14:16] <gsnedders> impl dependant, I bet :P
  276. # [14:16] <gsnedders> Should I push the new tokenizer and break the parser as a whole or just wait for an even bigger push and merge?
  277. # [14:21] <jgraham> in what way break?
  278. # [14:22] <gsnedders> The parser changes content model flag, and that doesn't exist any more.
  279. # [14:22] <gsnedders> So loads parses wrong.
  280. # [14:27] <gsnedders> Also a fair amount of script related changeds
  281. # [14:27] <gsnedders> *changes
  282. # [14:27] <gsnedders> The simple stuff that can be fixed has got us down to 560 test failures
  283. # [14:28] <gsnedders> (five tree builders)
  284. # [14:28] <gsnedders> So 56 test failures
  285. # [14:31] <gsnedders> Quite a lot of broken tests due to no longer having comments
  286. # [14:32] <jgraham> gsnedders: Don't push yet
  287. # [14:33] <gsnedders> What's expected of <script> <!-- </script> --> </script>x now?
  288. # [14:35] * Quits: svl (n=me@ip565744a7.direct-adsl.nl) ("And back he spurred like a madman, shrieking a curse to the sky.")
  289. # [14:35] * Joins: ttepass- (n=ttepas--@p5B017391.dip.t-dialin.net)
  290. # [14:35] <gsnedders> A script whose content is " <!-- " right?
  291. # [14:49] * Quits: ttepass- (n=ttepas--@p5B017391.dip.t-dialin.net) (Read error: 60 (Operation timed out))
  292. # [14:49] * Joins: ttepass- (n=ttepas--@p5B015AAF.dip.t-dialin.net)
  293. # [14:50] * Quits: ttepasse (n=ttepas--@p5B017382.dip.t-dialin.net) (Read error: 110 (Connection timed out))
  294. # [14:53] * Quits: kfish (n=conrad@134.EC0183.cyberhome.ne.jp) (Read error: 60 (Operation timed out))
  295. # [14:55] * Joins: fishd_ (n=darin@c-98-207-16-168.hsd1.ca.comcast.net)
  296. # [15:03] * Quits: cedricv (n=cedric@124.197.87.38)
  297. # [15:14] * gsnedders notes buying stuff from a Swedish website when you can't understand the checkout system is hard
  298. # [15:18] <gsnedders> Oh, wait, I don't have a personnummer so I can't buy anything.
  299. # [15:18] <gsnedders> Actuallh, no.
  300. # [15:19] <gsnedders> This is weird.
  301. # [15:20] <gsnedders> Huh.
  302. # [15:20] <gsnedders> Now it didn't ask me for my card details.
  303. # [15:21] <gsnedders> Oh, now it asks for them after you have placed your order, and your order is on hold until you pay.
  304. # [15:21] <gsnedders> Wow. wierd.
  305. # [15:22] <gsnedders> And now my card is refused. Oh dear.
  306. # [15:23] * gsnedders gives up
  307. # [15:23] * Joins: ROBOd (n=robod@89.122.216.38)
  308. # [15:24] * Joins: kinetik (n=kinetik@121.98.132.55)
  309. # [15:26] * Quits: othermaciej (n=mjs@c-69-181-42-237.hsd1.ca.comcast.net)
  310. # [15:45] * Quits: fishd_ (n=darin@c-98-207-16-168.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
  311. # [15:52] * Joins: TabAtkins (n=chatzill@38.114.210.37)
  312. # [15:52] * Joins: JoePeck_ (n=JoePeck@cpe-74-69-85-249.rochester.res.rr.com)
  313. # [15:52] * Quits: JoePeck (n=JoePeck@cpe-74-69-85-249.rochester.res.rr.com) (Read error: 104 (Connection reset by peer))
  314. # [15:53] * JoePeck_ is now known as JoePeck
  315. # [16:19] * Joins: nessy (n=Adium@adsl-69-107-93-121.dsl.pltn13.pacbell.net)
  316. # [16:21] * Joins: dbaron (n=dbaron@c-98-234-51-190.hsd1.ca.comcast.net)
  317. # [16:22] * Joins: ttepasse (n=ttepas--@p5B016431.dip.t-dialin.net)
  318. # [16:23] * Joins: archtech (i=stanv@83.228.56.37)
  319. # [16:23] * Quits: nessy (n=Adium@adsl-69-107-93-121.dsl.pltn13.pacbell.net) (Client Quit)
  320. # [16:29] * Quits: ttepass- (n=ttepas--@p5B015AAF.dip.t-dialin.net) (Read error: 60 (Operation timed out))
  321. # [16:33] * lmorchard|away is now known as lmorchard
  322. # [16:47] * Joins: ttepass- (n=ttepas--@p5B013567.dip.t-dialin.net)
  323. # [16:48] * Quits: mitnavn (n=mitnavn@unaffiliated/mitnavn)
  324. # [16:50] * Joins: dglazkov (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net)
  325. # [17:00] * Quits: archtech (i=stanv@83.228.56.37)
  326. # [17:01] <TabAtkins> Can anyone join the irc.w3.org:80 server? I wanna know if it's just something to do with the airport wifi killing it, or if the server is having problems.
  327. # [17:04] <Philip`> TabAtkins: I appear to be connected to it
  328. # [17:04] <TabAtkins> Philip`: Thanks. It's something on my end, then.
  329. # [17:04] * Joins: archtech (i=stanv@83.228.56.37)
  330. # [17:05] <Philip`> TabAtkins: Maybe try the normal port, not :80 (since proxies might mangle that one)?
  331. # [17:05] <TabAtkins> Nah, no-port just times out.
  332. # [17:06] <TabAtkins> Eh, I'm stealing wifi anyway. No biggie. I'll just go play some Civ 4.
  333. # [17:08] <jgraham> gsnedders: Which website?
  334. # [17:10] * Quits: ttepasse (n=ttepas--@p5B016431.dip.t-dialin.net) (Read error: 110 (Connection timed out))
  335. # [17:34] * Quits: myakura (n=myakura@p2102-ipbf6805marunouchi.tokyo.ocn.ne.jp) ("Leaving...")
  336. # [17:45] * Quits: webben (n=benh@dip5-fw.corp.ukl.yahoo.com) (Read error: 104 (Connection reset by peer))
  337. # [17:51] * Joins: dglazkov_ (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net)
  338. # [17:54] * Joins: webben (n=benh@212-104-155-100.access.eclipse.net.uk)
  339. # [17:55] * Quits: dglazkov (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net) (Read error: 60 (Operation timed out))
  340. # [17:55] * dglazkov_ is now known as dglazkov
  341. # [17:58] * Joins: mmn (n=mmn@node-9689.tor.pppoe.execulink.com)
  342. # [18:02] * gsnedders wonders if he has the bandwidth to manage to listen to spotify at the moment
  343. # [18:02] <gsnedders> jgraham: dustinhome.se
  344. # [18:05] * Joins: annevk2 (n=annevk@adsl-75-13-115-190.dsl.pltn13.sbcglobal.net)
  345. # [18:06] * Parts: annevk2 (n=annevk@adsl-75-13-115-190.dsl.pltn13.sbcglobal.net)
  346. # [18:07] * Joins: annevk2 (n=annevk@12.197.88.10)
  347. # [18:14] * Quits: webben (n=benh@212-104-155-100.access.eclipse.net.uk) (Remote closed the connection)
  348. # [18:26] * Philip` has dust in his home and never had to go through any online checkout service to get it
  349. # [18:26] * Joins: tndH (n=Rob@cpc2-leed18-0-0-cust427.leed.cable.ntl.com)
  350. # [18:28] * Joins: webben (n=benh@212-104-155-100.access.eclipse.net.uk)
  351. # [18:28] * gsnedders realizes he should be testing this in shipping browsers as he has Safari hang
  352. # [18:28] <gsnedders> (and I know Opera 10 hangs)
  353. # [18:30] * gsnedders now has a simple test suite harness that fails to work in all shipping browsers
  354. # [18:30] <gsnedders> (Though the reason why the test harness fails is the tests themselves)
  355. # [18:31] * Joins: webben1 (n=benh@dip5-fw.corp.ukl.yahoo.com)
  356. # [18:31] <gsnedders> Oh, and crashes the copy of WebKit I have here.
  357. # [18:32] <gsnedders> This really does reinforce the idea of there being nowhere near enough DOM tests.
  358. # [18:38] * Quits: TabAtkins (n=chatzill@38.114.210.37) (Read error: 60 (Operation timed out))
  359. # [18:39] <gsnedders> Web DOM Core test suite results: latest shipping Safari and Opera: crash; latest shipping Firefox: FAIL (but completely the test suite!); latest shipping IE: fails almost everything.
  360. # [18:40] <gsnedders> s/ly/s/
  361. # [18:46] * Quits: webben (n=benh@212-104-155-100.access.eclipse.net.uk) (Read error: 110 (Connection timed out))
  362. # [19:00] * Quits: gunderwonder (n=gunderwo@140.84-49-178.nextgentel.com)
  363. # [19:11] * Joins: mpt (n=mpt@canonical/mpt)
  364. # [19:11] * Joins: dglazkov_ (n=dglazkov@nat/google/x-trfrasbmkwzwncar)
  365. # [19:15] * Quits: dglazkov (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
  366. # [19:15] * Joins: dglazkov (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net)
  367. # [19:19] * Quits: dglazkov_ (n=dglazkov@nat/google/x-trfrasbmkwzwncar) (Read error: 104 (Connection reset by peer))
  368. # [19:22] * Joins: fishd_ (n=darin@c-98-207-16-168.hsd1.ca.comcast.net)
  369. # [19:23] * Joins: nessy (n=Adium@38.114.142.143)
  370. # [19:34] * Joins: svl (n=me@ip565744a7.direct-adsl.nl)
  371. # [19:41] * Joins: dglazkov_ (n=dglazkov@nat/google/x-jspcnrejoyodjgqq)
  372. # [19:44] * Quits: fishd_ (n=darin@c-98-207-16-168.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
  373. # [19:56] * Joins: fishd_ (n=darin@c-98-207-16-168.hsd1.ca.comcast.net)
  374. # [19:57] * Quits: dglazkov (n=dglazkov@c-67-188-0-62.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
  375. # [19:57] * dglazkov_ is now known as dglazkov
  376. # [20:05] * Joins: yoshu (n=josh@174-18-206-205.tcso.qwest.net)
  377. # [20:14] * Parts: annevk2 (n=annevk@12.197.88.10)
  378. # [20:17] * Joins: paul_irish (n=paul_iri@c-71-192-163-128.hsd1.nh.comcast.net)
  379. # [20:27] * Quits: fishd_ (n=darin@c-98-207-16-168.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
  380. # [20:35] * lmorchard is now known as lmorchard|away
  381. # [20:40] * Quits: yoshu (n=josh@174-18-206-205.tcso.qwest.net)
  382. # [20:42] * Quits: mpt (n=mpt@canonical/mpt) (Read error: 110 (Connection timed out))
  383. # [20:43] * Quits: webben1 (n=benh@dip5-fw.corp.ukl.yahoo.com) (Nick collision from syn.)
  384. # [20:43] * Quits: dbaron (n=dbaron@c-98-234-51-190.hsd1.ca.comcast.net) (Nick collision from syn.)
  385. # [20:43] * Quits: erlehmann (n=erlehman@82.113.106.5) (Nick collision from syn.)
  386. # [20:43] * Quits: Maurice (i=copyman@5ED548D4.cable.ziggo.nl) (Nick collision from syn.)
  387. # [20:43] * Quits: drry (n=drry@unaffiliated/drry) (Nick collision from syn.)
  388. # [20:43] * Quits: ato (i=ato@orgelet.e-tjenesten.org) (Nick collision from syn.)
  389. # [20:43] * Quits: nessy (n=Adium@38.114.142.143) (Nick collision from syn.)
  390. # [20:43] * Quits: riven (n=colin@53518387.cable.casema.nl) (Nick collision from syn.)
  391. # [20:43] * Quits: broquaint (i=097797d9@spc2-brig11-0-0-cust222.asfd.cable.virginmedia.com) (Nick collision from syn.)
  392. # [20:43] * Quits: deltab (n=deltab@82-36-30-34.cable.ubr02.smal.blueyonder.co.uk) (Nick collision from syn.)
  393. # [20:43] * Quits: Creap (n=Creap@vemod.brg.sgsnet.se) (Nick collision from syn.)
  394. # [20:43] * Quits: erikvvold (n=erikvvol@S01060024012860e9.gv.shawcable.net) (Nick collision from syn.)
  395. # [20:43] * Joins: ato (i=ato@orgelet.e-tjenesten.org)
  396. # [20:43] * Quits: bzed (n=bzed@devel.recluse.de) (Nick collision from syn.)
  397. # [20:44] * Quits: smaug (n=chatzill@cs181150024.pp.htv.fi) (Nick collision from syn.)
  398. # [20:44] * Quits: dglazkov (n=dglazkov@nat/google/x-jspcnrejoyodjgqq) (Nick collision from syn.)
  399. # [20:44] * Quits: eighty4 (n=eighty4@eighty4.se) (Nick collision from syn.)
  400. # [20:44] * Quits: crash\ (i=crash@lubyte.de) (Nick collision from syn.)
  401. # [20:44] * Quits: aboodman (n=aboodman@72.14.229.81) (Nick collision from syn.)
  402. # [20:44] * Quits: Dashiva (i=Dashiva@wikia/Dashiva) (Nick collision from syn.)
  403. # [20:44] * Quits: daedb (n=daed@h11n1fls34o986.telia.com) (Nick collision from syn.)
  404. # [20:44] * Quits: beowulf_ (n=beowulf@ps4552.dreamhost.com) (Nick collision from syn.)
  405. # [20:44] * Quits: damncabbage (n=asio@124-170-147-92.dyn.iinet.net.au) (Nick collision from syn.)
  406. # [20:44] * Quits: doublec (n=doublec@65.49.60.216) (Nick collision from syn.)
  407. # [20:44] * Quits: Someguy (n=Andy_F@96.255.124.28) (Nick collision from syn.)
  408. # [20:44] * Quits: dimich (n=dimich@74.125.59.73) (Nick collision from syn.)
  409. # [20:44] * Joins: Creap (n=Creap@193.11.202.139)
  410. # [20:44] * Joins: dbaron (n=dbaron@c-98-234-51-190.hsd1.ca.comcast.net)
  411. # [20:44] * Joins: Maurice (i=copyman@5ED548D4.cable.ziggo.nl)
  412. # [20:44] * Joins: daedb| (n=daed@213.65.139.11)
  413. # [20:44] * Joins: Dashiva (i=Dashiva@129.241.137.223)
  414. # [20:44] * Joins: erikvold (n=erikvvol@24.108.84.27)
  415. # [20:44] * Joins: webben (n=benh@217.12.15.52)
  416. # [20:44] * Quits: ato (i=ato@orgelet.e-tjenesten.org) (Nick collision from syn.)
  417. # [20:44] * Quits: Maurice (i=copyman@5ED548D4.cable.ziggo.nl) (Nick collision from syn.)
  418. # [20:44] * Joins: beowulf (n=beowulf@208.113.223.220)
  419. # [20:44] * Quits: Creap (n=Creap@193.11.202.139) (Nick collision from syn.)
  420. # [20:44] * Quits: dbaron (n=dbaron@c-98-234-51-190.hsd1.ca.comcast.net) (Nick collision from syn.)
  421. # [20:44] * Quits: erikvold (n=erikvvol@24.108.84.27) (Nick collision from syn.)
  422. # [20:44] * Quits: daedb| (n=daed@213.65.139.11) (Nick collision from syn.)
  423. # [20:44] * Joins: aboodman (n=aboodman@72.14.229.81)
  424. # [20:44] * Joins: doublec (n=doublec@65.49.60.216)
  425. # [20:44] * Joins: Someguy (n=Andy_F@pool-96-255-124-28.washdc.fios.verizon.net)
  426. # [20:44] * Joins: dbaron (n=dbaron@c-98-234-51-190.hsd1.ca.comcast.net)
  427. # [20:44] * Joins: yatil (n=Adium@78.104.102.186)
  428. # [20:45] * Joins: erikvold (n=erikvvol@S01060024012860e9.gv.shawcable.net)
  429. # [20:45] * Joins: crash\ (i=crash@lubyte.de)
  430. # [20:45] * Joins: nessy (n=Adium@38.114.142.169)
  431. # [20:45] * Joins: riven (n=colin@53518387.cable.casema.nl)
  432. # [20:45] * Joins: damncabbage (n=asio@124.170.147.92)
  433. # [20:45] * Joins: Creap (n=Creap@vemod.brg.sgsnet.se)
  434. # [20:45] * Joins: daedb (n=daed@213.65.139.11)
  435. # [20:45] * Joins: Maurice (i=copyman@5ED548D4.cable.ziggo.nl)
  436. # [20:45] * Joins: broquaint (i=4ef2dfb9@spc2-brig11-0-0-cust222.asfd.cable.virginmedia.com)
  437. # [20:45] * Joins: drry (n=drry@211.9.170.91)
  438. # [20:46] * Joins: smaug (n=chatzill@cs181150024.pp.htv.fi)
  439. # [20:46] * Joins: deltab (n=deltab@82.36.30.34)
  440. # [20:46] * Joins: eighty4 (n=eighty4@eighty4.se)
  441. # [20:47] * Joins: bzed (n=bzed@devel.recluse.de)
  442. # [20:48] * Parts: yatil (n=Adium@78.104.102.186)
  443. # [20:48] * Joins: ato (i=ato@orgelet.e-tjenesten.org)
  444. # [20:50] * Quits: Creap (n=Creap@vemod.brg.sgsnet.se) (Client Quit)
  445. # [20:53] * Joins: Mrmil (n=ut_ollie@core1.humlnet.cz)
  446. # [20:57] * Quits: drry (n=drry@211.9.170.91) ("Server Configuration changed; reconnect")
  447. # [20:57] * Joins: drry (n=drry@unaffiliated/drry)
  448. # [20:58] * Joins: gratz|home (n=gratz@cpc3-brig15-2-0-cust237.3-3.cable.virginmedia.com)
  449. # [20:59] * Quits: drry (n=drry@unaffiliated/drry) (Client Quit)
  450. # [20:59] * Joins: drry (n=drry@unaffiliated/drry)
  451. # [21:12] * Parts: Mrmil (n=ut_ollie@core1.humlnet.cz)
  452. # [21:12] * Joins: fishd_ (n=darin@c-98-207-16-168.hsd1.ca.comcast.net)
  453. # [21:20] * Quits: smaug (n=chatzill@cs181150024.pp.htv.fi) (Remote closed the connection)
  454. # [21:22] * Joins: smaug (n=chatzill@cs181150024.pp.htv.fi)
  455. # [21:26] * Joins: gunderwonder (n=gunderwo@102.80-202-87.nextgentel.com)
  456. # [21:30] * Joins: othermaciej (n=mjs@c-69-181-42-237.hsd1.ca.comcast.net)
  457. # [21:34] * Joins: yoshu (n=josh@174-18-206-205.tcso.qwest.net)
  458. # [21:39] * Quits: dbaron (n=dbaron@c-98-234-51-190.hsd1.ca.comcast.net) ("8403864 bytes have been tenured, next gc will be global.")
  459. # [21:46] * gsnedders notes updating html5lib once it falls out of sync with the spec is a horrible task
  460. # [21:47] <jgraham> gsnedders: It would be better if you would note a way to make it easier
  461. # [21:47] <gsnedders> jgraham: keep it in sync with a specific revision of the spec
  462. # [21:47] <jgraham> (fwiw I have found the same which is likely why I haven't worked too much on it)
  463. # [21:47] <jgraham> gsnedders: ?
  464. # [21:47] <jgraham> You mean jus never update it?
  465. # [21:47] <gsnedders> at the moment it's basically a copy of the June spec with random things updated from the spec since
  466. # [21:48] <gsnedders> It's the fact it doesn't match any revision of the spec at the moment that is annoying
  467. # [21:48] <gsnedders> I mean I should always be able to say that html5lib implements revision x of the spec.
  468. # [21:50] <jgraham> gsnedders: Generally the best you can do is to say that it passes the tests
  469. # [21:50] <jgraham> It would be good if tests were kept in lockstep with the spec
  470. # [21:50] <gsnedders> The problem is the tests often don't match a specific revision of the spec :P
  471. # [21:56] <gsnedders> the problem with it not matching any version of the spec is having to go through the spec manually with the impl checking that it matches it
  472. # [21:56] <jgraham> That I can agree with. But given that it is impossible to tell which tests need to be updated
  473. # [21:56] <Dashiva> gsnedders: Make separate branches for each rev :D
  474. # [21:57] <jgraham> it is hard to see how you get the tests to match
  475. # [21:58] <gsnedders> Keep them up to date always?
  476. # [21:59] <gsnedders> Yeah, sure, you will probably end up with incorrect expectations at times, but once the impl catches up…
  477. # [22:01] <jgraham> gsnedders: How do you know which tests need to be updated when the spec changed?
  478. # [22:03] * Quits: yoshu (n=josh@174-18-206-205.tcso.qwest.net)
  479. # [22:03] <Dashiva> Well, if each test has metadata saying which sections it applies to... and you go through each diff looking at which sections changed (and which were renumbered)...
  480. # [22:04] * Quits: archtech (i=stanv@83.228.56.37) (Read error: 110 (Connection timed out))
  481. # [22:04] <gsnedders> jgraham: magic
  482. # [22:04] <jgraham> Dashiva: Each test could depend on dozens of sections. Annotating them all makes writing tests prohibitivly expensive
  483. # [22:05] <Dashiva> Well, if maintenance is too expensive, then consider tests to be throw-away
  484. # [22:06] * Joins: yoshu (n=josh@174-18-206-205.tcso.qwest.net)
  485. # [22:06] <jgraham> Eh?
  486. # [22:06] <Dashiva> Mark each with "was valid at rev x" and if it starts failing, either discard it or update it
  487. # [22:06] <gsnedders> jgraham: Seriously though, it may be possible to use regex to find tests effected!
  488. # [22:06] <gsnedders> *affected(?)
  489. # [22:08] * Quits: ROBOd (n=robod@89.122.216.38) ("http://www.robodesign.ro")
  490. # [22:08] <Philip`> Seems like the easiest solution is to keep the implementation always up to date
  491. # [22:08] <Philip`> and always passing all tests
  492. # [22:08] * gsnedders nominates jgraham to keep it up to date
  493. # [22:09] <jgraham> Dashiva: That doesn't seem to fix the underlying problem
  494. # [22:09] <jgraham> You still need to dig through the spec to decide if the test is wrong or the implementation is wrong
  495. # [22:11] <Dashiva> That's what the discard option is for. Then at a later point you can do bulk update/rewrite of related tests
  496. # [22:12] <jgraham> That sounds like a medicine that is worse than the disease. You fail a test you throw away the test rather tahn workin out if it is a real bug or not
  497. # [22:12] <jgraham> Seems to defeat the point of having tests
  498. # [22:12] <Dashiva> You're the one saying updating them is prohitively expensive, though
  499. # [22:15] <jgraham> Dashiva: I'm saying it's prohibitively expensive to create tests where you also have to work out all the section transitions
  500. # [22:15] <jgraham> It's already bad enough with the parse errors
  501. # [22:16] * Joins: KrocCamen (n=kroc@cpc3-lanc2-0-0-cust544.brig.cable.ntl.com)
  502. # [22:16] * Joins: mitnavn (n=mitnavn@unaffiliated/mitnavn)
  503. # [22:17] * Quits: mitnavn (n=mitnavn@unaffiliated/mitnavn) (Remote closed the connection)
  504. # [22:19] * Joins: jwalden (n=waldo@c-98-248-40-206.hsd1.ca.comcast.net)
  505. # [22:20] * Quits: fishd_ (n=darin@c-98-207-16-168.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
  506. # [22:23] * Joins: roc (n=roc@203-97-204-82.dsl.clear.net.nz)
  507. # [22:26] * Quits: drry (n=drry@unaffiliated/drry) (Read error: 60 (Operation timed out))
  508. # [22:37] * Quits: deltab (n=deltab@82.36.30.34) (Read error: 104 (Connection reset by peer))
  509. # [22:39] * Joins: shepazu (n=schepers@38.114.142.20)
  510. # [22:49] * Quits: svl (n=me@ip565744a7.direct-adsl.nl) ("And back he spurred like a madman, shrieking a curse to the sky.")
  511. # [22:51] * Joins: paul_iri_ (n=paul_iri@c-71-192-163-128.hsd1.nh.comcast.net)
  512. # [22:53] * Joins: paul_ir__ (n=paul_iri@c-71-192-163-128.hsd1.nh.comcast.net)
  513. # [23:04] * Quits: Maurice (i=copyman@5ED548D4.cable.ziggo.nl)
  514. # [23:07] * Quits: paul_irish (n=paul_iri@c-71-192-163-128.hsd1.nh.comcast.net) (Read error: 113 (No route to host))
  515. # [23:09] * Quits: paul_iri_ (n=paul_iri@c-71-192-163-128.hsd1.nh.comcast.net) (Read error: 110 (Connection timed out))
  516. # [23:10] * Joins: SuperDot_iPod (n=superdot@adsl-75-61-94-231.dsl.pltn13.sbcglobal.net)
  517. # [23:11] * Parts: SuperDot_iPod (n=superdot@adsl-75-61-94-231.dsl.pltn13.sbcglobal.net)
  518. # [23:14] * Joins: mitnavn (n=mitnavn@unaffiliated/mitnavn)
  519. # [23:15] * Joins: deltab (n=deltab@82-36-30-34.cable.ubr02.smal.blueyonder.co.uk)
  520. # [23:22] * Quits: JoePeck (n=JoePeck@cpe-74-69-85-249.rochester.res.rr.com)
  521. # [23:23] * Quits: gsnedders (n=gsnedder@c83-252-233-86.bredband.comhem.se)
  522. # [23:26] * Joins: myakura (n=myakura@p2102-ipbf6805marunouchi.tokyo.ocn.ne.jp)
  523. # [23:26] * Quits: KrocCamen (n=kroc@cpc3-lanc2-0-0-cust544.brig.cable.ntl.com)
  524. # [23:30] * Joins: grahamperrin (n=grahampe@78-141-28-157.rdns.as8401.net)
  525. # [23:31] * Quits: erikvold (n=erikvvol@S01060024012860e9.gv.shawcable.net) (Read error: 60 (Operation timed out))
  526. # [23:35] * Quits: yoshu (n=josh@174-18-206-205.tcso.qwest.net)
  527. # [23:37] * Joins: nicferrier (n=nferrier@sanders.tapsellferrier.co.uk)
  528. # [23:37] * Quits: myakura (n=myakura@p2102-ipbf6805marunouchi.tokyo.ocn.ne.jp) ("Leaving...")
  529. # [23:38] <nicferrier> I have a question about forms
  530. # [23:38] <nicferrier> is this the best place to ask it?
  531. # [23:38] <nicferrier> let me blunder on
  532. # [23:38] <webben> nicferrier: depends what the question is i guess
  533. # [23:39] <nicferrier> what I want to know is whether there is any thinking about server side validation
  534. # [23:39] <nicferrier> the new forms stuff is great
  535. # [23:39] <nicferrier> extra declarative syntax for validation
  536. # [23:39] <nicferrier> but it only affords client side validation
  537. # [23:39] <nicferrier> the validation will have to be repeated on the server side
  538. # [23:39] <nicferrier> and I wondered if anyone was thinking about that
  539. # [23:39] <AryehGregor> I hope so. :)
  540. # [23:40] * Joins: yatil (n=Adium@78.104.102.186)
  541. # [23:40] <webben> nicferrier: It will and they are.
  542. # [23:40] <AryehGregor> HTML5 only specifies a syntax, it doesn't provide an implementation. If you use any client-side validation, obviously you need server-side validation too.
  543. # [23:40] <webben> nicferrier: HTML5 can't make the need for serverside validation disappear.
  544. # [23:40] <AryehGregor> How this actually works in practice is up to you.
  545. # [23:41] <nicferrier> yup, I appreciate it's not *exactly* in the bounds of html 5
  546. # [23:41] <AryehGregor> webben, yes it can, just mandate that all clients use down-to-the-metal DRM, require servers to reject connections from inappropriately authenticated clients, and only sign the binaries of clients that are written personally by Ian Hickson. Duh.
  547. # [23:42] <webben> lol
  548. # [23:42] <Hixie> if only some people weren't actually doing that kind of thing
  549. # [23:42] <nicferrier> however, we're getting to a point where the rendered form is almost good enough to use as the DRY for an app
  550. # [23:42] <nicferrier> and I've been thinking about that and wondered if anyone else was.
  551. # [23:43] <AryehGregor> What's a DRY?
  552. # [23:43] <nicferrier> dont repeat yourself.
  553. # [23:43] * Joins: eric_carlson (n=ericc@38.114.142.208)
  554. # [23:43] <AryehGregor> The rendered form of what, then?
  555. # [23:44] <webben> nicferrier: well, you /could/ preprocess the form and derive serverside validation rules from the html, I guess, but that would be kinda weird.
  556. # [23:44] <Hixie> nicferrier: i don't think anyone has formally looked at taking html5 client-side markup and using it literally on the server side
  557. # [23:44] <AryehGregor> It's always a pain in web stuff that you're more or less forced to have different code doing server-side and client-side validation.
  558. # [23:44] <nicferrier> I mean that an html 5 form can potentially exist as a single statement of the form, instead of their being another version inside a framework
  559. # [23:44] <Hixie> nicferrier: xforms has been used in this way
  560. # [23:44] <AryehGregor> So you're saying like feed the actual HTML of the form into your abstraction framework, instead of specifying it in some other way?
  561. # [23:44] * Parts: grahamperrin (n=grahampe@78-141-28-157.rdns.as8401.net)
  562. # [23:44] <webben> only really works for very very simple forms
  563. # [23:44] <AryehGregor> That would work if you had an HTML5 parser handy on the server side . . .
  564. # [23:44] <nicferrier> Hixie: exactly
  565. # [23:45] <AryehGregor> webben, well, presumably you'd have the ability to add extra validation (on client and/or server side) in whatever framework we're talking about.
  566. # [23:45] <nicferrier> I am saying the frameworks model could be generated from the html 5 syntax, yes.
  567. # [23:46] <webben> AryehGregor: well, yes, but then you're repeating yourself.
  568. # [23:46] <nicferrier> no, I'm not
  569. # [23:46] <nicferrier> it's just a representation
  570. # [23:46] <nicferrier> anyway, even if I am I don't have to type it again
  571. # [23:46] <AryehGregor> webben, not if the extra validation is beyond what HTML5 can represent. Then you have each requirement stated only once.
  572. # [23:46] <AryehGregor> nicferrier, I think that's a great idea as soon as all major web programming languages get HTML5 parsing libraries.
  573. # [23:47] * AryehGregor isn't going to hold his breath for PHP on shared hosts
  574. # [23:47] <webben> AryehGregor: Ah, if you generate the client and serverside validation from a single rule definition, yes.
  575. # [23:47] <webben> but then you could just as well generate the HTML form from such rule definitions
  576. # [23:47] <AryehGregor> Yes, of course.
  577. # [23:47] <AryehGregor> That's how MediaWiki does it, where it actually uses such abstractions.
  578. # [23:48] <AryehGregor> (i.e. virtually nowhere, yet)
  579. # [23:48] <nicferrier> but what I'm saying is, that other than the obvious "this member must be in this set" the html5 validation rules are plenty good enough
  580. # [23:48] <webben> I'm not sure how having two types of inputs - rather than just a set of rules - helps.
  581. # [23:48] <nicferrier> for a base form definition.
  582. # [23:48] <nicferrier> the advantage being that forms are a lingua franca
  583. # [23:49] <nicferrier> designers and programmers speak forms.
  584. # [23:49] * Quits: mmn (n=mmn@node-9689.tor.pppoe.execulink.com) ("Leaving.")
  585. # [23:49] <webben> yes, but both need to be driven by domain models
  586. # [23:49] * Joins: erikvold (n=erikvvol@S01060024012860e9.gv.shawcable.net)
  587. # [23:49] * AryehGregor gets suspicious when he hears terms like "domain models"
  588. # [23:50] <nicferrier> :-)
  589. # [23:50] <nicferrier> my designers would disagree
  590. # [23:51] <nicferrier> but anyway, nobody is actively doing anything with this to anyone's knowledge.
  591. # [23:51] <nicferrier> that's cool. thanks people.
  592. # [23:54] <webben> nicferrier: Not /quite/ what you're proposing, but close: http://simonwillison.net/2003/Jun/17/theHolyGrail/
  593. # [23:56] <nicferrier> yeah, writing the code to do it isn't hard
  594. # [23:56] <nicferrier> deciding on a usable model is a little harder
  595. # [23:56] <webben> nicferrier: usable model in what sense?
  596. # [23:57] <nicferrier> should the form be kept as a separate entity?
  597. # [23:57] <nicferrier> should we talk about documents and xpaths to forms?
  598. # [23:57] <AryehGregor> Let's just have every app reinvent the wheel and write its own form support badly. That's always worked for me.
  599. # [23:57] <webben> ^this ;)
  600. # [23:57] <nicferrier> AryehGregor: :-D
  601. # [23:57] * AryehGregor wishes it weren't true
  602. # [23:57] <webben> nicferrier: "talk about documents and xpaths to forms" ... what would that mean?
  603. # [23:58] <AryehGregor> It's especially bad when you have to cater to shared hosts, in PHP, where lots of the useful libraries are written in C and only installable by root.
  604. # [23:58] <AryehGregor> s/ shared hosts, in//;s/PHP,.*$/PHP./
  605. # [23:58] <nicferrier> webben: idk... just idle thoughts... maybe form = somedocument.forms["someform"]
  606. # [23:58] <nicferrier> value = form.field.value
  607. # [23:58] <nicferrier> that short of thing
  608. # [23:59] <nicferrier> binding an html5 form into a pl
  609. # [23:59] <webben> nicferrier: oh, you mean, would you keep all forms in an app in a single HTML document?
  610. # [23:59] <nicferrier> just thinking.
  611. # [23:59] <nicferrier> webben: well, I mean how would you keep them
  612. # [23:59] <nicferrier> if I want to pass the form through xslt
  613. # Session Close: Mon Nov 02 00:00:00 2009

The end :)