File: ChangeLog

package info (click to toggle)
newscache 0.99.9-2
  • links: PTS
  • area: main
  • in suites: slink
  • size: 1,196 kB
  • ctags: 766
  • sloc: cpp: 6,160; sh: 425; makefile: 143; ansic: 16; perl: 6
file content (703 lines) | stat: -rw-r--r-- 23,288 bytes parent folder | download
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
Mon Jun 22 11:21:01 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* src/Config.cc: new configversion is 4

	* src/accesslog.in: 
	* src/cachestat.in: process new log-file style

	* src/NewsCache.cc: include <sys/time.h>

	* doc/NewsCache.texinfo: added section Compatibility

	* man/updatenews.8: updated the manual page

	* etc/NewsCache.init.in: removed &, NewsCache puts itself into the
	background

	* NVClasses-0.9.1/Logger.cc (print): add date and time to each log
	entry 

	* src/updatenews.cc (main): 
	* src/NewsCache.cc (main): catch SIGINT,SIGALRM,SIGUSR[12] signals

Fri Jun 19 17:11:46 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NServer-0.9.1/CNewsgroup.cc (prefetchGroup): 
	* NServer-0.9.1/CNewsgroup.h: added a flag to prefetchGroup
	indicating whether the group should be locked once or for each
	article retrieval

Thu Jun 18 21:57:23 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* doc/NewsCache.texinfo: added two sections

	* src/updatenews.cc: Added workers, updated copyright notice

Mon Jun 15 12:14:34 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NVClasses-0.9.1/NVcontainer.cc (nvalloc): Fixed a small memory
	leak of the persistent memory allocation (~8 bytes in some
	cases). 

Tue Jun  9 14:07:11 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* src/NewsCache.cc (nnrpd): fixed the number of descriptors in
	select 

Mon Jun  8 13:42:07 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NServer-0.9.1/MPList.cc (readServer): 
	* NServer-0.9.1/NServer.cc: updated semioffline mode

	* doc/NewsCache.texinfo: updated the NewsCache manual

	* configure.in: 
	* src/cacheclean.in: detect, whether find accepts -printf

	* man/newscache.conf.5: 
	* src/Config.cc (read): 
	* src/Config.h: 
	* src/NewsCache.cc (nntpd): added pid file option

	* src/NewsCache.cc (nntpd): added SO_KEEPALIVE to
	socket and corrected some typos

Fri Jun  5 13:29:27 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NServer-0.9.1/NServer.cc (article): added article parameter,
	where the user has to supply a preallocated article class.

	* NServer-0.9.1/NVNewsgroup.cc: retrievearticle allocates already
	an article.

	* configure.in: 
	* src/Makefile.am: 
	* src/cachestat.in: added cachestat script
	* src/accesslog.in: added accesslog script

Thu Jun  4 12:43:19 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* doc/Makefile.am (info_TEXINFOS): renamed tutorial.texinfo to
	NewsCache.texinfo

Wed Jun  3 21:10:18 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* src/accesspatterns.in: Added a script to filter
	group/article-size/miss requests from log files

	* etc/NewsCache.init: Fixed a typo

Wed May 27 14:01:52 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* src/Config.h: 
	* src/Config.cc (read): 
	* etc/newscache.conf-dist:
	* src/NewsCache.cc (nnrpd): Added client timeout

	* NServer-0.9.1/NServer.cc: identify 503 as a connections timeout 

Mon May 11 16:39:05 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NServer-0.9.1/NServer.cc (setserver): Faster detection, whether
	server is already selected

	* NServer-0.9.1/NVNewsgroup.cc: Fixed a memory leak

	* src/NewsCache.cc (nnrpd): Manage ipaddresses correctly

