2012-07-01 [20:12:00.0000] will be interesting to see where http://paulrouget.com/e/servo/ goes [23:59:04.0000] gsnedders: it's less than half typically 2012-07-02 [19:24:33.0000] https://groups.google.com/forum/?fromgroups#!topic/es-operating-system/8oWtRZnDK_w [19:25:12.0000] Shiki Okasaka wrote his own new browser engine [22:47:45.0000] MikeSmith: http://code.google.com/p/es-operating-system/wiki/Cplusplus0xBinding is also pretty interesting [22:48:12.0000] MikeSmith: did he implement HTML/CSS in JavaScript or C/C++? [22:55:58.0000] annevk: the engine is all C++ I think [22:56:18.0000] the UI is HTML and CSS [22:57:43.0000] cool cool cool [22:58:18.0000] we should go visit Shiki down in Kyoto next time you're here [22:58:27.0000] he owns a cafe there [22:58:38.0000] yeah I know, would be nice :) [23:19:53.0000] for
    , isn't the simplest thing to compute the start value by counting child
  1. elements, and let the result be bogus if you do something bogus? [23:20:21.0000] how is computed now? [23:20:27.0000] it /\ [23:22:20.0000] That's the way it's counted [23:22:40.0000] Only if you do something bogus the spec isn't too clear about markers [01:00:11.0000] hey! I was wondering if there's a way to completely remove the app cache from a website? Deleting the file and reference isn’t enough apparently :/ [01:01:53.0000] you mean programatically? or just from the perspective of the user (i.e, by asking the user to go in the browser's settings and delete it)? [01:02:07.0000] programatically :) [01:06:18.0000] well, it should be enough ... which browser you're trying in? trying reloading a couple of times I guess, deleting the file and/or reference to it should be enough (i've always done this myself and had no issues) [01:08:29.0000] hm ok I'll give it another try then… testing on mobile safari / ios5 [01:09:28.0000] TabAtkins_: please add a new value to 'clear', clear:fix [01:09:48.0000] I might be wrong but I think I've read some article saying it was actually not enough to just remove references [01:09:49.0000] which will be the new new new way to do it [01:10:24.0000] bdc: did you serve the manifest with no-cache headers? [01:10:55.0000] zcorpan: good question :p [01:11:45.0000] see gotcha #4 http://www.alistapart.com/articles/application-cache-is-a-douchebag/ [01:12:42.0000] that's exactly the issue I have [02:27:54.0000] Velmont: zcorpan: fancy creating a proper SVG out of http://lists.w3.org/Archives/Public/public-webappsec/2012Jun/att-0045/Hodges-CORS-Diagram-SimpleRequest-00.pdf ? [02:28:17.0000] annevk: hm, ok. [02:28:36.0000] odinho: unless you think it's not useful of course, but it looks fairly useful [02:31:08.0000] Yeah. I might've decoded it faster if it was more visual though. But it's helpful either way. [02:33:03.0000] if it would've helped you, future generations will like you for making it that way :) [02:39:48.0000] annevk: doesn't seem useful for *me* [02:41:40.0000] :) [02:42:14.0000] zcorpan: Yeah, but you need to put yourself in a poor webdev's shoes and then think about it like that. [02:42:56.0000] yeah i'm not saying it's not useful for everyone but me [02:43:31.0000] It seems pretty confusing [02:43:32.0000] zcorpan: It's not like I didn't know how these requests were supposed to be made :P [02:43:55.0000] jgraham: are you on public-webappsec? [02:44:00.0000] jgraham: might want to mention that [02:44:01.0000] No [02:44:11.0000] email to reply to is http://lists.w3.org/Archives/Public/public-webappsec/2012Jun/0045.html [02:44:18.0000] I can mention it here [02:44:34.0000] It seems inconsistent in the use of speech bubbles [02:45:03.0000] The initial request doesn't have one. They don't all list the same things [02:45:41.0000] Yeah, I'm kinda changing it a bit now. [03:59:51.0000] `'_'.anchor('x')` is `'_'` in all browsers, except in IE, where it’s `'_'` instead [04:00:49.0000] should I tweak http://mathias.html5.org/specs/javascript/#string to allow uppercase, or could I ignore IE in this case as the resulting string is equivalent anyway? [04:06:30.0000] IE is dumb, spec the lower case thing :) [04:06:46.0000] yay, then no tweaks are needed! [04:07:11.0000] I guess the Strings chapter is complete then. I wrote tests for it, too: http://mathias.html5.org/tests/javascript/strings/ [04:08:25.0000] I spent some time speccing the Object extensions too, in case anyone wants to review: http://mathias.html5.org/specs/javascript/#object [04:09:15.0000] matjas: as a general rule, don't allow two things in a spec just because browsers disagree. specs are supposed to get rid of the "disagree" part, so pick the majority or the most sensible option [04:09:33.0000] zcorpan: thanks; that makes sense [04:13:00.0000] matjas: is your algorithm of substr different from the one in the ES spec? [04:13:30.0000] it produces the same results, but the algo is a bit different [04:13:58.0000] i had already written this when you told me it was already defined in the ES5.1 spec [04:14:29.0000] i think this version is much more readable, but i guess that doesn’t matter [04:14:31.0000] matjas, do you want to check IsCallable() (http://ecma-international.org/ecma-262/5.1/#sec-9.11) for defineGetter/defineSetter? [04:14:35.0000] i suggest you drop it and just reference the ES one [04:14:38.0000] /me removes [04:15:01.0000] having two algorithms means implementors need to spend time one evaluating whether they are equivalent [04:16:19.0000] matjas: i guess all of the appendix in the ES spec is needed for compat, right? maybe say that all of it must be supported? [04:18:34.0000] zcorpan: good call. would it be useful to have the separate features listed out in our spec, or would you just mention annex b once and never explicitly mention e.g. String#substr [04:19:47.0000] matjas, and what do Object.prototype.__defineGetter__ and friends do if you call them on non-objects? [04:19:54.0000] either way works, your call :-) [04:20:08.0000] Ms2ger: do you think that’s better / more clear than what it says now? “If function is not a Function instance (of type Function), throw a TypeError and return” [04:20:33.0000] Well, is it equivalent, and if not, what do browsers do? [04:21:06.0000] seems like it is, as only Function instances have an internal [[Call]] property set to `true` [04:21:10.0000] afaict [04:21:40.0000] i guess it’s clearer to re-use the ES spec lingo though [04:22:30.0000] thanks for the feedback! <3 [04:22:36.0000] Np :) [04:23:24.0000] Hmm, http://mxr.mozilla.org/mozilla-central/source/js/src/tests/ecma_5/extensions/extension-methods-reject-null-undefined-this.js [04:26:25.0000] /me goes off for a bit [04:28:25.0000] interesting! I didn’t know Mozilla had a `String#quote` [04:36:55.0000] matjas: In http://mathias.html5.org/specs/javascript/#tohtmltag, step 2, there is an extra quotation mark in "\"">" [04:38:02.0000] hasather: good catch; thanks! [04:38:38.0000] matjas: I'm also skeptic about the name, ToHTMLElement instead? [04:39:44.0000] hasather: i don’t know. IMHO an element is what’s in the DOM, tags are what devs write [04:40:18.0000] it doesn’t actually create an element (like `document.createElement`) so I think that would be confusing [04:41:02.0000] hmm, it’s not just one “tag” though [04:41:18.0000] could it be just “ToHTML”? [04:45:46.0000] matjas: that's better. I wouldn't say that element is only a DOM concept though (XML has a production for it, and so has SGML) [04:47:42.0000] ToTagSoup [04:48:00.0000] :D [04:48:49.0000] i think that's about as accurate as it gets :-) [04:51:04.0000] :') [04:54:17.0000] matjas: s#"&quot;"#"&quot;"# [04:56:06.0000] zcorpan: thanks. i assume the same goes for the strings in the http://mathias.html5.org/specs/javascript/#tohtml algo? [04:56:21.0000] yeah [04:57:10.0000] actually the backslash thing is a bit un-spec-y [04:58:01.0000] i think i'd use http://simon.html5.org/tools/js/unicodeize/ notation [04:59:21.0000] so, "">" (U+0022 U+003E) [04:59:39.0000] nice tool btw! [05:00:10.0000] yeah [05:00:21.0000] maybe i should make it emit s too [05:00:28.0000] do it! [05:01:27.0000] matjas: is there a reason to say "six-character string" instead of "string"? [05:02:05.0000] hasather: I saw that in the HTML spec somewhere and assumed it was the right way of doing things [05:02:40.0000] hasather: it also made it more clear that the quotes aren’t part of the string; but that’s not an issue anymore with zcorpan’s suggestions [05:03:03.0000] matjas: seems redundant, and it's not used like that always like that in the HTML spec, but I don't know if there's a reason for it [05:03:20.0000] matjas: anyway, just nit-picking :) [05:03:43.0000] hasather: thanks for nit-picking! very useful feedback [05:06:30.0000] matjas: done [05:07:18.0000] zcorpan: thanks! could you add .replace(/ i did :-) [05:07:57.0000] thanks! [05:10:57.0000] matjas: "=\"" still has a backslash, and not all of them have code points, but maybe you're currently updating that [05:11:10.0000] hasather: I am, but thanks anyway :) [06:02:03.0000] hmmm. Is this clearer? http://odin.s0.no/tmp/Hodges_odinho-CORS-Diagram-SimpleRequest.svg [07:24:27.0000] odinho: minor typo: s/Do Access-Control-Allow-Origin/Does Access-Control-Allow-Origin/ [07:24:42.0000] matjas: Fack, and I "fixed" it from Does to Do :P [07:24:51.0000] Was unsure, so. [07:40:00.0000] matjas: But no other comments? [07:41:17.0000] So, I never liked that IndexedDB used .continue() and .delete() as they are reserved in JS, but thought, ohwell. -- But it actually breaks "with". with(os) { delete(); continue(); } doesn't work at all... [07:41:25.0000] odinho: looks very clear to me. maybe explain what happens if access is not allowed [07:41:36.0000] odinho: I call "feature" [07:41:46.0000] ^ [07:42:21.0000] matjas: Yea, thought about that. ... Hmm. Maybe I should try. Don't want it to be too advanced. And I'm basically only beautifying and SVG-ing something Jeff Hodges made. [07:42:30.0000] odinho: only for backwards compatibility with ES3. in ES5, `continue` and `delete` are valid property names: http://mothereff.in/js-properties#delete [07:43:18.0000] matjas: You mean that with will work correctly then? [07:43:32.0000] odinho: as a property, yes [07:44:26.0000] odinho: in your `with` example, you’re using `delete` as an identifier, which is not allowed [07:44:30.0000] Yea, but property. continue() isn't a property? It has to hang onto somewhere? [07:44:31.0000] even in ES5 [07:44:48.0000] matjas: Yep, so what I was saying :P -- We have object.delete() and object.continue() working fine. [07:45:09.0000] yeah, because they’re property names [07:45:12.0000] ES5 allows the use of unquoted reserved words as property names [07:45:38.0000] odinho: reserved words are valid IdentifierNames, but not valid Identifiers, in ES5 [07:46:01.0000] Yeah, but it's a bit strange to use them in a web API like IDB... [07:46:06.0000] see http://mathiasbynens.be/notes/javascript-identifiers and http://mathiasbynens.be/notes/javascript-properties if you’re interested [07:46:08.0000] Highlight in vim is strange and all. [07:46:45.0000] matjas: Yeah, I have somewhat control over that, keyPaths have to be valid identifiers, so I've read those parts of the ES spec. [07:48:20.0000] odinho, 'with' is evil anyway. [07:48:43.0000] yeah, noone needs to tell me. [07:49:09.0000] odinho: It seems they do, because you keep talking as if breaking it is a problem [07:49:15.0000] ;) [07:49:16.0000] But it's also evil to make API's that break features. [07:49:28.0000] "with" ain't no feature [07:49:34.0000] And that highlight strangely in vim. :P [07:49:46.0000] Aha, so now we see your real motive. [07:49:48.0000] jgraham: misfeatures then. [07:52:45.0000] Gecko just unprefixed backface-visibility, perspective, perspective-origin, transform, transform-origin, transform-style — nice! [07:53:19.0000] Yep! [07:53:23.0000] Hurrah! [07:53:28.0000] Thank Ms2ger. [07:55:55.0000] Yay me :) [08:00:43.0000] matjas, all the String.prototype functions in ES5 call CheckObjectCoercible, and it looks like Gecko does that as well [08:20:06.0000] Ms2ger: ah, only now I understand explains the Gecko source link you posted earlier [08:20:08.0000] Ms2ger: thanks! [08:20:24.0000] Np [08:43:04.0000] Ms2ger: do you know what I’m doing wrong here? test(function() { assert_throws(null, String.prototype.substr.call(null)); }); — http://mathias.html5.org/tests/javascript/strings/ [08:43:22.0000] I tried `assert_throws('TypeError', fn)` first [08:44:07.0000] assert_throws(null, function() { String.prototype.substr.call(null); }); [08:44:22.0000] Or assert_throws(new TypeError(), function() { String.prototype.substr.call(null); }); [08:44:31.0000] without wrapping it in test(), you mean? [08:44:58.0000] No, within the test [08:45:05.0000] But you need another function() [08:45:15.0000] ah, duh! [08:45:19.0000] thanks [09:02:45.0000] I wonder if the kobo touch JP (webkit) handles Furigana http://img.asiajin.com/blog/wp-content/uploads/2012/07/rakuten-kobo.png [09:03:01.0000] hmm yes it does. [09:03:08.0000] stupid me visible on the pic [09:07:09.0000] interesting, WebKit & IE don’t perform the CheckObjectCoercible step for the String extensions [09:17:13.0000] Opera and Gecko do, though [09:17:29.0000] Actually, is this WebKit or V8? [09:18:35.0000] V8 I guess [09:41:12.0000] matjas, http://mathias.html5.org/specs/javascript/ is empty [10:21:20.0000] Ms2ger: fixed [10:21:29.0000] Ta [12:49:21.0000] What is WhatWG again? Some kind of subset of W3C? And why did W3C rename to W3? [12:50:46.0000] smokeyrat: WHATWG is an independent group that was formed after the W3C decided not to work on HTML. The W3C later changed its mind, and now HTML is developed jointly by both groups. [12:50:58.0000] The W3C didn't rename to W3. It just uses "w3.org" as its url. [12:58:56.0000] You mean when they went all XHTML? [12:59:16.0000] Yes. [12:59:50.0000] How come WhatWG has a say? Who made it? Usually, sensible groups that break out from a big organization have no say. [12:59:59.0000] That whole XHTML thing was bizarre. [13:00:55.0000] Because browsers vendors believe the WHATWG has a say [13:01:20.0000] whatwg is also sort of a w3c community group but still in some ways independent [13:01:51.0000] I always found the W3C site to be a strange place. They used all kinds of bad practice in their own code, and even in examples, and at some point they used AdSense for Search on their site. They just gave a very lousy impression. [13:02:46.0000] The w3c takes feedback on their site design [13:06:08.0000] The WHATWG was created *by* browser vendors, who were annoyed at the W3C stopping work on HTML. It was just an alternate location to keep developing HTML, since the W3C wasn't going to allow it anymore. [13:06:39.0000] W3C = George Lucas? [13:06:54.0000] "HTML doesn't exist. HTML is dead to us. XHTML is the future." [13:07:12.0000] But yeah, they seem to have gotten *some* sense back. [13:07:24.0000] Too bad they still didn't make a sensible doctype syntax for HTML 5. [13:07:59.0000] the doctype in HTML now was developed in the WHATWG actually :-) [13:08:04.0000] was invented by the WHATWG [13:08:07.0000] it's the shortest thing we could come up with that still worked [13:08:17.0000] (we tried pretty hard to find shorter ones) [13:08:18.0000] w3c is not really pushing XHTML-everything any more [13:08:27.0000] Why in the freaking heck not ? [13:08:35.0000] though there is a new desire to try to shove anything and everything into HTML [13:08:44.0000] Why was it ever an incredibly long and impossible-to-memorize line? [13:08:51.0000] is not a doctype [13:09:03.0000] the impossible-to-memorize line was due to SGML [13:09:19.0000] "" is the shortest string that triggers standards mode [13:09:23.0000] that is the sole reason for it [13:09:29.0000] The only thing I know of that is in HTML 5 that I don't get (but I'm sure there is more) is some kind of client-side SQL database. Which makes no sense at all. [13:09:32.0000] you really want to be in standards more, not quirks mode [13:09:38.0000] otherwise html5 would have no doctype at all [13:09:56.0000] The entire concept of standards/quirks mode still exists in modern IEs? [13:10:23.0000] sadly yes [13:10:29.0000] it's even specced now [13:10:44.0000] we had no choice, there were pages depending on both modes [13:10:46.0000] In all modern browsers, not just IE. [13:10:55.0000] (four modes, really) [13:11:11.0000] Dang ol' mess. [13:11:16.0000] welcome to html [13:11:45.0000] Not really new to it... I remember when IE 6 was bliss compared to Netscape Navigator 4.8. [13:20:28.0000] Some PNGs in IE are not properly transparent, it seems. Or maybe I should phrase it like this: the transparency of PNGs in today's current stable versions of IE, Opera, Firefox, Safari and Chrome seems to vary. Can somebody confirm this? [13:24:22.0000] probably fine in latest version [13:24:29.0000] I knoew early IE's hae trouble [13:24:33.0000] IE 9 here. [13:24:35.0000] Not fine. [14:00:30.0000] Hello I'd like to submit a proposal about the canvas API [14:00:54.0000] In my use case, I'd like to be able to manipulate canvases with lower bit-depth [14:01:08.0000] like say one colour channel per pixel [14:01:50.0000] that is useful if you need to store a lot of offscreen canvases but don't really need all that pixel information [14:02:17.0000] it would allow to stuff more offscreen canvases in the same memory chunk [14:02:35.0000] that could be useful in games, image manipulation apps [14:02:39.0000] etc. [14:02:57.0000] and it should improve the processing time too in some cases [14:03:16.0000] because it would mean less pixels to copy when blitting for example [14:51:59.0000] tsatse, interesting! take a look at http://wiki.whatwg.org/wiki/FAQ#Is_there_a_process_for_adding_new_features_to_a_specification.3F if you haven't seen it. the proposal sounds reasonable, but as an implementor i would wonder if there are enough use cases to justify adding the API surface area / implementation code [14:52:24.0000] tsatse, if you just do the naive thing and use a canvas with full bit-depth, how wasteful is it in practice? i.e. how many games / image manipulation apps / etc see significant overhead? [14:52:37.0000] and if there are a lot, is canvas 2d the right primitive for them? [15:11:26.0000] jamesr, thanks. someone suggested me to store lower-depth image data in a typed array and manually move the data back and forth between the canvas when needed [15:11:39.0000] which is reasonable in my use case [15:12:28.0000] jamesr, I was thinking this was lacking because it's so common in opengl for instance to manipulate different colour-depth textures [15:13:22.0000] jamesr, and thanks for the pointer to the faq. I was looking for that formal information [15:13:38.0000] it's more advice than formal information [15:13:47.0000] webgl does have support for different texture formats, etc [15:14:04.0000] but it's less supported than canvas-2d [15:14:04.0000] canvas 2d is a bit higher-level [15:14:10.0000] yes [15:14:27.0000] it didn't have any support for controlling filtering until very recently [15:15:12.0000] it's good to have those features coming to canvas 2d because it means a higher reach for users 2012-07-03 [00:29:19.0000] JS guys: \c escapes for control characters in regular expressions are non-standard too, right? I can’t find anything about it in ES5.1. [00:33:10.0000] you mean like "\1" ? [00:37:24.0000] zcorpan: no, like `/\cA/.test('\x01'); // true` [00:37:35.0000] `\cA` till `\cZ`, [00:37:39.0000] so to speak [00:40:44.0000] e.g. \cA sends Ctrl+A, which is U+0001 [00:41:53.0000] i totally didn't know about this [00:45:05.0000] if it’s so obscure even zcorpan had never heard of it, it must be non-standard [00:48:09.0000] i don't see it in the syntax of regex literals in the spec and nothing in annex b [00:48:35.0000] zcorpan: ok, thanks for confirming [00:49:27.0000] not in ES3 either [00:49:35.0000] /me specs [01:17:31.0000] http://mathias.html5.org/specs/javascript/#control-character-escape-sequences [01:21:26.0000] matjas: regular expression *literals* no? [01:22:27.0000] zcorpan: fixed [01:23:52.0000] matjas: saying "must be supported" doesn't really say what is supposed to happen. i think there needs to be something that extends the syntax or regular expression literals and then some prose that says what the semantic is of the added syntax [01:25:56.0000] i guess add a line in RegularExpressionNonTerminator :: [01:26:03.0000] zcorpan: right [01:26:32.0000] zcorpan: i guess it should say more than just “literals” too, as RegExp('\\cA').test('\x01') should work too [01:27:03.0000] /me ​’s TODO list explodes [01:27:07.0000] oh, ok, i thought it was a quirk for just literals [01:32:13.0000] hey, hold on [01:32:25.0000] c ControlLetter [01:32:33.0000] http://ecma-international.org/ecma-262/5.1/#sec-A.7 [01:33:09.0000] FFFFFUUUUU [01:33:16.0000] LOL [01:34:44.0000] http://ecma-international.org/ecma-262/5.1/#sec-15.10.2.10 has the semantic requirement [01:35:48.0000] matjas: __lookupGetter__ says "If a getter for the prop property has been defined on the this object through the use of __defineGetter__, return the getter function; else, return undefined.". It should also return the getter if it was defined in the object literal. (Same for Setter). [01:36:44.0000] hasather: defined in the object literal? how? [01:37:18.0000] matjas: var o = {get p() { return 1; }} [01:38:02.0000] woah, i thought that was Fx-only for some reason [01:38:24.0000] this complicates things [01:38:33.0000] odinho: the new graph looks better, but it's not really clear how the webapp makes a request to the UA. maybe the arrow should have an XHR code snippet to make it concrete (and more correct, since the app doesn't really make a HTTP request to the browser) [01:38:37.0000] matjas: it's in http://es5.github.com/#x11.1.5 [01:39:42.0000] zcorpan: Hmm. Okay. That might work and still be short enough. Like xhr.open('get', 'http://example.com/resource.txt') xhr.send() [01:39:49.0000] It's a bit longer. [01:39:52.0000] hasather: thanks [01:40:00.0000] odinho: yeah [01:40:32.0000] odinho: dunno if the final arrow also should have a code snippet for symmetry [01:41:02.0000] xhr.onload = function() { alert(xhr.response) } [01:41:15.0000] zcorpan: Although it's conceptual the whole image, -- and CORS is really not tied to XHR. [01:41:16.0000] matjas: isn't the name "Web ECMAScript" enough? This spec is not what people mean when they say "JavaScript". :) Plus, "JavaScript" is a registered trademark. [01:41:48.0000] hasather: annevk suggested it, and i liked it [01:42:03.0000] hasather: i’d argue this spec is what people mean when they say “javascript” [01:42:32.0000] odinho: yeah but not everything matches the flow chart [01:42:49.0000] odinho: e.g. sans crossorigin doesn't use CORS [01:43:10.0000] hasather: e.g. 'foo'.substr() is not ECMAScript, but it is JavaScript (who wouldn’t call it so?) [01:43:13.0000] matjas: people say JavaScript and refer to ECMAScript usually, not the browser extensions [01:43:37.0000] zcorpan: get ( lyrics.com/hello.txt ) looks cleaner, though. -- But can't find a way to codify the return. [01:43:54.0000] The return has a different color tho'. Because it's supposed to be a body etc. [01:44:16.0000] I'm not sure if any code will make it clearer, I think it makes it harder to visualize at least :P [01:44:27.0000] matjas: s/not the browser extensions/not *only* the browser extensions [01:44:31.0000] hasather: #whatwg regulars people might refer to ECMAScript more often, but I’ll bet the average web developer means “anything that looks like ECMAScript and works in all browsers” [01:44:40.0000] zcorpan: "request lyrics.com/hello.txt" then? Instead of GET [01:44:52.0000] odinho: wfm [01:45:02.0000] hasather: this spec requires an ES implementation + the extras, so it’s the whole package [01:45:05.0000] Okay :D It looks better than the old. [01:45:06.0000] matjas: yea, but this only specs a subset [01:45:25.0000] matjas: ok then :) [01:45:29.0000] zcorpan: Updated. [01:47:56.0000] odinho: it should really also be GET /hello.txt HTTP/1.1 :-) [01:48:29.0000] zcorpan: No. I put my foot down to your correctness :P [01:48:46.0000] shortness > correctness for explanation picture :] [01:48:51.0000] fine :-P [01:49:03.0000] i'm still gonna grumble like an old fart [01:49:05.0000] Well, technical non-relvevant detail correctness. [01:49:18.0000] minus spelling errors. [01:50:11.0000] Speaking of which, fixed matjas spelling fix also. Only waiting for anne now... [01:58:54.0000] hasather: fixed — “If a getter for the prop property has been defined on the this object through the use of __defineGetter__ or the get syntax in the object initializer, return the getter function; else, return undefined.” + added examples [03:34:34.0000] http://software.hixie.ch/utilities/js/live-dom-viewer/saved/1647 [03:34:50.0000] Seems to be some disagreement about whether document.write causes load events [03:35:15.0000] In any case the spec is wrong (it's an infinite loop in the spec) [03:35:39.0000] (for some value of 'loop') [03:39:02.0000] matjas: __lookupGetter__ and friends probably want to be defined in terms of AccessorDescriptors as per ES5 [03:41:06.0000] Look at e.g. http://es5.github.com/#x8.7.1 for clues [03:51:33.0000] /win 18 [04:14:23.0000] jgraham: thanks, added to TODO. I was trying to keep things simple :'[ [04:19:57.0000] MikeSmith: can you add matjas' work to http://platform.html5.org/ please? [04:20:09.0000] sure [04:20:16.0000] what's the URL? [04:20:35.0000] MikeSmith: http://mathias.html5.org/specs/javascript/ [04:20:52.0000] (WIP) [04:21:24.0000] everything is WIP :) [04:24:11.0000] OK added [04:24:16.0000] does this mean IE will have to implement __proto__? [04:24:17.0000] did like this: "JavaScript (based on ECMAScript)" [04:24:57.0000] niloy: No. Like all web standards it doesn't force anyone to do anything. [04:25:10.0000] but they should right? [04:25:32.0000] niloy: IE will (sadly, IMO) be implementing __proto__ fairly soon, when ES6 support starts to come along. [04:26:11.0000] (It's simply not tenable to not support it on mobile where so much content relies upon WebKit behaviour.) [04:26:43.0000] great! I was just wondering if exposing __proto__ is a good thing [04:26:59.0000] Not really. Immutable prototype chains would be far nicer. [04:27:27.0000] However, the web relies on it, so it's just another inelegant thing that's part of the web platform. [04:28:28.0000] oh... sad [04:28:34.0000] MikeSmith: nice [04:28:53.0000] seemed like the simplest way to handle it [04:29:14.0000] niloy: As currently spec'd in ES6 it's really horrible, a magic data property with magic in [[Get]] and [[Put]]. Would be far nicer to have an accessor property. [04:31:00.0000] yeh [04:32:36.0000] niloy: if they want to be ES6-compliant, yeah [04:33:04.0000] matjas: They're going to do it regardless of whether it's in ES6. [04:33:15.0000] gsnedders: oh, cool [04:33:36.0000] matjas: It's simply not viable on mobile anymore with the ubquity of WebKit-expecting content. [04:33:49.0000] I always felt taht not exposing __proto__ was one of the good things IE has done, apart from ajax [04:34:56.0000] I'd still like to see first trying Object.defineProperty(Object.prototype, "__proto__", {get: function(o){return Object.getPropertyOf(o);},configurable:true}); [04:35:13.0000] (i.e., a read-only __proto__, which as such can be entirely described by ES5 semantics) [04:35:34.0000] But apparently, in large part down to a couple of libraries, that isn't possible for the mobile web. [04:41:36.0000] it seemed that part if it was because most __proto__ uses are in order to mutate the [[prototype]] of newly created objects, and a point of contention was the syntax that was to be introduced to cover that important use-case. At the end of the day, it was new, non-backward compatible syntax vs. __proto__ which works on mobile and works on now the majority of desktop environments by user percent. [04:41:37.0000] Given the fact that using the new syntax is a syntax error in existing browsers, and that __proto__ is already in the wild and widely used, the discussion shifted toward formalizing what already exists [04:43:26.0000] benvie: Certainly almost everyone would've rather have gotten rid of the setter if possible, even if that meant introducing new syntax. [04:45:11.0000] that's where `<|` and `.{` came in and, I may have misinterpreted what I read, but those were what eventually fell by the wayside in favor of just using __proto__ [04:52:17.0000] http://play-ttd.com/ <-- don't tell Hixie [04:56:52.0000] I don't know what the status of this is, but it'd be ideal http://wiki.ecmascript.org/doku.php?id=harmony:proto_operator [05:05:43.0000] jgraham: sweet [05:05:53.0000] jgraham: now someone make it happen for Dungeon Keeper 2 [05:14:16.0000] annevk: do we still want to publish the Notification LCWD this week? [05:14:59.0000] I see the message from Artur Ortega came in [05:15:11.0000] MikeSmith: I guess we should address those comments first somehow [05:15:15.0000] OK [05:15:32.0000] MikeSmith: need to find out what Apple/Google think [05:15:37.0000] annevk: I don't know how you plan to resolve the remaining i18n comments [05:15:51.0000] MikeSmith: exposing direction seems sensible, language seems overkill [05:16:12.0000] annevk: OK, I'm planning to talk to Richard about that tonight [05:16:41.0000] annevk: Aren't you supposed to be depleting the crustacean population of western europe? [05:16:44.0000] MikeSmith: at the end of the day, it's a lot of additional complexity to put into those systems and the benefit is small [05:16:52.0000] yeah [05:16:55.0000] jgraham: we're about to go cycling :) [05:17:16.0000] Oh, fun :) [05:42:19.0000] jgraham: do you get notifications about testharness.js pull requests from github? [05:43:31.0000] MikeSmith: Yes [05:43:36.0000] k [05:43:44.0000] I got ones for the requests Lachy made anyway [05:44:15.0000] Kind of annoying that step 3 has to be "now commit using mercurial" [05:44:23.0000] yeah :( [05:44:27.0000] Well step 4 I guess [05:44:40.0000] the actually-important step [05:44:57.0000] 1) Make patch 2) Upload to github 3) Get review 4) commit using mercurial to dvcs.w3.org [05:45:07.0000] can anyone tell me what "whatwg" is? [05:45:36.0000] MikeSmith, jgraham: I want notification as well. [05:45:44.0000] Anyone know if Simon Pieters is in here and awake? [05:45:56.0000] tanepiper: --> zcorpan: [05:45:58.0000] I got this error on w3c validator: Bad value rpuPostId for attribute name on element meta: Keyword rpupostid is not registered. [05:46:01.0000] odinho: I can add you to the github w3c account [05:46:07.0000] MikeSmith: Ohyea! [05:46:12.0000] odinho: cool, thanks [05:46:15.0000] how can I fix that? [05:46:20.0000] odinho: what is your user name? [05:46:24.0000] MikeSmith: Velmont [05:46:28.0000] hai [05:46:36.0000] (p.s. if anyone else might be interested, http://webcomponents.github.com/ :) [05:46:40.0000] guestlald: a mailing list on which people, including several major browser vendors, discuss proposals for changes to the web; principally the HTML spec [05:46:55.0000] guestlald: you need to read the full text of that error message [05:46:55.0000] (x-tags ftw) [05:47:13.0000] full text? [05:47:36.0000] … Syntax of metadata name: A metadata name listed in the HTML specification or listed in the WHATWG wiki. You can register metadata names on the WHATWG wiki yourself. [05:48:20.0000] guestlald: rpuPlugin is not a valid value for meta @name [05:48:43.0000] its a plugin I use on my blog [05:48:47.0000] zcorpan: when you are awake can you ping me please :) [05:48:58.0000] I didn't put that in meta [05:48:59.0000] guestlald: it's not registered anywhere [05:49:04.0000] /me expects zcorpan is awake [05:49:17.0000] Unless he is taking an afternoon nap [05:49:18.0000] tanepiper: i'm awake [05:49:19.0000] /me expects he is busy writing CORS inline tests [05:49:23.0000] should I just remove the plugin? [05:49:24.0000] Which would noy be a bad idea! [05:49:43.0000] guestlald: you can safely ignore that message if you want [05:49:44.0000] or should I not worry about those errors? [05:49:48.0000] okay [05:49:49.0000] yeah, that [05:49:50.0000] zcorpan: cool - Patrick Lauke said you are probably the person I need to talk to re: web components in Opera [05:49:53.0000] guestlald: If you don't want that message, you can fix the plugin, remove it, or ignore the message. [05:50:08.0000] doesn't slow down my site if I ignore message? [05:50:20.0000] guestlald: No. [05:50:29.0000] tanepiper: zcorpan or I are probably good to talk to. Maybe odinho also [05:50:33.0000] thank you :) [05:50:53.0000] anyone know if a w3c validation irc chatroom exists? [05:50:53.0000] tanepiper: what jgraham said :-) [05:51:16.0000] guestlald: no there is not one. but you can always ask here [05:51:35.0000] A charset attribute on a meta element found after the first 512 bytes. …134593'> You Are Stronger | The Optimis… [05:51:56.0000] <guestlald> http://www.anthonysabilities.com/blog/yas/ [05:51:58.0000] <odinho> guestlald: You should put it at the top, right after <!doctype html> [05:52:09.0000] <guestlald> above head? [05:52:24.0000] <odinho> guestlald: You don't need head, but if you have <head> there do it right after <head> then. [05:52:39.0000] <tanepiper> jgraham: ah cool - yea, basically I;ve spoken to Daniel Buchner at Moz about this, and he's on board with getting the idea going - basically I'd like to do this 'not in a vacuum' but I've been tracking web components for a bit of time now, since Alex Russel talked about them - and after the GoogleIO talk and seeing the X-Tags implementation I've kicked off http://webcomponents.github.com/ [05:52:51.0000] <guestlald> its already like this <head> <meta charset="<?php bloginfo('charset'); ?>" /> <title><?php atom()->documentTitle(); ?> [05:53:13.0000] but my minify plugin adds more code before it [05:53:17.0000] guestlald: So you have nasty plugins doing nasty things. [05:53:59.0000] ignore that code, didn't paste right lol [05:54:40.0000] odinho: added you https://github.com/w3c don't know if that means you will get the notifications or not (I don't understand how github handles the settings for that) [05:54:50.0000] tanepiper: what's mehh about Apple? [05:54:51.0000] tanepiper: Oh well none of us are dev-rel [05:54:53.0000] but wpminify adds that link code [05:55:00.0000] before meta [05:55:01.0000] MikeSmith: Cool, guess that should be enough. [05:55:16.0000] can I just put the meta before head? [05:55:28.0000] after [05:55:44.0000] tanepiper: ted is cool. [05:55:44.0000] zcorpan: afaik they don't do much dev rel around Safari? I may be wrong, but that's the impression I get [05:56:44.0000] guestlald: I guess you could try omitting the head start tags and end tags completely. Though dunno that might make your plugin choke. [05:57:04.0000] > <?php atom()->documentTitle(); ?> [05:57:07.0000] tanepiper: just so we understand each other, what do you mean with dev rel? [05:57:09.0000] change to [05:57:21.0000] > <?php atom()->documentTitle(); ?> [05:57:27.0000] The organisation exists around https://github.com/WebComponents - and i'm hoping to finaise the submission guidelines this week, get Moz's existing X-tags from http://mozilla.github.com/x-tag/ imported in as repos and get some discussion started on improving them [05:57:29.0000] ? [05:57:43.0000] tanepiper: Edward O'Connor is apple and very responsive and cool. [05:57:54.0000] I need the head tags [05:57:55.0000] guestlald: that's not going to validate but it will if you drop the head start tag and end tag [05:58:01.0000] guestlald: why? [05:58:01.0000] zcorpan: good question i suppose - really we want to make sure that proposed web components are sane for the browser vendors [05:58:13.0000] wordpress put them there [05:58:54.0000] tanepiper: apple people can have good feedback, i wouldn't exclude them up front :-) [05:58:55.0000] guestlald: then you're probably better off asking in a wordpress forum [05:59:04.0000] okay [06:00:01.0000] /me doesn't really know what x-tags is, but web components in general is quite vendor driven [06:00:10.0000] tanepiper: We're spec and web tech people in Opera. We have something called devrel too, they are more working with developers, w/ some specs on the side. [06:00:15.0000] ideally at least one member from each will have full admin rights on the organisation to help keep things in check, potentially do merges on repos from incoming patch requests (the plan is to initially start with X-tags so we can have the likes of http://mozilla.github.com/x-tag/demo.html#tabbox or http://mozilla.github.com/x-tag/demo.html#modal - get these speced) [06:00:49.0000] tanepiper: You have seen http://dvcs.w3.org/hg/webcomponents/raw-file/tip/explainer/index.html ? [06:01:06.0000] jgraham: X-Tag is based on the Custom Elements portion of the W3 Web Components spec. [06:01:26.0000] i.e. a polyfill developers can use now :) [06:01:53.0000] it's less to do with the implementation and more to do with what developers will actually do with this stuff [06:02:15.0000] e.g. one tab compoenent to rule them all vs 50,000,000 different tab components [06:03:46.0000] odinho: that's maybe who I should be speaking to then, but I was directed here via a question on twitter :) [06:04:22.0000] tanepiper: Yea, you spoke to the devrel people, they sent you to us, who have our hands a bit more dirty and deeper into the specs etc. [06:06:31.0000] tanepiper: it's probably my fault you ended up here :-) but at least now we know a bit more about what you're after [06:07:33.0000] zcorpan: :) Cool, yea this is a project very much about defining standard 's - not how you guys are implementing what we'll be using as devs [06:12:22.0000] tanepiper: yeah, our devrel people seems more suitable for that kind of thing [06:12:41.0000] assuming one of them can commit to it [06:14:22.0000] maybe they'll just go "LOL I dunno nothing about web components, buy me a slab of beer and i'll *consider* it" [06:17:38.0000] /me thought Patrick Lauke was in dev rel [06:17:47.0000] MikeSmith: He is. [06:18:07.0000] so you dudes should pass the hot potato back to him [06:18:12.0000] or karlcow [06:20:10.0000] zcorpan: i just as a MS developer evangelist 'trying to make html5 work for everyone' - he also asked what are web components :) [06:20:21.0000] *le sigh* [06:20:44.0000] But well, I don't know... For my part, I feel normal spec/webtech people is better suited than devrel. Although, I don't really know what different stuff devrel do, -- they do more Twitter and less tests than the rest of us at least. [06:20:56.0000] Less arguing on mailing lists. [06:21:40.0000] hmm well testing will be a big part of this - we don't want x-tags (custom elements) going out that will break things badly :D [06:22:30.0000] /me is reading the backlog for the hot potato [06:24:54.0000] MikeSmith: in fact there is one for validation or more exactly two ;) question of guestald #validator on freenode, #validator on w3c irc [06:26:21.0000] "Web Components Organisation — We don't need no stinkin' standards bodies" … [06:30:01.0000] Wait, so for computed styles, what does "As specified, but with relative lengths converted into absolute lengths" actually mean? [06:30:11.0000] What unit should be used for the absolute length, for instance? [06:30:49.0000] I have read the http://webcomponents.github.com/ a few days ago… and not sure what the goal is, specifically with the inflammatory tone at the start. [06:31:21.0000] AryehGregor: i think it means converted to px, but that's not what it says is it... [06:31:25.0000] No. [06:31:40.0000] Hmm, you know, I guess it makes no difference except for in the CSSOM. [06:32:20.0000] Because CSSOM aside, computed value is only used for inheritance, so units are irrelevant. [06:33:33.0000] Seems like "convert to px" is how all UAs handle getComputedStyle() for line-height, at least. [06:43:09.0000] tanepiper: not sure what do you want exactly [07:02:22.0000] oh wow http://darobin.github.com/test-harness-tutorial/docs/using-testharness.html is nice [07:02:27.0000] bravo Berjon [07:02:45.0000] gsnedders, Ms2ger et al. is there any way to predefine the slugs instead of letting Anolis create them? [07:03:00.0000] Slugs? [07:03:08.0000] Ms2ger: e.g. I’d like http://mathias.html5.org/specs/javascript/#array.prototype.splice(start,-deletecount-,-item1-,-item2-,-…-)) to just say http://mathias.html5.org/specs/javascript/#array.prototype.splice [07:03:53.0000] hasn't every good distruptive project started by having a go at the old way :) And the goal is, browser vendors are finally giving developers the necessary tools to build our own tags and components, outwith defined specs, which means we'll start to see the likes of , , etc - but rather than have the current situation where you have 50 different date pickers to choose from - why not [07:03:56.0000] instead have developers come together and try agree one to rule them all. Then as browser vendors scower the web post-html5 final spec, looking for new tags to add nativly (as per the suggestion in the GoogleIO talk) - then all these should be speced out rather well [07:04:05.0000]

    ... should work, I think [07:04:39.0000] Ms2ger: hah, just like that huh :) [07:05:12.0000] All thanks to gsnedders, that :) [07:05:20.0000] DON'T BLAME ME. [07:06:05.0000] Hmm. So why does the resolved value for transform-origin and perspective-origin resolve percentages to absolute lengths, but transform not? [07:07:43.0000] tanepiper, nobody has a problem with dev-written libraries, like jQuery or whatever. Specs still need to exist to define things that are better implemented in browsers directly, such as for reasons of efficiency or because scripts lack some capabilities or because not everyone wants to pull in a 100k library to get basic functionality. [07:08:20.0000] I have more than enough problems with jQuery :) [07:08:32.0000] Yeah, but things like it are going to exist, and that's fine. [07:10:56.0000] well why can't these libraries, instead of creating their own markup and functionality over and over for the same thing (and making it almost impossible to mix-and-match libraries too) why can't they use agreed upon custom components? Isn't this what custom components are all about? [07:12:08.0000] Not really… I mean if you have two libraries that implement datepickers with different feature sets and expose different APIs, it will be quite hard to make them the same [07:12:31.0000] By giving us the shadow DOM, etc, do you really want developers going out their way to write tags? Or shouldn't you want them to use the pre-spec'ed