aboutsummaryrefslogtreecommitdiffstats
path: root/NEWS
blob: e92796e7b73cd9ffb4b539d834e7098fd2daedd6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
			Release Notes:

------------------------------------------------------------------------------
fetchmail-2.9 ()

features --

* `interface' and `monitor' options are now per-server.

* `batchlimit' option is now per-user.

* RFC822 header continuation for long address lists is is now handled properly.

Note: The first two changes mean that older .fetchmailrc files using
the `set' syntax for these options will cause fetchmail to die with a
parse error at initialization time.  Conversion is trivial -- for
details, see the FAQ.

bugs --

* Stricter parsing of greeting message for the host name; eliminates some
  minor errors when using IMAP and the hostname is something like jet.es.

* --quit in root-daemon mode didn't work, fixed this.

* Ensure that default server parameters get properly zeroed out after each
  poll or skip statement in .fetchmailrc. 

* Arrange an EXPUNGE after each delete when using IMAP, so deletions get done
  OK even if there's a socket error before termination.

* Simpler and better header-rewrite code, fixing some weird cases where 
  it failed.  Thanks to Masafumi NAKANE <max@wide.ad.jp> and
  Carey Evans <c.evans@student.canterbury.ac.nz> for pointing out these
  problems.

Note: the RFC subdirectory is no longer included with the distribution
(this cut its size in half!)  Instead, applicable RFCs are listed on the
manual page.

There are 193 people on the fetchmail-friends list.

------------------------------------------------------------------------------
fetchmail-2.8 (Sat Jan 11 15:48:33 EST 1997)

features -- 

* We now get the hostname used for progress messages from the server greeting.
  This means you'll get sensible-looking progress messages even when using
  ssh to redirect secure connections.

* Reorganized and improved man page.

* Mail header parsing now handles RFC822 escapes properly.

bugs --

* Stop netrc parser from complaining about blank lines.

* Add ssh recipe correction.

* Eliminate infinite-loop bug in defaults handling.

* Fixed some address-parsing bugs in rfc822.c:nxtaddr().

* 2.7 broke portability to Solaris.  Fix that.

There are 184 people on the fetchmail-friends list.

------------------------------------------------------------------------------
fetchmail-2.7 (Thu Jan  9 03:18:15 EST 1997)

features -- 

* New --syslog option by Dave Bodenstab.

* Automatic parsing of ~/.netrc for a mailserver password if necessary, thanks
  to Gordon Matzigkeit.

* Added preconnect option for initializing ssh connections.

* Added local-domains support for multidrop as requested by Pablo Saratxaga.

* More FAQ material on how and when to use --interface.

bugs --

* Fixed a minor bug introduced into From handling by 2.6.

* Fixed bug in SMTP forwarding of msg lines with leading dot.

* Fixed a bug that generated incorrect HELO for second and subsequent
  poll entries attached to the same SMTP host.

There are 177 people on the fetchmail-friends list.

------------------------------------------------------------------------------
fetchmail-2.6 (Fri Dec 27 12:42:56 EST 1996)

features -- 

* IMAP4 code now sets the server "seen" flag on each message if "keep" is on.

* New FAQ material on how to use --interface.

bugs --

* Dropped back to separate SockGets/SockWrite code with no attempt at
  stdio buffering -- we hope this will fix the Solaris peoples' problems.

* Fixed length-computation bug (apparently introduced in 2.3) that messed
  up IMAP deletes.

There are 169 people on the fetchmail-friends list.

------------------------------------------------------------------------------
fetchmail-2.5 (Mon Dec 23 04:18:54 EST 1996)

features -- 

* New --interface and --monitor options for Linux courtesy of George Sipe.

bugs --

* Replaced bug-prone setvbuf with setlinebuf.

* Moved lock file to ~/.fetchmail to eliminate various /tmp problems.

There are 165 people on the fetchmail-friends list.

