/irc-logs / w3c / #webapps / 2014-10-13 / end

Options:

  1. # Session Start: Mon Oct 13 00:00:00 2014
  2. # Session Ident: #webapps
  3. # [00:06] * Joins: Lachy (~Lachy@public.cloak)
  4. # [00:07] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
  5. # [00:08] * Quits: glenn (~gadams@public.cloak) (Ping timeout: 180 seconds)
  6. # [00:26] * Quits: Lachy (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  7. # [00:34] * Joins: Lachy (~Lachy@public.cloak)
  8. # [00:49] * Quits: Lachy (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  9. # [00:50] * Joins: Lachy (~Lachy@public.cloak)
  10. # [00:59] * Joins: glenn (~gadams@public.cloak)
  11. # [01:05] * Joins: panzana` (~panzana@public.cloak)
  12. # [01:13] * Joins: smaug (~chatzilla@public.cloak)
  13. # [02:11] * Joins: glenn_ (~gadams@public.cloak)
  14. # [02:16] * Quits: glenn (~gadams@public.cloak) (Ping timeout: 180 seconds)
  15. # [02:42] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
  16. # [04:52] * Disconnected
  17. # [05:24] * Attempting to rejoin channel #webapps
  18. # [05:24] * Rejoined channel #webapps
  19. # [05:24] * Topic is 'WebAppsWG; this channel is logged: http://krijnhoetmer.nl/irc-logs/webapps/'
  20. # [05:24] * Set by ArtB on Wed Jul 16 22:50:29
  21. # [05:24] * Joins: Lachy (~Lachy@public.cloak)
  22. # [05:24] * Joins: yoichio (~yoichio@public.cloak)
  23. # [05:24] * Joins: renoirb (renoirb@public.cloak)
  24. # [05:24] * Joins: logbot (~logbot@public.cloak)
  25. # [05:25] * Joins: terri (~terri@public.cloak)
  26. # [05:25] * Joins: ed (~ed@public.cloak)
  27. # [05:25] * Joins: Hixie (~ianh@public.cloak)
  28. # [05:25] * Joins: kentaromiura (~kentaromiura@public.cloak)
  29. # [05:25] * Joins: MikeSmith (~MikeSmith@public.cloak)
  30. # [05:26] * Joins: decadance (~decadance@public.cloak)
  31. # [05:26] * Joins: mkwst___ (~sid395@public.cloak)
  32. # [05:26] * Joins: stryx` (~stryx@public.cloak)
  33. # [05:26] * Joins: panzana` (~panzana@public.cloak)
  34. # [05:26] * Joins: kochi (~kochi@public.cloak)
  35. # [05:26] * Joins: mounir (~mounir@public.cloak)
  36. # [05:26] * Joins: gsnedders (~gsnedders@public.cloak)
  37. # [05:26] * Joins: FerasM__ (~sid28672@public.cloak)
  38. # [05:26] * Joins: hayato_ (~sid20728@public.cloak)
  39. # [05:26] * Joins: scheib (~sid4467@public.cloak)
  40. # [05:26] * Joins: krit (~sid15081@public.cloak)
  41. # [05:26] * Joins: astearns_ (~sid15080@public.cloak)
  42. # [05:26] * Joins: tobie (~sid5692@public.cloak)
  43. # [05:26] * Joins: timeless (~sid4015@public.cloak)
  44. # [05:26] * Joins: cwilso_ (~sid10206@public.cloak)
  45. # [05:27] * Joins: cabanier (~sid15093@public.cloak)
  46. # [05:27] * Joins: Domenic (~sid10976@public.cloak)
  47. # [05:27] * Joins: tyoshino_ (~sid19222@public.cloak)
  48. # [05:27] * Joins: slightlyoff (~sid1768@public.cloak)
  49. # [05:28] * Joins: jsbell (~sid6276@public.cloak)
  50. # [05:28] * Joins: dcooney__ (~sid20727@public.cloak)
  51. # [05:28] * Joins: pdr__ (~sid7901@public.cloak)
  52. # [05:28] * Joins: igrigorik (~sid16869@public.cloak)
  53. # [05:29] * Joins: kochi1 (~kochi@public.cloak)
  54. # [06:05] * Joins: sicking (~sicking@public.cloak)
  55. # [07:02] * Joins: glenn_ (~gadams@public.cloak)
  56. # [07:06] * Quits: glenn (~gadams@public.cloak) (Ping timeout: 180 seconds)
  57. # [07:42] * Joins: glenn (~gadams@public.cloak)
  58. # [07:48] * Quits: glenn_ (~gadams@public.cloak) (Ping timeout: 180 seconds)
  59. # [08:40] * Quits: Lachy (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  60. # [09:12] * Joins: Lachy (~Lachy@public.cloak)
  61. # [09:28] * Joins: darobin (rberjon@public.cloak)
  62. # [09:35] * Joins: glenn_ (~gadams@public.cloak)
  63. # [09:40] * Quits: glenn (~gadams@public.cloak) (Ping timeout: 180 seconds)
  64. # [09:50] * Quits: sicking (~sicking@public.cloak) (sicking)
  65. # [10:32] * Joins: Lachy_ (~Lachy@public.cloak)
  66. # [10:35] * Quits: Lachy (~Lachy@public.cloak) (Ping timeout: 180 seconds)
  67. # [10:36] * Joins: dom (dom@public.cloak)
  68. # [10:36] * Joins: Lachy (~Lachy@public.cloak)
  69. # [10:39] * Quits: Lachy_ (~Lachy@public.cloak) (Ping timeout: 180 seconds)
  70. # [10:41] * Joins: Lachy_ (~Lachy@public.cloak)
  71. # [10:44] * Quits: Lachy (~Lachy@public.cloak) (Ping timeout: 180 seconds)
  72. # [10:44] * Quits: Lachy_ (~Lachy@public.cloak) (Client closed connection)
  73. # [10:49] * Joins: Lachy (~Lachy@public.cloak)
  74. # [10:53] * Quits: Lachy (~Lachy@public.cloak) (Client closed connection)
  75. # [10:58] * Joins: Lachy (~Lachy@public.cloak)
  76. # [11:12] * Joins: Lachy_ (~Lachy@public.cloak)
  77. # [11:13] * Quits: Lachy (~Lachy@public.cloak) (Ping timeout: 180 seconds)
  78. # [11:46] * Joins: smaug (~chatzilla@public.cloak)
  79. # [11:56] * Quits: Lachy_ (~Lachy@public.cloak) (Ping timeout: 180 seconds)
  80. # [11:56] * Joins: Lachy (~Lachy@public.cloak)
  81. # [12:03] * Joins: Lachy_ (~Lachy@public.cloak)
  82. # [12:03] * Quits: Lachy (~Lachy@public.cloak) (Client closed connection)
  83. # [12:19] * Quits: Lachy_ (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  84. # [12:42] * Joins: Lachy (~Lachy@public.cloak)
  85. # [12:53] * Joins: Lachy_ (~Lachy@public.cloak)
  86. # [12:57] * Joins: Lachy__ (~Lachy@public.cloak)
  87. # [12:57] * Quits: Lachy_ (~Lachy@public.cloak) (Client closed connection)
  88. # [12:58] * Quits: Lachy (~Lachy@public.cloak) (Ping timeout: 180 seconds)
  89. # [13:28] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
  90. # [13:53] * Joins: Lachy (~Lachy@public.cloak)
  91. # [13:56] * Quits: Lachy__ (~Lachy@public.cloak) (Ping timeout: 180 seconds)
  92. # [14:09] * Joins: glenn (~gadams@public.cloak)
  93. # [14:14] * Quits: glenn_ (~gadams@public.cloak) (Ping timeout: 180 seconds)
  94. # [14:22] * Quits: Lachy (~Lachy@public.cloak) (Client closed connection)
  95. # [14:22] * Joins: Lachy (~Lachy@public.cloak)
  96. # [14:23] * Joins: Lachy_ (~Lachy@public.cloak)
  97. # [14:25] * Quits: Lachy (~Lachy@public.cloak) (Client closed connection)
  98. # [14:29] * Joins: glenn_ (~gadams@public.cloak)
  99. # [14:33] * Quits: glenn (~gadams@public.cloak) (Ping timeout: 180 seconds)
  100. # [14:38] * Joins: dka (~dka@public.cloak)
  101. # [14:53] * Joins: Lachy (~Lachy@public.cloak)
  102. # [14:53] * Quits: Lachy_ (~Lachy@public.cloak) (Client closed connection)
  103. # [14:54] * Quits: Lachy (~Lachy@public.cloak) (Client closed connection)
  104. # [14:54] * Joins: Lachy (~Lachy@public.cloak)
  105. # [14:55] * Joins: glenn (~gadams@public.cloak)
  106. # [14:59] * Joins: glenn__ (~gadams@public.cloak)
  107. # [15:00] * Quits: glenn_ (~gadams@public.cloak) (Ping timeout: 180 seconds)
  108. # [15:03] * Quits: glenn (~gadams@public.cloak) (Ping timeout: 180 seconds)
  109. # [15:10] * Joins: smaug (~chatzilla@public.cloak)
  110. # [15:15] * Joins: glenn (~gadams@public.cloak)
  111. # [15:17] * Joins: glenn_ (~gadams@public.cloak)
  112. # [15:19] * Quits: ed (~ed@public.cloak) ("ZNC - http://znc.sourceforge.net")
  113. # [15:20] * Quits: glenn__ (~gadams@public.cloak) (Ping timeout: 180 seconds)
  114. # [15:23] * Quits: glenn (~gadams@public.cloak) (Ping timeout: 180 seconds)
  115. # [15:26] * Joins: glenn (~gadams@public.cloak)
  116. # [15:30] * Quits: dka (~dka@public.cloak) (dka)
  117. # [15:30] * Quits: glenn_ (~gadams@public.cloak) (Ping timeout: 180 seconds)
  118. # [15:36] * Joins: lgombos (~gombos@public.cloak)
  119. # [15:38] * Joins: ed (~ed@public.cloak)
  120. # [15:43] * Joins: glenn_ (~gadams@public.cloak)
  121. # [15:44] * Quits: lgombos (~gombos@public.cloak) (Client closed connection)
  122. # [15:46] * Quits: glenn (~gadams@public.cloak) (Ping timeout: 180 seconds)
  123. # [15:57] * Joins: lgombos (~gombos@public.cloak)
  124. # [16:04] * Joins: glenn (~gadams@public.cloak)
  125. # [16:07] * Joins: glenn__ (~gadams@public.cloak)
  126. # [16:09] * Quits: glenn_ (~gadams@public.cloak) (Ping timeout: 180 seconds)
  127. # [16:09] * Joins: glenn_ (~gadams@public.cloak)
  128. # [16:11] * Joins: glenn___ (~gadams@public.cloak)
  129. # [16:11] * Quits: glenn (~gadams@public.cloak) (Ping timeout: 180 seconds)
  130. # [16:15] * Quits: glenn__ (~gadams@public.cloak) (Ping timeout: 180 seconds)
  131. # [16:17] * Quits: glenn_ (~gadams@public.cloak) (Ping timeout: 180 seconds)
  132. # [16:29] * Quits: Lachy (~Lachy@public.cloak) (Ping timeout: 180 seconds)
  133. # [16:31] * Joins: Lachy (~Lachy@public.cloak)
  134. # [16:44] * Joins: lgombos_ (~gombos@public.cloak)
  135. # [16:44] * Quits: lgombos (~gombos@public.cloak) (Client closed connection)
  136. # [16:45] * Joins: lgombos (~gombos@public.cloak)
  137. # [16:45] * Quits: lgombos_ (~gombos@public.cloak) (Client closed connection)
  138. # [17:50] * Quits: Lachy (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  139. # [17:59] * glenn___ is now known as glenn
  140. # [18:05] * Quits: dom (dom@public.cloak) ("")
  141. # [18:09] * Joins: sicking (~sicking@public.cloak)
  142. # [18:20] * Quits: sicking (~sicking@public.cloak) (sicking)
  143. # [18:30] * Quits: darobin (rberjon@public.cloak) (Client closed connection)
  144. # [18:47] * Joins: shepazu (schepers@public.cloak)
  145. # [19:36] * Joins: jsbell_ (~jsbell@public.cloak)
  146. # [19:36] * Joins: sicking (~sicking@public.cloak)
  147. # [19:38] * Joins: lgombos_ (~gombos@public.cloak)
  148. # [19:38] * Quits: lgombos (~gombos@public.cloak) (Client closed connection)
  149. # [19:39] * Joins: lgombos__ (~gombos@public.cloak)
  150. # [19:39] * Quits: lgombos_ (~gombos@public.cloak) (Client closed connection)
  151. # [19:42] * Joins: lgombos (~gombos@public.cloak)
  152. # [19:42] * Quits: lgombos__ (~gombos@public.cloak) (Client closed connection)
  153. # [19:53] * Joins: hober (~ted@public.cloak)
  154. # [20:02] * Quits: sicking (~sicking@public.cloak) (sicking)
  155. # [20:06] * Joins: sicking (~sicking@public.cloak)
  156. # [20:46] * Quits: sicking (~sicking@public.cloak) (sicking)
  157. # [20:55] * Joins: chaals (~Adium@public.cloak)
  158. # [21:06] * Joins: darobin (rberjon@public.cloak)
  159. # [21:24] * Joins: sicking (~sicking@public.cloak)
  160. # [22:24] * Joins: lgombos_ (~gombos@public.cloak)
  161. # [22:24] * Quits: lgombos (~gombos@public.cloak) (Client closed connection)
  162. # [22:34] * Joins: Lachy (~Lachy@public.cloak)
  163. # [22:46] * Quits: Lachy (~Lachy@public.cloak) ("My MacBook Pro has gone to sleep. ZZZzzz…")
  164. # [22:52] <sicking> Domenic: ping
  165. # [22:53] <Domenic> sicking: pong
  166. # [22:54] <sicking> Domenic: I have an API design pattern question. Have you heard of the "Presenation API"?
  167. # [22:54] <sicking> aka "TV API"
  168. # [22:54] <Domenic> sicking: yeah
  169. # [22:54] <Domenic> "second screen API"
  170. # [22:54] <sicking> yeah
  171. # [22:55] <sicking> The question at hand is: Should the startSession function return a Promise<PresentationSession> or a PresentationSession
  172. # [22:55] <sicking> we could synchronously return a PresentationSession which is in a "connecting" state
  173. # [22:56] <sicking> and which then transitions to "disconnected" state if we fail to establish the connection
  174. # [22:56] <sicking> either way PresentationSession will be transitioning between various states
  175. # [22:56] <sicking> if you for example lose network connection
  176. # [22:57] <sicking> there's concern that if we return a promise, that there's essentially two "state systems"
  177. # [22:57] <sicking> one for the initial state transition of having an intial connection
  178. # [22:57] <Domenic> Good question. No strong feelings, but for streams at least (which similarly have lots of transitioning) we let it start out in a waiting state and give a promise-returning .wait() method to tell when the transition between states completes
  179. # [22:58] <sicking> if we had an API for give-me-a-stream-for-a-http-url
  180. # [22:58] <sicking> would that return Promise<Stream> or Stream?
  181. # [22:58] <Domenic> well... it would return a Promise<Stream>, because the promise can tell you when the headers are downloaded
  182. # [22:59] <Domenic> however if we had a give-me-a-stream-for-a-TCP-socket, that would return a Stream
  183. # [22:59] <sicking> in that case you'd synchronously return a Stream, even before we've hit the network?
  184. # [23:00] <Domenic> yeah I think I would
  185. # [23:00] <Domenic> in node that's what they do
  186. # [23:02] <sicking> I feel like there's some sanity to having a promise which is resolved once there's a reasonable expectation that the rest of the API can succeed
  187. # [23:03] <Domenic> yeah that is kind of the motivating idea behind the HTTP request case
  188. # [23:03] <sicking> Another example is the getSandboxedFileSystem
  189. # [23:03] <Domenic> there it's grounded in the promise being for the request body though
  190. # [23:03] <Domenic> in contrast for e.g. node there's fs.createReadStream() and fs.createWriteStream()
  191. # [23:03] <sicking> in the current (very rough) draft that returns a Promise<Directory>. But since all the funcitons on Directory is async, we could return a Directory instance even though we're still displaying a permission UI to the user
  192. # [23:03] <Domenic> if the filename passed for createReadStream doesn't exist (or createWriteStream if you turn off creating new files) then it will just create a stream that immediately transitions to the errored state
  193. # [23:04] <Domenic> interesting case
  194. # [23:05] <sicking> In that case it felt nice to have a catch-all for the permission part failing
  195. # [23:05] <sicking> i.e. not having to worry that each .openForRead or .createFile call could fail due to the user denying permission
  196. # [23:06] <sicking> though technically they all could still due to out-of-disk space
  197. # [23:08] <sicking> another quirk here is that PresentationSession uses DOM Events to signal state transitions. I feel like I'd be more inclined to *not* use Promise<PresentationSession> if we used some form of ES "observable" instead
  198. # [23:09] * Quits: panzana` (~panzana@public.cloak) ("Lost terminal")
  199. # [23:10] <Domenic> by observable do you mean "async iterable" or "observable property"
  200. # [23:10] * Joins: panzana` (~panzana@public.cloak)
  201. # [23:11] <sicking> Either really
  202. # [23:11] <sicking> I'm sad that Object.observe by default observes all properties. That makes me more reluctant to rely on it for DOM interfaces
  203. # [23:12] * Joins: Lachy (~Lachy@public.cloak)
  204. # [23:22] <Domenic> So is wycats
  205. # [23:22] <Domenic> This can be fixed
  206. # [23:23] <sicking> Domenic: does the use of DOM Events make you want to use Promise<PresentationSession> for the initial state transition more? Or do you still feel like it's ok either way?
  207. # [23:23] <sicking> Domenic: let me know how I can help with that
  208. # [23:23] <Domenic> sicking: what DOM events?
  209. # [23:23] <Domenic> sicking: basically say that Mozilla would prefer to implement a version of object.observe that allows restriction to certain properties
  210. # [23:24] <sicking> so PresentationSession is currently defined to use DOM Events to indicate transitions between its various states (disconnected, reconnected). So if we were to synchronously return a PresentationSession, that would mean that that initial state transition would be done with a DOM Event.
  211. # [23:25] <sicking> Domenic: on es-discuss?
  212. # [23:30] <Domenic> sicking: I guess that makes me prefer a Promise<PresentationSession>, yeah, just so I can compose it more with other promise-based things. Otherwise I'd probably wrap up the initial creation and transition into a promise in user code, lol
  213. # [23:31] <sicking> Domenic: ok
  214. # [23:31] <Domenic> sicking: es-discuss would probably work, maybe cc Raf directly. As long as you can back it up, with "we have engineers ready to implement Object.observe in our JS engine, but before they do we want to fix the spec." Because right now it's basically a Chrome-only API which is pretty silly; Chrome would love more people to implement it.
  215. # [23:32] <sicking> Sadly I don't have JS-eng engineers at my command these days.
  216. # [23:36] <smaug> heh
  217. # [23:37] * smaug is not at all Object.observe with DOM interfaces makes any sense
  218. # [23:37] <smaug> +sure
  219. # [23:57] * Joins: lgombos (~gombos@public.cloak)
  220. # [23:57] * Quits: lgombos_ (~gombos@public.cloak) (Client closed connection)
  221. # Session Close: Tue Oct 14 00:00:00 2014

The end :)