DOM4 not compatible with ACID3 tests

2011-09-08 Thread Jonas Sicking
Hi All,

The new DOM-Core specification changes some of the behavior for
DocType nodes to make them act more like all other nodes in the DOM.
Specifically:

1. They always have a ownerDocument
2. They can move between, both using explicit calls to AdoptNode, and
implicit adoption during for example insertBefore
3. They can be cloned between documents using importNode

We've written a patch to implement these changes in Gecko (which
resulted in a nice reduction in code). However, ACID3 tests for the
old behavior which is making it a harder decision to check this patch
in. As I understand it this isn't a Gecko specific interaction with
ACID3, but all browsers will see the same loss in ACID3 score if they
implement the new DOM-Core spec.

Because of this we've been reluctant to land said patch. I would
expect the engines that currently score 100/100 to be even more
reluctant to lose a point or two.

The obvious fix here seems to me to change ACID3. It would suck if the
ACID3 tests are what is holding the web back. However so far I haven't
been able to get a response from the parties that can make that
happen.

Additionally, ACID3 contains some attribute-node tests which runs a
big risk of making it hard to implement other parts of DOM-Core. My
understanding is that in theory it's possible to implement the
DOM-Core spec if it's implemented exactly as currently specced. But if
that turns out to break too many websites right now, then we won't be
able to experiment with alternative strategies since they would break
ACID3.

Again, I've poked the people that can change ACID3 about this too, but
so far without success.

I also haven't checked, but if ACID3 is testing mutation events, then
that will likely hold back deprecating them from the web too.

Should we change the course here for the DOM4 spec and declare ACID3
as set in stone and anything that breaks it is to be considered not
web compatible? This would seem like a ridiculous solution to me, but
if browsers won't implement changes that break ACID3, which I strongly
suspect is the case, and if ACID3 can't be changed, then I don't
really see much alternative.

/ Jonas



Re: DOM4 not compatible with ACID3 tests

2011-09-08 Thread Olli Pettay

On 09/08/2011 10:23 AM, Jonas Sicking wrote:

Hi All,

The new DOM-Core specification changes some of the behavior for
DocType nodes to make them act more like all other nodes in the DOM.
Specifically:

1. They always have a ownerDocument
2. They can move between, both using explicit calls to AdoptNode, and
implicit adoption during for example insertBefore
3. They can be cloned between documents using importNode

We've written a patch to implement these changes in Gecko (which
resulted in a nice reduction in code). However, ACID3 tests for the
old behavior which is making it a harder decision to check this patch
in. As I understand it this isn't a Gecko specific interaction with
ACID3, but all browsers will see the same loss in ACID3 score if they
implement the new DOM-Core spec.

Because of this we've been reluctant to land said patch. I would
expect the engines that currently score 100/100 to be even more
reluctant to lose a point or two.

The obvious fix here seems to me to change ACID3. It would suck if the
ACID3 tests are what is holding the web back. However so far I haven't
been able to get a response from the parties that can make that
happen.

Additionally, ACID3 contains some attribute-node tests which runs a
big risk of making it hard to implement other parts of DOM-Core. My
understanding is that in theory it's possible to implement the
DOM-Core spec if it's implemented exactly as currently specced. But if
that turns out to break too many websites right now, then we won't be
able to experiment with alternative strategies since they would break
ACID3.

Again, I've poked the people that can change ACID3 about this too, but
so far without success.

I also haven't checked, but if ACID3 is testing mutation events, then
that will likely hold back deprecating them from the web too.

Should we change the course here for the DOM4 spec and declare ACID3
as set in stone

No.


and anything that breaks it is to be considered not
web compatible? This would seem like a ridiculous solution to me, but
if browsers won't implement changes that break ACID3, which I strongly
suspect is the case, and if ACID3 can't be changed, then I don't
really see much alternative.


If ACID3 can't be changed, let's just create ACID4 which overrides ACID3 :p


-Olli





/ Jonas







[Bug 14083] New: status box is too big. wrong id?

2011-09-08 Thread bugzilla
http://www.w3.org/Bugs/Public/show_bug.cgi?id=14083

   Summary: status box is too big. wrong id?
   Product: WebAppsWG
   Version: unspecified
  Platform: Other
   URL: http://www.whatwg.org/specs/web-apps/current-work/#cro
