04:17 | <annevk> | From blink-dev: "Opera, I think, and <not-public>IE, with a developer release, soon</not-public>" <not-public> does not work that way :-) |
04:18 | <JonathanNeal> | What's the proper way to mark something like this up? "National Academy of Sports Medicine (NASM)" |
04:19 | <Hixie> | what's wrong with "National Academy of Sports Medicine (NASM)" ? |
04:19 | <JonathanNeal> | National Academy of Sports Medicine (<abbr>NASM</abbr>) ... or ... National Academy of Sports Medicine (<abbr title="National Academy of Sports Medicine">NASM</abbr>) ... or without the abbr or something else? |
04:20 | <JonathanNeal> | Hixie: I wasn't sure if all abbreviations should be marked up in abbr, and if so, how they should be marked up when next to their non-abbreviated form. |
04:20 | <Hixie> | there's a bunch of examples in the spec that cover this, see the <abbr> element section |
04:20 | <Hixie> | but note in particular where it says "Abbreviations do not have to be marked up using this element" and then gives some reasons why you might want to sometimes |
04:20 | <slowhands> | MASM |
04:20 | <slowhands> | FASM? |
04:21 | <slowhands> | all good things |
04:21 | <JonathanNeal> | indeed http://developers.whatwg.org/text-level-semantics.html#the-abbr-element |
04:22 | <JonathanNeal> | Actually, the examples in the link I just provided are very confusing to me. |
04:22 | <Hixie> | d'oh |
04:23 | <JonathanNeal> | They say the abbr element must contain an expansion of the abbreviation, but then go on to show examples without it. |
04:23 | <Hixie> | where does it say the first thing? |
04:23 | <JonathanNeal> | oh, the title attribute must, if present. |
04:24 | <JonathanNeal> | I was wrong. *echoes across the internet* |
04:24 | <Hixie> | ah ok |
05:05 | <annevk> | TabAtkins: it depends on what Beacon evolves into I think |
05:05 | <annevk> | TabAtkins: and how we design fetch() |
05:06 | <annevk> | TabAtkins: I think we haven't solved Array<Node> yet and nobody is working on it. |
05:35 | <annevk> | Sometimes I wish Gmail had merge thread |
05:54 | <annevk> | MikeSmith: https://www.w3.org/Bugs/Public/quips.cgi needs to be filled up with random stuff :-) |
06:08 | <MikeSmith> | annevk: indeed |
06:08 | MikeSmith | tries to figure out how to enable the quips feature |
06:08 | <MikeSmith> | enablequips |
06:12 | <MikeSmith> | all right friends, go to town: https://www.w3.org/Bugs/Public/quips.cgi |
06:13 | <MikeSmith> | please ignore the part that says "but not obscene or offensive, please" |
06:13 | <MikeSmith> | annevk: ↑ |
06:20 | <annevk> | "Implement it, submit patches and hope nobody notices." :-) |
06:20 | <MikeSmith> | heh |
06:22 | <MikeSmith> | annevk: that quote is from tomasf btw |
06:25 | <annevk> | https://twitter.com/tomasf ? |
06:25 | annevk | doesn't see it there |
06:26 | <MikeSmith> | http://krijnhoetmer.nl/irc-logs/whatwg/20130614#l-223 |
06:28 | <MikeSmith> | miketaylr "form a CG" was a pretty good response to that question too |
06:29 | <zcorpan> | anyone here able to merge https://bitbucket.org/ms2ger/anolis/pull-request/10/use-for-the-toc-in-w3c_compat-since-csswgs/diff ? |
06:31 | <zcorpan> | annevk: ^ |
06:31 | <annevk> | oh man |
06:32 | <annevk> | can't we just patch CSS? |
06:32 | <annevk> | but uh, Ms2ger will have to do that |
06:33 | <zcorpan> | i guess default.css could be changed instead, i don't care either way |
06:33 | <zcorpan> | except changing anolis is now sunk cost |
06:33 | <annevk> | now I wonder whether HTML says anything about ToCs |
06:34 | <annevk> | zcorpan: not sure that's how that argument works :-) |
06:35 | <zcorpan> | annevk: what, sunk cost? |
06:36 | <annevk> | yeah |
06:37 | <zcorpan> | "In economics and business decision-making, a sunk cost is a retrospective (past) cost that has already been incurred and cannot be recovered." seems about right to me |
06:39 | <annevk> | What I question is using it as an argument for not doing something else instead |
06:40 | <annevk> | As that seems kinda counter to the whole point of the sunk cost fallacy |
06:41 | <zcorpan> | ah |
06:43 | <annevk> | MikeSmith: bug the UI team until they get fed up seems also reasonably effective |
06:45 | <MikeSmith> | annevk: you mean that longd*sc bug? |
06:46 | <annevk> | MikeSmith: uhuh |
06:47 | <MikeSmith> | DDOBR |
06:48 | <MikeSmith> | distributed denial of bug resolution |
06:48 | <annevk> | ah, http://www.urbandictionary.com/define.php?term=DDOBR didn't help |
06:49 | <annevk> | it's kinda like climate change denial really |
06:52 | <MikeSmith> | smells like victory |
06:54 | <MikeSmith> | all that's missing is the Wagner playing from the loudspeakers on the Hueys |
07:05 | <annevk> | Domenic_: I finally rewrote the introduction of https://developer.mozilla.org/en-US/docs/DOM_Levels |
07:05 | <annevk> | Domenic_: since nobody else picked that up |
07:07 | <MikeSmith> | Hixie: about http://html5.org/tools/web-apps-tracker?from=7990&to=7991 if you're going to say, "optionally with a caption, that is self-contained (like a complete sentence)" I think you should omit the comma and just say, "optionally with a caption that is self-contained (like a complete sentence)" |
07:08 | <MikeSmith> | oh wait I guess that's not what you actually mean |
07:57 | <annevk> | marcosc: yo yo |
07:57 | <annevk> | marcosc: thanks for the feedback |
07:57 | <marcosc> | np, thanks for the awesome spec :) |
07:58 | <annevk> | marcosc: I had this idea about maybe trying out that pair-spec-editing |
07:58 | <annevk> | marcosc: maybe in Toronto? |
07:58 | <marcosc> | sure, sounds good |
07:59 | <marcosc> | annevk: let me know which spec in particular so I can do some background research |
08:00 | <annevk> | marcosc: yeah, I need to make this more concrete for it to actually work I suppose :-) |
08:01 | <annevk> | marcosc: I mostly want a better balance between developer and implementer concerns, currently I'm mostly err'ing on the side of the latter so it'd be great to find ways to achieve both |
09:09 | <SimonSapin> | Are the data-* attributes defined on SVG elements? |
09:16 | <zcorpan> | SimonSapin: don't think so |
09:17 | <jgraham> | I seem to remember that someone wanted them to be, at least |
09:17 | <jgraham> | TabAtkins, perhaps |
09:17 | <zcorpan> | i seem to remember svg people wanting html features for years but nothing happens from what i can tell |
09:55 | <annevk> | Maybe we should uplift data-* to DOM? |
09:56 | <annevk> | Has anyone implemented Element.id / Element.className yet? |
10:01 | <annevk> | Hixie: re promises, now you know what the event loop thing feels like :-) |
10:02 | <jgraham> | heh |
10:51 | <zcorpan> | This section is non-normative. |
10:51 | <zcorpan> | XSLT processing should ... |
10:52 | <zcorpan> | http://www.w3.org/html/wg/drafts/html/master/templating.html#template-XSLT-XPath |
13:02 | <zcorpan> | hmm. i kind of missed that anne got married |
13:25 | <Ms2ger> | annevk: I should find my patch to implement Element.className/id... |
13:25 | <Ms2ger> | Anne got married? |
13:25 | <zcorpan> | https://twitter.com/annevk/status/347696720173486080 |
13:26 | <zcorpan> | Ms2ger: can you merge https://bitbucket.org/ms2ger/anolis/pull-request/10/use-for-the-toc-in-w3c_compat-since-csswgs/diff pls? |
13:27 | <Ms2ger> | Where does the w3c_compat_class_toc thing come from? |
13:28 | <zcorpan> | it was there before. it's just a flag you can provide when invoking anolis |
13:28 | <Ms2ger> | Oh, hmm |
13:29 | <Ms2ger> | Fair enough, I guess |
13:29 | <Ms2ger> | But could you write a test? :) |
13:30 | <zcorpan> | yeah i guess |
13:33 | GPHemsley | did not interpret that tweet as involving Anne |
13:33 | GPHemsley | assumed a public bathroom |
13:35 | gsnedders | did what GPHemsley did |
13:37 | <GPHemsley> | annevk (or someone): Remind me: XSL and XSLT are different things? |
13:38 | <gsnedders> | XSL == XSL-FO, typically |
13:39 | <Ms2ger> | It's the thing weird Glenn uses to argue for silly stuff in CSS |
13:40 | <GPHemsley> | which one is used for styling? |
13:40 | <zcorpan> | Ms2ger: should the .options file use dashes or underscore? |
13:41 | <GPHemsley> | zcorpan: underscore |
13:41 | <gsnedders> | GPHemsley: XSL-FO |
13:41 | <GPHemsley> | gsnedders: So what is XSLT for then? |
13:41 | <gsnedders> | GPHemsley: XSLT has the vital T in it — it's merely a transformation language/ |
13:41 | <gsnedders> | It transforms an XML tree into something else (typically another XML tree, but can be any byte stream). |
13:41 | <Ms2ger> | zcorpan, underscores, like in **kwargs |
13:42 | <GPHemsley> | gsnedders: Would you call it a script? |
13:42 | <GPHemsley> | [ing language] |
13:42 | <gsnedders> | GPHemsley: Well, it's Turing complete… |
13:42 | <GPHemsley> | hmm |
13:43 | <gsnedders> | GPHemsley: I mean, it's basically just a DSL to transform XML trees to other XML trees. |
13:43 | <gsnedders> | It's also amusing because nobody uses it client-side, thus Opera/Presto being broken with IRIs in any transformed document for over a decade before anyone noticed. |
13:44 | <GPHemsley> | gsnedders: And how do you use it on a page? |
13:44 | <gsnedders> | A PI on an XML page. |
13:44 | <GPHemsley> | oh, was that <?xml-transform ?> or something? |
13:45 | <zcorpan> | Ms2ger: toc-basic fails because the ref has "id=baz" rather than "id=baz?" |
13:45 | <zcorpan> | GPHemsley: <?xml-stylesheet?> |
13:45 | <GPHemsley> | zcorpan: We know :) |
13:45 | <GPHemsley> | zcorpan: You're lucky nothing else fails |
13:45 | <GPHemsley> | zcorpan: (Don't upgrade html5lib) |
13:46 | <gsnedders> | GPHemsley: Either what zcorpan said, or you use some API. |
13:46 | <GPHemsley> | zcorpan, gsnedders: So, there's no difference between how XSL and XSLT are called in a page? |
13:47 | <Ms2ger> | zcorpan, yeah, I need to figure that out |
13:47 | <gsnedders> | GPHemsley: I believe not. XSLT is a part of XSL, as is what is de-facto called XSL-FO. |
13:47 | <GPHemsley> | gsnedders: Well, that |
13:47 | <gsnedders> | (XSL-FO officially is just "the formatting section of XSL") |
13:47 | <GPHemsley> | gsnedders: Well, that's unfortunate. |
13:47 | <GPHemsley> | gsnedders: Is CSS Turing-complete, too? |
13:48 | <gsnedders> | GPHemsley: I believe not. HTML + CSS + a user to advance the tape is Turing complete. |
13:48 | <GPHemsley> | hmm |
13:48 | <gsnedders> | I don't believe there's any way to advance the tape without user interaction. |
13:48 | <GPHemsley> | gsnedders: So XSLT is a script called as a style? That's complex |
13:49 | <GPHemsley> | Or, rather, that complicates things |
13:49 | <maximmat> | Hey guys, I got a question I was wondering if you could help me with (not sure if this is the right place). I'm using Python 2.7, and when I import the html5lib module, it gives me a " File "C:\Python27\lib\site-packages\html5lib\html5parser.py", line 2, in <module> from six import with_metaclass ImportError: No module named six" error. Any idea on what to do? |
13:49 | <gsnedders> | maximmat: Install six. |
13:50 | <maximmat> | and how do I do that? |
13:50 | <GPHemsley> | I guess I'm not the only one for which the html5lib dependencies didn't install |
13:50 | <gsnedders> | maximmat: How did you install html5lib? |
13:50 | <GPHemsley> | s/which/whom/ |
13:51 | <maximmat> | downloaded from the github, installed from there |
13:52 | <GPHemsley> | maximmat: sudo python setup.py install? |
13:52 | <maximmat> | on windows, but yes |
13:53 | <GPHemsley> | gsnedders: For some reason, the setup.py script doesn't install dependencies |
13:53 | <gsnedders> | GPHemsley: On Python 2? |
13:54 | <GPHemsley> | gsnedders: Yeah |
13:54 | <gsnedders> | Or rather, I believe distutils never installs dependencies. |
13:54 | <maximmat> | So I have to use pip install or easy_install or something like that? |
13:55 | <gsnedders> | maximmat: You don't have to, but it'll be a lot less painful in general. Otherwise, go download six off PyPI and install it manually. |
13:55 | <maximmat> | Alright, thank you so much |
13:55 | <zcorpan> | hmm. i added a test, but if i modify the expected file so it should fail, it doesn't fail, so i guess it doesn't run? |
13:56 | <GPHemsley> | zcorpan: You have 3 files? |
13:56 | <zcorpan> | yes |
13:56 | <GPHemsley> | zcorpan: I usually start by leaving the target file empty |
13:57 | <GPHemsley> | zcorpan: Then you can see, for example, where in the test order it falls |
13:58 | <zcorpan> | does the test runner abort on first fail? |
13:58 | <GPHemsley> | I don't think so |
13:59 | <GPHemsley> | your source file has .src.html, right? |
14:00 | <zcorpan> | yeah |
14:01 | <GPHemsley> | and it's not running? |
14:01 | <zcorpan> | i fixed the toc-basic file so it now passes, and get a different error |
14:01 | <zcorpan> | ImportError: No module named w3c_compat_class_toc |
14:01 | <zcorpan> | so my options file is wrong |
14:02 | <Ms2ger> | I probably should have documented the format... |
14:02 | <Ms2ger> | { "w3c_compat_class_toc": true }, I think? |
14:02 | <GPHemsley> | that's what I was gonna say :) |
14:03 | <zcorpan> | and now i'm getting a PASS |
14:04 | <zcorpan> | should i commit the fix for toc-basic too? |
14:04 | <Ms2ger> | The weird thing is that toc-basic doesn't fail for me :) |
14:04 | <GPHemsley> | Ms2ger: What version of html5lib are you using, anyway? |
14:05 | <zcorpan> | Ms2ger: does any other test fail? |
14:05 | <Ms2ger> | 1.0b1 it seems |
14:05 | <Ms2ger> | test_tests/dfn_data-anolis-spec_collision.src.html |
14:06 | <Ms2ger> | Because of the attribute order thing |
14:06 | <GPHemsley> | Ms2ger: Right... with such a new version a whole bunch of tests fail |
14:07 | <zcorpan> | Ms2ger: is that the only one failing? |
14:07 | <Ms2ger> | For me, yes |
14:07 | GPHemsley | has 6 failures |
14:08 | <GPHemsley> | but I also probably have a later version of html5lib |
14:08 | <Ms2ger> | I need to dive in a bit deeper... |
14:08 | <Ms2ger> | Probably next week |
14:19 | <zcorpan> | ok pushed the test |
14:19 | <zcorpan> | see you next week |
14:54 | <GPHemsley> | Anyone else getting a phantom Google Notifications bell icon? |
14:54 | <GPHemsley> | hmm... maybe my Google JavaScript has stopped working... |
14:55 | GPHemsley | shrugs |
15:23 | <Domenic_> | Has anyone ever tried standardizing `outline-radius`? TabAtkins, you seem to know things about CSS specs? Mostly just curious. |
15:27 | <dglazkov> | good morning, Whatwg! |
17:06 | <TabAtkins> | annevk: According to Arv, for static arrays we should just use sequence<Node>. I've suggested that in the appropriate thread (about the return value of document.elementsFromPoint()). |
17:07 | <TabAtkins> | zcorpan: Oh, I didn't actually look at our markup. I thought you were just missing a class or something. If it's a matter of ol versus ul, I can just go adjust the stylesheet. |
17:09 | <TabAtkins> | SimonSapin: The data-* attributes either have been added to SVG, or will be. It was definitely approved to be so, at least. |
17:11 | <TabAtkins> | Domenic_: Dunno. It's just in Moz, I think? |
17:44 | <Domenic_> | TabAtkins: yeah, it's a non-standard Moz thing. It's quite useful though, so was just wondering if anyone had tried making it official. |
19:20 | <aklein> | Hixie: g'afternoon. did you happen to see my question about PopStateEvent yesterday afternoon? |
20:32 | <aklein> | Hixie: filed as https://www.w3.org/Bugs/Public/show_bug.cgi?id=22420 |
20:55 | <Hixie> | aklein: i didn't, sorry, i went off irc for a bit. looking at bug now. |
21:04 | <Hixie> | aklein: commented |
21:09 | <aklein> | Hixie: thanks, responded. happy to discuss here too. |
21:22 | <Hixie> | aklein: if you want prompt responses, here is best for you :-) |
21:22 | <Hixie> | aklein: i don't understand the implementation concern. Just implement these objects as you would any other event objects. |
21:24 | <aklein> | Hixie: since bringing up this concern started from implementation concerns, I suppose I ought to just explain the main one. it has to do with extensions |
21:24 | <aklein> | they operate in "isolated worlds", which have access to the same DOM but with different JS wrappers for each host object |
21:24 | <aklein> | that is, different from the "main world" |
21:26 | <Hixie> | heycam|away: ping |
21:26 | <Hixie> | aklein: ok |
21:26 | <aklein> | the trouble comes in if I do new PopStateEvent('popstate', {state: document}) in one world and then handle the event in another world |
21:27 | Hixie | mumbles something about extensions being the problem here |
21:27 | <aklein> | I don't entirely disagree |
21:27 | <Hixie> | doesn't this problem occur whenever you have an "any" IDL type that transfers stuff from one "world" to another? |
21:27 | <Hixie> | or any callbacks, or any dictionaries, or... |
21:28 | <aklein> | yes, it would, I think the ping to heycam|away is perhaps appropriate (for him to tell me I'm wrong :) |
21:28 | <Hixie> | oh i need heycam for entirely different reasons, but yeah :-) |
21:28 | <Hixie> | i don't think you're wrong |
21:28 | <Hixie> | i think this is a perfect example of why bz wants us to change the web security model |
21:29 | <Hixie> | to do checks on every property access |
21:29 | <Hixie> | rather than just at specific borders |
21:29 | <aklein> | note, though, that it's not an error to handle an event fired from one world in another |
21:30 | <Hixie> | anyway i think your answer is just, you need to protect any case where you have data that can cross boundaries |
21:30 | <aklein> | for "organic" PopStateEvents, we just deserialize the object twice, once for each world |
21:30 | <Hixie> | by creating new wrappers or whatnot |
21:30 | <Hixie> | what do you do if an extension calls showModalDialog() and passes some structured dialogArguments? |
21:30 | <aklein> | Hixie: my likely fix for this issue if the spec isn't changed is just to do the cloning for worlds other than the one that created the event |
21:32 | <Hixie> | is there no way for an extension to call into the page's own JS? |
21:33 | <aklein> | injecting a script tag is usually the way that's done |
21:33 | <aklein> | that obviously doesn't meet all use cases, but it meets a good number |
21:33 | aklein | looks at what we do for showModalDialog |
21:33 | <Hixie> | that's just adding new js, not calling into it, right? |
21:34 | <Hixie> | i mean, you can't inject a <script> that defines a function, and then call that function |
21:35 | <aklein> | right, there's no sanctioned way for an extension to interact directly with the page's own script (though there are a variety of holes at the moment, which I'm trying to close) |
21:38 | <Hixie> | yeah then i would just say yeah, close each hole :-) |
21:38 | <Hixie> | basically anywhere there's an "any" argument or attribute |
21:39 | <Hixie> | assuming all host objects have their own wrappers already, that should be it, though i may be missing some things off-hand |
21:41 | <aklein> | yeah, I'm fine with doing that myself, I just wondered if it might be worth speccing these events differently; events are a big opportunity for leakiness because of how dispatching works. but it sounds like this doesn't sound like a concern of the HTML spec to you (and the consistency argument isn't strong enough)? |
21:44 | <Hixie> | the consistency argument is in the other direction, imho |
21:45 | <aklein> | to your showModalDialog question, btw, the dialogFeatures are only set on the global of whatever world called showModalDialog |
21:45 | <Hixie> | same with return value? |
21:45 | <Hixie> | (re consistency, i mean, event interfaces don't try to enforce event semantics from one event fired by the UA on all events that use that interface) |
21:45 | <aklein> | yup, that's read directly off the global |
21:47 | <aklein> | I see. Well, at least that means we just need a rule for what "any" means across worlds and stick with that. CustomEvent is the other place where this came up. |
21:47 | <Hixie> | CustomEvent can probably just be dropped, no? |
21:47 | <Hixie> | i think that's dead |
21:48 | <Hixie> | oh i guess not |
21:48 | <Hixie> | nevermind |
21:49 | <aklein> | actually the biggest leak was EventHandler attributes, which I just fixed in a slightly different way last week |
21:50 | <Hixie> | EventHandler attributes? |
21:50 | <Hixie> | oh because you shared them across worlds? |
21:50 | <Hixie> | instead of having one set per world? |
21:50 | <aklein> | yeah |
21:51 | <Hixie> | extensions suck. |
21:51 | <aklein> | :) |
21:51 | <Hixie> | :-) |
21:51 | <aklein> | interestingly, it looks like HTML now requires that EventHandlers be callable? |
21:51 | <aklein> | does that mean it no longer supports { handleEvent: function() { } } as an EventHandler? |
21:51 | <Hixie> | i forget what the conclusion was on that |
21:52 | <Hixie> | but it was a heated debate |
21:52 | <aklein> | I was having some fun setting a <button> as its own onclick handler and then giving it a handleEvent method |
21:52 | <aklein> | the current spec uses [TreatNonCallableAsNull] |
21:53 | <Hixie> | webidl says "the only known valid use of [TreatNonCallableAsNull] is for the callback functions used as the type of event handler IDL attributes" in HTML, so i guess i'm doing the right thing here. :-P |
21:54 | <aklein> | ha |
21:54 | <aklein> | nice, Firefox is following the spec here |
21:55 | <aklein> | I wonder if Blink could get away with doing that too |
21:57 | <Hixie> | if you can't, the spec is probably wrong |
21:58 | <Hixie> | i wonder what the right technical term is for a property of a JS object that a script adds, rather than one that is under the management of the browser |
22:00 | <dekiss> | check ecmascript language specification :) |
22:17 | <dekiss> | if I add enter key html unicode code unit to the text node as text and if that text node is in element which has white-space: pre-wrap, will that make new line? |
22:20 | <Hixie> | wtf. why does http://www.hixie.ch/tests/adhoc/dom/level0/location/cross-origin/001.html sometimes fail in chrome. |
22:20 | <rafaelw> | Hixie: IE seems to through away content attribute values it doesn't like. Gecko/WK/Blink all keep (but ignore) them. Trying to figure out what the spec says about this. |
22:20 | <Hixie> | rafaelw: content attributes are never sanitised. |
22:20 | <rafaelw> | http://jsbin.com/aputuk/7/edit |
22:21 | <Hixie> | rafaelw: they can always be set, they can always be removed, they can always be read. |
22:21 | <Hixie> | rafaelw: (specced in DOM Core) |
22:21 | <rafaelw> | reference? |
22:22 | <Hixie> | hard to say what to reference, since it's the absence of any requirements to the contrary that define this :-) |
22:22 | <rafaelw> | I see. |
22:23 | <Hixie> | but e.g. see the spec for setAttribute() |
22:25 | <rafaelw> | Ok. Thanks. |
22:45 | <dekiss> | why this doesn't output value if the charset attribute alert(document.childNodes[1].childNodes[0].childNodes[1].charset); |
23:33 | <heycam> | Hixie, pong |