File: changes.txt

package info (click to toggle)
slrn 1.0.3+dfsg-3
  • links: PTS
  • area: main
  • in suites: bullseye, buster, sid
  • size: 6,412 kB
  • sloc: ansic: 39,852; sh: 3,777; perl: 467; makefile: 229; sed: 24
file content (2861 lines) | stat: -rw-r--r-- 134,541 bytes parent folder | download | duplicates (2)
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
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
-*- mode: text; mode: fold -*-
Changes since 1.0.2
1. src/parse2822.c: A quoted-string in the display portion of an
   address was not being marked as allowing mime-encoded text.
2. src/charcode.c: After calling iconv to perform a character set
   conversion on an article line, call it again with just the newline
   character.  This resets the state for some conversion types (UTF-7).
3. src/sltcp.c: Disable support for SSLv3, which is vulnerable to
   POODLE attacks.  (from Stacy Yeh via Andrew Strong)
4. src/sltcp.c: Corrected a typo that I introduced in #3
5. src/post.c: The reject_long_lines option was not working as
   documented.  Setting it to 0 had no effect when netiquette_warnings
   was set to a non-zero value.
6. macros/mime.sl: In replace_article_with_mime_obj, also decode
   quoted-printable/base64.
7. autoconf/include/ax_lib_socket_nsl.m4: New file from the autoconf
   archive that detects libraries needed for socket support.  The old
   method used X_EXTRA_LIBS, which breaks if X in not installed.
   Addresses <20151103075425.GA2101@web.de> on slrn-users list.
8. Added support for large (>2GB) files on 32 bit unix systems.
9. Updated Danish translation (Morten Bo Johansen)
10. macros/mime.sl: If a mime message has already been base64/QP
    converted, do not try to convert it again.
11. src/sltcp.h: Do not use SSL_CTX_set_options if gnutls is being
    used (Daniel Macks).
12. src/post.c: Use labs instead of abs for long integer (Daniel Macks).
13. Updated copyright year in preparation for upcoming release.
14. src/version.c: Removed compilation date info for a reproducible
    build.  Patch provided by Moritz Muehlenhoff.
15. Updates for mingw and cygwin 32 and 64 bit systems.
16. src/mime.c: rfc1522_encode_word: max_nbytes was not being properly
    limit checked.