ssDocumentMessages
OS/Version: other
Status: NEW
  Severity: normal
  Priority: P3
 Component: Web Messaging (editor: Ian Hickson)
AssignedTo: i...@hixie.ch
ReportedBy: contribu...@whatwg.org
 QAContact: member-webapi-...@w3.org
CC: m...@w3.org, sim...@opera.com, public-webapps@w3.org


Specification:
http://www.whatwg.org/specs/web-apps/current-work/complete/web-messaging.html
Multipage: http://www.whatwg.org/C#crossDocumentMessages
Complete: http://www.whatwg.org/c#crossDocumentMessages

Comment:
status box is too big. wrong id?

Posted from: 85.227.153.57 by sim...@opera.com
User agent: Opera/9.80 (Macintosh; Intel Mac OS X 10.5.8; U; en) Presto/2.9.168
Version/11.51

-- 
Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.



[Bug 14084] New: Hi! Returning a null from getItem() if the key does not exist is downright semantically wrong. null is a full-fledged value which can be serialized (JSONed), and is NOT the value we

2011-09-08 Thread bugzilla
http://www.w3.org/Bugs/Public/show_bug.cgi?id=14084

   Summary: Hi! Returning a null from getItem() if the key does
not exist is downright semantically wrong. null is a
full-fledged value which can be serialized (JSONed),
and is NOT the value we get if we do: var x =
myObject.someUnknownProperty; In that case we get t
   Product: WebAppsWG
   Version: unspecified
  Platform: Other
   URL: http://www.whatwg.org/specs/web-apps/current-work/#top
OS/Version: other
Status: NEW
  Severity: normal
  Priority: P3
 Component: Web Storage (editor: Ian Hickson)
AssignedTo: i...@hixie.ch
ReportedBy: contribu...@whatwg.org
 QAContact: member-webapi-...@w3.org
CC: i...@hixie.ch, m...@w3.org, public-webapps@w3.org


Specification: http://dev.w3.org/html5/webstorage/
Multipage: http://www.whatwg.org/C#top
Complete: http://www.whatwg.org/c#top

Comment:
Hi!

Returning a null from getItem() if the key does not exist is downright
semantically wrong. null is a full-fledged value which can be serialized
(JSONed), and is NOT the value we get if we do:

var x = myObject.someUnknownProperty;

In that case we get the 'undefined' value, and that is what the return value
of getItem() _should_ be if the item is not found. undefined is not
serializable (JSONable) and is never a valid value, whereas null is sometimes
an application-/domain-valid value. Returning null from getItem() is ambiguous
in the case of an application using null as a placeholder or a falsy value.
Returning undefined is unambiguous.

- stephan beal (sgb...@googlemail.com)

Posted from: 194.246.122.11
User agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.1 (KHTML, like
Gecko) Chrome/13.0.782.218 Safari/535.1

-- 
Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.



[Bug 14086] New: When performing AJAX type queries, they are already asynchronous and already occur in another thread. However, I have found that parsing the XML reply and converting that to a repr

2011-09-08 Thread bugzilla
http://www.w3.org/Bugs/Public/show_bug.cgi?id=14086

   Summary: When performing AJAX type queries, they are already
asynchronous and already occur in another thread.
However, I have found that parsing the XML reply and
converting that to a representation usable by the
javascript application can result in freezes to t
   Product: WebAppsWG
   Version: unspecified
  Platform: Other
   URL: http://www.whatwg.org/specs/web-apps/current-work/#top
OS/Version: other
Status: NEW
  Severity: normal
  Priority: P3
 Component: Web Workers (editor: Ian Hickson)
AssignedTo: i...@hixie.ch
ReportedBy: contribu...@whatwg.org
 QAContact: member-webapi-...@w3.org
CC: m...@w3.org, public-webapps@w3.org


Specification: http://www.w3.org/TR/2011/WD-workers-20110901/
Multipage: http://www.whatwg.org/C#top
Complete: http://www.whatwg.org/c#top

