Revise TODO.
Showing
1 changed file
with
65 additions
and
93 deletions
1 | GNU mailutils TODO list. 2008-08-20 | 1 | GNU mailutils TODO list. 2010-12-01 |
2 | Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010 Free | 2 | Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010 Free |
3 | Software Foundation, Inc. | 3 | Software Foundation, Inc. |
4 | 4 | ||
5 | * Configuration callback functions should not modify node->tag and node->label. | 5 | * Provide a generic way to store UID, UIDNEXT and UIDVALIDITY in mailboxes. |
6 | 6 | ||
7 | * Debug handling in cfg vs. argp | 7 | * prog_stream: find a way to initialize start directory value and environment |
8 | 8 | ||
9 | * Fix folder_imap_list in libproto/imap/folder.c | 9 | * stream: associate with input location (mu_locus_t or the like). |
10 | 10 | ||
11 | * Documentation | 11 | * redo the support of the default user email and mail domain. |
12 | 12 | ||
13 | * Review the code and use mu_vartab_* and mu_kwd_* functions where | 13 | * use the above in message_stream. |
14 | necessary. | ||
15 | 14 | ||
16 | * mailbox | 15 | * eliminate uses of strtok(_r) |
17 | 16 | ||
18 | ** Generic search interface | 17 | * mail: rewrite I/O support using streams. |
19 | 18 | ||
20 | ** Locking | 19 | * redo debugging & logging support the way it is implemented in dico/mailfromd |
21 | 20 | ||
22 | *** Implement a read/write locker_lock() flag so that when MU_LOCKER_WRONLY | 21 | * re-implement imap4 client (in progress) |
23 | is set in the locker flags, only write locks actually lock the file, | 22 | |
24 | read locks don't do anything. | 23 | * re-implement nntp client |
24 | |||
25 | * properties: | ||
26 | |||
27 | ** implement libproperty - a library of various storage backends for mu_property_t. | ||
28 | |||
29 | ** consider a possibility of typed properties (integer, unsigned, string, ...) | ||
30 | |||
31 | * vacation: link with libproperty when it is ready | ||
32 | |||
33 | * remove libmu_auth, rewrite mu_auth support via mu_property_t | ||
34 | |||
35 | * filter interface: need API to send line wrap length | ||
36 | |||
37 | See reset_line_length in examples/base64.c, libmailutils/tests/fltst.c | ||
38 | and mu/filter.c. | ||
39 | |||
40 | * locale-dependent variant of mu_rfc2047_decode | ||
41 | |||
42 | See rfc2047_decode_wrapper in frm/common.c for a prototype. | ||
43 | |||
44 | * observer: allow for procedure-data closures | ||
45 | |||
46 | See frm/common.c (near line 425). | ||
47 | |||
48 | * sieve.scm is exempted from installcheck. | ||
49 | |||
50 | See guimb/scm/Makefile.am for a discussion. | ||
51 | |||
52 | * lib/mailcap.c: rewrite using streams | ||
53 | |||
54 | * mu_address_createv: pass hints as in mu_address_create_hint? | ||
55 | |||
56 | * fix Python support | ||
25 | 57 | ||
26 | *** what kind of locking should mh use? See FIXME in mbx_mh.c | 58 | * fix C++ support |
27 | 59 | ||
28 | *** why does mimetest fail on a symlink, but succeed on a dotlocked file? | 60 | * redo libraries as loadable modules (where possible) |
29 | 61 | ||
30 | *** implement a force unlock mode... so that when a mailbox | 62 | * move obsolete interfaces to libmu-compat: |
31 | is closed or destroyed it can make sure that the lock | ||
32 | is definitely gone. | ||
33 | 63 | ||
34 | ** mailboxes don't remember whether or not they've been opened | 64 | argcv |
65 | vartab | ||
35 | 66 | ||
36 | ** does IMAP do an EXAMINE instead of a select if the mailbox is being | 67 | * Configuration callback functions should not modify node->tag and node->label. |
37 | opened readonly? Does list return whether a mailbox is readonly? | ||
38 | Check against CMUs anon server, it is a read-only mailbox. | ||
39 | 68 | ||
40 | ** mu_cpystr - the size_t* size outputs only give strlen(), not the | 69 | * mailbox |
41 | actual length? | ||
42 | Sam Roberts: | ||
43 | My recollection is that when you give a buffer to output APIs, you give | ||
44 | the total size. But the size_t* that returns the required size, returns | ||
45 | the required size, minus the NUL. The units are different, in a sense. | ||
46 | 70 | ||
47 | ** need code to find a "real" envelope from... an actual email address | 71 | ** Generic search interface |
48 | that DSNs can be sent to. | ||
49 | 72 | ||
50 | ** need to be able to map some addresses (like mail to "root") to a | 73 | ** Locking |
51 | user for the box, a la nullmailer, perhaps | ||
52 | Sam Roberts: | ||
53 | If you have a really simple workstation with a basic mail system, | ||
54 | you may want mail.local to deliver all email addressed to "root" and | ||
55 | "postmaster", etc., to a particular user, like yourself. | ||
56 | Sergey Poznyakoff: | ||
57 | In short, that is kind of aliasing support. We have aliasing support | ||
58 | in MH, possibly it could be used in libmailbox as well. | ||
59 | 74 | ||
60 | ** mailer_t: the SMTP mailer isn't as fully implemented as the sendmail | 75 | *** Implement a read/write locker_lock() flag so that when MU_LOCKER_WRONLY |
61 | mailer. | 76 | is set in the locker flags, only write locks actually lock the file, |
77 | read locks don't do anything. | ||
62 | 78 | ||
63 | ** make the smtp mailer calls usable standalone, as well as url based, | 79 | *** reportedly mimetest fail on a symlink, but succeed on a dotlocked file? |
64 | and use them in mail.remote. | ||
65 | 80 | ||
66 | ** support AUTH=anonymous (imap://cyrus.andrew.cmu.edu/archive.info-cyrus) | 81 | * mu_cpystr - revise the use of. |
67 | 82 | ||
68 | ** filter_trans needs readline method. | 83 | * support AUTH=anonymous (imap://cyrus.andrew.cmu.edu/archive.info-cyrus) |
69 | 84 | ||
70 | * pop3 | 85 | * mail aliasing support in libmailutils |
71 | 86 | ||
72 | ** pop3d_readline - should this use select(), avoid the race condition, | 87 | Use code from MH. |
73 | and touch the lockfile in time intervals smaller than MU_LOCKER_EXPIRE_TIME? | ||
74 | 88 | ||
75 | * imap4d | 89 | * imap4d |
76 | 90 | ||
77 | ** Check interaction with various imap clients. Currently tested with: | 91 | ** Check interaction with various imap clients. Currently tested with: |
78 | mail (from mailutils itself), mutt, pine, netscape, mozilla. | 92 | mail (from mailutils itself), mutt, pine, netscape, mozilla, |
93 | thunderbird, roundcube. | ||
79 | 94 | ||
80 | ** Better support of multi-access mailbox | 95 | ** Better support of multi-access mailboxes? |
81 | 96 | ||
82 | ** implement charsets in search: 1 SEARCH CHARSET ISO-8859-2 TEXT ... | 97 | ** implement charsets in search: 1 SEARCH CHARSET ISO-8859-2 TEXT ... |
83 | 98 | ||
... | @@ -102,55 +117,12 @@ The framework is implemented. Needs extensive testing. | ... | @@ -102,55 +117,12 @@ The framework is implemented. Needs extensive testing. |
102 | * Mime.types API is available in mimeview. Do we need to move it to | 117 | * Mime.types API is available in mimeview. Do we need to move it to |
103 | libmailbox? | 118 | libmailbox? |
104 | 119 | ||
105 | * examples | ||
106 | |||
107 | ** unify the mbox-* and mimetest examples with messages, it would be nice | ||
108 | to have a general purpose tool | ||
109 | |||
110 | * mh -- see mh/TODO | 120 | * mh -- see mh/TODO |
111 | 121 | ||
112 | * sieve | ||
113 | |||
114 | ** run as daemon, sieveing mail on arrival (need interface for notification | ||
115 | of message arrival, this is supported by imap, but we'll have to fake | ||
116 | for pop and local spools my polling, why can't you select() on a unix | ||
117 | file?) | ||
118 | |||
119 | * utilities | 122 | * utilities |
120 | 123 | ||
121 | ** mimeview: support nametemplate | 124 | ** mimeview: support nametemplate |
122 | 125 | ||
123 | ** all | ||
124 | |||
125 | * Testsuite: | ||
126 | |||
127 | Tcl is not able to handle binary data properly. This makes impossible | ||
128 | to test some aspects of MU functionalities. Following testcases are | ||
129 | affected: | ||
130 | |||
131 | ** mailbox/testsuite/mailbox/base64.exp | ||
132 | |||
133 | The ability of the test program to read given file instead of the | ||
134 | stdin is used to override the issue. | ||
135 | |||
136 | ** mailbox/testsuite/mailbox/encode2047.exp | ||
137 | |||
138 | Input data are represented in octal format (see | ||
139 | mailbox/testsuite/Encode2047). | ||
140 | |||
141 | ** mailbox/testsuite/mailbox/argcv.exp | ||
142 | |||
143 | The affected testcase is not run (see mailbox/testsuite/Argcv and | ||
144 | search for FIXME). | ||
145 | |||
146 | * add nightly build | ||
147 | |||
148 | * add more features | ||
149 | |||
150 | * optimize everything | ||
151 | |||
152 | * test everything | ||
153 | |||
154 | 126 | ||
155 | Local variables: | 127 | Local variables: |
156 | mode: outline | 128 | mode: outline | ... | ... |
-
Please register or sign in to post a comment