| 02:08 | <Hixie> | where should i mail comments about the workers spec |
| 02:08 | <Hixie> | public-html, whatwg, or public-webapps? |
| 02:16 | <MikeSmith> | Hixie: public-html + whatwg would seem appropriate to me at least |
| 02:17 | <MikeSmith> | though I'd think that at this point more feedback would likely come back from the whatwg list than from public-html |
| 02:17 | <Hixie> | k |
| 02:27 | <Hixie> | ok, mailed whatwg and public-html |
| 03:07 | <Hixie> | ok bbl. food. |
| 05:41 | annevk | wakes up |
| 05:42 | <annevk> | lol, Mozilla is changing their mind on POST again?! |
| 05:42 | annevk | sighs |
| 05:51 | <roc> | hmm? |
| 05:52 | <roc> | if you're talking about Jonas' last message to whatwg, he's not talking about AC, right? |
| 05:53 | <annevk> | this message: http://lists.w3.org/Archives/Public/public-webapps/2008JulSep/0069.html |
| 05:53 | <annevk> | but I'm a bit grumpy since I woke up early |
| 05:56 | <roc> | I'm grumpy because there are things I want Jonas to be doing other than wrangling cross-domain specs |
| 05:58 | <annevk> | as far as the actual Flash documentation is concerned, it seems that pretty much anything goes |
| 05:58 | <annevk> | including arbitrary headers apart from a certain subset |
| 05:59 | <annevk> | (similar headers to those that are blocked in XMLHttpRequest) |
| 06:04 | <MikeSmith> | I think Jonas is already convinced. seems like he just needs something data to take back to others |
| 06:04 | <MikeSmith> | preferably something succinct |
| 07:56 | <annevk> | http://alex.dojotoolkit.org/?p=687 is pretty good |
| 08:08 | <takkaria> | Alan Gresley posted there, heh |
| 08:08 | <takkaria> | s/posted/commented/ perhaps |
| 08:09 | <annevk> | I don't really follow that guy |
| 08:42 | <takkaria> | mozilla landed initial <video> support yesterday, it seems |
| 08:42 | <takkaria> | though not turned on by default |
| 08:54 | <Lachy> | http://standardssuck.org/the-test-suite-is-not-enough |
| 09:03 | <Lachy> | Hixie, this NodeList.toArray() seems like something for DOM5, not HTML5 http://www.w3.org/Bugs/Public/show_bug.cgi?id=5851 |
| 09:04 | <Lachy> | but it's definitely needed. I think i suggested it somewhere once too, or if not, I know I at least thought about it. |
| 09:04 | <Hixie> | yeah I just wanted to turn one of my e-mails into something more specific |
| 09:04 | <Hixie> | (originally i just had an e-mail saying "look at this blog entry") |
| 09:04 | <Lachy> | ok |
| 09:04 | <Hixie> | (but that was the only thing actionable from that list) |
| 09:05 | <Hixie> | i wish webidl (heycam) and dom core (zcorpan) and other specs (lachy, annevk) used bugzilla |
| 09:06 | <Hixie> | then i could bounce these bugs to other people and know they were not lost |
| 09:06 | <Lachy> | sure, that could work. |
| 09:07 | <Lachy> | I'll speak to chaals about setting up a webapps product and then you can move all the stuff to that and assign to the right person. |
| 09:07 | <Hixie> | that would be sweet |
| 09:08 | <Lachy> | I just don't know when I'll be able to speak to him, I don't know where he is and he still hasn't responded to a mail I sent him last week |
| 09:10 | <Hixie> | just post it to the public-webapps list and have mike or doug do it :-) |
| 09:10 | <Hixie> | i'm sure chaals wouldn't mind, it's not like it affects the group really |
| 09:11 | <Hixie> | it's up to the editors how they track issues, after all |
| 09:11 | <Lachy> | ok, maybe later. |
| 09:11 | <Lachy> | I gotta get ready and go to work now |
| 09:13 | <takkaria> | looks public-html-bugzilla hasn't recieved new posts for a while |
| 09:13 | <takkaria> | oh, no, that's just me looking at the June archive page |
| 09:13 | <Lachy> | takkaria, sure it has. |
| 09:13 | <Lachy> | oh |
| 09:13 | <gDashiva> | I do that every month change |
| 09:14 | <gDashiva> | "man, traffic sure died down" |
| 09:14 | <Hixie> | use /latest as your bookmark |
| 09:14 | <Lachy> | gDashiva, just bookmark /public-html-bugzilla/latest and you don't have the problem |
| 09:14 | <gDashiva> | I don't use bookmarks, I keep open tabs |
| 09:14 | <Hixie> | wow, my browsers aren't stable enough for that |
| 09:14 | <Lachy> | or just keep that in your autocomplete history then |
| 09:14 | Hixie | uses http://☺.damowmow.com/ |
| 09:15 | <Lachy> | gDashiva, how many tabs do you keep open? |
| 09:15 | <gDashiva> | Want me to count? |
| 09:15 | <Lachy> | just a rough guess |
| 09:15 | <Hixie> | i wonder how long i should wait for microsoft to get back to me on their needs for workers |
| 09:16 | <gDashiva> | 12+41+10 over three opera windows, and five in firefox |
| 09:16 | <Lachy> | Hixie, knowing MS, you could be waiting months. |
| 09:16 | <Lachy> | woah. I hate having more than 6, and when I get to about 10 I start closing old ones |
| 09:17 | <Lachy> | how do you find anything efficiently with that many tabs? |
| 09:17 | <annevk> | then I'd have to create a W3C bugzilla account |
| 09:17 | <gDashiva> | Lachy: window panel |
| 09:17 | <Lachy> | If I want to look at a page again, I just start typing it's url or, if I can't remember that, something from the title and it shows up quickly enough |
| 10:19 | <takkaria> | has anyone done a useful explanitory diagram of the adoption agency algorithm yet? |
| 10:19 | <takkaria> | because if not, I'm in the process of making one and I could be persuaded to turn it into an svg or something |
| 10:27 | <Lachy> | Hixie, MikeSmith set up the WebApps WG product in bugzilla, so you can start assiging us bugs |
| 10:42 | <jgraham> | takkaria: Not as far as I know and please :) |
| 10:44 | <jgraham> | Hixie: I think refering to workers as "threads" is going to cause a lot of messages asking where the lock features are. Better to call them worker "microprocesses" or somthing that makes their shared-nothing nature more explicit (plus this will also make you look more trendy and down with the kids ;) ) |
| 10:45 | <takkaria> | Shared-Nothing Web Worker Threads abbreviated nicely |
| 10:46 | <takkaria> | abbreviates, even |
| 10:48 | <Lachy> | SNWWT? That's a terrible abbreviation. |
| 10:48 | <jgraham> | I was assuming irony |
| 10:49 | <Lachy> | although, given the W3C's track record for coming up with abbreviations, it's not too bad |
| 10:50 | <Lachy> | I think we need a name with a recursive algorithm |
| 10:50 | <Lachy> | *acronym |
| 10:51 | <Lachy> | but something more creative than PHP's lame attempt with "PHP Hypertext Processor" |
| 10:57 | <takkaria> | you could redefine WHATWG to be "WHATTF's Hypertext Application Technology Working Group" and WHATTF to be "WHATWG's Hypertext Application Technology Task Force" |
| 11:03 | <gDashiva> | Lachy: You preferred Personal Homepage? |
| 11:08 | <Lachy> | gDashiva, what? |
| 11:08 | <Lachy> | takkaria, nice :-) |
| 11:10 | <takkaria> | rename WHATWG to Web HATWG, too, since we like having "Web" in things, and I like hats |
| 11:10 | <gDashiva> | Lachy: That was the original meaning of php, until they retconned it |
| 11:12 | <Lachy> | takkaria, the Web Hat WG sounds interesting. |
| 11:12 | <Lachy> | for all those geeky people that wear hats with web stuff on them |
| 11:24 | <zcorpan_> | Philip`: was 2d.imageData.get.smallest.html intentionally removed or replaced by something else? |
| 11:32 | <MikeSmith> | Lachy: so what do you need bugzilla for that you can't do with the existing group Tracker? |
| 11:33 | <Lachy> | MikeSmith, bugzilla is a better than the group tracker |
| 11:33 | <MikeSmith> | in what ways? |
| 11:33 | <Lachy> | also, Hixie suggested it so that he could easily reassign some of the issues from old WHATWG discussions to us for dealing with in WebApps |
| 11:34 | <MikeSmith> | ah |
| 11:34 | <Lachy> | like, for instance, bug 5851 |
| 11:34 | <Lachy> | Hixie will probably reassign that to zcorpan_ for adding to DOM5 |
| 11:35 | <zcorpan_> | cool i need a central place for my dom5 issues |
| 11:35 | <zcorpan_> | right now i have notes all over the place |
| 11:35 | <MikeSmith> | well, the main unique thing about bugzilla is that public people (not members of the WG) can use it to raise and track issues |
| 11:36 | <MikeSmith> | or public people can opt-in to particular issues by adding themselves to the Cc list |
| 11:36 | <MikeSmith> | cherry-pick which issues they want to follow |
| 11:37 | <MikeSmith> | Adam Barth has done that with a couple HTML WG bugzilla issues so far |
| 11:37 | <MikeSmith> | I suspect we will see more of that |
| 11:38 | <MikeSmith> | Lachy: bug 5841 from what system? |
| 11:40 | <Lachy> | http://www.w3.org/Bugs/Public/show_bug.cgi?id=5851 |
| 12:02 | <zcorpan_> | Philip`: in 2d.path.clip.unaffected.html is the first lineTo supposed to be moveTo? |
| 13:44 | <Lachy> | in WF2, I wonder if the validity requirements for type=url should be changed to refer to URL definition in HTML5 after it's incorporated into the main spec, instead of referring directly to the RFC |
| 13:50 | <takkaria> | seems sensible |
| 13:50 | <takkaria> | though you might want something looser than that, e.g. allowing spaces |
| 15:06 | <Lachy> | grr. I may have to give in and define a feature string for selectors api, even though I really don't want to. |
| 15:07 | <Lachy> | annevk, zcorpan_, Hixie: any opinions on the matter? See http://lists.w3.org/Archives/Public/public-webapps/2008JulSep/0085.html |
| 15:07 | <Lachy> | othermaciej, ^ |
| 15:08 | <Lachy> | ah, weinig's here too. |
| 15:19 | <gDashiva> | Lachy: Use web hats |
| 15:20 | <Lachy> | gDashiva, how does that help? |
| 15:21 | <gDashiva> | In the string :) |
| 15:21 | <Lachy> | btw, your new nickname is annoying cause I keep typing "gs<tab>" instead of "gd<tab>". I preferred it when I could type "da<tab>" |
| 15:22 | <Lachy> | oh. hasFeature("web hats", "2.0")? |
| 15:25 | <Lachy> | maybe I should use hasFeature("select-a-pie", "3.141592653589793238462643383279502"); |
| 15:25 | <gDashiva> | Yes, like that |
| 15:25 | <gDashiva> | Or maybe hasFeature("web hats", "selector hat") |
| 15:26 | <Lachy> | the second param needs to be a version number |
| 15:26 | <takkaria> | selector hat 3. :) |
| 15:26 | <gDashiva> | Does it allow complex numbers? |
| 15:27 | <Lachy> | I'm not sure |
| 15:27 | <gDashiva> | I'm not of much help then |
| 15:29 | <gDashiva> | Did anyone ever make a response to the "What about an implementation that supports 95%" scenario? |
| 15:37 | <Lachy> | don't remember |
| 15:38 | <Lachy> | returning true for hasFeature doesn't really mean that it fully supports the API in practice. It only means that the implementation is claiming support, despite having known bugs |
| 15:39 | <Lachy> | although exactly where an implementation draws the line between total experimental support (returning false) and pretty good support (returning true) is up the implementation and varies significantly in practice |
| 17:10 | <Hixie> | othermaciej: if you define a set that has to be supported, define it as the complete set |
| 17:43 | <gsnedders> | Hixie: Can you fix all these DuplicateTermExceptions I'm getting? :P |
| 17:45 | <gsnedders> | Hixie: http://hg.gsnedders.com/spec-gen/ if you want to just download it and run it to find the terms that cause it |
| 18:09 | <Lachy> | gsnedders, how do I use your spec generator? |
| 18:10 | <Lachy> | what does setup.py do? Does that install the script or something? |
| 18:10 | <gsnedders> | Lachy: Install it in the normal python way (python setup.py install), then see the spec-gen program it installs |
| 18:10 | <Lachy> | ok |
| 18:10 | <Lachy> | then how do I use it after it's installed? |
| 18:10 | <gsnedders> | Lachy: spec-gen --help :) |
| 18:12 | <Lachy> | gsnedders, I get an error |
| 18:12 | <gsnedders> | Lachy: what? |
| 18:12 | <Lachy> | $ spec-gen --help |
| 18:12 | <Lachy> | Traceback (most recent call last): |
| 18:12 | <Lachy> | File "/usr/local/bin/spec-gen", line 11, in <module> |
| 18:12 | <Lachy> | from specGen import generator |
| 18:12 | <Lachy> | File "/Library/Python/2.5/site-packages/specGen/generator.py", line 26, in <module> |
| 18:12 | <Lachy> | from lxml import etree |
| 18:12 | <Lachy> | ImportError: No module named lxml |
| 18:12 | <gsnedders> | Lachy: Ah, you need to install lxml |
| 18:12 | <Lachy> | how? |
| 18:13 | <gsnedders> | http://codespeak.net/lxml/installation.html |
| 18:13 | <jgraham> | easy_install lxml |
| 18:13 | <jgraham> | But you need to instally easy_install first :) |
| 18:13 | <gsnedders> | (yeah, it's rather obvious that the spec-gen is pre-alpha software) |
| 18:13 | <jgraham> | (Unless it is already installed) |
| 18:13 | <jgraham> | Lachy: I suggest you google ez_setup.py |
| 18:14 | <jgraham> | Then run that (maybe with sudo) to install easy_install |
| 18:14 | <jgraham> | Then do "easy_install lxml" |
| 18:14 | <takkaria> | jgraham: cheers for the online parse tree viewer, btw, it's been very useful in constructing testcases |
| 18:14 | <jgraham> | takkaria: np |
| 18:15 | <Lachy> | I ran easy_install and tried, but failed |
| 18:15 | <Lachy> | src/lxml/lxml.etree.c: At top level: |
| 18:15 | <Lachy> | src/lxml/lxml.etree.c:110954: error: invalid application of ‘sizeof’ to incomplete type ‘struct __pyx_obj_4lxml_5etree__ParserSchemaValidationContext’ |
| 18:15 | <Lachy> | lipo: can't open input file: /var/folders/hO/hOi6uidEGwKsuLgkSfspM++++TI/-Tmp-//ccXmNL9v.out (No such file or directory) |
| 18:15 | <Lachy> | error: Setup script exited with error: command 'gcc' failed with exit status 1 |
| 18:16 | <jcranmer> | someones relying on a declaration where a definition is needed |
| 18:16 | <jgraham> | hmm... it looks like it can't find all your headers. I think I have heard of this on OS X before... |
| 18:16 | <jcranmer> | or more likely, someone neglected the declaration altogether and it was inferred by another declartion |
| 18:17 | <jgraham> | http://blog.offbytwo.com/2008/05/07/installing-lxml-on-os-x-leopard/ - I followed those instructions last time I think |
| 18:17 | <gsnedders> | easy_install worked fine for me last night |
| 18:18 | <Lachy> | sudo port install py25-lxml should work for me |
| 18:18 | <Lachy> | that's the mac port, apparently |
| 18:18 | <jgraham> | Lachy: I guess that would work too |
| 18:18 | <jgraham> | gsnedders: Did you ever find a good problem for learning Haskell? |
| 18:19 | <Lachy> | I wonder why the libraries in OS X are so outdated |
| 18:19 | <Lachy> | that sucks |
| 18:19 | <gsnedders> | jgraham: no |
| 18:19 | <gsnedders> | Lachy: Because, IIRC, they're frozen when it reaches RC (which is around a year ago now for LeoparD) |
| 18:20 | <gsnedders> | *Leopard |
| 18:20 | <gsnedders> | Lachy: were you running easy_install with superuser perms? |
| 18:21 | <gsnedders> | Lachy: You need lxml and html5lib installed |
| 18:21 | <jgraham> | gsnedders: You could try porting a sudoku solver to haskell. http://norvig.com/sudoku.html seems quite interesting in terms of how it works even if at the end you only have a sudoku solver to show for it |
| 18:23 | <Lachy> | gsnedders, no |
| 18:23 | <Lachy> | I may have to update my html5lib installation |
| 18:24 | <gsnedders> | I don't think it _needs_ a recent version. It's just 0.11 is far quicker than any previous version |
| 18:24 | <Lachy> | I may not have it installed. I can't remember if I did it before or after the last time I wiped my machine |
| 18:24 | <gsnedders> | 1.494s to run the spec-gen on an XML copy of HTML 5, and serialising back to XML |
| 18:28 | <Lachy> | ok, that mac port finished installing. Now I'm running sudo easy_install lxml |
| 18:28 | <Lachy> | and I also installed html5lib quite easily |
| 18:29 | <Lachy> | now spec-gen --help works |
| 18:29 | <Hixie> | gsnedders: what are the duplicate terms? (got any examples?) |
| 18:29 | <gsnedders> | Hixie: Well, it's a fatal error and stops at the first: attr-meta-http-equiv |
| 18:30 | <gsnedders> | Lachy: try running the test cases (python runtests.py) |
| 18:30 | Hixie | looks at the spec |
| 18:30 | <Lachy> | This is useful help for this option: --sanitize sanitize |
| 18:30 | <gsnedders> | Lachy: That's copied verbatim from html5lib's parse.py :P |
| 18:31 | <Lachy> | oh, well I should complain to jgraham or annevk about that |
| 18:31 | <gsnedders> | rubys I expect wrote that, but I'm not sure |
| 18:32 | <Hixie> | gsnedders: fixed it |
| 18:34 | <gsnedders> | Now, let me go help my sister with supper |
| 18:41 | <Lachy> | can html5lib be used from the command line directly like spec-gen can, or only within other python scripts? |
| 18:42 | <Lachy> | e.g. to quickly parse a document and see if it reports any parsing errors? |
| 18:44 | <Lachy> | gsnedders, could the command be renamed to specgen? The hyphen makes typing it slower |
| 18:45 | <Lachy> | gsnedders, I need it to support the automatic bibliographic references that the CSSWG postprocessor does |
| 18:47 | <Lachy> | if you can access it, the post processor uses this data file http://www.w3.org/Style/Group/css3-src/biblio.ref |
| 18:47 | <Lachy> | it might be member only, though |
| 18:49 | <Lachy> | gsnedders, <!--begin-status-->...<!--end-status--> needs to be supported to. It's supposed to replace that with boilerplate status text |
| 18:50 | <Lachy> | oh, and the [[REFERENCE]] and [[!REFERENCE]] syntax too |
| 19:01 | <gsnedders> | Lachy: I don't really want to rename, but I guess I could |
| 19:01 | <gsnedders> | Lachy: I don't want to support those bibliography references |
| 19:01 | <gsnedders> | Lachy: No, I can't access that |
| 19:01 | <jgraham> | Lachy: parse.py allows html5lib to be run from the command line |
| 19:02 | <gsnedders> | Lachy: There are no substitutions done yet :P |
| 19:03 | <gsnedders> | (I'd quick like to use BibTeX for bibliographies) |
| 19:04 | <Lachy> | jgraham, that would mean I need to keep a copy of parse.py in same directory and run ./parse.py. Is there a way I can set it up so I can just run it from within any directory at any time? |
| 19:05 | <Lachy> | gsnedders, I don't care how you do the references. I just want a quick and easy way for me to insert a reference using something like [[REFERENCE]] in the source, and have everything else automatically generated. |
| 19:05 | <gsnedders> | Lachy: I guess the identifier needs to be in the database? |
| 19:05 | <Lachy> | the css post process adds all the necessary <a href='...'><cite>...</cite></a> stuff around that and generates the appropriate rerference at the end of the page forme |
| 19:06 | <Lachy> | gsnedders, yeah |
| 19:09 | <gsnedders> | I guess seeming you can't actually change the file it uses in the real one what format my one uses is irrelevant |
| 19:13 | <jgraham> | Lachy: Just use a symlink like ln -s ~/bin/htmlparse /path/to/parse.py |
| 19:14 | <Lachy> | jgraham, ok. I'll have to find a suitable place to store parse.py then. |
| 19:15 | <jgraham> | Er, I think I got that the wrong way round; /path/to/parse.py should be before the link name |
| 19:17 | <Lachy> | ok. I'll look up the man page before I do it to be sure |
| 19:17 | <Lachy> | but I always get it backwards when I run it anyway :-) |
| 19:17 | <jgraham> | And it seems like OSX doesn't have ~/bin on the default path |
| 19:18 | <Lachy> | no, it has /usr/bin/ I think |
| 19:26 | <gsnedders> | Hixie: specGen.processes.xref.DuplicateTermException: canvaspattern |
| 19:30 | <tusho> | any docs for html5lib ruby? |
| 19:47 | <tusho> | huh |
| 19:47 | <tusho> | RuntimeError: Unknown TreeWalker dom |
| 19:48 | <jgraham> | tusho: I don't think there are any specifically |
| 19:48 | <tusho> | still what about the above |
| 19:48 | jgraham | doesn't know ruby |
| 19:48 | <tusho> | don't see why that would happen |
| 19:48 | <jgraham> | When did that happen? |
| 19:48 | <Hixie> | gsnedders: fixed |
| 19:48 | <jgraham> | i.e. what did you call? |
| 19:48 | <tusho> | HTML5::TreeWalkers.get_tree_walker('dom') |
| 19:50 | <jgraham> | tusho: DOM doesn't seem to be an option. You can have REXML, Hpricot or SimpleTree |
| 19:50 | <tusho> | Oh, I see. |
| 19:51 | <tusho> | I'll pick Hpricot, I like hpricot |
| 20:00 | <tusho> | Hmph. |
| 20:00 | <tusho> | The hpricot isn't very useful. No searching stuff. |
| 20:00 | <tusho> | :| |
| 20:04 | <jgraham> | tusho: What are you trying to do? |
| 20:05 | <tusho> | Move all hN tags down M levels. |
| 20:05 | <tusho> | So if '2', h1 -> h3, etc, and h4-h6 -> h6 |
| 20:07 | <jgraham> | It sounds like you don't need treewalker except for serialization |
| 20:07 | <jgraham> | In python I would do something like: |
| 20:08 | <jgraham> | p = html5lib.HTMLParser(tree=treebuilders.getTreBuilder("lxml")) |
| 20:08 | <tusho> | OK. What should I use, then? I'm _already_ using the parser for sanitization., |
| 20:08 | <tusho> | Ah, I see. Okay. Hm. |
| 20:08 | <jgraham> | doc = p.parse("input.html") |
| 20:08 | tusho | nods |
| 20:08 | <jgraham> | then the tree-specific method of doing what you want |
| 20:09 | <jgraham> | then maybe use the treewalker stuff to do the output and sanitisation |
| 20:09 | <tusho> | OK! |
| 20:14 | <tusho> | jgraham: Hmmmmmmmmmmmmmmm. |
| 20:15 | <tusho> | I take it that this isn't _really_ hpricot? |
| 20:18 | <jgraham> | tusho: I think it is really hpricot |
| 20:18 | <tusho> | NoMethodError: undefined method `/' for #<HTML5::TreeBuilders::Hpricot::TreeBuilder:0x122c4cc> |
| 20:18 | <tusho> | after |
| 20:18 | <tusho> | HTML5::TreeBuilders[:hpricot].new(tree)/"a" |
| 20:18 | <tusho> | tree is the html5parser result |
| 20:19 | <jgraham> | I'm not sure what that's trying to do |
| 20:19 | <tusho> | Get all the 'a' tags. |
| 20:22 | <jgraham> | http://golem.ph.utexas.edu/~distler/code/instiki/svn/lib/sanitize.rb might be useful to you |
| 20:23 | <tusho> | @treebuilder = TreeBuilders::REXML::TreeBuilder |
| 20:23 | <tusho> | Not really. |
| 20:25 | <jgraham> | OK, so tree is a hpricot tree, right? So what does all the HTML5::TreeBuilders[:hpricot].new do? |
| 20:25 | <jgraham> | (did I mention that I don't know Ruby) |
| 20:26 | <tusho> | HTML5::TreeBuilders[:hpricot] -> HTML5::Treebuilders::Hpricot::Treebuilder |
| 20:26 | <tusho> | Then I make a new instance. |
| 20:30 | <Hixie> | aa___: yt? othermaciej: yt? |
| 20:33 | <annevk> | Lachy, FWIW, I'm opposed to hasFeature |
| 20:36 | <jgraham> | tusho: I think you want to set the HTML5::Treebuilders::Hpricot::Treebuilder class as the @tree attribute on your HTMLParser |
| 20:36 | <tusho> | Ah. |
| 20:36 | <tusho> | That might work. :P Then how would I use it like Hpricot? |
| 20:36 | <tusho> | i.e. get the actual document object |
| 20:38 | <jgraham> | the .parse method of the HTMLParser will return a Hpricot tree object |
| 20:38 | <jgraham> | (fwiw I can't remember if you want to set the @tree to be a class or an instance) |
| 20:40 | <jgraham> | (but you should be able to use HTML5::Trebuilders::getTreeBuilder("hpricot") to get the right type of object |
| 20:40 | <jgraham> | ) |
| 20:42 | <tusho> | jgraham: get_tree_builder, it'd be |
| 20:44 | <tusho> | jgraham: and as [] is a shortcut: |
| 20:44 | <tusho> | HTML5::TreeBuilders[:hpricot] |
| 20:45 | <jgraham> | Crazy ;) |
| 20:45 | <tusho> | jgraham: It'll just be something like this: |
| 20:45 | <tusho> | def [](name) |
| 20:45 | <tusho> | get_tree_builder name |
| 20:45 | <tusho> | end |
| 20:45 | <tusho> | So not too crazy :) |
| 20:45 | <tusho> | (And :foo is just the (Lisp) symbol 'foo') |
| 20:47 | <jgraham> | Oh, I see. That makes som sense |
| 20:48 | <jgraham> | *some |
| 20:48 | <gsnedders> | Hixie: command-insertorderedlist and remoteeventtarget are the two remaining dupes |
| 20:48 | <tusho> | jgraham: You could do: |
| 20:49 | <tusho> | html5.treebuilders['hpricot'] in python |
| 20:49 | <tusho> | __getitem__, vs defining [] |
| 20:50 | <Hixie> | gsnedders: fixed |
| 20:51 | <Hixie> | i guess i'll define pipes in html5 proper |
| 20:51 | <Hixie> | postMessage v2 |
| 20:51 | <Hixie> | might as well add basic data structure support while i'm at it |
| 20:52 | <tusho> | Hixie: can't you just ... use JS or something? |
| 20:52 | <tusho> | you're inventing a programming language! :) |
| 20:52 | <Hixie> | i mean for transfering data using postMessage() |
| 20:53 | <Hixie> | we can't just use JS, as that would allow cross-domain polution |
| 20:53 | <annevk> | that's bound to confuse postMessage implementors |
| 20:53 | <tusho> | true |
| 20:53 | <tusho> | still... |
| 20:53 | <tusho> | pipes and data structures.. |
| 20:53 | <tusho> | i'm sure there's some kind of constrained language that already does it |
| 20:53 | <Hixie> | annevk: what is? |
| 20:54 | <Hixie> | tusho: i don't understand what you mean |
| 20:54 | <annevk> | if the whole postMessage algorithm changes now to add support for pipes |
| 20:54 | <jgraham> | tusho: Yeah, although it wouldn't actually work in python because treebuilders is a module not a class |
| 20:54 | <Hixie> | annevk: it'd be a superset |
| 20:54 | <tusho> | jgraham: Well, in Ruby I think it's a module |
| 20:54 | <jgraham> | (re: __getitem__ that is) |
| 20:54 | <annevk> | yes, but a group of implementors is still working on v1 and shipping that and won't have time to add v2 |
| 20:54 | <tusho> | Which are used for namespaces and mixins. :p |
| 20:54 | <Hixie> | brb |
| 20:57 | <tusho> | Hmph. |
| 20:57 | <tusho> | The tree gives me an array of elements. |
| 20:57 | <tusho> | Why couldn't it just be a Hpricot document. Sheehs |
| 20:58 | <annevk> | Lachy, for hasFeature, maybe make it something for non-ECMAScript impl |
| 20:59 | <Lachy> | ok, that could work |
| 20:59 | <annevk> | and also mark it at risk :) |
| 20:59 | <annevk> | so we can drop it after CR :p |
| 21:00 | <annevk> | :evil: |
| 21:00 | <Lachy> | LOL |
| 21:00 | <Lachy> | Hixie, othermaciej, http://lists.w3.org/Archives/Public/www-archive/2008Jul/att-0019/Overview.html |
| 21:00 | <gsnedders> | Hixie: the spec-gen works in 1.5s on an XML copy of html5 (both parsing and serialising in a C extension), so with chtml5lib, that'd be the sort of speed doable |
| 21:00 | <Lachy> | also mailed www-style about it |
| 21:01 | <Lachy> | JohnResig_, see URI above |
| 21:01 | <Lachy> | http://lists.w3.org/Archives/Public/www-style/2008Jul/0193.html |
| 21:02 | <Lachy> | I suppose I should mail webapps about it to |
| 21:10 | <gsnedders> | Philip`: No, there is no ISO for TOC |
| 21:20 | <tusho> | Hmph. |
| 21:20 | <tusho> | The tree is an array of hpricot elements. |
| 21:20 | <tusho> | Not an hpricot searcher thing |
| 21:22 | <gsnedders> | Hmm… |
| 21:22 | <gsnedders> | That's a rather major bug. |
| 21:23 | <tusho> | Is it a bug? |
| 21:23 | <tusho> | :\ |
| 21:23 | <tusho> | Dunno how on earth to turn it into a hpricot searcher thingy though.. |
| 21:23 | <gsnedders> | No, in my spec-gen, I just found a huge bug |
| 21:23 | <gsnedders> | Completely unrelated to you :P |
| 21:23 | <tusho> | Oh. |
| 21:23 | <tusho> | :( |
| 21:26 | <gsnedders> | I _really_ hate lxml |
| 21:27 | <weinig> | Lachy: Am I correct in assuming querySelector is supposed to work with elements that are not in the document? |
| 21:27 | <weinig> | Lachy: for instance a freshly created element, (document.createElement("foo") |
| 21:27 | <annevk> | yes |
| 21:27 | <annevk> | it should work for document fragments and such |
| 21:28 | <annevk> | well, iirc |
| 21:28 | <JohnResig> | weinig: currently no implementation supports fragments |
| 21:28 | <weinig> | JohnResig: I am implementing fragments right now |
| 21:28 | <weinig> | JohnResig: webkit should support them in an hour |
| 21:29 | <weinig> | thanks annevk |
| 21:29 | <JohnResig> | weinig: nice - did you catch my test suite? |
| 21:29 | <weinig> | JohnResig: I saw it last night, it looks cool |
| 21:30 | <weinig> | JohnResig: it seems to have some weird issues in Safari though |
| 21:30 | <JohnResig> | weinig: k - I noticed a couple regressions from Safari 3.1 -> Nightly (but also some fixes) |
| 21:30 | <JohnResig> | I assume that things are still being worked on, on your end |
| 21:30 | <weinig> | really? |
| 21:30 | <weinig> | JohnResig: they are |
| 21:32 | <jgraham> | gsnedders: Why do you hate lxml? |
| 21:33 | <gsnedders> | jgraham: how it stores text |
| 21:33 | <gsnedders> | (the latest bug is because I forget to copy the tail) |
| 21:33 | <jgraham> | gsnedders: Yeah the .text .tail thing isn't really optimised for documents but text nodes are pretty bad too |
| 21:34 | <jgraham> | (that is documents as opposed to data where .tails are rare) |
| 21:43 | <JohnResig> | Lachy: I'll need your attention here: https://bugzilla.mozilla.org/show_bug.cgi?id=416317#c29 Boris has some Selectors API spec questions |
| 21:52 | <Lachy> | weinig, yes |
| 21:52 | <Lachy> | JohnResig, looking now |
| 21:57 | <Lachy> | JohnResig, so if I understand, the issue is what to do with: |
| 21:57 | <Lachy> | .querySelector("foo", {}); |
| 21:57 | <JohnResig> | that's one of the points, yes |
| 21:57 | <Lachy> | what does Firefox do now? |
| 21:57 | <JohnResig> | it sounds like it just ignores it |
| 21:58 | <Lachy> | I would expect it to throw an NAMESPACE_ERR |
| 21:58 | <JohnResig> | yeah - that's what I test for |
| 21:58 | <JohnResig> | the other point: what should .querySelector() do (passing in nothing) |
| 21:59 | <JohnResig> | since that's not specified (it seems) |
| 22:01 | <Lachy> | I think it is, let me see. |
| 22:01 | <zcorpan> | wow, image { background:fuchsia } <img> works in ie |
| 22:02 | <gsnedders> | zcorpan: <img> has a non-zero size, or there being an actual image? |
| 22:02 | <Lachy> | JohnResig, it says "If the selectors parameter is set to either null or undefined, the implementation must behave as if an empty string had been passed instead". In that case, it's undefined |
| 22:02 | <Lachy> | because in JS, not passing a parameter === undefined |
| 22:02 | <Lachy> | At least, that's how I understand it |
| 22:02 | <zcorpan> | gsnedders: placeholder box |
| 22:03 | <annevk> | zcorpan, nice |
| 22:03 | <JohnResig> | Lachy: well, no - since when doing fn( undefined ) you have one argument whose value is undefined, doing fn() you have no arguments |
| 22:03 | <gsnedders> | Lachy: (FWIW, your local copy of the spec-gen will become quickly outdated with how much I've been doing over the holidays) |
| 22:03 | <gsnedders> | Regardless, g'nite y'all |
| 22:03 | <JohnResig> | function fn(){ alert(arguments.length); } to test |
| 22:03 | <annevk> | (and also bad, but it's also nice as it's sort of consistent) |
| 22:03 | <Lachy> | oh, I see. |
| 22:03 | <Lachy> | ok, I'll fix that, because it was my intention to cover missing arguements too |
| 22:04 | <Lachy> | the intention is for: missing argument == undefined == null == "" for the selectors argument |
| 22:04 | <JohnResig> | ok, sure |
| 22:06 | <Hixie> | Lachy: i don't think the child nodes of a DocumentFragment node should match ":context > *" (especially since they presumably would not match "* > *") |
| 22:07 | <zcorpan> | http://doctype.googlecode.com/svn/trunk/tests/html/elements/plaintext-element-applies-style-test.html |
| 22:07 | <annevk> | Hixie, my main postMessage concern is with IE, Opera, and Safari, which afaik haven't shipped an impl yet |
| 22:07 | <annevk> | of v1 |
| 22:07 | <annevk> | but plan to do so soonish |
| 22:08 | <Lachy> | Hixie, send mail |
| 22:08 | <Hixie> | annevk: so? |
| 22:08 | <Hixie> | Lachy: k |
| 22:08 | <Hixie> | Lachy: www-style? |
| 22:08 | <Lachy> | Hixie, I added DocumentFragment back in based on earlier feedback from JohnResig |
| 22:08 | <annevk> | Hixie, depending on how you write down the new stuff, it might be harder to figure out what we have to implement |
| 22:08 | <Lachy> | but I left Entity and EntityReference out based on your earlier feedback |
| 22:08 | <Lachy> | Hixie, yeah, www-style will do |
| 22:09 | <Hixie> | sent |
| 22:09 | <Hixie> | annevk: yeah, i'll be careful |
| 22:09 | <annevk> | Hixie, I'm mainly concerned with IE pulling the implementation because they think the feature is instable |
| 22:10 | <annevk> | ok, we'll see how it goes |
| 22:10 | <Hixie> | yeah, that's a valid concern |
| 22:11 | <Hixie> | i'll make it clearly separate |
| 22:12 | <annevk> | chaals: "A. Naturally, we have a complete implementation of the final version of HTML 5..." |
| 22:12 | <annevk> | typical |
| 22:12 | <annevk> | -- http://www.w3.org/QA/2008/07/interview_charles_mccathienevi.html |
| 22:12 | <Hixie> | heycam`: yt? |
| 22:14 | <annevk> | two questions about XForms |
| 22:14 | <Lachy> | JohnResig, maybe treating missing arguments as undefined isn't really great behaviour. What are the other possibilities for handling it? |
| 22:15 | <Lachy> | how are missing args handled in other cases where they're required? |
| 22:17 | <Lachy> | oh, querySelector("xxx", {}); should probably throw a TYPE_MISMATCH_ERR |
| 22:23 | <Lachy> | JohnResig, I commented on the bug |
| 22:23 | <JohnResig> | Lachy: great, thanks |
| 22:24 | <annevk> | where's gsnedders? |
| 22:25 | <annevk> | gsnedders, if you read this, another feature request: no xref from within <hx> |
| 22:27 | jgraham | thinks gsnedders needs bugzilla.gsnedders.com |
| 22:27 | <jgraham> | (other bug tracking software is avaliable) |
| 22:27 | <tusho> | bugzilla, eurgh |
| 22:28 | <annevk> | jgraham, he just needs to read the logs :p |
| 22:29 | <jgraham> | Yeah and keep track of all the bugs, which have been coming in pretty fast today |
| 22:46 | <Lachy> | does anyone know what Andrew is trying to say here? http://lists.w3.org/Archives/Public/www-style/2008Jul/0196.html |
| 22:47 | <Lachy> | I can't comprehend his selectChild() and selectParent() examples. |
| 22:47 | <Hixie> | i never have any idea what that guy is talking about |
| 22:47 | <Hixie> | i mean, never |
| 22:47 | <Hixie> | i've tried many a time |
| 22:47 | <Lachy> | I know, I never have either. |
| 22:47 | <JohnResig> | Lachy: he wants to overload :root to mean :root or :context |
| 22:47 | <Lachy> | yeah, I get that. Obviously, we can't do that. Besides, that was discussed in the webapi wg and rejected earlier. |
| 23:33 | <heycam> | Hixie, here now |
| 23:34 | <othermaciej> | Lachy: why :context instead of :scope? |
| 23:34 | <othermaciej> | (I asked by email too) |
| 23:42 | <weinig> | JohnResig: hey, it would really helpful if there was someway to figure out what each individual failure was testing specifically |
| 23:43 | <weinig> | JohnResig: I am not sure what things like FAIL: Fragment: childhood selector |
| 23:43 | <weinig> | JohnResig: means |
| 23:43 | <JohnResig> | weinig: hmm - I wonder if I could do a stack trace or something |
| 23:44 | <weinig> | JohnResig: I was thinking more just what the actual call to querySelector or querySelectorAll was being passed |
| 23:44 | <weinig> | JohnResig: the specific string |
| 23:45 | <JohnResig> | weinig: the pass/fail doesn't always associate with a direct query (most do) the one you cited, for example, is from a traversal through the document verifying the exact items that were matched were supposed to be matched |
| 23:45 | <weinig> | JohnResig: I see |
| 23:45 | <Lachy> | othermaciej, I thought it was a better name |
| 23:45 | <weinig> | JohnResig: perhaps that could be made more clear |
| 23:45 | <JohnResig> | weinig: if a test is ever testing a selector directly then it's shown in the test result in parentheses |
| 23:46 | <weinig> | JohnResig: ah, I see that now |
| 23:46 | <Lachy> | othermaciej, I wouldn't mind changing it back to :scope, but I don't want this to become another naming debate either |
| 23:47 | <othermaciej> | Lachy: I liked :context better at first, but if we ever want to add a version of querySelector that prepends :scope/:context implicitly to each selector in the group (which I think we probably do, since it matches JS library semantics much better), queryScopedSelector would be a better name than queryContextualSelector |
| 23:47 | <othermaciej> | Lachy: other than that, don't care and was mostly curious |
| 23:50 | <Lachy> | othermaciej, I'm not yet convinced we need queryScopedSelector as well as this. |
| 23:50 | <othermaciej> | Lachy: I think there are two reasons we may still want it: |
| 23:51 | <othermaciej> | 1) otherwise JS libraries have to do rewriting of their incoming selectors, which is both slower and more error-prone in JS code than in native code |
| 23:51 | <othermaciej> | 2) without a way to access those syntax features directly, it becomes harder for authors to ever switch off the library wrappers to the native version, even once all browsers support it |
| 23:52 | <annevk> | unless libraries support two versions |
| 23:52 | <othermaciej> | libraries support two versions of what? |
| 23:52 | <annevk> | querySelector() |
| 23:52 | <annevk> | but i've no opinion on this so i should shut up :) |
| 23:53 | <othermaciej> | I don't understand how libraries supporting two versions makes a difference to either of my points |
| 23:54 | <othermaciej> | I guess if libraries support a non-scoped version, they don't have to do rewriting for that one, but presumably they do not want to drop their old features entirely, and authors do not want to stop using them |
| 23:57 | <annevk> | my case was based on libraries offering two versions and authors switching to one that eventually allows them to just use querySelector |
| 23:57 | <annevk> | anyway, like I said, I should not discuss this |
| 23:59 | <othermaciej> | it seems like neither libraries nor authors want to do that |