Re: Patch: fetch ENVELOPE instead of headers



On Thu, 2010-01-14 at 20:28 +0100, Sergio Villar Senin wrote:
> Hi guys,
> 
> I have cooked a preliminary patch that allows tinymail to fetch the
> ENVELOPE structure instead of fetching some headers. The reason to use
> that is because we get (almost) the same information but it's far more
> easy and fast for IMAP servers to return that information.
> 
> I'm not storing the ENVELOPE in the summary. As this is a first step I
> just retrieve it and use it to store the same info in the summary than
> the one fetched when downloading the headers.
> 
> It does not have many error checking code and it does not retrieve the
> same info that we had with HEADERS but I got some nice figures about
> performance. The difference in the case of GMail was minimum, they
> probably cache also the HEADERS at server level, but for other servers
> like AOL, downloading ~1200 headers lasted ~380 seconds while
> downloading the envelope reduced that to ~230secs. So it seems a very
> nice (and cheap) improvement.
> 
> I said that we didn't get the same information, and the reason is
> because we don't get any information about attachments (we were
> retrieving some non-standard but common used headers). Do you think we
> should also retrieve BODYSTRUCTURE and check the presence of attachments
> there?


Yes

And then immediately store that BODYSTRUCTURE the way Dapé's support for
per-part fetching features want.

And then merge TnyHeader in TnyMsg: there's no more need to differen-
tiate between the two now.

Make a TnyFolder a Gee.Collection of TnyMsg instances, and lazy load
them.


foreach (Tny.Msg msg in folder) {
}

And that's how I want(ed) to design Tinymail 2.0's API.


-- 
Philip Van Hoof, freelance software developer
home: me at pvanhoof dot be 
gnome: pvanhoof at gnome dot org 
http://pvanhoof.be/blog
http://codeminded.be



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