fetchmail-friends
[Top] [All Lists]

[fetchmail]Fetchmail development roadmap

2001-06-12 09:09:32
With the release of 5.8.6, we're now in feature freeze for a stable
5.9.0 release.  After that, things are going to get interesting.

Fetchmail's driver for the POP3 and IMAP protocols runs them in
lockstep, as a series of single-command/single-response transactions.
Messages are downloaded sequentially, with no attempt to raise the duty
cycle of the server connection by attemping to download a different
message when the listener is stalled (e.g. while doing DNS
lookups). As a result, fetchmail piles up latency on each handshake.

It has been forcefully argued that this is stupid.  For what I think
of as the `normal' fetchmail usage pattern (fetchmail running
constantly in background) a few seconds' added latency per message
makes very little difference.  However, people on the road running
fetchmail in foreground on a laptop may only have a few minutes
to grab mail and every second is precious; the added latency may
make the difference between getting everything in one go or having
to hang up before the download is done.

After 5.9.0 I'm going to make a serious effort to attack this problem.
There are a couple of different strategies I may pursue:

(1) Reorganize the driver so it sends multiple fetch commands to the
    server in one go and accepts multiple messages streaming back.

(2) Eliminate added latency due to listener stalls by fetching mail 
    during waits for the listener.  This might be done by forking
    a copy of fetchmail just before opening the listener, or with
    polled-and-signalled socket I/O and a state machine layer in the 
    driver.

This is not going to be a simple set of changes.  It's going to
require major surgery on parts of the code that have been stable
for a long time.  The result will be fetchmail 6.
-- 
                <a href="http://www.tuxedo.org/~esr/";>Eric S. Raymond</a>

In the absence of any evidence tending to show that possession 
or use of a 'shotgun having a barrel of less than eighteen inches 
in length' at this time has some reasonable relationship to the 
preservation or efficiency of a well regulated militia, we cannot 
say that the Second Amendment guarantees the right to keep and bear 
such an instrument. [...] The Militia comprised all males 
physically capable of acting in concert for the common defense.  
        -- Majority Supreme Court opinion in "U.S. vs. Miller" (1939)


<Prev in Thread] Current Thread [Next in Thread>
  • [fetchmail]Fetchmail development roadmap, Eric S. Raymond <=