------------------------------------------------------------------------------
fetchmail-2.4 (Sat Dec 21 05:24:44 EST 1996)

features -- 

* Add FAQ material on troubleshooting and working around SMTP connection
  failures.

bugs --

* Fixed a core-dump bug in MX processing that's been lurking there for ghods
  know how long.  It could never have been more than rare.

* Fixed a minor bug in Received processing.

* Restored compile-time portability to Solaris.

* Initial 2.4 said: "Force line-buffering on socket streams (Linux apparently
  defaults to this). This may fix some hang problems reported under Solaris."
  Unfortunately this "fix" triggers horrible lossage on long messages and had
  to be removed.

There are 166 people on the fetchmail-friends list.

------------------------------------------------------------------------------

features -- 

* Full IMAP4 support -- we now probe for IMAP4 capabilities and use 
  RFC822.PEEK when possible to avoid marking messages seen on the server
  before they are deleted.  This improves recovery from sendmail and
  dropped-connection errors.

* True stdio buffering of sockets at last, thanks to Cameron McPherson.
  This should be good for a significant throughput increase.

* Almost all error messages that might be emitted in daemon mode now go
  through the error() subroutine.  This is a first step towards allowing
  a daemon-mode fetchmail to use syslog.

* SIGUSR1 is now used for wakeup rather than SIGHUP.  This eliminates any
  possible confusion about fetchmail's behavior at logout time.

* Received line parsing for envelope addresses now matches MX as well as 
  canonical DNS addresses, making multidrop routing slightly more reliable.

* Added --fetchlimit option to limit number of messages fetched in a
  single poll.

bugs --

* Fixed a FreeBSD compilation glitch involving SIGCLD (thanks to
  Masafumi NAKANE).

* Added some port patches for NEXTSTEP.

* SIGCHLD used everywhere now, not SIGCLD (this was strictly a cosmetic bug).

* Prevent occasional hangs when fetchmail was terminated by signal.

There are 168 people on the fetchmail-friends list.

------------------------------------------------------------------------------
fetchmail-2.2 (Mon Dec  9 00:15:01 EST 1996):

features --

* If SMTP returns 571 (unsolicited mail refused) to a MAIL FROM, the
  address is excluded by the local sendmail's spam filter.  Drop the mail.
  (This is the only circumstance in which mail is thrown away.)

* The header your mailserver uses to convey envelope addresses is no longer
  wired to `X-Envelope-Header'.  You can now specify it with the `envelope'
  option in .fetchmailrc.  (This header is not RFC822 standard, and we have a
  report of an ISP using X-Frontier-To).

bugs --

* Fixed a startup-time core dump introduced by 2.1's aka-list feature.

* Fixed a bug in non-implicit mode (poll specified host), also due to aka.

* Various minor portability fixes for Suns.  Adding #include <errno.h>
  in fetchmail.c was the most significant one. 

* Avoid using -lresolv when possible, some Linux versions are badly broken.

* Fix error in MX record handling that was causing multidrop problems.

* Disable daemon SIGCHLD handler while an MDA is running, to avoid snafus.
  Thanks to Dave Bodenstab <imdave@synet.net> for spotting this obscure bug.

156 people on the contact list.

------------------------------------------------------------------------------
fetchmail-2.1 (Thu Nov 28 11:07:48 EST 1996):

features --

* Added FAQ file.

* Try to pass envelope From to the listener so that logging and procmail
  processing works right.  If that fails, fall back on calling-user.

* Added `set logfile = ' option to rc syntax.

* We now use X-Envelope-To headers and parse the Received lines.  If
  X-Envelope-To is found, OK; otherwise we look for a `Received for' line;
  either is treated as a true envelope address.  If neither of these are
  found we go to the To/Cc/Bcc header addresses.

