compile and run!
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

81 lines
3.3 KiB

15 years ago
find out why mutt's message size calc is confused.
f{,data}sync() usage could be optimized by batching the calls.
15 years ago
add some marker about message being already [remotely] trashed.
real transactions would be certainly not particularly useful ...
check whether disappearing (M_DEAD) messages (due to maildir rescans) are
properly accounted for by the syncing code.
15 years ago
make sync_chans() aware of servers, so a bad server (e.g., wrong password)
won't cause the same error message for every attached store.
15 years ago
make SSL (connect) timeouts produce a bit more than "Unidentified socket error".
15 years ago
network timeout handling in general would be a good idea.
15 years ago
unify maildir locking between the two UID storage schemes.
re-opening the db may be expensive, so keep it open.
but keeping lock for too long (e.g., big message downloads) may block other
clients. auto-release lock after 500 ms?
15 years ago
kill the concept of an INBOX, it is a relic from single-channel operation.
if somebody needs it, he can have two stores with different Paths. the path
can name a single (in-)box (curr. broken with maildir). an empty box name
actually means empty, so the IMAP mailbox should use INBOX for Path (can't
make that the default, as it would mess up the NAMESPACE).
15 years ago
add daemon mode. primary goal: keep imap password in memory.
also: idling mode.
20 years ago
15 years ago
parallel fetching of multiple mailboxes.
set_flags:
- imap: grouping commands for efficiency
- callback should get the flags actually affected. but then, why could flag
changes fail at all?
add streaming from fetching to storing.
handle custom flags (keywords).
22 years ago
handle google IMAP extensions.
22 years ago
use MULTIAPPEND and FETCH with multiple messages.
create dummies describing MIME structure of messages bigger than MaxSize.
flagging the dummy would fetch the real message. possibly remove --renew.
15 years ago
note that all interaction needs to happen on the slave side probably.
don't SELECT boxes unless really needed; in particular not for appending,
and in write-only mode not before changes are made.
15 years ago
problem: UIDVALIDITY change detection is delayed, significantly complicating
matters.
possibly request message attributes on a per-message basis from the drivers.
considerations:
- record non-existing UID ranges in the sync database, so IMAP FETCHes needn't
to exclude anyway non-existing messages explicitly.
- when detect unborn pairs and orphaned messages being gone? implied by expunge:
with trashing, by local driver, or of messages we deleted in this run. the
remaining cases could be handled by automatic periodical cleanup passes, an
explicit --cleanup action, or be implied by one of the other actions.
- the benefit of this is questionable, as fine-grained requests will result
in sending huge amounts of data, and upstream is often way slower than
downstream.
21 years ago
maildir: possibly timestamp mails with remote arrival date.
21 years ago
maybe throw out the ctx->recent stuff - it's used only for one info message.
21 years ago
22 years ago
possibly use ^[[1m to highlight error messages.
consider alternative trash implementation: trash only messages we delete,
and trash before marking them deleted in the mailbox. downside: all other
programs have to do the same. and what if the deleted flag is unset?
items out of scope of purely UID based approach:
- detect message moves between folders
20 years ago
- recovering from UIDVALIDITY change (uw-imap < 2004.352 does this a lot)