00:29
<Hixie>
nessy: do you have an opinion on whether we need to support roll-up or incrementally displayed titles, as you see on live TV broadcasts?
00:29
<nessy>
they are typically used for live captioning
00:30
<nessy>
so, for live streaming, probably yes, though I don't quite know how that would work
00:30
<Hixie>
yeah that was my next question - do we need to support live streaming, and what would that mean?
00:30
<Hixie>
presumably any live streamed captions would just be in the video file itself, rather than as an external file?
00:30
<Hixie>
or am i wrong?
00:33
<nessy>
I don't know, to be honest
00:33
<nessy>
I think what could be possible for live captions is to continuously write into an srt fil with timing and we would have to pick it up as it goes
00:34
<nessy>
but if it is included in the media file, then it's nothing different
00:34
<Hixie>
well if it's in the media file i conveniently don't have to worry about defining the format for it
00:34
<Hixie>
or the rendering semantics
00:34
<nessy>
indeed :)
00:34
<nessy>
ah, I think you still do
00:34
<Hixie>
so it's different in one rather important way :-)
00:34
<Hixie>
well i'm not defining e.g. the TTML rendering semantics
00:34
<nessy>
the rendering should be done the same no matter if it comes from an external file or from a media resource, IMO
00:35
<nessy>
incrementally displayed captions are still necessary since that is what karaoke does, no?
00:35
<Hixie>
i don't think that's possible, e.g. if an embedded timed track is a video of sign language, it can't possibly be rendered using the same CSS rules as an external SRT-like file.
00:35
<nessy>
no, I'm only talking about text tracks
00:36
<nessy>
external sign language video cannot be rendered into text either
00:36
<Hixie>
what's a "text" track? Is SVG+SMIL a "text" track?
00:36
<Hixie>
is TTML?
00:36
<Hixie>
would HTML+SMIL be?
00:37
<nessy>
I was talking about media-internal text tracks there, but yes, external files that are synchronised with the media would be regarded as virtual text tracks
00:37
<nessy>
if the browser can parse TTML, then it is a virtual text track
00:38
<Hixie>
we can define the rendering model of some formats, e.g. explaining where the text gets aligned, how it gets its styles from CSS, what happens if they are overlapping in time and how to do automatic stacking, etc, but we can't do that if the format has a built-in rendering model like XSL:FO or SVG
00:38
<nessy>
if the browser can parse HTML+SMIL and it is built to be a time-aligned text file, then yes, though with all of SMIL it generally would not be
00:38
<Hixie>
imho
00:39
<nessy>
I was hoping we could take the styles given in any format (including things like SSA, TTML, even SMILText) and transcode what is possible to CSS and then render it - then if the Web developer is overriding those stylings, that is fine
00:39
<nessy>
just like any media player does a best effort with caption formats that it supports
00:39
<Hixie>
that's an inane amount of work
00:40
<Hixie>
it's basically defining how you map XSL:FO to CSS, which is something the CSS and XSL working groups have avoided doing for about a decade
00:40
<nessy>
writing a image or video decoding library is, too - I regard these as text decoding libraries
00:40
<nessy>
and text decoding should be simpler ;)
00:40
<Hixie>
it's not
00:41
<Hixie>
if someone writes that spec, i'm willing to reconsider, but i think it would take me ~1 to 2 years to write such a spec, full-time
00:41
<nessy>
you don't have to map all of XSL:FO - only the stuff that TTML supports
00:41
<Hixie>
i'm talking about what TTML supports
00:41
<nessy>
really? there's not that much there, I thought...
00:42
<Hixie>
CSS and things like the inline box model are complicated to a degree that i cannot overstate
00:42
<nessy>
but indeed - until such time, it will not fit into the model and not be parsable
00:42
<Hixie>
well it can be parseable
00:42
<Hixie>
i don't see why we'd prevent it from being supported and rendered
00:42
<Hixie>
it just wouldn't automatically slide out of the way like multiple SRT captions could
00:42
<nessy>
how would you do that?
00:42
<Hixie>
it would effectively just be treated as a video stream
00:43
<Hixie>
wouldn't be affected by CSS pseudos or whatever mechanism we come up with to style srt-like subtitles (assuming we go with an srt model styled with pseudo-elements)
00:43
<nessy>
that's what Sean wants, I think … not sure I agree...
00:44
<nessy>
why wouldn't the content of a TTML <div> be treated like a srt-like subtitle and be able to apply the pseudo-elements to?
00:44
<nessy>
even if everything inside is "like a video stream"
00:44
<Hixie>
pseudo-elements apply at the inline box model level
00:45
<nessy>
we should not define an inline box model for srt - we should define an inline box model for cues, no matter where they come from
00:45
<Hixie>
CSS already has an inline box model. It's different than TTML's.
00:45
<Hixie>
i don't suggest we invent an inline box model.
00:45
<Hixie>
that way lies madness
00:46
<nessy>
ok, but you are creating boxes for srt
00:46
<Hixie>
i don't suggest creating boxes for srt
00:46
<nessy>
I suggest not to do that, but to create boxes for cues
00:46
<Hixie>
i suggest just defining how srt maps to css boxes
00:46
<Hixie>
maybe i'm not sure what you mean by "box"
00:46
<Hixie>
i am talking about CSS inline, line, and block boxes
00:46
<nessy>
and the cues could be handed "transparently" from TTML or any other format, just like decoded text - independent how that decoding is done
00:46
<Hixie>
TTML isn't text
00:46
<Hixie>
it's preformatted pixels
00:47
<Hixie>
just like HTML+CSS
00:47
<Hixie>
i don't know how to convey the complexity involved in defining a rendering model
00:47
<nessy>
can we deal with TTML as pre-formatted pixels by in a box per cue
00:48
<Hixie>
well we could but what does that give us?
00:48
<Hixie>
doesn't TTML define positioning?
00:48
<nessy>
only in relation to a "root area"
00:48
<nessy>
where we place the "root area" is up to us
00:49
<Hixie>
well we can't make the root area much less than the whole video, unless the text is going to end up very small or cropped
00:49
<nessy>
hmm … but I think I am starting to see what you mean ...
00:49
<Hixie>
surely
00:50
<nessy>
that's really f*ed up, actually
00:50
<nessy>
cause of course TTML thinks it knows how to avoid objects, but it only knows how to avoid objects in the video, not on anything else rendered on top by other streams
00:51
<Hixie>
that's a problem most formats are going to have
00:51
<Hixie>
even any we define
00:51
<nessy>
i's going to have to be solved by the Web author - cannot be done automatically
00:52
<nessy>
btw: Sean did say that when, e.g. the controls slide on from the bottom, the "root area" would need to be adjusted for TTML and would be reduced by that size
00:53
<nessy>
but that's a special case that the browser can deal with
00:54
<Hixie>
btw can you think of a use case for the author disabling a track that would normally be enabled by default? e.g. disabling chapter navigation tracks, or captions in the user's language when the user has opted into always seeing those captions?
00:54
<nessy>
otoh Eric said that this won't work with pilot-control-type centered controls
00:55
<nessy>
I think the author would disable all subtitling tracks by default - the browser would enable the one relevant to the user - and the user could select one or two of their choice
00:57
<Hixie>
yeah, i mean does the author ever need to override that default to make a track be disabled even if it would in this case be enabled?
00:57
<nessy>
but if you mean through javascript - can't think of an example.. probably not - the author should respect the user's wishes
00:57
<Hixie>
presumably chapter navigation tracks are always enabled by default
00:58
<nessy>
not necessarily
00:58
<Hixie>
(by "enabled" i mean downloaded and visible if it's a subtitle/caption track or in the ui if it's a navigation/chapters track)
00:58
<Hixie>
why ont?
00:58
<Hixie>
not?
00:58
<nessy>
if you have a video file that has all these tracks but as an author you just want the video to play back clean without any of the stuff, you might turn off all these tracks
00:59
<nessy>
that reminds me somewhat of the difference between open and closed captions
00:59
<Hixie>
surely if you have chapter navigation information you wouldn't link to it but then make it so that the chapter navigation UI had to download the file when the user tried to use it
01:00
<nessy>
with external files I agree, but if they are part of the video resource, you probably wouldn't bother removing it
01:00
<nessy>
also, you might want the clean display, but still give the user the ultimate opportunity to turn them on
01:01
<Hixie>
i'm only talking about external files here
01:01
<Hixie>
presumably turning off chapter navigation tracks wouldn't hide the UI from the user? i guess i'm confused
01:01
<nessy>
hmm - maybe something like a movie where you want the playback to be clean, but you want to give ppl the opportunity to jump to a different chapter if they want to
01:02
<Hixie>
i don't expect chapter navigation tracks to do anything visible except give ppl the opportunity to jump to a different chapter if they want to
01:02
<Hixie>
am i wrong?
01:02
<nessy>
I would prefer to have them displayed actually
01:02
<Hixie>
i mean, JS can use them to display fancy stuff, sure
01:02
<Hixie>
oh
01:02
<nessy>
anything that is not visible doesn't really exist
01:02
<Hixie>
well it's visible
01:02
<Hixie>
it's right there in the menu
01:03
<nessy>
brb - phone call
01:06
<nessy>
I'm thinking of a display like http://junkyard.damowmow.com/414
01:07
<nessy>
most video players that I saw that used chapter markers effectively actually displayed them in relation to the timeline (the scrubbing bar)
01:07
<nessy>
best example are the ted talks, see http://www.arguingwithmyself.com/wordpress/wp-content/uploads/ted-video-player.png
01:07
<Hixie>
sure
01:08
<Hixie>
but we'd want that enabled by default no?
01:08
<Hixie>
i mean why would the author want that off?
01:09
<Hixie>
the reason i'm asking is to work out if i need enabled="true"/enabled="false" vs just enabled="" and no way to explicitly disable, even if the default is enabled
01:09
<nessy>
because presumably it's overlayed over the video and takes away viewing space from the video?
01:09
<nessy>
I guess it depends where it is being rendered
01:09
<Hixie>
surely not while the video is playing without controls
01:09
<Hixie>
only when the controls are up
01:09
<Hixie>
i mean as you said, it's linked to the scrubbing bar
01:10
<nessy>
well, both Safari and Google Chrome don't make the scrubbing bar disappear
01:10
<Hixie>
they don't?
01:10
<nessy>
if you have @controls, they stay there all the time
01:11
<nessy>
only Opera and Firefox make them disappear if you are not with your pointer in the video viewport
01:11
<Hixie>
it disappears for me in chrome
01:11
<othermaciej>
nessy: we do different things depending on whether the video is stopped or playing
01:12
<Hixie>
i would be shocked if it didn't disappear in safari
01:12
<nessy>
also, Safari has a different way for doing @controls that doesn't seem to involve a scrubbing bar, but only a play/pause button over the top of the video - I think they use that on iPhone and iPad - but I didn't see that with my own eyes, just heard it is like that
01:13
<nessy>
oh, I see - during playback they disappear
01:13
<nessy>
I guess that's ok then
01:14
<othermaciej>
if you go to this URL in Safari you can see what happens: http://v11.lscache2.c.youtube.com/videoplayback?ip=0.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Calgorithm%2Cburst%2Cfactor%2Coc%3AU0dWRllMV19FSkNNNl9RRkFH&fexp=900161&algorithm=throttle-factor&itag=18&ipbits=0&burst=40&sver=3&expire=1271919600&key=yt1&signature=1D5F628D66DBA39A8E15797752F29A16E02534AE.56973AF9547D1EC293EA36511175ECEBE89675BD&factor=1.25&id=7e357b92b998a1b2
01:14
<othermaciej>
(our view for a direct link to a video file uses the <video> element with controls)
01:14
<nessy>
I just checked with my examples - you are right
01:15
<nessy>
do you know what it looks like on the iPad?
01:16
<nessy>
(btw: that link doesn't load for me - but any video example will do)
01:20
<TabAtkins_>
Looks like Youtube expires direct links pretty quickly.
01:21
<nessy>
so, Hixie, I guess I look at the chapter markers in the same way that I look at the @controls - should be able to be enabled and disabled
01:21
<Hixie>
nessy: i guess i still don't understand what it would mean to disable them
01:21
<nessy>
make them disappear
01:21
<nessy>
on a mobile phone for example?
01:22
<Hixie>
nessy: wouldn't that by a UA issue?
01:22
<Hixie>
nessy: when "disabled" would you still want the controls to allow the user to use them to jump to a chapter?
01:22
<othermaciej>
nessy: you should be able to check in the iPad simulator, this video also claims to describe what it looks like: http://www.youtube.com/watch?v=ZpNhcuT8Wk8
01:22
<nessy>
optimally, yes
01:23
<nessy>
thanks othermaciej
01:23
<othermaciej>
I guess there is no "controls" example there
01:23
<Hixie>
nessy: would it still fire events?
01:23
<othermaciej>
but I bet you can find video or a screenshot on the Web
01:23
<othermaciej>
I think inline video playback on iPad is similar to desktop Safari
01:23
<nessy>
yeah, probably more so than iPhone or iPod
01:24
<nessy>
Hixie, I'm careful about not removing too much functionality and therefore flexibility
01:25
<nessy>
but I don't think we need to worry too much about this right now - I'm sure the first implementations will give us a better insight
01:25
<nessy>
I haven't done enough experiments with chapter markers myself on this to be sure
01:25
<Hixie>
well it makes a huge difference in the design of the markup
01:25
<Hixie>
which is why i need to worry about this now :-)
01:27
<nessy>
but will you handle chapters differently to captions and subtitles etc?
01:27
<Hixie>
this question applies to all the tracks
01:27
<nessy>
ok
01:28
<Hixie>
but only chapters seem to make this complicated
01:29
<nessy>
so the real question is: "if i need enabled="true"/enabled="false" vs just enabled="" " ?
01:29
<Hixie>
yeah
01:30
<nessy>
we're talking about an attribute here?
01:30
<nessy>
so, if it's a boolean attribute, then removing it has the same effect as enabled="false" ?
01:33
<Hixie>
not necessarily
01:33
<Hixie>
there are three states
01:33
<Hixie>
enabled, disabled, and default
01:34
<Hixie>
for example most captions are disabled by default, except if the user has requested captions by default
01:35
<Hixie>
the question is whether we need the "disabled" state
01:35
<nessy>
ah, the three states from yesterday?
01:35
<Hixie>
not really
01:35
<nessy>
you might have chapters in different languages?
01:35
<Hixie>
this is more about what gets downloaded
01:35
<Hixie>
hm, interesting
01:36
<Hixie>
how would a user pick the language of chapters he wanted?
01:36
<nessy>
same as subtitles or captions
01:36
<Hixie>
i've never seen any dvd tv or online media player with a "chapter titles language" option
01:36
<nessy>
I'm hoping there will be a default language preference for time-aligned text and the browser does a pre-set
01:36
<nessy>
that the user can override
01:37
<nessy>
let me check TED - I think they change languages also for chapters
01:40
<nessy>
e.g. http://www.ted.com/talks/irwin_redlener_warns_of_nuclear_terrorism.html
01:41
<nessy>
so, they don't change the language of the chapter markers, but I think it's really irritating
01:41
<nessy>
they even change the text on the right in the about box, so having the chapters still in English seems illogical to me
01:42
<Hixie>
ok, so i guess the default for chapters is to be disabled except if the language matches the user's language somehow, with a max of one enabled?
01:43
<Hixie>
if we do that, does that mean we no longer need a disabled state?
01:43
<nessy>
what is the state if they are disabled?
01:44
<Hixie>
not downloaded, don't fire events
01:44
<Hixie>
for subtitles, available to be turned on from the UI
01:44
<nessy>
I'm still strugging to follow your three state / two state model, in particular when you say it's different to what we discussed yesterday
01:45
<nessy>
sorry for being difficult
01:46
<Hixie>
i'm not really expressing myself very well
01:46
<Hixie>
mostly because i'm still trying to clarify it in my mind
01:46
<nessy>
designing a spec is difficult :)
01:47
<nessy>
so, I understand there are three states:
01:47
<Hixie>
yesterday we were talking about do-not-download, download-and-show, and download-and-hide. I think we can do away with the download-and-show vs download-and-hide distinction because it applies at the level of what kind of timed track it is -- e.g. metadata is never download-and-show, and subtitles are never download-and-hide
01:47
<Hixie>
but that's the actual state of the track while the video is playing
01:47
<nessy>
indeed, those three :)
01:48
<Hixie>
there's a related concern, which is what the initial state should be
01:48
<nessy>
what if a user interacts and turns subtitles off while they are playing?
01:48
<nessy>
then it would go from download-and-show to downloaded-and-hidden sorta?
01:49
<Hixie>
that'd be do-not-download again, although it'd be already downloaded
01:49
<Hixie>
but it wouldn't fire events
01:49
<Hixie>
anyway there are basically two possible initial states, the same two states we end up with up there: do-not-download-or-fire-events, and download-and-show/hide-as-appropriate,-and-fire-events
01:50
<nessy>
let me dissect this a bit
01:50
<Hixie>
however, there are three ways to express that for an author: do-whatever-is-appropriate (the default), never-download-this-even-if-the-user-wants-it, and always-download-and-show/hide-as-appropriate,-and-fire-events-even-if-the-user-doesn't-want-it
01:51
<Hixie>
my question is whether there's a use case for "never-download-this-even-if-the-user-wants-it"
01:51
<Hixie>
there's obviously a use case for "do-whatever-is-appropriate (the default)"
01:51
<Hixie>
and there's a use case for "always-download-and-show/hide-as-appropriate,-and-fire-events-even-if-the-user-doesn't-want-it", namely custom controls where the user has set defaults the UA doesn't know about
01:51
<nessy>
probably not - if a user wants it, it should be downloaded and shown
01:53
<nessy>
I'm currently seeing 4 different, but dependent dimensions: download (yes/no), display (yes/no), fire events (yes/no), user wants (yes/no)
01:53
<nessy>
and we call them all "enable/disable"
01:54
<Hixie>
heh
01:54
<Hixie>
yeah
01:54
<Hixie>
the matrix of those options is pretty sparse though in terms of what we need to support
01:54
<Hixie>
e.g. download=no display=yes makes no sense :-)
01:54
<nessy>
I'm trying to follow your linearisation of that matrix ;)
01:55
<nessy>
when you way "user wants" - that's either "author wants events" or "user wants display", right? so we can get rid of that dimension?
01:55
<nessy>
s/way/say/
01:57
<Hixie>
"user wants" is always "user wants display", i think, for some definition of "display" that includes chapter navigation appearing in a drop-down menu
01:58
<nessy>
or elsewhere on screen
01:59
<nessy>
then "never-download-this-even-if-the-user-wants-it-displayed" surely is not viable
02:02
<Hixie>
k
02:07
<nessy>
so, I can see three definite states and two not so sure
02:07
<nessy>
1) no download, no display, no events
02:07
<nessy>
2) download, display, events
02:07
<nessy>
3) download, no display, events
02:07
<nessy>
maybe also
02:08
<nessy>
4) download, display, no events (though as maciej said yesterday, this is an optimisation in the browser and doesn't really need its own state)
02:08
<nessy>
and something of a "pre-load" nature could be:
02:08
<nessy>
5) download, no display, no events
02:09
<nessy>
5) would also be the state it gets into when a track is turned off manually
02:10
<nessy>
Hixie: does that match your model?
02:14
<Hixie>
1 and 5 are basically the same state
02:14
<nessy>
so, maybe these for attribute values: "disabled" (1), "preload" (5), "enabled" (3), "display" (2)
02:14
<Hixie>
4 i agree is unnecessary
02:15
<Hixie>
2 and 3 i think depends more on the kind of track than anything else
02:15
<nessy>
1 and 5 make a bandwidth use difference
02:15
<Hixie>
you wouldn't ever put a subtitle track into state 3, or a metadata track into state 1, right?
02:15
<Hixie>
er
02:15
<Hixie>
you wouldn't ever put a subtitle track into state 3, or a metadata track into state 2, right?
02:15
<nessy>
I'd hesitate to define behaviour based on the kind of track something is - I would prefer to do a generic model that works with all tracks
02:16
<Hixie>
i'm alergic to generic models :-P
02:16
<Hixie>
5 is a state you'll only reach by going through one of the others -- i don't see a use case for reaching it otherwise
02:16
<nessy>
get over it :P
02:16
<Hixie>
i'm really very skeptical of (over-)generalising things
02:16
<Hixie>
if there is a use case for the more general model i'm all for it
02:17
<nessy>
I'm not overly fussed about state 5 as an initial state - it could be used to encourage the browser to download the file in preparation for later use
02:17
<nessy>
but then, text resources are rather small generally, so shouldn't be too much of an issue
02:17
<Hixie>
there's another state too: a) download, no display, render to audio, events
02:17
<nessy>
such as?
02:17
<Hixie>
and another: c) download, no display, show on timeline, events
02:17
<Hixie>
a = text audio description tracks
02:17
<Hixie>
c = chapter titles
02:18
<nessy>
when I say "display" I mean "rendering"
02:19
<Hixie>
right, but i'm arguing that the kinds of rendering -- including no rendering -- are the same axis as the kind of track
02:19
<nessy>
but here I follow your model of - "what rendering means is obvious from the kind of track it is" :P
02:19
<Hixie>
imho there's no need to distinguish at the authoring level a chapter navigation track from a subtitles track
02:19
<Hixie>
they can both be SRT or whatever
02:19
<nessy>
well, my argument is that the UA will know what rendering means for the type of resource - it's not up to the author to decide
02:20
<Hixie>
when you label it as a chapter track, then you ignore positioning and just display it on the timeline
02:20
<Hixie>
how?
02:20
<Hixie>
if the author doesn't say what's what kind of track, how does the UA know?
02:20
<nessy>
that's what the @role attribute is for
02:21
<nessy>
I hope you're not intending to also mix the @role values into the @enabled attribute values?
02:21
<Hixie>
i'm arguing that you're mixing them up in your description
02:21
<Hixie>
but that they are distinct
02:22
<Hixie>
whether something is firing events and being appropriately displayed or not is orthogonal to how it should be displayed
02:22
<nessy>
yes, they are distinct
02:23
<nessy>
indeed - I was arguing because it's an orthogonal matter how they should be displayed, I don't have to worry about that dimension when I talk about firing events/displaying it
02:23
<nessy>
the means of display is on a different and totally independent dimension
02:24
<nessy>
but we should get back to the question "you wouldn't ever put a subtitle track into state 3, or a metadata track into state 2, right?"
02:25
<nessy>
I can see a subtitle track in state (3) if I don't want to UA to display the subtitles, but rather want as an author to display them myself
02:25
<nessy>
in an appropriate manner to my custom interface
02:26
<Hixie>
wouldn't that just be a metadata track?
02:26
<nessy>
as for state (2) on metadata - indeed there would not be a UA default display for metadata - the state is still valid, though, it's just an empty display
02:26
<nessy>
no, it's still subtitles
02:26
<Hixie>
hmm
02:26
<Hixie>
i'll have to think on this some more
02:26
<Hixie>
gotta go for dinner now though
02:27
<Hixie>
thanks for being patient with my learning stage :-)
02:27
<nessy>
thanks for being patient with my lack of using the right terminology in places :)
02:27
<nessy>
enjoy dinner!
02:29
<nessy>
just to finish off on the subtitles: even if they are not displayed and waiting for JavaScript to display them, they could still be in some kind of menu for the user to turn on as subtitles
02:29
<nessy>
anyway - talk later :)
06:17
<boblet>
gsnedders: request: textarea for HTML5 Outliner to test pages & snippets via copy&paste
06:20
<zcorpan>
oooh, microsoft writes a new Appendix C for html5
06:24
<annevk>
it's really that bad?
06:24
<annevk>
good times
06:24
<annevk>
it's on my todo list
06:25
<zcorpan>
i didn't say it was bad
06:25
<zcorpan>
although it has some errors
06:25
<zcorpan>
wait utf-16 is not valid for html5?
06:27
zcorpan
only sees "Authors should not use UTF-32, as the encoding detection algorithms described in this specification intentionally do not distinguish it from UTF-16."
06:30
<zcorpan>
oh sam meant in the <meta>
06:38
<annevk>
Appendix C was bad
06:56
<zcorpan>
NoCredXMLHttpRequest
06:57
<zcorpan>
NoCookiesXMLHttpRequest
06:58
<zcorpan>
XMLHttpRequestOmitCookies (to make them next to each other in indexes and autocomplete)
07:00
<annevk>
it's not just cookies and credentials is also somewhat too limited for what it does
07:01
<zcorpan>
just need a name that people will understand what it does (roughly)
07:01
<zcorpan>
and when to use which
07:01
<annevk>
ContextFreeXMLHttpRequest
07:01
<annevk>
but it's a bit long
07:02
<zcorpan>
XMLHttpRequestNoContext
07:02
<annevk>
you think it should be at the end?
07:02
<zcorpan>
yeah
07:02
<zcorpan>
to make them next to each other in indexes and autocomplete
07:05
<annevk>
suggested on list
07:10
<annevk>
thanks zcorpan!
07:11
<annevk>
hopefully this'll work
07:23
<jstar-taiwan>
hi, how does <canvas> degrade on handheld/mobile devices ?
07:24
<annevk>
it doesn't degrade really
07:24
<annevk>
it works
07:25
<zcorpan>
on opera mini it becomes a static image (but onclick works by reloading the page or so) iirc
07:25
<jstar-taiwan>
annevk, how is that possible on devices build before html5 epoque ?
07:26
<zcorpan>
jstar-taiwan: opera works on old devices ;)
07:26
<zcorpan>
jstar-taiwan: in browsers that don't support canvas, the contents are shown
07:28
<jstar-taiwan>
zcorpan, so users have to get a browser that support html5 and canvas to this this content otherwise nothin ?
07:30
<zcorpan>
yeah, although the fallback content doesn't have to be nothing, it could be something useful
07:32
<annevk>
filed http://www.w3.org/Bugs/Public/show_bug.cgi?id=9577
07:33
<annevk>
I suppose an alternative solution is to convince Jonas to break some pages temporarily
07:33
<jstar-taiwan>
zcorpan, oh~ the content inside the <canvas> is a fallback like the <video> or this kind of thing
07:34
<zcorpan>
jstar-taiwan: yes
07:35
<annevk>
othermaciej, you mean XMLHttpRequestGuest would also be ok?
07:35
<annevk>
othermaciej, with "also suffix variants"
07:36
<annevk>
othermaciej, that sounds relatively short and nice
07:36
<othermaciej>
annevk: yeah, I think any of the variants I gave would work as a suffix as well as a prefix
07:36
<othermaciej>
annevk: Mark Miller's original suggestion way back when was GuestXHR
07:36
<zcorpan>
XMLHttpRequestForPorn!
07:40
<zcorpan>
"guest" is a term forum sites use when you're not logged in
07:41
<annevk>
"anon"/"anonymous" too...
07:41
<othermaciej>
zcorpan: yeah, I think anything that conveys that "not logged in" idea is good
07:42
<othermaciej>
it's hard to find a term that is more accurate yet still succinct
07:42
<othermaciej>
in a way a string parameter might be nicer because something like new XMLHttpRequest("NoCredentials") is a little easier to read than new NoCredentialsXMLHttpRequest() or new XMLHttpRequestNoCredentials()
07:43
<annevk>
we could do that too
07:43
<jstar-taiwan>
string parameters is more flexible/extendable
07:44
<jstar-taiwan>
that mean prone to standards extension as well as proprieatries one
07:44
<annevk>
sure, but hopefully we are not going to overload this much more
07:44
<annevk>
requests are already frigging complicated
07:44
<zcorpan>
argument is harder to feature test
07:44
<annevk>
also a good point
07:44
<annevk>
actually, in this case you could just do try/catch
07:45
<zcorpan>
if (window.XMLHttpRequestGuest) is similar to how people test for XMLHttpRequest support today
07:45
<othermaciej>
zcorpan: good point, that's definitely a point in favor of a named constructor
07:46
<othermaciej>
another possibility is to make the new constructor a property of the main one, so it could be XMLHttpRequest.NoCredentials()
07:46
<othermaciej>
not sure that reads very well though
07:46
<othermaciej>
new XMLHttpRequest.NoCredentials()
07:46
<othermaciej>
new XMLHttpRequest.Guest()
07:46
othermaciej
shrugs
07:46
<zcorpan>
seems weird
07:47
<othermaciej>
it would read better with a :: instead of a . but you can't do that in JAvaScript
07:49
<annevk>
that would require new Web IDL syntax too
07:49
<annevk>
currently all constructors are exposed on the global object
07:51
<othermaciej>
a separate constructor that constructs objects of the same time might be bad for non-JS languages like Java
07:52
<zcorpan>
XMLHttpRequestGuest could be an empty interface that inherits from XMLHttpRequest
07:53
<othermaciej>
why do you guys prefer suffixed names to prefixed?
07:53
<othermaciej>
(not saying I disagree, just curious)
07:54
<zcorpan>
to make them next to each other in indexes and autocomplete
07:54
<annevk>
othermaciej, we already have that with e.g. new Image(); also, I'd very much encourage non-JavaScript languages to stay the hell away from XMLHttpRequest :)
07:54
<TabAtkins__>
Best. Webdesign. Ever. --> http://www.yvettesbridalformal.com/
07:54
<othermaciej>
I'm not sure "next to each other in autocomplete" is good
07:54
<othermaciej>
indexes, I can see
07:54
<zcorpan>
same reason microdata attributes share the same prefix
07:55
<othermaciej>
annevk: people are interested in making complete WebKit DOM bindings for other languages such as Objective-C or Python
07:55
<othermaciej>
not to run inside Web pages, but rather so that an app using WebKit can exercise the full power of the Web platform without having to go through JavaScript
07:55
<othermaciej>
annevk: also, new Image() is just a shortcut, it doesn't provide a genuine new capability
07:56
<othermaciej>
you could always createElement("img") and then set its src attribute by hand
07:57
<annevk>
hmm, apparently NamedConstructor is JavaScript-only
07:57
<annevk>
would be interesting to know if it's really impossible for other languages to have something similar
07:58
<othermaciej>
zcorpan's "empty interface subclass" idea seems good to me
07:58
<othermaciej>
that would work for any language that can support constructors at all (which is pretty much any language of interest I think)
07:59
<annevk>
if we subclass it should probably be prefixed
07:59
<annevk>
that's more or less the convention
07:59
<zcorpan>
also allows checking if (foo instanceof XMLHttpRequestGuest)
07:59
<zcorpan>
annevk: true
08:00
<annevk>
though we can also suffix and use implements
08:00
<annevk>
that's also a convention :)
08:00
<othermaciej>
I think a subclass makes sense logically, since there is a change in behavior
08:01
<annevk>
i'm not sure it's much different from using XHR inside a sandboxed iframe to be honest
08:03
<othermaciej>
that's like saying CORS is not a change in behavior because it's not much different from using XHR inside an off-site iframe and talking to it with postMessage
08:04
<annevk>
it's different for e.g. <img> requests that are later painted on <canvas>
08:05
<annevk>
the XHR in a sandboxed iframe scenario can be implemented by a simple library and requires no cooperation
08:07
<othermaciej>
annevk: my point is just that "you could do this a different way" doesn't refute the statement that it's a change in behavior
08:08
<othermaciej>
annevk: a change in behavior could be represented as a mode flag instead of a subclass, but since there is a separate constructor anyway, it may as well be a subclass
08:09
<annevk>
guess overall i'm still a little unsure whether this will actually see adoption
08:09
<annevk>
and similar problems we solved with modeflags so far
08:09
<annevk>
such as withCredentials
08:11
<othermaciej>
annevk: seems like Caja will want to use it at least - not sure how much that counts for
08:12
<annevk>
if Caja was really important I'm sure Chromium would've had the feature by now
08:13
<othermaciej>
yes, because Google's product strategy is 100% in sync across all parts of the company :-)
08:17
<annevk>
I guess not, but I haven't heard a whole lot about it to be honest
08:19
<annevk>
also, if you put Caja in sandboxed iframes, is it still needed?
08:19
<annevk>
in fact, do you still need Caja if you have sandboxed iframes?
08:19
<othermaciej>
I think sandboxed iframes are a better solution than Caja
08:19
<othermaciej>
you could use both together
08:20
<othermaciej>
I am not sure the Caja people like that idea
08:20
<annevk>
they don't seem to really like the Web
08:21
<othermaciej>
what do you mean?
08:22
<annevk>
never mind
08:23
<othermaciej>
I think they definitely dislike the Web security model
08:23
<othermaciej>
which is reasonable, because the Web security model is ridiculous
08:23
<othermaciej>
I just happen to think that working with it is more sensible than fighting against it
08:25
<annevk>
yup
08:53
<gsnedders>
boblet: Frequent request. I don't really intend on spending time on the outliner :)
09:08
<boblet>
gsnedders: heh. What about a longer URL input field then?
09:10
<gsnedders>
Too much effort ;P
09:10
gsnedders
thought he'd published the source somewhere
09:11
<boblet>
ouch! :)
09:12
<boblet>
np yo
09:18
<annevk>
from http-state
09:18
<annevk>
<meta http-equiv="Set-Cookie" content="foo=bar; path=/; domain=.some.tld">
09:18
<annevk>
apparently works
09:18
<annevk>
good times
09:20
<zcorpan>
hah
09:21
<annevk>
i'll file a bug
09:23
<annevk>
http://www.w3.org/Bugs/Public/show_bug.cgi?id=9578
09:32
<zcorpan>
doesn't seem to be a spec bug since the spec only supports a limited set of values
09:32
<annevk>
browsers do too
09:32
<annevk>
and why wouldn't it be a spec bug then?
09:33
<zcorpan>
set-cookie is not in the spec's set of values
09:33
hsivonen
wonders how Chrome Frame will interact with IE9
09:34
<annevk>
zcorpan, you think that browsers should remove support for set-cookie?
09:34
<hsivonen>
(the full IE9--not the preview)
09:34
<zcorpan>
annevk: yeah. unless it's required for compat
09:35
<hsivonen>
chances are it is...
09:35
<hsivonen>
I don't know, though
09:35
<annevk>
zcorpan, seems likely to be required
09:35
<zcorpan>
http://www.google.com/codesearch?q=http-equiv%5Cs%2A%3D%5Cs%2A%28%22%7C%27%29%3Fset-cookie&hl=en&btnG=Search+Code
09:35
<zcorpan>
crap
09:35
<annevk>
zcorpan, but otherwise we can use it as reminder to file bugs on WebKit/Gecko
09:36
<annevk>
it's pretty easy to support though
09:36
<annevk>
just invokes the same algorithm as document.cookie when parsing the element
09:37
<othermaciej>
annevk: that's so evil
09:38
<othermaciej>
which browsers support it?
09:38
<annevk>
http://trac.webkit.org/browser/trunk/WebCore/dom/Document.cpp#L2256 :)
09:38
<annevk>
reportedly also Mozilla; haven't found anything about IE but given the search query above I suspect everyone does
09:39
<othermaciej>
I had no idea we did that
09:39
<othermaciej>
I wonder when that was added, and why
09:46
<annevk>
seems to be pre-WebKit
09:46
asmodai
wonders why Firefox is leaking memory like crazy.
09:46
<asmodai>
It's now at 1,6 GB of mem :|
09:48
<zcorpan>
92: <xsl:if test="not($server-side-transformation)">
09:48
<zcorpan>
93: <meta http-equiv="Set-Cookie" content="xslt=true; path=/; " />
09:48
<zcorpan>
94: </xsl:if>
09:48
<zcorpan>
213: <noscript>
09:48
<zcorpan>
214: <meta http-equiv="Set-Cookie" content="js=false; path=/; " />
09:48
<zcorpan>
215: </noscript>
09:49
<asmodai>
Did that Lorentz build get merged into 3.6.4?
09:51
<asmodai>
ah yes it did
09:53
<annevk>
zcorpan, kawaii
10:48
<asmodai>
Mmm, I guess it was Skype's plugin/addon that might have caused the insane leakage. Got to love how they install it during normal install
10:49
<roc>
we have a bug on file where certain tests related to cross-origin video loading fail if and only if Skype is running
10:49
<roc>
I fear it
10:50
<asmodai>
Well, in this case it's FF 3.6.4 (beta) and installed Skype yesterday and it seems to not ask whether or not to install those toolbars.
10:51
<asmodai>
Also sucks, on my laptop, when I listen to music on the headphones and then start Skype, bloody thing manages to temporarily push my audio over the speakers >_<
10:51
<asmodai>
oh crap, maybe I celebrated too early
10:51
<asmodai>
I'm not doing anything in FF at the moment and I see it grow by 200-300 kilobyte increments
10:52
<asmodai>
from 500 MB to 512 MB in just a minute or so. :S
11:00
<asmodai>
mmm, 590 MB now. so that's like 78 MB in 5 minutes
11:00
<asmodai>
Not good at all.
11:02
<hsivonen>
asmodai: Firefox 3.6.latest?
11:02
<zcorpan>
try the Quit Firefox menu item
11:13
<gsnedders>
I hear Opera works well.
11:16
<zcorpan>
http://sam.zoy.org/wtfpl/ lol
11:16
<Philip`>
gsnedders: I thought you usually spent all day finding ways in which Opera works badly
11:17
<zcorpan>
that's why it works well
11:18
<Philip`>
http://tunes.org/legalese/bugroff.html - these kinds of licenses seem quite popular
11:19
<jgraham>
Assuming gsnedders work well
11:32
<Lachy>
the WTFPL licence is self contradictory. It says you can do whatever you want to without restriction, but then imposes the restriction that modified versions of the licence must also change the name.
11:33
<zcorpan>
yeah
11:33
<gsnedders>
WTF?
11:37
<Dashiva>
Lachy: If you can do whatever you want, surely that includes ignoring the license
11:38
<asmodai>
hsivonen: 3.6.4 beta 1 I think it's called
11:38
<Lachy>
Dashiva, yes, it does. The FAQ below it even says you can relicence it if you don't like the terms
11:38
<hsivonen>
those licenses may seem cute as long as you don't want your software to be included in Debian or otherwise be built-upon
11:39
<Philip`>
Lachy: Why do you assume the WTFPL license text is licensed under the WTFPL?
11:39
<Philip`>
The GPL text isn't GPL and doesn't permit any modifications at all
11:39
<zcorpan>
hsivonen: you can just change the license
11:40
<Dashiva>
hsivonen: It claims WTFPL-licensed programs are in debian already
11:42
<Lachy>
Philip`, the way the WTFPL is written, it says that the licence itself is the work being licenced. It doesn't say that the terms apply to the work being licenced.
11:42
<Lachy>
i.e. where it says "Everyone is permitted to copy and distribute verbatim or modified copies of this *license document*," (emphasis added)
11:43
<Dashiva>
It's intended to be used as a header, surely
11:43
<Philip`>
Lachy: The way I read it, that paragraph is a standalone statement about the license text and has no relevance to what the license is licensing
11:44
<Dashiva>
Although that doesn't grant any rights to compile code
11:44
<Philip`>
(It's the same as the first paragraph of http://www.gnu.org/licenses/gpl.html)
11:47
<Lachy>
hmm, ok. It's still a really poorly written licence
11:47
<Dashiva>
It doesn't seem to actually solve anything compared to BSD/MIT
11:47
<Philip`>
Lachy: That's basically the whole point of the license
11:48
<Philip`>
It's like BSD/MIT without trying to be legally correct and unambiguous
11:49
<Philip`>
If they'd added a dozen more lines to explain exactly what was being licensed then there'd no longer be any reason to use it
11:51
<Dashiva>
Perhaps we're going about this the wrong way. Rather than license the work, license the author
11:51
<Dashiva>
"I hereby license everything I ever produce to everyone everywhere"
11:52
<Philip`>
What does "produce" mean?
11:52
<Philip`>
Would it include your children?
11:53
<Dashiva>
That would infringe on the children's rights, though
11:54
<Philip`>
Seems better to stick with the GPL's approach of using the tools provided by copyright law to circumvent the original goals of copyright law, rather than doing something totally different and pretending the legal details don't matter
11:55
<Dashiva>
How about getting a notarized letter proving you died 150 years ago?
11:56
<Lachy>
actually, it could be argued that the GPL does more to promote the original goal of copyright, which was to promote creativity, that what current copyright laws actually do themselves.
11:58
<Dashiva>
Original goals aren't part of the law in many jurisdictions
11:58
Philip`
is considering the original goal to be the reduction of copying
11:58
<Philip`>
(rather than the more indirect original goals that were hoped to be achieved by doing that)
11:58
<Lachy>
well, I guess, if you consider what the printing presses wanted to maintain their monopolies for
12:00
<Lachy>
but the US constituion's statement about copyright is to promote the progress of science and the useful arts (or something like that), the the GPL most certainly does more for progress than overly restrictive copyright laws
12:00
gsnedders
wouldn't say copyright laws really prohibit that
12:01
<gsnedders>
Copying work isn't needed for the progress of science and the useful arts
12:01
<gsnedders>
What needed is the ability to recreate experiements in science (which is not copying in a copyright sense), and in the arts each work tends to be a word in and of itself
12:01
<Dashiva>
Nobody cares about the constitution unless they can interpret it to agree with their own view
12:02
<jgraham>
gsnedders: That's not really true
12:02
<Philip`>
Dashiva: Sounds like the HTML WG charter
12:02
<Dashiva>
I wonder why
12:03
<Dashiva>
And the original intent is often the first victim in such interpretations
12:04
<Lachy>
Dashiva, that's true. The supreme court blatently ignored the original intent of the constitution when they ruled that that micky mouse protection act wasn't unconstitutional, even though any sane person would realise that it was.
12:05
gsnedders
wonders what things in the US constitution haven't been contradicted
12:05
gsnedders
doubts there are any
12:06
<Philip`>
If the US constitution is so infallible that we should still strictly follow exactly what is says, how come it had to be amended 27 times?
12:06
<Lachy>
no-one claims it was infallable.
12:06
<Dashiva>
I'm sure _someone_ does
12:07
<jcranmer>
gsnedders: the 13th amendment?
12:07
<jcranmer>
Philip`: turn it on its head
12:07
gsnedders
looks that up
12:07
<Dashiva>
jcranmer: I think illegal immigrants handle that fine
12:07
<jcranmer>
how many constitutions have only been amended 27 times?
12:08
<hsivonen>
Does anyone happen to know if https://bugzilla.mozilla.org/show_bug.cgi?id=537948 is Web compat-relevant?
12:08
<Dashiva>
Not to mention the old health care system :)
12:08
<Lachy>
gsnedders, it abolishes slavery
12:09
<jcranmer>
there's also the all-important 3rd Amendment
12:09
<jcranmer>
(no quartering of troops, basically)
12:10
<Philip`>
jcranmer: As far as I know it could be like HTML4 where people have just been too lazy to fix all the bugs in the document
12:10
<Dashiva>
It's a real shame 2nd and 3rd amendments weren't updated properly once America left the old age
12:11
<jcranmer>
in general, the US constitution is quite flexible since it doesn't hardcode a lot of stuff
12:11
<Philip`>
jcranmer: I thought quartering was what was done to people like Guy Fawkes, not to troops
12:11
<gsnedders>
The fact the fifth amendment doesn't apply to anyone on US soil is somewhat disturbing
12:12
<gsnedders>
Likewise the sixth
12:12
<jcranmer>
Philip`: quartering == provide quarters forcibly
12:12
<Philip`>
Oh, okay
12:13
<jcranmer>
I doubt the text of the 16th or 17th amendments have caused lots of court cases
12:13
<jcranmer>
although their contents aren't exactly happy for all people
12:14
<jgraham>
I find it vaugely amusing when americans talk about the founding fathers as if they were god-like visionaries
12:15
<jcranmer>
eh, it's all a bunch of romanticism
12:15
<Dashiva>
They were quite visionary compared to current politicians, though
12:15
<Philip`>
When I think about the founding fathers, I always think of Day of The Tentacle
12:16
<jgraham>
Dashiva: Hard to say because the circumstances are quite different
12:16
<Dashiva>
Not talking about potential results, but actual results
12:16
<jgraham>
Possibly they are just as visionary as today's would-be politicians that no one will vote for
12:17
<gsnedders>
It also seems to be hold far too much as perfect and a reason to argue against rational changes in the US
12:18
<Dashiva>
You don't need the constitution for that, you just make people believe it says whatever you claim
12:19
<Dashiva>
I don't recall the poll, but apparently quite a few believe it declares the US to be a christian nation
12:19
<jcranmer>
well, the supreme court once had to make a ruling on whether or not something violated the preamble to the constitution
12:20
<jcranmer>
but you get nutjobs in any sufficiently large country
12:20
<jgraham>
The vatican is full of nut jobs
12:20
<jcranmer>
especially one as individualisitic as the US
12:20
<jgraham>
So the bar for "sufficiently large" is rather small
12:20
<workmad3>
you get nutjobs in any country
12:20
<Philip`>
When the visionary people were writing it, did they expect it would be still applicable and still used two centuries later?
12:21
<workmad3>
you just get more, and more extreme, nut jobs in larger countries
12:21
<jgraham>
Philip`: Probably no more so than people who wrote COBOL in the 60s
12:21
<jcranmer>
Philip`: probably not
12:21
<gsnedders>
If they had been so visionary, would they have written it as they did knowing it would still be used two centires later?
12:22
<jcranmer>
Thomas Jefferson thought countries needed a revolution every few decades
12:22
<Philip`>
Did they intend it to be rescinded at some point in the future before it became too irrelevant?
12:22
<Dashiva>
Surely they expected more amendments
12:23
<jcranmer>
well, they punted majorly on the slavery issue
12:23
<Philip`>
They should have an added an expiry date of 50 years after the writing, so that the country would descend into chaos and start the next revolution
12:23
gsnedders
wonders if anyone is still counted as 2/3rds of a person in a census
12:23
<jcranmer>
no one was ever counted as 2/3
12:23
<jcranmer>
it was 3/5
12:23
<Dashiva>
Philip`: They'd just extend it
12:24
<gsnedders>
But actually, I think the wording was those who weren't free
12:24
<gsnedders>
jcranmer: Gah. The exact fraction doesn't matte.r
12:24
<Dashiva>
As I understand it, the two houses are allowed to make new rules every session, but they just carry over the old ones out of habit
12:24
<Philip`>
Dashiva: They could have made extensions unconstitutional
12:25
jcranmer
points those Europeans to the European constitution^W^WLisbon treaty
12:25
<gsnedders>
The fact taht the president alone has a veto is somewhat distrubing, though
12:25
<Dashiva>
Philip`: They would pass an amendment then
12:26
<Dashiva>
Or maybe they just wouldn't tell anyone and keep going out of habit, not like anything would change
12:26
<gsnedders>
jcranmer: That isn't two centuries old :)
12:26
<jcranmer>
gsnedders: see how much longer it is than the US constitution
12:27
<jgraham>
And hasn't really been accepted
12:27
<jcranmer>
well, I would refer to California's constitution, which has something like 2000 amendments
12:27
<gsnedders>
Some things are somewhat disturbing, though, like countries opting out of making the Charter of Fundamental Rights law
12:27
<Philip`>
Dashiva: They should have done what people who wrote COBOL in the 60s did and make their stuff unable to cope beyond the end of the century and make it really expensive to fix
12:28
<jcranmer>
but everyone knows California is just a big conglomeration of lunatics
12:28
<Dashiva>
Philip`: Kind of... the way it is right now?
12:28
<Philip`>
Oh, okay, so they did do that
12:29
<Philip`>
and people just put up with the really expensive fixes instead of taking it as an opportunity to start from scratch
12:29
<Philip`>
so I guess that's not the best plan
12:29
<Dashiva>
Maybe if they one day manage to get a sensible election system
12:31
<gsnedders>
That sounds over ambitious
12:32
<Dashiva>
It looks like it might happen before I die in the UK, so you never know
12:33
<gsnedders>
Well, the Scottish parliment has a sane election system
12:33
<gsnedders>
There again, that favoured the Tories who were in power in Westminster when the Scotland Act was passed
12:33
<gsnedders>
(they are still only the fouth largest party, though)
12:34
<gsnedders>
Ah, no, they're up to third equal now
12:35
<Dashiva>
Although perhaps the supreme court is a bigger problem than the electoral stuff
12:35
<gsnedders>
The new Supreme Court, or?
12:36
<Dashiva>
The way it's updated
12:39
<Philip`>
Dashiva: You're going to die in the UK?
12:40
<Dashiva>
Of course
12:40
<Dashiva>
While singing "Back in the UK" by Scooter
12:40
gsnedders
again gets confused by the title of the Duke of Rothesay
12:40
<gsnedders>
(which is the title of the Prince of Wales while in Scotland)
12:41
<gsnedders>
(or rather, the title of the heir apparent)
12:44
<Philip`>
gsnedders: Why is that confusing? It's just like someone being both the King of Gondor and the Heir of Isildur
12:44
<gsnedders>
Philip`: It's not so much confusing because of that, it's confusing because I'm always sure I should know who the Duke of Rothesay is but I can never remember
12:45
<hsivonen>
http://html5.org/tools/web-apps-tracker?from=4802&to=4803 is going to need some unit testing in the html5lib repo...
12:45
<hsivonen>
I take it that html5lib hasn't implemented that spec change yet?
12:45
<gsnedders>
hsivonen: And the CR changes
12:45
<gsnedders>
hsivonen: No, it hasn't
12:45
<gsnedders>
hsivonen: AFAIK it's no more up-to-date than the script changes
12:50
<hsivonen>
ok.
12:53
<hsivonen>
hmm. the Opera Mobile emulator is 32bit only
12:56
<nileshtrivedi>
will there be an input type for address ?
13:00
<hsivonen>
nileshtrivedi: do you mean postal address?
13:00
<nileshtrivedi>
yes.. not latitude/longitude, which is a separate issue
13:01
<hsivonen>
nileshtrivedi: postal addresses are an i18n rathole
13:01
<hsivonen>
nileshtrivedi: so unlikely
13:01
<nileshtrivedi>
all right :)
13:02
<nileshtrivedi>
how about the latitude/longitude ? will there be a input type="geo" ?
13:13
<hsivonen>
nileshtrivedi: unlikely. when the page asks for the user's location, there's already the geolocation API
13:13
<hsivonen>
nileshtrivedi: when the page asks for another location, browsers aren't well equipped to provide a client-side UI
13:13
<hsivonen>
nileshtrivedi: sites are better equipped to import Google/Bing/Yahoo! maps as part of the site UI
13:14
<nileshtrivedi>
hsivonen: but the geolocation api would require javascript enabled, isn't it?
13:15
<hsivonen>
nileshtrivedi: yes
13:16
<hsivonen>
can anyone think of a case where end tag token processing starts in a non-"in foreign" mode and the token gets reprocessed in the "in foreign" mode?
13:16
<hsivonen>
I can't think of such a case.
13:54
<hsivonen>
the code for spec rev 4803 isn't nice...
13:58
<hendry>
hsivonen: you don't need libxml for parsing HTML5 do you?
13:59
<hsivonen>
hendry: no. why?
13:59
<hendry>
hsivonen: is there a nice C implemenation of the HTML5 parsing model somewhere I wonder?
13:59
<hendry>
hsivonen: wondering why webkit seems to depend on it
13:59
<gsnedders>
hendry: XML parser, AFAIK
14:01
<hendry>
gsnedders: can't the HTML5 parsiing model replace what libxml does in webkit?
14:02
<gsnedders>
hendry: No. The HTML5 Parsing doesn't define how to parse XML.
14:03
<hendry>
so what XML does webkit need to be able to parse then? XHTML?
14:03
<hsivonen>
hendry: there's a nice C++ implementation :-)
14:04
<hsivonen>
hendry: if you want C, you can put a C API wrapper around the C++
14:04
<hendry>
hsivonen: C++ *shiver*, ok pls point me to it.
14:04
<hendry>
hsivonen: is the big idea webkit/gecko converge on the same model right?
14:04
<hsivonen>
hendry: http://hg.mozilla.org/projects/htmlparser/
14:04
<hendry>
hsivonen: i know you were doing some experiments. is FF using html5 parser yet
14:05
<hsivonen>
to get a non-Gecko-dependent version of the HTML5 parser, you need to create your own version of CppTypes.java so that the translator gets non-NSPR/XPCOM types
14:05
<hsivonen>
hendry: not on by default yet
14:06
<hsivonen>
getting a non-Gecko-dependent version isn't "supported" in the sense that I haven't tried it yet even for a toy project
14:06
<hsivonen>
hendry: you can be the first to try!
14:08
<hsivonen>
hendry: and yes, the big idea is to get *all* browsers to converge on standard parsing
14:08
<hsivonen>
hendry: in the case of Gecko, there are two other big ideas: 1) getting rid of the old HTML parser and 2) putting HTML parsing off the main thread
14:09
<hendry>
hsivonen: not sure how to clone hg.mozilla.org/projects/htmlparser/ or where exactly to find the cpp, only see java
14:09
<hendry>
hsivonen: is webkit following suit?
14:09
<hsivonen>
hendry: to get the CPP, you run Main.java under translator-src
14:10
<hendry>
hsivonen: what?? you generate cpp from java?
14:10
<hsivonen>
if you want to experiment with the help of an automagic makefile, you can clone http://hg.mozilla.org/mozilla-central/
14:10
<hsivonen>
hendry: yes
14:11
<hsivonen>
...and see http://hg.mozilla.org/mozilla-central/file/456b934bab9e/parser/html/java/README.txt
14:11
<hsivonen>
that should get you going with the dependencies of the translator itself
14:12
<hendry>
omg
14:12
<hsivonen>
hendry: writing Java is much nicer than writing C++ :-)
14:12
<hendry>
hsivonen: has anyone considered doing this in C?
14:13
<hsivonen>
hendry: yes. takkaria and ment
14:13
<hsivonen>
neither of whom seems to be on IRC right now
14:13
<hendry>
hsivonen: checkout http://harmful.cat-v.org/software/java
14:13
<Philip`>
There's http://www.netsurf-browser.org/projects/hubbub/
14:14
<Philip`>
Don't know what the current status of it is, though
14:15
<jmb>
Philip`: there'll be a patch release at the weekend, is the current status of it
14:16
<hsivonen>
hendry: lot of boring enterprise software gets written in Java. good software gets written in Java, too.
14:16
<hendry>
jmb: looks good
14:16
<Philip`>
jmb: Given that the last release listed there was 0.0.1 in April 2009, it gives the impression of being a bit dead
14:17
<hendry>
jmb: are you in Southhampton?
14:17
<jmb>
Philip`: well, yes :)
14:17
<Philip`>
jmb: so a new release sounds good :-)
14:17
<jmb>
Philip`: but that's because people have been busy with other things
14:17
<jmb>
not because it's been abandoned
14:18
<hendry>
are there html tests to see if a html5 parser is compliant to the model?
14:19
<Philip`>
jmb: Was it stable and complete (per the spec from that time period) before people became busy with other things?
14:19
<jmb>
Philip`: yes, provided you didn't want fragment parsing or script support
14:19
<Philip`>
I think it's unclear from the page whether it's a decent usable library or an early incomplete alpha-style release
14:20
<hsivonen>
hendry: html5lib hosts the de facto test suite
14:20
<hsivonen>
hendry: it's incomplete of course
14:21
<hsivonen>
right now, I wish Someone Else had already written tests for spec rev 4803
14:21
<gsnedders>
heh
14:21
<gsnedders>
I remember thinking that when implementing all the script states in the tokenizer
14:21
<jmb>
Philip`: that's a fair accusation :)
14:21
<gsnedders>
Except wishing someone else had done the impl
14:22
<hendry>
hsivonen: ok i see code.google.com/p/html5lib/source/browse/#hg/testdata (guess what browser i'm using that removes http:// from my unix style copies)
14:22
<Philip`>
If it's a decent usable library then someone (else) should write a Python wrapper for it :-)
14:23
<hsivonen>
hendry: I hear you can get the http:// back in the latest build
14:23
<jmb>
Philip`: heh
14:23
<hsivonen>
Philip`: you could make the Java to C++ translator target python C bindings!
14:25
<Philip`>
Are Python people happy with modules written in C++?
14:25
<hsivonen>
who's gonna know what's behind the ABI?
14:25
<hsivonen>
it's not like this is for the AppStore
14:26
<Philip`>
Could it ever be bundled with Python as an alternative to sgmllib?
14:26
<hsivonen>
oh
14:26
<gsnedders>
Philip`: US is going in and depends on C++
14:26
<Philip`>
Presumably Python people would care in that case
14:26
<Philip`>
gsnedders: US?
14:26
<gsnedders>
Unladen Swallow
14:26
<jgraham>
Well that is different
14:27
<jgraham>
Somwhat
14:27
<gsnedders>
Yeah, but if the VM relies upon C++ then stdlib relying upon it will be no problem
14:27
<jgraham>
It seems more useful to target Python 2.x in the short term anyway
14:27
<gsnedders>
But that VM dependancy is optional anyway
14:28
<hsivonen>
is Unladen Swallow for Python 3?
14:28
<jgraham>
Yes
14:28
<gsnedders>
The original branch was for 2, it will be merged into a future 3 release
14:28
<jgraham>
The official version at least
14:28
<hsivonen>
I guess Python's XHTML2 is different in the sense that it gets serious resources from Google
14:28
<gsnedders>
(2.7 is the final major release of Python 2, and they just missed the deadline for that)
14:28
<Philip`>
http://www.python.org/dev/peps/pep-3146/#addition-of-c-to-cpython
14:29
<Philip`>
"C++ can be disabled via ./configure --without-llvm, which even omits the dependency on libstdc++"
14:29
<gsnedders>
15:34 < gsnedders> But that VM dependancy is optional anyway
14:29
<Philip`>
That seems to suggest they like C++ to still be optional
14:29
<hsivonen>
gsnedders: final as in HTML 4.01 or Perl 5.0?
14:29
<gsnedders>
hsivonen: final as in Perl 5.0
14:29
<gsnedders>
Well, somewhere between them, actually
14:29
<Philip`>
and presumably to be optional without affecting runtime behaviour (except performance)
14:29
<gsnedders>
Basically bugfix only
14:29
<gsnedders>
No new features
14:32
<jgraham>
gsnedders: That is only the plan
14:35
Philip`
guesses that converting the Java-to-C++ translator into a Java-to-C translator would be non-trivial and probably not worthwhile since there's no good reason for people to not allow C++
14:38
<hsivonen>
Philip`: just use CFront :-)
14:40
<Philip`>
I think that's possibly a tiny bit obsolete now
14:40
<Philip`>
though it looks like the Comeau C++ compiler is modern and can emit C
14:42
<Philip`>
Oh, but apparently not standalone C - the output is platform-specific, and the license doesn't allow you to use the C code on other platforms
14:42
<gsnedders>
I wonder what about using Clang and trying to create C from LLVM bytecode
14:43
<Philip`>
Just write a bytecode interpreter in C
15:12
Philip`
has now set up a system where JS files contain fragments of Relax NG which get extracted by a C++ program and then processed by a couple of hundred lines of XSLT to generate XHTML
15:12
<Philip`>
Someone please save me, I'm being infected by XML :-(
15:13
<jgraham>
Philip`: Why?
15:13
<Philip`>
Why save me?
15:13
<jgraham>
No, I think it is quite obvious you need to be saved
15:13
<jgraham>
Anything else would be immkoral
15:13
<jgraham>
*immoral
15:13
<Philip`>
It seemed like a good idea at the time (i.e. yesterday)
15:14
<Philip`>
and it still does, which is worrying
15:35
<zcorpan>
Philip`: it's a bad idea
15:40
<hsivonen>
I *think* I found 3 bugs in rev 4803.
15:40
<hsivonen>
or alternatively, my reading comprehension has gotten really bad
15:40
<hsivonen>
so I still haven't written test cases
15:55
<volkmar>
Hixie: ping
16:42
<TabAtkins>
Welp, just discovered that I can't install Fireworks on Linux, and so can't possibly attend a class about Fireworks. Great.
16:42
<Dashiva>
"I have no faith in the W3C (what was the last useful thing they helped create... XML namespaces?)."
16:42
<TabAtkins>
...wow.
16:44
<daedb>
Dashiva: Where's that from?
16:46
<Dashiva>
http://minimsft.blogspot.com/2010/04/microsoft-fy10q3-results.html
16:47
<TabAtkins>
"even if they deign its presence with faint of disdain" Someone needs to put the dictionary down and talk at the level they understand.
16:50
<remysharp>
If I wanted to use this picture: http://www.whatwg.org/specs/web-apps/current-work/images/drawImage.png from the spec, who's the best person to speak to, or is there a standard answer?
16:50
<remysharp>
sorry - use the picture in a book whilst explaining drawImage
16:51
<TabAtkins>
I'd assume that it's covered under the WHATWG's HTML5 license, which means freely redistributable.
16:51
<TabAtkins>
Otherwise, Hixie.
16:53
<remysharp>
The spec reads "You are granted a license to use, reproduce and create derivative works of this document." so it's fair to say I'm good then, unless Hixie want's to interject.
16:53
<remysharp>
TabAtkins: ta
16:53
<TabAtkins>
Yes, then. You can use the picture however you want, as a derivative work.
16:56
<jgraham>
TabAtkins: You thought that adobe made products that work on Linux?
16:56
<TabAtkins>
Man, I dunno. I live in a pretend world of magic and unicorns where everything just works everywhere.
16:57
<jgraham>
Given how well Adobe and Apple get along these days it is irnonic that the only piece of software I wouldn't want to move away from OSX for is Lightroom
16:57
<jgraham>
*ironic
16:58
<jgraham>
If they ever ship a linux version I will be all over it
16:58
<jgraham>
But they never will
16:59
<jgraham>
And there is no sign that anyone else will write a similarly good application that does work on Linux
17:00
<jgraham>
And I no longer understand how anyone does anything on Windows
17:00
<jgraham>
Because every time I try I want to kill people
17:00
<TabAtkins>
I find it interesting how my workflow changes based on what incidental tools I have available.
17:01
<jgraham>
e.g.?
17:01
<TabAtkins>
On Windows, where multiple desktops are hard to do, I had AHK to let me minimize anything with F4, and just worked with 2 monitors and a single desktop fine.
17:01
<TabAtkins>
Here on Linux, I haven't gone to the trouble of finding anything that lets me remap keycombos like that, but I don't need it, since I just set up 6 desktops and never change what's on them.
17:04
<TabAtkins>
Topic change: RDFa Core 1.1 now defines what appears to be 3 separate mechanisms to make the syntax look more like Microdata.
17:07
<jgraham>
If micro data is good, having three ways to be like it is exp(3) time better, surely
17:07
<jgraham>
s/ //
17:07
<TabAtkins>
That's the worst magic regexp ever.
17:08
<jgraham>
It's perfectly acceptable magic
17:08
<Dashiva>
It matches the wrong space, though
17:08
<jgraham>
No, that's the magic of it
17:08
<Dashiva>
Clearly you're using a different version of magic
17:09
<TabAtkins>
At least *try* to make it unambiguous. s/ time/time/, if I'm understanding you correctly.
17:09
<TabAtkins>
Also, I should totally go eat some breakfast before they close down the kitchen on me again and I'm left with nothing but a banana and a bottled frappucino.
17:10
<Dashiva>
You can eat when you're dead
17:10
<TabAtkins>
That will be sooner than desired, if I follow that advice.
17:10
<jgraham>
Only if you are a zombie
17:10
<jgraham>
(do zombies eat?)
17:10
<TabAtkins>
Alternately, I can eat now, which reduces the time between me and food even further.
17:10
<Dashiva>
Sounds self-defeating
17:10
<TabAtkins>
jgraham: Of course they do. The exact metabolic processes depend on your zombie type.
17:10
<Dashiva>
Eating to avoid eating
17:11
<jgraham>
TabAtkins: Did you join public-html-testsuite?
17:11
<TabAtkins>
No, I'm wantint to eat so I can eat more.
17:11
<TabAtkins>
jgraham: Yes.
17:11
<jgraham>
TabAtkins: Great
17:11
<Dashiva>
But that's a circular argument
17:11
<Dashiva>
You want to eat because you want to eat
17:11
<jgraham>
TabAtkins: Did you see any of the discussion about the test harness for DOM tests?
17:11
<TabAtkins>
Dashiva: So is my digestive tract, if you include sufficient recycling steps between two of the steps.
17:11
<TabAtkins>
jgraham: Haven't really read it.
17:12
<jgraham>
I figure you might be somewhat interested if this is one of the things you are working on
17:12
<TabAtkins>
Yeah, I am, and need to.
17:12
<jgraham>
Great
17:13
<jgraham>
(I just said that again, but there is nothing wrong with squaring the greatness)
17:13
<TabAtkins>
Right after saying that she doesn't feel comfortable engaging in discussion on the mailing list and would rather communicate purely through Change Proposals, she dumps a wall of text on the mailing list not in the form of a Change Proposal.
17:14
<TabAtkins>
(Her saving grace is probably that said wall of text doesn't constitute "discussion".)
17:15
<Philip`>
jgraham: Zombies eat brains (unless you protect your brains with sufficient defensive gardening skills), obviously
17:15
<TabAtkins>
Philip`: Unless they're one of the "living zombie" variants, which typically eat all uninfected flesh.
17:17
<Dashiva>
Most zombie ecologies fail to address the inherent problems of the brain duality
17:17
<TabAtkins>
? Which duality?
17:17
<Dashiva>
Brains are both their weak point and their sustenance
17:18
<Philip`>
http://www.cramitwithwalnuts.com/wp-content/gallery/plants-vs-zombies/ate_your_brains.jpg - proof
17:18
<Dashiva>
So if zombies eat the brains of their victims, but destroying the brain destroys the zombie, how can a victim become a zombie?
17:18
<TabAtkins>
That's well-established; partial contact does the trick.
17:19
<Dashiva>
Partial contact is not a reasonable assumption
17:19
<Dashiva>
Once a zombie has contact with a brain, it has no reason to stop consuming
17:19
<TabAtkins>
With a brain, sure. Once you hit that point, it's likely that you're fully disabled and at the nonexistent mercy of the undead.
17:20
<TabAtkins>
I'm talking about a conflict where the living sustains a bite or scratch, but is then able to escape.
17:20
<Dashiva>
This is, however, a minority situation
17:20
<TabAtkins>
I disagree. Zombies are slow enough that, until you get swarm situations, most physical contact is escapable.
17:21
<TabAtkins>
You're also discounting the original infection point, which may create a large pool of zombies to start with.
17:21
<Dashiva>
There's your swarm
17:21
<Dashiva>
Furthermore, escape is only an option if there is somewhere to escape to
17:22
<TabAtkins>
Not necessarily. The initial group will, by default, spread out. Swarms occur when a large number are all focused on a relatively small number of targets.
17:23
<TabAtkins>
If the zombification event hits everyone in an area, there are no immediate targets. If it doesn't, there are likely a number of targets, which will flee in multiple directions and spread the initial swarm as well.
17:24
<Philip`>
Dashiva: You can escape to the Big Brother house
17:24
<gsnedders>
TabAtkins: So, what are you doing with the test suite stuff?
17:24
<Dashiva>
Philip`: That's a fate worse than (un)death
17:24
<TabAtkins>
gsnedders: Writing a new end-to-end harness for testing, which will swallow all the existing test suites and be runnable automatically in all browsers.
17:25
<TabAtkins>
At least, that's the eventual goal, and what I'm being paid for.
17:25
<Dashiva>
TabAtkins: That may hold for the very beginning, but secondary infections will have easy access to victims who trust them and expect nothing.
17:26
<gsnedders>
TabAtkins: For all tests, or just JS ones?
17:26
<TabAtkins>
Dashiva: The hunger doesn't come until zombification does, at which point victims will know something is off. Some will still succumb, unbelieving that their loved one has joined the army of darkness, but many will escape after an initial contact, possibly gaining an infected injury and eventually zombifying themselves.
17:27
<TabAtkins>
gsnedders: All tests.
17:27
<gsnedders>
TabAtkins: So how are you dealing with visual tests?
17:27
<TabAtkins>
gsnedders: At the moment, we're shooting for the reftest format. Future improvements may allow further expansion in this area.
17:27
<Dashiva>
Zombification is not easily distinguishable from illness, which on the contrary would draw people closer to provide care
17:28
<gsnedders>
TabAtkins: And how do you do the screenshots?
17:28
<gsnedders>
TabAtkins: In a cross-platform, cross-browser way?
17:28
<Dashiva>
(Perhaps we've gone far enough for now)
17:28
<TabAtkins>
gsnedders: That's the trick, right?
17:28
<TabAtkins>
The answer is "We'll figure it out when we get there."
17:29
<TabAtkins>
But ideas are circling around a screenshot api for yanking pixels from a section of the screen.
17:29
<Philip`>
Is it possible to make a test harness that is powerful enough to swallow all the existing test suites, but still simple enough that people will be willing to use it and write new tests for it?
17:29
<gsnedders>
TabAtkins: heh
17:30
<TabAtkins>
Part of the harness development is development of new testing APIs that all browsers will implement. We had Hakon in the meeting about it, and he was enthusiastic on the matter.
17:30
<gsnedders>
TabAtkins: So, for the JS ones at least, see jgraham's email to public-html-testsuites
17:30
<TabAtkins>
Philip`: I'm betting that it is.
17:30
<TabAtkins>
gsnedders: Will do.
17:31
<gsnedders>
TabAtkins: You going to be at the CSS WG F2F in Oslo?
17:31
<TabAtkins>
Yes.
17:31
gsnedders
may try and coinside with you there
17:31
<TabAtkins>
That'd be cool.
17:31
<gsnedders>
(though I'll be in totally different meetings :))
17:33
<gsnedders>
(I'd probably also get lost in the office and never meet you)
17:34
<gsnedders>
Otherwise, adios for now
17:45
<KaOSoFt>
Good morning.
20:43
<TabAtkins>
air.mozilla.com for a live stream of Moz addressing FF complaints.
20:43
<TabAtkins>
Also: surprisingly funny!
20:59
<TabAtkins>
Anyone know at what point SafeCURIEs were introduced for RDFa? I don't recall seeing them in the RDFa 1.0 spec, and here in 1.1 it's also mentioned as something unnecessary.
21:00
<TabAtkins>
(The things where you wrapped your CURIE in [] to keep it from being interpreted as a url.)
21:01
<Philip`>
They've always been there
21:01
<Philip`>
http://www.w3.org/TR/rdfa-syntax/#P_safe_curie
21:01
<TabAtkins>
I guess I must have just missed it, then.
21:33
<jgraham>
TabAtkins: To reiterate what gsnedders said earlier, a test harness for DOM tests is something we want sooner rather than later for the HTML5 testsuite
21:34
<jgraham>
So it would be good to coordinate on a relatively short timescale if you have particular requirements
21:34
<TabAtkins>
When you say "relatively short", is "3 months" acceptably short?
21:35
jgraham
has got quite strong opinions from seeing a whole variety of test harness styles in js libraries and so on
21:35
<jgraham>
(and browsers)
21:35
TabAtkins
is out to the dentist, will be back soon.
21:36
<jgraham>
TabAtkins: It depends what you mean by "3 Months". If you mean "a test harness that allows one to write DOM tests and has a relatively stable API" 3 months seems reasonable. If you mean "start thinking about requirements" it seems like a long time
21:37
jgraham
might also try to go to Oslo in August if there is some possibility of having a discussion
21:37
<jgraham>
(but that is a long time away)
21:42
<TabAtkins>
In 3 months I'll have an alpha that works from start to finish, though the actual pass/fail part will be manual. After that I'll begin working on the automatic testing part.
21:42
<TabAtkins>
Now I'm actually gone.
21:43
<jgraham>
Now I'm actually confused about what your plan is
21:44
<jgraham>
I guess for CSS tests it makes some sort of sense to have manual pass/fail
21:44
<jgraham>
For dom tests it makes no sense whatsoever
21:45
<jgraham>
to the extent that I don't see why you would design the system with "manual pass/fail" as an incremental step
21:49
<jgraham>
TabAtkins: You are working in the open, right? Is there any chance of an email to some list outlining your exact plans at some point?
21:50
<Philip`>
What does a test harness that doesn't detect pass/fail actually do?
21:51
<Philip`>
That seems like the most important part of it
21:51
<jgraham>
Philip`: Presumably it loads tests and has a UI for a human to say whether they passes/failed
21:52
<jgraham>
For tests of rendering it makes some sense but it doesn't scale
21:53
<jgraham>
So you either have to do screenshots and mark pass/fail each time you get a new result or reftests
21:53
<jgraham>
and reftests are much less fragile
21:55
<Philip`>
jgraham: Wouldn't that just be something like an HTML file with a list of links to each test case, and maybe some iframes, and a dozen lines of CGI script to save and display the human-entered results?
21:56
<Philip`>
I'd assume it must be doing something amazingly fancier if it'll take three months of work :-)
21:57
<jgraham>
Philip`: The W3 testrunner thing as it currently stands has a webserver to provide the tests and a database for recording results
21:58
<jgraham>
Depending on the scope of the tests you might want the ability to significantly customise the server on a per-test basis (for HTTP testing)
21:58
<jgraham>
You might also want, say, a websockets server
21:58
<jgraham>
So, depending on the scope of the project, one can imagine a lot in infrastructure
21:59
<jgraham>
s/in/of/
23:12
<Hixie>
hm
23:12
<Hixie>
cross-origin timed tracks are going to be an issue
23:28
<nessy>
Hixie: yeah - hsivonen suggested iframe-like solution for that
23:41
<TabAtkins>
jgraham: Yeah, I'm in the open, and I can put a mail to the list.
23:42
<TabAtkins>
jgraham: Manual pass/fail is the first step because, frankly, that's the easiest thing to do. Building it as a testing module, and then building additional modules that work automatically, enable me to get a verifiably working design quicker.
23:42
<TabAtkins>
Basically it's the simplest thing that works.
23:43
<TabAtkins>
Philip`: It doesn't take 3 months of work, it takes 3 months of my time, alongside all the other things I'm doing. ^_^
23:44
<TabAtkins>
Suffice to say, though, that I'm not coming up with this stuff myself - arronei and fantasai, in charge of the CSS test suite, are basically codevelopers with me, and I've talked with plh as well about it.