* Added `*' as a wildcard option for multidrop to ... here.  This will allow
  names to be local names to be passed through from a multi-drop box on
  a mailserver 

* Added an `aka' option to allow users to declare mailserver aliases at start
  of run, so DNS does less work.  During a run, cache host matches on the
  aka list so no potential alias has to be DNS-checked more than once.  
  A server being polled explicitly may be referred to by any of its aliaseses.

bugs --

* Nalin Dahyabhai's fix patch for MIT Kerberos support.

* Fixed a fencepost error in the APOP code that was causing a core dump.

* Skip flag wasn't getting reset on poll hosts following a skipped one.

* Include remote name in saved UID mappings so multiple POP accounts on
  the same server won't get their UIDs confused.

138 people on the contact list.

------------------------------------------------------------------------------
fetchmail-2.0 (Mon Nov 18 00:32:17 EST 1996):

* Fix typo in setitimer call setup that caused obscure bugs under FreeBSD.
* Accept Apparently-To if there is no To header.
* Include Cameron McPherson's patch for handling multi-line SMTP responses.
* Don't try to feed listener the header From any more.

pl 1.9.9 (Mon Nov 11 10:40:14 EST 1996):
* Accept Resent-From & Apparently-From a la RFC822.
* Include file fixes for Solaris 2.5 and FreeBSD 2.2.
* Improved error notification on SMTP and no-matching-local-address errors.
* Delivery to multidrop mailboxes now always aborts on DNS errors.
* Batch limit option prevents long delivery delays on smail/qmail.
* Configuration now handles -lresolv and non-Linux bind libraries correctly.

pl 1.9.8 (Wed Nov  6 16:40:34 EST 1996):
* Don't append spurious NUL to the headers, qmail actually notices it.
* Fatal bug in multidrop code fixed.
* Fail cleanly, instead of core-dumping, on mail lacking an RFC822 From line.
* Don't try to keep the SMTP socket open across poll cycles.

pl 1.9.7 (Fri Nov  1 10:02:34 EST 1996):
* %s is back.  Seems some popular MDAs actually choke on name arguments.
* We can handle responses longer than the socket atomic read length now.

pl 1.9.6 (Thu Oct 31 00:07:23 EST 1996):
* Make rewrite option handle multiple comma-separated local names correctly.
* Fix yet another fatal error in MDA argument list construction.
* Reset timeout every time input is received.
* Correct localname detection when --norewrite is on.

pl 1.9.5 (Tue Oct 29 20:07:41 EST 1996):
* Added -N, --nodetach option for debugging purposes.
* Use interval timers for poll-interval sleep and nonresponse timeout.
* fetchmail -q no longer parses the configuration file.
* Configuration file grammar is slightly cleaned up and improved.

pl 1.9.4 (Mon Oct 28 20:58:48 EST 1994):
* Correct status interpretation in closemailpipe() (thanks to Neil Harkins).
* Tweak SMTP forwarding to only open one listener per SMTP host in daemon mode.

pl 1.9.3 (Sun Oct 27 22:35:33 EST 1996):
* Handle nested parens in RFC822 comments.
* More gcc -Wall cleanup.
* Improved installation docs.
* Don't query DNS on startup unless needed for Kerberos or multidrop mailboxes.

pl 1.9.2 (Sun Oct 27 01:10:30 EST 1996): 
* Fix initialization-time core dump when running as root
* Fix fatal error in MDA argument-list construction.

118 people on the contact list.

------------------------------------------------------------------------------
fetchmail-1.9 (Fri Oct 25 23:02:26 EDT 1996):

We've hit the century mark -- exactly 100 people on the fetchmail-friends list.

features --

* FEATURE FREEZE IS NOW IN EFFECT!  No new features until after 2.0.  Thanks
  to everybody who contributed ideas and criticism.

* It is now possible to specify multiple local recipients by giving a list
  of names following "to" or "is".  Each local recipient is checked for in the
  To:, Cc: and Bcc: headers of each message; if a match is found, the message
  is sent to that local recipient.  This makes it possible to do mailing
  lists and multidrop mailboxes.  See the man page for details (and note
  the caveat in the BUGS AND KNOWN PROBLEMS section).

