]> Pileus Git - ~andy/fetchmail/blob - NEWS
e65217720890c62f0a71576e178650b2ee6dbcd4
[~andy/fetchmail] / NEWS
1                         To-do list:
2
3 At this point, the fetchmail code appears to be stable and free of
4 bugs affecting normal operation (that is, forwarding to SMTP from a
5 single server host).  It will probably undergo substantial change only
6 if and when support for a new retrieval protocol is added.
7
8 Test RPOP feature against a Unix server that has it.  The protocol
9 transactions are certainly OK, the question is whether the rresvport() 
10 authentication stuff does what's needed.
11
12 Support IMAP4 extensions for secure challenge-response, once they're actually
13 standardized.
14
15 The configuration file lexer handles punctuation adjacent to keywords poorly.
16 Flex can be very mysterious at times.
17
18 Inflict severe pain on the person(s) responsible for removing LAST from POP3.
19
20                         Release Notes:
21
22 fetchmail-1.8 ():
23
24 features --
25
26 * Use kill(0, pid) to make lock handling a bit smarter (thanks to Johann
27   Vromans for the suggestion).
28
29 * Arrange for timeout of client after 5 minutes if connection to server is 
30   dropped (thanks to Gaspar Sinai).
31
32 bugs --
33
34 * Fix buggy getopt specification of P and p options.
35
36 fetchmail-1.7 (Tue Oct  8 11:32:44 EDT 1996):
37
38 features --
39
40 * Noise words for rcfile syntax make English-like syntax possible.
41
42 * Make configure more GNUish; it understands --prefix and other standard
43   autoconf options now (see INSTALL for details)
44
45 * Better documentation of the new .fetchmailrc extensions and the slightly
46   stricter rules for ordering options.
47
48 * Expanded installation instructions including how to test for correct
49   operation without losing mail to misconfigured MDAs, alias loops, etc.
50
51 bugs --
52
53 * You may have to rearrange the order of options in your .fetchmailrc.
54   The grammar for the new multiple-user syntax requires that server 
55   options (protocol and port) come before any user options.
56
57 * Fixed core dump bug that was screwing configurations with no .fetchmailrc.
58
59 * Fixed broken 'p' option.
60
61 * `norewrite' and `rewrite' in .fetchrc were the inverses of what they
62   should have been (but the rewrite default was set correctly).
63
64 fetchmail-1.6 (Sun Oct  6 20:55:09 EDT 1996):
65
66 features --
67
68 * You can now have multiple entries for the same server but different
69   users, and the right thing will happen (each user's mailbox will
70   be queried).  Even better, you can now specify multiple users in a
71   single server entry.
72
73 * Restore --mda, seems some people either can't run a port 25 listener
74   due to bizarre dynamic-SLIP problems, or won't for security reasons.
75
76 * When delivering to an MDA, print error and die (before deleting the message!)
77   if the MDA returns nonzero status.  Better safe than sorry.
78
79 * If fetchmail is called through a link named `popclient' it will look in
80   ~/.poprc for a run control file.  Unless that file includes the deleted
81   options limit and localfolder this should actually work.
82
83 bug fixes --
84
85 * Makefile fixes for correct linking on Sparcs and avoiding duplication of
86   the md5 files (leading to harmless install-time error messages).
87
88 * Fix a bonehead coding error in pop3_delete() that was masked by the
89   Intel register architecture.  *blush*  Thanks to Jay Anderson.
90
91 * Fix bug that prevented SMTP from being specified on the defaults line.
92
93 * Allow program to generate correct lockfiles when USER is undefined
94   (i.e. under zsh).
95
96 * Allow program to run with no .fetchmailrc file again.
97
98 fetchmail-1.5 (Thu Oct  3 04:35:15 EDT 1996):
99
100 * Naturally, my decision to announce 1.4 on comp.os.linux.announce 
101   immediately caused the code to manifest its first real bug --
102   a core dump when the "From:" header is spelled "from:" (all lower
103   case).  Fixed.
104
105 * Update and expansion of NOTES.
106
107 * The --all and --flush flag validity checks move to driver.c.
108
109 fetchmail-1.4 (Wed Oct  2 09:22:37 1996):
110
111 * More man page improvements.
112
113 * Lexer changes to work around bison's "feature" of silently ignoring 0-value
114   tokens (caused options nokeep, norewrite, nofetchall, noskip to be no-ops).
115
116 fetchmail-1.3 (Tue Oct  1 05:49:49 1996):
117
118 * Significant man page improvements.
119
120 * Escapes for newlines in .fetchmailrc are now optional.
121
122 * Kill off -2 and -3 options, redundant popclient remnants.
123
124 * IMAP code simplification and robustification.  Use FETCH FLAGS to find
125   seen messages.  Code should now work even if unseen messages are 
126   interspersed with seen ones, and even if messages are appended to the
127   mailbox during the run.
128
129 fetchmail-1.2 (Sat Sep 28 15:40:50 EDT 1996):
130
131 * The great option massacre.  Remove --stdout, --limit, --local, --mda.
132   We get a significant code and complexity shrinkage this way (a lot of the
133   configuration machinery goes away too).  These things are your MDA's job.
134   (This also kills off the lose-mail-on-disk-full bug, which I've never 
135   seen but two users reported.)
136
137 * Link APOP support by default.
138
139 * Fix embarrassing Makefile bug.
140
141 fetchmail-1.1 (Sat Sep 28 09:21:10 EDT 1996):
142
143 * In POP3, don't send LAST if STAT shows count of waiting messages to be zero.
144
145 * Document APOP better, we know it works now.
146
147 * Lose the .fetchids file and give up on POP3 UIDs, they're a dead loss.
148
149 fetchmail-1.0 (Thu Sep 26 11:59:38 EDT 1996):
150
151 * SMTP forwarding and header-rewrite features work with POP2 now.
152
153 * Stricter RFC822 conformance, so SMTP to qmail works.  Thanks to
154   Cameron MacPherson <unsound@oz.net> for these changes.
155
156 * The program is quieter but more informative now (suppress printing of
157   server greeting message; add the server host being queried to the
158   message count information line).
159
160 * Add `skip' option to make it easier to set up test entries.
161
162 * Name change (it ain't just for POP any more).
163
164 popclient-3.2 (Mon Sep 23 13:29:46 EDT 1996):
165
166 * RPOP support (coded at a user's request but untested).
167
168 * Ported to QNX (see the Makefile).
169
170 * Add Michael Schwendt's code for improved sizeticker.
171
172 * Improved RFC822 parsing (thanks to Rob Funk).
173
174 * Move the per-user lockfile to /tmp so it gets cleared at reboot time.
175
176 * Warn users that running concurrent instances of popclient is a bad idea.
177
178 * Try USER and HOME to set defaults before going to the password file.
179   This should work better in Sun NIS environments.
180
181 popclient-3.1 (Thu Sep 12 15:45:25 EDT 1996):
182
183 * MDA arguments are now dumped when using the -V option.
184
185 * Sendmail delivery from background seems to work now.
186
187 * We have IMAP2bis/IMAP4 support.
188
189 * Code now autoprobes for a POP3, IMAP, or POP2 server if no protocol is
190   specified.
191
192 * SMTP forwarding support.  Thanks to Harry Hochheiser <harry@tigger.jvnc.net>
193   for this simple but clever idea.  It's now the default delivery mode.
194
195 * If no UNIX From line is found, popclient will now synthesize a correct
196   line from the RFC822 From line.
197
198 * It is now possible to specify the host TCP/IP port number to connect to.
199
200 popclient-3.05 (Thu Aug 22 22:59:04 EDT 1996):
201
202 * Experimental support for RFC1725-compliant POP servers with the UIDL
203   command and without LAST.
204
205 popclient-3.04 (Wed Aug 21 00:22:44 EDT 1996):
206
207 * Logfile option works.
208
209 popclient-3.03:
210
211 * Minor bug fixes for password querying and redirection to stdout.
212
213 popclient-3.02 (Fri Jul 19 11:37:56 EDT 1996):
214
215 * Correct buggy processing of nokeep/noflush/fetchall.
216
217 * Fix buggy -mda option processing.
218
219 * Added -N/--norewrite option.
220
221 * Delivery via sendmail now works in non-daemon mode.
222
223 popclient-3.01 (Mon Jul  1 13:33:51 EDT 1996):
224
225 * Fixed a lexical analyzer bug in quoted-string processing.
226
227 * Fixed a bug in dump_options that caused username to be displayed incorrectly.
228
229 * The lock assertion code was in the wrong place relative to the daemonize()
230   call.  
231
232 popclient-3.0 (Fri Jun 28 11:33:34 EDT 1996):
233
234 Eric S. Raymond <esr@thyrsus.com> hacked extensively on 3.0b6 and took over
235 the package with the consent of Carl Harris, the original implementor.
236 Some of the 3.0 feature additions were inspired by Sean Oh's fetchpop 1.8
237 code, and a few use code directly lifted from fetchpop. Here are my (Eric's)
238 change notes:
239
240 CONFIGURATION AND BUILDING
241
242 * The autoconfigure script incorrectly assumed that all Linuxes use
243   /usr/bin/deliver.  Under Linux it now checks for both /usr/bin/delivermail
244   and /bin/mail.
245
246 * I added a distribution-maker production to Makefile.in.
247
248 OPTIONS AND COMMAND LINE
249
250 * I have removed the -p command-line option. Given that there's a run control
251   facility there is no excuse for encouraging users to put plaintext passwords
252   in scripts which might be readable.
253
254 * Calling popclient with no arguments now causes it to query or operate
255   on every host in the run control file.
256
257 * I have made --version more useful by having it dump the computed
258   connection options for each server specified.
259
260 * The user can now explicitly set an MDA (such as procmail) with the
261   new option -m or -mda.  Various possible MDAs are listed on the man page.
262
263 POPRC FILE SYNTAX
264
265 * The run control file lexer now supports "-enclosed strings which may 
266   contain whitespace.
267
268 * I added a --yydebug option to enable run control parser debugging at 
269   runtime if the parser was generated with --debug.  It's not documented.
270
271 * You may now have a `defaults' entry in the run control file which sets 
272   overrideable values for other entries.  See the man page for details.
273
274 * It is now possible to set keep, flush and fetchall in your run control
275   file.
276
277 * Fixed incorrect numbering of source lines in run control file parse error
278   messages.
279
280 * The configure.in specification no longer uses the obsolete AC_TRY_COMPILE
281   macro (it uses AC_TRY_LINK instead).
282
283 MAILBOX LOCKING
284
285 * I have added mandatory locking of mailbox files where supported.
286   This will cover Linux systems, in particular.
287
288 * The default behavior is now to do lock-protected append on the user's
289   system mailbox rather than using delivermail or some other MDA.
290   (This is a performance hack.)
291
292 * The autoconfigure script now looks for standard mail locations.  The
293   default mail delivery agent is used only if it can't find a mail spool
294   directory in the standard places.
295
296 FUNCTIONAL ENHANCEMENTS
297
298 * When using POP3, message headers are edited so that replies won't foo up.
299   Anything that looks like a mail ID local to the POP host gets @ and the
300   pop servername attached to it before being appended to the user's
301   mailbox or passed to an MDA.
302
303 * I have implemented daemon mode.
304
305 * I have added a lock check to ensure that there is only one popclient
306   running per user, and a --quit option to kill the currently running
307   one.
308
309 DOCUMENTATION
310
311 * All changes and feature additions have been tested in actual use and are
312   documented on the man page.
313
314 * I have turned the comments in the sample run control file into a new manual
315   section documenting the file format.
316
317 MISCELLANEOUS BUG FIXES
318
319 * I fixed some de-initialization bugs in pop2.c and pop3.c that led to
320   fd leaks (these became painfully obvious when I tested daemon mode!).
321
322 * I've fixed the flaky parser error messages. They turned out to be due 
323   to a misdeclaration of yytext.
324
325 These are Carl Harris's change notes from previous releases:
326
327 3.0b5
328 o       "From " header fix in pop2.c and pop3.c
329 o       Surpress "..." output when --stdout option specified in pop3.c
330
331 3.0b4
332 o       alloca fix.
333 o       various diagnostic/informational message fixes.
334
335 3.0b3
336 o       Support for retrieving only new messages from maildrop when
337         using POP3.  
338 o       Support for retrieving only the first n lines of each message
339         when using POP3.
340 o       APOP authentication support.
341 o       Buffered socket input.
342
343 3.0b2
344         This is a "new features" release.
345 o       support for .poprc file.
346 o       GNU-style long options.
347 o       fixed passwords appearing in 'ps' output
348 o       support for multiple servers on one command line
349
350 3.0b1
351         This is mostly a test of the autoconfigure integration.
352 Among the functions performed by the new configure script, is
353 the ability to detect known system types, configures the mail
354 delivery agent (MDA) correctly.  This should permanently solve
355 the problem of using something other than an MDA for mail
356 delivery (which continues to plague Linux slackware 1.2.9).
357 For this beta, please check the values of MDA_PATH and MDA_ARGS
358 carefully.  They should match the values found in your
359 sendmail.cf file on the line which begins with "Mlocal".
360
361         Other changes from popclient version 2.21:
362
363 o       no longer uses getpass() from the C library.  The
364         internal getpassword() function allows the use of long
365         passwords.
366
367 o       integrated GNU getopt() for long options.  Long option  
368         names will appear in a future beta.
369
370 o       Several compiler warnings fixed.
371
372 o       Fixed problems related to missing include files in
373         Solaris port.