16:07:30 RRSAgent has joined #webapps 16:07:30 logging to http://www.w3.org/2011/11/01-webapps-irc 16:07:31 SungOk_You has joined #webapps 16:07:34 TOPIC: Agenda (bashing) 16:07:44 we look at stream and file API 16:07:48 jihye has joined #webapps 16:07:51 jcantera has joined #webapps 16:08:02 Need to look at what we do with DOM 3 API at 10am 16:08:25 People who are important are Jakob and Doug, but there is time conflict 16:08:28 Travis has joined #webapps 16:08:51 So we will do it at 11:30 (DOM3 Events) 16:08:58 Travis has left #webapps 16:09:05 Testing we also need to discuss 16:09:27 We need Jonas for the File API 16:09:34 pererik has joined #webapps 16:09:40 stakagi has joined #webapps 16:10:00 magnus has joined #webapps 16:10:02 Afternoon: index DB and XBL2 and component model, in the afternoon 16:10:16 1-3pm 16:10:22 richt has joined #webapps 16:10:44 miketaylr has joined #webapps 16:10:54 Bryan wanted to add an item: Event source extension for connectionless push 16:10:59 miketaylr has joined #webapps 16:11:00 sicking has joined #webapps 16:11:19 spoussa has joined #webapps 16:11:23 If we get through stuff quickly, we can start talking about API design 16:11:24 dcooney_ has joined #webapps 16:11:38 Stream and file API, we can start off with that 16:11:48 TOPIC: Stream and file API 16:11:52 Soonho has joined #webapps 16:11:58 Scribe: Marcosc 16:12:05 shepazu has joined #webapps 16:12:12 present+ Soonho_Lee 16:12:30 present+ magnus 16:12:32 present+ krisk 16:12:37 present+ spoussa 16:12:43 EE: I want to discuss file saver 16:12:44 present+ Jacob 16:12:49 DavidKim has joined #webapps 16:12:53 present+ Israel 16:13:07 Will has joined #webapps 16:13:45 howard has joined #webapps 16:13:52 Present+ SungOk_You 16:13:53 Not all the use cases are covered by download attribute on the a element. 16:14:30 ee: we had talked about looking at saving a blob VS saving a URL (the resource) 16:14:36 sangwhan has joined #webapps 16:14:38 ee: is there interest in implementing this? 16:14:45 JS: yes 16:14:57 CMN: nods in agreement 16:15:36 alexmog has joined #webapps 16:15:36 davida has joined #webapps 16:16:38 AB: We wanted to replicate the same expirience you get form downloading a link. We have implemented two APIs that get sent a blob and the browser displays a dialog and simulates downloading a file (but using a blob). The idea is to make the user experience is the same. 16:16:46 JS: how is that different from file saver 16:16:57 AB: you don't get the progress events. 16:17:04 noriya has joined #webapps 16:17:14 euhrhane has joined #webapps 16:17:19 tlr has joined #webapps 16:17:22 AB: going to paste in a URL 16:17:26 http://pages.adrianba.net/w3c/FilesAndStreams.pdf 16:17:26 Kihong_Kwon has joined #webapps 16:17:31 ihilerio has joined #webapps 16:17:54 bryan has joined #webapps 16:18:04 rniwa has joined #webapps 16:18:10 present +Bryan_Sullivan 16:18:17 If you look at the second page… replicating content disposition: which shows the save dialog 16:18:32 Travis_MSFT has joined #webapps 16:18:33 CMN: is there any indicator when the download is done. 16:18:48 AB: no. it works like the current save dialog that browsers use 16:19:46 Wonsuk has joined #webapps 16:19:48 jmarting has joined #webapps 16:19:54 a1zu has joined #webapps 16:19:59 CMN: We have the File API right now. And I think that is what we want before a full filesystem API. Our use cases are "real file system access": create directories, get at files, so the user can share files with Apps. 16:20:20 AB: we are not opposed to such an API. But they are not a high priority for us (MS) right now. 16:20:24 JonathanJ has joined #webapps 16:20:27 [berjob waltzes in already...] 16:20:30 Present+ Wonsuk_Lee 16:20:32 jcdufourd has joined #webapps 16:20:50 AB: this is something we did instead of file saver… the file system API is further down the road. 16:20:51 mixedpuppy has joined #webapps 16:21:09 EE: how is this different from the current API? 16:21:36 Present+ David_Yushin_Kim 16:21:54 Present+ Kihong_Kwon 16:21:59 AB: we don't support the download attribute. We don't to support navigation to a blob URL. So if the blog points to a URL page, we don't want to display that page. we are concerned about scripts running in the page contained by the page. 16:22:05 Linuz has joined #webapps 16:22:05 tcelik has joined #webapps 16:22:11 RB: could you not always download it? just a suggestion? 16:22:16 AB: maybe :) 16:22:43 Present+ Jesus_Martin 16:23:04 EE: not sure what Chrome does right now. We might be displaying it in an iframe. But we are not sure about the origin right now and what privileges it has 16:23:18 darobin has joined #webapps 16:23:35 AB: for use, we have abstract protocol handler… 16:23:48 s/EE:/EU:/ 16:23:55 s/EE:/EU:/ 16:24:17 s/EE:/EU:/ 16:24:19 s/EE:/EU:/ 16:24:23 s/EE:/EU:/ 16:24:46 EU: It sounds like we have 3 different things that overlap. 16:25:01 Present+hao_wang 16:25:21 JS: I'm very interested in supporting the use cases, but 3 different ways is not good. I would like to find a way to avoid having 3 different APIs 16:25:35 JS: file saver could do everything you want 16:25:46 EU: it doesnt have a clean way to allow the user to open the file 16:25:58 JS: but it is fully API driven 16:26:35 JS: it would be nice to find a single way. So it would be nice to figure out what the requirements are consolidate them 16:26:51 AB: agree… we don't want to implement multiple API 16:27:18 CMN: its clear that we all want to support the use case…. and we don't want to tell devs how to use multiple APIs 16:27:27 [agreement] 16:27:48 AB: Can we talk about file API first 16:27:58 before moving on to stream 16:28:42 In the first page of the first page: readAsBinaryString… is there a strong use case for it? is that for legacy reasons? 16:28:51 JS: It is. But it's ok to drop it 16:28:59 AB: We would like to see it removed 16:29:07 JS: it's more legacy, so I'm ok with dropping it 16:29:09 yu1 has joined #webapps 16:29:41 MC: Second question: do we really need the restrictions on the URL? 16:29:48 JS: I have not looked at the URL part 16:30:14 Arun has been working on it. But he would probably be interested in discussing it further 16:30:32 Eliot has joined #webapps 16:30:53 RRSAgent, this meeting spans midnight 16:30:57 cyril has joined #webapps 16:31:53 AB: the third thing is a suggestion: a really common pattern is to have an URL that represents something (e.g., an image). So one of the things that we have implemented is boolean flag, that creates a one time URL. The first time it gets dereferenced, it loads and it goes away 16:32:49 AB: final question, I'm wondering if it's ever possible to see the protocol version that is dereferenced in from the blob URL 16:32:51 James has joined #webapps 16:32:51 ? 16:33:09 AB: we proposed it's not necessary 16:33:22 JS: agree, but Arun should have a look 16:33:27 skim_ has joined #webapps 16:33:56 JS: another proposal is to drop BlobBuilder in favour of a contructor 16:34:04 http://html5labs.com/streamsapi/ 16:34:10 TOPIC: stream API 16:34:32 sangwhan has joined #webapps 16:34:42 when we started working on the blob API, a req was to have a blob whose size was unknown (a steam). 16:35:01 MikeSmith has joined #webapps 16:35:53 AB: feedback we got was don't make it blob, make it something else… so it's how we ended up with at stream… so we have a Stream Reader, which allows you to covert to a blob. We make the stream available at ready state 3, instead of 4. It allows people to view media before the whole thing finishes 16:36:17 youenn has joined #webapps 16:36:42 chsiao has joined #webapps 16:37:00 E.g. in a mail app, you can start viewing stuff at readystate 3, and start showing it without waiting for the end… and start processing data as it downloads … use chuck upload as well 16:37:15 CMN: we have similar use cases 16:37:23 JS: so can you create streams? 16:37:40 AB: yes, we have a stream builder. 16:37:58 JS: it should interesting 16:38:52 RRSAgent, make minutes 16:38:52 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html MikeSmith 16:38:59 JS: we had a contributor who did something similar, but what he did was as it progresses, but they grow incrementally until you get the blob that has the whole file… the blobs have a fixed size, so it just keeps growing… you always get unique blobs. 16:39:07 RRSAgent, make logs public 16:39:07 sejinpark has joined #webapps 16:39:42 EU: AB's proposal it sounds interesting to me 16:39:51 dino has joined #webapps 16:39:57 cyril_ has joined #webapps 16:40:13 EU: is we have a stream object that we can convert to a blob would be good, so we can hand it to file writter 16:40:27 s/writter/writer 16:40:34 TOPIC: Testing 16:40:50 ChrisWilson has joined #webapps 16:41:05 http://lists.w3.org/Archives/Public/public-webapps/2011AprJun/0365.html 16:41:09 [not necessarily convert to blob--possibly we'd just pass the stream to the FileWriter. 16:41:11 ] 16:41:21 wilhelm has joined #webapps 16:41:43 KK: we need a more consistent way to do tests… and we don't have an approval process 16:42:48 KK: my experience has been that when people start looking at tests they start finding issues. An approval process might help. 16:42:59 gopal has joined #webapps 16:43:22 nvbalaji has joined #webapps 16:43:26 MC: It is difficult to approve tests where we auto-generate a ton of them. You can produce lots from WebIDL, and it is time-consuming to check each one. 16:43:37 ... might be a good idea to look at a test generator, rather than the test. 16:44:07 KK: the tests I have seen have not been autogenerated. 16:44:25 MoZ has joined #webapps 16:44:42 KK: maybe we can create task force, somewhere more focused to discuss testing 16:44:52 Present+ Jonathan_Jeon 16:44:59 CMN: not sure how we would do this 16:45:29 CMN: our experience is that people who make tests are usually not spec people 16:46:01 Wilhelm … introduces himself 16:46:35 q+ 16:48:15 wilhelm: we had a meeting last thursday about testing… we need to make the tests simple, it would be good to have a standard…. we propose using testharnes.js (HTML5 WG is using it). have a look at test.w3.org. There are lots of tests there that use the test harness, so everyone can see how its done. We need someone to nag browser makers to get tests so we don't duplicate work. 16:48:56 CMN: So, do we need a sub group? wilhelm, how should we collaborate between Webapps and the Testing and Tools group. 16:49:17 http://w3c-test.org/ 16:49:46 wilhelm: please contact us. For visual things, use ref-tests from the CSS working group. We are happy to collaborate and provide guidance. 16:50:03 CMN: but which group should we do it in? 16:50:26 http://lists.w3.org/Archives/Public/public-webapps-testsuite/2011Oct/ 16:50:34 jG: there is already a mailing list. public-webapps-test-suite ? 16:50:35 http://lists.w3.org/Archives/Public/public-webapps-testsuite/ 16:50:48 wilhelm: lets figure out what tests there are already 16:51:10 wilhelm: then we can see what tests are available 16:51:11 ack ch 16:52:06 James has joined #webapps 16:52:32 KK: it think getting a good rhythm going… want to try something a little different. If we just do the list, that is ok. But we need some more active ways to do things… getting people to talk more. 16:53:52 JS: some feedback we had a while ago, it was harder to write tests than necessary. Because of the infrastructure, it made tests hard to write tests. W3C tests required more boilerplate than at Moz. 16:54:21 JS: at mozilla, we end up doing it our own way to because its easier and faster 16:54:41 JG: yes, there is a bit more work involved with the W3C tests. 16:54:59 +q 16:55:04 tlr has joined #webapps 16:55:06 Rossen has joined #webapps 16:55:11 q+ 16:55:11 +q marcos 16:55:17 q+ marcos 16:55:23 q+ krisk 16:55:33 JS: the number of tests you get is affected by how easy to write the tests 16:55:49 jcdufourd_ has joined #webapps 16:55:49 JG: I've had a different experience 16:57:42 CM: How does HTML test group work cmpared to not having one? 16:57:45 JG: Well... 16:57:49 KK: Yes 16:58:20 MC: having tests be very easily accessible with an interface is really helpful - especially when linked to the spec. 16:59:40 davidb has joined #webapps 16:59:49 HTML started a taskforce two years ago 17:00:02 Before that their was no html5 tests 17:00:08 skim has joined #webapps 17:00:08 CMN: my experience is the same similar to JG and JS… when you pay people, you get people making good tests. But also making them easier to write for volunteers, also helps. As KK suggested, we need review. 17:00:25 CMN: it seems like it's an action on the chair 17:00:31 today we have a large number of tests across a number of features that are implemented in browsers today 17:01:23 wilhelm: writing a good test suite is as hard writing a spec. We should have a dedicated person to write a test suite (equal to the editor). 17:02:03 CMN: how many person think there should be a dedicated testing person for a spec? 17:02:18 [plenty of agreement] 17:03:21 MC: we could make it a requirement that no spec start without also having dedicated tester 17:03:40 CM: not every org has dedicated spec people. 17:04:10 MC: It is fundamental to have tests, so you can't seperate without being able to get a test suite. 17:04:30 lgombos_ has joined #webapps 17:04:43 JG: this person does not need to write the tests… the person would have the responsibility to source the tests. 17:05:10 jrossi2 has joined #webapps 17:05:22 JG: it does not mean that only one person would write all the tests (if any) 17:06:08 wilhelm: if you have 15 specs, you can break up the task amongst multiple people 17:06:30 CM: does it have to be a different person than the editor? 17:06:51 ss has joined #webapps 17:07:12 ryosuke 17:07:23 RN: when do you need to involve a testing person? 17:08:15 … discussion… identifying them from the start 17:09:03 DS: that has traditionally been the role of the editor 17:09:47 RN: What's the diffrence? 17:10:00 MC: It can alleviate the load of the editor 17:10:23 dino has left #webapps 17:10:32 ... we need to discuss what to do when you generate tests and then the spec changes - how do you avoid starting too early or too late 17:11:41 RN: but we still not clear when we should have tests 17:12:17 DS: for DOM 3, I've requested that people contribute tests… but didn't get much back 17:12:25 wma_ has joined #webapps 17:12:35 RRSAgent: draft minutes 17:12:35 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html wma_ 17:12:42 DS: I would like to have a req that before a spec progresses to CR, it should have a test suite 17:12:47 morrita has joined #webapps 17:13:04 CMN: it seems reasonable as a first step to appoint someone for testing. 17:13:11 Present+ Josh_Soref 17:13:41 RESOLUTION: We will insist that when work on a new spec, a person be appointed to handle testing 17:14:46 nwidell has joined #webapps 17:14:49 KK: as DS said, we should have something in the process so specs can't move to CR without a test suite 17:15:17 youenn_ has joined #webapps 17:15:36 DS: part of LC would benefit from a test suite. 17:15:40 hoashi has joined #webapps 17:15:52 http://www.w3.org/TR/test-methodology/ 17:16:48 ChrisWilson has joined #webapps 17:17:19 hayato has joined #webapps 17:17:44 Rossen has joined #webapps 17:17:46 MoZ has joined #webapps 17:18:23 fukuno has joined #webapps 17:19:00 CMN: problem is that is expensive to produce tests… so, we don't want a process heavy way of making tests… 17:19:12 s/that is/that it is/ 17:19:20 JG: Tests really only come out when people are implementing stuff 17:19:58 JG: implementers who want to have a bug free implementation are going to produce tests 17:20:19 tantek has joined #webapps 17:20:37 RRSAgent, make minutes 17:20:37 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html ArtB 17:20:49 CMN: another group to get test from is non-browser vendors (e.g., content providers)/.… how do we talk to those people? 17:21:23 MOIBA has joined #webapps 17:21:45 JG and JS say there are a few examples of people who have done it… 17:22:08 q+ 17:22:30 q? 17:22:34 mixedpuppy has joined #webapps 17:23:07 Zakim has joined #webapps 17:23:15 q? 17:23:24 q+ bryan 17:23:51 hoashi has joined #webapps 17:25:14 KK: happy help to set up guidelines 17:25:36 DS: if we have a good way to contribute tests, that would help 17:25:41 WebApps' Test Submission process: http://www.w3.org/2008/webapps/wiki/Submission 17:26:09 ack 17:26:19 s/ack// 17:26:28 ack bryan 17:26:42 RRSAgent: draft minutes 17:26:42 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html Josh_Soref 17:27:04 s/RRSAgent: draft minutes// 17:27:10 s/RRSAgent: draft minutes// 17:27:25 RRSAgent, draft minutes 17:27:25 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html Josh_Soref 17:27:36 BS: one of the best ways to learn is by doing. We need really good guidelines, so test examples are good. Looking to service providers and universities to help use build tests would be good… it benefits lots the whole community. 17:27:48 CMN: the public tests can vary in quality 17:28:39 Israel: when is the right point to do testing? 17:29:32 JS: I don't care what the tests are and what they are targeting, as long as we get lots of good tests 17:29:40 spoussa has joined #webapps 17:30:18 Present+ Robin, Cameron, JamesG, Dom, Jonas, Doug, Chaals, Kris, BrianR, Magnus, ArtB, MikeSmith, EricU, LaszloG, Sakkari, WayneCarr 17:30:40 Kihong_Kwon has joined #webapps 17:30:50 q+ to say you're either implementing or using someone's implementation or planning to use it 17:31:05 RRSAgent, make minutes 17:31:05 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html ArtB 17:31:39 JG: it's never too early 17:31:41 Meeting: WebApps f2f meeting 17:31:42 MC: I agree 17:31:55 Agenda: http://www.w3.org/2008/webapps/wiki/TPAC2011#Agenda_Tuesday.2C_November_1 17:32:08 RRSAgent, make minutes 17:32:08 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html ArtB 17:32:35 DS: who is going to enforce this policy? 17:33:06 CMN: good will :) 17:33:25 CMN: there is no formal policy that we can enforce 17:33:29 ack me 17:33:29 Josh_Soref, you wanted to say you're either implementing or using someone's implementation or planning to use it 17:34:07 JS: hopefully you are implementing this feature… people have a vested interest in the spec and hence produce tests 17:34:09 Chair: Chaals, Art 17:35:21 ACTION: Art and Charles to make a proposal about how to appoint a person to be assigned for testing for a spec. 17:35:21 Created ACTION-637 - And Charles to make a proposal about how to appoint a person to be assigned for testing for a spec. [on Arthur Barstow - due 2011-11-08]. 17:37:00 [BREAK] 17:37:11 howard has left #webapps 17:37:16 ' 17:39:37 hayato has joined #webapps 17:41:10 present+ Dowan 17:44:15 lgombos has joined #webapps 17:47:50 abarsto has joined #webapps 17:47:56 tlr has joined #webapps 17:48:37 JonathanJ has left #webapps 17:48:46 JonathanJ has joined #webapps 17:49:21 pererik has joined #webapps 17:51:11 richt has joined #webapps 17:53:50 DavidKim has joined #webapps 17:53:55 RRSAgent, make minutes 17:53:55 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html ArtB 17:57:44 morrita has joined #webapps 17:59:33 mixedpuppy has joined #webapps 18:00:06 howard has joined #webapps 18:00:47 a12u has joined #webapps 18:05:20 spoussa has joined #webapps 18:07:42 Kai has joined #webapps 18:08:24 krisk has joined #webapps 18:10:13 morrita has joined #webapps 18:10:20 Topic: API design 18:10:45 hayato has joined #webapps 18:10:58 khoashi has joined #webapps 18:11:02 Linuz has joined #webapps 18:11:07 jihye has joined #webapps 18:11:25 MC: we're getting frustrated trying to write APIs because a lot of stuff coming out we don't necessrily understand the design patterns - or when WAC brings in an API it doesn't look like a Web API and they lose out on uptake. 18:11:46 ... so we ae trying to reduce the "not invented here" thing by being able to get in APIs that match what we think of. 18:11:51 Kihong_Kwon has joined #webapps 18:12:17 ... so we are lookig to create general guidance (rather than formal requirements) - what WebIDL gives you, how do you describe throwing an excepetion and what does that mean, etc. 18:12:43 ... It's a friendly list for editors to find information that is helpful. 18:13:18 ... The ideas have all been under development, and effectively black magic in people's heads that wasn't available to others. 18:13:31 youenn has joined #webapps 18:13:41 WayneCarr has joined #webapps 18:13:52 ... Would also encourage people working on frameworks to help us work out how we can make things more easily. 18:14:09 nwidell has joined #webapps 18:14:53 RB: To avoid making this exess make-work, when you understand something about a design pattern you haven't thought of, just drop in a rough email. Don't bother trying to get it right and perfect, dump the half idea and let Marcos and me figure out how to explain. 18:15:08 q+ 18:15:15 present+ WayneCarr 18:15:16 [throwing exceptions, defining events, how to use dictionaries, etc] 18:16:00 BS: Would like to have had a discussion not just about JS/DOM APIs, but also other things happening here like things on abstract resources handled by the browser. 18:16:14 ... We see a number of patterns - trying to understand the rationales for that is important. 18:16:17 Wonsuk has joined #webapps 18:16:42 i/Topic:/Scribe: Chaals/ 18:16:47 Here is the link to the draft presentation I had prepared for the TPAC discussion on this topic. It captures some of the questions we had and the objectives for a discussion: http://bkaj.net/w3c/TPAC-2011-API-Design-Patterns.html 18:16:57 stakagi has joined #webapps 18:16:58 ... why is video a tag, why is event-source an API, etc. 18:17:23 AR: Trying to understand if the intent is to capture the way things are done, or what we think would be an ideal design pattern. 18:17:32 MC: We are trying to figure it out too... 18:17:37 euhrhane has joined #webapps 18:17:37 q+ 18:17:46 ack br 18:18:19 rniwa_ has joined #webapps 18:18:40 RB: A large element is a cookbook. Editors do something, someone says it is a bad way, they don't wnderstand why and just want to make something that works. Goal is to make editing easier 18:20:06 davida has joined #webapps 18:20:13 CMN: I'd find the historical explanations useful 18:20:14 nwidell has joined #webapps 18:20:31 ... What's the future of this? A note, what? 18:20:42 Travis_MSFT has joined #webapps 18:20:42 AR: If we write down what people do now we perpetuate it and that is bad. 18:20:54 MC: We propose this as a note - a useful thing for the community. 18:21:05 ... we are trying to help consistency. 18:21:10 AR: Consistency is good. 18:21:37 CM: Helping editors construct prose and interfaces to match what other people are doing is good. I agree also that it is good to document the rationale. 18:21:54 ... it isn't just a matter of people agreeing, because there are real disagreements right now. 18:22:15 MC: Yes, we don't just want to codify what people are doing now, because we don't want to describe how to do things wrong... 18:22:29 AR: The point isn't to make a normative requirement set, right? 18:22:34 aizu has joined #webapps 18:22:45 CM: We don't have a general place to do this at the moment... 18:22:55 RB: THere are a lot of people who are here?? 18:23:04 hoashi has joined #webapps 18:23:26 ??: Is this less about general API design and more about particular things that you want to do - events or callback? what is a webby error? ... 18:23:37 RB: Yep. 18:23:41 euhrhane has joined #webapps 18:24:05 [examples of different approaches] 18:24:21 ... Not sure a document can recommend aright way, but might describe a possible set of ways to do so. 18:24:31 MC: Ca Can show examples, and why they did it. 18:25:12 darin has joined #webapps 18:25:16 JS: Think this is a great idea. I'd like to know e.g. how you should write a callback-based approach and why. I'd love to have more input from people who write JS. 18:25:38 ... in particular, from more than two people who do the same thing already. Take into account beginners, who are not here. 18:25:56 ... most important peopl to get input from are not in the room 18:26:02 s/??:/Travis_MSFT:/ 18:26:03 RB: E.g. JQuery standards group 18:26:10 JS: Right. We should talk to those guys. 18:26:31 AR: I can tell you what to do ;) 18:27:16 Suresh: Good examples are important. We should do this across different WGs. ANd there are different groups that have very fdifferent patterns, e.g. geolocation. 18:27:38 RB: Yes. People outside this WG don't know or care about working group boundaries. 18:27:49 Not suresh. I am Balaji (nvbalaji) 18:28:04 :-) 18:28:21 s/Suresh/Balaji/ 18:29:14 mmielke has joined #webapps 18:29:18 s/Balaji/nvbalaji 18:29:26 CMN: I think the TAG has a role here - at least in the structure. I don't think we want to palm this off to the TAG, but I think they have a role as custodians of these large questions. 18:30:11 jmarting has joined #webapps 18:30:17 NM: I don't think TAG has "the expertise" here, and we don't want to repeat other people's work. We don't necessarily have an opinion here, but we are intersted in how these questions are resolved in different places. 18:30:48 ... THere are things that are deep architectural things. When you have APIs, over time, you want to evolve things - and you can't install a flag day on the web. 18:31:28 MC: You were involved in the "architecture of the Web document" - are there relevant lessons from communicating, the experience of doing it, etc? 18:32:59 NM: Web arch is different to architecture documents I have seen. Architecture documents in IBM answered specific questions to say "did you do this right or not?" Web Arch is more informal - and is a retrospective document, not prescriptive. Tim wrote design notes for the web, which found their way into Web Arch (specific "thoughts") 18:33:07 jrossi2 has joined #webapps 18:33:18 ... I think good architecture can be related to use cases. 18:33:59 ... Invent good stuff, think about the use cases, think about architecture. but the web arch document is very backwards-focused - what was important in a running system. 18:35:06 DS: +1 to this - it costs a lot of time and frustration for people to do APIs wrong without knowing where they are going. We shouldn't reinforce anti-patterns, but ahving a document that says why they are anti-patterns and what other patterns could be used is useful. 18:35:31 Rossen has joined #webapps 18:35:54 BS: What I get out of this is "yeah, we need this discussion..." 18:36:29 [kibbitzing on list choice] 18:36:54 mollydotcom has joined #webapps 18:37:12 Kihong_Kwon has joined #webapps 18:37:45 Scribe: ArtB 18:37:54 nwidell has joined #webapps 18:38:10 Topic: D3E and DOM4 Redux 18:38:33 gopal has joined #webapps 18:38:44 JR: IE9 implemented 100% of the spec 18:38:58 … think other browsers implemented about ~60% of D3E 18:39:11 CM: so, I think the Editors are OK with making the requested changes 18:39:18 … is that a fair characterization? 18:39:29 Sam: other than IE, who will implement this? 18:39:38 JR: Olli Pettay has been involved 18:39:43 .. I don't know about Google 18:39:57 JS: I talked to Olli 18:40:09 … we intentionally remvoved ExceptionEvent 18:40:13 [There may be confusion in the minutes at some points between CM and CMN. :)] 18:40:27 … Olli is not as concerned about edge cases AvK and Ojan mentioned 18:40:37 … We do implement a lot of the spec 18:40:45 … Not sure if we will implement all of it 18:40:58 … and the parts we may not implement are features that matter 18:41:12 DS: D3E is a subset of DOM4 re the events 18:41:25 … we changed the spec to not have conflicts with DOM4 18:41:38 Present+ Cameron 18:41:56 q+ 18:42:07 ifette_ has joined #webapps 18:42:23 anne has joined #webapps 18:42:27 [ scribe missed James's comments ] 18:42:32 Subset of DOM4? I thought it was a superset, containing additional things like ExceptionEvent. 18:42:41 Ojan: re Sam's question 18:42:45 Have we considered dropping the parts of D3E that overlap with DOM4? 18:42:52 … I can't give an official Google positin 18:42:53 gsnedders, mismatch, if you will 18:43:03 … but there are parts we would implement and some parts we won't 18:43:12 Sam: specifics please 18:43:18 Ojan: there would be a long list 18:43:32 … text input event has an input method 18:43:39 … I don't think WK will implement it 18:43:47 … key and char properties 18:43:53 … are problematic 18:44:03 … but we havent done a detailed analysis 18:44:16 Doug: please send that to the list 18:44:37 Jonas: re taking D3E stuff out of DOM4 18:44:47 … Ojan's list doesn't help with that 18:44:58 Ojan: I expect WK to implement DOM4 18:45:18 Jonas: for the parts that are the same, it doesn't matter 18:45:31 mmielke has joined #webapps 18:45:45 … I talked to Olli and my position is the concern is about the long time for DOM4 to ship 18:45:48 Only if they are word-for-word the same, otherwise there might be accidental differences. 18:45:51 … it keeps adding features 18:46:13 Anne: we are removing features 18:46:17 cyril has joined #webapps 18:46:23 … only event constructors are new 18:46:31 Jonas: what about mutation? 18:46:35 Anne: not there yet 18:46:39 … but they could be 18:47:01 Jonas: concerned about a continuously evolving spec that never finishes 18:47:06 … we need to ship something 18:47:24 … and D3E is done 18:47:51 … My concern is no clear signs of DOM4 actually shipping 18:47:59 … I think we can ship D3E sooner 18:48:07 Marcos: I don't agree 18:48:14 … think DOM4 is in good shape 18:48:38 CM: as Chair, we have a responsibility to ship specs 18:48:47 … I realize some people don't agree with that 18:48:58 … but that belief is not aligned with the WG 18:49:14 … by shipping I mean publishing a Recommendation 18:49:32 … Re Jonas' comments, we need to ship a spec 18:49:33 One option for mutations events is surely to make them a module of their own? 18:49:42 … don't want a bunch of nit picks 18:49:44 In which case DOM4 is more-or-less done 18:49:47 … that keep coming in 18:49:55 … think the spec is good 18:50:10 (in terms of getting to a point where LC is possible) 18:50:15 … We could cut stuff out 18:50:23 … by reading the tea leaves of DOM4 18:50:49 … and if DOM4 changes, we can rev D3E 18:51:19 … I don't want to keep going in circles 18:51:31 … that costs lots of time and money for everyone 18:51:39 … for Editors and Implemeters 18:52:04 Doug: the parts under contention are from original DOM specs 18:52:11 … D2E is too old 18:52:25 … If DOM4 parts are better and stable 18:52:34 … and reconcile the 2 specs 18:52:51 … We could drop stuff from D3E if problematic 18:52:57 … and then go to LC 18:53:19 … I am willing to change spec to follow DOM4 where it matches implementations 18:53:36 … I can see AvK's approach is useful 18:53:41 … and successful 18:53:49 … so now we change D3E to match 18:53:59 ifette_ has joined #webapps 18:54:00 … I still contend a D3E REC is useful 18:54:16 tpod has joined #webapps 18:54:31 RN: is it possible to drop those parts not implemented or are controversial? 18:54:39 DS: yes, that can happen in CR 18:54:45 … that's kinda' expected 18:55:18 CM: need to agree on what's controversial and what's not 18:55:29 … and that requires drawing a line in the sand 18:55:50 … need browser vendors and others to define what's controversial 18:56:03 … We need to make a decision 18:56:14 … DOM4 is trying to make the situation better 18:56:28 … but we also have people that need to ship product now 18:56:31 sangwhan has joined #webapps 18:56:40 … and of course we have the users of the APIs to consider 18:56:53 One option is to proceed to CR, and see what parts meet the CR exit critera, and move from there. 18:57:10 … How important is it to ship a REC? 18:57:20 … Need to define the features as implemented today 18:57:52 Jonas: I don't want to have anything in D3E that DOM4 deprecates 18:58:09 … need to look at EventException 18:58:27 Jacob: I agree re deprecation 18:58:41 … I think we want to move fwd with constructors 18:58:41 Wonsuk has left #webapps 18:58:56 … think we need to talk to talk about specific events 18:59:07 … and we can deprecate some events 18:59:29 … We should make sure the two specs are synch'ed 18:59:48 smaug has joined #webapps 18:59:53 RN: can we drop the IDL interfaces? 19:00:12 CM: we agreed yesterday that WebIDL will be used 19:00:34 smaug has joined #webapps 19:00:37 Jacob: need to work together to get a list of incompatibilites 19:00:42 … then we fix them 19:00:49 … then we we go back to LC 19:01:13 … There is a lot of feedback since D2Events 19:01:34 … If there are change requests, must open a Bug with Bugzilla 19:02:06 CM: let's ask Anne if he can help with this? 19:02:09 Anne: yes 19:02:24 CM: so Jacob made a proposal? 19:02:32 … Who supports this proposal? 19:02:57 … 15 people supported the proposal 19:03:07 … Does anyone object to that proposal? 19:03:41 … there were NO objections 19:04:07 RRSAgent, make minutes 19:04:07 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html ArtB 19:04:36 howard has left #webapps 19:05:38 dowan has left #webapps 19:07:19 krisk has joined #webapps 19:21:37 rogerk has joined #webapps 19:22:40 Ms2ger has joined #webapps 19:33:25 ifette_ has joined #webapps 19:39:42 smaug, such as? Apart from the new exceptions, we only really have legacy stuff and some things from HTML 19:45:06 Ms2ger: many parameters are optional 19:45:14 DOM range isn't backwards compatible etc 19:45:23 Ms2ger: I agree the changes are usually good 19:45:27 James has joined #webapps 19:46:24 davidb_ has joined #webapps 19:46:27 Mm, I guess you can say that 19:51:19 mixedpuppy has joined #webapps 19:53:18 morrita has joined #webapps 19:56:54 weinig has joined #webapps 19:59:01 hayato has joined #webapps 20:03:10 mixedpuppy has joined #webapps 20:03:17 myakura has joined #webapps 20:03:31 abarsto has joined #webapps 20:05:03 sejinpark has joined #webapps 20:08:02 JonathanJ has joined #webapps 20:08:58 krisk has joined #webapps 20:09:39 nwidell has joined #webapps 20:09:49 JonathanJ has joined #webapps 20:11:35 jrossi2 has joined #webapps 20:13:03 skim has joined #webapps 20:13:25 sejinpark has joined #webapps 20:15:01 a12u has joined #webapps 20:15:10 Eliot has joined #webapps 20:15:24 morrita has joined #webapps 20:16:17 anne has joined #webapps 20:16:42 present+ Josh_Soref 20:16:48 Scribe: Josh_Soref 20:18:41 spoussa has joined #webapps 20:18:42 No calling in today? 20:19:03 magnus has joined #webapps 20:19:18 I think it is possible to set that up if you want 20:19:32 what is the topic? 20:19:33 Although the evidence is that you don't really exist 20:19:44 Topic: XBL2 and Component Model 20:20:32 Zakim, what is this? 20:20:32 I don't understand your question, heycam. 20:20:38 Zakim, code? 20:20:38 sorry, heycam, I don't know what conference this is 20:20:43 Zakim, room for 4? 20:20:45 ok, heycam; conference Team_(webapps)20:20Z scheduled with code 26632 (CONF2) for 60 minutes until 2120Z 20:21:02 SungOk_You has joined #webapps 20:21:08 Zakim, this is webapps 20:21:08 ok, heycam; that matches RWC_WAPI(WebAppsWG)12:00PM 20:21:11 Zakim, code? 20:21:11 the conference code is 2011 (tel:+1.617.761.6200 sip:zakim@voip.w3.org), heycam 20:21:18 jrossi2 has joined #webapps 20:22:17 +??P1 20:22:27 Zakim, ??P1 is Olli_Pettay 20:22:27 +Olli_Pettay; got it 20:22:36 Zakim, nick smaug is Olli_Pettay 20:22:36 ok, smaug, I now associate you with Olli_Pettay 20:23:00 Zakim, who is on the call? 20:23:00 On the phone I see ??P0, Olli_Pettay 20:24:07 davida has joined #webapps 20:24:18 dowan has joined #webapps 20:24:53 Soonho has joined #webapps 20:25:29 sicking has joined #webapps 20:25:40 Scribe: Josh_Soref 20:25:44 how many engineers does it take to dial a number? 20:25:47 tantek has joined #webapps 20:25:51 0, you just ask the hotel staff 20:26:29 Topic: XBL2 and Component Model 20:26:50 AlexRussel: Alex Russel, from Google 20:27:00 ... we have a proposal for Component Model 20:27:10 ... and there's a belief that there's overlap with XBL2 20:27:53 ... we'd like to understand the WebApp's community view on the landscape 20:27:57 ojan has joined #webapps 20:28:04 ... and we'd rather have an either-or and not an and 20:28:16 ... I'd like to get a sense of the current implementers' view on XBL2 20:28:27 weinig: Sam, Apple 20:28:27 Suresh has joined #webapps 20:28:33 ... we've discussed this a bunch of times 20:28:43 ... Apple's iggest concern is the lack of a well formed declaritive model 20:28:50 ... it's also a bit disingenous 20:29:07 jihye has joined #webapps 20:29:14 ihilerio has joined #webapps 20:29:15 ... to say XBL2 is dead long live component model 20:29:19 adrianba has joined #webapps 20:29:36 ... and then to say it's similar and has overlapping goals 20:29:48 AlexRussel: we assume them to be exclusive 20:29:53 ... and our view is that they are 20:30:04 ... the lack of a declarative model that's fully specified 20:30:10 ... is something that we've taken as something 20:30:15 ... and we'll work on 20:30:27 ... Parser Integration, Shadow DOM, 20:30:33 ... what we'll do with behavioral pattern 20:30:53 anne: We'd like Cross Origin 20:30:58 ... for things like Like / +1 buttons 20:31:10 ... I don't think the goals of cross-origin and bindings 20:31:14 ... are compatible 20:31:27 weinig: I think it's valuale to have a component technology for the web 20:31:36 ... XBL2 and the new proposals are both two different directions 20:31:36 Ruinan has joined #webapps 20:31:41 s|weinig|maciej| 20:31:45 .. otoh the framing of this 20:31:49 karl has joined #webapps 20:31:55 s/../.../ 20:32:01 ... is XXX 20:32:15 ... otoh the new proposals are fragmentary, not specified in sufficient detail 20:32:25 ... and i'm not convinced they're in the right direction 20:32:38 ... i need to see something that looks good, and currently neither looks totally right 20:32:42 karl has joined #webapps 20:32:51 sicking: my view is that something between xbl2 and component model is the right approach 20:33:04 chaals has left #webapps 20:33:10 nwidell has joined #webapps 20:33:11 ... i think taking xbl2 and using it and cutting things out is more in the right direction 20:33:18 ... than the proposal i've seen from you guys 20:33:24 ifette has joined #webapps 20:33:31 ... it's hard to see too strong of a comment given the lack of a proposal for the declarative model 20:33:38 ... even though xbl2 has a lot of complexity 20:33:56 [ Scribe reports that smaug agrees with sicking ] 20:33:58 rniwa has joined #webapps 20:34:20 weinig: i also agree with sicking 20:34:26 dg: I disagree 20:34:35 s/dg/dglazkov/ 20:34:36 MikeSmith has joined #webapps 20:34:47 ... because if we do it, we'll end up with a completely different spec 20:34:50 nvbalaji has joined #webapps 20:34:56 ... if we cut things out, we'll have to reinvent the parsing 20:35:06 ... we'll have to deal with event forwarding 20:35:09 -??P0 20:35:16 sicking: i disagree, event forwarding is needed 20:35:28 dglazkov: event forwarding/event retargeting are different things 20:35:35 ... the general approach of the component model 20:35:38 jdaggett_ has joined #webapps 20:35:41 .... is that you subclass 20:35:50 ... shadow DOM is something you get 20:36:01 .... i do not think it's a good idea to treeat the component model is just a single spec 20:36:07 mixedpuppy has joined #webapps 20:36:15 ... because the different pieces can stand on their own 20:36:20 s/..../.../ 20:36:23 s/..../.../ 20:36:31 ... we already have two different specs 20:36:42 RRSAgent, make minutes 20:36:42 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html Ms2ger 20:36:47 ... confinement is a problem outside of components 20:37:06 .... you want to run scripts confined, instead of just in iframes 20:37:12 s/..../.../ 20:37:28 ... that said, i think it would be a useful exercise for those who believe we should keep xbl2 20:37:34 ... to go over it and see if it's doable 20:37:42 s/valuale/valuable/ 20:37:50 ... if they could go over it tomorrow for 30 minutes 20:37:58 sicking: to make actual decisions which we're not at that stage 20:38:04 .... we need more concrete proposals 20:38:09 .... to have discussions here/now 20:38:15 s/..../.../ 20:38:17 s/..../.../ 20:38:24 RRSAgent, make minutes 20:38:24 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html Ms2ger 20:38:28 ... we'll need actual proposals to make 20:38:39 ... decisions 20:38:41 Marcos has joined #webapps 20:38:41 chsiao has joined #webapps 20:38:54 dglazkov: what's the right forum and what's the best format 20:39:10 s|s/..../.../|| 20:39:15 -Olli_Pettay 20:39:16 sicking: brainstorming session if we get the right people 20:39:16 RWC_WAPI(WebAppsWG)12:00PM has ended 20:39:16 Attendees were Olli_Pettay 20:39:23 RRSAgent, make minutes 20:39:23 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html Ms2ger 20:39:29 ... if we get the apple people, and hixie 20:39:33 [ hixie is behind you ] 20:39:45 sicking: and start sort of drafting some vague proposals 20:39:52 dglazkov: +1 20:40:06 mjs: i like seeing proposals 20:40:12 ... two things, about evaluating them 20:40:24 ... often it's really hard to evaluate things independently 20:40:28 jmarting has joined #webapps 20:40:31 quaddle has joined #webapps 20:40:33 ... without evaluating the whole system design 20:40:45 chaals has joined #webapps 20:40:47 ... whlie people doing the core design work may have thhe whole thing in their head in a vauge whay 20:41:02 ... second thing is it's important to have proposals drilling out in a detailed way 20:41:13 sangwhan has joined #webapps 20:41:28 ... but when you lay out the full details, you see problems that become very complex to address 20:41:39 ... and it's hard to give a full review of a relatively high level sketch 20:41:45 [ bridge dialing ] 20:41:54 http://wiki.whatwg.org/index.php?title=Component_Model 20:41:56 dglazkov: we have a proposal 20:42:05 ... it provides a very good overview 20:42:11 ... it tries to capture the big picture 20:42:17 RWC_WAPI(WebAppsWG)12:00PM has now started 20:42:25 +tpac 20:42:28 ... i have gone over a small part of it at our powwow at mozilla all hands 20:42:42 ... but i didn't go over the whole thing 20:42:57 ernesto_jimenez has joined #webapps 20:43:01 dglazkov: as far as details, i agree, details are hard 20:43:11 ... i welcome ideas 20:43:17 ... ewe tend to work on this in person. 20:43:30 ... it brings certain isolation as most of us are working for the same company 20:43:37 ... even posting things in public is not enough 20:43:40 s/ewe/we/ 20:43:52 dglazkov: and it turns out everyone is busy 20:44:06 dcooney: i agree with dglazkov 20:44:19 ... there was a complaint that proposals so far don't have a detailed declarative syntax 20:44:24 ... and we'll address that. 20:44:32 ... i'd like to encourage people to avoid taking some simplistic view 20:44:47 +??P1 20:44:49 ... that declarative and XXX need to be mirrored. 20:44:52 hoashi has joined #webapps 20:45:10 AlexRussel: there is, there's the form element v. xmlhttprequest 20:45:11 s/XXX/imperative 20:45:27 dcooney: some things just won't be expressable in both 20:45:50 dcooney has joined #webapps 20:46:06 weinig: i certainly can understand not jumping to conclusions about individual pieces 20:46:13 Wonsuk has joined #webapps 20:46:14 ... when we saw the demos of what would currently exist. 20:46:29 ... it seems that it was working around things with hacks without a declarative syntax. 20:46:38 AlexRussel: setting this up as an either or is misleading 20:46:56 ... our goal was to design declarative as a sugar on op of imperative 20:47:05 ... at least a strong mirroring. 20:47:21 ... can you define declarative with the imperative api? 20:47:24 [ no ] 20:47:31 sicking: this is what i disagree with 20:47:51 ... we want to have bindings adding to css that are purely stylistic 20:48:01 ... things with a different security model that are cross origin 20:48:15 AlexRussel: if you don't have the plat capability 20:48:26 ... if you can only do it declaratively 20:48:59 ... you should do the archeology work to uncover the primitives and expose the,m 20:49:09 s/the,m/them/ 20:49:21 sicking: would you say style sheets are declarative sugar on the style attribute 20:49:29 AlexRussel: i don't think that's the right question 20:49:31 MOIBA has joined #webapps 20:50:12 ... they have a different semantic in terms of inheritance 20:50:21 ... for bindings in xbl2 20:50:32 ... what you're missing is a way to be tied into the application life cycle 20:50:37 andreip has joined #webapps 20:50:47 ... treating style attributes as desugaring 20:50:54 ... there's a missing bit of infrastructure 20:51:01 ... it's the mechanism in which you're allowed to do i 20:51:12 travis: Travis, Microsoft 20:51:27 travis: i'd like to +1 the desire to move forward on specing on some balances of company's ideas 20:51:33 tlr has joined #webapps 20:51:37 ... there's clearly value in dspecing out ideas outside of the ocmponent model. 20:51:55 ... i'm interested in seeing that move forward even without a declaritive model. 20:52:05 darobin: if there were a brainstorm model,. would you be interested? 20:52:19 mjs: in practice, the declariative/imperative model, which will be the primary interface for developers? 20:52:40 ... for people believe in declarative, the approach to design is based on that 20:52:46 ... define that first 20:52:49 s/of company's/of Alex and company's/ 20:52:56 ... for people in imparative, the approach design's that first 20:53:03 ... and make a sugar layer for a subset of the other 20:53:11 ... that's the underliying phiulosophical difference 20:53:22 ... hopefully once we have specs for this, we can comment on this 20:53:23 Travis_MSFT has joined #webapps 20:53:34 ... instead of hypothetical "i think this won't work"" 20:53:44 ... you can't predict if the layering will work unles you can see oth layers 20:53:55 efidler has joined #webapps 20:54:08 howard has joined #webapps 20:54:13 dglazkov: it sounds like there will be a brainstorm tomorrow 20:54:21 ... we have some proposals for declaraitve syntax 20:54:28 ... if you enjoy half cooked meals 20:54:34 ... we're tready to sreve them to you 20:54:39 ... the problem is difficult 20:54:49 ... what made xbl2 so difficult to spec and comprehend was the decorator concept 20:54:58 ... the fact that you could ad and remove behaviors dynamically 20:55:01 DavidKim has joined #webapps 20:55:06 ... i believe this is where we'll fall into despair tomorrow 20:55:12 ... i recommend defering that question 20:55:30 http://wiki.whatwg.org/wiki/Behavior_Attachment 20:55:30 ... there is a page where i outline th edifference between the two: 20:55:43 [ bad sequence, lag ] 20:55:55 dglazkov: subclassing is a very common thing that happens in many languages 20:56:03 ... you add behaviors to a thing by extending it 20:56:13 ... decorator is clsoer to an aspect oriented language 20:56:23 davidb has joined #webapps 20:56:29 ... you can create xxx 20:56:42 s/tready/ready/ 20:56:44 ... component model tackles element behavior attachment 20:56:45 RRSAgent, make minutes 20:56:45 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html Ms2ger 20:56:51 ... and defers decorators 20:57:14 darobin: i'm hearing agreement on seeing more specs and on a breakout/brainstorming tomorrow 20:57:21 dglazkov: all day tomorrow? 20:57:32 darobin: there's no one form w3c here 20:57:36 s/form/from/ 20:57:46 ... either it's outside the structure tomorrow 20:57:52 ... you take a table and work it out 20:57:53 Current schedule for the sessions tomorrow: http://www.w3.org/wiki/TPAC2011#Session_Grid 20:57:58 +??P10 20:58:03 ... or you go through channels tomorrow morning and propose 20:58:09 Zakim, ??P10 is Olli_Pettay 20:58:09 +Olli_Pettay; got it 20:58:36 darobin: we're enjoying the fact there's no team contact 20:58:43 bryan has joined #webapps 20:59:00 [ people discuss the grid ] 20:59:03 stakagi has joined #webapps 20:59:11 pererik has joined #webapps 20:59:12 darobin: 11:15am? 20:59:31 heycam: i'd like to go to api design 20:59:38 ... could we have it at 1:30pm? 20:59:44 [ 1:30pm ] 21:00:04 [ poll, who might show up? ] 21:00:14 darobin: about a dozen people 21:00:20 mjs: i can't be here tomorrow, sorry 21:00:28 darobin: anything else? sXBL? 21:00:36 dglazkov: are we still considering sXBL? 21:00:46 darobin: there's a point wrt Rechartering 21:00:59 mjs: i think everyone has agreed we want to do components 21:01:08 ... and the disagreement about the starting point 21:01:19 ... as long as the charter doesn't identify the name 21:01:36 darobin: chaals we should ensure the Charter doesn't name the spec 21:01:40 Topic: IndexDB 21:01:44 [ People leave ] 21:02:11 alexmog has joined #webapps 21:02:13 ChrisWilson has joined #webapps 21:02:17 s/Index/Indexed/ 21:02:34 is there some kind agenda online? 21:02:39 sicking:it's been almost finished for 6 months 21:02:59 sicking: anyone from Google here to talk about this? 21:03:31 mmielke has joined #webapps 21:04:10 sicking: the only issue i know outstanding is error handling 21:04:17 ... i don't know if we have filed bugs 21:04:21 ... i can look tat u[p 21:04:27 ... those might be more editorial 21:04:33 morrita has joined #webapps 21:04:37 Israel: Israel from Microsoft 21:04:38 -Olli_Pettay 21:04:50 sicking: there's not all editorial, but the ones i see are really small 21:04:51 anne has joined #webapps 21:05:28 michaeln: Michael N, Google 21:05:43 sicking: Israel and I talked a bit about it over lunch 21:05:45 richt has joined #webapps 21:05:50 ... it seem s we might have agreement 21:05:57 ... that error events aren't actually fired 21:06:04 Rossen has joined #webapps 21:06:09 ... There are two types of errors 21:06:18 ... one associated with a request 21:06:22 ... one isn't 21:06:34 Israel: and one of those kinds is basically fatal 21:06:35 SungOk_You has joined #webapps 21:06:41 James has joined #webapps 21:06:47 sicking: and we never arget ererors at the transaction 21:06:47 Kai has joined #webapps 21:06:59 Israel: hopefully developers understand what they can do 21:07:06 sicking: that's actually drafted in the spec 21:07:15 ... we should clarify that we're talking about that in this thread 21:07:22 ... and confirm people are ok w/ that solution 21:07:29 ... beyond that, we could go through the buglist 21:07:36 ... it's pretty simple stuff -13 bugs 21:07:42 darobin: anything we can close is good 21:07:49 sicking: i suspect most require changes to the spec 21:07:55 ... but we can coe to agreement 21:07:59 kensaku has joined #webapps 21:08:03 chrisdavidmills has joined #webapps 21:08:11 sicking: bug 14199 21:08:19 ... just a bug in the spec 21:08:24 ... bug 14201 21:08:41 ... - mention of version change request, which is renamed - trivial change 21:08:47 darobin: that's editorial 21:08:53 mjs has joined #webapps 21:08:59 ... bug 14318 21:09:06 ... - that's important to mozilla 21:09:09 ... bug 14352 21:09:20 ... - idl marking requirement 21:09:26 ... editorial 21:09:40 ... bug 14384 21:09:50 ... - that's an interesting quetion 21:10:03 nwidell has joined #webapps 21:10:10 ... currently we throw if readystate isn't done if you try to get result 21:10:21 ... so you can't get the transaction during upgradeneeded, which is bad 21:10:32 ... - we should set readystate to done 21:10:38 ... - not sure if that's the right fix 21:10:49 ... we could do something special in this case 21:10:57 ... it's the request from an open call 21:11:06 Israel: there is a transaction, locking the whole database 21:11:10 sicking: yes 21:11:19 ... what should ready state be? 21:11:28 ... done even though we haven't opened? 21:11:35 shepazu has joined #webapps 21:11:35 Israel: done seems fine 21:11:51 sicking: bug 14389 21:12:01 ... - i wanted alex here 21:12:13 ... we have two callbacks in the spec in the sync api 21:12:23 ... the two way sfor creating a transaction 21:12:30 ... currently they're [functiononly] 21:12:31 wma has joined #webapps 21:12:40 ... so you can't pass an object with a handleevent or similar 21:12:45 ... i have no opinion on that 21:12:48 fukuno has joined #webapps 21:13:12 [ jonas explains to alex who just returned to the room ] 21:13:29 sicking: is there value in supporting passing objects? 21:13:48 alexrussel: the object passing protocol is strange from a design perspective 21:14:06 magnus has joined #webapps 21:14:11 rrsagent, draft minutes 21:14:11 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html JonathanJ 21:14:27 ... you could have an object that handles lots of things 21:14:33 ... the question from hj is "what's this?" 21:14:39 s/hj/js/ 21:14:53 darobin: that's the benefit of using an Object 21:15:10 alexrussel: I think passing an object whose members are named by the event 21:15:41 rogerk has left #webapps 21:16:00 Josh_Soref: the idl lets you pick the function name on the object 21:16:35 andreip has joined #webapps 21:16:41 sangwhan has joined #webapps 21:16:54 sicking: this is part of the indexed db spec 21:17:03 ... you pass it a callback for the transaction 21:17:27 ... we can support function, or function-or-object 21:17:37 Marcos: looking in general how JS is used 21:17:44 ... many people don't use the object form 21:18:15 =FunctionOnly should be removed from the spec 21:18:24 mjs: to make this clear so we stop talking about handle event 21:18:38 mjs: can you give us the name of the name on the callback object 21:18:44 darobin: what is the color of the bikeshed? 21:18:50 Marcos: it's called handleEvent 21:19:04 sicking: let's pretend we renamed this to transactionStart 21:19:06 gopal has joined #webapps 21:19:17 ... it would be a single function name, since we only do one thing 21:19:47 Zakim, who is on the call? 21:19:47 On the phone I see tpac, ??P1 21:20:12 AlexRussel: if this is the beginning of having well named properties for callback objects, that's great 21:20:40 [ scribe repeats what Smaug said ] 21:20:45 darobin: I agree 21:20:53 darobin: it should be transactionStart 21:21:09 mjs: WebKit has usually not done the FunctionOnly bit 21:21:30 [ Good bikeshedding, we picked a non black color ] 21:21:37 sicking: bug 14393 21:21:44 ... i think i've already fixed it 21:21:53 ... bug 14404 21:22:02 Marcos has joined #webapps 21:22:09 FunctionOnly is always a spec bug except with onfoo event listeners 21:22:41 Israel: this related to not knowing which version you were working on during an abort and wanted to do an upgrade 21:23:01 ... this related to an exception/event type not? having a version or something 21:23:09 [ No one seems to really remember tihs ] 21:23:20 Israel: inside upgradeneeded 21:23:34 ... with an optional parameter, how would you get the version? 21:23:54 sicking: database.version in the upgradeneeded or the callback 21:24:06 Israel: if you aborted it, and you're outside the upgradeneeded 21:24:25 s/tihs/this/ 21:24:34 Israel: I think this predates an [optional] paremeteer 21:24:43 s/parameteer/parameter/ 21:24:56 sicking: if you fail to open 21:25:03 ... which is where an upgradeneed happens 21:25:27 Israel: I think you can close the bug 21:25:29 hayato has joined #webapps 21:25:36 ... i don't think we need it anymore 21:25:47 sicking: we need to specify something, because it's unclear in the spec 21:26:35 ... bug 14405 21:26:40 ... - i fixed that 21:26:50 ... bug 14408 21:27:11 ... - this is based on a usage pattern we saw 21:27:32 ... as things stand now, if you open a cursor and in the callback and you do a bunch of things, and expect the cursor to progress 21:27:46 ... having to call continue at the end is hard 21:28:08 ... as soon as you call continue, getting .key/etc will trigger an exception 21:28:32 ... we propose that once the cursor has recieved its first data, it won't throw 21:28:48 Israel: so it's just caching data? 21:29:02 sicking: this is because of request objects 21:29:23 Israel: so this is different than calling continue twice? 21:29:28 sicking: yes, that still throws 21:29:49 michaeln: what happens when you call continue on the last cursor? 21:30:16 sicking: either we make it start throwing, or we can leave the values as they were 21:30:24 michaeln: this came up recently in code review 21:30:32 ... and the response was "oh, i don't think tha'ts specified" 21:30:41 sicking: in general, the spec tries to agressively throw 21:31:02 michaeln: where you're changing the behavior of aggressive throwing 21:31:09 ... it needs to be fleshed out 21:31:17 sicking: i think i offered to fix this bug 21:31:30 kris has joined #webapps 21:32:58 i/start throwing/... there isn't a reference in the callback (it's null), but you can have another reference to it elsewhere/ 21:33:27 sicking: bug 14412 21:33:37 ... no brainer, we should do that 21:33:44 ... bug 14441 21:33:56 ... - just outdated, should remove that note, editorial 21:34:08 ... bug 14488 21:34:33 ... - missing annotation 21:34:42 ... that's it! 21:34:52 sicking: what do we return from delete operations? 21:35:03 Israel: I'm ok with not returning anything. 21:35:08 ysr has joined #webapps 21:35:16 sicking: the spec says to return true if it deleted something or false if there's nothing to delete 21:35:22 ... in some casw, that would be useful 21:35:30 ... this is asynchronous 21:35:39 s/casw/cases/ 21:35:53 sicking: this could be slower to implement 21:36:10 ... and since we don't know if someone's going to use it, we already have to dig it out 21:36:19 ... the speed cost is totally implementation specific 21:36:30 sicking: my preference is to return nothing, to be safe 21:36:49 ... you can always get the information, although it's probably slower - by calling count first 21:37:00 Israel: we're ok not returning anything 21:37:06 skim has joined #webapps 21:37:11 ... as long as you end up in a success handler 21:37:27 ... the issue was, what happens when you're deleting a range 21:37:35 ... and you can't delete all of the range? 21:37:42 ... and we agreed to throw two kinds of errors 21:38:07 sicking: if you fail to delete everything, you always have to revert, since all actions are atomic 21:38:41 Israel: one thing that would be great 21:38:48 ... we started putting out there a test called LAteral 21:38:59 ... we'd like to get feedback from all implementers to see how interoperable we are 21:39:11 ... i believe the set of tests are for the old set version 21:39:18 sicking: we already landed the change 21:39:26 Israel: we'll try to revise the tests 21:39:52 Israel: open-with-version is the new api to replace set-version 21:40:01 [ That was answered for the Scribe ] 21:40:14 sicking: unfortunately, all of our tests rely on the error event 21:40:19 ... and they use generators 21:40:24 ... JS Harmony generators 21:40:40 Travis: you can always stick things into the submissions folder 21:41:00 s/Travis/Travis_MSFT/ 21:41:27 sicking: we'll need to go through our tests and rewrite them to not use generators, which are convenient to our test writers, but not portable 21:41:28 lgombos has joined #webapps 21:41:40 jeff has joined #webapps 21:41:46 adrianba: it'd be helpful if you submitted them so we could see coverage and avoid duplication 21:42:04 ernesto_jimenez has joined #webapps 21:42:05 darobin: and someone might magically do the conversion for you 21:42:18 ... i'm hearing whispers about LC 21:42:26 sicking: we might be able to do LC this year 21:42:45 ... we need to fix these bugs, but they're not much work 21:43:02 Zakim, who is on the call? 21:43:02 On the phone I see tpac, ??P1 21:43:49 Topic: Mutations 21:43:54 present+ adrianba 21:44:15 present+ eliot 21:44:31 +[IPcaller] 21:44:48 Zakim, p1 is Ms2ger 21:44:48 sorry, Josh_Soref, I do not recognize a party named 'p1' 21:44:54 Zakim, [IPcaller] is Olli_Pettay 21:44:54 +Olli_Pettay; got it 21:44:54 Zakim, ?p1 is Ms2ger 21:44:55 sorry, Josh_Soref, I do not recognize a party named '?p1' 21:45:07 RafielW: from Google 21:45:14 Zakim, ??p1 is Ms2ger 21:45:14 +Ms2ger; got it 21:45:36 ... I'm curious to know if anyone from Apple/Microsoft has an opinion 21:45:45 Travis_MSFT: Travis, Microsoft 21:45:50 ... I'm reading it right now 21:45:56 weinig: Sam, Apple 21:46:11 ... in a similar vein, we've been working on other things, and it hasn't been a high enough priority 21:46:19 ... it's been moving pretty quickly and doens't seem bad 21:46:30 ... it's good if it ties in with undomanager 21:46:35 s/doens't/doesn't/ 21:46:46 Travis_MSFT: this is MutationObserver? 21:46:49 wait is this about mutations already? 21:46:52 RafielW: yes 21:47:17 hayato has joined #webapps 21:47:24 [ Group apologizes to people not present ] 21:47:43 [ we break for 10 mins to let those 3pm people to arrive, please arrive promptly ] 21:47:48 [ Threats of hunting down people who are late ] 21:47:55 [ Robin, be warned ] 21:48:29 tantek has joined #webapps 21:48:51 aklein has joined #webapps 21:49:09 RRSAgent, make minutes 21:49:09 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html Ms2ger 21:49:13 abarsto has joined #webapps 21:52:09 sangwhan has left #webapps 21:59:33 dowan has joined #webapps 21:59:51 nwidell has joined #webapps 22:00:12 rniwa has joined #webapps 22:00:36 OH: I don't believe in the internet 22:01:32 rafaelw has joined #webapps 22:01:43 Zakim, who is on the call? 22:01:43 On the phone I see tpac, Ms2ger, Olli_Pettay 22:01:55 darobin: it's 3pm, we're starting 22:02:11 Travis_MSFT: Would you like to tell us about MutationObservers 22:02:16 anne has joined #webapps 22:02:23 RafaelW: ok, so an overview 22:02:32 ... the intent is to be a replacement for DOM Mutation Events 22:02:44 ... the fundamental difference 22:02:52 ... is mutation events try to project an abstraction 22:03:00 ... that things are going to be dispatched synchronously 22:03:08 ... that turned out to be problematic for a number of reasons 22:03:21 morrita has joined #webapps 22:03:23 RafaelW: MutationObservers are different 22:03:35 ... you can register an observer to express an interest in a certain set of mutations 22:03:43 ksons has joined #webapps 22:03:46 ... and you'll get a list of things that have happened 22:03:55 ... it's a batched list of things that have happened 22:03:59 ... since the last time you were called 22:04:12 ... the other interesting part is the timing of delivery of mutation records 22:04:28 ... there was a pretty long discussion on Public-Web-Apps about this 22:04:38 ... the people discussing this 22:04:42 s/Public-Web-Apps/Public-Webapps/ 22:04:48 ... arrived at what smaug coined as "the end of the microtask" 22:04:49 krisk has joined #webapps 22:04:53 ... for the delivery of mutation events 22:05:14 ... it means mutations are delivered at the end of the outermost script execution 22:05:23 ... if outside such a thing, at the end of the current task 22:05:39 ... as part of the single Turn, before painting 22:05:43 ... otherwise you see artifacts 22:05:44 RRSAgent, make minutes 22:05:44 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html Ms2ger 22:05:54 weinig: can that be defined in terms of the event loop? 22:06:21 anne: currently painting happens just after Task completion 22:06:40 RafaelW: currently painting has a gaurantee (ignoring Modal dialogs) 22:06:49 ... but you may get called before the end of a task 22:06:54 ... if a synchronous event is handled 22:06:58 ... say for mouse down 22:07:09 ... and mutations happen as part of those handlers 22:07:23 ... then you'll get something delivery then as part of that outermost 22:07:28 ... invocation 22:07:51 sicking: my understanding of when it's defined to fire 22:07:51 ... for example the Load event for XHR 22:07:52 ... it fires at the end of each event handler 22:07:57 ... let's use a click event handler 22:08:08 ... it fires at the end of each event handler on each event target 22:08:22 ... it happens multiple times during the call to dispatchEvent() 22:08:32 ... so if you click on an element 3 elements deep 22:08:38 ... you call on 2 elements in capture 22:08:43 ... on target 22:08:46 ... 2 on bubble 22:09:12 ... You get it twice for each thing, potentially, but only if there are mutations 22:09:19 sicking: the reason for this 22:09:28 ... smaug was concerned that if we do it at the end of a task 22:09:35 ... if each event handler is independent 22:09:42 ... and doesn't know what one might do 22:09:46 ... invluding doing a sync XHR 22:09:52 s/invluding/including/ 22:10:00 ... during one of those, we'd need to fire these there 22:10:18 ... there's a risk of an actor 22:10:35 anne: what if an actor calls showModalDialog 22:10:45 sicking: yes, but it means you can only shoot yourself in the foot 22:10:48 anne: that's acceptable 22:10:55 RafaelW: smaug are you there? 22:11:03 ... can you explain more? 22:11:24 MOIBA has joined #webapps 22:11:28 smaug: the idea was to encapsulate the mutation 22:11:46 ... web pages cannot detect what is a task 22:11:52 ^^ "that's acceptable?" 22:11:53 ... you may dispatch several events during a single task 22:12:35 ... it's always when a event handler returns or a timer returns 22:12:49 weinig: does that mean that every new api we define we'll have to define microtasks 22:12:52 ... or do we infer it? 22:12:59 ... specification-wise? 22:13:10 sicking: specifcation-wise, it would probably be nice if they did 22:13:14 ... but it should be pretty obvious 22:13:18 ... any time you call into the web page 22:13:23 ... that isn't inside another callback 22:13:35 mjs: in that case, it might be nice 22:13:45 ... if this concept was codified in some more explicit way 22:13:58 ... we do have the concept of calling into script and having it call out 22:14:05 mixedpuppy has joined #webapps 22:14:07 ... it seems we're in agreement in what it is 22:14:18 sicking: when i spoke to Hixie , he said there was something like that in html5 22:14:25 ... used to figure out security for call stacks 22:14:30 ... but yes, it needs to be codified 22:14:38 [ Hixie is no longer behind sicking ] 22:14:44 sicking: there's special handling around 22:14:47 howard has joined #webapps 22:15:00 ... MutationObserver callbacks themselves 22:15:07 ... if you have 3 observers 22:15:11 ... and you make a mutation to the DOM 22:15:22 ... and #1 makes a mutation 22:15:39 [ Sicking will write this in ] 22:15:46 rafaelw: my mental model 22:16:05 ... is the mutation observer maintains a pending queue to be delivered to its observer 22:16:31 ... and when it's called to deliver, it delivers what it has to its observer 22:16:49 ... and that observer can create work to be added to all observers' queues 22:16:51 if you have three observers and a modification is made to the DOM, then we first call the first observer, then the second second observer. If the second observer mutates the DOM, we'll recall the first and the second one with just the second mutation, and then the third observer with both mutations 22:17:04 ... and the system loops around until it empties its queues 22:17:36 nwidell has joined #webapps 22:17:51 sicking: everyone will eventually be notified 22:17:57 ... and there's no inner looping 22:18:05 ... we'll append and create larger loops 22:18:23 mjs: can you create an infinite loop with 2 listeners? 22:18:31 sicking: even a single listener can create an infinite loop 22:18:43 s/mjs/weinig 22:18:44 rafaelw: what would happen with current mutation events? 22:18:48 ... you explode the stack 22:18:59 ... that coding error 22:19:12 ... here is just an infinite loop instead of exploding the stack 22:19:20 ... we talked about a fixed limit on going around 22:19:31 ... the advantage of exploding the stack 22:19:40 ... is that you can see a stack trace to understand what went wrong 22:19:56 ... hopefully developer tools will evolve to help you debug the infinite loop case here 22:20:29 mjs: there would be a way to avoid starving the paint cycle 22:20:49 [ Scribe summarized poorly ] 22:20:55 mjs: it's possible to make a design 22:21:01 ... where you don't have an arbitrary fixed limit 22:21:10 ... but you don't starve the event loop if you have a programming mistake 22:21:14 rafaelw: we talked about that 22:21:15 chrisdavidmills has joined #webapps 22:21:25 ... there are legitimate uses for going around the horn a couple of times 22:21:30 ... and then let things settle down 22:21:36 ... comes from the model driven use proposals 22:21:42 s/proposals/proposal/ 22:21:57 ... we were asked to slow down and look at the use cases 22:22:06 rafaelw: imagine you were using a JS library to do templating 22:22:15 ... and used something like jQuery to do a UI 22:22:24 ... and it wants to go decorate the page w/ more DOM 22:22:36 ... and you used a constraint library to manage forms 22:22:53 ... so the templating library might produce more jQuery stuff 22:23:03 ... and the jQuery stuff might trigger more work for the templating 22:23:18 mjs: that seems like a Use Case where it's easy to create something that never terminates 22:23:38 ... i agree it enables you to do things you could not otherwise do 22:23:49 ojan: Ojan, Google 22:23:53 ojan: as long as we agree 22:24:03 ... mutations during one of these callbacks should get delivered eventually 22:24:13 ... this error will either result in a hang, or burning cpu indefinitely 22:24:17 ... i'd rather the hang 22:24:27 ... rather than burning cpu 22:24:34 ... i'd rather a limit and an error 22:24:39 rafaelw: i mostly agree 22:24:53 ... i just don't want to create a situation where a developer doesn't know if he'll run before a paint occurs 22:25:05 mjs: you have the situation where each piece of code has observers 22:25:06 sejinpark has joined #webapps 22:25:17 ... you need to globally analyze to determine if it will finish 22:25:26 Travis_MSFT: they need to be interdepent 22:25:33 ... you could get into an infinite loop 22:25:41 ... if jQuery included things which the validation system depends on 22:25:47 ... which depends on the third component 22:25:53 ... but in most cases, i don't think that will happen 22:25:58 ... you might have a queue of 3 or 4 22:26:10 mjs: the loop was claimed as a UC 22:26:28 Travis_MSFT: i agree, but disagree on a hard limit 22:26:41 ... the distributed UC is potentially difficult 22:26:56 ryosuke: we already have this problem with the current system 22:27:18 ... i don't see this as introducing new issues 22:27:26 mjs: given how bad mutationevents are 22:27:36 ... i don't support "no worse than them" as justification 22:27:40 Wonsuk has joined #webapps 22:27:51 weinig: yes there are problems, yes this makes things better 22:27:57 ... if we could avoid more problems, that's better 22:28:15 darobin: the situation you've described is a corner i've painted myself into many times 22:28:16 MikeSmith has joined #webapps 22:28:31 weinig: in the end, those risks are going to be minimized by something XBL-ish 22:28:37 ... or component modelish 22:28:43 [ laughter ] 22:28:51 mjs: there's really 3 basic things for this issue 22:28:59 ... 1. repeatedly cycle until all queues are empty 22:29:07 ... 2. have a fixed limit 22:29:18 ... 3. at some point, delay delivery to avoid starving the event loop 22:29:25 ... this should be on the mailing list 22:30:15 ACTION rafaelw to send how to handle single pass not emptying all mutation queues to the list 22:30:15 Sorry, couldn't find user - rafaelw 22:30:43 [ anne asks a question ] 22:30:45 efidler has joined #webapps 22:30:57 anne: call dispatchEvent() from code 22:31:20 ... where does that get trigger the mutation observers? 22:31:36 sicking: the outermost thing is always a callback 22:31:40 ... which is a microtask 22:31:56 ... if you call dispatchEvent() in there, 22:32:08 ... the mutation observer calls back from the end of the outer microtask 22:32:16 ... it's like a function call 22:32:29 anne: tasks that are queued are special? 22:32:35 ... yes, they are outermost, so they're special 22:32:56 rafaelw: are you concerned, or not understanding? 22:33:07 Travis_MSFT: i'd like the spec describe the scenarios clearly 22:33:13 ... perhaps even so people can visually see 22:33:41 ojan: and if sicking could recall the thing Hixie said, that'd be good 22:33:47 ojan has joined #webapps 22:33:57 smaug: i need to finish the implementation first 22:34:06 jrossi2 has joined #webapps 22:34:10 ... to decide if it's good 22:34:18 darobin: does this go into DOM4? 22:34:26 ... does anyone care? 22:34:31 I do 22:34:36 As mentioned before 22:35:04 cyril has joined #webapps 22:35:29 you can edit it :) 22:35:33 ryosuke: i've heard that they relate to DOM4 and should probably be there 22:36:13 mixedpuppy has joined #webapps 22:36:16 anne: i do think it should be in there 22:36:33 ... because every other spec that intergrates should work with it 22:36:42 darobin: we seem to have violent agreement there 22:36:45 I'm in violent agreement with anne :) 22:36:47 ... anything else to discuss? 22:37:03 Travis_MSFT: do these observers include stylistic properties? 22:37:24 sicking: most stylistic changes don't directly do this 22:37:51 ... but many times you trigger a style change by setting an attribute or inserting something, which would itself be an observer notice 22:37:57 rafaelw: there's an attribute filter 22:38:18 darobin: perhaps there should be something specific for a specific class value 22:38:27 rafaelw: we agreed this is probably the 80% use case 22:38:48 ... there was an earlier proposal from microsoft called watched-selector 22:39:08 weinig: i want to echo that point 22:39:18 ... the extra class list on element was the favorite thing 22:39:30 fukuno has joined #webapps 22:39:32 ... special casing class might be valuable 22:39:53 ojan: i really liked the watched-selector proposal 22:40:07 ... it's more generic, over a selector instead of just a class list 22:40:32 s/watched/watch/ 22:40:34 watchSelector 22:40:34 s/watched/watch/ 22:40:43 ... what i like about this is that you can implement watchSelector on top of this 22:40:45 bryan has joined #webapps 22:41:00 rafaelw: it's on my list to open source a watchSelector reference impl on top of this 22:41:04 darobin: anything else? 22:41:13 [ No ] 22:41:35 [ Break until 4pm -- for server sent events ] 22:41:37 -Olli_Pettay 22:42:09 -Ms2ger 22:51:41 morrita has joined #webapps 22:54:57 efidler has joined #webapps 22:55:18 jmarting has joined #webapps 22:55:18 ChrisWilson has joined #webapps 22:55:58 hayato has joined #webapps 22:56:53 ernesto_jimenez has joined #webapps 23:01:43 Topic: Server Sent Events: Push 23:01:58 [ darobin bryan will introduce, it's up on the screen ] 23:02:10 bryan: I sent to the list a link 23:02:24 ... 2 years ago 23:02:28 .... at TPAC here 23:02:39 bryan: We had a discussion at the HTML WG about connectionless push 23:02:44 krisk has joined #webapps 23:02:50 ... the text at the time was fairly generic 23:03:14 ... the ability to use connectionless methods 23:03:19 ... not having to maintain keepalive 23:03:32 ... the intent in that spec, still informative 23:03:40 ... a list of things that might occur in the process 23:03:48 krisk has left #webapps 23:03:49 ... this spec 23:03:52 nwidell has joined #webapps 23:03:58 bryan: I've been involved in OMA since 2000 23:04:05 ... involved in the push work in OMA since then 23:04:10 jihye has joined #webapps 23:04:23 ... we recently completed work within OMA 23:04:32 smaug has joined #webapps 23:04:38 stakagi has joined #webapps 23:04:41 ... this api is enough to form the basis of an extension to event source 23:04:43 krisk has joined #webapps 23:04:49 ... it provides a way to use SMS 23:04:58 ... as an extension to http push 23:05:19 ... events are passed up to the application, in this case, the OMA runtime 23:05:33 mjs has joined #webapps 23:05:46 ... when it's advantageous to save resources 23:06:04 ... it's possible to coalesce these into a unified message 23:06:22 ... event source didn't define these because they were out of scope to the spec 23:06:43 ... I have a diagram here showing how apps could be deployed 23:07:03 [ http://bkaj.net/w3c/eventsource-push.html ] 23:07:15 [ bryan describes the diagram ] 23:07:26 RRSAgent, draft minutes 23:07:26 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html Josh_Soref 23:08:08 [ The diagram is: http://bkaj.net/w3c/eventsource-push.html#introduction ] 23:08:12 Kai has joined #webapps 23:08:22 bryan: this doesn't modify the signature of Event Source 23:08:35 ... down the road, we might create a persistent registration 23:08:49 ... to let events wake up applications 23:08:57 mdadas has joined #webapps 23:09:04 aklein has joined #webapps 23:09:21 ... you have the desire to connect two new barers through uri 23:09:42 ... you can use a registered urn that defines OMA Push 23:09:47 ... within the IMS framework 23:10:16 aklein_ has joined #webapps 23:10:22 bryan: events are delivered using the same model as Event Source 23:10:31 ... although the event type is sent to SMS for SMS 23:10:35 MOIBA has joined #webapps 23:10:37 ... and OMA Push for OMA Push 23:10:50 ... you don't get onMessage() since these are not message events 23:10:58 ... with OMA Push 23:11:13 ... the simplest way was to create a sequence of strings 23:11:36 ... so the application can receive all of the data as a single event using the event stream concept 23:11:53 ... in this case, i pulled out the xml document, the url, and the text message, and present it 23:12:07 ... for sms, the sms text message gets put into the event and delivered 23:12:27 [ http://bkaj.net/w3c/eventsource-push.html#fallback ] 23:13:00 [ bryan describes second diagram ] 23:13:57 tlr has joined #webapps 23:14:35 ryoichi has joined #webapps 23:15:19 [ http://bkaj.net/w3c/eventsource-push.html#proxy-fallback ] 23:15:24 [ bryan describes third diagram ] 23:17:04 howard has joined #webapps 23:17:19 Marcos has joined #webapps 23:17:22 myakura has joined #webapps 23:17:34 anne has joined #webapps 23:18:30 [ http://bkaj.net/w3c/eventsource-push.html#constructor ] 23:19:36 jmarting has joined #webapps 23:19:51 [ http://bkaj.net/w3c/eventsource-push.html#event-processing ] 23:20:08 RRSAgent, draft minutes 23:20:08 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html Josh_Soref 23:21:09 [ http://bkaj.net/w3c/eventsource-push.html#event-stream ] 23:21:33 morrita has joined #webapps 23:22:18 jeff has joined #webapps 23:22:49 [ http://bkaj.net/w3c/eventsource-push.html#security-considerations ] 23:23:08 [ http://bkaj.net/w3c/eventsource-push.html#same-origin ] 23:23:22 [ bryan mentions Widget contexts but glosses over it ] 23:23:44 bryan: developers need to consider filtering for security considerations 23:23:52 ... just as in web messaging 23:24:07 ... accepting "*" is the responsibility of the application choosing to do so 23:24:19 [ http://bkaj.net/w3c/eventsource-push.html#application-security ] 23:24:32 [ http://bkaj.net/w3c/eventsource-push.html#privacy-considerations ] 23:24:49 jcantera: Jose Cantera, Telefonica 23:24:57 ... how do you intend to progress this? 23:25:07 darobin: charter wise, it's in scope to this group 23:25:15 ... if this group is happy to do it 23:25:25 darobin: do you think it would make sense 23:25:39 ... one good thing is that it lets web apps have the same notifications as native apps 23:25:55 ... and it shields web apps from complexity 23:26:09 ... would it make sense to hide the distinction between OMA Push and SMS? 23:26:16 bryan: i considered it 23:26:27 ... but, how do you deal with different framing formats? 23:26:36 ... in OMA Push, you can deliver any content type 23:26:46 ... the headers are important, you need to know the mime type 23:26:54 ... those elements are important 23:27:03 ... for a server to provide to the app 23:27:22 ... i couldn't figure out how to combine that 23:27:39 weinig: what mobile OSs support this? 23:27:46 bryan: I prototyped this in Android 23:27:58 ... I believe almost any OS in a smartphone class 23:28:10 ... allows a developer to attach to network sources 23:28:20 ... and allow someone to act as an agent for this 23:28:32 ... in mid tier devices, that tends to be more complicated 23:29:15 lgombos: Laszlo Gombos, Nokia 23:29:19 jrossi2 has joined #webapps 23:29:21 [ Lost, sorry ] 23:29:29 sicking: we talked about this at Mozilla 23:29:40 ... but we created something very different from this 23:29:47 ... there are two unfortunate things here 23:30:01 ... 1. I'd like to hide whether messages are from TCP/IP or SMS or OMA Push 23:30:05 gopal has joined #webapps 23:30:13 ... (I don't know anything about OMA Push) 23:30:24 ... - it feels like the goal was to expose OMA Push 23:30:31 anne, no it's at 4:30 23:30:41 ... The goal at Mozilla was ... How do we expose SMS over a channel that isn't TCP/IP? 23:30:47 s/anne, no it's at 4:30// 23:31:03 ... the other part is requiring permission from the user 23:31:14 ... that severely limits how many users allow that 23:31:28 ... if it's a little bit sensitive, people are still rightfully worried 23:31:40 ... people press no, which is better than just pressing no 23:31:51 ... we were hoping to provide something simpler/safer 23:32:01 bryan: there could be prearranged trust relationships 23:32:02 sangwhan has joined #webapps 23:32:19 ... but it would be better for the user to have already trusted the app and not overburden them with prompts 23:32:27 darobin: what sicking was getting at 23:32:35 ... is providing an *always* safe subset 23:32:41 ... to avoid getting permission 23:32:41 jmarting has joined #webapps 23:32:57 sangwhan has left #webapps 23:33:01 ... this is more powerful, and "easier in terms of security" 23:33:16 bryan: "how do you make this transparent?" 23:33:29 ... look at XHR, the agent says "i want / i'll take these mime types" 23:33:42 ... if we could take event source and say "i can accept these mime types" 23:33:53 ... that would let me decide if it was safe to deliver it 23:34:07 ... because i didn't want to change event source, i couldn't do that 23:34:14 darobin: i think that's an option on the table 23:34:25 ... i'm hearing interest in doing something around this 23:34:34 ... would anyone object to the group working on this? 23:34:40 ... it's in charter already 23:34:47 [ Chatter ] 23:35:09 sicking: this feels different enough from what we talked about at mozilla 23:35:17 ... it feels like a different deliverable 23:35:25 ... if we can solve it by just adding a header 23:35:27 ... great 23:35:58 shepazu: would you be comfortable having a line in the charter scoping it more tightly? 23:36:17 ... why don't we three right a deliverable line for the charter? 23:36:30 darobin: to avoid waiting for rechartering 23:36:51 ... we should agree on a scope 23:37:00 ... bryan it'd be good if you could send use cases 23:37:14 ... sicking, it'd be good if you could send something 23:37:23 myakura has joined #webapps 23:37:27 mjs: weinig asked earlier if this is implementable onn iOS 23:37:35 ... i believe as presented, the answer is no 23:37:50 ... iOS doesn't give applications the ability to receive SMS 23:38:14 ... to me, that says that a design that does not force the web page to choose a transport would be better 23:38:34 bryan: i've said "any available barer would be good" 23:38:51 darobin: ok, based on the email you all send, we'll scope the work 23:38:55 Topic: WebIDL 23:39:00 heycam: helo 23:39:04 s/helo/hello/ 23:39:18 ... In this session, I want to let people bring up issues 23:39:32 ... and discuss how we might go about testing 23:39:50 ... and third, what are the time frames for implementers (smaug asked this) 23:39:52 Wonsuk has joined #webapps 23:40:06 richt has joined #webapps 23:40:10 AdamBarth: Adam Barth, Google 23:40:20 ... do you mean consume the syntax? 23:40:20 -> http://lists.w3.org/Archives/Public/public-script-coord/2011AprJun/0093.html Thread on testing Web IDL 23:40:27 myakura has joined #webapps 23:40:39 heycam: I don't mean specifically that, perhaps just conforming to its behavior 23:40:54 weinig: one thing we talked about in terms of testing WebIDL 23:41:07 ... is to test it in terms of specs that are speced in WebIDL 23:41:12 ... for instance Canvas 23:41:18 ... uses ovberloading 23:41:24 ... s/ovberloading/overloading/ 23:41:27 jihye has joined #webapps 23:41:32 ... and things like prototype chains 23:41:46 ... testing people's implementations of generating code, i don't think it's worthwhile 23:41:59 ... you could hand write all the bindings, and still be compliant 23:42:08 heycam: i agree, that's the only reasonable approach 23:42:25 ... i think someone could come up with a set of properties for testing 23:42:30 magnus has joined #webapps 23:42:46 mjs: the way WebIDL is written, it's targeted at spec writers, not browser vendors 23:42:53 ... it creates an indirect relationship 23:43:09 ... indirect testing through testing of other specs seems the only way of testing it 23:43:24 ... which unfortunately creates a circular dependeny for progressing on the REC track 23:43:38 s/dependeny/dependency/ 23:44:01 Marcos has joined #webapps 23:44:02 [I don't think see why this would be circular? surely we *can* create tests for specs that aren't in CR yet] 23:44:07 weinig: we always do that when we test XHR, we test JS 23:44:07 mjs: yes, we do 23:44:11 s/think/see/ 23:44:21 jrossi2: in particularly 23:44:37 ... when you test foo-spec, you test webidl 23:44:45 Travis_MSFT: I agree 23:44:53 anne has joined #webapps 23:44:57 ... and as we march to LC, we need to mark things as AtRisk 23:45:04 darobin: we should just kill it 23:45:10 heycam: and the only one is modules 23:45:18 weinig: does that include namespace objects? 23:45:21 hheyyes 23:45:32 myakura has joined #webapps 23:45:34 s/hheyyes/heycam: yes/ 23:45:50 AdamBarth: you can look at the specs as testing it 23:45:53 smaug has joined #webapps 23:46:03 heycam: yes, but it's harder to test automatically 23:46:17 darobin: things written with ReSpec are pretty easy 23:46:24 AlexR: Alex from Google 23:46:35 ... i'm not sure if this is the right forum for this 23:46:46 ... i think the entire java language indings should be dropped 23:46:49 chrisdavidmills has joined #webapps 23:46:52 s/indings/bindings/ 23:47:07 ... second is there are several instances where webidl doesn't serve JS well 23:47:17 ... 1. a TC-39 meeting 23:47:23 ... several months ago 23:47:30 ... interface objects which are reified 23:47:38 ... do not act like function objects 23:47:41 One option for WebIDL testing is some sort of tests designed to be run in a browser-specific way against the interface generation 23:47:47 ... do not behave normally, they aren't callable 23:47:55 [ scribe lost thoughts ] 23:48:00 heycam: I agree with this 23:48:15 ... it's unlikely authors will be doing 'throw typeerror' 23:48:21 ... things which are unnewable 23:48:33 ... things where it doesn't make sense to be able to new them 23:48:34 new Math() 23:48:40 AlexR: i take the concern 23:48:44 ... it's a risk 23:48:53 ... the idiomatic way of doing that in js 23:48:59 ... is mixins 23:49:14 (gives a TypeError) 23:49:15 ... the artifact way of doing that would be still newable 23:49:39 ... the reality is that today, webidl doesn't specify something "reasonable" that could be impleemtned yourself in JS 23:49:50 weinig: that's not necessarily the goal of WebIDL 23:49:55 q? 23:50:12 ... the goal of WebIDL is to define how things are implemented today 23:50:20 ... and how they should be impleemnted 23:50:30 AlexR: thenI suggest webidl is mischartered 23:50:38 myakura has joined #webapps 23:50:54 sicking: javascript doesn't have a way to subclass things other than Object 23:51:08 ... fortunately, almost everything is Objects 23:51:18 ... I know you suggested something using Object.call 23:51:37 ... but I didn't hear any inmplemetners interested in doing that 23:51:46 ... and it seemed like something for TC-39 to do 23:51:58 AlexR: i should put on my TC-39 hat 23:52:11 ... and note that this discussion was something that happened @ TC-39 23:52:31 ... and brendan and I agree that everything you can do to an interface, should be newable 23:52:39 ... and yes, Arrays are odd 23:52:48 ... and you sdhould throw things back at uws 23:52:56 ... and there are things in ES6, proxies 23:53:02 ... which should address it 23:53:12 sicking: what acts as normal JS is a matter of definition 23:53:24 ... for example, the array class, and even the string classs 23:53:34 ... has built in behavior and doesn't allow you to subclass 23:53:44 ... and we're following those models 23:54:00 AlexR: you're still failing 23:54:10 ... since your objects claim to chain to Objects 23:54:18 sicking: but Array claims to chain to Object 23:54:30 AlexR: but everything that WebIDL defines has intrinsic behavior 23:54:36 sicking: but that's how it works 23:54:49 sicking: the fact is that TC-39 hasn't solved this problem for any of these things 23:55:01 sicking: it's actually more, bz had examples 23:55:13 AlexR: Math is an Object, not a Function 23:55:44 heycam: In the Spec, they are all Function objects, they are defined such that when called they throw type error 23:55:50 ... which you can do in JS 23:56:11 AlexR: do we still have a separate constructor property in WebIDL? 23:56:21 ... throwing by default is a bug 23:56:29 sicking: moving beyond low level semantics 23:56:44 ... heycam wrote an example, "new Node" doesn't make sense 23:56:58 mjs: every DOM object that's an object is a specific Subclass of Node 23:57:12 AlexR: but that invariant is controlled by AppendNode 23:57:30 The spec says "Interface objects are always function objects." 23:57:40 sicking: but if it's several weeks of work in order to do something which no one can do anything useful with, then it's a waste of time 23:57:48 weinig: what's the argument for making node 23:58:05 sicking: all the intrinsic behavior of Nodes is based on which Node subclass it is 23:58:16 AlexR: then calling it and newing it throws 23:58:28 sangwhan has joined #webapps 23:58:30 heycam: is it worth it to handing back a non useful thing? 23:58:35 mixedpuppy has joined #webapps 23:58:43 Travis_MSFT: the answer is no 23:58:58 AlexR: i'm not saying that you should turn off the ability to new/call 23:59:07 ... i'm asking you to turn off the default 23:59:19 anne: then you'd require a lot of specs to change most of the specs 23:59:35 AlexR: i'd argue that for html element types, it's mostly a bug 23:59:47 jrossi2: no, there's more than one interface per element 23:59:58 anne: because the tags all share an interface 00:00:09 AlexR: so you can't create a tag name 00:00:17 smaug has joined #webapps 00:00:19 ... you haven't thought about it hard enough 00:00:37 anne: we have thought about constructors a lot, especially because you brought it up 00:00:45 mjs: there are two separate issues 00:00:49 ... one is New 00:00:57 wrong or not, without use cases this is not going to fly 00:01:01 ... and the other is subclassabilitiy 00:01:13 ... in js, only Object supports Subclassing 00:01:30 [ mjs and AlexR argue ] 00:01:43 mjs: you should fix JS first before we change 00:02:04 AlexR: we have misfeatures in DOM based on document.createElement 00:02:18 magnus has joined #webapps 00:02:29 mjs: the goal of WebIDL is to describe the actual semantics of DOM bindings and to get browsers consistent 00:03:09 ... it is not the goal of WebIDL to transform the philosophy of how DOM bindings are built 00:03:36 AlexR: the issue of default, shouldn't be the way of forcing the default 00:03:54 ... because as anne says, people will just put no constructor everywhere 00:04:00 s/AlexR/heycam/ 00:04:06 anne: that's makework 00:04:23 AlexR: creating an instance .. 00:04:23 MOIBA has joined #webapps 00:04:38 ... in the same idiom as anything else i can in that system 00:04:48 weinig: that's something whicih as mjs said 00:04:58 s/whicih/which/ 00:05:15 AlexR: will there be a WebIDL version which changes this? 00:05:33 darobin: no 00:05:43 [ We are at an impass ] 00:05:53 [ Should we drop Java? ] 00:06:02 heycam: oh, i didn't respond to that 00:06:06 ... maybe 00:06:21 ... if we particularly don't care about other bindings 00:06:33 ... and i'm sure AlexR would argue we shouldn't 00:06:48 I keep on grimacing everytime subclassing is mentioned… because JS doesn't scarcely has classes. :\ 00:06:49 ... should we actually alter WebIDL to reflect something closer to JS 00:07:03 ... that is something to consider, but it would take some time to do 00:07:18 Marcos: have you done the bindings for WebIDL in java? 00:07:29 morrita has joined #webapps 00:07:30 heycam: one project I'm involved in has a Java based DOM 00:07:41 shepazu: i wanted to talk about process very briefly 00:07:43 darin has joined #webapps 00:08:14 Does it look as if anyone will have met CR exist criteria for the Java bindings by the time they have been met for the JS bindings? IMO that's the relevant matter. 00:08:18 ... dropping Java would mean we don't need 2 java implementations to get to REC 00:08:31 The Java bindings are fine provided they don't hold up the spec. 00:08:45 (They can always be split out into a separate spec) 00:08:53 mjs: getting two interoperable implementations of java bindings to test all of the features of webidl 00:09:04 ... would keep the spec from REC forever 00:09:22 shepazu: the Staff view on process 00:09:49 jcdufourd has joined #webapps 00:10:05 ... is that if for each feature we have 2 specs in CR 00:10:29 heycam: the plan is to only have 1 spec consuming some of these items 00:10:40 shepazu: we can be fine about that 00:10:53 ... don't let the process for a normal spec drag us down 00:11:08 ... we can come to an agreement on the exit criteria 00:11:19 ... we're flexible on how we judge the passs criteria 00:11:28 Can someone ask what the staff view is on impls of the bindings? 00:11:34 mjs: i think we need actual implementations of specs using this feature 00:11:59 ... part of what we're evaluating is to ensure that all of the details of what it says happen are actually practical/possible 00:12:13 (I think Java bindings should be split into a different document) 00:12:19 weinig: i had a bunch of questions 00:12:34 ... 1. should long long stay in the spec? given its wierd behavior in javaascript 00:12:50 ... given the inability of js beingable to represent numbers consistently 00:13:03 heycam: the issue being numbers in js over 2^53 get squished into a double 00:13:10 ... we talked about creating a class 00:13:19 anne: it's used in progress events 00:13:32 ernesto_jimenez has joined #webapps 00:13:34 mjs: the loss of precision happens in a javascript parser 00:13:46 ... it's more of an issue if we lose that detail in a movie 00:13:57 ... the progress events of loading a movie from xhr 00:14:05 ... i'm more curious about your opinion 00:14:15 bigints should be readded to WebIDL after they're in ES 00:14:31 Josh_Soref: I worry about data loss with this 00:14:41 mjs has joined #webapps 00:14:44 Josh_Soref: nobody else worries about it :( 00:14:44 (i.e., they should be removed in the short-term) 00:14:56 (roughly what Josh_Soref said) 00:15:20 mjs: 2. should we treat an undefined value for a key in a dictionary the same as non existing 00:15:33 ... that would be fine with apple, especially if mozilla is ok 00:15:46 ... what we do currently is inconsistent for our dictionaries 00:15:58 ... etierh way sounds fine, it's usually a programmer error 00:16:14 heycam: sicbrought up cases like that where you deliberately get something as undefined 00:16:23 mjs: so that sounds like a use case 00:16:36 heycam: sicking said it's consistent with missing arguments to a function 00:16:37 s/mjs/weinig/ 00:16:44 s/sicbrought/sicking brought/ 00:17:10 heycam: we're making the argument that people compare to argument instead of checking 00:17:18 I think someone needs to look through ES and see where [[HasOwnProperty]] is used and where undefined is used 00:17:20 [ see brendan's argument on list? ] 00:17:35 weinig: the other one discussed this week is remove FunctionOnly for callback 00:17:40 davidb has joined #webapps 00:17:51 ... implementers have been inconsistent wrt how they use that 00:18:03 heycam: this might be a case where using interfaces resulted in 00:18:15 ... creating an object with the property called handleEvent 00:18:27 weinig: i was actually saying allow both in all circumstances 00:18:39 ... it's not like we can make addEventListener handle this 00:18:46 heycam: i did it as the default 00:18:55 jrossi2: i found the legacy handleEvent all wierd 00:19:00 JeffH has joined #webapps 00:19:08 ... and developers would like to support it everywhere 00:19:19 weinig: in webkit, we allow both 00:19:32 anne: it is defined as Callback FunctionOnly InterfaceObject 00:19:56 ... i think it's removed everywere except onFoo 00:20:13 weinig: WebKit allows it everywhere, so 00:20:32 Travis_MSFT: I'd like to point out that in my years, i never heard of that 00:20:42 ... i'd rather default to FunctionOnly 00:20:59 AlexR: my preference would be that if Object style is supported 00:21:06 shan has joined #webapps 00:21:17 ... is that we attempt to allow same name as event name in addition to handle event 00:21:27 ... so that you can have different colors 00:21:42 ... handleEvent is the thing that doesn't do nicely for all event handlers 00:21:57 heycam: if that's the direction we want to go, then we need to support Object style 00:22:25 heycam: so you want to remove FuinctionOnly from the spec so you can only do both 00:22:40 weinig: i didn't realize that hixie was using it for attribute event listeners 00:22:52 heycam: i could inroduce function to actually mean function 00:22:59 anne: we could add eventhandelr for that 00:23:15 myakura has joined #webapps 00:23:39 heycam: i'll make the change about allowing typedefs to put some extended attributes on a type so whenever you use a typedef you get the attributes from them 00:24:02 weinig: next... 00:24:11 ... i ask this every time i see you 00:24:23 ... do people/do other specs use Sequence, and Array? 00:24:28 heycam: now there are 00:24:37 weinig: the next thing, an implementation issue 00:24:51 ... is iteration order in for-in of properties on interfaces defined? 00:25:00 heycam: we were trying to defer to TC-39 00:25:10 weinig: TC-39 doesn't define them for host objects 00:25:17 myakura has joined #webapps 00:25:23 ... in webkit, it's a random order 00:25:27 Does ES5 not define them as undefined for host objects? 00:25:40 Like, does the definition as undefined not apply for all objects? 00:25:47 ... i've not heard of any bugs regarding iteration order 00:25:54 Travis_MSFT: yes, we've heard of bugs 00:26:06 ... we end up breaking them every time we ship IE 00:26:14 ... it doesn't break many sies 00:26:23 ... more often than not, it's a testcase 00:26:24 mmielke has joined #webapps 00:26:39 ... i would not want them to be defined, because it would be particularly hard 00:26:43 Linuz has joined #webapps 00:26:50 ... in the spec, there's some mention of ordering 00:26:58 ... named and indexed properties 00:27:06 weinig: pragmatic question 00:27:12 ... ordering/lookup 00:27:19 myakura has joined #webapps 00:27:19 ... on Window, in the browser 00:27:33 ... ... are you comfortable with the hooks on Window 00:27:49 ... in webkit first look at the this, and then look at the that, and ... 00:27:51 jihye has joined #webapps 00:28:02 ... there are multiple catchalls that have to be iimplemented in order 00:28:13 ... does anyone know if that's speced anywhere? 00:28:31 heycam: yes, between a combination of things in HTML and WebIDL, it should be completely defined 00:28:32 rniwa has joined #webapps 00:28:35 jrossi2: correctly? 00:28:54 heycam: there's a bug that lists the order, and Travis_MSFT checkked it, and it didn't seem to hit any problems 00:29:05 weinig: it seems like we need lots of test cases for it 00:29:22 myakura has joined #webapps 00:29:34 Travis_MSFT: i'm waiting for firefox to implement that part of the spec (sic) 00:29:45 weinig: the only problem we could hit is "var location;" 00:29:51 s/sic/sicking/ 00:30:11 heycam: one question for people 00:30:56 ... the approach of having idl attributes mapped to accessor properties 00:31:06 ...there's an issue Travis_MSFT identified 00:31:20 assigning to Element.prototype.onsomething 00:31:24 myakura has joined #webapps 00:31:27 ...there's an issue travwith an old version of prototype.js breeaking 00:31:37 since on* handlers are now accessor properties on the prototype that throw if their this object is wrong, this was a breaking change for some sites 00:31:47 where the previous implementation was to have those properties as data properties on the instances rahter than the prototype 00:31:47 ... because it checks the this of something 00:32:06 heycam: are people happy with that approach? 00:32:11 Travis_MSFT: yes 00:32:23 ... i particularly value it for overloads 00:32:35 ... it's easy to replace functionality when you need to 00:32:39 trackbot: yes 00:32:39 Sorry, Josh_Soref, I don't understand 'trackbot: yes'. Please refer to http://www.w3.org/2005/06/tracker/irc for help 00:32:54 s/trackbot/Travis_MSFT/ 00:33:02 weinig: yes, no issue 00:33:13 ... we're worried about performance 00:33:22 AlexR: array.length has two sides 00:33:31 ... it's a getter/setter pair 00:33:34 ihilerio has joined #webapps 00:33:41 ... that can be modeled as getter/setter today 00:34:01 ... second, if you write to an index property beyond current length, there's a magical put 00:34:09 ... shrinking can be repaired 00:34:15 ... growing requires morework 00:34:27 myakura has joined #webapps 00:34:31 weinig: will length be moved to the prototype be moved to use getter/setter 00:34:42 AlexR: it isn't clear how it will be resolved 00:35:06 heycam: earlier in the discussion, we brought up the idea with a more JS focussed thing which might replace WebIDL 00:35:12 ... not right away 00:35:20 ... we didn't have people chime in 00:35:27 [ what would it look like? ] 00:35:42 heycam: something where the actual constructs in JS would sound like JS 00:35:48 darobin: why not use JS? 00:35:58 heycam: because it wouldn't be very concise 00:36:09 mjs: javascript isn't very good for doing that 00:36:19 Travis_MSFT: it's a tricky thing to contemplate 00:36:28 jihye has left #webapps 00:36:29 myakura has joined #webapps 00:36:37 ... if you contemplate things the way ECMA does it, you have to be more verbose 00:36:48 ... on the other end of the thing, you 00:37:04 ... it might be an interesting exercise, but i'd like to finish webidl first 00:37:09 jihye has joined #webapps 00:37:20 mjs: there's some value that webidl is somewhat decoupled from js 00:37:32 ... js is the only langauge that's relevant for api specs 00:37:44 ... maybe someday every browser owill have python or dart 00:37:59 ... if it does, then we will regret it if we define things too tightly 00:38:00 Josh_Soref: one of the things which DAP was looking at was the ability to specify SOAP replacement 00:38:17 berjon: json-rpc using webidl 00:38:17 AlexR: having designed DOM for DART, the right interface will be a new way of doing things 00:38:25 ... we wound up doing something WebIDL 00:38:27 tpod has joined #webapps 00:38:28 Josh_Soref: they wanted to define an API for things where the implementaiton might not be a host object, it might be JS 00:38:33 ... but they want to define it in Web IDL 00:38:43 ... and in doing that, we were toying with the idea of writing a WebIDL to JSON binding 00:39:20 heycam: you're talking about using WebIDL to define a ReSTful interface 00:39:32 ... i haven't seen a lot of discussion about that 00:39:33 myakura has joined #webapps 00:39:49 ... outside a bunch of people mentioning it on the DAP list 00:39:59 Rossen has joined #webapps 00:40:03 darobin: it's actually feedback from webkit that brought this up iniitally 00:40:12 ... define a mapping to json objects 00:40:20 ... and define a mapping to json ipc 00:40:29 ... it would be defined separately 00:40:47 ... the way forward on that, is that i'll finish my JS prototype of it 00:40:56 ... and see if it flies or crases 00:41:31 AlexR: there is a value in having a base description of what the apis are 00:41:35 myakura has joined #webapps 00:41:45 ... in most implemenetations those are in C+++ 00:41:58 ... and those will correspond fairly closely to the IDL 00:42:18 ... but at the same time, having something that is too close to C++ doesn't serve JS very well 00:42:33 ifette has joined #webapps 00:42:33 mjs: in webkit today, we generate mu;multiple bindings from idl 00:42:47 ... they are just used ffor portions of the api exposed 00:43:00 ... ObjC, C++ bindings, mapping to various frameworks 00:43:09 ... possibly Python and Gobject 00:43:32 ... in some cases, people haffve specifically mentioned a desire to align with the relatively well known JS APs 00:43:47 ... as a value relatively close to the JS for users of their language 00:44:04 ... there may be value for a single interface description with mappings to languages 00:44:14 AlexR: mappings doesn't mean design centered 00:44:25 ... if we are designing a multilanguage thing 00:44:35 ... then we have a responsibility to all of them 00:44:51 darobin: i think that's a straw man 00:45:01 ... we are designing w/ js very much 00:45:12 ... as much as i'd like to see a v2 00:45:23 ... we're not going to change the course very much 00:45:33 ... if you want a v2, bring a sketch 00:45:51 heycam: a bunch of things are collapsing number types or renaming some keywords 00:46:20 mjs: the number types are sueful because they define error checking at the interface between the js interface and the underlying implementation 00:46:34 mixedpuppy has joined #webapps 00:46:43 ... having a single number type would require each spec to explain what happens when one passses a non interger 00:46:58 ... the case of i only accept integers in this range is fairly common 00:47:14 Marcos: i'd like to see more examples in the spec 00:47:27 heycam: i try to include one example per construct 00:47:42 myakura has joined #webapps 00:47:47 Marcos: i'm doing a review of it 00:47:55 anne: are we doing another LC? 00:48:05 ... and if we do, could we add String Enumerations 00:48:10 ... as a replacement for string constants 00:48:19 heycam: I talked to the WebPerf guys 00:48:25 ... and they're happy with dropping that 00:48:52 heycam: wrt LC, do you have to if you make normative changes? 00:49:05 darobin: if you make changes which would invalidate a review, then you're supposed to go back to LC 00:49:48 ... normally we would have to go to LC, especially if we made this change 00:49:57 ... LC isn't a big deal, it's just process 00:50:15 ... we can have a 3 week last call, and if everyone is happy, just move to CR 00:50:17 ... and start testing 00:50:34 ... does anyone want to be the testing chief for webidl? 00:50:40 heycam: i thought that was only for new specs 00:51:12 Marcos: HTML5 tests most of it, right? 00:51:19 jrossi2: that's irrelevant, we need an example of each thing 00:51:22 heycam, what about AllowAny? 00:51:34 heycam, I guess you have that recorded somewhere... 00:51:47 Josh_Soref: can't we just create a table for each feature of WebIDL and an interface in a given spec for it 00:52:13 Travis_MSFT: i think we solve the Example requirement and Testsuite by correlating to Spec items 00:52:53 ACTION: Travis_MSFT to lead testing coordination for WebIDL 00:52:53 Sorry, couldn't find user - Travis_MSFT 00:53:02 rrsagent, draft minutes 00:53:02 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html JonathanJ 00:53:29 trackbot, status? 00:53:50 ACTION: Travis to lead testing coordination for WebIDL 00:53:51 Created ACTION-638 - Lead testing coordination for WebIDL [on Travis Leithead - due 2011-11-09]. 00:54:24 heycam: AllowAny is in the list of things from the LC feedback 00:54:36 action-638? 00:54:36 ACTION-638 -- Travis Leithead to lead testing coordination for WebIDL -- due 2011-11-09 -- OPEN 00:54:36 http://www.w3.org/2008/webapps/track/actions/638 00:54:37 ... it had implications relating to override 00:54:49 anne: I wasn't clear where it was used, apart from XHR 00:54:50 myakura has joined #webapps 00:56:26 [ heycam talks about overloads ] 00:56:51 ifette has joined #webapps 00:57:22 [ specifically String and Number versions with AllowAny ] 00:58:34 RRSAgent, make minutes 00:58:34 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html MikeSmith 00:58:40 ACTION darobin to ACTION rafaelw (or the Google AC) to send how to handle single pass not emptying all mutation queues to the list 00:58:40 Sorry, couldn't find user - darobin 00:58:51 ACTION boarlicker to ACTION rafaelw (or the Google AC) to send how to handle single pass not emptying all mutation queues to the list 00:58:52 Created ACTION-639 - ACTION rafaelw (or the Google AC) to send how to handle single pass not emptying all mutation queues to the list [on Robin Berjon - due 2011-11-09]. 00:59:13 tantek has joined #webapps 00:59:15 darobin: any other issues? 01:09:39 ysr has joined #webapps 01:12:58 cyril has joined #webapps 01:14:05 davida has joined #webapps 01:29:29 myakura_ has joined #webapps 01:35:01 disconnecting the lone participant, tpac, in RWC_WAPI(WebAppsWG)12:00PM 01:35:03 RWC_WAPI(WebAppsWG)12:00PM has ended 01:35:06 Attendees were tpac, Olli_Pettay, Ms2ger 01:35:36 myakura has joined #webapps 01:37:47 miketaylr has joined #webapps 01:37:49 ihilerio has left #webapps 01:40:41 myakura_ has joined #webapps 01:58:04 MOIBA has joined #webapps 02:00:21 sejinpark has left #webapps 02:11:51 MikeSmith_ has joined #webapps 02:27:52 tcelik has joined #webapps 02:31:25 weinig has joined #webapps 02:38:32 ojan has joined #webapps 02:47:13 morrita has joined #webapps 02:48:42 tpod has joined #webapps 03:20:40 dveditz has joined #webapps 03:29:03 DavidKim has joined #webapps 03:44:09 jdaggett_ has joined #webapps 03:52:25 Marcos has joined #webapps 03:55:56 jrossi2 has joined #webapps 04:11:17 darin has joined #webapps 04:43:59 ysr has joined #webapps 04:56:36 lgombos has joined #webapps 05:13:39 stakagi has joined #webapps 05:20:05 Marcos has joined #webapps 05:40:18 stakagi has joined #webapps 05:40:50 ojan has joined #webapps 05:47:36 tantek has joined #webapps 05:48:22 dowan has joined #webapps 05:48:38 rniwa has joined #webapps 05:52:03 Marcos has joined #webapps 05:56:40 howard has joined #webapps 06:06:54 darin_ has joined #webapps 06:19:23 howard has joined #webapps 06:37:25 jarek has joined #webapps 06:38:24 fukuno has joined #webapps 06:39:35 Marcos has joined #webapps 06:43:58 fukuno_ has joined #webapps 06:49:34 fukuno has joined #webapps 06:53:42 fukuno_ has joined #webapps 07:00:47 fukuno has joined #webapps 07:11:04 fukuno_ has joined #webapps 07:18:54 Zakim has left #webapps 07:19:45 fukuno has joined #webapps 07:23:50 fukuno_ has joined #webapps 07:26:00 myakura has joined #webapps 07:27:41 lgombos has joined #webapps 07:32:31 fukuno has joined #webapps 07:37:02 kensaku has joined #webapps 07:38:04 fukuno_ has joined #webapps 07:43:41 fukuno has joined #webapps 07:49:33 fukuno_ has joined #webapps 07:53:41 fukuno has joined #webapps 07:57:53 fukuno_ has joined #webapps 08:01:57 fukuno has joined #webapps 08:07:37 fukuno_ has joined #webapps 08:11:56 fukuno has joined #webapps 08:16:09 fukuno_ has joined #webapps 08:20:19 fukuno has joined #webapps 08:20:23 ysr has joined #webapps 08:27:35 fukuno_ has joined #webapps 08:31:41 fukuno has joined #webapps 08:37:18 fukuno_ has joined #webapps 08:41:24 fukuno has joined #webapps 08:47:02 fukuno_ has joined #webapps 08:52:10 miketaylr has joined #webapps 08:52:38 fukuno has joined #webapps 08:56:41 fukuno_ has joined #webapps 09:01:24 fukuno has joined #webapps 09:03:49 fukuno_ has joined #webapps 09:07:51 fukuno has joined #webapps 09:09:36 Ms2ger has joined #webapps 09:11:57 fukuno_ has joined #webapps 09:16:01 fukuno has joined #webapps 09:20:04 fukuno_ has joined #webapps 09:24:18 fukuno has joined #webapps 09:26:47 fukuno_ has joined #webapps 09:32:30 fukuno has joined #webapps 09:37:00 fukuno_ has joined #webapps 09:39:25 fukuno has joined #webapps 09:45:40 fukuno_ has joined #webapps 09:45:42 tmpsantos has joined #webapps 10:26:08 sangwhan has joined #webapps 10:58:13 smaug has joined #webapps 11:09:49 RRSAgent, make minutes 11:09:49 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html Ms2ger 11:12:42 Agenda: http://www.w3.org/2008/webapps/wiki/TPAC2011#Agenda_Tuesday.2C_November_1 11:12:47 RRSAgent, make minutes 11:12:47 I have made the request to generate http://www.w3.org/2011/11/01-webapps-minutes.html Ms2ger 11:13:22 RRSAgent, please excuse us 11:13:22 I see 3 open action items saved in http://www.w3.org/2011/11/01-webapps-actions.rdf : 11:13:22 ACTION: Art and Charles to make a proposal about how to appoint a person to be assigned for testing for a spec. [1] 11:13:22 recorded in http://www.w3.org/2011/11/01-webapps-irc#T17-35-21 11:13:22 ACTION: Travis_MSFT to lead testing coordination for WebIDL [2] 11:13:22 recorded in http://www.w3.org/2011/11/01-webapps-irc#T00-52-53 11:13:22 ACTION: Travis to lead testing coordination for WebIDL [3] 11:13:22 recorded in http://www.w3.org/2011/11/01-webapps-irc#T00-53-50