[Kde-pim] Over POP Kmail improvement

Thomas McGuire mcguire at kde.org
Mon May 3 21:06:07 BST 2010


Hi,

(CC'ing kde-pim, some of the information about filtering might be of interest 
 for others. Background: Giuseppe wrote patches that improve POP filtering in 
 KMail 1 a lot, and we're now discussing adding support for POP filtering to 
 the POP3 resource)

On Monday 03 May 2010 19:40:50 you wrote:
> > KMail 1 is in a complete feature freeze, and therefore I can't apply your
> > patch there.
> 
> For information only, the first version of this patch is for kdepim-3.2 (6
> years old), and is from the first version that I was told that kmail is in
> feature freeze.

Wow, 6 years old already! The KDE 3.5 version is also in feature freeze. 
Basically, anything that is not in KDE SVN trunk is in feature freeze, that 
includes KMail 1.13.x from KDE SC 4.4.x.
Both the KDE 3 version and the KDE 4 version that is not based on Akonadi are 
called "KMail 1".

> > For KMail 2, the entire storage subsystem is now based on Akonadi,
> > including POP3 support. Sadly, the POP3 resource has no POP filtering
> > support at all right now. Would you like to work on bringing back POP
> > filter support for KMail 2? You seem to be the perfect candidate for it
> > :)
> 
> ]zac[
> 
> :)
> 
> I think I can make this porting.
> 
> Please, what exactly You want I make? can You give me more details as
> possible about the status the POP3 support?
> 
> The last source code is in /[KDE]/branches/work/akonadi-ports?

I think it is most efficient to talk on IRC about this, there is a lot of 
things we should discuss, as this is a larger project. Of course we can also 
do it by email if you prefer.

Basically, all of the files your original patch changed don't exist anymore. 
Mail checking is now done by so-called "resources", which are independent of 
KMail. The POP3 resource is in kdepim/runtime/resources/pop3/. It is 
relatively small, and hopefully easy to understand. It still uses the old POP3 
KIO slave in the background.

As you know, KMail 1 supports two types of filtering: Client-side filtering, 
which happens after the message has been downloaded, and server-side 
filtering, which is POP3-specific and filters the mail before downloading it.

Right now, KMail 2 does not support any filtering at all. The plan is to use a 
summer-of-code project done by Szymon Stefanek to implement both server-side 
POP3 filtering and client-side filtering. The SoC project can be found in 
playground/pim/akonadi/filter/. For a broad overview, see the README.txt file 
there. The filtering library is split into two parts:
- a library for filter rules+actions, including an UI for editing those
- an Akonadi agent which is responsible for client-side filtering

The filtering library is type-independent, it is design to be usable with 
other types as well, for example for filtering your RSS feeds. The SoC project 
includes an agent that handles RFC822 types, i.e. mails.

The idea is that the POP3 resource uses the filtering library from the SoC 
project for on-server filtering.

This needs some preparations in the POP3 resource first, right now there is no 
stage that sends the HEAD command to the server. Then, we need to integrate 
the filtering library from the SoC project. I guess it is best if you look a 
bit at the code of the POP3 resource and the filtering framework, and then we 
can start to discuss some details.

I do not know yet in which state the filtering framework is, we have to 
evaluate that, and maybe fix some parts to make them usable.

Also, we're now using the KMime library for mail parsing, not mimelib. KMime 
is in kdepimlibs/kmime.

Some random links:
http://api.kde.org/4.x-api/kdepimlibs-apidocs/akonadi/html/index.html
http://api.kde.org/4.x-api/kdepimlibs-apidocs/kmime/html/index.html
http://techbase.kde.org/Development/Tutorials#Personal_Information_Management_.28Akonadi.29
http://websvn.kde.org/trunk/KDE/kdepim/runtime/resources/pop3/
http://websvn.kde.org/trunk/playground/pim/akonadi/filter/

Regards,
Thomas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-pim/attachments/20100503/bf2f2cf7/attachment.sig>
-------------- next part --------------
_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/


More information about the kde-pim mailing list