Options:
- # Session Start: Mon Oct 06 00:00:01 2008
- # Session Ident: #whatwg
- # [00:09] * Joins: WimLeers (n=wimleers@drupal.org/user/99777/view)
- # [00:10] * Quits: weinig|away (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
- # [00:13] * Joins: olliej (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net)
- # [00:27] * Quits: Lachy (n=Lachlan@203-158-33-215.dyn.iinet.net.au) ("Leaving")
- # [00:39] * Quits: svl (n=me@ip565744a7.direct-adsl.nl) ("And back he spurred like a madman, shrieking a curse to the sky.")
- # [00:40] * Quits: heycam (n=cam@124-168-124-252.dyn.iinet.net.au) ("bye")
- # [00:41] * Quits: olliej (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net)
- # [00:53] * Joins: olliej (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net)
- # [01:19] * Joins: KevinMarks (n=KevinMar@82-68-84-27.dsl.in-addr.zen.co.uk)
- # [01:23] * Joins: PB (n=PB@78.96.143.121)
- # [01:47] * Parts: WimLeers (n=wimleers@drupal.org/user/99777/view)
- # [02:02] * Joins: MikeSmith (n=MikeSmit@EM114-48-157-201.pool.e-mobile.ne.jp)
- # [02:28] * Joins: weinig (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net)
- # [02:29] * Quits: PB (n=PB@78.96.143.121)
- # [03:01] * Joins: famicom_ (i=famicom@5ED2F98E.cable.ziggo.nl)
- # [03:02] * Quits: famicom_ (i=famicom@5ED2F98E.cable.ziggo.nl) ("Leaving")
- # [03:03] * Joins: famicom (i=famicom@5ED2F98E.cable.ziggo.nl)
- # [03:05] <takkaria> I never knew people could bikeshed over implemented features
- # [03:05] * Joins: nessy (n=nessy@124-171-51-52.dyn.iinet.net.au)
- # [03:10] * Quits: tantek (n=tantek@pool-71-105-211-125.lsanca.dsl-w.verizon.net)
- # [03:27] <Philip`> Hmm, looks like I can't tunnel Web Socket connections through a Squid reverse proxy :-(
- # [03:28] <Philip`> (It messes up all the response headers, and then closes the connection immediately)
- # [03:31] * Joins: renke4 (n=user@Lddc4.l.pppool.de)
- # [03:34] * Joins: weinig_ (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net)
- # [03:34] * Quits: weinig (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [03:40] * weinig_ is now known as weinig
- # [03:48] <famicom> yo
- # [03:48] <famicom> takkaria what do you mean with bikeshed
- # [03:51] * Quits: renke3 (n=user@Le5eb.l.pppool.de) (Read error: 110 (Connection timed out))
- # [03:52] <famicom> blegh
- # [03:52] <famicom> html 5 is a Bad-Idea (tm)
- # [03:54] <famicom> as far as the new tags go that is.
- # [03:55] * Quits: erlehmann (n=nils@dslb-088-074-200-053.pools.arcor-ip.net) (Read error: 110 (Connection timed out))
- # [04:06] <takkaria> famicom: http://www.unixguide.net/freebsd/faq/16.19.shtml
- # [04:07] <takkaria> famicom: why do you think html5 is a bad idea?
- # [04:08] <famicom> if anything, it should feature LESS tags instead of more
- # [04:10] <takkaria> what tags do you have problems with in particular?
- # [04:14] <famicom> <article> <audio> <command> <footer> <progress> <time> <video>
- # [04:14] <famicom> <figure> etc etc
- # [04:16] <famicom> <aside> is horrible too
- # [04:17] <famicom> why on EARTH would you add a new element, when you can just use a css float
- # [04:23] * weinig is now known as weinig|food
- # [04:27] <olliej> famicom: audio and video actually provide completely new functionality
- # [04:27] <olliej> famicom: the others mostly represent semantic information rather than style information
- # [04:28] * Quits: nessy (n=nessy@124-171-51-52.dyn.iinet.net.au) ("This computer has gone to sleep")
- # [04:28] <olliej> famicom: then there are a few others that all the browser already implement, so defining behaviour == compatibility win
- # [04:29] <othermaciej> famicom: elements are about semantics and behavior, not presentation
- # [04:29] <famicom> yeah, but what if i add 2 footer tags inside a document
- # [04:30] <othermaciej> HTML5 tries to add semantic elements for structures very commonly seen on the Web, to avoid the need to do everything with <div> soup
- # [04:30] <othermaciej> then that would be invalid, unless each is in a different sectioning element
- # [04:30] <famicom> what is wrong with div soup
- # [04:32] <famicom> adding new elements is going to create an even bigger mess
- # [04:32] * Quits: weinig|food (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [04:33] * Joins: weinig (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net)
- # [04:33] <famicom> and audio + video add NOTHING that hasnt been possible with embed
- # [04:34] <olliej> famicom: um? you're entirely right, it's perfectly possible to use a variety of proprietary technologies in an embed tag
- # [04:34] * Quits: weinig (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [04:34] <olliej> famicom: non of which are styleable with css
- # [04:34] <olliej> ignoring the fact you should be using an object tag ;D
- # [04:34] * Joins: weinig (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net)
- # [04:34] <famicom> gehehehehe
- # [04:36] * Quits: weinig (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [04:37] * Joins: weinig (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net)
- # [04:37] <famicom> but here's something, what about for instance flash video.
- # [04:37] <olliej> famicom: what about it?
- # [04:37] <famicom> which is proprietary, but is a media container for video
- # [04:37] <famicom> well
- # [04:37] <famicom> which tag should be used for that
- # [04:37] <olliej> famicom: an object tag
- # [04:38] <famicom> but it displays video
- # [04:38] <olliej> famicom: video == browser embedded video
- # [04:38] <olliej> famicom: eg. the browser knows what is happening
- # [04:38] <famicom> it is embedded in my browser isnt it
- # [04:38] <olliej> famicom: and an do correct compositing
- # [04:38] <othermaciej> with flash video, you're embedding a flash program that happens to play video
- # [04:39] <olliej> famicom: plugins do not integrate with the page well -- you can't style them from css, they have all sorts of exciting compositing issues, they tend to be the most crash prone things on the web
- # [04:40] <famicom> agreed
- # [04:40] <famicom> but thats a whole other issue
- # [04:41] <olliej> um -- you've just effectively said "every reason that plugins are bad doesn't matter, what's wrong with plugins?"
- # [04:43] <famicom> no, im seperating markup from media-objects
- # [04:46] <famicom> because i sure as hell know that a lot of vendors won't be implementing it in the way the specification discribes
- # [04:46] <olliej> famicom: ?
- # [04:46] <olliej> famicom: <video> and <audio> need to be actual elements
- # [04:46] <olliej> famicom: they're not style information, they're semantic behaviour
- # [04:46] <famicom> explain the "need" for them
- # [04:47] <olliej> famicom: they are also not generic content vehicles -- they don't allow you to use an arbitrary plugin -- they exist specifically for media, that the browser controls
- # [04:47] <olliej> famicom: people want audio and video on the web, there is no standard way for them to do so without video and audio elements
- # [04:48] <olliej> famicom: currently your only option is to use a proprietary plugin which does not interact with the webpage in any sane way, does not composite properly in the webpage, and cannot be styled with css
- # [04:48] <famicom> first of all, you cannot style audio:P
- # [04:49] <olliej> famicom: well yes, but you can interact with it through a standard dom interface
- # [04:49] <famicom> secondly, whereas i understand the need for a standard for multimedia
- # [04:50] <famicom> i don't see why it should be so "specific"
- # [04:51] <famicom> or why it should be handled by the browser to begin with
- # [04:51] <olliej> famicom: dammit, are you ignoring what i say deliberately?
- # [04:51] <olliej> famicom: plugins *cannot* compositie correctly with the page
- # [04:51] <olliej> famicom: they are entirely distinct
- # [04:51] <famicom> nor does multimedia
- # [04:52] <famicom> do you think lynx or elinks will ever be able to support it?
- # [04:52] <olliej> famicom: nor does multiemedia what?
- # [04:52] * Joins: tantek (n=tantek@h-66-166-3-76.lsanca54.covad.net)
- # [04:52] <famicom> "qcompositie correctly with the page"
- # [04:52] <olliej> famicom: um? i take it you haven't actually played with the video tag at all then?
- # [04:53] <olliej> famicom: because at least in webkit the video tag does composite correctly
- # [04:53] <famicom> your point being
- # [04:53] <famicom> just because it works in 1 single implementation, doesn't make it a good idea
- # [04:54] <olliej> famicom: the whole point is it is specced to composite correctly
- # [04:54] <famicom> webkit also was the first implementation to pass the acid2 test
- # [04:54] <olliej> famicom: if it doesn't composite correctly in another implemetnation that is a bug in that implementation
- # [04:54] <olliej> famicom: and they will fix that
- # [04:54] <othermaciej> I believe that the Mozilla implementation of <video> also composites properly
- # [04:54] <olliej> famicom: however it is not actually possible to correctly composite plugins
- # [04:55] <olliej> famicom: nor is it possible to colour correct them
- # [04:55] <olliej> famicom: nor do they respect arbitrary transforms you can get with css transofrms, or through embedding in svg
- # [04:56] <roc> of course it composites properly
- # [04:56] <roc> it even plays nice in an SVG foreignObject with transforms, filters and the whole shebang
- # [04:57] <olliej> heya roc
- # [04:57] <olliej> i kind of assumed it would composite correctly, but didn't actually know for sure :D
- # [04:57] <famicom> well what about mobile browsers
- # [04:58] * roc notes that olliej's complains about plugins apply only to *windowed* plugins, although for the sake of this argument, he's entirely on olliej's side
- # [04:58] <olliej> famicom: video tag is preferable for a mobile browser as well
- # [04:58] <olliej> famicom: as it means less untrusted code running
- # [04:58] <famicom> ok
- # [04:59] <olliej> famicom: note that all content from the web (JS, ActionScript, etc) == untrusted
- # [04:59] <famicom> so according to you, html is no longer about text, but about audio and video as well
- # [04:59] <olliej> ActionScript == untrusted code running in a closed off and proprietary vm
- # [04:59] <famicom> yeah, i hate flash as far as that goes
- # [04:59] <olliej> famicom: um, i haven't see you utter one complaint about the <img> tag
- # [04:59] * Joins: dglazkov (n=dglazkov@c-24-130-144-56.hsd1.ca.comcast.net)
- # [05:00] * Quits: tantek (n=tantek@h-66-166-3-76.lsanca54.covad.net)
- # [05:00] <famicom> ollie, yup
- # [05:00] <famicom> because it exists, and that's it
- # [05:00] <takkaria> as soon as plugins were allowed, html was no longer about text, but about being an application platform
- # [05:00] <olliej> famicom: but i suspect you have basically gotten confused about semantics and style -- markup == semantic information, css = style information
- # [05:01] <famicom> not entirely
- # [05:01] <olliej> um yes
- # [05:01] <olliej> entirely
- # [05:01] <othermaciej> roc: however windowless plugins can be quite a bit slower than the browser providing the same functionality natively, in some cases
- # [05:01] <roc> yes
- # [05:01] <famicom> my problem, is that the video and audio tags are too specific
- # [05:02] <olliej> famicom: there are old tags that still exist that predate css for presentation, that's it
- # [05:02] <olliej> famicom: how so?
- # [05:02] <famicom> you are basicly introducing a new set of font tags
- # [05:02] <olliej> no
- # [05:02] <olliej> goddammit
- # [05:02] <olliej> why do you not get this?
- # [05:02] <olliej> famicom: font == style
- # [05:02] <olliej> famicom: video == content
- # [05:02] <olliej> famicom: audio = content
- # [05:02] <famicom> because in 10 years time, i know that we will be able to embed 3d animations in webpages
- # [05:03] <roc> yeah, and then we'll create a new element
- # [05:03] <olliej> famicom: animation is presentation
- # [05:03] <roc> sometimes
- # [05:03] <olliej> famicom: webkit already supports transitions in css
- # [05:03] <famicom> so a 3d game is presentation
- # [05:03] <famicom> my ass it is
- # [05:03] <famicom> its a media object
- # [05:03] <olliej> famicom: canvas is technically able to provide a 3d context
- # [05:04] <famicom> so why add so many new tags
- # [05:04] <olliej> *sigh*
- # [05:04] * olliej gives up
- # [05:04] <takkaria> give me a 't', give me an 'r', give me an 'o' 'l' 'l'
- # [05:04] <roc> good plan
- # [05:04] <famicom> adding more tags isnt going to solve it
- # [05:04] <famicom> just create one single tag, then give it meaning via attributes
- # [05:04] <famicom> <meta> allready does that
- # [05:05] <roc> yeah baby
- # [05:06] <roc> <tag type="h1"><tag type="p"><tag type="video">
- # [05:06] <othermaciej> olliej: don't feed the trolls
- # [05:07] <roc> the big practical reason to introduce new tags is when new kinds of content need a specific API
- # [05:07] <othermaciej> roc: you probably shouldn't feed the trolls either
- # [05:09] <roc> This is important. Someone is *WRONG* on the Internet.
- # [05:10] <famicom> actually, im listening to roc
- # [05:10] <olliej> hehehe
- # [05:10] <MikeSmith> othermaciej, olliej - so did I read correctly that the "Add to Home Screen" feature on the iPhone is implemented using ApplicationCache from HTML5?
- # [05:10] <famicom> plus, im listening to your arguments, because they all contain good points and some substance
- # [05:10] <olliej> i have no idea
- # [05:11] <famicom> but was far as <tag type="h1"> goes
- # [05:11] <othermaciej> MikeSmith: when you "add to home screen", then if there is an HTML5 application cache manifest it takes effect
- # [05:11] <MikeSmith> OK
- # [05:11] <othermaciej> MikeSmith: we don't invent an application cache when none is specified
- # [05:11] <MikeSmith> sure, I understand that part
- # [05:11] <famicom> the <tag type="" would be redudant, because the < allready defines a tag
- # [05:12] <othermaciej> roc: all right, tell him how wrong he is
- # [05:13] <famicom> othermaciej please me more respectfull of other people's opinions
- # [05:13] <othermaciej> famicom: roc is the one who said you were wrong!
- # [05:15] <famicom> othermaciej you once again confirmed it and reinforced it by adding the word "how"
- # [05:15] <famicom> it's all about semantics baby!
- # [05:15] <othermaciej> famicom: I was being respectful of roc's opinion
- # [05:16] <famicom> hah, this is fun
- # [05:18] <othermaciej> famicom: here is the short version of "why add new tags"
- # [05:18] <othermaciej> there are basically two reasons:
- # [05:18] <othermaciej> 1) To better express the semantics of Web documents and Web applications; the face of the Web has changed since 1998 when HTML 4.01 was published, and it is valuable to express the constructs of 2008-style Web sites, and not just what we had in 1998
- # [05:19] <othermaciej> 2) To add functionality and behavior that many agree should be a basic part of the open Web platform (such as multimedia support)
- # [05:19] <othermaciej> given those goals, new tags are often a cleaner choice than new attributes on existing tags
- # [05:19] <othermaciej> and as you say yourself, it's the same amount of additions either way
- # [05:20] <othermaciej> so you may as well do it the cleaner way, with new tags
- # [05:20] <famicom> allright
- # [05:20] <othermaciej> HTML5 does also allow for extending semantics, using the class="" attribute and data- attributes
- # [05:20] <famicom> 1
- # [05:21] <othermaciej> it's unlikely that the main designers of HTML5 will be convinced that either of these goals is wrong, or that minimum number of tags is a more important goal
- # [05:21] <othermaciej> most people working on HTML5 try to follow these Design Principles: http://www.w3.org/TR/html-design-principles/
- # [05:23] <othermaciej> I suggest reading it to get a feel for where HTML5 people are coming from
- # [05:23] <famicom> yup
- # [05:24] <famicom> right now im just checking the water for the generall attitude + where its coming from
- # [05:24] <famicom> people wise that is
- # [05:25] <othermaciej> it comes from acceptance of shared design goals
- # [05:25] <othermaciej> not so much from specific people
- # [05:27] * Quits: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net)
- # [05:37] <famicom> sure
- # [05:37] <famicom> in a perfect world perhaps
- # [05:37] <famicom> same as all wikipedia articles are written without a bias
- # [05:39] * Joins: kingryan (n=ryan@c-24-5-77-167.hsd1.ca.comcast.net)
- # [05:42] * Joins: tantek (n=tantek@pool-71-105-211-125.lsanca.dsl-w.verizon.net)
- # [05:43] * Quits: tantek (n=tantek@pool-71-105-211-125.lsanca.dsl-w.verizon.net) (Client Quit)
- # [05:46] * Joins: tantek (n=tantek@pool-71-105-211-125.lsanca.dsl-w.verizon.net)
- # [05:49] * Joins: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net)
- # [05:55] * Quits: tantek (n=tantek@pool-71-105-211-125.lsanca.dsl-w.verizon.net)
- # [06:05] * Quits: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net)
- # [06:12] * Joins: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net)
- # [06:12] * Joins: svl (n=me@ip565744a7.direct-adsl.nl)
- # [06:27] * Joins: famicom_ (i=famicom@5ED2F98E.cable.ziggo.nl)
- # [06:31] * Quits: famicom (i=famicom@5ED2F98E.cable.ziggo.nl) (Read error: 110 (Connection timed out))
- # [06:46] * Quits: dglazkov (n=dglazkov@c-24-130-144-56.hsd1.ca.comcast.net)
- # [06:52] * Quits: svl (n=me@ip565744a7.direct-adsl.nl) ("And back he spurred like a madman, shrieking a curse to the sky.")
- # [07:11] * Quits: roc (n=roc@202.0.36.64)
- # [07:19] * Joins: billyjackass (n=MikeSmit@EM114-48-17-105.pool.e-mobile.ne.jp)
- # [07:20] * Joins: malware (n=MikeSmit@EM114-48-17-105.pool.e-mobile.ne.jp)
- # [07:20] * Quits: billyjackass (n=MikeSmit@EM114-48-17-105.pool.e-mobile.ne.jp) (Client Quit)
- # [07:20] * Quits: malware (n=MikeSmit@EM114-48-17-105.pool.e-mobile.ne.jp) (Read error: 104 (Connection reset by peer))
- # [07:25] * Joins: billyjackass (n=MikeSmit@EM114-48-17-105.pool.e-mobile.ne.jp)
- # [07:30] * Quits: olliej (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net)
- # [07:33] * Joins: wakaba_ (n=wakaba@30.165.210.220.dy.bbexcite.jp)
- # [07:33] * Quits: wakaba_ (n=wakaba@30.165.210.220.dy.bbexcite.jp) (Client Quit)
- # [07:33] * Joins: olliej (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net)
- # [07:38] * Quits: MikeSmith (n=MikeSmit@EM114-48-157-201.pool.e-mobile.ne.jp) (Read error: 110 (Connection timed out))
- # [08:20] * weinig is now known as weinig|zZz
- # [08:28] * Joins: zcorpan (n=zcorpan@pat.se.opera.com)
- # [08:44] * Joins: Maurice (n=ano@a80-100-71-209.adsl.xs4all.nl)
- # [09:00] * Quits: billyjackass (n=MikeSmit@EM114-48-17-105.pool.e-mobile.ne.jp) ("Less talk, more pimp walk.")
- # [09:00] * Quits: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net)
- # [09:02] * Joins: peter-proc (n=retep@procurios.xs4all.nl)
- # [09:05] * Joins: olliej_ (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net)
- # [09:09] * Joins: olliej__ (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net)
- # [09:09] * Joins: aaronlev (n=chatzill@g229221062.adsl.alicedsl.de)
- # [09:18] * Quits: olliej (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
- # [09:21] * olliej__ is now known as olliej
- # [09:22] * Joins: MikeSmith (n=MikeSmit@EM114-48-45-129.pool.e-mobile.ne.jp)
- # [09:23] * Quits: csarven (n=csarven@modemcable150.182-202-24.mc.videotron.ca) (Read error: 60 (Operation timed out))
- # [09:23] * Quits: olliej_ (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
- # [09:25] * Joins: roc (n=roc@121-72-165-176.dsl.telstraclear.net)
- # [09:56] * Joins: erlehmann (n=nils@dslb-088-074-217-054.pools.arcor-ip.net)
- # [10:00] <hsivonen> any recommendations of a mercurial tutorial for cvs/svn dummies?
- # [10:01] * Joins: bcse (n=user@134-208-29-57.ndhu.edu.tw)
- # [10:03] * Joins: maikmerten (n=merten@ls5laptop14.cs.uni-dortmund.de)
- # [10:05] <roc> have you read the hgbook?
- # [10:05] <roc> it's very good
- # [10:05] <hsivonen> roc: I haven't. thanks
- # [10:08] * Parts: bcse (n=user@134-208-29-57.ndhu.edu.tw) ("Leaving.")
- # [10:09] * Joins: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net)
- # [10:10] * Joins: nessy (n=nessy@124-171-51-52.dyn.iinet.net.au)
- # [10:15] * Quits: Kuruma (n=Kuruman@h123-176-107-050.catv01.catv-yokohama.ne.jp) ("Tiarra 0.1+svn-20015: SIGINT received; exit")
- # [10:16] * Joins: ROBOd (n=robod@89.122.216.38)
- # [10:18] * Quits: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net)
- # [10:25] * Joins: renke3 (n=user@Lc2e2.l.pppool.de)
- # [10:35] * Joins: hdh (n=hdh@118.71.122.252)
- # [10:37] * Quits: hdh (n=hdh@118.71.122.252) (Client Quit)
- # [10:39] * Quits: gavin_ (n=gavin@firefox/developer/gavin) (Read error: 104 (Connection reset by peer))
- # [10:41] * Joins: gavin_ (n=gavin@firefox/developer/gavin)
- # [10:46] * Quits: renke4 (n=user@Lddc4.l.pppool.de) (Read error: 110 (Connection timed out))
- # [10:46] <annevk2> Hixie, so currently the sync stuff and the async stuff happily uses the same path, I guess if I used event loops that would all have to if/elsed :/
- # [10:47] * Quits: maikmerten (n=merten@ls5laptop14.cs.uni-dortmund.de) (Remote closed the connection)
- # [10:50] * Joins: maikmerten (n=merten@ls5laptop14.cs.uni-dortmund.de)
- # [10:50] <olliej> sigh
- # [10:50] <olliej> the number of people who think gears is a good thing saddens me
- # [10:50] <Hixie> annevk2: so it's not sync, it's just that you don't define when the events fire :-)
- # [10:51] <Hixie> olliej: what is it they think is good?
- # [10:51] <olliej> Hixie: things that html5 supports
- # [10:51] <olliej> Hixie: especially the offline storage stuff
- # [10:51] <Hixie> so what's the problem with people thinking html is good?
- # [10:52] <olliej> Hixie: it will be good when we have safari and firefox release versions that simultaneously support all the offline storage stuff
- # [10:52] <olliej> Hixie: it's people promoting gears
- # [10:52] <olliej> Hixie: rather saying ooh look here's this standard and non-proprietary equivalent
- # [10:53] <roc> the funny thing is that as far as I can tell, Firefox and Safari have greater market penetration than Gears
- # [10:53] <Hixie> i'm confused by what you consider to be "gears", but that's maybe because the project has changed direction so many times that i don't know what it means anymore :-)
- # [10:53] <olliej> roc: yeah i know
- # [10:53] <Hixie> last i heard, gears was just supporting html5
- # [10:53] <olliej> roc: i suspect safari 3.1 alone has more market share
- # [10:54] <olliej> and it supports at least the database stuff
- # [10:54] <olliej> Hixie: it provides a different api
- # [10:54] <olliej> Hixie: people code to that api
- # [10:54] <olliej> and suddenly your site is dependent on an extension
- # [10:54] <annevk2> Hixie, it's not entirely clear to me how to do that, for instance, the UA needs to schedule a set of events during a sync request that are handled directly after the request, just before the method returns
- # [10:54] * olliej is still depressed that chrome has actively marketed gears rather than the standards that they turned off
- # [10:55] <Hixie> annevk2: if it's handled before the method returns, it's handled during the method call, and you can just define it as part of the algorithm
- # [10:55] <annevk2> Hixie, but you're saying i need to add if/else for the async case then?
- # [10:56] <annevk2> because the method call returns earlier for that, but the rest is the same...
- # [10:56] * Joins: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net)
- # [10:56] <Hixie> olliej: there is certainly inertia behind existing APIs that Gears supports (and has to continue supporting), just like there is inertia behind safari's extensions
- # [10:56] <Hixie> olliej: but so long as we all converge on the long term, i don't see a problem
- # [10:56] <olliej> Hixie: yes, but to actively turn off standards support seems somewhat hokey to me
- # [10:57] <olliej> oh well
- # [10:57] <olliej> the past is the past
- # [10:57] <Hixie> olliej: i'm not aware of anything that was turned off (though there were things that won't ported)
- # [10:57] <Hixie> weren't, even
- # [10:57] <annevk2> I thought maciej said turning those things on required additional effort
- # [10:57] <Hixie> though that's just a scheduling issue
- # [10:57] <olliej> Hixie: client side databases are supported in the webkit revision chrome is based off
- # [10:57] <othermaciej> olliej: they chose to do work to integrate Gears and did not choose to do work to make WebKit's existing HTML5 Database support work
- # [10:57] <olliej> which is the wrong way round
- # [10:57] <Hixie> olliej: not multiprocess, they're not
- # [10:58] <olliej> othermaciej: they claim to be trying to deprecate gears yet it was a major advertising point
- # [10:58] <annevk2> seems a bit too early to tell whether Chrome is evil with respect to standards
- # [10:58] <Hixie> othermaciej: sure, because google had properties that used that API. that's just sensible.
- # [10:58] <othermaciej> olliej: I am not sure all of Google is of one mind about this
- # [10:58] * Hixie shrugs
- # [10:58] <othermaciej> debating it here also does not seem fruitful
- # [10:59] * Hixie wasn't really aware of _any_ advertising for chrome, let alone advertising in favour of gears over standards
- # [10:59] <Hixie> like i said, last i heard, gears was just working on html5 stuff
- # [10:59] <othermaciej> I think more than bundling Gears, the prominent mention of Gears in the marketing campaign was what seemed weird
- # [11:00] <hsivonen> Hixie: doesn't using the HTML5 stuff in Chrome require access via a gears-specific object?
- # [11:00] <hsivonen> Hixie: so to migrate sites, the sites need to change
- # [11:00] <othermaciej> Chrome doesn't have any HTML5 stuff
- # [11:00] <othermaciej> or at least
- # [11:00] <othermaciej> not the Gears-equivalent HTML5 things
- # [11:00] <othermaciej> (not <video> or <audio> either which were in the version of WebKit their are based on)
- # [11:00] <hsivonen> I meant HTML5 stuff as implemented by gears
- # [11:01] <roc> the interesting question is really when, if ever, Google properties will use HTML5 APIs instead of Gears APIs where they overlap
- # [11:01] <Hixie> hsivonen: it's not html5 stuff if it's not as per the spec. but i don't think anything has shipped since they said they were giving up on their own apis and making html5 stuff only
- # [11:01] <othermaciej> they have legacy Gears APIs provided by a bundled Gears extension that you access through a Gears-specific object with Gears-specific APIs
- # [11:01] <hsivonen> ok. I though they had the HTML5 API with a non-standard entry point
- # [11:02] <Hixie> hsivonen: it's not html5 if it has a non-standard entry point
- # [11:02] <othermaciej> their APIs fail to match in ways other than the entry point
- # [11:02] <Hixie> hsivonen: it's like saying fruit juice is "water" :-)
- # [11:02] * hsivonen thought some Google presentation video suggested a copy of the HTML5 api might appear under a non-standard entry point
- # [11:02] <othermaciej> (so porting Google properties from Gears APIs to standard APIs might be nontrivial)
- # [11:03] <Hixie> hsivonen: oh, that's possible
- # [11:03] * Joins: hdh (n=hdh@118.71.121.36)
- # [11:03] <hsivonen> Hixie: well, it's not standard if you need a non-standard entry point, but there's still a practical difference between obtaining a standard interface in a non-standard way and obtaining a non-standard interface in a non-standard way
- # [11:03] <annevk2> othermaciej, btw, I saw somewhere a comment to the effect that Chrome was pre-Safari 3.1
- # [11:04] <Hixie> anyway
- # [11:04] * Hixie goes back to trying to work out what <select> is
- # [11:04] <hsivonen> is there some kind of chart of all WebKit forks/branches relative to Safari?
- # [11:04] <othermaciej> I believe they have a version of WebKit based on the same as the one that is in Safari 3.1
- # [11:04] <othermaciej> *had
- # [11:04] <othermaciej> for their initial release
- # [11:04] <othermaciej> with some selected changes from newer WebKit revisions backported
- # [11:05] <othermaciej> and some advanced features left disabled, since they had not implemented the back end
- # [11:05] <annevk2> Hixie, from what other Google employees told me Gears will always need the non-standard entry point, but hopefully you're right
- # [11:05] <othermaciej> the ones I am aware of are Web Fonts, <audio>/<video>, HTML5 database, and text-shadow
- # [11:05] * Quits: MikeSmith (n=MikeSmit@EM114-48-45-129.pool.e-mobile.ne.jp) ("Less talk, more pimp walk.")
- # [11:06] <Hixie> annevk2: when did you hear that?
- # [11:06] <annevk2> othermaciej, http://code.google.com/p/chromium/issues/detail?id=1533#c1 says pre-Safari 3.1 (via http://googlechromereleases.blogspot.com/ )
- # [11:06] <annevk2> Hixie, last week at The Ajax Experience; I believe from Brad Neuberg
- # [11:07] * Joins: virtuelv (n=virtuelv@pat-tdc.opera.com)
- # [11:07] <Hixie> ah, i should speak to brad. that's not what i had understood.
- # [11:08] <othermaciej> annevk2: engineers from the Chrome team have told me it was essentially the same as what was in 3.1 (though 3.1 has had security updates)
- # [11:08] <othermaciej> annevk2: their current trunk is now only a month behind WebKit trunk though
- # [11:08] <othermaciej> I believe the general plan is to get completely in sync and do WebKit work out of webkit.org
- # [11:09] <annevk2> nice
- # [11:12] <othermaciej> anyway what Google does with their Web properties once at least one release browser supports the HTML5 versions of all three of the original core Gears features will show what they really think of standards more so than what they chose to do with Chrome or Gears
- # [11:12] <othermaciej> IMO
- # [11:13] <Hixie> http://google.com/privacy/ already uses html5, as do a number of other google sites
- # [11:14] <Hixie> the bigger properties will take proportionally longer
- # [11:14] * hsivonen wonders if the Nokia Widget platform version of WebKit is the same as in their S60 Browser
- # [11:14] <othermaciej> does that use any HTML5 features other than the doctype?
- # [11:15] <Hixie> i don't think it uses anything that wasn't valid in html4 other than the doctype and the charset declaration
- # [11:15] <Hixie> but that's not really the point
- # [11:15] <Hixie> there's very little that wasn't in html4 that works reliably in IE yet
- # [11:16] <Hixie> and that's the target, along with the other major browsers
- # [11:16] <roc> there isn't much enthusiasm for implementing the HTML5 SQL stuff in Gecko so I don't think we'll be able to test Google's goodness anytime soon
- # [11:17] <othermaciej> well, we'll see what happens once workers and appcache are in a shipping Safari then
- # [11:17] <othermaciej> since it seems most likely to hit the trifecta first
- # [11:17] <othermaciej> we should convert webkit.org to html5
- # [11:17] <othermaciej> but that will require wrestling with wordpress for some of it
- # [11:17] <othermaciej> I gotta go to bed
- # [11:17] * othermaciej is now known as om_sleep
- # [11:18] <Hixie> nn
- # [11:18] <roc> Hixie: the thing is, arguments about the importance of supporting IE+gears are a little flat when IE+Gears has much lower market penetration than Firefox+Safari
- # [11:18] <hsivonen> roc: change from http://intertwingly.net/blog/2008/03/07/Design-By-Attrition#c1205011800 ?
- # [11:19] <roc> Perhaps. I have no idea who Hixie was referring to.
- # [11:20] <Hixie> roc: the argument is about supporting IE alone
- # [11:21] <roc> hsivonen: note that below, sayrer says "I don’t think my employer supported it. Can you point to evidence of this, ..." ... and none is forthcoming
- # [11:22] <om_sleep> Apple representatives (including me) supported the idea of all Gears features being part of Web standards so they could be implemented by browsers
- # [11:22] * roc himself does not object to SQL in HTML5
- # [11:22] <om_sleep> I don't believe we were specific as to which standard they should be in
- # [11:22] <om_sleep> this was in response to being asked to bundle Gears with various Apple products
- # [11:23] <om_sleep> to which we said no
- # [11:23] <Hixie> i don't recall who it was who was pushing for sql from the mozilla side of things
- # [11:24] <om_sleep> I do not really see the problem with a SQL API being available to Web content, or why anyone who wants a strong and competitive Web platform would be against it
- # [11:24] <om_sleep> I believe it is easier to implement than either the appcache or Workers
- # [11:24] <roc> the problem is the lack of definition of exactly what SQL it is
- # [11:25] <roc> saying it's whatever SQLite does is problematic
- # [11:25] * om_sleep is now known as othermaciej
- # [11:25] <roc> well, that's one problem
- # [11:25] <othermaciej> that is true, but it's hard to define exactly what SQL is, and unwise (it seems to me) to withhold the feature until someone does that work
- # [11:26] <Hixie> my plan is to spec the common subset of the first two implementations
- # [11:26] <Hixie> so the first two implementations, whatever they are, get to decide what the language is
- # [11:26] <hsivonen> at least saying that one must bundle SQLite would be better than not saying so but bundling SQLite being de facto required anyway
- # [11:26] <roc> I'm not the right person to have this conversation since I'm not actually objecting to it
- # [11:28] * Joins: renke4 (n=user@Lc943.l.pppool.de)
- # [11:28] <othermaciej> you did bring it up though
- # [11:29] <othermaciej> prior to that, Gecko plans vis-a-vis the HTML5 SQL API were not a topic of conversation
- # [11:29] * Joins: renke4` (n=user@Lc96a.l.pppool.de)
- # [11:29] * Joins: renke4`` (n=user@Lc973.l.pppool.de)
- # [11:30] <roc> I thought the information might be relevant, even though I can't fully explain it. Sorry.
- # [11:31] <othermaciej> it would be valuable if whoever at Mozilla has concerns were to communicate them, as it would help improve HTML5
- # [11:31] <virtuelv> othermaciej: any particular reason why additional arguments to the TimerHandler are unspecified?
- # [11:32] <othermaciej> virtuelv: the handleTimer method doesn't get any arguments besides the TImer
- # [11:32] <othermaciej> roc: btw you may be interested in this proposal I made for a high resolution (and otherwise improved) timer API: http://lists.w3.org/Archives/Public/public-webapps/2008OctDec/0009.html
- # [11:32] <virtuelv> othermaciej: I realised that, my question is more one of "shouldn't it"?
- # [11:33] <othermaciej> virtuelv: I know setTimeout (at least in Gecko and WebKit, but not in IE) will pass extra arguments that were given to setTimeout to the callback function
- # [11:33] <virtuelv> startTimer(1,true,fade,$('myElement'))
- # [11:33] <othermaciej> virtuelv: I don't think that's a particularly great feature
- # [11:33] <virtuelv> othermaciej: so does opera, btw
- # [11:34] <othermaciej> startTimer(1,true, function() { fade($('myElement')); });
- # [11:34] <othermaciej> or if your JS library has support for making a thunk out of a function bound to arguments, then use that
- # [11:35] <virtuelv> I'm not sure I enjoy that syntax very much, though
- # [11:35] <othermaciej> I'm not deeply philosophically against it or anything, it just seems a little odd and makes the API hard to extend
- # [11:35] <othermaciej> well that's the sort of thing you normally have to do for DOM API callbacks
- # [11:36] <othermaciej> like events
- # [11:36] <virtuelv> othermaciej: how about: Timer startTimer(in double delay, in Boolean repeat, in TimerHandler handler, in Array argumentlist)
- # [11:37] <othermaciej> virtuelv: that doesn't seem better than just passing along the extra arguments
- # [11:37] <othermaciej> from the people who do lots of web development who have reviewed this API I have not really gotten requests to support the extra-args thing
- # [11:38] <Hixie> i'm with maciej, the argument passing form of setTimeout is poor API design
- # [11:38] <Hixie> (as is the string form)
- # [11:39] <othermaciej> the string form is lame too, yes
- # [11:39] <Philip`> But you'll get memory leaks in IE if you use closures :-(
- # [11:39] <othermaciej> saves you a few characters in exchange for losing syntax checking and lexical scope, and effectively invoking eval
- # [11:39] <Hixie> Philip`: you won't be able to use this API in IE anyway
- # [11:40] <roc> othermaciej: proposal sounds OK with the revisions suggested in the thread. But I don't think this is the ultimate solution for JS animations
- # [11:40] <othermaciej> roc: animations are not the primary use case for this
- # [11:40] <othermaciej> (IMO)
- # [11:41] <othermaciej> true zero-delay timers are the most important use case
- # [11:41] <Hixie> are we sure we can't repurpose setTimeout() for those? maybe with some backoff logic in setTimeout() to prevent cpu hogging?
- # [11:42] <roc> that use case would be served by a single API equivalent to setTimeout(0)
- # [11:42] <Hixie> it seems like whatever caused setTimeout() to end up with a clamp will end up happening to this API too
- # [11:42] <Hixie> (i.e. I don't see anything that shows lessons having been learnt from setTimeout's clamp)
- # [11:43] <virtuelv> Hixie: setTimeout/setInterval is, as othermaciej already noted in the proposal an ugly api
- # [11:43] <othermaciej> Hixie: WebKit already has setTimeout(0) as initially 0 with backoff logic
- # [11:44] <Hixie> othermaciej: so what's the problem?
- # [11:44] <othermaciej> Hixie: the webkit.org version of WebKit
- # [11:44] <othermaciej> well apparently the Chrome folks found use cases where lowering the clamp was very helpful despite that
- # [11:44] <othermaciej> (though I have yet to hear citations of real sites)
- # [11:44] <Hixie> virtuelv: an existing ugly API is better than a redundant clean API with an ugly API as well
- # [11:44] <othermaciej> roc: I did propose the even-more-minimal callSoon()
- # [11:45] <roc> so it's a tricky situation ... the API seems OK, but it's not ideal for any of its use cases, except I think use case #3 where you clearly have to have a new interface and a Timer object
- # [11:45] <Hixie> othermaciej: well we would presumably need more information on exactly what those cases are to determine if we have satisfied the use cases
- # [11:45] * Quits: renke4 (n=user@Lc943.l.pppool.de) (Read error: 110 (Connection timed out))
- # [11:45] <othermaciej> Hixie: the Chrome folks seem more interested in changing the clamp to different values than doing a clear study of the benefits and costs of changing setTimeout in various ways
- # [11:45] <annevk2> if it's just for having a real 0 initially, I believe Opera has that too
- # [11:46] <othermaciej> a new API is the one thing I personally am sure will not break compatibility
- # [11:46] <othermaciej> (I'm also pretty sure starting with real 0 and ramping up for nested setTimeout calls is safe, but it doesn't help the case of significantly long-running work that wants to drop back to the event loop often)
- # [11:47] <Hixie> well without data we definitely shouldn't write a spec
- # [11:47] * Quits: renke4`` (n=user@Lc973.l.pppool.de) (Read error: 110 (Connection timed out))
- # [11:48] <othermaciej> the API I proposed has other improvements besides zero-delay
- # [11:48] * Quits: KevinMarks (n=KevinMar@82-68-84-27.dsl.in-addr.zen.co.uk) ("The computer fell asleep")
- # [11:48] <othermaciej> namely telling you true time elapsed and making it easy to reset a timer's time
- # [11:48] * Philip` just wants a "draw the next frame to this canvas as fast as possible, but don't bother going faster than the monitor refresh rate" function, and setTimeout doesn't work in practice since it's too slow and you can't tell precisely how much time has elapsed between frames
- # [11:48] <othermaciej> which I am told are common use cases in real Web apps
- # [11:49] * Quits: renke3 (n=user@Lc2e2.l.pppool.de) (Connection timed out)
- # [11:49] <roc> can't you tell how much time has elapsed using "new Date()"?
- # [11:50] * Quits: renke4` (n=user@Lc96a.l.pppool.de) (Read error: 110 (Connection timed out))
- # [11:50] <virtuelv> I can agree with the string form being ugly
- # [11:50] * Quits: aaronlev (n=chatzill@g229221062.adsl.alicedsl.de) ("ChatZilla 0.9.83-rdmsoft [XULRunner 1.9.0.1/2008072406]")
- # [11:50] <virtuelv> roc: new Date() is actually quite slow
- # [11:51] <Philip`> roc: If I remember correctly, that was limited to 16ms precision in some(/most/all?) browsers on Windows
- # [11:51] <othermaciej> roc: sure, if you saved the date at the time you started the timer or that it last fired
- # [11:51] <othermaciej> Philip`: some
- # [11:51] <virtuelv> roc: certain windows mobile implementations limit you to 1000ms
- # [11:51] <roc> virtuelv, Philip`: those are fixable bugs that don't require new API
- # [11:51] <virtuelv> (yes, really)
- # [11:52] <Philip`> roc: If they do get fixed without a new API, I'd be happy :-)
- # [11:52] <roc> but thanks, that answers my question
- # [11:52] <virtuelv> Philip`: perhaps we could have a vsync callback :)
- # [11:52] <roc> onpaint
- # [11:53] <othermaciej> virtuelv: this function is a handy way to bind arguments in a way that works for any callback API
- # [11:53] <othermaciej> function bindArgs(f)
- # [11:53] <othermaciej> {
- # [11:53] <othermaciej> var args = Array.prototype.slice.call(arguments, 1);
- # [11:53] <othermaciej> return function() { f.apply(null, args); }
- # [11:53] <othermaciej> }
- # [11:53] <othermaciej> (though I guess you can't get any real args passed to the callback that way)
- # [11:54] <Philip`> virtuelv: That's probably bad, because if it takes 1/59s to render the frame and the vsync rate is 60Hz, it'd only render at 30fps if each frame is locked to the vsync, which is uglier than rendering at 59fps and skipping one frame a second
- # [11:54] * virtuelv points at the smiley
- # [11:54] <Philip`> vsync only works if you're pretty certain you're always going to be rendering faster than that
- # [11:55] <virtuelv> the high-resolution timer stuff is moot for the next couple of years anyway
- # [11:55] <othermaciej> virtuelv: this version is better:
- # [11:55] <othermaciej> function bindArgs(f)
- # [11:55] <othermaciej> {
- # [11:55] <othermaciej> var savedArgs = Array.prototype.slice.call(arguments, 1);
- # [11:55] <othermaciej> return function() { f.apply(null, Array.prototype.concat.call(arguments, savedArgs)); }
- # [11:55] <othermaciej> }
- # [11:55] <othermaciej> (completely untested though)
- # [11:56] <virtuelv> othermaciej: I can live with the closure
- # [11:56] <Hixie> what kind of black magic is Array.prototype.concat.call
- # [11:56] <Hixie> oh is this because arguments isn't an Array?
- # [11:56] <othermaciej> yeah
- # [11:56] <Hixie> but it's "generic" enough to work with Array methods?
- # [11:57] <othermaciej> you can write that a lot more simply if you prototype-hack arguments to have slice and concat on its prototype
- # [11:57] * Hixie mumbles something about multimethods and interfaces and superior languages
- # [11:57] <othermaciej> I believe ES3.1 proposes to make arguments support the Array prototype methods
- # [11:57] <othermaciej> which would make that a lot simpler to write
- # [11:57] <virtuelv> Philip`: my perception is that browsers struggle getting anything over 30-40 fps anyhow for anything reasonably complex
- # [11:58] <othermaciej> making bindArgs take an array of extra arguments would make it a bit simpler too
- # [11:59] * Joins: aaronlev (n=chatzill@g229221062.adsl.alicedsl.de)
- # [12:00] <Philip`> virtuelv: Chrome gets >100fps on Canvex, which is reasonably complex
- # [12:00] * Quits: olliej (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net) (Remote closed the connection)
- # [12:00] <Philip`> but that's only possible because they stopped clamping setTimeout (or setInterval or whatever it is)
- # [12:01] <othermaciej> they reduced the clamp on both of those to 1ms
- # [12:01] <othermaciej> they will be trying 4ms next
- # [12:01] * Joins: olliej (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net)
- # [12:01] <virtuelv> they also got "yelled" at by Intel for the 1ms timeout, no?
- # [12:02] <othermaciej> well, it's more the technique they use to achieve timer precision at all
- # [12:02] <othermaciej> on Windows, to get accurate timers, you have to make a system call that increases the whole system's power consumption
- # [12:02] <othermaciej> at least on XP
- # [12:02] <othermaciej> because Microsoft can't code their way out of a wet paper bag
- # [12:02] <othermaciej> the webkit.org version of WebKit also does the timer accuracy thing, but we only leave it on while short delay timers are pending
- # [12:03] <othermaciej> (and for a little after, for hysteresis)
- # [12:03] <othermaciej> and no one has complained
- # [12:03] <othermaciej> (on Windows that is; on Mac and Linux there's no need for such nonsense to get accurate timers)
- # [12:04] <Philip`> Sounds like a complex optimisation problem, with performance on one axis and getting-yelled-at-by-other-developers on the other
- # [12:04] <othermaciej> it's not that hard
- # [12:04] <othermaciej> most sites do not have short-delay timers on all the time, at least not on purpose
- # [12:05] <othermaciej> it's really the way of working around the suckiness of Windows that needs finesse
- # [12:05] <othermaciej> and SafariWin does not drain battery like Chrome does in that regard
- # [12:06] <virtuelv> Philip`: canvas is one thing, DOM manipulation is another
- # [12:06] <Philip`> virtuelv: DOM is boring, so canvas is the only thing I'm interested in :-)
- # [12:08] * Joins: Kuruma (n=Kuruman@h123-176-107-234.catv01.catv-yokohama.ne.jp)
- # [12:24] <virtuelv> speaking of canvas, will anything come of Sjoerd's proposal?
- # [12:27] <olliej> virtuelv: given there has been absolutely no form of consensus it's hard to say
- # [12:27] <virtuelv> context.fillStyle = imageData.slice(0,3) seems handy
- # [12:28] <olliej> virtuelv: imageData.data.slice isn't valid -- CanvasPixelArray is not an Array (although i suppose it could be)
- # [12:28] <olliej> virtuelv: but that's not actually a real use case
- # [12:28] <Philip`> virtuelv: Handiness seems irrelevant, since you can just write a function to convert whatever data structure you have into a rgb(...) string
- # [12:28] <othermaciej> olliej: though you could rebind slice to apply
- # [12:28] <olliej> virtuelv: the specific issue that we're looking at is the need to convert a numberic colour representation in to an rgb() string
- # [12:28] <virtuelv> Philip`: and it'd be slower than neccesary
- # [12:28] <othermaciej> Array.prototype.slice.call(imageData.data, 0, 3)
- # [12:29] <othermaciej> wouldn't be very fast
- # [12:29] <othermaciej> making and parsing the string is a waste
- # [12:29] <Philip`> and fillStyle = rgb(1, 0, 0) (where 'rgb' converts to string) is no harder to write than fillStyle = [1, 0, 0] and also is more flexible since you can do HSL and everything
- # [12:29] <othermaciej> I think being able to pass 4 rgba values separately would be useful, but I can't say for sure how common it is to have an rgb triple or rgba quad that's not already in an array
- # [12:29] <Philip`> so it seems performance is the only real concern
- # [12:32] <Hixie> before we start adding APIs to canvas to do microsecond optimisations, lets see about getting the rest of the spec implemented
- # [12:59] <Philip`> What's the shortest string that can be appended to any prefix of a well-formed XML document, to make it ill-formed?
- # [13:01] <Philip`> (e.g. if I'm serialising to XML and then at some arbitrary point decide that I want to stop (e.g. because of an error) and make sure the output is not well-formed, and just have an opportunity to print some string onto the end to make sure it won't be accidentally parseable)
- # [13:01] <Dashiva> Random guess, ]]>\0
- # [13:02] <Philip`> Oh
- # [13:02] <Philip`> Even just \0 should do it
- # [13:02] * Quits: kingryan (n=ryan@c-24-5-77-167.hsd1.ca.comcast.net)
- # [13:02] <Philip`> because that doesn't seem to be allowed even in CDATA blocks
- # [13:03] <Philip`> That's simpler than I expected - thanks :-)
- # [13:04] * Joins: erlehmann_ (n=nils@dslb-088-074-217-054.pools.arcor-ip.net)
- # [13:04] * Quits: erlehmann (n=nils@dslb-088-074-217-054.pools.arcor-ip.net) (Read error: 104 (Connection reset by peer))
- # [13:06] * Quits: Thezilch (n=fuz007@cpe-76-171-111-7.socal.res.rr.com) (Read error: 104 (Connection reset by peer))
- # [13:06] * erlehmann_ is now known as erlehmann
- # [13:09] <Philip`> Actually, I don't know why I was thinking it was a problem - I could just add some plain text (like "Error") onto the end, and it'll never be well-formed
- # [13:10] * Quits: Kuruma (n=Kuruman@h123-176-107-234.catv01.catv-yokohama.ne.jp) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: zcorpan (n=zcorpan@pat.se.opera.com) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: jruderman (n=jruderma@ip68-5-179-249.oc.oc.cox.net) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: fishd (n=Darin@nat/google/x-32b517af9553e987) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: jgraham (n=jgraham@web22.webfaction.com) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: erlehmann (n=nils@dslb-088-074-217-054.pools.arcor-ip.net) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: Maurice (n=ano@a80-100-71-209.adsl.xs4all.nl) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: didymos (i=jho@rapwap.razor.dk) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: [YaaL] (i=yaal@hell.pl) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: bzed (n=bzed@devel.recluse.de) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: peter-proc (n=retep@procurios.xs4all.nl) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: jmb (n=jmb@login.ecs.soton.ac.uk) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: gsnedders (n=gsnedder@host81-156-236-33.range81-156.btcentralplus.com) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: shepazu (n=schepers@cpe-069-134-123-228.nc.res.rr.com) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: Dashiva (i=Dashiva@wikia/Dashiva) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: mcarter (n=mcarter@adsl-71-135-99-209.dsl.pltn13.pacbell.net) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Joins: michaeln1 (n=michaeln@nat/google/x-0329042055eebd52)
- # [13:10] * Quits: hdh (n=hdh@118.71.121.36) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: takkaria (n=takkaria@isparp.co.uk) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: hsivonen (n=hsivonen@kekkonen.cs.hut.fi) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: syp (n=syp@lasigpc9.epfl.ch) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: jcranmer (n=jcranmer@ltsp1.csl.tjhsst.edu) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: nessy (n=nessy@124-171-51-52.dyn.iinet.net.au) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: mal (n=mal@nat/google/x-83e3d8a6e2911459) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: JohnResig (n=JohnResi@74.201.254.36) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: hendry (n=hendry@nox.vm.bytemark.co.uk) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: wilhelm (i=wilhelm@trivini.no) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: gavin (n=gavin@firefox/developer/gavin) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: Hixie (i=ianh@trivini.no) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: doublec (n=nnchris@li5-223.members.linode.com) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: hober (n=ted@unaffiliated/hober) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: michaeln1 (n=michaeln@nat/google/x-0329042055eebd52) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: gavin_ (n=gavin@firefox/developer/gavin) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: wakaba (n=wakaba@30.165.210.220.dy.bbexcite.jp) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: deltab (n=deltab@82.36.30.34) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: psa (n=yomode@71.93.19.66) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: gpy (i=gpy@193.138.219.74) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: aaronlev (n=chatzill@g229221062.adsl.alicedsl.de) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: maikmerten (n=merten@ls5laptop14.cs.uni-dortmund.de) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: ROBOd (n=robod@89.122.216.38) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: Amorphous (i=jan@unaffiliated/amorphous) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: benoitc (i=benoitc@enki.osbud.net) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: weinig|zZz (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: Philip` (n=philip@zaynar.demon.co.uk) (kubrick.freenode.net irc.freenode.net)
- # [13:10] * Quits: michaeln (n=michaeln@nat/google/x-9c55f4ec6837b73b) (kubrick.freenode.net irc.freenode.net)
- # [13:11] * Joins: Dashiva (i=Dashiva@wikia/Dashiva)
- # [13:11] * Joins: [YaaL] (i=yaal@hell.pl)
- # [13:11] * Joins: didymos (i=jho@rapwap.razor.dk)
- # [13:11] * Joins: bzed (n=bzed@devel.recluse.de)
- # [13:11] * Joins: jgraham (n=jgraham@web22.webfaction.com)
- # [13:11] * Joins: fishd (n=Darin@nat/google/x-32b517af9553e987)
- # [13:11] * Joins: shepazu (n=schepers@cpe-069-134-123-228.nc.res.rr.com)
- # [13:11] * Joins: gsnedders (n=gsnedder@host81-156-236-33.range81-156.btcentralplus.com)
- # [13:11] * Joins: jruderman (n=jruderma@ip68-5-179-249.oc.oc.cox.net)
- # [13:11] * Joins: jmb (n=jmb@login.ecs.soton.ac.uk)
- # [13:11] * Joins: mcarter (n=mcarter@adsl-71-135-99-209.dsl.pltn13.pacbell.net)
- # [13:11] * Joins: zcorpan (n=zcorpan@pat.se.opera.com)
- # [13:11] * Joins: Maurice (n=ano@a80-100-71-209.adsl.xs4all.nl)
- # [13:11] * Joins: peter-proc (n=retep@procurios.xs4all.nl)
- # [13:11] * Joins: Kuruma (n=Kuruman@h123-176-107-234.catv01.catv-yokohama.ne.jp)
- # [13:11] * Joins: erlehmann (n=nils@dslb-088-074-217-054.pools.arcor-ip.net)
- # [13:11] * Joins: michaeln1 (n=michaeln@nat/google/x-0329042055eebd52)
- # [13:11] * Joins: aaronlev (n=chatzill@g229221062.adsl.alicedsl.de)
- # [13:11] * Joins: hdh (n=hdh@118.71.121.36)
- # [13:11] * Joins: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net)
- # [13:11] * Joins: maikmerten (n=merten@ls5laptop14.cs.uni-dortmund.de)
- # [13:11] * Joins: gavin_ (n=gavin@firefox/developer/gavin)
- # [13:11] * Joins: ROBOd (n=robod@89.122.216.38)
- # [13:11] * Joins: nessy (n=nessy@124-171-51-52.dyn.iinet.net.au)
- # [13:11] * Joins: weinig|zZz (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net)
- # [13:11] * Joins: Amorphous (i=jan@unaffiliated/amorphous)
- # [13:11] * Joins: psa (n=yomode@71.93.19.66)
- # [13:11] * Joins: takkaria (n=takkaria@isparp.co.uk)
- # [13:11] * Joins: jcranmer (n=jcranmer@ltsp1.csl.tjhsst.edu)
- # [13:11] * Joins: syp (n=syp@lasigpc9.epfl.ch)
- # [13:11] * Joins: hsivonen (n=hsivonen@kekkonen.cs.hut.fi)
- # [13:11] * Joins: wakaba (n=wakaba@30.165.210.220.dy.bbexcite.jp)
- # [13:11] * Joins: mal (n=mal@nat/google/x-83e3d8a6e2911459)
- # [13:11] * Joins: Hixie (i=ianh@trivini.no)
- # [13:11] * Joins: wilhelm (i=wilhelm@trivini.no)
- # [13:11] * Joins: hober (n=ted@unaffiliated/hober)
- # [13:11] * Joins: gavin (n=gavin@firefox/developer/gavin)
- # [13:11] * Joins: doublec (n=nnchris@li5-223.members.linode.com)
- # [13:11] * Joins: JohnResig (n=JohnResi@74.201.254.36)
- # [13:11] * Joins: hendry (n=hendry@nox.vm.bytemark.co.uk)
- # [13:11] * Joins: gpy (i=gpy@193.138.219.74)
- # [13:11] * Joins: deltab (n=deltab@82.36.30.34)
- # [13:11] * Joins: michaeln (n=michaeln@nat/google/x-9c55f4ec6837b73b)
- # [13:11] * Joins: Philip` (n=philip@zaynar.demon.co.uk)
- # [13:11] * Joins: benoitc (i=benoitc@enki.osbud.net)
- # [13:22] * Quits: olliej (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net)
- # [13:23] * Quits: virtuelv (n=virtuelv@pat-tdc.opera.com) ("Leaving")
- # [13:24] * Quits: michaeln (n=michaeln@nat/google/x-9c55f4ec6837b73b) (Connection timed out)
- # [13:29] * Joins: webben (n=benh@nat/yahoo/x-828912c5dc3a6c81)
- # [13:32] * Quits: Kuruma (n=Kuruman@h123-176-107-234.catv01.catv-yokohama.ne.jp) (Read error: 104 (Connection reset by peer))
- # [13:32] * Joins: Kuruma (n=Kuruman@h123-176-107-234.catv01.catv-yokohama.ne.jp)
- # [13:34] * Joins: virtuelv (n=virtuelv@pat-tdc.opera.com)
- # [13:43] * Quits: webben (n=benh@nat/yahoo/x-828912c5dc3a6c81)
- # [13:48] * Joins: myakura (n=myakura@p1226-ipbf3201marunouchi.tokyo.ocn.ne.jp)
- # [13:48] * Quits: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [13:49] * Joins: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net)
- # [14:11] <Philip`> Urgh... How can I make a web service that accepts HTML and returns equivalent XHTML, without making the site vulnerable to XSS attacks when external sites make users post forms to the service?
- # [14:13] <Philip`> Would it be safe to require the request content-type to be text/html, and hope that nobody implements the bit of HTML4 that says <form enctype=text/html> should send content-type: text/html?
- # [14:13] <annevk2> what is the vulnerability?
- # [14:14] <Philip`> (Oh, actually, HTML4 doesn't really say it should send with text/html - it's explicitly unspecified behaviour)
- # [14:16] <Philip`> annevk2: The problem is <form method=post action=http://mysite/html-to-xhtml/ enctype=multipart/form-data><input name=x value="<script>alert(document.cookie)</script>"><input type=submit></form> which would execute the script in my domain, since the service returns application/xhtml+xml content
- # [14:17] <annevk2> oh, you should run uch a service on its own domain I think
- # [14:17] <Philip`> That's ugly, so I don't want to do that
- # [14:17] <Philip`> And I can't even think of one domain name yet, so I'm just using the IP address :-p
- # [14:19] <annevk2> well, it's also necessary as far as I can tell to protect yourself
- # [14:19] <annevk2> I might be able to give you some subdomain of html5.org, iirc I set DNS for subdomains in some way
- # [14:24] <Philip`> I'd be happier to just require the request to be text/html, since that seems to work in practice as far as I can tell
- # [14:25] <annevk2> oh, you require POST?
- # [14:25] <Philip`> Yes
- # [14:25] <annevk2> that helps, yes
- # [14:26] <Philip`> (GET requests don't even get sent to the same server process)
- # [14:26] <Philip`> (I'm making this slightly awkward on purpose, because that's more educational)
- # [14:27] <hsivonen> Philip`: XSS concern was the reason why I haven't offered the service as part of parsetree.validator.nu
- # [14:28] <hsivonen> actually, livedom.validator.nu has the same XSS exposure
- # [14:28] <hsivonen> so the actual concern is that running an open proxy might attract the wrong kind of attention
- # [14:29] <Philip`> I require the content to be sent in the request, rather than sending a URL that the service downloads, which should prevent that proxy behaviour
- # [14:31] <Philip`> (and also prevents many DOS attacks, since it avoids multiplying the attacker's effort)
- # [14:37] * Quits: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net)
- # [14:46] * Joins: webben (n=benh@nat/yahoo/x-b8ed898d87fa80a5)
- # [14:48] * Quits: Maurice (n=ano@a80-100-71-209.adsl.xs4all.nl) ("Disconnected...")
- # [14:53] * Quits: zcorpan (n=zcorpan@pat.se.opera.com) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: jruderman (n=jruderma@ip68-5-179-249.oc.oc.cox.net) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: fishd (n=Darin@nat/google/x-32b517af9553e987) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: jgraham (n=jgraham@web22.webfaction.com) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: Kuruma (n=Kuruman@h123-176-107-234.catv01.catv-yokohama.ne.jp) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: bzed (n=bzed@devel.recluse.de) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: didymos (i=jho@rapwap.razor.dk) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: [YaaL] (i=yaal@hell.pl) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: erlehmann (n=nils@dslb-088-074-217-054.pools.arcor-ip.net) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: gsnedders (n=gsnedder@host81-156-236-33.range81-156.btcentralplus.com) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: Dashiva (i=Dashiva@wikia/Dashiva) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: mcarter (n=mcarter@adsl-71-135-99-209.dsl.pltn13.pacbell.net) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: jmb (n=jmb@login.ecs.soton.ac.uk) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: peter-proc (n=retep@procurios.xs4all.nl) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: shepazu (n=schepers@cpe-069-134-123-228.nc.res.rr.com) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: myakura (n=myakura@p1226-ipbf3201marunouchi.tokyo.ocn.ne.jp) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: hsivonen (n=hsivonen@kekkonen.cs.hut.fi) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: takkaria (n=takkaria@isparp.co.uk) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: hdh (n=hdh@118.71.121.36) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: syp (n=syp@lasigpc9.epfl.ch) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: jcranmer (n=jcranmer@ltsp1.csl.tjhsst.edu) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: hendry (n=hendry@nox.vm.bytemark.co.uk) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: JohnResig (n=JohnResi@74.201.254.36) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: nessy (n=nessy@124-171-51-52.dyn.iinet.net.au) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: mal (n=mal@nat/google/x-83e3d8a6e2911459) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: gavin (n=gavin@firefox/developer/gavin) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: wilhelm (i=wilhelm@trivini.no) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: Hixie (i=ianh@trivini.no) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: doublec (n=nnchris@li5-223.members.linode.com) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: hober (n=ted@unaffiliated/hober) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: wakaba (n=wakaba@30.165.210.220.dy.bbexcite.jp) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: michaeln1 (n=michaeln@nat/google/x-0329042055eebd52) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: gavin_ (n=gavin@firefox/developer/gavin) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: deltab (n=deltab@82.36.30.34) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: webben (n=benh@nat/yahoo/x-b8ed898d87fa80a5) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: psa (n=yomode@71.93.19.66) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: gpy (i=gpy@193.138.219.74) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: aaronlev (n=chatzill@g229221062.adsl.alicedsl.de) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: maikmerten (n=merten@ls5laptop14.cs.uni-dortmund.de) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: ROBOd (n=robod@89.122.216.38) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: Amorphous (i=jan@unaffiliated/amorphous) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: benoitc (i=benoitc@enki.osbud.net) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: Philip` (n=philip@zaynar.demon.co.uk) (kubrick.freenode.net irc.freenode.net)
- # [14:53] * Quits: weinig|zZz (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net) (kubrick.freenode.net irc.freenode.net)
- # [14:56] * Joins: [YaaL] (i=yaal@hell.pl)
- # [14:56] * Joins: didymos (i=jho@rapwap.razor.dk)
- # [14:56] * Joins: bzed (n=bzed@devel.recluse.de)
- # [14:56] * Joins: Dashiva (i=Dashiva@wikia/Dashiva)
- # [14:56] * Joins: jgraham (n=jgraham@web22.webfaction.com)
- # [14:56] * Joins: fishd (n=Darin@nat/google/x-32b517af9553e987)
- # [14:56] * Joins: shepazu (n=schepers@cpe-069-134-123-228.nc.res.rr.com)
- # [14:56] * Joins: gsnedders (n=gsnedder@host81-156-236-33.range81-156.btcentralplus.com)
- # [14:56] * Joins: jruderman (n=jruderma@ip68-5-179-249.oc.oc.cox.net)
- # [14:56] * Joins: jmb (n=jmb@login.ecs.soton.ac.uk)
- # [14:56] * Joins: mcarter (n=mcarter@adsl-71-135-99-209.dsl.pltn13.pacbell.net)
- # [14:56] * Joins: zcorpan (n=zcorpan@pat.se.opera.com)
- # [14:56] * Joins: peter-proc (n=retep@procurios.xs4all.nl)
- # [14:56] * Joins: erlehmann (n=nils@dslb-088-074-217-054.pools.arcor-ip.net)
- # [14:56] * Joins: Kuruma (n=Kuruman@h123-176-107-234.catv01.catv-yokohama.ne.jp)
- # [14:56] * Joins: michaeln1 (n=michaeln@nat/google/x-0329042055eebd52)
- # [14:56] * Joins: gavin_ (n=gavin@firefox/developer/gavin)
- # [14:56] * Joins: wakaba (n=wakaba@30.165.210.220.dy.bbexcite.jp)
- # [14:56] * Joins: aaronlev (n=chatzill@g229221062.adsl.alicedsl.de)
- # [14:56] * Joins: maikmerten (n=merten@ls5laptop14.cs.uni-dortmund.de)
- # [14:56] * Joins: ROBOd (n=robod@89.122.216.38)
- # [14:56] * Joins: Amorphous (i=jan@unaffiliated/amorphous)
- # [14:56] * Joins: benoitc (i=benoitc@enki.osbud.net)
- # [14:56] * Joins: gpy (i=gpy@193.138.219.74)
- # [14:56] * Joins: myakura (n=myakura@p1226-ipbf3201marunouchi.tokyo.ocn.ne.jp)
- # [14:56] * Joins: hdh (n=hdh@118.71.121.36)
- # [14:56] * Joins: nessy (n=nessy@124-171-51-52.dyn.iinet.net.au)
- # [14:56] * Joins: takkaria (n=takkaria@isparp.co.uk)
- # [14:56] * Joins: jcranmer (n=jcranmer@ltsp1.csl.tjhsst.edu)
- # [14:56] * Joins: syp (n=syp@lasigpc9.epfl.ch)
- # [14:56] * Joins: hsivonen (n=hsivonen@kekkonen.cs.hut.fi)
- # [14:56] * Joins: mal (n=mal@nat/google/x-83e3d8a6e2911459)
- # [14:56] * Joins: hendry (n=hendry@nox.vm.bytemark.co.uk)
- # [14:56] * Joins: JohnResig (n=JohnResi@74.201.254.36)
- # [14:56] * Joins: doublec (n=nnchris@li5-223.members.linode.com)
- # [14:56] * Joins: gavin (n=gavin@firefox/developer/gavin)
- # [14:56] * Joins: hober (n=ted@unaffiliated/hober)
- # [14:56] * Joins: wilhelm (i=wilhelm@trivini.no)
- # [14:56] * Joins: Hixie (i=ianh@trivini.no)
- # [14:57] * Joins: deltab (n=deltab@82.36.30.34)
- # [14:58] * Joins: webben (n=benh@nat/yahoo/x-b8ed898d87fa80a5)
- # [14:58] * Joins: weinig|zZz (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net)
- # [14:58] * Joins: psa (n=yomode@71.93.19.66)
- # [14:58] * Joins: Philip` (n=philip@zaynar.demon.co.uk)
- # [14:58] * Quits: Philip` (n=philip@zaynar.demon.co.uk) (Read error: 104 (Connection reset by peer))
- # [15:01] * Quits: virtuelv (n=virtuelv@pat-tdc.opera.com) ("Leaving")
- # [15:04] * Joins: virtuelv (n=virtuelv@pat-tdc.opera.com)
- # [15:04] * Joins: Philip` (n=philip@zaynar.demon.co.uk)
- # [15:16] * Quits: virtuelv (n=virtuelv@pat-tdc.opera.com) ("Leaving")
- # [15:18] * Joins: virtuelv (n=virtuelv@pat-tdc.opera.com)
- # [15:20] * Quits: aaronlev (n=chatzill@g229221062.adsl.alicedsl.de) ("ChatZilla 0.9.83-rdmsoft [XULRunner 1.9.0.1/2008072406]")
- # [15:20] * Joins: aaronlev (n=chatzill@g229221062.adsl.alicedsl.de)
- # [15:25] * annevk2 grmbls at "event loop"
- # [15:26] * annevk2 wonders if he should copy "fetch" from HTML5 too
- # [15:27] <annevk2> I like HTML5 defining all this stuff, but architecturally it's a bit of a mess, but maybe that's ok
- # [15:27] * Joins: Maurice (n=copyman@cc90688-a.emmen1.dr.home.nl)
- # [15:31] <virtuelv> annevk2: I still want the ByteArray
- # [15:31] * Joins: smerp (n=smerp@66.192.95.199)
- # [15:32] <annevk2> virtuelv, me too! :)
- # [15:38] * Quits: virtuelv (n=virtuelv@pat-tdc.opera.com) ("Leaving")
- # [15:39] * Joins: virtuelv (n=virtuelv@pat-tdc.opera.com)
- # [15:42] * Quits: nessy (n=nessy@124-171-51-52.dyn.iinet.net.au) ("This computer has gone to sleep")
- # [15:42] * Joins: wakaba_ (n=wakaba@30.165.210.220.dy.bbexcite.jp)
- # [15:42] * Quits: wakaba_ (n=wakaba@30.165.210.220.dy.bbexcite.jp) (Client Quit)
- # [15:48] <annevk2> oops, fetch assumes async
- # [16:01] * Quits: virtuelv (n=virtuelv@pat-tdc.opera.com) ("Leaving")
- # [16:05] * Joins: csarven (n=csarven@80.76.201.52)
- # [16:10] * Quits: myakura (n=myakura@p1226-ipbf3201marunouchi.tokyo.ocn.ne.jp) ("Leaving...")
- # [16:13] * Quits: weinig|zZz (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net) (Read error: 104 (Connection reset by peer))
- # [16:13] * Joins: weinig (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net)
- # [16:14] * Joins: smedero (n=smedero@mdp-nat251.mdp.com)
- # [16:29] * Joins: tndH (n=Rob@james-baillie-pc083-058.student-halls.leeds.ac.uk)
- # [16:48] * Joins: aroben (n=aroben@unaffiliated/aroben)
- # [16:53] * Quits: maikmerten (n=merten@ls5laptop14.cs.uni-dortmund.de) (Remote closed the connection)
- # [17:00] * Joins: BenMillard (i=cerbera@cpc1-flee1-0-0-cust285.glfd.cable.ntl.com)
- # [17:11] * Joins: aaronlev_ (n=chatzill@f051069072.adsl.alicedsl.de)
- # [17:13] * Joins: MikeSmith (n=MikeSmit@EM114-48-11-192.pool.e-mobile.ne.jp)
- # [17:19] * Joins: hdh0 (n=hdh@118.71.121.36)
- # [17:20] * Joins: dglazkov (n=dglazkov@nat/google/x-698e75bfd22104a7)
- # [17:30] * Quits: aaronlev (n=chatzill@g229221062.adsl.alicedsl.de) (Read error: 110 (Connection timed out))
- # [17:31] * Joins: erlehmann_ (n=nils@dslb-088-074-217-054.pools.arcor-ip.net)
- # [17:31] * Quits: erlehmann (n=nils@dslb-088-074-217-054.pools.arcor-ip.net)
- # [17:38] * Quits: hdh (n=hdh@118.71.121.36) (Read error: 110 (Connection timed out))
- # [17:39] <annevk2> sicking, yo?
- # [17:40] <annevk2> sicking, I'm wondering whether "remove cache entries" should remove everything regardless of "credentials flag" or not
- # [17:40] <annevk2> weinig, ^^
- # [17:43] * Quits: peter-proc (n=retep@procurios.xs4all.nl) ("( www.nnscript.com :: NoNameScript 4.21 :: www.esnation.com )")
- # [17:48] * Quits: weinig (n=weinig@c-71-198-176-23.hsd1.ca.comcast.net)
- # [18:07] * Joins: hallvors (i=hallvord@ip-48-28-149-91.dialup.ice.no)
- # [18:20] * Joins: weinig (n=weinig@nat/apple/x-68b67fbf734d38b6)
- # [18:36] * Joins: eric_carlson (n=ericc@17.202.33.235)
- # [18:39] <sicking> annevk2, hm
- # [18:39] <sicking> annevk2, i don't implement the remove stuff yet, so haven't thought about it
- # [18:39] <sicking> annevk2, seems like the safest is to remove more rather than less
- # [18:39] <sicking> annevk2, should be a rare case anyway that something is removed, right?
- # [18:45] * Parts: BenMillard (i=cerbera@cpc1-flee1-0-0-cust285.glfd.cable.ntl.com)
- # [18:51] <hsivonen> hmm. it seems that HTML fragments in Gecko get an ancestor chain of context instead of just a parent
- # [18:51] <hsivonen> I wonder if it makes any difference in practice
- # [18:53] * Quits: hober (n=ted@unaffiliated/hober) ("ERC Version 5.3 (IRC client for Emacs)")
- # [18:54] * Quits: erlehmann_ (n=nils@dslb-088-074-217-054.pools.arcor-ip.net)
- # [19:06] * Quits: eric_carlson (n=ericc@17.202.33.235)
- # [19:06] * Joins: svl (n=me@ip565744a7.direct-adsl.nl)
- # [19:10] * Joins: eric_carlson (n=ericc@nat/apple/x-05a37d0139ca0312)
- # [19:12] * Joins: renke2 (n=user@Ld8e6.l.pppool.de)
- # [19:14] <sicking> hsivonen, IMHO we should do neither
- # [19:14] <sicking> hsivonen, but yes, we build the whole chain
- # [19:14] <sicking> hsivonen, partially because the parser is built to parse whole documents
- # [19:18] <sicking> hsivonen, actually, this is something that we should chat about, seeing that you are quite experienced with parsing HTML5 at this point :)
- # [19:19] * Quits: eric_carlson (n=ericc@nat/apple/x-05a37d0139ca0312) (Read error: 104 (Connection reset by peer))
- # [19:19] <sicking> hsivonen, in which cases does it actually make a difference to use the parent as a context, vs. using no context?
- # [19:24] * Joins: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net)
- # [19:36] * Quits: tndH (n=Rob@james-baillie-pc083-058.student-halls.leeds.ac.uk) ("ChatZilla 0.9.83-rdmsoft [XULRunner 1.9.0.1/2008072406]")
- # [19:42] * Joins: tndH (n=Rob@james-baillie-pc083-058.student-halls.leeds.ac.uk)
- # [19:47] * Joins: ianloic (i=yakk@glub.dreamhostps.com)
- # [20:06] <Philip`> hsivonen: It's a bit annoying that the tokeniser has a finally{} block that calls endDocument on the contentHandler which might be an XmlSerializer which calls writer.close(), because that closes the output stream and prevents me writing some error notification after an exception was thrown from the parser
- # [20:06] * Joins: maikmerten (n=maikmert@L8968.l.pppool.de)
- # [20:33] * Quits: hdh0 (n=hdh@118.71.121.36) (Remote closed the connection)
- # [20:41] <annevk2> sicking, yeah, it's a rare case
- # [20:41] * Joins: renke3 (n=user@Lf4fb.l.pppool.de)
- # [20:41] <annevk2> sicking, basically, when things don't go as expected
- # [20:41] <sicking> annevk2, right, so nuke it all IMHO
- # [20:41] * Joins: renke4 (n=user@Lf513.l.pppool.de)
- # [20:41] <sicking> annevk2, btw, is 'with credentials' part of the primary key now?
- # [20:42] <annevk2> ok, I'll leave it as is then, although I might inline "remove cache entries" at some point
- # [20:42] <sicking> annevk2, (or intended to be)
- # [20:42] * Joins: olliej (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net)
- # [20:42] <annevk2> sicking, I haven't checked that change in
- # [20:42] <annevk2> sicking, I was waiting for you to see what to do with "remove cache entries" before making that change
- # [20:42] <sicking> ok
- # [20:42] <sicking> so what is the intent after you have checked in?
- # [20:43] <annevk2> that it's part of the primary key
- # [20:43] <sicking> sweet
- # [20:44] <annevk2> the optimization for non credentialed requests doesn't seem worth the effort
- # [20:44] <sicking> agreed
- # [20:44] <sicking> the alternative is to specify the semantic meaning of the various headers
- # [20:44] <sicking> and then let the spec cache as it pleases
- # [20:44] <sicking> err
- # [20:45] <sicking> and then let the spec implementation as it pleases
- # [20:46] * Joins: aboodman (n=aboodman@nat/google/x-36b68c4801b9be00)
- # [20:47] <annevk2> I rather have it like this it's crystal clear what is to be done
- # [20:47] <sicking> ok
- # [20:55] * Joins: erlehmann (n=nils@echelon.ext.c-base.org)
- # [21:00] * Quits: renke3 (n=user@Lf4fb.l.pppool.de) (Read error: 110 (Connection timed out))
- # [21:01] * Quits: renke2 (n=user@Ld8e6.l.pppool.de) (Connection timed out)
- # [21:03] * Joins: renke3 (n=user@Lf784.l.pppool.de)
- # [21:18] * Quits: smedero (n=smedero@mdp-nat251.mdp.com)
- # [21:19] * Quits: renke4 (n=user@Lf513.l.pppool.de) (Connection timed out)
- # [21:20] * Quits: othermaciej (n=mjs@c-71-202-125-190.hsd1.ca.comcast.net)
- # [21:25] <annevk2> sicking, I checked in the change for allowing HEAD and made the credentials flag part of the primary key
- # [21:28] <annevk2> http://econym.org.uk/gmap/chrome.htm#winding correct criticism?
- # [21:29] * Quits: aaronlev_ (n=chatzill@f051069072.adsl.alicedsl.de) ("ChatZilla 0.9.83-rdmsoft [XULRunner 1.9.0.1/2008072406]")
- # [21:30] <annevk2> came from this thread: http://groups.google.com/group/Google-Maps-API/browse_thread/thread/562c3614e8ba034c
- # [21:30] * Quits: olliej (n=oliver@c-24-130-131-58.hsd1.ca.comcast.net)
- # [21:31] <Hixie> annevk2: i'd love for this stuff to be in its own spec
- # [21:31] <Hixie> Philip`: easiest way to avoid xss problems is to avoid having anything on the domain that is valuable
- # [21:33] * Quits: renke3 (n=user@Lf784.l.pppool.de) (Connection timed out)
- # [21:34] <Philip`> Hixie: But I always complain about other people's XSS holes even when they're revealing no data of any value whatsoever, so I mustn't have the same problem on my own site
- # [21:40] <Hixie> Content-Disposition might be a solution then
- # [21:40] <Hixie> or returning the data as the wrong mime type
- # [21:41] * Joins: renke3 (n=user@Lf9ef.l.pppool.de)
- # [21:43] <Philip`> Is there a practical problem if I require the request to be text/html? (I can't see any way to send that via a <form>)
- # [21:44] <Philip`> (and if someone changes HTML or browsers in the future so they can send text/html, that's their fault for introducing security vulnerabilities in perfectly adequate web sites)
- # [21:44] <annevk2> if that happens it would require Access Control opt in for cross-site requests
- # [21:45] <Hixie> what's zcorpan's e-mail address again?
- # [21:45] <annevk2> simonp@opera.com
- # [21:46] * Joins: nessy (n=nessy@124-171-51-52.dyn.iinet.net.au)
- # [21:46] <Hixie> Philip`: wf2 has a mechanism to upload arbitary files, but i've removed that feature in html5
- # [21:46] <Hixie> annevk2: thx
- # [21:47] <csarven> http://www.w3.org/html/wg/html5/#the-address-element "Typically, the address element would be included with other information in a footer element." -- How was this determined?
- # [21:48] <Hixie> how do you mean?
- # [21:49] <csarven> The "typical" bit.
- # [21:49] <csarven> Is that based on verifiable data or just a conjecture?
- # [21:51] <Hixie> conjecture
- # [21:51] <csarven> I would venture to say that a good chunk of <address> data is used in the header along with the site logo.
- # [21:52] <Hixie> i imagine that happens too
- # [21:52] <csarven> I'm actually trying to reverify this: http://www.csarven.ca/logo-identity-in-address-and-document-heading#address_for_documents_contact_information
- # [21:52] * fakeolliej is now known as olliej
- # [21:54] <csarven> Hixie Got an opinion on that (or the whole article)? Agree/disagree?
- # [21:54] * Quits: roc (n=roc@121-72-165-176.dsl.telstraclear.net)
- # [21:54] <Hixie> logos don't really seem to belong there
- # [21:54] <csarven> In any case, I would suggest to rewrite the part that suggests where <address> may "typically" occur.
- # [21:54] <Hixie> but otherwise sure
- # [21:55] <Hixie> by the time the spec is done, that sentence will hopefully be true :-)
- # [21:56] <csarven> I tend to agree that <img> is a bit misplaced there
- # [21:56] <Philip`> Hixie: Hmm, I suppose the ability to upload arbitrary files could be a useful feature, so I might as well support it and not make it be an XSS hole, since Content-Disposition seems like an adequately non-evil way of preventing browsers executing scripts from the response, so that sounds good :-)
- # [21:57] <csarven> Which is not so good as microformats are concerned since doing <address class="vcard"> and <img class="logo"> goes along pretty well as far as hCard is concerned.
- # [21:57] <erlehmann> WHAT
- # [21:58] <csarven> erlehmann Directed at me?
- # [21:59] <Hixie> Philip`: :-)
- # [21:59] <erlehmann> csarven: so, only for fun ;)
- # [22:00] * Quits: maikmerten (n=maikmert@L8968.l.pppool.de) (Remote closed the connection)
- # [22:07] * Joins: renke4 (n=user@Lfe75.l.pppool.de)
- # [22:12] * Joins: virtuelv (n=virtuelv@163.80-202-65.nextgentel.com)
- # [22:13] * Quits: Amorphous (i=jan@unaffiliated/amorphous) (Read error: 110 (Connection timed out))
- # [22:15] * Joins: renke2 (n=user@Lff27.l.pppool.de)
- # [22:16] * Joins: Amorphous (i=jan@unaffiliated/amorphous)
- # [22:22] * Quits: webben (n=benh@nat/yahoo/x-b8ed898d87fa80a5) (Success)
- # [22:25] <Philip`> Hmph, Firefox (3) doesn't accept xhr.open('POST', '')
- # [22:25] <Philip`> (NS_ERROR_ILLEGAL_VALUE, it says)
- # [22:27] * Quits: renke3 (n=user@Lf9ef.l.pppool.de) (Connection timed out)
- # [22:29] * Quits: renke4 (n=user@Lfe75.l.pppool.de) (Connection timed out)
- # [22:31] * Quits: MikeSmith (n=MikeSmit@EM114-48-11-192.pool.e-mobile.ne.jp) (Read error: 104 (Connection reset by peer))
- # [22:32] * Quits: ROBOd (n=robod@89.122.216.38) (Remote closed the connection)
- # [22:37] <Philip`> http://92.243.11.39/html-to-xhtml/ - hooray, it's a thing
- # [22:37] <Philip`> It would be a pretty pointless thing, except the point was to encourage me to set up the server and it has mostly succeeded at that
- # [22:38] <Philip`> But I still need a witty domain name
- # [22:38] <csarven> Philip` <link> gets translated to <link></link>
- # [22:39] <Philip`> csarven: That's intentional
- # [22:39] <Philip`> (hsivonen's intent, in particular)
- # [22:39] <csarven> Oh alright, I suppose true for all empty/null elements? Appears to be for <img> as well.
- # [22:40] <Philip`> Yes - the serialiser always simply emits a start tag, then the (possibly empty) content, then the end tag
- # [22:41] <Philip`> which is a perfectly valid way to serialise XML, even if it's a bit weird :-)
- # [22:44] <Philip`> The inability to return a 500/etc error code after you've started sending the response seems like an unfortunate missing feature in HTTP :-(
- # [22:44] <Philip`> (unless it's a feature that exists but I've failed to notice)
- # [22:45] * Joins: roc (n=roc@202.0.36.64)
- # [22:47] * Joins: KevinMarks (n=KevinMar@217.205.226.212)
- # [22:47] * Quits: svl (n=me@ip565744a7.direct-adsl.nl) ("And back he spurred like a madman, shrieking a curse to the sky.")
- # [22:48] <csarven> Hixie Perhaps it can be argued that <img> *is* contextually valid inside <address>, since it provides contact information for the document. That is, the image (photo/logo) outlines what the entity looks like - which is a form of identifying an entity in order to communicate.
- # [22:49] <Hixie> csarven: i suppose it could also be argued that the whole document belongs in <address> since it provides a way to recognise the document, which is a form of identity...?
- # [22:50] <csarven> iff the information in the rest of the document is 'about' the identity.
- # [22:51] <Hixie> the idea of <address> is to put contact information in there... the less information ends up there the better, since that way it's very clear.
- # [22:52] <csarven> microformats touched on this with 'representative hCard's as it distinguishes an identity that is outlined in <address> from the author or contact information of the page.
- # [22:55] <csarven> I understand the argument about keeping it clear and focusing on common contact information like email, phone, physical address (iff need to contact by snail mail), however, the argument also works for existing practises in the wild where an entity stamps itself not just with that information but also with its logo/photo. In a way, logo/photo is not easily separated.
- # [22:56] <csarven> As I've mentioned earlier, the typical placement of <address> information can be found anywhere (e.g., header)
- # [22:59] * Hixie shrugs
- # [22:59] <Hixie> i wish we could just drop <address> altogether
- # [23:00] <Hixie> typically though i have most often seen that element in the footer of pages
- # [23:00] <Hixie> and i think that makes sense
- # [23:01] <csarven> I agree to some extent, however, it is very common to find a site put up its logo and contact information at the top of the page. If this is treated as <address> then they don't have to repeat this information at the bottom of the page.
- # [23:01] * Hixie grumbles about IE having select.options === select
- # [23:02] <Hixie> csarven: they don't have to repeat that information even if they don't use address
- # [23:02] <Hixie> csarven: they don't have to use address
- # [23:03] <csarven> Ok, let's put this aside for a sec and look into two things and perhaps they can reveal some insight.
- # [23:03] <csarven> 1. Do we agre that logos should use <img> ?
- # [23:03] <Hixie> as opposed to what?
- # [23:03] <csarven> CSS
- # [23:03] * Quits: KevinMarks (n=KevinMar@217.205.226.212) (Connection reset by peer)
- # [23:03] <Hixie> either is fine
- # [23:04] * Joins: KevinMarks (n=KevinMar@217.205.226.212)
- # [23:04] <csarven> Well, placing a logo in CSS doesn't help much when you try to print the document.
- # [23:04] <Hixie> why?
- # [23:04] <csarven> Plus it is not for decoration and rather content oriented.
- # [23:04] <Hixie> *shrug*
- # [23:04] <Hixie> depends on how it is used
- # [23:04] <Hixie> the logo on damowmow.com is decorative
- # [23:05] <Hixie> as is the logo on damowmow.com/portal
- # [23:05] <csarven> How so? You have it in <img> as opposed to CSS.
- # [23:06] <Hixie> there's fundamentally very little difference between having <img alt="..." src=x> and having <span>...</span> with span { content: url(x); }
- # [23:06] <Hixie> it's an <img> on damowmow.com/ and in CSS on damowmow.com/portal/
- # [23:07] <csarven> I disagree because if an image is for decoration (as opposed to having contextual meaning in the document) then it should be in CSS, no?
- # [23:08] <Hixie> doesn't really matter
- # [23:08] <Hixie> if it's page-specific, it's easier to have it in the markup
- # [23:08] <Hixie> if it's site-wide, the css
- # [23:08] <csarven> If you identify yourself with the cat, then that is your logo. That is your branding. It is not just for illustration for the page because the cat has a meaning.
- # [23:09] <Hixie> coca cola identifies itself with the colour red, that is its branding. does that mean we should put the red into the markup?
- # [23:10] <Hixie> you are attempting to layer black-and-white requirements on a fuzzy and judgement-call-laden area.
- # [23:10] <csarven> Of course not. The colour red is part of their brand guidelines. The 'logo' is the whole (the name 'coca-cola' and the red and white..). Coca-cola doesn't brand itself out only with the colour red.
- # [23:11] <Hixie> google brands itself using a specific sequence of colours on the letters of words using a specific font
- # [23:12] <Hixie> to the point where a random word, without the word "google" anywhere, using the right font and colours, can be immediately identified as google-related
- # [23:12] <Hixie> should we use <font color face> for such words?
- # [23:13] <Dashiva> <googleword>Apple</googleword>
- # [23:13] <csarven> No we should not because as part of their guidelines, the logo (image, typography, sizes, objects...) is unique.
- # [23:14] * Quits: hallvors (i=hallvord@ip-48-28-149-91.dialup.ice.no) (Read error: 110 (Connection timed out))
- # [23:14] <csarven> In order to be consistent and maintain that on all platforms, they need to use an image.
- # [23:14] <Hixie> there are many cases where we don't care if it doesn't turn out quite right
- # [23:14] <Hixie> especially on our intranet site
- # [23:14] <Hixie> in such cases there is no image
- # [23:15] <csarven> That's fine, but that is part Google's branding guidelines, that is, they are not that strict.
- # [23:15] <Hixie> ian.hixie.ch's header shows something similar
- # [23:15] <csarven> Which is not the case for many orgs.
- # [23:15] <Hixie> my point is that this is not clear cut
- # [23:15] <Hixie> and people should use their judgement when deciding what to put in css and what to put in html
- # [23:16] <csarven> I think logos need to preserved and be consistent and match the guidelines of the org as far as what is allowed and not allowed.
- # [23:16] <csarven> If consistency is not an issue for an org, sure, CSS will do.
- # [23:17] <csarven> In all other cases, <img> is more appropriate IMHO.
- # [23:18] <Hixie> you're not going to get much more consistency from img than from css
- # [23:18] * Quits: Maurice (n=copyman@cc90688-a.emmen1.dr.home.nl) ("Disconnected...")
- # [23:19] <csarven> 2. (Let's say we are using <img> for logos for the sake of this discussion) Can we agree that <h1><img></h1> is inappropriate since the document is not 'about' the contents of the image. (e.g., If I'm writing an article about cats, it should say something like <h1>I love cats</h1> instead of having <h1><img></h1>)
- # [23:21] <csarven> Here, I'm talking about the proper use of <h1>.
- # [23:22] <Hixie> depends what the img src is
- # [23:23] <Hixie> <h1><img src="googlelogo.png" alt="Google"></h1> is quite appropriate
- # [23:23] <csarven> Agreed, for that case.
- # [23:24] <csarven> http://damowmow.com is okay too in that case.
- # [23:25] <csarven> I'm referring to an ordinary document... say a blog post, a wiki page.
- # [23:25] <Hixie> <h1><img src="wikipedia.png" alt="Wikipedia"></h1> seems fine too
- # [23:25] <Hixie> also <h1><img src="blogheader.png" alt="Hixie's Natural Log"></h1>
- # [23:26] <Hixie> in all these caes, it would be fine to just replace the text with an image using CSS, too
- # [23:26] <Hixie> where are you going with this?
- # [23:26] <csarven> Is the rest of the document *about* "Wikipedia"?
- # [23:26] <Hixie> no, the <h1> here is the site header
- # [23:26] <Hixie> the <h2> would be the page header
- # [23:27] <csarven> Site header?
- # [23:27] <csarven> Why would <h1> speak for the rest of the site as opposed to the current document?
- # [23:27] <Hixie> how else do you give a site header?
- # [23:27] <csarven> Can you give me an example of a 'side header' content?
- # [23:27] <Hixie> imagine the site as one big page, which was then chopped into multiple smaller pages
- # [23:27] <Hixie> sure
- # [23:28] <gsnedders> csarven: It's the highest level header. The fact that it applies to more than just that page is irrelevant
- # [23:28] <Hixie> the html5 spec's multipage version
- # [23:29] <gsnedders> On an unrelated note, I'm amazed people haven't bitched about all the @id in HTML 5 changing
- # [23:29] <gsnedders> (or at least, not that I've heard)
- # [23:29] <csarven> Hixie "<h1>HTML 5</h1>" ?
- # [23:29] <Hixie> gsnedders: one person bitched to me privately because it totally broke the multipage links
- # [23:29] <Hixie> csarven: right
- # [23:30] <gsnedders> Hixie: But only one person?
- # [23:30] <csarven> IMO, that should have been marked as: <h1>HTML 5 <span>Draft Recommendation — 6 October 2008</span></h1>
- # [23:31] <Hixie> gsnedders: so far
- # [23:31] <Hixie> csarven: well, the <div class="head"> should be a <header>, but that's another problem
- # [23:31] <csarven> The reason is simply because when I'm about to read a document, <h1> should indicate what I'm about to read.
- # [23:31] <Philip`> Hasn't it broken single-page links just as much as multipage links?
- # [23:31] <Hixie> Philip`: yes
- # [23:31] <Philip`> since in both cases it'll just go to the top of the page, not the desired target
- # [23:31] <Hixie> Philip`: but the guy got a 404 and complained
- # [23:32] <Hixie> because the page filenames changed too
- # [23:32] <csarven> Hixie Just to be sure, you were referring to http://www.whatwg.org/specs/web-apps/current-work/multipage/ correct?
- # [23:32] <Hixie> csarven: yes
- # [23:32] <csarven> Is that document used in <object> elsewhere?
- # [23:32] <Philip`> Hixie: Oh, I thought it was set up so 404 pages would redirect you
- # [23:32] <csarven> Either way, I don't understand what 'site header' means.
- # [23:33] <Hixie> Philip`: only if the fragment identifier is recognised
- # [23:33] <Philip`> Hixie: Argh, fragment-links.js is broken
- # [23:33] <csarven> Hixie Perhaps 'Site header' should be handled by <title>?
- # [23:33] <Hixie> csarven: a header that applies to multiple pages
- # [23:34] <Hixie> csarven: this is all already discussed in the spec, i don't see anything wrong with what's there currently
- # [23:34] <Hixie> csarven: what problem are you trying to solve?
- # [23:34] <csarven> Do we have other elements that applies to multiple pages?
- # [23:34] <Hixie> i don't understand what you mean by "applies to multiple pages"
- # [23:35] <csarven> Hixie http://www.csarven.ca/logo-identity-in-address-and-document-heading
- # [23:35] <csarven> [17:29:13] <Hixie> i don't understand what you mean by "applies to multiple pages" -- I was trying to understand [17:28:15] <Hixie> csarven: a header that applies to multiple pages
- # [23:35] <Hixie> the header is on multiple pages
- # [23:35] <Hixie> just like the "HTML5" header is present on multiple pages
- # [23:35] <Hixie> the element itself doesn't apply to multiple pages
- # [23:36] <Hixie> it's the header that is present on all those pages
- # [23:36] <Philip`> gsnedders: You should have told me that you'd make IDs with "'"s in them :-(
- # [23:36] <gsnedders> Philip`: I make IDs with anything allowed in ifragment
- # [23:36] <gsnedders> Philip`: It's in the docs!
- # [23:36] <Hixie> jesus fricking christ IE's handling of <option> elements is screwed up
- # [23:36] <Hixie> it crashes at the slightest problem
- # [23:37] <csarven> Hixie What good is it to indicate that a heading is repeated in other documents on the site? Is there an accurate way to determine this? I don't think <h1> indicates this (or should) in any way. <h1> is just suggesting what the current document is about. Am I going slightly insane? :)
- # [23:37] <Hixie> and does really weird things otherwise
- # [23:37] <Hixie> csarven: have you read the spec?
- # [23:37] <Philip`> gsnedders: You can't expect me to read the docs :-p
- # [23:38] <gsnedders> Philip`: I wasn't expecting you to :P
- # [23:38] <gsnedders> Philip`: I was being sarcastic :P
- # [23:38] <Hixie> csarven: specifically http://www.whatwg.org/specs/web-apps/current-work/#distinguishing-site-wide-headings-from-page-headings
- # [23:38] <csarven> Hixie What I'm trying to solve is a consistent way to represent logos, contact information and the main document heading.
- # [23:39] <csarven> Hixie You got me there. I have not read that bit (nor came across it)
- # [23:39] <Hixie> csarven: that's not a problem, that's a solution. what's the problem?
- # [23:39] <Hixie> (well, it's a requirement for a solution, not an actual solution)
- # [23:39] <csarven> The problem is simply people are incorrectly marking up their documents and there is a great variance in how people use those components
- # [23:39] <Hixie> why is that a problem?
- # [23:40] <csarven> Not consistent
- # [23:40] <Hixie> so?
- # [23:40] <Hixie> welcome to humanity.
- # [23:40] <Hixie> we're inconsistent.
- # [23:40] <csarven> Can we strive for some consistency?
- # [23:40] <Hixie> deal with it. :-)
- # [23:40] <gsnedders> I'm not!
- # [23:40] <Hixie> why?
- # [23:40] <gsnedders> I'm completely consistent!
- # [23:40] <Hixie> what is the benefit of being consistent? what problem would it solve?
- # [23:40] <gsnedders> Hixie: We get to be predictable!
- # [23:41] <csarven> Well, having an agreed upon vocab (and its implementation) leads to good things. Can we not agree there? :)
- # [23:41] <gsnedders> I mean, it's completely predictable I'll never ask my <3 out, because I'm a hopeless romantic! I'm consistent!
- # [23:41] * Quits: KevinMarks (n=KevinMar@217.205.226.212) (Connection reset by peer)
- # [23:41] <Philip`> http://www.whatwg.org/specs/web-apps/current-work/multipage/404#introduction - fixed now
- # [23:41] <Hixie> csarven: i agree that we should have some level of consistency, so that, for example, users of accessibility tools can read pages as well.
- # [23:41] <Philip`> (I'll continue blaming gsnedders for that bug)
- # [23:42] <Hixie> csarven: what good things? i'm not going to worry about hypothetical good things here. we have enough real problems to deal with.
- # [23:42] <Hixie> Philip`: the problem was bigger than that -- the IDs had changed, so there was nowhere to redirect
- # [23:42] <Hixie> Philip`: effectively http://www.whatwg.org/specs/web-apps/current-work/multipage/404#404
- # [23:43] <csarven> Well a simple example would be that if we have a common way of marking a logo (and being able to identify it in a document) will allow us to extract that information from the document with tools.
- # [23:43] <Hixie> wtf am i going to do with select.add() and select.remove() and select.options.add() and select.options.remove()
- # [23:43] <csarven> <img class="logo">
- # [23:43] <gsnedders> Philip`: What was the bug?
- # [23:43] <Hixie> csarven: who on earth is trying to extract logos with tools?
- # [23:43] <csarven> Oh, I don't know... microformats?
- # [23:44] <Hixie> csarven: if we really wanted to make logos easily extractable, we'd just do something like <link rel=icon src=...>
- # [23:44] <Hixie> csarven: "microformats" is not a person
- # [23:44] <csarven> :)
- # [23:44] <Philip`> gsnedders: http://www.whatwg.org/specs/web-apps/current-work/multipage/fragment-links.js was saying "var fragment_links = { ...,'the-'icon'-property':'rendering',... }"
- # [23:44] <csarven> Hixie I'm going towards the use of hCards here.
- # [23:44] <gsnedders> Hixie: There was an RSS reader that used RSS's image element to give a logo with the feed
- # [23:45] <Philip`> Hixie: You're going to spec what IE does
- # [23:45] <Hixie> Philip`: no, i'm not, IE makes select.options === select and crashes for most arguments i tried to pass to select.add()
- # [23:46] <gsnedders> Philip`: Why did you assume that there couldn't be '?
- # [23:46] <Philip`> gsnedders: Because there wasn't '
- # [23:46] * gsnedders blames bert
- # [23:49] <Philip`> If browsers popped a big ugly modal error dialog when there was a script error, I would have noticed this bug instead of letting it exist unknown for weeks
- # [23:49] <Philip`> s//up /
- # [23:50] * weinig is now known as weinig|coffee
- # [23:52] <gsnedders> Philip`: Like XML errors?
- # [23:52] <Philip`> gsnedders: Exactly
- # [23:52] <gsnedders> Philip`: Once browsers implement that, can we write ECMAScript 5 that specs how to deal with syntax errors non-fatally
- # [23:56] <Hixie> OH MY GOD. <select> and select.options are SO FRICKING MESSED UP.
- # [23:56] <Hixie> i even blogged about this before: http://ln.hixie.ch/?start=1161042744&count=1
- # [23:56] <Dashiva> Welcome to our world
- # Session Close: Tue Oct 07 00:00:00 2008
The end :)