Tue Apr 28 12:00:47 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NServer-0.9.1/NServer.cc: Removed all the old stuff that has
	been #ifdef'd
	Removed [LRC]Server::freegroup since those are covered by
	NServer::freegroup. 

	* NVClasses-0.9.1/NVcontainer.cc (nvflock): Unlock container,
	before applying new lock. Some systems do this themself and some
	do not. :(

	* src/updatenews.cc (main): Log to file instead of stderr. Logging
	to stderr can be enabled using -v.

	* src/NewsCache.cc (main): Added --version switch

Mon Apr 27 09:39:12 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NServer-0.9.1/NVNewsgroup.cc (getarticle): Added VERB message

	* NServer-0.9.1/NVActiveDB.cc: Corrected the level of a debug
	message 

	* NVClasses-0.9.1/NVcontainer.h: The aCC compiler on HPUX does not
	like the trailing , in the enum.

Fri Apr 24 16:39:35 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NServer-0.9.1/NVNewsgroup.cc (setarticle): uncommented an
	unnecessary debug message

	* src/Config.h: Added void

Thu Apr 23 14:56:01 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NServer-0.9.1/NVNewsgroup.cc: Switched all the testdb assertions
	to heavy assertions.

	* NVClasses-0.9.1/Debug.h: Added ASSERT2 macro for switching on
	heavy assertion handling.
	
Wed Apr 22 10:38:54 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* etc/NewsCache.init: NewsCache is started in forground since it
	puts itself intop the background.

	* src/NewsCache.cc (nntpd): Added SO_REUSEADDR to elminitae the
 	can't bind problem.
	(nnrpd): On SIGTERM: Terminate after the current command has been
 	finished instead of when the client finishes.
	(main): Added code for detaching from the controlling tty.

	* README: 
	* etc/newscache.conf-dist: Added a note about using log files and
	syslogd.

	* NServer-0.9.1/NServer.cc (issue): Log more useful messages, when
	connection times out.

	* NServer-0.9.1/NServer.cc (connect): Force selection of
	newsgroup, even if already selected.

	* doc/tutorial.texinfo: Different config for different groups.

	* NServer-0.9.1/NServer.cc: Detect if the remote server closes
	the connection (resp==400) and reconnect. 

Mon Apr 20 12:41:46 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* TODO: Updated TODO

	* NServer-0.9.1/CNewsgroup.cc (listgroup): Added support for
	servers that do not suppport the listgroup command

	* doc/Makefile.am:
	* doc/tutorial.texinfo: Added initial version of Tutorial

	* configure.in: 
	* Makefile.am (SUBDIRS): Renamed docs by doc

	* NServer-0.9.1/NSError.h: Replaced NULL in default initializer by
	"unknown", because class string dumps core when called with NULL
	as initializer.

	* src/Config.h: Added default initialization to Config

	* TODO: Minor update

	* NEWS: Added release notes

Sun Apr 19 19:59:04 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* src/updatenews.cc (main): Corrected a typo.

	* config.h.in: Added ENABLE_NOTCACHED flag

	* configure.in: cached/not-cached flag optional due to problems
	with gcc 2.7.2. See ./configure --help

	* NServer-0.9.1/NServer.cc (getgroup): process cached/not-cached
	flag. 

	* NServer-0.9.1/RNewsgroup.h: Implemented the volatile newsgroup
 	class.

	* NServer-0.9.1/OverviewFmt.h: OverviewFmt returned too few
	lines. 

	* src/updatenews.cc (main): Forgot to set optset

Sun Apr 19 18:26:00 1998  Thomas Gschwind  <tom@pent24.infosys.tuwien.ac.at>

	* NServer-0.9.1/CNewsgroup.cc: allocated the wrong number of
	elements for the listgroup command.

	* NServer-0.9.1/NVNewsgroup.cc (setarticle): data=data= equals
	data=. 

	* NServer-0.9.1/readline.cc (nlreadline): Empty Lines were not
 	handled correctly. Fixed.

Fri Apr 17 12:47:41 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* src/updatenews.cc (main): Force the news servers to be online,
	when updating news.

Wed Apr 15 21:02:17 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NVClasses-0.9.1/Error.h: Corrected errno to _errno in
	SystemError::print() and IOError::print().

	* NServer-0.9.1/NServer.cc (listgroup): 
	* NServer-0.9.1/CNewsgroup.cc:
	* NServer-0.9.1/CNewsgroup.h: Updated debug message

	* README: Corrected a typo.

	* NServer-0.9.1/NServer.cc (selectgroup): Set the name of the
 	current newsgroup directly after selecting the news server.

	* src/updatenews.cc (update): Corrected the if that checks,
	whether overview information or articles have to be retrieved. 

	* NServer-0.9.1/NServer.cc (postspooled): Removed the check,
	whether we are running in offline mode. This is server dependent
	and no server needs to be selected for this option.

Wed Apr 15 11:53:39 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* Version 0.99.2 released.

	* NServer-0.9.1/CNewsgroup.cc (setsize): Force the newsgroup to
	timeout, whenever the low or high watermark is changed.

	* man/NewsCache.8: Minor Update (author)

	* man/updatenews.8: Minor Update (author, removed etc/ from
	newscache.conf)

	* man/newscache.conf.5: Updated the manual page to reflect the
	current configuration file syntax.

	* README: Minor update

	* THANKS: Added Jason Linhart

	* NVClasses-0.9.1/NVcontainer.cc (nvfree): removed some annoying
	debug messages.

	* NServer-0.9.1/NVNewsgroup.cc (setsize): freed to many elements,
	in the case the old and new ranges are not overlapping. Fixed.

Tue Apr 14 12:15:46 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NVClasses-0.9.1/NVcontainer.cc: Replaced Error exceptions thrown
	in assertions by AssertionError.

	* etc/newscache.conf-dist: Updated the default configuration
	file. 

	* src/updatenews.cc:
	* src/NewsCache.cc:
	* src/Config.cc:
	* src/Config.h: Removed old group timeout variable

	* NServer-0.9.1/NServer.cc: 
	* NServer-0.9.1/MPList.cc: 
	* NServer-0.9.1/MPList.h: Added per news server configuration
	variable groupTimeout.

	* src/NewsCache.cc: Corrected the copyright notice
	Check if the current group has already been requested

	* NServer-0.9.1/CNewsgroup.h: Added a debug message

	* NServer-0.9.1/NVNewsgroup.cc: Added a debug message

Mon Apr 13 15:36:11 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* src/cacheclean.in: added a patch from 
	Jason Linhart <jason@summary.net> that allows cacheclean to work
	proper even if it is not called from the correct directory

	* src/Makefile.am (EXTRA_DIST): Bundled cacheclean instead of
	cacheclean.in.
	
Fri Apr  3 00:03:12 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* man/updatenews.8: Corrected the manual page

	* src/cacheclean: added a patch from 
	Jason Linhart <jason@summary.net> that allows cacheclean to work
	proper even if it is not called from the correct directory

	* README: Updated Installation and Features section

	* src/NewsCache.cc: Included exception handling

	* NServer-0.9.1/CNewsgroup.cc (sUpdateOverview): Forgot to free
	lstgrp. 

	* NServer-0.9.1/NServer.cc (overviewdb): Implemented over/xover
	nntpflag.
	(connect): do not raise an error if the mode reader command is not
	implemented. 

Thu Apr  2 00:08:25 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* src/NewsCache.cc: removed the bogus offline command

	* src/Config.cc: 
	* src/NewsCache.cc:
	* src/Config.h: Added Admin configuration

	* NServer-0.9.1/CNewsgroup.cc: Fixed a counter problem in
	updateoverview. updateOverview requested one record too much
	sometimes.
	Added the catch statements, I forgot in the last release. This
	should fix the database corruption problem of some people. 
	Renamed prefetch to prefetchGroup
	Added prefetchOverview method

	* NServer-0.9.1/NServer.cc: RServer::post throws exceptions
	instead of using return codes.
	Removed some commented code that is no longer useful.
	CServer::active: Be more specific about the unexpected exception. 
	
	* NServer-0.9.1/NSError.h: Added new exception classes:
	NoSuchArticleError
	PostingFailedError
	NotAllowedError

	* NServer-0.9.1/NServer.cc: Removed some of the methods being
	defined out.
	Improved the retry handling of RServer::issue
	RServer::disconnect() no longer clears the currently active
	newsgroup. 
	RServer::setserver() clears the active newsgroup now.
	Fixed typos in comments.
	RServer::connect() moved error detection into a preprocessor macro
	and added  a sleep(1) between reconnects. 
	RServer::getgroup throws an exception if the current group cannot
	be found. 

	* NServer-0.9.1/NSError.h: Renamed NoNewsgroupError to
	NoSuchGroupError. 

	* NServer-0.9.1/NServer.cc (init): updated assertion.

	* NServer-0.9.1/NServer.h: removed my MAXSERVNAMELEN define.

	* NServer-0.9.1/NServer.cc: replaced most error return codes by
	exceptions. 
	Implemented (not-)offline flag.
	Updated method comments.

Wed Apr  1 17:09:20 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NServer-0.9.1/NServer.cc (active): Now, catching all exceptions
	while in critical region.

	* src/NewsCache.cc: Added the over command with the ns_xover
	function to the NNTP command list.

	* NServer-0.9.1/NServer.cc (active): Implemented 
	(not-)setpostflag flag.

	* NServer-0.9.1/MPList.cc (readServer): Switch to a new
	configuration syntax for the NewsServerList. Added the following
	configuration flags: (not-)cached, (not-)offline,
	(not-)setpostflag 
	The same server can be listed several times with different
	newsgroups, which gives the possibilty to set these flags on a per
	newsgroup basis. 

	* NVClasses-0.9.1/Error.h: Added IOError class.

	* NServer-0.9.1/MPList.cc (readServer): 
	* src/Config.cc (read): Uses the new Lexer now.
	(read): Renamed NewsServers keyword to NewsServerList.

	* NServer-0.9.1/NSError.h: 
	* NVClasses-0.9.1/Error.h: Updated error handlers to use strings
	instead of char pointers.

Tue Mar 31 12:41:35 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NServer-0.9.1/Lexer.h: Added a small lexer class to simplify
	configfile parsing.
	Added SyntaxError class.

	* NServer-0.9.1/NServer.cc (post): some code clean up and added a
	throw statement in the case no news server is responsible for a
	news posting.

	* NServer-0.9.1/MPList.h: Added some comments. Split up newsgroups
	declaration into one for reading newsgroups and one for posting to
	newsgroups.

	* NServer-0.9.1/NServer.cc (active): If the news server does not
	support list active wildmat, update the nntpflags variable and use
	list active instead. 
	Handles news servers without read permission correctly.

Mon Mar 30 12:21:57 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NServer-0.9.1/MPList.h: Added a variable that indicates which
	commands are supported by remote news server.

	* NServer-0.9.1/NServer.cc (selectgroup): Added a force argument,
	to force the selection of the group, even if it is already
	selected.
	(groupinfo): Corrected a debug message.
	(active): If list active [wildmat] is not supported by news
	server, list active will be used instead.

	* NServer-0.9.1/OverviewFmt.h: Now, setting the bytes: field in
 	the overview database correctly.
	Declared some more methods as const.

	* NServer-0.9.1/Article.h: Declared those methods that do not
	change the Article as const.

	* Added some test routines, which are checked, whenever a new
	release is made.
	
	* NServer-0.9.1/Article.h: Fixed a bug with multiline headers.
	Added some additional assertions.

Thu Mar 26 10:36:52 1998  Thomas Gschwind  <tom@w0.infosys.tuwien.ac.at>

	* NServer-0.9.1/NVNewsgroup.cc (setarticle): Fixed a bug, when
 	storing an overview record. Did not allocate one extra character
 	for the trailing \0.
	* NServer-0.9.1/NVNewsgroup.cc (getover): Forgot to reset static
	overview buffer. Fixed.

	* NServer-0.9.1/Article.h: getfield throws a NotFoundError, if the
 	field cannot be found.

	* NServer-0.9.1/OverviewFmt.h: Recalculate the dotrans flag, when
	the format of the overview database changes.
	getfield throws a NotFoundError exception, if the field cannot be
	found. 

	* Renamed log to slog in all of the files due to conflicts with
	libm. 

Tue Feb 17 23:19:26 1998  Thomas Gschwind  <tom@snoopy.gschwind.priv.at>

	* Removed the option to compile NewsCache without exceptions. This
 	option never worked and with egcs/gcc-2.8.0 this problem should be
 	solved.

	* Switched to the string data type provided by the stdc++ library
 	and got rid of String from libg++. This also has the effect that
 	overview records are no longer limited to 32K-1 bytes.

Fri Jan 23 12:07:47 1998  Thomas Gschwind  <tom@hitech.complang.tuwien.ac.at>

	* src/Config.cc: Added SpoolSize configuration option

	* String/Regex.cc: included string.h to remove a warning about
 	memset.h

Thu Jan 22 18:10:04 1998  Thomas Gschwind  <tom@hitech.complang.tuwien.ac.at>

	* configure.in: The third argument of accept should be detected
 	correctly now.

	* NVClasses-0.9/Error.h: renamed errno to xerrno. This should fix
 	a conflict with glibc 2.

	* src/NewsCache.cc (nntpd): Fixed the TIME_WAIT bug.

	* NewsCache runs on alpha-linux in combination with egcs-1.0.1 and
 	libstdc++.

Thu Jan 22 00:08:06 1998  Thomas Gschwind  <tom@snoopy.gschwind.priv.at>

	* eliminated several warning messages

	* src/NewsCache.cc (ns_list): NewsCache printed the response
	to the list command twice.

Wed Jan 21 23:13:29 1998  Thomas Gschwind  <tom@snoopy.gschwind.priv.at>

	* src/NewsCache.cc (sigchld): The sigchld signal handler is now
 	reinstalled when sigchld arrives.

	* Added the String and Regex files from the libg++
 	distribution. libg++ is no longer required for building
 	NewsCache. Removed with/without-libg++ switch.

	* src/Makefile.am (sbin_SCRIPTS): cacheclean is now installed
 	under sbin.

Wed Jan 14 16:31:35 1998  Thomas Gschwind  <tom@vhf.complang.tuwien.ac.at>

	* NewsCache runs on Alpha systems and egcs. NewsCache cannot be
	compiled with gcc-2.7.2 since gcc-2.7.2 does not support
	exceptions on that platform.

	* configure.in: Added a switch --with/without-libg++

Mon Jan 12 17:06:37 1998  Thomas Gschwind  <tom@vhf.complang.tuwien.ac.at>

	* Using GNU ChangeLog format now

	* Workaround for a problem in BSD's grp.h header (Does not include
 	sys/types.h). Moved include<sys/types.h> before include<grp.h>.
	Thanks to James E. Pace <jepace@pobox.com> for telling me.

	* Better support for AIX.  The third argument of accept is checked
 	with a autoconf test now.

