07:54
<krijnh>
It's shitty connection day today, yay
10:43
<heycam>
Hixie, there seems to be an error in my submitted acid3 test (#69). the last string literal in the function-serialised SVG fragment should have an 'A' at the end (i.e., it should be '\uD800\uDC85A' instead of '\uD800\uDC85'), since the rest of the test assumes that there is an A character after the astral character.
11:42
<virtuelv>
http://www.katemonkey.co.uk/article/48/x-ua-lemur-compatible
12:00
<hdh>
all of the Internets, lol
12:49
<Dashiva>
virtuelv: Does Opera plan to support lemurs in the next version?
12:49
<Dashiva>
It could boost the user base quite a lot!
13:06
<hsivonen>
Hixie: the W3C boilerplate for HTML5 uses <acronym> instead of <abbr>...
13:07
<annevk>
that's what the W3C boilerplate is like
13:08
<hsivonen>
Hixie: there are also two instances of "&lt/pre><", which wouldn't be OK in HTML5.
13:09
<hsivonen>
annevk: well, it seems that either the boilerplate needs to change or the spec needs to change. otherwise, the ingredients of a permathread are here.
13:09
<annevk>
cool
13:09
<annevk>
validator.nu can now validate the spec
13:09
<annevk>
pretty fast too
13:10
<hsivonen>
And I didn't even deploy Saxon, yet.
13:10
<hsivonen>
weird
13:10
<annevk>
maybe Hixie should hook it up to his publishing process
13:10
<annevk>
Saxon?
13:10
<hsivonen>
annevk: a faster XSLT back end
13:12
<nickshanks>
hat is it using at the moment?
13:12
<nickshanks>
+W
13:12
<hsivonen>
nickshanks: Xalan
13:12
<nickshanks>
i played around with XSLT engines a while ago, and found many bugs
13:13
<hsivonen>
nickshanks: what's your assesment of Xalan vs. Saxon?
13:13
<nickshanks>
Xalan wasn't one of them
13:13
<hsivonen>
nickshanks: was Saxon 9?
13:15
<nickshanks>
it was whatever was included with http://www.entropy.ch/software/macosx/#testxslt
13:15
<hsivonen>
nickshanks: that includes Xalan
13:16
<nickshanks>
hmm, so it does
13:16
<nickshanks>
okay
13:16
<nickshanks>
then it was unmemorable :)
13:16
<nickshanks>
Saxon was better, but libxslt was the best for my purposes
13:16
<nickshanks>
e.g. saxon introduced whitespace where it shouldn't have
13:16
<hsivonen>
I'm just about ready to push Saxon 9 out to Validator.nu
13:17
<hsivonen>
but now Xalan runs fast enough. when I decided to switch it was insanely slow
13:17
<nickshanks>
in XHTML, <q>Hello</q> should not become <q>\n\t\tHello\n\n</q>
13:17
<hsivonen>
really unbearably insanely slow
13:17
<hsivonen>
now I'm puzzled
13:18
<nickshanks>
one of them did that, libxslt didn't
13:48
<annevk>
hsivonen, maybe your webhost pushed out an update?
13:50
<hsivonen>
annevk: changed load on host running the virtual machine would be an explanation
13:50
<hsivonen>
annevk: on the VM, I control the software
13:51
<annevk>
are you still planning on taking out schematron?
13:51
<hsivonen>
not from the entire service, no
13:51
<hsivonen>
but from the HTML5 presets, yes
13:52
<hsivonen>
unfortunately, user-provided Schematron is a DoS attack vector
13:52
<hsivonen>
but it would be a shame to disable it because of that
13:53
<hsivonen>
I guess trusting the host for benchmarking is a bad idea
13:53
<hsivonen>
I'm going to run some more tests on my development machine
13:54
<hsivonen>
but my dev machine runs a different JIT back end on a different CPU arch...
13:59
<hsivonen>
hmm. I wonder if the W3C WD and the WHATWG draft from earlier this month have notably different document trees
13:59
<hsivonen>
I'm able to reproduce the insane slowness with my old copy of the spec
14:02
<hsivonen>
ok. Xalan is sometimes insanely slow
14:02
<hsivonen>
but Saxon isn't
14:02
<hsivonen>
so switching to Saxon was the right call
14:02
<hsivonen>
I just need to polish things a bit before I deploy
15:12
hsivonen
likes the new Firefox 3 Mac look
15:13
<MikeSmith>
hsivonen - might be useful to get feedback to Xalan project
15:14
<MikeSmith>
let them know it is proving to be not usable for your application
15:14
<MikeSmith>
maybe they can give you some tips on profiling you could do
15:15
<MikeSmith>
but I think it would be good for them to hear from you at least
15:15
<MikeSmith>
though seems like probably there's nothing they can/will do
15:15
hdh
prefers the huge Back button design
15:19
<Lachy>
hsivonen, has a Firefox 3 build for mac been released with the new look yet?
15:21
<Lachy>
or are there final mockups available somewhere? Last I saw, there were just some outlines of the planned look
15:21
<hsivonen>
Lachy: nightlies
15:21
<hsivonen>
MikeSmith: my trial balloon about getting feedback to Xalan has gone nowhere
15:22
<hsivonen>
MikeSmith: specifically: http://issues.apache.org/jira/browse/XALANJ-2419
15:22
<MikeSmith>
hsivonen - disappointing but not surprised to hear it
15:22
<MikeSmith>
I guess they just don't care
15:22
<hdh>
http://tomayko.com/weblog/2008/01/28/firefox3-mac-theme-lands
15:22
Lachy
downloads the latest trunk
15:23
<MikeSmith>
thank god there's saxon at least
15:23
<MikeSmith>
or thank Michael Kay
15:23
<hsivonen>
MikeSmith: I'm also mighty disappointed that Saxon doesn't do column numbers, but I'm just biting the bullet and patching it (not nearly as simple as it first looked)
15:24
<MikeSmith>
I swear I thought there was some extension for Saxon for column numbers
15:24
<MikeSmith>
maybe worth asking Norm Walsh
15:24
<hsivonen>
MikeSmith: line numbers only
15:24
<MikeSmith>
damn
15:24
<MikeSmith>
that sucks
15:24
<hsivonen>
MikeSmith: I asked on xml-dev and Michael Kay replied already
15:24
<MikeSmith>
oh, OK
15:24
<MikeSmith>
no glimmer of hope there?
15:24
<Lachy>
ooh, it really does look nice :-)
15:25
<MikeSmith>
is FF3 UI diferrent from Minefield?
15:25
<hsivonen>
MikeSmith: it seems to be a design decision
15:25
<hsivonen>
I have a counter-use case, though
15:26
<MikeSmith>
unfortunate design decision, that
15:26
<MikeSmith>
counter-use case?
15:26
<hsivonen>
MikeSmith: a use case that works as a counter-example for the rationale for the design decision
15:27
<hsivonen>
anyway, my patch now works
15:27
<hsivonen>
gotta update the build system still
15:54
<virtuelv>
X-No-Thanks: http://www.b-list.org/weblog/2008/jan/28/ie8/
17:03
<csarven>
Authors: Foo, Bar, Baz --- how would you mark this up in HTML4 and in HTML5?
17:04
<Philip`>
<p>Authors: Foo, Bar, Baz</p>
17:07
<csarven>
Philip` in which?
17:08
<csarven>
there are other possibilities in HMTL4; <hX><ul> or <dl> ..
17:10
<csarven>
re: http://www.w3.org/html/wg/html5/#the-dl "The dl element introduces an unordered association list consisting of zero or more name-value groups (a description list)" is rather vague imo. that suggests that one can mark a list of news stories with its headline and a summary of it with <dl> -- not that there is an issue with that but its just uncommon. most would approach that with a heading and paragraph for instance
17:11
<csarven>
in an <ul> or <ol> <li>s
17:12
<Camaban>
probably not appropriate to sue a list for that
17:15
<hdh>
the W3C specs use <dl>
17:15
<Philip`>
csarven: In both
17:16
<Philip`>
(and I'd probably use <p><b>Authors:</b> Foo, Bar, Baz</p> if I wanted it to stand out more)
17:17
<csarven>
hdh are you referring to an example in HTML4 at W3C?
17:17
<Philip`>
(because I wouldn't think of a good reason to do anything more complex than that)
17:18
<hdh>
XML 1.0
17:18
<hdh>
the spec document, in its header
17:19
<csarven>
Philip` see the first example in http://www.w3.org/html/wg/html5/#the-dl
18:07
<Dashiva>
Hixie: Available?
19:07
<Hixie>
heycam: fixed
19:10
<Dashiva>
Hixie: In the reflecting content attributes section, most of the cases have a "if attribute is absent, return default value, or <type-appropriate null value> if none" clause. But the "DOMString that doesn't fall into any of the above" says nothing about this.
19:11
<Dashiva>
Do you recall off-hand if that's intended?
19:20
<Hixie>
no idea
19:48
<zcorpan_>
Hixie: acid3 now reveals a parsing bug in opera that prevents the test from running at all. could you test that in one of the js tests instead using doc.write() or so? (namely < /script> closing the script)
19:48
<Hixie>
that comment will disappear in due course
19:48
<Hixie>
i'm editing as we speak
19:48
<zcorpan_>
ok. food for something to test otherwise :)
19:49
<Hixie>
that bug is already tested elsewhere actually
19:49
<zcorpan_>
ah ok
20:24
<Hixie>
is there some thing wrong with acid3.acidtests.org/empty.xml ?
20:24
<Hixie>
as in, is my test invalid somehow?
20:25
<Hixie>
i don't understand why absolutely no browsers pass test 71
20:26
jwalden
looks
20:27
<SadEagle>
konqueror 4.0.1 does :-)
20:27
<Hixie>
ok good
20:27
<Hixie>
glad at least someone does
20:28
<SadEagle>
might be a bug :-)
20:31
<jwalden>
Firefox replaces it with 0xFFFD -- that's the replacement code point, right?
20:31
<gsnedders>
jwalden: yea
20:31
jwalden
has no idea what the spec says about doing that
20:42
jwalden
shoots the person who decided to use the word "entity" to mean two different things in the XML spec
20:44
SadEagle
hands jwalden more bullets
20:44
<jwalden>
heh, you reading too?
20:46
<SadEagle>
no, just bad memories :-)
20:47
<jwalden>
It is a fatal error if an XML entity is determined (via default, encoding declaration, or higher-level protocol) to be in a certain encoding but contains byte sequences that are not legal in that encoding. Specifically, it is a fatal error if an entity encoded in UTF-8 contains any irregular code unit sequences, as defined in Unicode 3.1 [Unicode3].
20:47
<jwalden>
I call bug
20:48
<jwalden>
that's weird that only konqueror would pass that
20:48
<SadEagle>
may be because we're the only ones using QXML?
20:49
<SadEagle>
and I am not at all sure it passes for the right reason.
20:49
<SadEagle>
the test isn't exactly standalone
20:50
<SadEagle>
jwalden: heh, it fails when I open empty.xml
20:50
<SadEagle>
jwalden: I think it does the replacement char thing as well
20:50
<jwalden>
haha
20:51
<SadEagle>
jwalden: I bet the XML parser doesn't even -see- that character
20:51
<jwalden>
quite possibly not
20:52
jwalden
guesses in Moz the stream converter is being initialized with the replacement char for errors and not 0
20:52
<SadEagle>
OTOH, is the replacement character legal there?
20:52
<jwalden>
think so
20:52
<jwalden>
why wouldn't it be?
20:53
<SadEagle>
well, KWrite passes that test :p
20:53
<SadEagle>
FFFD is legal, yep.
20:55
<Hixie>
other than getComputedStyle() and img.height/width, is there any standards-compliant way to detect whether a style rule had an effect? i don't mind which style rule
20:58
<Dashiva>
I suppose that rules out all the width/height properties
20:59
<Hixie>
like offsetWidth? yeah.
21:07
<Dashiva>
Only thing that comes to mind is server hits for resources (e.g. background-image) but that's probably the inverse of what you want to test
21:09
<SadEagle>
an implementation could reasonably load them even if a rule isn't applied, no?
21:09
<jwalden>
or not reload if already cached
21:09
<jwalden>
which might matter for a public-facing test
21:10
<Dashiva>
Caching could be defeated, but always loading would be a problem, yes
21:36
<Hixie>
ok
21:36
<Hixie>
acid3 is basically done
21:36
<Hixie>
i have room for two more tests if anyone comes up with something good to test
21:36
<Hixie>
but other than that, it's done
21:37
<Hixie>
if anyone wanted to review the test, now's the time :-)
21:37
<nickshanks>
hixie: are you maintaining http://acid3.acidtests.org/
21:37
<Hixie>
yes
21:37
<SadEagle>
I could whine about the nodeiterator tests some more :-)
21:37
<Hixie>
are they broken?
21:37
<Hixie>
i thought i fixed them
21:40
<SadEagle>
re-checking.. Last I looked, IMHO they relied on unspecified behavior
21:45
<SadEagle>
e.g. I don't believe that the state of the iterator is specified anywhere if the filter throws an exception
21:46
<hsivonen>
why does loading this page make Safari quit: http://my.opera.com/MacDev_ed/blog/2008/01/22/core-web
21:46
<gsnedders>
hsivonen: works fine in Saf3/Leopard
21:47
<hsivonen>
gsnedders: not for me in either Safari 3 or nightly on PPC Leopard
21:47
<hsivonen>
In NNW, I see the alternative content for SVG
21:47
<hsivonen>
works in Minefield
21:48
<Hixie>
SadEagle: what behaviour do you think the test requires that the spec doesn't?
21:48
<Hixie>
SadEagle: i thought i'd walked very carefully around the spec's holes
21:49
<SadEagle>
well, I'll start with this quote: "However, the exact timing of these filter calls may vary from one DOM implementation to another."
21:51
<Hixie>
does your implementation have different timing than expected by the test?
21:51
<SadEagle>
sort of --- with respect to how it updates the reference node.
21:52
<Hixie>
in which test?
21:52
<SadEagle>
1 & 2
21:52
SadEagle
thinks some more
21:52
<Hixie>
1 doesn't mutate the dom
21:53
<nickshanks>
Hixie: can you post percentages for the latest released versions of top browsers as of the release date of Acid3? i.e. "When first released, here's how some browsers score: ..."
21:53
<SadEagle>
yeah, but it throws an exception.
21:53
<Hixie>
and as far as i can tell, the mutations in 2 are such that it doesn't matter whether you do the filter calls "when a traversal operation is performed" or "when a NodeIterator's reference node is removed from the subtree being iterated over and it must select a new one", which are the only two allowed options.
21:53
<Hixie>
so?
21:53
<Hixie>
behaviour in the face of exceptions seems well-defined
21:54
<SadEagle>
does it? it only says to propagate them
21:54
<SadEagle>
I may be missing something, of course
21:55
<Hixie>
well what behaviour are you saying is compliant that would cause the test to fail?
21:56
<SadEagle>
updating the reference node position before calling the filter
21:56
<SadEagle>
that's in #1, that is
21:57
Hixie
looks
21:57
<Hixie>
where?
21:58
<SadEagle>
/ 2 in there would be enough
21:58
<SadEagle>
the line commented with //2, that is
21:59
<Hixie>
i don't understand how an implementation could ever _not_ get documentElement there
21:59
<Hixie>
the filter never gave you an answer for the first one, so how can you assume an answer?
22:00
<SadEagle>
I don't. You would move to the next position regardless of the answer.
22:00
<SadEagle>
The answer merely determines whether to return the node to the app.
22:00
<SadEagle>
I am pretty sure at least xerces behaves the same, I guess I should check.
22:03
<Hixie>
i can't see anything in the spec that justifies having the reference node be something that hasn't been returned except for two cases: one, before any node has been returned, and then it must be the root node, and two, after a mutation.
22:04
<SadEagle>
ok, that's a somewhat reasonable reading, though I am not sure that's what's intended.
22:05
SadEagle
double-checks stuff on test 2..
22:08
<SadEagle>
that one is indeed my bug.
22:09
<Hixie>
certainly i don't disagree that traversal/range is a badly written spec full of vagueries and holes
22:10
<SadEagle>
anyway, my tendency would be to read it as "if your filter isn't purely functional, good luck. You'll need it"
22:10
<Hixie>
oh i agree
22:11
<Hixie>
but i don't think that's a really good thing for a web spec to be saying, really :-)
22:11
<SadEagle>
And unfortunately, when it comes to vagueries, IMHO DOM2 HTML has it beat
22:11
<Hixie>
if it was server-side only, that'd be one thing
22:11
<Hixie>
yes
22:11
<Hixie>
the difference is
22:11
<Hixie>
dom2html is being replaced by dom5 html
22:11
<Hixie>
whereas nobody is working on dom traversal/range
22:12
<MacDome>
hsivonen: http://my.opera.com/MacDev_ed/blog/2008/01/22/core-web does not quit for me in TOT. however any time you see a crash, a bug at http://bugs.webkit.org/ is most appreciated
22:12
<SadEagle>
I don't know if too many people use it. Does IE support any of it? I know gecko doesn't support NodeFilter, and Opera's 9.2's impl seems buggy.
22:14
<hsivonen>
MacDome: that's the weird part. it's auto-quit. the crash reporter doesn't catch it
22:15
<SadEagle>
hsivonen: might be stack overflow
22:16
<SadEagle>
Hixie: hmm, my impl guarantees that all the nodes it returns are in the physical list, but I don't think that's required..
22:17
<Hixie>
SadEagle: lack of good implementations is what is blocking adoption, i'd wager.
22:17
<Hixie>
SadEagle: lack of a good spec might be blocking implementations
22:17
<SadEagle>
Hixie: well, actually let me ask you a question: what should happen if the node that just got tested is moved within the view?
22:17
<SadEagle>
s/view/physical list/
22:17
<Hixie>
mvoed when?
22:17
<Hixie>
in the filter, after teh filter?
22:17
<SadEagle>
inside the NodeFilter.
22:18
<SadEagle>
outside it's well-spec'd
22:21
<hsivonen>
MacDome: filed http://bugs.webkit.org/show_bug.cgi?id=17073 though not much useful info to report
22:22
<Hixie>
SadEagle: you mean, if the filter moves the node that's being tested?
22:22
<SadEagle>
yes.
22:22
jgraham_
had a vague notion that people disliked SVG fonts
22:23
<hsivonen>
jgraham_: oh yes indeed
22:23
<Hixie>
SadEagle: if the node is _moved_, i have no iea
22:23
<nickshanks>
i don't get SVG fonts
22:23
<nickshanks>
how re they better than truetype?
22:23
<hsivonen>
jgraham_: http://www.w3.org/Bugs/Public/show_bug.cgi?id=5253 would be a much more useful approach
22:23
<Hixie>
the svg fonts tests can be removed, all it takes is for someone to send me a better test
22:24
<Hixie>
they were requested by opera
22:24
<SadEagle>
Hixie: let's make it simpler... what if it's just deleted, from inside the filter, of course
22:24
<SadEagle>
nickshanks: might be patent issues?
22:24
<hsivonen>
jgraham_: and as far as visual presentation goes, compatible with deployed SVG renderers
22:24
<Hixie>
and i checked, and at least safari and mozilla either implement, or plan to implement, svg fonts
22:24
<Hixie>
so...
22:24
<Hixie>
SadEagle: well
22:24
jgraham_
knows very little about SVG fonts
22:25
<jgraham_>
I just thought they were unimplemented and disliked, so I was surprised to see them in ACID 3 :)
22:26
<hsivonen>
SVG fonts in Acid3? well that sure is a surprise
22:26
<SadEagle>
hmm, this one I am pretty sure is just a test typo: expect(13, i.previousNode(), t4);
22:26
hsivonen
didn't actually inspect the SVG tests
22:26
<SadEagle>
since the connects suggest it should be t3
22:26
<hsivonen>
I got distracted with reporting a WebKit bug
22:26
<Hixie>
SadEagle: the spec says "For instance, if a NodeFilter removes a node from a document, it can still accept the node, which means that the node may be returned by the NodeIterator or TreeWalker even though it is no longer in the subtree being traversed."
22:27
<SadEagle>
Hixie: yeah, but what happens to the reference node, in particular if it skipped over some nodes?
22:29
<Hixie>
SadEagle: the reference node doesn't change, according to the spec, since the node was removed while the reference node was something else
22:29
<Hixie>
SadEagle: so i guess the last test of test 2 is wrong
22:30
<SadEagle>
could you please re-check expectation 13 of test 2 first? :-)
22:30
<SadEagle>
hmm, for extra fun, the iterator can be reentered.
22:31
<Hixie>
oops, yeah, that should be t3
22:31
<Hixie>
yeah, i was just thinking about that
22:31
<Hixie>
the spec doesn't even mention that
22:31
<SadEagle>
anyway, implementation-wise, this sort of scenario is a pain, since you either have to watch multiple nodes per iterator, or re-check membership (which is where the move case comes from)
22:33
<Hixie>
i agree that it is a pain
22:33
<Hixie>
we need someone to step up and take this spec and rewrite it to be decent and proper
22:33
<Hixie>
andunambiguous
22:33
<Hixie>
i'll happily change acid3 to match whatever spec is made
22:35
<SadEagle>
the Java/standalone impls are probably something to check..
22:36
<Hixie>
not really, since those don't need interop
22:36
<Hixie>
i would expect the dom specs to cut loose the non-web implementations
22:41
<SadEagle>
I think if I was writing the spec, my tendency would be to say that if the list is modified from within a filter, an exception is thrown, and the iterator is reset to the beginning of the physical list
22:43
<Hixie>
that's also non-trivial, you'd have to actually pay attention to the whole tree
22:43
<SadEagle>
though you get the funny case of the filter throwing an exception -and- modifiying.
22:43
<Hixie>
personally i'd just say that you change the reference node before calling the filter, and that, like with treewalker, you keep following the reference node
22:43
<SadEagle>
Not really. You kind of have too, since the reference node may be nested within a tree that is removed.
22:44
<SadEagle>
heh, which is how I implemented it :-)
22:44
<Hixie>
you wouldn't have to track that either, with my version
22:44
<Hixie>
and you could use nodeiterator outside of a document, too
22:48
<SadEagle>
don't see why that's not possible now.
22:50
<Hixie>
SadEagle: i mean, outside of the root
22:51
<SadEagle>
oh, I see, so you wouldn't move the reference node for deletions while the filter is running?
22:51
jgraham_
wonders exactly what Charles wants the HTML 5 spec to say about <video>
22:56
<Hixie>
SadEagle: i wouldn't move the reference node for deletions at all.
22:57
<SadEagle>
ah. I see what you meant by not needing to track that either.
23:06
jwalden
curses namespaces
23:23
<Dashiva>
html:curses
23:25
<nickshanks>
i think he meant xmlns:curses="http://voodoo.org/ns/curses";
23:26
<SadEagle>
would that go with the dumbTerminal module of xhtml3?
23:26
<nickshanks>
you're thinking of ncurses rahter than voodoo curses
23:27
<nickshanks>
anyway, i am sleep
23:27
<nickshanks>
nightall
23:34
<SadEagle>
heh, all this talk of video makes me want to implement it. But I guess <audio> to go with Audio should be first