Re: [Caja] Re: should ses work with current Chrome? error from contract.html

Mark Miller <[email protected]> Tue, 24 Mar 2015 17:40:22 +0100
Newsgroups gmane.comp.capabilities.general
Message-ID <CAK5yZYj20JFA_d1_GFhxWifebOS6cExQFc+51WRWDHU_9m39Hg@mail.gmail.com>
On Tue, Mar 24, 2015 at 5:17 AM, 'Mark S. Miller' via Google Caja Discuss <
google-caja-discuss-/[email protected]> wrote:

> I reproduced it. I get the same as you when I visit contract.html as a
> file: rather than an http: or https: on Chrome, Opera, and Safari. The
> problem is that the AMD and contract tests are using xhr, which IIUC is not
> supposed to work with file: resources. I'm not sure why I get such a lousy
> diagnostic on Chrome and Opera, but clearly I need to improve that.
>

Hi Dan,

The bad diagnostic was a symptom of a previously unknown bug in SES's Q
implementation. Now fixed at
https://code.google.com/p/es-lab/source/detail?r=909
The old code was clearing a lexically captured resultP variable purely to
help GC. But there was a code path where this was clearing the variable
before it was returned, causing undefined to be returned instead. The
comment you see in that diff explains a bit more.

Thanks!


Btw, now that ES6 has standardized promises and modern browsers are
shipping it, I need to rebuild this Q on top of that and also reconcile
with it.




> On Safari, I get:
>
>     AMD loader test...failed: Error: xhr GET failed with status: 0
>     contract test...failed: Error: xhr GET failed with status: 0
>
>
> Curiously, as you saw, it does work in FF, which must mean that FF is
> somehow making an xhr against a file: resource "work". I'm not sure what's
> going on here.
>
>
> On Tue, Mar 24, 2015 at 3:20 AM, Mark S. Miller <[email protected]>
> wrote:
>
>> [+google-caja-discuss] // please subscribe so your responses appear there
>> as well.
>>
>>
>> Hi Dan, are you seeing this on visiting
>> http://es-lab.googlecode.com/svn/trunk/src/ses/contract.html ?
>>
>>
>>
>> On Mon, Mar 23, 2015 at 8:33 PM, Dan Connolly <[email protected]> wrote:
>>
>>> I get: contract test...failed: TypeError: Function.prototype.apply was
>>> called on undefined, which is a undefined and not a function
>>>
>>>
>>>
>>> a bit more context:
>>>
>>> $ svn info
>>> URL: http://es-lab.googlecode.com/svn/trunk/src/ses
>>> Repository UUID: aeea10e6-ec39-11de-83d8-6d5adf01d787
>>> Revision: 907
>>> Last Changed Date: 2015-02-15 10:49:54 -0600 (Sun, 15 Feb 2015)
>>>
>>>
>>> The full text of the page is:
>>>
>>> Repair Reports
>>>
>>> [+] 2 Fine.
>>>
>>> [+] 111 Fine.
>>>
>>> [+] 9) Repaired: Non-deletable RegExp statics are a global
>>> communication channel.
>>>
>>> [+] 14) Repaired: Date.prototype is a global communication channel.
>>>
>>> [+] 16) Not repaired: Number.prototype should be a plain object. Safe
>>> spec violation(1).
>>>
>>> [+] 17) Not repaired: Boolean.prototype should be a plain object. Safe
>>> spec violation(1).
>>>
>>> [+] 18) Not repaired: String.prototype should be a plain object. Safe
>>> spec violation(1).
>>>
>>> [+] 19) Not repaired: RegExp.prototype should be a plain object. Safe
>>> spec violation(1).
>>>
>>> [+] 70) Not repaired: [[ThrowTypeError]] has normal function
>>> properties. Safe spec violation(1).
>>>
>>> Max Severity: Safe spec violation(1).
>>>
>>> [+] 3 Fine.
>>>
>>> [+] 598 Apparently fine.
>>>
>>> [+] 75 Deleted.
>>>
>>> [+] 3 Frozen harmless.
>>>
>>> [+] 1 Skipped. Safe spec violation(1).
>>>
>>> ________________________________
>>>
>>> initSES succeeded.
>>>
>>> Expected error to test ses.getStack API: [+]Error: Expand me to see stack
>>>
>>> Testing ses.getStack with compileExprLater: [+]Error: Expand me to see
>>> stack
>>>
>>> exprTest...succeeded
>>> moduleTest...succeeded
>>> scriptTest...succeeded
>>> AMD loader test...failed: TypeError: Function.prototype.apply was
>>> called on undefined, which is a undefined and not a function
>>> contract test...failed: TypeError: Function.prototype.apply was called
>>> on undefined, which is a undefined and not a function
>>>
>>> Using Chrome 41.0.2272.89 on Linux
>>>
>>>
>>>
>>>
>>> --
>>> Dan Connolly
>>> http://www.madmode.com/
>>> _______________________________________________
>>> cap-talk mailing list
>>> [email protected]
>>> http://www.eros-os.org/mailman/listinfo/cap-talk
>>>
>>
>>
>>
>> --
>>     Cheers,
>>     --MarkM
>>
>
>
>
> --
>     Cheers,
>     --MarkM
>
> --
>
> ---
> You received this message because you are subscribed to the Google Groups
> "Google Caja Discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to google-caja-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/[email protected]
> For more options, visit https://groups.google.com/d/optout.
>



-- 
Text by me above is hereby placed in the public domain

  Cheers,
  --MarkM

_______________________________________________
cap-talk mailing list
[email protected]
http://www.eros-os.org/mailman/listinfo/cap-talk