summaryrefslogtreecommitdiff
path: root/Changes
blob: d830976b9426a6abe1f2cd01ff29334a97697d22 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
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
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
_______________________________________________________________________________
2015-02-14  Release 6.13

Karen Etheridge (1):
    - fixed Makefile.PL compatibility with older ExtUtils::MakeMaker (from
      release 6.12)

_______________________________________________________________________________
2015-02-13  Release 6.12

Karen Etheridge (1):
    - fixed prereq declarations in release 6.11

_______________________________________________________________________________
2015-02-13  Release 6.11

Graham Knop (1):
    - cleanup of the test running mechanism; allowing greater flexibility and
      should also resolve RT#102083

_______________________________________________________________________________
2015-02-12  Release 6.10

Karen Etheridge (1):
    - lower runtime prereqs recommendation on LWP::Protocol::https to suggests,
      to work around a circular dependency in CPAN clients when the 'install
      recommendations' option is enabled (RT#101732)

_______________________________________________________________________________
2015-02-09  Release 6.09

Steffen Ullrich (1):
    - checks for EINTR now also check EWOULDBLOCK (they sometimes differ on
      MSWin32)

Daina Pettit (1):
    - fixed pod syntax

Jason A Fesler (2):
    - Fixed checking the % character in address regex
    - Improved regex for literal IPv6 addresses

_______________________________________________________________________________
2014-07-24  Release 6.08

