Re: [Bug 12111] New: spec for Storage object getItem(key) method does not match implementation behavior

On Sat, Jun 11, 2011 at 3:10 PM, Ian Hickson <ian@hixie.ch> wrote:
> The particular issue in question isn't a particularly important one. The
> spec describes a superset of implementations, and is a logical direction
> for the spec to go. (Even within the process, there's no reason we
> couldn't go to LC with it as is.) Implementations are the ultimate guide
> here, when this issue bubbles up to the top of the priority list then
> it'll get resolved one way or the other based on what they do and want.

The spec does not describe a superset of implementations.  It
describes behavior that contradicts what implementations actually do.
For instance, if you set localStorage.foo = false, the spec requires
localStorage.foo to return boolean false.  In implementations, it will
return the string "false", which evaluates to boolean true.  It is not
realistically going to be possible for implementations to change to
what the spec currently says.

Furthermore, we have some implementers from each of IE, Firefox, and
Chrome saying that they don't intend to change to match the spec, and
no implementers saying they intend to change to match the spec.  That
should serve to indicate that the spec is broken and needs to change,
process issues aside.

I don't see what would take a few hours to change here.  Change all
the relevant types from any to DOMString, remove all the stuff about
structured clones, and let WebIDL do the work.  That's immediately
much closer to browser behavior than the current spec.

Received on Sunday, 12 June 2011 21:59:07 UTC