Re: [Evolution] Junk detection in folders other than INBOX?



On Thu, 2005-10-20 at 14:27 -0400, Brian J. Murrell wrote:
On Thu, 2005-10-20 at 01:28 +0200, guenther wrote:

That's how it is designed to be.

This is something recent then.  This behaviour did not use to exist.

Not sure about this. I never actually used the Junk filtering UI in Evo
since 1.5.x, when I debugged the hell out of the first
implementation... ;)


Notice that you only set Status Junk in your filter. You do not move the
mail. And yet the junk marked mail is *not* being displayed in Inbox,
but rather in the Junk folder.

Right.  I understand that.

Evolutions Junk folder (the one with a special icon) is not a physical
folder, but a vFolder.

I understand this.

That means it is like a search over all your
folders. Just like Trash.

Ahhh.  I believe Junk used to only be applied to your INBOX.  It think
this is the behaviour that has changed.

Edit / Preferences / Mail Accounts / <account> Edit / Receiving Options
 [ ] Check new messages for Junk contents
 [ ] Only check for Junk messages in the INBOX folder  (grayed out)

Just checked, this does exist in 2.2 as well as in 2.4. So it seems
logical, that Evo used to check status Junk in all folders. That's how
it really used to work, IIRC.

If it did not, this was a bug in previous versions.


The Junk folder shows all mails marked as junk. The Trash folder shows
all mails marked for deletion. Mails are not moved for neither of them.
Those vFolders show the mails with special flags, whereas the mails
themselfs still are physically located in their source folders. (For
"deleted" mails you can verify this by unchecking View / Hide Deleted
Messages.)

Yes, I do understand all of this.  I know exactly what the problem is,
just not how to best deal with it.  I don't want the Junk vFolder to
look in a particular folder.  Or any folders other than INBOX if that
makes it any easier.

You can't, I believe.

If the Junk folder would display Junk mails in Inbox only, the user
would not be able to mark mails as Junk which are in any other folder.
(Cause they still would be displayed in that folder, and not in Junk.)


Now if you "move" a message out of your Junk folder to any other folder,
they still will be displayed in Junk, cause they still got the "Junk"
status assigned...

This is the behaviour that is new.

Don't see how. Can a mailer hacker please speak up?


(btw, you did not mention the version you used before. Thus I assume
2.2, cause that's the one I quickly can test this on.)

I just tested this on 2.2:

It used to be the very same as you described on local mail. Applied
Status Junk to a message in Inbox. The message vanished from Inbox and
is displayed in Junk. Then I move the mail in Junk to another folder --
which makes this mail appear double in Junk. The target folder is
"empty". (Checked the local mbox files, this mail physically is located
in Inbox and test, but is displayed in neither.)

Tested it on an IMAP account as well: This partially is not the case for
IMAP on 2.2. *sigh*

Moving messages out of Junk to another IMAP folder obviously did *unset*
the Junk status, the mail is displayed in the target folder. Setting
status Junk for that mail makes it vanish from the mail folder again.


I don't know which one is/was considered a bug. From a user point of
view moving mails out of Junk likely is a way of telling Evo, that it is
*not* Junk. Losing the Junk status would not be sufficient to actually
do what the user wants. Running sa-learn on it would be required to
learn this mail as HAM. I don't know if it does, and I don't have time
to test this ATM.

Anyway, if it did learn those mails as HAM, then you seriously spoiled
your Bayes before. Running 'CAMEL_DEBUG=junk evolution' will tell you,
what it really does. [1]


I'm not entirely sure on how to make this work as you'd like. This sure
depends on what you actually want and your account settings. Is this
IMAP or POP3?

IMAP.

As your "Mail Server" (you didn't mention anything else) runs
SpamAssassin and marks mails, you don't need the built-in Junk feature
in Evo anyway.

I do.  I do want the Junk folder which I can peruse from time to time
for false positives.  And I want to be able to "Not Junk" them so that
sa-learn can be taught it was not junk.

 Cause manually marking mails falsely tagged as Junk or
non-Junk by SA on your Mail Server most likely will *not* do anything
but setting this flag.

Right, but I do want to close the loop and be able to tell sa-learn that
something was not junk.

The big advantage of learning these manually
marked mails (training your Bayes DB) does not work. Unless your Mail
Server happens to be the very same machine as your workstation...

No.  I have a "customized" sa-learn which is just a front-end to an "ssh
mailserver sa-learn ..." so that sa-learn is run on the actual mail
server, not the local client.

Indeed, this single sa-learn wrapper is able to run whatever the "this
is not spam" command is on multiple mail servers.  It looks at the
X-Evolution-Source to decide what command to run on what node to learn
something is not junk.

Thus you simply could disable any Junk filters (you probably did not
enable this anyway) and simply change your existing custom filter:

Instead of setting the "Junk" status for mails identified as junk by
your mail server you could just move those mails to a physical folder.
Which probably is what you intended in the first place anyway.

It's not actually.  The behaviour (the Junk vFolder) is exactly the
behaviour I want.  I just don't want it looking at all of my folders,
just my INBOX.

Well, OK.

My detailed discussion applies to Evolution and the facts you mentioned.
Which are "SA running on a machine different than the workstation". As
you did not mention the customized sa-learn, there is absolutely no way
I can assume this.


I appreciate all of your thoughts and ideas on this though.  Any more
would be much appreciated.

I can't think of any easy to handle way ATM, that still uses Evolutions
Junk UI.

Anyway, I will notice evolution-hackers about this. There is something
fishy here. Don't know which behavior is intended, which might be a bug
and whether moving mails out of Junk should be considered "Mark as not
Junk". We'll see...

...guenther


[1] http://gnome.org/projects/evolution/bugs.shtml


-- 
char *t="\10pse\0r\0dtu\0  ghno\x4e\xc8\x79\xf4\xab\x51\x8a\x10\xf4\xf4\xc4";
main(){ char h,m=h=*t++,*x=t+2*h,c,i,l=*x,s=0; for (i=0;i<l;i++){ i%8? c<<=1:
(c=*++x); c&128 && (s+=h); if (!(h>>=1)||!t[s+h]){ putchar(t[s]);h=m;s=0; }}}




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]