{{{ Previous Versions

Changes since 1.0.1
1. src/misc.c: slrn_verror needed va_copy when writing to the log file.
2. src/post.c: Move the cursor to the end of the line when querying
   for a postpone filename.
3. Added support for building slrnpull on win32.
4. Made a note in the install files that slang+modules+slsh need to be
   installed.
5. macros/mime.sl: mime_process_multipart added to the read_article_hook.
6. Updated the FSF address (Petr Pisar).
7. src/interp.c: The MAKE_INTRINSIC specification for the get_charset
   intrinsic wrapper function was incorrect leading to a SegV.
8. src/interp.c: Fixed a memory leak in the article_as_string functions.
9. configure: Parse /etc/ld.so.conf to look for additional lib paths
10. Merged two patches sent to me by Moritz Muehlenhoff (Debian Maintainer):
      contrib/cleanscore: Fix perl prototypes (gregor herrmann)
      macros/multipart.sl: Fixed usage of the string_match return value.
        (Brian Murray)
11. src/mime.c: Do not mime-encode the In-Reply-To header.
12. src/sltcp.c: Set the gnutls global log level to 0 as a work-around
    for a connection issue when a higher value is used.  See
    <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=728189> for
    additional information.
13. src/interp.c: If get_header_flags is called with an optional
    non-zero integer argument, then it will return the full set of
    header flags associated with the current header.  Symbolic
    constants that correspond to these flags were also added to the
    interpreter interface.
14. po/Makefile.in.in, src/Makefile.in: Ignore install error when GNU
    msgfmt is not installed.
15. src/Makefile.in: Add support for CPPFLAGS (patch provided by Moritz Muehlenhoff).
16. autoconf/configure.ac: Updated libs for current gnutls (patch
    provided by Moritz Muehlenhoff).
17. src/group.c: Updated default value of query_read_group_cutoff to
    1000 to reflect faster networks. (patch provided by Moritz
    Muehlenhoff).
18. doc/score.txt: Added a note about where to find the documentation
    for the slang regular expressions (patch provided by Moritz
    Muehlenhoff).
19. src/slrn.c: Added support for SIGQUIT (addresses debian #673529).
20. src/ttymsg.c: Strip \001 highlight characters from messages written
    to the terminal when not in fullscreen mode (addresses debian #631021).
21. src/*.c,*.h: Updated copyright year for upcoming release.
22. NEWS file added with release notes.
23. autoconf/: updated configure scripts
24. src/Makefile.in: slang 2.2.3 or greater now required.
25. po/Makefile.in.in: Do not remove .gmo files if msgmerge is not
    installed.

Changes since 1.0.0
1. An issue with the wrap_width variable was fixed.

Changes since 0.9.9p1
1. src/charset.c: Avoid using CODESET if it is not defined.
2. doc/slrn.1: Remove blank line at top of file. (Ignatios Souvatzis)
3. src/Makefile.in: /bin/sh on solaris does not like empty lists in a
   for loop causing make install to fail.  Workaround added
   (Petr Sumbera).
4. src/mime.c: rewrote much of the email address encoding/decoding so
   that only comment fields in email addresses are encoded/decoded.
   slrn is also smarted in encoding/decoding other headers (based on
   patch from Robert Grimm).
5. autoconf/Makefile.in: Added dependencies such that if the
   Makefile.in and config.in files have been modified, the user is
   told to re-run the configure script.
6. Updated the copyright years to 2009.
7. src/mime.c: Omit the mime headers if the content is pure 7bit.
   Also, if mime-headers already exist, do not add append additional
   ones.
8. configure: Added the configuration option --with-non-gnu-iconv that
   can be used to indicate that local version of iconv is not
   compatible with GNU iconv (Piotr 'aniou' Meyer).
9. src/charset.c: Upon failure, slrn_test_convert_lines will return the line
   that caused it to fail.
10. src/charset.c: If the --debug option is given, slrn will write the
    strings that iconv failed to convert to the log file.
11. src/post.c: Skip long line checks between verbatim marks. (Robert
    Grimm).
12. src/nntplib.h: Removed duplicate declarations of nntp_server_cmd
    and nntp_server_vcmd. (Li Hong).
13. src/decode.c: If an output file already exists, create a new one
    by appending an integer to the name.
14. src/slrn.c: work around a SLang_getkey bug that arises when the
    underlying read system call is interrupted, and the interrupt hook
    creates a different read descriptor.
15. src/misc.c: All error messages (including slang tracebacks) are
    logged to the --debug output file.
16. src/art.c,etc: If an article has invalid headers, clear the error
    but give the article an initial score of -1000.  This number may
    be customized using the "invalid_header_score" variable.
17. src/mime.c: In slrn_mime_process_article, decode headers even if
    Content-Type is not understood and metamail is needed.
18. src/art.c: Avoid a buffer overflow when reconstructing huge
    threads.  Thanks to Robert Grimm for finding the problem.
19. src/version.c: %d format was used to print a long integer.
20. src/nntplib.c: slrn user "narke" discovered that his server will
    disconnect if an attempt is made to post an empty body.  slrn does
    this after authenticating with the server to verify that posting
    is possible.  As a work-around, the response comment from the
    AUTHINFO command is parsed.
21. src/sltcp.c: Add support for gnutls logging functions.
22. src/chkslang.c: Fixed a sscanf format issue involving long long
    integers.
23. src/sltcp.c: Change 21 needed #ifdef SLTCP_HAS_GNUTLS_SUPPORT.
24. src/nntplib.c: A comparison in #20 should have used != instead of
    ==.
25. doc/slrn.rc: "utf8" changed to "utf-8" (Thomas Wiegner).
26. src/art_misc.c: Increased the search range for a pgp signature.
27. src/misc.c: The rline_update callback function was not handling
    the case where no prompt (prompt==NULL) was associated with the
    readline object.  (M. G. Berberich)
28. src/vfile.c: Add explicit void* to char* cast for better C++
    compliance.
29. doc/tm/: Updated the Makefile and rebuilt the docs
30. src/interp.c, art.c: Added support for an optional argument to the
    replace_article function that dictates if the article should be
    mime processed.
31. src/*: Updated copyright year and trimmed extra whitespace.
32. macros/mime.sl: Added initial support for multipart mime messages.
    See macros/mime.sl for additional information.
33. macros/mime.sl;src/*.c: More support for processing multipart mime
    messages, including the ability to save/view the various parts of
    a message.
34. src/misc.c:generic_read_input: If point is negative, regard it as
    an offset from the end of the string.  Changes were also made to
    the callers of this function accordingly.
35. macros/mailcap.sl: If an executable does not exist on the search
    path, skip the mailcap entry.
36. src/interp.c: Added "replace_cooked_article", which is like
    to "replace_article", but does not affect the raw lines.  mime.sl
    was updated to use this.
37. macros/mime.sl: Added an option to the browse menu that permits
    the full raw article to be viewed.
38. macros/mime.sl: Added a more informative message when a mime
    article is encountered.
39. src/mime.c: A couple of strncmp calls used the wrong length (Patched
    by Thomas Wiegner).
40. macros/mime.sl: The boundary subkeyword was not being detected in a
    case-insensitive way.  Also the wrong filename was mentioned in
    the usage comments. (Christian Ebert)
41. macros/mime.sl: Add an option to view all parts of a mime
    multipart message.
42. Added a top-level win32 directory containing scripts for building
    slrn using MinGW on a Windows system.  See doc/INSTALL.w32 for
    details.
43. src/*.c: Various win32-specific tweaks to avoid some warnings
    generated by MinGW's gcc.
44. win32/msinstall.sl: Use $prefix/share/man instead of $prefix/man
    for the directory where man pages are installed.
45. doc/THANKS updated.
46. updated autoconf/config.guess and autoconf/config.sub
47. doc/THANKS rearranged.
48. src/art_misc.c: New config variable: "wrap_width", which sets the
    width that will trigger wrapping.
49. doc/: Updated txt docs from slrn doc project's svn repos.
50. Version 1.0 released [Dec 21, 2012].

Changes since 0.9.9
1. src/misc.c: The code assumed that slrn_make_from_string returned a
   string of the form "From: ".  If the value returned by
   make_from_string_hook does not start with this prefix, then it will
   be prepended.
2. src/misc.c: slrn_make_from_string renamed to slrn_make_from_header.
3. autoconf/*: Updated using autoupdate
4. configure: Added --with-server-name and --with-server-file options
   (Thomas Wiegner and Joerg Sommer)
5. doc/INSTALL.unix: Corrected a typo involving the uudeview library
   option. (Andrew Strong)
6. INSTALL.txt: typo corrected (Brian Salter-Duke)
7. src/decode.c, src/Makefile.in: Added changes to create a standalone
   uudecode executable.
8. doc/*: Updated docs from the slrn-doc team.
9. src/art.c: signed-vs-unsigned cleanups.
10. src/spool.c: A few functions were not using NNTP_Artnum_Type.
11. src/nntplib.c: _nntp_num_or_msgid_cmd was not using
    NNTP_Artnum_Type (Joerg Sommer)
12. src/nntp.c: Added the probe for XHDR early on instead of when
    first used to avoid a possible server timeout.
13. src/art.c: A few functions were limiting file sizes to 256,
    instead of PATH_MAX.
14. src/config.hin: NNTP_ARTNUM_TYPE_MAX was not defined.
15. src/nntp.c: Use "XHDR Path" instead of "XHDR" when probing for
    XHDR.
16. src/nntplib.c: Rewrote the logic in parsing the return values from
    the XHDR Probe.  It is possible that different servers will return
    different codes for this probe and that further changes will have
    to be made.
17. src/art.c: A space was missing in a format statement in the
    read_article function (Christof Meerwald, Peter J. Ross).
18. src/menu.c: The length of the version string was not being
    considered when writing it to the top menu line, causing a long
    string to be truncated (Thomas Wiegner).
19. doc/: Documentation updates (doc-team).
20. src/post.c: Avoid a momentatary display of "Your message is not
    acceptable..." when a post/followup has a netiquette error, but
    the user is ignoring such errors. (Peter J. Ross)
21. src/print.c: %d was being used to print a DWORD arg (Win32 specific)
22. src/slrnconf.c: NNTP_ARTNUM_TYPE_MAX was defined as a long and not
    a long long (missing LL suffix at the end of the literal constant).
23. src/slrnconf.c: (Win32) SIZEOF_* values were missing.
24. src/chkslang.c: Added SIZEOF_* checks.
25. src/Makefile.g32: (Win32) Use / as the path separator when running
    chkslang.
26. src/spool.c: In a few debug statements, the wrong format was being
    using for article numbers.
27. src/slrnpull.c: Add the SLATTRIBUTE_PRINTF attribute to the
    log_message function.
28. src/spool.c: A %d format was used for an article number in a
    section of code activated by the SPOOL_ACTIVE_FOR_ART_RANGE
    feature,   Also the XPAT code was using an unsigned int instead of
    an NNTP_Artnum_Type object.
29. src/art.c: An empty "From:" was not being parsed properly.
30. src/slrnconf.h: Removed references to cygwin and changed the
    long-long format string from %lld to %I64d on win32 systems.
31. src/chkslang.c: Added a test for the long-long format string.

Changes since 0.9.8.8pl1
0. Removed the dependency on automake.  As a result, the configuration
   options have changed.  Run `./configure --help` to see the current
   options.
1. Reorganized the code a bit by moving some of the code in util.c to
   strutil.c.  Eventually I want to remove ugly constructs such as
   '#include "score.c"' from slrnpull.c.  This is a step in that
   direction.
2. Code simplification in various places including the use of unsigned
   variables where appropriate.
3. When following-up on an article with no Newsgroups header, assume
   it is from a mailing list and reply instead.
4. Fixed some character-set encoding issues.
5. Improved the email-address parser.  I also removed the check for a
   domainname because some local mailing lists may not require them.
   Moreover a domain name should not be required when forwarding an
   article to a local user.
6. src/jdmacros.h: On FreeBSD do not include malloc.h
7. src/config.hin: Add __attribute__ check for printf-style functions
8. src/post.c: Some cleanup and reorganization of the post-functions
9. src/art.c: Fixed a SEGV in the cancel lock code.  Slrn_Version was
   being used instead of Slrn_Version_String.
10. src/*.c: Renamed slrn_strchr to slrn_strbyte to emphasize that
    this function does not work with wide characters.
11. src/strutil.c: slrn_case_str[n]cmp were not handling NULL pointers
    in non-utf-8 mode (Thomas Wiegner).
12. src/art.c: non-7 bit characters were not be displayed properly in
    UTF-8 mode after rot13. (Thomas Wiegner).
13. src/mime.c: When decoding mime, do not allow \n characters in the
    header, and if they occur in the body, split lines accordingly
    (Thomas Wiegner).
14. src/post.c: In the prepare_header function, sizeof(buf) was being
    used for a char *buf.  This was causing Cc addresses to get
    truncated to 3 characters.  Also the some unchecked malloc
    failures were caught.
15. src/art.c: Added support for Mail-Reply-To.  If it exists, it
    takes precedence over a Reply-To header.  This header is used by
    mailing lists.
16. src/mime.c: Added a routine to "guess" an unknown character set.
    Eventually this will be replaced by a slang-hook.
17. src/post.c: User-generated message-ids were getting corrupted.
18. src/misc.c: Removed the slang-1 specific code.
19. src/mime.c: Better support for long header lines and long encoded
    words.  Does this break X-Face?
20. src/misc.c: In the rli_self_insert function, do not call
    SLrline_redraw, which is buggy in slang-2.0.7.  The function is
    not needed here anyway.
21. src/charset.c, mime.c: Add Thomas Wiegner's fallback-charset patch.
22. src/mime.c: Made the encoding functions table-driven for easier
    maintance and control.  Change #19 caused Message-Id and
    References to get encoded if they were too long.  This change
    avoids that.
23. src/mime.c: rewrote "fold_line" to fold a header even if one of the
    words is too long.
24. src/art.c+xover.c: Changed the way header fields are allocated to
    avoid some memory leaks.
25. src/post.c: large overhaul of code that converts the to-be-posted
    file to the linked list for conversion to mime.
26. src/hdrutils.c: new file.
27. src/mime.c: rewrote the routine that mime-enocodes the body of a
    post.
28. src/slrnpull.c: Updated to reflect changes in #24.  NOTE: slrnpull
    has not been tested in any way.
29. src/mime.c: Error in fold-line permitted it to generate lines
    larger than the 75 character maximum.
30. src/mime.c: It appears that a mime-encoded X-Face header is not
    very well supported.  After reviewing the source code to compface,
    it appears that a naive folding will work.  Time will tell...
31. src/art.c: If the reply function is called with a prefix-argument
    of 2, then also use the Cc and To header values.
32. src/interp.c: Removed set_utf8_conversion_table since it did
    nothing.
33. src/mime.c: Corrected a possible memory corruption error where
    strcat was used instead of strcpy when decoding base64 articles.
34. src/*.c: Corrected various unchecked calls to malloc.
35. src/Makefile.in: installbin and installdirs swapped in the install
    target (Joerg Sommer).
36. src/mime.c: From-type headers were not being properly encoded when
    the first word of the header contained an 8 bit character.
37. src/win32/: new directory for win32 port
38. src/Makefile.g32: rewrote
39. autoconf/configure.ac: SLRN_LIB_DIR changed from lib/slrn to
    share/slrn.
40. src/startup.c: Rewrote the character-set specific code to avoid a
    SEGV.
41. src/snprintf.h: include jdmacros.h to ensure ATTRIBUTE_PRINTF is
    defined (Joerg Sommer).
42. src/startup.c,interp.c: Removed slang-specific variables from
    compile-time tables to run-time functions because of windows DLL
    limitations.
43. Modified src/Makefile.g32 to compile with the mingw32
    cross-compiler.
44. macros/slrn.sl: New file. This file gets loaded when slrn runs.
    It sets up paths and defines some callback functions.
45. src/interp.c: Removed the slrn-specific evalfile function in favor
    of the stock slang function, which is aware of slang's load path.
46. src/hooks.c: Rewrote to support adding hooks via function
    references, e.g.,  register_hook ("foo_hook", &callback);
47. src/version.c: Added iconv and rewrote for easier maintenance.
48. src/startup.c: Setting macro_directory variable will invoke a
    callback function defined in slrn.sl.
49. src/Makefile.in: Since slrn will try to load a file called
    help.txt from CONFDIR, this variable was changed to
    $(sysconfdir)/slrn, e.g., /etc/slrn/.  This change is also
    consistent with the recommendations of FHS 2.3.
50. src/slrn.c: If slang fails to initialize, then exit.
51. src/slrnfeat.hin: If slrnpull has been enabled, then enable spool
    support.
52. src/mime.c: Off by 1 bug in split_qp_lines would sometimes cause a
    call to realloc with a length of 0, which had the effect of
    freeing the buffer.
53. src/interp.c: If slrn.sl is not found, then print the value of the
    load-path.
54. src/Makefile.g32: mingw32 tweaks (Rudy Taraschi).
55. src/charset.c: Rewrote the high-level character-set conversion
    routine.  Previously, the outgoing character set was not being
    properly handled.
56. src/art.c: Added a separate field to the article line structure
    for the quote-level.
57. src/charset.c: slrn_convert_substring was being called with a
    length of 0 instead of the length of the string.  This was causing
    the conversion to the editor characterset to fail.
58. src/mime.c: Rewrote all the email-address encoding routines
    in an effort to address some encoding bugs.
59. src/misc.c: Rewrote the email address generation routines to
    comply with the MIME requirement that no encoding should take
    place in a quoted-string.
60. src/art.c: Respect MAX_QUOTE_COLORS when setting the quote color.
61. src/art.c: The color index for quotes was off by 1.
62. src/post.c: When configured with --enable-strict-from, a
    non-existent function append_to_header was being
    called instead of slrn_append_to_header.
63. src/misc.c: Allow the readline buffer to horizontally scroll when editing
    long lines.
64. macros/slrn.sl: slrn_get_macro_dir_hook was defined as taking an
    argument.
65. src/startup.c,src/slrn.c: Added a --show-config option.
66. src/slrn.c: Wrong file pointer passed to slrn_show_version,
    causing a SEGV.
67. src/interp.c: When setting slrn configuration variables via the
    set_string_variable function, use the display-character-set when
    not in UTF-8 mode.  If in UTF-8 mode, then use UTF-8.
68. configure: probe for a timezone variable and tm_gmtoff field in
    a "struct tm".
69. src/slrn.c: When called with --help, exit with status=0
70. src/charset.c: An undefined variable was being referenced when
    compiled without iconv support (Rudy Taraschi).
71. src/Makefile.g32: clean target corrected for mingw32 build (Rudy
    Taraschi).
72. src/mime.c: Convert null characters ('\0') to '?' when encoded in
    a header (they are illegal in headers).
73. doc/help.txt: Changed "read" to "displayed" (Rudy Taraschi).
74. src/charset.c: If a charset is unknown-64 or x-user-defined, use
    the fallback character set.
75. src/misc.c: Replaced calls to slrn_write_nchars by calls to
    SLsmg_write_nstring (slrn_write_nchars did not quite work right).
76. configure: test for va_copy
77. src/startup.c,art.c: Changes to permit --show-config to print the
    header format strings.
78. configure: check for langinfo.h (Thomas Wiegner).
79. src/charset.c: commented out call to setlocale in
    slrn_init_charset since it was already called.
80. src/Makefile.in: minor cleanups (Joerg Sommer)
81. doc/slrn*.1: Escape hyphens and s-lang -> S-Lang changes (Joerg
    Sommer)
82. src/post.c: Strip whitespace from Newsgroups and Follow-To headers.
83. src/interp.c: re_header_search was leaking memory
84. src/mime.c: Parse a header for mime encoded 8 bit characters even
    if the header contains unencoded 8 bit characters.
85. doc/slrn.1: Updated (Peter J. Ross)
86. src/slrnpull.c: Fixed a couple of bugs involving the reading of
    previously freed or uninitialized memory.
87. configure: --with-slrnpull now takes an optional argument giving
    the location of the slrnpull root directory.
88. src/print.c: On Unix, if the PRINTER environment variable is NULL
    or empty, then do not use the "-P" lpr option.
89. src/menu.c: When drawing a box, the simulate_graphic_chars setting
    was not being respected.
90. autoconf/Makefile.in: distclean the subdirectories before removing
    the Makefile.  po/Makefile.in.in: remove stamp-po in the distclean
    target. (Joerg Sommer)
91. src/startup.c: Check the number of arguments to the unsetkey
    function and exit if not the expected number.
92. src/post.c: POST_FILE_HOOK was not getting called.
93. src/post.c: After sucessfully posting a postponed file, the file
    was not getting removed.
94. src/group.c: A SEGV could occur if the array passed to the
    set_group_order function contained multiple occurances of a group
    name.
95. doc/slrn.rc: updated (Peter J Ross)
96. src/help.c: Updated maintainer name (Peter J Ross).
97. src/slrn.c: If SLang_getkey fails, then exit.
98. src/nntplib.c: nntp_read_line will strip the leading dot when
    doubled.  art.c modified accordingly.  (Based on a patch by Rocco
    Caputo).
99. src/config.hin: Added a definition for SLRN_HAS_GNUTLS_SUPPORT.
100. src/config.hin,configure: Added the appropriate checks to enable
     IPv6 support (Joerg Sommer)
101. src/misc.c: In queries, the default values of response characters
     were not being properly highlighted.
102. src/slrn.c: If an error was encountered during initialization,
     then exit.
103. contrib/slrnrc-conv: Updates (Joerg Sommer)
104. src/art.c: Changed the crosspost query message to something a bit
     less confusing.
105. src/misc.c: If OUR_ORGANIZATION is defined and looks like a
     filename but the file does not exist, then do not use it. (Joerg
     Sommer)
106. src/config.hin: Removed unused USE_DOMAIN_NAME and MY_DOMAIN_NAME
     variables. (Joerg Sommer)
107. autoconf/aclocal.m4: Updated to version 0.2.3
108. src/mime.c: mime-charsets with spaces in them were not being
     properly parsed.
109. src/sltcp.c: Added support for the nss compat library.  Configure
     using --with-ssl --with-nss-compat  (Miroslav Lichvar).
110. src/misc.c: Use getaddrinfo if available for obtaining the FQDN
     (Miroslav Lichvar).
111. README, doc/FIRST_STEPS, doc/score.txt: Updates (Peter J. Ross).
112. autoconf/aclocal.m4: Corrected a typo affecting a test (Joerg
     Sommer).
113. src/*: Apparantly some server has articles with server numbers
     exceeding the size of a 32 bit integer.  For this reason, the
     code was updated to support long-long (64 bit) integer types.  This
     involved many small changes.
114. src/group.c: Small bug introduced in #113 that affecting the
     count of unread articles was corrected.
115. src/art.c: If a server reports an article range such as
     3132-234867280, then most likely most of the articles in the
     range are not present on the server.  I rewrote the
     missing-article-list code to use far less memory for such cases.
116. src/nntplib.c, startup.c, slrnpull.c: If a username or password
     are associated with a server via an nnrpaccess command, then
     authenticate with the server even if the server does not request
     it.  This change eliminates most, if not all, uses of the
     force_authentication variable.
117. src/nntplib.c: _nntp_deallocate_nntp was not closing the tcp
     socket.
118. src/slrnpull.c: Updates for long-long support (see #113).
119. src/*.c: Cleaned up some calls to functions that used printf
     style formats.
120. src/interp.c: The get_response function was not being called with
     the proper number of arguments.
121. doc/FAQ, doc/manual.txt, doc/FIRST_STEPS: Updates from
     slrn-doc.svn.sourceforge.net.
122. src/Makefile.g32,src/slrnconf.h: Some updates to allow it to be
     compiled under windows (Thomas Wiegner).
123. autoconf/configure.ac: Added configuration options for GNU TLS
     (Joerg Sommer).
124. doc/*: Updates from the slrn-doc project.
125. src/Makefile.in: Add config.h to slrnpull.o dependency (Joerg
     Sommer).
126. src/slrnpull.c: %d was used in a format strings to print
     long-long values (Joerg Sommer).
127. src/mime.c: If a long message-id in a reference cannot be folded,
     then omit the warning since there is nothing the user can do
     about it.  (variation of a patch from Joerg Sommer).
128. configure: --with-ssl configure option was broken.
129. src/group.c: An error was being generated when bogus groups were
     found causing slrn to exit upon startup.
130. src/mime.c: The last line of a base-64 encoded message was being
     dropped if it was not terminated by a \n character.
131. src/decode.c: Parsing of text such as "name=foo; charset=bar;"
     was not using the ';' as a separator.
132. po/*.po: Recreated the files using the current source strings.
133. INSTALL: New file that contains a few words about what is
     required to build slrn.

Changes since 0.9.8.1

0. Bug fixes include:
  * slrnpull fetches marked articles even if no new headers are available.
  * slrn would sometimes eat the last char of an article when posting.
  * slrnpull gives permission 600 to debugging files (may contain passwords).
  * Some minor usability glitches (Alain Bench)
  * Fixed fd leaks on some error conditions (Sami Farin)
  * sltcp.c wrote to stderr, messing up the screen in some cases.
  * Going to a numerically tagged article now faster in large groups.
  * Do not send trailing space after some NNTP commands (Lars Kellogg-Stedman)
1. Ported to slang-2 (patch by John E. Davis). slrn still compiles with
   slang-1 and I will keep this option until slang-2 is completely stable.
   Please see the FAQ for the current status of slang-2 support.
2. Support iconv for charset conversion (patch by Felix Schueller).
3. Introduced quit_hook, which is executed when slrn quits.
4. Symbolic key names <BackTab> and <F13> through <F20> added (Alain Bench).

Changes since 0.9.8.0

0. Bug fixes include:
  * slrnpull's download statistics should work correctly in offline mode.
  * slrn crashed on some operating systems when posting.
  * slrn crashed when trying to decode base64 encoded articles without body.
  * Don't destroy soft links / multiple hard links when writing newsrc file.
  * Always apply scoring rules in the order given in the scorefile.
  * When reading cross-posts, slrn sometimes marked additional articles in
    the other group(s) as read (Joerg Lueders).
  * slrnpull no longer posts backup copies (*~) of files you edited manually
    in the out.going directory.
  * slrnpull tries to write .headers files on interrupts.
  * The "Has-Body" scoring field sometimes did not work correctly.
  * When retrieving article children, headers without body were not marked.
  * Ignore signature delimiters in verbatim text blocks.
  * Do not choke on long header lines when replying by email.
  * A workaround for a bug in INN caused problems with leafnode; only use it
    when the server was recognized as INN from the logon message.
  * Fixed crash when running in wide terminals (John E. Davis)
  * Email address parser is more RFC2822 compliant
1. In the config file (and the corresponding intrinsic functions), the
   following names now denote special function keys: <PageUp> <PageDown>
   <Up> <Down> <Right> <Left> <Delete> <BackSpace> <Insert> <Home> <End>
   <Enter> <Return> <Tab> <Space> <Esc> and <F1> through <F12>
   If using these names does not seem to work for you, please make sure your
   terminfo settings are correct.
2. In true offline mode, slrnpull can now automatically retrieve bodies of
   articles that get a high score value (--fetch-score option).
3. Added Swedish translation (Johan Svedberg)
4. Make hide_pgpsignature hide GnuPGs optional "NotDashEscaped" lines.

Changes since 0.9.7.4

-1. Changes when building on Un*x:
  * The configure script accepts new options --with-server-name and
    --with-server-file (Matthias Friedrich).
  * Upgrade to more recent versions of gettext, automake and autoconf.
    Please let me know if this introduces problems on your platform.
  * The intl/ directory is no longer included in the tarball, as most people
    who want NLS should already have GNU gettext installed.
0. Bug fixes include:
  * Setting new_subject_breaks_threads to 2 has an effect again.
  * Some translations (fr/ko/nl/ru) were broken and could cause segfaults.
  * Fixed possible buffer overrun when parsing "Xref" header lines.
  * Fixed memory leak when grouping scorefile entries.
  * No more rubbish at the end of popup window lines (Jurriaan).
  * subject_compare_hook leads to the expected result again (Jurriaan).
  * Ignore "no data found" errors when using uudeview (Chris Hanson).
  * Don't segfault when toggling past the 10th header_display_format.
  * Follow convention to use "Message-ID" instead of "Message-Id".
  * Use "X-Posted-To" instead of "Posted-To" (did not make it into RFC2822)
  * Also attempt MIME-decoding if no "Mime-Version:" header line is found.
  * Don't add an empty line at the end of saved articles (Alain Bench).
  * Use a completely unmodified copy of the article when piping / saving.
    This is important for some yenc-encoded and PGP-signed articles.
  * Sometimes, all headers were downloaded even when user set a limit.
1. Changes to the user interface:
  * view_scores uncollapses threads (suggested by Jurriaan W Kalkman) and
    can optionally be left by pressing 'q'.
  * By default, articles are now saved to folders with lower case names;
    upper case filenames are still used when the file already exists. The
    new hook make_save_filename allows overriding these defaults.
  * In header_display_format, %b choses a suitable "unit" automatically.
  * Browsing URLs will also use rot13 if it's toggled on in the pager.
  * The prompt when writing a followup to a crosspost should be more
    understandable and can now be turned off via "netiquette_warnings". When
    selecting "set Followup-To", this is announced in the message body; this
    can be configured with the new variable "followupto_string".
  * toggle_quotes now tries to find a non-blank line to leave on screen.
  * Defaults for "followup_string" and "followup_date_format" changed.
  * "postpone_directory" now defaults to "News/postponed"; if necessary,
    slrn will create this directory automatically (after asking the user)
  * Warn at startup when setting a variable that doesn't have an effect.
  * The score value 0 no longer has a special meaning; if you want to assign
    the score 0 and stop scoring for this article, use =0.
  * When no server name is given, slrn tries "localhost" as the default.
  * You now need to escape (double) % signs in custom_headers.
2. When used in combination with slrnpull, slrn now supports "true offline
   reading", i.e. you can tell slrnpull to download article headers only,
   mark interesting ones for download in slrn and fetch those article bodies
   during the next run of slrnpull. Please see doc/slrnpull/README.offline
   for details.
3. slrnpull no longer completely rewrites the overview files when expiring
   articles, which should speed the process up quite a bit. If you still
   need to rebuild the overview, you can use the new --rebuild option (based
   on a patch by Jurriaan W Kalkman).
4. If your terminal supports it (and you are not using Win32 or OS/2), you
   can now use colors and attributes at the same time. Just append them to
   the color lines in your config file, e.g.:
     color underlinetext	"default"	"default"	"underline"
5. Set use_recommended_msg_id to 1 in your config file if you want slrn to
   make use of server-proposed Message-IDs; the IDs will get saved along
   with the article to the save_posts mbox file. (patch by Felix Schueller)
6. Added intrinsic functions article_cline_as_string, article_cline_number,
   article_count_lines, article_goto_line, article_line_down, article_line_up,
   has_parent, header_cursor_pos, raw_article_as_string, set_color_attr
   (see doc/slrnfuns.txt).
7. Custom sorting now allows you to use different criteria for sorting
   initial articles of threads and articles inside threads (see
   custom_sort_order in manual.txt for details). (patch by Anatoly Vorobey)
8. locate_article ignores leading "news:" (Jarek Baczynski)
9. When reading in spool mode with spool_check_up_on_nov set, slrn now finds
   out the number of bytes of each article, even if it is not included in
   the news overview file (based on a patch by Jurriaan W Kalkman).
10. Support Cancel-Locks using the canlock library (--with-canlock) that can
    be obtained from <http://cssri.meowing.net/>; you also need to set the
    new variable "cansecret_file" to a file containing your Cancel-Lock
    password to enable this (based on a patch by Andreas Barth).
11. Support GNU TLS via its new OpenSSL compatibility layer (--with-gnutls).
    Please note that GNU TLS still is under heavy development and that slrn's
    support for it is still untested (based on a patch by Joey Hess.)
12. New command-line option "-w0" that waits on startup, but only if a
    warning or error is displayed.
13. Updated cleanscore, see contrib/NEWS.cleanscore (Felix Schueller)
14. Verbatim text can be hidden using toggle_verbatim_text (default binding
    '{') or hide_verbatim_text in the config file. (Arek Sochala)
15. The "BEGIN PGP SIGNED ARTICLE" line is displayed using the "pgpsignature"
    color and stripped on followups. (Emmanuele Bassi)
16. If query_read_group_cutoff is set to -n, slrn will automatically
    (without prompting) download n articles when more than n are present.
17. Support Turkish characters on Win32 - set charset to "ibm857" for this.
    With help from A. Alper ATICI
18. Re-structured the manual and added a chapter about slang's
    pre-processing facilities. (Matthias Friedrich)
19. The config variable cc_followup_string is obsolete; cc_post_string now
    covers all cases. Currently, the only supported escape sequence is "%n"
    for newsgroup name.
20. New translations:
   * be.po (Belarusian; Hleb Valoska)
   * fi.po (Finnish; Lauri Nurmi)
   * tr.po (Turkish; A. Alper ATICI)
21. Remove duplicates when browsing URLs (Ruediger Sonderfeld)
22. IPv6 support (requires getaddrinfo; patch by J.H.M. Dassen (Ray))
23. A new, updated and more comprehensive FAQ (doc/FAQ) - it replaces the
    files FAQ, SCORE_FAQ and slrnpull/FAQ (written by Matthias Friedrich and
    me, based on John E. Davis' original files).

Changes since 0.9.7.3

0. Bug fixes include:
  * slrn sometimes hung when reading via SSL. (Robert Dennis Manchester)
  * Sometimes headers were cut off during MIME encoding (Andreas Ferber)
  * Mouse support did not work correctly when using a translation.
  * Fixed a segfault while scoring. (Byrial Jensen)
  * Fixed rare segfault caused by broken "References:" lines. (Felix Schueller)
  * Fixed a segfault while browsing URLs.
  * get_(fg|bg)_color() mapped color names incorrectly and did not allow
    quotes[0-7] as an argument.
  * Use color object "message" for all prompts.
  * The high / low scoring article counters work correctly.
  * Don't remove _^H combinations in articles (corrupted yenc-encoded data).
  * Don't decode headers when writing them into the overview file (slrnpull).
  * The --with-libdir config option was ignored.
  * Work around a problem with leafnode when getting articles from a different
    group by Message-Id.
  * Recognize SN's timeout messages.
  * TABs in the text of popup_window()s are now expanded correctly.
  * Don't turn off scoring when scorefile contains a single invalid regexp.
1. New algorithm for article sorting (based on a patch by Felix Schueller).
   This adds a highly configurable custom sorting interface (which will
   completely replace the choice in sorting_method at some point). See
   custom_sort_order and custom_sort_by_threads in the manual.
   Moreover, the new code sorts "siblings" inside of threads.
2. Made confirm_actions a bitmapped value to allow more fine-grained
   control. The new default is 31 (confirm all actions).
3. The output of --kill-log now also shows which scorefile entries match
   the killed article (like view_scores; based on patch by Jurriaan W Kalkman)
4. New variable max_queued_groups to control batching of GROUP commands at
   startup, as some servers do not seem to like it. (Craig B. Agricola)
5. In article mode, "expunge" now triggers the newsrc autosave copy feature.
6. Added intrinsic functions bsearch_article, re_bsearch_article,
   re_search_article_first, search_article_first, set_ignore_quotes,
   set_strip_re_regexp, set_strip_sig_regexp and set_strip_was_regexp. Added
   a return value to register_hook (hopefully, you'll find it backwards
   compatible).
7. Added support for dynamically linking slang modules using the import
   intrinsic function (where available).
8. Added --with-mta option to the configure script to easily allow the use
   of alternate mail transport agents (MTAs).
9. In a Cygwin environment, slrn can (and should) now be built Unix-like.
10. More translations:
   * es.po (Spanish; Walter Echarri)
   * fr.po (French; slrn-fr project)
   * ko.po (Korean; Im Eunjea)
11. New config variable "hide_quotes" (see manual for details).
12. When using inews on OS/2 or Windows, the article is now written to a
    temporary file instead of piped into the program.

Changes since 0.9.7.2

0. Bug fixes include:
  * Removed code that unpacks "shell archives" as it causes a serious
    security hole. Reported by Byrial Jensen.
  * Even when using read_active, slrn would enter all subscribed groups.
  * force_authentication was ignored when re-connecting.
  * In rare cases, the need to send authentication data was not recognized.
  * Interpret "news:" URLs enclosed in angle brackets correctly.
  * Scorefiles get "include"d only once (no more loops).
  * Unsubscribed groups are no longer moved to the bottom of the newsrc file.
  * Multiple '%s' in (non_)Xbrowser are handled correctly (fixes segfault).
1. Minor UI changes:
  * Tagging ('*') an article marks it as unread.
  * The new default of 'reject_long_lines' is 2.
  * When confirm_actions is set, catching up a group requires confirmation.
  * Complain if user specifies a nonexistant config file on the command line.
  * Made new_subject_breaks_threads a bitmapped value (see manual for details)
2. On Unix, gettext is used to translate messages. Thanks to the slrn-pl and
   slrn-fr projects who helped with this and provided patches. Thanks to
   Byrial Jensen for a lot of minor improvements.
   Currently, the following translations are available:
    - da.po (Danish; Byrial Jensen)
    - de.po (German; Jens Wahnes)
    - it.po (Italian; Emmanuele Bassi)
    - nl.po (Dutch; Jelmer Vernooij)
    - pl.po (Polish; Jarek Baczynski / Arkadiusz Sochala)
    - ru.po (Russian; Andy Shevchenko)
   Note: This feature made the source tarball grow quite a bit, but I think
         it is worth it.
3. Switched to automake to generate Unix Makefiles (which required renaming
   some source files). Please let me know if this introduces problems for you.
    * You can now install the contributed scripts using "make install-contrib"
    * "uninstall" and "dist" targets are available
    * New directory structure: Config files (slrn.rc and help.txt) should
      now be put in %sysconfdir (default: /usr/local/etc), macros go into
      %sharedir/slrn/macros, newsgroups.dsc in %sharedir/slrn (default of
      %sharedir is /usr/local/share). If slrnpull.conf is not found in
      $SLRNPULL_ROOT, slrnpull looks for it in %sysconfdir
   => Pass --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc/news
      to ./configure to do an FHS compliant installation.
4. The new function "view_scores" (bound to 'v' in article mode) shows you
   which scorefile entries matched the current article. Assigning names to
   your entries (see score.txt for details) will make this even more useful.
   Based on a patch by Juergen Graefe <graefe@zpr.uni-koeln.de>
5. The new intrinsic functions "register_hook" and "unregister_hook" allow
   the definition of multiple functions for most hooks. Patch by Robin
   Sommer <rsommer@uni-paderborn.de>   
6. An autosave copy of the newsrc file is created whenever you leave a
   group. This can be turned off with no_autosave. Patch by Felix Schueller.
7. Scoring on "Bytes:" (by integer value, not regexp) is possible. In
   header_display_format, you can use '%b' to display the number of bytes.
   This is available when reading overview data only (e.g. _not_ in slrnpull)!
8. In *_display_format and *_status_line, the additional modifier '*' can be
   used to center justify text in a field of a given width.
9. slrn accepts 8bit characters in newsgroup names.
10. Updated cleanscore, see contrib/NEWS.cleanscore (Felix Schueller)
11. The code that allows running slrnpull as an unpriviledged user can now
    be turned on by passing --enable-setgid-code to configure. It no longer
    makes outgoing postings group writeable.
12. The bottom line now has its own color object ("message").
13. New intrinsic functions get_fg_color and get_bg_color that return the
    current color of an object.
14. In the readline keymap, the new functions "delbol" (^U) and "delbow"
    (^W) will delete to the beginning of the line or the word, respectively.
15. In selection lists (e.g. used by color.sl), pressing a letter takes you to
    the next (or previous, if shift was held down) entry that starts with it.
16. New descriptors in header_status_line: %h, %l and %k now stand for the
    number of high / low scoring / killed articles, respectively.
17. A copyright notice can now be displayed from the help window.
18. New intrinsic functions read_mini_variable (tab completes variable
    names) and read_mini_integer. See macros/varset.sl for an example
    (easy interactive setting of variables at runtime).

Changes since 0.9.7.1

!!! Changes when building on Un*x:
  * Support for inews, slrnpull and spool is now disabled by default.
  * Please use --with-slrnpull instead of calling "make slrnpull".

0. Bug fixes include:
  * In spool mode, slrn hung when applying expensive scores immediately.
  * In spool mode, slrn choked on 0xFF characters in overview files.
  * Don't segfault when trying to decode an empty article.
  * The "unread articles" counter and group_unread() always work correctly.
  * Expensive scoring in slrnpull did not work.
  * "include file" in slrn.rc refers to ~/file again.
1. More changes to the user interface:
  * Include only visible headers when forwarding, unless a prefix arg is used.
  * Re-tagging an article removes the numerical tag.
  * Numerically tagging a collapsed thread (un-)tags all the children.
  * The cursor always moves down after numerically (un-)tagging.
  * The read_mini intrinsic function does not append a colon to the prompt
    any longer. This was requested to allow for greater flexibility.
2. Tab completion is available when prompting for filenames. To use this
   feature in your macros, call read_mini_filename.
3. slrn no longer uses the deprecated syntax in "From:" headers. Parsing and
   MIME encoding is also rewritten to be a bit more RFC compliant.
4. Batch initial GROUP commands (speeds up startup when read_active is 0).
5. A "Date:" header is generated when writing to mbox files and sending mail;
   optionally, it can be turned on for posting as well (generate_date_header).
6. Only send authentication data when the server requests it (RFC2980).
   If you need to volunteer authinfo (e.g. because the server does not let
   you post otherwise), set "force_authentication" to 1.
   When necessary, you are prompted for username and password even if the
   "nnrpaccess" command is not used.
7. Text in header lines can be emphasized (add 8 to emphasized_text_mask).
8. New flag "%P" in header_display_format that is true if article has a
   parent. (Leopold Toetsch)
9. New variable mail_editor_is_mua to make sure mail does not get sent twice
   (both by mail_editor_command and slrn).
10. On Win32 and OS/2, description files are now <newsrc>.dsc, not ds-<newsrc>
11. If $SLRNHELP is unset, slrn looks for $SLRN_LIB_DIR/help.txt
12. slrn now detects and interprets "news:" URLs.
13. Support Greek characters on Win32 - set charset to "ibm737" for this.
    With help from Arkadiusz Mucha <arkmch@priv.onet.pl>
14. You can now use editors that use a different charset than slrn itself
    (e.g. on Win32); when doing this, set editor_uses_mime_charset to 1.
15. New intrinsic function "popup_window" to display long messages / text.
16. New group mode function "group_search_backward", by default bound to "\".
17. Added manual page for slrnpull.
18. Better support for filenames on CYGWIN (includes code contributions by
    Rudy Taraschi <rudy@cae.com>).
19. New release of cleanscore, see contrib/README.cleanscore (Felix Schueller)
20. Header lines are saved when decoding (again). Hopefully, the uudecode
    routine now handles them correctly. If you have uudeview support
    compiled in, but want to use the builtin code, set use_uudeview to zero.

Changes since 0.9.7.0a

0. Bug fixes:
  * Saved articles are marked as read if auto_mark_article_as_read is on.
  * "compatible_charsets" did not work correctly.
  * Fixed segfault when trying to get an expunged article back in a
    non-threaded sorting mode.
  * is_article_window_zoomed works again.
  * extract_article_header will search full headers again if it does not
    require a server query.
  * Only use "from_myself" if realnames match exactly.
  * Possible crash in external uudeview support fixed.
  * Fixed segfault when no regexp is given in a scorefile entry.
  * Fixed reply address extraction when scoring on "Reply-To:" header lines
    and some related problems.
  * skip_to_next_group will not fail when all articles in a group are killed.
  * IBM850 charset mapping was incorrect for some characters (fixed with
    help from Jens Wahnes <jewa@gmx.net>)
  * ESC 2/4 RET also work when query_read_group_cutoff is non-zero.
  * A minor fix for building on OS/2 (Francesco Cipriani <fc76@softhome.net>)
1. Platform specific improvements:
  * Added FreeBSD keycodes for PageUp / PageDown. (Jimmy Olgeni)
  * Implemented "notepad printing" for OS/2.
2. Better support for broken servers:
  * Ignore "new" groups which are already in our newsrc file (suggested by
    Alex Chiang)
  * Test if XHDR can be used to retrieve non-overview headers.
  * New option "drop_bogus_groups".
3. Minor changes to the user interface:
  * In anticipation of its removal, display_score is now hardcoded to 1.
    Edit your header_display_format if you do not want to see score values.
  * cc_followup can be configured to behave depending on the presence of a
    "Mail-Copies-To" header line. One (which is the new default) means to
    prompt the user in this case.
  * slrn -i file (or -f file) now refers to ./file instead of ~/file.
  * More standard bindings in article mode: "Q" for fast_quit, "[" for
    toggle_verbatim_marks and "ESC LEFT" / "ESC RIGHT" for
    "skip_to_previous_group" / "skip_to_next_group".
4. Improved documentation:
  * Online help (the one you see when hitting '?') is completely rewritten.
    Most of the work was done by Matthias Friedrich.
  * The manual has a new section about interactive functions (Matthias / me).
  * New files: README and doc/FIRST_STEPS (Felix Schueller).
  * Cleaned up the doc/ directory a bit (suggested by Felix Schueller).
  * Rewrote sample slrn.rc (section on keybindings by Matthias).
  * slrnpull's docs are only installed along with slrnpull itself (Matthias).
5. Support good netkeeping:
  * If netiquette_warnings is on (default), warn when crossposting without
    "Followup-To:" or to more than 4 groups, when "Followup-To:" points to
    multiple groups or the signature is longer than 4 lines.
  * Chopped Message-Ids are dropped when posting the "References:" line.
  * The default of followup_strip_signature is now 1.
6. All status lines (group_status_line, header_status_line, art_status_line)
   are now configurable; please refer to the manual for a list of accepted
   format descriptors. Based on a patch by Leopold Toetsch <lt@toetsch.at>.
7. Group display can be fully customized via "group_display_format". This
   makes "group_dsc_start_column" and "show_descriptions" obsolete.
   toggle_group_display is now called toggle_group_formats.
8. If "highlight_urls" is non-zero (default), URLs are drawn in the color
   set with "url" and are "clickable" when mouse reporting is on.  slrn
   prompts for changes to the URL unless the middle mouse key is used.
9. Use "LIST OVERVIEW.FMT" to make sure we score "inexpensively" on all
   information found in the XOVER output.
10. If available, use "LIST SUBSCRIPTIONS" to decide which groups are
    subscribed by default when creating a new newsrc file.
11. Use "LIST ACTIVE" instead of XGTITLE (which is not really appropriate for
    our cause and deprecated by RFC 2980). This makes use_xgtitle obsolete.
12. Always decode base64 / quoted-printable in article bodies. If the
    charset is not supported, 8bit characters are stripped.
13. Added a new way to highlight unread subjects; it is enabled by setting
    "highlight_unread_subjects" to 2. Please see manual.txt for details.
14. Don't quote blank lines when smart_quote is set to 2 or 3.
15. Warn user on startup if his config file contains obsolete commands or
    variables. Matthias Friedrich updated contrib/slrnrc-conv to correct
    those as well. The new command line option "-w" makes slrn wait before
    switching to full screen mode and lets you read the startup messages.
16. More autoconf updates. Most notably, --with-uudeview is added, the code
    for finding OpenSSL is completely rewritten and --with-slang* takes
    precedence over cached values (with help from Matthias Friedrich). By
    default, documentation now goes to $(prefix)/share/doc/slrn (FHS).
17. New descriptors in "header_display_format": "%T" draws the thread tree
    only, "%c" is the number of messages in the subthread.  Unlike with "%T"
    and "%t", the field width of "%c" can be changed.
18. When overview files are present, reconstructing threads in spool mode is
    much faster (based on a patch by Jurriaan W Kalkman <thunder7@xs4all.nl>).
19. By default, only visible lines are printed. To print a full, unwrapped
    version of the article, use a prefix argument (ESC 1 y).
20. use_mime is now a bitmapped quantity that allows you to view / save /
    archive / pipe messages (at your option) in encoded or decoded form. The
    new default is 5 (decode in pager; encode when sending and archiving).
21. Better support for multipart binary postings (Jurriaan Kalkman):
    subject_compare_hook can be used to put similar subjects into the same
    thread (see macros/multipart.sl for an example).
    Additionally, "subject 3" is now sorted before "subject 13".
22. ESC 2 L shows all unsubscribed groups (does not query server).
23. Added intrinsic functions hide_current_group, get_group_order and
    set_group_order (requires S-Lang >= 1.4.0) as well as the variables
    _slrn_version and _slrn_version_string.
24. clientlib.c (only needed on some VMS systems) is now packaged separately
    (because of its slightly more restrictive license).
25. (Un-)collapsing single threads in large groups works much faster.
26. evaluate_cmd (Ctrl-X ESC) reads a line and interprets it as S-Lang.
    (I hardcoded this so it's always available for debugging purposes.)
27. In spool mode, --debug will now log error messages (Jurriaan Kalkman).

Changes since 0.9.7.0

0. Bug fixes:
  * slrn does not crash in spool mode.
  * S-Lang versions < 1.4.0 can be used; in this case, the
    set_utf8_conversion_table intrinsic is not available.

Changes since 0.9.6.4

John E. Davis, author and long-time maintainer of slrn, can no longer devote
enough time to the further development of slrn. Thus, he decided to entrust
me, Thomas Schultz <tststs@gmx.de>, with the task of maintaining the
program. I want to thank him for all the time and effort he invested in slrn
so far and I will try to fulfill the task to the best of my ability.

0. Bug fixes:
  * refresh_groups can now safely be aborted and will check for new groups
    unless check_new_groups is 0.
  * Expensive scoring also works when applying the scorefile in article
    mode, when MIME encoding is involved and when reconstructing threads.
  * Let user mark tagged messages unread
  * Saving tagged messages works correctly
  * Use correct charset when re-editing rejected postings
  * Copy "Followup-To:" header line when superseding (Andreas Riedel)
  * Use LDFLAGS when compiling chkslang (Garry Williams)
  * Fixed crash on some non-unix systems when no editor was defined
  * Fixed typo in ispell.sl
  * Handle code 480 in response to GROUP and NEWGROUPS commands.
  * Fixed group search when the cursor is on the group you are searching for.
  * When an article is not on the server, locate_header_by_msgid no longer
    throws an slang error instead of returning 0.
  * Fixed some VMS issues (with help from Tilman Linneweh)
  * Fixed sorting by date on non-unix systems (with help from Sylvan Butler)
  * uudecoding does not corrupt files that contain legal spaces.
  * uudecoding also works with "\r\n" line endings.
  * Realname is not stripped from "To:" address on replies (Felix Schueller)
  * Avoid race condition when posting to spool.
  * Correct handling of DST when finding new groups from active.times.
  * Fixed dozens of potential buffer overflows all over the sourcecode.
  * Handle formfeed when it is not on a line of its own.
  * Unwrap articles for replies / forwards. Re-wrap afterwards.
  * When user aborts followup / forward / supersede, the associated hook is
    not executed.
  * Restore old article window size when un-zooming.
  * Work around a bug in the XPAT implementation of Typhoon servers.
  * Minor fixes for building on Cygwin (with help from Rudy Taraschi)
1. In header overview, the color of subjects and scores depends on the score
   of the article. The new color objects "neg_score" and "pos_score" are
   used for scores != 0, the existing color object "high_score" for high
   scoring articles. This can be turned off with "color_by_score".
   (Collaborative patch from Felix Schueller and me.)
   Like most GUI newsreaders, slrn now also highlights subjects of unread
   articles. This can be turned off with "highlight_unread_subjects".
2. Integrated patch from Felix Schueller <fschueller@netcologne.de> that
   introduces an improved (downward compatible) scorefile syntax that allows
   grouping of scoring rules. The score values 9999 and -9999 do not have a
   special meaning any longer. If desired, you can use the equal sign prefix
   for the same effect. Please refer to score.txt for details. slrn now also
   encloses its scorefile entries with comments marking where exactly they
   begin and end. This is useful for the script cleanscore.
3. Basic reading support for UTF-8. By default, it is converted to Latin 1,
   but you can change this by using the intrinsic set_utf8_conversion_table
   (see macros/latin2.sl for an example).
   Full UTF-8 support will be added as soon as slang 2.0 is out.
4. New descriptor "%D" in header_display_format and followup_string which
   prints the date formatted according to the new variables
   overview_date_format, followup_date_format and use_localtime.
5. New scoring keyword "Age:" to score articles which are younger / older
   than a given number of days.
6. The top status line is now configurable by setting "top_status_line" to a
   format string in which the following descriptors are recognized:
     %d  current date (in the preferred representation for the current locale)
     %n  name of the current newsgroup
     %s  name of the current server
     %t  current time (in the preferred representation for the current locale)
     %v  version of slrn
   The %g descriptor works exactly like in "header_display_format".
7. When creating a scorefile entry, you can now also specify the date of
   expiry as N days from now. (Philipp Grau <phgrau@zedat.fu-berlin.de>)
8. Article bodies in base64 are decoded and displayed in the internal pager
   (patch from Matthias Friedrich).
9. Long words can now be wrapped at the right border of the screen.
   Configurable with "wrap_method". (Andreas M. Kirchwitz <amk@krell.snafu.de>)
10. More readable "smart" (aka tin-like) quoting that adds a blank between
    your quote_string and previously unquoted lines. Can be turned off with
    "smart_quote". (Matthias Friedrich <matt@mafr.de>)
11. When a followup would result in a crossposting, slrn issues a warning
    and offers a choice of possible actions. (Felix Schueller)
12. Optionally, slrn can warn you when you write a followup and a Followup-To
    header line is present. New variable: warn_followup_to (Felix Schueller)
13. Current download ratio is displayed when getting or saving an article.
    (patch from QuoteMstr <qtmstr@optonline.net>)
14. Support for the convention of using "(was:...)" when changing the
    subject: "new (was: old)" and "new" are treated as equivalent when
    sorting. Using "strip_was_regexp", you can also automatically strip old
    subjects on followups and when creating scorefile entries.
15. "strip_re_regexp" can be used to strip non-standard back-references on
    followups (some broken user agents translate the "Re:").
16. "strip_sig_regexp" is available to detect broken signature delimiters
    (based on patch by Emmanuele Bassi <emmanuele.bassi@iol.it>).
17. Header lines can explicitly be hidden by prefixing them with a bang (`!')
    in visible_headers.
18. If you are used to signing off your messages before the signature, you
    can now use "signoff_string" to do this automatically.
19. New variable supersedes_custom_headers that works just like the existing
    custom_headers variables and is used when superseding a message.
20. New intrinsic functions datestring_to_unixtime, get_article_window_size,
    get_header_number, reload_scorefile, setlocale and
    sort_by_sorting_method (see docs for details).
21. ESC 2 ESC p can be used to reconstruct a thread much faster than with
    ESC 1 ESC p; however, in most cases it does not find all articles.
22. New option "--kill-log" in both slrn and slrnpull to keep a logfile of
    articles that were killed by the scorefile. New option "--kill-score" in
    slrnpull to change the kill treshold (default: 0).
23. In header overview, the new color object "from_myself" is used for the
    `From:' header line / realname if it contains your name. (patch from
    Andy Shevchenko <andy@smcl.donetsk.ua>)
24. When you set "broken_xref" to 1, slrn requests articles by Message-ID
    instead of header number. This provides support for servers with broken
    "Xref:" headers. (reported by Robert Jan)
25. Print a warning if editor_command could not be executed.
26. locate_article now accepts Message-IDs without angle brackets.
27. Write "--debug" output to an unbuffered file.
28. In article mode, "expunge" ('x') will not remove tagged articles.
29. Compile-time option SLRN_GEN_FROM_EMAIL_HEADER replaced with slrnrc
    variable "generate_email_from" (default: 1 on IBMPC, 0 everywhere else).
30. New compile-time feature SLRN_HAS_STRICT_FROM which makes it possible to
    enforce correct "From:" header lines on Unix and VMS. When turned off
    (default), the "From:" line now appears in the editor (includes some
    code by Felix Schueller).
31. New slrnrc command "posting_host" which can (in some cases) be used to
    allow generation of Message-IDs on systems without an official hostname.
32. Added charset mapping for codepage 852 (IBM852) <-> latin2 (Arkadiusz
    Mucha <arkmucha@priv2.onet.pl>)
33. Changed behaviour of "move_group" to meet most people's expectations
    when some groups are hidden. "transpose_groups" is untouched.
34. Added variable "cc_post_string" that is used when posting
    ("cc_followup_string" only worked correctly on followups). Currently, it
    does not support any % format descriptors.
35. Expensive scoring should now be faster on servers that support XHDR. If
    you find the opposite to be true for you, set "prefer_head" to 1.
36. In "followup_string", %R expands to the first part of the realname.
37. Archived postings and replies look much more like the posted versions.
38. Improved "--version" output.
39. New config command "compatible_charsets", which can be set to a comma-
    separated list of MIME charsets your terminal is capable to display.
    (This is a bit of a hack, needed until we have better charset support.)
40. Some UI cleanups (includes many proposals from Matthias Friedrich):
  * Removed option "cancel" where it did exactly the same as "no".
  * Renamed some functions for better consistency:
    In group mode:
     pageup / pagedown -> page_up / page_down
     up / down -> line_up / line_down
    In article mode:
     art_bob / art_eob -> article_bob / article_eob
     left / right -> article_left / article_right
     art_xpunge -> expunge
     article_*dn / article_*up -> article_*_down / article_*_up
     down / up -> header_line_down / header_line_up
     pagedn / pageup -> header_page_down / header_page_up
     *prev* -> *previous*
     shrink/enlarge_window -> shrink/enlarge_article_window
     print/pipe_article -> print/pipe
    The old names are still working, but will be removed before 1.0
  * Replaced "scorefile" .slrnrc command with a "scorefile" variable
  * article_eob skips to the end of the article, even if it was not yet shown
  * Most functions now affect the currently displayed article (if none is
    shown, the one associated with the current header is fetched):
     Interactive: article_search, cancel, create_score, decode, followup,
		  forward, pipe, print, reply, save, supersede
     Intrinsic:   pipe_article, re_search_article, save_current_article,
		  search_article
  * ESC 2 RET retrieves old articles (like the docs suggested); ESC 4 RET
    only prompts when reading more than query_read_group_cutoff articles.
  * Removed compile time options SORT_BY_SCORE and TILDE_FEATURE, as they
    can be configured at runtime and don't cause significant overhead.
  * Put compile time options under autoconf control (based on patch by
    Matthias Friedrich); rewrote some autoconf macros; don't compile local
    hostname into the binary by default.
41. Included a much shorter, but up-to-date man page written by Matthias
    Friedrich. More detailed documentation can be found in the new slrn
    manual, which is now part of the source distribution (doc/manual.txt).
    Format is text/plain, but more formats are available online. I also
    rewrote README.w32 and updated README.macros.
42. Added contrib/ directory to the source distribution. It currently
    contains two helpful perl scripts: cleanscore (by Felix Schueller) can
    be used to purge expired scorefile entries; slrnrc-conv (by Matthias
    Friedrich) rewrites your slrnrc file to use the new function names.

Changes since 0.9.6.3
1. src/grplens.c: Connection to grouplens server was not always being
   closed. (Chris Siegler <siegler@citilink.com>)
2. src/misc.c: Add a warning if a FQDN cannot be found.
3. Support for SSL added--- see doc/README.SSL.

Changes since 0.9.6.2
0. Bug fixes: 
    artmisc.c: If a line is marked as a PGP line, then it cannot also
     be a quote line.
    verbatum-->verbatim
    art.c: Only wrap/unwrap an article when the display requires it.
      This avoids a nasty bug in decoding MIME QP.
    doc/FAQ: 0 and 12 were the same (Hynek Schlawack <hynek.s@web.de>)
    art.c: Allow rot13 to apply to signature.
    misc.c: slrn_case_strcmp rewritten to work around a gcc bug on HPUX.
    uudecode.c: If a line contains a space, then skip it.
    art.c: get_parent_headers: avoid self-referencing articles
    group.c: remove arbitrary group name length limit.
    group.c: code added to support for arbitrarily long newsrc lines.
    art.c: Fix sorting methods 4 and 6. (Thomas Schultz/Felix Schueller)
    art.c: Add From header to forwarded emails. (Thomas Schultz/Felix Schueller)
    art.c: MIME process article after saving it (Thomas Schultz/Felix Schueller)
    art.c: have ESC-p sync line with parent (Thomas Schultz/Felix Schueller)
    art.c: avoid infinite loop on search_article ("");
    post.c: if signature is "", then do not add it.
    mime.c: allow whitepspace to follow `=' continuations (Thomas Schultz/Felix Schueller)
    art.c: update thread scores after art_xpunge (Thomas Schultz)

1. #v+/#v- verbatim marks may be hidden via `hide_verbatim_marks'
   variable.  The article mode function "toggle_verbatim_marks" may be
   used to toggle the state of the marks.
2. Special characters in URLs are passed to browser in hex format.
3. BeOS system name added to version.c (Scot Hacker
   <shacker@birdhouse.org>).
4. line length check skipped in verbatim sections.
5. doc/README.macros: Mention post_file_hook ("Tomasz 'tsca' Sienicki"
   <tsca@mailserver.dk>).
6. src/xover.c: algorithm for extracting msg-id from In-Reply-To
   changed.
7. The thread tree depth maximum size (for the graphic) was increased from
   32 to 256 after reworking how the graphic is stored.
8. doc/slrn.1,slrn.rc: typos fixed (Bill Nottingham
   <notting@redhat.com>).
9. src/startup.c: "blue" foreground colors changed to "lightgray" to
   make the object standout on xterm.
10. The `Date' header may be given a color (Arkadiusz Sochala
    <jojoro@priv2.onet.pl>).
11. macros/color.sl updated (Arkadiusz Sochala)
12. New slrnrc variable: 'set check_new_groups 1'.  If 0, then do not
    check for new groups (Ada Lim <adal@cse.unsw.edu.au>).
13. src/post.c: Allow verbatim sections to exceed 80 character line
    limit with no warning.

Changes since 0.9.6.1
1. NULL ponter dereference fixed.

Changes since 0.9.6.0
    Misc bug fixes:
      misc.c: get_host_from_file sizeof(host)-->sizeof(line)
       (Russ Allbery <rra@stanford.edu>)
      art.c: toggle_headers would sometimes force an article to be
       downloaded.
      startup.c: color of "box" changed from b/b to b/w
      art.c: toggle_wrap with a == NULL caused a SEGV.
      slrn.c: Use setlocale (Klaus Alexander Seistrup)

1. Updates to slrn.rc and slrn.1.
2. DESTDIR added to Makefile.in to facilitate the creation of binary
   distributions (Thomas Schultz <tststs@gmx.de>).
3. Emphasized text may be scanned in quoted and signature portions of
   a message if `emphasized_text_mask' is set accordingly.
4. If process_verbatum_marks is non-zero, #v+ and #v- will be used to
   denote lines of verbatum text, e.g.,
     #v+
        % Some code
	define this ()
	{
	   do_that ();
	}
     #v-
   "set color verbatum" may be used to color such sections of an
   article.
5. New hook: article_mode_startup_hook.  Called in article mode after
   headers have been read, scored, and sorted.
6. /text/ highlighted as using `italicstext' color.

Changes since 0.9.5.7
0.  misc bugs fixed
1.  If the newsrc file indicates that articles in the range 1-N have
    not been read, but the server indicates that those articles are
    nolonger available, then mark that range as read.
2.  slrn incorrectly interpreted an empty body as a server error.  I
    think that most servers reject such messages but a few allow them.
3.  Patches from Sylvan Butler <sylvan@bigfoot.com>: improved tin
    emulation macros; -s added to install to strip slrn; body added
    to slrn_select_prev_group function;
4.  If slrn fails to initialized the terminal, it will exit
    gracefully.  How did this fall through the cracks??
5.  If username contains a space, avoid the space when creating the
    message id.
6.  If `use_flow_control' is non-zero, ^S/^Q processing by the
    terminal driver will be enabled.
7.  sortdate.sl: small tweak to handle articles from the 1980s and
    earlier.
8.  `author_display' and `display_author_realname' removed from
    doc/slrn.rc file.
9.  slrn --version will show all compile-time options.
10. help.c: Post a postponed article reworded.
11. A score file may contain an `include' statement to include other
    score files.  See doc/score.txt for details.  (This feature
    suggested by Sylvain Robitaille <syl@alcor.concordia.ca>).
12. Small 32-vs-64 bit problem fixed where an int was used instead of
    a long in comparing strings.
13. There is nolonger any need to exit article mode to apply a changed
    score file.
14. New intrinsic functions (see docs for more info)

        get_visible_headers (counterpart of set_visible_headers)
	headers_hidden_mode (indicates whether or not some headers may 
	   be hidden)
        _is_article_visible (similar to is_article_visible)
	extract_displayed_article_header (get the header in the
	   displayed article)

15. slrn_is_fqdn rejects names that end in a `.'.
16. `Headers Received' message modified to include group name as
    suggested by W M Brelsford <k2di@bigfoot.com>.
17. If `read_article_hook' exists, then it will be called after an
    article has been read in (Marcin 'Qrczak' Kowalczyk" <qrczak@knm.org.pl>).
18. Different quote levels may be assigned different colors, e.g.,

        color quotes0 "red" "black"
        color quotes1 "green" "black"
	   .
	   .
	color quotes7 "yellow" "black"
    
    A maximum of 8 levels (0->7) are permitted.  Make sure that your
    quote regular expressions match as few characters as possible.
    For example, use ">" and not ">*".
19. Some code in art.c moved to artmisc.c in an effort to clean it up
    for future improvements.
20. The toggle-quotes function maybe used with a prefix-argument to
    hide the nth level of quotes.
21. `toggle_signature' function suggested by Tom Friedetzky
    <friedetz@informatik.tu-muenchen.de>.  Default binding is to "\".
    Also, toggle_pgp_signature added with binding "]" and a color:
    pgpsignature.  The `hide_signature' and `hide_pgpsignature'
    variables may also be used.

22. If compiled with SLRN_HAS_EMPHASIZED_TEXT (default), text such as
    *this* and _that_ will get highlighted using "underlinetext" and 
    "boldtext" colors, resp.  This requires the variable
    `emphasized_text_mode' to be set to a non-zero value: if 1, do not
    write `_' or `*' characters; if 2, write them as spaces; if 3;
    write them as they are. (suggested by Dawid Kuroczko
    <qnex@atlantis.ssw.krakow.pl>).
23. Improved tin emulation macros from Sylvan Butler <sylvan@bigfoot.com>.
24. Patch from Sami Farin <sfarin@ratol.fi> replace `/' characters
    with `_' in decoded filenames.

Changes since 0.9.5.6
1.  Fixed calculation of article window size in non-zoomed mode.
2.  Fixed a bug in parsing of realnames that contain no alphabetical
    characters.
3.  spool.c will check the .minmax file if no articles are present in a 
    spool directory.
4.  New intrinsic added: replace_article.  This allows a macro to
    replace the contents of an article with a specified string.
5.  slrnpull `--debug FILENAME' command line option added.
6.  Some modifications to nntp.c to call the connection-lost-hook as
    early as possible.

Changes since 0.9.5.5
1.  Misc bug-fixes:
    a.   Intrinsic function `locate_header_by_msgid' improperly
         interfaced to the interpreter.
    b.   `make install' was trying to install some old, obsolete, and
         non-existent documentation files.
    c.   Tiny bug fixed in new get_hostname function that manifests itself
         when the name server times-out.
2. With slrnpull it is now possible to specify an alternate log file
   via the `--logfile FILE' command line option.

3.  Philipp Grau <phgrau@zedat.fu-berlin.de> suggested using ` in the
    ascii thread tree instead of \.

4.  Add patch from Thomas Schultz <tststs@gmx.de> to mime-encode the
    real name when posting.  The original patch was due to Joachim
    Wieland <joe@mcknight.swin.de>.

5.  When replying, slrn adds References headers and also takes into
    account the To and Cc lines.  This enables the newsreader to
    better support mailing lists.

6.  If a thread has some unread headers, then it is marked with a `%'
    instead of a `D'. (Andrzej Radecki <radecki@posejdon.wpk.p.lodz.pl>).

7.  When asking for a password/username, a newline character will be
    written first (Philipp Grau <phgrau@cis.fu-berlin.de>).

Changes since 0.9.5.4
0.  Online documentation for slrn intrinsic functions
    (http://space.mit.edu/%7Edavis/doc/slrn-doc.html).  See also
    slrn/doc/slrnfuns.txt.

1.  koi8 character set from Roman Shaposhnick
    <roman@yellow.pdmi.ras.ru>.
2.  message_now intrinsic function added.
3.  If make_from_string_hook exists, it will be called to generate
    `From' header lines, e.g.,
    
          define make_from_string_hook ()
	  {
	     return "My Name <me@my.machine>";
	  }

4.  Small bug in base64 decoding of headers fixed.
5.  art.c:update_ranges rewritten to avoid marking too many articles
    as read when one recontructs a thread via ESC-p.
6.  Added patchs from Hubert Figuiere <Hubert.Figuiere@solsoft.fr> to
    handle some improperly mime encoded headers generated by broken
    software (specifically when ' ' is not converted to '_'), and to
    fix a potential problem with XOVER.
7.  Fixed scrore file problem with groupnames containing `+'.
8.  Body searching macro added to distribution (slrn/macros/search.sl).
9.  article mode function locate_header_by_msgid will not uncollapse
    the thread unless the header is hidden in the fold.
10. New intrinsic function: locate_header_by_msgid.  This takes 2
    arguments: the message-id and a flag that indicates whether or not
    the server should be queried.
11. Semantics of cc_followup variable modified for GNKSA compliance.
12. New option: abort_unmodified_edits.  Many users requested this
    feature.
13. `set hostname' now possible.
14. Patch from Dinko Korunic <kreator@fly.cc.fer.hr> fixing a NULL
    pointer dereference in the Cc code.
15. Failed posting are appended to a file specified by the
    failed_posts_file variable.
16. Patches from Tony Houghton <tonyh@tcp.co.uk>: supersede function
    and an option to strip signatures on followup:
       
       setkey article "supersede" "\e^S"   % ESC Ctrl-S
       set followup_strip_signature 0
17. slrnpull: more verbose messages via mapping of nntp codes to strings

Changes since 0.9.5.3
0. Misc bug fixes, including:
    * Mapping of / to \\ in Win32 and OS/2 editor variables.
    * slrn now honors port information encoded in hostname when
      refreshing newsgroups. 

1. Tweak to generation of NEWGROUPS server command to make it y2k
   compliant.  (In my opinion, the protocol is weak in this area)
2. VMS grplens.c support from Martin P.J. Zinser <m.zinser@gsi.de>.
3. New configuration variable:
     
     set simulate_graphic_chars 0

   Setting this to 1 will cause slrn to use simple ascii characters to 
   represent the thread tree.
4. Patch from Hubert Figuiere <Hubert.Figuiere@solsoft.fr> to handle
   (broken?) knews iso-latin1 mime encoding.
5. New configuration variable: set auto_mark_article_as_read 1
   If zero, reading an article will not cause it to be marked as read.
6. It is now possible to specify what headers to show via the .slrnrc
   line:

       visible_headers "From:,Subject:,Newsgroups:,Followup-To:,Reply-To:"

   or the slang function `set_visible_headers'.  To show no headers,
   use "", to show only X-* headers in addition to From, use "X-,From:".
   (Stephane CHAZELAS <Stephane.CHAZELAS@maisel-gw.enst-bretagne.fr>
   provided code that was used as a basis for this feature).
7. Tweak to group.c:group_sync_group_with_server courtesy of 
   stesch@parsec.rhein-neckar.de (Stefan Scholl).

Changes since 0.9.5.2
0. Misc bug fixes
1. \n --> \r\n mapping required for the print code.
2. install target courtesy of Klaus Franken <kfr@klaus.franken.de>.
3. Mods to update interp.c to use some slang 1.0 features.
4. Amiga patches and MIME bug fix from J�rg Strohmayer <j_s@gmx.de>.
5. Winsock initialization bug-fix from sgibier@mail.dotcom.fr
   (Stephane Gibier).
6. typo involving signals when quitting article mode corrected.
7. Bug fix so that article counts are not modified when a group read is
   aborted.
8. extract_article_header now trims leading whitespace.
9. New intrinsic for macros:
     is_article_window_zoomed ()
   This may be used to define macros that behave differently depending
   upon the zoom state of the article window.
10. New printer code added (vtailor@gte.net).
11. Added slrnpull setgid patch from Sylvain Robitaille
    <syl@alcor.concordia.ca>.  See slrnpull/setgid.txt for more
    information.  By default this is disabled in slrnfeat.h.
12. User-Agent header added.
13. New hook: article_mode_quit_hook
14. Added VMS patches for sltcp.c from Martin P.J. Zinser <m.zinser@gsi.de>.

Changes since 0.9.5.1
1. ibm850 character set made the default on Win32 and OS/2 systems.
2. New hook: post_file_hook
3. new header format descriptor: %g.  This may be used to specify the
   column the next write to the screen should take place.
   Specifically, `%Xg' indicates that the cursor should be moved to
   column X (numbered from 0).  If X is negative, the cursor will be
   moved X columns from the right edge of the window.  To
   understand this, compare:

       header_display_format 0 "%F%-5S%-5l:%t%35s %f"
   to
       header_display_format 0 "%F%-5S%-5l:%t%35s%-24g%f"

   in the presence of an open thread tree.  The latter form indicates
   that the `From' header (%f) should be written out 24 columns from
   the right edge of the window.
4. Andreas M. Kirchwitz <amk@krell.snafu.de> suggested that scores
   with a value of zero be printed on the header as a blank to keep
   the display less busy.  I took his advice.
5. doc/w32keys.txt and doc/os2keys.txt merged into one file:
   pc-keys.txt.
6. SLang_VMessage_Hook was set to slrn_va_message.
7.  --no-post option added to slrnpull.
8. New macros files: 
  
      slrn/macros/color.sl
      slrn/macros/posthook.sl

   The latter file illustrates how to use the `post_file_hook' to
   manipulate a message before posting it.
9. Fixed a bug in which the references appeared as blank when
   following up to articles whose message id exceeded the screen with
   and the headers were wrapped.
   
10. New function: print_article.  This function may be customized via
    the `printer_name' setting.  If `printer_name' is not set, then
    the default printer will be selected.  Otherwise, the meaning of
    this variable will depend upon the OS:
    
        WIN32  :  The name of the print queue.  The default is to use
	          the win.ini setting.
	UNIX   :  The name of a process that represents the printer, e.g.,
	
	            set printer_name "my_print_filter | lpr -Pmy_printer"

                  The default is to use "lpr -P$PRINTER".

        OS/2, VMS: ??? needs implemented

    The key binding may be set via, e.g.,
    
        setkey article "print_article"  "y"

    (`y' is the default binding)

    Note: This function could have been defined via a macro for Unix systems,
    but for e.g., windows 95 this was not possible and required a
    built-in solution.

11. References header truncated to 998 characters to satisfy the GNKSA
    2.x requirement.  The real implication of this is that no header
    should be wrapped, nor should the total length of a header be more
    than 998 characters long since there are broken servers that
    cannot handle long lines nor can handle a wrapped header.  The
    previous version of slrn would wrap the headers according to the
    NNTP protocol standards but the GNKSA forbids that.  Sigh.

Changes since 0.9.5.0
0. Oops.  score.c contained a break statement where it should not have.

Changes since 0.9.4.6
0. Misc bug fixes, e.g., the [~group, group] score bug. A silly
   uudecode bug was also fixed involving multi-part encoded files.
1. Watcom CC specific typo in src/slrnconf.h corrected (Bill McCarthy
   <WJMc@pobox.com>).
2. version.o add to Makefile.OS2 (Bjoern Frantzen)
3. Header display format is now customizable.  Up to 10 header formats
   are available and ESC-a will switch among them.  By default there
   are 4 pre-defined formats:

        "%F%-5S%G%-5l:[%12r]%t%s"
	"%F%G%-5l:[%12r]%t%s"
	"%F%-5l:%t%s"
	"%F%-5S%-5l:%t%50s %r"
   
   The generic format specifier begins with the `%' character and must
   be of the form:

        %[-][w]x
	
   where the brackets indicate optional items.  Here, w is a width
   specifier consisting of one or more digits.  If the minus sign (-)
   is present, the item will be right justified, otherwise it will be
   left justified.  The item specifier (x) is required and, depending
   on it value, has the following meaning:
   
         s : subject
	 S : score
	 r : author real name
	 f : from header
	 G : Group lens score
	 l : Number of lines
	 n : server number
	 d : date
	 t : thread tree
	 F : flags (read/unread, `*' and `#' tags, header number)
	 % : percent character
	 
  
   Thus, "%F%-5l:%t%s" indicates that the header window will contain
   the, in order: the flags, the number of lines the article contains
   right justified in a 5 character field, a `:', the tree, and the
   subject.
   
   There are two methods of setting these formats.  The first way is
   via a line in  the .slrnrc file using the header_display_format
   command.  This command takes two arguments: an integer that
   indicates the format to set, and a string that specifies the
   format, e.g, 

        header_display_format 0 "%F%-5S%G%-5l:[%12r]%t%s"
  
   sets the 0th format.  There are 10 formats available and the ESC-a
   command will switch among them.

   The second method is via the S-Lang macro language, e.g.,
   
       set_header_display_format (0, "%F%-5S%G%-5l:[%12r]%t%s");
       
   Finally, ESC-a may be used with a prefix argument to select a
   particular format, e.g., ESC-0 ESC-a will select the 0th format.

4. Added patches from http://home3.inet.tele.dk/byrial/slrn:

     resize patch
     prefix_arg patch ==> two new slrn macro intrinsics:
         get_prefix_arg
	 reset_prefix_arg
     msgid patch ==> new slrn.rc option:
	    set generate_message_id 1

5.  If you are using slang 1.2.x, then you can change the `cursor'
    from "->" to a bar across the display via:
       
       set display_cursor_bar 1

6.  Now score files can contains slang preprocessing constructs (patch
    from Jan Hlavacek <lahvak@math.ohio-state.edu>).

7.  Header window will now scroll horizontally if the article window
    is not visible.  Otherwise, the article window will be the one
    that horizontally scrolls.
    
8.  New article mode keybinding:

         setkey article "zoom_article_window"  "z"
	 
    This will cause the header window to disappear with the article
    window zoomed to full screen (minus the top/bottom lines of the
    display).  If the window is already zoomed, it will `un-zoom'.

    
Changes since 0.9.4.5
1. uudecode bug fixed.
2. VMS specific NETLIB update of clientlib.c.
3. Explicitly added the GNU copyright to source code files.
4. Updated to use slang 1.0.3.  For Win32 users this means you can
   use bright background colors and the mouse.
5. For CYGWIN32 and MINGW32 compilers, use src/Makefile.g32.  Do NOT
   use the Unix configure script because WIN32 is NOT Unix.  (Note:
   gcc in the CYGWIN32 distribution (b18) kept getting signal 33, so I
   could not compile slrn with it.  However, I had no problems with
   MINGW32.)
6. Autoconf now checks for socket.h (Marius Groeger <mag@sysgo.de>).

Changes since 0.9.4.4
1. Bug fix related to  `system' when called from a slang macro.

Changes since 0.9.4.3
0. Many, many changes to the slang interpreter.  Version 1.0 of slang is now
   required.  Some changes may affect pre-existing macros.  See
   the slang documentation for more information (in particular, see
   slang/UPGRADE.txt for more information about upgrading your slang
   macros).
   
   There are some new intrinsics to help isolate problems by
   re-routing slang traceback messages to a log file:
   
      open_log_file (FILENAME);
      close_log_file ();
      log_message ("My Message\n");
      
   You also need to set `_traceback = 1;'.

1. Small wrapping changes that permit header lines to be properly
   wrapped.
2. Integrated WIN32 patches.  Thanks Chin Huang <cthuang@vex.net>!!!
3. Included reject-long-lines patch from Byrial Jensen
   <byrial@post3.tele.dk>.  Add
   
      set reject_long_lines 2
   
   to be given the opportunity to post an article with long lines.

4. If slrnpull fails, it returns an error code to indicate the failure:

       1    Unspecified reason
       2    Bad usage
       3    Failed to connect
       4    Connection Lost
       5    Signaled
       10   Malloc Failure
       20   File I/O

5. Added Andy Harper's do_netlib_read routine for VMS.  Thanks Andy!

Changes since 0.9.4.2

0. Bug fixes, tiny documentation corrections.  In particular, one of the
   bug fixes concerns a somewhat nasty bug that, although unnoticed
   until 0.9.4.1, appears to have been around for a while.

Changes since 0.9.4.1
1. Add charset tables from Mark Nowiasz <buckaroo@blackbox.free.de>.
   I also changed `slrn --version' to show the supported character sets.
2. New customizable color objects:

      box --- This objects represents the are of the screen when a box
              pops up.
      frame - The border of the box
      selection
              The currently selected text in the selection box

3. New hooks for macro customization

         reply_hook
	 forward_hook
	 followup_hook   (see macros/xcomment.sl for example)
	 post_hook
	 post_filter_hook

   The post_filter_hook allows you to run the article to be posted
   through something such as ispell, a shell script, etc...  The file
   to be posted is passed as a parameter to this hook.  See
   macros/ispell.sl for an example.

4. New intrinsic macro functions:
       
         get_response
	 set_color
	 select_list_box
	 get_grouplens_score
	 set_input_chars

5. OS/2 patches from Bjoern Frantzen for OS/2 FAT file systems.
6. Support for X-Mail-Copies-To added.
7. cc_followup_string now expands %n, etc...

Changes since 0.9.4.0
0. Small (nothing serious) bug fixes
1. Typo prevented slrn to compile on Non-POSIX systems corrected.
2. slrnpull ported to NeXT (flight@mathi.uni-heidelberg.de)
3. Olly's mail-copies-to patch implemented
4. A new interface to ``browse-url''.  This is not the clickable
   interface but it does have the feature that it works on ordinary
   terminals.
5. I added a ``postpone'' interface.  To use this, set the variable
     
     set postpone_directory "whatever"

   to specify where articles are to be saved.  Make sure the directory
   exists!  To post a postponed article, press `ESC P'.  Use, e.g.,

     setkey group "post_postponed" "KEY_SEQUENCE"
     
   to rebind it.
6. I integrated the NeXT character set patch from Daniel G. Kluge 
   <daniel@hallus.swill.org>.
7. New color object: response_char.  This is used to set the color for
   response characters in prompts such as:
     
         Do you really want to quit? Yes, No

   Here the response characters are `Y' and `N'.
   
    
Changes since 0.9.3.2
0. Some bug fixes as well as slrnpull bug fixes.  Also, the libc system
   function has been replaced.  The fact is that system is broken on
   Linux.

1. Small change to pathname manipulation to avoid problems with \\ and
   / conflicts on OS/2.
2. To additions from Olly Betts <olly@muscat.co.uk> that affect spool
   users:
   
       set spool_check_up_on_nov 1
       
   will cause slrn to check to make sure that an article that is
   referred to by the overview file actually exists.  The default is 0.
   See the slrnfeat.h variable SLRN_HAS_FAKE_REFS for the other feature.

3. New .slrnrc function:

     include "filename"
     
   For example, your .slrnrc file can load other files via:
   
     include ".slrn/colors"
     include ".slrn/keybindings"
     
4. Two new .slrnrc variables:

     set post_object    "inews"  % or "nntp"
     set server_object  "spool"  % or "nntp"
     
   This means that if you compiled slrn to default to nntp, you
   nolonger need to run slrn via
   
      slrn --spool
      
   to read from a news spool.
   
5. macro function extract_article_header will not fetch the article
   from the server if the requested header is already available.

6. Now possible to save replies to a file:

     set save_replies "News/Replies"
     
   and you can specify the string to be used in the reply:
   
     set reply_string "In %n, you wrote:"

7. Small improvments such as re-wrapping upon window resizing and the
   message-id is also saved in the save_posts file.
   
8. New intrinsic: get_next_art_pgdn_action.  See README.macros for
   more information.

9. `username whatever' is not obsolete.  Use `set username WHATEVER'
   instead.  This change allows username to be changed via a macro.

10. Grouplens support changed to match current grouplens protocol.

11. Wrapping now takes place on word boundaries.
    frank_thieme@l2.maus.de provided a similar patch.
    
12. VMS patches by Ian.Miller@softel.co.uk.

Changes since 0.9.3.1
0. Bug fix involving non-XOVER headers.  This alone caused me to
   discontinue 0.9.3.1.
1. Misc bug fixes, char set tweaking
2. New variable for better compliance with standards:
   
      set reject_long_lines 1

   If non-zero, slrn will reject posting articles with non-quoted
   lines whose length exceeds 80 characters.

3. New editor options:
     
      set post_editor_command "my_posting_editor"
      set mail_editor_command "my_mailing_editor"
      set score_editor_command "my_score_editor"

   These may be used to override the more generic `editor_command'.
   For example, I use:
   
       set score_editor_command "jed %s -g %d -f score_arrange_score"

4. Patches for display code provided by itz@rahul.net (Ian T Zimmerman).
   There is a new .slrnrc variable:

      set display_author_realname 1
      
   It controls whether or not the real name should be displayed.

5. Spoiler patches from Olly Betts with new slrnrc variable:

   % set to 0 to keep the display still, and just reveal the spoiler
   % set to 1 to start a new page when spoiler is revealed
   % set to 2 to keep the display still, and reveal ALL spoilers
   % set to 3 to start new page and reveal ALL spoilers
   set spoiler_display_mode 1

Changes since 0.9.2.1
-13. Small patches from Uichi Katsuta <katsuta@lang2.bs1.fc.nec.co.jp>,
     and uudeview patches from Mark McWhorter <morak@ziplink.net>.
-12. Re: now added to subject header of reply.
-11. Fixed a bug that manifested itself when scoring on non-XOver
     headers.

-10. If a posted article is cc'd, the message-id used for the article
     will also be used in the email.
-9. `slrn --nntp --debug FILE' may be used to write out the dialog
    between slrn and the nntpserver to FILE.  This is a debugging aid.

-8. Sort by date added:
       set sorting_method 8    % most recent first
       set sorting_method 9    % thread with most recent first
       set sorting_method 10   % most recent last
       set sorting_method 11   % thread with most recent last

-7. If slrn is run in NNTP mode, the preprocessor symbol NNTP will be
    defined while processing the .slrnrc file.  If it is run in spool
    mode, SPOOL will be defined.

-6. Patches from Justus Pendleton <justus@ryoohki.res.cmu.edu> enabling
    slrn to work with uudeview.

-5. More OS/2 patches from Bjoern Frantzen enabling slrn to work with
    other mailers.

-4. New slrnrc variable: set metamail_command "metamail"

-3. Workaround for XHDR bug in DNEWS

-2. slrn/doc/os2keys.txt describes OS/2 key sequences.  They differ
    from the standard ANSI escape sequences.

-1.  Distribution reorganized.  Autoconf config files are in autoconf
    directory and documentation in doc dir.
    
0.  Offline reading possible by using the new `slrnpull' program.  See
    the slrnpull documentation for details.  `make slrnpull' should be
    sufficient to compile it.

1.  Small CC: problem under OS/2 fixed by Marko Teittinen
    (marko@tekamah.com). 

3.  New slrn.rc variable to control scrolling behavior: 

       set scroll_by_page 1
       
    to have slrn automatically perform a pagedown/up at window 
    boundaries.  This requires slang 0.99-38 otherwise this does
    nothing.
    
4.  New .slrnrc options:

      % Start new thread if subject changes
      set new_subject_breaks_threads  0
      
5.  New charcter set mapping code.  The idea is to translate incoming
    and outgoing articles from isolatin to the ``native'' character
    set.  For example, under OS/2, the native character set is assumed
    to be "ibm850".  The character set may be specified by the slrnrc
    line:
    
        set charset "ibm850"      % default for OS/2
        set charset "isolatin"    % default for Unix and VMS
	
    Currently only ibm850 and isolatin are supported.  I suspect a
    future version of slrn will be more precise in the specification
    of isolatin and support more chatacter sets.  But the current idea
    is that there is one ``usenet'' character set called ``isolatin''
    and selecting isolatin as the host character set will essentually
    turn of the mapping since isolatin --> isolatin is just the
    identity map.
    
    I am grateful to Bjoern Frantzen, bjoff@bgnett.no for the original
    code as well as other OS/2 fixes.

6.  Small tweak to MIME encoding.

Changes since 0.9.2.0
0.  Bug causing slrn to hang on VMS fixed.  The bug was tracked down
    with the help of Andrew Brennan <brennan@crashprone.allegheny.edu>.

1.  man page and slrn.rc updated to reflect the fact that
    `art_header_bob' and `art_header_eob' functions were renamed to
    simply `header_bob' and `header_eob', resp.  Also, the functions
    `goto_beginning' and `goto_end' are being phased out in favor of
    `art_bob' and `art_eob', resp.
2.  Fixed a compilation problem on NeXT.  mching@inow.com
    submitted OS/2 makefile and config patches for EMX compiler, and
    cardio@orsola.med.unibo.it (cardio) submitted patches for Ultrix.
    
3.  The default for min_high_score was incorrectly set to 0.  It has
    been changed to 1.
4.  New intrinsics for macros:
	 get_header_score
	 set_header_score
5.  New feature: SLRN_HAS_END_OF_THREAD
    See src/slrnfeat.h for more information.  This feature is enabled
    by default.  In the current implementation, it is a compile-time
    option-- there is nothing to disable it at run-time.

6.  Some of the documentation updated.

Changes since 0.9.1.0
0.  The macro functions read_mini and read_mini_no_echo now take three
    arguments.  See README.macros for more information.  This change
    was necessary because the ``read input from user'' routines are
    now more flexible and support recall of previously entered text.

1.  Renamed `group_mode_hook' to `group_mode_startup_hook'.  Added a new
    hook `group_mode_hook' that is called every time group mode is
    re-entered.
2.  Oops.  A horrible bug that manifested itself when the quote string
    was not specified via `set quote_string' has been fixed.
3.  `set use_color' added so that `set use_color 0' may be used to
    turn off color support.
4.  The name of a header and its value may be be given a different
    colors using, e.g.,
    
        color headers "green" "white"
        color header_name "red" "white"
	
    This means that the header 'From: davis@space.mit.edu' will appear
    with 'From:' in red/white and the rest will appear as green/white.
5.  It is now possible to customize the keybindings of the command
    prompt.  The defaults are:
    
setkey readline bol		 "^A"		% Beginning of line
setkey readline eol		 "^E"		% End of line
setkey readline right		 "\e[C"		% Move right
setkey readline left		 "\e[D"		% Move left
setkey readline bdel		 "^H"		% Delete backward
setkey readline bdel		 "^?"		% Delete Backward
setkey readline del		 "^D"		% Delete Foreword
setkey readline deleol		 "^K"		% Delete to End of line
setkey readline trim		 "\e/"		% Trim whitespace
setkey readline quoted_insert	 "^Q"		% Quoted insert

    The name of the keymap is `readline'.

6.  New intrinsic functions for macros include:

      thread_size              % Returns number of headers in thread
      collapse_thread          % Collapse current thread
      uncollapse_thread        % Uncollapse current thread
      is_thread_collapsed      % Returns non-zero if current thread is collapsed
      get_header_tag_number   
      article_as_string        % Returns whole article as a string
      tt_send                  % Send argument to terminal
      header_next_unread       % goto next unread header
      input_pending            % Wait for input or timeout
      getkey                   % read keyboard character
      ungetkey                 % push back keyboard character
      set_input_string         % provide answer to prompt
      get_yes_no_cancel        % get response from user
      
    See README.macros for more information.

7.  New .slrnrc variable macro_directory controls where macro file are
    loaded from.  For example, 
    
        set macro_directory "News/macros,/usr/local/lib/slrn/macros"
	interpret "util.sl"
	interpret "tin.sl"
	
    will search for the macro files in $HOME/News/macros,
    /usr/local/lib/slrn/macros, and, as a last resort, in the home
    directory ($HOME).

8.  Now possible to add custom headers to followups and replies.  The
    actual headers are controlled by new slrn.rc variables:
    
         set reply_custom_headers "X-Bla: Bla bla"
         set followup_custom_headers "X-Bla: Bla bla"
	 
    The string assigned to these variables may contain the format
    specifiers of the 'followup' variable.  This idea was presented to
    me by John Goerzen <jgoerzen@complete.org>.
    
9.  Several people have sent me patches for customization of high/low
    score thresholds.  The following .slrnrc variables are now available:
    
          set min_high_score 1
	  set max_low_score 0
	  set kill_score -9999

    One might want to set these on a group by group basis.  This is
    possible via a macro.  The best way to do this is to put the
    appropriate statements in a 'pre_article_mode_hook' described below.
    
10. New hooks for macros:

        resize_screen_hook : called when screen size changes
	pre_article_mode_hook: called before grabbing headers from server
	  in article mode.


    
Changes since 0.9.0.0
-1. features.h changed to slrnfeat.h to avoid GNU C problems.

0.  Misc bug-fixes, e.g., xgtitle operational again.  In addition, I
    rewrote the lowlevel tcp/ip code so that slrn should now be more
    responsive to Ctrl-G abortion and suspension.

1.  The following .slrnrc commands are obsolete and will not be
    supported for too much longer:

     "quote_string"
     "realname"
     "replyto"
     "organization"
     "followup"
     "cc_followup_string"
     "decode_directory"
     "editor_command"

    These are now `set' type variables.  That is, the new usage is:
    
      set quote_string ">"
      
    etc...

2.  If a piece of authentication information is supplied as an empty
    string as in
    
         nnrpaccess "news.mit.edu"  "davis"  ""
	 
    slrn will prompt for the information.  

3.  It is now possible to specify the ``help'' string that is
    displayed at the bottom of the display via the variables:

       set art_help_line "bla bla"
       set header_help_line "more bla bla"
       set group_help_line "and even more"
       
4.  Scrolling improvements.
5.  It is now possible to use, e.g., 

        setkey article "digit_arg"  "\eOP1"
        setkey group   "digit_arg"  "\eOP1"
       
    to bind a key to the prefix argument function.
6.  Group search also search group description
7.  `set use_tilde 0' may be used to turn off tilde feature.
8.  New interpreter intrinsics:

      get_group_flags
      set_group_flags
      is_article_visible
      is_group_mode
      extract_article_header
      set_article_window_size
      read_mini_no_echo
      save_current_article
      select_group
      group_search
      group_down_n
      group_up_n
      group_unread


Changes since 0.8.8.4
0.  Tiny problem with server timeout fixed.
1.  GroupLens support added.  See README.GroupLens

2.  Sort by score implemented.  See src/features.h to disable it.  To
    sort by score, add:
    
        set sorting_method 5
	set display_score 1
	
    to your .slrnrc file.  Set display_score to 0 to disable
    displaying the score value.  If the score value is displayed, the
    number of lines in the article will not be displayed.
    Thanks go to Olly Betts <olly@mantis.co.uk> for this feature.

3.  Score file lines such as:

       [~rec.crafts.*, rec.hobbies.*]
       
    are now supported.  The `~' character means that the set of scores
    implied by this line applies to any group EXCEPT rec.crafts.* and
    rec.hobbies.*.  That is, the `~' character may be used as a NOT
    operator in this context.
    
4.  New slrnrc configuration option:

      set custom_headers "X-Whatever: bla\nX-Misc: bla bla"

5.  New group mode function: move_group.  This will allow you to use the
    up/down arrow keys to move a group to a different location.  It
    has a default binding of `m'.

6.  Added Felix von Leitner's cross posting and tilde patches.  The
    cross posting patch is enabled via the SLRN_HAS_MSGID_CACHE feature.
    Similarly, the tilde patch is available via SLRN_HAS_TILDE_FEATURE.
    Thanks Felix.

7.  S-Lang interpreter available.  Set SLRN_HAS_SLANG in features.h to
    enable it.  See also README.slang and slrn.sl for more
    information.  The 0.9 series of slrn releases will feature more
    and more interpreter capabilities.

Changes since 0.8.8.3
0.  Bug fix release and patches to get it to compile under VMS again.

Changes since 0.8.8.2
0.  Misc bug fixes
1.  Support for INEWS and LOCAL NEWS SPOOL.  The INEWS patches were
    originally provided by Erik Manders <erik@il.ft.hse.nl>.
    Olly Betts <olly@mantis.co.uk> is responsible for the local spool support.
    Edit src/features.h to enable these options.
    
    The following slrn.rc variables are are related to the spool support:
    
	 set spool_inn_root "/export/opt/inn"
	 set spool_root "/export/news"
	 set spool_nov_root "/export/news"
	 % -- The following filenames are relative to spool_root
	 set spool_nov_file ".overview"
	 set spool_active_file "data/active"
	 set spool_activetimes_file "data/active.times"
	 set spool_newsgroups_file "data/newsgroups"

    Of course default values for these files may be hard-coded.  See
    src/features.h.
    
    In addition, new command line arguments have been added:
    
          --inews ==> use inews for posting
	  --nntp  ==> use nntp
	  --spool ==> use local news spool
	  --version
	  
2.  Score files now allow more than one newsgroup pattern to be specified,
    e.g., 
    
        [sci.*, comp.*]
	   .
	   .

Changes since 0.8.8.1
1.  base 64 decoding support
2.  On VMS, the personal slrn configuration file has been renamed to slrn.rc.
    See features.h for changing this.  Also, many thanks to Andy Harper
    (A.HARPER@kcl.ac.uk) for work on DCL make files.
3.  Small bug fixes

Changes since 0.8.8.0

0.  Bug fixes (hangup, connection aborts, article/header percentage counts,
    etc..)

1.  Oops.  Forgot to provide a way to turn off video attributes.  Now you can
    use `none', e.g.,
    
        mono headers none
	
2.  New variable for group descriptions: group_dsc_start_column

        set group_dsc_start_column 40
	
    causes descriptions to start in column 40.
3.  Now possible to color descriptions via:

        color description blue white
	mono description bold 

4.  ^G abort of header retrieval.
5.  New variable:

        set lines_per_update 50
	
    sets the granularity of slrn's percentage meters.

6.  Spoiler support provided by Olly Betts (olly@mantis.co.uk).  The .slrnrc
    variable `spoiler_char' may be used to specify the character used to
    hide the text.  The default is '*':
    
        set spoiler_char '*'

7.  .slrnrc `ignore_quotes' specifier can take up to 5 regular expression
    patterns, e.g.,
    
        ignore_quotes  "^ *[:=|+>]"    "^ *[A-Za-z]>"
	
    specifies two patterns.

8.  Certain compiler symbols such as NO_DECODE have been renamed and moved to
    the new file: features.h
Changes since 0.8.7
0.  Misc bug fixes

1.  Use of the XGTITLE command is turned off by default.  Use the variable
    `use_xgtitle' to turn it on.

2.  New configuration settings for your .slrnrc file

       set Xbrowser "netscape %s &"
       set non_Xbrowser "lynx %s"

    Press the `U' key (browse_url) for slrn to search for a URL and call the
    appropriate browser.  Thanks go to Justus Pendleton
    <justus@ryoohki.res.cmu.edu> for the patches.
    
3.  When creating a score from within article mode, you will be prompted for
    whether or not the score is local or global.  This patch was the idea of 
    Colin Perkins <csp@ohm.york.ac.uk>.

4.  Use `set query_reconnect 0' in your .slrnrc file to turn off
    reconnection confirmation.

5.  `ESC 1 *' now removes all `*' marks.
6.  If `cc_followup' is -1, slrn will prompt whether or not to cc the
    followup message.
7.  If linked against slang version 0.99-30 or later, it is possible to
    customize the video attributes on mono-chrome terminals, e.g.,
    
         mono cursor reverse blink
	 mono headers bold
	 mono author bold blink
	   .
	   .

    The above lines will cause the author part of the header to blink in
    bold, the cursor will blink in reverse video, etc...

8.  New variable to set: write_newsrc_flags
    
         % If 0, save all groups when writing newsrc file
	 % if 1, do not save any unsubscribed groups
	 % if 2, do not save any unread-unsubscribed groups
	 set write_newsrc_flags 0

9.  Better checking of articles before posting.  Now, a new screen will
    appear with error messages if the article appears badly formatted.

10. Modified scrolling behavior when the article window is open.  Now the
    next and previous headers are always visible.

Changes since 0.8.6
0.  Under Unix there is a new `configure' script for building slrn.
1.  ``Header Numbers'' add for more efficient article selection.  This is
    enabled by default and may be disabled by adding
    
        set use_header_numbers 0
	
    in your .slrnrc file.  In addition, the color of these numbers may be
    controlled via something like
    
        color header_number "green" "white"
	
    The numbers appear at the left margin of the header window.  To goto a
    particular numbered header, e.g., 12, simply press `1' then `2' followed
    by RETURN, SPACE, etc...
2.  The function ``xpunge'' has been added for article mode.  The default
    binding of this function is to the `x' key.  It removes already read
    articles from the list.
3.  If slrn does not read the active file, then it will now attempt to use
    the `xgtitle' command to query the server for newsgroups matching a
    pattern.  (This affects the `L' key in group-mode).
Changes since 0.8.5
-1. New distribution structure
0.  Thanks to Jay Maynard (jmaynard@nwpros.com), slrn now runs under OS/2.  
    Since this is the first OS/2 version, it should be regarded as ALPHA.
1.  New .slrnrc configuration variable: prompt_next_group.  If 0, slrn will
    not provide the opportunity to use up/down arrow keys to select the next
    group.  Instead, pressing a key that performs a goto next group action,
    e.g., the Next-Group mouse button, will simply put you in the headers of
    the next group in the group list.
2.  When the mouse is clicked on a button at the top of the display, the
    button will ``flash''.  The color that is used to simulate the flash may
    be specified by using, e.g., 
    
         set color menu_press blue yellow
	 
    in your .slrnrc file.
3.  New groups are displayed with an `N' in the flags column.
4.  `ESC 1 L' will hide unsubscribed groups  (`L' with a prefix argument).
5.  The `?' key may be used in help mode to re-start help.
6.  OS/2 port thanks to Jay Maynard <jmaynard@admin5.hsc.uth.tmc.edu>.
    Note: this port is still considered to be in its alpha stage.
7.  slrn will nolonger run unless the user has a username and a FQDN.
8.  New article mode functions (Thanks to Alain.Knaff@imag.fr (Alain Knaff)):
      fast_quit                       % quit news reader from article mode
      skip_to_prev_group              %
    None of these function have default bindings.
9.  When replying, slrn will warn the user if the email address appears
    invalid.
10. New configuration variable:

       set use_metamail 0
       
    If non-zero, metamail will be called to process MIME articles that 
    slrn does not support.

Changes since 0.8.4
1.  Small bug fixes (nothing major).
2.  Cosmetic change where one can more easily see the progress of the
    download of tagged articles.  In addition the server name is printed on
    the top status line.
3.  The `*' (toggle_header_tag) function has been changed.  If used on a
    collapsed thread, it will tag the entire thread.  In addition, after
    pressing `*', the pointer moves down one header.
4.  -m command line option forces XTerm mouse reporting to be turned on.
5.  When the mouse is enabled, ``buttons'' also appear on the top status
    line.  Simply click on them with the mouse.  Perhaps in the future,
    these buttons will become menus.

Changes since 0.8.3
0.  The slrn makefile has changed.  Now it asks for a location to put slrn
    object files and it asks for the location of the slang library file.
    The nice thing about this is that it is easy to compile slrn under
    multiple architectures.  The down side is that some makes will not work
    with the Makefile.  If your make fails, use Makefile.old.  Since I do
    not plan to continue support for Makefile.old, please look into
    installing GNUmake.
1.  .newsrc file is now created in mode where only user has read permission
    to it.
2.  If a prefix argument is given to the subscribe/unsubscribe commands, the
    user will be prompted for a group pattern which will be used, e.g., 
    pressing `ESC 1 s' and entering `*linux*' at the prompt will result in
    a subscription to all newsgroups of form `*linux*'.
3.  If a prefix argument is given to the `K' (create_score) function, the
    editor will be called to edit the score file-- no questions asked.
4.  New .slrnrc variable: query_read_group_cutoff
    Whenever slrn enters a group with `query_read_group_cutoff' or more
    unread articles in it, it will prompt for how many to read.  The default
    is 100.  If set to 0 or less than 0, slrn will not prompt at all, i.e.,
    
        set query_read_group_cutoff 0

5.  It is now possible to have articles automatically wrapped by adding 4 to
    the wrap flags value.  See the slrn.rc file.
6.  VMS changes: some patches added, ``makefiles'' fixed

Changes since 0.8.2
1.  If slrn cannot find a fully qualified domain name, it will not run.
    This name can be specified in the .slrnrc file so there is no excuse for
    not having one.  There are too many articles already floating around
    usenet with bad hostnames and I do not want slrn to contribute to this.
2.  Bug in authorization fixed
3.  Oops.  If one were editing a file from within slrn and the window was
    resized, slrn would re-draw the window!  That is fixed.
4.  article wrapping added-- press `w' in article mode to wrap/unwrap.  The
    variable `wrap_flags' may be used to control whether or not headers or
    quoted material is wrapped, e.g.,
    
        set wrap_flags 1    % Wrap headers
	set wrap_flags 2    % Wrap quoted material
	set wrap_flags 3    % Wrap headers and quoted material
	
    The default is to wrap everything (3).

5.  slrn may be started as in `slrn -h server.name:XXX' where XXX in an
    integer that represents a port number. 

6.  `set sendmail_command' may be used in the .slrnrc file to specify an
    alternative mail program.  The default is: 
    
          "/usr/lib/sendmail -oi -t -oem -odb"
	  
    See config.h for selecting a different default.
       
7.  ESC u in group mode may be used to Un-Catchup on a group.

Changes since 0.8.1
1.  Misc bug fixes:
      MIME re-worked
      some VMS problems ironed out
      VMS: callable mail support

Changes since 0.8.0
1.  The `toggle_sort' function bound to `ESC s' in article mode has been
    modifed.  Now, it prompts for the sorting method.
2.  New variables for the .slrnrc file:

      % If 0, do not sort.  If 1, perform threading.  If 2, sort by subject
      % If 3, thread then sort result by subject
      set sorting_method 3

      % If non-zero, threads will be uncollapsed when a group is entered
      set uncollapse_threads 0
      
    Note: methods 2 and 3 were not available in previous versions of slrn.
    This is why the `toggle_sort' function needed to be modified.
3.  It is now possible to have all posted articles saved in a file.  The
    file is specified in the .slrnrc with a line like:

        set save_posts "News/My_Posts"

4.  slrn now generates its own message id provided that it can find the
    machines fully qualified domain name (FQDN).  The reason for this is
    that one can easily more efficiently score follow-ups to the user's
    posted articles.  For example, if the FQDN is `machine.my.domain' and
    the user's name is `user' then simply put:
    
       [*]
       Score: 100      (or whatever)
       References: user@machine.my.domain>
       
    in the score file.  (The first part of the generated message-id is
    composed of a base 32 representation of the current time and process-id).
5.  Default values available at all yes/no prompts.

6.  Saving an article is slightly different but simpler.  The new bindings
    are: 
    
	`:'  uudecode file
        `o'  save a file-- no decoding
	
    Use "decode" and "save_article" to re-bind these.
    See the FAQ for more detailed help on uudecoding articles.
    
7.  New variable: 'save_directory' may be used to specify where files are
    saved.  The default is 'News'.  Use something in your .slrnrc file:
    
        set save_directory "News"
	
8.  There is now an option for slrn to read the active file upon startup.
    Using this option may result in faster startup times.  Using the active
    file also has the advantage that the `L' key will list all groups
    available at the server.  
    
    There are two ways of enabling this option:
    
        a.  Startup slrn with the -a switch:  slrn -a
	b.  Add the line:
	  
	         set read_active 1
	   
	    to your .slrnrc file.

9.  The `Expires' date may be given in one of the following formats:

       MM/DD/YYYY
       DD-MM-YYYY
       
    Previous versions only allowed the first format.

10.  MIME support add by Michael Elkins <elkins@aero.org>.
    To enable MIME support, add:
    
        set use_mime 1
	
    to your .slrnrc file.  In addition, you may select a character set by
    adding something like:
    
        set mime_charset "iso-8859-1"

    to your .slrnrc file.
    
    The MIME code is still in the testing phase but it appears to be ok.
    
Changes since 0.7.9.0
1.  If Cc: header appears in a followup, the message will also be email to 
    the addresses listed on the line.  The address `poster' will be
    considered as an alias for the original poster.  This header will
    automatically be generated if the line:
    
         set cc_followup 1
       
    appears in the .slrnrc file.
    By default, the body of an email message generated this way will be
    prefixed by the string:
    
      [This message has also been posted.]
      
    To change it, use a line of the form:
      
      cc_followup_string "[Note: Even though I posted this, here is a copy.]"
      
    in your .slrnrc file.
    
2.  Broken threads are now collaped together.
3.  In replies, the In-Reply-To header is generated with the message-id of
    the original post.
4.  New variable for .slrnrc: `set confirm_actions 1'.  If set to 1 (default
    is 0), confirmation on quitting, followup, reply, etc... is not performed.
    
5.  Arbitrary header keywords are now allowed for Score files.  Keep in mind
    that a score that is based on such keywords take ALOT longer to process.
    The command line option -k0 will suppress expensive scores.  

    In addition, the K key (bound to `toggle_scoring') may be used at the
    group level to set the scoring mode.

6.  Enhanced score file syntax:

       a.  If Score::  (TWO colons) is used to denote a score, all
           expressions that it covers will be considered as OR type
	   expressions.  That is,
	  
	       Score:: 20
	        Subject: larry
	        Subject: curly
	   
          is (almost) equivalent to
	  
	       Score: 20
	        Subject: larry
	       Score: 20
	        Subject: curly
          
	  Homework: What do I mean by ``almost''?
	  Note: Scores with only one colon are AND scores.
	  
      b.  If a score value is prefixed with the `=' sign, e.g., Score: =30
          Then scoring on the article is regarded as finished and a value of
	  30 will be assigned to the article.

    See score.txt and KILL_FAQ for more information.
    
7.  Article mode keybindings of `<' and `>' have been changed to goto the
    beginning and end of the article, resp.
    
8.  The `#' key may be used to NUMERICALLY tag articles.  The save operation
    now saves tagged articles in their numerically tagged order.  The key
    sequence `ESC #' will remove all numerical tags.
9.  The save function is now more sophisticated.  It can now save tagged
    articles, the current thread, or a single article.  After it saves, it
    prompts for decoding.  The present version of slrn can only decode
    uuencoded files or share archives.  If decoding is selected, slrn will
    prompt for whether or not he save file should be deleted.
    
    The variable `decode_directory' may be used to control where decoded
    files are placed.
    
10. If a line of the form:

       set use_tmpdir 1
      
    appears in the .slrnrc file, a tmp directory will be used for posting
    and replying.  The directory /tmp will be used unless the environment
    variable TMPDIR exists.
    
11. It is now possible to set the editor command in the .slrnrc file, e.g.,

        editor_command "jed %s -g %d -tmp"
	
      

Changes since 0.7.8.2
1.  Score files added-- See score.txt for score file syntax.  To use score
    files you must add a line such as:
    
         scorefile "News/Score"

    to you .slrnrc file.  slrn assumes no default value for this file.  With
    this defined, you may either edit the file by hand or press the `K' key
    in article mode to automatically add ``scores'' to this file.  If you
    edit it by hand and you use the jed editor, see `score.sl' for a syntax
    highlighting and indentation mode for score files.
    
    A new commad line option `-k' may be used to turn OFF score file
    processing.

2.  In article mode, `=' key will now follow articles of a specified
    subject.  In addition, the `!' key will go to articles with high scores.

Changes since 0.7.8.1
1.  Threads are now collapsed.  An individual thread may be un-collapsed by
    pressing `ESC t'.  Pressing `ESC t' will re-collapse it.  In addition,
    simply reading the first article in a thread will un-collapse it.
    Deleting a collapsed thread will delete all articles in th thread.
    Hopefully, this interface will seem intuitive.
    
    Note: `ESC 1 ESC t' will toggle collapsing of ALL threads.  
    
    To bind this to a different key, use the function 
    `toggle_collapse_threads'.
    
    Of course the thread number has to have a color.  The default is:
    `color thread_number "blue" "white"'
    
2. New configuration variables for your .slrnrc file (defaults shown)

      set query_next_article 1
      set query_next_group 1
     
   For example, setting query_next_article to 0 will result in the next
   article being read when the end of the current one is reached.

3. Parse error messages while parsing .slrnrc file are now more meaningful.

Changes since 0.7.8.0
1.  Additional support for XTerm mouse (Thanks Mark).  These include:

    Article mode:

        Left Button: Help bar:        return help
                     Header status:   header page down
		     Article status:  Next unread
		     Article window:  Article page down
      Middle Button: Help bar:        toggle show author
                     Header status:   hide article
		     Article status:  toggle quotes
		     Article window:  nothing
      Right Button:  Help bar:        help
                     Header status:   header page up
		     Article status:  Prev unread
		     Article window:  Article page up
                     
    Similar functionality for group mode.
    
2.  VMS makefile fixed
3.  New group mode function: transpose_groups.  The default binding is ^X^T.
    This will transpose the position of two groups.  This may be used to
    rearrange groups.
4.  man page updated
5.  `set color signature' now supported.  (Thanks to
    combee@ptsg-austin.sps.mot.com (Ben Combee))
6.  Misc bug fixes.
7.  `hide article' will now toggle.

Changes since 0.7.7
0.  Misc bug fixes
1.  slrn calling syntax changed: The -D parameter has changed to lowercase -d.
    Now, a new -Ddefine-something is available.
2.  If using slang0.99-20 or newer, it is possible to use slang preprocessing
    in your .slrnrc file.  Use the -D flag to define a token.
3.  Oops!  Previous version broke art_lineup, art_linedn functions.
4.  Problem with "unknown" as username fixed.
5.  Suspension now allowed during lengthy transfers.  This requires slang
    version 0.99-20 or greater.
6.  New article mode function: "toggle_header_tag".  A header that is
    ``tagged'' is marked with a `*' in the left column.  The default binding
    is to the `*' key (Shift-8).  A tagged article will not change its read
    status by the `catchup' series of functions.  There may be more uses
    later.
7.  If a `prefix' argument is given to the `get_parent_header' function, the
    entire tree will be reconstructed.  This means that the whole tree can
    be reconstructed by pressing: ESC 1 ESC p
8.  Another oops.  -create flag was not working in 0.7.7.
9.  `set unsubscribe_new_groups' added to slrn.rc file.  If this is non-zero,
    newgroups will not automatically be subscribed to, e.g., if you desire
    this behavior, put the following in your .slrnrc file:
       set unsubscribe_new_groups 1
10. In an effort to make the article screen look less busy, a new
    configuration variable `show_thread_subject' has been made available.
    If zero, only the parent thread's subject will be displayed.  If you do
    not like this, add:
      
        set show_thread_subject 1
	
    to your .slrnrc file.
11. By default, articles are saved in folders with names beginning with a 
    capital letter.  If a folder with a lower case name already exists, slrn
    will use that.  That is, it is backward compatable.
12. Improved man page (Thanks to Howard Goldstein <hg@n2wx.ampr.org>)
13. XTerm mouse support added.  This option requires slang version 0.99-21.
    Use `set mouse 1' in your .slrnrc file to enable.  Note: mouse reporting
    is disabled at all slrn prompts so the mouse will be available for
    cut/paste in such contexts.

Changes since 0.7.6
1.  Improvements for VMS.  Now supports NETLIB (Thanks Andrew).
2.  Improved detection of supercite
3.  The article mode functions `catchup' and `uncatchup' have changed
    slightly in a way that may be more useful.  Now, they function on all
    headers from the top of the header list to the current header.
    Previously they functioned on all headers from the current one to the
    end of the list.  Of course the functions `catchup_all' and
    `uncatchup_all' are still available.
4.  New `config.h' file that allows HOSTNAME, ORGANIZATION, etc... to be
    compiled into the executable.
5.  Slightly improved FAQ.

Changes since 0.7.5
0.  VMS port thanks to Andrew Greer (Andrew.Greer@vuw.ac.nz)
1.  Small bug in help.c corrected that caused problems on some systems if a
    custom help file was used.
2.  New function: repeat_last_key.  The default binding is `.'.  The
    function that `.' used to be bound to has been moved to `;'.
3.  slrn.rc may be placed in SLRN_LIB_DIR to provide defaults for all users,
    e.g., organization, hostname, ...  See INSTALL.
4.  Catchup bindings changed in article mode.  (By popular demand).
5.  Misc improvements.

Changes since 0.7.4
1.  Oops!  It was possible to cancel any article in the old version.  I
    forgot to add a `return' statement after checking to make sure that the
    person cancelling actually posted the article.
2.  Missing comma between two strings in help.c added.
3.  `delete_thread' function added to article mode keybindings
4.  `followup' added to slrn.rc.  This allows the user to set the followup 
     string.  For example, I use:  followup "On %d, %r <%f> wrote:"
     See slrn.rc for more information.
5.  It is now possible to concatenate newsrc files.  slrn will now ignore
    repetitions.  For example, suppose that you have an old newsrc file that
    you wish to bring uptodate.  Let's call it `old'.  Suppose that another
    one, `new' is much more extensive.  Then do:
    
        % mv old old~
	% cat old~ new > old
	% slrn -f old
	
    If you have no idea how this may be useful, then you do not need it.
6.  Group mode searches will automatically wrap.    
7.  Some support for automatic detection of ``super-cited'' articles so that
    quoted lines are handled properly.  This works most of the time.
8.  If `set no_backups 1' appears in the .slrnrc file, backups of the .newsrc
    file is turned off.
9.  `g' in article mode will skip to the next digest.
10. User is now prompted for chance to re-edit a message after editing.
11. `set beep 0' may now be used to turn off the bell.  See slrn.rc.

Changes since 0.7.3
1.  -i init-file command option added.  This allows a different slrn.rc file
    to be specified (default: .slrnrc).
2.  Silly problem fixed when -create option used but .newsrc does not exist.
3.  A line read in from the server that begins with two periods is stripped 
    of one of them as RFC977 requires.
4.  Using a prefix argument to the followup command will insert the original
    headers into the followup.
5.  If server drops the connection, an attempt is made to reconnect.
    (ljz@panix.com)

Changes since 0.7.2
1.  Slight modification to extract real name routine so that if the name is
    not available, the address is used.
2.  Now possible to specifiy a color for quoted text via `color quotes'.
    The default is: color quotes red white
    This really does improve readability of an article with quoted material!
3.  NNRP authentification support added.  In .slrnrc, use a line like:
       nnrpaccess HOSTNAME USERNAME PASSWORD
 
Changes since 0.7.1
0.  The XPAT server command is exploited if it is available.  Not all servers
      support it even though it is pretty standard.
1.  ESC Ctrl-P will find all children of current header by querying the
    server.
2.  Confirm Follow-up when poster sets the followup line to poster.
3.  ESC-d will now mark the current thread as read-- that is, current header
    plus all children.
4.  SPACE in article mode can be used to read next article or go to next
    group if pressed twice at the end of the current article.
    
Changes since 0.7.0
1.  Typo in the `unsetkey' function corrected.  The typo was a serious one.
2.  Small change in the Top/Bottom/Percentage calculation for the status line.
3.  Misc bug fixes
4.  See help.txt for creating your own custom help screen.

Changes since 0.6.3
1.  Added `realname' to slrn.rc file.
2.  TRUE referenced based threading added.  Subject sorting has been 
      abandoned.  A tree in drawn showing how articles are threaded.  The
      color of the tree may be specified by `color tree' in your .slrnrc
      file.  ESC-p will got to the parent of the current header.
      
      Note:  If the terminal cannot support line drawing characters, the
      tree will not appear.

Changes since 0.6.2
1.  Xref mark as read now takes advantage of group name hashing.
2.  Fixed problem with getlogin on some systems.

Changes since 0.6.1
1.  `N' in article mode will now skip on to next group.  Lowercase `n' still
    retains its previous meaning.
2.  Bug fixed in catchup-all in article mode.  Previously, it did not mark
    all as read.
3.  A description of each newsgroup can be displayed next to the group name. 
    Use ESC-a to toggle it on/off.
4.  New environment variable SLRN_LIB_DIR determines where to load files
    that may be shared by all users, e.g., the group description file.  By
    default, it is /usr/local/lib/slrn.  See INSTALL for more details.
    
Changes since 0.6.0
1.  The `G' key at group mode may be used to retrieve new news from the
    server.  In addition, `X' will force the newsrc file to be saved.
2.  Small bug corrected that manifests itself when no groups are subscribed
    to (a very rare situation).
3.  The one-line help at the bottom of the screen is always visible now.  Of
    course, the full on-line help is still available.
4.  The Makefile has been modified so that slrn may be easily termified
    under Linux.
5.  Fixed a silly bug that made the -C color flag do nothing.

Changes since 0.5.3
1.  Selecting a group with an ESC prefix digit argument will now select
    unread articles too.
2.  My uudecode program can also unpack shell archives.  No need to edit
    those headers either.
3.  When replying, the user defined quote string is used to quote the
    article. 
4.  ESC-r from article mode will toggle rot13 decryption.
5.  `|' in article mode will pipe article to an external command (e.g., lpr)
6.  Some cosmetic improvements by ljz@ingress.com (Lloyd Zusman).
7.  ESC-U, ESC-u, ESC-C, ESC-c added by ljz@ingress.com (Lloyd Zusman).
    These functions may be used to catchup and un-catchup on articles in
    article mode.
8.  IF the line: `set show_article 1' appears in your .slrnrc file, the
    article is displayed when article mode is entered.

Changes since 0.5.2
1.  Path header added when posting
2.  When the newsrc file is written, a backup is made of the previous version.

Changes since 0.5.1
1.  ESC-a toggles showing author's name on/off in the header window.  This
    provides a wider display for the subject.

Changes since 0.5.0
1.  Improved help screen for beginners.
2.  ESC-s now toggles header sorting on/off.
Changes since 0.4.0
1.    LOGNAME environment variable now checked to get the user's login name.
      Previously, only USER was checked.
2.    newsrc file locking added.
3.    TAB key now moves past quoted text
4.    `autobaud' keyword in .slrnrc file may be used to incicate that the
      output rate to the terminal should be synchronized to the terminal
      baud rate.  This behavior was always the default in previous versions.
      Now, it is off by default.
5.  The `L' key in the group menu may now be used to toggle the display of
    unsubscribed groups on and off.  


}}}