Mike Schilli (1):
      Requiring Net::HTTP 6.07 to fix IPv6 support 
        (RT#75618 and https://github.com/libwww-perl/net-http/pull/10)

Jason A Fesler (2):
      When the hostname is an IPv6 literal, encapsulate it with [brackets] 
        before calling Net::HTTP  [rt.cpan.org #29468]
      Extra steps to make sure that the host address that has a ":" contains 
        only characters appropriate for an IPv6 address.

John Wittkoski (1):
      Fix doc typo for cookie_jar

_______________________________________________________________________________
2014-07-01  Release 6.07

Mike Schilli (5):
      Removed Data::Dump references in test suite and dependency in Makefile.PL
      Added MANIFEST.SKIP to enable "make manifest".
      release script now checks for MacOS to avoid incompatible tarballs
      Bumped version number to 6.07
      Fixed gnu-incompatible tarball problem ([rt.cpan.org #94844])

_______________________________________________________________________________
2014-04-16  Release 6.06

Ville Skyttä (3):
      Merge pull request #44 from dsteinbrunner/master
      Spelling fixes.
      Merge pull request #55 from oalders/master

Karen Etheridge (2):
      Merge pull request #38 from mbeijen/typo-sting
      Merge pull request #43 from dsteinbrunner/master

David Steinbrunner (2):
      Spelling corrections

Olaf Alders (1):
      Typo fixes.

Steffen Ullrich (1):
      correct behavior for https_proxy,
      e.g. don't send plain https:// requests to proxy, but instead establish
      CONNECT tunnel and then send requests inside tunnel.
      This change does together with a change in LWP::Protocol::https.
      The change supports LWP::Protocol::https with the default
      IO::Socket::SSL backend, but also with Net::SSL. Also:
      - proxy authorization is supported (http://user:pass@host:port as proxy
        URL, Net::SSL still needs special HTTPS_PROXY_* environemt variables,
        as before)
      - CONNECT request does not need to be the first request inside the
        tunnel (not with Net::SSL)
      - conn_cache is read and written inside request(), instead of writing in
        request() and reading in _new_socket(). If a https tunnel is
        established the cache_key no longer depends only on proxy host,port
        but also on the tunnel endpoint
      - CONNECT is a proxy request and must always use Proxy-Authorization,
        not Authorization header

turugina (1):
      fix: auth-header of Digest auth did not conform to 
      RFC 2617 when WWW-Authenticate has 'qop' parameter.

Gisle Aas (1):
      SSL libs might trigger ENOTTY on read

Michiel Beijen (1):
      Small typo.

_______________________________________________________________________________
2013-03-11  Release 6.05

Karen Etheridge (3):
      Derive message from status code if it was not provided
      Merge pull request #33 from tomhukins/fix-readme
      fix typo in comment

Ville Skyttä (3):
      Spelling fixes.
      Spelling fix.
      Merge pull request #34 from berekuk/fix-github-path

Gisle Aas (3):
      Update repo URL
      With Net::HTTP 6.04 we don't need our own can_read() and sysread override
      $ENV{HTTP_PROXY} might override our test setup [RT#81381]

Vyacheslav Matyukhin (1):
      fix github url in perldoc

Slaven Rezic (1):
      * Pod is utf-8

Peter Rabbitson (1):
      Match required perl in Makefile.PL

Tom Hukins (1):
      Fix Github URLs




_______________________________________________________________________________
2012-02-18  Release 6.04

Gisle Aas (4):
      Typo fix; envirionment [RT#72386]
      Implement $ua->is_online test
      Add separate option to enable the live jigsaw tests
      Merge pull request #10 from trcjr/master

Theodore Robert Campbell Jr (3):
      now with put and delete helpers
      updated POD
      unit tests for ua->put and ua->delete

Peter Rabbitson (1):
      These modules work with 5.8.1




_______________________________________________________________________________
2011-10-15  Release 6.03

Ville Skyttä (7):
      Link updates.
      Attribute documentation wording improvements.
      Don't parse robots.txt response content unless it's textual.
      Decode robots.txt response content before attempting to parse it.
      RobotUA robots.txt response parsing cleanups.
      Don't parse HEAD of robots.txt responses.
      Request handler doc grammar fixes.

Gisle Aas (6):
      Pass on HTTP/1.0 if set as request protocol
      Remove outdated docs (not touched since 1996 :-)
      Merge pull request #22 from madsen/RT67947-verify_hostname
      PERL_LWP_ENV_PROXY tweaks
      lwp-request didn't respect -H Content-type [RT#70488]
      lwp-request -H didn't allow repeated headers

Christopher J. Madsen (2):
      verify_hostname defaults to 0 if ssl_opts provided [RT#67947]
      Test verify_hostname setting

Bryan Cardillo (1):
      Fix expect header support to work with content refs.

Moritz Onken (1):
      add PERL_LWP_ENV_PROXY env variable to enable env_proxy globally



_______________________________________________________________________________
2011-03-27  Release 6.02

This is the release where we try to help the CPAN-toolchain be able to install
the modules required for https-support in LWP.  We have done this by unbundling
the LWP::Protocol::https module from the libwww-perl distribution.  In order to
have https support you now need to install (or depend on) 'LWP::Protocol::https'
and then this will make sure that all the prerequsite modules comes along.
See [RT#66838].

This release also removes the old http10 modules that has really been
deprecated since v5.60.  These should have been removed at the v6.00 jump, but
I forgot.


Christopher J. Madsen (1):
      Ignores env variables when ssl_opts provided [RT#66663]

Gisle Aas (4):
      Fix typo; Authen::NTLM [RT#66884]

Yury Zavarin (1):
      Support LWP::ConnCache->new(total_capacity => undef)



_______________________________________________________________________________
2011-03-09  Release 6.01

Add missing HTTP::Daemon dependency for the tests.



_______________________________________________________________________________
2011-03-08  Release 6.00

Unbundled all modules not in the LWP:: namespace from the libwww-perl
distribution.  The new broken out CPAN distribtions are File-Listing,
HTML-Form, HTTP-Cookies, HTTP-Daemon, HTTP-Date, HTTP-Message, HTTP-Negotiate,
Net-HTTP, and WWW-RobotRules.  libwww-perl-6 require these to be installed.

This release also drops the unmaintained lwp-rget script from the distribution.

Perl v5.8.8 or better is now required.  For older versions of perl please stay
with libwww-perl-5.837.

For https://... default to verified connections with require IO::Socket::SSL
and Mozilla::CA modules to be installed.  Old behaviour can be requested by
setting the PERL_LWP_SSL_VERIFY_HOSTNAME environment variable to 0.  The
LWP::UserAgent got new ssl_opts method to control this as well.

Support internationalized URLs from command line scripts and in the proxy
environment variables.

The lwp-dump script got new --request option.

The lwp-request script got new -E option, contributed by Tony Finch.

Protocol handlers and callbacks can raise HTTP::Response objects as exceptions.
This will abort the current request and make LWP return the raised response.



_______________________________________________________________________________
2010-09-20  Release 5.837

David E. Wheeler (1):
      Fix for Encode 2.40

Gisle Aas (2):
      Fix Perl syntax error in synopsis
      Allow ISO 8601 date strings when parsing Apache file listings



_______________________________________________________________________________
2010-05-13  Release 5.836

Gisle Aas (1):
      Fix problem where $resp->base would downcase its return value



_______________________________________________________________________________
2010-05-05  Release 5.835

Gisle Aas (12):
      simple string can be simplified
      Make $mess->decoded_content remove XML encoding declarations [RT#52572]
      Don't allow saving to filenames starting with '.' suggested by server
      Avoid race between testing for existence of output file and opening the file
      Minor doc fixup -- wrongly ucfirsted word
      Use decoded_content in HTTP:Response synopsis [RT#54139]
      sun.com is no more. rip!
      Trivial layout tweak to reduce variable scope.
      Add 'make test_hudson' target
      Implement alt_charset parameter for decoded_content()
      Test decoding with different charset parameters
      lwp-download now needs the -s option to honor the Content-Disposition header

Ville Skyttä (9):
      Make LWP::MediaTypes::media_suffix case insensitive.
      Skip XML decoding tests if XML::Simple is not available.
      Documentation fixes.
      Fix m_media_type => "xhtml" matching.
      Make parse_head() apply to data: requests.
      Documentation spelling fixes.
      Documentation grammar fixes.
      Use $uri->secure in m_secure if available.
      Fix handling of multiple (same) base headers, and parameters in them.

Mark Stosberg (5):
      Strip out empty lines separated by CRLF
      Best Practice: avoid indirect object notation
      Speed up as_string by 4% by having _sorted_field_names return a reference
      Speed up scan() a bit. as_string() from this branch is now 6% faster
      Port over as_string() optimizations from HTTP::Headers::Fast

Tom Hukins (2):
      Link to referenced documentation.
      Update repository location.

Father Chrysostomos (1):
      Remove needless (and actually harmful) local $_

Sean M. Burke (1):
      "Perl & LWP" is available online



_______________________________________________________________________________
2009-11-21  Release 5.834

Gisle Aas (4):
      Check for sane default_headers argument [RT#50393]
      Add $ua->local_address attribute [RT#40912]
      Test that generation of boundary works [RT#49396]
      Page does not display the "standard" apache listing any more

Ville Skyttä (2):
      Remove unneeded executable permissions.
      Switch compression/decompression to use the IO::Compress/IO::Uncompress and
          Compress::Raw::Zlib family of modules.

Slaven Rezic (1):
      lwp-request should use stderr for auth [RT#21620]



_______________________________________________________________________________
2009-10-06  Release 5.833


Gisle Aas (5):
      Deal with cookies that expire far into the future [RT#50147]
      Deal with cookies that expire at or before epoch [RT#49467]
      Pass separate type for https to LWP::ConnCache [RT#48899]
      Improved handling of the User-Agent header [RT#48461]
      HTTP::Cookies add_cookie_header previous Cookies [RT#46106]

Andreas J. Koenig (1):
      Improve diagnostics from LWP::UserAgent::mirror [RT#48869]

Slaven Rezic (1):
      mirror should die in case X-Died is set [RT#48236]

Ville Skyttä (1):
      Increase default Net::HTTP max line length to 8k.



_______________________________________________________________________________
2009-09-21  Release 5.832


Ville Skyttä (6):
      Fix net test suite.
      Comment spelling fixes.
      Fix links to old Netscape cookie specification.
      Documentation spelling fixes.
      Improve max line length exceeded/read error messages.
      Do not warn about seemingly wellformed but unrecognized robots.txt lines.

Gisle Aas (1):
      $mess->content_charset would fail for empty content

mschilli (1):
      Further restrict what variables env_proxy() process



_______________________________________________________________________________
2009-08-13  Release 5.831


Ville Skyttä (3):
      Fix bzip2 content encoding/decoding.
      send_te() doc grammar fix.
      Document time2str() behavior with an undefined argument.

Gisle Aas (1):
      HTML::Message's content_charset trigger warnings from HTML::Parser [RT#48621]



_______________________________________________________________________________
2009-07-26  Release 5.830

Gisle Aas (1):
      select doesn't return undef on failure [RT#32356]

Ville Skyttä (1):
      Add raw RFC 1951 deflate test case.



_______________________________________________________________________________
2009-07-07  Release 5.829

This release removes callback handlers that were left over on the returned
HTTP::Responses.  This was problematic because it created reference loops
preventing the Perl garbage collector from releasing their memory.  Another
problem was that Storable by default would not serialize these objects any
more.

This release also adds support for locating HTML::Form inputs by id or class
attribute; for instance $form->value("#foo", 42) will set the value on the
input with the ID of "foo".


Gisle Aas (5):
      Make the example code 'use strict' clean by adding a my
      Avoid cycle in response
      Clean up handlers has from response after data processing is done
      Support finding inputs by id or class in HTML::Form
      Test HTML::Form selectors

Mark Stosberg (1):
      Tidy and document the internals of mirror() better [RT#23450]

phrstbrn (1):
      Avoid warnings from HTML::Form [RT#42654]



_______________________________________________________________________________
2009-06-25  Release 5.828

A quick new release to restore compatibility with perl-5.6.


Gisle Aas (4):
      Less noisy behaviour when we can't download the documents
      Restore perl-5.6 compatibility [RT#47054]
      Don't decode US-ASCII and ISO-8859-1 content
      Some versions of Encode don't support UTF-16-BE [RT#47152]

Ville Skyttä (1):
      Spelling fixes.



_______________________________________________________________________________
2009-06-15  Release 5.827

The main news this time is better detection of what character set the document
in a response uses and the addition of the lwp-dump script that I found useful.


Gisle Aas (31):
      Added lwp-dump script
      Replace calls to $req->url with $req->uri
      Also need to encode strings in the latin1 range
      Ignore the value set for file inputs [RT#46911]
      Add docs to lwp-dump
      Don't let lwp-dump follow redirects
      Support --method options
      Implement the --agent option
      Dictionary order for the option docs; document --method
      Merge branch 'dump'
      Files are passed as an array and we must not stringify it.
      Add content_charset method to HTTP::Message
      Start guessing the charset for a message
      Let content_charset guess the charset to use for decoded_content
      Specify what's missing for the XML and HTML case
      Provide charset parameter for HTML::Form->parse()
      Make content_charset sniff for <meta> elements specifying the charset.
      Determine charset of XML documents
      Get rid of the _trivial_http_get() implementation
      Update the bundled media.types file
      LWP::Simple::get() now returns decoded_content [RT#44435]
      Implement content_type_charset method for HTTP::Headers
      Implement content_is_text method for HTTP::Headers
      Make use of content_is_text and content_type_charset in decoded_content
      Don't let the parse_head callback append to the HTTP headers
      Don't set Range header on request when max_size is used [RT#17208]
      Still show client headers for internal responses
      Document Client-Warning: Internal response
      Don't use 'no' as example domain for no_proxy docs [RT#43728]
      Drop exit from the Makefile.PL [RT#43060]
      Merge branch 'content_charset'

Alex Kapranoff (1):
      Support "accept-charset" attribute in HTML::Form

Mark Stosberg (1):
      new tests for max_size and 206 responses [RT#46230]

murphy (1):
      Reformulation of Client-Warning: Internal documentation



_______________________________________________________________________________
2009-04-24  Release 5.826

Gisle Aas (2):
      Avoid returning stale Content-Type header after message parts have been updated
      Don't let content saved to file be affected by the $\ setting

Graeme Thompson (1):
      Issues around multipart boundaries [RT#28970]

Mike Schilli (1):
      Ignore random _proxy env variables, allow only valid schemes

Slaven Rezic (1):
      README.SSL is not anymore available at the linpro.no URL.

john9art (1):
      Make LWP::UserAgent constructor honor the default_headers option [RT#16637]



_______________________________________________________________________________
2009-02-16  Release 5.825

Zefram (1):
      Fixup test failure with perl-5.8.8 and older; qr/$/m doesn't work



_______________________________________________________________________________
2009-02-13  Release 5.824

Gisle Aas (7):
      Make format_request() ensure that it returns bytes [RT#42396]
      Force bytes in all the format_* methods.
      Ignore Sitemap: lines in robots.txt [RT#42420]
      Refactor; use variable to hold the test port
      Add redirects method to HTTP::Message
      Setting $ua->max_redirect(0) didn't work [RT#40260]
      Convert files to UTF-8

Zefram (2):
      HTTP::Cookies destructor should not clobber $! and other globals.
      Deal with the Encode module distributed with perl-5.8.0

Ian Kilgore (1):
      Avoid failure if 127.0.0.1:8333 is in use [RT#42866]

Ville Skyttä (1):
      Documentation improvements, spelling fixes.



_______________________________________________________________________________
2008-12-05  Release 5.823

Gisle Aas (4):
      Bring back the LWP::Debug code [RT#41759]
      Add documentation section about 'Network traffic monitoring'.
      Typo fixes
      Want to ensure we get a single value back here.



_______________________________________________________________________________
2008-12-05  Release 5.822

Gisle Aas (4):
      A more modern user_agent example.
      Make it possible to unset the proxy settings again
      Prefer use specified Content-Length header [RT#41462]
      Deprecate LWP::Debug



_______________________________________________________________________________
2008-11-25  Release 5.821

Various bug fixes.


Gisle Aas (3):
      The Content-Length and Content-MD5 headers are no longer valid after encode/decode
      Add META information
      croak on bad proxy args [RT#39919]

Slaven Rezic (1):
      Skip a failing decoded_content on systems without Encode.pm [RT#40735]

Steve Hay (1):
      Skip LWP test when fork() is unimplemented

Yuri Karaban (1):
      redo used incorrectly in LWP::Protocol::http [RT#41116]

jefflee (1):
      HTTP::Cookies::Microsoft now handles user names with space [RT#40917]

ruff (1):
      Avoid aborting requests saved to file early [RT#40985]



_______________________________________________________________________________
2008-11-05  Release 5.820

Main news is the ability to control the heuristics used to determine
the expiry time for response objects.


Gisle Aas (8):
      Reformat later parts of Changes
      Add a paragraph to summarize the motivation for releases since 5.815
      all_pod_files_ok();
      Fix POD markup error
      Calculation of current_age with missing Client-Date.
      The age/freshness methods now take an optional 'time' argument
      More correct matching of 'max-age' in freshness_lifetime method
      The freshness_lifetime method now support options to control its heuristics


_______________________________________________________________________________
2008-10-20  Release 5.819

Release 5.815 to 5.818 had a severe bug that sometimes made LWP not
collect all data for the responses it received.  This release is
strongly recommended as an upgrade for those releases.


Gisle Aas (2):
      Don't override $Net::HTTPS::SSL_SOCKET_CLASS if it's already set.
      Wrong content handlers would sometimes be skipped [RT#40187]


_______________________________________________________________________________
2008-10-16  Release 5.818

Main news in this release is the addition of the dump() method to the
request and response objects.  If found that I often ended up printing
$resp->as_string for debugging and then regretting after the terminal
got into a strange mode or just kept on scrolling for the longest
time.


Gisle Aas (8):
      Use deflate compression instead of gzip for the test
      Simplify; Get rid of the $USE_STORABLE_DCLONE configuration
      Add dump method to HTTP::Message.
      Use $res->dump instead of rolling our own.
      Layout change; move headers() methods to a more logical place.
      Add support for x-bzip2 encoding; fix bzip2 decoding.
      Add send_header method to HTTP::Daemon
      Make the lwp-request User-Agent string include the LWP version.

Slaven Rezic (1):
      clone implemented in terms of Storable::dclone [RT#39611]


_______________________________________________________________________________
2008-10-10  Release 5.817

This is the release where I played around with Devel::NYTProf to
figure where time was actually spent during the processing of requests
with LWP.  The methods that manipulated header objects stood out, so
this release contains a few tweaks to make those parts faster.

I also figured a few convenience methods to encode and decode the
content of request/response objects would be in order.


Gisle Aas (16):
      Should store "wire" headers field names with _ without translation.
      Test HTTP::Request->parse().
      Restore pre-5.815 behaviour of returning "400 Bad Request" [RT#39694]
      Rename the HTTP::Status constants to have HTTP_ prefix
      Detection of unsupported schemes was broken [RT#37637]
      Allow tainted methods to be forwarded to HTTP::Headers [RT#38736]
      Add strict mode to HTML::Form
      Fix test now that less warnings are generated.
      Add content_is_xml method
      Make split_header_words() lower case returned tokens/keys
      Avoid invoking AUTOLOAD on object destruction [RT#39852]
      Add decode() method to HTTP::Message
      Add encode() method to HTTP::Message
      Allow multiple fields to be set with push_header().
      Make content_type and content_is_xhtml methods faster
      Faster push_header()


_______________________________________________________________________________
2008-09-29  Release 5.816

Oops, release 5.815 broke download-to-file on Windows.


Gisle Aas (2):
      Add missing binmode() [RT#39668]
      Doc tweaks


_______________________________________________________________________________
2008-09-24  Release 5.815

The main change this time is the introduction of handlers to drive the
processing of requests in LWP::UserAgent.  You can also register your
own handlers for modifying and processing requests or responses on
their way, which I think is a much more flexible approach that trying
to subclass LWP::UserAgent to customize it.  If we have had these
early on then the LWP::UserAgent API could have been so much simpler
as the effect of most current attributes can easily be set up with
trivial handlers.

Also thanks to contributions by Bron Gondwana LWP's Basic/Digest
authenticate modules now registers handlers which allow them to
automatically fill in the Authorization headers without first taking
the round-trip of a 401 response when LWP knows the credentials for a
given realm.


Gisle Aas (23):
      We don't need to build the docs to run the tests.
      Style tweaks.
      The jigsaw service isn't up to much good these days.
      HTTP::Cookies produces warnings for undefined cookie param names [RT#38480]
      Typo fix; HTTP::Message will never include x-bzip2 in Accept-Encoding [RT#38617]
      Added HTTP::Config module
      Add methods to configure processing handlers.
      100 Continue response not complete.
      Use 3-arg open when response content to files.
      Make the show_progress attribute official (by documenting it).
      Start using handlers for driving the inner logic of LWP::UserAgent.
      Expose the content_is_html and content_is_xhtml methods from HTTP::Headers.
      Make credentials method able to get/set values.
      An auth handler per realm.
      Match proxy setting for request.
      Set up separate handler for adding proxy authentication.
      Add request_preprepare to be able to initialize proxy early enough.
      Smarter get_my_handler() that can also create handlers.
      Refactor; introduce run_handlers method
      Pass in handler hash to the handler callback.
      Don't let version=1 override behaviour if specified with a plan Set-Cookie header.
      Remove handler when we don't have a username/password for the realm.
      Make tests use Test.pm

Bron Gondwana (2):
      Double-check that username or password has changed after a failed login.
      Update Digest Authen to subclass Basic.

Ondrej Hanak (1):
      Avoid running out of filehandles with DYNAMIC_FILE_UPLOAD.

Todd Lipcon (1):
      Fixed parsing of header values starting with ':' [RT#39367]

amire80 (1):
      Documentation typo fixes [RT#38203]


_______________________________________________________________________________
2008-07-25  Release 5.814

Gisle Aas (13):
      Typo fix.
      Add HTTP::Message::decodable()
      Use decoded_content in the synopsis
      Avoid adding an empty first part in $mess->add_part()
      Get rid of all the manual dependency tests.
      Simplify the Makefile.PL (no interactivity)
      Provide DELETE method in HTTP::Request::Common [RT#37481]
      Checkbox picks up nearby text in description of alternates [RT#36771]
      HTML::Form::possible_values() should not returned disabled values [RT#35248]
      File::Listing documentation claimed only 'unix' format was supported [RT#22021]
      File::Listing only support English locales [RT#28879]
      Make common-req.t use Test.pm
      Typo; CAN_TALK_TO_OUTSELF

Bill Mann (1):
      Fix up File::Listings fallback to dosftp [RT#23540]

Hans-H. Froehlich (1):
      File::Listing parse failure on BSD Linux based systems [RT#26724]


_______________________________________________________________________________
2008-06-17  Release 5.813

Ville Skytta (3):
      RobotUA constructor ignores delay, use_sleep [RT#35456]
      Spelling fixes [RT#35457]
      Add HTTP::Response->filename [RT#35458]

Mark Stosberg (2):
      Better diagnostics when the HTML::TokeParser constructor fails [RT#35607]
      Multiple forms with same-named <select> parse wrongly [RT#35607]

Gisle Aas (1):
      Provide a progress method that does something that might be useful.

Spiros Denaxas (1):
      Documentation typo fix [RT#36132]


_______________________________________________________________________________
2008-04-16  Release 5.812

Gisle Aas (6):
      Typo fix.
      Simplified Net::HTTP::Methods constructor call.
      Croak if Net::HTTP constructor called with no argument.
      Avoid calling $self->peerport to figure out what the port is.
      5.811 breaks SSL requests [RT#35090]
      Make test suite compatible with perl-5.6.1.

Toru Yamaguchi (1):
      Wrong treatment of qop value in Digest Authentication [RT#35055]


_______________________________________________________________________________
2008-04-14  Release 5.811

Gisle Aas (6):
      Avoid "used only once" warning for $Config::Config.
      Make HTTP::Request::Common::PUT set Content-Length header [RT#34772]
      Added the add_content_utf8 method to HTTP::Message.
      Typo fix.
      Retry syscalls when they fail with EINTR or EAGAIN [RT#34093,32356]
      Allow HTTP::Content content that can be downgraded to bytes.

Gavin Peters (1):
      HTML::Form does not recognise multiple select items with same name [RT#18993]

Mark Stosberg (1):
      Document how HTTP::Status codes correspond to the classification functions [RT#20819]

Robert Stone (1):
      Allow 100, 204, 304 responses to have content [RT#17907]

sasao (1):
      HTTP::Request::Common::POST suppressed filename="0" in Content-Disposition [RT#18887]


_______________________________________________________________________________
2008-04-08  Release 5.810

Gisle Aas (10):
      Small documentation issues [RT#31346]
      Explain $netloc argument to $ua->credentials [RT#31969]
      Make lwp-request honour option -b while dumping links [RT#31347]
      Ignore params for date convenience methods [RT#30579]
      Get rid of all the old CVS $Keyword:...$ templates.  Set $VERSION to 5.810.
      Update Copyright year.
      Drop some sample URLs that were failing.
      Complement the HTTP::Status codes [RT#29619]
      Don't allow HTTP::Message content to be set to Unicode strings.
      Refactor test for Encode.pm

Ville Skytta (3):
      Spelling fixes [RT#33272]
      Trigger HTML::HeadParser for XHTML [RT#33271]
      Escape status line in error_as_HTML, convert to lowercase [RT#33270]

Alexey Tourbin (2):
      Typo fix [RT#33843]
      Protocol/file.pm: postpone load of URI::Escape and HTML::Entities [RT#33842]

Daniel Hedlund (1):
      HTML::Form Module and <button> element clicks

Adam Kennedy (1):
      HTTP::Cookies handle malformed empty Set-Cookie badly [RT#29401]

Jacob J (1):
      [HTTP::Request::Common] Does not handle filenames containing " [RT#30538]

Rolf Grossmann (1):
      Allow malformed chars in $mess->decoded_content [RT#17368]

FWILES (1):
      Croak if LWP::UserAgent is constructed with hash ref as argument [RT#28597]

Adam Sjogren (1):
      Disabled, checked radiobutton being submitted [RT#33512]

DAVIDRW (1):
      warn if TextInput's maxlength exceeded [RT#32239]


_______________________________________________________________________________
2007-08-05   Gisle Aas <gisle@ActiveState.com>

    Release 5.808
     
    Get rid of t/live/validator test.  Too much JavaScript madness
    for it to be a sane LWP test.



2007-07-31   Gisle Aas <gisle@ActiveState.com>

    Release 5.807
     
    Apply patch correction from CPAN RT #26152

    More laxed t/live/validator test.



2007-07-19   Gisle Aas <gisle@ActiveState.com>

    Release 5.806

    Added progress callback to LWP::UserAgent.
     
    HTTP::Daemon didn't avoid content in responses to HEAD requests

    Add support for HTTP Expect header to HTTP::Daemon (CPAN RT #27933)

    Fix t/base/message.t so tests are skipped if Encode is not
    installed.  (CPAN RT #25286)

    Add HTML::Tagset as a prerequisite to Makefile.PL

    Do not clobber $_ in LWP::Protocol::nntp (CPAN RT #25132)

    Fix lwp-download so it can download files with an "_" in the filename
        (CPAN RT#26207)

    Quiet complaints from HTML::HeadParser when dealing with undecoded
    UTF-8 data.  (CPAN RT#20274)

    When both IO::Socket::SSL and Net::SSL are loaded, use the latter
        (CPAN RT #26152)

    Allows SSL to work much more reliably:
        (CPAN RT #23372)

    Allow text/vnd.wap.wml and application/vnd.oasis.opendocument.text
        in content-type field in lwp-request (CPAN RT #26151)

    Add default media type for XML in LWP::MediaTypes (CPAN RT #21093)
     
    Added chunked test by Andreas J. Koenig



2005-12-08   Gisle Aas <gisle@ActiveState.com>

    Release 5.805

    HTTP::Date: The str2time function returned wrong values for
    years in the early 20th century, because timelocal() actually
    expects the year to be provided on a different scale than what
    localtime() returns.

    HTTP::Headers can now be constructed with field names that repeat.
    The $h->header function now also accept repeating field
    names and can also remove headers if passed undef as value.

    HTML::Form: The parse method now takes hash style optional
    arguments and the old verbose behaviour is now off by default.
    
    HTML::Form: Accept <select multiple=""> for compatibility with
    other browsers.  Patch by Josh Rai <josh@rai.name>.

    HTML::Form: Sane handling of 'disabled' for ListInput.
    Based on patch by Joao Lopes <developer@st3tailor.com.br>.

    HTTP::Negotiate: Fixed matching of partial language tags.
    Patch contributed by Dan Kubb.

    HTTP::Response: The as_string method now returns a status line
    that doesn't add the "official" code name in the message
    field.  This improves the ability to round-trip response objects
    via HTTP::Response->parse($res->as_string) and makes the first
    line of the string returned agree with $res->status_line.

    Net::HTTP: The host attribute can now be set undef in
    order to suppress this header for HTTP/1.0 requests.

    Net::HTTP: The default Host: header does not include the
    port number if it is the default (80 for plain HTTP). Some
    servers get confused by this.

    Net::HTTP: Ignore bogus Content-Length headers. Don't get
    confused by leading or trailing whitespace.

    LWP::Protocol::http: More efficient sending of small PUT/POST
    requests by trying harder to pass off the whole request in a
    single call to syswrite.

    lwp-request now give better error messages if you used the 
    -o option without having the HTML-Tree distribution installed.
    Also document this dependency.



2005-12-06   Gisle Aas <gisle@ActiveState.com>

    Release 5.804

    HTTP::Message->parse did not work when the first line of the body
    was something that looked like a header.

    HTTP::Header::Auth needs HTTP::Headers to be loaded before
    it replace its functions.

    LWP::Protocol::nntp improvements by Ville Skyttä <ville.skytta@iki.fi>:
     - Support the nntp: scheme.
     - Support hostname in news: and nntp: URIs.
     - Close connection and preserve headers also in non-OK responses.
     - HEAD support for URIs identifying a newsgroup.
     - Comment spelling fixes.

    Fix quotes in Net::HTTP example.
    http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=283916

    Detect EOF when expecting a chunk header.  Should address the
    warnings shown in http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=286775

    WWW::RobotRules: Improved parsing of not strictly valid robots.txt files
    contributed by <Matthew.van.Eerde@hbinc.com>.

    Makefile.PL: Set name to LWP so that the .packlist ends up in the
    expected place.



2004-12-11   Gisle Aas <gisle@ActiveState.com>

    Release 5.803

    HTTP::Message: $mess->decoded_content sometimes had the side
    effect of destroying $mess->content.

    HTTP::Message: $mess->decoded_content failed for
    "Content-Encoding: deflate" if the content was not in the
    zlib-format as specified for the HTTP protocol.  Microsoft got
    this wrong, so we have to support raw deflate bytes as well.

    HTTP::Response->parse don't require the protocol to be
    specified any more.  This allows HTTP::Response->parse($resp->as_string)
    to round-trip.  Patch by Harald Joerg <haj@oook.m.uunet.de>.

    HTTP::Response: $resp->base might now return undef.  Previously
    it would croak if there was no associated request.  Based on
    patch by Harald Joerg <haj@oook.m.uunet.de>.

    HTML::Form now support <label> for check- and radio boxes.
    Patch contributed by Dan Kubb <dan.kubb@onautopilot.com>.

    Make HTTP::Daemon subclassable, patch by Kees Cook <kees@osdl.org>.

    lwp-download allow directory to save into to be specified.
    Patch by Radoslaw Zielinski <radek@karnet.pl>.

    lwp-download will validate filename derived from server
    controlled data and will fail if something looks not
    quite right.

  

2004-11-30   Gisle Aas <gisle@ActiveState.com>

    Release 5.802

    The HTTP::Message object now has a decoded_content() method.
    This will return the content after any Content-Encodings and
    charsets have been decoded.

    Compress::Zlib is now a prerequisite module.

    HTTP::Request::Common: The POST() function created an invalid
    Content-Type header for file uploads with no parameters.

    Net::HTTP: Allow Transfer-Encoding with trailing whitespace.
    <http://rt.cpan.org/Ticket/Display.html?id=3929>

    Net::HTTP: Don't allow empty content to be treated as a valid
    HTTP/0.9 response.
    <http://rt.cpan.org/Ticket/Display.html?id=4581>
    <http://rt.cpan.org/Ticket/Display.html?id=6883>

    File::Protocol::file: Fixup directory links in HTML generated
    for directories.  Patch by Moshe Kaminsky <kaminsky@math.huji.ac.il>.

    Makefile.PL will try to discover misconfigured systems that
    can't talk to themselves and disable tests that depend on this.

    Makefile.PL will now default to 'n' when asking about whether
    to install the "GET", "HEAD", "POST" programs.  There has been
    too many name clashes with these common names.



2004-11-12   Gisle Aas <gisle@ActiveState.com>

    Release 5.801

    HTTP::Message improved content/content_ref interaction.  Fixes
    DYNAMIC_FILE_UPLOAD and other uses of code content in requests.

    HTML::Form:
      - Handle clicking on nameless image.
      - Don't let $form->click invoke a disabled submit button.

    HTTP::Cookies could not handle a "old-style" cookie named
    "Expires".

    HTTP::Headers work-around for thread safety issue in perl <= 5.8.4.

    HTTP::Request::Common improved documentation.

    LWP::Protocol: Check that we can write to the file specified in
    $ua->request(..., $file) or $ua->mirror.

    LWP::UserAgent clone() dies if proxy was not set.  Patch by
    Andy Lester <andy@petdance.com>

    HTTP::Methods now avoid "use of uninitialized"-warning when server
    replies with incomplete status line.

    lwp-download will now actually tell you why it aborts if it runs
    out of disk space of fails to write some other way.

    WWW::RobotRules: only display warning when running under 'perl -w'
    and show which robots.txt file they correspond to.  Based on
    patch by Bill Moseley.

    WWW::RobotRules: Don't empty cache when agent() is called if the
    agent name does not change.  Patch by Ville Skyttä <ville.skytta@iki.fi>.



2004-06-16   Gisle Aas <gisle@ActiveState.com>

    Release 5.800

    HTML::Form will allow individual menu entries to be disabled.
    This was needed to support <input type=radio disabled value=foo>
    and <select><option disabled>foo.

    HTML::Form now avoids name clashes between the <select> and
    <option> attributes.

    HTML::Form now implicitly close <select> elements when it sees
    another input or </form>.  This is closer to the MSIE behaviour.

    HTML::Form will now "support" keygen-inputs.  It will not
    calculate a key by itself.  The user will have to set its
    value for it to be returned by the form.

    HTTP::Headers now special case field names that start with a
    ':'.   This is used as an escape mechanism when you need the
    header names to not go through canonicalization.  It means
    that you can force LWP to use a specific casing and even
    underscores in header names.  The ugly $TRANSLATE_UNDERSCORE
    global has been undocumented as a result of this.

    HTTP::Message will now allow an external 'content_ref'
    to be set.  This can for instance be used to let HTTP::Request
    objects pick up content data from some scalar variable without
    having to copy it.

    HTTP::Request::Common.  The individual parts will no longer
    have a Content-Length header for file uploads.  This improves
    compatibility with "normal" browsers.

    LWP::Simple doc patch for getprint.
    Contributed by Yitzchak Scott-Thoennes <sthoenna@efn.org>.

    LWP::UserAgent: New methods default_header() and
    default_headers().  These can be used to set up headers that
    are automatically added to requests as they are sent.  This
    can for instance be used to initialize various Accept headers.

    Various typo fixes by Ville Skyttä <ville.skytta@iki.fi>.

    Fixed test failure under perl-5.005.
    
    LWP::Protocol::loopback:  This is a new protocol handler that
    works like the HTTP TRACE method, it will return the request
    provided to it.  This is sometimes useful for testing.  It can
    for instance be invoked by setting the 'http_proxy' environment
    variable to 'loopback:'.



2004-04-13   Gisle Aas <gisle@ActiveState.com>

    Release 5.79

    HTML::Form now exposes the 'readonly' and 'disabled'
    attribute for inputs.  This allows your program to simulate
    JavaScript code that modifies these attributes.

    RFC 2616 says that http: referer should not be sent with
    https: requests.  The lwp-rget program, the $req->referer method
    and the redirect handling code now try to enforce this.
    Patch by Ville Skyttä <ville.skytta@iki.fi>.

    WWW::RobotRules now look for the string found in
    robots.txt as a case insensitive substring from its own
    User-Agent string, not the other way around.
    Patch by Ville Skyttä <ville.skytta@iki.fi>.

    HTTP::Headers: New method 'header_field_names' that
    return a list of names as suggested by its name.

    HTTP::Headers: $h->remove_content_headers will now
    also remove the headers "Allow", "Expires" and
    "Last-Modified".  These are also part of the set
    that RFC 2616 denote as Entity Header Fields.

    HTTP::Headers: $h->content_type is now more careful
    in removing embedded space in the returned value.
    It also now returns all the parameters as the second
    return value as documented.

    HTTP::Headers: $h->header() now croaks.  It used to
    silently do nothing.

    HTTP::Headers: Documentation tweaks.  Documented a
    few bugs discovered during testing.

    Typo fixes to the documentation all over the place
    by Ville Skyttä <ville.skytta@iki.fi>.

    Updated tests.



2004-04-07   Gisle Aas <gisle@ActiveState.com>

    Release 5.78

    Removed stray Data::Dump reference from test suite.
    
    Added the parse(), clear(), parts() and add_part() methods to
    HTTP::Message.  The HTTP::MessageParts module of 5.77 is no more.

    Added clear() and remove_content_headers() methods to
    HTTP::Headers.

    The as_string() method of HTTP::Message now appends a newline
    if called without arguments and the non-empty content does
    not end with a newline.  This ensures better compatibility with
    5.76 and older versions of libwww-perl.

    Use case insensitive lookup of hostname in $ua->credentials.
    Patch by Andrew Pimlott <andrew@pimlott.net>.



2004-04-06   Gisle Aas <gisle@ActiveState.com>

    Release 5.77

    LWP::Simple did not handle redirects properly when the "Location"
    header used uncommon letter casing.
    Patch by Ward Vandewege <ward@pong.be>.

    LWP::UserAgent passed the wrong request to redirect_ok().
    Patch by Ville Skyttä <ville.skytta@iki.fi>.
    https://rt.cpan.org/Ticket/Display.html?id=5828

    LWP did not handle URLs like http://www.example.com?foo=bar
    properly.

    LWP::RobotUA construct now accept key/value arguments in the
    same way as LWP::UserAgent.
    Based on patch by Andy Lester <andy@petdance.com>.

    LWP::RobotUA did not parse robots.txt files that contained
    "Disallow:" using uncommon letter casing.
    Patch by Liam Quinn <liam@htmlhelp.com>.

    WWW::RobotRules now allow leading space when parsing robots.txt
    file as suggested by Craig Macdonald <craig@freeasphost.co.uk>.
    We now also allow space before the colon.

    WWW::RobotRules did not handle User-Agent names that use complex
    version numbers.  Patch by Liam Quinn <liam@htmlhelp.com>.

    Case insensitive handling of hosts and domain names
    in HTTP::Cookies.
    https://rt.cpan.org/Ticket/Display.html?id=4530

    The bundled media.types file now match video/quicktime
    with the .mov extension, as suggested by Michel Koppelaar
    <Michel.Koppelaar@kb.nl>.

    Experimental support for composite messages, currently
    implemented by the HTTP::MessageParts module.  Based on
    ideas from Joshua Hoblitt <jhoblitt@ifa.hawaii.edu>.

    Fixed libscan in Makefile.PL.
    Patch by Andy Lester <andy@petdance.com>.

    The HTTP::Message constructor now accept a plain array reference
    as its $headers argument.

    The return value of the HTTP::Message as_string() method now
    better conforms to the HTTP wire layout.  No additional "\n"
    are appended to the as_string value for HTTP::Request and
    HTTP::Response.  The HTTP::Request as_string now replace missing
    method or URI with "-" instead of "[NO METHOD]" and "[NO URI]".
    We don't want values with spaces in them, because it makes it
    harder to parse.



2003-11-21   Gisle Aas <gisle@ActiveState.com>

    Release 5.76
    
    Revised handling of redirects.
       - clear our content and content headers if we
         rewrite request as GET based on patch by
         Steven Butler <stevenb@kjross.com.au>.
       - pass $response to redirect_ok()

    Support cpan:-URLs.  Try 'lwp-download cpan:src/latest.tar.gz' :)

    Fix test failure in 't/html/form.t' for perl5.005.



2003-10-26   Gisle Aas <gisle@ActiveState.com>

    Release 5.75
    
    Reworked LWP::UserAgent, HTTP::Request and HTTP::Response
    documentation.  Also other documentation tweaks.



2003-10-23   Gisle Aas <gisle@ActiveState.com>

    Release 5.74

    Improved lwp-download program:
      - set mtime if Last-Modified header reported by server
      - better prompts
      - avoid warnings when aborted at the wrong time

    Collected all contributions in the AUTHORS file and
    also added an AUTHORS section to the LWP manpage.

    Style tweaks to all modules.  Move POD after __END__
    and uncuddled elses.



2003-10-19   Gisle Aas <gisle@ActiveState.com>

    Release 5.73
    
    Takanori Ugai <ugai@jp.fujitsu.com> found that 'max_redirect'
    introduced in 5.72 was broken and provided a patch for that.

    Not all ftp servers return 550 responses when trying to
    to RETR a directory.  Microsoft's IIS is one of those.
    Patch provided by Thomas Lotterer <thl@dev.de.cw.com>.
    
    Some documentation tweaks.



2003-10-15   Gisle Aas <gisle@ActiveState.com>

    Release 5.72

    Requests for some non-HTTP URLs would fail if the cookie_jar
    was enabled.  The HTTP::Cookies::add_cookie_header now ignore
    non-HTTP requests.

    The new local/http test failed on Windows because of a missing
    binmode().

    Suppress Client-SSL-Warning warning header when Crypt::SSLeay
    is able to verify the peer certificate.   Patch contributed by
    Joshua Chamas <joshua@chamas.com>.

    HTTP::Request::Common::POST did not add a 'Content-Length' header
    when the content ended up empty.  Fixed by a patch contributed
    by Brian J. Murrell.

    Internally generated responses now contain a text/plain part
    that repeats the status line.  They also have a "Client-Warning"
    header that can be used to differentiate these responses from
    real server responses.

    LWP::UserAgent now deals with 303 and 307 redirects.  The behaviour
    of 302 redirects has also changed to be like 303; i.e. change the
    method to be "GET".  This is what most browsers do.  Based on
    a patch contributed by Tom Hughes <thh@cyberscience.com>.

    LWP::UserAgent now implements a 'max_redirect' attribute with a
    default value of 7.  This should also fix the problem where
    redirects to the same URL to get a cookie set did not work.
    Based on a patch by Sean M. Burke <sburke@cpan.org>.

    NTLM authentication should continue to fail if the Authen::NTLM
    module can't be loaded.  LWP used to think the scheme was
    available as soon as the module stash showed up.  Not it looks
    for the authenticate method to be defined.  Patch by Jan Dubois.

    lwp-download will not try to rename *.tbz and *.tar.bz2 to
    match the reported content type.  Patch contributed by
    Robin Barker <Robin.Barker@npl.co.uk>.

    HTTP::Cookies::Netscape documentation fix by Sean M. Burke.

    HTTP::Cookies::Microsoft documentation fix by Johnny Lee.

    The code that tries to avoid installing 'HEAD' on top of
    'head' on systems like Mac OS was further improved to look
    in $Config{installscript} instead of $Config{sitebin}.
    Patch provided by Ken Williams <ken@mathforum.org>.



2003-10-14   Gisle Aas <gisle@ActiveState.com>

    Release 5.71

    Support open-ended Range: header for ftp requests.
    Patch by Matthew Eldridge <eldridge@Graphics.Stanford.EDU>.

    lwp-request now prints unsuccessful responses in the same way
    as successful ones.  The status will still indicate failures.
    Based on a patch by Steve Hay <steve.hay@uk.radan.com>.

    HTML::Form's dump now also print alternative value names.

    HTML::Form will now pick up the phrase after a <input type=radio>
    or <input type=checkbox> and use that as the name of the checked
    value.

    HTML::Form's find_input now returns all inputs that match in
    array context.  Based on patch by Mark Stosberg <markstos@cpan.org>
    in <http://rt.cpan.org/Ticket/Display.html?id=3320>.

    HTTP::Daemon's send_file() method did not work when given
    a file name.  Patch by Dave W. Smith <dws@postcognitive.com>.

    HTTP::Daemon is less strict about field names in the request
    headers is received.  The Norton Internet Security firewall
    apparently likes to send requests with a header called
    '~~~~~~~~~~~~~~~'.   Further details in
    <http://rt.cpan.org/Ticket/Display.html?id=2531>.

    LWP::Protocol::http assumed $1 would be meaningful without
    testing the outcome of the match.  This sometimes produced
    an extra garbage Authentication header.
    Based on the patch by <bai@dreamarts.co.jp> in
    <http://rt.cpan.org/Ticket/Display.html?id=1994>.

    LWP::Protocol::mailto will try harder to locate the sendmail
    program as suggested in <http://rt.cpan.org/Ticket/Display.html?id=2363>.
    Also let $ENV{SENDMAIL} override the search.

    Patch to enable OS/2 build by Ilya Zakharevich.



2003-10-13   Gisle Aas <gisle@ActiveState.com>

    Release 5.70

    File::Listing::apache by Slaven Rezic <slaven@rezic.de>

    HEAD requests now work properly for ftp: URLs.
    Patch by Ville Skyttä <ville.skytta@iki.fi>.

    LWP::UserAgent: The protocols_allowed() and protocols_forbidden()
    methods are now case insensitive.  Patch by Ville Skyttä
    <ville.skytta@iki.fi>.

    Avoid warning from HTTP::Date on certain invalid dates.
    Patch by David Dick <david_dick@iprimus.com.au>.

    HTML::Form::param() is an alternative interface for inspecting
    and modifying the form values.  It resembles the interface
    of CGI.

    HTML::Form documentation updated.  Lots of typo fixes and improves
    by Martin Thurn <mthurn@northropgrumman.com>.

    HTML::Form will treat any unknown input types as text input.
    This appears to be what most browsers do.

    HTML::Form::parse() can now take a HTTP::Response object
    as argument.

    The "checkbox" and "option" inputs of HTML::Form can now be
    turned on with the new check() method.

    The inputs of HTML::Form can now track alternative value
    names and allow values to be set by these names as well.
    Currently this is only supported for "option" inputs.

    HTML::Form's dump() method now print the name of the form if
    present.



2003-01-24   Gisle Aas <gisle@ActiveState.com>

    Release 5.69

    Include lwptut.pod contributed by Sean M. Burke C<sburke@cpan.org>.

    The lwp-request aliases GET, HEAD, POST where installed when
    no program should be.  Fixed by David Miller <dave@justdave.net>.

    lwp-rget --help don't print double usage any more.

    HTTP::Header::Util is now more reluctant to put quotes around
    token values.

    Net::HTTP: Avoid warning on unexpected EOF when reading chunk
    header.



2003-01-02   Gisle Aas <gisle@ActiveState.com>

    Release 5.68

    Fix test failure for t/html/form.t when running under
    perl-5.8.0.



2003-01-01   Gisle Aas <gisle@ActiveState.com>

    Release 5.67

    HTTP::Cookies::Microsoft contributed by Johnny Lee <typo_pl@hotmail.com>.
    This module makes it possible for LWP to share MSIE's cookies.

    HTML::Form supports file upload better now.  There are some
    new methods on that kind of input; file(), filename(), content()
    and headers().

    Removed unfinished test that depended on Data::Dump.

    Net::HTTP avoids exceptions in read_response_headers() with
    laxed option.  It now always assumes HTTP/0.9 on unexpected
    responses.

    HTML::Form documentation reworked.



2002-12-20   Gisle Aas <gisle@ActiveState.com>

    Release 5.66

    Various patches from Sean M. Burke.  Most of them to
    match up LWP with the "Perl & LWP" book.

    LWP::DebugFile module contributed by Sean.

    LWP::Authen::Ntml contributed by James Tillman.

    HTTP::Daemon patch for Alpha by <shildreth@emsphone.com>

    The format_chunk() and write_chunk() methods of Net::HTTP
    did not work.  Bug spotted by Yale Huang <yale@sdf-eu.org>.

    The Client-Peer response header is back.



2002-05-31   Gisle Aas <gisle@ActiveState.com>

    Release 5.65

    Make HTTP::Date compatible with perl 5.8.

    Try to avoid to default to overwriting /usr/bin/head 
    on MacOS X when the perl install prefix is /usr/bin.

    HTTP::Cookies fix for parsing of Netscape cookies file
    on MS Windows. Patch by by Sean M. Burke <sburke@cpan.org>.

    HTTP::Negotiate doc patch from Edward Avis <epa98@doc.ic.ac.uk>.



2002-02-09   Gisle Aas <gisle@ActiveState.com>

    Release 5.64

    Simplified the Makefile.PL:
       - the scripts are not longer *.PL files

       - don't try to make symlinks for GET, HEAD, POST
         as that has not worked for a long time

       - the GET, HEAD, POST aliases for lwp-request should
         now work on Windows.
    
    HTTP::Cookies:
       - added 'clear_temporary_cookies' method;
         patch by Mike Schilli <schilli1@pacbell.net>.

       - trailing space in old cookie parameters not ignored;
         patch by Ivan Panchenko

       - protect against $SIG{__DIE__} handlers;
	 patch by Adam Newby <adam@NewsNow.co.uk>.

    LWP::Authen::Digest:
       - abort digest auth session if we fail repeatedly with
         the same username/password.

    MacOS portability patches to the test suite by
    Chris Nandor <pudge@pobox.com>.



2001-12-14   Gisle Aas <gisle@ActiveState.com>

    Release 5.63

    HTTP::Negotiate: Deal with parameter names in a case
    insensitive way.  Put a little weight on the order of features
    in the Accept headers.

    LWP::UserAgent: make sure that the 'request' attribute is
    always set on the returned response.

    LWP::Protocol::http will now allow certain bad headers
    in the responses it reads.  The bad headers end up in the
    header 'Client-Junk'.

    Net::HTTP new options to the 'read_response_headers'
    method.  The option 'laxed' will make it ignore bad header
    lines.  The option 'junk_out' can be used to pass in an
    array reference.  Junk header lines are pushed onto it.

    Net::HTTP::Methods: fixed the internal zlib_ok() to also
    return the correct value the first time.

    LWP::Protocol::http: Ensure that we don't read until
    select has said it is ok since we have put the socket
    in non-blocking mode.  Previously this could happen if
    you set the 'timeout' attribute of the user agent to 0.

    LWP::Authen::Digest now use Digest::MD5 instead of MD5.

    Some adjustments to Makefile.PL to figure out if
    Compress::Zlib is available and adjust the test suite
    accordingly.



2001-11-21   Gisle Aas <gisle@ActiveState.com>

    Release 5.62

    The $VERSION of LWP::UserAgent wrapped around.  This confused the
    CPAN indexer.  Bumped the major number to 2 to fix this.

    Net::HTTP did not work well on perl5.003.  The PeerHost argument
    to IO::Socket::INET was not recognized, so we had to use PeerAddr
    instead.  The syswrite() method also required a length argument.

    Net::HTTP did not deal with transfer encoding tokens in a
    case-insensitive way.  Patch by Blair Zajac <blair@orcaware.com>.

    The jigsaw-chunk test failed on MacOS because "\n" is different.
    Patch by Chris Nandor <pudge@pobox.com>.



2001-11-16   Gisle Aas <gisle@ActiveState.com>

    Release 5.61

    LWP::Protocol::http did not invoke its _fixup_header method.
    The result was that the 'Host' header got completely wrong
    when talking through a proxy server.

    The live Google test is gone.  They blocked us.

    The guts of Net::HTTP has moved to Net::HTTP::Methods.

    Net::HTTP now has limits on the size of the header which are
    set by default.

    New module Net::HTTPS.

    Documentation tweaks.

    HTTP::Headers: The 'remove_header' method now return the values
    of the fields removed as suggested by Blair Zajac <blair@orcaware.com>.
    Also a typo fix by Blair.

    HTTP::Message: The delegation via &AUTOLOAD should be slightly
    faster now.  It will install a real forwarding function the
    first time it is called for each HTTP::Headers method.

    LWP::UserAgent: Don't forward 'Cookie' headers on redirect.
    Patch by Steve A Fink <steve@fink.com>.

    LWP::Protocol::http has been reorganized to make it simpler
    to subclass it. Other minor changes to it include:
       - Client-Warning is gone
       - Client-Request-Num renamed to Client-Response-Num
       - A 'Transfer-Encoding' header is rewritten into a
         'Client-Transfer-Encoding' header.

    LWP::Protocol::https is completely redone.



2001-10-26   Gisle Aas <gisle@ActiveState.com>

    Release 5.60

    Made HTTP/1.1 the default.  The old HTTP/1.0 module has been
    renamed as LWP::Protocol::http10.  There is an environment
    variable; PERL_LWP_USE_HTTP_10 that can be set to have LWP
    still pick up the old drivers.

    Deal with "100 continue" responses even when not requested by
    and Expect header in the request.  MS IIS seems to eager to send
    this kind of response.

    For HTTP/1.1 over SSL there was a problem with the underlying
    SSL libraries if the socket was configured to non-blocking mode.
    Disable this for https.
    Based on a patch from Michael Thompson <mickey@berkeley.innomedia.com>

    Support the Range header for ftp:// requests.
    Patch by David Coppit <david@coppit.org>.

    Rearrange Bundle::LWP on request from Chris Nandor.

    HTTP::Cookies: Allow a domain like .foo.com match host "foo.com".
    Patch by Alexandre Duret-Lutz <duret_g@lrde.epita.fr>

    For redirects make sure Host header is not copied to the new
    request.

    The HTML::HeadParser is not loaded until actually needed.

    Net::HTTP should now work with perl5.005 by a simple tweak
    to 'require IO::Socket::INET'.

    WWW::RobotRules::AnyDBM: Explicitly clear database on open.
    Some DBM implementations doesn't support the O_TRUNC flag
    properly.  Patch by Radu Greab <radu@netsoft.ro>.



2001-09-19   Gisle Aas <gisle@ActiveState.com>

    Release 5.53_97

    LWP::Protocol::http11: fix socket leak.  Because we managed
    to set up a circular reference within the sockets objects they
    stayed around forever.

    LWP::UserAgent: Split up simple_request into prepare_request
    and send_request. Patch contributed by Keiichiro Nagano <knagano@sodan.org>

    LWP::Protocol::http: Pass all header data to LWP::Debug::conns.
    Based on patch by Martijn.

    LWP::UserAgent: Sean fixed a Cut&Paste error.

    HTTP::Cookies: avoid pack("c",...) warning from bleadperl.



2001-08-27   Gisle Aas <gisle@ActiveState.com>

    Release 5.53_96

    HTTP/1.1 support also for https.
    Contributed by Doug MacEachern <dougm@covalent.net>

    The HTTP/1.1 modules are now enabled by default.  Hope that will give
    them more testing than they otherwise would have gotten.

    HTTP::Daemon's accept now has same behaviour as IO::Socket's
    accept in list context.  Fixed by Blair Zajac <blair@gps.caltech.edu>.

    More argument sanity checking in HTTP::Request->uri and
    LWP::UserAgent->simple_request.  Patch by Sean M. Burke.

    HTTP::Protocol::http.  Deal with short writes.
    Patch by Norton Allen <allen@huarp.harvard.edu>

    HTTP::Protocol::http11:  Deal with newlines in header values.

    Net::HTTP: call sysread (instead of xread) when more data is required.



2001-08-06   Gisle Aas <gisle@ActiveState.com>

    Release 5.53_95

    Fix HTTP::Cookies where there is a mix of Set-Cookie and
    Set-Cookie2 headers.  In that case we used to ignore all Set-Cookie
    headers.  Now we only ignore those Set-Cookie headers that reference
    the same cookie as a Set-Cookie2 header.

    HTTP::Request, HTTP::Response will by default now use "URI" class,
    instead of "URI::URL", when constructing its URI objects.  This
    has a potential for breaking existing code as URI::URL objects had
    some extra methods that external code might depend upon.

    Patches by Sean M. Burke:
       - Fix treatment of language tags in HTTP::Negotiate 
       - Avoid trailing newline in $response->message
       - HTTP::Response clarifications

    LWP::Simple deals with non-absolute redirects "correctly" now.

    Net::HTTP does not try to load Compress::Zlib until it is needed.

    Net::HTTP documentation has been updated.



2001-05-05   Gisle Aas <gisle@ActiveState.com>

    Release 5.53_94

    Sean M. Burke's update to LWP::UserAgent:
       - updated redirect_ok behaviour
       - new convenience methods: get/head/post/put
       - protocols_allowed/protocols_forbidden
       - LWP::Protocol::nogo (new module)

    Added digest auth test against Jigsaw

    Fixed a 'use of uninitialized'-warning in the handling of
    digest authentication.

    Net::HTTP updates:
      - new option: SendTE
      - support transfer-encoding 'deflate' and 'gzip' (when Compress::Zlib
        is available).
      - new methods: format_chunk, format_chunk_eof
      - use -1 (instead of "0E0" as signal that no data was available,
        but this was not EOF).



2001-04-28   Gisle Aas <gisle@ActiveState.com>

    Release 5.53_93

    Makefile.PL now asks some questions

    Added live tests for the new HTTP/1.1 support

    LWP::MemberMixin: make it possible to set a value to the 'undef' value.

    Net::HTTP:
        - transparent support for 'deflate' and 'gzip' transfer encodings
          (need to have the Compress::Zlib module installed for this to work).



2001-04-25   Gisle Aas <gisle@ActiveState.com>

    Release 5.53_92

    LWP::Protocol::ftp now support keep-alives too.  The command
    connection will stay open if keep-alives are enabled.

    LWP::Protocol::http11 various fixes:
        - chunked request content did not work
        - monitor connection while sending request content
        - deal with Expect: 100-continue

    LWP::RobotUA: Protect host_port call.  Not all URIs have this method.



2001-04-20   Gisle Aas <gisle@ActiveState.com>

    Release 5.53_91

    Introduced LWP::ConnCache module.  Works similar to HTTP::Cookies,
    it that it takes effect if associated with the $ua.

    The handling of $ua->max_size changed to make 0 mean 0
    (not unlimited).  A value of undef means no limit.
    The X-Content-Base header is gone.  I hope nobody relies on
    it.  It might come back if people start to scream.  There
    is a new Client-Aborted header instead.

    The Range header generated for $ua->max_size had an off-by-one
    error.  A range of "0-1" means 2 bytes.

    The LWP::UserAgent constructor now takes configuration arguments.

    Keep-alive and the new HTTP/1.1 module can now be simply
    enabled with something like:

          LWP::UserAgent->new(keep_alive => 1);

    New method $ua->conn_cache to set up and access the associated
    connection manager.

    If the string passed to $ua->agent() ends with space then
    the "libwww-perl/#.##" string is automatically appended.

    New method $ua->_agent

    Passing a plain hash to $ua->cookie_jar automatically loads
    HTTP::Cookies and initialise an object using the hash content
    as constructor arguments.

    LWP::Protocol::http11 now use the conn_cache of the $ua.

    LWP::Protocol::http11 now added a few new Client- headers.

    LWP::Protocol avoid keeping the connection alive if $ua->max_size
    limit prevents the whole body content from being read.

    Net::HTTP updates:
       - new methods: write_chunk(), write_chunk_eof()
       - reset state properly when a new body is read.
       - always set read buffer empty on eof
       - doc update

    WWW::RobotRules patch by Liam Quinn <liam@htmlhelp.com>:
       - Always qualify netloc with port.
       - Reverse User-Agent substring matching.



2001-04-18   Gisle Aas <gisle@ActiveState.com>

    Release 5.53_90

    Note: This is a developer only release.  Not for production use.

    LWP::Protocol::http11 now does keep-alives by default.  Still need
    to figure out what interface to provide at the $ua level.

    LWP::Protocol::http11 deals with CODE content in request.

    Net::HTTP updated:
        - added format_request() method
        - added _rbuf and _rbuf_length methods
        - read_response_headers does not return protocol version
	  any more.
        - peer_http_version method did not work because of typo.
        - documentation added

    New module Net::HTTP::NB.  This is a Net::HTTP subclass that
    is better suited for multiplexing as it is able to do no-blocking
    reads of headers and entity body chunks.

    HTTP::Request: Protect $request->uri against evil $SIG{__DIE__} handlers.

    Some reorganisation in how stuff is passed from $ua to protocol object.
    The $ua is now passed in so protocol objects might store start in it.

    The $ua->max_size default is now 0.

    The $ua->clone method avoids sharing of proxy settings between
    the old and the new.

    This file is renamed to 'Changes' (used to be 'ChangeLog').



2001-04-10   Gisle Aas <gisle@ActiveState.com>

    Release 5.53

    LWP::Simple::get() could sometimes return nothing on failure in
    list context.  Now it always returns 'undef'.

    HTTP::Cookies does not request 2 dots on domain names any more.
    New option to hide the Cookie2 header.  Cookie2 header now quote
    the version number. Updated reference to RFC 2965.

    Support for embedded userinfo in http proxy URIs.  It means that
    you know can set up your proxy with things like:
        http_proxy="http://proxyuser:proxypass@proxyhost:port"
    Patch by John Klar <j.klar@xpedite.com>.

    Experimental HTTP/1.1 support.  New module called Net::HTTP that
    provide the lower level interface and a LWP::Protocol::http11
    module that builds on it.  The HTTP/1.1 protocol module must be
    loaded and registered explicitly, otherwise the old and trustworthy
    HTTP/1.0 module will be used.

    LWP::Protocol::GHTTP will try to use the get_headers() methods
    so that it can actually extract all the headers.



2001-03-29   Gisle Aas <gisle@ActiveState.com>

    Release 5.52

    HTTP::Header: new method $h->init_header() that will only
    set the header if it is not already set.  Some shuffling
    around in the code.

    LWP::UserAgent will not override 'User-Agent', 'From'
    or 'Range' headers if they are explicitly set in the
    request passed in.

    HTML::Form tries to optimize parsing be restricting the
    tags that are reported by HTML::Parser.  Will need
    HTML::Parser v3.19_93 or better for this to actually
    have any effect.

    LWP::Protocol::ftp now deals with path parameters again.
    It means that you can append ";type=a" to ftp-URI and
    it will download the document in ASCII mode.

    If the server output multiple Location headers on a redirect,
    ignore all but the first one.

    Extract cookies failed on request URIs with empty paths.
    This was only triggered if you used URI objects directly in
    scripts.

    This change was actually part of 5.51:  Fix qop="auth"
    handling for Digest authentication.
    Patch by Dave Dunkin <dave_dunkin@hotmail.com>.



2001-03-14   Gisle Aas <gisle@ActiveState.com>

    Release 5.51

    SECURITY FIX: If LWP::UserAgent::env_proxy is called in a CGI
    environment, the case-insensitivity when looking for "http_proxy"
    permits "HTTP_PROXY" to be found, but this can be trivially set by the
    web client using the "Proxy:" header.  The fix applied is that
    $ENV{HTTP_PROXY} is not longer honored for CGI scripts.
    The CGI_HTTP_PROXY environment variable can be used instead.
    Problem reported by Randal L. Schwartz.

    NOTE: It is recommended that everybody that use LWP::UserAgent
          (including LWP::Simple) in CGI scripts upgrade to this release.

    Explicit setting of action on HTML::Form had no effect because
    of a code typo.  Patch by BooK <book@netcourrier.com>.

    HTTP::Daemon: The CONNECT method need special treatment because
    it does not provide a URI as argument (just a "hostname:port").
    The non-upward compatibility warning is that you must now call
    $request->url->host_port to get the host/port string for CONNECT,
    rather than calling $request->url and using the entire string.
    Based on patch from Randal L. Schwartz <merlyn@stonehenge.com>

    HTTP::Daemon: Create self URL based on $self->sockaddr.  This works
    better when LocalAddr is used to specify the port number.  Based on
    patch from Ben Low <ben@snrc.uow.edu.au>. 

    Avoid potential '<FILE> chunk 1' messages at the end of the response
    'message'.



2001-01-12   Gisle Aas <gisle@ActiveState.com>

    Release 5.50

    Fix for test cases that failed because of URI-1.10 now encode
    space as '+' instead of '%20. Patch by Christian Gilmore
    <cgilmore@tivoli.com>.

    Makefile.PL: Require URI-1.10.

    HTTP::Daemon now accepts any non-space character as method name
    on the request line.  It used to fail on methods like "M-POST"
    because it only allowed \w-chars.

    HTTP::Date now allow fractional seconds in ISO date formats.
    Based on patch from Mark D. Anderson <mda@discerning.com>

    HTTP::Request::Common will now calculate Content-length
    even if $DYNAMIC_FILE_UPLOAD is set.  Patch provided by
    Lindley, Lee T <Lee.Lindley@viasystems.com>.



2000-12-31   Gisle Aas <gisle@ActiveState.com>

    Release 5.49

    HTML::Form: Use croak() instead of die.  Implement
    $f->possible_values.  Avoid use of undef value warnings.

    HTTP::Cookies: fix epath issue.  Make it work for URI::http
    as the uri-attribute of HTTP::Request object

    HTTP::Date: Allow ignored timezone info in parenthesis. Patch
    by Sander van Zoest <sander@covalent.net>.
    Fix calculation of non-GMT timezones (wrong sign).  Patch by
    KONISHI Katsuhiro <konishi@din.or.jp>.

    HTTP::Response: Let $res->base() absolutize the URI.  Based on
    bug report from Hans de Graaff <hans@degraaff.org>.

    Fixed minor doc typos in HTTP::Headers::Util and LWP::UserAgent.

    HTTP::Request::Common: Support boundary spec from client.

    LWP::Simple: Avoid trivial_http_get when @ appears in authority
    part of URI

    LWP::Authen::Digest: Need to have query in URI param. 
    Spotted by <ronald@innovation.ch>.

    LWP::Protocol::http: unescape username/password if they are
    specified in the URI.

    Added LWP::Protocol::GHTTP.  This allow LWP to use the HTTP::GHTTP
    module as the low level HTTP driver.



2000-04-09   Gisle Aas <gisle@aas.no>

    Release 5.48

    README.SSL update by Marko Asplund <aspa@hip.fi>

    Added cookie example to lwpcook.pod

    HTTP::Date::str2time returns undef on failure instead
    of an empty list as suggested by Markus B Krüger <markusk@pvv.org>

    $request->uri($uri) will now always store a copy of the $uri.

    HTTP::Status: Added status codes from RFC 2616 and RFC 2518 (WebDAV)

    LWP::RobotUA will not parse robots.txt unless content type and
    content sample looks right.

    LWP::UserAgent: Deal with multiple WWW-Authenticate headers.
    Patch by Hugo <hv@crypt.compulink.co.uk>

    $ua->proxy can now return the old proxy settings without
    destroying the old one.
    Based on patch by Benjamin Low <ben@snrc.uow.edu.au>

    LWP::Protocol::http update

        - don't terminate header parsing on bad headers
        - extra_sock_opts
        - preparations for keep alive support
        - method CONNECT

   WWW::RobotRules deal with various absolute URIs in the
   disallow lines.

   Makefile.PL: Make sure we have HTML::TokeParser

   Clean test on VMS.
   Patch by Charles Lane <lane@ DUPHY4.Physics.Drexel.Edu>.



1999-11-16   Gisle Aas <gisle@aas.no>

 o  Release 5.47

 o  Added HTML::Form to the distribution.

 o  LWP::Protocol::ftp: Make it URI.pm compatible.  We broke it in 5.45.

 o  LWP::Protocol::http: Kill any Connection header

 o  LWP::MediaTypes: Fixed builtin html/text mapping.
    Added bz2 to suffixEncoding



1999-10-28   Gisle Aas <gisle@aas.no>

 o  Release 5.46

 o  Updated mailing list address

 o  Avoid warnings for lwp-request -t

 o  referrer as alternative spelling for referer as suggested by tchrist.

 o  More conservative selection of boundary for multipart messages
    in &HTTP::Request::Common::POST.

 o  LWP::MediaTypes can now export &read_media_types.

 o  Spelling corrections from Ben Tilly <Ben_Tilly@trepp.com>



1999-09-20   Gisle Aas <gisle@aas.no>

 o  Release 5.45

 o  The LWP SSL support better explained.  Documentation in README.SSL
    and lwpcook.pod contributed by Marko Asplund <aspa@hip.fi>.

 o  LWP::Protocol::https: Try loading IO::Socket::SSL if Net::SSL is
    not available.

 o  lwp-mirror -t option did not work.

 o  defined(@ISA) eliminated. Patch by Nathan Torkington <gnat@frii.com>

 o  LWP::Protocol::ftp: Protect against empty path_segments



1999-06-25   Gisle Aas <gisle@aas.no>

 o  Release 5.44

 o  We require URI-1.03, since this fix some query quoting stuff
    that HTTP::Request::Common rely upon.

 o  'lwp-request -HUser-Agent:foo' can now be used to set this
    header too.

 o  Localize $/ to ensure standard record separator a few places
    in HTTP::Cookies

 o  LWP::UserAgent will now set the Range header in requests if
    the $ua->max_size attribute is set.



1999-05-09   Gisle Aas <gisle@aas.no>

 o  Release 5.43

 o  New lwp-request command line option that allow you to put any
    header into the request (-H).

 o  New HTTP::Date because of Y2K-problems with the old one.
    It refused to parse the ftp-listing (ls -l) dates missing year.
    Additional entry point is parse_date().  This function avoid any
    limitations caused by the time-representation (seconds since
    epoch).

 o  Y2K fix to t/base/cookies.t.  Netscape's original cookie
    example expires at 09-Nov-99.

 o  Added another binmode() to LWP::Protocol::file as suggested
    by Matt Sergeant <matt-news@sergeant.org>



1999-03-20   Gisle Aas <gisle@aas.no>

 o  Release 5.42
	
 o  MacOS patches from Paul J. Schinder <schinder@leprss.gsfc.nasa.gov>

 o  Documentation patch from Michael A. Chase <mchase@ix.netcom.com>

 o  PREREQ_PM patch from Andreas Koenig <andreas.koenig@anima.de>
 
 o  LWP::Simple::head fix by Richard Chen <richard@lexitech.com>
 
 o  "LWP fails with PerlEXE"-patch from Gurusamy Sarathy

 o  Allow "." in HTTP header names.  Patch by Marc Langheinrich
    <marc@ccm.cl.nec.co.jp>

 o  Fixed reference to $uri->netloc in lwp-request

 o  Cute animation in lwp-download



Mon Nov 19 1998   Gisle Aas <aas@sn.no>

 o  Release 5.41

 o  HTTP::Cookies provide better Netscape cookies compliance.
    Send back cookies to any port, and allow origin host name to
    be specified as domain, and still be treated as a domain.
    Patch from Andreas Gustafsson <gson@araneus.fi>.

 o  HTTP::Cookies now ignore the Expires field in Set-Cookie, if the
    date provided can't be parsed by HTTP::Date.

 o  HTTP::Daemon will lowercase the hostname returned from
    Sys::Hostname::hostname().  This avoid some test failures in
    the test suite for people with upper- or mixed-cased hostnames.

 o  LWP::Protocol::gopher: IO::Socket::INET ctor did not specify
    Proto => 'tcp'.  This made it less portable to older IO::Socket
    versions.

 o  No programs installed when you build the Makefile with
    'perl Makefile.PL LIB=/my/lib'

 o  LWP bundle mention Digest::MD5 instead of MD5

 o  headers-auth.t test suite bug triggered by perl5.005_5x.
    Patch by Albert Dvornik <bert@genscan.com>

 o  The local/http.t test actually did try to unlink(".").  This was
    very confusing on systems where it succeed.



Mon Oct 12 1998   Gisle Aas <aas@sn.no>

 o  Release 5.40_01

 o  Unbundled URI::URL modules.  You now have to install the
    URI.pm module in order to get libwww-perl working.

 o  Made library URI.pm compatible.  Made all URI object instantiations
    based on $HTTP::URI_CLASS variable.

 o  New lwp-rget option: --referer.
    Patch by INOUE Yoshinari <inoue@kusm.kyoto-u.ac.jp>.

 o  One more binmode() to HTTP::Daemon as suggested by
    Markus Laker <mlaker@contax.co.uk>.



Tue Aug  4 1998   Gisle Aas <aas@sn.no>

 o  Release 5.36

 o  The lwp-download script will call $ua->env_proxy now.

 o  The lwp-request script allows content types (specified with the -c
    option) with optional parameters like: multipart/mixed; boundary="--".

 o  LWP::UserAgent will lowercase all authentication parameter names
    before passing it to the authentication module.  Previous releases
    ignored parameters like; Realm="Foo" (because Realm contained
    upper case letters).

 o  LWP::Protocol::ftp test for If-Modified-Since was wrong.

 o  How the $url->abs method works can now be configured with the global
    variables $URI::URL::ABS_ALLOW_RELATIVE_SCHEME and
    $URI::URL::ABS_REMOTE_LEADING_DOTS.

 o  The anonymous password guesser for ftp URLs will now call the external
    `whoami` program any more.  Patch by Charles C. Fu <ccwf@bacchus.com>.

 o  LWP::Protocol::http now allow dynamic requests without any
    Content-Length specified when Content-Type is multipart/*

 o  HTTP::Request::Common can now upload infinite files.
    (Controlled by the $DYNAMIC_FILE_UPLOAD configuration variable.)



Fri Jul 10 1998   Gisle Aas <aas@sn.no>

 o  Release 5.35

 o  More lwp-rget patches from David D. Kilzer <ddkilzer@madison.dseg.ti.com>.
    Adds the following new options: --iis, --keepext, --tolower

 o  LWP::MediaTypes patches from MacEachern <dougm@pobox.com>.  Adds new
    functions: add_type(), add_encoding(), read_media_types()



Tue Jul  7 1998   Gisle Aas <aas@sn.no>

 o  Release 5.34

 o  LWP::Protocol::ftp now try to use the MDTM command to support
    the Last-Modified response header as well as
    If-Modified-Since in requests.  Original and final patch by
    Charles C. Fu <ccwf@bacchus.com>

 o  $url->path_components will not escape "." any more.

 o  WWW::RobotRules will now work for Mac text files too (lines delimited
    by CR only).  Patch by Olly Betts <olly@muscat.co.uk>

 o  lwp-rget support <area ..> links too.



Thu May  7 1998   Gisle Aas <aas@sn.no>

 o  Release 5.33

 o  LWP::Simple::get() did try to handle too many of the 3xx
    codes as redirect when it bypasses full LWP.

 o  LWP::UserAgent->mirror will now use utime(2) to set the
    file modification time corresponding to the Last-Modified
    header.

 o  LWP::Protocol::http will not modify the HTTP::Request that
    it is processing.  This avoids sticky Host header for
    redirects.

 o  URI::Heuristic and lwp-download documentation update.



Wed Apr 15 1998   Gisle Aas <aas@sn.no>

 o  Release 5.32

 o  Much improved HTTP::Daemon class. We now support persistent
    connections.  Changes include:
       - $c->get_request can be told to return after reading and
         parsing headers only.
       - $c->reason (new method)
       - $c->read_buffer (new method)
       - $c->proto_ge (new method)
       - $c->force_last_request (new method)
       - $c->send_response now support CODE reference content
         and will use chunked transfer encoding for HTTP/1.1 clients.
       - expanded the documentation.



Fri Apr 10 1998   Gisle Aas <aas@sn.no>

 o  Release 5.31

 o  Makefile.PL now checks that HTML::HeadParser is present.

 o  Updated HTTP::Cookies according to draft-ietf-http-state-man-mec-08.txt
    It now supports the .local domain and value less 'port' attribute in
    the Set-Cookie2 header.

 o  HTTP::Headers update:
       - $h->content_type now always return a defined value
       - $h->header($field) will now concatenate multi-valued header
         fields with "," as separator in scalar context.

 o  HTTP::Request::Common update:
       - used to destroy the content of the  hash/array arguments
         passed to its constructor functions.
       - allow a hash reference to specify form-data content.
       - you can override Content-Disposition for form-data now.
       - set content-encoding for files if applicable
       - default boundary string is now always "--000"

 o  LWP::UserAgent will not follow more than 13 redirects
    automatically.



Wed Apr  1 1998   Gisle Aas <aas@sn.no>

 o  Release 5.30

 o  Unbundled the following modules:

       * HTML-Parser  (HTML::Parser, HTML::Entites, HTML::LinkExtor,...)
       * HTML-Tree    (HTML::Element, HTML::TreeBuilder,...)
       * Font-AFM     (Font::AFM, Font::Metrics::*)
       * File-CounterFile

 o  Simplified internal structure of HTTP::Headers.  Hopefully,
    nobody will notice.

 o  New modules HTTP::Headers::Auth,  HTTP::Headers::ETag that adds
    additional convenience methods to the HTTP::Headers class.

 o  Removed split_etag_list() from HTTP::Headers::Util, in the hope
    that nobody had starting using it.



Tue Mar 24 1998   Gisle Aas <aas@sn.no>

 o  Release 5.22

 o  HTTP::Cookies made more compatible with Netscape cookies.  Allow
    the domain to match host, allow dots in the part of the hostname
    not covered by domain.  Don't quote the cookie value even when it
    contains non-token chars.  Based on patch from Kartik Subbarao
    <subbarao@computer.org>.

 o  Updated HTTP::Status to reflect <draft-ietf-http-v11-spec-rev-03>.
    RC_MOVED_TEMPORARILY renamed to RC_FOUND.  Added codes
    RC_TEMPORARY_REDIRECT (307) and RC_EXPECTATION_FAILED (417).
    Slightly more documentation too.

 o  The split_header_words() function HTTP::Headers::Util could go
    into infinite loop on some header values.  Implemented split_etag_list()
    too.  Added more documentation and test script for this module.

 o  LWP::Simple now switch to full LWP implementation even for systems
    that force all environment keys to be upper case.  Modification
    suggested by Dale Couch <dcouch@training.orl.lmco.com>.

 o  LWP::UserAgent allows redirects to a relative URL with scheme to be
    made.  Suggested by Chris W. Unger <cunger@cas.org>.

 o  Applied dtd2pm.pl patches from <peterm@zeta.org.au>.  It can now
    extract information from the HTML40.dtd



Thu Mar 12 1998   Gisle Aas <aas@sn.no>

 o  Release 5.21

 o  lwp-rget patches from David D. Kilzer <ddkilzer@madison.dseg.ti.com>
    (modified by Gisle).  Support the --hier  and the --auth options
    and <frame>s.

 o  File::CounterFile protect against bad $/ and $\ as suggested
    by Frank Hoehne.
 
 o  File::Listing used "next" when return was more appropriate.
    Patch by erik@mediator.uni-c.dk.

 o  HTML::Element support for multiple boolean attributes for a single
    element.  Patch by Philip Guenther.

 o  Can set $HTTP::Headers::TRANSLATE_UNDERSCORE to FALSE value to
    suppress tr/_/-/ of header keys.

 o  LWP::Protocol::http will not initialize the Host header if it is
    already set.

 o  LWP::Protocol::http did not handle responses with no header lines
    correctly.  Patch by Daniel Buenzli <buenzli@rzu.unizh.ch>

 o  $url->rel() handles path segments without leading "/" better.



Fri Feb 13 1998   Gisle Aas <aas@sn.no>

 o  Release 5.20

 o  Fixed the "500 Offset outside string" bug that affected perl
    5.004_03 and older version of Perl.

 o  Fixed a documentation typo spotted by Michael Quaranta
    <quaranta@vnet.IBM.COM>

 o  HTTP::Date: Protect against croaking from timegm/timelocal.



Mon Jan 26 1998   Gisle Aas <aas@sn.no>

 o  Release 5.19

 o  HTML::Parser does not call $self->text() callback for empty text
    any more.

 o  LWP::Protocol::https was noisy when connections failed and the
    script was running with '-w' (noise inherited from IO::Socket::INET)

 o  $ua->use_alarm(BOOL) now gives a warning if running with -w



Tue Jan 20 1998   Gisle Aas <aas@sn.no>

 o  Developer release 5.18_05

 o  HTTPS support based on my Crypt-SSLeay module.  The Net-SSLeay module
    is not supported any more.

 o  lwp-request documentation typo spotted Martijn Koster.

 o  Removed superfluous \\ in the URI::Escape regex. This was also
    spotted by Martijn.

 o  File::Listing now handles timezones correctly.

 o  Added $VERSION to modules that was missing it.

 o  Added 'use strict' to several modules that was missing it.

 o  LWP::Protocol::http now adds the Client-Peer header to responses and
    has hooks for more callbacks.

 o  LWP::Protocol::https adds Client-SSL-Cipher, Client-SSL-Cert-Subject
    and Client-SSL-Cert-Issuer headers to the response.  The requests can
    also be made conditional based on the peer certificate using the
    If-SSL-Cert-Subject header in requests.

 o  HTML::Parse is back.  (It was even used in lwpcook.pod)



Wed Dec 17 1997   Gisle Aas <aas@sn.no>

 o  Developer release 5.18_04

 o  Makefile.PL fix based on report from Pon Hwa Lin <koala@fragment.com>

 o  lwp-request will now print the response code message with -s and -S
    options.

 o  Hide IO::Socket::INET noise when running under -w

 o  Don't set 'Content-Length: 0' in HTTP requests.

 o  LWP::Protocol::http now calls LWP::Debug::conns again



Tue Dec 16 1997   Gisle Aas <aas@sn.no>

 o  Developer release 5.18_03

 o  Got rid of alarms() and replaced LWP::Socket with IO::Socket::INET.
    New protocol implementations for http, https, gopher, nntp.
    $ua->use_alarm() is now a noop.

 o  LWP::Protocol::ftp patch from  Tony Finch <fanf@demon.net>.

 o  Removed deprecated modules from the distribution; HTML::Parse,
    LWP::Socket, LWP::SecureSocket, LWP::IO, LWP::TkIO.



Fri Dec 12 1997   Gisle Aas <aas@sn.no>

 o  Release 5.18

 o  HTTP authorization patches from Tony Finch <fanf@demon.net>.
    Allows "user:pass@" in HTTP URLs.

 o  HTML::Parser patch by Brian McCauley <B.A.McCauley@bham.ac.uk>.
    Pass original text to end() method.

 o  The HTML::Parser->netscape_buggy_comment method is deprecated.
    Use HTML::Parser->strict_comment instead.  The default value
    has changed with the name.

 o  Some HTML::Parser optimization tweaks.

 o  New module named HTML::Filter

 o  Updated HTTP::Headers to the latest HTTP spec.  Added knowledge
    about the "Trailer", "Expect", "TE", "Accept-Range" headers.
    "Public" header is gone.

 o  Added some more header convenience methods: if_unmodified_since,
    content_language, and proxy_authorization methods.

 o  HTTP::{Request,Response}->clone can handle subclasses now.

 o  HTTP::Request->url() can now undefine the URL.

 o  HTTP::{Request,Response}->as_string format looks more like
    the HTTP protocol formatting now.  Dashed lines above and
    below is gone.

 o  Documented HTTP::Response->status_line method

 o  Compressed HTML::Response->error_as_HTML output

 o  HTTP::Status updated to latest HTTP spec.  Added 
    RC_REQUEST_RANGE_NOT_SATISFIABLE (416)



Tue Dec  2 1997   Gisle Aas <aas@sn.no>

 o  Release 5.17

 o  All authentication handling moved out of LWP::UserAgent and into
    LWP::Authen::Basic and LWP::Authen::Digest.  We now also support
    PROXY_AUTHENTICATION_REQUIRED responses.

 o  HTML::Formatter will always add a blank line for <br>.

 o  Avoid use of uninitialized value in HTTP::Daemon.

 o  HTTP::Date allows seconds when recognizing 'ls -l' dates.  This
    allows us to parse syslog time stamps.

 o  HTTP::Request::Common::POST allows a hash reference as second
    argument (in addition to an array reference).

 o  LWP::Simple will initialize the $ua if it is exported.

 o  Various documentation updates.



Fri Nov 21 1997   Gisle Aas <aas@sn.no>

 o  Release 5.16

 o  LWP::Simple::head() would die in array context because str2time
    was not imported any more.

 o  HTTP::Daemon->accept now takes an optional package argument like
    IO::Socket->accept does.

 o  Made HTTP::Request and HTTP::Response subclassable.

 o  Added Proxy-Authorization example to lwpcook.



Thu Nov  6 1997   Gisle Aas <aas@sn.no>

 o  Release 5.15

 o  New module URI::Heuristic

 o  The lwp-request script now use URI::Heuristic for it's URL arguments.
    It means that 'lwp-request perl' will not get a file called "./perl"
    but will fetch the page "http://www.perl.com" or something similar.
    If you want to get the file you have to prefix it with "./".  Full
    URLs are never affected by this.

 o  LWP::Simple::get() will bypass LWP for simple HTTP requests.  This
    should make it somewhat faster.

 o  LWP::RobotUA has a new method called $ua->use_sleep() that
    controls how niceness towards the servers are enforced.
    Previously $ua->use_alarm() used to control this, but this did
    not work well on Win32 systems.

 o  URI::URL::rel() will handle URLs to a fragment within the same
    document better. Initial patch from Nicolai Langfeldt
    <janl@math.uio.no>.

 o  HTML::Element don't consider </th>, </tr> and </td> optional any
    more.  I wonder how Netscape managed to not implement this
    correctly all this time.

 o  Added lots of modern tags to HTML::AsSubs.

 o  HTTP::Request::Common will read uploaded files in binmode().
    This should be better for Win32 systems.  Contributed by
    <Steve_Kilbane@cegelecproj.co.uk>.



Sun Oct 12 1997   Gisle Aas <aas@sn.no>

 o  Release 5.14

 o  HTML::Formatter patches from Andreas Gustafsson <gson@araneus.fi>.
    The formatters handling of whitespace is much better now.  Thanks!

 o  HTML::FormatText: can specify margins in the constructor.

 o  URI::URL: the base will be absolutized internally now.

 o  URI::URL will take advantage of void context provided by perl5.004.
    This means that using $u->path and $u->query should be safer now.

 o  URI::URL->print_on defaults to STDERR now (used to be STDOUT).

 o  URI::URL: removed version 3 compatibility stuff ($COMPAT_VER_3).

 o  $ua->mirror should work better on dosish systems (can not
    rename when target file exists).

 o  Typo in lwp-download prevented it from compiling.

 o  Some minor documentations typos corrected.



Sat Sep 20 1997   Gisle Aas <aas@sn.no>

 o  Release 5.13

 o  Brand new module called HTTP::Cookies.  It stores cookies
    (Set-Cookie and Set-Cookie2 headers) from responses and can
    create appropriate Cookie headers for requests.  It can also
    share cookie files with Netscape.

 o  LWP::UserAgent now support the cookie_jar() attribute.  When
    set to an HTTP::Cookies object, it will automatically manage
    the cookies sent to the servers.  Off by default.

 o  New header utility functions in HTTP::Headers::Util.

 o  Win32 and OS/2 patches for the lwp-xxx utilities.  Turn on
    binary mode by default (option to turn it off), avoid modifying $0,
    and don't be confused about suffixes in the script names.
    Contributed by Ben Coleman <bcoleman@mindspring.com>

 o  OpenVMS patch for Font:AFM by Brad Hughes <brad@tmc.naecker.com>



Fri Sep  5 1997   Gisle Aas <aas@sn.no>

 o  Release 5.12

 o  decode_entities() would sometimes introduce ";" after
    things that looked like they were entities.

 o  HTML::LinkExtor knows about <applet code="...">

 o  Patch from Gary Shea <shea@gtsdesign.com> that makes the
    tests work even if perl is not called "perl"

 o  HTTP::Date handles 12:00PM correctly now. Patch from
    William York <william@mathworks.com>

 o  HTTP::Request::Common don't quote the boundary string for
    multipart/form-data messages any more.

 o  Font::AFM works for encodings where .notdef is defined to
    have some size.  Documentation and efficiency update.



Wed Aug  6 1997   Gisle Aas <aas@sn.no>

 o  Release 5.11

 o  Perl version 5.004 is now required for libwww-perl.

 o  Win32 patches from Gurusamy Sarathy <gsar@engin.umich.edu>.
    Now passes all tests on that platform.

 o  HTTPS support contributed by Josh Kronengold <mneme@mcny.com>

 o  Support hex entities &#xFF;  HTML::Entities::(en|de)code only
    modify their argument in void context.

 o  Fixed formatter bug with <font> tags which did not specify size.

 o  Better HTML::HeadParser documentation

 o  Fixed HTML::LinkExtor documentation typo spotted by Martijn.

 o  HTTP::Request::Common now use CRLF for multipart/form-data



Fri Jun 20 1997   Gisle Aas <aas@sn.no>

 o  Release 5.10

 o  Make '+' a reserved URL character.  Decode unescaped '+' as
    space in $url->query_form().

 o  Use $Config{d_alarm} to determine default for $ua->use_alarm()



Tue Jun 10 1997   Gisle Aas <aas@sn.no>

 o  Release 5.09

 o  Removed the MIME modules from the distribution.  They are distributed
    separately now.

 o  Added a new module called HTTP::Request::Common

 o  Improved HTTP::Status documentation.  It is now also possible
    to import the is_client_error/is_server_error functions.

 o  LWP::MediaTypes::guess_media_type() can now take an optional
    HTTP::Header parameter.

 o  LWP::Protocol ensures that scheme is legal as module name.

 o  LWP::Protocol::http is not as strict when trying to verify the
    method name.  It now also accepts responses without a message
    on the status line.

 o  WWW::RobotRules::AnyDBM_File: Some DBMs fail to allow multiple
    opens of the same file.  Patch from Mark James <jamesm@skate.org>

 o  Created Bundle::LWP



Sat Apr  5 1997   Gisle Aas <aas@sn.no>

 o  Release 5.08

 o  Made libwww-perl warning compatible with upcoming perl5.004beta2
    (aka 5.003_98)

 o  encode_base64() did not work properly if pos() of the string to
    encode was different from 0.

 o  HTML::Parser was confused about "</" when it did not start an end tag.

 o  HTML::FormatPS will provide ISOLatin1Encoding in its output.

 o  Calling HTML::LinkExtor->links will clear out old links.

 o  url()->rel($base) would ignore the $base argument.

 o  Don't croak() when setting url()->path().



Tue Feb 11 1997   Gisle Aas <aas@sn.no>

 o  Release 5.07

 o  Can limit the size of the response content with $ua->max_size()

 o  Added time2iso() functions to HTTP::Date.

 o  Made LWP::Protocol::http more portable to the MacPerl. /./ match
    different things on MacPerl.



Mon Jan 27 1997   Gisle Aas <aas@sn.no>

 o  Release 5.06

 o  URI::URL is now compatible with perl5.004 overloading.

 o  HTML::HeadParser makes X-Meta-Name headers for <meta> elements
    that does not specify an 'http-equiv' attribute.

 o  URI::URL::ftp does not die if Net::Domain is not installed and
    you ask for an anonymous username or password.

 o  WWW::RobotRules:  The robots.txt parser did not ignore comment lines
    as it should.

 o  LWP::Protocol::http is more forgiving towards servers that return
    bad responses.

 o  Allow "?" before search string in gopher URLs.

 o  LWP::Protocol::file did not escape funny filenames when generating
    HTML directory listings.

 o  LWP::Protocol::ftp now gets the Content-Encoding correct. 'CODE'
    content in PUT requests also work now.

 o  Relative locations in redirects did not work with URI::URL::strict.

 o  OS/2 portability patches from Ilya Zakharevich

 o  LWP::Authen::* patch from Doug MacEachern

 o  Support experimental data:- URLs

 o  Some tests (those using HTTP::Daemon) now die more gracefully if
    IO::* modules is not installed.



Wed Dec  4 1996   Gisle Aas <aas@sn.no>

 o  Release 5.05

 o  LWP::UserAgent::simple_request: local($SIG{__DIE__}) protects us
    against user defined die handlers.
 	
 o  Use Net::Domain (instead of Sys::Hostname) to determine FQDN.  It
    is used by URI::URL when it determines anonymous ftp login address.
	
 o  lwp-download: New program in the bin directory

 o  HTML::Parser: Allow '_' in attribute names.  This makes it possible
    to parse Netscape's bookmarks.html file.

 o  HTTP::Daemon: Fixed chunked transfer encoding and multipart content
    in get_request().  Support HTTP/0.9 clients.

 o  Don't clobber regex variables when HTTP::Message delegates methods
    to the header.

 o  Base64::decode_base64 now checks that the length input string to
    decode is a multiple of 4.

 o  t/robot/rules-dbm.t clean up better and will use AnyDBM for dumping

 o  File::CounterFile: $/ strikes again by Andreas König

 o  File::Listing updates from William York <william@mathworks.com>. We
    can now parse the MS-Windows ftp server listings.

 o  HTTP::Date now supports the MS-Windows 'dir' date format.  Patch by
    William York.

 o  LWP::MediaTypes::media_suffix will return first type in scalar context.



Tue Oct 22 1996   Gisle Aas <aas@sn.no>

 o  Release 5.04

 o  Added HTTP::Daemon.  This is a HTTP/1.1 server class.  This means
    that libwww-perl no longer is a client library only.  The HTTP::Daemon
    is also used in the new test suite.

 o  HTTP::Message support the protocol() method.  Used by HTTP::Daemon.

 o  HTTP::Response can be constructed with a header and content as
    argument.

 o  Typo corrections in the documentation.

 o  File::Listing::parse_dir accepts "GMT" as timezone now.

 o  HTML::Parser will call the start() method with two new parameters;
    $attrseq, $origtext.

 o  Integrated HTML::FormatPS patches from
    Jim Stern <jstern@world.northgrum.com>

 o  Class modules don't inherit from AutoLoader any more.  They just
    import the AUTOLOAD method.

 o  LWP::Protocol will untaints scheme before loading protocol module.

 o  Digest does not send "opaque" if it was not present in the request.
    The "Extension" header is not returned any more.

 o  New method: $url->crack that will return a list of the various
    elements in a URI::URL.

 o  WWW::RobotRules did not use the agent() method when determining
    who we are.  This affected WWW::RobotRules::AnyDBM_File parsing
    for robots.txt.  Visit count did not increment for
    WWW::RobotRules::InCore.



Tue Oct  1 1996   Gisle Aas <aas@sn.no>

 o  Release 5.03

 o  Hakan Ardo's persistent robot rules is now part of the standard
    distribution.  This is still experimental and might change in the
    future.  It includes the new WWW::RobotRules::AnyDBM_File class
    and updates to LWP::RobotUA.

 o  HTML::Parser now supports buggy Netscape comment parsing.  Enable
    it by calling $p->netscape_buggy_comment(1).  The previous version
    of the parser could also (under very unlucky and unlikely
    circumstances) call the $self->comment() method several times for
    the same comment text.

 o  HTML::Parser: Use new $p->eof to signal end of document instead of
    $p->parse(undef).

 o  HTML::Element::starttag() is now smarter about which quotes it
    use around attribute values.

 o  New HTTP::Response methods: current_age(), freshness_lifetime(),
    is_fresh(), fresh_until().

 o  HTTP::Message:  New method ($mess->content_ref) which will return
    a reference to the current content.

 o  URI::URL:  New method ($url->rel) which does the opposite of abs().
    Example: url("http://host/a/b/c", "http://host/c/d/e")->rel would
    return url("../../a/b/c", "http://host/c/d/e").  This was
    suggested by Nicolai Langfeldt <janl@ifi.uio.no>

 o  URI::URL:  $url->query_form can now take array references as value
    specification.  For instance: $url->query_form(foo => ['bar', 'baz']

 o  Avoid '"my" variable $var masks earlier declaration in same scope'
    warnings in perl5.003_05.



Wed Sep 11 1996   Gisle Aas <aas@sn.no>

 o  Release 5.02

 o  lwp-rget:  Initialize proxy settings from environment

 o  HTML::Entities::encode_entities: Don't encode $ and %

 o  HTML::LinkExtor::links: Now works when no links were found.

 o  HTTP::Headers::as_string: Allow \n in header value



Tue Aug  1 1996   Gisle Aas <aas@sn.no>

 o  Release 5.01.

 o  Updated ftp protocol module to be compatible with Net::FTP 
    version 2.00 (the version found in libnet-1.00)

 o  New HTML parser module called HTML::LinkExtor

 o  Various documentation typo corrections.  Most of these contributed
    by Bob Dalgleish.

 o  HTML::HeadParser updates 'Content-Base' instead of 'Base'.  It also
    updates the 'Link' header based on <link ...>

 o  HTTP::Headers and HTTP::Status updated according to
    draft-ietf-http-v11-spec-06

 o  HTTP::Headers can now use "_" as alternative to "-" in field names.

 o  HTTP::Response::base now looks for 'Content-Base',
    'Content-Location' and 'Base' headers.

 o  Avoid warning in LWP::MediaTypes if $ENV{HOME} is not defined.

 o  The new $ua->parse_head() method can be used to turn off
    automatic initialization of response headers from the <HEAD>
    section of HTML documents.

 o  Added eq() method for URI::URL objects

 o  The HTML::Formatter recovers even if a handle method is not defined
    for all tags found during traversal



Sun May 26 1996   Gisle Aas <aas@sn.no>

 o  Release 5.00.

 o  LWP::Simple::head() now return something useful in scalar context.

 o  Rewritten the HTML::Parse stuff.  Introduced the HTML::Parser class
    that will tokenize a HTML document.  The rest of the old
    HTML::Parse functionality has moved to HTML::TreeBuilder class.
    Note, that the HTML stuff is still alpha.

 o  Implemented HTML::HeadParser.  This is a lightweight parser for
    the <HEAD> section of a HTML document.

 o  HTML::Element had problem with presenting things like <foo
    bar="bar">.

 o  HTML::Entities: Included additional ISO-8859/1 entities listed in
    RFC1866.

 o  HTML::AsSubs exported 'header' instead of 'head'

 o  We know about a few more of the HTML 3.2 element.

 o  HTTP::Date had problems with years before 1970, because Time::Local
    went into an infinite loop.  Check for this.

 o  Added $header->title method.

 o  Made $header->authorization_basic return "uname:passwd" in scalar
    context

 o  LWP::Protocol::collect() will let the HTML::HeadParser look at the
    document content as it arrives.  This will initialize headers from
    elements like <base href="...">, <title>...</title> and <meta
    http-equiv="..." ...>.

 o  Simplified $response->base implementation, because we don't have
    to look into the content any more.

 o  Added -quiet option to lwp-rget

 o  Typo fixes and some documentation additions.



Thu May  9 1996   Gisle Aas <aas@sn.no>

 o  Release 5b13

 o  Made URI::URL::strict(0) the default.  I got tired of all this
    eval { } stuff just to recover.  The URI::URL::strict'ness also
    determine if calling some standard method that happens to be
    illegal for some protocol scheme will croak or just be ignored.

 o  Ensure correct $INPUT_RECORD_SEPARATOR and $OUTPUT_RECORD_SEPARATOR
    at places where we <> or print.

 o  Always localize $_ before any 'while(<FILE>) {}'-loops

 o  Implemented $protocol->collect_once() and simplified several
    of the protocol implementations by using it.

 o  The HTML parser used to get it wrong if you were unlucky about the
    breakup of the text. An example of broken behaviour was this:

        $html = parse_html "<!-- A comment -";
        $html = parse_html "-> and some text.";

 o  The HTML parser does not ignore whitespace-only text any more.

 o  HTML::Parse warnings are now optional and turned off by default.

 o  New start for $html->as_HTML().

 o  Fixed some typos



Wed Apr 24 1996   Gisle Aas <aas@sn.no>

 o  Release 5b12

 o  New utility program called 'lwp-rget'.

 o  $response->base was broken for HTML documents

 o  New fancy LWP::Debug import() method.  Can now turn on debugging with
    "use LWP::Debug '+';"

 o  Trap exceptions (die) from the response callback routine

 o  The RobotUA now requires an e-mail address of the person responsible
    for the robot.

 o  New $ua->from() method.

 o  Support for gopher Index-Search (gopher type '7' requests).
    Contributed by Harry Bochner <bochner@das.harvard.edu>

 o  Cleaned up white-space usage in the source.



Wed Apr  3 1996   Gisle Aas <aas@sn.no>

 o  Release 5b11

 o  Implemented a NNTP protocol module.  The library can now fetch and
    post news articles.

 o  More documentation

 o  Don't look at the URI header for redirects

 o  New $res->base() method for HTTP::Responses

 o  Graham Barr's patch to File::Listing to make it more OO internally

 o  content_type() return value is canonicalized

 o  $ua->request() does not die on bad URLs any more

 o  LWP::MediaTypes merge all media.types files that if finds

 o  FTP request with content to file or callback did not work

 o  The value of HTTP Host: header is now $url->netloc;

 o  The URI::URL constructor now accept URLs wrapped up in "<>"

 o  $url->abs() now has a second optional argument that makes it accept
    that relative URLs can have scheme, i.e. treat "http:img.gif" as a
    relative URL.

 o  Added prototypes to the HTTP::Status::is_xxx() functions

 o  Added prototypes to the MIME:: encoding/decoding functions

 o  Always return scheme for mailto and news URLs (as_string)

 o  RobotRules patches from Henry A Rowley.

 o  More tests

 o  <SMALL> and <BIG> again



Thu Mar 14 1996   Gisle Aas <aas@sn.no>

 o  Release 5b10

 o  GET ftp://host/doc was never successful for normal files.

 o  LWP::Socket: read_until() did not notice EOF condition.  I.e. if
    a HTTP server closed the connection before any output was generated,
    the we continued to read 0 bytes in a busy loop until the alarm()
    killed us.

 o  Added support for Digest Access Authentication.  Contributed by
    Doug MacEachern <dougm@osf.org>.

 o  Makefile.PL: check for MD5 library

 o  No longer print message content in HTTP::Response::error_as_HTML()

 o  Access to "file:/path" gave warning when the environment variable
    no_proxy was set.

 o  The http-post test sends a Content-Type header.  Some servers hang
    if this header is missing.

 o  HTML::Parse:
     -   allow <SMALL> and <BIG> tags
     -   allow empty attribute values



Tue Mar  5 1996   Gisle Aas <aas@sn.no>

 o  Release 5b9

 o  Started to write on the libwww-perl cookbook (lwpcook.pod)

 o  The URI::URL module now exports the function url().  This is an
    alternative (easy to use) constructor function.

 o  Expanding relative file URLs starting with "#" did not work.

 o  Fixed autoloaded DESTROY problem by adding empty DESTROY routine
    to URI::URL.

 o  Does not try generate password for ftp-URLs unless the username is
    "anonymous" or "ftp"

 o  The LWP::Simple user agent proxy settings are initialized from
    the proxy environment variables. 

 o  LWP::Protocol::ftp: Use the Net::FTP library to access ftp servers.
    Convert directories to HTML on request (Accept: text/html).

 o  New module HTTP::Negotiate

 o  New module File::Listing

 o  HTTP::Date::str2time can parse a few more formats, like the 'ls -l'
    format and ISO 8601.  The function now also takes an optional second
    parameter which specify a default time zone.

 o  Added prototypes to the HTTP::Date functions.

 o  The library adds a timestamp to responses ("Client-Date")

 o  HTTP::Status:  Updated to proposed HTTP/1.1

 o  HTTP::Headers: Updated to proposed HTTP/1.1

 o  LWP::Protocol::http:  Updated to HTTP/1.1 methods

 o  Took out stringify overloading in HTML::Element.



Mon Feb 26 1996   Gisle Aas <aas@sn.no>

 o  Release 5b8

 o  Renamed functions using thisStyleOfNames to this_style_of_names.
    Provided a script called 'update_from_5b7'

 o  Renamed the 'request' and 'mirror' scripts to 'lwp-request' and
    'lwp-mirror'.  The GET, POST, HEAD aliases for 'lwp-request' are
    the same.

 o  Implemented LWP::RobotUA

 o  Class name for RobotRules did not match the file name

 o  URI::URL
      - perl5.002gamma is required (because use vars).
      - The leading slash in now part of the path if it is present.
      - More documentation
      - Use AutoLoader to speed things up.
      - New class URI::URL::_login and made telnet, rlogin, tn3270
        subclasses from this one.
      - URI::URL::wais is better supported.
      - URI::URL::news is better supported.
      - New URI::URL::mailto methods: user/host

 o  HTTP::Date::time2str now works correctly with '0' as argument

 o  HTTP::Message delegates unknown methods to the headers.

 o  HTTP::Request::uri is an alias for HTTP::Request::url.  Can set
    the URL to undef.

 o  Added convenience methods to HTTP::Headers for easy access to
    frequently used headers.

 o  Simplified LWP::Debug

 o  Use standard AutoLoader for LWP::IO functions.

 o  Played with the profiler (Devel::DProf) and made some things
    go quicker.

 o  Included the File::CounterFile module.  Excluded Mail::Cap module
    as it is also part of the MailTools package.



Mon Feb  5 1996   Gisle Aas <aas@sn.no>

 o  Release 5b7

 o  Perl5.002 is required now

 o  Rewrite of the URI::URL module (version 4.00)
      - escaping/unsafe stuff redone (and removed)
      - URI::URL::_generic moved out of URL.pm
      - netloc, path, params, query is now stored internally in escaped form
      - new methods for URI::URL::_generic are:
           epath
           eparams
           equery
	   path_components
           absolute_path
      - new methods for URI::URL::http are:
           keywords
           query_form
      - new methods for URI::URL::file are:
           newlocal
           local_path
           unix_path
           dos_path
           mac_path
           vms_path

 o  URI::Escape now semi-compile regular expressions (by evaling an
    anonymous sub).  Same technique is also used in HTML::Entities.

 o  HTTP::Date parser rewritten using regular expressions.

 o  HTTP::Headers->as_string() now croaks if any field values
    contain newline.

 o  HTTP::Status constants use empty prototype.

 o  Font metrics moved to a new subdirectory (lib/Font/Metrics)

 o  Don't use the VERSION script any more (even if it was very clever)

 o  HTML::Entities will now export the names decode_entities() and
    encode_entities().

 o  Andreas Koenig's black patch to HTML::Element.

 o  The HTML::Formatter now knows about <menu> and <dir> tags

 o  The construct "defined ref($arg)" did not work on perl5.002
    because ref now always return something defined.

 o  LWP::UserAgent sends by default a 'User-Agent' header.

 o  LWP::Simple sends 'User-Agent' header to servers.

 o  Updated the LWP::Socket module to use the new Socket.pm interface.

 o  LWP::Protocol::http sends the new HTTP/1.1 'Host' header.

 o  LWP::Protocol::file use $url->local_path to get a file to open.
    It also inserts a <BASE> tag in directories instead of a redirect.

 o  MIME::Base64 routines can be called as MIME::Base64::encode() and
    MIME::Base64::decode().  Same kind of thing for QuotedPrint.



Mon Nov  6 1995   Gisle Aas <aas@oslonett.no>

 o  Release 5b6

 o  Installation should work better for those that still runs
    perl4 as 'perl'.  The mirror script is not installed by
    default.

 o  LWP::Socket::_getaddress() Numerical IP addresses did not work.

 o  LWP::Socket::pushback() did not work.  This also avoids the bad
    pp_select() core dump from perl.

 o  LWP::IO now also selects on socket exceptions.

 o  HTML::Parse:  Ignore <!DOCTYPE ...> regardless for case.  Some
    bad insertElement() calls made infinite loops.

 o  The uri.t test works better for places where /tmp is a sym-link.



Sat Sep 16 1995   Gisle Aas <aas@oslonett.no>

 o  Release 5b5

 o  newlocal URI::URL does not put "//localhost" into the URLs any
    longer.

 o  The request program: New -o option to reformat the HTML code
    New -C option to provide credentials on the command line.
    The -b option never worked.

 o  LWP::Protocol::file now returns redirect for access to directories
    where the trailing slash is missing.



Thu Sep 14 1995   Gisle Aas <aas@oslonett.no>

 o  Speedups and bug fixes in the HTML parser.  The parser now
    understands some more deprecated tags (like <xmp> and <listing>).

 o  HTML::Elements are now stringified using perl overloading.
    The interface to the traverse() callback has changed.

 o  Implemented HTML formatters for plain text and Postscript.

 o  Added lib/Font stuff to support the Postscript formatter.

 o  Inspired by Tim Bunce, I implemented the HTML::AsSubs module.
    Don't know if it is really useful.

 o  The local/get test does not use /etc/passwd any more.



Thu Sep  7 1995   Gisle Aas <aas@oslonett.no>

 o  Changed package name to libwww-perl-5xx

 o  Made LWP::Protocol::ftp actually transfer data

 o  Implemented methods for LWP::Socket to act as a server:
    bind(), listen(), accept(), getsockname(), host(), port()



Wed Sep  6 1995   Gisle Aas <aas@oslonett.no>

 o  Release 0.04

 o  Implemented modules to parse HTML.



Mon Sep  4 1995   Gisle Aas <aas@oslonett.no>

 o  Implemented Mail::Cap which will become part of the MailTools
    package.

 o  Moved Base64 to MIME::Base64.  Reimplemented MIME::Base64 by using
    [un]pack("u",...)   Implemented LWP::MIME::QuotedPrint for
    completeness' sake.  Routine names has changed as suggested by Tim
    Bunce.

 o  LWP::MediaType reads default types from media.types file.
    guessMediaType() now also returns encodings.  New function mediaSuffix()

 o  Pass $url to $ua->getBasicCredentials().  This also fixes security
    hole with the old implementation of getBasicCredentials().

 o  LWP::Protocol::file now sets Content-Encoding headers

 o  Allow request content to be provided by a callback routine.

 o  Fix bug that prevented response callback to work.  The first parameter
    (data) is no longer a reference, because $_[0] is already a reference.
    Don't callback unless successful response.  Callbacks during redirects
    was confusing.

 o  URI::URL.  Remove port from netloc if it is the default port.
    Don't use anything, just require.

 o  HTTP::Message->addContent() does not need a reference parameter.

 o  LWP::Socket->open() has been renamed top LWP::Socket->connect()
    LWP::Socket->close has gone.  Implemented new method LWP::Socket->read()
    that returns as fast as it has some data to offer.  Implemented
    LWP::Socket->pushback().

 o  Does not die in LWP::UserAgent->request()

 o  LWP::Socket now use LWP::IO for low level IO

 o  Implemented LWP::TkIO as a replacement module for LWP::IO when using Tk.



Thu Aug 17 1995   Gisle Aas <aas@oslonett.no>

 o  $ua->redirectOK() for checking redirects

 o  reorganized tests in the "t" directory.



Fri Aug 11 1995   Gisle Aas <aas@oslonett.no>

 o  Release 0.03

 o  Included RobotRules.pm from Martijn Koster



Thu Aug 10 1995   Gisle Aas <aas@oslonett.no>

 o  New module URI::Escape (URI::URL use this module for default
    escaping) that provide the uri_escape() and uri_unescape()
    functions.

 o  Setting $url->scheme now changes the class of the object.

 o  Made $httpurl->user() and $httpurl->password() illegal.
    Likewise for other URL schemes.




Wed Aug  9 1995   Gisle Aas <aas@oslonett.no>

 o  Reorganisation as discussed on <libwww-perl@ics.uci.edu>
       LWP::Date       --> HTTP::Date
       LWP::MIMEheader --> HTTP::Headers
       LWP::StatusCode --> HTTP::Status
       LWP::Message    --> HTTP::Message
       LWP::Request    --> HTTP::Request
       LWP::Response   --> HTTP::Response
       LWP::MIMEtypes  --> LWP::MediaTypes

 o  HTTP::Date parses ctime format with missing timezone as suggested
    by Roy Fielding <fielding@beach.w3.org>

 o  HTTP::Status and LWP::MediaTypes exports their functions by default.

 o  Splitted up the URI::URL module.  Schemes are implemented by separate
    files that are autoloaded when used.  Self test moved to "t/uri.t".


       
Mon Aug  7 1995   Gisle Aas <aas@oslonett.no>

 o  Applied patch from Marc Hedlund <hedlund@best.com>
       - Update the @header_order according to the August 3rd draft.
       - Added Response Header fields: 'Location', 'Public', 'Retry-After',
         'Server', and 'WWW-Authenticate'.
       - Moved 'unknown header' handling from &scan to &header. The old
         implementation was forcing all unknown header-words to begin with
	 an uppercase (as it should be), but disallowed other uppercase
	 letters.
       - updates the status code messages under the August
         3rd HTTP/1.0 draft.  '203' became 'Non-Authoritative Information',
	 '303' became 'See Other', and a new code,
	 '411 Authorization Refused', was added.

 o  Can remove multiple headers with single removeHeader() call in MIMEheader.

 o  Can assign multiple field/value pairs in header() method of MIMEheader.

 o  A field with multiple values is printed as separate values in
    MIMEheader::as_string().

 o  LWP::Response contain new attributes: previous() and request().  These
    attributes are updated by the UserAgent.

 o  Appended \n to some die statements in Socket so that line numbers are
    suppressed in error messages.

 o  Made UserAgent::clone work for reference members

 o  Check for redirect loops and multiple authorization failures by
    examination of the response chain.

 o  Use "\015\012" instead of "\r\n" in protocol modules.  Some systems
    define \r and \n differently.

 o  request program can now handle documents that needs authorization by
    prompting the user for username/password. Added new -S option to print
    request/response chain.


  
Tue Jul 25 1995   Gisle Aas <aas@oslonett.no>

 o  Release 0.02

 o  Included URI::URL in the release



Mon Jul 24 1995   Gisle Aas <aas@oslonett.no>

 o  Incorporated Makemake.PL and VERSION from Andreas Koenig <koenig@mind.de>
    As a result of this the following things have changed:
       - programs in "bin" are extracted from .PL-files
       - reintroduced "lib"
       - "test" has been renamed as "t"
       - test programs in "t" has been made Test::Harness compatible
       - we now have a MANIFEST file
       - no more need fro update_version, make-dist, lwp-install

 o  Renamed bin/get to bin/request.  Links to it are now all upper case.

 o  Proxy support in bin/request (provided by Martijn Koster)

 o  UserAgent can now load proxy settings from environment

 o  LWP::Protocol::ftp is under way but not really finished



Tue Jul 18 1995   Gisle Aas <aas@oslonett.no>

 o  Implemented LWP::Protocol::gopher

 o  Implemented LWP::Protocol::mailto

 o  Fixed proxy typo



Mon Jul 17 1995   Gisle Aas <aas@oslonett.no>

 o  Made release 0.01



Mon Jul 17 1995   Gisle Aas <aas@oslonett.no>

 o  Don't loose first line of HTTP/0.9 requests

 o  LWP::Socket use syswrite() for writing

 o  Added RC_* documentation to LWP::StatusCode

 o  LWP::Date now use hash to look up month numbers

 o  Added -f option to "get"

 o  Untabify

 o  Added a "TODO" list

 o  Fixed various typos



Fri Jul 14 1995   Gisle Aas <aas@oslonett.no>

 o  Reorganized directories.  Moved LWP.pm up.  Moved file.pm and http.pm
    into the LWP::Protocol directory.  Moved LWP out of the lib directory
    and removed lib.

 o  Implemented the "get" and "mirror" scripts in the "bin" directory.

 o  Implemented "install-lwp", "update_version" and "make-dist".  The library
    version number is found in the VERSION file.

 o  Always adds 1900 to the year in LWP::Date

 o  In LWP::MIMEheader:  Implemented clone(), removeHeader() and scan() 
    methods.  Reimplemented asString.  Removed asMIME().  Moved "Good
    Practice" into this file, and reimplemented it.

 o  Moved "header" and "content" into LWP::Message class.  This change made
    LWP::Request and LWP::Response much simpler.  Made clone() method
    actually work.

 o  LWP::Protocol::implementor does not die if it cannot load package.

 o  Moved UserAgent convenience methods into LWP::Simple.  Made LWP::Simple
    export LWP::StatusCode symbols and functions.

 o  Implemented $ua->isProtocolSupported($scheme) method.

 o  Nicer directory listing in LWP::Protocol::file.pm

 o  Rely on URI::URL 3.00 behaviour for $url->full_path

 o  Library version number now in LWP.pm.  You should be able to say
    "use LWP 1.0;" if you need at least this version.

 o  Various cleanups and arranging layout as I like it.  Use fooBar-style
    (as opposed to foo_bar style) everywhere.  This means that as_string()
    now is called asString().

 o  Added more documentation.



Wed Jun 14 1995   Gisle Aas <aas@oslonett.no>

 o  Removed lot of redundant & before function calls.

 o  $this --> $self

 o  &collector passes content as a reference, don't want to copy so much

 o  parameterlist to collect callback has been rearranged

 o  Response::addContent gets a reference to the data

 o  Added some callback documentation to UserAgent.pm

 o  Protocol::file now uses the collector

 o  Introduced LWP::Simple



Sun Jun 11 1995   Martijn Koster <m.koster@nexor.co.uk>

 o  Added basic authentication support

 o  Added mirroring of single documents

 o  Change Protocol construction from whacky URL.pm (constructor returns
    subclass) to more normal C++'ish way.



Wed June 7 1995   Martijn Koster <m.koster@nexor.co.uk>

 o  Minor cleanups from printed code inspection



Wed May 24 1995   Martijn Koster <m.koster@nexor.co.uk>

 o  Added redirection resolution

 o  Added optional autoloading of protocols



Tue May 23 1995   Martijn Koster <m.koster@nexor.co.uk>

 o  Separated socket stuff into separate module

 o  Added HTTP proxy support

 o  Made alarm handling optional

 o  Added a LWP::Message for completeness sake

 o  Added LWP::MemberMixin to reduce code duplication

 o  Cosmetic changes to LWP::Date

 o  Renamed LWP::Error to LWP::StatusCode

 o  Renamed LWP::MIME to LWP::MIMEtype

 o  Changed the tests to cope with all this

It's getting there...



Mon May 22 1995   Martijn Koster <m.koster@nexor.co.uk>

 o  Changed the socket reading to use sysread.  This will have to go
    into a module of its own.



Thu 18 May 1995   Martijn Koster <m.koster@nexor.co.uk>

 o  Mentioned on libwww-perl that I had changed the classes around lots.