Adblock Edge no longer works in Nightly 36, even with e10s disabled: TypeError: f.readTo is not a function

RESOLVED FIXED

Status

Tech Evangelism
Add-ons
RESOLVED FIXED
3 years ago
3 years ago

People

(Reporter: cpeterson, Unassigned)

Tracking

({addon-compat, regression})

Trunk
addon-compat, regression

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [Fixed in Adblock Edge 2.1.7])

(Reporter)

Description

3 years ago
As reported in bug 1048057 comment 9, Adblock Edge no longer works in Nightly 36, even with e10s disabled. Adblock Edge works correctly in Aurora 35 and Adblock Plus works correctly in Nightly 36 (with or without e10s).

This regression is likely related to recent compatibility shim changes.
(Reporter)

Updated

3 years ago
Keywords: addon-compat, regression, regressionwindow-wanted
tracking-e10s: ? → -
(Reporter)

Comment 1

3 years ago
I see the following JS exception logged to stderr when I run Nightly with Adblock Edge installed. The addon blows up when trying to yield on a Promise<File> returned OS.File.open().

Is this a recent regression? It would be helpful to track down the regression window.

> A coding exception was thrown and uncaught in a Task.
> 
> Full message: TypeError: f.readTo is not a function
> Full stack: exports.IO.readFromFile/<@resource://gre/modules/addons/XPIProvider.jsm
> -> jar:file:///Users/cpeterson/Library/Application%20Support/Firefox/Profiles/ex2170bl.Test/extensions/%7Bfe272bd1-5f76-4ea4-8501-a05d35d823fc%7D.xpi!/bootstrap.js
> -> jar:file:///Users/cpeterson/Library/Application%20Support/Firefox/Profiles/ex2170bl.Test/extensions/%7Bfe272bd1-5f76-4ea4-8501-a05d35d823fc%7D.xpi!/lib/io.js:168:23
> TaskImpl_run@resource://gre/modules/Task.jsm:330:41
> Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:870:23
> this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:749:7
> this.PromiseWalker.scheduleWalkerLoop/<@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:691:37
Summary: Adblock Edge no longer works in Nightly 36, even with e10s disabled → Adblock Edge no longer works in Nightly 36, even with e10s disabled: TypeError: f.readTo is not a function
Could you try it with extensions.interposition.enabled set to false in today's nightly?
(Reporter)

Comment 3

3 years ago
Toggling extensions.interposition.enabled does not fix Adblock Edge.

I bisected this regression to Nightly 36 build 2015-11-15:

https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=7f0d92595432&tochange=acbd7b68fa8c
(Reporter)

Comment 4

3 years ago
This bug is a regression from bug 1075438, which also broke Adblock Plus (bug 1090958).

The Adblock Plus fix is here: http://codereview.adblockplus.org/6083164824928256
Depends on: 1075438
Keywords: regressionwindow-wanted
See Also: → bug 1090958
Sorry about that. We synchronized with ABP, but I didn't realize that ABE would be affected, too.

Comment 6

3 years ago
Adblock Edge mirrored Wladimir Palant's "readTo -> read" change to lib/io.js on 11/17 (see here: https://bitbucket.org/adstomper/adblockedge/diff/lib/io.js?diff2=36583d9afeec&at=default ).  This bug will be fixed when Adblock Edge releases version 2.1.7(currently 2.1.6).

For now, a workaround is to go to Addons -> Extensions -> Adblock Edge -> Filter Preferences -> Add Filter Subscription, then ABE will redownload a filter .ini for your current browsing session.  Unfortunately, each time you close Nightly, you will have to re-add your filter subscriptions upon successive browser reloads.  I don't know if this constant downloading of filters is frowned upon since it may skew filter download stats and/or eat up bandwidth (some filters are over 2MB).
Blocks: 1075438
Component: Extension Compatibility → Add-ons
No longer depends on: 1075438
Product: Firefox → Tech Evangelism

Comment 7

3 years ago
Adblock Edge has been updated to version 2.1.7 ( https://bitbucket.org/adstomper/adblockedge/downloads ) , and I can confirm that the new `lib/io.js` fixes this bug(for me), and ABE works fine in Nightly 37.0a1(e10s has no effect on this bug).  If anyone else can test this to confirm, it'd be appreciated, thank you.
(Reporter)

Comment 8

3 years ago
Adblock Edge 2.1.7 does seem to block ads correctly now, but Adblock Edge's first run page (to configure filter lists) and about:addons "Filter Preferences" button don't load correctly. I filed bug 1107399 for that issue.
I'm closing this one as RESOLVED FIXED per Comment 7.
Status: NEW → RESOLVED
Last Resolved: 3 years ago
tracking-e10s: - → ---
No longer depends on: 1048057
Resolution: --- → FIXED
Whiteboard: [Fixed in Adblock Edge 2.1.7]
You need to log in before you can comment on or make changes to this bug.