Closed Bug 892225 Opened 7 years ago Closed 7 years ago

Nightly v.25-32&64 bit / Some features of Synology DSM don't work

Categories

(Core :: JavaScript Engine, defect)

25 Branch
defect
Not set

Tracking

()

VERIFIED FIXED
mozilla25
Tracking Status
firefox24 --- unaffected
firefox25 --- verified

People

(Reporter: u52928, Assigned: jorendorff)

References

Details

(Keywords: regression)

Attachments

(2 files)

User Agent: Mozilla/5.0 (Windows NT 5.1; rv:25.0) Gecko/20130710 Firefox/25.0 (Nightly/Aurora)
Build ID: 20130710030205

Steps to reproduce:

1. Logged into my Synology 109+ with latest DSM software using Nightly
2. Clicked Control Panel
3. Clicked File Station


Actual results:

1. Control Panel window was blank
2. File Station was grayed out; got stuck on "Loading"


Expected results:

1. Control Panel window should have been populated with icons 
2. File Station window should provide access to disk contents - sort of like Windows Explorer
I've tested this on the 64-bit Nightly on a Windows 7 machine and on the 32-bit Nightly on Win XP. The problem is the same on both. 

I've also tried it on today's Aurora (24.0.a2) on Win XP, and on the latest Beta (23.0.b4, I think). It works properly on both. The only problem is on the Nightly.

Please see http://forums.mozillazine.org/viewtopic.php?f=23&t=2727917
Is there online demo to test? (with the latest DSM firmware)
Flags: needinfo?(jgreenman)
Keywords: testcase-wanted
The person who first mentioned the problem and I are talking about the firmware and user dashboard of the Synology brand of NAS devices. I'm not quite sure what you mean by an "online demo"? How would this function?

I'm not sure if this will be of any help, but I've just tried it again with the same results. Today, though, I opened the console and found these errors.
--
[19:10:45.324] Use of Mutation Events is deprecated. Use MutationObserver instead. @ http://192.168.0.26:5000/webman/sds.js?v=3211:7
[19:10:45.342] Use of getPreventDefault() is deprecated.  Use defaultPrevented instead. @ chrome://flashblock/content/flashblock.xml:119
[19:10:45.388] TypeError: FBD.fake_embed_1.parentNode is null @ http://192.168.0.26:5000/webman/sds.js?v=3211:5
[19:10:46.416] TypeError: FBD.fake_embed_1.parentNode is null @ http://192.168.0.26:5000/webman/sds.js?v=3211:5
[19:10:47.022] TypeError: c.type is undefined @ http://192.168.0.26:5000/webman/sds.js?v=3211:5
--
If I can be of any more help please let me know.
Flags: needinfo?(jgreenman)
I found the demo: http://www.synology.fr/products/dsm_livedemo.php

Regression range:
good=2013-06-07
bad=2013-06-08
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=dc8e78ed8c44&tochange=6006abb39d8e

"Control Panel" folder stays blank.
(In reply to Loic from comment #5)
> I found the demo: http://www.synology.fr/products/dsm_livedemo.php
> 
> Regression range:
> good=2013-06-07
> bad=2013-06-08
> http://hg.mozilla.org/mozilla-central/
> pushloghtml?fromchange=dc8e78ed8c44&tochange=6006abb39d8e
> 
> "Control Panel" folder stays blank.

Good job!

And if you click the icon at the very top left (the three gray squares and one blue one), and then click "File Station", and then click "homes", "music", "photo", they all get stuck when "Loading".
Regression window(m-i)
Good:
http://hg.mozilla.org/integration/mozilla-inbound/rev/ebae7298e381
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20130606 Firefox/24.0 ID:20130606133151
Bad:
http://hg.mozilla.org/integration/mozilla-inbound/rev/2bd3d9bbd722
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20130606 Firefox/24.0 ID:20130606133846
Pushlog:
http://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=ebae7298e381&tochange=2bd3d9bbd722


Reland the offending patch
Regression window(m-i)
Good:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:25.0) Gecko/20130703 Firefox/25.0 ID:20130703111823
http://hg.mozilla.org/integration/mozilla-inbound/rev/60baa46c0b44
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:25.0) Gecko/20130703 Firefox/25.0 ID:20130703125528
Bad:
http://hg.mozilla.org/integration/mozilla-inbound/rev/b71a993bce69
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:25.0) Gecko/20130703 Firefox/25.0 ID:20130703135226
Pushlog:
http://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=60baa46c0b44&tochange=b71a993bce69


