Open pschonmann opened 1 month ago
Can you export your filter?
(the functionality to export is part of the quickFilters Add-on)
Also, try to switch the filter to execute "after Junk classification"
I want to check mail BEFORE junk, but ill try.
{
"accountName": "imap://petr.schonmann%40domain.cz@mail.domain.cz",
"rootFolderURL": "imap://petr.schonmann%40domain.cz@mail.domain.cz",
"date": "2024-10-04T09:21:20.867Z",
"filters": [
{
"filterName": "VADNE MAILY SE SNAPSHOTY",
"filterDesc": "",
"filterType": 17,
"temporary": false,
"actionCount": 1,
"enabled": true,
"actionList": [
{
"type": 17,
"strValue": "$label1"
}
],
"searchTerms": [
{
"attrib": -2,
"op": 19,
"value": {
"attrib": -2,
"str": ".*https\\:\\/\\/subdomain\\.domain\\.cz\\/dashboard\\/snapshot\\/[\\r\\n]+V DOMECKu.*"
},
"booleanAnd": true,
"customId": "filtaquilla@mesquilla.com#bodyRegex",
"beginsGrouping": false,
"endsGrouping": false
}
]
}
]
}
thanks for posting the error log, I think one of the main problems is that the message cannot be read (streamed):
NetUtil.readInputStreamToString FAILED
Streaming the message in folder Inbox failed.
Matching body impossible.
it would be interesting to me whether the same error happens if you rolled back to FiltaQuilla 4.0 ?
there were some changes affecting streaming maybe it affects your mail system.
The old code determines the message size first:
let hasOffline = folder.hasMsgOffline(aMsgHdr.messageKey);
let messageSize = hasOffline
? aMsgHdr.offlineMessageSize
: aMsgHdr.messageSize;
var data;
if (!messageSize) {
if (FiltaQuilla.Util.isDebug) {
console.log(`Filter could not read message size for ${aMsgHdr.mime2DecodedSubject}! Offline = ${hasOffline}`, aMsgHdr, folder);
}
if (hasOffline) {
messageSize = aMsgHdr.messageSize;
if (FiltaQuilla.Util.isDebug) {
console.log(`trying to fallback to messageSize: ${messageSize}`);
}
if (!messageSize) {
return false;
}
}
}
it then streams the data in a single chunk:
let stream = folder.getMsgInputStream(aMsgHdr, {});
try {
data = NetUtil.readInputStreamToString(stream, messageSize);
Since 4.1 we use this code, after recommendation by a Thunderbird Core developer:
let stream = folder.getMsgInputStream(aMsgHdr, {});
let isStreamError = false;
try {
// [issue #260]
data = "";
let available;
while (available = stream.available() ) {
data += NetUtil.readInputStreamToString(stream, available);
}
}
this is where the error is thrown. Would it help for your issue?
Also for investigating the recursion problem, can you enable debug mode and the switch "debug.mimeBody", here?
extensions.filtaquilla.debug.mimeBody = true
if you capture the debug log then we might get more info why there is too much recursion happening.
Seems this is triggered by a regex finding multiple matches in a non-global regex. So any regular expression that doesn't end with /g
Here is a version that might fix it:
Will probably release this soon.
Hi im using thunderbird on linux mint
When i start, it starts too long and console give me lots of these errors
Thanks for check