/irc-logs / w3c / #webapps / 2015-07-21 / end

Options:

Previous day, Next day

  1. # Session Start: Tue Jul 21 00:00:00 2015
  2. # Session Ident: #webapps
  3. # [00:16] * Quits: sicking (~sicking@public.cloak) (sicking)
  4. # [00:39] * heycam|away is now known as heycam
  5. # [00:42] * Joins: sicking (~sicking@public.cloak)
  6. # [00:44] * Joins: chaals (~Adium@public.cloak)
  7. # [00:46] * Joins: fjh (~fhirsch3@public.cloak)
  8. # [00:57] * Joins: marcosc (~marcosc@public.cloak)
  9. # [01:00] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  10. # [01:01] * Quits: sicking (~sicking@public.cloak) (sicking)
  11. # [01:35] * Quits: marcosc (~marcosc@public.cloak) (Client closed connection)
  12. # [01:40] * Joins: sicking (~sicking@public.cloak)
  13. # [02:01] * Joins: rniwa_ (~textual@public.cloak)
  14. # [02:03] * Joins: rniwa__ (~textual@public.cloak)
  15. # [02:06] * Quits: rniwa (~textual@public.cloak) (Ping timeout: 180 seconds)
  16. # [02:08] * Joins: fjh (~fhirsch3@public.cloak)
  17. # [02:09] * Quits: rniwa_ (~textual@public.cloak) (Ping timeout: 180 seconds)
  18. # [02:10] * terri is now known as terri_offline
  19. # [02:15] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  20. # [02:25] * Quits: chaals (~Adium@public.cloak) ("Leaving.")
  21. # [02:29] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
  22. # [02:42] * Quits: sicking (~sicking@public.cloak) (sicking)
  23. # [03:30] * Parts: kochi (~kochi@public.cloak)
  24. # [03:32] * Joins: fjh (~fhirsch3@public.cloak)
  25. # [03:33] * Joins: kochi (~kochi@public.cloak)
  26. # [03:37] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  27. # [03:49] * Joins: chaals (~Adium@public.cloak)
  28. # [04:19] * Quits: hgl (~hgl@public.cloak) (hgl)
  29. # [04:20] * Joins: hgl (~hgl@public.cloak)
  30. # [04:35] * heycam is now known as heycam|away
  31. # [04:52] * Quits: ArtB (~ArtB@public.cloak) ("Leaving.")
  32. # [05:18] * Quits: chaals (~Adium@public.cloak) ("Leaving.")
  33. # [05:24] * heycam|away is now known as heycam
  34. # [05:48] <rniwa__> MikeSmith: yt?
  35. # [05:48] * rniwa__ is now known as rniwa
  36. # [05:48] <rniwa> xiaoqian: yt?
  37. # [06:32] <MikeSmith> rniwa: I'm here
  38. # [06:32] <MikeSmith> what's up?
  39. # [06:33] <rniwa> MikeSmith: it looks like Maciej's email to public-webapps isn't delivered to some people on the list
  40. # [06:33] <rniwa> MikeSmith: do you know who administers that mailing list?
  41. # [06:33] <MikeSmith> not sure but I can deal with it myself regardless
  42. # [06:33] * MikeSmith checks now
  43. # [06:33] <MikeSmith> I know I got his message at least
  44. # [06:34] <MikeSmith> did he send it to multiple lists?
  45. # [06:35] <MikeSmith> so the admin interface shows nothing in the moderation queue
  46. # [06:36] <MikeSmith> lemme check my own copay
  47. # [06:36] <MikeSmith> *copy
  48. # [06:36] <MikeSmith> rniwa: that message reached the list
  49. # [06:36] <MikeSmith> see https://lists.w3.org/Archives/Public/public-webapps/2015JulSep/0204.html
  50. # [06:37] <MikeSmith> or did you mean a different message?
  51. # [06:48] <rniwa> MikeSmith: I think it didn't get delivered to some members
  52. # [06:49] <rniwa> MikeSmith: it's also possible that this is an issue with Apple's mail server
  53. # [06:50] <MikeSmith> rniwa: I will try re-sending it now
  54. # [06:52] <MikeSmith> ok I just bounced it
  55. # [06:53] <MikeSmith> hmm that didn't seem to go through
  56. # [06:53] <MikeSmith> dunno why
  57. # [07:06] <rniwa> MikeSmith: something isn't working :(
  58. # [07:06] <MikeSmith> no I think the way I bounced the message is the only thing that's not working
  59. # [07:07] <MikeSmith> I'll re-send the message as myself
  60. # [07:11] <MikeSmith> rniwa: https://lists.w3.org/Archives/Public/public-webapps/2015JulSep/0205.html
  61. # [07:11] <MikeSmith> ...is the message I just sent
  62. # [07:12] <MikeSmith> did you get that one in your inbox?
  63. # [07:13] <rniwa> MikeSmith: nope :(
  64. # [07:14] <rniwa> MikeSmith: oh I just got that one
  65. # [07:16] <MikeSmith> ok
  66. # [07:16] <MikeSmith> so at least we know some mail is getting through to list recipients
  67. # [07:16] <rniwa> MikeSmith: yeah
  68. # [07:17] <rniwa> MikeSmith: it's possible that was a temporary mail server outage on our side
  69. # [07:17] <rniwa> MikeSmith: anyway, thanks for the help
  70. # [07:18] * Quits: rniwa (~textual@public.cloak) ("Textual IRC Client: www.textualapp.com")
  71. # [08:36] * Joins: sicking (~sicking@public.cloak)
  72. # [08:44] * Quits: Lachy (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  73. # [09:17] * heycam is now known as heycam|away
  74. # [09:30] * Quits: sicking (~sicking@public.cloak) (sicking)
  75. # [09:34] * Joins: sicking (~sicking@public.cloak)
  76. # [09:38] * Joins: dom (dom@public.cloak)
  77. # [09:47] * Joins: Lachy (~Lachy@public.cloak)
  78. # [09:57] * Quits: sicking (~sicking@public.cloak) (sicking)
  79. # [10:01] * Quits: Lachy (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  80. # [10:22] * Joins: smaug (~chatzilla@public.cloak)
  81. # [10:28] * Joins: Lachy (~Lachy@public.cloak)
  82. # [11:11] * Quits: smaug (~chatzilla@public.cloak) (Client closed connection)
  83. # [11:13] * Quits: Lachy (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  84. # [11:20] * Joins: smaug (~chatzilla@public.cloak)
  85. # [11:21] * Joins: Lachy (~Lachy@public.cloak)
  86. # [11:23] * Joins: wilsonpage (~wilsonpage@public.cloak)
  87. # [11:32] * Quits: Lachy (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  88. # [11:33] * Joins: Lachy (~Lachy@public.cloak)
  89. # [11:41] * Joins: dka (~dka@public.cloak)
  90. # [12:59] * Quits: dka (~dka@public.cloak) (dka)
  91. # [13:18] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
  92. # [13:22] * Joins: ArtB (~ArtB@public.cloak)
  93. # [13:27] * wilsonpage is now known as wilsonpage-away
  94. # [13:52] * Quits: Lachy (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  95. # [13:54] * wilsonpage-away is now known as wilsonpage
  96. # [14:03] * Joins: Lachy (~Lachy@public.cloak)
  97. # [14:46] * Joins: dka (~dka@public.cloak)
  98. # [15:06] * Joins: fjh (~fhirsch3@public.cloak)
  99. # [15:34] * Joins: chaals (~Adium@public.cloak)
  100. # [15:46] * Quits: chaals (~Adium@public.cloak) ("Leaving.")
  101. # [16:26] * Quits: Lachy (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  102. # [16:29] * Joins: Lachy (~Lachy@public.cloak)
  103. # [16:35] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  104. # [16:37] * Joins: fjh (~fhirsch3@public.cloak)
  105. # [16:38] * Joins: Lachy_ (~Lachy@public.cloak)
  106. # [16:38] * Quits: Lachy (~Lachy@public.cloak) (Client closed connection)
  107. # [16:54] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  108. # [17:01] * Joins: fjh (~fhirsch3@public.cloak)
  109. # [17:01] * Quits: dka (~dka@public.cloak) (dka)
  110. # [17:26] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  111. # [17:28] * Joins: fjh (~fhirsch3@public.cloak)
  112. # [17:33] * Quits: wilsonpage (~wilsonpage@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
  113. # [17:34] * Joins: marcosc (~marcosc@public.cloak)
  114. # [17:35] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  115. # [17:35] * Joins: sicking (~sicking@public.cloak)
  116. # [17:37] * Joins: jyasskin (~textual@public.cloak)
  117. # [17:42] * Joins: fjh (~fhirsch3@public.cloak)
  118. # [17:46] * Quits: marcosc (~marcosc@public.cloak) (Client closed connection)
  119. # [17:47] * Joins: marcosc (~marcosc@public.cloak)
  120. # [17:48] * Joins: wilsonpage (~wilsonpage@public.cloak)
  121. # [17:49] * Quits: Lachy_ (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  122. # [17:52] * Joins: Lachy (~Lachy@public.cloak)
  123. # [17:52] * Joins: dka (~dka@public.cloak)
  124. # [17:53] * Quits: Lachy (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  125. # [17:54] * Quits: marcosc (~marcosc@public.cloak) (Ping timeout: 180 seconds)
  126. # [17:59] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  127. # [18:00] * Joins: fjh (~fhirsch3@public.cloak)
  128. # [18:10] * Joins: shepazu_ (schepers@public.cloak)
  129. # [18:12] * Quits: wilsonpage (~wilsonpage@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
  130. # [18:14] * Quits: shepazu (schepers@public.cloak) (Ping timeout: 180 seconds)
  131. # [18:14] * Joins: wilsonpage (~wilsonpage@public.cloak)
  132. # [18:21] * Quits: gavin (~gavin@public.cloak) (Client closed connection)
  133. # [18:21] * Joins: gavin (~gavin@public.cloak)
  134. # [18:28] * Quits: dka (~dka@public.cloak) (dka)
  135. # [18:30] * Quits: dom (dom@public.cloak) ("")
  136. # [18:39] * Quits: sicking (~sicking@public.cloak) (sicking)
  137. # [18:50] <hayato> Are we using this channel for today's f2f?
  138. # [18:54] * Joins: kschaaf (~kschaaf@public.cloak)
  139. # [19:01] * Joins: jsbell (~jsbell@public.cloak)
  140. # [19:02] * Joins: chaals (~Adium@public.cloak)
  141. # [19:02] * Parts: jsbell__ (~sid6276@public.cloak)
  142. # [19:02] * Quits: jsbell (~jsbell@public.cloak) ("There's no place like home...")
  143. # [19:03] * Joins: sicking (~sicking@public.cloak)
  144. # [19:12] * Joins: Varunkumar (~Varunkumar@public.cloak)
  145. # [19:12] * Joins: aklein (~sid4454@public.cloak)
  146. # [19:14] * Quits: jyasskin (~textual@public.cloak) ("My computer has gone to sleep. ZZZzzz…")
  147. # [19:14] * Joins: RRSAgent (rrsagent@public.cloak)
  148. # [19:14] <RRSAgent> logging to http://www.w3.org/2015/07/21-webapps-irc
  149. # [19:14] * Joins: Zakim (zakim@public.cloak)
  150. # [19:14] * Joins: aboxhall (~uid20617@public.cloak)
  151. # [19:14] * chaals changes topic to '#webapps f2f meeting - Web Components https://www.w3.org/wiki/Webapps/WebComponentsJuly2015Meeting'
  152. # [19:15] <chaals> Meeting: Web components f2f, July 2015
  153. # [19:15] <chaals> -> https://www.w3.org/wiki/Webapps/WebComponentsJuly2015Meeting agenda
  154. # [19:15] <chaals> scribe: chaals
  155. # [19:17] * Joins: cdata (~uid82755@public.cloak)
  156. # [19:18] <chaals> DD: We have the contentious bits wiki and position papers. Think we should start with the key question - do we run author code during {*}
  157. # [19:18] <chaals> … Google says no, this is mutation events without eough value to do.
  158. # [19:18] <chaals> … want to call the hook you provide, instead of vice versa.
  159. # [19:20] <chaals> Present: Annevk, DomC, Chaals, Léonie, AliceB, AlexR, Hayato, DomD, MarkG, WChen, Samw, othermaci-J, TOC, ScottM, Sorvall, AKlein, Dglazkov, BinHu, Travis, Arron
  160. # [19:20] <chaals> AvK: Question - has Apple figured out processing model for cloning?
  161. # [19:21] <chaals> … think the parsing I can see, but cloning not so much.
  162. # [19:21] <chaals> MJS: Tricky thing is the stuff that invoke cloning. 3 technically interesting things that might invoke a constructor: parsing, cloning, directly creating by name.
  163. # [19:21] <chaals> … not sure if createElement gets invoked, so may not be such an issue but it wasn't mentioned and seems distinct.
  164. # [19:22] * shepazu_ is now known as shepazu
  165. # [19:22] <chaals> … tricky Q: what might do cloning in middle of a complex operation and need to be done defensively. Seems like editing code is likely to be trickiest. Ryosuke pointed out that for technical correctness editing has to be prepared for event to be dispatched synchronously in the middle of somewhere.
  166. # [19:22] * Joins: jlklein (~uid101176@public.cloak)
  167. # [19:23] <chaals> … edge cases but hard to track. E.g. using delelte you might have to synchronously dispatch blur, so you need to be prepared anyway. Which makes this a difference of degree not kind.
  168. # [19:23] <chaals> s/delelte/delete on a focused thing/
  169. # [19:23] <chaals> Travis: Mutation events are necessary for advanced editors, even though we don't like them.
  170. # [19:24] <chaals> mjs: Not like mutation events will go tomorrow, but in webkit we defer them to the end of the editing operation for enhanced not-quite-so-crazy
  171. # [19:24] <chaals> … wouldn't work here.
  172. # [19:24] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  173. # [19:24] * Joins: sorvell (~uid12099@public.cloak)
  174. # [19:24] <chaals> … Do have Jonas' almost-synchronous proposal, might be a variant of that. But where you're creating new elements, coding defensively is probably feasible and less than mutations.
  175. # [19:25] <chaals> DomD: The world *should* be nice...
  176. # [19:25] <chaals> DomD: Other interesting case is where there sin't afailure mode - in the document, what do we do?
  177. # [19:25] <chaals> mjs: When constructor throws? Throwing isn't useful we need *A* behaviour for that but doesn't need to be pretty, pick whatever is easy to implement.
  178. # [19:25] <Varunkumar> not available on Webex today?
  179. # [19:26] <chaals> AvK: No guarantee the constructor constructs an element anyway.
  180. # [19:26] <chaals> [apparently no webex]
  181. # [19:26] * Joins: annevk (~annevk@public.cloak)
  182. # [19:26] <chaals> [5: Webex request denied]
  183. # [19:26] * Joins: arronei (~arronei@public.cloak)
  184. # [19:26] <chaals> AK: 2 things - being defensive and the need to specify what happens, and editing right now isn't specified.
  185. # [19:27] * Joins: LJWatson (~chatzilla@public.cloak)
  186. # [19:27] <Varunkumar> any other options for us folks from India to connect to?
  187. # [19:27] <chaals> mjs: Think the likely common case for reasonable elements is they don't do crazy things in construction. So for normal interop, don't know if it will be common to edit things with custom elements in the middle. A custom element that mutates random other things is crazy, so it is important not to crash, but it's an edge case.
  188. # [19:28] <chaals> AK: Want to specify this beyond "don't crash".
  189. # [19:28] <chaals> AvK: In DOM need to define what happens for ranges. could be rethrow.
  190. # [19:28] <chaals> TL: Could define mutation events in there for me
  191. # [19:28] <chaals> AvK: Considered it, but people still want to remove them.
  192. # [19:28] * Joins: markg (~chatzilla@public.cloak)
  193. # [19:28] <chaals> TL: Can mjs talk about insert/remove?
  194. # [19:28] * Joins: dglazkov__ (~sid4270@public.cloak)
  195. # [19:28] <chaals> DomD: The other part is that this makes algorithms obervable.
  196. # [19:29] * chaals hopes someone can replace "this" with something.
  197. # [19:29] * dglazkov__ https://mit.webex.com/mit/j.php?MTID=m92e7c9a5894d952798350812dec0a7d2
  198. # [19:29] <chaals> … that nails down semantics not currently required.
  199. # [19:29] * dglazkov__ Meeting number: 645 727 199
  200. # [19:29] * dglazkov__ Meeting password: comp
  201. # [19:29] <chaals> MJS: Mutation events create some of this, because you need to get the things in the same order. Don't think the phenomenon is new...
  202. # [19:29] <chaals> DomD: Yes, it is a question of degree.
  203. # [19:30] <chaals> … you wouldn't have complete freedom.
  204. # [19:30] <chaals> SamW: That's what happens when you expose lower level.
  205. # [19:30] <chaals> TL: ECMAScript proxy opened up this issue. ggood or bad?
  206. # [19:30] <chaals> AK: Been problematic, opened up interop issues.
  207. # [19:31] <chaals> MJS: If you go into DOM operations, there aren't interesting degrees of implementation freedom that synchronous constructors would rule out.
  208. # [19:31] <chaals> … reomve/insert that don't create elements…
  209. # [19:31] * Joins: justin (~uid82754@public.cloak)
  210. # [19:31] <chaals> AvK: There might be cases with ranges where you have to throw earlier or later, but minor details.
  211. # [19:31] <chaals> DomD: images getting laoded and cached before throwing.
  212. # [19:31] <chaals> AvK: User agents can optimise those things. All of network is a bit racy.
  213. # [19:32] <chaals> DomD: exaplins what happens with img loading.
  214. # [19:32] <chaals> … document.write is fun.
  215. # [19:32] <chaals> AvK: Evil. same as using it to write a script element.
  216. # [19:33] <chaals> … HTML parser needs checks. We know when we hit the end of a script, but not for a new-tag, when it is safe to synchronise.
  217. # [19:33] <chaals> DomD: So, Yes we run author code. Yes, but later, when speced. What do we do in themeantime?
  218. # [19:33] <chaals> … like we did with imperative distribution API. We need someone to go spec it.
  219. # [19:34] <chaals> MJS: We're thinking of replacement not necessarily addition. Having constructor and creative callback at the same time will be confusing. Don't think we want two warts here.
  220. # [19:34] <chaals> DomD: Default calls element.created. If you override it, then it doesn't get called.
  221. # [19:34] <chaals> MJS: That's different ...
  222. # [19:34] <chaals> DD, AR: Not really.
  223. # [19:35] <chaals> MJS: Gets called at a different time
  224. # [19:35] <chaals> DD: Yes, synch constructor comes at a different time.
  225. # [19:35] <chaals> MJS: Created callaback can be implemented on top of synchronous constructors. maybe we're done.
  226. # [19:35] <chaals> DD: when that is specced...
  227. # [19:36] <chaals> AvK: Does anyone have time to figure out the processing model and write patches for the spec?
  228. # [19:36] <chaals> MJS: If we got around to implementing and it hadn't been specced, we would try to do that. Don't have someone available off-hand to get it perfect now, but could get a first draft. Step 0 is figure out what results in element creation ...
  229. # [19:36] <chaals> AvK: The things you said. Parser, doc.createEl, cloning.
  230. # [19:37] <chaals> MJS: But the next level up - wat calls those. Those are where you need defensiveness.
  231. # [19:37] <chaals> … so where we need to spec. Does anyone have data on what things invoke those operations?
  232. # [19:38] <chaals> DC: In blinnk we have audio metadata that does that…
  233. # [19:38] <chaals> MJS: Is that enforced, or an annotation?
  234. # [19:38] <chaals> DC: Annotation that makes teh system drain the callback queue.
  235. # [19:38] <chaals> … could be enforced but isn't. Not useful to find all things that can do this because we have bugs where we should have applied it but didn't. E.g. named attribute getter on el.style
  236. # [19:38] <chaals> … we could get these things.
  237. # [19:39] <chaals> [explore - doesn't create elements]
  238. # [19:39] <chaals> DC: We could find this out.
  239. # [19:39] <chaals> AvK: I feel like it isn't a long list. createElem, innerHTML, rangeAPI, fragments, and editing is built on top to use those. Don't think there are more things for cloning.
  240. # [19:40] <chaals> DC: My experience is there is always one more, but falls in those - normally in editing.
  241. # [19:40] <chaals> TL: If you can hadnle rage, you can handle all the cases...
  242. # [19:40] <chaals> s/rage/range/
  243. # [19:40] <chaals> MJS: Editing is more complex than ranges because it mixes them up, so need to be super-paranoid.
  244. # [19:40] <chaals> AvK: Range can do that already.
  245. # [19:41] <chaals> MJS: What if we say custom element constructors are not allowed to change DOM except their own shadow - if they do, the operation that invoked it completely throws.
  246. # [19:41] <chaals> TL: They will cloneNode the template.
  247. # [19:42] <chaals> DC: Nice idea, finding the boundary is tricky. Ther limit says there are no modifications, ...
  248. # [19:42] <chaals> DG: sounds like we talk about a lot of cost to spec this - what is the benefit of it. Compare to other proposals and weight costs/benefits.
  249. # [19:42] <chaals> MJS: Could list up pros/cons on the whiteboard.
  250. # [19:43] <annevk> https://etherpad.mozilla.org/customelements
  251. # [19:43] * Joins: weinig (~weinig@public.cloak)
  252. # [19:44] <chaals> s|https://etherpad.mozilla.org/customelements|-> https://etherpad.mozilla.org/customelements pros and cons of proposals
  253. # [19:44] <chaals> rrsagent, draft minutes
  254. # [19:44] <RRSAgent> I have made the request to generate http://www.w3.org/2015/07/21-webapps-minutes.html chaals
  255. # [19:45] <chaals> rrsagent, make logs public
  256. # [19:45] <RRSAgent> I have made the request, chaals
  257. # [19:45] * Joins: jyasskin (~textual@public.cloak)
  258. # [19:47] <chaals> [discussions of what people like as structures… being noted into the etherPad]
  259. # [19:47] * Joins: Travis (~Travis@public.cloak)
  260. # [19:48] * Joins: ebidel (~ebidel@public.cloak)
  261. # [19:51] <chaals> [There is a microtask checkpoint before entering a script element]
  262. # [19:51] <chaals> MJS: If you have multiple callacks, they can look at each other and see things in a half-constructed state.
  263. # [19:51] <chaals> … if you are being initialised, your peers might not be completed.
  264. # [19:52] <chaals> TL: There is a way around the observability. If you go to grab unupgraded element you preempt.
  265. # [19:52] <chaals> MJS: That cycles…
  266. # [19:52] * chaals thinks it is very racy…
  267. # [19:53] * chaals in the traditional non-programming sense
  268. # [19:53] <chaals> MJS: We tried that idea, but no.
  269. # [19:54] <chaals> SM: polymer has learned we have to be defensive, this might happen.
  270. # [19:54] <chaals> MJS: So things are created from outside in. You know your parents
  271. # [19:54] * chaals thinks it is getting racier here…
  272. # [19:54] * Joins: smaug (~chatzilla@public.cloak)
  273. # [19:54] * chaals waves to smaug
  274. # [19:55] <chaals> MJS: So the state of the DOM is unpredictable.
  275. # [19:55] <chaals> SO: Not sure why that is more objectionable than what we were talking about earlier, where there are things you shouldn't do with constructor. Seems like either way there are DOM manipulations that don't make sense.
  276. # [19:55] * smaug waves to Mountain View
  277. # [19:55] <chaals> MJS: Different kind of problem…
  278. # [19:56] <chaals> … there we have deterministic behaviour, here we may be dependent on network behaviour providing non-determinism.
  279. # [19:57] <chaals> DomD: Hol the presses on network behaviour, thought we eliminated that with the HTML parser.
  280. # [19:57] <chaals> MJS: Boundaries between data chunks to parse then return to the loop cannot be set, because you don't know what you are getting next.
  281. # [19:58] <chaals> DD: So if we allow throwing depending on the timing we lose "parser will end up producing the same DOM"
  282. # [19:58] * Joins: fjh (~fhirsch3@public.cloak)
  283. # [19:58] <chaals> AvK: There are random things you could do still.
  284. # [19:58] <chaals> SO: so non-deterministic state is observable in callback
  285. # [19:58] <chaals> … potentially, restrictions around it could be specced to fix this.
  286. # [19:58] <chaals> MJS: Not sure that is possible
  287. # [19:59] <chaals> SM: Is it clear that the domain of problems are different?
  288. # [19:59] <chaals> MJS: Don't see how to make created callback work and rule out non-determinism introduced by network variation.
  289. # [19:59] <chaals> SM: We disallow looking at children - we want an explicit platform signal.
  290. # [20:00] <chaals> DD: What if we take cycle detection, but instead of upgrading if you inspect it, we sust throw.
  291. # [20:00] <chaals> SM: We live in the world mjs describes. But don't think we cannot live there.
  292. # [20:02] <chaals> SW: Our constructors do litt.e Nothing, or set up shadow roots. Don't load...
  293. # [20:02] * Quits: kschaaf (~kschaaf@public.cloak) ("Page closed")
  294. # [20:03] * Joins: kschaaf (~kschaaf@public.cloak)
  295. # [20:03] * Quits: ebidel (~ebidel@public.cloak) (Client closed connection)
  296. # [20:03] <chaals> … New image calls a constructor, then sets a src. Can happen in sequence...
  297. # [20:04] <chaals> … you can do setAttribute in the constructor, but we don't in our native implementation.
  298. # [20:04] <chaals> DG: Would say that in guidance too
  299. # [20:04] <chaals> MJS: Elements setting attributes is an anti-pattern…
  300. # [20:05] <chaals> … parameters can be handled outsied the construction.
  301. # [20:05] <chaals> SM: Is there another lifecycle, like childrenComplete, where we can get deterministic behaviour?
  302. # [20:05] <chaals> MJS: Only when you are created and nothing has been inserted yet.
  303. # [20:06] * terri_offline is now known as terri
  304. # [20:06] <chaals> … after setting parser-created attributes we have something, and when a child is inserted.
  305. # [20:06] <chaals> … or when you are inserted/removed from a doc / DOM subtree.
  306. # [20:06] <chaals> SM: We need that too.
  307. # [20:07] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  308. # [20:07] <chaals> … you can lazily construct as you add things
  309. # [20:08] <chaals> AvK: HTML requires callbacks for endtag in some cases.
  310. # [20:08] <chaals> SW: Constructor sets state that is needed.
  311. # [20:08] <chaals> MJS: input without a type attrivbute set has to have something, but when it gets a type it varies wildly.
  312. # [20:12] <chaals> SM: Polymer iterates over attributes
  313. # [20:12] <chaals> DC: Maybe that is wrong...
  314. # [20:16] * Joins: arronei_ (~arronei@public.cloak)
  315. # [20:16] <chaals> MJS You could try to return to event loop when creating the element, but can't go there in the middle of an operation.
  316. # [20:16] * Joins: robdodson (~uid27592@public.cloak)
  317. # [20:17] <chaals> DG: So cons on both cases - constructor is complex to spec, createdCallback is that network non-determinism is going to create exciting times.
  318. # [20:17] <chaals> … does not match ES6 a concern?
  319. # [20:17] <chaals> AvK: TC39 might want to use constructors.
  320. # [20:17] * Quits: arronei (~arronei@public.cloak) (Ping timeout: 180 seconds)
  321. # [20:18] <chaals> DD: Not so sure taht is a worry.
  322. # [20:19] * Quits: Varunkumar (~Varunkumar@public.cloak) (Ping timeout: 180 seconds)
  323. # [20:19] <chaals> MJS: When prototype swizzling happens, something complex goes on. Some think that is a feature, others a bug.
  324. # [20:19] <chaals> s/goes on/goes on if you only get the propotypes later/
  325. # [20:20] <chaals> TOC: worth pointing out that the costs are paid differently - network determinism is paid by authors, complexity of spec is paid by browser developers and specheads (who deserve all the pain they get)
  326. # [20:21] <chaals> SM: So we *can't get anything deterministic based on callback?
  327. # [20:21] <chaals> DC: Can be done…
  328. # [20:21] <chaals> … complexity is when we are running authordefined script.
  329. # [20:22] <chaals> MJS: You could get down to "if done by parser we drop down to event loop, but if you're in middle of a DOM operation you don't get callback until it's all done"
  330. # [20:23] * Quits: arronei_ (~arronei@public.cloak) (Ping timeout: 180 seconds)
  331. # [20:23] <chaals> DD: That removes the network non-determinism
  332. # [20:23] <chaals> AK: Won't be trivial to add the restrictions
  333. # [20:25] <chaals> MJS: If you clone subtree with custom element in it you're into a hairy spot of when to do that. And template element encourages doing that.
  334. # [20:27] <chaals> DG: View upgrades and constructors as sort of the same problem - because in callback world the solution is the same.
  335. # [20:27] <chaals> … so weighing of the balance applies in the upgrade world.
  336. # [20:27] <chaals> … sunch constructors means authors need to be sure their definition is loaded before the parser runs.
  337. # [20:28] <chaals> [possible compromise is to support both appraoches.]
  338. # [20:30] <chaals> SO: We're looking at either an authoring anti-pattern or a performance anti-pattern …
  339. # [20:31] <chaals> [discussion of what DomD proposed and what it means]
  340. # [20:31] <chaals> s/means/means - is it bimodal?]
  341. # [20:31] * Quits: wilsonpage (~wilsonpage@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
  342. # [20:32] <annevk> We're discussing https://github.com/w3c/webcomponents/blob/gh-pages/proposals/Parser-Created-Constructors.md
  343. # [20:34] <chaals> DC: find and replace things is tricky - you can't always find them.
  344. # [20:34] <chaals> MJS: So to support upgrade, you might not be able to find everything to upgrade.
  345. # [20:34] <chaals> … maybe you could make it an explicit behaviour when you register an element.
  346. # [20:35] <chaals> … to keep a reference to it.
  347. # [20:36] <chaals> … this could be non-deterministically bad.
  348. # [20:37] <chaals> DC/TL: proxies is worse than proto-swizzling for JS engine, for speed.
  349. # [20:37] <chaals> [Do we know about author experience of proxies? Probably not really]
  350. # [20:38] <chaals> DG: Protoswizzling is actually very common in developer-land
  351. # [20:39] <chaals> SM: We get lots of problems with non-determinism, have zero bug reports from protoswizzling
  352. # [20:39] * Joins: rictic (~uid101199@public.cloak)
  353. # [20:40] * Joins: emmanuel (~uid101200@public.cloak)
  354. # [20:40] <chaals> DG: This is how people to custom-elements-lite today.
  355. # [20:40] <chaals> SO: WOuld want to consider less-good upgrades before just dumping them.
  356. # [20:40] <chaals> MJS: What if it were replacement model, and you need to reget a new wrapper?
  357. # [20:41] <chaals> AR: we tried this with becomes. Footguns were pretty bad.
  358. # [20:41] <chaals> … eg in loading process you enhance your document, and then later they get replaced. Surprisingly.
  359. # [20:42] <chaals> MJS: libraries were fine with protoswizzling?
  360. # [20:42] <chaals> AR: Largely because they add event handlers
  361. # [20:43] <chaals> DG: leads to spamming of mutation observers
  362. # [20:43] <chaals> AR: Problem in the wild.
  363. # [20:44] * Joins: atotic (~uid101203@public.cloak)
  364. # [20:45] * Joins: alex (~alex@public.cloak)
  365. # [20:45] * Quits: weinig (~weinig@public.cloak) (weinig)
  366. # [20:45] <alex> hello
  367. # [20:45] <chaals> MJS: Can we have a model that allows upgrade, isn't non-deterministic, and doesn't suck?
  368. # [20:46] * dglazkov__ is now known as dglazkov
  369. # [20:46] <chaals> … (topic for after lunch)
  370. # [20:46] * Joins: atotic_ (~atotic@public.cloak)
  371. # [20:46] * Quits: annevk (~annevk@public.cloak) (Client closed connection)
  372. # [20:49] <chaals> [lunch]
  373. # [20:49] <chaals> rrsagent, draft minutes
  374. # [20:49] <RRSAgent> I have made the request to generate http://www.w3.org/2015/07/21-webapps-minutes.html chaals
  375. # [20:50] * Joins: plh (plehegar@public.cloak)
  376. # [20:50] <smaug> based on the notes, looks like no new magical great solutions for the issue.
  377. # [20:50] <smaug> yet
  378. # [20:50] * Quits: smaug (~chatzilla@public.cloak) ("Reconnecting…")
  379. # [20:50] * Joins: smaug (~chatzilla@public.cloak)
  380. # [20:52] * Quits: LJWatson (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
  381. # [20:52] <alex> Quick question, I have been on the webex for about an hour now to join the meeting today but the line was silent the entire time
  382. # [20:53] <alex> was that by design?
  383. # [20:53] <alex> are you proactively blocking folks from attending remotely?
  384. # [20:54] <alex> no biggie if so, just don't want to hang on the line any longer if that is the case
  385. # [20:57] <alex> /me waves hello
  386. # [20:57] * alex waves hello
  387. # [21:01] * Quits: jyasskin (~textual@public.cloak) ("My computer has gone to sleep. ZZZzzz…")
  388. # [21:09] * Quits: hgl (~hgl@public.cloak) (Ping timeout: 180 seconds)
  389. # [21:10] * Quits: chaals (~Adium@public.cloak) ("Leaving.")
  390. # [21:12] * @Yves rrsagent, draft minutes
  391. # [21:12] <RRSAgent> I have made the request to generate http://www.w3.org/2015/07/21-webapps-minutes.html Yves
  392. # [21:17] * Zakim excuses himself; his presence no longer seems to be needed
  393. # [21:17] * Parts: Zakim (zakim@public.cloak)
  394. # [21:19] * Joins: fjh (~fhirsch3@public.cloak)
  395. # [21:24] * Quits: alex (~alex@public.cloak) (Ping timeout: 180 seconds)
  396. # [21:26] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  397. # [21:26] * Joins: fjh (~fhirsch3@public.cloak)
  398. # [21:27] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  399. # [21:28] * Joins: hgl (~hgl@public.cloak)
  400. # [21:43] * Quits: atotic_ (~atotic@public.cloak) (atotic_)
  401. # [21:46] * Quits: Travis (~Travis@public.cloak) (Ping timeout: 180 seconds)
  402. # [21:55] * Joins: Lachy (~Lachy@public.cloak)
  403. # [21:57] * Joins: weinig (~weinig@public.cloak)
  404. # [21:58] * Joins: LJWatson (~chatzilla@public.cloak)
  405. # [22:02] * Joins: arronei (~arronei@public.cloak)
  406. # [22:05] * Joins: annevk (~annevk@public.cloak)
  407. # [22:06] * Joins: mjs (~mjs@public.cloak)
  408. # [22:06] * Joins: chaals (~Adium@public.cloak)
  409. # [22:06] <annevk> https://docs.google.com/document/d/1KSwKrTU2d0uJCf55tV-jur_0sYxCNMuM7Dl3vqb0bu4/edit?usp=sharing
  410. # [22:07] <chaals> -> https://docs.google.com/document/d/1KSwKrTU2d0uJCf55tV-jur_0sYxCNMuM7Dl3vqb0bu4/edit?usp=sharing continuation of the minutes, being taken by Domenic Cooney
  411. # [22:08] * Joins: rniwa (~textual@public.cloak)
  412. # [22:08] <chaals> Present+ Ryosuke
  413. # [22:08] <chaals> [Ryosuke joins, Alex is out]
  414. # [22:08] * chaals tries not to think "taken out"
  415. # [22:11] <chaals> [Alex has not been taken out, because he is back]
  416. # [22:13] * smaug wonders what is p1 in the gdocs. It isn't defined anywhere.
  417. # [22:14] <smaug> oh, etherpad
  418. # [22:19] * Joins: ojan (~sid5519@public.cloak)
  419. # [22:29] * Quits: robdodson (~uid27592@public.cloak) ("Connection closed for inactivity")
  420. # [22:29] * chaals says it is priority one. things to achieve (in case Smaug is not alone in wondering)
  421. # [22:33] * Joins: ebidel (~ebidel@public.cloak)
  422. # [22:33] * Joins: fjh (~fhirsch3@public.cloak)
  423. # [22:34] * Quits: ebidel (~ebidel@public.cloak) (Client closed connection)
  424. # [22:38] * Joins: ebidel (~ebidel@public.cloak)
  425. # [22:43] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  426. # [22:46] * Quits: sicking (~sicking@public.cloak) (sicking)
  427. # [22:49] * Quits: arronei (~arronei@public.cloak) ("Page closed")
  428. # [23:11] <slightlyoff> rumors of my death (etc. etc.)
  429. # [23:13] * Joins: chrisb (~chrisb@public.cloak)
  430. # [23:17] * Quits: weinig (~weinig@public.cloak) (weinig)
  431. # [23:22] * Joins: atotic_ (~atotic@public.cloak)
  432. # [23:27] * Joins: weinig (~weinig@public.cloak)
  433. # [23:28] * Quits: rniwa (~textual@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
  434. # [23:31] * Quits: LJWatson (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
  435. # [23:32] * Joins: sicking (~sicking@public.cloak)
  436. # [23:35] * Joins: LJWatson (~chatzilla@public.cloak)
  437. # [23:38] * Joins: dka (~dka@public.cloak)
  438. # [23:48] * Joins: rniwa (~textual@public.cloak)
  439. # [23:50] * Quits: LJWatson (~chatzilla@public.cloak) (Client closed connection)
  440. # [23:51] * Joins: alex (~alex@public.cloak)
  441. # [23:51] * Quits: alex (~alex@public.cloak) ("Page closed")
  442. # [23:52] <chaals> rrsagent, draft minutes
  443. # [23:52] <RRSAgent> I have made the request to generate http://www.w3.org/2015/07/21-webapps-minutes.html chaals
  444. # [23:53] * chaals changes topic to '#webapps f2f meeting - Web Components notes going in https://docs.google.com/document/d/1KSwKrTU2d0uJCf55tV-jur_0sYxCNMuM7Dl3vqb0bu4/edit?pli=1'
  445. # [23:54] * Joins: marcosc (~marcosc@public.cloak)
  446. # [23:55] <MikeSmith> RRSAgent, make logs public
  447. # [23:55] <RRSAgent> I have made the request, MikeSmith
  448. # [23:57] * Joins: fjh (~fhirsch3@public.cloak)
  449. # [23:57] * chaals curses timezones.
  450. # [23:58] <chaals> early minutes were in http://www.w3.org/2015/07/21-webapps-minutes.html (until the googlers started scribing)
  451. # [23:58] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
  452. # Session Close: Wed Jul 22 00:00:00 2015

Previous day, Next day

Think these logs are useful? Then please donate to show your gratitude (and keep them up, of course). Thanks! — Krijn