Skip to content

Commit 774e75f

Browse files
authored
Merge pull request #4 from micz/no_experiment
Experiment API removed
2 parents 6d0a3b8 + 36e0cdb commit 774e75f

13 files changed

Lines changed: 29 additions & 254 deletions

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,12 @@
33

44

55

6+
<h2>Version 2.0.0 - ??/??/2025</h2>
7+
<ul>
8+
<li>This addons is now a pure mail extension, so the full permission is no more needed.</li>
9+
<li>SentAutoMove is now compatible only on Thunderbird 128 and above.</li>
10+
<li>Force destination folder update option removed.</li>
11+
</ul>
612
<h2>Version 1.0.2 - 14/01/2025</h2>
713
<ul>
814
<li>Fixed a bug when using Thunderbird 128 searching a related message: skip it if it's content is not available in Thunderbird and it's not possibile to download it.</li>

_locales/en/messages.json

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -397,14 +397,6 @@
397397
"message": "Thunderbird has gone offline. Moving messages in bulk within IMAP accounts while offline is not recommended. The operation has been stopped.",
398398
"description": ""
399399
},
400-
"prefs_OptionText_imap_force_folder_update": {
401-
"message": "Force IMAP folder update",
402-
"description": ""
403-
},
404-
"prefs_OptionText_imap_force_folder_update_info": {
405-
"message": "Force an update of the destination folder, after a message move, when using an IMAP account.",
406-
"description": ""
407-
},
408400
"Idle" : {
409401
"message": "Idle",
410402
"description": ""

api/ImapTools/implementation.js

Lines changed: 0 additions & 115 deletions
This file was deleted.

api/ImapTools/schema.json

Lines changed: 0 additions & 35 deletions
This file was deleted.

js/mzsam-moving-engine.js

Lines changed: 11 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -64,14 +64,8 @@ export class movingEngine {
6464
async checkFolder(folder){
6565
let query_params = {}
6666

67-
if(samStore.istb128orgreater){
68-
query_params = {
69-
folderId: folder.id,
70-
}
71-
}else{
72-
query_params = {
73-
folder: folder,
74-
}
67+
query_params = {
68+
folderId: folder.id,
7569
}
7670

7771
this.logger.log("Checking folder [" + folder.name + "]");
@@ -87,7 +81,6 @@ export class movingEngine {
8781
this.logger.changeDebug(samStore.do_debug);
8882

8983
let operation_aborted = false;
90-
let imap_force_folder_update = samPrefs.getPref("imap_force_folder_update");
9184

9285
let report_data = {};
9386
report_data.report_date = new Date();
@@ -107,7 +100,7 @@ export class movingEngine {
107100

108101
let folder_string = browser.i18n.getMessage("executedFromSelection");
109102
if(query_params !== null){
110-
folder_string = samStore.istb128orgreater ? (await messenger.folders.get(query_params.folderId)).name : query_params.folder.name;
103+
folder_string = (await messenger.folders.get(query_params.folderId)).name;
111104
}
112105

113106
report_data.current_folder = folder_string;
@@ -180,7 +173,7 @@ export class movingEngine {
180173
if(dest_folder !== false){
181174
// console.log(">>>>>>>>>>>> dest_folder: " + JSON.stringify(dest_folder));
182175
// ================================ The following line has to be commented out for testing ================================
183-
await this.doMessagesMove([message.id], dest_folder, imap_force_folder_update);
176+
await this.doMessagesMove([message.id], dest_folder);
184177
// ========================================================================================================================
185178
tot_moved++;
186179
this.logger.log("Moving [" + message.subject + "] to [" + dest_folder.name + "] [" + message.headerMessageId + "] [" + samUtils.formatDateString(message.date) + "]");
@@ -252,23 +245,12 @@ export class movingEngine {
252245
}
253246
}
254247

255-
async doMessagesMove(messageIds, dest_folder, force_folder_update = true){
248+
async doMessagesMove(messageIds, dest_folder){
256249
this.logger.log("Start moving messages: " + JSON.stringify(messageIds));
257250
this.logger.log("Destination folder: " + JSON.stringify(dest_folder));
258251
await messenger.messages.move(messageIds, samUtils.getParameter(dest_folder)).catch((err) => {
259252
this.logger.error("Error moving message [" + message.subject + "] [" + message.headerMessageId + "]: " + err);
260253
});
261-
if(force_folder_update){
262-
this.logger.log("Messasegs moved, waiting for destination folder update...");
263-
try{
264-
await browser.ImapTools.forceServerUpdate(dest_folder.accountId, dest_folder.path);
265-
}catch(err){
266-
this.logger.error("Error updating destination folder: " + err);
267-
}
268-
this.logger.log("Destination folder updated.");
269-
}else{
270-
this.logger.log("Not forcing a destination folder update.");
271-
}
272254
}
273255

274256
// this method finds the message related to the one passed to it
@@ -295,12 +277,8 @@ export class movingEngine {
295277
let found_messages = null;
296278
//only from this account
297279
if(this.do_only_same_account){
298-
if(samStore.istb128orgreater){ //TB128
299-
//query_params.accountId = samUtils.getFolderAccountId(message.folder);
300-
query_params.folderId = await samUtils.getAccountFoldersIds(samUtils.getFolderAccountId(message.folder), this.ignore_archives_folders);
301-
}else{ // TB 115
302-
found_messages = this.getAccountMessages(query_params, account_id);
303-
}
280+
//query_params.accountId = samUtils.getFolderAccountId(message.folder);
281+
query_params.folderId = await samUtils.getAccountFoldersIds(samUtils.getFolderAccountId(message.folder), this.ignore_archives_folders);
304282
}
305283

306284
if(found_messages == null) found_messages = this.getMessages(messenger.messages.query(query_params));
@@ -330,12 +308,8 @@ export class movingEngine {
330308
let found_messages = null;
331309
//only from this account
332310
if(this.do_only_same_account){
333-
if(samStore.istb128orgreater){ //TB128
334-
//query_params.accountId = samUtils.getFolderAccountId(message.folder);
335-
query_params.folderId = await samUtils.getAccountFoldersIds(samUtils.getFolderAccountId(message.folder), this.ignore_archives_folders);
336-
}else{ // TB 115
337-
found_messages = this.getAccountMessages(query_params, account_id);
338-
}
311+
//query_params.accountId = samUtils.getFolderAccountId(message.folder);
312+
query_params.folderId = await samUtils.getAccountFoldersIds(samUtils.getFolderAccountId(message.folder), this.ignore_archives_folders);
339313
}
340314

341315
if(found_messages == null) found_messages = this.getMessages(messenger.messages.query(query_params));
@@ -379,12 +353,8 @@ export class movingEngine {
379353
let found_messages = null;
380354
//only from this account
381355
if(this.do_only_same_account){
382-
if(samStore.istb128orgreater){ //TB128
383-
//query_params.accountId = samUtils.getFolderAccountId(message.folder);
384-
query_params.folderId = await samUtils.getAccountFoldersIds(samUtils.getFolderAccountId(message.folder), this.ignore_archives_folders);
385-
}else{ // TB 115
386-
found_messages = this.getAccountMessages(query_params, account_id);
387-
}
356+
//query_params.accountId = samUtils.getFolderAccountId(message.folder);
357+
query_params.folderId = await samUtils.getAccountFoldersIds(samUtils.getFolderAccountId(message.folder), this.ignore_archives_folders);
388358
}
389359

390360
if(found_messages == null) found_messages = this.getMessages(messenger.messages.query(query_params));

js/mzsam-options-default.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,4 @@ export const prefs_default = {
1515
'pause_every_10_messages': 1000,
1616
'warn_before_run': true,
1717
'_internal__ask_empty_prefix_done': false,
18-
'imap_force_folder_update': true,
1918
}

js/mzsam-store.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919

2020
export const samStore = {
2121
'do_debug': false,
22-
'istb128orgreater': false,
2322

2423
async setOnline(value) {
2524
await samStore.setSessionData("tbOnline", value);

js/mzsam-utils.js

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -24,18 +24,6 @@ export const samUtils = {
2424

2525
regexEmail: /[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/,
2626

27-
async isThunderbird128OrGreater(){
28-
try {
29-
const info = await browser.runtime.getBrowserInfo();
30-
const version = info.version;
31-
return samUtils.compareThunderbirdVersions(version, '128.0') >= 0;
32-
} catch (error) {
33-
console.error('[SentAutoMove] Error retrieving browser information:', error);
34-
return false;
35-
}
36-
},
37-
38-
3927
compareThunderbirdVersions(v1, v2) {
4028
const v1parts = v1.split('.').map(Number);
4129
const v2parts = v2.split('.').map(Number);
@@ -225,11 +213,7 @@ export const samUtils = {
225213
},
226214

227215
getParameter(param){
228-
if(samStore.istb128orgreater){
229-
return param.id;
230-
}else{
231-
return param;
232-
}
216+
return param.id;
233217
},
234218

235219
extractInviteSubject(inputString) {

manifest.json

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,13 @@
22
"manifest_version": 2,
33
"name": "SentAutoMove",
44
"description": "__MSG_extensionDescription__",
5-
"version": "1.0.2",
5+
"version": "2.0.0",
66
"author": "Mic (m@micz.it)",
77
"homepage_url": "https://micz.it/thunderbird-addon-sentautomove/",
88
"browser_specific_settings": {
99
"gecko": {
1010
"id": "sentautomove@micz.it",
11-
"strict_min_version": "115.0",
12-
"strict_max_version": "136.*"
11+
"strict_min_version": "128.0"
1312
}
1413
},
1514
"permissions": [
@@ -37,15 +36,5 @@
3736
"default_title": "SentAutoMove",
3837
"default_icon": "images/icon-32px.png",
3938
"default_popup": "popup/mzsam-popup.html"
40-
},
41-
"experiment_apis": {
42-
"ImapTools": {
43-
"schema": "api/ImapTools/schema.json",
44-
"parent": {
45-
"scopes": ["addon_parent"],
46-
"paths": [["ImapTools"]],
47-
"script": "api/ImapTools/implementation.js"
48-
}
49-
}
5039
}
5140
}

mzsam-background.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@ import { samLogger } from "./js/mzsam-logger.js";
3939
// movingEngine.movedMessagesListener(originalMessages, movedMessages);
4040
// });
4141

42-
samStore.istb128orgreater = await samUtils.isThunderbird128OrGreater();
4342
samStore.do_debug = await samPrefs.getPref("do_debug");
4443
let samLog = new samLogger("mzsam-background", samStore.do_debug);
4544

0 commit comments

Comments
 (0)