/irc-logs / freenode / #whatwg / 2012-11-19 / end

Options:

  1. # Session Start: Mon Nov 19 00:00:00 2012
  2. # Session Ident: #whatwg
  3. # [00:03] * Quits: cgcardona (~cgcardona@unaffiliated/cgcardona) (Quit: cgcardona)
  4. # [00:03] <annevk> zewt: I doubt browsers sniff on filename actually, be interesting to see a testcase for that (outside the limited case for plugins the HTML spec does require it for)
  5. # [00:03] * Quits: mattgiff_ (~mattgiffo@108.161.20.199) (Remote host closed the connection)
  6. # [00:03] <annevk> GPHemsley: zewt is right that we only want to list things which can be tested
  7. # [00:03] * Joins: mattgifford (~mattgiffo@108.161.20.199)
  8. # [00:03] <annevk> GPHemsley: I think some browsers might have postscript support, or maybe it's important to detect postscript so it doesn't get detected as something else?
  9. # [00:04] <zewt> annevk: they do for the "figure out whether to open with an external program, save to disk, prompt the user, etc." path
  10. # [00:04] <zewt> i don't know of any for file types supported *internally* by browsers
  11. # [00:04] <SimonSapin> gsnedders: for new projects I prefer running in 2 and 3 with the same code base
  12. # [00:04] <SimonSapin> but porting existing code to that can be painful
  13. # [00:04] <annevk> zewt: ah yeah, the UI layer might be broken
  14. # [00:04] <annevk> zewt: well, "broken"
  15. # [00:05] <annevk> but in any event the UI layer is outside our jurisdiction
  16. # [00:05] <SimonSapin> https://github.com/mitsuhiko/python-modernize can help
  17. # [00:05] <gsnedders> SimonSapin: That's always harder for things where you have complex encoding boundaries, in my experience
  18. # [00:06] <SimonSapin> yeah it can be hard, but once the switch is done everything is so much easier than running 2to3 (sloooooow) all the time
  19. # [00:07] * Quits: tomasf (~tom@c-44dbe555.024-204-6c6b7012.cust.bredbandsbolaget.se) (Quit: tomasf)
  20. # [00:07] <SimonSapin> but of course every project is different
  21. # [00:07] * Quits: danzik17 (~danzik17@pool-108-27-218-42.nycmny.fios.verizon.net) (Ping timeout: 252 seconds)
  22. # [00:07] * Quits: mattgifford (~mattgiffo@108.161.20.199) (Ping timeout: 248 seconds)
  23. # [00:07] <gsnedders> I think there are sufficently few changes made that that isn't a problem :P
  24. # [00:08] <SimonSapin> night time. ’later
  25. # [00:08] <gsnedders> gn
  26. # [00:09] <annevk> gsnedders: how many more years of studying?
  27. # [00:09] <gsnedders> annevk: 1.5
  28. # [00:09] <annevk> then you come back to us or are you going to do something new?
  29. # [00:10] <gsnedders> "us"? the web?
  30. # [00:10] <annevk> uhuh
  31. # [00:10] <gsnedders> I guess.
  32. # [00:11] * Joins: danzik17 (~danzik17@127.sub-70-192-81.myvzw.com)
  33. # [00:13] * Quits: SimonSapin (~simon@85-170-128-18.rev.numericable.fr) (Ping timeout: 260 seconds)
  34. # [00:20] * Joins: cgcardona (~cgcardona@c-24-4-198-207.hsd1.ca.comcast.net)
  35. # [00:20] * Quits: cgcardona (~cgcardona@c-24-4-198-207.hsd1.ca.comcast.net) (Changing host)
  36. # [00:20] * Joins: cgcardona (~cgcardona@unaffiliated/cgcardona)
  37. # [00:20] * Quits: karlcow (~karl@nerval.la-grange.net) (Quit: :tiuQ tiuq sah woclrak)
  38. # [00:28] <annevk> btw, I was thinking of writing a blog post / email announcing all the new stuff on /specs/ one of these days
  39. # [00:28] <annevk> if people have suggestions, let me know, or leave them here for me to read later
  40. # [00:29] * Quits: SamB_MacG5 (~SamB@2001:470:1f07:57:211:24ff:feaa:27a) (Ping timeout: 260 seconds)
  41. # [00:30] * Joins: SamB_MacG5 (~SamB@2001:470:1f07:57:211:24ff:feaa:27a)
  42. # [00:31] <GPHemsley> annevk: Can you elaborate on your reference to WEBVTT and CACHE MANIFEST?
  43. # [00:32] <GPHemsley> Also, why do we have RAR, ZIP, and GZIP in the list, anyway?
  44. # [00:32] <GPHemsley> given what you've said
  45. # [00:33] <GPHemsley> and if you only detect the other things as specced, there's no need to sniff postscript separately
  46. # [00:33] <GPHemsley> as protection
  47. # [00:33] <GPHemsley> but abarth's article also discussed sniffing from a file upload perspective, too
  48. # [00:33] <GPHemsley> so I wonder if that's related and if that should be in the spec
  49. # [00:34] <GPHemsley> (server-side sniffing)
  50. # [00:34] <annevk> GPHemsley: http://dev.w3.org/html5/webvtt/#webvtt-file-body has a required file signature, http://www.whatwg.org/specs/web-apps/current-work/#writing-cache-manifests does too
  51. # [00:34] <GPHemsley> right, but how does that relate to the current spec?
  52. # [00:34] <GPHemsley> i.e. mimesniff
  53. # [00:35] <annevk> GPHemsley: I meant that if we want a registry for file signatures important to the platform, which is pretty much mime sniff, we might want to mention these somehow too
  54. # [00:35] <GPHemsley> ah
  55. # [00:35] <GPHemsley> ok
  56. # [00:35] <annevk> GPHemsley: maybe Safari supports postscript?
  57. # [00:35] <GPHemsley> so that was a separate thing, then?
  58. # [00:35] <GPHemsley> I don't think so, but let me check
  59. # [00:35] <annevk> GPHemsley: I had not considered file upload, for file upload the Content-Type header user agents set does matter for interoperability
  60. # [00:36] <annevk> GPHemsley: that seems related to defining multipart/form-data, which we haven't fixed either yet
  61. # [00:36] <annevk> GPHemsley: yes, the file signature registry was a separate thing
  62. # [00:37] <GPHemsley> well, you didn't mention it in the context of a registry this most recent time
  63. # [00:37] <GPHemsley> but ok
  64. # [00:39] <GPHemsley> Opera and Chrome sniff postscript
  65. # [00:39] <GPHemsley> but don't parse it
  66. # [00:39] <GPHemsley> Safari and Firefox do not sniff it
  67. # [00:40] <GPHemsley> (and treat my test file as plaintext)
  68. # [00:40] <GPHemsley> http://whatwg.gphemsley.org/tests/mimesniff/application/postscript/PS-Adobe-
  69. # [00:40] <GPHemsley> incidentally, when Opera and Chrome prompt for download, they automatically add a .ps extension
  70. # [00:40] <annevk> my Minefield.app says postscript
  71. # [00:41] <GPHemsley> really? where?
  72. # [00:41] <zewt> browsers that aren't IE messing with filenames? gross
  73. # [00:41] <annevk> GPHemsley: offers a download dialog
  74. # [00:41] <zewt> thought that was just an IE evil :|
  75. # [00:41] <GPHemsley> oh
  76. # [00:41] <GPHemsley> shoot
  77. # [00:42] <GPHemsley> I might have cached it
  78. # [00:42] <GPHemsley> looks like you're right
  79. # [00:42] <GPHemsley> ok
  80. # [00:42] <zewt> actually i vaguely recall something about old safari adding .zip (the most common completely-broken-renaming-behavior), but that was a long time ago
  81. # [00:42] <annevk> and Safari opens it directly
  82. # [00:42] <annevk> as a postscript file
  83. # [00:42] <annevk> inline
  84. # [00:42] <GPHemsley> really?
  85. # [00:42] <GPHemsley> hmm
  86. # [00:42] <zewt> (since .zip is probably the single most widely repurposed file format)
  87. # [00:42] <GPHemsley> need a real file to test that
  88. # [00:43] <GPHemsley> bbl, dinner
  89. # [00:43] <zewt> (well, unless you consider "text file" to be a file format, which I don't think I do, any more than "binary file" is a file format)
  90. # [00:43] <annevk> I'm gonna sleep, ttyl
  91. # [00:43] * Quits: malydok (marek@156.17.232.100) (Quit: Farewell)
  92. # [00:43] <annevk> GPHemsley: fwiw, displaying as "text/plain" versus offering a download dialog does seem like a potential interoperability issue and something we should tackle, though it's not really clear to me that's the case here
  93. # [00:47] * Quits: skcin7 (~skcin7@c-68-38-156-213.hsd1.nj.comcast.net) (Quit: Computer has gone to sleep.)
  94. # [00:49] * Joins: skcin7 (~skcin7@c-68-38-156-213.hsd1.nj.comcast.net)
  95. # [00:51] * Quits: Lachy (~Lachy@cm-84.215.19.229.getinternet.no) (Quit: Computer has gone to sleep.)
  96. # [00:56] <annevk> TabAtkins: hmm yeah, url.query = new URLQuery(...) might be nice
  97. # [00:56] <annevk> TabAtkins: guess I should work with heycam|away to get the necessary IDL hooks
  98. # [00:59] <annevk> TabAtkins: also note that http://wiki.ecmascript.org/doku.php?id=harmony:simple_maps_and_sets does not account for setting to a list
  99. # [01:00] <annevk> TabAtkins: other than that the current proposal should map pretty closely
  100. # [01:00] * Quits: skcin7 (~skcin7@c-68-38-156-213.hsd1.nj.comcast.net) (Quit: Computer has gone to sleep.)
  101. # [01:00] * Joins: boogyman (~boogy@pdpc/supporter/professional/boogyman)
  102. # [01:01] <annevk> TabAtkins: and given that we have duplicate keys, I was thinking delete(key, val) might be nice too next to having delete(key)
  103. # [01:02] <GPHemsley> annevk: No, I think it was a side effect of the file originally having different headers sent.
  104. # [01:02] <GPHemsley> (which were cached on my primary browser)
  105. # [01:03] <annevk> no?
  106. # [01:03] <GPHemsley> it seems that they all prompt to download
  107. # [01:03] <GPHemsley> (at least Firefox doesn't append a file extension, AFAICT)
  108. # [01:04] <annevk> are you using Safari on Mac?
  109. # [01:04] <annevk> doesn't download for me
  110. # [01:04] <GPHemsley> except Safari
  111. # [01:05] <annevk> ah okay, by "No" you indicated agreement with my observations?
  112. # [01:05] <GPHemsley> yeah; I was disagreeing with your interop statement
  113. # [01:05] <annevk> what statement?
  114. # [01:05] <GPHemsley> how do I check the type/headers in Safari?
  115. # [01:05] <GPHemsley> [18:40:21] <annevk> GPHemsley: fwiw, displaying as "text/plain" versus offering a download dialog does seem like a potential interoperability issue and something we should tackle, though it's not really clear to me that's the case here
  116. # [01:06] <annevk> well yeah, it's not the case here, but why would you disagree with that in general?
  117. # [01:06] <GPHemsley> agreeing/disagreeing
  118. # [01:06] <GPHemsley> blame the English language
  119. # [01:06] <annevk> bedtime, it seems :)
  120. # [01:06] <GPHemsley> :)
  121. # [01:07] * Joins: chriseppstein (~chrisepps@99-6-85-4.lightspeed.sntcca.sbcglobal.net)
  122. # [01:08] <GPHemsley> I think we do need to come up with a metric for deciding what needs to go in the mimesniff spec and what can be elsewhere
  123. # [01:09] * Quits: danzik17 (~danzik17@127.sub-70-192-81.myvzw.com) (Ping timeout: 246 seconds)
  124. # [01:14] * Joins: dydx (~dydz@108-78-254-162.lightspeed.sntcca.sbcglobal.net)
  125. # [01:32] * Quits: MikeSmith (~MikeSmith@p15181-obmd01.tokyo.ocn.ne.jp) (Quit: MikeSmith)
  126. # [01:43] * Quits: boogyman (~boogy@pdpc/supporter/professional/boogyman) (Quit: ChatZilla 0.9.89 [Firefox 16.0.2/20121024073032])
  127. # [01:44] <GPHemsley> hmm... cache manifest is going to be a little complex to handle in the current styling, given the allowance of an optional BOM
  128. # [01:45] <GPHemsley> oh, same with WebVTT
  129. # [01:45] <GPHemsley> hmm
  130. # [01:54] * Joins: Yuhong (~chatzilla@S01060019d1e384a3.vc.shawcable.net)
  131. # [01:55] <Yuhong> <annevk> Yuhong: I want IE to drop support for EOT in the end
  132. # [01:56] <Yuhong> Actually, they do sometimes do things like this, but notice they disabled it by default only in the Internet zone and allow it to be reenabled:
  133. # [01:56] <Yuhong> http://blogs.msdn.com/b/ie/archive/2012/06/04/legacy-dx-filters-removed-from-ie10-release-preview.aspx
  134. # [02:01] * Joins: MikeSmith (~MikeSmith@p21225-ipngn4002marunouchi.tokyo.ocn.ne.jp)
  135. # [02:06] * Quits: Yuhong (~chatzilla@S01060019d1e384a3.vc.shawcable.net) (Quit: ChatZilla 0.9.89 [Firefox 16.0.2/20121024073032])
  136. # [02:10] * Joins: dedis7 (~dedis7@akw403.cs.yale.edu)
  137. # [02:11] * Joins: mattgifford (~mattgiffo@108.161.20.199)
  138. # [02:18] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
  139. # [02:18] * Quits: mattgifford (~mattgiffo@108.161.20.199) (Remote host closed the connection)
  140. # [02:18] * Joins: mattgifford (~mattgiffo@108.161.20.199)
  141. # [02:19] * Quits: dedis7 (~dedis7@akw403.cs.yale.edu) (Remote host closed the connection)
  142. # [02:23] * Quits: mattgifford (~mattgiffo@108.161.20.199) (Ping timeout: 255 seconds)
  143. # [02:32] * Quits: smaug____ (~chatzilla@cs181151161.pp.htv.fi) (Ping timeout: 260 seconds)
  144. # [02:34] * Joins: danzik17 (~danzik17@ool-45787007.dyn.optonline.net)
  145. # [02:42] * Joins: tomasf (~tom@c-44dbe555.024-204-6c6b7012.cust.bredbandsbolaget.se)
  146. # [02:42] * Joins: bholley (~bholley@c-67-180-21-133.hsd1.ca.comcast.net)
  147. # [02:53] * Quits: divya (~nimbu@c-67-169-39-98.hsd1.ca.comcast.net) (Quit: Leaving.)
  148. # [02:58] * Joins: karlcow (~karl@nerval.la-grange.net)
  149. # [03:00] * Joins: tantek (~tantek@173-228-64-81.dsl.dynamic.sonic.net)
  150. # [03:11] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Quit: Leaving...)
  151. # [03:14] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
  152. # [03:16] * Quits: karlcow (~karl@nerval.la-grange.net) (Quit: :tiuQ tiuq sah woclrak)
  153. # [03:16] * Joins: karlcow (~karl@nerval.la-grange.net)
  154. # [03:24] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Quit: Leaving...)
  155. # [03:27] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
  156. # [03:28] * Joins: snowfox_ben (~benschaaf@c-98-243-88-119.hsd1.mi.comcast.net)
  157. # [03:30] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Client Quit)
  158. # [03:32] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
  159. # [03:33] * Joins: zztr (~travis@adsl-75-18-209-222.dsl.pltn13.sbcglobal.net)
  160. # [03:33] * Joins: _divya (~Adium@c-67-169-39-98.hsd1.ca.comcast.net)
  161. # [03:39] * Joins: marcosc_ (~marcosc@bl11-211-109.dsl.telepac.pt)
  162. # [03:41] * Quits: marcosc (~marcosc@bl7-53-124.dsl.telepac.pt) (Ping timeout: 246 seconds)
  163. # [03:49] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Quit: Leaving...)
  164. # [03:51] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
  165. # [03:57] * Quits: eric_carlson (~ericc@adsl-67-112-12-110.dsl.anhm01.pacbell.net) (Quit: eric_carlson)
  166. # [03:58] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Quit: Leaving...)
  167. # [04:00] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
  168. # [04:09] * Quits: nessy (~silviapf@124-170-210-26.dyn.iinet.net.au) (Quit: Leaving.)
  169. # [04:20] * Joins: jsoncorwin (~textual@67.sub-70-199-67.myvzw.com)
  170. # [04:20] * heycam|away is now known as heycam
  171. # [04:23] * Joins: JonathanNeal (~anonymous@cpe-142-11-82-156.socal.rr.com)
  172. # [04:25] * Quits: jacobolu_ (~jacobolus@50-0-133-210.dsl.static.sonic.net) (Remote host closed the connection)
  173. # [04:31] * Quits: jsoncorwin (~textual@67.sub-70-199-67.myvzw.com) (Quit: Computer has gone to sleep.)
  174. # [04:32] * Quits: MikeSmith (~MikeSmith@p21225-ipngn4002marunouchi.tokyo.ocn.ne.jp) (Quit: MikeSmith)
  175. # [04:57] * Joins: jsoncorwin (~textual@17.sub-70-199-66.myvzw.com)
  176. # [04:59] * Quits: kennyluck (~kennyluck@bb115-66-236-93.singnet.com.sg) (Quit: kennyluck)
  177. # [05:06] * Quits: [[zz]] (~q@node-ogs.pool-101-108.dynamic.totbb.net) (Read error: Connection reset by peer)
  178. # [05:07] * Joins: [[zz]] (~q@node-9wt.pool-125-25.dynamic.totbb.net)
  179. # [05:19] * Joins: plutoniix (~plutoniix@node-1au6.pool-125-24.dynamic.totbb.net)
  180. # [05:30] * Joins: MikeSmith (~MikeSmith@p15181-obmd01.tokyo.ocn.ne.jp)
  181. # [05:34] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Quit: Leaving...)
  182. # [05:34] * Quits: chriseppstein (~chrisepps@99-6-85-4.lightspeed.sntcca.sbcglobal.net) (Quit: chriseppstein)
  183. # [05:36] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
  184. # [05:43] * Joins: kennyluck (~kennyluck@bb115-66-236-93.singnet.com.sg)
  185. # [05:46] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Quit: Leaving...)
  186. # [05:47] * Joins: mattgifford (~mattgiffo@108.161.20.199)
  187. # [05:47] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
  188. # [05:53] * Quits: jsoncorwin (~textual@17.sub-70-199-66.myvzw.com) (Ping timeout: 255 seconds)
  189. # [05:54] * Quits: tantek (~tantek@173-228-64-81.dsl.dynamic.sonic.net) (Quit: tantek)
  190. # [05:55] * Joins: magistr (~magistr@109.111.174.36)
  191. # [05:56] * Quits: mattgifford (~mattgiffo@108.161.20.199) (Remote host closed the connection)
  192. # [05:56] * Quits: OnlyMax (~OnlyMax@187-126-223-141.user.veloxzone.com.br) (Ping timeout: 244 seconds)
  193. # [05:56] * Joins: mattgifford (~mattgiffo@108.161.20.199)
  194. # [05:57] * Joins: jsoncorwin (~textual@157.sub-70-199-69.myvzw.com)
  195. # [06:01] * Quits: mattgifford (~mattgiffo@108.161.20.199) (Ping timeout: 260 seconds)
  196. # [06:06] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Quit: Leaving...)
  197. # [06:09] * Quits: dydx (~dydz@108-78-254-162.lightspeed.sntcca.sbcglobal.net) (Quit: dydx)
  198. # [06:09] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
  199. # [06:11] * Quits: jsoncorwin (~textual@157.sub-70-199-69.myvzw.com) (Quit: Computer has gone to sleep.)
  200. # [06:12] * Quits: tomasf (~tom@c-44dbe555.024-204-6c6b7012.cust.bredbandsbolaget.se) (Quit: tomasf)
  201. # [06:14] * Joins: shepazu (~shepazu@108-70-132-46.lightspeed.rlghnc.sbcglobal.net)
  202. # [06:15] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Quit: Leaving...)
  203. # [06:15] * Joins: ap_ (~ap@c-98-234-180-13.hsd1.ca.comcast.net)
  204. # [06:16] * ap_ is now known as ap
  205. # [06:16] * Quits: Bass10 (~Bass10@c-76-113-194-7.hsd1.mn.comcast.net) (Quit: Leaving)
  206. # [06:17] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
  207. # [06:19] * Quits: snowfox_ben (~benschaaf@c-98-243-88-119.hsd1.mi.comcast.net) (Quit: snowfox_ben)
  208. # [06:39] * Joins: mattgifford (~mattgiffo@108.161.20.199)
  209. # [06:39] * Quits: ap (~ap@c-98-234-180-13.hsd1.ca.comcast.net) (Quit: ap)
  210. # [06:47] * Parts: _divya (~Adium@c-67-169-39-98.hsd1.ca.comcast.net)
  211. # [07:14] * Joins: zdobersek (~zan@cpe-46-164-23-154.dynamic.amis.net)
  212. # [07:18] * Joins: nessy (~silviapf@124-170-210-26.dyn.iinet.net.au)
  213. # [07:22] * Quits: nessy (~silviapf@124-170-210-26.dyn.iinet.net.au) (Ping timeout: 255 seconds)
  214. # [07:22] * Joins: nessy (~silviapf@124-169-147-242.dyn.iinet.net.au)
  215. # [07:24] * Quits: plutoniix (~plutoniix@node-1au6.pool-125-24.dynamic.totbb.net) (Ping timeout: 246 seconds)
  216. # [07:35] * Quits: danzik17 (~danzik17@ool-45787007.dyn.optonline.net) (Ping timeout: 246 seconds)
  217. # [07:37] * Quits: wakaba (~wakaba@119.22.102.121.dy.bbexcite.jp) (Read error: Connection reset by peer)
  218. # [07:37] * Joins: plutoniix (~plutoniix@node-1ob.pool-182-52.dynamic.totbb.net)
  219. # [07:37] * Joins: wakaba (~wakaba@119.22.102.121.dy.bbexcite.jp)
  220. # [07:41] * Joins: Jedi_ (~Jedi@jedi.org)
  221. # [07:47] <sangwhan> ls
  222. # [07:47] * sangwhan oops
  223. # [07:59] <karlcow> aha
  224. # [08:00] * Joins: SimonSapin (~simon@85-170-128-18.rev.numericable.fr)
  225. # [08:09] * Joins: maikmerten (~merten@ls5dhcp200.cs.uni-dortmund.de)
  226. # [08:09] * Joins: jacobolus (~jacobolus@99-127-228-11.lightspeed.sntcca.sbcglobal.net)
  227. # [08:13] * Quits: jacobolus (~jacobolus@99-127-228-11.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
  228. # [08:15] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Quit: Leaving...)
  229. # [08:16] * Quits: zztr (~travis@adsl-75-18-209-222.dsl.pltn13.sbcglobal.net) (Quit: Leaving.)
  230. # [08:19] * Joins: jacobolus (~jacobolus@99-127-228-11.lightspeed.sntcca.sbcglobal.net)
  231. # [08:21] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
  232. # [08:23] * Joins: Ducki (~Ducki@pD9E3981C.dip0.t-ipconnect.de)
  233. # [08:24] * Quits: jacobolus (~jacobolus@99-127-228-11.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
  234. # [08:26] * Joins: Jedi__ (~Jedi@jedi.org)
  235. # [08:26] * Quits: Jedi_ (~Jedi@jedi.org) (Ping timeout: 255 seconds)
  236. # [08:28] * Quits: magistr (~magistr@109.111.174.36) (Remote host closed the connection)
  237. # [08:29] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Quit: Leaving...)
  238. # [08:34] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
  239. # [08:34] * Jedi__ is now known as Jedi_
  240. # [08:37] * Joins: CyclicFlux (~cyclicflu@96.244.70.179)
  241. # [08:38] * Joins: jsoncorwin (~textual@105.sub-70-199-67.myvzw.com)
  242. # [08:40] * Joins: tantek (~tantek@70-36-139-86.dsl.dynamic.sonic.net)
  243. # [08:42] * Quits: SimonSapin (~simon@85-170-128-18.rev.numericable.fr) (Ping timeout: 252 seconds)
  244. # [08:43] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Quit: Leaving...)
  245. # [08:44] * Quits: zdobersek (~zan@cpe-46-164-23-154.dynamic.amis.net) (Quit: Leaving.)
  246. # [08:47] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
  247. # [08:47] * Joins: zcorpan (~zcorpan@81-231-170-159-no135.tbcn.telia.com)
  248. # [08:50] * Joins: henrikkok (~henrikkok@81.27.221.193)
  249. # [08:55] * Quits: bholley (~bholley@c-67-180-21-133.hsd1.ca.comcast.net) (Quit: bholley)
  250. # [08:58] <zcorpan> http://www.alvestrand.no/pipermail/idna-update/2012-November/007482.html
  251. # [09:10] * Joins: sedovsek (~robert@89.143.12.238)
  252. # [09:11] * Quits: sedovsek (~robert@89.143.12.238) (Client Quit)
  253. # [09:12] <MikeSmith> zcorpan: wow
  254. # [09:14] * Joins: didymos (~didymos@5.57.48.69)
  255. # [09:14] * Quits: karlcow (~karl@nerval.la-grange.net) (Quit: :tiuQ tiuq sah woclrak)
  256. # [09:16] * Joins: sedovsek (~robert@89.143.12.238)
  257. # [09:21] * Joins: hasather_ (~hasather_@cm-84.208.105.178.getinternet.no)
  258. # [09:22] * Quits: mattgifford (~mattgiffo@108.161.20.199) (Remote host closed the connection)
  259. # [09:23] * Joins: mattgifford (~mattgiffo@108.161.20.199)
  260. # [09:23] * Joins: SimonSapin (~simon@2a01:e35:2e8d:b5f0:ea9d:87ff:fe22:e221)
  261. # [09:27] * Quits: mattgifford (~mattgiffo@108.161.20.199) (Ping timeout: 255 seconds)
  262. # [09:30] * Quits: foolip (~philip@83.218.67.122) (Quit: Ex-Chat)
  263. # [09:31] * Joins: darobin (~darobin@78.109.80.74)
  264. # [09:39] <zcorpan> MikeSmith: indeed
  265. # [09:46] * Joins: shwetank (~shwetank@122.173.145.84)
  266. # [09:48] * Joins: Robbert_ (~robbert@212.238.236.229)
  267. # [09:49] * Joins: tomasf (~tomasf@77.72.97.5.c.fiberdirekt.net)
  268. # [09:51] * Joins: auchenbe_ (~auchenber@176.222.239.226)
  269. # [09:53] <annevk> GPHemsley: you don't take BOM into account for HTML?
  270. # [09:54] * Quits: auchenberg (~auchenber@176.222.239.226) (Ping timeout: 265 seconds)
  271. # [09:55] * Quits: JonathanNeal (~anonymous@cpe-142-11-82-156.socal.rr.com) (Quit: JonathanNeal)
  272. # [10:00] * Joins: Ms2ger (~Ms2ger@vpnf025.ugent.be)
  273. # [10:03] * Quits: hasather_ (~hasather_@cm-84.208.105.178.getinternet.no) (Remote host closed the connection)
  274. # [10:07] * Joins: skcin7 (~skcin7@c-68-38-156-213.hsd1.nj.comcast.net)
  275. # [10:08] * Quits: jsoncorwin (~textual@105.sub-70-199-67.myvzw.com) (Quit: Computer has gone to sleep.)
  276. # [10:16] * Quits: didymos (~didymos@5.57.48.69) (Quit: Computer has gone to sleep)
  277. # [10:16] * Joins: Somatt_wrk (~somattwrk@darkstar2.fullsix.com)
  278. # [10:26] * Joins: Lachy (~Lachy@cm-84.215.19.229.getinternet.no)
  279. # [10:27] * heycam is now known as heycam|away
  280. # [10:29] * Joins: magistr (~magistr@109.111.174.36)
  281. # [10:32] * Joins: smaug____ (~chatzilla@cs181151161.pp.htv.fi)
  282. # [10:33] * Quits: Robbert_ (~robbert@212.238.236.229) (Remote host closed the connection)
  283. # [10:40] * Joins: didymos (~didymos@5.57.48.69)
  284. # [10:42] * Quits: plutoniix (~plutoniix@node-1ob.pool-182-52.dynamic.totbb.net) (Read error: No route to host)
  285. # [10:43] <zcorpan> heycam: <p><div></div></p> is actually <p></p><div></div><p></p>
  286. # [10:43] * Joins: cheron (~cheron@unaffiliated/cheron)
  287. # [10:47] * Quits: annevk (~annevk@a82-161-179-17.adsl.xs4all.nl) (Remote host closed the connection)
  288. # [10:47] <zcorpan> annevk: http://krijnhoetmer.nl/irc-logs/whatwg/20121118#l-136 doesn't seem right.
  289. # [10:48] * Joins: foolip (~philip@node-7lfbcjr346n471gbp.a0.ipv6.opera.com)
  290. # [10:48] <zcorpan> <input required value> is valid, afaict
  291. # [10:49] * Joins: nonge_ (~nonge@p5082BE83.dip.t-dialin.net)
  292. # [10:52] * Quits: nonge (~nonge@p5B3264C0.dip.t-dialin.net) (Ping timeout: 248 seconds)
  293. # [10:54] * Quits: attiks (~chatzilla@d5153136D.static.telenet.be) (Read error: Connection reset by peer)
  294. # [10:54] * Joins: attiks|away (~chatzilla@d5153136D.static.telenet.be)
  295. # [10:54] * attiks|away is now known as attiks
  296. # [10:59] * Joins: plutoniix (~plutoniix@node-1ob.pool-182-52.dynamic.totbb.net)
  297. # [11:00] * Joins: annevk (~annevk@84.241.198.236)
  298. # [11:01] <annevk> zcorpan: didn't realize he was talking about the validator
  299. # [11:01] <zcorpan> ah
  300. # [11:01] <annevk> happy b-day btw
  301. # [11:01] <zcorpan> thanks
  302. # [11:04] * Quits: auchenbe_ (~auchenber@176.222.239.226) (Remote host closed the connection)
  303. # [11:08] * Joins: zdobersek (~zan@cpe-46-164-23-154.dynamic.amis.net)
  304. # [11:08] * Quits: mpt (~mpt@canonical/mpt) (Ping timeout: 268 seconds)
  305. # [11:12] * Joins: auchenberg (~auchenber@176.222.239.226)
  306. # [11:13] * Quits: annevk (~annevk@84.241.198.236) (Remote host closed the connection)
  307. # [11:19] <zcorpan> should it be possible to create a DataTransfer object from script?
  308. # [11:20] <zcorpan> the DragEvent constructor seems a bit pointless without being able to use custom DataTransfer
  309. # [11:21] * Quits: Ms2ger (~Ms2ger@vpnf025.ugent.be) (Read error: Operation timed out)
  310. # [11:22] <zcorpan> https://www.w3.org/Bugs/Public/show_bug.cgi?id=20004
  311. # [11:26] * Joins: annevk (~annevk@212.238.236.229)
  312. # [11:26] * Quits: MikeSmith (~MikeSmith@p15181-obmd01.tokyo.ocn.ne.jp) (Ping timeout: 268 seconds)
  313. # [11:27] * Quits: Lachy (~Lachy@cm-84.215.19.229.getinternet.no) (Quit: Computer has gone to sleep.)
  314. # [11:30] <annevk> zcorpan: can't you still test your drag & drop code with custom events even if there's no DataTransfer object? arguably you can't test all of it then, but still a bit
  315. # [11:31] <zcorpan> you can't test the dataTransfer aspects
  316. # [11:31] <zcorpan> which seems like the useful ones
  317. # [11:32] <annevk> zcorpan: that whole idna-update thread is full of wow
  318. # [11:33] <zcorpan> yeah. but this email seemed like a level above the rest
  319. # [11:33] * Quits: didymos (~didymos@5.57.48.69) (Quit: Computer has gone to sleep)
  320. # [11:36] <annevk> http://iutf.org/wiki/Main_Page can't help but read "intelligent design"
  321. # [11:37] <annevk> http://wiki.whatwg.org/wiki/URL#IDNA has my IDNA notes
  322. # [11:38] * Parts: zdobersek (~zan@cpe-46-164-23-154.dynamic.amis.net)
  323. # [11:41] * Joins: MikeSmith (~MikeSmith@p15181-obmd01.tokyo.ocn.ne.jp)
  324. # [11:42] <zcorpan> nice
  325. # [11:42] * abstractj|away is now known as abstractj
  326. # [11:43] * Joins: zdobersek (~zan@cpe-46-164-23-154.dynamic.amis.net)
  327. # [11:43] * Joins: mpt (~mpt@faun.canonical.com)
  328. # [11:43] * Quits: mpt (~mpt@faun.canonical.com) (Changing host)
  329. # [11:43] * Joins: mpt (~mpt@canonical/mpt)
  330. # [11:44] <annevk> the not so nice thing is that e.g. thus far I've heard no interest from WebKit in doing anything, IE apparently has not moved either even though Windows 8 reportedly supports IDNA2008, and Gecko seems to be planning on moving forward still? https://bugzilla.mozilla.org/show_bug.cgi?id=479520
  331. # [11:44] <annevk> well, and Opera did something, but thus far it's not very clear whether Gecko plans on matching that
  332. # [11:45] * Joins: Robbert_ (~robbert@212.238.236.229)
  333. # [11:46] * Quits: Robbert_ (~robbert@212.238.236.229) (Remote host closed the connection)
  334. # [11:57] <annevk> https://github.com/jclark/microxml-er/blob/master/recovery.md seems to match what I had defined more or less, minus DOCTYPEs
  335. # [12:01] * Joins: didymos (~didymos@5.57.48.69)
  336. # [12:03] * Joins: Kolombiken (~Adium@217.13.228.226)
  337. # [12:05] * Joins: Lachy (~Lachy@office.oslo.opera.com)
  338. # [12:11] * Joins: alrra (~alrra@unaffiliated/alrra)
  339. # [12:19] * Quits: plutoniix (~plutoniix@node-1ob.pool-182-52.dynamic.totbb.net) (Quit: จรลี จรลา)
  340. # [12:22] <zcorpan> and the multiple roots case
  341. # [12:22] <zcorpan> and </>
  342. # [12:23] <annevk> oh it supports multiple roots? how would the result still match element then?
  343. # [12:24] <zcorpan> "If at this point we do not have a single element, wrap everything in an element named #doc."
  344. # [12:25] <annevk> ooh
  345. # [12:25] <annevk> how is that streaming?
  346. # [12:25] <zcorpan> means it can't be streaming :-(
  347. # [12:25] <annevk> that's kinda contrary to an earlier stated goal
  348. # [12:25] <annevk> weird
  349. # [12:26] <zcorpan> where are the goals stated?
  350. # [12:27] <annevk> oh
  351. # [12:27] <annevk> "The tokenization phase is also designed to be allow for a streaming implementation, whereas the tree-building phase is not."
  352. # [12:27] <annevk> misremembered
  353. # [12:27] <annevk> seems silly
  354. # [12:28] <jgraham> You just start streaming with a QuantumStartTag which is ina superposition of the present and not present states. Reaching the end of the input is like collapsing the wavefunction so you end up in a concrete state.
  355. # [12:29] <annevk> right
  356. # [12:29] <jgraham> (Man I feel bad for such a hideous use of pseudo-physics. Although like all great pseudo-physics it doesn't actually work)
  357. # [12:29] <jgraham> (next up: how to use the endless cycling of Working Group debates to generate infinite energy)
  358. # [12:29] <annevk> in the new bond movie they have a lot of pseudo-computery-stuff
  359. # [12:30] <annevk> aside from that it was pretty decent
  360. # [12:40] * Quits: espadrine (~thaddee_t@85-218-2-62.dclient.lsne.ch) (Ping timeout: 264 seconds)
  361. # [12:41] * Quits: cheron (~cheron@unaffiliated/cheron) (Quit: Leaving.)
  362. # [12:41] * Quits: Somatt_wrk (~somattwrk@darkstar2.fullsix.com) (Ping timeout: 260 seconds)
  363. # [12:41] <odinho> Yeah, had the same feeling. Had to look away quite a bit.
  364. # [12:41] <odinho> Don't understand why they do that.
  365. # [12:42] <odinho> Even Helene (my gf) felt bad because of it.
  366. # [12:49] * Joins: Stevef (~chatzilla@cpc20-nmal18-2-0-cust76.19-2.cable.virginmedia.com)
  367. # [12:53] * Joins: richt (~richt@pat-tazdevil.opera.com)
  368. # [12:58] * Quits: richt (~richt@pat-tazdevil.opera.com) (Remote host closed the connection)
  369. # [12:58] * Joins: richt (~richt@office.oslo.opera.com)
  370. # [13:01] * Joins: malydok (marek@156.17.232.100)
  371. # [13:08] * Quits: shwetank (~shwetank@122.173.145.84) (Quit: Leaving...)
  372. # [13:09] <zcorpan> i totally overlooked the pseudo-computer stuff. i guess i'm used to it
  373. # [13:11] <annevk> I think I might have done that too but it was pointed out to me and then I couldn't stop noticing it
  374. # [13:12] * Quits: darobin (~darobin@78.109.80.74) (Remote host closed the connection)
  375. # [13:16] * Quits: henrikkok (~henrikkok@81.27.221.193) (Quit: Leaving.)
  376. # [13:17] * Quits: auchenberg (~auchenber@176.222.239.226) (Remote host closed the connection)
  377. # [13:18] * Joins: JohnAlbin (~JohnAlbin@114-42-55-162.dynamic.hinet.net)
  378. # [13:18] * Quits: nessy (~silviapf@124-169-147-242.dyn.iinet.net.au) (Quit: Leaving.)
  379. # [13:20] * Joins: Somatt_wrk (~somattwrk@darkstar2.fullsix.com)
  380. # [13:21] * Quits: tantek (~tantek@70-36-139-86.dsl.dynamic.sonic.net) (Quit: tantek)
  381. # [13:32] <annevk> AryehGregor_: basically, I'm unsure of all changes to ranges :-)
  382. # [13:33] <annevk> AryehGregor_: not sure what it is exactly, I feel like I don't quite grasp them or something
  383. # [13:33] <annevk> AryehGregor_: anyway, will fix that bug shortly
  384. # [13:33] * Joins: auchenberg (~auchenber@176.222.239.226)
  385. # [13:37] <AryehGregor_> annevk, thanks.
  386. # [13:38] * Quits: zdobersek (~zan@cpe-46-164-23-154.dynamic.amis.net) (Ping timeout: 245 seconds)
  387. # [13:41] * Quits: Areks (~Areks@rs.gridnine.com) (Read error: Connection reset by peer)
  388. # [13:42] * Joins: Areks (~Areks@rs.gridnine.com)
  389. # [13:49] * Joins: hdhoang (~hdhoang@113.178.25.158)
  390. # [13:56] * Joins: zdobersek (~zan@cpe-46-164-23-154.dynamic.amis.net)
  391. # [13:59] * Joins: darobin (~darobin@78.109.80.74)
  392. # [14:00] * Quits: globbot (~logbot@lump.glob.com.au) (Remote host closed the connection)
  393. # [14:05] * Joins: Ms2ger (~Ms2ger@vpne176.ugent.be)
  394. # [14:11] <Ms2ger> jgraham, boo, collapse
  395. # [14:12] <Ms2ger> jgraham, multi-universe is much nicer
  396. # [14:12] <odinho> zcorpan: I usually do too, -- but it was too much in this one. Especially all the name dropping, like "oh this is obfuscated, security by obscurity, ... blabla"
  397. # [14:13] <zcorpan> odinho: ah yeah, i did reflect on "security by obscurity", now that you mention it
  398. # [14:13] <odinho> I was thrilled when watching Matrix Reloaded, -- they really got the computer scenes right. (nmap, compiling a ssh exploit, using that to gain access to a power station main frame).
  399. # [14:14] <zcorpan> i did a silent LOL
  400. # [14:14] <zcorpan> and then forgot about it :-)
  401. # [14:14] <odinho> zcorpan: I put my head in my hands in pure shame.
  402. # [14:15] <Ms2ger> A LOS, if you will
  403. # [14:21] <annevk> AryehGregor_: fixed
  404. # [14:21] * annevk goes back to IPv6
  405. # [14:22] <Ms2ger> Back? From IPv8?
  406. # [14:22] <zcorpan> we do IPv5 around here
  407. # [14:23] <Ms2ger> Well played, sir
  408. # [14:23] <annevk> I'm losing time here trying to come up with a funny retort
  409. # [14:23] <annevk> <- fails
  410. # [14:25] * Joins: JohnAlbin_ (~JohnAlbin@36-224-108-89.dynamic-ip.hinet.net)
  411. # [14:26] * Joins: krawchyk (~krawchyk@65.220.49.251)
  412. # [14:27] <annevk> btw, if someone can tell me why http://�/ fails per IDNA2003 that would be most appreciated, is it because � (indeed, it's U+FFFD) is not a valid IRI code point?
  413. # [14:27] * Quits: sedovsek (~robert@89.143.12.238) (Quit: sedovsek)
  414. # [14:28] * Quits: JohnAlbin (~JohnAlbin@114-42-55-162.dynamic.hinet.net) (Ping timeout: 248 seconds)
  415. # [14:28] * JohnAlbin_ is now known as JohnAlbin
  416. # [14:28] * Joins: sedovsek (~robert@89.143.12.238)
  417. # [14:34] * Quits: Ms2ger (~Ms2ger@vpne176.ugent.be) (Ping timeout: 265 seconds)
  418. # [14:38] * Quits: sedovsek (~robert@89.143.12.238) (Quit: sedovsek)
  419. # [14:39] * Joins: sedovsek (~robert@89.143.12.238)
  420. # [14:42] * abstractj is now known as abstractj|away
  421. # [14:49] * Quits: didymos (~didymos@5.57.48.69) (Quit: Computer has gone to sleep)
  422. # [14:54] * Joins: globbot (~logbot@lump.glob.com.au)
  423. # [14:54] * Joins: didymos (~didymos@5.57.48.69)
  424. # [14:55] * Joins: pyrsmk (~pyrsmk@84.5.251.195)
  425. # [15:00] <annevk> hmm
  426. # [15:00] <annevk> Chrome supports http://[2::%5d/
  427. # [15:00] * Joins: Bass10 (~Bass10@c-76-113-194-7.hsd1.mn.comcast.net)
  428. # [15:01] * Quits: Bass10 (~Bass10@c-76-113-194-7.hsd1.mn.comcast.net) (Max SendQ exceeded)
  429. # [15:02] <annevk> and stuff like http://[3%3a:1:0:0:0:0]/
  430. # [15:02] * Quits: maikmerten (~merten@ls5dhcp200.cs.uni-dortmund.de) (Ping timeout: 276 seconds)
  431. # [15:02] * Joins: Bass10 (Bass10@c-76-113-194-7.hsd1.mn.comcast.net)
  432. # [15:03] <annevk> Safari does not reject http://[3%3a:1:0:0:0:0%]/
  433. # [15:03] <annevk> Safari does reject %5d instead of ]
  434. # [15:03] <annevk> man
  435. # [15:03] <annevk> is there nothing that just works?
  436. # [15:03] <zcorpan> you must be new here
  437. # [15:06] * Quits: zdobersek (~zan@cpe-46-164-23-154.dynamic.amis.net) (Ping timeout: 268 seconds)
  438. # [15:06] * Joins: thisgeek (~chris@ool-45757d25.dyn.optonline.net)
  439. # [15:06] * Quits: Stevef (~chatzilla@cpc20-nmal18-2-0-cust76.19-2.cable.virginmedia.com) (Remote host closed the connection)
  440. # [15:07] * Quits: auchenberg (~auchenber@176.222.239.226) (Remote host closed the connection)
  441. # [15:07] <annevk> I guess I'll go with RFC 3986 which puts [, :, and ] in reserved and has them as part of the syntax of IP literals and therefore using them in percent-encoded fashion should result in a syntax error
  442. # [15:08] <annevk> Opera just gives me illegal URL for http://[3a::1:0:0:0:0]/test btw
  443. # [15:08] <annevk> not sure what is up with that
  444. # [15:08] * Joins: zdobersek (~zan@cpe-46-164-1-103.dynamic.amis.net)
  445. # [15:10] * Joins: auchenberg (~auchenber@176.222.239.226)
  446. # [15:12] * Joins: krawchyk_ (~krawchyk@65.220.49.251)
  447. # [15:12] <MikeSmith> "The rank of an hgroup element is the rank of the highest-ranked h1–h6 element descendant of the hgroup element, if there are any such elements, or otherwise the same as for an h1 element (the highest rank)." is not very friendly to streaming processing to generate an outline.
  448. # [15:14] <zcorpan> MikeSmith: just defer creating the outline item for the hgroup until the element is closed
  449. # [15:14] <zcorpan> or heading, i guess
  450. # [15:15] * Joins: shwetank (~shwetank@122.173.145.84)
  451. # [15:15] <MikeSmith> hmm yeah true
  452. # [15:15] * Quits: krawchyk (~krawchyk@65.220.49.251) (Ping timeout: 244 seconds)
  453. # [15:15] * Quits: tomasf (~tomasf@77.72.97.5.c.fiberdirekt.net) (Ping timeout: 246 seconds)
  454. # [15:17] * Joins: pyrsmk2 (~pyrsmk@23.94.138.88.rev.sfr.net)
  455. # [15:19] * Quits: pyrsmk (~pyrsmk@84.5.251.195) (Ping timeout: 252 seconds)
  456. # [15:26] * Quits: smaug____ (~chatzilla@cs181151161.pp.htv.fi) (Ping timeout: 246 seconds)
  457. # [15:26] * Quits: pyrsmk2 (~pyrsmk@23.94.138.88.rev.sfr.net) (Quit: tzing)
  458. # [15:27] * Joins: pyrsmk (~pyrsmk@23.94.138.88.rev.sfr.net)
  459. # [15:27] * Joins: danzik17 (~danzik17@164.55.254.106)
  460. # [15:31] * Joins: MacTed (~Thud@63.119.36.36)
  461. # [15:31] * Joins: garciawebdev (~garciaweb@190.244.76.154)
  462. # [15:33] * Joins: miketaylr (~miketaylr@cpe-70-112-101-224.austin.res.rr.com)
  463. # [15:37] * Joins: tomasf (~tomasf@static-88.131.62.36.addr.tdcsong.se)
  464. # [15:38] * Quits: didymos (~didymos@5.57.48.69) (Quit: Computer has gone to sleep)
  465. # [15:45] * Joins: maikmerten (~merten@vpn06167.itmc.tu-dortmund.de)
  466. # [15:48] * Joins: yodasw16 (~yodasw16@ql1fwhide.rockfin.com)
  467. # [15:50] * Joins: henrikkok (~henrikkok@81.27.221.193)
  468. # [16:00] * Quits: shwetank (~shwetank@122.173.145.84) (Quit: Linkinus - http://linkinus.com)
  469. # [16:01] * Joins: griswold (~quassel@blackhole.space150.com)
  470. # [16:08] * Quits: krawchyk_ (~krawchyk@65.220.49.251) (Remote host closed the connection)
  471. # [16:09] * Joins: krawchyk (~krawchyk@65.220.49.251)
  472. # [16:11] * Joins: erichynds (~ehynds@64.206.121.41)
  473. # [16:11] * Quits: annevk (~annevk@212.238.236.229) (Remote host closed the connection)
  474. # [16:11] * Joins: Stevef (~chatzilla@cpc20-nmal18-2-0-cust76.19-2.cable.virginmedia.com)
  475. # [16:16] * Quits: maikmerten (~merten@vpn06167.itmc.tu-dortmund.de) (Read error: Operation timed out)
  476. # [16:24] * Joins: didymos (~didymos@5.57.48.69)
  477. # [16:25] * Quits: didymos (~didymos@5.57.48.69) (Client Quit)
  478. # [16:30] * Joins: tantek (~tantek@70-36-139-86.dsl.dynamic.sonic.net)
  479. # [16:32] * Quits: zcorpan (~zcorpan@81-231-170-159-no135.tbcn.telia.com) (Remote host closed the connection)
  480. # [16:33] * Quits: Bass10 (Bass10@c-76-113-194-7.hsd1.mn.comcast.net) (Quit: Leaving)
  481. # [16:34] * Joins: mhausenblas (~mhausenbl@140.203.154.5)
  482. # [16:36] * Joins: maikmerten (~merten@ls5dhcp200.cs.uni-dortmund.de)
  483. # [16:40] <GPHemsley> annevk: BOM seems to be handled in a haphazard way. For sniffing, it is used as the signature for text/plain. AFAICT, if an HTML file has a BOM, it will be sniffed as text/plain by the unknown type sniffer. But if a HTML file as a BOM, it will be properly handled to determine if it is a feed.... >_>
  484. # [16:40] * Quits: henrikkok (~henrikkok@81.27.221.193) (Quit: Leaving.)
  485. # [16:44] * Joins: annevk (~annevk@212.238.236.229)
  486. # [16:45] <annevk> GPHemsley: I guess if that's what implementations do it's okay
  487. # [16:46] <GPHemsley> IDK, I'll have to check
  488. # [16:49] * Joins: smaug____ (~chatzilla@cs181151161.pp.htv.fi)
  489. # [16:52] * Quits: cgcardona (~cgcardona@unaffiliated/cgcardona) (Quit: cgcardona)
  490. # [16:54] * Joins: baku (~baku@x1-6-e0-46-9a-1f-0a-72.k694.webspeed.dk)
  491. # [16:54] * Joins: mattgifford (~mattgiffo@108.161.20.199)
  492. # [16:56] * Joins: cgcardona (~cgcardona@c-24-4-198-207.hsd1.ca.comcast.net)
  493. # [16:56] * Quits: cgcardona (~cgcardona@c-24-4-198-207.hsd1.ca.comcast.net) (Client Quit)
  494. # [16:58] * Joins: Youdaman (~Youdaman@ppp121-75.static.internode.on.net)
  495. # [17:00] * Parts: Youdaman (~Youdaman@ppp121-75.static.internode.on.net)
  496. # [17:00] * Joins: scor (~scor@132.183.242.186)
  497. # [17:00] * Quits: scor (~scor@132.183.242.186) (Changing host)
  498. # [17:00] * Joins: scor (~scor@drupal.org/user/52142/view)
  499. # [17:05] * Joins: danzik171 (~danzik17@164.55.254.106)
  500. # [17:07] * Quits: maikmerten (~merten@ls5dhcp200.cs.uni-dortmund.de) (Remote host closed the connection)
  501. # [17:08] * Quits: Kolombiken (~Adium@217.13.228.226) (Quit: Leaving.)
  502. # [17:08] * Quits: danzik17 (~danzik17@164.55.254.106) (Ping timeout: 246 seconds)
  503. # [17:12] <MikeSmith> per the outline algorithm, what text should be used as the heading for <hgroup>foo<h2>bar</h2><h3>baz</h3></hgroup> in an outline?
  504. # [17:13] <MikeSmith> just "foo"? or "foo bar"? or just "bar"?
  505. # [17:13] * Quits: mhausenblas (~mhausenbl@140.203.154.5) (Quit: http://mhausenblas.info/#i says TTYL)
  506. # [17:16] * Joins: ehsan (~ehsan@66.207.208.98)
  507. # [17:17] <jgraham> Just bar I think, although it is unclear
  508. # [17:18] * Quits: mattgifford (~mattgiffo@108.161.20.199) (Remote host closed the connection)
  509. # [17:18] * Joins: mattgifford (~mattgiffo@108.161.20.199)
  510. # [17:21] * Quits: nunnun (~hiro@2001:200:1c0:3624:20c:29ff:fe02:11c8) (Ping timeout: 260 seconds)
  511. # [17:23] * Quits: mattgifford (~mattgiffo@108.161.20.199) (Ping timeout: 256 seconds)
  512. # [17:24] <MikeSmith> jgraham: yeah
  513. # [17:25] <MikeSmith> the three existing outliner implementations I tried all emit just "bar" for that case
  514. # [17:25] <MikeSmith> which makes sense intuitively I guess
  515. # [17:26] <MikeSmith> but I can't see where the spec makes it clear that's what it should be
  516. # [17:27] <MikeSmith> or also why the should be any different handling for <h1>foo<h2>bar</h2><h3>baz</h3></h1>
  517. # [17:27] <MikeSmith> it seems to me the outline algorithm requires both of the cases to be handled exactly the same
  518. # [17:28] <MikeSmith> because hgroup and h1 are both "heading content"
  519. # [17:28] * Joins: linclark (~clark@c-67-186-35-246.hsd1.pa.comcast.net)
  520. # [17:29] <jgraham> Well you can't get that out of the parser (h2 as a child of h1)
  521. # [17:29] <MikeSmith> but the existing outliner implementations don't handle them the same -- they handle the <h1>foo<h2>bar</h2><h3>baz</h3></h1> case by making nested sections for the h2 and h3 elements
  522. # [17:29] <MikeSmith> ah
  523. # [17:29] <MikeSmith> yeah OK
  524. # [17:29] <MikeSmith> so that part makes sense at least
  525. # [17:30] * Joins: nunnun (~hiro@2001:200:1c0:3624:20c:29ff:fe02:11c8)
  526. # [17:30] * Joins: hasather_ (~hasather_@cm-84.208.105.178.getinternet.no)
  527. # [17:34] * Joins: eresair (~eresair@173.247.199.2)
  528. # [17:34] * Joins: Ms2ger (~Ms2ger@vpnf018.ugent.be)
  529. # [17:36] * Joins: divya (~nimbu@sjfw1-a.adobe.com)
  530. # [17:37] * Joins: JonathanNeal (~anonymous@cpe-142-11-82-156.socal.rr.com)
  531. # [17:39] * Quits: Adawerk_ (~ada@169.241.49.57) (Quit: Leaving)
  532. # [17:39] * Joins: Adawerk (~ada@169.241.49.57)
  533. # [17:40] * Quits: Lachy (~Lachy@office.oslo.opera.com) (Quit: Computer has gone to sleep.)
  534. # [17:40] * Quits: tantek (~tantek@70-36-139-86.dsl.dynamic.sonic.net) (Quit: tantek)
  535. # [17:43] <dglazkov> good morning, Whatwg!
  536. # [17:43] <Ms2ger> Good night
  537. # [17:45] * Quits: SamB_MacG5 (~SamB@2001:470:1f07:57:211:24ff:feaa:27a) (Ping timeout: 246 seconds)
  538. # [17:45] * Joins: Lachy (~Lachy@pat-tazdevil.opera.com)
  539. # [17:46] <GPHemsley> annevk: What was that pseudo-server you recommended for testing, again?
  540. # [17:46] * Quits: Ducki (~Ducki@pD9E3981C.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
  541. # [17:46] * Joins: SamB_MacG5 (~SamB@2001:470:1f07:57:211:24ff:feaa:27a)
  542. # [17:47] * Quits: Lachy (~Lachy@pat-tazdevil.opera.com) (Client Quit)
  543. # [17:47] <annevk> GPHemsley: someone might have recommended https://bitbucket.org/annevk/simpleserver I suppose? not sure I did though
  544. # [17:47] <Ms2ger> I think I mentioned it
  545. # [17:47] <GPHemsley> oh
  546. # [17:47] <GPHemsley> well, thanks nonetheless :)
  547. # [17:47] <annevk> you gonna test HTTP stuff?
  548. # [17:48] <GPHemsley> yeah
  549. # [17:48] <GPHemsley> I figured I'd write a script that builds all the test files automatically
  550. # [17:48] <GPHemsley> so I can finally make some progress
  551. # [17:48] * Quits: nunnun (~hiro@2001:200:1c0:3624:20c:29ff:fe02:11c8) (Ping timeout: 260 seconds)
  552. # [17:49] <GPHemsley> hmm... what was the one that Mozilla uses?
  553. # [17:49] <GPHemsley> where you put headers in a separate file?
  554. # [17:49] <GPHemsley> (or is that custom?)
  555. # [17:49] * Joins: nunnun (~hiro@2001:200:1c0:3624:20c:29ff:fe02:11c8)
  556. # [17:49] <Ms2ger> That's custom
  557. # [17:51] <GPHemsley> oh, hmm...
  558. # [17:51] <GPHemsley> annevk: This would have to be modified to do what I want
  559. # [17:51] <GPHemsley> Maybe it'd be easier to just generate .htaccess files alongside the tests
  560. # [17:52] * Quits: tomasf (~tomasf@static-88.131.62.36.addr.tdcsong.se) (Ping timeout: 264 seconds)
  561. # [17:52] * Quits: Somatt_wrk (~somattwrk@darkstar2.fullsix.com) (Read error: Connection reset by peer)
  562. # [17:53] <GPHemsley> it's OK (or even good) if I include the tests and the generator script in the mimesniff repo, right?
  563. # [17:54] <Ms2ger> Sure
  564. # [17:57] * Joins: gavinc (~gavin@50.0.77.3)
  565. # [18:00] * abstractj|away is now known as abstractj
  566. # [18:01] * Quits: JonathanNeal (~anonymous@cpe-142-11-82-156.socal.rr.com) (Quit: JonathanNeal)
  567. # [18:03] * Quits: divya (~nimbu@sjfw1-a.adobe.com) (Quit: Leaving.)
  568. # [18:06] * Joins: divya (~nimbu@sjfw1-a.adobe.com)
  569. # [18:07] * Joins: Maurice (copyman@5ED573FA.cm-7-6b.dynamic.ziggo.nl)
  570. # [18:11] * Joins: bholley (~bholley@c-67-180-21-133.hsd1.ca.comcast.net)
  571. # [18:12] * Quits: skcin7 (~skcin7@c-68-38-156-213.hsd1.nj.comcast.net)
  572. # [18:13] * Joins: cgcardona (~cgcardona@64.124.34.2)
  573. # [18:13] * Quits: cgcardona (~cgcardona@64.124.34.2) (Changing host)
  574. # [18:13] * Joins: cgcardona (~cgcardona@unaffiliated/cgcardona)
  575. # [18:17] <TabAtkins> GPHemsley: Was I *supposed* to inform you of pending mimetype requests?
  576. # [18:18] <GPHemsley> TabAtkins: No, we were just discussing it in here. :)
  577. # [18:18] <GPHemsley> the 'font' type specifically
  578. # [18:20] <TabAtkins> annevk: Yeah, an independent object for setting a query would be useful. It's a separable piece.
  579. # [18:21] <TabAtkins> annevk: While Maps don't set to a list, there's nothing that says your own implementation of the methods can't do that internally. The point is just to provide same-named methods with similar functionality, such that they can be used interchangeably.
  580. # [18:21] <annevk> TabAtkins: sure, I think that's already done more or less
  581. # [18:22] <annevk> TabAtkins: but apart from some missing stuff
  582. # [18:22] <TabAtkins> annevk: delete(key, val) might run into identity problems. Best think about what concept of identity you want - the tc39 guys have strong opinions about what they've gotten wrong in the past with, for example, Array#contains.
  583. # [18:22] <annevk> TabAtkins: but that seems different than what's suggested on the list
  584. # [18:22] * Joins: espadrine (~thaddee_t@85-218-2-62.dclient.lsne.ch)
  585. # [18:22] <annevk> TabAtkins: identify problem?
  586. # [18:22] <annevk> ty*
  587. # [18:22] * Joins: Bass10 (Bass10@c-76-113-194-7.hsd1.mn.comcast.net)
  588. # [18:24] <TabAtkins> annevk: For example, whether NaN is equal to NaN, +0 to -0, etc.
  589. # [18:24] <annevk> key/val are converted to DOMString first
  590. # [18:25] <TabAtkins> Oh, then you're fine. No worries.
  591. # [18:25] <TabAtkins> Forgot about the type coercion.
  592. # [18:25] <annevk> it's still not really clear to me if what you're saying and what David/Boris are discussing is the same
  593. # [18:25] * Quits: hdhoang (~hdhoang@113.178.25.158) (Quit: Leaving.)
  594. # [18:26] <annevk> and I have a hard time following terms like "subclassing"
  595. # [18:26] <annevk> does that involve me talking to heycam or does it mean to just make it look kinda the same?
  596. # [18:27] <TabAtkins> It just means that (a) it should ducktype as a Map, and (b) (new URLQuery) instanceof Map should be true.
  597. # [18:27] <TabAtkins> The latter just does prototype comparisons.
  598. # [18:27] <TabAtkins> (take proto of both sides, then walk the proto chain of lhs until you find a match or hit the root)
  599. # [18:27] * Quits: irfaN (~nrth@unaffiliated/irfan) (Quit: This computer has gone to sleep)
  600. # [18:28] <annevk> hmm, so I guess that means talking to heycam
  601. # [18:28] <annevk> heycam|away, ^^
  602. # [18:28] <TabAtkins> Hmm, maybe. If Map was already defined in WebIDL, it would be no problem, obviously - you'd just extend it.
  603. # [18:29] * Joins: nrth (~nrth@91.72.112.11)
  604. # [18:29] * nrth is now known as irfaN
  605. # [18:29] * Quits: irfaN (~nrth@91.72.112.11) (Changing host)
  606. # [18:29] * Joins: irfaN (~nrth@unaffiliated/irfan)
  607. # [18:30] * Joins: jsbell (jsbell@nat/google/x-bmeytxhosnewqpdy)
  608. # [18:31] * Quits: nunnun (~hiro@2001:200:1c0:3624:20c:29ff:fe02:11c8) (Ping timeout: 260 seconds)
  609. # [18:31] * Joins: svl (~me@ip565744a7.direct-adsl.nl)
  610. # [18:33] <annevk> no, you can't extend it and change argument types
  611. # [18:33] * Quits: malydok (marek@156.17.232.100) (Quit: Farewell)
  612. # [18:33] * Joins: malydok (marek@156.17.232.100)
  613. # [18:35] * Quits: malydok (marek@156.17.232.100) (Client Quit)
  614. # [18:35] * Joins: malydok (marek@156.17.232.100)
  615. # [18:35] * Quits: cgcardona (~cgcardona@unaffiliated/cgcardona) (Quit: cgcardona)
  616. # [18:36] * Quits: divya (~nimbu@sjfw1-a.adobe.com) (Quit: Leaving.)
  617. # [18:37] * Quits: darobin (~darobin@78.109.80.74) (Ping timeout: 246 seconds)
  618. # [18:37] * Joins: sicking (~sicking@c-67-180-8-184.hsd1.ca.comcast.net)
  619. # [18:37] * Joins: nunnun (~hiro@2001:200:1c0:3624:20c:29ff:fe02:11c8)
  620. # [18:39] * Quits: sedovsek (~robert@89.143.12.238) (Quit: sedovsek)
  621. # [18:44] * Joins: tomasf (~tom@c-44dbe555.024-204-6c6b7012.cust.bredbandsbolaget.se)
  622. # [18:44] * Joins: divya (~nimbu@sjfw1-a.adobe.com)
  623. # [18:49] <TabAtkins> You can't override methods that come from the extended interface?
  624. # [18:50] * Joins: tantek (~tantek@me50536d0.tmodns.net)
  625. # [18:50] <annevk> no
  626. # [18:50] * Quits: bholley (~bholley@c-67-180-21-133.hsd1.ca.comcast.net) (Quit: bholley)
  627. # [18:50] <TabAtkins> Well that's just silly.
  628. # [18:51] <TabAtkins> In that case, yeah, bug heycam for hooks.
  629. # [18:51] <TabAtkins> It would be great to have the ability to declare something as a Map or Set in the platform.
  630. # [18:51] <TabAtkins> The same way we're gradually rationalizing things to be Arrays.
  631. # [18:51] * Joins: pablof (~pablof@144.189.150.129)
  632. # [18:52] <annevk> not sure how much things are actually Arrays in the platform
  633. # [18:52] <TabAtkins> Not as much as they should be.
  634. # [18:52] <annevk> they have the same basic problem with not being tied to some underlying concept
  635. # [18:52] <TabAtkins> Hm?
  636. # [18:53] * Quits: malydok (marek@156.17.232.100) (Quit: Farewell)
  637. # [18:53] <annevk> so e.g. you get an array of path segments, then start modifying it or "copying" it around and then modifying, do you expect the URL to be modified?
  638. # [18:53] <TabAtkins> Oh, that.
  639. # [18:54] <Ms2ger> Who cares
  640. # [18:54] <TabAtkins> I'm still not sure why that's supposed to be a problem. You return an Array subclass, not a plain array. The subclass manages (in IDL prose) the necessary mutations.
  641. # [18:54] <Ms2ger> Just toss a coin
  642. # [18:54] <annevk> "gradually rationalizing" and "oh that" make me not convinced this is really a solved problem
  643. # [18:54] <TabAtkins> Bah, that was a dismissive "oh that".
  644. # [18:54] <annevk> there's no such thing as subclass
  645. # [18:54] <TabAtkins> ...
  646. # [18:54] <annevk> have you talked to heycam?
  647. # [18:55] <TabAtkins> Dude. Bro. A subclass is simply something for which "object instanceof superclass" is true.
  648. # [18:55] <Ms2ger> Sis?
  649. # [18:56] <TabAtkins> No, Anne's my bro.
  650. # [18:56] <annevk> apparently it also magically handles mutations in prose? is there any example of such an array in the platform today?
  651. # [18:56] <TabAtkins> Uh, whatever object you just talked about?
  652. # [18:56] * Quits: tantek (~tantek@me50536d0.tmodns.net) (Quit: tantek)
  653. # [18:57] <annevk> that was a hypothetical for something I might introduce one day if there's hooks
  654. # [18:58] <TabAtkins> So, I'm unsure what the problem is here. What do you think is weird about this? I've done precisely this kind of thing in JS code before (subclassing an array), and it's fine.
  655. # [18:59] * Joins: tantek (~tantek@me50536d0.tmodns.net)
  656. # [18:59] <jgraham> Hmm, having magic internal state does sound like it has the possibility to invalidate supposed invariants of the base clas API if you're not very careful
  657. # [18:59] <jgraham> Or rather magic internal algorithms
  658. # [18:59] <TabAtkins> jgraham: You can always invalidate supposed invariants. Just... don't do it?
  659. # [19:00] <jgraham> That's supposedly easier said than done. If you believe all these "A square is not a rectangle" type articles
  660. # [19:00] <Ms2ger> Say what?
  661. # [19:00] <TabAtkins> That's cool if you're really into type safety. This is JS, man.
  662. # [19:01] <TabAtkins> Ms2ger: Strictly, a mutable square is *not* a subclass of mutable rectangle, due to the violation of implicit contracts. Immutables are, though.
  663. # [19:01] <TabAtkins> (The main contract being that you can independently mutate the width and height without affecting the other.)
  664. # [19:01] * Joins: JonathanNeal (~anonymous@38.122.109.194)
  665. # [19:02] <jgraham> Ms2ger: Part of the internet is fascinated with the idea that *in OO software* a square is not a subclass of rectangle because squares impose extra invariants on the relationship between width and height
  666. # [19:02] * Joins: mindbender1 (~chijioke@196.46.246.57)
  667. # [19:02] <TabAtkins> Here in reality land, if it acts mostly the same, you're good. Just be aware of where things are different. ^^_
  668. # [19:03] * Quits: nunnun (~hiro@2001:200:1c0:3624:20c:29ff:fe02:11c8) (Ping timeout: 260 seconds)
  669. # [19:03] * Joins: krawchyk_ (~krawchyk@65.220.49.251)
  670. # [19:05] * Joins: nunnun (~hiro@2001:200:1c0:3624:20c:29ff:fe02:11c8)
  671. # [19:06] * Joins: mattgifford (~mattgiffo@70.102.199.158)
  672. # [19:07] * Quits: krawchyk (~krawchyk@65.220.49.251) (Ping timeout: 240 seconds)
  673. # [19:07] <TabAtkins> You're welcome: http://heeeeeeeey.com/
  674. # [19:12] * Quits: SimonSapin (~simon@2a01:e35:2e8d:b5f0:ea9d:87ff:fe22:e221) (Ping timeout: 268 seconds)
  675. # [19:17] <Stevef> mikesmith: as per the required acc API implementation in the spec it would be <h2>foo bar baz</h2> for AT users
  676. # [19:17] * Quits: auchenberg (~auchenber@176.222.239.226) (Remote host closed the connection)
  677. # [19:18] * Quits: tantek (~tantek@me50536d0.tmodns.net) (Quit: tantek)
  678. # [19:19] * Joins: necolas (~necolas@8.25.197.25)
  679. # [19:20] <MikeSmith> Stevef: OK
  680. # [19:23] * Quits: nunnun (~hiro@2001:200:1c0:3624:20c:29ff:fe02:11c8) (Ping timeout: 260 seconds)
  681. # [19:23] <annevk> TabAtkins: just wondering how to do it in spec language
  682. # [19:24] <annevk> TabAtkins: although an example in JS might also help
  683. # [19:25] * Joins: bholley (~bholley@c-67-180-21-133.hsd1.ca.comcast.net)
  684. # [19:28] <TabAtkins> annevk: awb just responded in that vein.
  685. # [19:28] * Joins: nunnun (~hiro@2001:200:1c0:3624:20c:29ff:fe02:11c8)
  686. # [19:35] * Joins: SimonSapin (~simon@85-170-128-18.rev.numericable.fr)
  687. # [19:37] <annevk> TabAtkins: yeah, noticed, but not the spec part, which is more important
  688. # [19:38] <TabAtkins> Yeah, if you want WebIDL, there's not a good solution yet, and you need heycam.
  689. # [19:39] <TabAtkins> If you're willing to define it in JS (I wouldn't recommend it), you can just use AWB's code.
  690. # [19:39] <annevk> so reading http://html5.org/tools/web-apps-tracker?from=7509&to=7510 it seems we're open to XSS there
  691. # [19:39] <annevk> only XSS From Hixie though
  692. # [19:39] <Hixie> (oops, that reminds me i forgot to escape those <s)
  693. # [19:39] <Hixie> why are we open to XSS?
  694. # [19:41] <Hixie> on another note
  695. # [19:42] <Hixie> annevk: are URLUtils' members going to be unforgeable on HTMLAnchorElement?
  696. # [19:42] <Hixie> annevk: or are they only to be unforgeable on Location?
  697. # [19:42] <annevk> Hixie: oh if you forgot to escape them maybe we aren't :)
  698. # [19:43] <annevk> Hixie: only on Location I think, I'm not sure how to deal with that, I tried to raise that issue when it came up, not sure if heycam|away took it into account
  699. # [19:43] <Hixie> http://html5.org/tools/web-apps-tracker?from=7510&to=7511
  700. # [19:43] <Hixie> annevk: k
  701. # [19:43] <Hixie> heycam|away: ping
  702. # [19:43] <Ms2ger> The </pre>?
  703. # [19:43] <annevk> Hixie: worst case scenario is that you define the IDL attributes as unforgeable and just say they behave the same as on URLUtils other than IDL differences
  704. # [19:44] <Hixie> k
  705. # [19:44] <Hixie> that's what i'm currently doing wit the UAE attributes or whatever they're called
  706. # [19:45] * Joins: nessy (~silviapf@124-169-147-242.dyn.iinet.net.au)
  707. # [19:45] * Joins: jsoncorwin (~textual@c-50-131-117-90.hsd1.ca.comcast.net)
  708. # [19:45] <annevk> I was hoping we could get away with one interface somehow so whenever we upgrade it we don't have to change Location too
  709. # [19:46] <Hixie> yeah
  710. # [19:46] * Quits: hasather_ (~hasather_@cm-84.208.105.178.getinternet.no) (Read error: Connection reset by peer)
  711. # [19:46] * Joins: hasather_ (~hasather_@cm-84.208.105.178.getinternet.no)
  712. # [19:46] <annevk> oh, maybe if we really need it this way and heycam|away doesn't give another shortcut I could create LocationURLUtils as an exact duplicate which is implemented only by Location
  713. # [19:47] <annevk> or just do a partial thingy for Location
  714. # [19:47] * Quits: hasather_ (~hasather_@cm-84.208.105.178.getinternet.no) (Read error: Connection reset by peer)
  715. # [19:47] <annevk> so whoever ends up maintaining URL (if it's not me) will take that into account
  716. # [19:47] * Joins: hasather_ (~hasather_@cm-84.208.105.178.getinternet.no)
  717. # [19:49] <Hixie> UnforgeableURLUtils
  718. # [19:49] <Hixie> or partial, yeah
  719. # [19:50] <Ms2ger> Maybe we should do the unforgeable interface after all
  720. # [19:53] <annevk> Ms2ger: I guess I was in favor of that, not sure if I stressed that
  721. # [19:54] <matjas> polyglot.gif http://lists.w3.org/Archives/Public/public-markdown/2012Nov/0019.html
  722. # [19:56] * Quits: divya (~nimbu@sjfw1-a.adobe.com) (Quit: Leaving.)
  723. # [19:58] * Quits: krawchyk_ (~krawchyk@65.220.49.251) (Remote host closed the connection)
  724. # [19:58] * Joins: Druide__ (~Druid@p5B1355B6.dip.t-dialin.net)
  725. # [19:59] * Joins: krawchyk (~krawchyk@65.220.49.251)
  726. # [19:59] * Quits: Druide_ (~Druid@p5B137AB2.dip.t-dialin.net) (Ping timeout: 244 seconds)
  727. # [19:59] * Quits: thisgeek (~chris@ool-45757d25.dyn.optonline.net) (Quit: thisgeek)
  728. # [20:00] <Hixie> i'm not at the office -- anyone got IE handy?
  729. # [20:00] <Hixie> http://software.hixie.ch/utilities/js/live-dom-viewer/saved/1916 - hit the Navigate button then the Compare button and tell me what gets logged
  730. # [20:01] <Ms2ger> I've got a VM with some version
  731. # [20:01] * Joins: yorick (~quassel@unaffiliated/yorick)
  732. # [20:01] * Quits: annevk (~annevk@212.238.236.229) (Remote host closed the connection)
  733. # [20:01] * Quits: JonathanNeal (~anonymous@38.122.109.194) (Remote host closed the connection)
  734. # [20:01] * Joins: JonathanNeal (~anonymous@38.122.109.194)
  735. # [20:02] <Ms2ger> Hixie, false
  736. # [20:02] <Hixie> cool, thanks
  737. # [20:02] <Hixie> (which version?)
  738. # [20:02] <Ms2ger> IE10
  739. # [20:02] <Hixie> k
  740. # [20:03] <Hixie> can you try removing the doctype?
  741. # [20:03] <Ms2ger> Still false
  742. # [20:03] <Hixie> k
  743. # [20:03] <Hixie> wtf
  744. # [20:07] * Joins: jwalden (~waldo@2620:101:8003:200:224:d7ff:fef0:8d90)
  745. # [20:07] * Joins: victor2 (~Adium@did75-14-82-236-18-74.fbx.proxad.net)
  746. # [20:07] * Parts: victor2 (~Adium@did75-14-82-236-18-74.fbx.proxad.net)
  747. # [20:07] * Quits: pyrsmk (~pyrsmk@23.94.138.88.rev.sfr.net) (Remote host closed the connection)
  748. # [20:08] <Hixie> bholley: sorry, didn't notice you were here either :-)
  749. # [20:08] * Joins: tantek (~tantek@nat/mozilla/x-fyxdtbdcfmxvrudk)
  750. # [20:09] <bholley> Hixie: hm, interesting. Did you try mwobensmith's tests?
  751. # [20:09] * Quits: Ms2ger (~Ms2ger@vpnf018.ugent.be) (Quit: bbl)
  752. # [20:09] <bholley> Hixie: those were the ones I tested, in a VM. Let me try again
  753. # [20:09] <Hixie> i didn't test them in IE, no
  754. # [20:09] * bholley boots vmware
  755. # [20:09] <Hixie> they were scary long :-)
  756. # [20:10] <bholley> Hixie: ok, so first of all, looks like I've got IE9
  757. # [20:10] <Hixie> does it log true on my test?
  758. # [20:10] <Hixie> that'd be interesting ifso
  759. # [20:10] <bholley> Hixie: checking
  760. # [20:11] <Hixie> in particular because changing the doctype didn't change the result
  761. # [20:11] <Hixie> though maybe it's the iframe's doctype that matters
  762. # [20:11] <Hixie> and we didn't try changing that
  763. # [20:11] <bholley> Hixie: it does log true
  764. # [20:11] <Hixie> ho ho ho
  765. # [20:11] <Hixie> interesting
  766. # [20:11] <Hixie> huh
  767. # [20:12] * Joins: eric_carlson (~ericc@adsl-67-112-12-110.dsl.anhm01.pacbell.net)
  768. # [20:12] <Hixie> i bet they tried to implement the spec and just assumed it was right and didn't push back because for some reason they think it's ok to have different behaviours in different modes
  769. # [20:12] <Hixie> good times
  770. # [20:13] <Hixie> what's gecko's behaviour been, historically?
  771. # [20:13] * Joins: jacobolus (~jacobolus@99-127-228-11.lightspeed.sntcca.sbcglobal.net)
  772. # [20:13] <bholley> Hixie: on this issue? One Location object per Window
  773. # [20:13] * Joins: divya (~nimbu@sjfw1-a.adobe.com)
  774. # [20:13] <Hixie> and the motivation to change is what? security bugs?
  775. # [20:13] <bholley> Hixie: yes
  776. # [20:13] <bholley> Hixie: 16.0.1, 16.0.2
  777. # [20:13] * Quits: jacobolus (~jacobolus@99-127-228-11.lightspeed.sntcca.sbcglobal.net) (Client Quit)
  778. # [20:14] <Hixie> basically the difficulty of "inspect the js stack"?
  779. # [20:14] <Hixie> the way the spec has it, it should be the same kind of security check as for Document's members
  780. # [20:15] <bholley> Hixie: well, there are two issues with the spec
  781. # [20:15] <Hixie> more than two, but go ahead :-)
  782. # [20:15] <bholley> Hixie: the part that appears to be pure fiction is that Location describes the Document
  783. # [20:15] <Hixie> yeah that needs to change regardless
  784. # [20:15] <Hixie> dunno what i was testing there
  785. # [20:15] <Hixie> should be the active document of the document's browsing context
  786. # [20:15] <bholley> Hixie: so once it gets changed so that Location describes the active Document in the browsing context
  787. # [20:16] <bholley> Hixie: then we have this weirdness where the security characteristics of Location don't match everything else in its scope
  788. # [20:16] <bholley> Hixie: which is wacky for Gecko's compartment model
  789. # [20:16] * Joins: sedovsek (~robert@BSN-176-141-144.dial-up.dsl.siol.net)
  790. # [20:16] <bholley> Hixie: I think we're pretty safe now TBH, because in 16.0.2 I just hardcoded the checks in C++. But that's not where security checks in Gecko are supposed to live
  791. # [20:16] <Hixie> same security model as Window, no?
  792. # [20:17] * Joins: a-ja (~Instantbi@70.230.159.5)
  793. # [20:17] <bholley> Hixie: No, it's different
  794. # [20:17] <Hixie> what's the difference?
  795. # [20:17] <bholley> Hixie: WindowProxy
  796. # [20:17] <bholley> Hixie: that's the identity object in question, and we transplant it between compartments
  797. # [20:17] <Hixie> ah
  798. # [20:17] <bholley> Hixie: effectively, what I've been pushing to do for Location
  799. # [20:17] <Hixie> that sounds incredibly scary
  800. # [20:17] <bholley> Hixie: you could say having a LocationProxy
  801. # [20:17] <bholley> Hixie: why?
  802. # [20:18] <bholley> Hixie: the WindowProxy is just a tiny wrapper around the Window anywaty
  803. # [20:18] <Hixie> mostly because i don't understand the implications or how to spec it
  804. # [20:18] <bholley> Hixie: well, it's already specced right for Window
  805. # [20:18] <bholley> Hixie: and WindowProxy
  806. # [20:18] <Hixie> the way the spec has it, the security on WindowProxy is actually specced on Window
  807. # [20:18] <bholley> Hixie: right
  808. # [20:18] <Hixie> the Proxy aspect could be removed without affecting the security
  809. # [20:18] <bholley> Hixie: and the same would hold for Location
  810. # [20:19] <bholley> Hixie: oh, hm. Well, not in Gecko
  811. # [20:19] <bholley> Hixie: well, hm
  812. # [20:19] <bholley> Hixie: my basic beef with our current implementation is that Location wants to be two different things
  813. # [20:20] <Hixie> http://www.whatwg.org/specs/web-apps/current-work/#security-2 is how Window security is specced
  814. # [20:20] <Hixie> for Location, seems to me the simplest fix is just to make it work the same as that -- but there's no Proxy needed to do that
  815. # [20:20] <bholley> Hixie: it wants to be resolved like Document, but operate on the WIndowProxy
  816. # [20:20] <Hixie> you just need to compare the script's security context to the active document's
  817. # [20:21] <Hixie> why is it hard for an object to operate on the active document in gecko?
  818. # [20:21] <Hixie> History works like that, more or less, no?
  819. # [20:21] * Joins: annevk (~annevk@84.241.198.236)
  820. # [20:22] <Hixie> as specced, the History objects from all of the Documents in a browsing context basically act the same as each other
  821. # [20:22] <bholley> Hixie: sure. But they don't do security checks, right?
  822. # [20:22] * abstractj is now known as abstractj|brb
  823. # [20:23] <Hixie> they don't do "can you access this member" checks, but they do check whether the URL you're pushing is the same origin as the URL of the active document
  824. # [20:23] <Hixie> otherwise you could load a bank site and change its URL to something else
  825. # [20:23] * Joins: Lachy (~Lachy@cm-84.215.19.229.getinternet.no)
  826. # [20:23] <bholley> Hixie: the issue for us is that "can you access this member" checks are best implemented at compartment boundaries
  827. # [20:23] <bholley> Hixie: and this generally works, because for everything but Location, you can infer an object's security characteristics from its scope
  828. # [20:24] <Hixie> what's a compartment, in gecko?
  829. # [20:24] <Hixie> i don't think the spec has that concept
  830. # [20:24] <bholley> Hixie: it doesn't
  831. # [20:24] <bholley> Hixie: we have a separate JS heap for each scope
  832. # [20:25] <bholley> Hixie: and we enforce security invariants at the border between heaps
  833. # [20:25] <Hixie> how does that work with document.domain?
  834. # [20:25] * Quits: sicking (~sicking@c-67-180-8-184.hsd1.ca.comcast.net) (Quit: sicking)
  835. # [20:25] <bholley> Hixie: cross-compartment access is done with special wrapper objects, which we can enumerate
  836. # [20:25] <bholley> Hixie: when someone sets document.domain, we recompute all those wrappers
  837. # [20:26] <Hixie> yikes
  838. # [20:26] <bholley> Hixie: the wrappers contain static security policy
  839. # [20:26] <bholley> Hixie: no, it's awesome!
  840. # [20:26] <bholley> Hixie: we can compute our security policy statically, when computing the wrapper
  841. # [20:26] <bholley> Hixie: all accesses after that are super fast, because there's no dynamic check needed
  842. # [20:27] <bholley> Hixie: if the security relationship ever changes, like with document.domain, we just recompute
  843. # [20:27] <bholley> Hixie: it's orthogonal enough to what everyone else does that it doesn't belong in the spec. But it's really awesome for us
  844. # [20:27] <bholley> Hixie: this also ties into document.domain revocation
  845. # [20:28] <bholley> Hixie: it's what our system does naturally, but is very difficult for WebKit to do
  846. # [20:28] <Hixie> document.domain revocation?
  847. # [20:29] <bholley> Hixie: I sent a spec proposal a while back. Basically, if some page grabs stuff from a same-origin page and then sets document.domain to something else, whether those references are revoked or not
  848. # [20:29] <Hixie> they should not be
  849. # [20:29] <Hixie> right?
  850. # [20:29] <bholley> Hixie: I proposed they should
  851. # [20:29] <Hixie> oh
  852. # [20:29] <Hixie> ew
  853. # [20:29] <Hixie> nooo
  854. # [20:30] <Hixie> if you have an object, why make it stop working?
  855. # [20:30] <Hixie> that's just confusing
  856. # [20:30] <bholley> Hixie: because it's not same-origin anymore!
  857. # [20:30] <Hixie> it's bad enough that we had to do that for document.storage
  858. # [20:30] * Joins: dydx (~dydz@76-220-18-65.lightspeed.sntcca.sbcglobal.net)
  859. # [20:30] <bholley> Hixie: and it's now exposed to all kinds of malicious stuff
  860. # [20:30] * Quits: nessy (~silviapf@124-169-147-242.dyn.iinet.net.au) (Quit: Leaving.)
  861. # [20:30] <bholley> Hixie: that it never agreed to
  862. # [20:31] <bholley> Hixie: from a security perspective, I think it would be what people would expect
  863. # [20:31] <Hixie> well i agree document.domain is a sandtrap, but this doesn't make things particularly safer. I mean, the other side now has access to your origin insofar as sending requests to your server goes, the game is more or less lost if you didn't want that.
  864. # [20:32] <bholley> Hixie: well, consider this
  865. # [20:32] <Hixie> i mean, you can just import the script you're worried about.
  866. # [20:32] <Hixie> or create an iframe that emulates the page you want access to.
  867. # [20:32] * abstractj|brb is now known as abstractj
  868. # [20:32] * bholley CCs hixie on a bug
  869. # [20:33] <bholley> Hixie: bug 655649 comment 0
  870. # [20:33] <bholley> Hixie: this was from abarth actually
  871. # [20:33] * Joins: cgcardona (~cgcardona@64.124.34.2)
  872. # [20:33] * Quits: cgcardona (~cgcardona@64.124.34.2) (Changing host)
  873. # [20:33] * Joins: cgcardona (~cgcardona@unaffiliated/cgcardona)
  874. # [20:34] <bholley> Hixie: the thing is, revocation is currently specced
  875. # [20:34] <Hixie> only for storage
  876. # [20:34] <bholley> Hixie: but _only_ if you happen to touch the Window object
  877. # [20:34] <bholley> Hixie: because per spec that's the only thing that does security checks
  878. # [20:34] <Hixie> that's not revocation per se, that's just, right, where the checks are
  879. # [20:34] <bholley> Hixie: but those checks use the effective script orogin
  880. # [20:35] <bholley> *origin
  881. # [20:35] <bholley> Hixie: well, if you have a reference to a Window, then it is revocation, because it stops working
  882. # [20:35] <bholley> Hixie: but if you have a reference to a DOM node, it doesn't stop working
  883. # [20:35] <bholley> Hixie: and you can waltz your way around the DOM, so long as you avoid touching any of the objects that will reexamine the script origin
  884. # [20:35] <bholley> Hixie: it's totally unintuitive
  885. # [20:36] <Hixie> i agree it's pretty silly, but hey, it's the web. document.domain is a bad feature, and people shouldn't use it. but it's far too late to start changing how it works, IMHO.
  886. # [20:36] * Quits: annevk (~annevk@84.241.198.236) (Remote host closed the connection)
  887. # [20:36] <bholley> Hixie: well, Opera and Gecko ship full revocation
  888. # [20:37] <bholley> Hixie: against the spec
  889. # [20:37] <Hixie> :-(
  890. # [20:37] * Joins: sicking (~sicking@c-67-180-8-184.hsd1.ca.comcast.net)
  891. # [20:37] <jwalden> and note that Gecko didn't ship full-revocation until semi-recently
  892. # [20:38] <jwalden> so the position in the spec here is not particularly important for the web
  893. # [20:38] <Hixie> anyway as far as Location goes, it'd be nice to have a solution that is both implementable in Gecko's model and implementable in the spec's model without introducing more crazy stuff like the WindowProxy object
  894. # [20:38] <bholley> Hixie: yeah. I agree that we should spec align on security stuff. But fixing this requires would require me adding a bunch of goop to our security code to specifically waive security checks in this particular situation, which never seems like an attractive thing to spend my time on
  895. # [20:39] <Hixie> yeah this whole part of the platform isn't particularly fun to work on :-)
  896. # [20:39] <Hixie> either in code or in the spec, let me assure you
  897. # [20:39] <bholley> Hixie: :-)I
  898. # [20:40] * Joins: pyrsmk (~pyrsmk@2a01:e35:2f52:ead0:21e:8cff:feeb:d962)
  899. # [20:40] <Hixie> how do you handle giving scripts access to Document objects but not any properties of Document objects?
  900. # [20:40] <Hixie> for cross-origin Documents
  901. # [20:40] <bholley> Hixie: they just get an opaque wrapper
  902. # [20:41] <bholley> Hixie: that allows no property access
  903. # [20:41] <bholley> Hixie: actually, _all_ cross-origin references use the same wrapper
  904. # [20:41] <bholley> Hixie: er, same policy
  905. # [20:41] <bholley> Hixie: which just does this: http://mxr.mozilla.org/mozilla-central/source/js/xpconnect/wrappers/AccessCheck.cpp#155
  906. # [20:42] <bholley> Hixie: (when trying to access properties on it)
  907. # [20:44] <bholley> Hixie: to be honest, depending on how much work it is for WebKit to reuse its WindowProxy logic, it might be easier for us to align with WebKit than the reverse
  908. # [20:44] <Hixie> so basically your problem is you don't have a good way to get "the entry script's effective script origin" for the purpose of comparing to other origins?
  909. # [20:45] * Quits: irfaN (~nrth@unaffiliated/irfan) (Quit: Leaving)
  910. # [20:45] <bholley> Hixie: no, we can do that. And I actually did that, for 16.0.2
  911. # [20:45] <bholley> Hixie: it just runs contrary to the way everything else works
  912. # [20:45] * Quits: linclark (~clark@c-67-186-35-246.hsd1.pa.comcast.net) (Quit: linclark)
  913. # [20:45] * Quits: Stevef (~chatzilla@cpc20-nmal18-2-0-cust76.19-2.cable.virginmedia.com) (Ping timeout: 244 seconds)
  914. # [20:46] <Hixie> can it be localised enough that you can just but big "here by dragons, don't copy this code into newer APIs" warnings around it or something?
  915. # [20:46] * Quits: baku (~baku@x1-6-e0-46-9a-1f-0a-72.k694.webspeed.dk) (Ping timeout: 265 seconds)
  916. # [20:46] <Hixie> if it's not much work for you to do that, i'm definitely leaning towards that kind of approach rather than a proxy
  917. # [20:46] <Hixie> mostly because i don't have a good handle on how to reason about the security of a proxy
  918. # [20:46] <Hixie> and thath scares me
  919. # [20:47] * Joins: annevk (~annevk@a82-161-179-17.adsl.xs4all.nl)
  920. # [20:47] <bholley> Hixie: we can do that, sure. But I'd like to convince you that the proxy isn't actually scary
  921. # [20:47] <Hixie> nobody's managed that yet for WindowProxy, but i'm definitely open for you trying :-)
  922. # [20:47] <bholley> Hixie: well, do you find WindowProxy scary?
  923. # [20:48] <Hixie> i consider WindowProxy to be one of the most horrific things in the web platform :-)
  924. # [20:48] <Hixie> it gives me headaches whenever i try to understand what a test should do
  925. # [20:48] * Quits: krawchyk (~krawchyk@65.220.49.251) (Remote host closed the connection)
  926. # [20:48] <Hixie> i got the security for it working mostly by making the security not involve the proxy
  927. # [20:48] <bholley> Hixie: exactly
  928. # [20:48] <bholley> Hixie: the same would apply for Location
  929. # [20:49] <bholley> Hixie: all I'm proposing is that we say that window.location returns a LocationProxy rather than a Location
  930. # [20:49] <bholley> Hixie: that has the same behavior as WindowProxy
  931. # [20:49] <bholley> Hixie: the security isn't affected from a spec level. It just lets us implement it the way we want
  932. # [20:50] <bholley> Hixie: basically, saying that LocationProxy === WindowProxy.location, whatever that may be at the moment
  933. # [20:50] <Hixie> so why is this not a problem for History?
  934. # [20:50] <Hixie> because the security checks are in the members, not the accessing of the members?
  935. # [20:51] <bholley> Hixie: Yes. Again, we can (and did!) just stick C++ security checks in the getters/setters
  936. # [20:51] <bholley> Hixie: but then, for example, those properties can be enumerated, which they aren't in the current world
  937. # [20:52] <Hixie> (i understand that you can do both but one is nicer, i'm just trying to work out why you're not going to later say we should have HistoryProxies)
  938. # [20:52] <bholley> Hixie: also, history is simple because it's not cross-origin accessible
  939. # [20:52] * Quits: hasather_ (~hasather_@cm-84.208.105.178.getinternet.no) (Remote host closed the connection)
  940. # [20:55] <bholley> Hixie: I think speccing this stuff isn't that hard. IMO the biggest issue is that it's hard from WebKit to implement, and abarth says he isn't likely to do it
  941. # [20:55] <bholley> which is understandable
  942. # [20:55] * Joins: zcorpan (~zcorpan@81-231-170-159-no135.tbcn.telia.com)
  943. # [20:55] * Quits: sicking (~sicking@c-67-180-8-184.hsd1.ca.comcast.net) (Quit: sicking)
  944. # [20:55] <bholley> Hixie: given the testing we did, jst decided that we should just align with Presto/Trident for the time being
  945. # [20:55] <bholley> Hixie: since it makes things nicer for us, and we're not really close to spec consensus at this point
  946. # [20:55] <Hixie> that's definitely a concern, though not one which i give much more weight than your opinion regarding the complexity it adds to your code
  947. # [20:55] <Hixie> that=abarth's comments about webkit
  948. # [20:55] <bholley> Hixie: but the IE10 thing is interesting
  949. # [20:56] <Hixie> yeah the IE10 thing definitely puts more spice into the discussion
  950. # [20:56] <bholley> Hixie: if Gecko were the only engine that did things our way, I'd align with the spec
  951. # [20:56] <bholley> Hixie: I don't think the same is true for WebKit
  952. # [20:56] <annevk> Ms2ger or Ms3ger: can we make Anolis match on both word plus trailing "s" and word minus trailing "s"?
  953. # [20:56] <abarth> bholley: it's just a cost benefit issue. the engineering you're asking for is highly non-trivial
  954. # [20:56] <annevk> Ms2ger or Ms3ger: because that would save a lot of typing (and fixing)
  955. # [20:57] <Hixie> bholley: i don't give much weight to arguments along the lines of "even if we're the only ones left, we'll never change!", because i feel that's more like hostage taking than negotiation.
  956. # [20:57] <Hixie> bholley: but i don't think that's what webkit peeps are saying
  957. # [20:57] * Joins: baku (~baku@x1-6-e0-46-9a-1f-0a-72.k694.webspeed.dk)
  958. # [20:57] <Hixie> oh hey, a wild abarth appears!
  959. # [20:57] <bholley> abarth: I understand, and am not blaming you
  960. # [20:58] <bholley> abarth: we'd do it because the engineering on our side would likely be simpler
  961. # [20:58] <abarth> bholley: if you wrote a patch that implement the behavior, i'd be happy to review it. I'm just being honest and telling you that the folks with the expertise to make such a change aren't likely to see enough benefit to outweigh the other things they could spend their time on
  962. # [20:58] * Joins: sicking (~sicking@c-67-180-8-184.hsd1.ca.comcast.net)
  963. # [20:58] <Hixie> bholley: ignoring implementation complexity for now, since it seems that argument can be drawn in all directions (especially given IE10), it does seem like from an author's perspective the proxy thing would be net worse than having different Location objects for each Document
  964. # [20:58] * Quits: zcorpan (~zcorpan@81-231-170-159-no135.tbcn.telia.com) (Remote host closed the connection)
  965. # [20:59] <bholley> Hixie: how come?
  966. # [20:59] <Hixie> bholley: well, say you have a Document, and you grab it's Location and decide you're going to shim in support for anne's new methods
  967. # [20:59] <Hixie> bholley: and then later you navigate that iframe to a different page on the same origin
  968. # [20:59] <Hixie> bholley: suddenly your shims are gone
  969. # [21:00] <Hixie> bholley: but it's the "same object"
  970. # [21:00] <Hixie> bholley: then the user hits back, and your shims are suddenly back
  971. # [21:00] <Hixie> bholley: i think it'd be really confusing
  972. # [21:00] <bholley> Hixie: no, they're not back
  973. # [21:00] <Hixie> they'd be back if it worked like Window
  974. # [21:00] <Hixie> but if tehy're not back that's even more confusing :-)
  975. # [21:00] <bholley> Hixie: my proposal was to clear expandos on each navigation, which seemed the most sane
  976. # [21:01] <Hixie> i meant changes to the Location interface object, not the instance
  977. # [21:01] <bholley> Hixie: oh, the interface object would stay, yeah
  978. # [21:01] <Hixie> permanently clearing the properties set on the object seems bad too, though
  979. # [21:01] <bholley> Hixie: welll...
  980. # [21:02] <bholley> Hixie: currently, if you go back/forward, whether your properties persist on Window or not depends on whether the page persisted
  981. # [21:02] * Quits: sicking (~sicking@c-67-180-8-184.hsd1.ca.comcast.net) (Client Quit)
  982. # [21:02] <bholley> Hixie: though I guess in this case we're only discussing the persisted case
  983. # [21:03] * Quits: divya (~nimbu@sjfw1-a.adobe.com) (Quit: Leaving.)
  984. # [21:04] <Hixie> bholley: having the Window object's prototype chain change when you navigate is weird enough, having a Location object change when you navigate seems even worse
  985. # [21:04] * Joins: Kolombiken (~Adium@c80-216-10-244.bredband.comhem.se)
  986. # [21:04] <Hixie> bholley: if it wasn't for implementation ease, do you agree that we wouldn't design the API this way?
  987. # [21:05] <bholley> Hixie: well, I think the current spec language is the sanest way to design the API
  988. # [21:06] <bholley> Hixie: once we're stuck with the constraint that the object operates on the active browsing context…iunno
  989. # [21:06] <bholley> Hixie: but I am not the expert on that part
  990. # [21:06] <Hixie> i think officially i'm supposed to be, but hell if i know
  991. # [21:06] <bholley> Hixie: (API design for web authors)
  992. # [21:08] <Hixie> i think i'm leaning towards the webkit model, but i hope you don't feel i'm ignoring your feedback here. it just seems that the arguments are slightly in that direction.
  993. # [21:08] * Quits: mindbender1 (~chijioke@196.46.246.57) (Ping timeout: 265 seconds)
  994. # [21:08] * Quits: erichynds (~ehynds@64.206.121.41)
  995. # [21:09] <Hixie> i'll respond to the thread in more detail this afternoon.
  996. # [21:09] <bholley> Hixie: I don't feel that way. I'm probably not the best person to be thinking about this from a spec level though. Can we send mail and let bz weight in?
  997. # [21:09] <bholley> Hixie: ok great
  998. # [21:09] <Hixie> definitely always want more input from bz :-)
  999. # [21:09] <Hixie> ok i gotta go. bbl. thanks for walking me through this.
  1000. # [21:10] <bholley> Hixie: no problem - thanks for your help/interest here :-)
  1001. # [21:13] <annevk> oh browsers, y u silly
  1002. # [21:13] <annevk> input http://%80
  1003. # [21:13] <annevk> Chrome: fatal error, nonetheless modifies input to http://%EF%BF%BD/
  1004. # [21:14] <annevk> Safari: no problem, but outputs host as � (presumably trying to decode byte using utf-8)
  1005. # [21:14] <annevk> Firefox: no problem, outputs host as %80
  1006. # [21:15] <annevk> Opera: fatal error, with its usual weird opera:illegal-url-* bullshit
  1007. # [21:15] <annevk> I suspect Internet Explorer does something else, but who knows
  1008. # [21:19] * Joins: zcorpan (~zcorpan@81-231-170-159-no135.tbcn.telia.com)
  1009. # [21:20] * Quits: pyrsmk (~pyrsmk@2a01:e35:2f52:ead0:21e:8cff:feeb:d962) (Remote host closed the connection)
  1010. # [21:21] * Joins: jacobolus (~jacobolus@50-0-133-210.dsl.static.sonic.net)
  1011. # [21:21] * Quits: zcorpan (~zcorpan@81-231-170-159-no135.tbcn.telia.com) (Remote host closed the connection)
  1012. # [21:22] * Quits: bholley (~bholley@c-67-180-21-133.hsd1.ca.comcast.net) (Quit: bholley)
  1013. # [21:23] * Joins: Stevef (~chatzilla@77.103.111.77)
  1014. # [21:23] * Quits: scor (~scor@drupal.org/user/52142/view) (Quit: scor)
  1015. # [21:23] * Joins: scor (~scor@132.183.242.186)
  1016. # [21:23] * Quits: scor (~scor@132.183.242.186) (Changing host)
  1017. # [21:23] * Joins: scor (~scor@drupal.org/user/52142/view)
  1018. # [21:25] <annevk> but if input is http://%80†
  1019. # [21:25] <annevk> Opera: no problem, xn--%80-mp0a
  1020. # [21:26] <annevk> Safari: no problem, but same problem, outputs xn--�-mp0a
  1021. # [21:26] <annevk> Chrome: fatal error, same problem, http://%EF%BF%BD%E2%84%A2/
  1022. # [21:26] <annevk> oops, http://%EF%BF%BD%E2%80%A0/
  1023. # [21:27] <annevk> Firefox: no problem, outputs xn--%80-mp0a
  1024. # [21:27] <a-ja> IE10: This page can't be displayed (for http://%80 )
  1025. # [21:28] * Quits: Stevef (~chatzilla@77.103.111.77) (Ping timeout: 245 seconds)
  1026. # [21:29] * Quits: RobbertAtWork (~robbertat@2001:980:9368:1:65d8:658:d319:be3f) (Remote host closed the connection)
  1027. # [21:29] <annevk> a-ja: ah yeah, you need to use some kind of inspector thingie in the DOM for results
  1028. # [21:30] * Joins: RobbertAtWork (~robbertat@212.238.236.229)
  1029. # [21:30] <a-ja> IE10: Windows cannot find 'http://%80†'. Check the spelling and try again.....in an Address Bar popup
  1030. # [21:33] <annevk> a-ja: use http://dump.testsuite.org/url/inspect.html
  1031. # [21:34] * Quits: RobbertAtWork (~robbertat@212.238.236.229) (Ping timeout: 246 seconds)
  1032. # [21:36] <annevk> a-ja: the URLs themselves don't resolve in this case, the question is more what happens with them in the DOM and what kind of DNS lookup might happen in the end
  1033. # [21:37] <a-ja> tool wont take addy with †
  1034. # [21:38] <annevk> not sure what you mean?
  1035. # [21:38] * Quits: smaug____ (~chatzilla@cs181151161.pp.htv.fi) (Read error: Operation timed out)
  1036. # [21:40] <a-ja> using that tool with http://%80† url typed in gives me nada
  1037. # [21:40] * Joins: divya (~nimbu@sjfw1-a.adobe.com)
  1038. # [21:40] <annevk> ah okay, thanks
  1039. # [21:47] * Joins: zcorpan (~zcorpan@81-231-170-159-no135.tbcn.telia.com)
  1040. # [21:48] * Joins: hasather_ (~hasather_@cm-84.208.105.178.getinternet.no)
  1041. # [21:49] * Quits: eresair (~eresair@173.247.199.2) (Remote host closed the connection)
  1042. # [22:00] * Quits: hasather_ (~hasather_@cm-84.208.105.178.getinternet.no) (Remote host closed the connection)
  1043. # [22:02] * Joins: RobbertAtWork (~robbertat@212.238.236.229)
  1044. # [22:03] * Quits: svl (~me@ip565744a7.direct-adsl.nl) (Quit: And back he spurred like a madman, shrieking a curse to the sky.)
  1045. # [22:03] * Quits: Kolombiken (~Adium@c80-216-10-244.bredband.comhem.se) (Quit: Leaving.)
  1046. # [22:03] * Joins: thisgeek (~chris@ool-45757782.dyn.optonline.net)
  1047. # [22:04] * Quits: ehsan (~ehsan@66.207.208.98) (Remote host closed the connection)
  1048. # [22:05] <annevk> hmm, Opera's display of IDNA versus non-display of IDNA leaks into the DOM
  1049. # [22:06] <annevk> %C3%A0 becomes é and %C3%A0% becomes xn--%-rfa
  1050. # [22:06] * abstractj is now known as abstractj|brb
  1051. # [22:06] <annevk> oh, but %41% is an invalid URL
  1052. # [22:06] <annevk> wtf Opera
  1053. # [22:07] * Joins: ehsan (~ehsan@66.207.208.98)
  1054. # [22:13] * paul_irish is now known as paul_irish_
  1055. # [22:19] * Quits: RobbertAtWork (~robbertat@212.238.236.229) (Remote host closed the connection)
  1056. # [22:21] * Joins: karlcow (~karl@nerval.la-grange.net)
  1057. # [22:28] * Joins: linclark (~clark@c-67-186-35-246.hsd1.pa.comcast.net)
  1058. # [22:35] * Joins: detrax (~detrax@78.157.69.37)
  1059. # [22:43] * Joins: gavinc_ (~gavin@50.0.77.3)
  1060. # [22:43] * Quits: sedovsek (~robert@BSN-176-141-144.dial-up.dsl.siol.net) (Quit: sedovsek)
  1061. # [22:43] * Joins: cgcardona_ (~cgcardona@64.124.34.2)
  1062. # [22:43] * Quits: cgcardona_ (~cgcardona@64.124.34.2) (Changing host)
  1063. # [22:43] * Joins: cgcardona_ (~cgcardona@unaffiliated/cgcardona)
  1064. # [22:44] * Quits: danja (~danny@host70-55-dynamic.9-79-r.retail.telecomitalia.it) (Ping timeout: 252 seconds)
  1065. # [22:45] * Quits: zcorpan (~zcorpan@81-231-170-159-no135.tbcn.telia.com) (Remote host closed the connection)
  1066. # [22:45] * Joins: sedovsek (~robert@BSN-176-141-144.dial-up.dsl.siol.net)
  1067. # [22:45] * Quits: gavinc (~gavin@50.0.77.3) (Ping timeout: 245 seconds)
  1068. # [22:46] * Quits: cgcardona (~cgcardona@unaffiliated/cgcardona) (Ping timeout: 248 seconds)
  1069. # [22:46] * cgcardona_ is now known as cgcardona
  1070. # [22:47] * Joins: say2joe (~say2joe@204.56.108.2)
  1071. # [22:51] * Joins: bholley (~bholley@c-67-161-57-5.hsd1.ca.comcast.net)
  1072. # [22:52] * Joins: eresair (~eresair@173.247.199.2)
  1073. # [22:52] * Joins: sicking (~sicking@63.245.219.150)
  1074. # [22:56] * Joins: danja (~danny@79.12.200.2)
  1075. # [23:01] * abstractj|brb is now known as abstractj
  1076. # [23:05] * Quits: garciawebdev (~garciaweb@190.244.76.154) (Remote host closed the connection)
  1077. # [23:06] <annevk> looks like denying U+FFFD might be http://tools.ietf.org/html/rfc3454#appendix-C.6
  1078. # [23:06] * Quits: gavinc_ (~gavin@50.0.77.3) (Quit: Konversation terminated!)
  1079. # [23:07] <annevk> which is via various references part of IDNA2003
  1080. # [23:09] * Joins: Guest189 (~newton@rrcs-76-79-131-246.west.biz.rr.com)
  1081. # [23:11] * Quits: Druide__ (~Druid@p5B1355B6.dip.t-dialin.net) (Ping timeout: 244 seconds)
  1082. # [23:11] * Quits: cgcardona (~cgcardona@unaffiliated/cgcardona) (Remote host closed the connection)
  1083. # [23:12] * Joins: cgcardona (~cgcardona@unaffiliated/cgcardona)
  1084. # [23:12] * Joins: Druide_ (~Druid@p5B1355B6.dip.t-dialin.net)
  1085. # [23:13] * Joins: dbaron (~dbaron@2620:101:8003:200:cdce:408b:f1ca:4ad3)
  1086. # [23:16] * heycam|away is now known as heycam
  1087. # [23:16] * Quits: divya (~nimbu@sjfw1-a.adobe.com) (Quit: Leaving.)
  1088. # [23:17] * Quits: yodasw16 (~yodasw16@ql1fwhide.rockfin.com) (Quit: yodasw16)
  1089. # [23:17] * Quits: MacTed (~Thud@63.119.36.36)
  1090. # [23:18] * Joins: Kolombiken (~Adium@c80-216-10-244.bredband.comhem.se)
  1091. # [23:19] * Quits: Maurice (copyman@5ED573FA.cm-7-6b.dynamic.ziggo.nl)
  1092. # [23:22] * heycam must be missing some context because he doesn't know what annevk and TabAtkins were talking about earlier re arrays, maps, and things
  1093. # [23:22] <heycam> Hixie, pong
  1094. # [23:23] <annevk> heycam: for ES6 Map, have a way to subclass that including overriding argument types
  1095. # [23:24] <annevk> heycam: for ES Array, have a way to subclass that in similar manner, so you can e.g. do url.segments[2] = "partOfPath" (which will get some pre-processing on setting and affects the url object)
  1096. # [23:24] <heycam> annevk, we do?
  1097. # [23:24] <heycam> oh sorry, I accidentally a word
  1098. # [23:25] * Quits: zdobersek (~zan@cpe-46-164-1-103.dynamic.amis.net) (Quit: Leaving.)
  1099. # [23:25] * Joins: divya (~nimbu@sjfw1-a.adobe.com)
  1100. # [23:25] <heycam> the whole thing with subclassing arrays, I was kind of waiting for the ES spec to make that possible before trying something like that
  1101. # [23:25] <annevk> heycam: http://lists.w3.org/Archives/Public/public-whatwg-archive/2012Nov/0235.html
  1102. # [23:26] <annevk> heycam: I see, TabAtkins tells me it's already possible...
  1103. # [23:26] <heycam> I am out of date then!
  1104. # [23:26] * Joins: mindbender1 (~chijioke@196.46.245.29)
  1105. # [23:26] <annevk> well or TabAtkins is in the future
  1106. # [23:26] <heycam> ha
  1107. # [23:26] * heycam wonders what it would mean to call the proto's get/set on a subclassed map
  1108. # [23:28] <annevk> I'm a little sceptic there's a lot of value to be gained here, but who knows
  1109. # [23:28] <heycam> what API is this wanted for btw?
  1110. # [23:28] <annevk> Map is wanted for URLQuery: http://url.spec.whatwg.org/#urlquery
  1111. # [23:29] <annevk> Array might be wanted for non-existing URLSegments or some such
  1112. # [23:31] <annevk> heycam: oh, and if you're short on things to do, there's a question on "throw" in https://www.w3.org/Bugs/Public/show_bug.cgi?id=19110 and one on optional arguments versus dictionaries in https://www.w3.org/Bugs/Public/show_bug.cgi?id=19646
  1113. # [23:31] <heycam> annevk, would URLQuery.set do some validation on the value you pass in? so it doesn't contain a "&" character or something?
  1114. # [23:31] <heycam> shorrt on things to do, right :)
  1115. # [23:32] <annevk> heycam: it would probably transform certain characters
  1116. # [23:32] <annevk> heycam: percent encode them or some such
  1117. # [23:32] <heycam> so I am wondering whether subclassing is the right relationship for the URLQuery, if we want to prevent certain characters from getting into the map without being transformed
  1118. # [23:32] <heycam> we probably want to use the same interface as Map, but not be a subclass of Map -- more like we want to wrap an internal map that you can't get to
  1119. # [23:34] * abstractj is now known as abstractj|away
  1120. # [23:34] <heycam> sorry to do this to you, but would you mind mailing or filing a bug about the Map thing?
  1121. # [23:34] * Quits: divya (~nimbu@sjfw1-a.adobe.com) (Quit: Leaving.)
  1122. # [23:35] * heycam will work on a few webidl bugs later this week -- I'll put the above bugs 19110 and 19646 on my list to do
  1123. # [23:35] <annevk> heycam: yeah can do (I'm not really sure subclassing Map is the right solution either, maybe I'll post to the whatwg list about it again with some of the requirements and see if that makes it still a good approach)
  1124. # [23:35] <annevk> heycam: ta
  1125. # [23:35] <heycam> yeah if you can tease those things out first before I plunge into doing Map stuff in the spec, that would be good
  1126. # [23:41] * Quits: karlcow (~karl@nerval.la-grange.net) (Quit: :tiuQ tiuq sah woclrak)
  1127. # [23:44] * Joins: Stevef (~chatzilla@77.103.111.77)
  1128. # [23:46] * Quits: baku (~baku@x1-6-e0-46-9a-1f-0a-72.k694.webspeed.dk) (Quit: Leaving)
  1129. # [23:48] <TabAtkins> heycam: The reason to subclass Map is to, well, have a Map. So people with code that expects to take a Map can do the obvious test (foo instanceof Map) and have it work correctly.
  1130. # [23:48] <TabAtkins> heycam: AWB has JS code on the thread in WHATWG about how you would do it in ES5 or in ES6-with-classes.
  1131. # [23:48] <TabAtkins> heycam: It's pretty trivial.
  1132. # [23:49] <heycam> does it matter that calling Map.__proto__.set on the subclassed map will subvert the argument checking?
  1133. # [23:49] <heycam> er
  1134. # [23:49] <heycam> Map.prototype.set
  1135. # [23:49] * Quits: Stevef (~chatzilla@77.103.111.77) (Ping timeout: 245 seconds)
  1136. # [23:49] * Quits: detrax (~detrax@78.157.69.37)
  1137. # [23:49] <TabAtkins> I recommend *actually* setting a hidden internal Map, so it's safe from outside manipulation.
  1138. # [23:50] * Joins: imrobert (~robert@139.62.87.109)
  1139. # [23:50] <heycam> TabAtkins, ok. but we would still have the outer one being a real Map, even though it doesn't use its Map-ness?
  1140. # [23:50] <TabAtkins> Yes. The Map-ness is used for type checks, mostly.
  1141. # [23:50] <TabAtkins> Or only, I guess.
  1142. # [23:51] <heycam> so I could imagine code that expects, if it is "instanceof Map", that calling Map.protoype.get on it will do something useful
  1143. # [23:51] <TabAtkins> But still, when I need to distinguish code-paths by type, I use instanceof checks. Having DOM types pass the most appropriate basic ES type is useful.
  1144. # [23:51] <TabAtkins> ...why would anyone do that, rather than just calling get on the object itself?
  1145. # [23:52] <heycam> well I don't know, but it seems like something that should work if an object "is a Map"
  1146. # [23:52] <heycam> I guess it comes down to what you think "instanceof Map" implies
  1147. # [23:52] <TabAtkins> That sort of thing only makes sense in general if you are *actually* a Map, not a subclass of.
  1148. # [23:53] <TabAtkins> You must assume that subclasses have overridden the methods with something useful.
  1149. # [23:53] <TabAtkins> instanceof implies that Map's prototype is *somewhere* in your object's prototype chain.
  1150. # [23:53] <heycam> sure, but that doesn't mean that calling .get() on the object will do you want either
  1151. # [23:54] <heycam> it *probably* will...
  1152. # [23:54] <TabAtkins> If it doesn't act more-or-less like a Map, then you've obviously broken the type contract and deserve pain.
  1153. # [23:54] <TabAtkins> URLQuery does indeed act like a Map. It just coerces its key and value to strings first.
  1154. # [23:55] <heycam> I guess I was thinking that calling Map.prototype.get on it is something that is part of the contract
  1155. # [23:55] * Quits: danzik171 (~danzik17@164.55.254.106) (Ping timeout: 246 seconds)
  1156. # [23:55] <TabAtkins> That seems like a silly thing to expect. ^_^ It basically assumes that the object never overrides any of the superclass's methods.
  1157. # [23:56] * Joins: Stevef (~chatzilla@77.103.111.77)
  1158. # [23:56] <TabAtkins> It's true if you subscribe to the very strictest idea of when it is appropriate to "subclass" (when the subclass is *literally indistinguishable* from the superclass, using operations that the superclass provides), but not in most of the real world.
  1159. # [23:57] <heycam> right, that is how I was thinking about it
  1160. # [23:57] <TabAtkins> Normal people don't think about it that way. ^_^
  1161. # [23:57] <heycam> ha
  1162. # [23:58] <heycam> to me, it feels like you want to state that URLQuery implements a Map interface, and that the JS Map object is actually a concrete class
  1163. # [23:58] <heycam> but that's not really how JS works
  1164. # [23:58] <TabAtkins> That's an acceptable definition of "subclass" in JS terms.
  1165. # [23:58] <TabAtkins> If you pretend that objects can only have a single interface. ^_^
  1166. # [23:59] <TabAtkins> (A proper interface system would be very welcome, but doesn't exist as of yet.)
  1167. # [23:59] <heycam> the end result of this is that you need to be careful about defining what happens when you do call the super methods on your subclassed object
  1168. # [23:59] <heycam> but if that's the way things are, ok
  1169. # Session Close: Tue Nov 20 00:00:00 2012

The end :)