* It is possible to specify a size limit for retrieved messages.  I resisted
  doing this because I don't want fetchmail to be in the filtering game, but
  too many Europeans begged for it because their telecomms monopolies are
  price-gouging them on per-second phone charges.  I will ignore, or be
  extremely rude to, anyone who takes this feature as a license to beg me
  for kill files or any other form of content-based filtering.  Use 
  procmail on your server if you want that.

* If you use an MDA, the internal changes to support multi-drop mailboxes
  require that you *remove* the %s at the end of your MDA string.  Local 
  delivery addresses will be appended to the end of the command in the
  obvious way.

* The first message from a query now includes the number of old messages
  when this can be determined (that is not under POP2).

* POP3 UID support really works now.  I make rude noises at the POP3 mavens
  who forced us to this with RFC1725, but thank Al Longyear <longyear@sii.com>
  for fixing and verifying my slightly buggy implementation.

* Kerberos support ditto.  Thanks to Chris Hanson <cph@martigny.mit.edu>
  for this feature.

* When there's a daemon fetchmail in background, running fetchmail in
  foreground without --quit now tries to wake the daemon and force it
  to poll immediately.

* Add option to set server nonresponse timeout.

* Password is no longer displayed in verbose mode.

* You may use C-like escapes to embed non-printables in passwords and other
  strings.  Fetchmail -V will display them in a printable form.

* Program now tries to set itself to the ID of the local user before
  running an MDA, and reset to root afterwards.  This will work on
  any system with seteuid(2), including Linux and the BSDs.

bugs --

