/irc-logs / w3c / #webapps / 2009-11-03 / end
Options:
- # Session Start: Tue Nov 03 00:00:00 2009
- # Session Ident: #webapps
- # [00:00] <timeless> a/folrm/form/
- # [00:00] <chaals> JS: Do you have an alternate proposal. If GuestXHR is it, how do you build a website that uses it nicely?
- # [00:00] * timeless typos a replace :(
- # [00:00] <chaals> ... imagine websites would be hesitatnt to ask users to copy strings from one place to another
- # [00:00] <timeless> s/hesitat/hesita/
- # [00:01] <chaals> TC: A lot of them are possible that look pretty much like existing things. There are existing UIs that are inherently vulnerable to clickjacking, but we could use others which are not vulnerable.
- # [00:01] <chaals> MJS: Think the 2-site mechanism is the thing we are interested in.
- # [00:02] <chaals> ack sicking
- # [00:02] * Zakim sees rob, arun on the speaker queue
- # [00:03] <chaals> TC: Would like to see the problem being laid out for existing approach, and I will explain how to fix it
- # [00:03] * ArtB mjs example: http://lists.w3.org/Archives/Public/public-webapps/2009OctDec/0350.html
- # [00:03] <chaals> ACTION: jonas write a very concrete example of a problem
- # [00:03] * trackbot noticed an ACTION. Trying to create it.
- # [00:03] * RRSAgent records action 3
- # [00:03] <trackbot> Created ACTION-433 - Write a very concrete example of a problem [on Jonas Sicking - due 2009-11-09].
- # [00:03] <chaals> ACTION: Tyler to explain how to do it with guestXHR in a nice UI
- # [00:03] * trackbot noticed an ACTION. Trying to create it.
- # [00:03] <trackbot> Sorry, couldn't find user - Tyler
- # [00:03] * RRSAgent records action 4
- # [00:04] <ArtB> mjs' example: http://lists.w3.org/Archives/Public/public-webapps/2009OctDec/0350.html
- # [00:04] <chaals> ack rob
- # [00:04] * Zakim sees arun on the speaker queue
- # [00:04] * Quits: darobin (robin@72.254.116.7) (Ping timeout)
- # [00:05] <chaals> Rob: Fundamental problem is if manager can be asked to do something by another party, with the authority of the user in the middle.
- # [00:05] <chaals> ... question is whether CORS encourages that behaviour
- # [00:05] <chaals> [+1]
- # [00:05] <tlr> +1 to "are people encouraged" as the key question
- # [00:05] <chaals> ... I am not convinced we are encouraging this behavious with CORS. Are we making it any more likely?
- # [00:05] <timeless> s/vous/vour/
- # [00:06] <chaals> MM: Problem is not encouraging lack of checking, problem is creating a demand for checking that cannot actually be met.
- # [00:06] <chaals> ... if authority is carried along then there is no problem.
- # [00:07] <chaals> ... Existence of CORS doesn't force servers to make decisions based on origin. If servers make the decision based on extra information carried alongside.
- # [00:07] <chaals> Rob: CORS doesn't create the vulnerability, it creates a communication path.
- # [00:07] * Quits: Kai (chatzilla@72.254.114.142) (Ping timeout)
- # [00:07] <chaals> MM: Creates an conditional path. if it were unconditional there wouldn't be a problem.
- # [00:07] <chaals> AvK: It needs to be conditional
- # [00:08] <chaals> MM: And therefore it is inherently an access control problem.
- # [00:08] <chaals> AR: zakim, close the queue
- # [00:08] <chaals> zakim, close the queue
- # [00:08] <Zakim> ok, chaals, the speaker queue is closed
- # [00:08] * Joins: Kangchan (Kangchan@72.254.83.174)
- # [00:08] <tlr> q+
- # [00:08] * Zakim whispers to tlr that the speaker queue has been closed
- # [00:09] * Parts: Kangchan (Kangchan@72.254.83.174)
- # [00:09] <chaals> AR: You have shown a model where Confused Deputy can be createed. I think there are clear scenarios shown where it cannot be a problem. There are use cases CORS addresses that solve badnesses people used in the past.
- # [00:09] <chaals> ... there is some case to draw these examples and explain them as bad design.
- # [00:09] <chaals> TC: Yes. Ditto HTTP auth, but we saw people actually used it in a way that led to problems, and we suspect that CORS will be used widely to produce such problems.
- # [00:10] <chaals> DS: Let's say we keep it as is, and describe carefully how it should not be used and explain the problems.
- # [00:10] <chaals> ... nobody wants to create insecure interfaces. Can we show them why not to do A, and why to do B instead, would that work?
- # [00:10] <chaals> zakim, open queue
- # [00:10] <Zakim> ok, chaals, the speaker queue is open
- # [00:10] <chaals> q+ tlr
- # [00:10] * Zakim sees arun, tlr on the speaker queue
- # [00:11] <chaals> zakim, close queue
- # [00:11] <Zakim> ok, chaals, the speaker queue is closed
- # [00:11] * Quits: mmani (c6980d43@128.30.52.43) (Quit: CGI:IRC (Ping timeout))
- # [00:11] <arun> ack arun
- # [00:11] * Zakim sees tlr on the speaker queue
- # [00:11] <chaals> MM: yes...
- # [00:11] * tlr thx chaals
- # [00:11] <chaals> ... point is to enable people to write applications that are useful and secure, and that requires education, any solution we have will require that.
- # [00:12] <chaals> ... The question is not whether you can make things secure, the question is whether you can modularise sensible decisions and then compose them to make problems, you have created a fail.
- # [00:12] <chaals> DS: There are inherent composition problems. Can we forestall those in practice?
- # [00:13] * ArtB note to Chaals: I need to start chairing a widgets meeting at the bottom of the hour; will leave here in a few mins ...
- # [00:13] <mjs> q+
- # [00:13] * Zakim whispers to mjs that the speaker queue has been closed
- # [00:14] <mjs> awww
- # [00:14] <chaals> MM: If the token is passed along with the request, and origin is only used for forensics (logging who asked for what) then you don't have a problem because access came from the right token, and you have forensics to find out where bad requests are coming from, you are reacting to having allowed inappropriate access, and then CD is lesser evil.
- # [00:16] <chaals> TLR: Hear the argument a lot that X is a bad application design decision - and that is true. Often they are poor decisions under composition. THinking through, what kind of services will use CORS? We will see relatively generic services - data bus, message bus, etc. These may well permit access to other apps, based on a mix of CORS and maybe others. And those sound like things that will get composed and therefore lead to composition problems.
- # [00:17] <chaals> ... market isn't just working in tight coordination, but people making building block services, we get into scary teritory. And I am starting to be convinced by Mark and Tyler's argument - I think we need to be really careful of it.
- # [00:18] <chaals> CMN: We will wrap here, because we are not getting to resolution
- # [00:18] <chaals> ... will look for more time to do this tomorrow
- # [00:18] * Quits: ArtB (48fe3886@128.30.52.43) (Quit: CGI:IRC (Ping timeout))
- # [00:19] <chaals> DS: Can people try to prepare clear presentations for tomorrow?
- # [00:19] <chaals> AvK: Would be good if they can be very concrete.
- # [00:19] <chaals> MM: Didn't see in the draft that a requirement is to avoid server-server communication... is that an understood requirement?
- # [00:19] <chaals> AvK: Yes...
- # [00:20] * Quits: Magnus (chatzilla@72.254.111.212) (Ping timeout)
- # [00:20] * Joins: mmani (c6980d43@128.30.52.43)
- # [00:21] * Quits: tlr (tlr@128.30.52.169) (Quit: tlr)
- # [00:21] * Quits: weinig (weinig@72.254.116.49) (Quit: weinig)
- # [00:27] * Joins: Marcos (Marcos@72.254.60.247)
- # [00:27] * Quits: johnnyg (johnnyg@216.239.45.4) (Client exited)
- # [00:27] * Joins: johnnyg (johnnyg@216.239.45.4)
- # [00:33] * Quits: Marcos (Marcos@72.254.60.247) (Quit: Marcos)
- # [00:35] * Joins: ArtB (48fe3886@128.30.52.43)
- # [00:35] * Joins: darobin (robin@72.254.116.7)
- # [00:37] * Joins: Magnus (chatzilla@72.254.111.212)
- # [00:38] * timeless is now known as timely
- # [00:38] * timeless_mbp is now known as timeless
- # [00:39] * Parts: Magnus (chatzilla@72.254.111.212) (I'm not here right now.)
- # [00:39] * Joins: weinig (weinig@72.254.116.49)
- # [00:39] * Joins: Kai (chatzilla@72.254.114.142)
- # [00:40] <chaals> Scribe: Sam
- # [00:40] <chaals> Topic: Views
- # [00:40] <chaals> ScribeNick: weinig
- # [00:41] <weinig> anne: there are a bunch of spec that refer to views
- # [00:41] <weinig> anne: rendered view/default view
- # [00:41] <weinig> anne: in reality, all implementations always return the default views
- # [00:41] <weinig> anne: we should kill the concept of views
- # [00:41] <weinig> shepazu: inventor of views thinks it was a bad idea
- # [00:42] <weinig> jonas: mozilla has support but it is a pain in the buttox
- # [00:42] <weinig> shepazu: does anyone know of any implementations
- # [00:43] <weinig> jonas: mozilla uses if for print preview, but it is not accessible from the dom
- # [00:44] <weinig> maciej: concept of views seems unnecessary, but there APIs we need to keep (AbstractView, etc)
- # [00:44] <weinig> maciej: getComputedStyle
- # [00:44] <weinig> anne: we should keep the APIs, but get rid of the concept
- # [00:45] <weinig> anne: offsetLeft, etc, will all be relative to the one true view now
- # [00:45] <weinig> shepazu: I agree completely
- # [00:48] <chaals> [discussion of details about which specs and how we organise them]
- # [00:49] <weinig> maciej: UI events need a view
- # [00:49] <weinig> RESOLUTION: Remove concept of views
- # [00:50] <weinig> MikeSmith: what about DOM Level 2?
- # [00:50] <weinig> chaals: we should issue an erratum
- # [00:50] * Quits: ArtB (48fe3886@128.30.52.43) (Quit: CGI:IRC (Ping timeout))
- # [00:51] <weinig> Paul: we can issue a note on the existing spec
- # [00:51] <weinig> Paul: for the TR page
- # [00:51] <weinig> chaals: we want to point out that there is an "untruth" in the DOM Level 2 spec which people are reading
- # [00:52] <chaals> SW: I implemented some stuff in CSSOM for fun, and we found that CaretRangeForPoint is less useful than we would like
- # [00:52] <chaals> s/For/fROM/
- # [00:53] * anne and lowercase c, yadayada
- # [00:53] <chaals> ... one of the constraints is that it is only over what would be editable. For areas that look/are selectable, they don't necessarily have a DOM range.
- # [00:53] <chaals> ... Use case was dictionary popup - want to know what word you are over.
- # [00:53] <chaals> DS: Ditto in IMEs
- # [00:54] * Quits: pererik (pe@72.254.62.138) (Client exited)
- # [00:54] <chaals> AvK: Maciej proposed to change to CaretPositionFrom Point, which is an offset integer from the current node (number of characters...)
- # [00:54] * chaals Scribe??
- # [00:55] <weinig> chaals: in the case where the parent is an element, it can be an awkward API
- # [00:55] * Joins: dom (dom@128.30.52.169)
- # [00:55] <chaals> s/chaals/maciej/
- # [00:55] <weinig> eek
- # [00:55] <timeless> ACTION: ArtB to notify Widgets WG that they have 2 weeks to review WARP
- # [00:55] * Quits: arve (arve@213.236.208.22) (Ping timeout)
- # [00:55] * trackbot noticed an ACTION. Trying to create it.
- # [00:55] * RRSAgent records action 5
- # [00:55] <trackbot> Created ACTION-434 - Notify Widgets WG that they have 2 weeks to review WARP [on Arthur Barstow - due 2009-11-09].
- # [00:55] * Joins: pererik (pe@72.254.62.138)
- # [00:56] <weinig> maciej: there is no way to know all the of the names of the form controls
- # [00:56] <weinig> tl: can css change things into form controls
- # [00:57] <weinig> maciej: there is css-appearance
- # [00:57] <weinig> maciej: there is svg:textarea
- # [00:57] <weinig> anne: that has ranges inside it if is editable
- # [00:59] <weinig> maciej: 3 cases, 1) if you hit a text node: the containing node is the text node, the offset is the offset into the text node
- # [00:59] * Joins: johnnyg_ (johnnyg@216.239.45.4)
- # [00:59] <weinig> maciej: 2) if you hit a form control, the container is the control, the offset is the offset in the control
- # [01:00] * Quits: aroben (aroben@71.58.77.15) (Connection reset by peer)
- # [01:00] <chaals> SW: With range ability to get position you can get a bounding box of the collapsed range
- # [01:00] * Quits: johnnyg_ (johnnyg@216.239.45.4) (Quit: johnnyg_)
- # [01:01] <weinig> maciej: 3) if you hit an element, you get the element as the container, the offset is the range offset
- # [01:01] <weinig> anne: the caretPosition object should have a range attribute, which is null for form controls
- # [01:02] * Quits: johnnyg (johnnyg@216.239.45.4) (Ping timeout)
- # [01:03] <chaals> SW: do we want to make stuff aware of CSS transforms, or add a new set of APIs that return quads based on 2d transforms except giving quads?
- # [01:03] <weinig> anne: dean (apple) asked me about that, people from apple have been asking me about it as well
- # [01:05] <weinig> maciej: returning the bounding box seems like the most sensible thing
- # [01:05] <weinig> jonas: that is what is done for svg
- # [01:05] * Quits: Vladimir (chatzilla@72.254.59.5) (Ping timeout)
- # [01:05] <weinig> maciej: but we should have quad apis as well
- # [01:06] <weinig> maciej: maybe we only need 3 points, maybe we want 4 for perspective transforms
- # [01:06] <weinig> maciej: math is hard
- # [01:06] * Joins: Nikunj (Adium@72.254.61.241)
- # [01:06] <weinig> s/jonas/anne/
- # [01:06] * Joins: johnnyg (johnnyg@216.239.45.4)
- # [01:07] * Joins: Marcos (Marcos@72.254.60.247)
- # [01:08] * Joins: Travis (48fe7126@128.30.52.43)
- # [01:09] <weinig> maciej: all we really need is a way to take the bounding box and convert it page space
- # [01:09] <anne> http://www.w3.org/TR/2009/WD-css3-2d-transforms-20090320/#dom-interfaces
- # [01:09] * Joins: tlr (tlr@128.30.52.169)
- # [01:10] <weinig> maciej: we need a way to convert a point from node to page space (and vice-versa) as well
- # [01:10] <weinig> anne: what is the coordinate system of the node
- # [01:10] <weinig> chaals: it is the point in the transformed node
- # [01:10] <weinig> chaals does something with his hands
- # [01:10] * Zakim whispers to weinig that the speaker queue has been closed
- # [01:10] <chaals> zakim, open queue
- # [01:10] <Zakim> ok, chaals, the speaker queue is open
- # [01:11] * Joins: Nikunj1 (Adium@72.254.61.241)
- # [01:11] * Quits: Nikunj (Adium@72.254.61.241) (Connection reset by peer)
- # [01:11] <weinig> anne: we should probably try and move these apis away from the window if we can
- # [01:12] * Quits: soonho (soonho@72.254.114.255) (Quit: soonho)
- # [01:12] <chaals> Proposed RESOLUTION: Anne will (get help from some clever guy at Apple to) spec up the ability to get the bounding box, under transformations, and the bounding box of the transformed quad within the page
- # [01:12] * Joins: arve (arve@212.251.179.162)
- # [01:13] <chaals> RESOLUTION: Anne will (get help from some clever guy at Apple to) spec up the ability to get the bounding box, under transformations, and the bounding box of the transformed quad within the page
- # [01:13] <chaals> adjourned
- # [01:13] <weinig> adjourned
- # [01:13] <chaals> s/adjourned/in recess/
- # [01:14] <chaals> s/adjourned/in recess/
- # [01:14] * Quits: Nikunj1 (Adium@72.254.61.241) (Ping timeout)
- # [01:16] * Quits: Kai (chatzilla@72.254.114.142) (Ping timeout)
- # [01:17] * Quits: pererik (pe@72.254.62.138) (Ping timeout)
- # [01:18] * Quits: Marcos (Marcos@72.254.60.247) (Quit: Marcos)
- # [01:19] * Quits: mmani (c6980d43@128.30.52.43) (Quit: CGI:IRC)
- # [01:23] * Joins: soonho (soonho@72.254.114.255)
- # [01:23] * Joins: Marcos (Marcos@72.254.60.247)
- # [01:28] * Quits: Vagner_W3C_Brasil (chatzilla@72.254.81.150) (Ping timeout)
- # [01:30] * Quits: shepazu (schepers@128.30.52.169) (Quit: shepazu)
- # [01:30] * Quits: timeless (timeless@72.254.57.15) (Quit: timeless)
- # [01:31] * Quits: Marcos (Marcos@72.254.60.247) (Quit: Marcos)
- # [01:33] * Quits: Travis (48fe7126@128.30.52.43) (Quit: CGI:IRC (Ping timeout))
- # [01:33] * Joins: timeless_mbp (timeless@72.254.57.15)
- # [01:34] * Joins: Kai (chatzilla@72.254.114.142)
- # [01:38] * Joins: Nikunj (Adium@148.87.1.171)
- # [01:41] * Joins: Marcos (Marcos@72.254.60.247)
- # [01:41] * Joins: ArtB (48fe3886@128.30.52.43)
- # [01:51] * Quits: johnnyg (johnnyg@216.239.45.4) (Quit: johnnyg)
- # [01:52] * Joins: shepazu (schepers@128.30.52.169)
- # [01:53] * Quits: shepazu (schepers@128.30.52.169) (Client exited)
- # [01:54] * Parts: soonho (soonho@72.254.114.255)
- # [01:58] * Joins: shepazu (schepers@128.30.52.169)
- # [02:01] <chaals> Scribe: Maciej
- # [02:01] <mjs> avk: ISSUE-33 - should re-entrance be allowed for readystatechange
- # [02:01] <chaals> ScribeNick: mjs
- # [02:01] <mjs> ISSUE-33
- # [02:02] <mjs> js: so are you not allowed to call open? does that throw an exception?
- # [02:02] <mjs> avk: in IE yes
- # [02:02] <shepazu> trackbot, start telcon
- # [02:02] * trackbot is starting a teleconference
- # [02:02] <trackbot> RRSAgent, make logs public
- # [02:02] <RRSAgent> I have made the request, trackbot
- # [02:02] <trackbot> Zakim, this will be WAPP
- # [02:02] <Zakim> I do not see a conference matching that name scheduled within the next hour, trackbot
- # [02:02] <trackbot> Meeting: Web Applications Working Group Teleconference
- # [02:02] <trackbot> Date: 02 November 2009
- # [02:02] <shepazu> ISSUE-33?
- # [02:02] * trackbot getting information on ISSUE-33
- # [02:02] <trackbot> ISSUE-33 -- Shoulld re-entrance be allowed foronreadystatechange? -- OPEN
- # [02:02] <trackbot> http://www.w3.org/2008/webapps/track/issues/33
- # [02:02] <mjs> tl: if you open from a readystatechange handler on the same object?
- # [02:02] <mjs> js: yes:
- # [02:02] <mjs> tl: I don't know what IE does
- # [02:03] <mjs> avk: other browsers allow it, and restricting it would be weird
- # [02:03] <mjs> tl; sounds like it's a synchronous event allowing re-entrancy
- # [02:04] <mjs> js: my recollection is it was more a concern with later readystates like 3 or 4
- # [02:04] <mjs> js: I know we just allow anything anywhere, I don't remember what IE does
- # [02:05] <mjs> ACTION: travis To research what IE does for readystate re-entry (for ISSUE-33)
- # [02:05] * trackbot noticed an ACTION. Trying to create it.
- # [02:05] * RRSAgent records action 6
- # [02:05] <trackbot> Created ACTION-436 - Research what IE does for readystate re-entry (for ISSUE-33) [on Travis Leithead - due 2009-11-10].
- # [02:05] <mjs> sw: I think readystatechange is async
- # [02:05] <mjs> js: not always
- # [02:07] <mjs> avk: (explains details)
- # [02:09] <mjs> ISSUE-103
- # [02:09] <mjs> ISSUE-103?
- # [02:09] * trackbot getting information on ISSUE-103
- # [02:09] <trackbot> ISSUE-103 -- accessing status/statusText/getResponseHeader()/getAllResponseHeaders() -- RAISED
- # [02:09] <trackbot> http://www.w3.org/2008/webapps/track/issues/103
- # [02:09] <mjs> avk: the issue is that IE throws when certain methods are called in a particular state
- # [02:11] <mjs> avk: not throwing is generally better
- # [02:11] <mjs> tl: unless there's a really good reason to throw
- # [02:13] * Quits: mmielke (mmielke@72.254.83.160) (Ping timeout)
- # [02:13] <mjs> js: it appears Firefox never throws for status but it might throw more often for statusText
- # [02:14] <mjs> js: appears to throw a random number
- # [02:15] <mjs> sw: we added throwing to match other browsers (the minimum)
- # [02:15] <mjs> js: why did you change, was it b/c websites complained?
- # [02:15] <mjs> sw: I don't remember, it might have been to change the spec
- # [02:16] <mjs> *general mumbling*
- # [02:16] <mjs> *awkward silence*
- # [02:16] <mjs> ...
- # [02:17] <mjs> avk: what are we going to do - change and not throw?
- # [02:18] <mjs> js: I'd like to err on the side of not throwing
- # [02:19] <mjs> RESOLUTION: for ISSUE-103, don't throw
- # [02:19] <mjs> the other bit for XHR1 was the test suite
- # [02:19] <mjs> ^ avk:
- # [02:19] <mjs> avk: it would be nice to have some help at some point
- # [02:20] <mjs> fo: I've got some notes which I still owe you on that
- # [02:20] <mjs> jr: do you have mark nottingham's tests? do they cover different things?
- # [02:20] <mjs> avk: probably
- # [02:20] <mjs> jr: I think he's got things checking caching
- # [02:21] <mjs> avk: the test suite has quite a lot of coverage, especially security stuff and resolving URLs
- # [02:21] <mjs> avk: there's definitely more things that can be tested
- # [02:21] <mjs> cmn: which things are those
- # [02:21] <mjs> avk: methods probably... http verbs
- # [02:21] <mjs> avk: there's a bunch of side effects that are not all covered yet, e.g. when you invoke open()
- # [02:22] <mjs> avk: *more technobabble about complicated steps*
- # [02:22] <mjs> avk: I don't think there's tests for Accept, Accept-Language, conditional GET
- # [02:23] <mjs> mjs: are the tests in cvs?
- # [02:23] <anne> http://tc.labs.opera.com/apis/XMLHttpRequest/
- # [02:23] <mjs> avk: not currently
- # [02:23] <anne> http://tc.labs.opera.com/svn/
- # [02:24] <mjs> avk: I don't really like working on tests
- # [02:24] <mjs> ds: Anne, what's your job title?
- # [02:24] <mjs> avk: I work on specs!
- # [02:25] <mjs> cmn: any volunteers to write tests?
- # [02:26] * Joins: johnnyg (johnnyg@216.239.45.4)
- # [02:26] <mjs> Scribe: Nikunj
- # [02:26] <Nikunj> avk: Starting on XHR2
- # [02:26] <chaals> Topic: XHR2
- # [02:26] <Nikunj> Issue 104?
- # [02:26] <Nikunj> No serialization defined for structured clones
- # [02:27] <Nikunj> avk: Use multi-part MIME for structured clones
- # [02:27] <Nikunj> ack: may be JSON support at some time
- # [02:27] * Quits: shepazu (schepers@128.30.52.169) (Quit: shepazu)
- # [02:27] <sicking> ISSUE-104?
- # [02:27] * trackbot getting information on ISSUE-104
- # [02:27] <trackbot> ISSUE-104 -- supporting structured clones -- RAISED
- # [02:27] <trackbot> http://www.w3.org/2008/webapps/track/issues/104
- # [02:27] <Nikunj> s/ack:/avk/
- # [02:28] <Nikunj> avk: Close 104 for now and revisit when we have a serialization format
- # [02:28] <Nikunj> avk: structured clones can include certain data types beyond JSON
- # [02:28] <Nikunj> avk: such as images and files
- # [02:28] <Nikunj> mw: used for local storage, and others
- # [02:29] <Nikunj> avk: used also in post message
- # [02:29] * Nikunj in simpledb as well
- # [02:29] <Nikunj> avk: waiting until file API to add file upload
- # [02:29] <Nikunj> avk: also waiting to append file blobs
- # [02:30] <Nikunj> avk: browser would send multipart form-data when you do send
- # [02:30] <Nikunj> avk: similar to raw html forms no
- # [02:30] <Nikunj> avk: if we can support this API then we don't need a FileList in the API
- # [02:30] <Nikunj> avk: could be Jeremy Orlow
- # [02:30] * Quits: ArtB (48fe3886@128.30.52.43) (Quit: CGI:IRC (EOF))
- # [02:31] <Nikunj> avk: append files or strings on formdata object
- # [02:31] <Nikunj> so that we don't need a method on XHR
- # [02:32] <Nikunj> avk: its been requested to serialize an html form and pass it to XHR
- # [02:32] <Nikunj> avk: so you can asynchronously upload it
- # [02:32] <Nikunj> avk: others requested - blob
- # [02:32] <Nikunj> avk: WebKit supports FileList
- # [02:33] <Nikunj> ar: File is supported in Mozilla
- # [02:33] <Nikunj> sw: WebKit also supports a single File
- # [02:33] <Nikunj> jonas: do you send the file name anywhere?
- # [02:33] <Nikunj> avk: no
- # [02:33] <Nikunj> sw: no
- # [02:33] <Nikunj> avk: how would you?
- # [02:33] <Nikunj> jonas: use some kind of header
- # [02:33] <Nikunj> avk: authors can add a headers
- # [02:33] <Nikunj> sw: we don't
- # [02:34] <Nikunj> arun: send a blob and a hypothetical object
- # [02:34] <Nikunj> avk: send would be extended to accept Blob and FormData
- # [02:34] <arun> where FormData = hypothetical object
- # [02:34] <Nikunj> avk: For FormData, the UA would set the content-type header if the author did not set it
- # [02:35] <Nikunj> arun: Is Hixie writing FormData?
- # [02:35] <Nikunj> avk: No I will do it - a small edit
- # [02:35] <Nikunj> arun: FormData append would accept a Blob?
- # [02:35] <Nikunj> avk: It would
- # [02:36] <Nikunj> avk: It seems that this would address several requests
- # [02:36] <Nikunj> arun: It seems to - a requirement that was not adequately addressed by FileAPI
- # [02:36] <Nikunj> avk: MS has a proprietary extension exposed to VBScript called ResponseBody that returns a byte array or byte stream
- # [02:37] <Nikunj> avk: we could use it or rename it to ResponseBlob
- # [02:37] <Nikunj> avk: Unless MS cares for it
- # [02:37] <Nikunj> adrian: we would like to carry on using it
- # [02:37] <Nikunj> mjs: It should not be a blob, but rather a byte array
- # [02:37] * Quits: DanC (connolly@128.30.52.169) (Client exited)
- # [02:38] <Nikunj> mjs: Blob offers only async, and if the data is already loaded then array is better
- # [02:38] <Nikunj> mjs: should not do another async
- # [02:38] <Nikunj> jonas: only thing is if you are loading a big thing, then ua will be forced to keep it in memory
- # [02:38] <Nikunj> mjs: if loading something bigger than address space, then store it
- # [02:38] <Nikunj> jonas: not looking for large streams
- # [02:39] <Nikunj> mjs: ideally ua should download large files through streaming model
- # [02:40] <Nikunj> mjs: assuming its a file object stream to a file
- # [02:40] * Quits: mjs (mjs@72.254.93.235) (Quit: mjs)
- # [02:40] <Nikunj> avk: and then access the file
- # [02:40] <Nikunj> avk: responseText already loads in to memory
- # [02:40] <Nikunj> mjs: turn off storing in memory if its large
- # [02:40] * Quits: MikeSmith (MikeSmithX@mcclure.w3.org) (Quit: Tomorrow to fresh woods, and pastures new.)
- # [02:40] <Nikunj> avk: need ECMA to figure out a binary type array
- # [02:40] <Nikunj> avk: should not be that hard - like image data
- # [02:41] <Nikunj> mjs: easy to make complicated
- # [02:41] <Nikunj> mjs: if its immutable, then it is easy to use the raw bytes as backing store
- # [02:41] <Nikunj> mjs: no thread safety issue even if passed to workers
- # [02:41] <Nikunj> mjs: immutable is harder to modify
- # [02:42] <Nikunj> mjs: most APIs make two versions of APIs available - mutable and not
- # [02:42] <Nikunj> avk: ImageData is immutable
- # [02:42] <Nikunj> mjs: backing store is canvas
- # [02:42] <Nikunj> jonas: byte array building API might be a good way to mutate ResponseBlob
- # [02:42] <Nikunj> jonas: look forward to mjs' proposal
- # [02:43] <Nikunj> avk: response thing and new things for sending out are new items
- # [02:43] * Quits: johnnyg (johnnyg@216.239.45.4) (Quit: johnnyg)
- # [02:43] <Nikunj> avk: timeout proposal is also new
- # [02:43] <Nikunj> avk: ontimeout listener for milliseconds timeout
- # [02:43] <Nikunj> avk: if the server doesn't respond, then do the abort thing and dispatch timeout event
- # [02:44] <Nikunj> avk: timeout needs to be sorted out
- # [02:44] <Nikunj> jonas: two arguments - sync XHR doesn't allow timeout
- # [02:44] <Nikunj> jonas: not allowing timeout doesn't preclude users from using it
- # [02:44] <Nikunj> avk: use workers
- # [02:44] <Nikunj> jonas: provide timeouts so that user experience is slightly better
- # [02:45] <Nikunj> avk: are you providing them?
- # [02:45] <Nikunj> jonas: yes
- # [02:45] <Nikunj> avk: timeouts are something that you should certainly have
- # [02:45] <Nikunj> jonas: almost everyone using XHR uses it anyway, so provide a convenience function
- # [02:45] <Nikunj> jonas: MS added it to XDR?
- # [02:45] <Nikunj> adrian: yes
- # [02:45] <Nikunj> sam: is it a default or an attribute?
- # [02:45] <Nikunj> adrian: attribute
- # [02:46] <Nikunj> avk: what does it do on getting?
- # [02:46] <Nikunj> jonas: its a set only
- # [02:46] <Nikunj> avk: does such a thing exist?
- # [02:46] <Nikunj> travis: doing a quick test
- # [02:46] <Nikunj> jonas: what's a good default value
- # [02:46] <Nikunj> travis: or do you timeout at all
- # [02:46] <Nikunj> adrian: if not set, it doesn't
- # [02:47] <Nikunj> adrian: so the behavior is not changed
- # [02:47] <Nikunj> adrian: XHR also has the like named attribute
- # [02:47] <Nikunj> jonas: very inclined to add the attribute to XHR2 spec
- # [02:47] * Joins: Travis (d8341cc5@128.30.52.43)
- # [02:48] <Nikunj> sam: concern - putting in the hands of the user, what is the stall for the ua?
- # [02:48] <Nikunj> sam: 10 ms is OK or 100 is OK?
- # [02:48] <Nikunj> sam: in the past any amount was OK
- # [02:48] <Travis> Reading IE's timeout property (before setting) returns -1.
- # [02:49] <Nikunj> avk: testing in different conditions, like a slow network, may find odd behavior but the other person in a good one doesn't
- # [02:49] <Nikunj> adrian: common use cases are sites doing click tracking, trying to capture when someone clicked a link
- # [02:50] <Nikunj> adrian: OK with losing data when a request is not fired in the timeout
- # [02:50] <Nikunj> adrian: here's a request to make and if the request doesn't respond we give up
- # [02:50] <Nikunj> avk: better option available - html5 ping attribute
- # [02:51] <Nikunj> adrian: there are other issues being raised, that make the option controversial and this WG is not the right forum to discuss
- # [02:51] <Nikunj> avk: not opposed to adding it, concerned that it will be abused
- # [02:51] <Nikunj> jonas: in what way?
- # [02:51] <Nikunj> avk: use sync more
- # [02:51] <Nikunj> jonas: what will help most is a test suite guide
- # [02:52] <Nikunj> jonas: go through the spec and not follow it closely, although well followed,
- # [02:52] <Nikunj> jonas: edge cases are where we differ, otherwise everyone is close
- # [02:52] <Nikunj> avk: but that makes it look pretty broken
- # [02:52] <Nikunj> jonas: not material adding new features to newer versions to getting bugs fixed
- # [02:53] <Nikunj> avk: explicit constructor for XO requests
- # [02:53] <Nikunj> jonas: that conversation is sort of CORS-existential one
- # [02:53] <Nikunj> avk: agreed
- # [02:54] <Nikunj> jonas: interesting idea to have a totally anonymous XHR object, both for X-S and S-S request
- # [02:54] <Nikunj> travis: which is XDR
- # [02:54] <Nikunj> jonas: but that sends Origin
- # [02:55] <Nikunj> avk: proposed resolution on timeouts for XHR2
- # [02:55] <Nikunj> avk: to add
- # [02:56] <Nikunj> nikunj: would we do it to file?
- # [02:56] * Joins: ArtB (48fe3886@128.30.52.43)
- # [02:56] * Quits: Travis (d8341cc5@128.30.52.43) (Quit: CGI:IRC (EOF))
- # [02:56] <Nikunj> jonas: not required to follow a single style in general
- # [02:56] <Nikunj> jonas: hesitant to draw a connection?
- # [02:56] <Nikunj> adrian: a case to be made for XHR things to be repeated elsewhere
- # [02:56] <Nikunj> adrian: timeout is not one of those things
- # [02:57] <Nikunj> adrian: network requests cause timeouts to matter
- # [02:57] <Nikunj> adrian: it seems less likely to need them for files
- # [02:57] <Nikunj> jonas: much less likely for a file request to time out
- # [02:57] <Nikunj> sam: network files time out
- # [02:57] <Nikunj> adrian: edge case
- # [02:58] <Nikunj> avk: also need resolution on FormData
- # [02:58] <Nikunj> jonas: iffy about that
- # [02:58] <Nikunj> jonas: seems weird to create a new object for creating an object only to send to another one
- # [02:58] <Nikunj> avk: not ugly, can reuse it
- # [02:58] <Nikunj> sam: websockets may also want to do it
- # [02:58] <Nikunj> jonas: really?
- # [02:59] <Nikunj> everyone: laughing loud
- # [02:59] <Nikunj> chaals: consensus?
- # [02:59] <Nikunj> sam: I don't object, not excited
- # [02:59] <Nikunj> jonas: it helps to abort a connection if it takes too long
- # [02:59] <Nikunj> sam: agreed, but not a strong enough reason because that might be only one of the ways to do it
- # [03:00] <Nikunj> jonas: could use setTimeout
- # [03:00] <Nikunj> jonas: risk that people may use sync XHR more
- # [03:00] <Nikunj> jonas: we fired timeouts during syncXHR
- # [03:00] <Nikunj> jonas: fallback was to wait longer
- # [03:00] <Nikunj> jonas: not ideal
- # [03:00] <Nikunj> jonas: some people may never switch away from sync XHR?
- # [03:01] <Nikunj> adrian: we shipped timeouts
- # [03:01] <Nikunj> adrian: good idea
- # [03:01] <Nikunj> chaals: any objections?
- # [03:01] <Nikunj> sam: risks in either direction
- # [03:02] <Nikunj> adrian: also supported for sync XHR
- # [03:02] <Nikunj> RESOLUTION: Anne to put timeout attribute in XHR
- # [03:02] <Nikunj> avk: Proposal to overload send for Blob objects
- # [03:02] <Nikunj> avk: FormData contains a constructor and accepts either Blob or DOMString
- # [03:03] <Nikunj> which serializes as multipart/form-data
- # [03:03] <Nikunj> sam: support strongly Send Blob with File
- # [03:03] <Nikunj> sam: other one need to see a proposal and remove it if that looks terrible
- # [03:03] <Nikunj> jonas: feels same way
- # [03:03] <anne> http://lists.w3.org/Archives/Public/public-webapps/2009OctDec/0244.html
- # [03:04] <Nikunj> RESOLUTION: Copy and paste this into the proposal on FormData and Blobs
- # [03:04] <Nikunj> jonas: like to implement streaming
- # [03:06] <Nikunj> jonas: loading something means you are adding something constantly to the DOMString, using exponential memory. Having some way where you can store data to the file object or a way to erase the differential read since last event. Impl can throw the rest of the data away
- # [03:06] <Nikunj> avk: can we use server sent events?
- # [03:06] <Nikunj> jonas: this is not for that, but for large files
- # [03:06] <Nikunj> jonas: its started from server sent events, but different
- # [03:06] <Nikunj> avk: use cases are required
- # [03:07] <Nikunj> chaals: good proposal not quite a finished
- # [03:07] <Nikunj> chaals: need a meatier proposal
- # [03:07] <Nikunj> jonas: would do
- # [03:07] <Nikunj> chaals: how far from XHR?
- # [03:07] <Nikunj> avk: ask jonas, sam, and adrian
- # [03:08] <Nikunj> avk: if everyone finishes implementation, then we are done
- # [03:08] <Nikunj> jonas: start writing test cases
- # [03:08] * Quits: darobin (robin@72.254.116.7) (Ping timeout)
- # [03:08] <Nikunj> adrian: take it first to LC, then the test suites will happen before CR
- # [03:09] <Nikunj> avk: ISSUE-33 needs to be resolved first
- # [03:09] <Nikunj> travis: it is already re-entrant
- # [03:09] <Nikunj> chaals: so we can close the issue?
- # [03:09] <Nikunj> jonas: can we go to LC?
- # [03:09] <Nikunj> chaals: we need a formal vote
- # [03:09] <Nikunj> avk: need to edit the spec first
- # [03:10] <Nikunj> RESOLUTION: Close ISSUE-33 because everyone is re-entrant
- # [03:10] * Quits: tlr (tlr@128.30.52.169) (Quit: tlr)
- # [03:10] <Nikunj> chaals: should we take anne's draft to LC?
- # [03:11] <Nikunj> avk: this is the third LC
- # [03:11] <Nikunj> chaals: RESOLUTION: XHR goes to Last Call
- # [03:11] * Quits: JonathanJ (hollobit@72.254.116.68) (Quit: JonathanJ)
- # [03:11] * Quits: weinig (weinig@72.254.116.49) (Quit: weinig)
- # [03:11] * ArtB Note to Chaals -> update the APIs agenda re CORS switch: http://www.w3.org/2008/webapps/wiki/TPAC2009APIs#Monday.2C_November_2
- # [03:11] <Nikunj> chaals: meeting is adjourned
- # [03:12] * Quits: Marcos (Marcos@72.254.60.247) (Quit: Marcos)
- # [03:12] * Quits: timeless_mbp (timeless@72.254.57.15) (Quit: timeless_mbp)
- # [03:12] * Quits: Kai (chatzilla@72.254.114.142) (Quit: ChatZilla 0.9.85 [Firefox 3.5.3/20090824101458])
- # [03:13] * Quits: Nikunj (Adium@148.87.1.171) (Quit: Leaving.)
- # [03:13] * Quits: noahm (noah_mende@72.254.93.185) (Ping timeout)
- # [03:13] <chaals> rrsagent, draft minutes
- # [03:13] <RRSAgent> I have made the request to generate http://www.w3.org/2009/11/02-webapps-minutes.html chaals
- # [03:13] * Joins: jorlow (jorlow@216.239.45.4)
- # [03:13] * Quits: arun (arun@72.254.57.36) (Quit: arun)
- # [03:15] * Quits: ArtB (48fe3886@128.30.52.43) (Quit: CGI:IRC (EOF))
- # [03:17] * Joins: Marcos (Marcos@72.254.60.247)
- # [03:17] * Quits: sicking (chatzilla@72.254.59.32) (Ping timeout)
- # [03:19] * Parts: shiki (sokasaka@72.254.84.7)
- # [03:20] * Parts: anne (annevk@72.254.94.228)
- # [03:26] * Quits: Marcos (Marcos@72.254.60.247) (Ping timeout)
- # [03:45] * Quits: chaals (chaals@72.254.116.154) (Quit: chaals)
- # [04:05] * Quits: jorlow (jorlow@216.239.45.4) (Quit: jorlow)
- # [04:16] * Zakim excuses himself; his presence no longer seems to be needed
- # [04:16] * Parts: Zakim (rrs-bridgg@128.30.52.30)
- # [04:19] * Joins: Nikunj (Adium@148.87.1.172)
- # [04:38] * Joins: mmielke (mmielke@72.254.107.105)
- # [04:44] * Joins: arun (arun@75.36.190.9)
- # [04:51] * Quits: mmielke (mmielke@72.254.107.105) (Ping timeout)
- # [04:52] * Joins: mmielke (mmielke@72.254.107.105)
- # [04:53] * Quits: Nikunj (Adium@148.87.1.172) (Quit: Leaving.)
- # [04:59] * Joins: sicking (chatzilla@69.181.197.163)
- # [05:01] * Joins: jorlow (jorlow@216.239.45.4)
- # [05:06] * Quits: jorlow (jorlow@216.239.45.4) (Quit: jorlow)
- # [05:07] * Joins: jorlow (jorlow@216.239.45.4)
- # [05:31] * Joins: Nikunj (Adium@148.87.1.170)
- # [05:42] * Joins: jorlow_ (jorlow@67.218.107.6)
- # [05:43] * Joins: mjs (mjs@69.181.42.237)
- # [05:43] * Quits: jorlow (jorlow@216.239.45.4) (Ping timeout)
- # [05:43] * jorlow_ is now known as jorlow
- # [06:03] * Quits: mmielke (mmielke@72.254.107.105) (Ping timeout)
- # [06:20] * Quits: jorlow (jorlow@67.218.107.6) (Quit: jorlow)
- # [06:27] * Joins: jorlow (jorlow@67.180.199.19)
- # [06:53] * Joins: jorlow_ (jorlow@216.239.44.65)
- # [06:55] * Quits: jorlow (jorlow@67.180.199.19) (Ping timeout)
- # [06:55] * jorlow_ is now known as jorlow
- # [07:07] * Joins: johnnyg (johnnyg@64.1.210.2)
- # [07:29] * Quits: arve (arve@212.251.179.162) (Ping timeout)
- # [07:31] * Quits: hober (ted@174.143.153.77) (Quit: ERC Version 5.3 (IRC client for Emacs))
- # [07:37] * Joins: Marcos (Marcos@72.254.60.247)
- # [07:43] * Joins: DanC (connolly@128.30.52.169)
- # [07:44] * Quits: arun (arun@75.36.190.9) (Quit: arun)
- # [07:50] * Joins: timeless_mbp (timeless@24.6.182.21)
- # [07:55] * Quits: johnnyg (johnnyg@64.1.210.2) (Quit: johnnyg)
- # [07:59] * Joins: hober (ted@174.143.153.77)
- # [08:11] * Joins: shepazu (schepers@128.30.52.169)
- # [08:19] * Quits: DanC (connolly@128.30.52.169) (Client exited)
- # [08:25] * Joins: arve (arve@213.236.208.22)
- # [08:28] * Joins: weinig (weinig@67.180.35.124)
- # [08:31] * Quits: Marcos (Marcos@72.254.60.247) (Quit: Marcos)
- # [08:35] * Joins: Marcos (Marcos@72.254.60.247)
- # [08:42] * Quits: sicking (chatzilla@69.181.197.163) (Client exited)
- # [08:54] * Quits: Marcos (Marcos@72.254.60.247) (Quit: Marcos)
- # [09:25] * Joins: Nikunj1 (Adium@24.130.214.77)
- # [09:27] * Quits: Nikunj (Adium@148.87.1.170) (Ping timeout)
- # [09:39] * Quits: weinig (weinig@67.180.35.124) (Quit: weinig)
- # [09:59] * Joins: Nikunj (Adium@148.87.1.167)
- # [10:00] * Quits: Nikunj1 (Adium@24.130.214.77) (Ping timeout)
- # [10:58] * Quits: Nikunj (Adium@148.87.1.167) (Quit: Leaving.)
- # [11:30] * Quits: jorlow (jorlow@216.239.44.65) (Quit: jorlow)
- # [12:15] * Quits: shepazu (schepers@128.30.52.169) (Ping timeout)
- # [13:04] * Joins: smaug_ (chatzilla@82.181.150.24)
- # [13:58] * Joins: arun (arun@75.36.190.9)
- # [14:32] * Joins: annevk (opera@72.254.82.30)
- # [15:35] * Quits: arve (arve@213.236.208.22) (Quit: Ex-Chat)
- # [15:50] * Joins: ArtB (c0646811@128.30.52.43)
- # [16:00] * Joins: aroben (aroben@71.58.77.15)
- # [16:02] * Joins: johnnyg (johnnyg@64.1.210.2)
- # [16:03] * Quits: johnnyg (johnnyg@64.1.210.2) (Quit: johnnyg)
- # [16:03] * Quits: ArtB (c0646811@128.30.52.43) (Quit: CGI:IRC (EOF))
- # [16:09] * Joins: Nikunj (Adium@24.130.214.77)
- # [16:11] * Joins: noahm (noah_mende@12.43.172.10)
- # [16:26] * Quits: arun (arun@75.36.190.9) (Quit: arun)
- # [16:27] * Joins: shepazu (schepers@128.30.52.169)
- # [16:28] * Quits: Nikunj (Adium@24.130.214.77) (Quit: Leaving.)
- # [16:28] * Joins: mmielke (mmielke@72.254.124.123)
- # [16:36] * Quits: timeless_mbp (timeless@24.6.182.21) (Quit: timeless_mbp)
- # [16:46] * Quits: noahm (noah_mende@12.43.172.10) (Ping timeout)
- # [16:51] * Joins: Marcos (Marcos@72.254.89.39)
- # [17:03] * Quits: Marcos (Marcos@72.254.89.39) (Quit: Marcos)
- # [17:03] * Quits: mjs (mjs@69.181.42.237) (Quit: mjs)
- # [17:09] * Joins: Marcos (Marcos@72.254.89.39)
- # [17:10] * Joins: tlr (tlr@128.30.52.169)
- # [17:25] * Joins: weinig (weinig@72.254.102.177)
- # [17:28] * Quits: shepazu (schepers@128.30.52.169) (Quit: shepazu)
- # [17:31] * Joins: ArtB (c0646811@128.30.52.43)
- # [17:34] * Parts: dom (dom@128.30.52.169)
- # [17:35] * Joins: AdamB (Adam@72.254.102.67)
- # [17:37] * Joins: soonho (soonho@72.254.101.50)
- # [17:37] * Parts: soonho (soonho@72.254.101.50)
- # [17:37] * Joins: darobin (robin@72.254.94.220)
- # [17:37] * Quits: AdamB (Adam@72.254.102.67) (Quit: AdamB)
- # [17:38] * Quits: mmielke (mmielke@72.254.124.123) (Ping timeout)
- # [17:41] * Quits: Marcos (Marcos@72.254.89.39) (Quit: Marcos)
- # [17:45] * Quits: tlr (tlr@128.30.52.169) (Quit: tlr)
- # [17:47] * Joins: mmielke (mmielke@72.254.93.74)
- # [17:47] * mmielke is now known as markusm
- # [17:48] * Joins: shiki (sokasaka@72.254.102.153)
- # [17:49] * Quits: shiki (sokasaka@72.254.102.153) (Quit: shiki)
- # [17:49] * Joins: shiki (sokasaka@72.254.102.153)
- # [17:53] * Joins: AdamB (Adam@72.254.102.67)
- # [17:53] * Joins: pererik (pe@72.254.103.214)
- # [17:57] * Quits: ArtB (c0646811@128.30.52.43) (Quit: CGI:IRC (Ping timeout))
- # [17:57] * Joins: timeless_mbp (timeless@72.254.56.103)
- # [17:58] * Parts: AdamB (Adam@72.254.102.67)
- # [17:59] * Joins: arve (arve@213.236.208.22)
- # [18:00] * Joins: chaals (chaals@72.254.82.7)
- # [18:00] * Joins: Zakim (rrs-bridgg@128.30.52.30)
- # [18:03] * Joins: ArtB (48fe5d4c@128.30.52.43)
- # [18:03] * Joins: JonathanJ (hollobit@72.254.93.129)
- # [18:05] * Joins: Nikunj (Adium@72.254.104.65)
- # [18:06] * Joins: VagnerW3CBrasil (chatzilla@72.254.100.54)
- # [18:08] * Quits: annevk (opera@72.254.82.30) (Ping timeout)
- # [18:09] * Joins: sicking (chatzilla@72.254.57.85)
- # [18:09] * Joins: Marcos (Marcos@72.254.89.39)
- # [18:09] <sicking> scribe:sicking
- # [18:09] * Joins: Kai (chatzilla@72.254.88.78)
- # [18:09] <sicking> scribe:s icking
- # [18:09] <sicking> scribe: sicking
- # [18:10] * Joins: tlr (tlr@128.30.52.169)
- # [18:10] <weinig> [The spec we will discussing is available at http://dev.w3.org/2006/webapi/WebIDL/]
- # [18:10] * Joins: Vladimir (chatzilla@72.254.119.66)
- # [18:11] * Joins: annevk (opera@72.254.82.30)
- # [18:11] * gavin__ is now known as gavin_
- # [18:11] * Joins: Lachy (Lachlan@72.254.56.137)
- # [18:12] <sicking> topic: WebIDL yo
- # [18:13] <sicking> AR: Arun
- # [18:13] <chaals> Present: Chaals, Sam, Per Erik, Vladimir, Satoshi, Shiki, Arun, Nikunj, Anne, Rob, Lachlan, Jonas, Travis, Adrian,
- # [18:14] * annevk will probably have to leave around 10AM for some CSSOM thingie
- # [18:14] <sicking> SW: introduction about webidl
- # [18:15] * Joins: Travis (d8341cc5@128.30.52.43)
- # [18:16] <weinig> http://dev.w3.org/2006/webapi/WebIDL/
- # [18:16] <sicking> AR: there's some things that are still left loose, we should define those stricter
- # [18:16] <sicking> SW: ok, got specific issues?
- # [18:17] <sicking> AR: how are exceptions done?
- # [18:17] <sicking> AR: missing primitives like ByteArray
- # [18:17] <sicking> SW: have to check spec re exceptions
- # [18:17] <sicking> SW: re bytearray, it's a question of scope
- # [18:18] <sicking> SW: spec already big. Contains gramar, some basic primitives like getters/setters/stringifyers, also some types and extended attributes
- # [18:18] <sicking> SW: sequences would be useful
- # [18:19] <sicking> JS: need to define what exactly a seqnece is
- # [18:19] <sicking> SW: sequence is a JS array, array is a host object
- # [18:19] * Joins: howard (howard@72.254.122.179)
- # [18:19] <weinig> http://dev.w3.org/2006/webapi/WebIDL/#es-sequence
- # [18:20] * Joins: shepazu (schepers@128.30.52.169)
- # [18:20] <sicking> SW: NodeList seems to map closer to array
- # [18:21] <sicking> JS: NodeList is readonly, so can't be a simple JS-array
- # [18:21] <sicking> NM: is anyone actually using Array?
- # [18:21] <sicking> ...crickets...
- # [18:21] * Quits: howard (howard@72.254.122.179) (Quit: User pushed the X - because it's Xtra, baby)
- # [18:22] <sicking> SW: don't know of any specs that use it. Maybe NodeList could be expressed as an Array
- # [18:23] <sicking> SW: might not be worth putting Array in v1 if no one is using it
- # [18:23] * Joins: howard (howard@72.254.122.179)
- # [18:23] <annevk> hmm, I think sequence<> needs to map to an object that has item() and length; is that the case?
- # [18:24] <sicking> TL: TC-39 is taking interest
- # [18:24] * Joins: MikeSmith (MikeSmithX@mcclure.w3.org)
- # [18:24] <annevk> well, it would be nice to have a shorthand for NodeList like interfaces
- # [18:24] * Parts: howard (howard@72.254.122.179)
- # [18:24] <annevk> not sure if it needs to be sequence<>
- # [18:24] <sicking> TL: I expressed it to them as an grammar language, and a binding language
- # [18:25] <sicking> TL: they took a lot interest in the binding part
- # [18:25] * Quits: Lachy (Lachlan@72.254.56.137) (Connection reset by peer)
- # [18:25] <sicking> TL: TC-39 expressed interest in owning the JS bindings, claiming they had more expertize
- # [18:26] * Joins: Lachy (Lachlan@72.254.56.137)
- # [18:26] <sicking> SW: I think the main value of webidl is the bindings, not so much the grammar
- # [18:26] <sicking> TL: agreed
- # [18:26] <sicking> AvK: also value for spec authors
- # [18:26] * Quits: Vladimir (chatzilla@72.254.119.66) (Ping timeout)
- # [18:26] <sicking> SW: concerned about splitting out bindings
- # [18:27] <sicking> TL: then they should be able to participate
- # [18:27] <sicking> SW: most definitely
- # [18:27] * Joins: Vladimir (chatzilla@72.254.119.66)
- # [18:28] <sicking> DS: I'm also concerned about splitting it. Splitting things in two leads to overhead and poor coordination
- # [18:28] <chaals> Present+ Maciej
- # [18:28] <chaals> Present+ Doug
- # [18:28] <sicking> Present+ Sicking
- # [18:28] <MikeSmith> RRSAgent, make minutes
- # [18:28] <RRSAgent> I have made the request to generate http://www.w3.org/2009/11/02-webapps-minutes.html MikeSmith
- # [18:28] <sicking> SW: there are things we could split, like deprecated features
- # [18:28] * annevk ... so now both Jonas and Sicking are present
- # [18:29] * Joins: arun (arun@72.254.62.163)
- # [18:29] * Joins: mjs (mjs@72.254.84.91)
- # [18:29] <sicking> annevk, that's how I roll
- # [18:29] <shepazu> s/coordination/coordination... I would be happy to have it worked on jointly, if we can do that, and public-script-coord should help
- # [18:29] <sicking> MJS: even such a split is concerning. Similar to how ecmascript leaves host objects largely undefined
- # [18:30] <sicking> SW: agreed
- # [18:30] <MikeSmith> Present+ MikeSmith
- # [18:30] * Quits: Nikunj (Adium@72.254.104.65) (Ping timeout)
- # [18:30] <sicking> MJS: explicitly noting that certain things are deprecated could still be done
- # [18:30] <annevk> Present+ Julian
- # [18:30] <sicking> TL: do we know what we want to mark as deprecated
- # [18:31] <sicking> SW: custom deleters
- # [18:31] <sicking> MJS: also catch-alls in general
- # [18:31] <sicking> MJS: not neccesarily consencus that catchalls are always bad
- # [18:32] <sicking> MJS: separately, seems to be consensus that array-like accessors are ok
- # [18:32] <sicking> AvK: what does "deprecated" even mean?
- # [18:32] <sicking> SW: that a feature shouldn't be used in new interfaces, but is described for legacy reasons
- # [18:33] * Joins: Nikunj (Adium@72.254.104.65)
- # [18:33] <sicking> MJS: multiple inheritance might not be needed by existing browsers
- # [18:34] <sicking> MJS: however SVG uses it
- # [18:34] <sicking> MJS: browsers don't seem to implement SVGs stuff as real multiple inheritance. Simply implemented as separate interfaces
- # [18:35] <sicking> TL: there is a desire from TC-39: don't allow bindings to do things that aren't allowed by ecmascript itself
- # [18:35] <sicking> TL: want to be able to implement DOM in ecmascript
- # [18:36] <sicking> MJS: if you look at it as a two-sided converging then it makes sense. I.e. add features to ES to allow it to do more, and deprecate features from webidl that ES can't do
- # [18:37] <sicking> TL: want to mark things that will *never* be part of ES as deprecated
- # [18:38] <sicking> SW: how to we determine what will never be part of ES?
- # [18:38] <sicking> MJS: It's very hard. Not even catchalls are for sure never going to be a part of ES
- # [18:38] <sicking> CM: guessing the future is hard
- # [18:39] * Quits: Lachy (Lachlan@72.254.56.137) (Connection reset by peer)
- # [18:39] <sicking> DS: when do we expect webidl to progress to LC and beyond
- # [18:39] <sicking> DS: and all those other fuzzy W3C rules
- # [18:39] * Joins: Lachy (Lachlan@72.254.56.137)
- # [18:39] <sicking> SW: depends on what people want from spec
- # [18:40] <sicking> SW: it's really a tool for spec authors
- # [18:40] <sicking> MJS: changing the spec to use ES5 formalisms is a big change
- # [18:41] <sicking> TL: ES5 has accessors, rewriting to use those will take work
- # [18:41] <sicking> DS: Robin wanted to publish sooner rather than later
- # [18:42] <sicking> MJS: there's tradeoffs, there's many specs that want to use it
- # [18:43] <sicking> SW: I'm not all that familiar with W3C rules quite yet
- # [18:43] <sicking> DS: This is an unusual spec
- # [18:43] <sicking> DS: the implementations for this spec are other specs
- # [18:44] <sicking> SW: Also testcases. You can produce a lot of tests based only on the idl
- # [18:44] <sicking> SW: Want a tool that given an idl produces tests
- # [18:44] * darobin confirms I'd like to publish sooner, if possible with a core of solid features and pushing less stable stuff to 1.1
- # [18:45] <sicking> SW: browsers are also implementors
- # [18:45] <sicking> DS: sort of circular dependency. Won't know that things worked until another spec has used webidl and that spec got implemented
- # [18:46] <sicking> MJS: we could take a stable spec, such as DOM Core, and express it using webidl
- # [18:47] <sicking> DS: Cameron did that
- # [18:47] <sicking> SW: would come close, but doesn't test everything. Might also want to do for example canvas to test overloading
- # [18:47] * darobin http://dev.w3.org/2006/webapi/WebIDL/dom/
- # [18:48] <sicking> MJS: should start with dom core and see what coverage that gets us. But yes, canvas would cover a lot of nice things
- # [18:48] <sicking> RE: has anyone does a matematical analysis of webidl? Would that be useful?
- # [18:49] <sicking> SW: don't know. If anyone has done it, cameron has, he loves math. But don't think he has
- # [18:50] <sicking> SW: OMG doesn't define enough things. That's why specs had bindings sections. But even those aren't enough, and might not be normative
- # [18:52] <sicking> SW: changing spec to use ES5 terminology will be a big change, but not a functional change
- # [18:52] <sicking> NM: is it a requirement for going to last call
- # [18:52] <sicking> AvK: doesn't make sense to define things in terms of ES3 if everyone implements ES5
- # [18:54] <sicking> DS: when you make that change, document how you map old terminology to ES5 terminology
- # [18:54] <sicking> SW: good idea
- # [18:54] <sicking> SW: not sure about some features in the spec. One is method overloading
- # [18:54] <weinig> http://dev.w3.org/2006/webapi/WebIDL/#idl-overloading
- # [18:55] <sicking> TL: hard to have an opinion, cause it's hard to understapnd spec
- # [18:55] <sicking> SW: that's part of the problem
- # [18:56] <sicking> AvK: canvas and XHR uses overloading, though in different ways
- # [18:56] <sicking> TL: we have default values for optional arguments
- # [18:57] <sicking> TL: we use it for XHR
- # [18:58] <sicking> SW: when i started on webkit, we had hand-written code that implemented the bindings. We still have a custom IDL
- # [18:59] <sicking> MJS: we currently have one-offs for all overloads. Would like to use webidl to express and implement it instead
- # [19:00] <sicking> JS: not sure we can use idl with overloads directly
- # [19:01] <sicking> MJS: you can use whatever solution you're currently using
- # [19:02] <sicking> MJS: webidl has optional. Limited by that each argument is optional. Can't enforce that either 0 or 2 arguments are provided
- # [19:02] <sicking> MJS: if optional could be in batches, then you could require that the other arguments must differ in type
- # [19:03] <sicking> JS: errors seem to be ambigious
- # [19:05] <sicking> MJS: one problem is that anything that takes a string essentially accepts anything since anything can be converted to string
- # [19:06] <sicking> VD: one problem is a function that takes a two ints, or an int and a string. If called with just one int what do you do?
- # [19:06] * Quits: Lachy (Lachlan@72.254.56.137) (Connection reset by peer)
- # [19:06] * Joins: Lachy (Lachlan@72.254.56.137)
- # [19:06] * Quits: ArtB (48fe5d4c@128.30.52.43) (Quit: CGI:IRC (EOF))
- # [19:07] <sicking> TL: i think action should be to clarify the spec and then we can discuss what we want behavior to be
- # [19:08] <sicking> MJS: in theory you can let the function just take a bunch of optional "any" arguments, and describe in prose what's required. However that's likely more confusing for everyone
- # [19:08] <sicking> s/VD/VK/
- # [19:09] <sicking> JS: I think TC-39 will have strong opinions on this. I know mark miller did
- # [19:09] <sicking> MJS: not sure i understand MMs objection
- # [19:11] <sicking> MJS: one issue is that overloads allows overloads to be added in [supplemental] interfaces. Would not match ES5 implementations
- # [19:12] * chaals notes that this discussion will get wound up in the next few minutes
- # [19:12] <sicking> SW: we could forbid overloading in supplementals
- # [19:14] <sicking> ...discussions about XHR...
- # [19:16] <sicking> SW: if we're gonna do union types then we should consider what tradeoffs we'd making. I.e. which group are we helping at the cost of another group
- # [19:16] <sicking> SW: i'd also like to know how you reference one of the specific overloads
- # [19:17] <sicking> TL: philosophical argument. Do you think of it as a single function that can take different things, or is it separate functions that happen to have the same name
- # [19:18] <sicking> TL: problem is that we have a spec that's hard to understand. Using union types might make it easier for people to understand it
- # [19:18] <sicking> CM: would like to wrap up
- # [19:19] * darobin rather liked union types
- # [19:19] <sicking> darobin, no union types for you!
- # [19:19] * darobin pouts, makes bambi eyes
- # [19:19] * chaals always knew darobin was a commo
- # [19:19] <sicking> SW: we need to figure out replaceable
- # [19:20] <sicking> TL: I'm also concerned about mixin's
- # [19:20] * darobin Pinko Bambi
- # [19:21] <sicking> TL: TC-39 would like to deprecate callable objects
- # [19:22] <sicking> JS: gecko only has a single object that's callable, the document.all object
- # [19:22] <sicking> SW: would like to remove getters/setters without name
- # [19:23] <sicking> TL: remove it
- # [19:24] <sicking> MJS: from javascripts point of view it doesn't have a behavioural difference
- # [19:24] <sicking> CM: proposed resolution: nuke it
- # [19:24] <sicking> DS: remove it but put a note that you did so, so that people can whine
- # [19:25] <sicking> RESOLUTION: remove unnamed getters/setters
- # [19:26] <Travis> Action: weinig to clarify method overloading section and make it readable
- # [19:26] * trackbot noticed an ACTION. Trying to create it.
- # [19:26] * RRSAgent records action 7
- # [19:26] <trackbot> Created ACTION-439 - Clarify method overloading section and make it readable [on Samuel Weinig - due 2009-11-10].
- # [19:27] <sicking> SW: not sure if supplemental should be an extended attribute or some other type of syntax. Should take it later due to out of time
- # [19:27] <sicking> TL: I don't care
- # [19:28] <chaals> しき:should be core
- # [19:28] <sicking> SO: i'd prefer a separate syntax
- # [19:28] <sicking> hands off my editing!
- # [19:29] <sicking> s/editing/scribing/
- # [19:31] <sicking> SW: who volunteers to provide tests?
- # [19:31] <sicking> SO: i do!
- # [19:32] <sicking> s/who volunteers to provide tests/who volunteers to provide DOM L2 based tests/
- # [19:32] * Quits: smaug_ (chatzilla@82.181.150.24) (Client exited)
- # [19:32] <chaals> s/provide/fish out and expand on heycam's/
- # [19:33] <MikeSmith> s/じき/史紀
- # [19:33] <sicking> JS: I'll do the DOM 2 ones
- # [19:34] <MikeSmith> RRSAgent, make minutes
- # [19:34] <RRSAgent> I have made the request to generate http://www.w3.org/2009/11/02-webapps-minutes.html MikeSmith
- # [19:34] <sicking> s/SO: i do!//
- # [19:34] <sicking> SO: I'll do C++ tests
- # [19:34] <MikeSmith> s/しき/史紀
- # [19:35] <Lachy> http://lists.w3.org/Archives/Public/public-webapps/2009JulSep/0338.html
- # [19:35] <sicking> Topic: Selectors
- # [19:35] <Lachy> http://dev.w3.org/2006/webapi/selectors-api/#nodeselector
- # [19:35] <MikeSmith> RRSAgent, make minutes
- # [19:35] <RRSAgent> I have made the request to generate http://www.w3.org/2009/11/02-webapps-minutes.html MikeSmith
- # [19:35] <sicking> LH: i need to finish up test suite
- # [19:35] * Quits: JonathanJ (hollobit@72.254.93.129) (Ping timeout)
- # [19:36] <sicking> LH: spec is ready for CR, can do tests in parallel
- # [19:36] <sicking> TL: namespace resolvers still out?
- # [19:36] <sicking> LH: yes, may potentially be in selectors L2
- # [19:37] <Lachy> http://dev.w3.org/2006/webapi/selectors-api2/
- # [19:37] <sicking> BREAK
- # [19:38] * Quits: darobin (robin@72.254.94.220) (Ping timeout)
- # [19:39] * Joins: root (root@74.201.255.121)
- # [19:40] * Quits: markusm (mmielke@72.254.93.74) (Ping timeout)
- # [19:42] * Quits: pererik (pe@72.254.103.214) (Quit: .)
- # [19:44] * Quits: Vladimir (chatzilla@72.254.119.66) (Ping timeout)
- # [19:51] * Joins: smaug_ (chatzilla@82.181.150.24)
- # [19:53] * Quits: Kai (chatzilla@72.254.88.78) (Ping timeout)
- # [19:54] * Quits: VagnerW3CBrasil (chatzilla@72.254.100.54) (Ping timeout)
- # [19:57] * Quits: Marcos (Marcos@72.254.89.39) (Quit: Marcos)
- # [19:58] * Joins: markusm (mmielke@72.254.124.123)
- # [19:58] * Quits: mjs (mjs@72.254.84.91) (Quit: mjs)
- # [20:05] <chaals> Topic: DOM 3 Events
- # [20:06] * Joins: mjs (mjs@72.254.84.91)
- # [20:09] * Joins: ArtB (48fe5d4c@128.30.52.43)
- # [20:10] * Joins: gsnedders (gsnedders@83.252.226.150)
- # [20:10] * Quits: tlr (tlr@128.30.52.169) (Quit: tlr)
- # [20:11] * ArtB pings hixie re D3E discussion in Salon 1 starting
- # [20:11] * ArtB pings msj re D3E discussion in Salon 1 starting
- # [20:11] * ArtB pings annevk re D3E discussion in Salon 1 starting
- # [20:11] <Hixie> omw
- # [20:11] <mjs> won't be there (but thanks)
- # [20:12] <chaals> Present+ Ishida, Addison, NorbertL
- # [20:12] <chaals> Present+ Hixie
- # [20:12] * timeless_mbp is now known as timeless
- # [20:12] <sicking> Scribe: Sicking
- # [20:13] * ArtB changes topic to 'WebApps agenda Nov 3: http://www.w3.org/2008/webapps/wiki/TPAC2009APIs#Tuesday.2C_November_3'
- # [20:13] <chaals> Present+ Mike™
- # [20:13] <sicking> DS: suggestion to make key values, instead of being "\\u1234", to be "\u1234". I.e. be the actual character
- # [20:13] * Joins: darobin (robin@72.254.94.220)
- # [20:14] * Joins: JonathanJ (hollobit@72.254.93.129)
- # [20:14] <shepazu> http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html#js-escape
- # [20:14] <sicking> AP: this results in a surrugate pair being the value
- # [20:15] <shepazu> s/"\\u1234"/"U+1234"
- # [20:15] <sicking> AP: this problem didn't exist with the old "U+1234" syntax
- # [20:16] <sicking> JS: is this a problem?
- # [20:16] <sicking> AP: it means to get the actual character value you might need to decode the surrugate pair
- # [20:16] <sicking> s/surrugate/surrogate/
- # [20:16] <sicking> (i follow standards)
- # [20:17] <sicking> AP: there are lots of surrogate characters
- # [20:17] <sicking> AP: and more with time
- # [20:18] <sicking> DS: maciej wasn't sure that there are keys that result in a non BMP character
- # [20:18] <sicking> DS: however there appears there are
- # [20:18] <sicking> DS: characters "tree stub" and "untidy" are such characters
- # [20:19] <mjs> my old suggestion of "\u1234" was meant to suggest the values should be a string of the actual character
- # [20:19] <mjs> so for example the identifier when you press lowercase a would be the string "a"
- # [20:19] * Joins: Marcos (Marcos@72.254.89.39)
- # [20:20] <sicking> IH: for people that compare with a string, then the fact that it's a surrogate pair then this isn't a problem
- # [20:20] <sicking> DS: complicated in some situations
- # [20:20] <sicking> IH: when?
- # [20:20] <sicking> DS: when people use lots of supplementary characters in the script. Maybe
- # [20:21] <sicking> JS: can someone show code that they are concerned about won't work
- # [20:21] * Joins: VagnerW3CBrasil (chatzilla@72.254.100.54)
- # [20:23] <sicking> ...confusion about what is actually suggested...
- # [20:25] <chaals> [Do you get "U+1234" or "æ" or "\u1234" and is there any reason to distinguish the second and third cases?]
- # [20:28] <chaals> Scribe: chaals
- # [20:28] <chaals> RI: You take a character outside BMP, and your javascript escape is "\1234\5678"
- # [20:29] <chaals> PA: The string that is the individual character is length 2
- # [20:30] <sicking> RI: why move away from the "U+1234" format?
- # [20:31] * Zakim excuses himself; his presence no longer seems to be needed
- # [20:31] * Parts: Zakim (rrs-bridgg@128.30.52.30)
- # [20:31] <MikeSmith> RRSAgent, make minutes
- # [20:31] <RRSAgent> I have made the request to generate http://www.w3.org/2009/11/02-webapps-minutes.html MikeSmith
- # [20:31] * Joins: Zakim (rrs-bridgg@128.30.52.30)
- # [20:31] <chaals> q+ sicking
- # [20:31] * Zakim sees sicking on the speaker queue
- # [20:32] * Joins: tlr (tlr@128.30.52.169)
- # [20:32] * chaals thinks of name fields that don't let people like me add their real name due to length restrictions
- # [20:32] <chaals> q+ rob
- # [20:32] * Zakim sees sicking, rob on the speaker queue
- # [20:32] <sicking> DS: if i'm trying to limit a form to just one character, i might reject surrogate pair characters
- # [20:33] <weinig> q+
- # [20:33] * Zakim sees sicking, rob, weinig on the speaker queue
- # [20:33] <annevk> q+
- # [20:33] * Zakim sees sicking, rob, weinig, annevk on the speaker queue
- # [20:33] <weinig> q-
- # [20:33] * Zakim sees sicking, rob, annevk on the speaker queue
- # [20:34] <shepazu> q+ r12a
- # [20:34] * Zakim sees sicking, rob, annevk, r12a on the speaker queue
- # [20:34] <chaals> Sicking: We should go with the native format for the language. Unfortunately javascript has a nasty way of dealing with characters outside the BMP. If we give them in other forms tey will just convert and then go on anyway. SO trying to work around the behaviour of the language will frustrate people
- # [20:34] <sicking> JS: my concern is that we're trying to work around behavior in ES
- # [20:34] * Joins: Kai (chatzilla@72.254.88.78)
- # [20:34] <chaals> ack si
- # [20:34] * Zakim sees rob, annevk, r12a on the speaker queue
- # [20:34] <chaals> ack rob
- # [20:34] * Zakim sees annevk, r12a on the speaker queue
- # [20:34] <sicking> AP: i just want people to know what the ramifications are, and that we make it clear in spec
- # [20:36] * Quits: markusm (mmielke@72.254.124.123) (Ping timeout)
- # [20:36] <MikeSmith> q?
- # [20:36] * Zakim sees annevk, r12a on the speaker queue
- # [20:37] <sicking> RE: when pressing "e", i'll get an "e", but if I press "treestub", i'll get "U+1234". That seems to make i18n harder
- # [20:37] <sicking> RE: for keys like "F1" we can use a different field
- # [20:37] <chaals> ack annevk
- # [20:37] * Zakim sees r12a on the speaker queue
- # [20:38] <sicking> AvK: the way javascript deals with i18n should be an orthogonal issue
- # [20:39] <shepazu> q+
- # [20:39] * Zakim sees r12a, shepazu on the speaker queue
- # [20:39] <sicking> AP: we should follow the way that javascript deals with i18n
- # [20:39] <chaals> ack r12
- # [20:39] * Zakim sees shepazu on the speaker queue
- # [20:39] <sicking> AP: even if that isn't perfect
- # [20:40] <sicking> RI: i want to know how this is expected to be used
- # [20:40] <sicking> RI: if you just want a label for what was pressed then "U+1234" syntax seems better
- # [20:40] <chaals> ack she
- # [20:40] * Zakim sees no one on the speaker queue
- # [20:41] <sicking> RI: so trying to understand what the use cases and expected uses are
- # [20:41] <sicking> DS: comparisons often
- # [20:42] <chaals> JS: If the characters are described as double-escaped bytes, you can still do comparison with them
- # [20:43] <Hixie> '\uFFFF' < '\u10FFF' => false
- # [20:44] * Joins: fsasaki (chatzilla@72.254.57.73)
- # [20:44] <chaals> Present+ Felix
- # [20:45] * fsasaki tx
- # [20:45] <chaals> JS: Does any use case run up against that painful gap in practice?
- # [20:45] <sicking> DS: range checks might also be common
- # [20:46] <sicking> TL: in all the cases we describe now it seems workable to use the current proposal (i.e. the "treestub" proposal rather than "U+1234"). Would it be ok to go forward with that and describe how to do the various use cases
- # [20:46] * Quits: tlr (tlr@128.30.52.169) (Quit: tlr)
- # [20:47] <chaals> IH: I think we are fine because I don't think we will meet the boundary case
- # [20:47] * Joins: myakura (myakura@72.254.84.172)
- # [20:47] <chaals> q+ anne
- # [20:47] * Zakim sees anne on the speaker queue
- # [20:48] <shepazu> q+
- # [20:48] * Zakim sees anne, shepazu on the speaker queue
- # [20:48] <chaals> ack anne
- # [20:48] * Zakim sees shepazu on the speaker queue
- # [20:48] <sicking> IH: in fact, the "U+1234" syntax compares even worse for range checks
- # [20:49] <sicking> AvK: I don't think we should try to work around ES problems
- # [20:50] <chaals> q+ addison
- # [20:50] * Zakim sees shepazu, addison on the speaker queue
- # [20:50] <chaals> ack she
- # [20:50] * Zakim sees addison on the speaker queue
- # [20:50] <chaals> ack add
- # [20:50] * Zakim sees no one on the speaker queue
- # [20:52] <sicking> AP: you can maintain that ES is broken. But what you're doing is developing a key events spec. I don't see a problem with returning the character that was pressed.
- # [20:52] <Hixie> q+
- # [20:52] * Zakim sees Hixie on the speaker queue
- # [20:52] <sicking> AP: if you tie yourself to UTF16, then that could be a problem.
- # [20:52] <chaals> ack hi
- # [20:52] * Zakim sees no one on the speaker queue
- # [20:54] <sicking> AI: if i have a ascii page, how would i use this
- # [20:54] * Joins: pcastro (d0735eed@128.30.52.43)
- # [20:55] <sicking> AvK: the spec would simply say, U+1234, without quotes
- # [20:55] <sicking> AvK: that's what other specs do
- # [20:56] <sicking> DS: i was confused, but now i can see
- # [20:56] <sicking> IH: WebIDL will handle it
- # [20:57] <sicking> DS: will that be clear for authors
- # [20:57] <sicking> IH: should have a separate section that describes things for authors. You probably want that anyway
- # [20:57] <sicking> DS: i would like to express a resolution
- # [20:57] <sicking> s/DS: i would like to express a resolution//
- # [20:58] <sicking> RESOLUTION: the value will be a character. WebIDL will clarify how this is mapped to ES
- # [21:00] <chaals> s/RESOLUTION: the value will be a character. WebIDL will clarify how this is mapped to ES/RESOLUTION: The return value will be a DOMstring which is the character produced. We add a note explaining to authors what happens/
- # [21:00] <shepazu> action: shepazu to add clarification for authors of JS where the gotchas are
- # [21:00] * trackbot noticed an ACTION. Trying to create it.
- # [21:00] * RRSAgent records action 8
- # [21:00] <trackbot> Created ACTION-440 - Add clarification for authors of JS where the gotchas are [on Doug Schepers - due 2009-11-10].
- # [21:00] <shepazu> these are unicode scalar values
- # [21:00] * Joins: tlr (tlr@128.30.52.169)
- # [21:00] <chaals> RATIONALE: WebIDL makes sure that this comes back in the relevant form for whatever language you are using
- # [21:01] <Hixie> to aid developers we probably need to make the non-character values (like "F1") be not length-2
- # [21:01] <Hixie> e.g. "[F1]" or "*F1" or "F-1" or "Function1" or something
- # [21:01] <MikeSmith> q?
- # [21:01] * Zakim sees no one on the speaker queue
- # [21:02] <chaals> NL: when I do 秀, how many events are there?
- # [21:03] <annevk> q+
- # [21:03] * Zakim sees annevk on the speaker queue
- # [21:03] <chaals> [it took me about a dozen key presses to make that character]
- # [21:03] <annevk> q-
- # [21:03] * Zakim sees no one on the speaker queue
- # [21:03] <annevk> q+ to suggest we declare conversion methods out of scope
- # [21:03] * Zakim sees annevk on the speaker queue
- # [21:03] <sicking> DS: when you have IME, you have there's a bunch of composition events'n'stuff
- # [21:05] <sicking> DS: the whole things is very complicated. Might be best for people to review the spec
- # [21:05] <sicking> AP: when should we review
- # [21:05] <sicking> CM: over lunch
- # [21:05] <sicking> DS: the sooner the better
- # [21:05] * Quits: tlr (tlr@128.30.52.169) (Quit: tlr)
- # [21:06] <MikeSmith> q+ to mention that i18n group is having IRI discussion from 1pm to 3pm
- # [21:06] * Zakim sees annevk, MikeSmith on the speaker queue
- # [21:06] <sicking> DS: spec should be pretty stable now. Especially with this latest resolution
- # [21:06] <chaals> ack ann
- # [21:06] <Zakim> annevk, you wanted to suggest we declare conversion methods out of scope
- # [21:06] * Zakim sees MikeSmith on the speaker queue
- # [21:06] <sicking> AvK: I propose we drop the conversion methods
- # [21:07] <sicking> DS: i would like to keep them
- # [21:09] <chaals> q+ sam
- # [21:09] * Zakim sees MikeSmith, sam on the speaker queue
- # [21:09] <sicking> DS: we want people to deal with characters, so I think it's in scope
- # [21:09] <MikeSmith> q- later
- # [21:09] * Zakim sees sam, MikeSmith on the speaker queue
- # [21:09] * Joins: tlr_ (tlr@72.254.89.250)
- # [21:09] <chaals> q+ chaals
- # [21:09] * Zakim sees sam, MikeSmith, chaals on the speaker queue
- # [21:09] <sicking> AvK: ES needs to solve it in a larger scope
- # [21:09] <chaals> ack sa
- # [21:09] * Zakim sees MikeSmith, chaals on the speaker queue
- # [21:09] <chaals> q- cha
- # [21:09] * Zakim sees MikeSmith on the speaker queue
- # [21:10] * Quits: arve (arve@213.236.208.22) (Ping timeout)
- # [21:10] * Quits: fsasaki (chatzilla@72.254.57.73) (Quit: ChatZilla 0.9.85 [Firefox 3.0.15/2009101601])
- # [21:10] * Parts: pcastro (d0735eed@128.30.52.43)
- # [21:10] <sicking> SW: I think the right place to put it is on the ES String constructor, other languages have it there
- # [21:11] <sicking> SW: there are docs on the web that shows how to take a multibyte character and turn it into a numerical codepoint
- # [21:11] <chaals> q+ chaals
- # [21:11] * Zakim sees MikeSmith, chaals on the speaker queue
- # [21:11] <sicking> DS: the code is HUGE
- # [21:11] <MikeSmith> q- later
- # [21:11] * Zakim sees chaals, MikeSmith on the speaker queue
- # [21:11] <sicking> SW: no it's not
- # [21:11] <sicking> DS: yes it is
- # [21:11] <sicking> SW: no it's not
- # [21:11] <chaals> [it is 15 lines]
- # [21:11] <shepazu> http://rishida.net/tools/conversion/
- # [21:12] * chaals casts aspersions on schepers' other claims about what he has that's HUUUGE
- # [21:12] <sicking> DS: lets continue discussion later
- # [21:13] <MikeSmith> q-
- # [21:13] * Zakim sees chaals on the speaker queue
- # [21:13] <MikeSmith> ack chaals
- # [21:13] * Zakim sees no one on the speaker queue
- # [21:14] * Joins: tlr (tlr@128.30.52.169)
- # [21:14] <sicking> CM: as a browser implementor, i don't see why i should look at a key events spec to see that i should build conversion functions for strings, or how to do it
- # [21:14] * Quits: tlr_ (tlr@72.254.89.250) (Ping timeout)
- # [21:15] <sicking> CM: who would rather move it to ecmascript
- # [21:15] <sicking> ...straw poll is taken...
- # [21:15] <chaals> [Shepazu objects, no resolution]
- # [21:15] * ArtB makes note to himself to ask TBL to fire Shepazu
- # [21:17] * timeless chuckles
- # [21:18] <sicking> DS: Hixie had requested that some events be defined in much greater detail, or be removed from the DOM L3 Events spec
- # [21:18] <sicking> AvK: I can represent hixie
- # [21:18] <sicking> AvK: Problem is that it's very fuzzily defined when certain events are dispatched
- # [21:19] <sicking> TL: it's not expected that DOM Events define exactly when the events are fired
- # [21:20] <sicking> TL: and that the hosting language should define that
- # [21:20] <sicking> q+
- # [21:20] * Zakim sees sicking on the speaker queue
- # [21:20] <sicking> TL: this was also raised with progress events yesterday
- # [21:21] <sicking> TL: resolution was to define what the event looks like, but let hosting specs define when they are fired
- # [21:21] <weinig> q+
- # [21:21] * Zakim sees sicking, weinig on the speaker queue
- # [21:22] <sicking> AvK: mouse events for example can be just generic events. Don't need to be in DOM Events spec
- # [21:22] <arun> q?
- # [21:22] * Zakim sees sicking, weinig on the speaker queue
- # [21:22] <chaals> ack si
- # [21:22] * Zakim sees weinig on the speaker queue
- # [21:23] <sicking> DS: if there's a risk that hixie will raise objections, then i'd rather adress the issue sooner than later
- # [21:24] <chaals> JS: Think what we did with Progress events makes sense - this spec defines what these things look like more or less, and the individual specs define how they fit in various specs in detail.
- # [21:24] <sicking> JS: can we leave it explicitly undefined when certain events are fired, and just define what the event looks like when fired. And then leave that to hosting specs to define when to fire events
- # [21:24] <sicking> oh, thanks chaals
- # [21:24] * Joins: arve (arve@212.251.179.162)
- # [21:25] <sicking> JS: though i don't know who would define mouse events since they seem cross language
- # [21:25] <sicking> AvK: possibly CSSOM could define mouse events
- # [21:25] * smaug thinks we decided in D3E call that events can be defined more precisely in the "host language" spec.
- # [21:25] <annevk> CSSOM View
- # [21:26] <sicking> CM: sounds like a meta-discussion. Would like to see specific proposals
- # [21:26] <chaals> ack wei
- # [21:26] * Zakim sees no one on the speaker queue
- # [21:27] <sicking> SW: DOM Events seem like the wrong place to define when mouse events are fired since it involves hit testing
- # [21:27] <sicking> SW: some other spec or specs could define hit testing
- # [21:27] <sicking> CM: still sounds very meta to me
- # [21:27] * Quits: arve (arve@212.251.179.162) (Quit: Ex-Chat)
- # [21:27] * Joins: arve (arve@212.251.179.162)
- # [21:28] <sicking> RESOLUTION: convertKeyValue will be removed from DOM L3 Events
- # [21:29] <chaals> closing ISSUE-110
- # [21:29] <sicking> if you can't follow that part of this transcript, I don't blame you
- # [21:29] <chaals> in recess
- # [21:29] <annevk> (after further consideration DS withdraw his objection)
- # [21:29] * Quits: ArtB (48fe5d4c@128.30.52.43) (Quit: CGI:IRC (EOF))
- # [21:30] <annevk> close ISSUE-110
- # [21:30] * trackbot attempting to close ISSUE-110.
- # [21:30] <trackbot> ISSUE-110 Should we remove the code-point conversion from the D3E spec? closed
- # [21:30] * Quits: Marcos (Marcos@72.254.89.39) (Quit: Marcos)
- # [21:30] * Quits: weinig (weinig@72.254.102.177) (Quit: weinig)
- # [21:31] * Quits: shiki (sokasaka@72.254.102.153) (Quit: shiki)
- # [21:31] * Quits: Nikunj (Adium@72.254.104.65) (Quit: Leaving.)
- # [21:32] * Quits: Lachy (Lachlan@72.254.56.137) (Quit: This computer has gone to sleep)
- # [21:34] * Quits: shepazu (schepers@128.30.52.169) (Quit: shepazu)
- # [21:34] * Quits: Travis (d8341cc5@128.30.52.43) (Quit: CGI:IRC (Ping timeout))
- # [21:34] * Quits: MikeSmith (MikeSmithX@mcclure.w3.org) (Quit: Tomorrow to fresh woods, and pastures new.)
- # [21:34] * Quits: sicking (chatzilla@72.254.57.85) (Ping timeout)
- # [21:35] * Quits: annevk (opera@72.254.82.30) (Quit: annevk)
- # [21:35] * Quits: Kai (chatzilla@72.254.88.78) (Ping timeout)
- # [21:35] * Joins: Marcos (Marcos@72.254.89.39)
- # [21:40] * Quits: mjs (mjs@72.254.84.91) (Quit: mjs)
- # [21:47] * Quits: tlr (tlr@128.30.52.169) (Quit: tlr)
- # [21:54] * Quits: myakura (myakura@72.254.84.172) (Quit: Leaving...)
- # [21:54] * Quits: Marcos (Marcos@72.254.89.39) (Quit: Marcos)
- # [21:56] * Quits: darobin (robin@72.254.94.220) (Ping timeout)
- # [22:02] <Hixie> i'm in i18n but i'd like to attend the database stuff
- # [22:02] <Hixie> so i'll be down when i can
- # [22:05] * Quits: VagnerW3CBrasil (chatzilla@72.254.100.54) (Ping timeout)
- # [22:08] * Joins: Nikunj (Adium@72.254.104.65)
- # [22:09] * Quits: gsnedders (gsnedders@83.252.226.150) (Quit: gsnedders)
- # [22:10] * Joins: MikeSmith (MikeSmithX@mcclure.w3.org)
- # [22:12] <chaals> ok. we start at 13.30
- # [22:13] * chaals notes that we have Ian from Google in the room, and Ian from Google coming here...
- # [22:13] <Hixie> just call me Hixie :-)
- # [22:13] <Hixie> or you can call him the Other Ian
- # [22:13] <Hixie> either works :-P
- # [22:14] <Dashiva> IIan
- # [22:14] * Joins: tlr (tlr@128.30.52.169)
- # [22:15] * Joins: Marcos (Marcos@72.254.89.39)
- # [22:15] <chaals> ageenda+ different storage systems
- # [22:15] <chaals> agenda+ different storage systems
- # [22:15] * Zakim notes agendum 1 added
- # [22:15] * Joins: markusm (mmielke@72.254.93.74)
- # [22:16] <chaals> agenda+ Web DB (sqlite)
- # [22:16] * Zakim notes agendum 2 added
- # [22:16] <chaals> agenda+ WebSimpleDB
- # [22:16] * Zakim notes agendum 3 added
- # [22:16] <chaals> agenda+ datacache
- # [22:16] * Zakim notes agendum 4 added
- # [22:17] <chaals> zakim, allow this agendum 15 minutes
- # [22:17] <Zakim> I do not know what agendum has been taken up, chaals
- # [22:17] * chaals doesn't mind :)
- # [22:18] * chaals hixie, do you want to talk about appcache or other stuff in this?
- # [22:18] <Hixie> i can answer questions, not sure i have much to say though
- # [22:18] * chaals just wanting to get the different pieces in the agenda for this session.
- # [22:19] <Hixie> i'm happy to have a quick q&a
- # [22:19] * chaals can ask again when we start if there are more pieces to put on the table.
- # [22:19] <chaals> ok, we'll see if people have questions and schedule some time if so.
- # [22:20] * Joins: Kai (chatzilla@72.254.88.78)
- # [22:21] * Joins: mjs (mjs@72.254.84.91)
- # [22:27] * Joins: Lachy (Lachlan@72.254.56.137)
- # [22:28] * Joins: sicking (chatzilla@72.254.57.85)
- # [22:32] * Joins: annevk (opera@72.254.82.30)
- # [22:32] * Joins: weinig (weinig@72.254.102.177)
- # [22:32] * Joins: shiki (sokasaka@72.254.102.153)
- # [22:33] * Joins: shepazu (schepers@128.30.52.169)
- # [22:35] <chaals> zakim, room for 4 for 90 minutes?
- # [22:35] <Zakim> ok, chaals; conference Team_(webapps)21:35Z scheduled with code 26631 (CONF1) for 90 minutes until 2305Z
- # [22:36] * Joins: jorlow (jorlow@72.254.58.121)
- # [22:36] * Joins: Vladimir (chatzilla@72.254.119.66)
- # [22:36] * Joins: michaeln (michaeln@72.254.82.239)
- # [22:38] <Zakim> Team_(webapps)21:35Z has now started
- # [22:38] <Zakim> +Widgets
- # [22:38] <chaals> zakim, widgets is really apis-db-stuff
- # [22:38] <Zakim> +apis-db-stuff; got it
- # [22:38] * Joins: pcastro (d0735eed@128.30.52.43)
- # [22:39] * Quits: Marcos (Marcos@72.254.89.39) (Quit: Marcos)
- # [22:39] * Joins: adrianba (adrianba@72.254.111.48)
- # [22:40] <timeless> ScribeNick: timeless
- # [22:40] <chaals> pablo, did you get the code?
- # [22:40] <timeless> Scribe: timeless
- # [22:40] * Quits: smaug_ (chatzilla@82.181.150.24) (Quit: ChatZilla 0.9.85 [Firefox 3.7a1pre/20091015073430])
- # [22:40] * chaals 1.617.761.6200 codde 26631
- # [22:40] <pcastro> yes, thanks, will call in in a minute
- # [22:40] <chaals> zakim, next agendum
- # [22:40] <Zakim> agendum 1. "different storage systems" taken up [from chaals]
- # [22:40] <chaals> zakim, agenda?
- # [22:40] <Zakim> I see 4 items remaining on the agenda:
- # [22:40] <Zakim> 1. different storage systems [from chaals]
- # [22:40] <Zakim> 2. Web DB (sqlite) [from chaals]
- # [22:40] <Zakim> 3. WebSimpleDB [from chaals]
- # [22:40] <Zakim> 4. datacache [from chaals]
- # [22:40] * Joins: pererik (pe@72.254.103.214)
- # [22:40] <timeless> Topic: different storage systems
- # [22:41] <Zakim> + +1.206.369.aaaa
- # [22:41] <chaals> agenda+ filesystem
- # [22:41] * Zakim notes agendum 5 added
- # [22:41] * Joins: eric_uhrhane (48fe5208@64.62.228.82)
- # [22:42] <chaals> zakim, aaaa is Chris
- # [22:42] <Zakim> +Chris; got it
- # [22:42] * timeless Zakim: who is on?
- # [22:42] <Zakim> -Chris
- # [22:42] * Joins: ifette (kvirc@72.254.95.41)
- # [22:42] <Zakim> +Chris
- # [22:43] <ifette> Zakim, who's here?
- # [22:43] <Zakim> On the phone I see apis-db-stuff, Chris
- # [22:43] <Zakim> On IRC I see ifette, eric_uhrhane, pererik, adrianba, pcastro, michaeln, Vladimir, jorlow, shepazu, shiki, weinig, annevk, sicking, Lachy, mjs, Kai, markusm, tlr, MikeSmith,
- # [22:43] <Zakim> ... Nikunj, arve, Zakim, JonathanJ, root, arun, chaals, timeless, aroben, hober, timely, Hixie, smaug, RRSAgent, karl, Dashiva, krijnh, fearphage, gavin_, gsnedders|work, inimino,
- # [22:43] <Zakim> ... trackbot
- # [22:43] <arun> pcastro, are you on the phone as well?
- # [22:43] <ifette> Zakim, next agendum
- # [22:43] <Zakim> agendum 2. "Web DB (sqlite)" taken up [from chaals]
- # [22:44] <chaals> Topic: Multiple storage systems
- # [22:44] <chaals> zakim, allow this agendum 15 minutes
- # [22:44] <Zakim> ok, chaals
- # [22:44] <timeless> chaals: We have a lot of these. how many are in conflict. how many are competing
- # [22:45] <Hixie> IH: none and all respectively
- # [22:45] <timeless> sicking: Web DB and Web SimpleDB are competing
- # [22:45] <timeless> sicking: whatever we come up with for Web DB / Web Simple DB will replace a lot of localStorage
- # [22:45] <Zakim> +[Microsoft]
- # [22:45] <timeless> IanF: Are people trying to throw localStorage out the window or discourage it?
- # [22:45] <timeless> sicking: the way things are going, localStorage is going to be racy
- # [22:46] <timeless> ... even storing the numbers between 1 and 2, you should probably not use it
- # [22:46] <timeless> chaals: at opera, we implemented web db
- # [22:46] <timeless> ... we looked at web simple db. we found web db nice and simple
- # [22:47] <arun> Web DB = The SQLite One
- # [22:47] <arun> WebSimpleDB = The Nikunj One
- # [22:47] <chaals> s/web db nice/the nikunj one/
- # [22:48] <timeless> chaals: we found Nikunj to be more to our liking
- # [22:48] <pcastro> arun: yes i'm on the phone as well, trying to follow
- # [22:48] * Quits: JonathanJ (hollobit@72.254.93.129) (Quit: JonathanJ)
- # [22:48] <timeless> chaals: we have implemented Nikunj internally
- # [22:49] <ifette> s/Nikunj/WebDB/
- # [22:49] * Joins: Travis (48fe5fc5@128.30.52.43)
- # [22:49] <timeless> sicking: we don't have a data point
- # [22:49] <timeless> ... we've had a lot of discussions, primarily with MS and Oracle
- # [22:50] <timeless> ... Oracle stands behind Nikunj
- # [22:50] <timeless> ... we've talked to a lot of developers
- # [22:50] * arun Nikunj is an Oracle employee
- # [22:50] <timeless> ... the feedback we got is that we really don't want SQL
- # [22:50] * timeless nods
- # [22:50] * timeless does remember that
- # [22:50] * timeless just can't keep WebDB / WebSimpleDB straight
- # [22:50] * timeless is also uncertain that chaals consistently used it
- # [22:50] <timeless> IanF: We've implemented WebDB
- # [22:51] <timeless> ... we're about to ship it
- # [22:51] <timeless> MJS: We've implemented WebDB and have been shipping it for some time
- # [22:51] <timeless> ... it's shipping in Safari
- # [22:51] <annevk> IanF: we're also interested in the Nikunj One
- # [22:51] <timeless> ... the Chrome implementation shares some but not quite all of the code
- # [22:51] <timeless> ... beside shipping it, web sites have versions that target the iPhone and use it
- # [22:52] <timeless> ... we can't easily drop it in the near future for that reason
- # [22:52] <timeless> ... In principal, having a storage mechanism that is more sound than localStorage
- # [22:52] <timeless> ... but more simple than WebDB would be good
- # [22:52] <timeless> ... wrt localStorage, the current bits indeed have race conditions
- # [22:52] <timeless> ... but adding APIs could possibly fix it
- # [22:53] <timeless> ... SimpleDB / WebDB is probably impossible because of <too much something>
- # [22:53] <timeless> jorlow: a large percentage of a lot of the web apps that google is looking at
- # [22:53] <timeless> ... would need a large percentage of what is in SimpleDB
- # [22:53] <timeless> ... in order to make an extended localStorage usable
- # [22:54] <adrianba> q+
- # [22:54] * Zakim sees adrianba on the speaker queue
- # [22:54] <timeless> ... it would be fine to make localStorage do it, but it would require a lot of SimpleDB
- # [22:54] <timeless> MJS: [lost]
- # [22:54] * chaals thanks adrianba for using the queue :)
- # [22:54] <timeless> Nikunj: [lost]
- # [22:55] <timeless> Nikunj: (to MJS) do you want to keep the API as is or the functionality as is
- # [22:55] <timeless> ... the localStorage API is synchronous only
- # [22:55] <chaals> s/Nikunj: [lost]/We can make simpleDB do everything localstorage does/
- # [22:55] <timeless> MJS: you would need to do a superset in order to handle locking
- # [22:55] <chaals> q?
- # [22:55] * Zakim sees adrianba on the speaker queue
- # [22:55] <timeless> jorlow: Google is not happy with the various proposals
- # [22:55] <chaals> ack adrianba
- # [22:55] * Zakim sees no one on the speaker queue
- # [22:56] <timeless> AB: Microsoft's position is that WebSimpleDB is what we'd like to see
- # [22:56] <timeless> ... we don't think we'll reasonably be able to ship an interoperable version of WebDB
- # [22:56] <timeless> ... trying to arrive at an interoperable version of SQL will be too hard
- # [22:56] <timeless> ... what people want is a ...
- # [22:56] * Joins: Marcos (Marcos@72.254.89.39)
- # [22:57] <timeless> ... we think that WebDB (?) features is a starting point
- # [22:57] <timeless> ... we don't plan to add to localStorage
- # [22:57] <timeless> jorlow: so you don't plan to change localStorage
- # [22:57] <timeless> AB: localStorage won't go away
- # [22:57] <timeless> ... but we don't intend to extend it
- # [22:58] <jorlow> s/plan to change localStorage/enhance localStorage...for example, implement the storage mutex/
- # [22:58] <timeless> ... we don't think that people will be able to benefit from making it more complicated (?)
- # [22:58] <timeless> sicking: I haven't thought about the idea of extending localStorage
- # [22:59] <timeless> ... before i form a strong opinion, i'd like to see a proposal, but it seems hard
- # [22:59] * chaals notes PC to timeless
- # [22:59] <timeless> PC: [?]
- # [22:59] <Zakim> chaals, agendum 2 was to have been concluded at this time
- # [22:59] * chaals PC is pablo Castro on the phone.
- # [22:59] <timeless> michaeln: SimpleDB doesn't overlap with localStorage
- # [22:59] <timeless> ... there are no events in SimpleDB
- # [22:59] <timeless> MJS: so it isn't a superset of (localStorage) functionality
- # [23:00] <chaals> PC: Don't see that it is interesting to try and extend localstorage
- # [23:00] <timeless> sicking: there's always value in having less features
- # [23:00] <timeless> MJS: localStorage is rather nascent, but it seems rather unfortunate that we're discussing orphaning it
- # [23:00] <pcastro> yes, i agree, extending localStorage to cover the functionality of SimpleDB is the same as introducing a new simpledb API, given the delta...
- # [23:00] <timeless> sicking: I agree, but i haven't seen any workable proposals
- # [23:00] <timeless> PC: localStorage is useful for simple tasks
- # [23:01] <timeless> ... for registry keys (preferences) in windows apis
- # [23:01] <timeless> sicking: the problem with it is the raciness
- # [23:01] <timeless> ... no one working on a multi process browser has safely handled this
- # [23:01] <timeless> chaals: we're out of time.
- # [23:01] <timeless> ... there's a lot of push for Nikunj
- # [23:01] <timeless> ... where does that leave WebDB?
- # [23:01] <timeless> ... Apple can't stop shipping it
- # [23:01] <timeless> ... Google will be shipping it
- # [23:02] <timeless> ... Opera has not yet shipped it
- # [23:02] <timeless> ... but it's likely we will as people have built on it
- # [23:02] <timeless> sicking: I don't think mozilla plans to ship it
- # [23:02] <timeless> DS: you could do the same things with Nikunj as with localStorage
- # [23:03] <timeless> ... except storage events
- # [23:03] <timeless> cwilson: the difference is...
- # [23:03] <timeless> ... you get the ability to have a lot more data in it
- # [23:03] <timeless> ... in a much more organized way
- # [23:03] * Quits: Marcos (Marcos@72.254.89.39) (Quit: Marcos)
- # [23:03] <annevk> (there's also sessionStorage, fwiw)
- # [23:03] <chaals> s/cwilson/PC/
- # [23:03] <timeless> ... you don't need to learn another language to get data in/out
- # [23:03] * timeless cries
- # [23:04] <timeless> chaals: i don't see a conclusion
- # [23:04] * Joins: VagnerW3CBrasil (chatzilla@72.254.100.54)
- # [23:04] <timeless> sicking: I don't have any plans to review WebDB
- # [23:04] * Joins: darobin (robin@72.254.94.220)
- # [23:04] <timeless> IH: I'd rather not spec WebDB if people don't want to ship it
- # [23:04] <chaals> q+
- # [23:04] * Zakim sees chaals on the speaker queue
- # [23:04] <timeless> DS: I was talking with w3c people about the confusion
- # [23:04] <timeless> ... there are several web storage proposals, and we think that it clutters developer mind space
- # [23:05] <arun> q?
- # [23:05] * Zakim sees chaals on the speaker queue
- # [23:05] <timeless> IanF: I don't think people are in disagreement that it's sad
- # [23:05] <timeless> ... it's a bit too late
- # [23:05] <chaals> Topic: WebDB - sql lite
- # [23:05] <timeless> ... let's look at something else, but let's move on
- # [23:05] <timeless> cwilson: I don't know if anyone has suggested on the group of killing off WebDB on the list
- # [23:05] <timeless> DS: except the editor
- # [23:05] <timeless> [ laughs of agreement ]
- # [23:06] <timeless> MJS: it sounds like there will be multiple shipping implementations
- # [23:06] <timeless> cwilson: it seems with multiple interoperable implementations
- # [23:06] <timeless> ... that you can't really call it stillborn
- # [23:06] <ifette> s/q+
- # [23:06] <ifette> q+
- # [23:06] * Zakim sees chaals, ifette on the speaker queue
- # [23:06] <timeless> ... when we started looking at WebDB
- # [23:06] <timeless> ... the reason we liked Nikunj was that it doesn't impose
- # [23:06] <timeless> ... but it has the power
- # [23:07] <timeless> ... the part that concerned us with WebDB is that it presupposes SQLite
- # [23:07] <timeless> ... we're not really sure
- # [23:07] <timeless> IanF: i don't think anyone disagrees
- # [23:07] <ifette> q-
- # [23:07] * Zakim sees chaals on the speaker queue
- # [23:07] <timeless> ... I haven't heard anyone say they don't like Nikunj , i've heard a lot of interest in it
- # [23:07] <timeless> IH: Proposal
- # [23:08] <timeless> ... all the browsers shipping WebDB are WebKit based
- # [23:08] <timeless> ... proposal: we move WebDB to WebKit.org, and we kill it as a deliverable from this group
- # [23:08] <timeless> chaals: I think we're likely to ship it
- # [23:08] <shepazu> q+
- # [23:08] * Zakim sees chaals, shepazu on the speaker queue
- # [23:08] * Joins: Marcos (Marcos@72.254.89.39)
- # [23:08] <chaals> ack cha
- # [23:08] * Zakim sees shepazu on the speaker queue
- # [23:08] <timeless> IH: I don't want to work on a spec without 5/5 impls
- # [23:08] <timeless> DS: Is it possible to take what is speced in WebDB, freeze it,
- # [23:09] <timeless> ... take the interface layer, and stick it onto Nikunj ?
- # [23:09] <timeless> [all] : No.
- # [23:09] <chaals> ack arun
- # [23:09] * Zakim sees shepazu on the speaker queue
- # [23:09] <chaals> q+
- # [23:09] * Zakim sees shepazu, chaals on the speaker queue
- # [23:09] <timeless> arun: suppose the freezing part was taken seriously
- # [23:09] <timeless> ... is that sufficient, or is there more spec needed to be written?
- # [23:09] <timeless> IH: well, there's the SQL part
- # [23:09] <chaals> q+ sam
- # [23:09] * Zakim sees shepazu, chaals, sam on the speaker queue
- # [23:09] <timeless> ... we could say that the SQL part is SQLite 3's dialect
- # [23:10] <ifette> q+ sam
- # [23:10] * Zakim sees shepazu, chaals, sam on the speaker queue
- # [23:10] <chaals> ack she
- # [23:10] * Zakim sees chaals, sam on the speaker queue
- # [23:10] <chaals> ack sam
- # [23:10] * Zakim sees chaals on the speaker queue
- # [23:10] <pcastro> q+
- # [23:10] * Zakim sees chaals, pcastro on the speaker queue
- # [23:10] <ifette> sam: spoke
- # [23:10] * darobin Marcos: can we get your miniDVI to VGA adapter?
- # [23:10] <timeless> Sam: Apple and Google have expressed an interest in added full text search to the api we've used
- # [23:11] <timeless> jorlow: that's extremely important to Google too
- # [23:11] <pcastro> q-
- # [23:11] * Zakim sees chaals on the speaker queue
- # [23:11] <timeless> [ audience squirmed relating to some Xsomething api]
- # [23:11] <chaals> ack me
- # [23:11] * Zakim sees no one on the speaker queue
- # [23:11] <timeless> IH: most of the people are asking me to spec Nikunj (?)
- # [23:12] <timeless> chaals: moving along
- # [23:12] <timeless> ... proposal: WebDB remains as a deliverable
- # [23:12] <pcastro> q+
- # [23:12] * Zakim sees pcastro on the speaker queue
- # [23:12] <timeless> ... we ask IH to do the minimal level to satisfy the implementors
- # [23:12] <timeless> RESOLVED: [above]
- # [23:13] <chaals> zakim, next agendum
- # [23:13] <Zakim> I see a speaker queue remaining and respectfully decline to close this agendum, chaals
- # [23:13] <chaals> q-
- # [23:13] * Zakim sees pcastro on the speaker queue
- # [23:13] <ifette> RESOLUTION: hixie does minimal work to get this to a point the shipping browsers are happy with, if he goes nuts we will put up resources to finish it
- # [23:13] <chaals> q- pablo
- # [23:13] * Zakim sees pcastro on the speaker queue
- # [23:13] * Joins: JonathanJ (hollobit@72.254.93.129)
- # [23:13] <arun> ack pcastro
- # [23:13] * Zakim sees no one on the speaker queue
- # [23:13] <chaals> zakim, next agendum
- # [23:13] <Zakim> agendum 3. "WebSimpleDB" taken up [from chaals]
- # [23:14] <timeless> chaals: do we really want to talk about filesystem?
- # [23:14] <timeless> arun: no
- # [23:14] <timeless> ianf: no, except to remember it exists
- # [23:14] <chaals> zakim drop agendum 5
- # [23:14] <chaals> zakim, drop agendum 5
- # [23:14] <Zakim> agendum 5, filesystem, dropped
- # [23:14] <ifette> s/ianf/ifette
- # [23:14] <chaals> Topic: Web Simple DB
- # [23:15] <ifette> s/DB/DB (nikunj)
- # [23:15] <chaals> s/DB/(Nikunj) DB/
- # [23:15] <timeless> chaals: ack Nikunj
- # [23:15] <timeless> [ Nikunj asks for projection ]
- # [23:16] <ifette> Zakim, allow this agendum 30 minutes
- # [23:16] <Zakim> ok, ifette
- # [23:16] <timeless> [ chaals asks for intros from lurkers ]
- # [23:16] <timeless> Donald from ETH Zurich
- # [23:16] <timeless> Donald: We've implemented XQuery that runs in IE and FF, and hopefully soon in Chrome/Opera/Safari
- # [23:17] * Joins: gsnedders (gsnedders@83.252.226.150)
- # [23:17] <timeless> Ghislain a student of Donald
- # [23:17] <timeless> Dana from Oracle
- # [23:17] <timeless> HTML working group chair
- # [23:18] * chaals satoshi
- # [23:18] <timeless> Satoshi
- # [23:18] <timeless> [?] from Toshiba
- # [23:18] * chaals s/[?]/gondo
- # [23:19] <timeless> s/[?]/Gondo/
- # [23:19] <timeless> Nikunj: there's a new draft, taking input from others and feedback from the mailing list
- # [23:19] <chaals> Magnus, Ericsson
- # [23:20] <timeless> Nikunj: there are some use cases we don't cover
- # [23:20] <timeless> ... JS might want to do boolean expression evaluation
- # [23:20] <timeless> ... the language for the expression isn't important
- # [23:20] <timeless> ... but the necessary bits to efficiently implement this
- # [23:20] <timeless> ... being able to store keys, iterate over keys in the index, operate over multiple keys at the same time
- # [23:21] <timeless> Nikunj: I plan to add appendices to help with this (?)
- # [23:21] <timeless> ... before the next working draft
- # [23:21] <timeless> ... there are some open questions that i haven't addressed in this spec
- # [23:21] <timeless> ... i'd like to lay out things to get feedback for alternate suggestions
- # [23:22] <timeless> Nikunj: first, key types
- # [23:22] <timeless> ... string/number
- # [23:22] <timeless> ... the are fancier things that could be done, supporting structured clone as a key value
- # [23:22] <chaals> [functions that evaluate to a value can be a key, too]
- # [23:22] <timeless> ... there are various ways to make it fancier
- # [23:23] <chaals> q?
- # [23:23] * Zakim sees no one on the speaker queue
- # [23:23] * timeless is kinda outa league here
- # [23:23] <chaals> q+ ifette
- # [23:23] * Zakim sees ifette on the speaker queue
- # [23:23] <timeless> Nikunj: there are multiple ways to address this
- # [23:23] <MikeSmith> RRSAgent, make minutes
- # [23:23] <RRSAgent> I have made the request to generate http://www.w3.org/2009/11/02-webapps-minutes.html MikeSmith
- # [23:23] * chaals wonders if people can help capture this
- # [23:24] <timeless> Nikunj: there are three ways to do indexing
- # [23:24] <timeless> ... 1. no indexing, the application manages the index manually
- # [23:24] <timeless> ... 2. the index only knows about the store, but the useragent doesn't maintain that index
- # [23:24] <timeless> ... it is only used by the application to look up things through the index
- # [23:24] <timeless> ... 3. in addition to 2, the useragent actually maintains the index
- # [23:25] <timeless> Nikunj: option 1 is supported
- # [23:25] <timeless> ... option 3 is supported with constraints on the key path
- # [23:25] <ifette> q+ to ask question aboujt indicies
- # [23:25] * Zakim sees ifette on the speaker queue
- # [23:25] <timeless> ... option 2 is not supported
- # [23:25] <timeless> ... option 3 is a simpler api but more complex implementation
- # [23:25] <timeless> ... there's a contention between reducing the footprint of the api v. the footprint of the implementation
- # [23:26] <timeless> ... there are tradeoffs across different engines
- # [23:26] <timeless> ... i've tried to capture an implementation neutral api
- # [23:26] <timeless> ... i'm requesting feedback to be categorized, api v. footprint
- # [23:26] <timeless> ... i've received feedback on concurrency
- # [23:27] <timeless> ... there are two models for concurrency
- # [23:27] * Quits: tlr (tlr@128.30.52.169) (Quit: tlr)
- # [23:27] <timeless> ... optimistic and pessimistic
- # [23:27] <timeless> ... i've tried to avoid mandating an implementation
- # [23:27] <timeless> ... implementations will choose based on their needs
- # [23:27] <timeless> ... optimistic is better for high performance
- # [23:27] <timeless> ... pessimistic is simpler
- # [23:28] <timeless> ... in the spec, i've tried to identify conditions that can offer deadlock free behavior
- # [23:28] <timeless> ... i believe the main concern, is that the average user will not be very good at recovering from
- # [23:28] <timeless> ... deadlocks or optimistic concurrency failure
- # [23:28] <timeless> ... the approach i've taken is to specify a behavior that is deadlock free
- # [23:29] <timeless> ... and specify two levels of granularity that
- # [23:29] <timeless> ... at the database, or an object store
- # [23:29] <timeless> ArtB: could you document this in a blog?
- # [23:29] <timeless> Nikunj: Object Store = Table
- # [23:29] <timeless> DS: better in a requirements document than a blog
- # [23:29] <chaals> --> http://dev.w3.org/2006/webapi/WebSimpleDB/ editor's draft
- # [23:29] <ifette> q?
- # [23:29] * Zakim sees ifette on the speaker queue
- # [23:30] <timeless> Nikunj: let me start writing it in an appendix, and then we can move it to another document later
- # [23:30] <timeless> q+ sicking
- # [23:30] * Zakim sees ifette, sicking on the speaker queue
- # [23:30] <chaals> ack ifette
- # [23:30] <Zakim> ifette, you wanted to ask question aboujt indicies
- # [23:30] * Zakim sees sicking on the speaker queue
- # [23:30] <ifette> q= ifette,sicking
- # [23:30] * Zakim ifette, if you meant to query the queue, please say 'q?'; if you meant to replace the queue, please say 'queue= ...'
- # [23:30] <ifette> queue=ifette,sicking
- # [23:30] * Zakim sees ifette, sicking on the speaker queue
- # [23:30] <ifette> \
- # [23:30] <timeless> Nikunj: two levels of deadlock free concurrency
- # [23:30] <timeless> ... comparing with WebDB
- # [23:30] <timeless> ... where we only do database level concurrency
- # [23:30] <chaals> scribe: Chaals
- # [23:31] <chaals> ... and object storage level
- # [23:31] <chaals> s/storage/store
- # [23:31] <jorlow> q+ to full text indexes
- # [23:31] * Zakim sees ifette, sicking, jorlow on the speaker queue
- # [23:31] <chaals> ... main pont is that people have asked for even more concurrency where possible.
- # [23:31] <timeless> s/pont/point/
- # [23:31] <chaals> ... optimistic concurrency control and management, but there is a risk of failiures in concurrency management that exposes programmer to requiring recovery
- # [23:32] <chaals> ... proposal is to allow that to programmers through exiting API knowing that can lead to exceptions that need recover
- # [23:32] <timeless> s/exiting/existing/
- # [23:32] <chaals> ... could be left out, would be easy to implement in any DB that allows that leel of concurrency. Question for the working group (and whether people like it)
- # [23:32] <ifette> q?
- # [23:32] * Zakim sees ifette, sicking, jorlow on the speaker queue
- # [23:32] <chaals> ... Propose to leave it in, as an appendix outside the basic part so people don't stumble.
- # [23:32] <timeless> ack ifette
- # [23:32] * Zakim sees sicking, jorlow on the speaker queue
- # [23:33] <chaals> IF: Wanted to jump back to indices. What do the 3 options mean for an app developer with a lot of data
- # [23:33] <chaals> ... assume 20GB database of integers. Which option gives me a Btree in the user agent, instead of in JS
- # [23:33] <chaals> NM: The btree is in the user agent. you only pull out the data you are looking to consume.
- # [23:34] <chaals> ... to find out which pieces of data match the two conditions, you have to do the join yourself.
- # [23:34] <chaals> ... People feel that a user agent implementation of that might be too rigid, and doing it in the app will be almost as performant.
- # [23:34] <chaals> ... Limiting the amount of data you pull out will be easier for the app than the UA to get right - but this is open to feedback
- # [23:35] <chaals> IF: Scares me but I need to go back and get more detail.
- # [23:35] <chaals> ... What base index types do you expect all UAs to support?
- # [23:35] <chaals> NM: Use case for me is a boolean index exression evaluation. Another use case is keyword and context - fulltext.
- # [23:36] <chaals> ... you could create keword/context index, but will not perform as well as done natively.
- # [23:36] <chaals> ... We can include that but it isn't included in the current draft - or we could put it in a v2. There is also hashindex which is not specced - we just have btree.
- # [23:36] <chaals> IF: To use this for gmail we have to be able to do fulltext and we don't think we can do that performant in JS so we would like native code to do that.
- # [23:36] <chaals> ... For v1
- # [23:37] <chaals> NM: In some discussions we can provide keyword/context, but fulltext incoroprates some more concepts that can get hairy in different languages. It should perform aequately with a qiuck index.
- # [23:37] <chaals> ... fulltext is probably a bigger spec than websimpleDB.
- # [23:38] <chaals> [clarification of fulltext vs keyword/context]
- # [23:38] <timeless> q?
- # [23:38] * Zakim sees sicking, jorlow on the speaker queue
- # [23:38] <chaals> IF: If we had a quick index that might suffice... let's come back
- # [23:38] <chaals> ack sic
- # [23:38] * Zakim sees jorlow on the speaker queue
- # [23:38] <chaals> JS: The issue I found most controversial internally has been the concurrency issue
- # [23:38] * Joins: tlr_ (tlr@128.30.52.169)
- # [23:39] <chaals> [ed. Jonas said the unfancy word :P]
- # [23:39] <chaals> JS: In general we aim to avoid race conditions and deadlocks. sql api uses a simple lock - touch it once and everything locks until you leave it - no risk but performance issues.
- # [23:40] <chaals> ... I have argued that there are a range of solutions between the extremes, where we can lock fine-grained without having the risks. Should we try to find such a solution or say people who use this need to be smart enough to deal with such lock/race conditions.
- # [23:41] <chaals> NM: Share your concerns in dumping deadlock recovery on programmer. THink spec as written now has more concurrency than usual - offers a model where readers don't block writers so long as they are not on the same bit.
- # [23:41] <chaals> ... If application doesn't want to choose, we do the safe thing. If they want to choose they can have deadlock-free concurrency. Open to hearing of such mechanisms we can offer, and found 3
- # [23:42] <chaals> IF: 3 options are all guaranteed to be dealock-free. Is that a hard requirement or could we offer low-level locking ???
- # [23:42] <chaals> NM: That is possible and is supported in the spec but doesn't mean that we have to have it. Have been warned that optional behaviours don't get implemented or cause introperability problems.
- # [23:43] <chaals> JS: There had been an idea of allowing a fallback to a locking model, but optional features generally lead to a race to the bottom. Think we should mandate that all locking mechanisms are required.
- # [23:43] <MikeSmith> i/JS: my concern is that/scribenick: sicking
- # [23:43] <timeless> q?
- # [23:43] * Zakim sees jorlow on the speaker queue
- # [23:43] <MikeSmith> RRSAgent, make minutes
- # [23:43] <RRSAgent> I have made the request to generate http://www.w3.org/2009/11/02-webapps-minutes.html MikeSmith
- # [23:43] <chaals> NM: Yes you can add levels of granularity as well as deadlock free mechanisms
- # [23:43] <timeless> ack j
- # [23:43] <Zakim> jorlow, you wanted to full text indexes
- # [23:43] * Zakim sees no one on the speaker queue
- # [23:44] <chaals> JO: Question about joins - sounds like you took them out to keep the implementation simpler
- # [23:44] <chaals> NM: And keep the API smaller
- # [23:44] * tlr_ is now known as tlr
- # [23:44] <chaals> JO: Main concern was implementing joins in Javascript.
- # [23:45] <chaals> NM: Spec was originally written on berkeleyDB which had no way to retrieve object based on key index. had a way to join dbs but we added a way to lookup an object from the index and treating the indices, and use of joins dropped.
- # [23:45] <chaals> JO: So if you have two large parts of the DB with small verlap, doing that in JS is going to be inefficient.
- # [23:45] <chaals> IF: Fulltext is an example - like that.
- # [23:46] <Zakim> ifette, agendum 3 was to have been concluded at this time
- # [23:46] <ifette> Zakim, thank you for the oh so curteous reminder
- # [23:46] <Zakim> I don't understand you, ifette
- # [23:46] <chaals> JO: In Gmail example, if you are searching for a to and from address you might have zillions of addresses so it might be a big burden on the system
- # [23:46] <ifette> Zakim, who's your daddy?
- # [23:46] <Zakim> Ralph is taking good care of me but you all are my family, ifette
- # [23:47] <chaals> NM: there is no expectation in the set that an entire dataset has to go into memory. because itis btree the two indices are sortedin the same order so it reduces the amount you need to work over.
- # [23:47] <chaals> JO: If you have 10k items, that's heavy
- # [23:47] <chaals> NM: Marshalling cost is high
- # [23:47] <chaals> IF: When using the same index repeatedly, how complex?
- # [23:48] <weinig> q+
- # [23:48] * Zakim sees weinig on the speaker queue
- # [23:48] <chaals> NM: if needed it would be an extrsa feature in the spec
- # [23:48] <chaals> SW: concrete question - a person coming from SQL API - how different is the code they have to write, what is the conversion
- # [23:48] <chaals> NM: A user programming against the API?
- # [23:49] <chaals> SW: Sure
- # [23:49] <chaals> NM: In use cases, we don't expect people to program against the spec, but use JS libraries. But we want to make it possible to program against directly.
- # [23:49] <arun> q?
- # [23:49] * Zakim sees weinig on the speaker queue
- # [23:49] <arun> q+
- # [23:49] * Zakim sees weinig, arun on the speaker queue
- # [23:49] <chaals> ... if you are using a mapping laer here there will be no real difference
- # [23:49] <chaals> SW: Is there precedence for adding a new API mostly for middleware?
- # [23:50] <chaals> Timeless: We added a lot of stuff to libraries against APIs
- # [23:50] * Quits: annevk (opera@72.254.82.30) (Quit: annevk)
- # [23:50] <chaals> AR: It is wise to look at this API to make simple things simple, but look at allowing libraries to straddle it.
- # [23:51] <ifette> q+
- # [23:51] * Zakim sees weinig, arun, ifette on the speaker queue
- # [23:51] <chaals> SW: Not sure that this is simpler for a simple query, which is the basic use case for a DB
- # [23:51] <chaals> ack we
- # [23:51] * Zakim sees arun, ifette on the speaker queue
- # [23:51] <chaals> AR: Not sure how much more simpler it will be to use SQL
- # [23:51] * Quits: Lachy (Lachlan@72.254.56.137) (Connection reset by peer)
- # [23:51] <ifette> jonas: most people use XHR via libraries
- # [23:52] <chaals> JS: XHR is generally used through libraires - there are direct usage but a lot of Dojo. The other one is the WebGL, that is meant to be used like that
- # [23:52] * Joins: Lachy (Lachlan@72.254.56.137)
- # [23:52] <chaals> SW: remains to be seen for WebGL
- # [23:52] <chaals> AR: Think XHR is a good answer for Sam's question.
- # [23:52] <chaals> SW: Would like to see simple examples converted and how easy they are
- # [23:52] <chaals> NM: Those are already in the front of the spec.
- # [23:53] <chaals> JS: Depends heavily on the SQL string that you are passing in. Lots of X-table joins will be harder, looking up simple table stuff is just as simple.
- # [23:53] <ifette> q?
- # [23:53] * Zakim sees arun, ifette on the speaker queue
- # [23:53] <arun> ack arun
- # [23:53] * Zakim sees ifette on the speaker queue
- # [23:53] <chaals> ack if
- # [23:53] * Zakim sees no one on the speaker queue
- # [23:54] <chaals> IF: In terms of the world, Mozilla won't implement WebDB, and we want to get Gmail working with a DB and there are others who want to get apps working. Plus or minus some detail, it seems Web Simple Database can do taht
- # [23:54] <chaals> [bike shedding]
- # [23:54] <arun> q+
- # [23:54] * Zakim sees arun on the speaker queue
- # [23:54] <chaals> ... I can make my app work with this.
- # [23:54] <ifette> s/this/this probably/
- # [23:54] * ifette growls at chaals
- # [23:54] <chaals> AR: Would like to see libraries that straddle this
- # [23:55] * chaals notes if wasn't doing the bike shedding
- # [23:55] <chaals> Topic: DataCache
- # [23:55] <chaals> s/[bike shedding]//
- # [23:55] * timeless chuckles
- # [23:55] <chaals> SW: It would be nice to see a performance analysis
- # [23:55] * arun doesn't own a shed
- # [23:56] <chaals> NM: Yes, we need implementation experience to do that.
- # [23:56] * arun but owns some bikes
- # [23:56] * chaals thinks arun should get a simple one
- # [23:56] * arun stuff it chaals
- # [23:56] * ifette thinks the shed should be blue
- # [23:56] * ifette or some other primary color
- # [23:56] * Joins: Magnus (rooms@72.254.104.46)
- # [23:56] <chaals> NM: Bulk of feedback on data caching / http interception seems like appcache but it uses different terminology.
- # [23:56] <chaals> ... people didn't know what they would need to make it happen.
- # [23:57] <jorlow> q+ to ask about why this isn't layered on AppCache
- # [23:57] * Zakim sees arun, jorlow on the speaker queue
- # [23:57] <chaals> ... Working draft published last week uses same mechanisms as appcache to describe it. Not identical. The model by which application ahs access to the cache is similar. There are a few differences
- # [23:57] <arun> ack arun
- # [23:57] * Zakim sees jorlow on the speaker queue
- # [23:57] <chaals> ... appcache doesn't take full headers into account, data cache does
- # [23:58] <chaals> ... When first adding something to the datacache the value was in a cookie and the ambient auth is matched against the cookie value without the app specifying stuff for offline auth.
- # [23:58] <chaals> ... works as expected for online auth. Means there is ont just one datacache - ther are different cookies that authorise different things in the same origin, so different caches.
- # [23:59] * Quits: MikeSmith (MikeSmithX@mcclure.w3.org) (Ping timeout)
- # [23:59] <chaals> MM: Browser has several forms of auth. reason to check cookies seem to apply to http auth as well.
- # [23:59] <chaals> NM: Yes, that is very valid. In this ersion we are only dfoing cookie, but no reason why it has to be that way.
- # Session Close: Wed Nov 04 00:00:00 2009
The end :)