diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2010-12-01 19:35:01 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2010-12-01 19:35:01 +0200 |
commit | c70959cac82e02e7c6e8d72c21815e0f2ebc4088 (patch) | |
tree | 03ceba8f6156677b32c7e7275bc7ca96e8e67538 /TODO | |
parent | 435f1918df505d58b8cd3fea9b3ab6bba296faa9 (diff) | |
download | mailutils-c70959cac82e02e7c6e8d72c21815e0f2ebc4088.tar.gz mailutils-c70959cac82e02e7c6e8d72c21815e0f2ebc4088.tar.bz2 |
Revise TODO.
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 158 |
1 files changed, 65 insertions, 93 deletions
@@ -1,83 +1,98 @@ -GNU mailutils TODO list. 2008-08-20 +GNU mailutils TODO list. 2010-12-01 Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010 Free Software Foundation, Inc. -* Configuration callback functions should not modify node->tag and node->label. +* Provide a generic way to store UID, UIDNEXT and UIDVALIDITY in mailboxes. -* Debug handling in cfg vs. argp +* prog_stream: find a way to initialize start directory value and environment -* Fix folder_imap_list in libproto/imap/folder.c +* stream: associate with input location (mu_locus_t or the like). -* Documentation +* redo the support of the default user email and mail domain. -* Review the code and use mu_vartab_* and mu_kwd_* functions where -necessary. +* use the above in message_stream. -* mailbox +* eliminate uses of strtok(_r) -** Generic search interface +* mail: rewrite I/O support using streams. -** Locking +* redo debugging & logging support the way it is implemented in dico/mailfromd -*** Implement a read/write locker_lock() flag so that when MU_LOCKER_WRONLY -is set in the locker flags, only write locks actually lock the file, -read locks don't do anything. +* re-implement imap4 client (in progress) + +* re-implement nntp client + +* properties: + +** implement libproperty - a library of various storage backends for mu_property_t. + +** consider a possibility of typed properties (integer, unsigned, string, ...) + +* vacation: link with libproperty when it is ready + +* remove libmu_auth, rewrite mu_auth support via mu_property_t + +* filter interface: need API to send line wrap length + +See reset_line_length in examples/base64.c, libmailutils/tests/fltst.c +and mu/filter.c. + +* locale-dependent variant of mu_rfc2047_decode + +See rfc2047_decode_wrapper in frm/common.c for a prototype. + +* observer: allow for procedure-data closures + +See frm/common.c (near line 425). + +* sieve.scm is exempted from installcheck. + +See guimb/scm/Makefile.am for a discussion. + +* lib/mailcap.c: rewrite using streams + +* mu_address_createv: pass hints as in mu_address_create_hint? + +* fix Python support -*** what kind of locking should mh use? See FIXME in mbx_mh.c +* fix C++ support -*** why does mimetest fail on a symlink, but succeed on a dotlocked file? +* redo libraries as loadable modules (where possible) -*** implement a force unlock mode... so that when a mailbox -is closed or destroyed it can make sure that the lock -is definitely gone. +* move obsolete interfaces to libmu-compat: -** mailboxes don't remember whether or not they've been opened +argcv +vartab -** does IMAP do an EXAMINE instead of a select if the mailbox is being -opened readonly? Does list return whether a mailbox is readonly? -Check against CMUs anon server, it is a read-only mailbox. +* Configuration callback functions should not modify node->tag and node->label. -** mu_cpystr - the size_t* size outputs only give strlen(), not the -actual length? -Sam Roberts: - My recollection is that when you give a buffer to output APIs, you give - the total size. But the size_t* that returns the required size, returns - the required size, minus the NUL. The units are different, in a sense. +* mailbox -** need code to find a "real" envelope from... an actual email address -that DSNs can be sent to. +** Generic search interface -** need to be able to map some addresses (like mail to "root") to a -user for the box, a la nullmailer, perhaps -Sam Roberts: - If you have a really simple workstation with a basic mail system, - you may want mail.local to deliver all email addressed to "root" and - "postmaster", etc., to a particular user, like yourself. -Sergey Poznyakoff: - In short, that is kind of aliasing support. We have aliasing support - in MH, possibly it could be used in libmailbox as well. +** Locking -** mailer_t: the SMTP mailer isn't as fully implemented as the sendmail -mailer. +*** Implement a read/write locker_lock() flag so that when MU_LOCKER_WRONLY +is set in the locker flags, only write locks actually lock the file, +read locks don't do anything. -** make the smtp mailer calls usable standalone, as well as url based, -and use them in mail.remote. +*** reportedly mimetest fail on a symlink, but succeed on a dotlocked file? -** support AUTH=anonymous (imap://cyrus.andrew.cmu.edu/archive.info-cyrus) +* mu_cpystr - revise the use of. -** filter_trans needs readline method. +* support AUTH=anonymous (imap://cyrus.andrew.cmu.edu/archive.info-cyrus) -* pop3 +* mail aliasing support in libmailutils -** pop3d_readline - should this use select(), avoid the race condition, -and touch the lockfile in time intervals smaller than MU_LOCKER_EXPIRE_TIME? +Use code from MH. * imap4d ** Check interaction with various imap clients. Currently tested with: -mail (from mailutils itself), mutt, pine, netscape, mozilla. +mail (from mailutils itself), mutt, pine, netscape, mozilla, +thunderbird, roundcube. -** Better support of multi-access mailbox +** Better support of multi-access mailboxes? ** implement charsets in search: 1 SEARCH CHARSET ISO-8859-2 TEXT ... @@ -102,55 +117,12 @@ The framework is implemented. Needs extensive testing. * Mime.types API is available in mimeview. Do we need to move it to libmailbox? -* examples - -** unify the mbox-* and mimetest examples with messages, it would be nice -to have a general purpose tool - * mh -- see mh/TODO -* sieve - -** run as daemon, sieveing mail on arrival (need interface for notification -of message arrival, this is supported by imap, but we'll have to fake -for pop and local spools my polling, why can't you select() on a unix -file?) - * utilities ** mimeview: support nametemplate -** all - -* Testsuite: - -Tcl is not able to handle binary data properly. This makes impossible -to test some aspects of MU functionalities. Following testcases are -affected: - -** mailbox/testsuite/mailbox/base64.exp - -The ability of the test program to read given file instead of the -stdin is used to override the issue. - -** mailbox/testsuite/mailbox/encode2047.exp - -Input data are represented in octal format (see -mailbox/testsuite/Encode2047). - -** mailbox/testsuite/mailbox/argcv.exp - -The affected testcase is not run (see mailbox/testsuite/Argcv and -search for FIXME). - -* add nightly build - -* add more features - -* optimize everything - -* test everything - Local variables: mode: outline |