/irc-logs / freenode / #whatwg / 2014-03-19 / end

Options:

  1. # Session Start: Wed Mar 19 00:00:00 2014
  2. # Session Ident: #whatwg
  3. # [00:01] * Joins: ap_ (~ap@17.114.218.110)
  4. # [00:03] * Quits: tantek (~tantek@mcd0536d0.tmodns.net) (Read error: Connection reset by peer)
  5. # [00:03] * Joins: tantek (~tantek@mcd0536d0.tmodns.net)
  6. # [00:04] * Joins: tantek_ (~tantek@adsl-71-146-66-90.dsl.pltn13.sbcglobal.net)
  7. # [00:05] * Quits: tantek (~tantek@mcd0536d0.tmodns.net) (Client Quit)
  8. # [00:05] * tantek_ is now known as tantek
  9. # [00:05] * Quits: ap (~ap@2620:149:4:304:c172:68b9:2300:aee1) (Ping timeout: 240 seconds)
  10. # [00:05] * ap_ is now known as ap
  11. # [00:11] * Quits: ehsan_ (~ehsan@66.207.208.102) (Remote host closed the connection)
  12. # [00:15] * Quits: rcombs (~rcombs@rcombs.me) (Ping timeout: 265 seconds)
  13. # [00:16] * Quits: tantek (~tantek@adsl-71-146-66-90.dsl.pltn13.sbcglobal.net) (Quit: tantek)
  14. # [00:16] * Joins: rc0mbs (~rcombs@rcombs.me)
  15. # [00:16] * Joins: tantek (~tantek@mcd0536d0.tmodns.net)
  16. # [00:16] * rc0mbs is now known as rcombs
  17. # [00:17] * Quits: jeremyj (~jeremyj@17.202.44.231) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
  18. # [00:18] * Quits: scor (~scor@drupal.org/user/52142/view) (Quit: scor)
  19. # [00:20] * Quits: bholley (~bholley@187.64.32.150) (Quit: bholley)
  20. # [00:21] * Quits: annevk (~annevk@2.31.25.165) (Remote host closed the connection)
  21. # [00:27] * JosephSilber is now known as everybody
  22. # [00:27] * everybody is now known as JosephSilber
  23. # [00:29] * Joins: foxtrotwhiskey (~foxtrotwh@c-98-225-154-188.hsd1.pa.comcast.net)
  24. # [00:29] * Joins: satazor (~satazor@80.78.37.188.rev.vodafone.pt)
  25. # [00:29] * Joins: jeremyj (~jeremyj@17.202.44.231)
  26. # [00:32] * Quits: hoobdeebla (~hoobdeebl@ip70-190-42-239.ph.ph.cox.net)
  27. # [00:32] * Quits: ambv (~ambv@206.108.217.134) (Read error: Connection reset by peer)
  28. # [00:32] * Joins: ambv (~ambv@206.108.217.134)
  29. # [00:33] * Joins: bholley (~bholley@187.64.32.150)
  30. # [00:33] * Quits: tantek (~tantek@mcd0536d0.tmodns.net) (Quit: Colloquy for iPod touch - http://colloquy.mobi)
  31. # [00:34] * Quits: bholley (~bholley@187.64.32.150) (Client Quit)
  32. # [00:34] * Joins: tantek (~tantek@mcd0536d0.tmodns.net)
  33. # [00:37] * Joins: ehsan (~ehsan@24-52-243-72.cable.teksavvy.com)
  34. # [00:39] * Joins: hasather (~hasather@80.91.33.141)
  35. # [00:41] * Joins: espadrine_ (~ttyl@AMontsouris-158-1-61-73.w92-128.abo.wanadoo.fr)
  36. # [00:43] * Quits: newbie49 (~Areks@rs.gridnine.com) (Read error: Connection timed out)
  37. # [00:43] * Quits: hasather (~hasather@80.91.33.141) (Ping timeout: 252 seconds)
  38. # [00:44] * Joins: newbie49 (~Areks@rs.gridnine.com)
  39. # [00:45] * Quits: espadrine` (~ttyl@AMontsouris-158-1-94-226.w90-2.abo.wanadoo.fr) (Ping timeout: 255 seconds)
  40. # [00:47] * WolfieZero is now known as WolfieZero|Away
  41. # [00:47] * WolfieZero|Away is now known as WolfieZero
  42. # [00:47] * WolfieZero is now known as WolfieZero|Away
  43. # [00:48] * Quits: tantek (~tantek@mcd0536d0.tmodns.net) (Quit: Colloquy for iPod touch - http://colloquy.mobi)
  44. # [00:50] * Quits: decotii (~decotii@hq.croscon.com) (Quit: Leaving)
  45. # [00:52] * Quits: WolfieZero|Away (~WolfieZer@neilandkerrie.plus.com) (Ping timeout: 264 seconds)
  46. # [00:53] * Joins: tantek (~tantek@mcd0536d0.tmodns.net)
  47. # [00:54] * Joins: llkats (~llkats@206.169.83.230)
  48. # [00:55] * Quits: Ir1sh (~Ir1sh@c-98-199-139-18.hsd1.tx.comcast.net) (Ping timeout: 255 seconds)
  49. # [00:57] * Joins: seventh (seventh@192.64.4.63)
  50. # [01:01] * Quits: jeremyj (~jeremyj@17.202.44.231) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
  51. # [01:03] * Quits: jernoble|laptop (~jernoble@17.202.45.163) (Quit: Computer has gone to sleep.)
  52. # [01:03] * Quits: ap (~ap@17.114.218.110) (Quit: ap)
  53. # [01:04] * heycam|away is now known as heycam
  54. # [01:05] * Joins: doctrv_ (sid27401@gateway/web/irccloud.com/x-aabbnzgkuveywqlv)
  55. # [01:05] * Quits: doctrv_ (sid27401@gateway/web/irccloud.com/x-aabbnzgkuveywqlv) (Client Quit)
  56. # [01:05] * Quits: satazor (~satazor@80.78.37.188.rev.vodafone.pt) (Ping timeout: 264 seconds)
  57. # [01:05] * Quits: doctrv (~doctrv@216.236.251.130) (Quit: Quit)
  58. # [01:06] * Joins: doctrv (sid27401@gateway/web/irccloud.com/x-pndkczoufwlodfel)
  59. # [01:09] * Joins: shannonmoeller (~shannonmo@pool-108-17-8-225.bflony.fios.verizon.net)
  60. # [01:09] <Hixie> wtf
  61. # [01:09] <Hixie> json encodes astral characters as their UTF-16 surrogates encoded in ASCII???
  62. # [01:09] <JosephSilber> I think I found a bug in Chrome: http://codepen.io/JosephSilber/pen/dFgxo/
  63. # [01:10] <JosephSilber> Toggling the "absolute" class there doesn't affect the parent's width.
  64. # [01:10] <Hixie> crbug.com/new
  65. # [01:10] <JosephSilber> Adding the "absolute" class directly in the HTML does work: http://codepen.io/JosephSilber/pen/LiCKA/
  66. # [01:11] <JosephSilber> Hixie: Yeah. Just checking here first if I'm misunderstanding expected behavior.
  67. # [01:11] <Hixie> i don't understand what's going on in that test
  68. # [01:12] <Hixie> there's three files?
  69. # [01:12] <JosephSilber> Hixie: there are two flex containers, nested.
  70. # [01:12] * Quits: KevinMarks2 (~yaaic@2607:fb90:117:be1:715b:d3ce:2793:92d3) (Ping timeout: 240 seconds)
  71. # [01:12] <JosephSilber> The inner container should collapse to its content's width.
  72. # [01:13] <SimonSapin> Hixie: yes. The J in JSON is JavaScript, 16bit strings and all
  73. # [01:13] * Quits: tantek (~tantek@mcd0536d0.tmodns.net) (Quit: Colloquy for iPod touch - http://colloquy.mobi)
  74. # [01:13] <JosephSilber> Setting one of its children's position to absolute should collpase the container's width.
  75. # [01:13] * Quits: shannonmoeller (~shannonmo@pool-108-17-8-225.bflony.fios.verizon.net) (Ping timeout: 240 seconds)
  76. # [01:13] <SimonSapin> at least, that’s if you want to backslash-escape such characters. I think just having them literally in UTF-8 should also work
  77. # [01:13] <JosephSilber> Work well in Firefox, and also works well in Chrome when not doing it dynamically.
  78. # [01:13] * Joins: KevinMarks2 (~yaaic@2607:fb90:118:7192:a2b:45a8:f6f2:578a)
  79. # [01:15] <Hixie> JosephSilber: is http://software.hixie.ch/utilities/js/live-dom-viewer/?saved=2893 equivalent to your test?
  80. # [01:16] * jonlee_|afk is now known as jonlee_
  81. # [01:16] <JosephSilber> Hixie: yes. Shouldn't .inner's width collpase? Like it does here: http://codepen.io/JosephSilber/pen/LiCKA/
  82. # [01:16] <Hixie> JosephSilber: it seems to work to me... when you set the attribute, the element becomes abs pos and the right thing moves under it. am i missing something?
  83. # [01:17] <JosephSilber> Hixie: check it out in ff
  84. # [01:17] <Hixie> oh i see, the width is on the inner ones, not the outer ones
  85. # [01:17] <Hixie> yup, looks like a bug
  86. # [01:17] <JosephSilber> k. will report
  87. # [01:18] <Hixie> (btw when making a test case you really want to use as little as possible. so e.g. all the styles on the button are extraneous here and should be dropped in the test. having a separate <script> block is extraneous if you can just do it inline. etc.)
  88. # [01:18] <Hixie> (i thought the rgba() thing was especially amusing :-) )
  89. # [01:18] <JosephSilber> It's scss
  90. # [01:19] * Quits: shepazu (~shepazu@67.201.82.8) (Quit: is sleepy)
  91. # [01:21] <Hixie> scss?
  92. # [01:21] * Joins: bholley (~bholley@187.64.32.150)
  93. # [01:21] <Hixie> in a test? :-)
  94. # [01:21] * Quits: foxtrotwhiskey (~foxtrotwh@c-98-225-154-188.hsd1.pa.comcast.net) (Ping timeout: 240 seconds)
  95. # [01:21] * Quits: jsbell (jsbell@nat/google/x-ozqpwramqkcleemu) (Quit: There's no place like home...)
  96. # [01:22] * Joins: foxtrotwhiskey (~foxtrotwh@c-98-225-154-188.hsd1.pa.comcast.net)
  97. # [01:23] * Joins: tantek (~tantek@70-36-139-254.dsl.dynamic.sonic.net)
  98. # [01:24] <JosephSilber> ha
  99. # [01:25] <TabAtkins> JosephSilber: Yeah, that's a bug.
  100. # [01:26] <JosephSilber> reporting
  101. # [01:26] * Quits: foxtrotwhiskey (~foxtrotwh@c-98-225-154-188.hsd1.pa.comcast.net) (Ping timeout: 246 seconds)
  102. # [01:26] * Joins: scor (~scor@c-98-217-11-242.hsd1.ma.comcast.net)
  103. # [01:26] * Quits: scor (~scor@c-98-217-11-242.hsd1.ma.comcast.net) (Changing host)
  104. # [01:26] * Joins: scor (~scor@drupal.org/user/52142/view)
  105. # [01:28] <SamB> SimonSapin: raw UTF-8, huh? well, as long as we aren't applying "UTF-8" to the UTF-16 ...
  106. # [01:28] * jorendorff is now known as jorendorff_away
  107. # [01:28] <SamB> (which is actually called something else)
  108. # [01:29] <SimonSapin> wait, what?
  109. # [01:29] <SimonSapin> no, it’s not CESU-8
  110. # [01:31] <JosephSilber> https://code.google.com/p/chromium/issues/detail?id=353837&thanks=353837&ts=1395188953
  111. # [01:32] * Quits: KevinMarks2 (~yaaic@2607:fb90:118:7192:a2b:45a8:f6f2:578a) (Ping timeout: 240 seconds)
  112. # [01:32] * Quits: estellevw (~estellevw@173-228-112-232.dsl.dynamic.sonic.net) (Quit: Snuggling with the puppies)
  113. # [01:33] * Joins: estellevw (~estellevw@173-228-112-232.dsl.dynamic.sonic.net)
  114. # [01:35] * Joins: lmclister (~lmclister@sjfw1.adobe.com)
  115. # [01:41] * Quits: sicking (~sicking@c-98-210-154-157.hsd1.ca.comcast.net) (Quit: sicking)
  116. # [01:43] * Joins: plutoniix (~plutoniix@210.213.57.70)
  117. # [01:47] * jonlee_ is now known as jonlee_|afk
  118. # [01:49] * Quits: qFox (~peter@53527597.cm-6-3b.dynamic.ziggo.nl) (Ping timeout: 255 seconds)
  119. # [01:52] * slightlyoff_ is now known as slightlyoff
  120. # [01:54] * Quits: estellevw (~estellevw@173-228-112-232.dsl.dynamic.sonic.net) (Quit: Snuggling with the puppies)
  121. # [01:54] * Quits: lmclister (~lmclister@sjfw1.adobe.com)
  122. # [01:56] * Quits: llkats (~llkats@206.169.83.230) (Remote host closed the connection)
  123. # [02:01] * Quits: ambv (~ambv@206.108.217.134) (Quit: sys.exit(0) # computer went to sleep)
  124. # [02:02] <MikeSmith> tantek: are all of the rel values in the POSH table of the link-relations page meant to be considered conforming/valid?
  125. # [02:02] * Quits: SonicX (~quassel@ip98-180-46-147.ga.at.cox.net) (Ping timeout: 264 seconds)
  126. # [02:03] <tantek> no
  127. # [02:03] <tantek> they're just random author extensions, HTML4 style
  128. # [02:04] <tantek> basically, they're stuff someone has found in the wild
  129. # [02:06] <MikeSmith> ok
  130. # [02:06] <MikeSmith> rel=publisher semms to be used quite a lot
  131. # [02:06] * Quits: bholley (~bholley@187.64.32.150) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
  132. # [02:07] * Quits: Lachy (~Lachy@cm-84.215.104.248.getinternet.no) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
  133. # [02:07] <tantek> if there's a spec for rel=publisher, and you think it's a useful value, go ahead and add it to http://microformats.org/wiki/existing-rel-values#HTML5_link_type_extensions
  134. # [02:08] <tantek> I haven't found a use for it myself so I've ignored it
  135. # [02:08] <tantek> I figure it someone cares about it enough, they'll do the minimal step of "registering" it by editing the wiki
  136. # [02:08] * Joins: morrita_ (uid16889@gateway/web/irccloud.com/x-rzabmlvqlctysnmb)
  137. # [02:08] * Quits: othermaciej (~mjs@17.114.217.18) (Quit: othermaciej)
  138. # [02:09] * Quits: jacobolus (~jacobolus@70-36-196-50.dsl.static.sonic.net) (Remote host closed the connection)
  139. # [02:14] * Joins: Lachy (~Lachy@cm-84.215.104.248.getinternet.no)
  140. # [02:17] <MikeSmith> tantek: yeah you're right. I'll wait to see if anybody registers it.
  141. # [02:19] * Quits: ehsan (~ehsan@24-52-243-72.cable.teksavvy.com) (Quit: Leaving...)
  142. # [02:25] * Joins: estellevw (~estellevw@173-228-112-232.dsl.dynamic.sonic.net)
  143. # [02:27] * Quits: estellevw (~estellevw@173-228-112-232.dsl.dynamic.sonic.net) (Client Quit)
  144. # [02:30] * Joins: dbaron (~dbaron@118-163-10-190.HINET-IP.hinet.net)
  145. # [02:31] * Joins: Ir1sh (~Ir1sh@c-98-199-139-18.hsd1.tx.comcast.net)
  146. # [02:31] * Quits: m4nu (~manu@216.252.204.51) (Read error: Connection reset by peer)
  147. # [02:33] * Joins: manu (~manu@216.252.204.51)
  148. # [02:33] * manu is now known as Guest53830
  149. # [02:35] * Guest53830 is now known as m4nu
  150. # [02:36] * Joins: estellevw (~estellevw@173-228-112-232.dsl.dynamic.sonic.net)
  151. # [02:36] * Joins: KevinMarks2 (~yaaic@2607:fb90:40f:d74e:9e12:90:dbdd:cc4f)
  152. # [02:37] * Quits: Ir1sh (~Ir1sh@c-98-199-139-18.hsd1.tx.comcast.net) (Ping timeout: 255 seconds)
  153. # [02:37] * Quits: estellevw (~estellevw@173-228-112-232.dsl.dynamic.sonic.net) (Client Quit)
  154. # [02:37] * Joins: bzalasky (~bzalasky@c-67-188-211-46.hsd1.ca.comcast.net)
  155. # [02:38] * Joins: KenjiBX (~KenjiBX@2401:fa00:4:fd00:a87f:7555:6572:b723)
  156. # [02:38] * Joins: llkats (~llkats@173-164-152-242-SFBA.hfc.comcastbusiness.net)
  157. # [02:40] * Joins: hasather (~hasather@80.91.33.141)
  158. # [02:43] * Joins: lmclister (~lmclister@c-98-210-38-110.hsd1.ca.comcast.net)
  159. # [02:45] * Quits: hasather (~hasather@80.91.33.141) (Ping timeout: 264 seconds)
  160. # [02:47] * Quits: benv (~benv@38.104.194.126) (Quit: Computer has gone to sleep.)
  161. # [02:47] * Joins: yoshu (~josh@173-160-239-6-Washington.hfc.comcastbusiness.net)
  162. # [02:50] * Joins: hasather (~hasather@80.91.33.141)
  163. # [02:53] * Quits: qrwteyrutiyoup (qrwteyruti@unaffiliated/qrwteyrutiyoup) (Ping timeout: 240 seconds)
  164. # [02:54] * Quits: hasather (~hasather@80.91.33.141) (Ping timeout: 252 seconds)
  165. # [02:54] * Quits: zama (zama@unaffiliated/stryx/x-3871776) (Ping timeout: 265 seconds)
  166. # [02:54] * Quits: lmclister (~lmclister@c-98-210-38-110.hsd1.ca.comcast.net)
  167. # [02:55] * Joins: zama (zama@unaffiliated/stryx/x-3871776)
  168. # [02:55] * Joins: qrwteyrutiyoup (qrwteyruti@unaffiliated/qrwteyrutiyoup)
  169. # [02:57] * Joins: yoshiki (yoshiki@nat/google/x-srsccrwqpduylhma)
  170. # [03:02] * Quits: beowulf (~sstewart@host31-50-102-181.range31-50.btcentralplus.com) (Remote host closed the connection)
  171. # [03:06] * ojan is now known as ojan_away
  172. # [03:06] * Joins: estellevw (~estellevw@173-228-112-232.dsl.dynamic.sonic.net)
  173. # [03:09] * Quits: KenjiBX (~KenjiBX@2401:fa00:4:fd00:a87f:7555:6572:b723) (Remote host closed the connection)
  174. # [03:13] * Krinkle|detached is now known as Krinkle
  175. # [03:14] * Joins: tav (~tav`@host109-154-1-151.range109-154.btcentralplus.com)
  176. # [03:16] * Quits: newbie49 (~Areks@rs.gridnine.com) (Read error: Connection timed out)
  177. # [03:17] * heycam is now known as heycam|away
  178. # [03:22] * Quits: bzalasky (~bzalasky@c-67-188-211-46.hsd1.ca.comcast.net) (Remote host closed the connection)
  179. # [03:24] * Quits: anchnk (~anchnk@static-176-182-231-245.ncc.abo.bbox.fr) (Quit: Leaving)
  180. # [03:25] * Joins: Goplat (~goplat@reactos/developer/Goplat)
  181. # [03:26] <Hixie> wow, a phishing attempt with the subject line "full specification"
  182. # [03:26] <Hixie> that's a bit more targetted than i expected!
  183. # [03:28] * Quits: jwalden (~waldo@corp.mtv2.mozilla.com) (Quit: back tomorrow, maybe a patch-landing still today, depending)
  184. # [03:28] * Joins: SonicX (~quassel@ip98-180-46-147.ga.at.cox.net)
  185. # [03:33] * Quits: filR (~textual@202.171.180.162) (Quit: Textual IRC Client: www.textualapp.com)
  186. # [03:35] * Quits: yoshu (~josh@173-160-239-6-Washington.hfc.comcastbusiness.net) (Quit: yoshu)
  187. # [03:35] * Joins: karlcow (~karl@nerval.la-grange.net)
  188. # [03:35] * Joins: yoshu (~josh@173-160-239-6-Washington.hfc.comcastbusiness.net)
  189. # [03:37] * Quits: scor (~scor@drupal.org/user/52142/view) (Quit: scor)
  190. # [03:43] * Quits: yoshu (~josh@173-160-239-6-Washington.hfc.comcastbusiness.net) (Quit: yoshu)
  191. # [03:45] * heycam|away is now known as heycam
  192. # [03:47] * Joins: yoshu (~josh@173-160-239-6-Washington.hfc.comcastbusiness.net)
  193. # [03:48] * Quits: yoshu (~josh@173-160-239-6-Washington.hfc.comcastbusiness.net) (Client Quit)
  194. # [03:49] * Joins: yoshu (~josh@173-160-239-6-Washington.hfc.comcastbusiness.net)
  195. # [03:49] * Quits: smaug____ (~chatzilla@cs78246079.pp.htv.fi) (Ping timeout: 246 seconds)
  196. # [03:52] * Joins: hasather (~hasather@80.91.33.141)
  197. # [03:53] * Quits: yoshu (~josh@173-160-239-6-Washington.hfc.comcastbusiness.net) (Ping timeout: 252 seconds)
  198. # [03:56] * Joins: lmclister (~lmclister@c-98-210-38-110.hsd1.ca.comcast.net)
  199. # [03:57] * Quits: hasather (~hasather@80.91.33.141) (Ping timeout: 264 seconds)
  200. # [03:59] * Joins: a-ja (~Instantbi@70.230.145.30)
  201. # [04:00] * Quits: SonicX (~quassel@ip98-180-46-147.ga.at.cox.net) (Ping timeout: 255 seconds)
  202. # [04:09] * Quits: llkats (~llkats@173-164-152-242-SFBA.hfc.comcastbusiness.net) (Remote host closed the connection)
  203. # [04:16] * Joins: deniak (~denis@141.162.122.109.rev.sfr.net)
  204. # [04:16] * Joins: llkats (~llkats@c-69-181-45-245.hsd1.ca.comcast.net)
  205. # [04:18] <Hixie> am i missing something, or does the JSON specification not say what the root of the grammar is
  206. # [04:20] * Joins: sicking (~sicking@corp-nat.p2p.sfo1.mozilla.com)
  207. # [04:21] <Hixie> rfc4627 does, so i guess i'll use that
  208. # [04:21] <Hixie> (how many specs does one format need, anyway)
  209. # [04:25] * Joins: bzalasky (~bzalasky@c-67-188-211-46.hsd1.ca.comcast.net)
  210. # [04:26] <estellevw> Question as to whether something is a bug or feature:
  211. # [04:26] <estellevw> when a min and max are both set on <input type="number"> chrome makes the input as narrow as needed for the width of the maximum value -- so when max is not set, the input is much wider. I can see that the #shadow-root <div id=inner-editor> is getting a width set, but I don't see where it is getting that width set.
  212. # [04:27] <estellevw> http://codepen.io/estelle/pen/rIlFv/ is the test case
  213. # [04:27] <estellevw> FF on the other hand has them all the same width
  214. # [04:27] <Hixie> if the question is "can a user agent vary the width of a type=number field based on the allowed range", the answer is yes. it can also vary the colour. it can also vary the width based on the time of day.
  215. # [04:28] <Hixie> it can also replace the text field with a button that pops up a dialog that asks the user for the number in roman numerals input via ASL recognised by webcam
  216. # [04:28] * Quits: morrita_ (uid16889@gateway/web/irccloud.com/x-rzabmlvqlctysnmb) (Quit: Connection closed for inactivity)
  217. # [04:29] * Quits: JosephSilber (~Joseph@ool-44c3e80a.static.optonline.net) (Ping timeout: 264 seconds)
  218. # [04:29] <estellevw> it isn't expected behavior though in the minds of most developers
  219. # [04:30] <Hixie> unfortunately, that is true
  220. # [04:30] <estellevw> it forces developers to include css width for input types because default width is no longer rational
  221. # [04:30] <Hixie> but most developers seem to forget that HTML is not primarily (let alone exclusively) a visual page description language
  222. # [04:30] <estellevw> ok, thanks
  223. # [04:31] <estellevw> so, feature, not bug. thanks
  224. # [04:31] <Hixie> i mean, there's nothing about HTML that says that the CSS will even be looked at
  225. # [04:31] <Hixie> or that the page won't be rendered by speaking it out loud
  226. # [04:31] <Hixie> or in braille
  227. # [04:31] <Hixie> on a dynamic braille display
  228. # [04:33] <Hixie> in other news, wtf, https://www.ietf.org/rfc/rfc4627.txt actually CONTRADICTS the json.org description
  229. # [04:34] <Krinkle> In what way?
  230. # [04:35] <Hixie> the rfc (and ecma 404) say that whitespace can be before or after tokens, the page says whitespace can only be between tokens.
  231. # [04:37] <SimonSapin> yay for competing specs
  232. # [04:38] <zewt> not really surprising that a description of a format based on unreadable state diagrams is imprecise
  233. # [04:38] <Hixie> the diagrams are actually very precise
  234. # [04:38] <Hixie> it's the stuff around them that's confusing
  235. # [04:38] <zewt> reminds me of sqlite's documentation: used to be readable, then at some point changed to that style of diagram, which made them completely worthless and unreadable
  236. # [04:38] <Hixie> you don't like railroad diagrams? why not?
  237. # [04:39] <Hixie> they're really nice and simple to understand
  238. # [04:39] <zewt> because they're hard to read
  239. # [04:39] <Hixie> if HTML's syntax wasn't such a mess, i'd totally use them to specify everything in HTML too
  240. # [04:39] <Hixie> i find them really easy to read
  241. # [04:39] <Hixie> you just start on one end and follow the paths
  242. # [04:39] <zewt> for documentation, at least (eg. user-facing)
  243. # [04:40] <zewt> given http://www.postgresql.org/docs/9.0/static/sql-select.html vs. https://www.sqlite.org/lang_select.html, sqlite's are utterly useless and opaque to me as a user
  244. # [04:41] <Hixie> oh man, i couldn't disagree more
  245. # [04:41] <Hixie> the postgre one there is the unreadable one
  246. # [04:41] <zewt> i can skim and understand postgresql's at a glance; i have to stare and squint at sqlite's
  247. # [04:41] <Hixie> the mysql docs use the postgre style too and i have to twease them apart each time to work out what they mean
  248. # [04:42] <Hixie> the sqlite one is just a matter of following the line, so much easier for me
  249. # [04:42] <Hixie> (the sqlite ones are even better than the json ones, since they have arrows)
  250. # [04:43] <zewt> maybe for a spec where i was writing a parser, but as a user writing SQL queries postgres's lets me see the command much more naturally
  251. # [04:43] <Hixie> oh hey, look at that. nothing in ecma 404 says that the keys in a json object must be unique, and the RFC only makes uniqueness a SHOULD.
  252. # [04:44] <Krinkle> Well, the rfc says "Insignificant whitespace is allowed before or after any of the six structural characters"
  253. # [04:44] <Hixie> zewt: i have found the opposite, personally
  254. # [04:44] <Krinkle> whereas ecma 404 says before or after any value
  255. # [04:44] <zewt> without a parser algorithm, a "must" would be pretty meaningless anyway
  256. # [04:44] <Hixie> Krinkle: right, those two agree. but json.org says "between".
  257. # [04:44] <Krinkle> so that still leaves a different regarding whitespace before e.g. a non-object as root
  258. # [04:44] <zewt> at least as far as parsers go
  259. # [04:44] <Hixie> Krinkle: well that too
  260. # [04:44] <Krinkle> even those two don't agree imho
  261. # [04:45] <Krinkle> e.g. ` "foo" `
  262. # [04:45] <Hixie> Krinkle: but the rfc is clear that only object and array are allowed as root
  263. # [04:45] <Krinkle> as the sole json packet
  264. # [04:45] <zewt> or some rule that says "if there are illegal duplicated keys, parsing fails"
  265. # [04:45] <Hixie> Krinkle: 404 and json.org don't actually say what the root of a json file is (!)
  266. # [04:45] <Hixie> Krinkle: (i was complaining about that earlier)
  267. # [04:45] <zewt> from my use of JSON, any type can be the root; "10" is valid JSON
  268. # [04:45] <zewt> (but I know there are parsers that expect the root to be a dictionary)
  269. # [04:45] <Krinkle> Yes, any JSON value (which is specified)
  270. # [04:46] <Krinkle> I don't think it should have to declare a root, you're encoding or decoding values as JSON values.
  271. # [04:46] <Krinkle> that should be sufficient
  272. # [04:46] <Hixie> the RFC disagrees
  273. # [04:46] <zewt> Krinkle: well, "value" should be the root (using json.org's terminology)
  274. # [04:46] <zewt> that should definitely be specified, if json.org is meant to be used as a spec (don't really know if it is)
  275. # [04:47] * Hixie decides that for his purposes, JSON objects are gonna have to have unique keys
  276. # [04:47] <Krinkle> Where does the RFC say that root can only be array or object?
  277. # [04:47] <Hixie> section 2 paragraph 2: A JSON text is a serialized object or array.
  278. # [04:47] <Hixie> JSON-text = object / array
  279. # [04:47] * Joins: othermaciej (~mjs@c-50-136-134-16.hsd1.ca.comcast.net)
  280. # [04:47] <Krinkle> Right
  281. # [04:48] <zewt> seems like the main important thing is defining which key is used if there's a duplicate (first or last, presumably)
  282. # [04:48] <Hixie> zewt: given that these specs all agree that parsers can "support a superset" of json... (!)
  283. # [04:49] <Krinkle> So does this actually cause a problem in practice? Or just pointing out an oversight? I think all parsers I've seen just treat 'JSON-text = value' that's the easiest
  284. # [04:49] <zewt> i've written JSON parsers and I couldn't even say which behavior my parsers use (but they're only used in controlled environments, where it doesn't matter)
  285. # [04:49] <Hixie> Krinkle: i'm implementing a parser and have no idea what i'm supposed to be doing, either about whitespace, about the root, or about keys in objects.
  286. # [04:49] <zewt> (most likely the last)
  287. # [04:50] <Hixie> man, the lack of comments in json is a pain in teh ass
  288. # [04:50] <Krinkle> ignore whitespace, use your 'value' argorythem from the root (don't special case the root, just go straight into parsing the value),
  289. # [04:50] <Krinkle> what about keys in objects?
  290. # [04:50] <zewt> FWIW, both Chrome and Firefox's JSON.parse("10") return 10, so on that one I'd have to say the RFC (from what you've described) is wrong
  291. # [04:51] <zewt> (a data point which I'm sure you already know, heh)
  292. # [04:51] <Hixie> the "value" thing directly contradicts the RFC, and the others are entirely vague about this, so I'm not convinced about that.
  293. # [04:51] <Krinkle> it doesn't contradict it, it just supports a compatible superset.
  294. # [04:51] <Krinkle> one that is quite common
  295. # [04:51] <zewt> both of those also return 10 for " 10"
  296. # [04:52] <Krinkle> and "10" for ' "10" '
  297. # [04:52] <zewt> Krinkle: of course, if the real definition of JSON is some mysterious superset of what those "specs" say, they're pretty worthless as specs
  298. # [04:52] <Krinkle> common sense and simple/lazy implementation
  299. # [04:53] <Krinkle> and I'm sure there's a wide scale of test cases of existing implementations you can plug in to make sure you did it right
  300. # [04:53] <zewt> if the specs say whitespace can only lie between tokens and don't allow a newline at the end, that'll break tons of inputs
  301. # [04:53] <zewt> (i always output a \n at the end of JSON, so curl output isn't stupid)
  302. # [04:53] <Hixie> Krinkle: keys in objects, as in, duplicate keys
  303. # [04:53] <zewt> if you have to apply liberal common sense and compare against existing implementations to implement JSON because the JSON specs aren't enough, those JSON specs are broken.
  304. # [04:54] <Krinkle> as being the parser, it wouldn't break anything. You'd tolerate more than others if anything, more likely you'd be tolerating what everybody else tolerates.
  305. # [04:54] <Krinkle> being the encoder is slightly more difficult indeed.
  306. # [04:54] <Hixie> zewt: the json specs being broken is more or less the thesis of my rant tonight, yes.
  307. # [04:54] <zewt> JSON.parse('{"a": 1, "a": 2}').a returns 2 in both chrome and firefox, which is also what I'd expect (parse a key, write it to the dictionary, if it happens to already be in the dictionary overwrite it)
  308. # [04:55] <SimonSapin> Krinkle: if you need common sense and guessing to fill the holes in a spec, it’s a bad spec
  309. # [04:56] <Krinkle> I'm not saying it's a good spec (I think it's better than most specs and a hell of a lot easier to implement as such), just saying it seems a moot point to doubt over. I think it's interesting to talk about, but if you're unsure what to do in the actual encoding/parser writing, I'd know better.
  310. # [04:56] <Krinkle> the safest route would be to encode as minimal as possible (no whitespace of any kind, and assuming your implementation program language doesn't support dupe keys, that input isn't a problem).
  311. # [04:57] <zewt> hardly moot: if the specs are ambiguous or wrong, then they should either be fixed (if whoever's maintaining the spec is willing to fix them, which RFCs seem to have a poor record of) or replaced
  312. # [04:59] <Krinkle> and in the parser, if you encounter a dupe key you can blame the input, garbage in garbage out. throw an error, or silently keep the first or last encounter. Shouldn't matter in practice as I'd consider it invalid input.
  313. # [04:59] <zewt> json.org seems more like a description of the file format and not really a spec--it says what the file format looks like, but nothing in precise terms about what to *do* with it. that in mind, the main error seems to be the whitespace issue
  314. # [04:59] <Krinkle> Hm.. the spec doesnt' say keys have to be unique. interesting.
  315. # [04:59] * Joins: SonicX (~quassel@ip98-180-46-147.ga.at.cox.net)
  316. # [04:59] <zewt> web specs always have to precisely define how "invalid input" is handled
  317. # [05:00] <Krinkle> None of the languages listed support that, so it's obviously an oversight (no ambiguity as what the intent was). That should be fixed indeed.
  318. # [05:00] <zewt> json.org doesn't (but it doesn't seem to be attempting to be a real spec, so that's probably not a bug)
  319. # [05:00] * Joins: JosephSilber (~Joseph@ool-44c3e80a.static.optonline.net)
  320. # [05:01] * Quits: othermaciej (~mjs@c-50-136-134-16.hsd1.ca.comcast.net) (Quit: othermaciej)
  321. # [05:02] * Quits: llkats (~llkats@c-69-181-45-245.hsd1.ca.comcast.net) (Remote host closed the connection)
  322. # [05:08] <SimonSapin> I like CSS Syntax’s approach of having non-normative railroad diagrams to get a idea of what the syntax looks like, and precise normative text for implementers
  323. # [05:09] * Quits: weinig (~weinig@98.234.191.242) (Remote host closed the connection)
  324. # [05:09] * Joins: weinig (~weinig@98.234.191.242)
  325. # [05:14] <Hixie> Krinkle: the RFC says "SHOULD", which means it wasn't even an oversight there
  326. # [05:15] <Hixie> another bug... looks like there's nothing saying that lone surrogates are illegal
  327. # [05:15] <Hixie> (in escapes, i mean)
  328. # [05:17] <Hixie> interesting, leading zeros in numbers aren't allowed
  329. # [05:17] <Hixie> pity about the lack of trailing commas
  330. # [05:17] <Hixie> (in objects or arrays)
  331. # [05:18] <zewt> they don't seem to be illegal according to chrome/firefox's implementations (but I expect basically zero non-web implementations will, since if you output to UTF-8...)
  332. # [05:18] <zewt> also, whoever's responsible for infecting JSON with UTF-16 needs to be exposed and publically shamed
  333. # [05:19] * Quits: lmclister (~lmclister@c-98-210-38-110.hsd1.ca.comcast.net)
  334. # [05:20] <Hixie> zewt: that's just from its JS heritage, i guess
  335. # [05:21] <Hixie> ok. for my purposes, the root can be any value, whitespace is allowed anywhere outside a leaf token, duplicate keys are fatal error invalid, and lone surrogate escapes are fatal error invalid.
  336. # [05:21] * Quits: MikeSmith (~mike@sideshowbarker.net) (Ping timeout: 240 seconds)
  337. # [05:23] <zewt> don't know your context, but for general parsing i think duplicate keys shouldn't be a fatal error; take the last seen value
  338. # [05:23] * Quits: JosephSilber (~Joseph@ool-44c3e80a.static.optonline.net) (Quit: Leaving)
  339. # [05:24] <zewt> that seems to be what most implementations land on, intentionally or not (json.loads in Python does the same)
  340. # [05:25] <Hixie> that seems like a recipe for a security bug
  341. # [05:28] * Joins: MikeSmith (~mike@sideshowbarker.net)
  342. # [05:28] <zewt> only if someone has other behavior (like picking the first-seen value), right?
  343. # [05:28] <Hixie> right
  344. # [05:28] <Hixie> in particular, if a validator does
  345. # [05:28] <Hixie> or a serialiser
  346. # [05:31] * Quits: MikeSmith (~mike@sideshowbarker.net) (Client Quit)
  347. # [05:32] * Joins: jacobolus (~jacobolus@70-36-196-50.dsl.static.sonic.net)
  348. # [05:35] <zewt> i guess i could see a streaming parser doing something different (but a streaming parser couldn't enforce unique keys anyway) ... minor since JSON is rarely streamed, but worth mentioning i guess
  349. # [05:37] * Joins: MikeSmith (~mike@sideshowbarker.net)
  350. # [05:42] <Hixie> huh, no range on numbers, either
  351. # [05:44] <zewt> json.loads('9'*100000) gives an exact result in python, heh
  352. # [05:53] * Joins: jernoble|laptop (~jernoble@199-83-223-98.PUBLIC.monkeybrains.net)
  353. # [05:54] * Quits: jernoble|laptop (~jernoble@199-83-223-98.PUBLIC.monkeybrains.net) (Client Quit)
  354. # [06:06] * Quits: jernoble (~jernoble@17.202.46.221) (Quit: Textual IRC Client: www.textualapp.com)
  355. # [06:07] * Joins: jernoble (~jernoble@17.202.46.221)
  356. # [06:09] * Quits: SonicX (~quassel@ip98-180-46-147.ga.at.cox.net) (Remote host closed the connection)
  357. # [06:18] * Quits: plutoniix (~plutoniix@210.213.57.70) (Ping timeout: 240 seconds)
  358. # [06:18] * Joins: plutoniix (~plutoniix@210.213.57.70)
  359. # [06:20] * Quits: sicking (~sicking@corp-nat.p2p.sfo1.mozilla.com) (Quit: sicking)
  360. # [06:24] * Joins: sicking (~sicking@corp-nat.p2p.sfo1.mozilla.com)
  361. # [06:44] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
  362. # [06:45] * Joins: glob (~glob@me.glob.com.au)
  363. # [07:04] * heycam is now known as heycam|away
  364. # [07:08] * Quits: karlcow (~karl@nerval.la-grange.net) (Quit: This computer has gone to sleep)
  365. # [07:09] <MikeSmith> nashorn wtf
  366. # [07:09] * Joins: karlcow (~karl@nerval.la-grange.net)
  367. # [07:15] * Quits: Bass10 (~Bass10@c-76-113-194-7.hsd1.mn.comcast.net) (Ping timeout: 264 seconds)
  368. # [07:15] * Joins: lmclister (~lmclister@c-98-210-38-110.hsd1.ca.comcast.net)
  369. # [07:16] * Quits: lmclister (~lmclister@c-98-210-38-110.hsd1.ca.comcast.net) (Client Quit)
  370. # [07:17] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Remote host closed the connection)
  371. # [07:18] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
  372. # [07:22] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Ping timeout: 246 seconds)
  373. # [07:23] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
  374. # [07:39] * Joins: roc (~chatzilla@220-137-252-30.dynamic.hinet.net)
  375. # [07:42] * Joins: yellowmellow (c6e4c9ac@gateway/web/freenode/ip.198.228.201.172)
  376. # [07:48] * Joins: shepazu (~shepazu@67.201.82.8)
  377. # [07:52] * Joins: hasather (~hasather@80.91.33.141)
  378. # [07:52] * heycam|away is now known as heycam
  379. # [07:53] * Joins: niloy (~niloy@110.224.128.216)
  380. # [07:56] * Quits: hasather (~hasather@80.91.33.141) (Ping timeout: 255 seconds)
  381. # [08:00] * Quits: weinig (~weinig@98.234.191.242) (Quit: weinig)
  382. # [08:01] * Krinkle is now known as Krinkle|detached
  383. # [08:05] * Joins: davve (~user@83.218.67.123)
  384. # [08:09] * Quits: KevinMarks2 (~yaaic@2607:fb90:40f:d74e:9e12:90:dbdd:cc4f) (Ping timeout: 240 seconds)
  385. # [08:10] * Quits: yellowmellow (c6e4c9ac@gateway/web/freenode/ip.198.228.201.172) (Ping timeout: 245 seconds)
  386. # [08:11] * glob is now known as glob|away
  387. # [08:12] * Joins: KevinMarks2 (~yaaic@2607:fb90:11d:9a7e:677b:b2f9:f7ec:4ae5)
  388. # [08:13] * Quits: karlcow (~karl@nerval.la-grange.net) (Quit: This computer has gone to sleep)
  389. # [08:15] * Joins: karlcow (~karl@nerval.la-grange.net)
  390. # [08:16] * Joins: Ducki (~Ducki@137.116.197.171)
  391. # [08:18] * Joins: richt (~richt@83.218.67.123)
  392. # [08:19] * Joins: zdobersek (~zan@tsn85-159-236-214.dyn.nltelcom.net)
  393. # [08:22] * glob|away is now known as glob
  394. # [08:33] * Joins: mitsuhiko (~mitsuhiko@ubuntu/member/mitsuhiko)
  395. # [08:35] * Quits: Goplat (~goplat@reactos/developer/Goplat) (Remote host closed the connection)
  396. # [08:37] * Quits: roc (~chatzilla@220-137-252-30.dynamic.hinet.net) (Ping timeout: 252 seconds)
  397. # [08:39] * Quits: karlcow (~karl@nerval.la-grange.net) (Quit: :tiuQ tiuq sah woclrak)
  398. # [08:39] * Joins: karlcow (~karl@nerval.la-grange.net)
  399. # [08:41] * Joins: roc (~chatzilla@220-137-252-30.dynamic.hinet.net)
  400. # [08:42] * Joins: Ms2ger (~Ms2ger@184.229-64-87.adsl-dyn.isp.belgacom.be)
  401. # [08:43] * Joins: markkes (~markkes@62.207.90.201)
  402. # [08:50] * Quits: roc (~chatzilla@220-137-252-30.dynamic.hinet.net) (Ping timeout: 246 seconds)
  403. # [08:52] * Quits: karlcow (~karl@nerval.la-grange.net) (Quit: This computer has gone to sleep)
  404. # [08:53] * Joins: karlcow (~karl@nerval.la-grange.net)
  405. # [08:53] * Joins: KevinMarks3 (~yaaic@c-67-164-14-200.hsd1.ca.comcast.net)
  406. # [08:57] * Quits: KevinMarks2 (~yaaic@2607:fb90:11d:9a7e:677b:b2f9:f7ec:4ae5) (Ping timeout: 240 seconds)
  407. # [08:57] * Quits: karlcow (~karl@nerval.la-grange.net) (Ping timeout: 246 seconds)
  408. # [09:02] * Joins: llkats (~llkats@c-69-181-45-245.hsd1.ca.comcast.net)
  409. # [09:03] * Joins: hasather (~hasather@80.91.33.141)
  410. # [09:07] * Quits: hasather (~hasather@80.91.33.141) (Ping timeout: 264 seconds)
  411. # [09:07] * Quits: llkats (~llkats@c-69-181-45-245.hsd1.ca.comcast.net) (Ping timeout: 264 seconds)
  412. # [09:11] * Joins: karlcow (~karl@nerval.la-grange.net)
  413. # [09:12] * Quits: karlcow (~karl@nerval.la-grange.net) (Client Quit)
  414. # [09:12] * Joins: karlcow (~karl@nerval.la-grange.net)
  415. # [09:18] * Joins: anchnk (c1fc9d31@gateway/web/freenode/ip.193.252.157.49)
  416. # [09:22] * abucur_ is now known as abucur
  417. # [09:29] * dshwang_ is now known as dshwang
  418. # [09:30] * Joins: nessy (~silviapf@101.164.214.231)
  419. # [09:34] * Joins: annevk (~annevk@2.31.25.165)
  420. # [09:40] * Joins: beowulf (~sstewart@host31-50-102-181.range31-50.btcentralplus.com)
  421. # [09:40] <zcorpan> Hixie: the last 3 commit emails have an error message
  422. # [09:47] * Joins: edsu (~edsu@li144-162.members.linode.com)
  423. # [09:47] * Quits: edsu (~edsu@li144-162.members.linode.com) (Changing host)
  424. # [09:47] * Joins: edsu (~edsu@pdpc/supporter/active/edsu)
  425. # [09:55] * Joins: jensnockert (~jensnocke@dynamic.1.7.34dbfd722180.e0f8471ae7fa.afb.bredband2.com)
  426. # [09:55] * Quits: jensnockert (~jensnocke@dynamic.1.7.34dbfd722180.e0f8471ae7fa.afb.bredband2.com) (Remote host closed the connection)
  427. # [09:57] * Joins: jensnockert (~jensnocke@dynamic.1.7.34dbfd722180.e0f8471ae7fa.afb.bredband2.com)
  428. # [09:58] * Quits: tantek (~tantek@70-36-139-254.dsl.dynamic.sonic.net) (Quit: tantek)
  429. # [10:00] * Joins: hasather (~hasather@80.91.33.141)
  430. # [10:01] * Joins: sankha93 (~sankha93@117.240.111.2)
  431. # [10:01] * Quits: sankha93 (~sankha93@117.240.111.2) (Changing host)
  432. # [10:01] * Joins: sankha93 (~sankha93@fsf/emeritus/sankha93)
  433. # [10:02] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Remote host closed the connection)
  434. # [10:03] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
  435. # [10:04] * Joins: darobin (~darobin@78.109.80.74)
  436. # [10:06] * Quits: Lachy (~Lachy@cm-84.215.104.248.getinternet.no) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
  437. # [10:07] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Ping timeout: 246 seconds)
  438. # [10:08] * Quits: edsu (~edsu@pdpc/supporter/active/edsu) (Quit: leaving)
  439. # [10:08] * Joins: edsu (~edsu@pdpc/supporter/active/edsu)
  440. # [10:09] * Quits: sicking (~sicking@corp-nat.p2p.sfo1.mozilla.com) (Ping timeout: 246 seconds)
  441. # [10:09] * glob is now known as glob|away
  442. # [10:09] * Quits: glob|away (~glob@me.glob.com.au) (Quit: Leaving...)
  443. # [10:13] * Joins: qFox (~peter@53527597.cm-6-3b.dynamic.ziggo.nl)
  444. # [10:14] * Quits: Ms2ger (~Ms2ger@184.229-64-87.adsl-dyn.isp.belgacom.be) (Quit: bbl)
  445. # [10:15] * Joins: Areks (~Areks@rs.gridnine.com)
  446. # [10:23] * Quits: nessy (~silviapf@101.164.214.231) (Quit: Leaving.)
  447. # [10:29] * Joins: WolfieZero (~WolfieZer@neils-wireless.manor.fubra.net)
  448. # [10:34] <annevk> ooh, maybe the problem is with svn.whatwg.org and not my server
  449. # [10:37] <jgraham> /win 4
  450. # [10:37] * Joins: Lachy (~Lachy@213.166.174.2)
  451. # [10:44] * Quits: annevk (~annevk@2.31.25.165) (Remote host closed the connection)
  452. # [10:46] * Quits: niloy (~niloy@110.224.128.216) (Ping timeout: 264 seconds)
  453. # [10:59] * WolfieZero is now known as WolfieZero|Away
  454. # [11:01] * WolfieZero|Away is now known as WolfieZero
  455. # [11:03] * Joins: niloy (~niloy@110.224.128.216)
  456. # [11:05] * Quits: jacobolus (~jacobolus@70-36-196-50.dsl.static.sonic.net) (Remote host closed the connection)
  457. # [11:06] * Joins: jacobolus (~jacobolus@70-36-196-50.dsl.static.sonic.net)
  458. # [11:07] * Quits: karlcow (~karl@nerval.la-grange.net) (Quit: :tiuQ tiuq sah woclrak)
  459. # [11:08] * Joins: newbie (~Areks@rs.gridnine.com)
  460. # [11:09] * newbie is now known as Guest97338
  461. # [11:09] * Quits: Areks (~Areks@rs.gridnine.com) (Ping timeout: 260 seconds)
  462. # [11:10] * Quits: jacobolus (~jacobolus@70-36-196-50.dsl.static.sonic.net) (Ping timeout: 240 seconds)
  463. # [11:10] * Joins: annevk (~annevk@207.218.72.65)
  464. # [11:14] * Quits: ahf (ahf@irssi/staff/ahf) (Ping timeout: 264 seconds)
  465. # [11:15] * heycam is now known as heycam|away
  466. # [11:16] * Joins: jensnockert_ (~jensnocke@dynamic.1.7.34dbfd722180.e0f8471ae7fa.afb.bredband2.com)
  467. # [11:19] * Quits: sankha93 (~sankha93@fsf/emeritus/sankha93) (Ping timeout: 246 seconds)
  468. # [11:19] * Joins: Ms2ger (~Ms2ger@nata241.ugent.be)
  469. # [11:19] * Quits: jensnockert (~jensnocke@dynamic.1.7.34dbfd722180.e0f8471ae7fa.afb.bredband2.com) (Ping timeout: 246 seconds)
  470. # [11:19] * Joins: satazor (~satazor@80.78.37.188.rev.vodafone.pt)
  471. # [11:21] <annevk> Hixie: the JSON thing is being fixed
  472. # [11:22] <annevk> Although I wonder what the difference is between http://tools.ietf.org/html/rfc7158 and http://tools.ietf.org/html/rfc7159
  473. # [11:23] * Quits: Streusel (~Anonymous@unaffiliated/streusel) (Quit: Computer has gone to sleep.)
  474. # [11:25] <annevk> It seems they fixed the date and removed Tim Bray's email address in a <meta> element
  475. # [11:26] <annevk> In any event, that RFC matches 404 much closer: http://tools.ietf.org/html/rfc7159#section-2
  476. # [11:28] * Quits: dbaron (~dbaron@118-163-10-190.HINET-IP.hinet.net) (Quit: 8403864 bytes have been tenured, next gc will be global.)
  477. # [11:28] * Joins: cheron (~cheron@unaffiliated/cheron)
  478. # [11:30] <Ms2ger> As for the SQL definitions in the backscroll: I find neither particularly readable, but then again, I don't know SQL
  479. # [11:31] * Joins: sankha93 (~sankha93@117.240.111.2)
  480. # [11:31] * Quits: sankha93 (~sankha93@117.240.111.2) (Changing host)
  481. # [11:31] * Joins: sankha93 (~sankha93@fsf/emeritus/sankha93)
  482. # [11:32] * Quits: plutoniix (~plutoniix@210.213.57.70) (Quit: จรลี จรลา)
  483. # [11:35] * Quits: 64MAADQAN (scrollback@conference/jsconf/x-oxodknlhktwrkyfb) (Remote host closed the connection)
  484. # [11:37] * Joins: plutoniix (~plutoniix@210.213.57.70)
  485. # [11:38] * Joins: 6JTAAFD3J (scrollback@conference/jsconf/x-cfifyjdfobqavvyg)
  486. # [11:39] * WolfieZero is now known as WolfieZero|Away
  487. # [11:43] * Quits: anchnk (c1fc9d31@gateway/web/freenode/ip.193.252.157.49) (Ping timeout: 245 seconds)
  488. # [11:43] * Quits: plutoniix (~plutoniix@210.213.57.70) (Quit: จรลี จรลา)
  489. # [11:46] * Joins: nessy (~silviapf@101.164.214.231)
  490. # [11:46] <annevk> Is Jeff basically saying power is for sale? https://twitter.com/jeff_jaffe/status/446072553820278785
  491. # [11:47] * Quits: jensnockert_ (~jensnocke@dynamic.1.7.34dbfd722180.e0f8471ae7fa.afb.bredband2.com) (Remote host closed the connection)
  492. # [11:50] * Quits: nunnun (~hiro@sculptor.local.hiro.ne.jp) (Ping timeout: 264 seconds)
  493. # [11:51] * Quits: satazor (~satazor@80.78.37.188.rev.vodafone.pt) (Remote host closed the connection)
  494. # [11:51] * Joins: satazor (~satazor@80.78.37.188.rev.vodafone.pt)
  495. # [11:52] * WolfieZero|Away is now known as WolfieZero
  496. # [11:52] * Joins: nunnun (~hiro@sculptor.local.hiro.ne.jp)
  497. # [11:52] <darobin> annevk: I don't think it's clear what he's saying
  498. # [11:52] * Quits: 6JTAAFD3J (scrollback@conference/jsconf/x-cfifyjdfobqavvyg) (Remote host closed the connection)
  499. # [11:53] * Joins: 6JTAAFEI0 (scrollback@conference/jsconf/x-zhngtoifycgfyxgj)
  500. # [11:53] <darobin> I think that the problem he's looking at is how much team involvement a given individual member may require
  501. # [11:53] <darobin> if it's too high, that would drive the price up
  502. # [11:53] <darobin> I'm not sure that's really related to power; I reckon "power" is 1) ill-defined in this case and 2) largely orthogonal
  503. # [11:54] <darobin> I wonder if there could be an "Individual College"
  504. # [11:55] <darobin> for every N individual members, there is one seat added to the AC
  505. # [11:55] <darobin> and individual members elect representatives to those seats
  506. # [11:55] <darobin> I'm not sure that would be of any use, though
  507. # [11:55] <darobin> maybe I should join that webizen thing
  508. # [11:55] * Quits: satazor (~satazor@80.78.37.188.rev.vodafone.pt) (Ping timeout: 240 seconds)
  509. # [11:56] * darobin sighs
  510. # [12:01] * Quits: Ms2ger (~Ms2ger@nata241.ugent.be) (Ping timeout: 240 seconds)
  511. # [12:02] * Joins: Ms2ger (~Ms2ger@nata241.ugent.be)
  512. # [12:04] * Quits: seventh (seventh@192.64.4.63) (Ping timeout: 240 seconds)
  513. # [12:06] * Joins: jacobolus (~jacobolus@70-36-196-50.dsl.static.sonic.net)
  514. # [12:08] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
  515. # [12:13] <MikeSmith> there should be a thing where, if you pay extra, you're guaranteed nobody from the team will interfere with your work
  516. # [12:14] <Ms2ger> Like, Ian Jacobs won't change my specs behind my back?
  517. # [12:19] <jgraham> Well we have that
  518. # [12:19] <jgraham> Except instead of paying extra you pay less
  519. # [12:19] <jgraham> It's called "WHATWG"
  520. # [12:19] <Ms2ger> Zing
  521. # [12:21] * Joins: SonicX (~quassel@ip98-180-46-147.ga.at.cox.net)
  522. # [12:25] * Quits: Ms2ger (~Ms2ger@nata241.ugent.be) (Ping timeout: 240 seconds)
  523. # [12:26] * MikeSmith readies drm.spec.whatwg.org for non-interference-guaranteed work at whatwg
  524. # [12:27] * Joins: shaunbaker (~shaunbake@brick-lane.lbi.co.uk)
  525. # [12:28] * Joins: satazor (~satazor@188.250.93.65)
  526. # [12:32] * Joins: scor (scor@drupal.org/user/52142/view)
  527. # [12:33] * Quits: scor (scor@drupal.org/user/52142/view) (Client Quit)
  528. # [12:37] <annevk> whatwg.org/C is out of date again :-(
  529. # [12:38] * Joins: Ms2ger (~Ms2ger@nata241.ugent.be)
  530. # [12:47] * WolfieZero is now known as WolfieZero|Away
  531. # [12:50] * WolfieZero|Away is now known as WolfieZero
  532. # [12:52] * Joins: scor (scor@drupal.org/user/52142/view)
  533. # [12:55] * Quits: Ms2ger (~Ms2ger@nata241.ugent.be) (Ping timeout: 240 seconds)
  534. # [13:02] * Joins: jensnockert (~jensnocke@dynamic.1.7.34dbfd722180.e0f8471ae7fa.afb.bredband2.com)
  535. # [13:05] * jorendorff_away is now known as jorendorff
  536. # [13:07] * Quits: jensnockert (~jensnocke@dynamic.1.7.34dbfd722180.e0f8471ae7fa.afb.bredband2.com) (Read error: Connection reset by peer)
  537. # [13:07] * Quits: nessy (~silviapf@101.164.214.231) (Quit: Leaving.)
  538. # [13:07] * Joins: jensnockert_ (~jensnocke@dynamic.1.7.34dbfd722180.e0f8471ae7fa.afb.bredband2.com)
  539. # [13:11] * Joins: Ducki_ (~Ducki@138.91.52.163)
  540. # [13:13] * Quits: Ducki (~Ducki@137.116.197.171) (Ping timeout: 240 seconds)
  541. # [13:14] * WolfieZero is now known as WolfieZero|Away
  542. # [13:21] * Joins: ahf (ahf@irssi/staff/ahf)
  543. # [13:22] * WolfieZero|Away is now known as WolfieZero
  544. # [13:23] * WolfieZero is now known as WolfieZero|Away
  545. # [13:30] * Quits: sankha93 (~sankha93@fsf/emeritus/sankha93) (Remote host closed the connection)
  546. # [13:31] * Parts: a-ja (~Instantbi@70.230.145.30)
  547. # [13:35] * WolfieZero|Away is now known as WolfieZero
  548. # [13:36] * Joins: sedovsek (~robert@89.143.12.238)
  549. # [13:39] * Joins: felipeduardo (~felipedua@177.16.92.27)
  550. # [13:40] * Joins: Ducki (~Ducki@137.116.197.171)
  551. # [13:40] * Joins: decotii (~decotii@hq.croscon.com)
  552. # [13:41] * Joins: shannonmoeller (~shannonmo@pool-108-17-8-225.bflony.fios.verizon.net)
  553. # [13:42] <foolip_> MikeSmith: what's that spec supposed to be?
  554. # [13:42] <foolip_> april fools?
  555. # [13:43] * Quits: Ducki_ (~Ducki@138.91.52.163) (Ping timeout: 264 seconds)
  556. # [13:43] <MikeSmith> foolip_: hadn't thought it through yet
  557. # [13:51] * Quits: satazor (~satazor@188.250.93.65) (Remote host closed the connection)
  558. # [13:52] * Joins: smaug____ (~chatzilla@cs78246079.pp.htv.fi)
  559. # [13:57] * Joins: Bass10 (~Bass10@c-76-113-194-7.hsd1.mn.comcast.net)
  560. # [14:01] * Joins: TuRnaD0 (~Thunderbi@x1-6-e0-46-9a-1e-fe-ca.cpe.webspeed.dk)
  561. # [14:03] * Quits: sedovsek (~robert@89.143.12.238) (Quit: sedovsek)
  562. # [14:05] * Joins: sedovsek (~robert@89.143.12.238)
  563. # [14:11] * Joins: bholley (~bholley@187.64.32.150)
  564. # [14:19] * Joins: JosephSilber (~Joseph@ool-44c3e80a.static.optonline.net)
  565. # [14:22] * Joins: satazor (~satazor@188.250.93.65)
  566. # [14:24] * Quits: niloy (~niloy@110.224.128.216) (Ping timeout: 246 seconds)
  567. # [14:25] * Joins: foxtrotwhiskey (~foxtrotwh@192-63-2457.unisys.com)
  568. # [14:28] * Quits: sedovsek (~robert@89.143.12.238) (Quit: sedovsek)
  569. # [14:34] * Joins: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net)
  570. # [14:35] <zcorpan> jgraham: does wpt-serve support range requests?
  571. # [14:36] <jgraham> zcorpan: In theory, yes
  572. # [14:37] * Joins: Ms2ger (~Ms2ger@nata241.ugent.be)
  573. # [14:37] <jgraham> I don't know if it works more than the testsuite though
  574. # [14:38] <jgraham> (that is, there are tests for it but I wouldn't bet my life on the tests or the implementation being correct)
  575. # [14:39] <zcorpan> do you know off-hand of such a test?
  576. # [14:41] <jgraham> I mean tests in the wptserve testsuite
  577. # [14:42] <jgraham> Although I think I implemented it because some test was implementing a half-assed version of Range in PHP
  578. # [14:43] * Joins: ehsan (~ehsan@24-52-243-72.cable.teksavvy.com)
  579. # [14:50] <jgraham> All I remember was that it was written by Payman/Joāo
  580. # [14:53] * Quits: bholley (~bholley@187.64.32.150) (Read error: Connection reset by peer)
  581. # [14:53] * Joins: bholley_ (~bholley@187.64.32.150)
  582. # [14:55] * Joins: barnabywalters (~barnabywa@194-144-135-71.du.xdsl.is)
  583. # [14:55] * Quits: shaunbaker (~shaunbake@brick-lane.lbi.co.uk) (Remote host closed the connection)
  584. # [14:58] * Joins: Ir1sh (~Ir1sh@c-98-199-139-18.hsd1.tx.comcast.net)
  585. # [15:01] * Quits: foxtrotwhiskey (~foxtrotwh@192-63-2457.unisys.com) (Ping timeout: 240 seconds)
  586. # [15:01] * Joins: foxtrotwhiskey (~foxtrotwh@192.63.201.53)
  587. # [15:02] <zewt> "HTTP is now defined by 6, not 2 specs" :|
  588. # [15:02] * Quits: mpt (~mpt@canonical/mpt) (Read error: Connection reset by peer)
  589. # [15:04] <annevk> If that isn't Progress I don't know what is
  590. # [15:04] * Joins: mpt (~mpt@canonical/mpt)
  591. # [15:04] * Quits: mpt (~mpt@canonical/mpt) (Remote host closed the connection)
  592. # [15:04] <zewt> nothing like splitting one thing into seventy to make it "easy" to find stuff
  593. # [15:04] * Quits: Ir1sh (~Ir1sh@c-98-199-139-18.hsd1.tx.comcast.net) (Ping timeout: 264 seconds)
  594. # [15:05] <jgraham> 6>2?
  595. # [15:05] * Joins: plutoniix (~plutoniix@node-1d2k.pool-101-108.dynamic.totbb.net)
  596. # [15:07] * Quits: jcgregorio (jcgregorio@nat/google/x-soxzngcpzgojagjv) (Remote host closed the connection)
  597. # [15:07] * Joins: mpt (~mpt@canonical/mpt)
  598. # [15:09] <zewt> last i checked
  599. # [15:09] * Joins: shaunbaker (~shaunbake@brick-lane.lbi.co.uk)
  600. # [15:10] * Quits: bholley_ (~bholley@187.64.32.150) (Ping timeout: 264 seconds)
  601. # [15:12] * Joins: reyre (~reyre@bas1-streetsville52-3096630502.dsl.bell.ca)
  602. # [15:16] <Domenic_> Hixie: the JSON RFC is basically a fork of 404; I would not use it.
  603. # [15:20] * Joins: Ir1sh (~Ir1sh@c-98-199-139-18.hsd1.tx.comcast.net)
  604. # [15:20] * WolfieZero is now known as WolfieZero|Away
  605. # [15:22] <Domenic_> It looks like Jeff Jaffe signed up for twitter just to reply to that tweet?
  606. # [15:22] * WolfieZero|Away is now known as WolfieZero
  607. # [15:26] * Quits: shaunbaker (~shaunbake@brick-lane.lbi.co.uk) (Remote host closed the connection)
  608. # [15:27] * Quits: smaug____ (~chatzilla@cs78246079.pp.htv.fi) (Ping timeout: 240 seconds)
  609. # [15:28] * Joins: jcgregorio (jcgregorio@nat/google/x-zqzhguwqjueomfto)
  610. # [15:28] * Quits: JosephSilber (~Joseph@ool-44c3e80a.static.optonline.net) (Ping timeout: 246 seconds)
  611. # [15:30] <annevk> Domenic_: that was my impression
  612. # [15:31] <annevk> jgraham: that's not how that joke works
  613. # [15:36] <zcorpan> Hixie: https://www.w3.org/Bugs/Public/show_bug.cgi?id=24860#c12
  614. # [15:40] * Joins: dbaron (~dbaron@corp-nat.p2p.sfo1.mozilla.com)
  615. # [15:44] * Quits: dshwang (~dshwang@134.134.139.70) (Remote host closed the connection)
  616. # [15:44] * Joins: ehynds (~ehynds@64.206.121.41)
  617. # [15:45] * Joins: dshwang (dshwang@nat/intel/x-qympzyygkxoegtyp)
  618. # [15:46] * Quits: SonicX (~quassel@ip98-180-46-147.ga.at.cox.net) (Read error: Connection reset by peer)
  619. # [15:47] * Quits: dshwang (dshwang@nat/intel/x-qympzyygkxoegtyp) (Remote host closed the connection)
  620. # [15:47] * Joins: dshwang (dshwang@nat/intel/x-xxlkubgrgjtfloex)
  621. # [15:47] * Joins: shaunbaker (~shaunbake@brick-lane.lbi.co.uk)
  622. # [15:51] * Quits: annevk (~annevk@207.218.72.65) (Remote host closed the connection)
  623. # [15:52] * Joins: annevk (~annevk@207.218.72.65)
  624. # [15:56] * Quits: shaunbaker (~shaunbake@brick-lane.lbi.co.uk) (Remote host closed the connection)
  625. # [15:57] * Quits: estellevw (~estellevw@173-228-112-232.dsl.dynamic.sonic.net) (Quit: Snuggling with the puppies)
  626. # [15:59] * Quits: shepazu (~shepazu@67.201.82.8) (Quit: is sleepy)
  627. # [16:00] * Quits: ehsan (~ehsan@24-52-243-72.cable.teksavvy.com) (Remote host closed the connection)
  628. # [16:01] * Quits: TuRnaD0 (~Thunderbi@x1-6-e0-46-9a-1e-fe-ca.cpe.webspeed.dk) (Ping timeout: 240 seconds)
  629. # [16:02] * Quits: gnarf (gnarf@unaffiliated/gnarf) (Max SendQ exceeded)
  630. # [16:03] * Joins: gnarf_ (gnarf@unaffiliated/gnarf)
  631. # [16:03] * jonlee_|afk is now known as jonlee_
  632. # [16:05] * gnarf_ is now known as gnarf
  633. # [16:05] * Quits: mven_ (~mven@ip72-193-85-64.lv.lv.cox.net) (Remote host closed the connection)
  634. # [16:06] * Quits: bzalasky (~bzalasky@c-67-188-211-46.hsd1.ca.comcast.net) (Remote host closed the connection)
  635. # [16:06] * Quits: foxtrotwhiskey (~foxtrotwh@192.63.201.53) (Ping timeout: 240 seconds)
  636. # [16:07] * Joins: foxtrotwhiskey (~foxtrotwh@192-63-2457.unisys.com)
  637. # [16:07] * WolfieZero is now known as WolfieZero|Away
  638. # [16:09] * WolfieZero|Away is now known as WolfieZero
  639. # [16:12] * Joins: jdaggett (~jdaggett@203.69.99.16)
  640. # [16:18] * Joins: shepazu (~shepazu@64.186.230.78)
  641. # [16:20] <dglazkov> good morning, Whatwg!
  642. # [16:22] * jonlee_ is now known as jonlee_|afk
  643. # [16:26] * Joins: ehsan (~ehsan@66.207.208.102)
  644. # [16:26] * Quits: benvie (~bbenvie@204.28.118.69) (Read error: Connection reset by peer)
  645. # [16:30] * Joins: benvie (~bbenvie@204.28.118.69)
  646. # [16:34] * Joins: sicking (~sicking@c-98-210-154-157.hsd1.ca.comcast.net)
  647. # [16:40] * Quits: Ir1sh (~Ir1sh@c-98-199-139-18.hsd1.tx.comcast.net) (Ping timeout: 264 seconds)
  648. # [16:41] * Joins: lars_t_h (~lars_t_h@005033153177.mbb.telenor.dk)
  649. # [16:41] * Quits: Ms2ger (~Ms2ger@nata241.ugent.be) (Quit: bbl)
  650. # [16:41] * Joins: jernoble|laptop (~jernoble@76.74.153.49)
  651. # [16:42] * Joins: lmclister (~lmclister@192.150.10.205)
  652. # [16:44] * Quits: richt (~richt@83.218.67.123) (Remote host closed the connection)
  653. # [16:44] * jonlee_|afk is now known as jonlee_
  654. # [16:44] * Quits: darobin (~darobin@78.109.80.74) (Remote host closed the connection)
  655. # [16:44] * Joins: richt (~richt@83.218.67.123)
  656. # [16:45] * Joins: darobin (~darobin@78.109.80.74)
  657. # [16:45] * Quits: KevinMarks3 (~yaaic@c-67-164-14-200.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
  658. # [16:46] * Joins: dawhite (~dawhite@74.118.22.223)
  659. # [16:48] * Quits: richt (~richt@83.218.67.123) (Ping timeout: 240 seconds)
  660. # [16:49] * Quits: darobin (~darobin@78.109.80.74) (Ping timeout: 240 seconds)
  661. # [16:50] * Quits: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net) (Remote host closed the connection)
  662. # [16:51] * Joins: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net)
  663. # [16:51] * Joins: Ir1sh (~Ir1sh@c-98-199-139-18.hsd1.tx.comcast.net)
  664. # [16:51] * Quits: gsnedders (~gsnedders@5.2.16.23) (Quit: leaving)
  665. # [16:55] * Quits: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net) (Ping timeout: 240 seconds)
  666. # [16:55] * Joins: gsnedders (~gsnedders@5.2.16.23)
  667. # [16:56] * Joins: tantek (~tantek@70-36-139-254.dsl.dynamic.sonic.net)
  668. # [16:56] * Quits: shepazu (~shepazu@64.186.230.78) (Quit: shepazu)
  669. # [16:56] * Quits: gsnedders (~gsnedders@5.2.16.23) (Client Quit)
  670. # [16:58] * Joins: jeffreyatw (~jeffreyat@173.247.197.10)
  671. # [16:58] * Joins: gsnedders (~gsnedders@5.2.16.23)
  672. # [16:59] * Joins: JosephSilber (~Joseph@ool-44c3e80a.static.optonline.net)
  673. # [17:01] * Quits: Ducki (~Ducki@137.116.197.171) (Remote host closed the connection)
  674. # [17:04] * Quits: jdaggett (~jdaggett@203.69.99.16) (Quit: jdaggett)
  675. # [17:06] * Quits: lmclister (~lmclister@192.150.10.205) (Write error: Broken pipe)
  676. # [17:08] * Joins: smaug____ (~chatzilla@cs78246079.pp.htv.fi)
  677. # [17:10] * Joins: shepazu (~shepazu@64.186.230.78)
  678. # [17:16] * Quits: markkes (~markkes@62.207.90.201) (Quit: Nettalk6 - www.ntalk.de)
  679. # [17:19] * Joins: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net)
  680. # [17:25] * Quits: shannonmoeller (~shannonmo@pool-108-17-8-225.bflony.fios.verizon.net) (Remote host closed the connection)
  681. # [17:28] * Quits: jernoble|laptop (~jernoble@76.74.153.49) (Quit: Computer has gone to sleep.)
  682. # [17:32] * WolfieZero is now known as WolfieZero|Away
  683. # [17:32] <Hixie> wow there really is no difference between 7158 and 7159. weird.
  684. # [17:33] <annevk> Hixie: they just fixed the date
  685. # [17:33] <Hixie> "fixed"?
  686. # [17:35] <Hixie> there's literally no difference between them, except the second one has errata apparently.
  687. # [17:35] <Hixie> so let me get this right.
  688. # [17:35] <Hixie> they'll publish an entirely new rfc just to update the date, but they won't publish an entirely new rfc to fix errors in the content?
  689. # [17:36] * Joins: KevinMarks2 (~yaaic@c-67-164-14-200.hsd1.ca.comcast.net)
  690. # [17:36] * WolfieZero|Away is now known as WolfieZero
  691. # [17:36] <Hixie> i mean it doesn't even really "fix" the date, since there's still an rfc with the wrong date out there now.
  692. # [17:37] * Joins: benvie_ (~bbenvie@204.28.118.69)
  693. # [17:37] <annevk> correct
  694. # [17:37] <Hixie> and this new version still doesn't fix the mess around whether values should be unique
  695. # [17:37] <Hixie> in fact it makes it even more muddled
  696. # [17:38] <annevk> it's up to the implementation, JavaScript's JSON has last wins iirc
  697. # [17:39] * Joins: ap (~ap@2620:149:4:304:8026:41e0:d06b:7265)
  698. # [17:39] * Quits: benvie (~bbenvie@204.28.118.69) (Ping timeout: 264 seconds)
  699. # [17:39] <jgraham> Gotta love a format specifically designed for interchange where "it's up to the implementation"
  700. # [17:44] * Joins: jernoble|laptop (~jernoble@17.202.45.163)
  701. # [17:44] * Quits: jernoble (~jernoble@17.202.46.221) (Quit: Textual IRC Client: www.textualapp.com)
  702. # [17:47] * Joins: jernoble (~jernoble@17.202.46.221)
  703. # [17:47] <gsnedders> The RFC was to fix editorial issues, not to make any changes to the format (and making something defined would be a change).
  704. # [17:48] * Joins: llkats (~llkats@c-69-181-45-245.hsd1.ca.comcast.net)
  705. # [17:48] <Hixie> it did change the format
  706. # [17:48] <Hixie> quite radically, actually, from the first RFC
  707. # [17:49] * Quits: Ir1sh (~Ir1sh@c-98-199-139-18.hsd1.tx.comcast.net) (Ping timeout: 246 seconds)
  708. # [17:52] <annevk> It aligned with ES5 after I and others asked them to do that
  709. # [17:52] <Hixie> ES6 just defers to 404
  710. # [17:52] <Hixie> which isn't as well-defined as the RFC
  711. # [17:52] <Hixie> (e.g. it doesn't define the root value, as we were discussing last night)
  712. # [17:53] <annevk> Yeah, Ecma 404 is what ES5 has
  713. # [17:53] <annevk> Anything can be root
  714. # [17:53] <Hixie> it doesn't say that
  715. # [17:53] <Hixie> it actually literally doesn't define the format in the most basic sense
  716. # [17:53] <Hixie> as far as i can tell
  717. # [17:55] <annevk> Hixie: it says that JSON text is a sequence of code points that conforms to the grammar
  718. # [17:55] <Hixie> right
  719. # [17:55] <Hixie> and it doesn't give "the grammar"
  720. # [17:55] <annevk> "JSON text is a sequence of tokens formed from Unicode code points that conforms to the JSON value grammar"
  721. # [17:55] <Hixie> oh, it says "the JSON Value grammar"
  722. # [17:55] <Hixie> interesting
  723. # [17:56] <annevk> seems clear enough
  724. # [17:56] <Hixie> how did i miss that like 15 times
  725. # [17:56] <Hixie> weird
  726. # [17:56] * Joins: bholley (~bholley@187.64.32.150)
  727. # [17:57] * Joins: shannonmoeller (~shannonmo@pool-108-17-8-225.bflony.fios.verizon.net)
  728. # [17:58] * Joins: shaunbaker (~shaunbake@brick-lane.lbi.co.uk)
  729. # [17:58] <jgraham> Possibly because it has some weirdness about "Conforming JSON text" vs "JSON Text"
  730. # [17:58] * Quits: Lachy (~Lachy@213.166.174.2) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
  731. # [17:58] <jgraham> I actually can't tell if they are supposed to be different
  732. # [17:58] <jgraham> It looks like maybe "JSON Text" is a superset of "Conforming JSON Text"
  733. # [17:59] <jgraham> But "Conforming JSON Text" has to "strictly" match "the JSON grammar", which is undefined
  734. # [18:00] <jgraham> ("JSON Text" merely has to "conform to" (not "strictly") "The JSON Value grammar")
  735. # [18:00] * Quits: bholley (~bholley@187.64.32.150) (Ping timeout: 246 seconds)
  736. # [18:00] * Joins: benv (~benv@c-67-188-10-155.hsd1.ca.comcast.net)
  737. # [18:01] * Joins: bholley (~bholley@187.64.32.150)
  738. # [18:01] <jgraham> (but it's hard to tell if "conforming" vs "strictly conforming" is suspposed to be a substantive difference)
  739. # [18:04] * Joins: estellevw (~estellewy@surveymonkey-3.border1.pao001.pnap.net)
  740. # [18:04] * Quits: dbaron (~dbaron@corp-nat.p2p.sfo1.mozilla.com) (Quit: g'night)
  741. # [18:07] * WolfieZero is now known as WolfieZero|Away
  742. # [18:07] * Krinkle|detached is now known as Krinkle
  743. # [18:07] * Quits: bholley (~bholley@187.64.32.150) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
  744. # [18:09] * WolfieZero|Away is now known as WolfieZero
  745. # [18:16] * jonlee_ is now known as jonlee_|afk
  746. # [18:18] * Joins: lmclister (~lmclister@192.150.10.205)
  747. # [18:20] <annevk> It isn't really hard to tell, but you could file some bugs for improvement
  748. # [18:20] <annevk> TabAtkins: you around?
  749. # [18:21] * Quits: lmclister (~lmclister@192.150.10.205) (Client Quit)
  750. # [18:21] * Joins: Maurice` (copyman@5ED57922.cm-7-6b.dynamic.ziggo.nl)
  751. # [18:21] <jgraham> It's hard to tell in the sense that from the ECMA spec I guenuinely don't know
  752. # [18:22] <jgraham> *genuinely
  753. # [18:23] * Quits: sicking (~sicking@c-98-210-154-157.hsd1.ca.comcast.net) (Quit: sicking)
  754. # [18:24] * Joins: ambv (~ambv@206.108.217.134)
  755. # [18:24] * Quits: shepazu (~shepazu@64.186.230.78) (Quit: is sleepy)
  756. # [18:26] * jonlee_|afk is now known as jonlee_
  757. # [18:28] * Joins: dawhite_ (~dawhite@74.118.22.223)
  758. # [18:29] * Quits: JosephSilber (~Joseph@ool-44c3e80a.static.optonline.net) (Ping timeout: 240 seconds)
  759. # [18:29] <gsnedders> The aim of ECMA 404 was to define grammar, not semantics. Which is odd.
  760. # [18:30] <annevk> That's always been the goal of JSON though
  761. # [18:31] <jgraham> Not really
  762. # [18:31] <jgraham> I mean
  763. # [18:31] <annevk> Implementations do things like rounding on the numbers and such too, which isn't really forbidden either
  764. # [18:31] * Quits: dawhite (~dawhite@74.118.22.223) (Ping timeout: 240 seconds)
  765. # [18:32] <annevk> It was the goal of its creator, unless he changed his mind on the goal midway through
  766. # [18:32] <annevk> For a while he didn't even want to define the alphabet in use, until we told him that was a bad idea
  767. # [18:33] <jgraham> it clearly does define some semantics
  768. # [18:33] <jgraham> It more or less defines how the numbers work
  769. # [18:33] <zcorpan> in my json parser, [] is an elephant
  770. # [18:33] <zcorpan> a real one
  771. # [18:33] * Joins: shepazu (~shepazu@64.186.230.78)
  772. # [18:34] <jgraham> You would be hard pushed to argue that 10e17 in JSON could be interpreted as 27 or something
  773. # [18:34] <jgraham> Although it doesn't define what + or - means
  774. # [18:34] <annevk> jgraham: sure, but if you don't use decimal storage, are you non-conforming?
  775. # [18:35] <jgraham> Basically istm that Crockford isn't to be trusted with this kind of thing and that JSON has succeeded in spite of him rather than because of him
  776. # [18:35] * Quits: hasather (~hasather@80.91.33.141) (Remote host closed the connection)
  777. # [18:35] * Quits: shaunbaker (~shaunbake@brick-lane.lbi.co.uk) (Remote host closed the connection)
  778. # [18:35] <jgraham> So saying "well the creator wanted X" doesn't seem like a great argument
  779. # [18:35] * Joins: weinig (~weinig@17.114.219.217)
  780. # [18:36] <annevk> I was talking about goals
  781. # [18:36] * Joins: hasather (~hasather@80.91.33.141)
  782. # [18:36] <annevk> In any event, this doesn't seem like a great use of my time
  783. # [18:37] <jgraham> I highly doubt it was his goal to create a format that couldn't actually be used for interchange reliably
  784. # [18:37] <jgraham> and if it was his goal seems like one that no one should share
  785. # [18:37] <jgraham> So either way it seems quite irrelevant
  786. # [18:38] * Quits: 6JTAAFEI0 (scrollback@conference/jsconf/x-zhngtoifycgfyxgj) (Remote host closed the connection)
  787. # [18:38] <annevk> I think it actually makes sense. It breaks down a bit with generic parsers. But lots of things will be decided at the application layer anyway.
  788. # [18:39] * Joins: scrollback (scrollback@conference/jsconf/x-woohejqwmckfnfah)
  789. # [18:40] <Hixie> json succeeded for the same reason xml succeeded (and did better than xml because it is a simpler format than xml)
  790. # [18:40] * Quits: hasather (~hasather@80.91.33.141) (Ping timeout: 240 seconds)
  791. # [18:40] <Hixie> the reason is, people have an irrational fear of defining custom core syntaxes
  792. # [18:40] <jgraham> No
  793. # [18:41] <Hixie> people think that if you define a vocabulary on top of a core syntax, it's better than defining a vocabulary and a core syntax together
  794. # [18:41] <Hixie> which confuses me greatly, especially when the formats they use don't really fit the problem space
  795. # [18:41] <jgraham> It's because having a simple to work with format that has prewritten, predebugged parsers in a range of langauges is a huge win over custom-everything
  796. # [18:42] <jgraham> It means that you don't have to keep learning people's half-baked formats
  797. # [18:42] <jgraham> And makes interop simpler
  798. # [18:42] <Hixie> yeah instead you have to write custom vocabulary interpreters for half-baked vocabularies that you keep having to learn
  799. # [18:42] <Hixie> and interop fails because neither the syntax nor the vocabulary define error handling
  800. # [18:43] <jgraham> Which is a much easier problem, it turns out, and one that you would have to solve anyway
  801. # [18:43] <Hixie> how is it easier? it's the same.
  802. # [18:43] * Joins: morrita_ (uid16889@gateway/web/irccloud.com/x-pqtazpmczptbirnv)
  803. # [18:43] <Hixie> you just change your lexical space from unicode characters to different tokens
  804. # [18:44] <jgraham> Not at all. If I want to interop with, say, the github API I just have to use an off-the-shelf json lib that I have used hundreds of times before and write some simple code to extract the data I care about
  805. # [18:44] <jgraham> If they had invented GitHub-ON for the purpose I would have to either write a parser or learn their library that I had never used before
  806. # [18:44] <Hixie> that fails in the same way that people using "simple code to extract the data" they care about from HTML fails
  807. # [18:45] <jgraham> and still write the code to extract the data from the file
  808. # [18:45] <jgraham> It actually doesn't
  809. # [18:45] <jgraham> That's why the format has been a success
  810. # [18:45] <jgraham> In spite of the fact that it's horribly flawed in several ways
  811. # [18:45] * Quits: jacobolus (~jacobolus@70-36-196-50.dsl.static.sonic.net) (Read error: Connection reset by peer)
  812. # [18:46] * Joins: jacobolus (~jacobolus@70-36-196-50.dsl.static.sonic.net)
  813. # [18:46] <jgraham> and the people speccing it have managed to make a complete clusterfuck of something that could have been rather straightforward
  814. # [18:47] <zcorpan> i saw somewhere someone was working on a "JSON5" which supported more things like comments and unquoted keys
  815. # [18:47] <zcorpan> and trailing commas
  816. # [18:48] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Remote host closed the connection)
  817. # [18:49] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
  818. # [18:53] * Quits: benv (~benv@c-67-188-10-155.hsd1.ca.comcast.net) (Quit: Computer has gone to sleep.)
  819. # [18:53] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Ping timeout: 240 seconds)
  820. # [19:02] * Joins: TallTed (~Thud@c-98-216-39-172.hsd1.ma.comcast.net)
  821. # [19:04] * Joins: sicking (~sicking@corp-nat.p2p.sfo1.mozilla.com)
  822. # [19:07] * Quits: barnabywalters (~barnabywa@194-144-135-71.du.xdsl.is) (Quit: barnabywalters)
  823. # [19:09] * Joins: SonicX (~quassel@host-128-227-201-3.xlate.ufl.edu)
  824. # [19:10] * Joins: Ir1sh (~Ir1sh@c-98-199-139-18.hsd1.tx.comcast.net)
  825. # [19:12] * Joins: svl (~me@ip565744a7.direct-adsl.nl)
  826. # [19:15] * Quits: Ir1sh (~Ir1sh@c-98-199-139-18.hsd1.tx.comcast.net) (Ping timeout: 240 seconds)
  827. # [19:16] * jonlee_ is now known as jonlee_|afk
  828. # [19:18] * WolfieZero is now known as WolfieZero|Away
  829. # [19:19] * WolfieZero|Away is now known as WolfieZero
  830. # [19:19] * WolfieZero is now known as WolfieZero|Away
  831. # [19:19] * WolfieZero|Away is now known as WolfieZero
  832. # [19:19] * WolfieZero is now known as WolfieZero|Away
  833. # [19:20] <SamB> ... personally I think JSON+C is exactly the right thing. Except that stupid UTF-16 stuff.
  834. # [19:20] <SamB> (But that's what you get for basing it on JS syntax ...)
  835. # [19:20] <TabAtkins> annevk: I'm around now.
  836. # [19:21] <annevk> TabAtkins: any interest in tackling my Selectors questions?
  837. # [19:21] <TabAtkins> Point me to them?
  838. # [19:21] <annevk> TabAtkins: emailed www-style
  839. # [19:21] <TabAtkins> Ah, kk. I'll respond.
  840. # [19:21] * TabAtkins hasn't checked his email yet this morning.
  841. # [19:21] <annevk> Basically wondering if I'm invoking the correct hooks and what hooks to use for matches()
  842. # [19:22] * jonlee_|afk is now known as jonlee_
  843. # [19:22] <SamB> Hixie: I think it drastically reduces the number of sharp edge cases that need to be dealt with, or at least localizes them a lot better ...
  844. # [19:23] <Hixie> that's jgraham's position too, i think
  845. # [19:23] <Hixie> i think it just hides them more
  846. # [19:23] <Hixie> which makes them less likely to be handled
  847. # [19:23] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
  848. # [19:23] * Quits: WolfieZero|Away (~WolfieZer@neils-wireless.manor.fubra.net) (Ping timeout: 264 seconds)
  849. # [19:24] * Joins: benv (~benv@38.104.194.126)
  850. # [19:24] <SamB> replicating someone else's buggy parser in another language is not most people's idea of fun
  851. # [19:24] <Hixie> but replacting someone else's buggy vocabulary interpreter in another language is?
  852. # [19:24] <Hixie> replicating
  853. # [19:24] <SamB> well, many programs don't need to understand the whole vocabulary
  854. # [19:25] <Hixie> that's the same logic that leads to people writing parsers that don't need to handle the whole syntax
  855. # [19:25] <SamB> that's often not possible
  856. # [19:25] * Quits: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net) (Remote host closed the connection)
  857. # [19:26] * Quits: aklein__ (sid4454@gateway/web/irccloud.com/x-nyimtgodsyuvuuug)
  858. # [19:26] <SamB> what I mean is that if you are handed a data structure, you don't have to *look* in every nook and cranny; you only need to look in the places relevant to the task at hand
  859. # [19:26] * Joins: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net)
  860. # [19:26] * Joins: aklein (sid4454@gateway/web/irccloud.com/x-kuoracwegysahhbi)
  861. # [19:26] <Hixie> assuming those places exist. and are the right type. and aren't out of range. and...
  862. # [19:27] <SamB> okay, yes, true
  863. # [19:27] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Ping timeout: 240 seconds)
  864. # [19:28] <SamB> but given that many of these people aren't going to be doing proper error checking ANYWAY ...
  865. # [19:28] <Hixie> in other news, i've just realised that in json, numbers are special in that they're the one token whose end is determined by look-ahead.
  866. # [19:28] <Hixie> how annoying.
  867. # [19:29] <SamB> what, no lexer?
  868. # [19:29] <Hixie> ?
  869. # [19:30] * Quits: deniak (~denis@141.162.122.109.rev.sfr.net) (Quit: Bye)
  870. # [19:30] * Quits: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net) (Ping timeout: 240 seconds)
  871. # [19:30] <SamB> ... why is this a problem? Are you writing the lexer by hand?
  872. # [19:30] <annevk> Hixie: in what environment are you implementing your own JSON parser?
  873. # [19:30] <Hixie> SamB: yeah
  874. # [19:30] <SamB> do you not have a *lex you could use?
  875. # [19:31] <Hixie> annevk: freepascal. there's lots of existing ones, i just figured it would be fun.
  876. # [19:31] <annevk> Hixie: I see
  877. # [19:31] <annevk> Hixie: are you adding comment support? :-)
  878. # [19:31] <SamB> Hixie: please tell me you're actually implementing JSON+C, yes
  879. # [19:31] <Hixie> SamB: i could use a lexer. i happen to chose not to this time. :-)
  880. # [19:32] <Hixie> SamB: i'm implementing whatever is needed to parse the tokeniser tests in html5lib's test suite :-)
  881. # [19:32] <annevk> Oh my
  882. # [19:33] <SamB> so why is it that you're using Object Pascal?
  883. # [19:33] <gsnedders> We do touch a fair few bits of edge-cases. :)
  884. # [19:33] <Hixie> gsnedders: hehe
  885. # [19:33] <annevk> This new version of Anolis is going to be built on primitives you implemented yourself Hixie? :-P
  886. # [19:33] <Hixie> SamB: is best language.
  887. # [19:33] <gsnedders> :)
  888. # [19:33] <Hixie> annevk: yep :-)
  889. # [19:33] <Hixie> including my own utf-8 decoder :-)
  890. # [19:33] * Quits: shannonmoeller (~shannonmo@pool-108-17-8-225.bflony.fios.verizon.net) (Remote host closed the connection)
  891. # [19:34] <annevk> Hixie: please make it somewhat clean this time so we can see the source code
  892. # [19:34] <Hixie> hah
  893. # [19:35] <Hixie> i make no promises
  894. # [19:35] * SamB wonders why Object Pascal is so little heard of
  895. # [19:35] <Hixie> SamB: it was pretty popular on windows for a while (under the name Delphi)
  896. # [19:35] <SamB> possibly it has had too many names and too few implementations?
  897. # [19:35] <Hixie> but yeah, i dunno why it's not more popular
  898. # [19:36] <SamB> Hixie: yes, I know, and it's still used there
  899. # [19:37] * jonlee_ is now known as jonlee_|afk
  900. # [19:38] * Joins: rubatdub (~khalil@213.188.172.141)
  901. # [19:39] <Hixie> hahaha, json's silly surrogate escape thing triggered my utf-8 system's "surrogates aren't allowed" assertion
  902. # [19:39] * Joins: shannonmoeller (~shannonmo@pool-108-17-8-225.bflony.fios.verizon.net)
  903. # [19:39] <gsnedders> :)
  904. # [19:40] <SamB> Hixie: what did you do to cause that?
  905. # [19:40] <gsnedders> Yup, we have lone surrogates in the html5lib tokenizer JSON.
  906. # [19:40] <gsnedders> They're perfectly allowed in JSON :)
  907. # [19:40] <Hixie> uh
  908. # [19:40] <SamB> I mean why is this getting into UTF-8
  909. # [19:40] <SamB> gsnedders: eww
  910. # [19:40] <Hixie> SamB: i use utf-8 as my internal representation
  911. # [19:40] <Hixie> gsnedders: huh
  912. # [19:40] <gsnedders> SamB: We need to test lone surrogates are handled correctly!
  913. # [19:40] <gsnedders> Hixie: huh at wha?
  914. # [19:41] * Quits: satazor (~satazor@188.250.93.65) (Remote host closed the connection)
  915. # [19:41] * SamB goes to read the spec ...
  916. # [19:41] <Hixie> gsnedders: how do you get lone surrogates out of the html parser?
  917. # [19:41] <Hixie> SamB: the json spec is pretty messed up when it comes to surrogates
  918. # [19:41] <gsnedders> Hixie: Out of it? We don't. But we have them in the input stream.
  919. # [19:41] <Hixie> gsnedders: ahhh...
  920. # [19:41] <Hixie> interesting
  921. # [19:41] * Joins: satazor (~satazor@188.250.93.65)
  922. # [19:41] <Hixie> well, my input stream can't support lone surrogates
  923. # [19:42] <Hixie> so i'm probably ok just skipping those tests
  924. # [19:42] <SamB> is there a reason why JSON is ECMA 404?
  925. # [19:42] <Hixie> i guess i'll turn lone surrogates into FFFD
  926. # [19:42] <Hixie> (in the json parser)
  927. # [19:42] * Joins: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net)
  928. # [19:44] * SamB wants a font where U+FFFD is represented by logo-encoding.svg -- colors and all!
  929. # [19:44] <Hixie> hm well that makes unicode escapes into another thing that needs lookahead
  930. # [19:44] * Quits: SonicX (~quassel@host-128-227-201-3.xlate.ufl.edu) (Remote host closed the connection)
  931. # [19:45] * Quits: satazor (~satazor@188.250.93.65) (Remote host closed the connection)
  932. # [19:46] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
  933. # [19:46] * Quits: shepazu (~shepazu@64.186.230.78) (Quit: is sleepy)
  934. # [19:46] * Joins: satazor (~satazor@188.250.93.65)
  935. # [19:49] <TabAtkins> Hixie: Why are you using utf-8 as the internal representation? That's an encoding, it's weird to use that internally. Just use arrays of codepoints.
  936. # [19:49] <dglazkov> what should this show? http://jsbin.com/bubot/1/edit
  937. # [19:50] <gsnedders> TabAtkins: Why would you use arrays of codepoints? That's massively wasteful, esp. if it's mostly ASCII.
  938. # [19:50] <TabAtkins> dglazkov: What do you *think* it should show?
  939. # [19:50] <TabAtkins> gsnedders: Because it's simpler? Or use a unicode string, if your language provides that.
  940. # [19:51] <dglazkov> ARIAL in arial, INITIAL in times new roman or whatever UA's initial value is?
  941. # [19:51] <TabAtkins> Ah, I missed that the initial value is generally a serif font.
  942. # [19:51] * Quits: satazor (~satazor@188.250.93.65) (Ping timeout: 269 seconds)
  943. # [19:52] <TabAtkins> http://jsbin.com/zugojoxa/1/edit?html,output
  944. # [19:53] <TabAtkins> This shows the problem a little more clearly - the two "INITIAL"s should be the same font.
  945. # [19:53] <TabAtkins> annevk: Just to make sure - these are hooks you need for .query() and .matches()?
  946. # [19:54] <dglazkov> TabAtkins: I wonder what mozilla/ie do here?
  947. # [19:55] <TabAtkins> I'm on ChromeOS, so I can't tell.
  948. # [19:55] <dglazkov> me too :-\
  949. # [19:57] <dglazkov> TabAtkins: but this is a bug, right?
  950. # [19:57] <TabAtkins> Yes.
  951. # [19:58] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Remote host closed the connection)
  952. # [19:58] <SamB> I'm confused: https://tools.ietf.org/rfcdiff?difftype=--hwdiff&url1=rfc7158&url2=rfc7159
  953. # [19:58] <Hixie> TabAtkins: because arrays of codepoints take 8 bytes per character and require that the entire input be copied, rather than the input taking 1 byte per character and the data not needing to be copied?
  954. # [19:58] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
  955. # [19:59] <SamB> it doesn't seem like there were any changes other than the change in RFC number and in the "Obsoletes:" line ...
  956. # [19:59] <TabAtkins> Then you have to accept encoding limitations, like the fact that you can't encode a lone surrogate in valid utf-8.
  957. # [19:59] <TabAtkins> SamB: Yeah, looks like it.
  958. # [19:59] <Hixie> yup
  959. # [19:59] <Hixie> i am very happy to accept that limitation :-)
  960. # [19:59] <SamB> and the year
  961. # [20:00] <dglazkov> TabAtkins: gecko gets it right
  962. # [20:00] <TabAtkins> It's probably something to do with our bizarre parsing of 'font'.
  963. # [20:01] <TabAtkins> Well, hm, never mind, that still doesn't make sense.
  964. # [20:02] <Hixie> woot, my json parser found a bug in my test rather than the other way around
  965. # [20:02] <dglazkov> TabAtkins: nah. I found this by code inspection. We just don't do anything sensible there. And I wondered if this was intentional
  966. # [20:02] <TabAtkins> (I was wondering if it was parsing as a font named "inherit", but that wouldn't help - it would just do fallback, which should produce the default font.)
  967. # [20:02] <dglazkov> TabAtkins: we get right to the point where we need to apply property "initial", and then we just go "weeee" and leave
  968. # [20:03] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Ping timeout: 246 seconds)
  969. # [20:03] <TabAtkins> Fun.
  970. # [20:05] <SamB> ouch! http://timelessrepo.com/json-isnt-a-javascript-subset
  971. # [20:07] * Joins: hasather (~hasather@80.91.33.141)
  972. # [20:11] <SamB> oh fun, if I pass difftype=--help to the rfcdiff page, it outputs plaintext as HTML ...
  973. # [20:11] <SamB> I mean as text/html
  974. # [20:12] * Quits: hasather (~hasather@80.91.33.141) (Ping timeout: 240 seconds)
  975. # [20:13] * Joins: jwalden (~waldo@corp.mtv2.mozilla.com)
  976. # [20:14] <SamB> oh, and otherwise it produces what looks like it's intended to be XHTML labeled as text/html ...
  977. # [20:20] * Quits: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net) (Remote host closed the connection)
  978. # [20:21] * Joins: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net)
  979. # [20:23] <annevk> TabAtkins: I need hooks for querySelector, query, and matches
  980. # [20:24] <annevk> TabAtkins: querySelector and matches both take an absolute selector afaict
  981. # [20:24] <annevk> TabAtkins: query takes a relative
  982. # [20:24] * Joins: DuncanMa_ (~DuncanMac@host-92-20-4-208.as13285.net)
  983. # [20:24] <TabAtkins> querySelector is an absolute scope-filtered, possibly with a reference set.
  984. # [20:25] <TabAtkins> query is relative, definitely with a reference set.
  985. # [20:25] <TabAtkins> matches is absolute, definitely with a reference set.
  986. # [20:25] * Quits: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net) (Ping timeout: 240 seconds)
  987. # [20:25] <TabAtkins> (The only effect of having a reference set is giving meaning to :scope.)
  988. # [20:26] <annevk> Oh, I thought scoping root was for that
  989. # [20:27] <TabAtkins> Nope, that's only if you're scoping.
  990. # [20:27] <TabAtkins> Sorry for the confusing wording, but :scope got named before anything else.
  991. # [20:27] <TabAtkins> And the scoping root is the default reference set, if you don't specify anything else.
  992. # [20:28] * Joins: Ms2ger (~Ms2ger@193.190.253.150)
  993. # [20:28] <TabAtkins> You generally don't want to scope. querySelector() does, but really only because it didn't have relative selectors at the time.
  994. # [20:28] <TabAtkins> <style scoped> is the only other thing that uses scoping.
  995. # [20:28] * TabAtkins is off to lunch for a bit, will answer any further questions in an hour or so.
  996. # [20:29] <annevk> Oh okay. So querySelector using a scoping root is fine.
  997. # [20:29] <annevk> However, matches should use a reference set so no scoping is done
  998. # [20:30] <SamB> relative selectors?
  999. # [20:30] * Joins: jeremyj (~jeremyj@17.202.44.231)
  1000. # [20:32] <SamB> hmm, well, ECMA 404 doesn't say you can have unpaired surrogates in your JSON
  1001. # [20:32] <annevk> Okay, I should look at this again tomorrow, thanks for the pointers so far TabAtkins
  1002. # [20:33] <annevk> TabAtkins: I do find it a bit odd that you have API hooks for selectors separate from the general selector matching (where is the algorithm for that? and why is it not linked from the API hooks section?)
  1003. # [20:33] * Krinkle is now known as Krinkle|detached
  1004. # [20:34] * Quits: sicking (~sicking@corp-nat.p2p.sfo1.mozilla.com) (Quit: sicking)
  1005. # [20:34] * Quits: annevk (~annevk@207.218.72.65) (Remote host closed the connection)
  1006. # [20:35] * SamB wonders what Haskell does if you have surrogates in your Strings masquerading as Chars
  1007. # [20:38] <gsnedders> Is there any sane way to find a font that contains a given Unicode codepoint on OS X?
  1008. # [20:38] <gsnedders> Like, I blatantly have one as it manages to font-switch in places for it.
  1009. # [20:38] <gsnedders> But I can't tell what font it comes from
  1010. # [20:42] * Quits: fredy (~fredy@snf-8914.vm.okeanos.grnet.gr) (Excess Flood)
  1011. # [20:44] * Joins: sankha93 (~sankha93@fsf/emeritus/sankha93)
  1012. # [20:45] * Joins: fredy (~fredy@2001:648:2ffc:1225:a800:ff:fe12:113e)
  1013. # [20:46] * Joins: satazor (~satazor@80.78.37.188.rev.vodafone.pt)
  1014. # [20:52] * Joins: tndrH (~Rob@cpc4-seac20-2-0-cust858.7-2.cable.virginm.net)
  1015. # [20:57] * Quits: TallTed (~Thud@c-98-216-39-172.hsd1.ma.comcast.net)
  1016. # [20:58] * Joins: annevk-cloud (uid2483@gateway/web/irccloud.com/x-bkkzxmzdfwpnfeob)
  1017. # [20:58] * Joins: ot (~css@unaffiliated/css)
  1018. # [20:59] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
  1019. # [21:03] * Joins: SonicX (~quassel@host-128-227-3-255.xlate.ufl.edu)
  1020. # [21:03] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Ping timeout: 246 seconds)
  1021. # [21:08] * Joins: annevk (~annevk@2.31.25.165)
  1022. # [21:08] * Quits: tantek (~tantek@70-36-139-254.dsl.dynamic.sonic.net) (Excess Flood)
  1023. # [21:09] * Quits: dshwang (dshwang@nat/intel/x-xxlkubgrgjtfloex) (Excess Flood)
  1024. # [21:12] * Joins: sicking (~sicking@corp-nat.p2p.sfo1.mozilla.com)
  1025. # [21:13] * Joins: dshwang (dshwang@nat/intel/x-lmwfswjnrjolhyln)
  1026. # [21:17] * Joins: tantek (~tantek@70-36-139-254.dsl.dynamic.sonic.net)
  1027. # [21:25] * Quits: satazor (~satazor@80.78.37.188.rev.vodafone.pt) (Remote host closed the connection)
  1028. # [21:25] <gsnedders> SamB: It'll allow them, because Char is just an integral type, of range 0–0x10FFFF
  1029. # [21:25] * Joins: satazor (~satazor@80.78.37.188.rev.vodafone.pt)
  1030. # [21:25] * Quits: Ms2ger (~Ms2ger@193.190.253.150) (Ping timeout: 240 seconds)
  1031. # [21:29] * Quits: satazor (~satazor@80.78.37.188.rev.vodafone.pt) (Ping timeout: 240 seconds)
  1032. # [21:31] * Joins: SonicX_ (~quassel@host-128-227-144-200.xlate.ufl.edu)
  1033. # [21:31] * Quits: SonicX (~quassel@host-128-227-3-255.xlate.ufl.edu) (Ping timeout: 246 seconds)
  1034. # [21:34] <Hixie> yeah that's basically what i did too, except that i have an operator overload for assignment that checks for surrogates :-)
  1035. # [21:35] <Hixie> (and i allow -1 to mean eof)
  1036. # [21:35] * Quits: scor (scor@drupal.org/user/52142/view) (Quit: scor)
  1037. # [21:35] <TabAtkins> SamB: http://dev.w3.org/csswg/selectors/#relative
  1038. # [21:36] <gsnedders> You need a type system with dependent types to allow only matched surrogates
  1039. # [21:36] <Hixie> uh no, i want no surrogates :-)
  1040. # [21:37] <gsnedders> That's easy :P
  1041. # [21:40] <Hixie> annevk: is there anything in particular i need to do on https://www.w3.org/Bugs/Public/show_bug.cgi?id=24810 or did you reassign to me just so i could look it over? (it looks good)
  1042. # [21:41] * Quits: DuncanMa_ (~DuncanMac@host-92-20-4-208.as13285.net) (Remote host closed the connection)
  1043. # [21:41] <annevk> Hixie: I assigned it to you so you could remove the bits in HTML
  1044. # [21:41] <annevk> Hixie: e.g. scripting environment is no longer a thing DOM has now or needs HTML to define so you can remove that
  1045. # [21:41] * Joins: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net)
  1046. # [21:42] * Joins: satazor (~satazor@80.78.37.188.rev.vodafone.pt)
  1047. # [21:42] <annevk> Hixie: and under microtask checkpoint there's a bit of cleanup you can do
  1048. # [21:42] <Hixie> aaah right
  1049. # [21:42] <Hixie> cool
  1050. # [21:42] <Hixie> thanks
  1051. # [21:43] * Quits: sicking (~sicking@corp-nat.p2p.sfo1.mozilla.com) (Quit: sicking)
  1052. # [21:46] * Quits: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net) (Ping timeout: 265 seconds)
  1053. # [21:46] * Joins: othermaciej (~mjs@17.114.217.106)
  1054. # [21:47] * Krinkle|detached is now known as Krinkle
  1055. # [21:51] * Joins: sicking (~sicking@corp-nat.p2p.sfo1.mozilla.com)
  1056. # [21:53] * Quits: estellevw (~estellewy@surveymonkey-3.border1.pao001.pnap.net) (Quit: estellevw)
  1057. # [21:56] * Joins: waywk (~waywk4@mail.wlion.com)
  1058. # [21:58] * Joins: JosephSilber (~Joseph@ool-44c3e80a.static.optonline.net)
  1059. # [21:59] * Quits: SonicX_ (~quassel@host-128-227-144-200.xlate.ufl.edu) (Read error: Connection reset by peer)
  1060. # [22:02] * Quits: othermaciej (~mjs@17.114.217.106) (Quit: othermaciej)
  1061. # [22:03] * Quits: fredy (~fredy@2001:648:2ffc:1225:a800:ff:fe12:113e) (Excess Flood)
  1062. # [22:04] * Quits: foxtrotwhiskey (~foxtrotwh@192-63-2457.unisys.com) (Ping timeout: 246 seconds)
  1063. # [22:04] * Quits: rubatdub (~khalil@213.188.172.141) (Quit: Quitte)
  1064. # [22:04] * Joins: foxtrotwhiskey (~foxtrotwh@192.63.201.23)
  1065. # [22:04] * Joins: othermaciej (~mjs@17.114.217.106)
  1066. # [22:05] * Joins: fredy (~fredy@snf-8914.vm.okeanos.grnet.gr)
  1067. # [22:07] * Quits: waywk (~waywk4@mail.wlion.com) (Quit: Leaving)
  1068. # [22:09] * Quits: cheron (~cheron@unaffiliated/cheron) (Ping timeout: 240 seconds)
  1069. # [22:13] * Joins: lmclister (~lmclister@192.150.10.205)
  1070. # [22:14] * Quits: felipeduardo (~felipedua@177.16.92.27) (Quit: Leaving)
  1071. # [22:14] * Quits: lmclister (~lmclister@192.150.10.205) (Client Quit)
  1072. # [22:16] * Joins: DuncanMacWeb (~DuncanMac@host-92-20-4-208.as13285.net)
  1073. # [22:19] * Quits: ehynds (~ehynds@64.206.121.41)
  1074. # [22:23] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
  1075. # [22:24] <SamB> gsnedders: Char is not *quite* an integral type, but yeah, I guess it has allow them given the way Enum works ...
  1076. # [22:24] * Joins: shaunbaker (~shaunbake@97e0921c.skybroadband.com)
  1077. # [22:24] <SamB> and Bounded
  1078. # [22:25] * Quits: sicking (~sicking@corp-nat.p2p.sfo1.mozilla.com) (Quit: sicking)
  1079. # [22:25] * Quits: shaunbaker (~shaunbake@97e0921c.skybroadband.com) (Client Quit)
  1080. # [22:26] * Joins: sicking (~sicking@corp-nat.p2p.sfo1.mozilla.com)
  1081. # [22:28] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Ping timeout: 240 seconds)
  1082. # [22:28] * Joins: bholley (~bholley@187.64.32.150)
  1083. # [22:28] <gsnedders> SamB: Okay, it's not an integral type, but it has a 1:1 mapping to one
  1084. # [22:30] <SamB> back to JSON, RFC 715[89] also doesn't permit unpaired surrogates, but in section 8.2 warns that they have been seen in the wild and that the behaviour of software encountering them is unpredictable
  1085. # [22:30] <SamB> https://tools.ietf.org/html/rfc7159#section-8.2
  1086. # [22:30] * Joins: estellevw (~estellevw@173-228-112-232.dsl.dynamic.sonic.net)
  1087. # [22:31] <gsnedders> Oooh! That's a change!
  1088. # [22:32] * Quits: reyre (~reyre@bas1-streetsville52-3096630502.dsl.bell.ca) (Remote host closed the connection)
  1089. # [22:38] * Joins: Ms2ger (~Ms2ger@193.190.253.150)
  1090. # [22:39] * Quits: foxtrotwhiskey (~foxtrotwh@192.63.201.23) (Ping timeout: 240 seconds)
  1091. # [22:40] * Joins: Rastus_Vernon (uid15187@wikimedia/Rastus-Vernon)
  1092. # [22:40] * Joins: foxtrotwhiskey (~foxtrotwh@192-63-2457.unisys.com)
  1093. # [22:41] * Joins: anchnk (~anchnk@static-176-182-231-245.ncc.abo.bbox.fr)
  1094. # [22:41] * Joins: espadrine` (~ttyl@AMontsouris-158-1-51-245.w92-128.abo.wanadoo.fr)
  1095. # [22:43] * Quits: estellevw (~estellevw@173-228-112-232.dsl.dynamic.sonic.net) (Quit: Snuggling with the puppies)
  1096. # [22:45] * Quits: espadrine_ (~ttyl@AMontsouris-158-1-61-73.w92-128.abo.wanadoo.fr) (Ping timeout: 246 seconds)
  1097. # [22:53] * Quits: jeremyj (~jeremyj@17.202.44.231) (Quit: Textual IRC Client: www.textualapp.com)
  1098. # [22:53] * Quits: satazor (~satazor@80.78.37.188.rev.vodafone.pt) (Remote host closed the connection)
  1099. # [22:54] * Quits: foxtrotwhiskey (~foxtrotwh@192-63-2457.unisys.com) (Ping timeout: 240 seconds)
  1100. # [22:54] * Joins: satazor (~satazor@80.78.37.188.rev.vodafone.pt)
  1101. # [22:54] * Quits: othermaciej (~mjs@17.114.217.106) (Quit: othermaciej)
  1102. # [22:55] * Quits: jernoble|laptop (~jernoble@17.202.45.163) (Ping timeout: 246 seconds)
  1103. # [22:55] * Joins: jeremyj (~jeremyj@17.202.44.231)
  1104. # [22:57] * Quits: jeremyj (~jeremyj@17.202.44.231) (Client Quit)
  1105. # [22:57] * Joins: jernoble|laptop (~jernoble@17.114.4.116)
  1106. # [22:58] * Quits: satazor (~satazor@80.78.37.188.rev.vodafone.pt) (Ping timeout: 240 seconds)
  1107. # [22:58] * Quits: scrollback (scrollback@conference/jsconf/x-woohejqwmckfnfah) (Remote host closed the connection)
  1108. # [22:59] * Quits: sicking (~sicking@corp-nat.p2p.sfo1.mozilla.com) (Quit: sicking)
  1109. # [22:59] * Joins: 23LAAYN7O (scrollback@conference/jsconf/x-vdllxqqfporxcpna)
  1110. # [23:00] * Joins: hasather (~hasather@80.91.33.141)
  1111. # [23:02] * Quits: shannonmoeller (~shannonmo@pool-108-17-8-225.bflony.fios.verizon.net) (Remote host closed the connection)
  1112. # [23:03] * Quits: encryptd_fractal (~mfrawley@66-188-99-174.static.ftbg.wi.charter.com) (Ping timeout: 265 seconds)
  1113. # [23:03] * jorendorff is now known as jorendorff_away
  1114. # [23:05] * Quits: hasather (~hasather@80.91.33.141) (Ping timeout: 265 seconds)
  1115. # [23:05] * Joins: othermaciej (~mjs@17.114.3.68)
  1116. # [23:08] * Quits: othermaciej (~mjs@17.114.3.68) (Client Quit)
  1117. # [23:10] * Quits: Maurice` (copyman@5ED57922.cm-7-6b.dynamic.ziggo.nl)
  1118. # [23:10] * Joins: sicking (~sicking@corp-nat.p2p.sfo1.mozilla.com)
  1119. # [23:14] <jgraham> Hmm, that section says that it does permit unpaired surrogates
  1120. # [23:15] <jgraham> It just says that the behaviour of unpaired surrogates is undefined
  1121. # [23:16] <zewt> i'd sooner have it defined as outputting FFFE than being a parse error
  1122. # [23:16] * Quits: annevk (~annevk@2.31.25.165) (Remote host closed the connection)
  1123. # [23:17] <jgraham> The whole thing is pretty woeful
  1124. # [23:17] <zewt> so if some API client inputs a string from a user in a UTF-16 env, and the user pastes in a string with a broken surrogate, it doesn't become a server-side error later
  1125. # [23:17] <jgraham> You are kind of expected to guess how string escapes work
  1126. # [23:18] * krit_ is now known as krit
  1127. # [23:18] <zewt> eg. i'd rather there be no possible invalid user inputs as a string, even if it means some (invalid surrogates) not round-tripping through some paths
  1128. # [23:18] <jgraham> zewt: AFAICT the spec simply fails to define how strings are interpreted at all
  1129. # [23:18] <zewt> sure, i'm just saying how i'd prefer it
  1130. # [23:19] * Joins: Lachy (~Lachy@cm-84.215.104.248.getinternet.no)
  1131. # [23:19] <jgraham> I agree that fatal errors aren't great
  1132. # [23:19] * jorendorff_away is now known as jorendorff
  1133. # [23:19] <zewt> in practice that may be unlikely: most JSON encoders I've used just output UTF-8 for everything and never use \u escapes anyway
  1134. # [23:20] * Quits: jeffreyatw (~jeffreyat@173.247.197.10) (Quit: jeffreyatw)
  1135. # [23:20] <zewt> (or in the case of JS, outputs UTF-16 codepoints that get encoded to UTF-8 later)
  1136. # [23:20] * Joins: tav_ (~tav`@host109-154-1-151.range109-154.btcentralplus.com)
  1137. # [23:22] * Quits: benv (~benv@38.104.194.126) (Quit: Computer has gone to sleep.)
  1138. # [23:23] * Quits: tav (~tav`@host109-154-1-151.range109-154.btcentralplus.com) (Ping timeout: 252 seconds)
  1139. # [23:23] * tav_ is now known as tav
  1140. # [23:24] * Joins: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com)
  1141. # [23:24] * Quits: bholley (~bholley@187.64.32.150) (Ping timeout: 265 seconds)
  1142. # [23:25] * Joins: bholley (~bholley@187.64.32.150)
  1143. # [23:26] * Joins: Kolombiken1 (~Adium@gateway.creuna.se)
  1144. # [23:26] * Quits: Kolombiken1 (~Adium@gateway.creuna.se) (Client Quit)
  1145. # [23:28] * Quits: zcorpan (~zcorpan@90-230-218-37-no135.tbcn.telia.com) (Ping timeout: 265 seconds)
  1146. # [23:32] * ojan_away is now known as ojan
  1147. # [23:33] <SamB> gsnedders: well, I mean, the ABNF doesn't rule them out, but there are no semantics given for them in the prose
  1148. # [23:36] <SamB> what was that April 1 RFC with the, er, disillusioned definitions for keywords?
  1149. # [23:38] * Quits: zdobersek (~zan@tsn85-159-236-214.dyn.nltelcom.net) (Quit: Leaving.)
  1150. # [23:39] <gsnedders> jgraham: What do you want to do with serializer tests for html5lib, BTW?
  1151. # [23:40] <gsnedders> jgraham: Given they depend upon so many serialization options, and there are infinitely many valid serializations…
  1152. # [23:46] * espadrine` is now known as espadrine
  1153. # [23:48] * Quits: svl (~me@ip565744a7.direct-adsl.nl) (Quit: And back he spurred like a madman, shrieking a curse to the sky.)
  1154. # [23:48] * Quits: bholley (~bholley@187.64.32.150) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
  1155. # [23:53] * Quits: jernoble|laptop (~jernoble@17.114.4.116) (Quit: Computer has gone to sleep.)
  1156. # [23:56] * Quits: ehsan (~ehsan@66.207.208.102) (Remote host closed the connection)
  1157. # [23:57] * Joins: scor (~scor@c-98-217-11-242.hsd1.ma.comcast.net)
  1158. # [23:57] * Quits: scor (~scor@c-98-217-11-242.hsd1.ma.comcast.net) (Changing host)
  1159. # [23:57] * Joins: scor (~scor@drupal.org/user/52142/view)
  1160. # Session Close: Thu Mar 20 00:00:00 2014

The end :)