File: Changes

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

Changes - Apache mod_perl change logfile

=head1 CHANGES

=over 3

=item 1.16 - October 2, 1998

Apache::Util::escape_html() now handles `"' and `&'. should also be a
bit faster now, avoiding a strdup() call

PerlPassEnv/PerlSetEnv will now call my_setenv() so the C enviroment
array is also updated 

Apache::Registry will return DECLINED if -d $r->filename so 
DirectoryIndex, etc., will work again

mod_perl now passes 'make test' on BSD/OS 3.1 again. [ Vivek Khera ]

added INSTALL.simple.mod_ssl and SSL_BASE=... Makefile.PL option

Apache::PerlRun::handler changes:

 - PerlRunOnce option
 - don't localize %INC, just remove new, non-.pm files

fix bug that would hose child if a croak() happened, be it from a
syntax error, Carp::croak(), etc.  remove child_terminate() hack that
was blaming the Perl stack being corrupt

Apache::StatINC can now be configured to write debug stuff with
a PerlSetVar [Ask Bjoern Hansen <ask@netcetera.dk>]

perl_startup() will now check the Apache.pm $VERSION

fixups for building Stronghold 2.4

new Apache::File module

send_fd() will now accept an optional length argument

HTTP_NOT_MODIFED added to Apache::Constants EXPORT_OK, removed
duplicate HTTP_NOT_ACCEPTABLE entry

if there is a Perl parse error in <Perl> sections, return $@ so Apache
can properly report the problem 

Apache::PerlRun subclass-able-ness near complete, see new example
modules Apache::RegistryNG and Apache::RegistryBB

fix compile problem under aix [Ed Hill <ed-hill@uiowa.edu>]

fix 'make test' @INC problem under NT, thanks to Dale Couch

=item 1.15_01 - September 19, 1998

USE_DSO=1 may be fixed on some platforms w/ current 1.3.2-dev
for those who are not, e.g. linux, can try a workaround by giving
PERL_DSO_UNLOAD to Makefile.PL or by setting the PERL_DSO_UNLOAD
environment variable

fix bug in Apache::Registry if $r->uri eq "/", thanks to Mike Wertheim
for the spot

Added Doug Bagley's Apache::SizeLimit [Brian Moseley <ix@maz.org>]

a Perl syntax error may corrupt the Perl stack, rendering the
process useless, so we now child_terminate() if this is the case  
(thanks to Ken Williams for the Apache::Death bug illustration)

<Perl> sections will now report configuration syntax errors

added Apache::SubRequest->bytes_sent method

added Apache::Server->register_cleanup method

DYNAMIC=1 works again

Apache::PerlRun will now save/restore %INC to cure problem with
"library" files that don't include a package delaration

global renames: $Apache::Server{Re}Starting -> $Apache::Server::{Re}Starting

s/PERL_TIE_TABLES/PERL_TABLE_API/g

fix Apache::URI so components can be properly undef-d, thanks to
Charles C. Fu for the spot

</Perl> match is now case insensitive, thanks to Randal Schwartz for
the spot 

added Apache::Util::string_size function

PerlDirectiveHandlers changes:

 -fix Apache::ExtUtils::command_table to properly deal with
  <Containers> inside HASH ref entries
 -now looks for a DIR_CREATE() method rather than new()
 -dir_merge() must now be DIR_MERGE()
 -order of $parms and $cfg args swapped
 -added missing FLAG directive handler
 -module.name is now the Perl package name, rather than Foo.xs 

add dTHR for PERL_TIE_SCRIPTNAME=1 [Michael Parker <parker@austx.tandem.com>]

deprecate $r->cgi_{env,var}, $r->subprocess_env can do all that and
them some

when rwrite() returns -1, break out of the loop, no longer checking
r->connection->aborted 