Regressed by:
b4426d926b31	Sankha Narayan Guria — date: Wed Jun 05 14:17:35 2013 -0500 Bug 875433 - Array.prototype.iterator is the same function object as .values. r=jorendorff.
Assignee: nobody → general
Blocks: 875433
Status: UNCONFIRMED → NEW
Component: Untriaged → JavaScript Engine
Ever confirmed: true
Product: Firefox → Core
Is this using the Sencha library too, or is it another problem?
(In reply to Boris Zbarsky (:bz) from comment #8)
> Is this using the Sencha library too, or is it another problem?

Error: ReferenceError: items is not defined
Source File: http://demo.synology.com:5000/scripts/ext-3/ext-all.js?v=3749
Line: 3

In the above js, structure looks just like Sencha library (Bug 883914 Comment 10)
(In reply to Boris Zbarsky (:bz) from comment #8)
> Is this using the Sencha library too, or is it another problem?

Hey Naveed, is his something that we can hope to resolve on our end or would you consider this tech evangelism? Please also see related bug 881782.
Flags: needinfo?(nihsanullah)
Naveed is out for a few weeks.
Flags: needinfo?(luke)
Given that this is ES6 stuff that's correctly implemented, we have, afaict, three options here:

1. treat this as tech evangelism and let it ride the trains
2. treat this as tech evangelism but disable for Aurora and onwards
3. go back to tc39 saying that implementing this isn't viable

If we decide on 3., we should do so *very* quickly: today starts a new three-day tc39 meeting, at which it could be discussed.
Flags: needinfo?(nihsanullah)
OS: Windows XP → All
Hardware: x86 → All
I don't know how one would do this, but it might be interesting to see whether other Synology software is affected. 

Synology makes a whole range of NAS products used both by individuals and corporations. Having an important component of their devices' functionality wiped out by Fx doesn't sound like such a good idea, especially given the fact that Synology people users tend to be "power users".
Till: bug 875433 comment 14 indicates we are expecting a fix from Sencha; do you know whether the fix is anywhere close?
Flags: needinfo?(luke)
Back up.  As I asked in comment 8, is this the Sencha issue or a different issue?  Someone (preferably a JS engine hacker, yes?) needs to start by determining _that_.  

> we should do so *very* quickly

Which is why we sat on this for a few weeks?  :(
(In reply to Boris Zbarsky (:bz) from comment #15)
> Back up.  As I asked in comment 8, is this the Sencha issue or a different
> issue?  Someone (preferably a JS engine hacker, yes?) needs to start by
> determining _that_.

See comment 9: it is the same issue. At least the site uses ext.js, which makes me very confident in assuming it is.
> 
> > we should do so *very* quickly
> 
> Which is why we sat on this for a few weeks?  :(

You're right: we should have moved much faster here. :(

(In reply to Luke Wagner [:luke] from comment #14)
> Till: bug 875433 comment 14 indicates we are expecting a fix from Sencha; do
> you know whether the fix is anywhere close?

I do not. The only thing I heard from them was a Twitter response on June 19.: "Yes there's a bug open and we're looking into it."

Even if they fix the bug, though, the question is how fast ext.js users are going to upgrade to a new build. It would be interesting to know how quickly that usually happens, but I'm not very hopeful. (Neither for getting those numbers, nor for the numbers themselves.)

Personally, I'm in favor of option 2, keeping this Nightly-only for now, fwiw.
Ah, sorry, I missed comment 9.  :(  OK, then this is just part of the Sencha mess....
https://hg.mozilla.org/mozilla-central/rev/22c3433bdbc9
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla25
Thank you for addressing - and fixing - this.
Joe, note that the fix was just backing out an addition to Array objects that EcmaScript 6 is making.  The right long-term fix is to get Synology fixed to not use the broken library they're using...
The problem was actually discovered by someone named "FloridaMatt" on the Mozilla Forum.  I found my Synology device was affected, so I filed this bug and wrote to them; I didn't hear anything. 

Fx obviously can't be made to play nicely with every one of the zillion devices on the market, but I guess some attention has to be paid to the "bigger" names. What this means in detail, though, is obviously up to you and the respective firms to decide. The question would always seem to be  who needs whom more. 

I have no idea how many Synology owners use Fx and vice versa. As I've said, though, Synology appears to me to be a relatively significant player in the prosumer NAS market, and I assume that at least some of their users are in a position to be Fx evangelists. Weighing whether or not to implement a feature for Fx that would alienate them is a complicated issue that's way beyond me.
Oh, right.  This is a NAS.  Well, that sort of answers comment 14: this stuff is deployed on consumer devices, probably without much in the way of update capability, so Sencha fixing extjs won't help all that much with those...

Now: did anyone actually bring this up at the TC39 meeting?
Flags: needinfo?(till)
Flags: needinfo?(luke)
Ah, looks like Till brought this up on es-discuss and https://mail.mozilla.org/pipermail/es-discuss/2013-July/032189.html says they're talking about it...
Flags: needinfo?(till)
Flags: needinfo?(luke)
Seems like they even came to a conclusion about how to deal with this:

"littlecalculist: @qmx tl;dr: new standard symbol @@unscopeable that can be added to an object with array of property names for `with` to ignore"[1].

This is all very shudder-inducing, but then it's "with" we're talking about ...

@bz, from looking at the responses to that tweet, it looks like you should've seen it. ;)

[1]: https://twitter.com/littlecalculist/status/359914049447804929
Ah, I did see that, but didn't make the connection to this bug...
[Approval Request Comment]
Bug caused by (feature/regressing bug #): bug 875433
User impact if declined: Breaks some web sites.
Testing completed (on m-c, etc.): This is a backout. Also the backout was already pushed to m-c over a month ago. This patch is as baked as they come.
Risk to taking this patch (and alternatives if risky): Nil.
String or IDL/UUID changes made by this patch: None.
Assignee: general → jorendorff
Attachment #799791 - Flags: review+
Attachment #799791 - Flags: approval-mozilla-beta?
Comment on attachment 799791 [details] [diff] [review]
rev 22c3433bdbc9 (what Ms2ger did to fix this bug)

Never mind. Aurora, beta, and mozilla-central tip all appear to have the same (correct) code. There's nothing to do here.
Attachment #799791 - Flags: approval-mozilla-beta?
Joe, can you please check to confirm this is working now in Firefox 25?
Flags: needinfo?(jgreenman)
Sorry I've taken so long.

I've just checked my DiskStation 109+ using the latest DSM version for my machine (4.2-3211).

I used today's (16 Sep 2013) Aurora 25.0a2.

Everything works as expected.

Thanks.
Flags: needinfo?(jgreenman)
Whoops, just for the record, I used a computer running Win XP SP3 / 32 bit.
Thank you for your help Joe.
Status: RESOLVED → VERIFIED
My pleasure. Thanks for fixing it.
Duplicate of this bug: 883914
You need to log in before you can comment on or make changes to this bug.