00:17
<TabAtkins>
Hixie: I'm not sure what you find hard to understand about the appcache use-case in https://www.w3.org/Bugs/Public/show_bug.cgi?id=14702
00:17
<TabAtkins>
The desired behavior is basically:
00:17
<TabAtkins>
(1) If you're online, proceed as normal. Fetch everything from online or the HTTP cache as appropriate, and update appcached resources as appropriate.
00:18
<TabAtkins>
(2) If you're offline, use the appcache.
00:18
<TabAtkins>
And that's it.
00:19
<TabAtkins>
This is desirable over http caching because (1) http cache doesn't reliably work offline, and (2) http cache entries can disappear non-atomically, creating a broken app.
00:19
<TabAtkins>
Whereas the appcache for a site expires all at once, so it's easy to tell why the page is "broken", since it doesn't work offline at all.
00:20
<TabAtkins>
You even allude to precisely the benefit being sought ("other than making the file available offline") in comment #24, but don't seem to understand that's all that's desired.
00:28
<Hixie>
TabAtkins: everyone i've spoken to about this says "it's easy, the desired behaviour is just X" with a different value of X each time :-P
00:29
<Hixie>
TabAtkins: what i don't understand about the description you just gave, though, is why people so desperately want to avoid restructuring their page to separate their data from their structure
00:29
<TabAtkins>
Because it's a *very significant* restructuring.
00:29
<Hixie>
TabAtkins: sure, it's not cheap to do, but it has such radical benefits that i don't understand the reluctance
00:30
<Hixie>
TabAtkins: it's nowhere near as hard as people seem to make out
00:30
<Hixie>
TabAtkins: you can even do it incrementally, where initially your "data" is just the whole page which you innerHTML in
00:30
<TabAtkins>
And it's not all rainbows and sunshine. Sending an empty <body> and filling it with script is bad for spiders and accessibility generally.
00:30
<Hixie>
i don't see why it's bad for a11y
00:31
<TabAtkins>
I don't know what the effects of filling in the body from script are to common a11y tools.
00:48
<heycam>
Hixie, apart from onerror, do all of the remaining event listener attributes only ever get called with a single Event object?
00:49
<Hixie>
i believe so
00:49
<Hixie>
but wouldn't be willing to stake money on it
00:49
<Hixie>
MikeSmith: cvs lock issue
00:49
<Hixie>
MikeSmith: nevermind
00:49
<heycam>
Hixie, ok thanks
00:49
<Hixie>
bbiab
00:49
<MikeSmith>
Hixie: ok, but if the lock problem happens again lemme know
00:49
<Hixie>
roger
00:50
<zewt>
cvsin' like it's 1995
00:53
<MikeSmith>
anybody round here on the Google+ dev team?
00:53
<MikeSmith>
I could use help with something...
00:57
<divya>
MikeSmith: on twitter @codedread is there.
01:10
MikeSmith
pings Malte Ubl
05:33
<Hixie>
in XML, <p/>x means an empty <p> with an "x" after it
05:33
<Hixie>
in HTML, <p/>x means a <p> that contains an "x" (and is invalid)
05:35
<mikenton>
:)
05:35
<mikenton>
Thank you.
09:52
<asmodai>
Anyone happen to know Firefox/Mozilla's timeframe on the Web Audio API?
09:55
<annevk>
heycam|away: +1 for the new callback syntax
09:55
<annevk>
guess I'll email that to the list
10:05
<jgraham>
asmodai: Do people even think that API's a good idea? Last time I looked it seemed super-complex
10:06
<jgraham>
I tought roc had an alternative suggestion which looked (to my untrained eye) much nicer
10:08
<asmodai>
jgraham: I got some gamedevs asking about when firefox will implement it.
10:08
<asmodai>
I guess the recent port of Bastion to NaCL for Chrome also helped act as a catalyst.
10:09
<asmodai>
But let me ask them about the complexity of that API.
10:32
<annevk>
Web IDL updates excite me
10:32
<annevk>
#weird
10:32
<jgraham>
That's one hell of a fetish you've got going there
10:33
<Ms2ger>
^
10:33
<annevk>
I think the Encoding Standard is a weirder one
10:36
zcorpan
doesn't want to know what annevk does together with the Encoding Standard at night
10:36
<Ms2ger>
"Think" about it
10:36
annevk
doesn't want to tell
10:38
<hendry>
can the help list please be moderated? http://lists.whatwg.org/pipermail/help-whatwg.org/2011-December/000969.html is junk
10:39
<annevk>
email Hixie
10:44
<annevk>
http://dev.chromium.org/developers/how-tos/make-a-web-standards-proposal
10:48
<MikeSmith>
annevk: abarth wrote that I guess
10:50
<jgraham>
MikeSmith: Yep
10:52
<annevk>
so single-octet encodings works
10:52
<Ms2ger>
Automated tests please? :)
10:52
<annevk>
it seems putting multi-octet encodings inline might be problematic
10:53
<annevk>
some are gigantic
10:53
<annevk>
Ms2ger: yes I should make those
10:54
<annevk>
Ms2ger: but it's fairly trivial for anyone to do so
10:57
<zcorpan>
annevk: how gigantic?
11:00
zcorpan
finds a table for big5
11:03
<gsnedders>
annevk: Nothing is as gigantic as GB18030.
11:24
<asmodai>
jgraham: response:
11:24
<asmodai>
I found it pretty straight forward. At least for just playing a simple sound. Problem is getting same behaviour from FF and Chrme
11:30
<jgraham>
asmodai: (I like to think that getting proper cross-browser support would be the problem not just "FF and Chrome")
11:39
<asmodai>
jgraham: IE is not interesting enough to develop on
11:39
<asmodai>
and Opera, pardon me saying it, just doesn't have the market share as target
11:39
<asmodai>
so that leaves FF and Chrome.
11:40
<asmodai>
At least, that's my interpretation on what I am seeing from these dev folks.
11:50
<asmodai>
response: Pretty much, Opera support would be nice, but not a huge
11:50
<asmodai>
issue for me right now. IE: Chrome Frame makes it works as Chrome.
11:51
<bga>
khtml!
11:51
<asmodai>
jgraham: Does that help? :)
11:53
<annevk>
argh expenses
11:53
<bga>
asmodai btw chrome will get 70+% in 2013
11:53
<annevk>
hate hate hate
11:53
<bga>
=> chrome only dev
11:54
<asmodai>
bga: market share? Time will tell how it will go.
11:54
<asmodai>
If there's one thing that the last 15 years have shown is that browsers and their market share come and go. :)
11:54
<bga>
http://en.wikipedia.org/wiki/File:Usage_share_of_web_browsers_(December_2011,_Source_StatCounter).jpg
11:55
<bga>
extrapolate that :)
11:56
<asmodai>
Sure, and time has the uncanny effect of changing charts like that as well. :)
11:56
<asmodai>
I'll just stick to as much cross-platform as I can.
11:57
<asmodai>
It's a bit funny. When people were IE-only devs they got called names, but when you do chrome-only it should suddenly be alright? :-P
11:57
<bga>
chrome is new IE
11:58
<bga>
tons of features
11:58
<asmodai>
That statement in and of itself is scary :)
11:58
<bga>
activex!
11:58
<bga>
aka nacl
11:59
<jgraham>
OMG! By 2020 Chrome will have 200% market share!
12:00
<bga>
99% :)
12:00
<bga>
and 1% - lynx
12:00
<asmodai>
jgraham: Anyway, did those responses help you a bit? :)
12:01
<jgraham>
Alternative theory: linear extrapolation without regrad for the actual dynamics is bad
12:01
<jgraham>
asmodai: Well sort of. I don't kow much about the audio work
12:01
<jgraham>
I just know that the chrome API looks really complicated
12:01
<asmodai>
jgraham: Ah ok
12:01
<asmodai>
I haven't played with it yet.
12:02
<beverloo>
It's a much more declarative approach
12:02
<asmodai>
But I know many gamedevs are looking at the webbrowser for implementing more involved games than the social ones available now
12:02
<asmodai>
and also to build their tools in
12:02
<jgraham>
Possibly all that complexity is needed, but my expectation is that it's not
12:02
<asmodai>
IIRC Insomniac Games already deployed some tools to browser-only.
12:02
<beverloo>
First steps are harder than usual, as you have to get used to the concept behind the nodes
12:02
<beverloo>
but after that it's really easy to work with
12:03
<asmodai>
I was just curious if and when FF will support Web Audio API as well :)
12:03
<beverloo>
An umbrella draft was published about a week ago
12:03
<beverloo>
The Audio Working Group is still in flux about which proposal they're going to pursue
12:04
<asmodai>
So is Chrome a bit too early with their implementation?
12:04
<beverloo>
no earlier than Mozilla is
12:05
<Ms2ger>
Which are prefixed?
12:05
<asmodai>
beverloo: Sorry, not up to date on all implementation details, so bear with me please :) Mozilla/Gecko already has it in Nightly or so?
12:05
<beverloo>
Ms2ger, yes, both are.
12:06
<beverloo>
asmodai, Mozilla has the Audio Data API, which provides similar (though through a more imperative way) functionality
12:06
<beverloo>
https://wiki.mozilla.org/Audio_Data_API
12:07
<beverloo>
The umbrella document is here: http://www.w3.org/2011/audio/drafts/1WD/
12:07
<asmodai>
beverloo: thanks, forwarding and adding to my own reading list
12:11
<erlehmann>
is there any abstraction for all that?
12:11
<erlehmann>
i am thinking about porting libglitch
13:18
<asmodai>
wrt that Mozilla implementation of Audio API, I got told:
13:18
<asmodai>
Yep, I've been using the two specs. I prefer the web audio one over mozilla. Using xhr to fetch buffer seems to offer more ctrl
13:50
<hsivonen>
next time Mozilla proposes an API, it needs to be named "Web [noun]"
13:54
<annevk>
Ms2ger: if you can change Gecko for ibm864 that works for me
13:54
<annevk>
Ms2ger: our encoding guy claims that the encoding is not usable for Arabic anyway because it's in visual order rather than the way HTML works
13:55
<annevk>
Ms2ger: and therefore we don't support it and because there's no page out there using it (at least as far as we know)
13:55
<hsivonen>
annevk: Gecko has (used to have) special magic for visual Arabic and visual Hebrew
13:55
<hsivonen>
annevk: maybe the magic is just an implicit bidi override
13:56
<hsivonen>
annevk: dunno how relevant visual Arabic and visual Hebrew are on the Web today
13:56
<annevk>
I wonder why nobody ever bothered to more formally standardize the rules
13:56
<hsivonen>
s/(used to have)/(used to have?)/
13:57
<hsivonen>
annevk: support was contributed by IBM in the early days when people thought information flows from the W3C to vendors but not back
13:58
<annevk>
fair enough
13:58
<annevk>
hopefully I can fix some of that
14:31
<hsivonen>
it's sad that stuff like this has happened this year https://bugzilla.mozilla.org/show_bug.cgi?id=673680
14:32
<gsnedders>
hsivonen: Sad, but not surprising.
14:34
<Ms2ger>
And Google is to blame, once more
15:26
<bga>
ppl want analogs of opera.collect() in other browsers to wakeup GC
15:34
<hsivonen>
Is GB18030 the only CJK-oriented encoding that can encode all of Unicode?
15:34
<hsivonen>
can Shift_JIS encode everything?
15:36
<zewt>
no
15:37
<zewt>
(to SJIS)
15:49
<abarth>
annevk5, MikeSmith: i'm open to feedback on that "how to" if you think we should be doing things differently
16:44
<smaug____>
hmm
16:44
<smaug____>
does some spec define VoidCallback ?
16:46
<smaug____>
apparently no
16:46
<zewt>
is that an old (removed) webidl thing?
16:47
<smaug____>
or it is in some File system API
16:47
<smaug____>
but it is buggy even there
16:47
<smaug____>
and copied to Mouse Lock
16:47
<zewt>
http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2008-July/015239.html
16:47
<smaug____>
but MouseLock is still very buggy
16:48
<zewt>
not a fan of the fs-api spec, personally... too much an old-style listing of requirements and too few clear algorithms
16:48
<zewt>
(not to say I don't like the features it defines; I do)
16:49
<smaug____>
file system APi is rather bad, and not reviewed
16:51
smaug____
is always so positive :)
16:52
<zewt>
i really want to see the use cases it addresses implemented (being able to drag a directory to a page to let a page access native files would be *really* useful)
16:57
<zewt>
i don't know which is worse, people who send emails in gigantic fonts, or people who completely ignore requests to reset their font
16:58
<smaug____>
zewt: or people who send html email
16:58
<zewt>
eh it's too late for that
16:58
<smaug____>
given we're actively trying to break the web, we can try to change email handling too :)
16:58
<zewt>
raging over html mail is like raging over cookies, the world has moved on :)
16:59
<erlehmann>
zewt, send emails back using a big U+1F438 FROG FACE
16:59
<zewt>
if ever there was a valid use case for PILE OF POO
17:01
<erlehmann>
πŸ”° π™΄πš‡π™Ώπ™΄πšπšƒ π™Ώπšπ™Ύπ™Άπšπ™°π™Όπ™Όπ™΄πšπš‚
17:02
<zewt>
default glyph ahoy
17:28
<dglazkov>
good morning, Whatwg!
17:30
<jhawkins>
good morning dglazkov!
17:35
<bga>
http://img716.imageshack.us/img716/8493/fatfox.png
17:37
<rillian>
looks more like pregnantfox
17:38
<Ms2ger>
Did you know Chrome has been using 64bit machines for a few years because they're way past the limit Firefox is hitting?
17:46
<zewt>
off-hand, can anyone name an API that performs a resource fetch from a queued task, other than server-sent events? seems like there'd be a lot, but I can't find any others
17:46
<zewt>
(most fetches are started from synchronous sections, not tasks)
17:47
<zewt>
(rather, with "run the rest of this stuff asynchronously" sections)
17:50
<zewt>
"ilhan y" with the most nonsequitur mail I've seen in a while
18:25
<zewt>
yuck, chrome seems to reload the page when you hit enter on the address bar with a fragment id
18:26
<zewt>
i do that a lot in FF to quickly jump back to where I started and it doesn't reload anything (which matters with the single-page HTML spec) ... i guess it's better in other cases
19:13
<rniwa>
question: don't we want to remove SVG font support?
19:13
<shepazu>
rniwa: depends on who "we" are?
19:13
<rniwa>
shepazu: major browser vendors
19:14
<rniwa>
shepazu: I thought we are going to remove that from acid3 even
19:14
<rniwa>
annevk5: ?
19:14
<smaug____>
I thought we want to have sane spec for SVG fonts first, and then decide whether it is good for the web
19:14
<smaug____>
rniwa: acid3 doesn't test svg fonts anymore
19:14
<rniwa>
smaug____: so we want to keep SVG fonts?
19:14
<rniwa>
smaug____: yeah
19:14
<smaug____>
I didn't say we want to keep svg fonts
19:15
<smaug____>
I said there should be a sane spec
19:15
<rniwa>
smaug____: ok.
19:15
<rniwa>
smaug____: https://bugs.webkit.org/show_bug.cgi?id=68179
19:15
<smaug____>
spec which someone might implement
19:15
<smaug____>
but I'm sure roc has more to say about svg fonts
19:15
<rniwa>
smaug____: I'd rather not enable the feature on webkit by default if we're either removing or changing the spec radically
19:15
<shepazu>
I think SVG fonts are given short shrift, they are actually quite useful
19:16
<rniwa>
shepazu: usefulness things are good only if they're also sane
19:16
<rniwa>
for implementors
19:17
<rniwa>
e.g. deadlock free operating system is useful but nobody wants to implement that.
19:17
<Ms2ger>
I read "deadlocking the operating system is useful"
19:17
<Ms2ger>
And was rather confused
19:18
<rniwa>
Ms2ger: hehe. deadlocking the operating system might indeed be useful if you're an attacker ;)
19:18
<rniwa>
Ms2ger: deadlocking the OS will be one perfect DoS attack indeed.
19:45
<annevk>
where is sicking?
19:45
<annevk>
http://test.s0.no/cors/status.htm should not throw
20:12
<annevk>
rniwa: my understanding is that those that have implemented SVG fonts implemented a subset
20:12
<annevk>
rniwa: so I suspect that if they are to stay someone has to write a spec on how they actually should work
20:13
<annevk>
rniwa: and if that spec has sufficient implementor feedback it might be something that's useful to have
20:13
<annevk>
sicking: http://test.s0.no/cors/status.htm
20:13
<annevk>
sicking: fix bugs!
20:13
<annevk>
;)
20:14
<smaug____>
annevk: please file a bug and assign it to sicking :)
20:15
<sicking>
annevk: how do i find the actual tests
20:15
<annevk>
sicking: view source?
20:15
<sicking>
annevk: also, you seem to be missing redirect tests since I know we don't use the correct "Origin" header for those
20:16
<annevk>
these are not mine
20:16
<annevk>
and these are not what Opera's going to submit when we get around to that
20:16
<annevk>
I'm sure there's more bugs, this one just seemed quite weird :)
20:17
<sicking>
ugh, these tests are hard to read
20:18
<annevk>
http://mediamatters.org/blog/201112120005 o_O
20:19
<annevk>
newnewtwitter so slow
20:19
<annevk>
meh
20:21
<sicking>
annevk: oh, it's because we have a special exception for "X-Custom". We always allow that header to be set and read
20:22
<annevk>
proprietary extensions?
20:23
<annevk>
we can standardize that if you want...
20:23
<annevk>
will get the web littered with x-custom I guess
20:23
<sicking>
naah, just kidding, we don't have anything like that
20:23
annevk
is getting confused
20:24
<sicking>
i suspect that would introduce CSRF everywhere :)
20:24
<annevk>
TabAtkins: MutationObserverInit is a dictionary, not an interface
20:24
<sicking>
i have no idea why these tests fail
20:24
<sicking>
because i still don't understand what they do
20:24
<TabAtkins>
annevk: Ah, I didn't realize there was a significant difference.
20:24
<annevk>
sicking: because you throw on .status I guess
20:25
<annevk>
sicking: they give back custom status codes for either preflight or response
20:25
<sicking>
annevk: but we only throw when people would otherwise return 0, right?
20:25
<annevk>
sicking: see the table above
20:25
<annevk>
sicking: I think per spec you should return the actual response code
20:25
<annevk>
as happens in WebKit
20:26
<annevk>
WebKit fails 5, because it doesn't fail preflight requests that have a non-200 status
20:26
<sicking>
i thought we returned the real code as soon as it's available
20:26
<sicking>
tests that don't give any feedback other than pass/fail sort of suck :(
20:27
<sicking>
oh, i guess there's the message thing
20:27
<sicking>
but it doesn't tell me everything that the real exception contains, like line number
20:27
<annevk>
seems pretty clear why it fails to me
20:27
<annevk>
TabAtkins: yeah, dictionaries are not exposed
20:28
<annevk>
TabAtkins: not sure if that's a feature or not, maybe we should have something to inspect dictionaries
20:28
<sicking>
annevk: so yeah, 1,2,5 probably fail because we throw rather than return 0. File a bug on smaug for that :)
20:29
<zewt>
annevk: the general pattern of interfaces + dictionaries that look almost identical is sort of annoying...
20:29
<smaug____>
no no, sicking, cors is yours
20:29
<zewt>
i think it would be more annoying if it exposed two very similar objects, though
20:29
<zewt>
(to scripts, I mean)
20:29
<sicking>
smaug____: this isn't cors specific. Our XHR implementation always throws for .status when it should return 0
20:29
<zewt>
at least right now the repetition is only internal
20:29
<sicking>
smaug____: i.e. when the channel failed
20:29
<smaug____>
though, I did change status handling at some point to be closer to what the spec wanted
20:34
<annevk>
per spec status should work from 2
20:35
<rniwa>
sicking, annevk: would you care to comment on https://bugs.webkit.org/show_bug.cgi?id=68179 ?
20:36
<rniwa>
eric wants some clarification on the state of SVG fonts
20:36
<WeirdAl>
Ms2ger: ping re DOM4 spec
20:36
<sicking>
rniwa: https://plus.google.com/107429617152575897589/posts/JdHnqpuUER4
20:36
<sicking>
rniwa: that's the announcement for SVG fonts being dropped from ACID3
20:36
<rniwa>
sicking: thanks!
20:37
<sicking>
rniwa: http://robert.ocallahan.org/2010/06/not-implementing-features-is-hard_03.html
20:37
<sicking>
rniwa: that's the context of mozilla pushing back against svg fonts
20:37
<annevk>
rniwa: done
20:38
<sicking>
rniwa: there's also been discussions on the SVG lists regarding dropping them from future versions of the SVG spec, but i don't have links for that
20:38
<rniwa>
sicking: thanks!
20:38
<rniwa>
sicking: I've added a comment with those URLs
20:39
<rniwa>
sicking: do you know where what SVG WG discussion is?
20:39
<rniwa>
is webkit currently the only engine that supports SVG fonts?
20:39
<rniwa>
or do other engines support it?
20:39
<sicking>
rniwa: i don't know no. I would imagine on the svg list
20:40
<sicking>
rniwa: i know microsoft is pushing back against them too.
20:40
<sicking>
rniwa: i believe they are not in IE9 or IE10
20:40
<smaug____>
Opera supports SVG fonts
20:40
<smaug____>
some of it
20:40
<rniwa>
smaug____: ah, ok.
20:40
<smaug____>
webkit supports also some subset of svg fonts
20:40
<rniwa>
smaug____: is that "some" same as what webkit implements?
20:40
<smaug____>
and IIRC Opera and webkit don't support the same subset
20:40
<rniwa>
smaug____: or their symmetric different non-empty?
20:41
<rniwa>
difference*
20:41
<smaug____>
but it is probably quite close
20:41
<gsnedders>
rniwa: I'm pretty certain that what WebKit implemented isn't the same as what Opera implements
20:41
<rniwa>
:(
20:41
<gsnedders>
I believe Opera implements quite a lot more than WebKit.
20:41
<rniwa>
that's horrible
20:41
<gsnedders>
It's possibly WebKit is mostly a subset of what Opera supports
20:41
<gsnedders>
*popssible
20:41
<rniwa>
gsnedders: so Opera implements a superset of what WebKit implements, I hope?
20:41
<gsnedders>
*possible
20:42
<gsnedders>
rniwa: More or less, I believe. There are a few things I think you support that we don't, though.
20:43
<gsnedders>
My understanding is WebKit supports not that much more than what Acid3 tested.
20:43
<rniwa>
sicking: found: http://lists.w3.org/Archives/Public/www-svg/2011Oct/0124.html
20:43
<WeirdAl>
bah, once again I have to remind myself that a good idea for me isn't always a good idea for the Web
20:44
<smaug____>
sicking: annevk: did you file that XHR bug?
20:45
<WeirdAl>
annevk: spec question on XHR timeout: is it possible / permitted for the user to write the following
20:46
<WeirdAl>
var xhr = new XMLHttpRequest(); xhr.timeout = 1200; xhr.open(url, "GET", false) /* signifying sync */;
20:46
<WeirdAl>
the order of calls on XHR is what I'm concerned about
20:47
<WeirdAl>
ah, the spec covers that, never mind
20:47
rniwa
flees from XHR discussion
20:48
<gsnedders>
Trying to find out on Google how much of SVG Fonts WebKit supports is just showing up loads of cases of bz's article which claims that both WebKit and Opera only support the subset needed to pass Acid3, which isn't really helpful.
20:48
<smaug____>
WeirdAl: I thought your patch handled that
20:48
<gsnedders>
(Our implementation goes back to 2005 or so, so predates Acid3, and supports way more than Acid3 requires)
20:49
<WeirdAl>
no, I think I missed that particular case
20:49
<WeirdAl>
it handles the reverse, for sure
20:49
<smaug____>
WeirdAl: my bad
20:49
<WeirdAl>
mine too :p
20:49
<smaug____>
WeirdAl: but I did ask for tests for sync xhr
20:49
<WeirdAl>
right, that's why I started thinking about it
20:50
<annevk>
WeirdAl: open() throws
20:51
<sicking>
smaug____: yeah, the problem is that .status is throwing when accessed in readyState === 1
20:51
<annevk>
smaug____: I haven't filed it
20:51
<smaug____>
I just filed
20:51
<annevk>
during readyState 1 .status should not be available
20:51
<annevk>
maybe testcase bug?
20:51
<smaug____>
WeirdAl: hmm, did rest of the sync XHR changes land already
20:51
<annevk>
but it should not throw either
20:51
<smaug____>
maybe hsivonen did land them
20:52
<WeirdAl>
dunno, my tree's out of date anyway
20:55
<sicking>
annevk: yeah, the test sets up a readystatechange listener which checks that .status is the expected value before calling .send
20:55
<sicking>
annevk: so the first thing it'll do is to check .status during readystate 1
20:55
<sicking>
annevk: don't know why this doesn't make the test fail everywhere
20:56
<sicking>
annevk: shouldn't assert_equals make the test fail if the two values are different?
20:57
<sicking>
annevk: i.e. looks to me that tests 3,4 should fail everywhere
20:58
<sicking>
annevk: fix bugs!
20:58
<sicking>
:)
21:02
<smaug____>
sicking: so never-throwing passes 1, 2, 5
21:02
<smaug____>
3 and 4 expect 400, but we'd give 0
21:02
<sicking>
smaug____: as we should
21:02
<sicking>
smaug____: the test is just wrong
21:02
<smaug____>
k
21:03
<smaug____>
who wrote those tests?
21:03
<sicking>
smaug____: at least the first time it gets .status
21:03
<sicking>
smaug____: possibly all other times when it gets .status should we return 400
21:04
<sicking>
smaug____: ask annevk
21:04
<smaug____>
er, what?
21:04
<smaug____>
first time 0 then 400 o_O
21:11
<sicking>
smaug____: we should return 0 when .readystate is 1
21:11
<sicking>
smaug____: and 400 once readystate is 2 and we've received the http head
21:11
<sicking>
smaug____: it gets .status from the readystatechange handler
21:17
<Ms2ger>
WeirdAl, ack
21:17
<WeirdAl>
Ms2ger: never mind... I had an idea for an ElementWalker, but then I realized: who needs that besides me? On the Web? Nobody.
21:18
<Ms2ger>
I won't argue with that :)
21:21
<zewt>
annevk: just out of curiosity, in async XHR2, is there any point to setting the synchronous flag in send() step 9, since 8.5 makes all of step 9 async already?
21:22
<Velmont>
annevk: lol, I see you're an effective test user :P
21:50
<Ms2ger>
\o/ Event constructors!
21:52
<smaug____>
Ms2ger: some. We need spec changes to add support for more event ctors
21:52
<Ms2ger>
smaug____, you saw the D4E proposal?
21:52
<smaug____>
yeah
21:52
<smaug____>
it has some
21:52
<smaug____>
UIEvent
21:52
<smaug____>
and MouseEvent
21:52
<smaug____>
ah, I could add still compositionevent
21:53
<smaug____>
oh, also progress event
21:54
<smaug____>
Ms2ger: if you find any specs for event init dictionaries which Gecko doesn't support, please file bugs
21:54
<Ms2ger>
Will do
21:54
<Ms2ger>
Touch events?
21:54
<zewt>
(havn't checked, but I'd guess WebGLContextEventInit, FWIW)
21:55
<smaug____>
I don't know what will happen to touch events :(
21:55
<smaug____>
Apple isn't playing nicely
21:55
<Ms2ger>
As usual
21:58
<zewt>
how do mails like this get sent by @google users in 2011? http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2011-December/034185.html
21:58
<zewt>
it is
21:58
<zewt>
somewhat
21:58
<zewt>
hard to read
21:59
<timeless>
oh
21:59
<timeless>
that's easy
21:59
<timeless>
you have two different apps "helping" you do word wrapping
22:00
<timeless>
one of them is gmail, the other is whatever you composed your letter in
22:00
<timeless>
it bites me often enough
22:03
<timeless>
anyone know how to get gmail /mu/ to flush its pending tasks?
22:16
<heycam>
rniwa, also not sure you're aware but there's an effort underway to allow SVG glyphs inside OpenType fonts
22:16
<heycam>
rniwa, so that's not the SVG Fonts format per se; it's using all the normal OT tables to do glyph substitution etc., but just using SVG content inside a table for the glyph
22:27
jwalden
thinks of XML, and two problems
22:27
<Ms2ger>
Now you've got a dozen
22:36
<rniwa>
heycam: interesting
22:37
<heycam>
rniwa, http://lists.w3.org/Archives/Public/public-svgopentype/ if you're interested
22:40
<rniwa>
heycam: we probably need to limit the SVG features we can use there?
22:41
<heycam>
rniwa, yes. definitely no external resources, at least. :)
22:41
<heycam>
rniwa, also script. but animation should be allowed.
22:41
<shepazu>
yes, probably only shapes would be reasonable
22:41
<heycam>
shepazu, just rectangles
22:41
<shepazu>
heycam: SVGPoint
22:42
<shepazu>
(yes, the object, not the element)
22:42
<shepazu>
ONLY CATMULL-ROM CURVES!!
22:48
<rniwa>
heycam: also.. it probably doesn't make sense for it have text inside
22:48
<rniwa>
heycam: i don't want my glyph to contain letters of some other font
22:49
<zewt>
infinite font recursion D:
22:49
<heycam>
rniwa, certainly doesn't make sense to have the same font being used inside. but text in general?
22:49
<heycam>
rniwa, what do we gain from disallowing it
22:49
<rniwa>
heycam: how do you detect recursions then?
22:49
<heycam>
rniwa, you'd have to do some work for that, sure
22:49
<rniwa>
heycam: e.g. if you have font1 -> font2 -> font1
22:49
<heycam>
(yeah for mutually recursive fonts)
22:49
<zewt>
any number of ways (check the stack explicitly; limit the stack depth; etc)
22:50
<Ms2ger>
So, given the document "<img id=foo><img id=foo>"
22:50
<Ms2ger>
What does document.body.children.item("foo") return?
22:50
<rniwa>
Ms2ger: it could be the first element, no?
22:50
<rniwa>
s/could/should/
22:50
<Ms2ger>
Why? :)
22:52
<Ms2ger>
And how about if the document is "<img><img id=foo><img id=foo>"?
22:53
<rniwa>
Ms2ger: oh wait... neither DOM3 nor DOM4 appear to specify the behavior for looking up children via id.
22:54
<Ms2ger>
Hint: item takes an unsigned long
22:54
<rniwa>
oh wait it does: http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#htmlcollection
22:54
<rniwa>
Ms2ger: "Returns the first item with ID or name name from the collection."
22:54
<Ms2ger>
That's namedItem
22:55
<rniwa>
oh..
22:55
<rniwa>
Ms2ger: good point.
22:55
<rniwa>
should probably throw in that case?
22:55
<Ms2ger>
Another hint: ToUint32("foo") is 0
22:55
<rniwa>
Ms2ger: huh. we'll get the first element anyway huh?
22:55
<rniwa>
Ms2ger: that might be confusing.
22:56
<Ms2ger>
That's what should happen, indeed
22:56
<Ms2ger>
Now test in Chrome :)
22:56
<rniwa>
Ms2ger: it's broken?
22:56
<Ms2ger>
It returns a nodelist with the two last imgs
22:56
<rniwa>
Ms2ger: I happen to be refactoring the code implementing all of that
22:56
<rniwa>
Ms2ger: so I'm more than happy to fix that
22:56
<Ms2ger>
\o/
22:56
<rniwa>
Ms2ger: huh odd
22:57
<Ms2ger>
Code is here, fwiw: http://www.google.com/codesearch#OAMlx_jo-ck/src/third_party/WebKit/Source/WebCore/bindings/js/JSHTMLCollectionCustom.cpp&exact_package=chromium&q=HTMLCollection&l=74
22:57
<rniwa>
Ms2ger: could you file a bug on bugs.webkit.org?
22:57
<Ms2ger>
Sure
22:58
<Ms2ger>
HTML DOM?
22:58
<rniwa>
Ms2ger: yup
22:58
<rniwa>
Ms2ger: cc me (rniwaβŠ™wo)
22:58
<Ms2ger>
Will do, thanks
22:59
<rniwa>
Ms2ger: to begin with, I don't think item() should be returning a list of item
22:59
<rniwa>
of nodes*
22:59
<rniwa>
Ms2ger: it should be returning a node
22:59
<rniwa>
wtf...
23:01
<zewt>
// FIXME: HTML5 specifies that non-HTMLOptionsCollection collections should return
23:01
<zewt>
// the first matching item instead of a NodeList.
23:01
<zewt>
seems strange to release code with that big of a FIXME
23:01
<Ms2ger>
HTML5 probably didn't exist when the code was written
23:02
<rniwa>
zewt: it's funny how we do it correctly for html option element
23:03
<rniwa>
zewt: which is probably like 0.01% of usage of that API
23:03
<annevk>
zewt: different synchronous flags
23:03
<annevk>
zewt: one is tied to XMLHttpRequest, one is tied to fetch
23:03
<zewt>
but the fetch is happening within an algorithm that itself is already async
23:04
<annevk>
zewt: only if the asynchronous flag is unset
23:04
<annevk>
euh synchronous flag
23:04
<annevk>
8.5 does not happen if the synchronous flag is set
23:05
<zewt>
i mean, if the synchronous flag is unset, then you go async, then run fetch and tell it to go async when it's already async
23:05
<zewt>
(i don't think this breaks anything, which is why it was just a curiosity, just seems redundant)
23:06
<annevk>
it matters for the case where the synchronous flag is set I think
23:06
<zewt>
but step 9 could just always set the fetch synchronous flag
23:06
<annevk>
no
23:07
<zewt>
for async xhr, step 9 itself is already async (due to 8.5), and the fetch is part of that
23:07
<annevk>
and the fetch needs to happen async
23:07
<annevk>
because other things happen during the fetch
23:07
<annevk>
in the async case
23:07
<zewt>
but it is, since the calling algorithm is already async
23:07
<annevk>
right
23:07
<annevk>
and in the sync case, the fetch needs to be sync
23:07
<annevk>
because nothing should happen during the fetch
23:08
<zewt>
which it also is (since 8.5 doesn't happen)
23:08
<annevk>
send() returning has no effect on how the message loop works per se
23:09
<zewt>
well
23:09
<zewt>
i read step 8.5 as "return the send() call, and continue running this algorithm asynchronously" (since there's no other way you can keep running the algorithm)
23:10
<zewt>
(it doesn't actually say "asynchronously", but if that's not what's intended I'm not sure what it means)
23:11
<zewt>
eg. step 8.5 causes step 9 itself to happen asynchronously, so anything it does (eg. the fetch) is asynchronous, so the fetch algorithm doesn't need to do that again
23:14
<annevk>
so you say the fetch algorithm should not have a synchronous flag because it is implied?
23:14
<zewt>
no (because other things use it--I assume)
23:14
<annevk>
e.g. you think the way http://www.whatwg.org/specs/web-apps/current-work/#dom-xmldocument-load is defined is wrong?
23:14
<zewt>
i just mean that XHR can always set the synchronous flag
23:14
<zewt>
because it's redundant with 8.5 which already makes the fetch async
23:15
<annevk>
if you set the synchronous flag fetch will not update you intermediately
23:15
<annevk>
so switching states and such breaks
23:15
<zewt>
ah k
23:16
<annevk>
there's probably a better way to define this and we'll figure it out in a decade or so
23:16
<zewt>
heh
23:16
<annevk>
this is the first iteration of defining fetching and it's not always awesome
23:17
<annevk>
defining HTML properly took twenty years or so
23:17
<annevk>
encodings: ongoing
23:17
<zewt>
seems like it's also pretty hard to find the boundary of where it's worth banging your head trying to clean up and tighten a spec, and where it really is "good enough"
23:17
<annevk>
URLs: ew
23:17
<annevk>
zewt: I think the boundary is "good enough for now"
23:17
<Ms2ger>
DOM: ew
23:17
<zewt>
which I guess comes down to how much you trust implementors
23:17
<annevk>
where "for now" means the next five years
23:18
<Ms2ger>
Not at all
23:18
<zewt>
if you don't trust them *at all* then you try to turn specs into legal documents and everyone wants to kill themselves
23:18
<annevk>
and then we'll find a better way and maybe five-ten years later someone will write it up that way
23:18
<annevk>
Ms2ger: hey, DOM is becoming pretty decent
23:18
<annevk>
good idea about nn
23:18
<zewt>
you missed
23:19
<annevk>
I do appreciate you taking a close look
23:19
<annevk>
you are one of the rare few that do :)
23:19
<zewt>
don't want to waste your time on stuff that works, i do want to figure out why things are the way they are though :)
23:19
<annevk>
and imo it's definitely worth it
23:21
<annevk>
oh hey, for those who care, I wrote something somewhat "lenghty" (compared to my usual posts) in Dutch: http://fronteers.nl/blog/2011/12/het-platform-bouwen
23:22
<annevk>
it's rambling on building the platform
23:24
<zewt>
gaah
23:25
<zewt>
i just typed "document.body.children" into the chrome console ... in a tools window attached to the single-page html spec
23:25
<zewt>
quite possibly the worst idea imaginable
23:25
<annevk>
we spec editors love not using anything but <hx> and <p> inside <body> :)
23:25
<zewt>
well, the problem being that the console froze :P
23:26
<gsnedders>
zewt: Surprising. :P
23:26
<gsnedders>
zewt: File a perf bug. :P
23:26
<zewt>
yeah i'll get riiiight on that
23:27
<annevk>
HTML has perf bugs. Film at 11.
23:27
<annevk>
if reddit was not mainstream I'm sure it would be a meme :p
23:30
<zewt>
fwiw, IE9 agrees with Chrome about document.body.children[string] returning a collection rather than the first item
23:30
<zewt>
re earlier conversation
23:33
<Hixie>
anyone know if anyone implements dropzone="" yet?
23:33
<zewt>
(looks like Opera returns a collection, too)
23:35
<zewt>
rniwa: ^
23:35
<rniwa>
zewt: pong
23:36
<MikeSmith>
yall dutch MCs got a nice language to work with
23:36
<rniwa>
zewt: wait, so children returns a collection?
23:36
<rniwa>
on IE9?
23:36
MikeSmith
reading http://fronteers.nl/blog/2011/12/het-platform-bouwen
23:39
<MikeSmith>
rniwa: hey, you have a test suite of any kind started for undomanager?
23:39
<rniwa>
MikeSmith: not yet
23:39
<MikeSmith>
ok
23:39
<MikeSmith>
would be a bit premature, I guess
23:40
<rniwa>
MikeSmith: my plan is to start implementing it in webkit and write test suites as I do
23:40
<MikeSmith>
cool
23:40
<rniwa>
s/test suite/tests/
23:40
<zewt>
rniwa: one sec, making a quick test page
23:40
<rniwa>
MikeSmith: it's hard to write good tests without any implementation
23:40
<MikeSmith>
I'm in the process now of looking at specs in development and figuring out which are priorities for testing
23:40
<MikeSmith>
rniwa: yeah, sure
23:41
<smaug____>
priorities for testing? all of them?
23:41
<zewt>
http://zewt.org/~glenn/test-htmlcollection.html
23:41
<zewt>
rniwa: IE returns an HTMLCollection containing both items for both children["x"] and children.item("x")
23:42
<MikeSmith>
smaug____: well, more in terms of "what are we lacking any test suites at all for right now but that we could have tests for if somebody were to write test cases"
23:42
<rniwa>
zewt: that seems wrong
23:42
<zewt>
chrome returns an array containing the same (but it's not an HTMLCollection)
23:42
<rniwa>
zewt: :(
23:42
<zewt>
(but they're both similar--they're both arrays of results)
23:42
<zewt>
only Firefox actually returns a single result for both of those
23:42
<rniwa>
zewt: that sucks
23:42
<zewt>
basically, IE (and almost Chrome) treats those functions as filters instead of getters
23:42
<rniwa>
zewt: maybe there are some web contents that depend on this behavior then
23:43
<zewt>
in IE9 you can say document.body.children["x"]["x"]["x"]["x"]["x"] since each returns another HTMLCollection
23:43
<rniwa>
zewt: that's funny
23:44
zewt
hunts around opera trying to find the console, which seems to be quite well-hidden now
23:44
<zewt>
gaaaaah, opera is yet different, heh
23:44
<zewt>
let me dump the results into a static page
23:46
<zewt>
gah, copying text from ff8's console and pasting into notepad is doing something evil
23:47
<smaug____>
zewt: what does it do?
23:47
<smaug____>
on FF9 it seems to work just fine
23:47
<smaug____>
(linux)
23:47
<zewt>
not entirely sure, i ended up with some kind of non-printing characters at the end of the line which confused it
23:47
<zewt>
i jumped to gvim, i'll poke at it in a few
23:49
<Velmont>
zewt: CTRL+ALT+I for DragonFly, then you can either ESC to get a console, or click it. -- Or Error Console, CTRL ALT O. I think :-)
23:50
<annevk>
whoa
23:50
<annevk>
data:text/html,<style>input:hover{background:lime}</style><label>hover this text<input></label>
23:50
<sicking>
zewt: wait, wht does body.children.x return?
23:50
<annevk>
in WebKit/Gecko
23:50
<annevk>
that's pretty wild
23:50
<sicking>
zewt: all elements with name <x> in the children list?
23:51
<zewt>
sicking: one sec
23:51
<zewt>
http://zewt.org/~glenn/test-htmlcollection-results.txt
23:51
<zewt>
for those three, literally every implementation is significantly different, heh
23:51
<sicking>
annevk: ugh, gecko has a pretty nasty bug there
23:51
<sicking>
annevk: hover the label, then the <input> and then the label again
23:52
<TabAtkins>
annevk: Yeah, exposing dictionaries somehow would be good, so you can trivially feature-test.
23:52
<annevk>
sicking: oops
23:52
<sicking>
annevk: nice, webkit has the same bug
23:52
<annevk>
sicking: prolly because of the magic
23:52
<sicking>
annevk: harder to trigger, but it's still there
23:53
<rniwa>
zewt: seems like IE9's behavior is most sane
23:53
<rniwa>
zewt: of course FF8's behavior matches the spec but is inconsistent with the rest.
23:54
<rniwa>
zewt: I think we should just change the spec to always return HTMLCollection
23:54
<rniwa>
zewt: given that IE, WebKit, and Opera all returns array-like objects for [] and namedItem, I don't think it makes sense for us to match the spec.
23:55
<Hixie>
anyone know if making atob() skip spaces has broken anything?
23:55
<Hixie>
gsnedders said that opera not throwing exceptions in atob was causing compat issues
23:55
<Hixie>
but i don't seem to have any up to date info on atob() compat for opera since it was updated to throw exceptions but not for whitespace
23:55
<zewt>
sicking: added children.x to http://zewt.org/~glenn/test-htmlcollection-results.txt
23:55
<zewt>
rniwa: agreed (odd-looking api but oh well)
23:56
<rniwa>
zewt: well but I suppose FF8 also returns HTMLCollection for option element
23:56
<rniwa>
zewt: so this change makes things more consistent across the board
23:56
<zewt>
http://zewt.org/~glenn/test-htmlcollection.html in case anyone wants to stupid-check my test
23:57
<rniwa>
zewt: can we also test IE6/IE7?
23:57
<zewt>
need to dig out my vms
23:57
<zewt>
(i dream of distributed browser code testing~~~)
23:57
<annevk>
nn
23:58
<zewt>
later
23:58
<sicking>
zewt: ugh! .children shouldn't be a HTML collection
23:58
<sicking>
zewt: it might be worth trying FF10. I think we turned a lot of HTMLCollections into NodeLists there
23:59
<rniwa>
sicking: oh dear...
23:59
<rniwa>
sicking: we're improving engines too fast LOL
23:59
<sicking>
rniwa: i disagree, we're not doing it fast enough :)