Work that has been done since release 0.9.13
--------------------------------------------
* NewsCache compiles on AIX now.

Work that has been done since release 0.9.12
--------------------------------------------
* autoconf. At the moment this has been tested on intel-linux 
  and sparc-sunos.

* Removed the Configure.h file. Most of these configuration options
  are dealt with using autoconf. In future releases all options will
  be configurable from the newscache.conf file.

* INN-style logging on the LOG_NOTICE level. The log-entries are
  accompanied with the client's host-name, IP-address or both.

* Logging via the syslogd or log-files. Added a configuration option
  for the directory, where log files should go.

* Workaround for a bug in MS Outlook Express.

* Support for access control using libwrap (Thanks to 
  Miguel a.l. Paraz)

Work that has been done since release 0.9.11
--------------------------------------------
* Corrected a bug in NVNewsgroup::getover
  The return argument got garbled. Possibly, this was a problem 
  of gcc, who called the destructor too early?

* Corrected the post command (0.9.11 has not really been tested :( )

* Added next, last commands

* Fixed head and body commands

* Added an option that forces newscache not to connect to a news server.
  This is useful, if you want to read news offline and have diald running.

* Started to add INN style logging. 

Work that has been done since release 0.9.9
-------------------------------------------
* Postings are now posted to those news servers, whose newsgroups
  are listed in the newsgroups field of the posting.
  Eg: news.a.org a*
      news.b.org b*
  posting to a.newsgroup and to b.newsgroup. Posting is posted
  to news.a.org and news.b.org. If those newsgroups are distributed
  to other news servers, those news servers can identify this article
  as duplicate, since NewsCache assigns an article identifier to each
  posting.

* Fixed a bug in NVNewsgroup. In some situation the Newsgroup was
  not correctly unlocked.

* Fixed some problems, when the news server was not reachable (offline 
  mode)

* Added the head and body commands. pine should now work in combination
  with NewsCache

* Fixed a problem in the destruction of the CServer class. The overview 
  and active database has been freed twice up to now, which resulted in
  a segmentation violation in updatenews

Work that has been done since release 0.9.8
-------------------------------------------
* Fixed a news server selection bug. When only one newsgroup without
  wildcard was entered in the config file, the news server has not
  been selected correctly.

* Fixed a bug in the on-the-fly generation of the overview-records.
  Each entry had appended an additional character.  Did some code-cleanup 
  in Text.(cc|h).  

* Split the TODO file into Changes and TODO.

* Added cacheclean script

Work that has been done since release 0.9.7
-------------------------------------------
* Fixed compatibility problems with xrn.

Work that has been done since release 0.9.6
-------------------------------------------
* Moved all the multiplexing functionality from loose functions
  to the RServer class, where it fits in smoothly.

* Unified the active databases of different news servers into one.
  Advantage: I request only those newsgroups from a news server
    being really necessary.
  Disadvantage: I do not store which newsgroup belongs to what
    newsserver. I think if the admin changes these relations
    he should remove the cache entries of the affected groups.
    So this is not really a disadvantage.

* Improved the class hierarchy. See my last paper submitted to 
  Usenix98 for its description.

* Implemented list active.times and newgroups commands
  xrn should really work now! Otherwise, I move my xrn installation
  to /dev/null!

* Implemented a new and better newsgroup class.
  - uses an array instead of a list now
  - stores not only the overview database, but also the articles
  - big articles will be stored in the filesystem
  - overview records are stored only for big articles separately. All 
    the others will be generated on the fly. Saves about 20% disc 
    space (See the SLAC-article in doc). Hope this does not degrade
    performance too much.

* Mark groups from news server without posting permission as read only

Work that has been done since release 0.9.5
-------------------------------------------
* Fixed a major bug in the non volatile container class

* Better documentation (Manual Pages)

* Eliminated a bug, where NewsCache dumps core when
  no nnrp command is specified

* list newsgroups command supported. However, always returns an empty list
  at the moment

Work that has been done since release 0.9.4
-------------------------------------------
* Support for XHDR-command

* Support for DATE-command

* Fixed a mutex problem in overviewdb introduced
  with the overview-database expire command

* Improved article retrieval of updatenews

* Logging of incoming requests

* xrn works with NewsCache

Work that has been done since release 0.9
-----------------------------------------
* Better XOverDB (overview.fmt)
  Convert remote server database to local database format

* XOverDB does not support expiry of old records

* connecting to a non-existing host => core dump

* Who is responsible for posting articles in the local queue? 
  - The class itself? 
    Check whether we have articles stored in the article queue
    in CServer's constructor?
  - The NewsCache? 
  - An external program?
  The routine to post articles from the outgoing queue is provided
  with the CServer class (postq()). Currently, this routine is 
  invoked by an external program called updatenews.