* Default user name to deliver to is now the calling user, unless
  program is running as root in which case it is the remote user name
  (default can be overridden with an `is' or `to' declaration).
  In versions up to 1.7 it was the calling user; in 1.8 the remote
  user ID.  This created some confusion.

* Accept RFC822 headers with a tab after the colon.

* You now see a "skipping" message for each message not retrieved.

* --keep no longer overrides --flush.

* Rewrite "To: jrh (J. Random Hacker)" correctly.

* Find "nnn octets" anywhere on a POP3 server's RETR response line.

* Fixed various bugs in --check.  It now reports PS_SUCCESS only if
  there is new mail waiting.

* Under Linux, if fetchmail is run in daemon mode with the network
  inaccessible, each poll leaves a socket allocated but in CLOSE state
  (this is visible in netstat(1)'s output).  These sockets aren't
  garbage-collected until fetchmail exits.  When whatever kernel table
  is involved fills up, fetchmail can no longer run even if the network is up.
  To avoid this, fetchmail now commits seppuku after some number of
  unsuccessful socket opens.

* Don't try using FLAGS.SILENT, some allegedly IMAP2bis servers seem to
  choke on it.

------------------------------------------------------------------------------
fetchmail-1.8 (Fri Oct 11 15:08:10 EDT 1996):

features --

* Use kill(0, pid) to make lock handling a bit smarter (thanks to Johan
  Vromans <JVromans@squirrel.nl> for the suggestion).

* Arrange for timeout of client after 5 minutes if connection to server is 
  dropped (thanks to Gaspar Sinai <gsinai@gol.com>).

* All pretensions to RPOP support have been dropped.  Yes, this is a feature,
  RPOP is very vulnerable to spoofing!  Use APOP instead.

* Normal start-of-read message now displays the byte (excuse me, "octet")
  size of the message.  Yes, 3schwend, you can stop noodging me now :-).

* Normal progress notifications now take only 1 line per message, not 2.

* Linux packagers: building fetchmail now generates an RPM specfile for it.

* Kerberos support via KPOP protocol (thanks to Chris Hanson).

* New --check option for asking server whether there is mail without
  actually retrieving or deleting it.

* UID support is back by popular demand.  Bletch.

* Permit spaces in IMAP passwords (ship them as quoted strings).

bugs --

* Fix buggy getopt specification of P and p options.

* Fix uninitialized-variable bug that was hanging second IMAP queries.

------------------------------------------------------------------------------
fetchmail-1.7 (Tue Oct  8 11:32:44 EDT 1996):

features --

* Noise words for rcfile syntax make English-like syntax possible.

* Make configure more GNUish; it understands --prefix and other standard
  autoconf options now (see INSTALL for details)

* Better documentation of the new .fetchmailrc extensions and the slightly
  stricter rules for ordering options.

* Expanded installation instructions including how to test for correct
  operation without losing mail to misconfigured MDAs, alias loops, etc.

bugs --

* You may have to rearrange the order of options in your .fetchmailrc.
  The grammar for the new multiple-user syntax requires that server 
  options (protocol and port) come before any user options.

* Fixed core dump bug that was screwing configurations with no .fetchmailrc.

* Fixed broken 'p' option.

* `norewrite' and `rewrite' in .fetchrc were the inverses of what they
  should have been (but the rewrite default was set correctly).

------------------------------------------------------------------------------
fetchmail-1.6 (Sun Oct  6 20:55:09 EDT 1996):

features --

* You can now have multiple entries for the same server but different
  users, and the right thing will happen (each user's mailbox will
  be queried).  Even better, you can now specify multiple users in a
  single server entry.

* Restore --mda, seems some people either can't run a port 25 listener
  due to bizarre dynamic-SLIP problems, or won't for security reasons.

* When delivering to an MDA, print error and die (before deleting the message!)
  if the MDA returns nonzero status.  Better safe than sorry.

* If fetchmail is called through a link named `popclient' it will look in
  ~/.poprc for a run control file.  Unless that file includes the deleted
  options limit and localfolder this should actually work.

bug fixes --

* Makefile fixes for correct linking on Sparcs and avoiding duplication of
  the md5 files (leading to harmless install-time error messages).

* Fix a bonehead coding error in pop3_delete() that was masked by the
  Intel register architecture.  *blush*  Thanks to Jay Anderson
  <anderson@optical.bms.com>.

* Fix bug that prevented SMTP from being specified on the defaults line.

* Allow program to generate correct lockfiles when USER is undefined
  (i.e. under zsh).

* Allow program to run with no .fetchmailrc file again.

------------------------------------------------------------------------------
fetchmail-1.5 (Thu Oct  3 04:35:15 EDT 1996):

* Naturally, my decision to announce 1.4 on comp.os.linux.announce 
  immediately caused the code to manifest its first real bug --
  a core dump when the "From:" header is spelled "from:" (all lower
  case).  Fixed.

* Update and expansion of NOTES.

* The --all and --flush flag validity checks move to driver.c.

------------------------------------------------------------------------------
fetchmail-1.4 (Wed Oct  2 09:22:37 1996):

* More man page improvements.

* Lexer changes to work around bison's "feature" of silently ignoring 0-value
  tokens (caused options nokeep, norewrite, nofetchall, noskip to be no-ops).

------------------------------------------------------------------------------
fetchmail-1.3 (Tue Oct  1 05:49:49 1996):

* Significant man page improvements.

* Escapes for newlines in .fetchmailrc are now optional.

* Kill off -2 and -3 options, redundant popclient remnants.

* IMAP code simplification and robustification.  Use FETCH FLAGS to find
  seen messages.  Code should now work even if unseen messages are 
  interspersed with seen ones, and even if messages are appended to the
  mailbox during the run.

------------------------------------------------------------------------------
fetchmail-1.2 (Sat Sep 28 15:40:50 EDT 1996):

* The great option massacre.  Remove --stdout, --limit, --local, --mda.
  We get a significant code and complexity shrinkage this way (a lot of the
  configuration machinery goes away too).  These things are your MDA's job.
  (This also kills off the lose-mail-on-disk-full bug, which I've never 
  seen but two users reported.)

* Link APOP support by default.

* Fix embarrassing Makefile bug.

------------------------------------------------------------------------------
fetchmail-1.1 (Sat Sep 28 09:21:10 EDT 1996):

* In POP3, don't send LAST if STAT shows count of waiting messages to be zero.

* Document APOP better, we know it works now.

* Lose the .fetchids file and give up on POP3 UIDs, they're a dead loss.

------------------------------------------------------------------------------
fetchmail-1.0 (Thu Sep 26 11:59:38 EDT 1996):

* SMTP forwarding and header-rewrite features work with POP2 now.

* Stricter RFC822 conformance, so SMTP to qmail works.  Thanks to
  Cameron MacPherson <unsound@oz.net> for these changes.

* The program is quieter but more informative now (suppress printing of
  server greeting message; add the server host being queried to the
  message count information line).

* Add `skip' option to make it easier to set up test entries.

* Name change (it ain't just for POP any more).

==============================================================================
popclient-3.2 (Mon Sep 23 13:29:46 EDT 1996):

* RPOP support (coded at a user's request but untested).

* Ported to QNX (see the Makefile).

* Add code by Michael Schwendt <3schwend@informatik.uni-hamburg.de> for
  improved sizeticker.

* Improved RFC822 parsing (thanks to Rob Funk).

* Move the per-user lockfile to /tmp so it gets cleared at reboot time.

* Warn users that running concurrent instances of popclient is a bad idea.

* Try USER and HOME to set defaults before going to the password file.
  This should work better in Sun NIS environments.

popclient-3.1 (Thu Sep 12 15:45:25 EDT 1996):

* MDA arguments are now dumped when using the -V option.

* Sendmail delivery from background seems to work now.

* We have IMAP2bis/IMAP4 support.

* Code now autoprobes for a POP3, IMAP, or POP2 server if no protocol is
  specified.

* SMTP forwarding support.  Thanks to Harry Hochheiser <harry@tigger.jvnc.net>
  for this simple but clever idea.  It's now the default delivery mode.

* If no UNIX From line is found, popclient will now synthesize a correct
  line from the RFC822 From line.

* It is now possible to specify the host TCP/IP port number to connect to.

popclient-3.05 (Thu Aug 22 22:59:04 EDT 1996):

* Experimental support for RFC1725-compliant POP servers with the UIDL
  command and without LAST.

popclient-3.04 (Wed Aug 21 00:22:44 EDT 1996):

* Logfile option works.

popclient-3.03:

* Minor bug fixes for password querying and redirection to stdout.

popclient-3.02 (Fri Jul 19 11:37:56 EDT 1996):

* Correct buggy processing of nokeep/noflush/fetchall.

* Fix buggy -mda option processing.

* Added -N/--norewrite option.

* Delivery via sendmail now works in non-daemon mode.

popclient-3.01 (Mon Jul  1 13:33:51 EDT 1996):

* Fixed a lexical analyzer bug in quoted-string processing.

* Fixed a bug in dump_options that caused username to be displayed incorrectly.

* The lock assertion code was in the wrong place relative to the daemonize()
  call.  

popclient-3.0 (Fri Jun 28 11:33:34 EDT 1996):

Eric S. Raymond <esr@thyrsus.com> hacked extensively on 3.0b6 and took over
the package with the consent of Carl Harris, the original implementor.
Some of the 3.0 feature additions were inspired by Sean Oh's fetchpop 1.8
code, and a few use code directly lifted from fetchpop. Here are my (Eric's)
change notes:

CONFIGURATION AND BUILDING

* The autoconfigure script incorrectly assumed that all Linuxes use
  /usr/bin/deliver.  Under Linux it now checks for both /usr/bin/delivermail
  and /bin/mail.

* I added a distribution-maker production to Makefile.in.

OPTIONS AND COMMAND LINE

* I have removed the -p command-line option. Given that there's a run control
  facility there is no excuse for encouraging users to put plaintext passwords
  in scripts which might be readable.

* Calling popclient with no arguments now causes it to query or operate
  on every host in the run control file.

* I have made --version more useful by having it dump the computed
  connection options for each server specified.

* The user can now explicitly set an MDA (such as procmail) with the
  new option -m or -mda.  Various possible MDAs are listed on the man page.

POPRC FILE SYNTAX

* The run control file lexer now supports "-enclosed strings which may 
  contain whitespace.

* I added a --yydebug option to enable run control parser debugging at 
  runtime if the parser was generated with --debug.  It's not documented.

* You may now have a `defaults' entry in the run control file which sets 
  overrideable values for other entries.  See the man page for details.

* It is now possible to set keep, flush and fetchall in your run control
  file.

* Fixed incorrect numbering of source lines in run control file parse error
  messages.

* The configure.in specification no longer uses the obsolete AC_TRY_COMPILE
  macro (it uses AC_TRY_LINK instead).

MAILBOX LOCKING

* I have added mandatory locking of mailbox files where supported.
  This will cover Linux systems, in particular.

* The default behavior is now to do lock-protected append on the user's
  system mailbox rather than using delivermail or some other MDA.
  (This is a performance hack.)

* The autoconfigure script now looks for standard mail locations.  The
  default mail delivery agent is used only if it can't find a mail spool
  directory in the standard places.

FUNCTIONAL ENHANCEMENTS

* When using POP3, message headers are edited so that replies won't foo up.
  Anything that looks like a mail ID local to the POP host gets @ and the
  pop servername attached to it before being appended to the user's
  mailbox or passed to an MDA.

* I have implemented daemon mode.

* I have added a lock check to ensure that there is only one popclient
  running per user, and a --quit option to kill the currently running
  one.

DOCUMENTATION

* All changes and feature additions have been tested in actual use and are
  documented on the man page.

* I have turned the comments in the sample run control file into a new manual
  section documenting the file format.

MISCELLANEOUS BUG FIXES

* I fixed some de-initialization bugs in pop2.c and pop3.c that led to
  fd leaks (these became painfully obvious when I tested daemon mode!).

* I've fixed the flaky parser error messages. They turned out to be due 
  to a misdeclaration of yytext.

These are Carl Harris's change notes from previous releases:

3.0b5
o	"From " header fix in pop2.c and pop3.c
o	Surpress "..." output when --stdout option specified in pop3.c

3.0b4
o	alloca fix.
o	various diagnostic/informational message fixes.

3.0b3
o	Support for retrieving only new messages from maildrop when
	using POP3.  
o	Support for retrieving only the first n lines of each message
	when using POP3.
o	APOP authentication support.
o	Buffered socket input.

3.0b2
	This is a "new features" release.
o	support for .poprc file.
o	GNU-style long options.
o	fixed passwords appearing in 'ps' output
o	support for multiple servers on one command line

3.0b1
	This is mostly a test of the autoconfigure integration.
Among the functions performed by the new configure script, is
the ability to detect known system types, configures the mail
delivery agent (MDA) correctly.  This should permanently solve
the problem of using something other than an MDA for mail
delivery (which continues to plague Linux slackware 1.2.9).
For this beta, please check the values of MDA_PATH and MDA_ARGS
carefully.  They should match the values found in your
sendmail.cf file on the line which begins with "Mlocal".

	Other changes from popclient version 2.21:

o       no longer uses getpass() from the C library.  The
	internal getpassword() function allows the use of long
	passwords.

o	integrated GNU getopt() for long options.  Long option	
	names will appear in a future beta.

o	Several compiler warnings fixed.

o	Fixed problems related to missing include files in
	Solaris port.