Comment:
When performing AJAX type queries, they are already asynchronous and already
occur in another thread.  However, I have found that parsing the XML reply and
converting that to a representation usable by the javascript application can
result in freezes to the GUI for large amounts of data.  When I tried to put
the processing of the AJAX reply in a web worker (I tried to put the XML
processing and marshaling to javascript amenable format in a web worker), I
found that the web worker could not use the DOM Parser and the javascript data
assembled by the web worker had to be converted to a string to be pushed back
via a message to the main thread.  So web workers do not appear to solve what
appears to be a fairly common problem - a delay processing alot of XML data
from the server.  The ability to assemble data in a handy format in one thread
and then give it to the main thread, without incurring a time penalty to
essentially recreate the data in the main thread, would be nice to have.  It
appears what we have now are multiple processes rather than threads (no data
sharing).  Why not modify the core javascript language to add threads?(Like
C++0x or Java).  Why can't the web workers use an XML parser?

Posted from: 199.89.158.132
User agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0.2) Gecko/20100101
Firefox/6.0.2

-- 
Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.



[EventSource] Question on event type

2011-09-08 Thread Bryan Sullivan
Hi all,

Trying to implement a test for eventsource, it's unclear to me in the
sequence below, how item 4 is to be implemented and coded for by a
developer:

