00:59
<G0k>
check it out all http://thefridgeowl.com/stuff/domeventtest/test01.html
00:59
<G0k>
server side event unit test thing
01:00
<G0k>
anyone with a recent copy of opera?
01:04
<Philip`>
"Recent" like 9.22, or like 9.5?
01:04
<G0k>
like..last 6 months i guess
01:05
<Philip`>
"Statement on line 50: Type mismatch (usually a non-object value used where an object is required)"
01:05
<G0k>
uh. of which file?
01:06
<Philip`>
(in 9.22, which is almost the most recent public one)
01:06
<Philip`>
Line 50 of linked script http://thefridgeowl.com/stuff/domeventtest/test01.js
01:06
<Philip`>
listener.addEventSource("test01.php");
01:06
<G0k>
so do any of the Waiting fields turn to "Passed" ?
01:06
<colione>
three
01:06
<colione>
mouseover MouseEvent Passed
01:06
<colione>
mousemove MouseEvent Passed
01:06
<colione>
mouseout MouseEvent Passed
01:07
<Philip`>
They all say "Waiting" for me
01:07
<Philip`>
Oh, now those three say "Passed"
01:07
<colione>
Opera 9.22.3687 Mac Os X
01:08
<G0k>
oh heh
01:08
<Philip`>
They seem to go to "Passed" when I move my mouse over a bit just off the top-right corner of the table
01:08
<G0k>
because when you move your mouse over the thing
01:08
<G0k>
yeah
01:08
<Philip`>
Oh, I mean top rather than top-right
01:08
<G0k>
hm. so they don't seem to support the addEventListener method
01:09
<G0k>
lemme try the event-source tag
01:10
<colione>
same result in latest webkit
01:10
<G0k>
yeah i haven't checked my webkit implementation in yet. :)
01:24
<G0k>
wow well
01:24
<G0k>
http://thefridgeowl.com/stuff/domeventtest/test02.html
01:24
<G0k>
it does do a great job making opera leak memory anyway
01:31
<G0k>
finally got opera working...seems to dislike the divx plugin a lot
01:31
<G0k>
well if anyone wants to play with it http://thefridgeowl.com/stuff/domeventtest/test02.html now kinda works on opera 9.2.whatever
01:32
<G0k>
some things work some don't
01:32
<G0k>
dunno who's at fault for the nonworking ones
01:32
<Philip`>
I get some combination of "Passed", "Waiting" and "Not a (...)Event" on testf02.html
01:33
<Philip`>
Uh, test02.html
01:33
<G0k>
well. they seem to support some and not support others
01:33
<G0k>
and/or my tests are bad
01:35
<Philip`>
and/or the spec is bad
01:36
<G0k>
well that's almost undeniable. :)
01:37
<G0k>
my tests are particularly biased, since i kinda invented them to test my webkit implementation
01:38
<Philip`>
Opera's implementation is fairly old and untested, so I wouldn't expect it to be a good approximation of correctness. I've got no idea if they've made any improvements to this stuff for v9.5, though
01:39
<G0k>
is there a 9.5 public beta?
01:39
<Philip`>
Not yet
01:39
<Philip`>
The only date I've heard is "soon", for the past few months :-)
01:40
<G0k>
hm. i know there was a patch for an implementation in mozilla at some point too
01:40
<G0k>
but it was never accepted
01:40
<G0k>
kinda curious how that was implemented too
01:42
<colione>
i know that zcorpan_ has a copy of opera 9.5 *tries to draw his attention to irc*
01:42
<Philip`>
https://bugzilla.mozilla.org/show_bug.cgi?id=338583
01:43
<zcorpan_>
someone want me to test something in kestrel? :)
01:44
<G0k>
http://thefridgeowl.com/stuff/domeventtest/test02.html
01:44
<colione>
:D
01:44
<Philip`>
zcorpan_: You could save a lot of effort if you accidentally sent an email to the WHATWG list with the Kestrel installer attached
01:44
<zcorpan_>
10 passed, 7 failed, the rest are waiting
01:44
<zcorpan_>
Philip`: ha
01:45
<G0k>
k so doesn't look like any progress from 9.2
01:45
<G0k>
zcorpan_: what about http://thefridgeowl.com/stuff/domeventtest/test01.html ?
01:45
<colione>
hmm 11 past in 9.22
01:45
<colione>
passed*
01:45
<G0k>
heh uhoh
01:46
<G0k>
to be honest, my mechanism for type checking an event is really pathetic
01:46
<Philip`>
In what way?
01:46
<G0k>
i check to see if "event" is a XXXEvent by seeing if event.initXXXEvent is defined
01:46
<Philip`>
Ah
01:46
<zcorpan_>
G0k: 9 passed, 7 failed
01:47
<G0k>
zcorpan_: for test01?
01:47
<zcorpan_>
G0k: yes
01:47
<G0k>
ah neato so the addEventSource thing is in kestrel. thanks.
01:47
<Philip`>
Maybe you could do something like Object.prototype.toString(event) and see if it's called "[object XXXEvent]"
01:50
<G0k>
ah
01:51
<G0k>
alright well all those that were previously failing in opera now aren't
01:52
<G0k>
but they're not getting called either
01:52
<G0k>
i mean
01:52
<G0k>
the ones that weren't getting called
01:52
<G0k>
still are not
01:54
<Philip`>
"if (Object.prototype.toString(event) == interfaceName) { passed = false; ..." - that doesn't make sense
01:55
<Philip`>
It should be "if (... != "[object "+interfaceName+"]") ...", I think
01:55
<G0k>
well. it's returning just the class name
01:55
<G0k>
in both webkit and opera
01:56
<Philip`>
But you're setting passed to false if the value is equal to the expected value
01:56
<Philip`>
when it should be the other way around
01:56
<G0k>
oh craps
01:56
<G0k>
wow
01:57
<Philip`>
Also, I was wrong anyway
01:57
<Philip`>
It should be Object.prototype.toString.call(event)
01:57
<Philip`>
else you'll always get "[object Object]"
01:57
<Philip`>
Also this assumes the objects have the same type as the interface, rather than a subclass, and I don't know if that's valid
02:00
<G0k>
well i think the server side event spec currently explicitly says which class the events need to be
02:01
<G0k>
but yeah i mean i suppose it would still be valid if it were a subclass of that class
02:03
<G0k>
man javascript is really in need of "does this implement some interface" function
02:06
<zcorpan_>
foo.constructor ?
02:07
<G0k>
well for instance
02:08
<G0k>
Opera seems to use the KeyEvent prototype everywhere i would expect a KeyboardEvent prototype
02:08
<zcorpan_>
hm
02:08
<G0k>
which...i now notice isn't in dom 3. heh
02:09
<zcorpan_>
anyway... well beond bedtime for me
05:30
<Hixie>
"Niether Hixe nor Philip looked for use of <input usemap> . Hixie looked for misuse (or esoteric use) of <input usemap>."
05:30
<Hixie>
i thought i had specifically looked for _valid_ cases...
05:30
<Hixie>
i wonder what rob is basing that on
05:31
<G0k>
good god is this still being argued?
05:32
<G0k>
is there seriously a legitimate use for image maps at all nowadays?
05:34
<Hixie>
i dunno i'm not entering this discussion any more
05:34
<G0k>
deprecate with extreme prejudice!
05:35
<Lachy>
Hixie, Rob is looking for usage that matches the way he imagines <input usemap> should work, not the way it has ever been defined or implemented
05:36
<Lachy>
and thus, he rejects any observation of <input usemap> on the basis that what he's looking for automatically can't exist
05:41
<Hixie>
anyone tried explaining the whole thing about how scientific research and such is all about looking at what actually is there, and not what you're expecting?
05:43
<Lachy>
I think he misses the point of the whole observation stage. I think he wants to start directly with some hypothesis developed without any observation at all and then test it
05:44
<Lachy>
I don't think he understands that a hypothesis should be developed to try and explain your observations, when then gets tested and refined
05:47
<Lachy>
maybe someone needs to explain that the statistics he's objecting to so much are used as a rough guide only. The more important information is obtained from looking at how and why something gets used, which is what our decisions are based on
05:47
Hixie
shrugs
05:49
<G0k>
maybe it should be decided by a duel.
05:50
<Hixie>
on a more positive note, i do like how much the various studies correlate
05:51
<G0k>
anyone know who operates http://validator.nu/ ?
05:55
<Hixie>
hsivonen
05:55
karlUshi
would prefer that people do not use "scientific research" to justify, specifically when things are not really done that way. :) Or at least that there are many ways of doing scientific research.
05:56
karlUshi
has the feeling that people are mixing experimental research with scientific research. :)
05:58
<Lachy>
karlUshi, observation and experementation is part of the whole scientific process, so I don't understand what you mean
05:59
<karlUshi>
Lachy: My whole academic background is… scientific research :)))
05:59
<karlUshi>
Astrophysics exactly
05:59
<karlUshi>
there are many ways of doing sciences, not only one.
06:00
<karlUshi>
You can start from observations. You can also start from a model and looking for evidences by observing.
06:00
<karlUshi>
Observations don't necessary come first in the scientific method.
06:12
<G0k>
yeah but...once you fail to find evidence, that's not evidence of a conspiracy to undermine your model.
06:39
<Hixie>
i hope the hixie.ch dns gets fixed soon so i don't lose too much e-mail
06:42
<othermaciej>
is Rob just engaging in a brilliantly subtle attempt to drain all productivity?
06:42
<othermaciej>
I'm starting to be amazed at his ability to disagree with even the most basic things
06:48
<G0k>
is this on public-html?
06:52
<othermaciej>
yes
06:53
<othermaciej>
public-html is now mostly useful content plus him plus replies to him
06:53
<G0k>
who is he?
06:53
<othermaciej>
Robert Burns?
06:54
<G0k>
yeah what's he do?
06:54
<othermaciej>
it's hard to explain without experiencing it
06:54
<G0k>
i mean does he have an occupation?
06:54
<othermaciej>
oh
06:55
<othermaciej>
I believe he is a grad student
06:55
<karlUshi>
http://www.robburns.com/
06:56
<karlUshi>
I guess he will be able to come at the Tech Plenary being in Mass.
06:56
<G0k>
does he design pages or something?
06:57
<G0k>
eeeks econ say no more
06:58
<othermaciej>
marxist econ
06:58
<karlUshi>
G0k: this is an innapropriate comment, except if you let me say "Computer Programmer… oh these binary people! say no more.". :/
06:59
<Lachy>
what is Marxian philosophy?
06:59
<G0k>
i make try to make as few appropriate comments as possible
06:59
<G0k>
it is my intention to maximize my offendees
06:59
<othermaciej>
presumably the philosophy of Karl Marx, his students, and intellectual followers
06:59
<G0k>
so yeah bring it on
07:00
<othermaciej>
I don't have a problem with economists as a class
07:00
<karlUshi>
othermaciej: me neither.
07:00
<karlUshi>
and computer programmer as well.
07:00
<othermaciej>
most of them are good at thinking in terms of incentives, spontaneous order, and unintended consequences
07:00
<karlUshi>
There are people of different nature and different style, specifically online/offline.
07:00
<othermaciej>
all of which are are useful concepts to apply to global technical standards
07:01
<karlUshi>
I know a few persons on this channel who behave differently online and offline.
07:01
<G0k>
i have several economist friends, they're just all very likely to get into an argument with me
07:02
<karlUshi>
maybe you have to ask questions about yourself then G0k ;)
07:02
<G0k>
yeah i don't deny that i'm likely to be wrong usually
07:54
<Lachy>
Hixie, would it be possible for the spec to provide some sort of heuristic guidelines for programmatically determining when should be provided? e.g. if you have <h1><img src=""></h1>, it should be clear for a validator that the lack of alt text is an error.
07:55
<othermaciej>
you could require alt in any context that would require text if the embedded content wasn't there
07:55
<Lachy>
could it be defined that alt="" can only ever be omitted when contained within a <figure>, since that would represent it as a key part of the content
07:55
<othermaciej>
or something
07:56
<Lachy>
currently, all the examples in that section where alt can be omitted are contained within figure too
07:58
<othermaciej>
allowing missing alt only in <figure> would address the photo gallery use case but not the "pasting images into an end-user rich text editor" use case
07:59
<Lachy>
hmm, yeah
08:56
<jgraham>
Lachy: I would be _very_ wary of trying to subset where alt="" is allowed.
08:56
<jgraham>
Oh wait a sec, I misread that
08:56
<jgraham>
Ignore me
08:56
<Lachy>
right
09:13
<virtuelv>
I really wish people could refrain from bad ad hominems on random blogs
09:13
<Lachy>
virtuelv, ?
09:13
<Lachy>
pointer
09:18
<virtuelv>
http://www.456bereastreet.com/archive/200708/the_html_5_circus_why_i_left_and_rejoined_the_w3c_html_working_group/#comment3
09:21
<krijnh>
Yeah, thanks for DOSing my server Roger ;]
09:24
<krijnh>
Ah, the comment
09:25
<othermaciej>
looks like Google has secretly invented the fountain of youth
09:27
<virtuelv>
krijnh: yes, I was specifically refering to the comment itself
09:28
<virtuelv>
While I may not agree with all of what Roger says, he is at least not resorting to fallacies to argue his position
09:30
<othermaciej>
Roger's actual post seems reasonable, though looking back at his posts to the group and the replies to them, I'm not sure why he felt attacked
09:30
<Lachy>
"I am far from the only person to think that the current process of editing the specification for the next version of HTML is… less than ideal." - we really need to address this issue somehow.
09:30
<Lachy>
although the consensus based approach some people are advocating won't work, I think we need better PR to improve the current process
09:31
krijnh
agrees
09:31
<krijnh>
Although I don't know how to fix it
09:31
<hsivonen>
the IETF has *rough* consensus and *running* code
09:32
<hsivonen>
much better than consensus on theory
09:32
<krijnh>
Perhaps it's the whatwg "vs." w3c attitude
09:32
<othermaciej>
I like the idea of the IETF process
09:32
<othermaciej>
though I have no real experience with the practice
09:32
<Lachy>
Roger just suggested to me that, whenever Hixie sends one of his summary emails responding to an issue on whatwg, we should notify public-html of it too
09:33
<krijnh>
whatwg is easier to track though
09:33
<hsivonen>
Lachy: good idea
09:34
<krijnh>
Why isn't that done already?
09:34
<krijnh>
Seems logical to do so
09:34
<Lachy>
getting a schedule from Hixie too would be good, and searching the whatwg archives and providing pointers to previous discussions beforehand may also help
09:36
<othermaciej>
there's lots of organizational and informational things that could be done, but ideally by someone other than Hixie since his plate is pretty full
09:36
<othermaciej>
I feel like the sense that reported issues are tracked is not solid enough yet, which may make people feel ignored
09:36
<hsivonen>
Lachy: last time when Hixie had an open-secret schedule, it didn't hold. I think the best we could get is a topic list without calendar time
09:36
<Lachy>
yeah, I'm sure others will volunteer to find all that info. We just need to know what the upcoming topics are
09:36
<othermaciej>
a short list of the next few topics would be helpful
09:37
<othermaciej>
and could guide review as well
09:37
<othermaciej>
(more useful to review soon-to-be-revisited areas)
10:10
<virtuelv>
I'd like to have something like trac for open issues
10:20
<hsivonen>
hrm. looks like the Dreamhost DNS is down
10:21
<virtuelv>
hsivonen: appears that way, all my sites are down as well
10:46
<Lachy>
is the only purpose behind the suggested noalt="" attribute (or equivlent) just a hack to work around the validation issue?
10:48
<hsivonen>
Lachy: the purpose is to make hand coders perform an affirmative act of typing instead of just leaving something out
10:49
<hsivonen>
(fwiw, I don't like the noalt idea. It won't help with non-hand-coded source and it will majorly annoy hand coders)
10:49
<Lachy>
hmm. Ok. But I think it's perfectly fine for authoring tools and conformance checkers to provide warnings when an alt attribute has been omitted, if the author wants such information
10:50
<Lachy>
indeed, and it doesn't acctually address the issue of getting people to provide it, or just abusing it to pass validation
10:50
<hsivonen>
yeah, warnings requested by the author are very different from baking something into the conformance definition
10:53
<Lachy>
you summed it up nicely here http://www.mail-archive.com/whatwg⊙lwo/msg06146.html
10:54
<hsivonen>
btw, if you feel there are particular issues that I should develop optional warnings for, please start a page on the WHATWG wiki
11:02
<Lachy>
I think there is a page on the wiki for that stuff somewhere, isn't there?
11:02
<Lachy>
I'll have to check when the server is back up
11:55
<Whiskey_M>
'lo
12:52
<gsnedders>
is it just me or is whatwg.org down?
13:14
<mgdm>
gsnedders: I can't resolve it
13:14
<mgdm>
in DNS, I mean
13:14
<Lachy>
all of Hixie's sites are down. I think it's a problem with dreamhost
13:14
<mgdm>
Ah, I tried to get to simplebits.com earlier and it was broken too
13:20
<Philip`>
dreamhoststatus.com appears to be broken too, which doesn't help immensely
14:28
<gsnedders>
what's the point of the mask in "Content-Type sniffing: unknown type"?
14:29
<gsnedders>
ah. to make them case insensitive, or not.
16:28
<Lachy>
would anyone like to review this blog post for the whatwg blog (which I'll publish when the site is back up) http://lachy.id.au/temp/alt
16:40
<zcorpan_>
Lachy: looks good to me... though you may want to include more examples of where it is ok to omit alt
16:41
<hsivonen>
Lachy: I'd do s/the reality of the situation/the situation/ to avoid the impression that others are missing the reality
16:41
<Lachy>
I'm going to be linking to the spec, should I just borrow some of those?
16:41
<Lachy>
I like talking about reality, but ok
16:42
<Lachy>
I suppose it hasn't gone down well with some people
16:43
<jonbarnett>
my lynx doesn't behave as described here
16:44
<Lachy>
it doesn't? There's emails in the whatwg archive that say it does
16:45
<zcorpan_>
jonbarnett: you have a test url?
16:45
<jonbarnett>
for me, lynx has options to ignore images, treat images as labels, or treat them as links. When treated as labels, the filename is used when alt is omitted, and nothing is used when alt is blank. When treated as links, the filename is used both when alt is omitted and when alt is blank. It's not that big of a difference: lynx is still making a distinction, and your version may vary
16:47
<Lachy>
I'm not sure what version was tested, it wasn't mentioned
16:47
<jonbarnett>
(I may have been the one mentioning it and not having tested thoroughly *blush*)
17:01
Philip`
wonders if it could be required for conformant <table>s to contain at least one <th>
17:02
<Philip`>
since I can't think of any obvious cases where you'd have a table with no headings, unless it's a layout table
17:02
<zcorpan_>
Philip`: i've used tables without headers that aren't layout tables
17:03
<zcorpan_>
genealogical table
17:08
<Lachy>
Philip`, the question you need to ask is, in the event that there are use cases for tables without headers, what harm is caused by the lack of th?
17:09
<hsivonen>
Philip`: four-cell tables in MBA material
17:09
<hsivonen>
Philip`: unless you consider all four to me <th>s
17:09
<hsivonen>
s/to me/to be/
17:18
<Philip`>
Lachy: If there are uses cases for headerless data tables, then we can't require headers; but if there aren't, then conformance checkers could know that any headerless table is a non-data table and is therefore non-conforming
17:18
<Philip`>
(e.g. http://www.noraradcliffe.co.uk/ is (very nearly) conforming XHTML1, designed by people who "exceed accessibility requirements", but uses tables for layout)
17:18
<hsivonen>
Philip`: which would only lead to people including bogus or barely-semantic <th>s in their tables
17:18
<Lachy>
maybe, but it's very difficult to prove that there aren't any
17:19
<Philip`>
(Er, I mean it's (very nearly) valid XHTML1)
17:23
<Philip`>
http://www.w3.org/TR/xhtml-role/ - "A conforming user agent MUST support all of the features required in this specification." - hmm, I can't actually find any required UA features in the specification
17:26
<zcorpan_>
Philip`: indeed
17:28
<zcorpan_>
e.g. http://www.pointerklubben.se/stamtavla.asp?Id=S27834/2001 is a table with no headers
17:42
<hsivonen>
zcorpan_: interesting dog names
17:58
<doublec>
is www.whatwg.org down?
17:59
<Philip`>
Yes
18:00
<Philip`>
(Dreamhost's problem, I think)
18:02
<doublec>
thanks
18:23
<h3h>
hooray Dreamhost!
18:23
h3h
rolls eyes
18:32
<jonbarnett>
... and hixie's site is down, too?
18:34
<Philip`>
Yes, for the same reason
18:36
<Hixie>
this is the worst dreamhost outage yet
18:36
<Hixie>
if it wasn't for the fact that i pay $0, i'd be outraged
18:36
<Hixie>
yesterday i was worried that i was losing whatwg e-mail
18:37
<Hixie>
but now that whatwg isn't resolving either, i'm less concerned :-P
18:37
<Philip`>
At least http://www.dreamhost.com/ is up and says "Unfortunately we are experiencing a return of similar network problems that we experienced yesterday. Please keep your eye on this post as we will update it as soon as we have mor..." then links to the dead dreamhoststatus.com
18:37
<Philip`>
so presumably they have actually noticed there's a problem
18:37
<jonbarnett>
my personal space is on DH, and it's up (I guess I'm just tauting)
18:38
<met_>
http://ajaxian.com/archives/web-forms-20-cross-browser-implementation
18:41
<zcorpan_>
hmm, some of the tests don't have any pass condition
18:42
<zcorpan_>
and all have too much junk around the actual test... :)
18:47
<Hixie>
they do know there's a problem
18:47
<Hixie>
they've been working overnight trying to fix it
18:47
<Hixie>
they update their internal status message ever few minutes
18:48
<Hixie>
something to do with lost dns records, they're rebuilding their dns config from scratch using a slow-working script
18:48
<Hixie>
the discussion in #html-wg was interesting
18:49
<Hixie>
can someone summarise in an unbiased way what robburns' concerns were?
18:51
<Hixie>
Lachy: btw i apparently have ~3800 or so (+/- 200, i'm going from memory) e-mails in my queue right now
18:52
<Lachy>
oh, nice! It's reduced :-)
18:52
<zcorpan_>
aiui, he wanted the html wg to discuss issues raised outside the group before the spec is edited, instead of the editors editing based on external feedback and then letting the wg discuss further... but i might have missed something
18:52
<jonbarnett>
Hixie: i haven't been on #html-wg. is it about <img> or your editing process?
18:53
<jonbarnett>
nm
18:55
<hsivonen>
Hixie: my understanding was that Rob was unhappy that 1) you are focusing on stuff other than the discussions of public-html and 2) that your recent edits (in his opinion) run counter the thrust of discussions on public-html. (this may well be a biasod account)
18:56
<Hixie>
ok
18:57
<Hixie>
2) may well be true, i've seen no real consensus on public-html so it's hard to know what the thrust of discussion is
18:57
<Hixie>
i guess i could start picking htmlwg issues to deal with if it makes them happier
18:57
<Lachy>
Hixie, I believe Rob would agree with these suggestions http://krijnhoetmer.nl/irc-logs/whatwg/20070817#l-320aren't
18:57
<Hixie>
doesn't really make much difference what order i deal with issues in
18:57
<hsivonen>
I've been concerned about the formation of a false consensus on public-html
18:57
<Lachy>
http://krijnhoetmer.nl/irc-logs/whatwg/20070817#l-320
18:58
<hsivonen>
Rob's view suggests that my concern is valid
18:58
<hsivonen>
Hixie: well, it does make a PR difference
18:58
<Hixie>
i can certainly bcc public-html on any mail to whatwg
18:58
<hsivonen>
Hixie: that would probably help
18:59
<Hixie>
the reason i haven't is that it would cause a flood of e-mail to whatwg
18:59
<Hixie>
since every e-mail i send to whatwg is just replied by people with actual experience, but e-mail sent to public-html immediately devolves into a flamewar
19:00
<hsivonen>
but it's really tiresome to avoid the formation of false consensus by keeping parroting old points
19:00
<Hixie>
don't worry about stopping false consensus
19:00
<hsivonen>
Hixie: true
19:00
<Lachy>
I think the alt attribute thread has actually become somewhat productive now
19:01
<Hixie>
just make sure that the wiki page for the issue clearly states all points
19:01
<Lachy>
although, started out as another near-flameware
19:01
<Hixie>
Lachy: really? you mean i should make more changes beyond what the spec says?
19:01
<Lachy>
Steven Faulkner wrote a constructive suggestion. I'm not sure I agree with it, but it was mostly well written
19:03
<Hixie>
you mean http://lists.w3.org/Archives/Public/public-html/2007Aug/0660.html ?
19:03
<Hixie>
i don't see how that could work
19:03
<Lachy>
nor do I. I was just pointing out that it was well intended, not a flame
19:04
<Hixie>
(btw, re your idea, <h1></h1> isn't non-conforming -- in fact we're dropping the concept of significant inline content)
19:04
<Hixie>
sure
19:04
<Lachy>
hmm. that's what I thought you'd say
19:05
<Hixie>
it's a good idea, though, i'd do it if we weren't doing the other thing
19:05
<Hixie>
is there a wiki page with a list of problems that have been fully described and are stable?
19:06
<Lachy>
I suppose if conformance checkers implement a feature like that, you could spec it.
19:07
<Lachy>
in the HTMLWG wiki? I don't think anything is particularly stable there
19:08
<Hixie>
maybe i should send mail saying that i'm still lwaiting for a stable wiki page
19:09
<Lachy>
the table headers issues is probably the most stable, and addressing that sooner rather than later would probably really help calm people down
19:11
<Lachy>
good night everyone.
19:12
<Hixie>
nn
19:13
<Hixie>
hmm
19:14
<Hixie>
i'm gonna go to work and consider how else to help keep public-html in the loop
19:15
<Hixie>
i don't think forwarding all whatwg mail to public-html (or even my own e-mails to public-html) would be productive
19:15
<Hixie>
but maybe we should try that anyway
19:16
<Hixie>
hmm
19:16
<Hixie>
afk
19:17
<takkaria>
I think that just having a public list with the next few things you're thinking of working on, with some semi-accurate dates, would go a long way
20:08
<Hixie>
takkaria: yeah... the problem is right now what i'm working on is "pick random piece of feedback, reply to it"
20:09
<takkaria>
may I suggest such a list might also be useful to you, then? :)
20:09
<Hixie>
woot, my site is back up :-D
20:09
<Philip`>
That sounds like it could be extended to "pick several random pieces of feedback, put them in a list, and reply to them in that order"
20:09
<Hixie>
takkaria: i dunno, i find i work most productively on the opposite of what i'm supposed to work on :-)
20:10
<takkaria>
ah, so you're not superhuman either? shame
20:10
<Hixie>
takkaria: literally, to the point where i've sometimes made lists of what i Must Do Now that are actually the opposite of what i really have to do to trick myself into doing it :-P
20:10
<takkaria>
heh
20:11
<takkaria>
I can't imagine a list of things you're not going to work on being very useful to the WG, since that'd be quite a long list
20:11
gsnedders
can think of one think to do:
20:11
gsnedders
faceplams
20:11
<gsnedders>
*facepalms
20:11
<gsnedders>
Hixie: the worst part is I'm not actually that surprised at you doing that.
20:12
<Hixie>
heh
20:12
<Hixie>
so, anyone want to take bets on what lists i got unsubscribed from due to my mail bouncing?
20:13
<gsnedders>
I'm tempted to guess public-xhtml
20:14
<Philip`>
Mailman seems to default to needing several weeks of bouncing before unsubscribing someone
20:14
<Hixie>
cool
20:15
<Philip`>
(but I could be wrong, or people could have non-default settings)
21:19
<kingryan>
does anyone know if anyone has implemented "4.7.4. Content-Type sniffing: feed or HTML"
21:19
<kingryan>
?
21:20
<kingryan>
sorry, my client is acting up
21:20
<gsnedders>
kingryan: yes. me.
21:20
<kingryan>
gsnedders: do you have a test suite? ;)
21:20
<gsnedders>
kingryan: no
21:20
<gsnedders>
kingryan: the implementation is literally just finished :)
21:20
<kingryan>
btw, url: http://www.whatwg.org/specs/web-apps/current-work/#content-type3
21:21
<kingryan>
gsnedders: is your code available?
21:21
<kingryan>
open source?
21:21
zcorpan_
could perhaps write some tests on content sniffing
21:21
<gsnedders>
zcorpan_: I'll write some tonight
21:21
<kingryan>
I'll contribute some tests too
21:21
<zcorpan_>
gsnedders: ok, great :)
21:22
<gsnedders>
kingryan: it will be, soon
21:22
<kingryan>
I have an interpretation question though
21:22
<gsnedders>
BTW, for step 10: http://lists.w3.org/Archives/Public/public-html/2007Aug/0671.html
21:22
<kingryan>
in step 6 of that algorithm
21:22
<gsnedders>
the double otherwise?
21:22
<kingryan>
both substeps 3 and 4 start with "otherwise"
21:22
<kingryan>
:) yes
21:22
<gsnedders>
a mistake, without question
21:22
<gsnedders>
for the algorithm to make sense they need to be a single "otherwise"
21:22
<kingryan>
did you get a clarification from Hixie or whoever else contributed that?
21:23
<zcorpan_>
how did you implement it? if ... else ... else ? :)
21:23
<gsnedders>
not yet, but there's no other way the algorithm would even work
21:23
<gsnedders>
(<http://lists.w3.org/Archives/Public/public-html/2007Aug/0672.html>;)
21:23
<kingryan>
ok, I'll try that approach
21:24
<gsnedders>
how should test cases be done?
21:24
<gsnedders>
as the HTTP headers are relevant…
21:24
<gsnedders>
just entire HTTP responses? JSON objects of header name => value?
21:25
<zcorpan_>
hmm
21:25
<kingryan>
I know 4.7.4 isn't self contained, but I don't see any references in that sectoin to http
21:25
<gsnedders>
kingryan: but section 4.7 as a whole
21:25
<zcorpan_>
gsnedders: just using .htaccess should work, no?
21:25
<kingryan>
right. I'm only focused on 4.7.4 right now
21:26
<kingryan>
but for testing the section as a whole...
21:26
<gsnedders>
zcorpan_: I currently have all my tests in SVN though, and not served through Apache
21:26
<kingryan>
what I usually do is have pairs of files "foo.html" and "foo.json"
21:27
<kingryan>
s/html/http/
21:27
<kingryan>
where "foo.http" is a full http response (headers and all)
21:27
<kingryan>
and "foo.json" includes whatever data we hope to extract
21:27
Philip`
wonders if that content-type sniffing algorithm can be correctly implemented as a regular expression
21:27
<kingryan>
Philip`: I think most state machines can be mapped to regexen
21:28
<gsnedders>
Philip`: depends on the regular expression engine :P
21:29
<Philip`>
I guess it'd be somewhat like ...
21:29
<Philip`>
my $ct = 'text/html'; $ct = { rss => 'application/rss+xml', feed => 'application/atom+xml' }->{$1} if substr($data, 0, 512) =~ /^(?:\s+(?:<!--.*?-->|!.*?>|\?.*?\?>))+?(rss|feed)/;
21:29
<gsnedders>
kingryan: so .json would just have the MIME type, in this case?
21:29
<Philip`>
at least if you ignore the rdf:RDF bit
21:29
<kingryan>
gsnedders: yes
21:29
<Philip`>
but that's quite utterly untested
21:29
<gsnedders>
Philip`: see the former of the two emails I linked to about rdf:RDF
21:30
<gsnedders>
Saf just treats <rdf:RDF as application/rss+xml, and I'm unaware of anything that breaks due to it
21:31
<Philip`>
I guess /^(?:\s+(?:<!--.*?-->|!.*?>|\?.*?\?>))+?<(rss|feed|rdf:RDF)/ might do that, then
21:32
<Philip`>
Urgh, but I'm still missing some <s
21:32
<Philip`>
/^(?:\s+(?:<!--.*?-->|<!.*?>|<\?.*?\?>))+?<(rss|feed|rdf:RDF)/
21:32
<Philip`>
/^(?:\s+(?:<!--.*?-->|<!.*?>|<\?.*?\?>))+?<(rss|feed|rdf:RDF)/
21:33
Philip`
finds that much easier to read than what's in the spec
21:33
<Philip`>
though it's still wrong
21:33
<Philip`>
/^(?:\s*(?:<!--.*?-->|<!.*?>|<\?.*?\?>))*?<(rss|feed|rdf:RDF)/
21:34
<Philip`>
/^(?:\s*(?:<!--.*?-->|<!.*?>|<\?.*?\?>))*?<(rss|feed|rdf:RDF|)/
21:34
Philip`
will get there eventually
21:36
<Philip`>
Hmm, still wrong
21:36
<Philip`>
/^(?:\s*(?:<!--.*?-->|<!.*?>|<\?.*?\?>))*?<(rss|feed|rdf:RDF|(?!!--|!|?))/
21:37
<Philip`>
Okay, maybe it's getting less easy to read
21:40
<gsnedders>
how about /^<\?xml[\x20\x9\xD\xA]+version([\x20\x9\xD\xA]+)?=([\x20\x9\xD\xA]+)?(\"1.0\"|'1.0'|\"1.1\"|'1.1')[\x20\x9\xD\xA]+encoding([\x20\x9\xD\xA]+)?=([\x20\x9\xD\xA]+)?(\"[A-Za-z][A-Za-z0-9._\-]*\"|'[A-Za-z][A-Za-z0-9._\-]*')([\x20\x9\xD\xA]+standalone([\x20\x9\xD\xA]+)?=([\x20\x9\xD\xA]+)?(\"(yes|no)\"|'(yes|no)'))?([\x20\x9\xD\xA]+)?\?>/
21:40
<gsnedders>
:P
21:41
<gsnedders>
if that's easy to read…
21:43
<Philip`>
It'd be a bit nicer if you split the common whitespace bits into a variable and did /^<\?xml $ws+ version $ws* = .../x or something :-)
21:44
<gsnedders>
it's a good question why I put it all together before saving it. I wrote it with variables like that.
21:44
<Philip`>
I wonder if I can compile the tokeniser algorithm into a Perl regexp...
21:44
<gsnedders>
Philip`: try! I doubt it, but I want to see the result if you can
21:44
<gsnedders>
kingryan: actually, just storing whole HTTP responses gets annoying when you have binary responses
21:46
<Philip`>
I don't remember seeing any bits of the algorithm that would cause annoying pumping lemma problems when trying to make a (theoretical) regular expression of it, and in any case nobody cares about that since real regexps are not regular...
21:47
<kingryan>
gsnedders: why is that annoying?
21:47
<takkaria>
being able to define your own character classes could increase readability a lot
21:47
<Philip`>
(I don't think a great number of theoretical models of regular expressions even attempt to cope with the ability to include arbitrary Perl code in the middle of one)
21:48
<gsnedders>
kingryan: text editors tend to not like arbitrary binary data
21:48
<kingryan>
right
21:49
<gsnedders>
kingryan: you want to do all of feed/html?
21:50
<kingryan>
gsnedders: not sure what you're asking
21:50
<gsnedders>
kingryan: of the test cases
21:50
<gsnedders>
kingryan: if you do the feed/html ones, I'll just do the rest
21:50
<kingryan>
cool
21:51
<kingryan>
yeah, I'll do as many as it takes for my software to work right :)
21:51
<gsnedders>
the feed/html ones are actually the ones I need, too :P
21:52
<kingryan>
so, how do we want to organize these?
21:52
<gsnedders>
that's what I'm wondering.
21:52
<kingryan>
the feed/html ones aren't dependent on HTTP
21:52
<kingryan>
is "content-type" the only HTTP header we need?
21:53
<gsnedders>
there's one check that content-encoding isn't set
21:53
<gsnedders>
but that only applies for certain content-type headers anyway
21:53
<gsnedders>
(step 1, 4.7)
21:54
<kingryan>
in other words, do we need arbitrary http headers?
21:54
<kingryan>
if not, we can just use JSON
21:55
<takkaria>
surely you could use JSON anyway?
21:55
<kingryan>
takkaria: the question was whether we need full http headers
21:55
<kingryan>
which I doubt we do
21:55
<gsnedders>
kingryan: we could just have tests for sections 4.7.[1-4]
21:55
<kingryan>
gsnedders: it'd be useful for me to have tests for the subsections, but we should probably also do overall tests
21:55
<gsnedders>
kingryan: actually no
21:56
<kingryan>
no what?
21:56
<gsnedders>
kingryan: the image section relies on the outer algorithm if it doesn't find anything
21:56
<kingryan>
ah, ok
21:56
<kingryan>
nevermind then
21:56
<gsnedders>
unknown jumps to text or binary
21:57
<kingryan>
we can still separate them logically so that if you have only implemented, for example "html vs. feed", you can get that section of tests to pass
21:57
<gsnedders>
yeah
21:57
<kingryan>
how about we structure the tests like so:
21:57
<kingryan>
[{"input": "512 byte string", "result": "mime type"},...]
21:58
<gsnedders>
always 512 bytes?
21:58
<kingryan>
isn't that the limit?
21:58
<kingryan>
unless I'm mistaken
21:58
<gsnedders>
"512 or more"
21:58
<gsnedders>
it's the min
21:59
<kingryan>
it seems to me like there non-determinism there
21:59
<gsnedders>
we better keep them to 512 bytes, so the most pessimistic implementations pass
22:00
<kingryan>
that seems reasonable to me
22:00
<gsnedders>
what do you want to do for the "Big Issue"?
22:00
<kingryan>
nothing for now?
22:00
<kingryan>
we have plenty of non-"big issue" things to implement
22:01
<gsnedders>
that's true.
22:02
<gsnedders>
kingryan: why did you use [{…}] though?
22:02
<gsnedders>
why the outer array?
22:02
<gsnedders>
you mean to have them all in one file?
22:02
<kingryan>
I was just saying that we'd have a list of them in json
22:03
<kingryan>
yes, I mean to have more than one per file
22:03
<gsnedders>
right.
22:03
<kingryan>
and we should do a file for each sub-section
22:04
<kingryan>
so binary.json, unknown.json, image.json, feed.json
22:06
<gsnedders>
JSON has no sort of hex encoding, only unicode, doesn't it?
22:06
<kingryan>
I think so
22:06
<gsnedders>
doesn't that make it impossible to represent some of the bytes we need?
22:07
<kingryan>
like what?
22:08
kingryan
has only really looked at the feeds sectoin
22:08
gsnedders
realises.
22:08
<gsnedders>
I can just do \u00FE\u00FF
22:08
<gsnedders>
allowing a UTF-16BE BOM without using the unicode code point for it.
22:08
<kingryan>
gsnedders: we could also do arrays of numbers
22:08
<gsnedders>
kingryan: no, strings are easier
22:08
<kingryan>
I agree
22:09
<gsnedders>
kingryan: do you have commit access to put them in html5lib?
22:09
<kingryan>
yes
22:09
<gsnedders>
ah. I don't.
22:10
<kingryan>
I can commit tests if you send them to me
22:10
gsnedders
instinctively types \xFF and not \u00FF
22:11
<gsnedders>
kingryan: @technorati.com one?
22:11
<kingryan>
either that or @theryanking.com
22:11
<kingryan>
doesn't matter
22:11
<gsnedders>
I just looked at what I had on mailing lists from you :)
22:12
<gsnedders>
jgraham: around?
22:12
<jgraham>
Yep
22:13
<gsnedders>
jgraham: possible to add me to html5lib so I can add tests?
22:14
<jgraham>
Sure. foolistbar? or some other address?
22:14
<gsnedders>
geoffers
22:14
jgraham
needs a better gmail address
22:15
<gsnedders>
foolistbar sometimes seems so appropriate
22:15
<jgraham>
OK it should be done
22:15
Philip`
needs a better one too
22:16
<gsnedders>
jgraham: thanks
22:16
<Philip`>
If someone could kick off all the early users who got the good usernames, that'd be very helpful
22:16
<gsnedders>
like me?
22:16
gsnedders
ducks
22:16
<gsnedders>
I got foolistbar quite late on, actually
22:16
<gsnedders>
they were already using googlemail.com by then
22:16
<jgraham>
gsnedders: You don't have anything like as common a name as Philip` or I though
22:16
<gsnedders>
jgraham: that's true
22:18
jgraham
decides jgrham.html might be good for html related bits
22:18
<jgraham>
er jgraham that is
22:19
<jgraham>
or if not good at least better
22:23
<gsnedders>
god do I hate typing JSON
22:23
<gsnedders>
practice makes perfect, though
22:25
<gsnedders>
(all of the tests I've so far written read "Hello, World!")
22:25
<takkaria>
I like using Jabberwocky when string data is required for tests
22:26
<jgraham>
Has anyone implemented the table model stuff
22:26
<jgraham>
?
22:27
jgraham
can't see where the algorithm is supposed to move on to the next row
22:30
<gsnedders>
http://geoffers.no-ip.com/svn/php-html-5-direct/tests/type-sniffing/textOrBinary — that's horrid to work on :\
22:31
<kingryan>
gsnedders: that does look horrid
22:32
<kingryan>
working with binary data in a text editor is never fun though
22:32
<gsnedders>
those aren't binary.
22:32
<gsnedders>
they're specific unicode encodings.
22:32
<kingryan>
ah, ok
22:32
<gsnedders>
BOM + "Hello, World!"
22:33
<zcorpan_>
don't \u... represent characters, not bytes?
22:33
<gsnedders>
zcorpan_: yes, but there's no other way to do it :(
22:33
<zcorpan_>
ok
22:33
<kingryan>
maybe JSON isn't the best approach then?
22:33
<gsnedders>
everything is going to be horrid
22:34
<zcorpan_>
[0xFE,0xFF,0x00, ...
22:34
<gsnedders>
that's the alternative in JSON
22:34
<kingryan>
gsnedders: we *could* do integer arrays
22:34
<gsnedders>
yeah
22:34
<gsnedders>
probably better, in actuality
22:34
<kingryan>
and that'd be closer to how the spec writes it
22:35
<kingryan>
how about we say the tests runners should be able to take either a string or an array of integers representing bytes?
22:35
<gsnedders>
actually, no hex forms in JSON.
22:35
<gsnedders>
ergh.
22:35
<kingryan>
ick
22:36
<gsnedders>
if we're doing JSON, the way it is is the only hex way.
22:36
<gsnedders>
yuk.
22:37
<Philip`>
Maybe you could have an array of string+ints, so you can write [0xFE,0xFF,"Hello",0x20,"world"]
22:37
<gsnedders>
Philip`: no. hex. numbers.
22:37
<Philip`>
Oops - [254,255,"Hello",32,"world"]
22:38
<gsnedders>
that means converting everything from the spec
22:38
<gsnedders>
and I can't convert hex to dec in my head
22:38
<gsnedders>
slowwww :(
22:38
<Philip`>
JSON5!
22:38
<gsnedders>
:)
22:38
<Philip`>
Or just say it's JS
22:38
<gsnedders>
yes, but half the point of JSON is it is supported in other languages
22:39
<Philip`>
Or use strings like "FE FF 00 48" and get people to translate it after the JSON parsing
22:39
<gsnedders>
XML + numeric entities suddenly looks tempting
22:46
<kingryan>
gsnedders: maybe a microformat? ;)
22:46
<gsnedders>
kingryan: what an out of the world suggestion from you :)
22:47
<kingryan>
:)
22:47
<gsnedders>
kingryan: <var> could be used for input and result… but their content?
22:48
<gsnedders>
<samp> for result?
22:48
<kingryan>
sure
22:48
<gsnedders>
and for the input?
22:49
<kingryan>
<code> ?
22:50
<gsnedders>
I'm slightly dubious about that, but I can't think of anything better
22:50
<kingryan>
<pre> ?
22:50
<gsnedders>
probably better we use XHTML, so there is no need for a full blown HTML parser
22:51
<gsnedders>
<pre> suits us insofar as that the entities (as they'll have to be) are the preformated input
22:52
<gsnedders>
actually, we can't have &#00;
22:52
kingryan
likes the idea of requiring an HTML parser for the HTML test suite
22:53
<kingryan>
ok, so are we back to JSON, then?
22:53
<gsnedders>
what happens to &#00 in HTML5? Hixie?
22:53
<gsnedders>
*&#00;
22:54
<kingryan>
I don't see any references to that in html5
22:54
<Philip`>
"if the number is zero, if the number is higher than 0x10FFFF, or if it's one of the surrogate characters (characters in the range 0xD800 to 0xDFFF), then this is a parse error; return a character token for the U+FFFD REPLACEMENT CHARACTER character instead"
22:55
<Philip`>
( http://www.whatwg.org/specs/web-apps/current-work/multipage/section-tokenisation.html#tokenising )
22:55
<kingryan>
ah
22:55
<gsnedders>
I knew if it was unescaped it got replaced
22:55
gsnedders
sighs
22:56
<gsnedders>
damn. null. bytes.
22:56
<Philip`>
You could store the whole document with ROT-1, so the null bytes map onto &#x01;
22:57
takkaria
chuckles
22:57
<kingryan>
I think we're back to JSON
22:57
<gsnedders>
ROT-1 sounds like a nice idea
22:57
<gsnedders>
as long as we never need 01
22:58
<kingryan>
you mean FE?
22:58
<gsnedders>
it means we can't test one byte in a range of bytes
22:58
<gsnedders>
kingryan: no, with rot-1
22:58
<gsnedders>
kingryan: map &#00; to &#01;
22:58
<kingryan>
that mens FE maps to 00, right?
22:58
<gsnedders>
kingryan: ah. true.
22:59
<gsnedders>
kingryan: FF, surely?
22:59
<Philip`>
You've got the whole of Unicode to work in - use &#x100;
22:59
<Philip`>
(for &#xFF + 1)
22:59
<kingryan>
true
22:59
<gsnedders>
or just replace 00 with 01
22:59
<gsnedders>
and keep the rest as is
22:59
<kingryan>
as long as we don't need FFFE :)
22:59
<gsnedders>
FFFE is UTF-16 BOM
23:00
<kingryan>
I know ;)
23:00
<gsnedders>
I expected you did
23:00
<gsnedders>
replace 0 with 1 seems the simple solution
23:02
<kingryan>
are we still talking about doing this in html?
23:03
<gsnedders>
yes.
23:08
<gsnedders>
RFC: http://geoffers.no-ip.com/svn/php-html-5-direct/tests/type-sniffing/textOrBinary
23:09
<gsnedders>
wow. we've taken 75 minutes to get this far.
23:09
tantek
volunteers gsnedders to go to a W3C f2f meeting.
23:10
<gsnedders>
tantek: if you can get me out of school and get me paid for, sure :P
23:10
gsnedders
wonders what is up with tantek's connection
23:11
<gsnedders>
tantek: if you can get me out of school and get me paid for, sure :P
23:11
<gsnedders>
tantek: what's up with your connection, BTW?
23:12
<kingryan>
I think tantek's at a cafe
23:12
<gsnedders>
and bad wi-fi?
23:14
<gsnedders>
kingryan: should we go with HTML then?
23:14
<gsnedders>
kingryan: just have it marked up like that?
23:15
<gsnedders>
tantek: why me?
23:18
<tantek_>
gsnedders, you mentioned something about taking so many minutes to get so far. indicating that you've clearly learned some patience. a very useful quality.
23:19
<gsnedders>
tantek_: not patience, just persistence
23:19
<tantek_>
another useful quality.
23:20
<jgraham>
Since test case formats are tonight's hot topic, would anyone like to suggest a format for table model tests? They need to take HTML as an input and check that the cells appear in the right places in a 2D grid
23:20
<jgraham>
JSON would work but it would be really verbose
23:21
<jgraham>
I guess some custom plaintext format might be best
23:22
<jgraham>
Oh and each slot can have >1 or 0 cells
23:22
<jgraham>
and each cell has extra metadata which needs to be checked :(
23:24
<Philip`>
You could represent the 2D grid with an HTML table
23:26
<kingryan>
gsnedders: as cool as using HTML would be, many of the tests are already in JSON and adding more dependencies, even if self-dependencies adds to the cost of collaboration
23:26
<kingryan>
jgraham: I'd use a multidimensional JSON array
23:27
<kingryan>
[[cell, cell], [cell, [double, cell]]]
23:27
<gsnedders>
kingryan: we'd need to add something like "Every unicode character must be interpreted as a byte with the value of the unicode code point the character represents"
23:27
<kingryan>
yes
23:28
<jgraham>
kingryan: That's sort of thing is basically what I was thinking too. It's just slightly irritating that json has such a rigid syntax. However it's less verbose than HTML
23:29
Philip`
likes YAML
23:29
<kingryan>
right, but json is always utf-8, so the code-point=>character=>byte relationship is fixed
23:29
<kingryan>
Philip`: json is yaml :)
23:30
<kingryan>
http://redhanded.hobix.com/inspect/yamlIsJson.html
23:30
kingryan
uses a yaml parser for json sometimes
23:30
<Philip`>
JSON is only a subset of YAML, so YAML necessarily has less of a rigid syntax :-)
23:31
<kingryan>
true
23:31
<kingryan>
and it does allow hex numbers
23:32
<Philip`>
YAML seems hugely more complex to parse than JSON, but I don't care because I just say "use YAML::Syck" and it works magically
23:32
<kingryan>
indeed
23:32
<kingryan>
I'd rather not add another dependency to html5lib, though
23:32
<kingryan>
(though that's a no-op for ruby, since yaml is in the stdlib)
23:32
<gsnedders>
kingryan: "JSON text SHALL be encoded in Unicode. The default encoding is UTF-8. "
23:33
kingryan
stands corrected
23:33
gsnedders
has RFC4627 open due to his sheer lack of knowledge of JSON and remembers noticing that earlier
23:41
<gsnedders>
kingryan: you go and make up some sort of test case format
23:41
<gsnedders>
time for me to sleep
23:41
<kingryan>
k