DTA 3.1.2 (dirkf version) not working with SM 2.53.17b1

Discussion about Seamonkey builds
Post Reply
rdtom
Posts: 83
Joined: February 26th, 2016, 3:48 pm

DTA 3.1.2 (dirkf version) not working with SM 2.53.17b1

Post by rdtom »

rainyd Don't hijack old threads.
DTA is broken in SeaMonkey 2.53.13 beta
http://forums.mozillazine.org/viewtopic ... &t=3092713
Someone browsing the forums is going think this has to do with SeaMonkey version 2.53.13.

The problem is that DeferredSave.jsm in omni.ja\modules\
is in wg9's build of March 3, but it is not in wg9's build of March 4.
User avatar
DanRaisch
Moderator
Posts: 127426
Joined: September 23rd, 2004, 8:57 pm
Location: Somewhere on the right coast

Re: DTA 3.1.2 (dirkf version) not working with SM 2.53.17b1

Post by DanRaisch »

Moving to SeaMonkey Builds as this refers to a pre-release version of the program.
Somewhere on the right coast.
rdtom
Posts: 83
Joined: February 26th, 2016, 3:48 pm

Re: DTA 3.1.2 (dirkf version) not working with SM 2.53.17b1

Post by rdtom »

I get this error:
Timestamp: 3/18/2023, 8:23:31 AM
Error: DownThemAll! (error) - failed to load chrome://dta-modules/content/support/filtermanager.js [Exception: Failed to load module support/filtermanager from: chrome://dta-modules/content/support/filtermanager.js
Component returned failure code: 0x80520012 (NS_ERROR_FILE_NOT_FOUND) [nsIXPCComponents_Utils.import]]
require@chrome://dta-modules/content/glue.jsm:479:11
@chrome://dta/content/common/internalFunctions.js:26:23
Source File: chrome://dta-modules/content/glue.jsm
Line: 509
dta modules\support\filtermanager.js
filtermanager.js calls DeferredSave.jsm from omni.ja
line 23

Code: Select all

const {DeferredSave} = requireJSM("resource://gre/modules/DeferredSave.jsm");
But DeferredSave.jsm is no longer in omni.ja
frg
Posts: 1364
Joined: December 15th, 2015, 1:20 pm

Re: DTA 3.1.2 (dirkf version) not working with SM 2.53.17b1

Post by frg »

I backed out the removal part 4 from 2.53.17b1 pre.

Please check the next 2.53.17b1 pre version >= 03/19. Would be best if this is integrated into DTA. Was only used in the add-on manager and according to the bug description has at least one possible problem.

Bug were this was removed orginally:
https://bugzilla.mozilla.org/show_bug.cgi?id=1405491

FRG
rdtom
Posts: 83
Joined: February 26th, 2016, 3:48 pm

Re: DTA 3.1.2 (dirkf version) not working with SM 2.53.17b1

Post by rdtom »

DTA works in Build 20230319214500

What I have tried
This with Build 20230304220003
To add DeferredSave.jsm to dta\modules\
But I get the error:
0x804b000a (NS_ERROR_MALFORMED_URI) [nsIXPCComponents_Utils.import]]

I then made some changes substituting DeferredTask for DeferredSave
modules\support\filtermanager.js

Code: Select all

-23 const {DeferredSave} = requireJSM("resource://gre/modules/DeferredSave.jsm");
+23 const {DeferredTask} = requireJSM("resource://gre/modules/DeferredTask.jsm");
-315	this._saver = new DeferredSave(
+315 this._saver = new DeferredTask(


modules\support\domainprefs.js

Code: Select all

-10	const {DeferredSave} = requireJSM("resource://gre/modules/DeferredSave.jsm");
+10	const {DeferredTask} = requireJSM("resource://gre/modules/DeferredTask.jsm");
-17	class Saver extends DeferredSave {
+17	class Saver extends DeferredTask {
-32	_deferredSave() {
-33	     super._deferredSave();
+32	_deferredTask() {
+33	     super._deferredTask();
Downloads works but I get these errors
Timestamp: 3/20/2023, 1:25:17 PM
Error: DownThemAll! (error) - failed to save filters [Exception: this._saver.saveChanges is not a function]
_save@chrome://dta-modules/content/support/filtermanager.js:539:22

Code: Select all

await this._saver.saveChanges();
Timestamp: 3/20/2023, 1:25:17 PM
Error: TypeError: this.saveChanges is not a function
Source File: chrome://dta-modules/content/support/domainprefs.js
Line: 71

Code: Select all

this.saveChanges();
rdtom
Posts: 83
Joined: February 26th, 2016, 3:48 pm

Re: DTA 3.1.2 (dirkf version) not working with SM 2.53.17b1

Post by rdtom »

Temporary Fixes for DTA

What you need to do is install a copy of DeferredSave into DTA.
If you don't have a copy of DeferredSave on your cmputer,
Download a build from
Index of /pub/seamonkey/nightly/2023/03/2023-03-15-21-00-02-comm-253/
March 3 (20230303220002) or before
March 19 (20230319214500) or after
Open the Profle where the extension DTA a is installed
Open DTA.xpi in 7zip
Double click on modules
Right click on View (at the top of the window)
Then right click on 2 panels
In the second window, then left click on Computer and select open
Navigate to where SeaMonkey is installed
Double click on SeaMonkey
Double click on omni.ja
Double click on modules
Drag DeferredSave from omni.ja into DTA\modules
Windows will asks (I'm on Windows 7)
Confirm file copy
Are you sure you want to copy files to archive
...DTA.xpi\modules\
?
Click on Yes
Go back to single view in 7zip
Double click on support
Open filtermanager.js in a suitable editor
Go to line 23

Code: Select all

-const {DeferredSave} = requireJSM("resource://gre/modules/DeferredSave.jsm");
+Cu.import("chrome://dta-modules/content/DeferredSave.jsm");
Open domainprefs.js in the same editor
Go to line 10

Code: Select all

-const {DeferredSave} = requireJSM("resource://gre/modules/DeferredSave.jsm");
+Cu.import("chrome://dta-modules/content/DeferredSave.jsm");
Save your changes to DTA
frg
Posts: 1364
Joined: December 15th, 2015, 1:20 pm

Re: DTA 3.1.2 (dirkf version) not working with SM 2.53.17b1

Post by frg »

> Temporary Fixes for DTA

If I understand correctly only needed if we take out DeferredSave.jsm again? Right?

Maybe you should ask Dirk if he can put this in and update the real one.

FRG
Post Reply