(extract from http://www.w3.org/TR/eventsource/)

When the user agent is required to *dispatch the event*, then the user agent
must act as follows:

   1. If the *data* buffer is an empty string, set the *data* buffer and the
   *event name* buffer to the empty string and abort these steps.
   2. If the *data* buffer's last character is a U+000A LINE FEED (LF)
   character, then remove the last character from the *data* buffer.
   3. Otherwise, create an event that uses the MessageEvent interface, with
   the event name message, which does not bubble, is not cancelable, and has
   no default action. The data attribute must be set to the value of the *
   data* buffer, the origin attribute must be set to the Unicode
   serialization of the origin of the event stream's URL, and the
   lastEventId attribute must be set to the last event ID string of the
   event source.
   4. If the *event name* buffer has a value other than the empty string,
   change the type of the newly created event to equal the value of the *event
   name* buffer.
   5. Set the *data* buffer and the *event name* buffer to the empty string.
   6. Queue a task to dispatch the newly created event at the EventSourceobject

(end extract)

The event type for the MessageEvent is message (in all browsers I have
tested, and there is no other type attribute defined for MessageEvent. So
if I send from my server a line event: foo\n, I would expect from reading
above that the event attribute type is set to foo. What am I missing?

FYI, my test is at http://test.bkaj.net/webapi/server-sent-events/. I have
yet to figure out how to get PHP (or the underlying Apache server) to not
buffer output, so I send enough data to fill the buffer - a bad kludge but
it makes the test work (I think). Any help there is also appreciated.

Bryan


Re: [EventSource] Question on event type

2011-09-08 Thread Glenn Maynard
On Thu, Sep 8, 2011 at 1:16 PM, Bryan Sullivan bls...@gmail.com wrote:
 The event type for the MessageEvent is message (in all browsers I have
tested, and there is no other type attribute defined for MessageEvent. So
if I send from my server a line event: foo\n, I would expect from reading
above that the event attribute type is set to foo. What am I missing?

Note that event type with DOM Events terms really means the name of the
event.  Changing it doesn't change the type in the sense of giving it a
different interface; it's just a different label that you can listen for
with addEventListener.

This allows listening to different remote message types with different event
handlers.  See https://zewt.org/~glenn/event-source.html for an example.

It would be good to have an example of this in the spec.

 FYI, my test is at http://test.bkaj.net/webapi/server-sent-events/. I have
yet to figure out how to get PHP (or the underlying Apache server) to not
buffer output, so I send enough data to fill the buffer - a bad kludge but
it makes the test work (I think). Any help there is also appreciated.

flush() (http://php.net/manual/en/function.flush.php) does this at the PHP
level; whether it works at the HTTP server level varies.

--
Glenn Maynard


RE: rename DOM Core to DOM4; deadline Sept 9

2011-09-08 Thread Adrian Bateman
On Wednesday, September 07, 2011 9:53 AM, Arthur Barstow wrote:
 It appears the majority of the people that voiced an opinion on this 
 thread prefer DOM4.

 If anyone objects to DOM4, please speak up by September 9 at the latest 
 and include the rationale for your objection as well as an alternate 
 proposal.

Microsoft supports this proposal. I normally try to stay away from
discussions about naming but this was one where we received feedback
that it was important to change. I want to thank the group for giving
this issue due consideration.

Cheers,

Adrian.



Re: [EventSource] Question on event type

2011-09-08 Thread Bryan Sullivan
Thanks for the help.

So when you say the name of the event, how in JavaScript do I access the
name of the event, e.g. to test it? Accessing  the data (event.data) works,
but how do access the name?

In your example, event.data is output but I don't see you accessing or using
the event name.

Thanks,
Bryan

On Thu, Sep 8, 2011 at 10:46 AM, Glenn Maynard gl...@zewt.org wrote:

 On Thu, Sep 8, 2011 at 1:16 PM, Bryan Sullivan bls...@gmail.com wrote:
  The event type for the MessageEvent is message (in all browsers I have
 tested, and there is no other type attribute defined for MessageEvent. So
 if I send from my server a line event: foo\n, I would expect from reading
 above that the event attribute type is set to foo. What am I missing?

 Note that event type with DOM Events terms really means the name of the
 event.  Changing it doesn't change the type in the sense of giving it a
 different interface; it's just a different label that you can listen for
 with addEventListener.

 This allows listening to different remote message types with different
 event handlers.  See https://zewt.org/~glenn/event-source.html for an
 example.

 It would be good to have an example of this in the spec.


  FYI, my test is at http://test.bkaj.net/webapi/server-sent-events/. I
 have yet to figure out how to get PHP (or the underlying Apache server) to
 not buffer output, so I send enough data to fill the buffer - a bad kludge
 but it makes the test work (I think). Any help there is also appreciated.

 flush() (http://php.net/manual/en/function.flush.php) does this at the PHP
 level; whether it works at the HTTP server level varies.

 --
 Glenn Maynard




Re: [EventSource] Question on event type

2011-09-08 Thread Glenn Maynard
On Thu, Sep 8, 2011 at 1:56 PM, Bryan Sullivan bls...@gmail.com wrote:

 Thanks for the help.

 So when you say the name of the event, how in JavaScript do I access the
 name of the event, e.g. to test it? Accessing  the data (event.data) works,
 but how do access the name?


The type (or name) of the event is the first parameter to addEventListener.
It's also available with event.type, if you use the same function for
several listeners.

-- 
Glenn Maynard


Re: [EventSource] Question on event type

2011-09-08 Thread Bryan Sullivan
That would seem to be the obvious way to access it, but does not seem to be
working for current implementations of eventsource. That's why I was unsure
of how to access it. I guess there are some other issues at hand here. I
need to figure out what they are first, and will start another thread for
that.

It would very helpful if the spec was clearer on how to access the event
type. I don't see this anywhere in the referenced DOM Events spec or HTML5
(or the living standard version).

Thanks,
Bryan

On Thu, Sep 8, 2011 at 11:46 AM, Glenn Maynard gl...@zewt.org wrote:

 On Thu, Sep 8, 2011 at 1:56 PM, Bryan Sullivan bls...@gmail.com wrote:

 Thanks for the help.

 So when you say the name of the event, how in JavaScript do I access the
 name of the event, e.g. to test it? Accessing  the data (event.data) works,
 but how do access the name?


 The type (or name) of the event is the first parameter to
 addEventListener.  It's also available with event.type, if you use the same
 function for several listeners.

 --
 Glenn Maynard





[EventSource] Is the field name event supported in current browsers?

2011-09-08 Thread Bryan Sullivan
Hi all,

I am trying to develop a test for eventsource, and am finding that when I
include an event field in an eventsource stream, the onmessage events are
never fired (if I don't send the event field, just data fields, the
events *are* fired). This occurs in FF, Safari, and Chrome (latest end-user
versions).

The EventSource spec is not really clear on this (there is no example that
shows an event field). If anyone is familiar with what should be supported,
please let me know if the following expectation is correct:

The event stream below should result in a message event being fired, with
event.type set to time and event.data set to Thu, 08 Sep 11 13:20:41
-0600:

event: time
data: Thu, 08 Sep 11 13:20:41 -0600
(blank line)

Is this understanding correct?

My test is at: http://test.bkaj.net/webapi/server-sent-events

Thanks,
Bryan


Re: [EventSource] Question on event type

2011-09-08 Thread Glenn Maynard
On Thu, Sep 8, 2011 at 3:13 PM, Bryan Sullivan bls...@gmail.com wrote:

 That would seem to be the obvious way to access it, but does not seem to be
 working for current implementations of eventsource. That's why I was unsure
 of how to access it. I guess there are some other issues at hand here. I
 need to figure out what they are first, and will start another thread for
 that.


It works for me in Chrome 13.  https://zewt.org/~glenn/event-source2.html



 It would very helpful if the spec was clearer on how to access the event
 type. I don't see this anywhere in the referenced DOM Events spec or HTML5
 (or the living standard version).


See http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#dom-event-typeand
http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html#event-types
.

-- 
Glenn Maynard


Re: [EventSource] Is the field name event supported in current browsers?

2011-09-08 Thread Glenn Maynard
On Thu, Sep 8, 2011 at 3:24 PM, Bryan Sullivan bls...@gmail.com wrote:

 I am trying to develop a test for eventsource, and am finding that when I
 include an event field in an eventsource stream, the onmessage events are
 never fired (if I don't send the event field, just data fields, the
 events *are* fired). This occurs in FF, Safari, and Chrome (latest
 end-user versions).


Please see the examples I linked earlier [1].  The default event type is
message, so if you don't include an event field, the message event is
fired.  If you set event: foo, you're changing the event to foo, so the
foo event is fired instead of the message event.

(Note that you can't say source.onfoo like you can source.onmessage; for
custom message types you need to use addEventListener.)

The EventSource spec is not really clear on this (there is no example that
 shows an event field). If anyone is familiar with what should be supported,
 please let me know if the following expectation is correct:


The EventSource spec assumes you're familiar with DOM Events via the DOMCORE
and/or DOMEVENTS references.
http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#events


 The event stream below should result in a message event being fired, with
 event.type set to time and event.data set to Thu, 08 Sep 11 13:20:41
 -0600:

 event: time
 data: Thu, 08 Sep 11 13:20:41 -0600
 (blank line)


This will cause a time event to be fired instead of a message event.
The default is message, set in step 3 of the steps you linked to earlier
[2], and changed to time in step 4.

Ian: Step 3 of [2] refers to the event type as the event name, and step 4
refers to it as the type.  This is confusing, since it looks like it's
referring to two different things.  The DOM specs consistently refer to it
as type, consistent with the Event interface.  I wish type could be
changed to name everywhere, but then it'd be inconsistent with the
interface (which obviously can't be changed).

[1] 
https://zewt.org/~glenn/event-source.htmlhttps://zewt.org/%7Eglenn/event-source2.html,
https://zewt.org/~glenn/event-source2.html
[2] http://dev.w3.org/html5/eventsource/#dispatchMessage

-- 
Glenn Maynard


Re: [EventSource] Question on event type

2011-09-08 Thread Bryan Sullivan
OK, maybe I'm getting closer to understanding this. From your example, when
the event field is set, it's not a message event that is dispatched but
an event of type event name, so in order to see those events, I need to
use the addEventListener interface for the eventsource object (they will not
be delivered via the onmessage handler).

I modified my test to use that explanation and it does work. It would be
really great for the eventsource spec to have an example that explains this.

Thanks a lot for your explanation and example. Sorry for the newbie-ish
questions.
Bryan

On Thu, Sep 8, 2011 at 12:28 PM, Glenn Maynard gl...@zewt.org wrote:

 On Thu, Sep 8, 2011 at 3:13 PM, Bryan Sullivan bls...@gmail.com wrote:

 That would seem to be the obvious way to access it, but does not seem to
 be working for current implementations of eventsource. That's why I was
 unsure of how to access it. I guess there are some other issues at hand
 here. I need to figure out what they are first, and will start another
 thread for that.


 It works for me in Chrome 13.  https://zewt.org/~glenn/event-source2.html



 It would very helpful if the spec was clearer on how to access the event
 type. I don't see this anywhere in the referenced DOM Events spec or HTML5
 (or the living standard version).


 See
 http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#dom-event-typeand
 http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html#event-types
 .

 --
 Glenn Maynard





Re: [EventSource] Is the field name event supported in current browsers?

2011-09-08 Thread Bryan Sullivan
Thanks for the explanation and examples. I've got it now. I agree it would
help if the spec was clearer and had some more examples. I will see what I
can offer.

Bryan

On Thu, Sep 8, 2011 at 12:41 PM, Glenn Maynard gl...@zewt.org wrote:

 On Thu, Sep 8, 2011 at 3:24 PM, Bryan Sullivan bls...@gmail.com wrote:

 I am trying to develop a test for eventsource, and am finding that when I
 include an event field in an eventsource stream, the onmessage events are
 never fired (if I don't send the event field, just data fields, the
 events *are* fired). This occurs in FF, Safari, and Chrome (latest
 end-user versions).


 Please see the examples I linked earlier [1].  The default event type is
 message, so if you don't include an event field, the message event is
 fired.  If you set event: foo, you're changing the event to foo, so the
 foo event is fired instead of the message event.

 (Note that you can't say source.onfoo like you can source.onmessage;
 for custom message types you need to use addEventListener.)

 The EventSource spec is not really clear on this (there is no example that
 shows an event field). If anyone is familiar with what should be supported,
 please let me know if the following expectation is correct:


 The EventSource spec assumes you're familiar with DOM Events via the
 DOMCORE and/or DOMEVENTS references.
 http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#events


 The event stream below should result in a message event being fired, with
 event.type set to time and event.data set to Thu, 08 Sep 11 13:20:41
 -0600:

 event: time
 data: Thu, 08 Sep 11 13:20:41 -0600
 (blank line)


 This will cause a time event to be fired instead of a message event.
 The default is message, set in step 3 of the steps you linked to earlier
 [2], and changed to time in step 4.

 Ian: Step 3 of [2] refers to the event type as the event name, and step 4
 refers to it as the type.  This is confusing, since it looks like it's
 referring to two different things.  The DOM specs consistently refer to it
 as type, consistent with the Event interface.  I wish type could be
 changed to name everywhere, but then it'd be inconsistent with the
 interface (which obviously can't be changed).

 [1] 
 https://zewt.org/~glenn/event-source.htmlhttps://zewt.org/%7Eglenn/event-source2.html,
 https://zewt.org/~glenn/event-source2.html
 [2] http://dev.w3.org/html5/eventsource/#dispatchMessage

 --
 Glenn Maynard




Re: DOM4 not compatible with ACID3 tests

2011-09-08 Thread Ian Hickson
On Thu, 8 Sep 2011, Jonas Sicking wrote:
 
 The new DOM-Core specification changes some of the behavior for DocType 
 nodes to make them act more like all other nodes in the DOM. 
 Specifically:
 
 1. They always have a ownerDocument
 2. They can move between, both using explicit calls to AdoptNode, and
 implicit adoption during for example insertBefore
 3. They can be cloned between documents using importNode
 
 We've written a patch to implement these changes in Gecko (which 
 resulted in a nice reduction in code). However, ACID3 tests for the old 
 behavior which is making it a harder decision to check this patch in. As 
 I understand it this isn't a Gecko specific interaction with ACID3, but 
 all browsers will see the same loss in ACID3 score if they implement the 
 new DOM-Core spec.
 
 Because of this we've been reluctant to land said patch. I would expect 
 the engines that currently score 100/100 to be even more reluctant to 
 lose a point or two.
 
 The obvious fix here seems to me to change ACID3.

Yup, that seems reasonable. I'll roll this change into the upcoming 
general 2011 Update for the acid tests. I understand there are some other 
things that need fixing too, e.g. SVG-related things. Anne has started a 
wiki page on the topic here:

   http://wiki.whatwg.org/wiki/Acid3

It would be great if any other changes people are aware of that would be 
helpful in simplifying the Web platform could be listed on that page too.

Cheers,
-- 
Ian Hickson   U+1047E)\._.,--,'``.fL
http://ln.hixie.ch/   U+263A/,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'



[Bug 14093] New: Just to throw out an idea, to allow use of the XML parser, and alert() for debugging, one could implement web workers as simply another open page in the browser, with full access to

2011-09-08 Thread bugzilla
http://www.w3.org/Bugs/Public/show_bug.cgi?id=14093

   Summary: Just to throw out an idea, to allow use of the XML
parser, and alert() for debugging, one could implement
web workers as simply another open page in the
browser, with full access to the DOM, etc, with the
ability to communicate to the 'parent' by posting
   Product: WebAppsWG
   Version: unspecified
  Platform: Other
   URL: http://www.whatwg.org/specs/web-apps/current-work/#top
OS/Version: other
Status: NEW
  Severity: normal
  Priority: P3
 Component: Web Workers (editor: Ian Hickson)
AssignedTo: i...@hixie.ch
ReportedBy: contribu...@whatwg.org
 QAContact: member-webapi-...@w3.org
CC: m...@w3.org, public-webapps@w3.org


Specification: http://www.w3.org/TR/2011/WD-workers-20110901/
Multipage: http://www.whatwg.org/C#top
Complete: http://www.whatwg.org/c#top

Comment:
Just to throw out an idea, to allow use of the XML parser, and alert() for
debugging, one could implement web workers as simply another open page in the
browser, with full access to the DOM, etc, with the ability to communicate to
the 'parent' by posting messages only.

The parent could specify to the browser that the new page should not be made
visible to the user (in the use case where the new page will be processing
AJAX replies using the DOM Parser) or visible (in the use case where the
developer is debugging the web worker and wants to see calls to
window.alert()).

So a web worker is like another tab in the browser that can communicate with
the spawning tab via messages only.  So web worker API is really just a
intra-page communication interface with pages able to open new pages and keep
them invisible.

Tabs in a browser are like independent processes.  And it seems web-workers is
more about processes than threads.  This allows one web application (process)
to spawn another and talk to it.  This will not interfere with or conflict
with the idea of having javascript have threads in the future, but would
complement it.With multi-processors becoming common, I think javascript
will
soon follow C++ in adding thread support.

Posted from: 199.89.158.132
User agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0.2) Gecko/20100101
Firefox/6.0.2

-- 
Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.



Re: DOM4 not compatible with ACID3 tests

2011-09-08 Thread Jonas Sicking
On Thu, Sep 8, 2011 at 1:13 PM, Ian Hickson i...@hixie.ch wrote:
 On Thu, 8 Sep 2011, Jonas Sicking wrote:

 The new DOM-Core specification changes some of the behavior for DocType
 nodes to make them act more like all other nodes in the DOM.
 Specifically:

 1. They always have a ownerDocument
 2. They can move between, both using explicit calls to AdoptNode, and
 implicit adoption during for example insertBefore
 3. They can be cloned between documents using importNode

 We've written a patch to implement these changes in Gecko (which
 resulted in a nice reduction in code). However, ACID3 tests for the old
 behavior which is making it a harder decision to check this patch in. As
 I understand it this isn't a Gecko specific interaction with ACID3, but
 all browsers will see the same loss in ACID3 score if they implement the
 new DOM-Core spec.

 Because of this we've been reluctant to land said patch. I would expect
 the engines that currently score 100/100 to be even more reluctant to
 lose a point or two.

 The obvious fix here seems to me to change ACID3.

 Yup, that seems reasonable. I'll roll this change into the upcoming
 general 2011 Update for the acid tests. I understand there are some other
 things that need fixing too, e.g. SVG-related things. Anne has started a
 wiki page on the topic here:

   http://wiki.whatwg.org/wiki/Acid3

 It would be great if any other changes people are aware of that would be
 helpful in simplifying the Web platform could be listed on that page too.

I don't have time to read through all of ACID3 at the moment, but here
are some of the things that I think it should *not* rely on:

Attribute nodes in any shape or form. There are some really big
changes being proposed and as far as I know it's currently wholly
unknown what changes will be compatible with the web, and which won't.
So most likely experimentation is going to be needed here which means
deploying various solutions and see how much breaks. If people aren't
willing to deploy solutions that reduce the ACID3 score, then that
significantly reduces our ability to find a minimal set of required
APIs.

Anything with mutation events. We want to deprecate them entirely.

Anything using the following functions which seem useless or otherwise
have been discussed to be removed:
  Node.isSameNode
  Text.replaceWholeText

Possibly also these function:
  Node.isEqualNode
  Node.lookupPrefix
  Node.lookupNamespaceURI
  Node.isDefaultNamespace
  Text.wholeText

We're likely not going to be removing all of this, but none of them
seem like high priority for moving the web forward and so testing them
in ACID3 doesn't seem to have a purpose. And if ACID3 was the only
reason we kept them, then that would be actively holding the web back.
And given the hurdle for changing ACID3, and that we seem to be
versioning it by years, I'd rather not be conservative about removing
things now that we have the opportunity.

Then there is of course the whole SVG Fonts thing. I'll defer to the
SVG WG here, but mozilla's opinion on SVG fonts is pretty well known I
assume?

/ Jonas