fix $...NameWithVirtualHost defaulting in Apache::PerlRun 
["Ryan A. Whelan" <rwhelan@2rad.net>

r->as_string now uses table_do() and moved to xs

use 1.3.2-dev+'s ap_custom_response() when possible

remove Apache::DESTROY method (was only for avoiding old AutoLoader bug)

Apache::exit fixed under Apache::PerlRun

fix chdir_file() call in Apache::Registry so we go back to the original
directory [Gerald Richter <richter@ecos.de>]

added :override :args_how tags to Apache::Constants

add DIR_MAGIC_TYPE to perl_handlers[] table for directory indexing
modules

Apache::Log optimizations/enhancements:
  $r->log now invokes ap_log_rerror (w/ 1.3.2-dev+)
  ${r,s}->log->$method() will now accept a CODE ref as it's first
  argument, which is only called when LogLevel >= $method
  caller() file/line info determined only if LogLevel >= debug
  avoid copy of message SV 
  log() method and aliases now in xs

tweak Apache->module so it can test for configured .c modules

pushing out experimental stuff:
  EXPERIMENTAL=1 (enables all experiments, except PERL_DEFAULT_OPMASK)
  PERL_GET_SET_HANDLERS=1 if PERL_STACKED_HANDLERS
  PERL_MARK_WHERE=1, PERL_TIE_SCRIPTNAME=1 if PERL_TRACE

new $r->server->next method

removed use of Term::ReadLine in Makefile.PL to make it work on
systems with broken Term::ReadLines installed. 
[Ask Bjoern Hansen <ask@netcetera.dk>]

fix Makefile.PL and Apache::src to find MODULE_MAGIC_NUMBER in ap_mmn.h

if PERL_DESTRUCT_LEVEL < 0, skip perl_destruct(), etc. in perl_shutdown()

add CLOSE method for tied *STD{OUT,IN}

add config for mod_ssl and 'make test' [Lupe Christoph <lupe@alanya.m.isar.de>]

PerlInitHandler is now aliased to PerlPostReadRequestHandler when
configured a the "top-level", that is, not within any Location,
Directory or Files, where it is still aliased to
PerlHeaderParserHandler
 
PerlCleanupHandler is now run by a register_cleanup(), rather than an
alias for PerlLogHandler 

get rid of warning in Apache::RedirectLogFix [Brian Moseley <ix@maz.org>]

added $r->internal_redirect method

Apache::TieHashTable class enhancements:

 -get() in list context will return all values found for the given key
 -merge() and add() will accept an array reference of values
 -new method do()

add -DMOD_PERL to apaci/configure for USE_APXS=1
[Andrea Borgia <bab0069@iperbole.bologna.it>]

set LD_RUN_PATH in Makefile.PL [Tom Hughes <tom@compton.demon.co.uk>]

add =pod config support for '={begin,for} apache ... =end apache'

move mod_perl_cleanup_av outside of #ifdef PERL_DIRECTIVE_HANDLERS to
cure compile problem spotted by David-Michael Lincke

Fixed problem with 'POST' requests when using Apache::Include
[Doug Bagley <doug@dejanews.com>]

make $r->connection->remote_ip set-able [Doug Bagley <doug@dejanews.com>]

new experimental options PERL_SAFE_STARTUP and PERL_DEFAULT_OPMASK
when httpd is starting, opcodes will be disabled during PerlModule,
PerlRequire and <Perl></Perl>
 
 -PERL_SAFE_STARTUP=1 enables PerlOpmask directive
   if PerlOpmask is "default", use mask generated from src/opcodes.txt
   else it's a file to create the mask in the format of src/opcodes.txt
   if no PerlOpmask, no opcodes are disabled
 - 'make update_op_mask OPCODE_FILE=my_opcodes.txt && make'
   changes the default opmask generated from OPCODE_FILE
 -PERL_DEFAULT_OPMASK=1 disables PerlOpmask directive, forces default
   opmask on
 -PERL_ORALL_OPMASK=1 enables $r->set_opmask method for per-directory masks
 -new module Apache::Opcode for generating op_mask

Fixed Apache::Util::ht_time test (util.t) so it doesn't fail without
any reason

added $r->finfo method

Apache::Connection and Apache::Server will not be loaded by default if
a PerlRequire file says: no mod_perl qw(Connection Server);

Apache.xs cleanups:

 -move Apache::Connection code from Apache.xs to Connection.xs
 -move Apache::Server code from Apache.xs to Server.xs
 -remove Apache::fork stuff
 -remove max_request_per_client method (use Apache::Globals instead)

=item 1.15 - July 24, 1998

new experimental XS implementation of Apache::PerlRun/Apache::Registry
handlers in module Apache::PerlRunXS (enable with PERL_RUN_XS=1)

added $r->get_server_name method

move /tmp/mod_perl_* to t/logs, t/conf

alias Apache::Util unescape_uri -> Apache::unescape_url

alias Apache::Log emerg -> emergency, crit -> critical

deal with PL_ renaming in 5.004_76+

fixes to support to apache_1.3.0+ssl_1.19 [Salvador Ortiz]

add another dTHR so we build/run with threaded Perl again

USE_APXS fixups:
 
 -use apaci/find_source instead of hard-coding files in apaci/configure
 -re-gen apaci/mod_perl.config before running apache/configure
 -chmod 0644, apaci/mod_perl.config

=item 1.14 - July 18, 1998

PERL_DEBUG=1 w/ USE_APACI=1 will properly link against libperld if exists

remove mod_perl.pm_version file.  move Makefile.PL-time generated code
from mod_perl.pm.PL to mod_perl_hooks.pm.PL, remove mod_perl.pm.PL and
ship with a mod_perl.pm again that is not modified by Makefile.PL so
CPAN.pm can 'install mod_perl' again 

added Apache::Util module (enable with PERL_UTIL_API=1 or EVERYTHING=1)

only break out of the write loop if rwrite() returns -1 and
r->connection->aborted, otherwise continue  

added Apache::URI module (enable with PERL_URI_API=1 or EVERYTHING=1)

register_cleanup to SvREFCNT_dec handler stacks, otherwise we leak
during kill -USR1 when configuration is re-read

TAINT_NOT just after perl_run(), otherwise 'make test' may choke (when
it shouldn't): 
   "Insecure dependency in eval while running with -T switch.
   Callback called exit."
[Salvador Ortiz]

move "rwrite returned -1" message from warn level to debug level

Makefile.PL fix for 'make test' and --enable-shared= modules

applied src/modules/perl/Makefile fixup for ApacheSSL
[Iosif Fettich <ifettich@netsoft.ro>]

experimental optimization for Apache::Constants if XS_IMPORT=1 is
given to Makefile.PL:  
drop heavy Exporter::import/@EXPORT/@EXPORT_OK/%EXPORT_TAGS for
Apache::Constants::import written in C, shaves ~25K from resident
memory

=item 1.13 - July 13, 1998

fix Makefile.PL setting of numeric $User/$Group for 'make test'
[Michael K. Sanders <msanders@confusion.net>]

giving PERL_STASH_POST_DATA=1 to Makefile.PL will save 
read(STDIN, ...)/$r->read data in $r->subprocess_env for logging 

added Apache::Log module (enable with PERL_LOG_API=1 or EVERYTHING=1)

add mod_perl.pm_version so CPAN.pm can 'install mod_perl' again

ensure Apache::Server::CWD is untainted

add support to compile with -DPERL_OBJECT (win32 + 5.004_73+)

add dir_merge support for directive handlers

$r->print/print will dereference \$scalar refs to strings so scripts
can avoid string copies when sending data to the client, 
e.g. print \$large_string 

set $0 to .conf file name when inside <Perl> sections

fixed $r->subprocess_env bug introduced in 1.12, spotted by Ken Williams

'*CORE::GLOBAL::exit = \&Apache::exit' for 5.005-tobe+ Perls 

perl_startup will now call perl_init_i18nl10n(1), for 'use locale' 

Makefile.PL will now set CFLAGS="$PERL_EXTRA_CFLAGS" with USE_APACI=1
thanks to help from Vivek Khera

improve support for Makefile.PL USE_APXS=... to generate modperl.config

add PERL_TIE_TABLES and PERL_DIRECTIVE_HANDLERS to EVERYTHING=1 group

add some casts to avoid warnings from const char changes in 1.3.1-dev

write_client will break out of it's loop if rwrite returns a -1 error 
condition, which could cause spinning httpds otherwise
[Eric Eisenhart <eric@sonic.net>]

properly default $Apache::Registry::NameWithVirtualHost=1, 
thanks to spot by Ryan A. Whelan

fix tied $r->err_headers_out cut-n-pasto [Peter Kaas <Peter.Kaas@lunatech.com>]

Apache::read_client_block will now use safemalloc/safefree, rather
than palloc, so memory is released after each read(), rather than at
the end of a request.  (e.g. so file uploads don't cause too much growth)

Added mod_perl_method_handlers.pod file, a little article about using
perl objects with modperl. [ ask@netcetera.dk ]

Apache::Registry will now save END blocks just after the script is compiled,
instead of after the subroutine call.  otherwise, if the client breaks the
connection, the hard_timeout will jump out of perl_handler(), and the save 
will never happen.  Thanks to Robert Nice and Ben Laurie for spotting this.

bug fix so PATH_INFO is properly reset, thanks to David Sklar for the spot

=item 1.12 - June 14, 1998

added a long overdue CREDITS file

add SSLCacheServer{Port,Path} directives for ApacheSSL + 'make test'
[Adam Laurie <adam@algroup.co.uk>]

added $r->location method

Various fixes and improvements to the APACI support:

 - Added support for PERL_THREADS to apaci stuff.  
   This is needed under the bleeding edge Perl's 
   (e.g. 5.004_6X).
 - Avoid more unnecessary file copies and edits under 
   APACI situation. 
 - Cleanup the PERL_XXX hooks in apaci/mod_perl.config[.sh]
 [Ralf S. Engelschall]

 - Add additional .xs.o target to apaci/Makefile.tmpl to
   workaround braindead Makes.
 [Brian P Millett <bpm@ec-group.com>]

if $r->subprocess_env is called in a void context just call
(void)perl_cgi_env_init(r)

$ENV{PATH}: don't let perl_clear_env() clear it's value

prevent $r->dir_config SEGV if called during ChildInit, 
spotted by Lincoln Stein

add a dTHR to perl_util.c for threaded 5.004_66
[Brian P Millett <bpm@ec-group.com>] 

added $r->get_server_port method

sfio read will now call Apache::read, as it should.  
Thanks to Steve Farrell for the spot

added $r->last method

$r->cgi_env when called in a void context will simply setup the
subprocess_env table 

avoid some possible warnings in Apache.pm [Brian Mosley <ix@maz.org>]

added $r->request_time method

fix bug when PERL_MARK_WHERE was undefined spotted by Kermit Tensmeyer

emulate pre-1.3b6 r->uri/r->proxyreq behavior for proxy requests
inside the post_read_request_handler and add t/internal/proxy test 

added additional installation document INSTALL.apaci which
describes the new APACI stuff (including background information).
[Ralf S. Engelschall <rse@engelschall.com>]

added new (but still optional!) Apache 1.3 support via the new Apache
Autoconf-style Interface (APACI): The option USE_APACI=1 triggers a new
build-environment (from local apaci/) for the APACHE_SRC/src/modules/perl/
which provides a clean way (i.e.  without patching anything inside APACHE_SRC,
not even the Configuration file) of configuring mod_perl via a
APACHE_SRC/src/modules/perl/mod_perl.config file. The completey configuration
is enabled by just using the APACI command "configure
--activate-module=src/modules/perl/libperl.a" 
[Ralf S. Engelschall <rse@engelschall.com>]

experimental tie of $0 to Apache->request->filename, enable with
-DPERL_TIE_SCRIPTNAME  

added little Apache::system that redirects output to the browser,
should this be imported into Apache::{Registry,PerlRun} scripts?

new Apache::Tie module, provides Apache::TieHashTable for a proper
interface to Apache table structures.  The following methods, called
in a scalar context with no "key" argument, will return a HASH
reference, where HASH is tied to Apache::TieHashTable:
headers_in, headers_out, err_headers_out, notes, dir_config, subprocess_env
enable with PERL_TIE_TABLES=1
see also: t/net/perl/tie_table.pl

remove Cwd::fastcwd usage from Apache::Registry, use
$Apache::Server::CWD set at server startup instead

new method Apache->chdir_file, use to replace 
chdir File::Basename::dirname($r->filename) in Apache::Registry

replace Apache::Registry use of IO::File w/ Apache::gensym

new function Apache::gensym (xsub, does same as Symbol::gensym)

add $ServerRoot/lib/perl to @INC at startup

add code to deal with 1.3b7-dev's SERVER_SUBVERSION replacement

a few doc patches [John D Groenveld <jdg117@elvis.arl.psu.edu>]

re-implemented $r->read to properly use *client_block methods and call
reset_timeout after each read in the loop.  until this is well tested,
the method is called new_read. to test on tie'd STDIN reads, a startup
script can say this:
*Apache::READ = \&Apache::new_read;

added setup_client_block, should_client_block and get_client_block
methods

modules/cgi test will attempt a fileupload of perlfunc.pod to
file_upload.cgi if HTTP::Request::Common is installed
(libwww-perl-5.09+) and $CGI::VERSION >= 2.39

make $r->connection->aborted work as documented again, thanks to spot
by Jens Heunemann

swap order of stacked handlers so dynamic ones (push_handlers) are
invoked after server .conf configured handlers

replace uses of SvPVX() with SvPV() to prevent possible core dump if
called with a non-string value

added COMPILED REGULAR EXPRESSIONS section to mod_perl_traps.pod
[David Landgren <david@landgren.net>, 
Mark Mills <mark@ntr.net>, 
Randal Schwartz <merlyn@stonehenge.com>, 
Jens Heunemann <heunemann2@janet.de>]

have ldopts yank ExtUtils::Liblist message:
 Note (probably harmless): No library found for ...
from stdout to stderr [Stas Bekman <sbekman@iil.intel.com>]

change Apache.xs/typemap so classes who inherit from the Apache class
can invoke methods with a hash object, provided $hash->{_r} contains a
request_rec object

additions to experimental Perl directive support:
-  a per-directory config object is now passed as the first argument
   to directive handlers registered via Apache::ExtUtils->xs_cmd_table
   the object is a hash reference blessed into the same class as the handler
- $r->dir_config with no args now looks for per-directory config in
  the caller's namespace
-  xs_cmd_table now looks for a prototype to determine TAKE1,
   TAKE2, TAKE3, etc.

added $Apache::CurrentThreadId variable under win32

added method/object handler tests to internal/stacked test

fixed broken modules/eperl test spotted by Tom Mornini

fixed Makefile.PL bug spotted by Jon Drukman w/ PERL_CHILD_EXIT=1
in fact, PerlChildInitHandler/PerlHandlerExitHandler are always
enabled by default now with 1.3bx+

added experimental get_handlers/set_handlers methods 
(enable with PERL_GET_SET_HANDLERS=1)

new module Apache::PerlRun, splits out Apache::Registry functionality
and provides a `dirty-perl' handler (see pod).  thanks to Stas Bekman
for testing and suggestions.

PERL_OBJECT_HANDLERS now enabled #ifdef PERL_METHOD_HANDLERS

widen scope of mutex lock under win32 to avoid possible deadlock
[Gerald Richter <richter@ecos.de>]

fixed bug in directory_merge where FLAG directives would inherit `On'
from the base configuration, even if the directory explicitly had the
flag turned `Off', this was the case for PerlSendHeader and
PerlSetupEnv.  thanks to Mark-Jason Dominus for the spot.

added `grab' function to Apache::test, which fetches a url and gives
diagnostics as to validity of the HTTP response 
(a test for properly formatted headers!)

=item 1.11 - April 21, 1998

Apache::SIG enhancements for LogFormat [Doug Bagley <doug@dejanews.com>]

drop API_EXPORTs for mod_include #perl stuff which breaks under win32/1.3b6
spotted by Jeff Baker

Inclusion of $r->server->server_hostname if $r->server->is_virtual in
Apache::Registry script namespaces is back to On by default after
recently tripping up Ben Laurie, Janos Farkas, Tony Bowden.  To
disable (only gain is to conserve memory) in a startup file set:
 $Apache::Registry::NameWithVirtualHost = 0;

work around bloody make problem "don't know how to make Apache.c Constants.c"
spotted on SCO by Krister Keskitalo (along w/ 1-2 others in the past)

fix Makefile.PL for apache-1.2.6+ssl_1.16 
[Stefano Santoro <ssantoro@voicetek.com>, Dan Peterson <pete@spry.com>]

removed obsolete src/Makefile.tmpl and src/Makefile.tmpl-Ben-SSL files

new module Apache::ExtUtils, currently with one method to generate xs
code so Apache/Perl modules can add their own directives to Apache rather
than use PerlSetVar (just some more rope, really)

1.3b6 compat:
- deal with ap_ API prefixing
- t/modules/embperl will warn on failure:
>>> NOTE: Be sure to rebuild HTML::Embperl against Apache 1.3b6+
>>> Try 'make test' again after doing so.

experimental: #ifdef PERL_OBJECT_HANDLERS, mod_perl will thaw objects
from Perl*Handler strings such as `$Global::Object->method'

$r->custom_response will now work under win32 with 1.3b6-dev+

added win32 test enhancements suggested by Gerald Richter

added mod_perl_cvs.pod document

=item 1.10 - March 21, 1998

rid of SEGV in PerlChildExitHandler spotted by Eric Cholet 

#ifdef USE_THREADS, don't hard_timeout/kill_timeout, SIGALRM causes hangage

=item 1.09 - March 19, 1998

rid of stupid "can't bootstrap Apache::Constants outside of httpd" message

added r->content_languages method

added htdocs/manual/mod/mod_perl.html (generated from Apache::ModuleDoc)

now support <Perl> under win32 (requires 1.3b6-dev+)

PerlChildExitHandler is now implemented via register_cleanup() rather
than the module child_exit hook (which might go away!)

support Apache::Constants tags `override' and `args_how', for Apache::Module

'make test' will now work again under win32

applied Apache::Symbol/Apache::StatINC patches from Chris Dean

fixed bug in Makefile.PL that would tack `aix' onto INCDIR w/ apache
1.2.x, spotted by Mike Klein

removed uneeded check for HTTP_AUTHORIZATION from perl_setup_env()

fixup perl_section_self_boot so it doesn't try to read config
if keys %Apache::ReadConfig:: < 1

perl_section_self_boot thang will now work w/ PerlRequire'd files too

compile @Apache::Constants::EXPORT subroutines at boot time (rather
than AUTOLOAD in each process)

added internal/error.t test to test the new feature below

ErrorDocument's can now access the $@ that threw SERVER_ERROR via
$@{ $r->prev->uri }

added internal/rwrite.t test to test printing of HUGE strings

1.3b6 compat:
- tmp fix for new r->server->names type
- adapt to SERVER_BUILT change to apapi_get_server_built() 
  for Constants.xs

fixed print $HUGE_buffer bug w/ ApacheSSL spotted by Jirka Hejsek 

added WRITE method for tied filehandles

fix so threaded Perl can have <Perl> sections

Perl 5.004_61 dropped -DUSE_THREADS from $Config{ccflags}, Makefile.PL
will now test $Config{usethreads} and add the flag itself

fixed eg/registry.pl sytax erros thanks to David Landgren

fix #ifdefs so we build under win32 again

config files now support =pod/=cut and __END__ in the same fashion Perl does

fix Makefile.PL so it can handle \'ed lines with help from Tom Hukins

Apache::Symbol::handler will skip all Devel::Symdump undef's so
make_universal will work properly

=item 1.08 - February 20, 1998

Apache::Registry will now fold multiple /'s to fix possible bug
spotted by Gerald Richter

fix Apache/Makefile.PL and Constants/Makefile.PL so DYNAMIC=1 works
with 1.3b5 (new include directory)

Constants.xs will now #include mod_perl.h so namespace #undefs are used

fixup some #define clashes on aix thanks to Eric Bartley

fixed Makefile.PL workaround for plucking SSL_INCLUDE with help from
Dan Peterson

can build again with threaded Perl (was just missing a few dTHR's)

cleared up BEGIN/END documenation with help from John Charlesworth

applied patch from Christopher McCrory so -f is also used when 'make
test' httpd is started so it'll work with a .rpm file for a redhat
linux 

added Apache::Constants->name method

fix an #endif; in mod_perl.h thanks to Eric Bartley

mod_perl_cleanup_handler won't try to if(cld) MP_RCLEANUP_off(cld);
#ifdef WIN32 to stop crash spotted by David Hodson

expose stacked handlers to Perl via %Apache::PerlStackedHandlers
(this is only those pushed via $r->push_handlers)

can now tell Makefile.PL APACHE_INCLUDE_INSTALL=0 if you don't want
header files installed

when Apache::Status tries to load optional modules, it will locally
turn off $SIG{__DIE__} to fix bug spotted by Dan Peterson

added SERVER_BUILT to Apache::Constants

got rid of "Use of uninitialized value." warning in perl_util.c seen
when running HTML::Embperl, hunted down by Todd Eigenschink and Gerald
Richter (listed as change in _04, but was lost!)

fixed Makefile.PL so it can deal with metacharacters when copying the
apache source include files, otherwise src.pm breaks, thanks to Dan
Peterson for the spot

=item 1.07_04 - February 10, 1998

fix "building mod_perl by hand" bug w/ 1.3bx spotted by Brian Mosley

no longer force 'PerlSendHeader On' for sub-requests which triggered a
bug spotted by Doug Bagley and Gerald Richter

Fix "Attempt to free unreferenced scalar." during kill -HUP w/
PerlFreshRestart On and <Perl> in httpd.conf spotted by Brian Mosley

clear endav and stacked_handlers on FreshRestart

fix bug spotted by Gerald Richter where Apache->register_cleanup would
cause a core dump

Apache->module will no longer eval "require $module", it will now
return true if the module is in %INC, false otherwise

fix so END blocks encountered at startup are run at shutdown
(I think one of the 1.07_xx version broke it)

If exists, Makefile.PL will add /usr/local/stronghold/conf/httpd.conf's
StrongholdKey to t/conf/httpd.conf for 'make test' for you

Makefile.PL will edit Stronghold's Makefile to replace:
"CFLAGS=$(CFLAGS)" with 'CFLAGS=$(CFLAGS)' so the SUBVERSION thang works

fix $r->custom_response problem spotted by Brian Mosley so it works
with SERVER_ERROR

added new method child_terminate

fix $r->current_callback so it can be called during startup

perl Makefile.PL PERL_DEBUG=1 will:
-add `-g' to EXTRA_CFLAGS
-turn on PERL_TRACE
-set PERL_DESTRUCT_LEVEL=2
-link against libperld if -e $Config{archlibexp}/CORE/libperld$Config{lib_ext}

Apache::Constants :common export tag no longer includes
OPT_EXECCGI (was held off from 1.07_01's Changes Apache::Constants
cleanup waiting to make sure HTML::Embperl and Apache::ePerl didn't
rely on OPT_EXECCGI to be exported by default.  both look fine now)

added workaround Apache::RedirectLogFix module to work around the
re-introduced log bug below

to fix a double-header send bug spotted by Doug Bagley, backed out
this Change from 1.06: 
 Apache::Registry will return REDIRECT if $r->header_out("Location")
 so the request is logged properly, thanks to spot by Jon Drukman

added experimental PerlRestartHandler 
(enabled with PERL_RESTART_HANDLER=1, note: _not_ enabled with EVERYTHING=1)

moved Apache::sv_name function to the new Apache::Symbol package

Apache::StatINC will call Apache::Symbol's undef_functions method for
.pm classes if PerlSetVar UndefOnReload is On

before re-compiling, Apache::Registry will now check if 
$package->can('undef_functions'), if so, invoke that method

added Apache::Symbol module with an undef_functions method

Apache->server_root_relative now defaults to "" when no
filename/directory name argument is given (ie returns ServerRoot)

made PERL_TRACE more useful with levels set via environment variable
MOD_PERL_TRACE:
d - trace directive handling during config read
s - trace processing of perl sections
h - trace Perl*Handler callbacks
g - trace global variable handling, intepreter allocation, END blocks, etc.
all - all of the above

will add -DSTRONGHOLD to CFLAGS if build against stronghold, thanks to
Todd R. Eigenschink

fix Makefile.PL's parsing of SERVER_SUBVERSION, spotted by Paul Sutton

$r->send_http_header can now accept an optional second argument, if
present will set $r->content_type

PerlPassEnv, PerlRequire and PerlModule now use an array_header
structure for internal storage

1.3b4 compat:
- adapt to new table api changes (with help from Rob Hartill and Dean Gaudet)
- adapt to *.h move to the new src/include directory

Apache::Status enhancements:
- "Loaded Modules" will now report last modified time
- "packages" are now links, click, symbol table dump
- now that packages are links, no longer do recursive dump
  (recurse yourself via hyperlinks, much easier to read!!!)
- hashes, scalars and arrays are now links, 
  click, Data::Dumper Dump (only if PerlSetVar StatusDumper is On)
- functions are now links, click, subroutine info (requires the B module)
- dump of any type also has a link "Peek Dump"
  (only if PerlSetVar StatusPeek is On and Apache::Peek is installed)
- dump of any type also has a link "OP Tree Graph" 
  (only if PerlSetVar StatusGraph is On)
  (requires the B and B::Graph modules and the dot program)
- added t/modules/status test

with the -DPERL_MARK_WHERE experimental feature enabled, there's a
chance you'll never see "Use of uninitialized value." again without
some more useful information, nor will you see '-e' reported outside
of Apache::Registry

perl_destruct_level can now be set via the environment variable
PERL_DESTRUCT_LEVEL or -DPERL_DESTRUCT_LEVEL

turn default perl_destruct_level down from 2 to Perl's default of 0

use a copy of apache's ap_cpystrn against versions < 1.3b4-dev

got rid of "Use of uninitialized value." warning in perl_util.c seen
when running HTML::Embperl, hunted down by Todd Eigenschink and Gerald
Richter 

added modules/src test for Apache::src

documented Apache::src

the Apache::src->new method will now default to the first
auto/Apache/include directory found relative to @INC

the apache header files (*.h) will now be installed in 
$(INST_ARCHLIB)/auto/Apache/include

fix $Apache::ServerStarting bug that broke 'make test' w/ ApacheSSL
and Stronghold spotted by Vivek Khera

remove the need for File::Copy's mv() function, since it can't seem to
decide if it has one or not

_03's new tests assumed PerlCleanupHandler was enabled, fixed now
thanks to spot by Rob Hartill

Makefile.PL will now chmod a+x t/net/perl/* t/net/perl/io/*
thanks to Rob Hartill 

experimental features can be enabled with -DDEFINEs instead of
$variables or %ENV, changes to Makefile.PL make them simple to add,
see eg/makepl_args.mod_perl for even simpler

added eg/makepl_args.mod_perl

the makepl_args.mod_perl can now have multiple lines, space, #comments
and empty newlines are ignored, stops reading if it hits __END__

Makefile.PL will now also look for $ENV{HOME}/.makepl_args.mod_perl
and read in if exists

before clearing handlers stacked via Apache->push_handlers at the end
of each request, save the PerlChildExitHandler stack and putback after
the clear.   this way, modules pulled in at server startup can say:
Apache->push_handlers(PerlChildExitHandler => sub {})

a "top-level" mod_perl per-directory directive would cause core dump
inside <Perl> sections.  now trap that and exit with message that the
directive should be inside a containter e.g. %Location, %VirtualHost
(not sure what the real problem is here)

re-work PERL_SECTIONS_SELF_BOOT stuff so it calls perl_section() directly,
rather than perl_eat_config_string("<Perl>\n</Perl>"), because:
- it no longer core dumps when a "top-level" per-server directive is found
- it no longer requires 1.3b3+ (1.2.x will work)
- it is faster

PerlModule/PERL_SECTIONS_SELF_BOOT will delete $INC{$PerlModule} on
the first config read pass, so it's re-read on the second pass

if ($] < 5.004_04) Makefile.PL will warn that users should upgrade to
5.004_04 or higher 

removed Apache::PerlSections' self test now that we have
modules/psections.t and it won't work without the =pod line.

remove =pod line from Apache:: modules (SIG, fork, Resource,
PerlSections) to stop 5.004's pod2man's bogus warnings spotted by  
Eric Cholet 

fixed but in $r->get_remote_host, which was forcing the default type
REMOTE_NAME even if another type was passed as the optional second argument

renamed eg/perlio.pl to eg/test.pl

moved SUPPORT section from INSTALL doc to it's own file

fixed auto-set of $ServerRoot bug in Apache::httpd_conf

get rid of -Wall warning in Apache::sv_name

=item 1.07_03 - January 8, 1998

removed "[notice] mod_perl restarted" message since it doesn't go to
the error_log as it should, spotted by Vivek Khera and Paul Phillips

fixed corrupted $ENV{TZ} spotted by Michael Parker

cut out 'make test' error_log noise, anything there now should only be
an error or a non-error [notice]

make Apache::Resource simpler to configure, to use w/ all defaults
(1.3bx + PerlChildInitHandler required):
PerlSetEnv PERL_RLIMIT_DEFAULTS On
PerlModule Apache::Resource

Makefile.PL will now:
mv "t/conf/httpd.conf", "t/conf/httpd.conf.old" 
so httpd.conf is re-generated when Makefile.PL is re-run

added new module Apache::src for finding it and picking out bits-n-pieces

get rid of some <Perl> section warnings with help from Doug Bagley

improved register_cleanup tests

applied $r->register_cleanup patch from Doug Bagley to properly call
MP_RCLEANUP_off after cleanups are run

perl Makefile.PL can now accept ADD_MODULE, Makefile.PL will (s/,/ /g)
and uncomment the list of modules from src/Configuration
 e.g.:
 ADD_MODULE=unique_id,proxy,info

perl Makefile.PL can now accept PERL_EXTRA_CFLAGS, Makefile.PL will 
(s/,/ /g) which are added to EXTRA_CFLAGS
 e.g.:
 PERL_EXTRA_CFLAGS=-DFOO=1,-DBAR=2

if the file `makepl_args.modperl' is present in . or .. it will be read into
@ARGV, e.g. might contain EVERYTHING=1 DO_HTTPD=1

fixes for 1.3b4-dev compat
- get rid of AuthName space in generated .htaccess file for
  internal/hooks test

if a PerlModule defines something in %Apache::ReadConfig <Perl>
sections are run without need to actually have <Perl></Perl> in
httpd.conf, i.e. httpd.conf could be nothing more than:
 PerlModule Apache::httpd_conf
whilst experimental, enable by setting the envrionment variable 
PERL_SECTIONS_SELF_BOOT to something true

experimental feature, modules can 'exit|die AUTH_REQUIRED;' or with
any HTTP error code and that response is sent rather than SERVER_ERROR
to test enable by setting $Apache::ERRSV_CAN_BE_HTTP = 1

take CGI.pm version check out of Apache::Registry, now that we require
5.004+, they'll have at least 2.36

get rid of "Use of uninitialized value at -e line 65535" warning
caused by perl_run_rgy_endav() spotted by Doug Bagley

if there is an error inside <Perl>, filename and line number are now
displayed in the error message, e.g.
syntax error at t/conf/httpd.conf line 25 
 instead of
syntax error at (eval 1) line 2

Apache::RegistryLoader->handler will now strip leading '/' when $uri is
server_root_relative and no $filename is present

Apache::Status menu item "Perl Section Configuration" 
(only if $Apache::ReadConfig is true)

added Apache::Status menu item "Enabled mod_perl Hooks"

added mod_perl.pm functions hook() and hooks()

go back to internal <Perl> sections package name ApacheReadConfig

Apache::PerlSections stuff:
- added handy store method for writing dump() to disk
- fixed self-test
- updated docs to reflect new output format

Apache::test stuff:
- added run method
- added MM_test method for Makefile.PL's to say:
  *MY::test = \&Apache::test::MM_test

some httpd_conf.pm stuff:
- added server_url method
- added catch_signals method to terminate httpd on __DIE__ or INT
  ($conf->server_start calls this by default)
- when httpd.conf is written, set BaseDir in a BEGIN block
- drop trailing slash from Alias'
- fix write() method's assignment of %$self to *Apache::ReadConfig:: 

fix possible core dump when calling gv_fetchmethod()

=item 1.07_02 - December 22, 1997

fixed perl.exp thang on aix

added tests t/modules/httpdconf.t and t/modules/perlsections.t

added Apache::httpd_conf module

if variable $Apache::ReadConfig is true, don't undef the <Perl>
section eval package %Apache::ReadConfig::

output of Apache::PerlSections->dump is now suitable to be eval'd

added Apache->httpd_conf method (just pushes into
@Apache::ReadConfig::PerlConfig and requires 1.3b3+)

renamed package <Perl> sections are proccessed in 
from ApacheReadConfig to Apache::ReadConfig

ensure values of %Location keys, etc. in <Perl> sections are HASH refs
to stop possible core dump spotted by Stuart Frew

fixed memory leak in $r->push_handlers() with help from Gerald Richter

added new items to Apache::Status: "Environment", 
"Perl Configuration", and "Signal Handlers"

when %ENV is setup, my_setenv() is now called so subprocesses will inherit

"top-level" PerlSetEnv variables will now be set during server startup

got rid of unintialized warning in Apache::Status

$r->custom_response will now add the `"' needed if arg is not a url or
filename 

added new Constants CONTINUE and NOT_AUTHORITATIVE as aliases for DECLINED 

change the `PerlScript' directive name to `PerlRequire' as suggested
by Dick Hardt (PerlScript will still work, but is not documented)

set variable $Apache::ServerStarting to 1 during perl_startup()

set variable $Apache::ServerReStarting to 1 during perl_restart()

Apache::SIG->set is now called at server startup by default

applied patch from Doug Bagley to stop possible infininite loop in
Apache->read 

create stacked_handlers = newHV() before modules are loaded,
so PerlModule's can do things like:
   Apache->push_handlers(PerlChildInitHandler => sub {
	srand(time ^ $$);
   });

$r->args can now be modified as suggested by Joel Truher

remove obsolete (and broken) iedit of t/net/perl/cgi.pl thanks to
Vivek Khera

Apache::Resource now correctly converts MB values

=item 1.07_01 - 12/1/97

added t/internal/stacked test

updated the FAQ from Frank Cringle

added Apache::fork module which override's Perl's built-in fork() and
provides a forkoption function, contributed by Michael Turner

can now build/run w/ 5.004_55 threaded Perl

added Apache::Status item for PerlScripts

there can now be multiple PerlScript files in *.conf and .htaccess 
(same behavior as PerlModule)

ServerRoot is now pushed into @INC at server startup

filename argument to log_reason is now optional, defaults to $r->uri

Apache::Constants cleanup:
 - @EXPORT now only holds items in :common
 - re-organized tags (adding some new ones)
 - added some documentation!

$r->get_remote_host can now take an optional type argument, default is
still REMOTE_HOST, other valid options are Apache::Constants :remotehost

added new Apache::Constants tag :remotehost (for $r->get_remote_host)
with new constants:
   REMOTE_HOST REMOTE_NAME REMOTE_NOLOOKUP REMOTE_DOUBLE_REV

added new Apache::Constants tag :satisfy (for $r->satisfies)
with new constants: 
  SATISFY_ALL, SATISFY_ANY, SATISFY_NOSPEC

added new method $r->satisfies

added new method $r->some_auth_required

`METHODS' Apache::Constant added to import tag :methods

perl_stdout2client() will now set $| instead of perl_handler(), so
thanks to Salvador Ortiz for the tip

PerlSetEnv will now call my_setenv() underneath thanks to Tim Bunce
for the tip 

fix mod_perl_traps.pod typo so it can install, spotted by Brian Tiemann

=item 1.07 - 11/25/97

added notes from Larry Denneau and Michael Smith on building with
mod_auth_dbm to mod_perl_traps.pod 

added $r->custom_response method

$r->proxyreq can now be set

'use Apache qw(warn);' will now work during server startup

fixed loading of PerlScript, so errors are reported!
(your PerlScript must "return a true value")

fix TEST.win32 thanks to Peter Tillemans

s/DEFAULT_RSS_LIMIT/DEFAULT_RLIMIT_RSS/ in Apache::Resource
thanks to Jarkko Hietaniemi

fix Apache::RegistryLoader bug spotted by Brian Mosley

changed "Options ExecCGI" to "Options +ExecCGI" in httpd.conf-dist to
fix problem in 'make test' seen by Frank Ridderbusch

=item 1.06 - 11/20/97

fixed core dump seen under linux if PerlChild{Init,Exit}Handler is
defined (bug was introduced in 1.05 when PerlDispatchHandler was added)

added new module Apache::Resource

fix core dump in $r->notes when val is an IV, spotted by Dwayne Fontenot

get rid of "use of uninitialized value" from <Perl></Perl> pointed out
by Joel Wagner

fixed strict refs bug in Apache::PerlSections spotted by Brian Mosley

Apache::Registry will return REDIRECT if $r->header_out("Location")
so the request is logged properly, thanks to spot by Jon Drukman

call mod_perl_pass_env() during perl_startup() so PerlScript and
<Perl> sections can see PerlPassEnv variables

mkdir t/logs so we can run tests with ApacheSSL 

Makefile.PL will add -I$(SSL_BASE)/include to EXTRA_CFLAGS for ApacheSSL

fix core dump with 1.3b3-dev

=item 1.05_01 - 11/15/97

If Apache::SIG is set, don't install the default $SIG{PIPE}="IGNORE"
 
added PerlPassEnv directive suggested by Joel Wagner

stop core dump in Apache::exit spotted by Joel Wagner if called as a
function, too early (before PerlHandler) without having called
Apache->request($r)  

fixed bug spotted by Roland Friedwagne where CGI.pm-2.37bx's header()
method (Apache->send_cgi_header underneath) would not work unless
PerlSendHeader was On (added new tests to internal/headers.t to make
sure from now on!)

applied patches from Peter Tillemans so we can run the test suite
under win32

applied win32 patches from Peter Tillemans so perl_handler() is mutex
locked and to cut out Makefile.PL attempt to symlink the eg directory

Apache::test will define the bootstrap method for Apache and
Apache::Constants to quiet 'make test' noize spotted by Andreas

=item 1.05 - 11/06/97

no longer include $r->server->server_name as part of the
Apache::Registry uri->package name translation by default.  if you
*really* need this to happen set this in PerlScript:
 $Apache::Registry::NameWithVirtualHost = 1;
and, please tell me why you need it, we'll figure out a better way

yanked DeleteINC thingy from StatINC

applied patch from Randal Schwartz so StatINC doesn't loop when it has
to reload itself

disable CV cache of stacked handlers for now, they stick around too 
long, e.g. Apache::StatINC won't work, thanks to Randal Schwartz for
spotting this

applied patch from Ben Reser so $r->send_fd returns the length (as it
should have been doing)  

added current_callback() method handy for PerlDispatchHandler's

added suggestion from Andreas for a PerlDispatchHandler hook

re-worked code in perl_load_startup_script() that was causing IRIX 6.x
to choke when saving dowarn, thanks to Lasse Petersen for tracking
this down

fixed newline eating bug spotted by Eckard Brauer when headers and
body are sent in the same print() statement

renamed 'core' test directory to 'internal'

remove t/TEST's search for obsolete directories, which caused trouble
on IRIX 6, spotted by Lasse Petersen 

for internal redirects (spotted by $r->cgi_header_out), don't
perl_call_halt(), instead, tie STDOUT to the Apache::FakeRequest class
which just soaks up print() output.

suggestion from Salvador Ortiz, for table methods, if value is
undef, call table_unset underneath, these methods are subprocess_env, 
header_in, header_out, err_header_out, notes and dir_config. e.g.:

 $r->header_out("Content-length" => undef);

ensure constant subroutine re-definition warnings are surpressed
during restart (when PerlFreshRestart On), spotted by Vivek Khera

added Apache::FakeRequest module

added tests for embperl and eperl

applied patch from Lupe Christoph so Makefile.PL will not throw out
-DSERVER_SUBVERSION if present in apache_x.x.x/src/Configuration

fixed bug in Apache->send_cgi_header that was sending headers twice
with "here" docs, spotted by Leonard Megliola

Apache->server->log_error will return undef if logs are not open yet
as suggested by Mike Fletcher

fixed typo bug in Apache::Status spotted by Brian Tiemann

=item 1.04 - 10/30/97

PerlScript and -Mmod_perl are no longer handed to perl_parse(),
instead perl_parse() gets a -e to set $ENV{MOD_PERL} and
$ENV{GATEWAY_INTERFACE} (and possibly other switches -T, -w)
PerlScript is pulled in via 'do $PerlScript';

applied patch from Ron Hawkins to fix bug in perl_setup_env() when
running with Stronghold in secure mode

added Apache::PerlSections module, currently with one method: dump()

for use in <Perl> sections, PerlScript and PerlModules, can now say 
'my $s = Apache->server' during server startup, which returns a
server_rec* blessed into the Apache::Server class just as $r->server
does during request time.   

Apache::Server class can now warn() and log_error()

avoid using LWP::Simple so we don't get caught up on HTTP_PROXY which
was cause 'make test' to fail several tests for some people.
thanks to Philippe Froidevaux, Tom Hughes and Frank Cringle

added some 3rd-party tests for Apache::Stage and Apache::Sandwich

added Apache::test module

back out support for internal redirects, caused big problems with
sfio-enabled Perl spotted by Lupe Christoph and Salvador Ortiz 
(can still try by setting $Apache::DoInternalRedirect=1 #ifndef USE_SFIO)

added Apache::SIG module for testing

Apache::exit will not rflush if r->connection->aborted

updated Vivek's mod_perl_tuning.pod

now that 1.3b3-dev config gears are not tied so tight to a FILE*,
<Perl> sections may define $PerlConfig and/or @PerlConfig, who's
string values are fed to the apache config  

some mod_perl.pm fixes

Apache::Status "Loaded Modules" item enhancements:
-now shows file location
-can click on module package for dump of it's symbol table
-pretty table format

don't add -I. to perl_startup() which may cause confusion spotted by
Mike Fletcher

make _sure_ perl_per_request_init() is called for sub-requests so
everything works properly, e.g. Action or a mod_include'd #perl
thanks to Peter Levart and Scott Holdren for spotting this

=item 1.03 - 10/23/97

configure/build/INSTALL enhancements with much help from Bowen Dwelle:
- to use an apache Configuration file that mod_perl will not edit:
  perl Makefile.PL CONFIG=Configuration.custom

- perl Makefile.PL DYNAMIC=1 ALL_HOOKS=1 ...
  Configure mod_perl with ../apache_1.2.4/src ? [y]
  Shall I build httpd in ../apache_1.2.4/src for you? [y] n   
  now, $APACHE_SRC/modules/perl/Makefile will be enabled with those hooks
 
- to aid EXTRA_CFLAGS when building by hand or using a custom
  Configuration file: `perl -Mmod_perl -e subversion` prints:
    SERVER_SUBVERSION=\"mod_perl/$mod_perl::VERSION\"

- fixed up INSTALL quite a bit

added $r->post_connection alias for $r->cleanup_handler

if 1.3b2+, drop log_error(), use new aplog_error() instead (everywhere)

if Tie::IxHash can't be loaded for <Perl> sections, don't complain

applied patch from Rob so mod_perl.pm is in the tar_Apache target

removed Apache->request depreciation warning

added redirect.t test to test remote redirect and internal redirects

fixed internal re-direction handling of Location: /local/file.html

removed several eg/ scripts that were "ports" of CGI.pm-x.xx/examples 
now that CGI.pm runs solid under mod_perl and mod_perl requires
5.004+, there's no need for $r->print and CGI::Switch, so those
examples don't need "porting"

force 'PerlSendHeader On' for sub-requests, e.g. Apache::Sandwich
so headers don't show up in the browser

fixed PerlSendHeader bug with virtual includes spotted by Scott Holdren

make lib/mod_perl.pm -> mod_perl.pm symlink (for 'make test') relative,
suggested by Bowen Dwelle

applied patch from Andreas to add a new $r->subprocess_env method

fixed Apache::StatINC brokeness spotted by Bowen Dwelle and applied a
StatINC doc patch from him too

fixed bug with PERL_TRACE=1 spotted by Jimmy Oh

restarting httpd ala kill -HUP will now reload all modules and flush
the Apache::Registry cache 
(must set 'PerlFreshRestart On' in httpd.conf for this to work)
 
=item 1.02 - 10/17/97

have Makefile.PL edit t/net/perl/cgi.pl's #! line to fix perl location
thanks to Frank Cringle for spotting this

=item 1.01 - 10/16/97

removed undocumented auto-import of qw(OK DECLINED) use to short-cut
Perl*Handlers and/or apache C handlers, use Apache::OK and
Apache::DECLINED instead

start perl interpreter with -Mmod_perl so _every_ module no matter
where it's loaded from will see $ENV{GATEWAY_INTERFACE} and $ENV{MOD_PERL}
Thanks to Mark Dedlow for illustrating this need with Apache::DBI and friends.

<Perl> section %Hash values of hash refs now go through
perl_handle_command_hv(), so `Location' can be inside %VirtualHost,
etc.  Thanks to Ask Hansen for spotting this. 

<Perl> section %Hash values of array refs now go though
perl_handle_command_av(), so proper action is used on TAKE1, etc. 

if Tie::IxHash is available, tie <Perl> section %Hashes to it, so the
apache config routines get info in the order it needs to.  Thanks to
Rob Hartill and Dean Gaudet for explaining this need for 1.3bx's
new virtual host features

include the mod_perl logo image (mod_perl.gif)

ensure _all_ stacked handlers registered with $r->push_handlers() are 
cleared after each request to fix bug spotted by Peter Lister

test suite will now delete $ENV{HTTP_PROXY} before running,
thanks to Frank Cringle

Apache::Registry args changes:
-$_[0] is the blessed Apache request_rec
-$_[1..-1] are args from Apache::Include::handler or elsewhere 
           as suggested by Andreas

added tests for Apache::Include

applied Apache::Registry optimization patch from Andreas

Apache/Apache::Constants no longer ISA Exporter,
just alias *import = \&Exporter::import

test suite re-org

write a mod_perl.pm so we can require a mod_perl min version 
and hooks/features ala
 use mod_perl 1.01;
 use mod_perl 1.01, qw(Authen Authz);

new Apache::RegistryLoader to pre-load Apache::Registry scripts

added Apache::Include->virtual($uri) method

1.3b1 stuff:
-cat apache_x.x.x/src/Makefile.config and src/modules/perl/Makefile
 together so we get $(INCLUDES) (for os/unix, etc)

applied patch from Salvador Ortiz so calling $r->args in an
array context will not produce "Odd number of elements in hash list" 

$r->auth_name can now be modified

remove Apache->send_cgi_header's broken internal re-direct handling
spotted by Debby Fu

added Frank Cringle's mod_perl FAQ 

added mod_perl_tuning.pod document from Vivek Khera <khera@kciLink.com>

fixed bug spotted by Brian Millett so stacked handlers work again with
Apache-SSL

set environment variable `MOD_PERL' so scripts can say:
if(exists $ENV{MOD_PERL}) { ...

added suggestion from Rob Hartill:
'PerlSetVar MaxModPerlRequestsPerChild 10' behaves like
MaxRequestsPerChild, but counts mod_perl requests only.  1.3b1-dev+ is
needed for this

=item 1.00_03 - 09/21/97

save %SIG before perl_handler (Apache::Registry) is run, restore
afterwards as suggested by Randal Schwartz

fixed virtual host/Apache::Registry bug introduced in _02,
spotted by Ryan A. Whelan

a few win32 fixes:
- skip uid,gid,etc., in perl_init_ids 
- fix ApacheModulePerl.dsp for source re-org

if PerlSendHeader is On, the environment variable PERL_SEND_HEADER is
set to `On'

=item 1.00_02 - 09/15/97

1.3b1 stuff:
- $r->warn and $r->log_error go through new aplog_error() function.
  If `LogLevel' is not set to `warn' or higher, $r->warn messages are
  ignored (not sent to error_log). 
  (i.e. $r->warn == APLOG_WARNING, $r->log_error == APLOG_ERR)
- always enable child_init/child_exit
  + use child_init for perl_init_ids() 
  + use child_exit to: 
     -run END blocks suspended at server startup
     -run perl_destruct(), now global objects will be DESTROYed
- make sure mod_include can find modules/perl/mod_perl.h if PERL_SSI=1
- fix INCDIR in src/modules/perl/Makefile
- rename libmodperl -> libperl for new Configure changes
- added PerlPostReadRequestHandler hook for new api phase
- make Makefile.PL deal with source re-org
- is_matchexp -> is_fnmatch (perl_config.c)
- #undef die to resolve conflict spotted by Rob Hartill

applied Apache->read patch from Evert-Jan Couperus to use lvalue
substr() instead of .=

Apache->seqno will no longer dig into scoreboard info for rec.my_access_count
the seqno method was originally introduced for CGI.pm, which now uses
$r->register_cleanup instead.  It was never documented in Apache.pm,
does anyone actually use Apache->seqno?

perl_section() will call perl_startup() if Perl's not running already,
as suggested by Rob Hartill

included t/conf/httpd.conf.pl for testing <Perl>, which can replace
t/conf/httpd.conf if you've configured with PERL_SECTIONS=1

removed undocumented Apache::Registry->push_cleanup method

various documentation updates 
- document END blocks behavior
- added "Additional memory tips" section to mod_perl.pod
- added mod_perl_traps document
- Apache.pm docs patch from Gisle Aas
- cgi_to_mod_perl.pod suggestions from Ben Laurie
- other stuff here-n-there

applied patch from Ulrich Pfeifer so Makefile.PL does not eat args for
MakeMaker, e.g. PREFIX=~

mod_perl now requires Perl version 5.004 or higher

hookup STDERR to error_log first chance we get (first Perl*Handler
that's called)

$r->warn and $r->log_error will now join @_ and log one string instead
of calling log_error foreach @_, suggested by Joel Wagner

PerlScript may now be relative to ServerRoot

remove UNIVERSAL::AUTOLOAD from Apache::Debug (more trouble than help!)

make sent_header variable per-directory instead of global

added $r->bytes_sent method suggested by Maurice Aubrey
along with code from Nathan Torkington to make sure we get it right as
mod_log_common does 

added fix to Apache::Include from Randal Schwartz so $r->uri is
properly reset 

SetEnv PERL5LIB will now work on a per-directory basis thanks to spot
by Vivek Khera

if PERL_SSI=1 only do `perl -MExtUtils::Embed -e ccopts` once instead
of for every .c file!  nudge from Rob.

applied Makefile.PL patch from Rob Hartill to prompt for most recently 
modified apache*/src directories first

now suspend all END blocks encountered during server startup and run
them during server shutdown aka child_exit (need 1.3b1+)

now execute END blocks of PerlHandler (Apache::Registry) scripts at
the expected time

make sure CGI.pm version 2.36 or higher is being used

make sure GATEWAY_INTERFACE is not cleared from %ENV so
Apache::DBI/ApacheAuthenDBI work together, thanks to spot by 
John Groenveld

some source re-org: split stuff into perl_util.c and perlio.c, 
rename config.c -> perl_config.c, various cleanups

the constants.t test is now run under httpd with t/net/constants.pl

Apache::Constants not longer defines subs at startup.  we now use a C
AUTOLOAD which creates newSUBs when needed, without eval {} and
without "prototype mismatch" errors.  This shrunk my httpd image size
by ~50K

according to Joel Wagner, Solaris's tar did not like the trailing / on
the Apache/ argument to the tar_Apache target in Makefile.  gone now.

thanks to help from Vern Hart, Apache::Registry will now include
$r->server->server_name as part of the uri->perl package translation
if $r->server->is_virtual  

$0 is now set to $r->filename thanks to spot by Dylan Tynan

added auth.t test to the suite

moved constants/export.t to net/constants.t
 
$>, $<, $) and $( are now properly initialized, thanks to bug spot by
James Freeman 

applied Constants.{pm,xs} patch from Gisle Aas, adding some new
constants from httpd.h, :methods import tag and some cleanups

applied Makefile.PL patch from Andreas Koenig adding verbosity
if there's a problem with t/report

PerlNewSendHeader functionality has replaced PerlSendHeader's
the `PerlNewSendHeader' directive is gone, replace with `PerlSendHeader'

fixed Apache::exit so it no longer calls C-level exit (unless exit
code == -2), it now just terminates the perl callback, without
producing an "Internal Server Error" therefor, we complete _all_
post-handler request phases and no longer dump core, as some have seen
under certain conditions.  the test suite nows tests calling exit()

applied patch from Brian Millett to Makefile, so SSL_CFLAGS are used
with Ben-SSL 

=item 1.00 - 07/28/97 

some 1.3a1 compatible things:
- mod_perl is now a dll under win32 
(Extra thanks to Gurusamy Sarathy for fixing Perl so this works)
- cope with limit() -> limit_section() rename
- API_EXPORT perl_call_handler and perl_stdout2client for mod_include/win32
- added win32 dirent.h kludge to workaround conflict(s) between perl's
  dirent.h apache's readdir.h  
- -Wall clean again

added new sub request methods:
- lookup_uri (sub_req_lookup_uri)
- lookup_file (sub_req_lookup_file)
The returned request_rec * is blessed into the `Apache::SubRequest'
class so destroy_sub_req() is called automatically during DESTROY
- the run_sub_req() function is available in this class as the run() method 

added patched Makefile.tmpl-Xcert from Vivek Khera to support XCert's Stronghold Sentry

$r->cgi_header_out should do case-insensive checks, 
bug spotted by Ralf Engelschall

eval { bootstrap Apache::Constants } so perl -c works outside of httpd

added `PerlChildExitHandler' callback hook (requires 1.3a2-dev or higher)

added `PerlChildInitHandler' callback hook (requires 1.3a1 or higher)

don't enable PERL_SECTIONS or PERL_SSI unless apache version >= 1.2.0
thanks to hint from Vivek Khera

removed Makefile-1.2 (don't need one anymore!)

removed Apache->connection->close method which _nobody_ should still have
their code  (it has produced a warning since 0.93_01 - 03/04/97)

added Apache->connection methods local_addr() and remote_addr() thanks to
Eric James Negaard 

applied patch from Hakan Tandogan so mod_perl's Makefile picks up SSL_INCLUDE

fixed chdir/current dir bug in Apache::Registry thanks to Joel Wagner

=item 1.00b2 - 07/07/97

fixed scoping bug in Apache::Registry spotted by Marshall Dudley

append LockFile to t/conf/httpd.conf if SERVER_VERSION >= 1.2.1

add ''s for CC='$(CC)' workaround for bug spotted by David Lloyd and others

added Apache::Debug->import so 'use Apache::Debug level => 4' will:
-level sets $Apache::Registry::Debug
-define UNIVERSAL::AUTOLOAD to stop spinning when undefined sub is called
-Carp::confess instead of die()
-allocate $^M if $Config{cflags} =~ /EMERGENCY_SBRK/

croak() if should_client_block() to prevent spin into "Out of memory!"

make compatible with 1.2.1 r->read_length change so we don't hang
on file uploads

can't run 'make test' as root with 1.2.1, if user `nobody' exists,
use that, otherwise prompt user for `User' and `Group' as suggested by
Michael Parker   

Andrew Tennant reported that `PassEnv' didn't work.
we now turn off %ENV magic when clearing %ENV so it does work

win32 stuff:
-include handy patch for modules.c as there's no win32 Configure script yet
-fixed mod_perl.h mutex #define broken-ness

the following will now work as expected (building {Apache,Constants}.s[ol]):
 perl Makefile.PL NO_HTTPD=1 DYNAMIC=1 && make
thanks to hints from Bowen Dwelle

added Makefile.PL option where 'perl Makefile.PL EVERYTHING=1'
will enable all features:
ALL_HOOKS, PERL_SECTIONS, PERL_STACKED_HANDLERS, PERL_METHOD_HANDLERS, PERL_SSI

fixed cgi_to_mod_perl.pod mess

added AIX note from Eric Bartley to the INSTALL doc

=item 1.00b1 - 06/29/97

turning off $^W in Apache::Registry when using Cwd to avoid
'use of uninitialized variable' warning

added Apache::DESTROY to shutup AutoLoader compliants spotted by Tim Newsome 

Constants.pm:
-added constant for DONE (included with export tag ':common')
-removed constants for DYNAMIC_MODULE_LIMIT, HUGE_STRING_LEN,
 MAX_HEADERS, MAX_STRING_LEN, METHODS

added benchmark/ directory with benchmarking examples

added pointers to Mike Stok's FAQ mirrors

added short-n-simple cgi_to_mod_perl document

fixed various Makefile.PL w/Stronghold bugs spotted Vivek Khera and Ted Corning
- PERL_SSI=1 will work (and add -DAPACHE_SSL)
- Makefile.tmpl is fixed up so mod_perl/x.xx is added to Server:
- 'make test' will pause (sleep 2) between starting httpsd and running the tests

swap link order of Makefile.tmpl for Stronghold, regardless of version,
thanks to Ted Corning

perl_clear_env() will now leave $ENV{TZ} in place to 
cure bug with hpux 9.04 spotted and suggested fix from
1Lt. Samuel S. Tai 

Apache::Registry will now 'chdir dirname $r->filename' before the 
script/subroutine is compiled so 'use Foo' can find Foo.pm in '.'
bug spotted by Janne Himanka

win32 port:
-added INSTALL.win32
-added src/modules/perl/mod_perl.mak
-tweaked Makefile.PL:
  -does not try to build httpd 
  -generates perlxsi.c, Apache.c, Constants.c (since we use mod_perl.mak)
-Apache::Registry does not test '-x $filename' if $Is_Win32 
-wrap callbacks in a mutex lock/unlock

applied patch from Eric Bartley to fix Apache::Include

change Apache::Registry behavior back to returing $r->status instead of OK

=item 0.99

added DO_HTTPD option to avoid configuration prompts, suggested by
Michael Alan Dorman 

only build Constants.s[ol] with DYNAMIC=1

swap link order in Makefile.tmpl for Stronghold as we did for b11
thanks to Ted Corning for spotting

applied patch from Rob so 'make tar_Apache' creates the tarball in $PWD

@Lists in <Perl> sections can now deal with TAKE2, TAKE23, TAKE3, etc.

updated FAQ pointers to Frank's new version

Apache::Registry will return OK instead of $r->status, suggested by Owen Scott Medd

skip t/constants/export test on platforms that don't support dl

removed Apache::CGI stub

removed alias for Apache::CGI::exit and Apache::TieHandle::TIEHANDLE

cleanup up Makefile.PL, no longer support 1.2bx's

another patch applied from Alexander Demenshin who found av_undef
does not take care of everything, we must SvREFCNT_dec too!

fix bug with PERL_METHOD_HANDLERS spotted by Eric Bartley

=item 0.98_12

applied patch from Alexander Demenshin <aldem@techie.com> to plug
leaks in perl_{stdout,stdin}2client

can now say 'perl Makefile.PL PERL_SSI=1' to enable mod_include stuff

the link order of apache 1.2b12-dev has been switched back to the way
it was in b10, now we only have to muck with Makefile.tmpl if $Is_b11

once again, ensure CGI.pm knows GATEWAY_INTERFACE if it is use'd in a
PerlScript, thanks to Tom Hughes for spotting this

removed trick to make `require Apache::TieHandle' a noop, *nobody*
should still have that in any code, if so, sorry, get rid of it!

inspired by Pai-Ling Hsiao, added tiny Apache::Include module so the
mod_include <--!#perl directive can take advantage of
Apache::Registry, like so: 

 <!--#perl sub="Apache::Include" arg="/perl/ssi.pl" -->

added $r->translate_name method to run translate handlers

fix Apache::Status so it sends http headers!  spotted by Mike Stok

have cgi.t skip it's tests if CGI.pm is not installed, for Rob, the
only person in the whole world who doesn't have CGI.pm installed ;-)

s/make/$(MAKE)/ for 'make test_report' thanks to Tom Hughes 

=item 0.98_11

switch Apache::parse_args behavior back to pre-0.98_09

=item 0.98_10

if mod_php is in Configuration, keep Makefile.tmpl link order as is,
and set Rule WANTHSREGEX=no

removed `BrowserMatch' from t/conf/httpd.conf

can now 'make test' without needing to run 'make' first

get rid of Manifest warnings during 'perl Makefile.PL'

reset $/ to "\n" after each request (t/net/test will test this)

set $ENV{GATEWAY_INTERFACE} before perl_run() so it's set for
server startup PerlScript's

=item 0.98_09

fixed bug in Apache::perl_hook('Access') spotted by Eric Bartley

applied patch from Peter Levart <Peter.Levart@SELECT-TECH.SI>
to make Apache::parse_args more reliable

if using Perl 5.003, use system cp since File::Copy is broken, 
bug spotted by Rob

switch link order in Makefile.tmpl back to what it was in b10 (tmp workaround):
s/$(LIBS) $(REGLIB)/$(REGLIB) $(LIBS)/
Thanks to hint from Mike Fletcher

=item 0.98_08

added 'make test_report'

=item 0.98_07

STATIC=1 is the default now, you make choose DYNAMIC=1

force STATIC=1 if $Config{osname} =~ /svr4/; #unixware

documented mod_perl+mod_include integration in mod_perl.pod

Constants.xs will now make due if SERVER_SUBVERSION is not defined

still build Constants.s[ol] even if we've configured with STATIC=1

=item 0.98_06

smoothed out Stronghold configuration bumps with help from 
Ted Corning <ted@newscorp.com>.  (see updated INSTALL)

documented <Perl> sections in mod_perl.pod

added eg/perl_sections.txt from Rob

=item 0.98_05

applied fix from Brian Millett so Makefile.PL can deal with Ben-SSL-1.2

applied patch from Rob to quiet -Wall in new PERL_SECTION code

=item 0.98_04

added BSDI dynamic loading notes from Gary Shea <shea@xmission.com> to
the INSTALL doc 

added PRINTF method (again!) for tie'd STDOUT, spotted by Kristina Helen Long

the following stuff now works inside <Perl></Perl> sections:
- %VirtualHost, %Files and %Directory 
- implemented <Limit GET POST> sections like so:
$Location{"/~dougm/"} = {
    AuthUserFile => '/tmp/htpasswd',
    AuthType => 'Basic',
    AuthName => 'Homepage',
    Limit => {
	METHODS => 'GET POST',
	require => 'user dougm',
    },
};
- `PerlModule' configuration directive

set $SIG{PIPE} = 'IGNORE'; when the server starts to avoid hosing when:
 `Apache->print lost connection to client'
thanks to Aaron Flin for the tip

=item 0.98_03 - 05/19/97

construct Perl interperter the first time perl_startup is called
rather than the second:
-slapped self upside head wondering why I did not do this before
-now -DAPACHE_SSL for Stronghold or Ben-SSL does not matter
-<Perl></Perl> sections work again
-ugly avoid_first_alloc_hack is gone!
 
added `ENVIRONMENT' section to mod_perl.pod

added `PerlSetEnv' configuration directive

back to only PerlHandler enabled by default 

if STATIC=1 is configured during 'perl Makefile.PL', Apache::Constants
will also be linked static.  This is the default on aix and bsdos.

$r->register_cleanup will now save a pointer to the request_rec
rather than doing it in PerlTransHandler

applied patch from Martin Pool <m.pool@pharos.com.au> so we see the real
line number if something goes wrong in an Apache::Registry script

now add -I./ and -I$Config{archlibexp}/CORE to EXTRA_CFLAGS for
mod_include integration

=item 0.98_02

$r->send_http_header now resets $r->status to 200 after calling
send_http_header() to squash double header w/ Location: bug 
spotted by Jonathan Lieberman

added $r->cgi_header_out so we can _really_ send headers the way
mod_cgi does (e.g. Set-Cookie bug spotted by Jonathan Lieberman)

=item 0.98_01

made room for args in perl_call_handler() for mod_include integration
in the future, this can be used to pass arguments to Perl*Handlers:

   PerlHandlerArgs Package::sub_name  OneArg TwoArg RedArg BlueArg 
   
split out some config routines from mod_perl.c to config.c

fixed bug in Apache/Makefile.PL thanks to Jeff Rowe

now use translate slot to do some initialization

Perl*Handlers can now be anonymous subs (need 5.003_98+), e.g.:

 PerlFixupHandler "sub { shift->header_out(Key => 'val') }"

finally get cleanups right:
- PerlCleanupHandler is now run during PerlLogHandler
- new method $r->register_cleanup uses register_cleanup
  underneath and is always available

@INC is now reset to default after each request

fixed "const char *" bug in typemap spotted by Honza Pazdziora 

=item 0.98 - 05/02/97

save a pointer to request_rec in the translate stage so we always have one
for PerlCleanupHandler (e.g. no PerlHandler first), tracked down by Eric Bartley

PerlTransHandler enabled by default now

don't use server_argv0 when intializing perl_startup's argv[], caught by Andreas

remove headers.t, will bring back in 0.98_01 and flesh out PerlNewSendHeader

fix exit() so we don't need to $r->rflush first and we make Rob happy

fix bug in $r->requires, caught by Eric Bartley

go back to $|=1 #ifdef USE_SFIO, caught by Salvador Ortiz

=item 0.97_02 - 04/29/97

added documentation for stacked handlers and a little for method handlers.

$^X is now set to server_argv0 as suggested by Frank Cringle

Apache::Registry will now require CGI.pm version 2.35 or higher if you
are using it.  Makefile.PL will also test and warn if it is < 2.35

removed examplish modules from the distribution into the contrib directory: 
AuthzAge.pm, AccessLimitNum.pm, MsqlProxy.pm, SSI.pm
the contrib directory will be tar'd and uploaded to CPAN when updated.

added headers.t test for Perl(New)SendHeader

added option to link httpd with static Apache.o (the original way), 
(Eric Bartley reported problems on aix with Apache.so, others?)
like so:  perl Makefile.PL STATIC=1

only bother setting $$ once per-child

%ENV is now cleared by a registered cleanup function, rather than
after PerlHandler is called

applied patch from Andreas to ensure APACHE_SSL is defined if
we're configuring with it 

putback -DSERVER_SUBVERSION now that netscape workaround is in 1.2b9

PerlNewSendHeader enhancement so headers don't need to be part of
a single print statement.

applied fix from Rob Hartill so Makefile.PL can parse beta version >= 10!

properly initialize cld->new_sendheader thanks to Rob Hartill

$r->print is now an xsub for speedup, even with the new
extra operation of checking $|, it's faster:

 Benchmark: timing 100 iterations of 0.97_01, 0.97_02...
    0.97_01:  9 secs ( 2.03 usr  0.19 sys =  2.22 cpu)
    0.97_02:  8 secs ( 1.84 usr  0.17 sys =  2.01 cpu)

sfapachewrite() will now call Apache->print 

if $| is non-zero, call rflush() after writing to the client

$| is reset to 0 before PerlHandler is called

applied patch from Eric Bartley to:
-add get_remote_logname() method
-update Apache.pm documentation including:
 get_remote_logname, auth_type, auth_name, document_root, notes

fix so $r->rflush works with older apache's

=item 0.97_01 - 04/22/97

added experimental `PerlNewSendHeader' config directive
works like `PerlSendHeader', but scans headers for special
headers like Location:, Status:, etc.
simply uses a C global variable `sent_header', if true, sends
data asis to client, otherwise calls $r->send_cgi_header 
currently, does not work with sfio (yet) and this only works if a
single print statement sends  the headers like so:

 print "Status: 302\n", 
       "Location: http://www.somewhere.com/\n",
       "Content-type: text/html\n\n";

"fixed" new preg* clashes w/ 1.2b9-dev spotted by Dean Gaudet

reworked callback mechanism a bit:
- folded duplicate code in run_stacked_handlers() + perl_call()
- gv_fetchmethod called only if -DPERL_METHOD_HANDLERS
- perl_handler_ismethod now() uses class stash in gv_fetchmethod
- cache CV from perl_get_cv lookup if -DPERL_STACKED_HANDLERS
- included patch from Eric Bartley so we can say:
  `Class->method' in Perl*Handler's if -DPERL_METHOD_HANDLERS
- fixed bug spotted by Rob Hartill so Perl*Handler (OK|DECLINED) work again
- added minimal tests for stacked handlers and method handlers
- PERL_METHOD_HANDLERS=1 can be set when running Makefile.PL

PerlCleanupHandler now uses register_cleanup underneath, 
instead of abusing the logger slot. 
PerlCleanupHandler is enabled by default

added PRINTF for tie'd STDOUT

detached Apache.o from httpd, now a dynamic extension. here's why:
- shinks httpd size 
- possible to 'use Apache ()' outside of httpd 
  (very few methods will work though!)
- once mod_perl.c settles it will be possible to upgrade mod_perl 
  without rebuilding httpd!

added $r->server_root_relative function

Apache::Status has 2 new menu items (need Devel::Symdump 1.99_01+):
 - "Inheritance Tree"
 - "ISA Tree" 

added new CGI.pm tests from Andreas

=item 0.97 - 04/15/97

don't add mod_perl/x.xx to Server: unless 'perl Makefile.PL ADD_VERSION=1'

applied patch from Andreas to better Makefile.PL

if httpd is 1.2b8, remove bogus target from modules/Makefile

applied patch from Rob Hartill to add $r->rflush method

applied patch Eric Bartley <bartley@PDN.CC.PURDUE.EDU> to:
add $r->notes, $r->auth_name, $r->auth_type, $r->document_root methods
ability to set $r->args, $r->connection->user and $r->connection->auth_type

applied patch from Dean Gaudet so $r->exit uses log_transaction 
instead of multi_log_transaction

=item 0.95_06

fixed typo in new merge function that broke PerlHeaderParserHandler

=item 0.95_05

make sure merge of configs accounts for sendheader and setup_env too!

applied patches from Glen McCallum <glenm@tusc.com.au> so build works
with hpux 10.20's native compiler

=item 0.95_04

dir configs are now merged so <Location> blocks can have Perl*Handlers
and PerSetVar's without stomping those that are in .htaccess

Apache->seqno will use the scoreboard's my_access_count if the -DSTATUS
option is enabled (default if mod_status is configured in)

=item 0.95_03

with 1.2b8-dev+, we no longer need a Makefile.tmpl

added Apache->max_requests_per_child method

now have taint.t test

added <Perl> config section (see httpd.conf.pl)
(needs 'perl Makefile.PL PERL_SECTIONS=1')

Apache::Registry will now chdir to directory where the script

Apache::AuthenDBI and Apache::Authen removed from distribution,
now maintained by John Groenveld and Steve Kane

added PerlInitHandler and PerlCleanupHandler hooks 

Apache::Registry will require CGI.pm version 2.32 or higher if it
finds CGI.pm in %INC

added Apache::Registry->push_cleanup method suggested by Frank Cringle.

applied patches from Gerald Richter <richter@ecos.de> to:
-fix Apache::unescape_url_info
-one s/Apache::Config/Apache::MyConfig/ in Makefile.PL

=item 0.95_02

introduced experimental "stacked handlers" mechanism, allowing more
than one Perl*Handler to be defined and run during each stage of the
request.  

Perl*Handler directives can now define any number of subroutines, e.g.
 
 PerlTransHandler OneTrans TwoTrans RedTrans BlueTrans

with a new method, Apache->push_handlers can add to the stack by
scripts at runtime

PerlLogHandler enabled by default during "stacked handlers" experiment

applied patches from Andreas to quiet prototype warnings seen with
perl5.003_94  

applied patches from Gerald Richter <richter@ecos.de> to:
-add Apache::uri_unescape_info function (and make $r->args/content use it)
-built Apache::MyConfig module
-Term::Readline Makefile.PL support for history, etc.

=item 0.95 - 03/20/97

******************************************
*** CGI-XA/* removed from distribution ***
CGI.pm-2.32 is now mod_perl compatible, and 
now ships with CGI::Switch and CGI::Apache. 
******************************************

various documentation updates

renamed Apache::CGI to CGI::Apache 
(you should be using CGI::Switch anyhow!!!)

Perl*Handler package names no longer require a '::' to default
to PackageName::handler() when Perl*Handler is just PackageName

renamed eg/MyPackage.pl to startup.pl, pruned way down to
discourage use of PerlScript and avoid the confusion it has caused in
the past 

updated Makefile.tmpl-1.2 to work with 1.2b8-dev, there will be
a "Multiple rules lines" warning, once 1.2b8 is released, we'll 
take this out

added $r->prev and $r->next methods 

added Apache->taint method

Apache->untaint method now in Apache.xs

added $r->seqno method suggested by Lincoln Stein

added GETC and READLINE for tie *STDIN completeness

fixed Apache::CGI+file upload w/ patch from Andreas

data read from client ($r->read*, $r->args), %ENV, $r->cgi_env and
$r->*header*_* is now marked as tainted, t/net/test now tests this
(only with with `PerlTaintCheck On' of course)

various cleanup, including shifting things so Apache.o can be detached
from httpd to Apache.sl if the need arises 

now -Wall clean, except for Perl's dXSUB_SYS->dummy

set $|=1 by default #ifdef USE_SFIO

added Apache->module method

added Apache::Status->menu_item method

fixed warnings in Apache->read spotted by Owen Scott Medd

applied Apache::Registry fixes from Andreas

applied NeXT fixes from Jeff Hallgren and Andreas

applied XA.pm patch from Owen Scott Medd <osm@INTERGUIDE.COM> 
so filehandles can be ref's

=item 0.94 - 03/09/97

removed pp_hot.patch from distibution

t/net/http-post.t will now test the tie'd *STDIN if $] >= 5.003_93

*STDIN is now tie'd to the client, only works if perl version is
>= 5.003_93 

removed Apache::TieHandle from the distribution as it is no longer
needed.  however, scripts that are currently using:
use Apache:TieHandle ();
tie *STDOUT => "Apache::TieHandle";
will not break, but will produce a no longer needed warning

removed Apache::Registry's attempt to honor __END__, as Andreas
pointed out, this can't really be done right unless we have
Perl::Lex and Perl::Parse :-)

applied Makefile.PL patch from Andreas to use modules instead of
system() where possible

Apache::Constants now defines SERVER_SUBVERSION,
as suggested by Andreas

removed is_perlaliased from Apache::Debug, caught by Andreas

=item 0.93_01 - 03/04/97

added 'use ExtUtils::testlib' to t/docs/startup.pl since PERL5LIB
is shutoff with -T!?!

picky compilers should no longer complain of things reported
by Mike Stok and George Hartlieb when sfio is configured in

added (temporary?) `PerlWarn' directive to pass the -w switch
to perl_parse

bug fix so stderr is hooked to the error_log as it was and
should be (unless PERL_TRACE is defined)

argv[0] to perl_parse is now "httpd", making the value of 
magic $^X "httpd"

`PerlSetupEnv' now on by default

Apache::Registry parses command line switches if it sees #!, 
only -w and -T are recognized at the moment (not enough!)

Apache::Registry now honors __END__

added Apache->untaint method

added `PerlTaintCheck' directive to startup with -T switch

during 'make test' t/TEST now installs a die handler to shutdown httpd 
before make aborts if a test fails as suggested by Gary Shea  

we now passthru httpd's CFLAGS1 via MM's DEFINE
(I needed this for -DHPUX10 + Apache::Constants)  

we now define SERVER_SUBVERSION as suggested by Andreas

fixed $$ bug in CGI::XA with fix from Salvador Ortiz

added $r->is_initial_req method, now used by these modules:
Apache::AuthenDBI, Apache::AccessLimitNum, Apache::AuthzAge

Apache::warn now overrides CORE::warn in Apache::Registry scripts,
which is an alias for Apache::log_error 

Apache::exit now overrides CORE::exit in Apache::Registry scripts,
now converted CGI scripts can safely call plain 'ol exit;

$r->exit will close the client connection for you, no need for
$r->connection->close, which is no longer documented, and does 
nothing but warn not to call it.

fixed cookie bugs in CGI::XA spotted by Andrew Tennant

#undef some symbols that caused clashes #ifdef HPUX10
and ones on solaris spotted by Bowen Dwelle

=item 0.93 

updated Makefile.tmpl-1.2 to be inline with 1.2b6

removed 1.2b5 Makefile.tmpl, 1.2b1..b5 no longer supported

mortalize return value from $r->read_client_block

make Apache::CGI scrict clean thanks to Frank Cringle

=item 0.92 - 01/23/97

fixed core-dump-causing bug spotted by Mike Stok

=item 0.91 - 01/22/97

perl_init now says 'use Apache::Constants qw(OK DECLINED)' (in C) so you can
say 'Perl*Handler DECLINED', suggested by, you guessed it, Rob

applied patch from Rob so Makefile.PL copies $APACHE_SRC/Configuration to src/
if it has been changed

added Makefile.tmpl-1.2b5 from Rob

applied patch from Rob Hartill to stop $r->cgi_env($key) from core-dumping 
if $key does not exist

applied PerlModule overflow check patch from Rob Hartill

added $r->as_string method

=item 0.90_01

depreciation of Apache->request use outside of Apache::CGI and scripts
that run under Apache::Registry now spits out a warning.  See Apache.pm
doc update for details.

$r->is_perlaliased has gone away

added api tests

added tests for callback hooks besides PerlHandler

added Apache::perl_hook function

if a callback does not return a status values, we assume OK, 
fatal errors would have never made it that far anyhow, 
still log warning to error_log, but carry on

clean up here and there

added PerlHeaderParserHandler callback hook for apache versions >= 1.2b5

added $r->connection->aborted method
added $r->the_request and $r->header_only methods
added Apache::Server methods: is_virtual and names

added $r->headers_out and $r->err_header_out methods:
header*_* methods are now consistent, see Apache.pm docs

should now use $r->err_header_out instead of $r->err_headers_out
to set the value of an err_header

added 1.1.3 to Makefile.PL version map after hint from Arin Goldberg

src/modules/perl/Makefile now detects modules linked static with
your perl and links them with httpd

Apache::CGI->read_from_client now calls $r->read instead of 
$r->read_client_block

applied fix for bug in read_client_block thanks to Milan Votava 

updated Apache::SSI documentation

can now 'make test PORT=xxxx'

can now 'make start_httpd', 'make kill_httpd' for testing

perl Makefile.PL ALL_HOOKS=1 enables all Perl*Handler callbacks

$r->filename will re-stat r->finfo if you change the filename as
suggested by Rob Hartill

Makefile.PL now copies $APACHE_SRC/Configuration to src/ modifies, 
then tells apache's Configure to use this copy with -file

applied patch from Pai-Ling Hsiao <pailing@STRAWBERRY.UCC.UCONN.EDU>
o fix CGI::XA->*_group bugs

t/constants/export.t now tests _all_ of @EXPORT and %EXPORT_TAGS

fixed bugs in Apache::Constants spotted by John Groenveld and Rob Hartill

Apache.xs now uses rwrite() if apache >= 1.2b4

=item 0.90

perl Makefile.PL PERL_TRACE=1 will now enable tracing

changed Makefile.PL so we can enable callback hooks ala:
  perl Makefile.PL PERL_AUTHEN=1 PERL_FIXUP=1

updated INSTALL and mod_perl.pod to reflect this change

=item 0.89

fixed bug spotted by Rob Hartill so perl_cmds[] is not prematurely
terminated

added Bundle::Apache module for use with CPAN.pm

fixed Constants/Makefile.PL so -I picks up $(APACHE_SRC) no matter what,
thanks to Mike Stok

=item 0.88

applied Makefile.PL patch from Rob Hartill so we compile with 1.2b3

=item 0.87

As suggested by Andreas, Makefile.PL now asks:
"Configure mod_perl with ../apache_xxx ?"
  answering 'y' only means there is where we can find *.h
"Shall I build httpd in $adir for you?"
  answering 'y' will run ../apache_xxx/Configure 
  and httpd will be built when running 'make'
 
$r->read now returns $nrd as it should

'perl Makefile.PL NO_HTTPD=1' will build only the perl side of
mod_perl (still need httpd.h for Constants.sl)

'make test' now picks up modules in ./blib as it should, bug
spotted by Mike Stok
 
ServerName is set to localhost in httpd.conf as suggested by 
Mike Stok and Frank Cringle

=item 0.86

Port is a little more random for tests '8529'

applied patch from Edmund Mergl <E.Mergl@BAWUE.DE> bringing CGI::XA 
up-to-date with CGI.pm 2.29

perl_destruct_level is set to 0 in mod_perl.c, while progress is being
made on fixing perl_{con,des}truct in 5.003_12

if there is no httpd.conf, Makefile.PL creates one for you, filling in
User and Group with uid and gid of the current process

updated Makefile.tmpl-1.2 with Makefile.tmpl from apache 1.2b2

if Makefile.PL finds apache version >= 1.2b3, instead of copying
Makefile.tmpl to ../src/apache_x.x, it uses the new '-make Makefile.tmpl'
option, made possible by Rob Hartill
otherwise, same as before and it now tells you it's made a backup 
'Makefile.tmpl.bak'

fixed 'make test', so you _really_ don't have to modify anything,
hopefully

if libwww-perl is not installed, the tests that require it will not be run,
and it will be suggested that you install the library, but who doesn't
have libwww-perl installed???

=item 0.85_06

same as 0.85_05, just fixed broken tarball
 
=item 0.85_05

fixed Makefile.PL bug spotted by Gary Shea <shea@XMISSION.COM>

applied XA.pm fix from Edmund Mergl <E.Mergl@BAWUE.DE>

updated docs and examples here and there

'make test' improved, all uneeded directives and files stripped out,
should be able to run with no modification, nothing by hand other than
'make test'

now make sure that CC we use to build httpd is the same as CC used to
build Perl, thanks to Andreas

added 'make offsite-tar' target for build the perl-side on machines 
without apache source

fixed Makefile.tmpl* so people define EXTRA_FLAGS as suggested by Rob Hartill

a few minor fixes for Apache-SSL users

=item 0.85_04

applied patch from Rob Hartill to fix bug in $r->cgi_env

%ENV is cleared after each callback (&Perl*Handler)

added $r->cgi_var as suggested by Andreas:
calls $r->cgi_env($key) in a scalar context to prevent the 
mistake of calling in a list context.

if a Perl*Handler returns something > 600 we assume OK (for now)

bug fixed introduced in 0.85_03 for Perl*Handler's not prefixed with 
a Package:: causing httpd to sigsegv

ship with Makefile.tmpl-Ben-SSL for Apache-SSL users

Makefile.PL a little smarter
-knows if we're configuring with Ben-SSL, uses Makefile.tmpl-Ben-SSL
-after looking for 1.1.1 and 1.2*, globs for <apache*> not <apache_*>
-instead of rm -rf'ing the modules/perl/ directory we're configuring
 against, we only rm -f those found in our MANIFEST

applied patch from Frank Cringle <fdc@CLIWE.PING.DE> to fix defaults
in CGI::XA

got rid of stupid warning "missing test.pl"

=item 0.85_03

cleaned up internal perl_setup_env()

Perl*Handler's default to calling Perl*Handler::handler if the
Perl*Handler is just a class name, e.g. 'PerlHandler Apache::Registry'
will call Apache::Registry::handler
In addition, the class module will be loaded if it is not already, 
so there is no need to specify PerlModule

added Apache::Status module 

$r->print now sets a hard_timeout() before sending to the client
$r->read now sets a hard_timeout() before reading from the client

added $r->soft_timeout, $r->hard_timeout, $r->kill_timeout and
$r->reset_timeout methods

top-level Makefile.PL looks further for apache_x.x/src/ 
prompts you if nothing found

applied fix from Andreas to s/privlib/privlibexp/ in src/modules/perl/Makefile

applied patch from Rob Hartill <robh@imdb.com> to correctly initialize
cld->sendheader and cld->setup_env

=item 0.85_02

Apache::DBIAuthen renamed Apache::AuthenDBI and split out from
Apache::Authen

Apache::Authen->handler renamed Apache::Authen->check
as it is not a handler, only used by handlers

added ToDo file

updated UserGuide, now called 'mod_perl.pod'

updated INSTALL and README docs

perl_init will only perl_alloc and perl_contstruct once when the server
starts, meaning no more mad leaks when server is restarted

modified test suite adding extra tests for sfio and TIEHANDLE

unless Perl was configured to use perlio and sfio, STDOUT is tied by default to
the client, no more need for tie *STDOUT => Apache::TieHandle

Makefile.PL now looks for ../apache_1.1.1/src/, apache_1.2*/src/ to configure 
against

Fixed Makefile.PL bug spotted by Frank Cringle <fdc@CLIWE.PING.DE>, 
when no apache source was present or chosen to configure against

'make clean' will now cd $(APACHE_SRC) && $(MAKE) clean

applied patch from Rob Hartill <robh@imdb.com> to bring us up-to-date
with apache_1.2b0

$r->content now calls $r->read instead of $r->read_client_block

$r->read is no longer an alias for $r->read_client_block
The new $r->read implementation is based on patches and ideas from 
Milan Votava <ms.anet.cz@MS.ANET.CZ>,
Joonsuk Bae <bae@yahoo.com>,
and Gisle

=item 0.85_01

added 'tar_Apache' target for copying the perl-side of mod_perl to other 
machines without dragging the apache-side along.

'perl Makefile.PL' now Configures Apache to link mod_perl 
if ../apache_1.2-dev or ../apache_1.1.1  src/Configuration is found
In addition, 'apache_httpd' is added to the 'make all' target 

now include Makefile.tmpl-1.2

fix for 1.2's const requirement

=item 0.85

added the start of a mod_perl test suite

got rid of conditional perl*rec members, which was causing compile problems
for some people

$r->exit now logs transactions before exit()'ing the process

applied clean-up and debug enhancement patch to Apache::Registry from Andreas

applied patch from Andreas to reduce Apache->request calls in Apache::CGI

$r->cgi_env now accepts arguments for setting variables

=item 0.84 - October 27, 1996

added pointer to Patrick Kane's <modus@enews.com> FAQ

applied Makefile.PL patches from Gisle

=item 0.83_10

send_cgi_header now sets $r->status to REDIRECT when it finds a Location
header which is not an internal redirect

Apache::Registry now returns $r->status rather than always OK

dropped old approach of the original mod_perl.c, mod_perl_fast functionality
has moved to the all-knowing, all-doing mod_perl

Makefile.PL for Apache::Constants looks for httpd.h in ../../apache*/src/ 
before prompting

dropped OK from @{$Apache::Constants::EXPORT_TAGS{response_codes}}

updated Constants.xs with patch from Gisle

applied Makefile.PL patch from Gisle to set PERL= in Makefile*

=item 0.83_09

fixed bug with get_basic_auth_pw spotted by Patrick Kane <modus@enews.com>

=item 0.83_08

get_basic_auth_pw now returns the $send_pw, rather that setting it,
see Apache.pm docs
 
applied patch from Andreas with the following changes:

1) regex directory added in Constants/Makefile.PL. Current apache
   always needs -Iregex, that means for us an additional
   -I$httpd/regex. I think, they should

    #include <regex/something.h>

2) Assorted comments added to INSTALL, especially

  * FileHandle bug explained as being a 5.003 bug (not "current")

  * Configuration/Configuration.tmpl relation explained

  * && instead of ; to separate commands is a must in Makefiles

  * Gisle's hint about the default seems very important to me, so is
    there again.

3) Drops the deprecated mod_alias patch from the whole distribution

4) A whitespace patch for src/modules/perl/Makefile

5) The regex directory also for src/modules/perl/Makefile

6) Shuffling of code between mod_perl_fast.c and mod_perl.h until it
   fits the bill, who knows why :-0

=item 0.83_07

added the missing src/modules/perl/Makefile (again)

=item 0.83_06

brought back Makefile.tmpl for current public release

added src/modules/perl/ldopts script, rather than using 'make ldopts'

INSTALL doc fix so 1.1.1 users define RANLIB
 
MODULE_MAGIC_NUMBER fix so we still build with 1.1.1
 
no longer pstrdup when fetching r->args

dropped undocumented SKIP_AUTH_HEADER thingy

=item 0.83_05

added missing Makefile to src/modules/perl/

turned off PERL_TRACE, oops

moved SERVER_VERSION from Apache.xs to Constants.xs

applied another doc patch to Apache.pm from Gisle

=item 0.83_04

updated INSTALL and UsersGuide documents

misc cleanup here and there

Apache::Options is now just a stub that imports from Apache::Constants

updated Apache.pm and Apache::Constants documentation

added Apache::AuthzAge and Apache::AccessLimitNum modules

added $r->requires and $r->is_main, and $r->main methods

added callback hooks for authorization, access, type-check, 
fixup and logger stages of the request

callback hooks can now be turned off at compile time with 
-DNO_PERL_...., and are turned off by default, except for the
handler stage (PerlHandler) 

reworked installation procedure to follow apache 1.2 recomendations, 
the procedure will still work with older versions of apache.
No more Makefile.tmpl.x.x.x mess!!

updated #if MODULE_MAGIC_NUMBERS >='s so we're inline with apache 1.2-dev-19961009130008

=item 0.83_03

Perl*Handler's are now called with Apache->request as an argument
PerlHandler's may still ask for Apache->request so existing code and
mechanisms such as Apache::Registry will continue to work
However, other handlers such as PerlAuthenHandler and PerlTransHandler,
cannot use Apache->request.

added Apache::Constants module, based on patch to Apache.xs 
from Gisle

updated Apache::Debug with patch from Gisle to 
- update the status codes from the latest
  HTTP::Status and produce a prettier and more output.

- We also ensure that we do not generate output for HEAD requests and we
  set up status correctly.

updated Apache.pm and Apache::Options docs, thanks to Gisle

fixed PerlScript bug spotted by Gisle

renamed Apache::Msql to Apache::MsqlProxy

=item 0.83_02

bug patch to Apache::Registry from Andreas

=item 0.83_01

minor clean-up

fixed port and query_string related bugs in Apache::Msql example

applied patch from Salvador Ortiz <sog@msg.com.mx> to fix PerlTransHandler bugs
spotted by Hugues Lafarge <Hugues.Lafarge@afp.com>

applied Apache::Registry patch from Andreas  
- allows filanames to start with a digit (you probably saw a "bad
  symbol after ::" error)

- strips path_info before deciding which package the script is compiled
  into.

=item *developer's release* release 0.83 - September 12, 1996

added Apache::Msql module

added $r->handler method

added $r->proxyreq method

added PerlTransHandler directive

minor clean-up

=item *developer's test* release 0.82 - September 11, 1996

added Apache::Authen and Apache::AuthenDBI modules

added $r->get_basic_auth_pw method

added $r->note_basic_auth_failure method

added PerlAuthHandler directive

added $r->dir_config method 

added PerlSetVar directive

we now have mod_perl.h

fix for using mod_perl_fast with Apache-SSL

=item release 0.81 - September 08, 1996

added Apache::CGI->exit method as suggested by Andreas

items needed for 1.2 are now conditional using MODULE_MAGIC_NUMBER

included Makefile.tmpl.1.2  

=item release 0.80 - September 06, 1996

fix so we can send $strings of binary data to the client

fix so we can log bytes sent

added Andreas' CGI::XA kit for users of CGI.pm + mod_perl_fast

added PerlSetupEnv directive

added PerlSendHeader directive 

we now take advantage of Perl's new IO abstraction so STDIN and 
STDOUT are hooked up to the client.
Thanks to Sven Verdoolaege <skimo@breughel.ufsia.ac.be> for the
initial patch

added $r->connection->close method

added $r->exit method

applied patch from Rob Hartill <robh@imdb.com> so read_client_block
works with apache-1.2 changes

updated UsersGuide to suggest using configuration that does not
require patching mod_alias.c, thanks to Rob Hartill <robh@imdb.com> 

added $r->method_number method

$r->method() now accepts an argument to change the request method 
(for things like internal re-directs)

added send_cgi_header method

added internal_redirect_handler method

applied NeXT fix from Andreas

applied patch from Andreas to fix eval error line number 
in Apache::Registry

changed Changes file so it can be read with 'perldoc Changes'

=item release 0.76b2 - August 16, 1996

updated Apache::CGI, now requires CGI.pm 2.22+

#undef pregcomp to fix namespace clash with Apache 1.2

added (placeholder for) PerlSetVar directive (need to think about it some more)

applied patch from Andreas Koenig <andreas.koenig@franz.ww.tu-berlin.de>
to fix bug introduced with perl5.003_01 + IRIX combo

=item release 0.76b1 - July 26, 1996

included Sven Verdoolaege's (experimental) patch for minimal TIEHANDLE
support, so we can tie *STDOUT, 'print' instead of '$r->print' that is.

added (experimental) Apache::TieHandle module

included Chip Salzenberg's FileHandle.pm patch

added UsersGuide document

if no PerlHandler is defined we fail with a SERVER_ERROR

Apache::Registry now checks to make sure uri is not a directory

applied Apache::Registry patch from Andreas for minor clean-up 
and an extra error check

=item release 0.75a1 - July 21, 1996

added Apache::Registry module contributed by 
Andreas Koenig <andreas.koenig@franz.ww.tu-berlin.de>

Apache::SSI now checks ExecCGI option before doing an 'exec'

included patch for mod_alias.c to allow for PerlAlias directive

added allow_options and is_perlaliased methods to Apache.pm

added Apache::Options module

added Apache::Debug module

applied patch from Andreas Koenig <andreas.koenig@franz.ww.tu-berlin.de> to
-fake up a PerlScript if one is not specified
-ITERATE over PerlModule directive so it will accept multiple modules
-no longer store request_rec in $Apache::Request
we now require ExtUtils::Embed as it has been re-named for
the standard perl distribution as of 5.003_01


=item release 0.71b1 - July 19, 1996

added PERL_CCFLAGS to Makefile.tmpl as suggested by 
Lincoln Stein <lstein@genome.wi.mit.edu>

subroutines no longer need to return '0' for OK status, 200 and 1 
are 'OK' too.

added 'PerlHandler' as replacement for 'PerlResponse',
seems like a more appropriate name after Salvador's 
'AddHandler' suggestion

added item to the handler_rec so we can say 'AddHandler'
Thanks to Salvador Ortiz <sog@msg.com.mx>

fixed bug with storing 'PerlModule's read from srm.conf
Thanks to Salvador Ortiz <sog@msg.com.mx> for the spot and helping with the fix
more Makefile.tmpl fixes from Andreas Koenig <andreas.koenig@franz.ww.tu-berlin.de>

=item release 0.70b1 - July 14, 1996

applied patches from Andreas Koenig <andreas.koenig@franz.ww.tu-berlin.de>
to fix Makefile.tmpl bug, NeXT define troubles, 
typos and documentation clean-up

Added Apache::SSI module for server side includes

Added 'PerlModule' directive for loading modules in srm.conf

fixed read_client_block bug that was causing trailing garbage to show up
n the client for some people. 
Thanks to Alan Beale <agb@openplus.co.uk> for the fix.


=item release 0.60a5 - June 25, 1996

fixed bug in mod_perl_fast that was causing bizarre problems for some people

=item release 0.60a4 - June 18, 1996

dropped content and args methods from Apache.xs, moved to Apache.pm
The xs implementation was causing problems for some people

added Apache::unescape_url function

added $r->header_in method


=item release 0.60a3 - June 17, 1996

Added read() alias for read_client_block

Updated Makefile.tmpl to use the renamed ExtUtils::embed

Fixed various small bugs that were causing big problems

pid $$ now set in mod_perl_fast, thanks to Alan Beale <agb@openplus.co.uk>

Added basic_http_header() method 


=item release 0.60a2 - May 21, 1996

fixed bug in mod_perl_fast.c the caused problems with 
$r->content and $r->args

Added Apache::CGI module for those who use CGI.pm

There's now a Makefile.PL (currently for installing perl-only modules).


=item release 0.60a1 - May 18, 1996

Started getting ready for optional Safe wrapper around scripts

Added $r->get_remote_host() method, putting $r->connection->remote_host back to normal

=item release 0.50a2 - May 9, 1996

new (faster) approach with mod_perl_fast

Thanks to John Detloff <detloff@arizona.edu> 
for friendly error checking code.

we now use an Apache.pm file

moved more code from mod_perl to Apache.xs so mod_perl_fast could share it

rganized Apache.xs

fixed $r->connection->remote_host 

hiding of 'Authorization' header is optional now

added 'print' alias to 'write_client'

dropped set_ prefix for several methods

=item release 0.50a1 - May 1, 1996

xs_init now gets linked with us, as generated by Devel::embed
so we can bootstrap static extensions (including Apache)

stomped out *main:: variables, moved to Apache.xs as methods

added method 'request' to return the request pointer object
And did a typedef request_rec * Apache
so we don't need to say @request_recPtr::ISA = 'Apache'; anymore

added method 'write_client' for sending a @list of data to the client

added methods that simply access members of request_rec
-method
-uri
-protocol
-path_info
-filename 

added method 'args'
when called in a scalar context, it returns the query string
when called in a list context, it splits the query_string into key => vairs

moved parsing code to Apache.xs, and now data is only read when the user
asks for it with the content() method.

added method 'content'
when called in a scalar context, it reads data from the client
when called in a list context, it splits the content into key => vairs

added method 'headers_in' to return a %hash of request headers
the 'Authentication' header is not returned

added perl_call_argv to Apache->bootstrap ourselves

we now flush the script's %ENV
users can set-up a standard CGI %ENV via method $r->cgi_vars

the script's STDERR in now redirected to the error_log

added client_to_stdout and client_to_stdin methods to
hookup the script's STDOUT and STDIN
** This is broken right now **

added method 'connection' and Apache::Connection class
returns a object reference to the request_rec's conn_rec
methods availible include:

 - remote_host
 - remote_ip
 - remote_logname
 - remote_user
 - auth_type

added method 'server' and Apache::Server class
returns a object reference to the request_rec's server_rec
methods availible include:

 - server_admin
 - server_host
 - port

Changes for Apache 1.1x
-rprintf to bputs, etc.


=item March 25, 1996

Initial version of mod_perl.c and perl_glue.xs
by Gisle Aas <aas@oslonett.no>
Thanks for getting this started Gisle!


=back

=cut