Page 1 of 1

[CLOSED] NoScript Classic and Waterfox 68?

Posted: Thu May 02, 2019 12:12 am
by barbaz
Although Waterfox 68 alpha is not yet out, there is already documentation about what will need to happen to legacy addons to keep them running - https://github.com/MrAlex94/Waterfox/wiki

As NoScript 10 is still missing many essential features compared to NoScript Classic, I would like to evaluate the viability of continuing to run NoScript Classic on Waterfox 68. Is it likely to be doable? If so, is it yet possible to estimate the amount of effort involved?

(I assume that even if it is doable, that such support isn't going to happen officially, since Waterfox is not an officially supported browser. Which would put it on me to make needed code changes.)

Re: NoScript Classic and Waterfox 68?

Posted: Thu May 02, 2019 5:40 pm
by therube
I take it you've tried 5, as it is, in WF68 & it did not work?

Error console point anything of interest out?

Oh, & I would excise "webextension" parts, like I did with, [5] Taskbar Icons are Reordered opening from Session Restore.
(I've always thought, it's been some time since I've looked at WF, so thinking it was something like this: one of the issues of WF was its intermingling of old & new, & there could be times where there was interference between old & new...)


My two cents, 0.0735294117647059.

Re: NoScript Classic and Waterfox 68?

Posted: Thu May 02, 2019 6:06 pm
by barbaz
therube wrote: Thu May 02, 2019 5:40 pm I take it you've tried 5, as it is, in WF68 & it did not work?
No, Waterfox 68 alpha is not yet available. I suspect NoScript Classic is unlikely to just work as-is in Waterfox 68, in light of e.g. viewtopic.php?f=7&t=24648

Re: NoScript Classic and Waterfox 68?

Posted: Wed May 08, 2019 1:45 am
by barbaz
Waterfox 68 alpha is now available. Trying to run NoScript Classic as-is, totally fails, this is what I get -

Code: Select all

addons.xpi WARN Exception running bootstrap method startup on {73a6fe31-595d-460b-a920-fcc0f8843232}: TypeError: XPCOMUtils.generateQI is not a function(chrome://noscript/content/Main.js?1daahvoo1m9m3bg3fpps:75:30) JS Stack trace: @chrome://noscript/content/Main.js?1daahvoo1m9m3bg3fpps:75:30
INCLUDE@chrome://noscript/content/loader.js?1daahvoo1m9m3bg3fpps:22:14
startup@523041117765985.1557280056045:72:3
startup@bootstrap.js:11:12
startup@BootstrapLoader.jsm:354:16
callBootstrapMethod@XPIProvider.jsm:1742:33
startup@XPIProvider.jsm:1841:32
_install@XPIProvider.jsm:1914:18
install@XPIProvider.jsm:1903:17
startInstall/this._startupPromise<@XPIInstall.jsm:1625:60
async*startInstall@XPIInstall.jsm:1627:9
async*install@XPIInstall.jsm:1207:12
install@XPIInstall.jsm:1925:20
checkForBlockers@XPIInstall.jsm:1502:10
install@XPIInstall.jsm:1204:12
install@XPIInstall.jsm:1925:20
checkPrompt/<@XPIInstall.jsm:1477:12
async*checkPrompt@XPIInstall.jsm:1478:7
install@XPIInstall.jsm:1201:12
install@XPIInstall.jsm:1925:20
downloadCompleted@XPIInstall.jsm:2237:12
async*onStopRequest/<@XPIInstall.jsm:2161:18

Re: NoScript Classic and Waterfox 68?

Posted: Wed May 08, 2019 9:33 am
by therube
(Can't even get WF to run [correctly] in Sandboxie? Opens, but won't load any URL. Can't open a second tab. Can't close with the 'X', only by closing the single tab that opens on load.

SBIE2205 Service not implemented: CreateDesktop - whatever that means?

about:config, Change security.sandbox.content.level to 2 - that's got it.

I can't believe what FF is doing with about:config.
Doesn't like my hacked NoScript, says it is "corrupt". Can't believe that WF enforces signing.
WF: Session Restore is not working correctly, opening the 1st. tab, it seems, again, on each open.)

10 runs.
5 "installs", but that's all I can figure about it. No icon. Other then Addons Manager (& about:config), not even aware that it is there. Not sure it really is.


I think this ability to run "Legacy" is going to be a farce, with all kinds of issues cropping up even when it "works". So in the end, you're left with "FF". (A FF that gets worse & worse with each version.)

Re: NoScript Classic and Waterfox 68?

Posted: Fri May 10, 2019 12:22 am
by barbaz
I managed to get past that first error. Apparently XPCOMUtils.generateQI is now ChromeUtils.generateQI. And "this.__defineGetter__" probably doesn't exist anymore, so I had to replace that with Object.defineProperty in a couple places.

After taking care of all that, it still has error -

Code: Select all

addons.xpi      WARN    Exception running bootstrap method startup on {73a6fe31-595d-460b-a920-fcc0f8843232}: InternalError: too much recursion(chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:17:1) JS Stack trace: INCLUDE@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:17:1
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:35:9
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9
get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9
[...]
Where [...] is a bunch more lines of "get@chrome://noscript/content/loader.js?1dafhtvhd6qj3q51cfm4:36:9".

Any idea how to fix this one?

Re: NoScript Classic and Waterfox 68?

Posted: Sat May 18, 2019 8:46 pm
by barbaz
I solved that error.

MDN documentation of __defineGetter__ is misleading. It appears to claim that

Code: Select all

obj.__defineGetter__('foo', function(){/* ... */});
is equivalent to

Code: Select all

Object.defineProperty(obj, 'foo', {get:function(){/* ... */}});
But this is incorrect. Getters set with __defineGetter__ are configurable and enumerable, whereas with the Object.defineProperty method mentioned above they are not.

The correct replacement for __defineGetter__ is -

Code: Select all

Object.defineProperty(obj, 'foo', {
  configurable: true,
  enumerable: true,
  get:function(){/* ... */}
});
Now I need to find replacement for Ci.nsIDOMDocument.

Re: NoScript Classic and Waterfox 68?

Posted: Sat May 18, 2019 9:45 pm
by barbaz
barbaz wrote: Sat May 18, 2019 8:46 pm Now I need to find replacement for Ci.nsIDOMDocument.
I'm trying replacing it with Document for now.

Also ran into and had to fix https://github.com/MrAlex94/Waterfox/issues/959 for NoScript.

Looks like I will need to also write a document.loadOverlay replacement.

Re: [CLOSED] NoScript Classic and Waterfox 68?

Posted: Mon May 27, 2019 10:46 pm
by barbaz
I had made a bunch more changes since the last post, and it's still not in usable, working condition.

I've pretty much given up on this, it's too much time and effort.