File: ChangeLog

package info (click to toggle)
libdap 3.20.11-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 24,568 kB
  • sloc: cpp: 50,809; sh: 41,536; xml: 23,511; ansic: 20,030; yacc: 2,508; exp: 1,544; makefile: 990; lex: 309; perl: 52; fortran: 8
file content (16412 lines) | stat: -rw-r--r-- 611,770 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
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361
4362
4363
4364
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427
4428
4429
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439
4440
4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
4586
4587
4588
4589
4590
4591
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647
4648
4649
4650
4651
4652
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706
4707
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742
4743
4744
4745
4746
4747
4748
4749
4750
4751
4752
4753
4754
4755
4756
4757
4758
4759
4760
4761
4762
4763
4764
4765
4766
4767
4768
4769
4770
4771
4772
4773
4774
4775
4776
4777
4778
4779
4780
4781
4782
4783
4784
4785
4786
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4797
4798
4799
4800
4801
4802
4803
4804
4805
4806
4807
4808
4809
4810
4811
4812
4813
4814
4815
4816
4817
4818
4819
4820
4821
4822
4823
4824
4825
4826
4827
4828
4829
4830
4831
4832
4833
4834
4835
4836
4837
4838
4839
4840
4841
4842
4843
4844
4845
4846
4847
4848
4849
4850
4851
4852
4853
4854
4855
4856
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
4898
4899
4900
4901
4902
4903
4904
4905
4906
4907
4908
4909
4910
4911
4912
4913
4914
4915
4916
4917
4918
4919
4920
4921
4922
4923
4924
4925
4926
4927
4928
4929
4930
4931
4932
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
4944
4945
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955
4956
4957
4958
4959
4960
4961
4962
4963
4964
4965
4966
4967
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989
4990
4991
4992
4993
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
5022
5023
5024
5025
5026
5027
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045
5046
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082
5083
5084
5085
5086
5087
5088
5089
5090
5091
5092
5093
5094
5095
5096
5097
5098
5099
5100
5101
5102
5103
5104
5105
5106
5107
5108
5109
5110
5111
5112
5113
5114
5115
5116
5117
5118
5119
5120
5121
5122
5123
5124
5125
5126
5127
5128
5129
5130
5131
5132
5133
5134
5135
5136
5137
5138
5139
5140
5141
5142
5143
5144
5145
5146
5147
5148
5149
5150
5151
5152
5153
5154
5155
5156
5157
5158
5159
5160
5161
5162
5163
5164
5165
5166
5167
5168
5169
5170
5171
5172
5173
5174
5175
5176
5177
5178
5179
5180
5181
5182
5183
5184
5185
5186
5187
5188
5189
5190
5191
5192
5193
5194
5195
5196
5197
5198
5199
5200
5201
5202
5203
5204
5205
5206
5207
5208
5209
5210
5211
5212
5213
5214
5215
5216
5217
5218
5219
5220
5221
5222
5223
5224
5225
5226
5227
5228
5229
5230
5231
5232
5233
5234
5235
5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
5255
5256
5257
5258
5259
5260
5261
5262
5263
5264
5265
5266
5267
5268
5269
5270
5271
5272
5273
5274
5275
5276
5277
5278
5279
5280
5281
5282
5283
5284
5285
5286
5287
5288
5289
5290
5291
5292
5293
5294
5295
5296
5297
5298
5299
5300
5301
5302
5303
5304
5305
5306
5307
5308
5309
5310
5311
5312
5313
5314
5315
5316
5317
5318
5319
5320
5321
5322
5323
5324
5325
5326
5327
5328
5329
5330
5331
5332
5333
5334
5335
5336
5337
5338
5339
5340
5341
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351
5352
5353
5354
5355
5356
5357
5358
5359
5360
5361
5362
5363
5364
5365
5366
5367
5368
5369
5370
5371
5372
5373
5374
5375
5376
5377
5378
5379
5380
5381
5382
5383
5384
5385
5386
5387
5388
5389
5390
5391
5392
5393
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403
5404
5405
5406
5407
5408
5409
5410
5411
5412
5413
5414
5415
5416
5417
5418
5419
5420
5421
5422
5423
5424
5425
5426
5427
5428
5429
5430
5431
5432
5433
5434
5435
5436
5437
5438
5439
5440
5441
5442
5443
5444
5445
5446
5447
5448
5449
5450
5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
5465
5466
5467
5468
5469
5470
5471
5472
5473
5474
5475
5476
5477
5478
5479
5480
5481
5482
5483
5484
5485
5486
5487
5488
5489
5490
5491
5492
5493
5494
5495
5496
5497
5498
5499
5500
5501
5502
5503
5504
5505
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529
5530
5531
5532
5533
5534
5535
5536
5537
5538
5539
5540
5541
5542
5543
5544
5545
5546
5547
5548
5549
5550
5551
5552
5553
5554
5555
5556
5557
5558
5559
5560
5561
5562
5563
5564
5565
5566
5567
5568
5569
5570
5571
5572
5573
5574
5575
5576
5577
5578
5579
5580
5581
5582
5583
5584
5585
5586
5587
5588
5589
5590
5591
5592
5593
5594
5595
5596
5597
5598
5599
5600
5601
5602
5603
5604
5605
5606
5607
5608
5609
5610
5611
5612
5613
5614
5615
5616
5617
5618
5619
5620
5621
5622
5623
5624
5625
5626
5627
5628
5629
5630
5631
5632
5633
5634
5635
5636
5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663
5664
5665
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689
5690
5691
5692
5693
5694
5695
5696
5697
5698
5699
5700
5701
5702
5703
5704
5705
5706
5707
5708
5709
5710
5711
5712
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
5729
5730
5731
5732
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
5796
5797
5798
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816
5817
5818
5819
5820
5821
5822
5823
5824
5825
5826
5827
5828
5829
5830
5831
5832
5833
5834
5835
5836
5837
5838
5839
5840
5841
5842
5843
5844
5845
5846
5847
5848
5849
5850
5851
5852
5853
5854
5855
5856
5857
5858
5859
5860
5861
5862
5863
5864
5865
5866
5867
5868
5869
5870
5871
5872
5873
5874
5875
5876
5877
5878
5879
5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928
5929
5930
5931
5932
5933
5934
5935
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945
5946
5947
5948
5949
5950
5951
5952
5953
5954
5955
5956
5957
5958
5959
5960
5961
5962
5963
5964
5965
5966
5967
5968
5969
5970
5971
5972
5973
5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
6010
6011
6012
6013
6014
6015
6016
6017
6018
6019
6020
6021
6022
6023
6024
6025
6026
6027
6028
6029
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
6040
6041
6042
6043
6044
6045
6046
6047
6048
6049
6050
6051
6052
6053
6054
6055
6056
6057
6058
6059
6060
6061
6062
6063
6064
6065
6066
6067
6068
6069
6070
6071
6072
6073
6074
6075
6076
6077
6078
6079
6080
6081
6082
6083
6084
6085
6086
6087
6088
6089
6090
6091
6092
6093
6094
6095
6096
6097
6098
6099
6100
6101
6102
6103
6104
6105
6106
6107
6108
6109
6110
6111
6112
6113
6114
6115
6116
6117
6118
6119
6120
6121
6122
6123
6124
6125
6126
6127
6128
6129
6130
6131
6132
6133
6134
6135
6136
6137
6138
6139
6140
6141
6142
6143
6144
6145
6146
6147
6148
6149
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
6161
6162
6163
6164
6165
6166
6167
6168
6169
6170
6171
6172
6173
6174
6175
6176
6177
6178
6179
6180
6181
6182
6183
6184
6185
6186
6187
6188
6189
6190
6191
6192
6193
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
6204
6205
6206
6207
6208
6209
6210
6211
6212
6213
6214
6215
6216
6217
6218
6219
6220
6221
6222
6223
6224
6225
6226
6227
6228
6229
6230
6231
6232
6233
6234
6235
6236
6237
6238
6239
6240
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262
6263
6264
6265
6266
6267
6268
6269
6270
6271
6272
6273
6274
6275
6276
6277
6278
6279
6280
6281
6282
6283
6284
6285
6286
6287
6288
6289
6290
6291
6292
6293
6294
6295
6296
6297
6298
6299
6300
6301
6302
6303
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314
6315
6316
6317
6318
6319
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329
6330
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
6342
6343
6344
6345
6346
6347
6348
6349
6350
6351
6352
6353
6354
6355
6356
6357
6358
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
6370
6371
6372
6373
6374
6375
6376
6377
6378
6379
6380
6381
6382
6383
6384
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407
6408
6409
6410
6411
6412
6413
6414
6415
6416
6417
6418
6419
6420
6421
6422
6423
6424
6425
6426
6427
6428
6429
6430
6431
6432
6433
6434
6435
6436
6437
6438
6439
6440
6441
6442
6443
6444
6445
6446
6447
6448
6449
6450
6451
6452
6453
6454
6455
6456
6457
6458
6459
6460
6461
6462
6463
6464
6465
6466
6467
6468
6469
6470
6471
6472
6473
6474
6475
6476
6477
6478
6479
6480
6481
6482
6483
6484
6485
6486
6487
6488
6489
6490
6491
6492
6493
6494
6495
6496
6497
6498
6499
6500
6501
6502
6503
6504
6505
6506
6507
6508
6509
6510
6511
6512
6513
6514
6515
6516
6517
6518
6519
6520
6521
6522
6523
6524
6525
6526
6527
6528
6529
6530
6531
6532
6533
6534
6535
6536
6537
6538
6539
6540
6541
6542
6543
6544
6545
6546
6547
6548
6549
6550
6551
6552
6553
6554
6555
6556
6557
6558
6559
6560
6561
6562
6563
6564
6565
6566
6567
6568
6569
6570
6571
6572
6573
6574
6575
6576
6577
6578
6579
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629
6630
6631
6632
6633
6634
6635
6636
6637
6638
6639
6640
6641
6642
6643
6644
6645
6646
6647
6648
6649
6650
6651
6652
6653
6654
6655
6656
6657
6658
6659
6660
6661
6662
6663
6664
6665
6666
6667
6668
6669
6670
6671
6672
6673
6674
6675
6676
6677
6678
6679
6680
6681
6682
6683
6684
6685
6686
6687
6688
6689
6690
6691
6692
6693
6694
6695
6696
6697
6698
6699
6700
6701
6702
6703
6704
6705
6706
6707
6708
6709
6710
6711
6712
6713
6714
6715
6716
6717
6718
6719
6720
6721
6722
6723
6724
6725
6726
6727
6728
6729
6730
6731
6732
6733
6734
6735
6736
6737
6738
6739
6740
6741
6742
6743
6744
6745
6746
6747
6748
6749
6750
6751
6752
6753
6754
6755
6756
6757
6758
6759
6760
6761
6762
6763
6764
6765
6766
6767
6768
6769
6770
6771
6772
6773
6774
6775
6776
6777
6778
6779
6780
6781
6782
6783
6784
6785
6786
6787
6788
6789
6790
6791
6792
6793
6794
6795
6796
6797
6798
6799
6800
6801
6802
6803
6804
6805
6806
6807
6808
6809
6810
6811
6812
6813
6814
6815
6816
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827
6828
6829
6830
6831
6832
6833
6834
6835
6836
6837
6838
6839
6840
6841
6842
6843
6844
6845
6846
6847
6848
6849
6850
6851
6852
6853
6854
6855
6856
6857
6858
6859
6860
6861
6862
6863
6864
6865
6866
6867
6868
6869
6870
6871
6872
6873
6874
6875
6876
6877
6878
6879
6880
6881
6882
6883
6884
6885
6886
6887
6888
6889
6890
6891
6892
6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915
6916
6917
6918
6919
6920
6921
6922
6923
6924
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935
6936
6937
6938
6939
6940
6941
6942
6943
6944
6945
6946
6947
6948
6949
6950
6951
6952
6953
6954
6955
6956
6957
6958
6959
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980
6981
6982
6983
6984
6985
6986
6987
6988
6989
6990
6991
6992
6993
6994
6995
6996
6997
6998
6999
7000
7001
7002
7003
7004
7005
7006
7007
7008
7009
7010
7011
7012
7013
7014
7015
7016
7017
7018
7019
7020
7021
7022
7023
7024
7025
7026
7027
7028
7029
7030
7031
7032
7033
7034
7035
7036
7037
7038
7039
7040
7041
7042
7043
7044
7045
7046
7047
7048
7049
7050
7051
7052
7053
7054
7055
7056
7057
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067
7068
7069
7070
7071
7072
7073
7074
7075
7076
7077
7078
7079
7080
7081
7082
7083
7084
7085
7086
7087
7088
7089
7090
7091
7092
7093
7094
7095
7096
7097
7098
7099
7100
7101
7102
7103
7104
7105
7106
7107
7108
7109
7110
7111
7112
7113
7114
7115
7116
7117
7118
7119
7120
7121
7122
7123
7124
7125
7126
7127
7128
7129
7130
7131
7132
7133
7134
7135
7136
7137
7138
7139
7140
7141
7142
7143
7144
7145
7146
7147
7148
7149
7150
7151
7152
7153
7154
7155
7156
7157
7158
7159
7160
7161
7162
7163
7164
7165
7166
7167
7168
7169
7170
7171
7172
7173
7174
7175
7176
7177
7178
7179
7180
7181
7182
7183
7184
7185
7186
7187
7188
7189
7190
7191
7192
7193
7194
7195
7196
7197
7198
7199
7200
7201
7202
7203
7204
7205
7206
7207
7208
7209
7210
7211
7212
7213
7214
7215
7216
7217
7218
7219
7220
7221
7222
7223
7224
7225
7226
7227
7228
7229
7230
7231
7232
7233
7234
7235
7236
7237
7238
7239
7240
7241
7242
7243
7244
7245
7246
7247
7248
7249
7250
7251
7252
7253
7254
7255
7256
7257
7258
7259
7260
7261
7262
7263
7264
7265
7266
7267
7268
7269
7270
7271
7272
7273
7274
7275
7276
7277
7278
7279
7280
7281
7282
7283
7284
7285
7286
7287
7288
7289
7290
7291
7292
7293
7294
7295
7296
7297
7298
7299
7300
7301
7302
7303
7304
7305
7306
7307
7308
7309
7310
7311
7312
7313
7314
7315
7316
7317
7318
7319
7320
7321
7322
7323
7324
7325
7326
7327
7328
7329
7330
7331
7332
7333
7334
7335
7336
7337
7338
7339
7340
7341
7342
7343
7344
7345
7346
7347
7348
7349
7350
7351
7352
7353
7354
7355
7356
7357
7358
7359
7360
7361
7362
7363
7364
7365
7366
7367
7368
7369
7370
7371
7372
7373
7374
7375
7376
7377
7378
7379
7380
7381
7382
7383
7384
7385
7386
7387
7388
7389
7390
7391
7392
7393
7394
7395
7396
7397
7398
7399
7400
7401
7402
7403
7404
7405
7406
7407
7408
7409
7410
7411
7412
7413
7414
7415
7416
7417
7418
7419
7420
7421
7422
7423
7424
7425
7426
7427
7428
7429
7430
7431
7432
7433
7434
7435
7436
7437
7438
7439
7440
7441
7442
7443
7444
7445
7446
7447
7448
7449
7450
7451
7452
7453
7454
7455
7456
7457
7458
7459
7460
7461
7462
7463
7464
7465
7466
7467
7468
7469
7470
7471
7472
7473
7474
7475
7476
7477
7478
7479
7480
7481
7482
7483
7484
7485
7486
7487
7488
7489
7490
7491
7492
7493
7494
7495
7496
7497
7498
7499
7500
7501
7502
7503
7504
7505
7506
7507
7508
7509
7510
7511
7512
7513
7514
7515
7516
7517
7518
7519
7520
7521
7522
7523
7524
7525
7526
7527
7528
7529
7530
7531
7532
7533
7534
7535
7536
7537
7538
7539
7540
7541
7542
7543
7544
7545
7546
7547
7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558
7559
7560
7561
7562
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
7577
7578
7579
7580
7581
7582
7583
7584
7585
7586
7587
7588
7589
7590
7591
7592
7593
7594
7595
7596
7597
7598
7599
7600
7601
7602
7603
7604
7605
7606
7607
7608
7609
7610
7611
7612
7613
7614
7615
7616
7617
7618
7619
7620
7621
7622
7623
7624
7625
7626
7627
7628
7629
7630
7631
7632
7633
7634
7635
7636
7637
7638
7639
7640
7641
7642
7643
7644
7645
7646
7647
7648
7649
7650
7651
7652
7653
7654
7655
7656
7657
7658
7659
7660
7661
7662
7663
7664
7665
7666
7667
7668
7669
7670
7671
7672
7673
7674
7675
7676
7677
7678
7679
7680
7681
7682
7683
7684
7685
7686
7687
7688
7689
7690
7691
7692
7693
7694
7695
7696
7697
7698
7699
7700
7701
7702
7703
7704
7705
7706
7707
7708
7709
7710
7711
7712
7713
7714
7715
7716
7717
7718
7719
7720
7721
7722
7723
7724
7725
7726
7727
7728
7729
7730
7731
7732
7733
7734
7735
7736
7737
7738
7739
7740
7741
7742
7743
7744
7745
7746
7747
7748
7749
7750
7751
7752
7753
7754
7755
7756
7757
7758
7759
7760
7761
7762
7763
7764
7765
7766
7767
7768
7769
7770
7771
7772
7773
7774
7775
7776
7777
7778
7779
7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793
7794
7795
7796
7797
7798
7799
7800
7801
7802
7803
7804
7805
7806
7807
7808
7809
7810
7811
7812
7813
7814
7815
7816
7817
7818
7819
7820
7821
7822
7823
7824
7825
7826
7827
7828
7829
7830
7831
7832
7833
7834
7835
7836
7837
7838
7839
7840
7841
7842
7843
7844
7845
7846
7847
7848
7849
7850
7851
7852
7853
7854
7855
7856
7857
7858
7859
7860
7861
7862
7863
7864
7865
7866
7867
7868
7869
7870
7871
7872
7873
7874
7875
7876
7877
7878
7879
7880
7881
7882
7883
7884
7885
7886
7887
7888
7889
7890
7891
7892
7893
7894
7895
7896
7897
7898
7899
7900
7901
7902
7903
7904
7905
7906
7907
7908
7909
7910
7911
7912
7913
7914
7915
7916
7917
7918
7919
7920
7921
7922
7923
7924
7925
7926
7927
7928
7929
7930
7931
7932
7933
7934
7935
7936
7937
7938
7939
7940
7941
7942
7943
7944
7945
7946
7947
7948
7949
7950
7951
7952
7953
7954
7955
7956
7957
7958
7959
7960
7961
7962
7963
7964
7965
7966
7967
7968
7969
7970
7971
7972
7973
7974
7975
7976
7977
7978
7979
7980
7981
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
8012
8013
8014
8015
8016
8017
8018
8019
8020
8021
8022
8023
8024
8025
8026
8027
8028
8029
8030
8031
8032
8033
8034
8035
8036
8037
8038
8039
8040
8041
8042
8043
8044
8045
8046
8047
8048
8049
8050
8051
8052
8053
8054
8055
8056
8057
8058
8059
8060
8061
8062
8063
8064
8065
8066
8067
8068
8069
8070
8071
8072
8073
8074
8075
8076
8077
8078
8079
8080
8081
8082
8083
8084
8085
8086
8087
8088
8089
8090
8091
8092
8093
8094
8095
8096
8097
8098
8099
8100
8101
8102
8103
8104
8105
8106
8107
8108
8109
8110
8111
8112
8113
8114
8115
8116
8117
8118
8119
8120
8121
8122
8123
8124
8125
8126
8127
8128
8129
8130
8131
8132
8133
8134
8135
8136
8137
8138
8139
8140
8141
8142
8143
8144
8145
8146
8147
8148
8149
8150
8151
8152
8153
8154
8155
8156
8157
8158
8159
8160
8161
8162
8163
8164
8165
8166
8167
8168
8169
8170
8171
8172
8173
8174
8175
8176
8177
8178
8179
8180
8181
8182
8183
8184
8185
8186
8187
8188
8189
8190
8191
8192
8193
8194
8195
8196
8197
8198
8199
8200
8201
8202
8203
8204
8205
8206
8207
8208
8209
8210
8211
8212
8213
8214
8215
8216
8217
8218
8219
8220
8221
8222
8223
8224
8225
8226
8227
8228
8229
8230
8231
8232
8233
8234
8235
8236
8237
8238
8239
8240
8241
8242
8243
8244
8245
8246
8247
8248
8249
8250
8251
8252
8253
8254
8255
8256
8257
8258
8259
8260
8261
8262
8263
8264
8265
8266
8267
8268
8269
8270
8271
8272
8273
8274
8275
8276
8277
8278
8279
8280
8281
8282
8283
8284
8285
8286
8287
8288
8289
8290
8291
8292
8293
8294
8295
8296
8297
8298
8299
8300
8301
8302
8303
8304
8305
8306
8307
8308
8309
8310
8311
8312
8313
8314
8315
8316
8317
8318
8319
8320
8321
8322
8323
8324
8325
8326
8327
8328
8329
8330
8331
8332
8333
8334
8335
8336
8337
8338
8339
8340
8341
8342
8343
8344
8345
8346
8347
8348
8349
8350
8351
8352
8353
8354
8355
8356
8357
8358
8359
8360
8361
8362
8363
8364
8365
8366
8367
8368
8369
8370
8371
8372
8373
8374
8375
8376
8377
8378
8379
8380
8381
8382
8383
8384
8385
8386
8387
8388
8389
8390
8391
8392
8393
8394
8395
8396
8397
8398
8399
8400
8401
8402
8403
8404
8405
8406
8407
8408
8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
8420
8421
8422
8423
8424
8425
8426
8427
8428
8429
8430
8431
8432
8433
8434
8435
8436
8437
8438
8439
8440
8441
8442
8443
8444
8445
8446
8447
8448
8449
8450
8451
8452
8453
8454
8455
8456
8457
8458
8459
8460
8461
8462
8463
8464
8465
8466
8467
8468
8469
8470
8471
8472
8473
8474
8475
8476
8477
8478
8479
8480
8481
8482
8483
8484
8485
8486
8487
8488
8489
8490
8491
8492
8493
8494
8495
8496
8497
8498
8499
8500
8501
8502
8503
8504
8505
8506
8507
8508
8509
8510
8511
8512
8513
8514
8515
8516
8517
8518
8519
8520
8521
8522
8523
8524
8525
8526
8527
8528
8529
8530
8531
8532
8533
8534
8535
8536
8537
8538
8539
8540
8541
8542
8543
8544
8545
8546
8547
8548
8549
8550
8551
8552
8553
8554
8555
8556
8557
8558
8559
8560
8561
8562
8563
8564
8565
8566
8567
8568
8569
8570
8571
8572
8573
8574
8575
8576
8577
8578
8579
8580
8581
8582
8583
8584
8585
8586
8587
8588
8589
8590
8591
8592
8593
8594
8595
8596
8597
8598
8599
8600
8601
8602
8603
8604
8605
8606
8607
8608
8609
8610
8611
8612
8613
8614
8615
8616
8617
8618
8619
8620
8621
8622
8623
8624
8625
8626
8627
8628
8629
8630
8631
8632
8633
8634
8635
8636
8637
8638
8639
8640
8641
8642
8643
8644
8645
8646
8647
8648
8649
8650
8651
8652
8653
8654
8655
8656
8657
8658
8659
8660
8661
8662
8663
8664
8665
8666
8667
8668
8669
8670
8671
8672
8673
8674
8675
8676
8677
8678
8679
8680
8681
8682
8683
8684
8685
8686
8687
8688
8689
8690
8691
8692
8693
8694
8695
8696
8697
8698
8699
8700
8701
8702
8703
8704
8705
8706
8707
8708
8709
8710
8711
8712
8713
8714
8715
8716
8717
8718
8719
8720
8721
8722
8723
8724
8725
8726
8727
8728
8729
8730
8731
8732
8733
8734
8735
8736
8737
8738
8739
8740
8741
8742
8743
8744
8745
8746
8747
8748
8749
8750
8751
8752
8753
8754
8755
8756
8757
8758
8759
8760
8761
8762
8763
8764
8765
8766
8767
8768
8769
8770
8771
8772
8773
8774
8775
8776
8777
8778
8779
8780
8781
8782
8783
8784
8785
8786
8787
8788
8789
8790
8791
8792
8793
8794
8795
8796
8797
8798
8799
8800
8801
8802
8803
8804
8805
8806
8807
8808
8809
8810
8811
8812
8813
8814
8815
8816
8817
8818
8819
8820
8821
8822
8823
8824
8825
8826
8827
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842
8843
8844
8845
8846
8847
8848
8849
8850
8851
8852
8853
8854
8855
8856
8857
8858
8859
8860
8861
8862
8863
8864
8865
8866
8867
8868
8869
8870
8871
8872
8873
8874
8875
8876
8877
8878
8879
8880
8881
8882
8883
8884
8885
8886
8887
8888
8889
8890
8891
8892
8893
8894
8895
8896
8897
8898
8899
8900
8901
8902
8903
8904
8905
8906
8907
8908
8909
8910
8911
8912
8913
8914
8915
8916
8917
8918
8919
8920
8921
8922
8923
8924
8925
8926
8927
8928
8929
8930
8931
8932
8933
8934
8935
8936
8937
8938
8939
8940
8941
8942
8943
8944
8945
8946
8947
8948
8949
8950
8951
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970
8971
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981
8982
8983
8984
8985
8986
8987
8988
8989
8990
8991
8992
8993
8994
8995
8996
8997
8998
8999
9000
9001
9002
9003
9004
9005
9006
9007
9008
9009
9010
9011
9012
9013
9014
9015
9016
9017
9018
9019
9020
9021
9022
9023
9024
9025
9026
9027
9028
9029
9030
9031
9032
9033
9034
9035
9036
9037
9038
9039
9040
9041
9042
9043
9044
9045
9046
9047
9048
9049
9050
9051
9052
9053
9054
9055
9056
9057
9058
9059
9060
9061
9062
9063
9064
9065
9066
9067
9068
9069
9070
9071
9072
9073
9074
9075
9076
9077
9078
9079
9080
9081
9082
9083
9084
9085
9086
9087
9088
9089
9090
9091
9092
9093
9094
9095
9096
9097
9098
9099
9100
9101
9102
9103
9104
9105
9106
9107
9108
9109
9110
9111
9112
9113
9114
9115
9116
9117
9118
9119
9120
9121
9122
9123
9124
9125
9126
9127
9128
9129
9130
9131
9132
9133
9134
9135
9136
9137
9138
9139
9140
9141
9142
9143
9144
9145
9146
9147
9148
9149
9150
9151
9152
9153
9154
9155
9156
9157
9158
9159
9160
9161
9162
9163
9164
9165
9166
9167
9168
9169
9170
9171
9172
9173
9174
9175
9176
9177
9178
9179
9180
9181
9182
9183
9184
9185
9186
9187
9188
9189
9190
9191
9192
9193
9194
9195
9196
9197
9198
9199
9200
9201
9202
9203
9204
9205
9206
9207
9208
9209
9210
9211
9212
9213
9214
9215
9216
9217
9218
9219
9220
9221
9222
9223
9224
9225
9226
9227
9228
9229
9230
9231
9232
9233
9234
9235
9236
9237
9238
9239
9240
9241
9242
9243
9244
9245
9246
9247
9248
9249
9250
9251
9252
9253
9254
9255
9256
9257
9258
9259
9260
9261
9262
9263
9264
9265
9266
9267
9268
9269
9270
9271
9272
9273
9274
9275
9276
9277
9278
9279
9280
9281
9282
9283
9284
9285
9286
9287
9288
9289
9290
9291
9292
9293
9294
9295
9296
9297
9298
9299
9300
9301
9302
9303
9304
9305
9306
9307
9308
9309
9310
9311
9312
9313
9314
9315
9316
9317
9318
9319
9320
9321
9322
9323
9324
9325
9326
9327
9328
9329
9330
9331
9332
9333
9334
9335
9336
9337
9338
9339
9340
9341
9342
9343
9344
9345
9346
9347
9348
9349
9350
9351
9352
9353
9354
9355
9356
9357
9358
9359
9360
9361
9362
9363
9364
9365
9366
9367
9368
9369
9370
9371
9372
9373
9374
9375
9376
9377
9378
9379
9380
9381
9382
9383
9384
9385
9386
9387
9388
9389
9390
9391
9392
9393
9394
9395
9396
9397
9398
9399
9400
9401
9402
9403
9404
9405
9406
9407
9408
9409
9410
9411
9412
9413
9414
9415
9416
9417
9418
9419
9420
9421
9422
9423
9424
9425
9426
9427
9428
9429
9430
9431
9432
9433
9434
9435
9436
9437
9438
9439
9440
9441
9442
9443
9444
9445
9446
9447
9448
9449
9450
9451
9452
9453
9454
9455
9456
9457
9458
9459
9460
9461
9462
9463
9464
9465
9466
9467
9468
9469
9470
9471
9472
9473
9474
9475
9476
9477
9478
9479
9480
9481
9482
9483
9484
9485
9486
9487
9488
9489
9490
9491
9492
9493
9494
9495
9496
9497
9498
9499
9500
9501
9502
9503
9504
9505
9506
9507
9508
9509
9510
9511
9512
9513
9514
9515
9516
9517
9518
9519
9520
9521
9522
9523
9524
9525
9526
9527
9528
9529
9530
9531
9532
9533
9534
9535
9536
9537
9538
9539
9540
9541
9542
9543
9544
9545
9546
9547
9548
9549
9550
9551
9552
9553
9554
9555
9556
9557
9558
9559
9560
9561
9562
9563
9564
9565
9566
9567
9568
9569
9570
9571
9572
9573
9574
9575
9576
9577
9578
9579
9580
9581
9582
9583
9584
9585
9586
9587
9588
9589
9590
9591
9592
9593
9594
9595
9596
9597
9598
9599
9600
9601
9602
9603
9604
9605
9606
9607
9608
9609
9610
9611
9612
9613
9614
9615
9616
9617
9618
9619
9620
9621
9622
9623
9624
9625
9626
9627
9628
9629
9630
9631
9632
9633
9634
9635
9636
9637
9638
9639
9640
9641
9642
9643
9644
9645
9646
9647
9648
9649
9650
9651
9652
9653
9654
9655
9656
9657
9658
9659
9660
9661
9662
9663
9664
9665
9666
9667
9668
9669
9670
9671
9672
9673
9674
9675
9676
9677
9678
9679
9680
9681
9682
9683
9684
9685
9686
9687
9688
9689
9690
9691
9692
9693
9694
9695
9696
9697
9698
9699
9700
9701
9702
9703
9704
9705
9706
9707
9708
9709
9710
9711
9712
9713
9714
9715
9716
9717
9718
9719
9720
9721
9722
9723
9724
9725
9726
9727
9728
9729
9730
9731
9732
9733
9734
9735
9736
9737
9738
9739
9740
9741
9742
9743
9744
9745
9746
9747
9748
9749
9750
9751
9752
9753
9754
9755
9756
9757
9758
9759
9760
9761
9762
9763
9764
9765
9766
9767
9768
9769
9770
9771
9772
9773
9774
9775
9776
9777
9778
9779
9780
9781
9782
9783
9784
9785
9786
9787
9788
9789
9790
9791
9792
9793
9794
9795
9796
9797
9798
9799
9800
9801
9802
9803
9804
9805
9806
9807
9808
9809
9810
9811
9812
9813
9814
9815
9816
9817
9818
9819
9820
9821
9822
9823
9824
9825
9826
9827
9828
9829
9830
9831
9832
9833
9834
9835
9836
9837
9838
9839
9840
9841
9842
9843
9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
9930
9931
9932
9933
9934
9935
9936
9937
9938
9939
9940
9941
9942
9943
9944
9945
9946
9947
9948
9949
9950
9951
9952
9953
9954
9955
9956
9957
9958
9959
9960
9961
9962
9963
9964
9965
9966
9967
9968
9969
9970
9971
9972
9973
9974
9975
9976
9977
9978
9979
9980
9981
9982
9983
9984
9985
9986
9987
9988
9989
9990
9991
9992
9993
9994
9995
9996
9997
9998
9999
10000
10001
10002
10003
10004
10005
10006
10007
10008
10009
10010
10011
10012
10013
10014
10015
10016
10017
10018
10019
10020
10021
10022
10023
10024
10025
10026
10027
10028
10029
10030
10031
10032
10033
10034
10035
10036
10037
10038
10039
10040
10041
10042
10043
10044
10045
10046
10047
10048
10049
10050
10051
10052
10053
10054
10055
10056
10057
10058
10059
10060
10061
10062
10063
10064
10065
10066
10067
10068
10069
10070
10071
10072
10073
10074
10075
10076
10077
10078
10079
10080
10081
10082
10083
10084
10085
10086
10087
10088
10089
10090
10091
10092
10093
10094
10095
10096
10097
10098
10099
10100
10101
10102
10103
10104
10105
10106
10107
10108
10109
10110
10111
10112
10113
10114
10115
10116
10117
10118
10119
10120
10121
10122
10123
10124
10125
10126
10127
10128
10129
10130
10131
10132
10133
10134
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150
10151
10152
10153
10154
10155
10156
10157
10158
10159
10160
10161
10162
10163
10164
10165
10166
10167
10168
10169
10170
10171
10172
10173
10174
10175
10176
10177
10178
10179
10180
10181
10182
10183
10184
10185
10186
10187
10188
10189
10190
10191
10192
10193
10194
10195
10196
10197
10198
10199
10200
10201
10202
10203
10204
10205
10206
10207
10208
10209
10210
10211
10212
10213
10214
10215
10216
10217
10218
10219
10220
10221
10222
10223
10224
10225
10226
10227
10228
10229
10230
10231
10232
10233
10234
10235
10236
10237
10238
10239
10240
10241
10242
10243
10244
10245
10246
10247
10248
10249
10250
10251
10252
10253
10254
10255
10256
10257
10258
10259
10260
10261
10262
10263
10264
10265
10266
10267
10268
10269
10270
10271
10272
10273
10274
10275
10276
10277
10278
10279
10280
10281
10282
10283
10284
10285
10286
10287
10288
10289
10290
10291
10292
10293
10294
10295
10296
10297
10298
10299
10300
10301
10302
10303
10304
10305
10306
10307
10308
10309
10310
10311
10312
10313
10314
10315
10316
10317
10318
10319
10320
10321
10322
10323
10324
10325
10326
10327
10328
10329
10330
10331
10332
10333
10334
10335
10336
10337
10338
10339
10340
10341
10342
10343
10344
10345
10346
10347
10348
10349
10350
10351
10352
10353
10354
10355
10356
10357
10358
10359
10360
10361
10362
10363
10364
10365
10366
10367
10368
10369
10370
10371
10372
10373
10374
10375
10376
10377
10378
10379
10380
10381
10382
10383
10384
10385
10386
10387
10388
10389
10390
10391
10392
10393
10394
10395
10396
10397
10398
10399
10400
10401
10402
10403
10404
10405
10406
10407
10408
10409
10410
10411
10412
10413
10414
10415
10416
10417
10418
10419
10420
10421
10422
10423
10424
10425
10426
10427
10428
10429
10430
10431
10432
10433
10434
10435
10436
10437
10438
10439
10440
10441
10442
10443
10444
10445
10446
10447
10448
10449
10450
10451
10452
10453
10454
10455
10456
10457
10458
10459
10460
10461
10462
10463
10464
10465
10466
10467
10468
10469
10470
10471
10472
10473
10474
10475
10476
10477
10478
10479
10480
10481
10482
10483
10484
10485
10486
10487
10488
10489
10490
10491
10492
10493
10494
10495
10496
10497
10498
10499
10500
10501
10502
10503
10504
10505
10506
10507
10508
10509
10510
10511
10512
10513
10514
10515
10516
10517
10518
10519
10520
10521
10522
10523
10524
10525
10526
10527
10528
10529
10530
10531
10532
10533
10534
10535
10536
10537
10538
10539
10540
10541
10542
10543
10544
10545
10546
10547
10548
10549
10550
10551
10552
10553
10554
10555
10556
10557
10558
10559
10560
10561
10562
10563
10564
10565
10566
10567
10568
10569
10570
10571
10572
10573
10574
10575
10576
10577
10578
10579
10580
10581
10582
10583
10584
10585
10586
10587
10588
10589
10590
10591
10592
10593
10594
10595
10596
10597
10598
10599
10600
10601
10602
10603
10604
10605
10606
10607
10608
10609
10610
10611
10612
10613
10614
10615
10616
10617
10618
10619
10620
10621
10622
10623
10624
10625
10626
10627
10628
10629
10630
10631
10632
10633
10634
10635
10636
10637
10638
10639
10640
10641
10642
10643
10644
10645
10646
10647
10648
10649
10650
10651
10652
10653
10654
10655
10656
10657
10658
10659
10660
10661
10662
10663
10664
10665
10666
10667
10668
10669
10670
10671
10672
10673
10674
10675
10676
10677
10678
10679
10680
10681
10682
10683
10684
10685
10686
10687
10688
10689
10690
10691
10692
10693
10694
10695
10696
10697
10698
10699
10700
10701
10702
10703
10704
10705
10706
10707
10708
10709
10710
10711
10712
10713
10714
10715
10716
10717
10718
10719
10720
10721
10722
10723
10724
10725
10726
10727
10728
10729
10730
10731
10732
10733
10734
10735
10736
10737
10738
10739
10740
10741
10742
10743
10744
10745
10746
10747
10748
10749
10750
10751
10752
10753
10754
10755
10756
10757
10758
10759
10760
10761
10762
10763
10764
10765
10766
10767
10768
10769
10770
10771
10772
10773
10774
10775
10776
10777
10778
10779
10780
10781
10782
10783
10784
10785
10786
10787
10788
10789
10790
10791
10792
10793
10794
10795
10796
10797
10798
10799
10800
10801
10802
10803
10804
10805
10806
10807
10808
10809
10810
10811
10812
10813
10814
10815
10816
10817
10818
10819
10820
10821
10822
10823
10824
10825
10826
10827
10828
10829
10830
10831
10832
10833
10834
10835
10836
10837
10838
10839
10840
10841
10842
10843
10844
10845
10846
10847
10848
10849
10850
10851
10852
10853
10854
10855
10856
10857
10858
10859
10860
10861
10862
10863
10864
10865
10866
10867
10868
10869
10870
10871
10872
10873
10874
10875
10876
10877
10878
10879
10880
10881
10882
10883
10884
10885
10886
10887
10888
10889
10890
10891
10892
10893
10894
10895
10896
10897
10898
10899
10900
10901
10902
10903
10904
10905
10906
10907
10908
10909
10910
10911
10912
10913
10914
10915
10916
10917
10918
10919
10920
10921
10922
10923
10924
10925
10926
10927
10928
10929
10930
10931
10932
10933
10934
10935
10936
10937
10938
10939
10940
10941
10942
10943
10944
10945
10946
10947
10948
10949
10950
10951
10952
10953
10954
10955
10956
10957
10958
10959
10960
10961
10962
10963
10964
10965
10966
10967
10968
10969
10970
10971
10972
10973
10974
10975
10976
10977
10978
10979
10980
10981
10982
10983
10984
10985
10986
10987
10988
10989
10990
10991
10992
10993
10994
10995
10996
10997
10998
10999
11000
11001
11002
11003
11004
11005
11006
11007
11008
11009
11010
11011
11012
11013
11014
11015
11016
11017
11018
11019
11020
11021
11022
11023
11024
11025
11026
11027
11028
11029
11030
11031
11032
11033
11034
11035
11036
11037
11038
11039
11040
11041
11042
11043
11044
11045
11046
11047
11048
11049
11050
11051
11052
11053
11054
11055
11056
11057
11058
11059
11060
11061
11062
11063
11064
11065
11066
11067
11068
11069
11070
11071
11072
11073
11074
11075
11076
11077
11078
11079
11080
11081
11082
11083
11084
11085
11086
11087
11088
11089
11090
11091
11092
11093
11094
11095
11096
11097
11098
11099
11100
11101
11102
11103
11104
11105
11106
11107
11108
11109
11110
11111
11112
11113
11114
11115
11116
11117
11118
11119
11120
11121
11122
11123
11124
11125
11126
11127
11128
11129
11130
11131
11132
11133
11134
11135
11136
11137
11138
11139
11140
11141
11142
11143
11144
11145
11146
11147
11148
11149
11150
11151
11152
11153
11154
11155
11156
11157
11158
11159
11160
11161
11162
11163
11164
11165
11166
11167
11168
11169
11170
11171
11172
11173
11174
11175
11176
11177
11178
11179
11180
11181
11182
11183
11184
11185
11186
11187
11188
11189
11190
11191
11192
11193
11194
11195
11196
11197
11198
11199
11200
11201
11202
11203
11204
11205
11206
11207
11208
11209
11210
11211
11212
11213
11214
11215
11216
11217
11218
11219
11220
11221
11222
11223
11224
11225
11226
11227
11228
11229
11230
11231
11232
11233
11234
11235
11236
11237
11238
11239
11240
11241
11242
11243
11244
11245
11246
11247
11248
11249
11250
11251
11252
11253
11254
11255
11256
11257
11258
11259
11260
11261
11262
11263
11264
11265
11266
11267
11268
11269
11270
11271
11272
11273
11274
11275
11276
11277
11278
11279
11280
11281
11282
11283
11284
11285
11286
11287
11288
11289
11290
11291
11292
11293
11294
11295
11296
11297
11298
11299
11300
11301
11302
11303
11304
11305
11306
11307
11308
11309
11310
11311
11312
11313
11314
11315
11316
11317
11318
11319
11320
11321
11322
11323
11324
11325
11326
11327
11328
11329
11330
11331
11332
11333
11334
11335
11336
11337
11338
11339
11340
11341
11342
11343
11344
11345
11346
11347
11348
11349
11350
11351
11352
11353
11354
11355
11356
11357
11358
11359
11360
11361
11362
11363
11364
11365
11366
11367
11368
11369
11370
11371
11372
11373
11374
11375
11376
11377
11378
11379
11380
11381
11382
11383
11384
11385
11386
11387
11388
11389
11390
11391
11392
11393
11394
11395
11396
11397
11398
11399
11400
11401
11402
11403
11404
11405
11406
11407
11408
11409
11410
11411
11412
11413
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423
11424
11425
11426
11427
11428
11429
11430
11431
11432
11433
11434
11435
11436
11437
11438
11439
11440
11441
11442
11443
11444
11445
11446
11447
11448
11449
11450
11451
11452
11453
11454
11455
11456
11457
11458
11459
11460
11461
11462
11463
11464
11465
11466
11467
11468
11469
11470
11471
11472
11473
11474
11475
11476
11477
11478
11479
11480
11481
11482
11483
11484
11485
11486
11487
11488
11489
11490
11491
11492
11493
11494
11495
11496
11497
11498
11499
11500
11501
11502
11503
11504
11505
11506
11507
11508
11509
11510
11511
11512
11513
11514
11515
11516
11517
11518
11519
11520
11521
11522
11523
11524
11525
11526
11527
11528
11529
11530
11531
11532
11533
11534
11535
11536
11537
11538
11539
11540
11541
11542
11543
11544
11545
11546
11547
11548
11549
11550
11551
11552
11553
11554
11555
11556
11557
11558
11559
11560
11561
11562
11563
11564
11565
11566
11567
11568
11569
11570
11571
11572
11573
11574
11575
11576
11577
11578
11579
11580
11581
11582
11583
11584
11585
11586
11587
11588
11589
11590
11591
11592
11593
11594
11595
11596
11597
11598
11599
11600
11601
11602
11603
11604
11605
11606
11607
11608
11609
11610
11611
11612
11613
11614
11615
11616
11617
11618
11619
11620
11621
11622
11623
11624
11625
11626
11627
11628
11629
11630
11631
11632
11633
11634
11635
11636
11637
11638
11639
11640
11641
11642
11643
11644
11645
11646
11647
11648
11649
11650
11651
11652
11653
11654
11655
11656
11657
11658
11659
11660
11661
11662
11663
11664
11665
11666
11667
11668
11669
11670
11671
11672
11673
11674
11675
11676
11677
11678
11679
11680
11681
11682
11683
11684
11685
11686
11687
11688
11689
11690
11691
11692
11693
11694
11695
11696
11697
11698
11699
11700
11701
11702
11703
11704
11705
11706
11707
11708
11709
11710
11711
11712
11713
11714
11715
11716
11717
11718
11719
11720
11721
11722
11723
11724
11725
11726
11727
11728
11729
11730
11731
11732
11733
11734
11735
11736
11737
11738
11739
11740
11741
11742
11743
11744
11745
11746
11747
11748
11749
11750
11751
11752
11753
11754
11755
11756
11757
11758
11759
11760
11761
11762
11763
11764
11765
11766
11767
11768
11769
11770
11771
11772
11773
11774
11775
11776
11777
11778
11779
11780
11781
11782
11783
11784
11785
11786
11787
11788
11789
11790
11791
11792
11793
11794
11795
11796
11797
11798
11799
11800
11801
11802
11803
11804
11805
11806
11807
11808
11809
11810
11811
11812
11813
11814
11815
11816
11817
11818
11819
11820
11821
11822
11823
11824
11825
11826
11827
11828
11829
11830
11831
11832
11833
11834
11835
11836
11837
11838
11839
11840
11841
11842
11843
11844
11845
11846
11847
11848
11849
11850
11851
11852
11853
11854
11855
11856
11857
11858
11859
11860
11861
11862
11863
11864
11865
11866
11867
11868
11869
11870
11871
11872
11873
11874
11875
11876
11877
11878
11879
11880
11881
11882
11883
11884
11885
11886
11887
11888
11889
11890
11891
11892
11893
11894
11895
11896
11897
11898
11899
11900
11901
11902
11903
11904
11905
11906
11907
11908
11909
11910
11911
11912
11913
11914
11915
11916
11917
11918
11919
11920
11921
11922
11923
11924
11925
11926
11927
11928
11929
11930
11931
11932
11933
11934
11935
11936
11937
11938
11939
11940
11941
11942
11943
11944
11945
11946
11947
11948
11949
11950
11951
11952
11953
11954
11955
11956
11957
11958
11959
11960
11961
11962
11963
11964
11965
11966
11967
11968
11969
11970
11971
11972
11973
11974
11975
11976
11977
11978
11979
11980
11981
11982
11983
11984
11985
11986
11987
11988
11989
11990
11991
11992
11993
11994
11995
11996
11997
11998
11999
12000
12001
12002
12003
12004
12005
12006
12007
12008
12009
12010
12011
12012
12013
12014
12015
12016
12017
12018
12019
12020
12021
12022
12023
12024
12025
12026
12027
12028
12029
12030
12031
12032
12033
12034
12035
12036
12037
12038
12039
12040
12041
12042
12043
12044
12045
12046
12047
12048
12049
12050
12051
12052
12053
12054
12055
12056
12057
12058
12059
12060
12061
12062
12063
12064
12065
12066
12067
12068
12069
12070
12071
12072
12073
12074
12075
12076
12077
12078
12079
12080
12081
12082
12083
12084
12085
12086
12087
12088
12089
12090
12091
12092
12093
12094
12095
12096
12097
12098
12099
12100
12101
12102
12103
12104
12105
12106
12107
12108
12109
12110
12111
12112
12113
12114
12115
12116
12117
12118
12119
12120
12121
12122
12123
12124
12125
12126
12127
12128
12129
12130
12131
12132
12133
12134
12135
12136
12137
12138
12139
12140
12141
12142
12143
12144
12145
12146
12147
12148
12149
12150
12151
12152
12153
12154
12155
12156
12157
12158
12159
12160
12161
12162
12163
12164
12165
12166
12167
12168
12169
12170
12171
12172
12173
12174
12175
12176
12177
12178
12179
12180
12181
12182
12183
12184
12185
12186
12187
12188
12189
12190
12191
12192
12193
12194
12195
12196
12197
12198
12199
12200
12201
12202
12203
12204
12205
12206
12207
12208
12209
12210
12211
12212
12213
12214
12215
12216
12217
12218
12219
12220
12221
12222
12223
12224
12225
12226
12227
12228
12229
12230
12231
12232
12233
12234
12235
12236
12237
12238
12239
12240
12241
12242
12243
12244
12245
12246
12247
12248
12249
12250
12251
12252
12253
12254
12255
12256
12257
12258
12259
12260
12261
12262
12263
12264
12265
12266
12267
12268
12269
12270
12271
12272
12273
12274
12275
12276
12277
12278
12279
12280
12281
12282
12283
12284
12285
12286
12287
12288
12289
12290
12291
12292
12293
12294
12295
12296
12297
12298
12299
12300
12301
12302
12303
12304
12305
12306
12307
12308
12309
12310
12311
12312
12313
12314
12315
12316
12317
12318
12319
12320
12321
12322
12323
12324
12325
12326
12327
12328
12329
12330
12331
12332
12333
12334
12335
12336
12337
12338
12339
12340
12341
12342
12343
12344
12345
12346
12347
12348
12349
12350
12351
12352
12353
12354
12355
12356
12357
12358
12359
12360
12361
12362
12363
12364
12365
12366
12367
12368
12369
12370
12371
12372
12373
12374
12375
12376
12377
12378
12379
12380
12381
12382
12383
12384
12385
12386
12387
12388
12389
12390
12391
12392
12393
12394
12395
12396
12397
12398
12399
12400
12401
12402
12403
12404
12405
12406
12407
12408
12409
12410
12411
12412
12413
12414
12415
12416
12417
12418
12419
12420
12421
12422
12423
12424
12425
12426
12427
12428
12429
12430
12431
12432
12433
12434
12435
12436
12437
12438
12439
12440
12441
12442
12443
12444
12445
12446
12447
12448
12449
12450
12451
12452
12453
12454
12455
12456
12457
12458
12459
12460
12461
12462
12463
12464
12465
12466
12467
12468
12469
12470
12471
12472
12473
12474
12475
12476
12477
12478
12479
12480
12481
12482
12483
12484
12485
12486
12487
12488
12489
12490
12491
12492
12493
12494
12495
12496
12497
12498
12499
12500
12501
12502
12503
12504
12505
12506
12507
12508
12509
12510
12511
12512
12513
12514
12515
12516
12517
12518
12519
12520
12521
12522
12523
12524
12525
12526
12527
12528
12529
12530
12531
12532
12533
12534
12535
12536
12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
12547
12548
12549
12550
12551
12552
12553
12554
12555
12556
12557
12558
12559
12560
12561
12562
12563
12564
12565
12566
12567
12568
12569
12570
12571
12572
12573
12574
12575
12576
12577
12578
12579
12580
12581
12582
12583
12584
12585
12586
12587
12588
12589
12590
12591
12592
12593
12594
12595
12596
12597
12598
12599
12600
12601
12602
12603
12604
12605
12606
12607
12608
12609
12610
12611
12612
12613
12614
12615
12616
12617
12618
12619
12620
12621
12622
12623
12624
12625
12626
12627
12628
12629
12630
12631
12632
12633
12634
12635
12636
12637
12638
12639
12640
12641
12642
12643
12644
12645
12646
12647
12648
12649
12650
12651
12652
12653
12654
12655
12656
12657
12658
12659
12660
12661
12662
12663
12664
12665
12666
12667
12668
12669
12670
12671
12672
12673
12674
12675
12676
12677
12678
12679
12680
12681
12682
12683
12684
12685
12686
12687
12688
12689
12690
12691
12692
12693
12694
12695
12696
12697
12698
12699
12700
12701
12702
12703
12704
12705
12706
12707
12708
12709
12710
12711
12712
12713
12714
12715
12716
12717
12718
12719
12720
12721
12722
12723
12724
12725
12726
12727
12728
12729
12730
12731
12732
12733
12734
12735
12736
12737
12738
12739
12740
12741
12742
12743
12744
12745
12746
12747
12748
12749
12750
12751
12752
12753
12754
12755
12756
12757
12758
12759
12760
12761
12762
12763
12764
12765
12766
12767
12768
12769
12770
12771
12772
12773
12774
12775
12776
12777
12778
12779
12780
12781
12782
12783
12784
12785
12786
12787
12788
12789
12790
12791
12792
12793
12794
12795
12796
12797
12798
12799
12800
12801
12802
12803
12804
12805
12806
12807
12808
12809
12810
12811
12812
12813
12814
12815
12816
12817
12818
12819
12820
12821
12822
12823
12824
12825
12826
12827
12828
12829
12830
12831
12832
12833
12834
12835
12836
12837
12838
12839
12840
12841
12842
12843
12844
12845
12846
12847
12848
12849
12850
12851
12852
12853
12854
12855
12856
12857
12858
12859
12860
12861
12862
12863
12864
12865
12866
12867
12868
12869
12870
12871
12872
12873
12874
12875
12876
12877
12878
12879
12880
12881
12882
12883
12884
12885
12886
12887
12888
12889
12890
12891
12892
12893
12894
12895
12896
12897
12898
12899
12900
12901
12902
12903
12904
12905
12906
12907
12908
12909
12910
12911
12912
12913
12914
12915
12916
12917
12918
12919
12920
12921
12922
12923
12924
12925
12926
12927
12928
12929
12930
12931
12932
12933
12934
12935
12936
12937
12938
12939
12940
12941
12942
12943
12944
12945
12946
12947
12948
12949
12950
12951
12952
12953
12954
12955
12956
12957
12958
12959
12960
12961
12962
12963
12964
12965
12966
12967
12968
12969
12970
12971
12972
12973
12974
12975
12976
12977
12978
12979
12980
12981
12982
12983
12984
12985
12986
12987
12988
12989
12990
12991
12992
12993
12994
12995
12996
12997
12998
12999
13000
13001
13002
13003
13004
13005
13006
13007
13008
13009
13010
13011
13012
13013
13014
13015
13016
13017
13018
13019
13020
13021
13022
13023
13024
13025
13026
13027
13028
13029
13030
13031
13032
13033
13034
13035
13036
13037
13038
13039
13040
13041
13042
13043
13044
13045
13046
13047
13048
13049
13050
13051
13052
13053
13054
13055
13056
13057
13058
13059
13060
13061
13062
13063
13064
13065
13066
13067
13068
13069
13070
13071
13072
13073
13074
13075
13076
13077
13078
13079
13080
13081
13082
13083
13084
13085
13086
13087
13088
13089
13090
13091
13092
13093
13094
13095
13096
13097
13098
13099
13100
13101
13102
13103
13104
13105
13106
13107
13108
13109
13110
13111
13112
13113
13114
13115
13116
13117
13118
13119
13120
13121
13122
13123
13124
13125
13126
13127
13128
13129
13130
13131
13132
13133
13134
13135
13136
13137
13138
13139
13140
13141
13142
13143
13144
13145
13146
13147
13148
13149
13150
13151
13152
13153
13154
13155
13156
13157
13158
13159
13160
13161
13162
13163
13164
13165
13166
13167
13168
13169
13170
13171
13172
13173
13174
13175
13176
13177
13178
13179
13180
13181
13182
13183
13184
13185
13186
13187
13188
13189
13190
13191
13192
13193
13194
13195
13196
13197
13198
13199
13200
13201
13202
13203
13204
13205
13206
13207
13208
13209
13210
13211
13212
13213
13214
13215
13216
13217
13218
13219
13220
13221
13222
13223
13224
13225
13226
13227
13228
13229
13230
13231
13232
13233
13234
13235
13236
13237
13238
13239
13240
13241
13242
13243
13244
13245
13246
13247
13248
13249
13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
13260
13261
13262
13263
13264
13265
13266
13267
13268
13269
13270
13271
13272
13273
13274
13275
13276
13277
13278
13279
13280
13281
13282
13283
13284
13285
13286
13287
13288
13289
13290
13291
13292
13293
13294
13295
13296
13297
13298
13299
13300
13301
13302
13303
13304
13305
13306
13307
13308
13309
13310
13311
13312
13313
13314
13315
13316
13317
13318
13319
13320
13321
13322
13323
13324
13325
13326
13327
13328
13329
13330
13331
13332
13333
13334
13335
13336
13337
13338
13339
13340
13341
13342
13343
13344
13345
13346
13347
13348
13349
13350
13351
13352
13353
13354
13355
13356
13357
13358
13359
13360
13361
13362
13363
13364
13365
13366
13367
13368
13369
13370
13371
13372
13373
13374
13375
13376
13377
13378
13379
13380
13381
13382
13383
13384
13385
13386
13387
13388
13389
13390
13391
13392
13393
13394
13395
13396
13397
13398
13399
13400
13401
13402
13403
13404
13405
13406
13407
13408
13409
13410
13411
13412
13413
13414
13415
13416
13417
13418
13419
13420
13421
13422
13423
13424
13425
13426
13427
13428
13429
13430
13431
13432
13433
13434
13435
13436
13437
13438
13439
13440
13441
13442
13443
13444
13445
13446
13447
13448
13449
13450
13451
13452
13453
13454
13455
13456
13457
13458
13459
13460
13461
13462
13463
13464
13465
13466
13467
13468
13469
13470
13471
13472
13473
13474
13475
13476
13477
13478
13479
13480
13481
13482
13483
13484
13485
13486
13487
13488
13489
13490
13491
13492
13493
13494
13495
13496
13497
13498
13499
13500
13501
13502
13503
13504
13505
13506
13507
13508
13509
13510
13511
13512
13513
13514
13515
13516
13517
13518
13519
13520
13521
13522
13523
13524
13525
13526
13527
13528
13529
13530
13531
13532
13533
13534
13535
13536
13537
13538
13539
13540
13541
13542
13543
13544
13545
13546
13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
13559
13560
13561
13562
13563
13564
13565
13566
13567
13568
13569
13570
13571
13572
13573
13574
13575
13576
13577
13578
13579
13580
13581
13582
13583
13584
13585
13586
13587
13588
13589
13590
13591
13592
13593
13594
13595
13596
13597
13598
13599
13600
13601
13602
13603
13604
13605
13606
13607
13608
13609
13610
13611
13612
13613
13614
13615
13616
13617
13618
13619
13620
13621
13622
13623
13624
13625
13626
13627
13628
13629
13630
13631
13632
13633
13634
13635
13636
13637
13638
13639
13640
13641
13642
13643
13644
13645
13646
13647
13648
13649
13650
13651
13652
13653
13654
13655
13656
13657
13658
13659
13660
13661
13662
13663
13664
13665
13666
13667
13668
13669
13670
13671
13672
13673
13674
13675
13676
13677
13678
13679
13680
13681
13682
13683
13684
13685
13686
13687
13688
13689
13690
13691
13692
13693
13694
13695
13696
13697
13698
13699
13700
13701
13702
13703
13704
13705
13706
13707
13708
13709
13710
13711
13712
13713
13714
13715
13716
13717
13718
13719
13720
13721
13722
13723
13724
13725
13726
13727
13728
13729
13730
13731
13732
13733
13734
13735
13736
13737
13738
13739
13740
13741
13742
13743
13744
13745
13746
13747
13748
13749
13750
13751
13752
13753
13754
13755
13756
13757
13758
13759
13760
13761
13762
13763
13764
13765
13766
13767
13768
13769
13770
13771
13772
13773
13774
13775
13776
13777
13778
13779
13780
13781
13782
13783
13784
13785
13786
13787
13788
13789
13790
13791
13792
13793
13794
13795
13796
13797
13798
13799
13800
13801
13802
13803
13804
13805
13806
13807
13808
13809
13810
13811
13812
13813
13814
13815
13816
13817
13818
13819
13820
13821
13822
13823
13824
13825
13826
13827
13828
13829
13830
13831
13832
13833
13834
13835
13836
13837
13838
13839
13840
13841
13842
13843
13844
13845
13846
13847
13848
13849
13850
13851
13852
13853
13854
13855
13856
13857
13858
13859
13860
13861
13862
13863
13864
13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
13877
13878
13879
13880
13881
13882
13883
13884
13885
13886
13887
13888
13889
13890
13891
13892
13893
13894
13895
13896
13897
13898
13899
13900
13901
13902
13903
13904
13905
13906
13907
13908
13909
13910
13911
13912
13913
13914
13915
13916
13917
13918
13919
13920
13921
13922
13923
13924
13925
13926
13927
13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
13940
13941
13942
13943
13944
13945
13946
13947
13948
13949
13950
13951
13952
13953
13954
13955
13956
13957
13958
13959
13960
13961
13962
13963
13964
13965
13966
13967
13968
13969
13970
13971
13972
13973
13974
13975
13976
13977
13978
13979
13980
13981
13982
13983
13984
13985
13986
13987
13988
13989
13990
13991
13992
13993
13994
13995
13996
13997
13998
13999
14000
14001
14002
14003
14004
14005
14006
14007
14008
14009
14010
14011
14012
14013
14014
14015
14016
14017
14018
14019
14020
14021
14022
14023
14024
14025
14026
14027
14028
14029
14030
14031
14032
14033
14034
14035
14036
14037
14038
14039
14040
14041
14042
14043
14044
14045
14046
14047
14048
14049
14050
14051
14052
14053
14054
14055
14056
14057
14058
14059
14060
14061
14062
14063
14064
14065
14066
14067
14068
14069
14070
14071
14072
14073
14074
14075
14076
14077
14078
14079
14080
14081
14082
14083
14084
14085
14086
14087
14088
14089
14090
14091
14092
14093
14094
14095
14096
14097
14098
14099
14100
14101
14102
14103
14104
14105
14106
14107
14108
14109
14110
14111
14112
14113
14114
14115
14116
14117
14118
14119
14120
14121
14122
14123
14124
14125
14126
14127
14128
14129
14130
14131
14132
14133
14134
14135
14136
14137
14138
14139
14140
14141
14142
14143
14144
14145
14146
14147
14148
14149
14150
14151
14152
14153
14154
14155
14156
14157
14158
14159
14160
14161
14162
14163
14164
14165
14166
14167
14168
14169
14170
14171
14172
14173
14174
14175
14176
14177
14178
14179
14180
14181
14182
14183
14184
14185
14186
14187
14188
14189
14190
14191
14192
14193
14194
14195
14196
14197
14198
14199
14200
14201
14202
14203
14204
14205
14206
14207
14208
14209
14210
14211
14212
14213
14214
14215
14216
14217
14218
14219
14220
14221
14222
14223
14224
14225
14226
14227
14228
14229
14230
14231
14232
14233
14234
14235
14236
14237
14238
14239
14240
14241
14242
14243
14244
14245
14246
14247
14248
14249
14250
14251
14252
14253
14254
14255
14256
14257
14258
14259
14260
14261
14262
14263
14264
14265
14266
14267
14268
14269
14270
14271
14272
14273
14274
14275
14276
14277
14278
14279
14280
14281
14282
14283
14284
14285
14286
14287
14288
14289
14290
14291
14292
14293
14294
14295
14296
14297
14298
14299
14300
14301
14302
14303
14304
14305
14306
14307
14308
14309
14310
14311
14312
14313
14314
14315
14316
14317
14318
14319
14320
14321
14322
14323
14324
14325
14326
14327
14328
14329
14330
14331
14332
14333
14334
14335
14336
14337
14338
14339
14340
14341
14342
14343
14344
14345
14346
14347
14348
14349
14350
14351
14352
14353
14354
14355
14356
14357
14358
14359
14360
14361
14362
14363
14364
14365
14366
14367
14368
14369
14370
14371
14372
14373
14374
14375
14376
14377
14378
14379
14380
14381
14382
14383
14384
14385
14386
14387
14388
14389
14390
14391
14392
14393
14394
14395
14396
14397
14398
14399
14400
14401
14402
14403
14404
14405
14406
14407
14408
14409
14410
14411
14412
14413
14414
14415
14416
14417
14418
14419
14420
14421
14422
14423
14424
14425
14426
14427
14428
14429
14430
14431
14432
14433
14434
14435
14436
14437
14438
14439
14440
14441
14442
14443
14444
14445
14446
14447
14448
14449
14450
14451
14452
14453
14454
14455
14456
14457
14458
14459
14460
14461
14462
14463
14464
14465
14466
14467
14468
14469
14470
14471
14472
14473
14474
14475
14476
14477
14478
14479
14480
14481
14482
14483
14484
14485
14486
14487
14488
14489
14490
14491
14492
14493
14494
14495
14496
14497
14498
14499
14500
14501
14502
14503
14504
14505
14506
14507
14508
14509
14510
14511
14512
14513
14514
14515
14516
14517
14518
14519
14520
14521
14522
14523
14524
14525
14526
14527
14528
14529
14530
14531
14532
14533
14534
14535
14536
14537
14538
14539
14540
14541
14542
14543
14544
14545
14546
14547
14548
14549
14550
14551
14552
14553
14554
14555
14556
14557
14558
14559
14560
14561
14562
14563
14564
14565
14566
14567
14568
14569
14570
14571
14572
14573
14574
14575
14576
14577
14578
14579
14580
14581
14582
14583
14584
14585
14586
14587
14588
14589
14590
14591
14592
14593
14594
14595
14596
14597
14598
14599
14600
14601
14602
14603
14604
14605
14606
14607
14608
14609
14610
14611
14612
14613
14614
14615
14616
14617
14618
14619
14620
14621
14622
14623
14624
14625
14626
14627
14628
14629
14630
14631
14632
14633
14634
14635
14636
14637
14638
14639
14640
14641
14642
14643
14644
14645
14646
14647
14648
14649
14650
14651
14652
14653
14654
14655
14656
14657
14658
14659
14660
14661
14662
14663
14664
14665
14666
14667
14668
14669
14670
14671
14672
14673
14674
14675
14676
14677
14678
14679
14680
14681
14682
14683
14684
14685
14686
14687
14688
14689
14690
14691
14692
14693
14694
14695
14696
14697
14698
14699
14700
14701
14702
14703
14704
14705
14706
14707
14708
14709
14710
14711
14712
14713
14714
14715
14716
14717
14718
14719
14720
14721
14722
14723
14724
14725
14726
14727
14728
14729
14730
14731
14732
14733
14734
14735
14736
14737
14738
14739
14740
14741
14742
14743
14744
14745
14746
14747
14748
14749
14750
14751
14752
14753
14754
14755
14756
14757
14758
14759
14760
14761
14762
14763
14764
14765
14766
14767
14768
14769
14770
14771
14772
14773
14774
14775
14776
14777
14778
14779
14780
14781
14782
14783
14784
14785
14786
14787
14788
14789
14790
14791
14792
14793
14794
14795
14796
14797
14798
14799
14800
14801
14802
14803
14804
14805
14806
14807
14808
14809
14810
14811
14812
14813
14814
14815
14816
14817
14818
14819
14820
14821
14822
14823
14824
14825
14826
14827
14828
14829
14830
14831
14832
14833
14834
14835
14836
14837
14838
14839
14840
14841
14842
14843
14844
14845
14846
14847
14848
14849
14850
14851
14852
14853
14854
14855
14856
14857
14858
14859
14860
14861
14862
14863
14864
14865
14866
14867
14868
14869
14870
14871
14872
14873
14874
14875
14876
14877
14878
14879
14880
14881
14882
14883
14884
14885
14886
14887
14888
14889
14890
14891
14892
14893
14894
14895
14896
14897
14898
14899
14900
14901
14902
14903
14904
14905
14906
14907
14908
14909
14910
14911
14912
14913
14914
14915
14916
14917
14918
14919
14920
14921
14922
14923
14924
14925
14926
14927
14928
14929
14930
14931
14932
14933
14934
14935
14936
14937
14938
14939
14940
14941
14942
14943
14944
14945
14946
14947
14948
14949
14950
14951
14952
14953
14954
14955
14956
14957
14958
14959
14960
14961
14962
14963
14964
14965
14966
14967
14968
14969
14970
14971
14972
14973
14974
14975
14976
14977
14978
14979
14980
14981
14982
14983
14984
14985
14986
14987
14988
14989
14990
14991
14992
14993
14994
14995
14996
14997
14998
14999
15000
15001
15002
15003
15004
15005
15006
15007
15008
15009
15010
15011
15012
15013
15014
15015
15016
15017
15018
15019
15020
15021
15022
15023
15024
15025
15026
15027
15028
15029
15030
15031
15032
15033
15034
15035
15036
15037
15038
15039
15040
15041
15042
15043
15044
15045
15046
15047
15048
15049
15050
15051
15052
15053
15054
15055
15056
15057
15058
15059
15060
15061
15062
15063
15064
15065
15066
15067
15068
15069
15070
15071
15072
15073
15074
15075
15076
15077
15078
15079
15080
15081
15082
15083
15084
15085
15086
15087
15088
15089
15090
15091
15092
15093
15094
15095
15096
15097
15098
15099
15100
15101
15102
15103
15104
15105
15106
15107
15108
15109
15110
15111
15112
15113
15114
15115
15116
15117
15118
15119
15120
15121
15122
15123
15124
15125
15126
15127
15128
15129
15130
15131
15132
15133
15134
15135
15136
15137
15138
15139
15140
15141
15142
15143
15144
15145
15146
15147
15148
15149
15150
15151
15152
15153
15154
15155
15156
15157
15158
15159
15160
15161
15162
15163
15164
15165
15166
15167
15168
15169
15170
15171
15172
15173
15174
15175
15176
15177
15178
15179
15180
15181
15182
15183
15184
15185
15186
15187
15188
15189
15190
15191
15192
15193
15194
15195
15196
15197
15198
15199
15200
15201
15202
15203
15204
15205
15206
15207
15208
15209
15210
15211
15212
15213
15214
15215
15216
15217
15218
15219
15220
15221
15222
15223
15224
15225
15226
15227
15228
15229
15230
15231
15232
15233
15234
15235
15236
15237
15238
15239
15240
15241
15242
15243
15244
15245
15246
15247
15248
15249
15250
15251
15252
15253
15254
15255
15256
15257
15258
15259
15260
15261
15262
15263
15264
15265
15266
15267
15268
15269
15270
15271
15272
15273
15274
15275
15276
15277
15278
15279
15280
15281
15282
15283
15284
15285
15286
15287
15288
15289
15290
15291
15292
15293
15294
15295
15296
15297
15298
15299
15300
15301
15302
15303
15304
15305
15306
15307
15308
15309
15310
15311
15312
15313
15314
15315
15316
15317
15318
15319
15320
15321
15322
15323
15324
15325
15326
15327
15328
15329
15330
15331
15332
15333
15334
15335
15336
15337
15338
15339
15340
15341
15342
15343
15344
15345
15346
15347
15348
15349
15350
15351
15352
15353
15354
15355
15356
15357
15358
15359
15360
15361
15362
15363
15364
15365
15366
15367
15368
15369
15370
15371
15372
15373
15374
15375
15376
15377
15378
15379
15380
15381
15382
15383
15384
15385
15386
15387
15388
15389
15390
15391
15392
15393
15394
15395
15396
15397
15398
15399
15400
15401
15402
15403
15404
15405
15406
15407
15408
15409
15410
15411
15412
15413
15414
15415
15416
15417
15418
15419
15420
15421
15422
15423
15424
15425
15426
15427
15428
15429
15430
15431
15432
15433
15434
15435
15436
15437
15438
15439
15440
15441
15442
15443
15444
15445
15446
15447
15448
15449
15450
15451
15452
15453
15454
15455
15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
15468
15469
15470
15471
15472
15473
15474
15475
15476
15477
15478
15479
15480
15481
15482
15483
15484
15485
15486
15487
15488
15489
15490
15491
15492
15493
15494
15495
15496
15497
15498
15499
15500
15501
15502
15503
15504
15505
15506
15507
15508
15509
15510
15511
15512
15513
15514
15515
15516
15517
15518
15519
15520
15521
15522
15523
15524
15525
15526
15527
15528
15529
15530
15531
15532
15533
15534
15535
15536
15537
15538
15539
15540
15541
15542
15543
15544
15545
15546
15547
15548
15549
15550
15551
15552
15553
15554
15555
15556
15557
15558
15559
15560
15561
15562
15563
15564
15565
15566
15567
15568
15569
15570
15571
15572
15573
15574
15575
15576
15577
15578
15579
15580
15581
15582
15583
15584
15585
15586
15587
15588
15589
15590
15591
15592
15593
15594
15595
15596
15597
15598
15599
15600
15601
15602
15603
15604
15605
15606
15607
15608
15609
15610
15611
15612
15613
15614
15615
15616
15617
15618
15619
15620
15621
15622
15623
15624
15625
15626
15627
15628
15629
15630
15631
15632
15633
15634
15635
15636
15637
15638
15639
15640
15641
15642
15643
15644
15645
15646
15647
15648
15649
15650
15651
15652
15653
15654
15655
15656
15657
15658
15659
15660
15661
15662
15663
15664
15665
15666
15667
15668
15669
15670
15671
15672
15673
15674
15675
15676
15677
15678
15679
15680
15681
15682
15683
15684
15685
15686
15687
15688
15689
15690
15691
15692
15693
15694
15695
15696
15697
15698
15699
15700
15701
15702
15703
15704
15705
15706
15707
15708
15709
15710
15711
15712
15713
15714
15715
15716
15717
15718
15719
15720
15721
15722
15723
15724
15725
15726
15727
15728
15729
15730
15731
15732
15733
15734
15735
15736
15737
15738
15739
15740
15741
15742
15743
15744
15745
15746
15747
15748
15749
15750
15751
15752
15753
15754
15755
15756
15757
15758
15759
15760
15761
15762
15763
15764
15765
15766
15767
15768
15769
15770
15771
15772
15773
15774
15775
15776
15777
15778
15779
15780
15781
15782
15783
15784
15785
15786
15787
15788
15789
15790
15791
15792
15793
15794
15795
15796
15797
15798
15799
15800
15801
15802
15803
15804
15805
15806
15807
15808
15809
15810
15811
15812
15813
15814
15815
15816
15817
15818
15819
15820
15821
15822
15823
15824
15825
15826
15827
15828
15829
15830
15831
15832
15833
15834
15835
15836
15837
15838
15839
15840
15841
15842
15843
15844
15845
15846
15847
15848
15849
15850
15851
15852
15853
15854
15855
15856
15857
15858
15859
15860
15861
15862
15863
15864
15865
15866
15867
15868
15869
15870
15871
15872
15873
15874
15875
15876
15877
15878
15879
15880
15881
15882
15883
15884
15885
15886
15887
15888
15889
15890
15891
15892
15893
15894
15895
15896
15897
15898
15899
15900
15901
15902
15903
15904
15905
15906
15907
15908
15909
15910
15911
15912
15913
15914
15915
15916
15917
15918
15919
15920
15921
15922
15923
15924
15925
15926
15927
15928
15929
15930
15931
15932
15933
15934
15935
15936
15937
15938
15939
15940
15941
15942
15943
15944
15945
15946
15947
15948
15949
15950
15951
15952
15953
15954
15955
15956
15957
15958
15959
15960
15961
15962
15963
15964
15965
15966
15967
15968
15969
15970
15971
15972
15973
15974
15975
15976
15977
15978
15979
15980
15981
15982
15983
15984
15985
15986
15987
15988
15989
15990
15991
15992
15993
15994
15995
15996
15997
15998
15999
16000
16001
16002
16003
16004
16005
16006
16007
16008
16009
16010
16011
16012
16013
16014
16015
16016
16017
16018
16019
16020
16021
16022
16023
16024
16025
16026
16027
16028
16029
16030
16031
16032
16033
16034
16035
16036
16037
16038
16039
16040
16041
16042
16043
16044
16045
16046
16047
16048
16049
16050
16051
16052
16053
16054
16055
16056
16057
16058
16059
16060
16061
16062
16063
16064
16065
16066
16067
16068
16069
16070
16071
16072
16073
16074
16075
16076
16077
16078
16079
16080
16081
16082
16083
16084
16085
16086
16087
16088
16089
16090
16091
16092
16093
16094
16095
16096
16097
16098
16099
16100
16101
16102
16103
16104
16105
16106
16107
16108
16109
16110
16111
16112
16113
16114
16115
16116
16117
16118
16119
16120
16121
16122
16123
16124
16125
16126
16127
16128
16129
16130
16131
16132
16133
16134
16135
16136
16137
16138
16139
16140
16141
16142
16143
16144
16145
16146
16147
16148
16149
16150
16151
16152
16153
16154
16155
16156
16157
16158
16159
16160
16161
16162
16163
16164
16165
16166
16167
16168
16169
16170
16171
16172
16173
16174
16175
16176
16177
16178
16179
16180
16181
16182
16183
16184
16185
16186
16187
16188
16189
16190
16191
16192
16193
16194
16195
16196
16197
16198
16199
16200
16201
16202
16203
16204
16205
16206
16207
16208
16209
16210
16211
16212
16213
16214
16215
16216
16217
16218
16219
16220
16221
16222
16223
16224
16225
16226
16227
16228
16229
16230
16231
16232
16233
16234
16235
16236
16237
16238
16239
16240
16241
16242
16243
16244
16245
16246
16247
16248
16249
16250
16251
16252
16253
16254
16255
16256
16257
16258
16259
16260
16261
16262
16263
16264
16265
16266
16267
16268
16269
16270
16271
16272
16273
16274
16275
16276
16277
16278
16279
16280
16281
16282
16283
16284
16285
16286
16287
16288
16289
16290
16291
16292
16293
16294
16295
16296
16297
16298
16299
16300
16301
16302
16303
16304
16305
16306
16307
16308
16309
16310
16311
16312
16313
16314
16315
16316
16317
16318
16319
16320
16321
16322
16323
16324
16325
16326
16327
16328
16329
16330
16331
16332
16333
16334
16335
16336
16337
16338
16339
16340
16341
16342
16343
16344
16345
16346
16347
16348
16349
16350
16351
16352
16353
16354
16355
16356
16357
16358
16359
16360
16361
16362
16363
16364
16365
16366
16367
16368
16369
16370
16371
16372
16373
16374
16375
16376
16377
16378
16379
16380
16381
16382
16383
16384
16385
16386
16387
16388
16389
16390
16391
16392
16393
16394
16395
16396
16397
16398
16399
16400
16401
16402
16403
16404
16405
16406
16407
16408
16409
16410
16411
16412
#	
# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
# libdap version 3.20.11
#

2022-07-19  ndp-opendap  <ndp@opendap.org>

	Fixed bug in computation of request_size_kb()

2022-07-09  Nathan Potter  <ndp@opendap.org>

	Fixing type issue in HTTPCache.cc (#192)

2022-07-01  ndp-opendap  <ndp@opendap.org>

	Adding DOI to README.md [skip ci]

	Updating LIBDAP_TRAVIS_BUILD_OFFSET to 1018 for re;ease 3.20.10

	Preparing release 3.20.10, Hyrax-1.16.6

#	
# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
# libdap version 3.20.10
#

2022-06-27  James Gallagher  <jgallagher@opendap.org>

	Rhel 8 tirpc (#191)
	Added a test for the correct configuration of tirpc on rhel 8
	Added more messages to OX_RHEL8_TIRPC macro

2022-06-20  James Gallagher  <jgallagher@opendap.org>

	Replaced instances of &vector[0] with vector.data() (#190)
	There are two cases where the pattern was used with strings
	where .data() won't work and is not needed (working with char[]
	and whre &char[0] will always work).

2022-06-14  ndp-opendap  <ndp@opendap.org>

	Trigger TravisCI

2022-05-24  James Gallagher  <jgallagher@opendap.org>

	Removed extra header (#189)

2022-05-09  James Gallagher  <jgallagher@opendap.org>

	Fix Constructor::read() (#188)
	Fix Constructor::read()

2022-04-27  James Gallagher  <jgallagher@opendap.org>

	Constructor refactor (#187)
	Constructor refactor

2022-04-26  James Gallagher  <jgallagher@opendap.org>

	Fixed some warnings about bind2nd(), etc. (#186)
	Fixed some warnings about bind2nd(), etc.

2022-03-10  James Gallagher  <jgallagher@opendap.org>

	Edit to README - trigger a travis build

2022-03-09  James Gallagher  <jgallagher@opendap.org>

	Fix for for the last merge that only shows up in the bes (#185)
	The ServerFunctionList was flagged by sonarscan but my fix contained a logic flaw.
	The libdap tests didn't uncover that, but tests in the BES did. This fixes the logic flaw.

	a small set of improvements (#184)

2022-03-08  James Gallagher  <jgallagher@opendap.org>

	Fixed memory issues in the client-side cache in libdap (#183)
	Fixed memory issues in the client-side cache in libdap

2022-03-04  James Gallagher  <jgallagher@opendap.org>

	Unit test improvement (#182)
	Modified unit-tests so they all use a template for main()
	This reduces the code by 52 tests times 40 lines of code or
	about 2k LOC. It also fixes many small errors that crept into
	the tests as various parts were copied incorrectly or mistakenly
	edited.

2022-02-21  James Gallagher  <jgallagher@opendap.org>
	    Kodi N  <kneumiller@opendap.org>
	    James Gallager  <jgallager@opendap.org>

	Leak fixes (#181)
	Fixed an issue in Vector where assignment leaked d_proto.
	If the destination Vector already had an object pointer assigned
	to d_proto then both operator=() and the copy ctor would leak
	that pointer.
	Minor changes to marshT and Array.cc

2022-02-18  James Gallagher  <jgallagher@opendap.org>

	One more version. (#180)

2022-02-18  kyang2014  <kyang2014@users.noreply.github.com>

	Merge pull request #179 from OPENDAP/d4a-erase-lkeak-fix
	Fixed the leak I hope...

2022-02-18  James Gallagher  <jgallagher@opendap.org>

	New new version of erase.
	Also some more hacking for leak detection

2022-02-17  James Gallagher  <jgallagher@opendap.org>

	Added some notes about leak detection in unit-tests/Makefile.am
	I also changed how two of the tests are built, so they link with
	the static archive since this seems to cause the linker to choose
	the locally-built library (where linking dynamically did not).

	Addressed a 'code smell'

	Fixed the leak I hope...

2022-02-16  James Gallagher  <jgallagher@opendap.org>

	Added an erase method to D4Attributes (#178)
	Added an erase method to D4Attributes
	Switched from explicit for-loop to erase(remove_if())
	Added the algorithm header to D4Attributes.cc

	Fixed all the remaining operator=() implementations (#177)

	Removed commented code [skip ci]

	Fixed the issue with operator=() reported by sonar scan (#176)

2022-02-15  James Gallagher  <jgallagher@opendap.org>

	Fix for libdap4 github issue 147:  Grid::get_map_iter() was off by one (#175)
	Fix for libdap4 github issue 147:  Grid::get_map_iter() was off by one
	Added tests for the affected method as well as some related methods in Grid.

2022-02-13  James Gallagher  <jgallagher@opendap.org>

	Dds dmr refactor (#171)
	I refactored DDS and DMR to remove old code and provide better iterator access
	DDS: New way of accessing the 'vars' vector makes range-based for
	loops possible.
	I removed old code that was excluded with the pre processor.
	Old code n configure.ac was removed.
	Now DAP4 builds by default and the only form of the DDX that is supported
	is the 3.2 version
	Added tests for the new DDS::variables() method that returns a const & to vars.

2022-02-11  James Gallagher  <jgallagher@opendap.org>

	Added caching and a wait for the quality gate test (#174)

	Removed excess lines in README.md and triggered a master build

	New way of implementing assignment should avoid slicing (#173)
	* New way of implementing assignment should avoid slicing
	* Comments editing and unused code removed
	[skip ci]

2022-02-10  James Gallagher  <jgallagher@opendap.org>

	Build libdap RPMs on CentOS-Stream8 (#172)
	Build libdap RPMs on CentOS-Stream8
	Removed the github workflows - no sense using their machines

2022-02-04  James Gallagher  <jgallagher@opendap.org>

	Fixed an error in the recent fix for inverted array index values
	In DAP2 we changed array slicing so that [*] means all values of
	the array. In the code, we replace the * with stop value of -1 so that
	syntax like [7:*] can be used to get all the values from i position
	7 to the end of the dimension for a particular array. The stop == -1 was
	breaking the fix I added to test if start is > stop. I hacked a change
	in to special case the -1 vaule of stop. A better approach would be
	to handle this in the parser to read the end value of the dimension,
	but we don't have that information handy in the DAP2 parser (the DAP4
	parser is much better about this sort of thing).

	Fix HYRAX-540 - array index values where start is > stop break the server (#170)
	Fixed ticket https://bugs.earthdata.nasa.gov/browse/HYRAX-540 for DAP2 and DAP4
	Other fixes in this PR:
	The DAP4 ce parser was accepting negative array indices; fixed.
	Removed auto_ptr vestiges
	Fix for parallel clean issue in distclean
	Added tests for the DAP2 and DAP4 fix for inverted index values.
#	
# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
# libdap version 3.20.9
#

2021-12-17  ndp-opendap  <ndp@opendap.org>

	Merge branch 'master' of https://github.com/OPENDAP/libdap4

	Triggering TravisCI build

2021-12-09  James Gallagher  <jgallagher@opendap.org>

	Reverse the switch to C++11 regex - now a comp time option (#167)

2021-12-03  James Gallagher  <jgallagher@opendap.org>

	Fixed for automake 1.16

	Added rm -rf dods_cache back to Makefile
	Not sure why that's needed, however.

	unit-tests/cache-testsuite cleanup.sh failing again

	Regex fix (#166)
	Reworked Regex class (in GNU/GNURegex.h/.cc)
	Also some other fixes from sonar scan suggestions and
	a fix to getdap4. These should have go in on their own
	branch, but wound up here.
	To improve performance, added 'const' to some of the Regex instances
	so they will be constructed (and the regex compiled) only once.

2021-11-24  James Gallagher  <jgallagher@opendap.org>

	build_btp_args() fix

	Removed code smells (#165)

2021-11-23  James Gallagher  <jgallagher@opendap.org>

	Dump auto ptr (#164)
	Time to remove the old auto_ptr code
	Also removed bind2nd and ptr_fun from D4Group and
	replaced it with a lambda. In C++-17, bind2nd goes away.
	Also includes a fix for distcheck on automake 1.16

	Removed unsupported options from getdap4, replaced GetOpt with getopt (#163)
	Also reformatted the help.

2021-11-04  Nathan Potter  <ndp@opendap.org>

	Added build number to configure call in libdap.spec.in (#161)

2021-11-01  ndp-opendap  <ndp@opendap.org>

	Restoring previous TravisCI stage order

2021-10-29  ndp-opendap  <ndp@opendap.org>

	Merge branch 'master' of https://github.com/OPENDAP/libdap4

	This might be the one... looks like sonar s working for real."

	This might be the one...

	More with sonar scan coverage issues

	More with sonar scan coverage issues

	More with sonar scan coverage issues

	More with sonar scan coverage issues

	More with sonar scan coverage issues

	Returned CI to mominal stage order.

	Working on getting the coverage files into the sonar system

	Working on getting the coverage files into the sonar system

	Trying to ammend sonar properties

	Trying to ammend sonar properties

	Trying to ammend sonar properties

	Trying to ammend sonar properties

	Trying to ammend sonar properties

2021-10-28  ndp-opendap  <ndp@opendap.org>

	Debugging scan stage

	Enable scan stage

	Enable scan stage

	Reenabling full build

	Switched libdap_version() to CVER. release-buildnum

	Probing Package_Version

	Debugging RPM build.

2021-10-27  James Gallagher  <jgallagher@opendap.org>

	new credentials (#159)
	New encrypted credentials for AWS

	Moved the [[deprecated]] annotations into the doxygen comments (#160)
	Moved the [[deprecated]] annotations into the doxygen comments
	Adding C++-14 features to our code makes for many warnings
	which hides errors.
	Add login for docker hub

2021-10-20  The-Robot-Travis  <npotter@opendap.org>

	Removed [[deprecated ...]] from headers - it's fine in the .cc files
	[skip ci]

2021-09-17  James Gallagher  <jgallagher@opendap.org>

	Spelling fixes in configure.ac
	[skip ci]

2021-09-16  dh-opendap  <dholloway@opendap.org>

	skip ci

2021-09-15  dh-opendap  <dholloway@opendap.org>

	Updated on 2021-09-15
	
# libdap version 3.20.9

2021-08-18  ndp-opendap  <ndp@opendap.org>

	Merge branch 'master' of https://github.com/OPENDAP/libdap4

	Added travis-ci-opendap token

2021-08-12  James Gallagher  <jgallagher@opendap.org>

	Modified Error so that it is more in line with C++11 (#158)
	This is a test for similar changes that we should make in the BES

	Co-authored-by: The-Robot-Travis <npotter@opendap.org>

2021-07-22  The-Robot-Travis  <npotter@opendap.org>

	Removed generated grammar files from CMakeLists.txt
	[skip ci]

	Make CMakeLists.txt use dirs conditionally
	[skip ci]

2021-06-22  ndp-opendap  <ndp@opendap.org>

	Disambiguation of the pooorly overloaded set_response_limit() methods in DDS and DMR to set_response_limit_kb()

2021-06-21  Nathan Potter  <ndp@opendap.org>

	Added (shallow) unit64_t request size computations and max_request_size state. (#156)
	* Added (shallow) Int64 request computations and max_regquest_size state.

	* Added include for <cstdint> as needed.

	* Added -std=c++11 / -std=gnu++11 as reasonable,

	* TWeking -std=c+11 flag production

	* More with the CXX11_FLAG fiddles

	* More with the CXX11_FLAG fiddles

	* More with the CXX11_FLAG fiddles

	* More with the CXX11_FLAG fiddles

	* More with the CXX11_FLAG fiddles

	* More with the CXX11_FLAG fiddles

	* - Changed the internal representation of max response size
	  to uint64_t and confined the overflow to just the
	  (deprecated) functions

	* Docs updated

	* Small errors fixed.

	* COnst and comments

	* Dropping const reference and adding comments.

2021-06-21  James Gallagher  <jgallagher@opendap.org>

	Add support for includes prefixed with 'libdap' (#157)
	Add support for includes prefixed with 'libdap'

	This fix enables code like #include <libdap/Array.h> which
	will fix the issue where Array.h clashes with C++-11's 'array.h'
	that differs in case only (and triggers warnings in IDEs
	making using them tedious. It will also pave the way for code
	that uses two different libraries' headers.

	Co-authored-by: The-Robot-Travis <npotter@opendap.org>

2021-05-20  James Gallagher  <jgallagher@opendap.org>

	Actions test (#153)
	Update the main.yml workflow.

	* Use multi-repo checkout@v2 action
	* Bump Ubuntu version to 20.04, added apt-get packages needed for Ubuntu 20
	* A better way to handle changes in the dependencies: use the hashFiles() function. This
	way any change in the dependencies version will trigger a rebuild.
	* All but the main workflow now in 'unused' folder. We need to get the hyrax-deps, libdap4,
	bes, hyrax-docker chain sorted before we start using the pipeline for real.

2021-05-18  James Gallagher  <jgallagher@opendap.org>

	Switch to bionic (#155)
	Fix failed distcheck target

	Merge branch 'master' of https://github.com/OPENDAP/libdap4

	trigger a test build

2021-05-14  ndp-opendap  <ndp@opendap.org>

	Added the built files libdap.spec and libdap_VERSION to .gitignore

2021-05-08  The-Robot-Travis  <npotter@opendap.org>

	Trying to fix libdap4 trigger of BES build.

	Triggering CI build.

2021-05-07  Nathan Potter  <ndp@opendap.org>

	This adds a -S switch that when used (#154)
	in conjunction with the -d (print DMR) switch will
	compute the size of the data reoresented by the DMR and print out that value.

	Co-authored-by: The-Robot-Travis <npotter@opendap.org>

2021-05-06  The-Robot-Travis  <npotter@opendap.org>

	Added a description of the build-number scheme to trigger-bes-build.sh
	[skip ci]

2021-05-05  The-Robot-Travis  <npotter@opendap.org>

	Travis.yml now uses libdap_VERSION

	Updated the trigger_bes_build.sh script

	VERSION is version on OSX and that's an issue for the 11.3.1 compier
	Fixed: VESION.in --> libdap_VERSION.in

2021-03-29  James Gallagher  <jgallagher@opendap.org>

	Only trigger the BES build for master, not for PRs (#152)
	Only trigger the BES build for master, not for PRs

2021-03-24  The-Robot-Travis  <npotter@opendap.org>

	Adding build numer to bes trgger

2021-03-23  James Gallagher  <jgallagher@opendap.org>

	Build number option (#151)
	Modify the build so that the source and rpm distributions include build numbers

	We've adopted a x.y.z-build version/build number scheme. Automate that so that
	the build number part of the version/build number is incremented automatically
	with every build of the master branch. To do this, I added a file name VERSION
	that holds the number, a new option -with-build to the configure script and mods
	to the .travis.yml, build-rpm.sh, and Makefile.am files.

2021-03-12  kyang2014  <kyang2014@users.noreply.github.com>

	HK-726, Don't make DAP4 empty container attribute fail. (#150)
	* HK-726, Don't make DAP4 empty container attribute fail.

	* HK-726, edit the comments to make the github check pass.

2021-03-11  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4

	Modified main.yml workflow to use updated $PATH

2021-03-10  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/OPENDAP/libdap4

	Removed special invokation of HttpConnectTest [skip ci]

2021-03-10  The-Robot-Travis  <npotter@opendap.org>

	Again, names

	Fixed incorrect stage name [skip ci]

	Added names to travis stages.

	Adding an after_deploy trigger to build the BES

2021-03-04  ndp-opendap  <ndp@opendap.org>

	Rewind

	Merge branch 'master' of https://github.com/opendap/libdap4

	Bump for ci

2021-03-01  James Gallagher  <jgallagher@opendap.org>

	Minor change to the main GH workflow - removed some debugging code.
	Thsi will also serve to force the Travis CI/CD system to build
	new deployments, which we need since hyrax-dependencies has just
	been updated.

2021-02-23  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #149 from OPENDAP/HK-724
	Hk 724

2021-02-23  Kent Yang  <myang6@hdfgroup.org>

	Merge branch 'HK-724' of https://github.com/opendap/libdap4 into HK-724

	The memory for the string object allocated by build_typed_instance in expr.h needs to be released.

2021-02-23  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #148 from OPENDAP/HK-724
	HYRAX-315,HK-724, add a boolean flag that indicates if the DAP4 expre…

	Remvoed Debian package build; added const qualifier back to get_ce_empty().

	Debugging the Travis build - removed const from DMR::get_ce_empty()

2021-02-23  Kent Yang  <myang6@hdfgroup.org>

	Add another empty line. Another try for pull request to make travis check go through

2021-02-22  Kent Yang  <myang6@hdfgroup.org>

	HK-724,HYRAX-316, the check at github somehow doesn't get passed. Add an empty line to see if this is an incident.

	HK-724,HYRAX-316, add a const for get_ce_empty() function.

	HYRAX-315,HK-724, add a boolean flag that indicates if the DAP4 expression constriant is empty in DMR. Add/update relevant methods

2021-01-28  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #146 from OPENDAP/actions-test
	Actions test

	Removed debugging from centos 7 rpm workflow

	Removed som eleftover debugging from the workflows. Added upload of the source distribution.

	Added a seconf 'check' target to run HTTPConnectTest in debug mode
	I'm tracking down an error that has appeared in code that has not
	changed in 16 years and happens only sporadically. The errors may
	be in Travis itself since our GH Action CI builds don't show any
	of these issues. But, it's a poor carpenter that blames tools.

2021-01-27  James Gallagher  <jgallagher@opendap.org>

	Hacked check target.

	Merge pull request #144 from OPENDAP/debug-http-test
	Debug http test

	Force HTTPConnectTGest to build before running check-local

	Why does HTTPConnectTest.cc fail on travis?

	Merge branch 'master' of https://github.com/opendap/libdap4

	Merge pull request #143 from OPENDAP/feature/test-buildout
	Feature/test buildout

	Merge pull request #141 from OPENDAP/configure-coverage-fix
	Added test to --enable-coverage to see if gcov is present.

2021-01-26  blackone-sudo  <ogieeweka007@gmail.com>

	workflow clean up before merge to master

	update source dist package

	update source dist package

2021-01-25  blackone-sudo  <ogieeweka007@gmail.com>

	change s3 cred

	change s3 cred

	change s3 cred

	change s3 cred

	change s3 cred

	change s3 cred

	branch clean up

2021-01-22  blackone-sudo  <ogieeweka007@gmail.com>

	current commit working

2021-01-11  ndp-opendap  <ndp@opendap.org>

	Fixed HttpConnectTest by adding new etag for test-304.html

2020-12-29  ndp-opendap  <ndp@opendap.org>

	Added libdap-3.20.7 DOI to README.md [skip ci]

2020-12-29  James Gallagher  <jgallagher@opendap.org>

	Added test to --enable-coverage to see if gcov is present.

2020-12-29  ndp-opendap  <ndp@opendap.org>

	Changing REVSION and resetting AGE

	Updating for release of libdap-3.20.7

2020-12-18  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4

	Fixed a comment on the --emable-coverage configure option
	Also added a gcovr report.
	[skip ci]

	Merge pull request #140 from OPENDAP/code-coverage
	Report now built using gcovr, and a small syntax fix

	Report now built using gcovr, and a small syntax fix
	The gcovr report might show different detatils than the reports
	from sonarscan.

2020-12-16  blackone-sudo  <ogieeweka007@gmail.com>

	Merge branch 'actions-test' of https://github.com/OPENDAP/libdap4 into feature/test-buildout

2020-12-16  James Gallagher  <jgallagher@opendap.org>

	Added caching to the centos 7 docker build

	Syntax error fixed

	Added caching of the bison build

2020-12-15  James Gallagher  <jgallagher@opendap.org>

	Fixed syntax error in the build.yml

	Build the bison dependency

2020-12-01  James Gallagher  <jgallagher@opendap.org>

	Syntax fix

	Try building hyrax-deps and then libdap4

	Fixed name of action build env from 'xenial' to '16.04'

	Switched to ubuntu xenial from latest

	Travis should now package the code
	Added a CMakeLists.txt to keep CLion from complaining.
	Moved the error buffer libcurl call so it's run before
	all of the setopt calls.

	Reorder code to see if that placates sonarscan

	Merge pull request #139 from OPENDAP/curl-init-fix
	Fixed an issue with curl_easy_init

	Fixed an issue with curl_easy_init

	Merge pull request #138 from OPENDAP/enable-coverage
	Enable coverage

	Fixed an issue. Coverage computed and gcovr working. Not SonarScan
	No idea why sonarscan is not working. However, we get a report and
	maybe codecov will come to the rescue.

	Added coverage collection to the scan step
	Not doing anything with the coverage data, however

	Updated to hopefully work on Ubuntu. Works on OSX

	Working on teh odd segmentation fault on Ubuntu

	limit this branch travis build to a scan

	Try Ubuntu focal

	Try Ubuntu bionic

	Drop back to xenail - Maybe this will fix the missing FlexLexer.h issue

	Try turning off virtual memory randomization

	Let's try bionic, using acontainer

	Try gcovr ...

	Try removing the second 'addons' section to squash the missing cppunit bug

	Arrrgh bionic won't work with the flex/bison versions we use

	Coverage working using gcovr to process the gcov files.

	Next step is to get SonarScan to use the gcovr report.

	More work on gcovr - now it's excluding the test code

	Now the gcov reports might be used by sonarscan

	They are copied to a single directory and the sonarscan tool
	is configured to look there for the reports.

	Started adding support for

	Another fix for the coverage files

	Both cp and mv won't copy files on top of other files in the same
	command (so --force and --backup won't help). I suppressed copying
	the stack.hh.gcov, etc., files from the d4_ce and d4_function
	directory. The mv/cp commands were failing and thus so was the build.

	Set the sonar.coverage.jacoco.xmlReportPaths prop to gcov-reports

	Another try at getting the coverage reports to work.

	Remove ls -lR as it doesn't seem to be doing much.

	We have coverage data, but it's not getting into sonarcloud.
	Time for user support.

	Edited travis.yml coverage lines - cleaned up old comments

	Fixed coverage so there's no error?

2020-11-29  James Gallagher  <jgallagher@opendap.org>

	Fix the osx/brew good - no sudo

	Fix the build.yml actions workflow

	Fix to the osx and ubuntu builds using github actions

2020-11-28  James Gallagher  <jgallagher@opendap.org>

	Update to build.yml action

	Change the github actions build file. Include CentOS7.

2020-11-18  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' into enable-coverage
	 Conflicts:
		Makefile.am
		d4_ce/Makefile.am
		d4_function/Makefile.am

	Removed tests and unit-tests from the coverge collection target

2020-11-18  James Gallagher  <jimg@localhost.localdomain>

	Added better 'coverage' target that will recurse
	It's a little rough, but it works OK.

	Added coverage.mk file

2020-11-17  James Gallagher  <jimg@localhost.localdomain>

	Coverage data collected, but no gcov files
	The recursive gcov/coverage rule doesn't work correctly

2020-11-13  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #136 from OPENDAP/sonarscan-test
	If the SonarScan Quality gate fails, fail the PR

	Merge pull request #137 from OPENDAP/distcheck-fix
	fix for distcheck on autoconf 2.69

	fix for distcheck on autoconf 2.69

	If the SonarScan Quality gate fails, fail the PR

	Merge pull request #135 from OPENDAP/d4dimension-size-fix
	Changed the size of a D4Dimension 'size' to unsigned long long

2020-11-12  James Gallagher  <jgallagher@opendap.org>

	Changed the size of a D4Dimension 'size' to unsigned long long
	size_t can vary between 16 and 64 bits, long long has to be
	64 bits.

	Merge pull request #134 from OPENDAP/vector-string-fix
	Fixed the set_vector() method

	Fixed the set_vector() method
	I introduced a fix that was based on a missunderstanding
	of the code. This backs that change out.

2020-11-06  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #132 from OPENDAP/vector-string-fix
	Back-out the bad Vector of string mistake

	Merge branch 'vector-string-fix' of https://github.com/opendap/libdap4 into vector-string-fix

	Back-out the bad Vector of string mistake

	Backout the bad Vector or string mistake

2020-11-02  James Gallagher  <jgallagher@opendap.org>

	Fixed the build-gh-pages.sh script.
	[skip-ci]

	Added new docs

	Merge pull request #130 from OPENDAP/string_vector_bug
	String vector bug

	Merge pull request #129 from OPENDAP/switch-to-xenial
	Changed .travis.yml to use xenial (from trusty)

	Updated this branch. I think it's ready for a merge.

	Merge branch 'master' into string_vector_bug

	Changed .travis.yml to use xenial (from trusty)

2020-10-25  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #121 from OPENDAP/sonarcloud-suggestions
	Sonarcloud suggestions

	Merge pull request #128 from OPENDAP/remove-c6
	Removed the CentOS 6 build from .travis.yml

2020-10-23  James Gallagher  <jgallagher@opendap.org>

	Removed the CentOS 6 build from .travis.yml

2020-09-27  ndp-opendap  <ndp@opendap.org>

	Fixed bug in string handling in Vector

2020-09-23  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #126 from OPENDAP/error-fix
	Fixed an issue in Error

	Fixed an issue in Error
	The what() method was returning a pointer to a temporary object.

2020-08-31  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #125 from OPENDAP/configure-fix
	Complete revert of configure.ac to the old xml config code

	Complete revert of configure.ac to the old xml config code

2020-08-28  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #124 from OPENDAP/configure-fix
	Fix for pkg-config code for libxml2

	Fix for pkg-config code for libxml2

2020-08-26  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' into sonarcloud-suggestions

	Fix for CentOS 6
	Shell scripts with empty 'then' clauses fail with whatever bash
	version is part of CentOS 6.

	Better support for CLion so it can find functions

2020-08-25  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #122 from OPENDAP/xml2-lib-build-fix
	Added better support for libxml2 in configure

	Fix for linux and xml2/configure

	Added better support for libxml2 in configure

2020-07-24  James Gallagher  <jgallagher@opendap.org>

	REmove assert from InternalErr::operator=()

	more fixes

2020-07-23  James Gallagher  <jgallagher@opendap.org>

	Added dtor and op= to D4EnumDef

2020-07-22  James Gallagher  <jgallagher@opendap.org>

	Fixes to enable configure --enable-coverage. Does not work on OSX.

2020-07-15  James Gallagher  <jgallagher@opendap.org>

	added autoreconf

	Create c-cpp.yml

2020-07-07  James Gallagher  <jgallagher@opendap.org>

	Typo in error message.
	[skip ci]

2020-06-30  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #120 from OPENDAP/errors-with-line-nums
	Added file/line info to the libdap::Error class

2020-06-17  James Gallagher  <jgallagher@opendap.org>

	Added file/line info to the libdap::Error class

2020-05-29  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #119 from OPENDAP/chunk-header-fix
	Chunk header fix

	Based on info from Dennis Heimbigner, fixed the DAP4 chunked I/O Stream
	I was sendng the chunk header bytes in host byte-order and not
	network byte order.

2020-05-18  James Gallagher  <jgallagher@opendap.org>

	Comment fix

2020-05-17  James Gallagher  <jgallagher@opendap.org>

	Adopt network byte order for the chunk header

2020-05-06  kyang2014  <kyang2014@users.noreply.github.com>

	Merge pull request #117 from OPENDAP/hk-638
	HK-638, add the buf2val function for 64-bit integer.

2020-05-06  Muqun Yang  <myang6@hdfgroup.org>

	HK-638, add the buf2val function for 64-bit integer.

2020-04-21  ndp-opendap  <ndp@opendap.org>

	Added release DOI to README.md, did some formatting. [skip ci]

	Make release 3.20.6

2020-04-16  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #115 from OPENDAP/error-msg-fix
	Error msg fix

2020-04-15  James Gallagher  <jgallagher@opendap.org>

	Test baselines for ce parser message fixes
	And a few more fixes to the messages.

	Added tests for the DAP4 CE parser error messages

	Added tests for the parser error messages.

2020-04-14  James Gallagher  <jgallagher@opendap.org>

	Additional work on the DAP4 function parser.

	Changes to the CE parser to address a xss attack.

2020-04-04  James Gallagher  <jgallagher@opendap.org>

	Fixed a mistake in an error message in configure.ac
	[skip ci]

2020-02-16  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #113 from OPENDAP/sonarscan-fix
	Fix for travis and sonarscan based on travis support email

2020-02-15  James Gallagher  <jgallagher@opendap.org>

	Fix for travis and sonarscan based on travis support email

2020-02-14  James Gallagher  <jgallagher@opendap.org>

	Fixed CentOS6 pre std=c++0x issues.

	Merge branch 'master' of https://github.com/opendap/libdap4

	Swapped out unique_ptr for auto_ptr because of CentOS6 build fail
	This problem is exacerbated by flex 2.5.35 which fails to build code
	that will compile on C6 using --std=c++0x.

2020-02-13  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #112 from OPENDAP/parser-util-fix
	Switched to faster functions for CE and Attribute value checking.

	Switched to faster functions for CE and Attribute value checking.

	Added README.md to EXTRA_DIST

	Changes that address (I think) issues with the recent rename of README to README.md
	I'm pushing this directly onto master because the CI build on a PR branch
	did not show the issues.

	Merge pull request #111 from OPENDAP/readme-rename
	Renamed README to README.md

2020-02-12  James Gallagher  <jgallagher@opendap.org>

	Added README.md; removed scan from build to test issues with said scan

	Renamed README to README.md
	Also trying to debug the sonarscan issue where travis cannot find
	executable.

	Revert "Merge pull request #109 from OPENDAP/cppunit-build-fix"
	This reverts commit 3f07795a1e6e228802321797728209fce5ee4962, reversing
	changes made to f4672a3fc673ad6e330cad00254bfb813865f8bd.

	Revert "Merge pull request #107 from OPENDAP/cppunit-build-fix"
	This reverts commit 3f07795a1e6e228802321797728209fce5ee4962, reversing
	changes made to f4672a3fc673ad6e330cad00254bfb813865f8bd.

	Merge pull request #109 from OPENDAP/cppunit-build-fix
	This change to configure.ac fixes the build for cppunit 1.14.0

	Merge pull request #108 from OPENDAP/natural_axes
	Natural axes #1

2020-02-11  James Gallagher  <jgallagher@opendap.org>

	Suppres include of unistd.h by the flex sources
	This is an attempt to fix a c++-11 build issue on linux with modern gcc
	versions.

	This change to configure.ac fixes the build for cppunit 1.14.0
	The fix instructs the compiler to use --std=c++-11 or c++-0x which
	enables cpp 1.14.0's use of std::bind.

	Removed geo/Makefile from configure.ac

	Removed geo from SUBDIRS in Makefile.am

	Added #include <memory> for unique_ptr and removed geo includes

	Removed %define api.parser.class from the two DAP4 CE parsers
	This broke bison on Linux

	Merge branch 'master' into natural_axes

	Completed fixes for the DAP2 CE parser refactor.
	I cannot figure out how to make UInt32 the default type for integer
	constants for function arguments. I dropped back to Int32s by default.
	I think this means that if functions are called with args that have
	to be held in UInt32s, those function calls will not work.

2020-02-10  James Gallagher  <jgallagher@opendap.org>

	Fixed broken parse of [*] in an array/grid projection
	The parser was setting the projection to -1:1:-1 when t should have
	set it to 0:1:-1. Also fixed the broken expr-test debug feature.

	ce_expr.yy now handles projections and selections using 'value'
	This code removes the value struct from the ce_expr parser
	and improves processing selection expressions by removing
	unneeded casting operations that were, in some cases, breaking
	valid CEs (because negative values were 'floored' to zero when
	comparing them to a value in an unsigned variable. The old code
	is still present in this commit - wrapped in #if 0 ... #endif.

2020-02-09  James Gallagher  <jgallagher@opendap.org>

	Moved 'value' out of the exprlval union.
	This makes it easier to build correct instances of 'value.'

2020-02-08  ndp-opendap  <ndp@opendap.org>

	Fixed missing centos-* rpms in travis-ci. Renabling fullCI build

	Located and cirrected a copy-pasta problem in travis rules in which BES_BUILD was being test tested and not LIBDAP_BUILD

	Testing RPM build

	Testing RPM build

	Testing RPM build

2020-02-07  James Gallagher  <jgallagher@opendap.org>

	Removed int_list and int_list_list types and functions from the CE parser.
	They are wrapped with #if 0 ... #endif

	New 'slices' code for natural axes subsetting builds and passes existing tests

2020-02-05  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' into natural_axes

2020-02-05  ndp-opendap  <ndp@opendap.org>

	Added DOI to README

	debian changelog

2020-02-04  ndp-opendap  <ndp@opendap.org>

	Updating libdap4 project files for 3.20.5 release.

2020-01-09  ndp-opendap  <ndp@opendap.org>

	updating aws keys for travis

2019-12-13  kyang2014  <kyang2014@users.noreply.github.com>

	Merge pull request #105 from OPENDAP/hk-532
	HK-532, set the parent pointer of vars to NULL when transforming DAP4…

2019-12-12  Muqun Yang  <myang6@hdfgroup.org>

	HK-532, set the parent pointer of vars to NULL when transforming DAP4 to DAP2.

2019-12-06  Sam Lloyd  <slloyd@opendap.org>

	Merge pull request #104 from OPENDAP/HK-50
	Hk 50

2019-12-06  Samuel Lloyd  <slloyd@localhost.localdomain>

	12/6/19 - HK-50 - master merge

2019-12-05  James Gallagher  <jgallagher@opendap.org>

	Removed unneeded include directories
	[skip ci]

	Added local CMakeLists.txt to streamline work with CLion.
	[skip ci]

2019-12-04  slloyd  <slloyd@localhost>

	12/4/19 - HK-50 - (In Progress) returns changed

2019-12-03  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #103 from OPENDAP/HK-459
	11/26/19 - HK-459 - (Awaiting Review) suppressed .yy error messages

2019-11-27  James Gallagher  <jgallagher@opendap.org>

	Prepare for merge

	Set custom condition for ci_test

	Testing 'test deployment'

	Modified ci_test stage

	Reset keys

	Test new AWS keys

2019-11-26  slloyd  <slloyd@localhost>

	11/26/19 - HK-459 - (Awaiting Review) suppressed .yy error messages
	suppressed error messages thrown from libdap4/*.yy files to the standard
	out

2019-11-01  James Gallagher  <jgallagher@opendap.org>

	My update of the Ubuntu container failed; modified the deb-build script.
	The script now loads the awscli code. It would be better to fix the
	docker container, but I don't have easy access to the Dockerfile.

	Updated the ubuntu 14 container so it has the aws cli.

	Modified build-deb.sh to use the aws cli.
	This change was needed because the travis.build bucket is no longer
	public.

2019-10-31  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #102 from OPENDAP/dap4-function-null-args-support
	Added support for null argument lists to the DAP4 function parser.

	Added support for null argument lists to the DAP4 function parser.

2019-10-30  James Gallagher  <jgallagher@opendap.org>

	Fix for the deb-to-package-dir.sh script.

	Merge pull request #101 from OPENDAP/travis
	Travis

	Added srcdist to the travis build

2019-10-29  James Gallagher  <jgallagher@opendap.org>

	More clean up and configured to build on the travis branch

	Clean up the travis.yml

2019-10-01  James Gallagher  <jgallagher@opendap.org>

	Changed scan stage so sonarcloud is an 'object'

2019-09-30  James Gallagher  <jgallagher@opendap.org>

	Changed name-prefix to api.prefix

2019-09-25  James Gallagher  <jgallagher@opendap.org>

	Syntax fixes in travis.yml and a new target in Makefile.am for CLion
	To make CLion work with our code I used the compiledb tool to make
	a data base of built files. I added a target to the Makefile.am to
	support that.
	[skip ci]

2019-09-08  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #99 from OPENDAP/dmr-test-fix
	Dmr test fix

2019-09-04  slloyd  <slloyd@localhost>

	9/4/19 - HK-411 - (Awaiting Review) implemented remaining DMRTest fixes

2019-08-27  Nathan Potter  <ndp@opendap.org>

	Fixing broken naming of rpm's, again.

	Fixing the missong devel and debuginfo snaps

	Testing snapshot gen in travis, tweaking target names

	Testing snapshot gen in travis

	Testing snapshot gen in travis

	Merge branch 'master' of https://github.com/opendap/libdap4

	Testing snapshot gen in travis

2019-08-26  Kodi Neumiller  <kneumiller@mtech.edu>

	Merge pull request #98 from OPENDAP/authorization_fix
	Cleanup and Verbose

	Made it easier to set the verbose for HTTPConnect and added a very verbose option.

	Merge pull request #97 from OPENDAP/authorization_fix
	Fixed netrc authorization

2019-08-23  James Gallagher  <jgallagher@opendap.org>

	more edits to ce_expr.yy

2019-08-23  Kodi Neumiller  <kneumiller@mtech.edu>

	Took out the curlopt_username and curlopt_password

	Fixed netrc authorization

2019-08-22  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' into natural_axes

	Modified CE parser. It now contains stubs for range-based subsetting

2019-07-08  James Gallagher  <jgallagher@opendap.org>

	Added DOI
	[skip ci]

2019-07-03  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4
	Resolved Conflicts: chunked_istream.cc

2019-07-02  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #96 from OPENDAP/header-byte-order-hack
	Hacked chunked_i/ostream.cc using HEADER_IN_NETWORK_BYTE_ORDER

	Revert "Fixes to ntohl() use and auto_ptr --> unique_ptr."
	This reverts commit c8c427b01dd95ff2f0da820630ffc8133d77d0aa.

	Hacked chunked_i/ostream.cc using HEADER_IN_NETWORK_BYTE_ORDER
	This is an attempt to revert edits made to correct the calls
	to htonl() adn ntohl(). Most thought is needed.

2019-07-01  James Gallagher  <jgallagher@opendap.org>

	ChangeLog, etc., for version 3.20.4

	Merge pull request #95 from OPENDAP/scan-fixes
	Fixes to ntohl() use and auto_ptr --> unique_ptr.

	Fixes to ntohl() use and auto_ptr --> unique_ptr.
	Will this pass the CentOS 6 build?

2019-06-21  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #94 from OPENDAP/libdap-leak-fix
	DMRParser leak fix

	DMRParser leak fix

2019-06-20  Nathan Potter  <ndp@opendap.org>

	Code tidying

	Merge pull request #93 from OPENDAP/dmr_chunking_parser
	Dmr chunking parser

	Dropping conditional termination of the DMR parse operation.

	Minor changes for readability

	Updated baselines to account for modified parse error messages and whitespace alterations

	Merge branch 'master' into dmr_chunking_parser

	chunking improvement

2019-06-20  James Gallagher  <jgallagher@opendap.org>

	Start of fixes to the DMRTest.at file
	The logic for the --baselines feature needs to be fixed.

	Merge pull request #92 from OPENDAP/dmr-test-mem-leak
	Dmr test mem leak

2019-06-19  James Gallagher  <jgallagher@opendap.org>

	One small edit for D4Attributes - remove unused code.

	Added a DMR that intentionally includes a forward reference error
	EnumDMR_1.6

	Found that a malformed DMR breaks the parser in a very odd way
	No error message or exception. The error is to have a forward
	reference for a dimension defined in a Group.

2019-06-19  Nathan Potter  <ndp@opendap.org>

	Merge branch 'master' into dmr_chunking_parser

	first pass at chunk reading parser

2019-06-19  James Gallagher  <jgallagher@opendap.org>

	Memory leak fix for XMLWriter.
	The libxml2 macro LIBXML_TEST_VERSION leaks 40 bytes.

	Merge pull request #91 from OPENDAP/HK-403.1
	Hk 403.1

2019-06-19  Cloud User  <centos@ip-172-31-23-170.ec2.internal>

	Used auto_ptr<> in DmrToDap2Test.cc.

	Memory leak fixes in DMR.cc and D4Group.cc

2019-06-19  Nathan Potter  <ndp@opendap.org>

	Minor output change for D4ParserSax2Test. New baselines with newline chars

2019-06-19  James Gallagher  <jgallagher@opendap.org>

	Reduced method count in D4Group and DMR.

	Spelling in a comment (AttrTable.cc)

	Formatting in D4Attributes.cc

	More work - tests still pass on OSX.
	I'm working in removing more code in D4Attributes, load_AttrTable()
	is removed and get_AttrTable() is only used by D4Group.

	Fixes for HK-403 (the HK-403.1 branch). Tests pass on OSX.

2019-06-18  Cloud User  <centos@ip-172-31-23-170.ec2.internal>

	checkpoint HK-403.1 Work on attribute transfer.

2019-06-18  James Gallagher  <jgallagher@opendap.org>

	Minor edit to D4Attributes.g - formatting only.

	Minor edits to the Array.cc file. In connection with HK-403
	[skip ci]

	Found part of HK-403 fixes that doesn't break tests - added back in.

2019-06-17  James Gallagher  <jgallagher@opendap.org>

	More fixes - Marked two tests in DmrToDap2Test as expected to fail.

	Another hack to fix DDSTests added.
	[skip ci]

	I found that some of the CI test failures are 'fixed' by including code in Array.cc
	That is, some of the code that was removed because it caused leaks was,
	apparently, doing more than causing leaks. I'm commiting this because,
	while it's a WIP, I'm on the road and don't know when I can look at it
	again.

2019-06-13  Nathan Potter  <ndp@opendap.org>

	Cleaning up

2019-06-12  Nathan Potter  <ndp@opendap.org>

	Improved error/memory management for DmrToDap2Test

2019-06-11  Nathan Potter  <ndp@opendap.org>

	Fixed memory leak in DMR::getDDS()

	Fixed copying problem in Array::transform_to_dap2(). Fixed memory leak in DmrToDap2Test.cc

2019-05-30  Nathan Potter  <ndp@opendap.org>

	Memory leak patch.

2019-04-19  James Gallagher  <jgallagher@opendap.org>

	checkpoint

2019-04-19  Nathan Potter  <ndp@opendap.org>

	Merge pull request #89 from OPENDAP/d4_to_d2_attr_err_msg
	Added more fine grained error handling in get_dap2_AttrType()

	Added Enum and Opaque to d4->d2 attribute conversion.

	Added more fine grained error handling in get_dap2_AttrType()

2019-04-18  James Gallagher  <jgallagher@opendap.org>

	Added nascent geodap library to libdap4

	Reverted the D4 parser/scanner to master; saved natural_axes versions
	DAP4 tests were failing - I'll work on the natual axes hack for DAP2
	and, if that seems promising, look at the DAP4 code.

2019-04-05  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #88 from OPENDAP/c++11-bison-hack
	Modified the build so that --std=c++-1x works on CentOS 6

	Modified the build so that --std=c++-1x works on CentOS 6
	The issue was that the bsin code failed to build. The fix is
	to not use the --std=... flag for it. Since it's generated code
	we're not using any C++ 2011 stuff. If that changes, it _will_
	build with 2011++, but not the 0x implementation found on CentOS 6.

2019-03-26  James Gallagher  <jgallagher@opendap.org>

	Arrgh. C++-11 on centos 6 is broken or our code stresses it.
	Dropping back to, either we find c++11 support or we don't. Use
	CXX11_FLAG is non-zero to if it was found (and if so, how to get the
	compiler to use it).

	This runs under autoconf 2.63, but there's another hitch. Potential fix...

	Potential fix for centos 6 and the new c++11 test.

	Merge pull request #87 from OPENDAP/c++11-test-use
	Added a test for either c++11 or c++0x and its use by the Makefiles

2019-03-25  James Gallagher  <jgallagher@opendap.org>

	Parsing works for the ERDDAP syntax for DAP2 CEs.
	DAP4 is still hosed and breaks some tests.

	Resolved conflicts in D4ConsrtaintEvaluator.cc

	Merge branch 'master' into natural_axes

	Added cxx_flags_check macro for configure.ac

2019-03-22  James Gallagher  <jgallagher@opendap.org>

	Added a test for either c++11 or c++0x and its use by the Makefiles
	No code changes. The idea is to see if this makes it through CI/CD.
	C++0x is the prequel to C++11. The '0x' version is supported on
	CentOS 6 by gcc/++ 4.4.x

2019-03-20  James Gallagher  <jgallagher@opendap.org>

	Fixed comments.
	[skip ci]

2019-02-15  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #86 from OPENDAP/leak_test
	HK-87. Fixed libdap memory leak for Ubuntu.

2019-02-15  Slav Korolev  <slav.korolev@nasa.gov>

	HK-87. Fixed libdap memory leak for Ubuntu.

2019-02-15  James Gallagher  <jgallagher@opendap.org>

	fixed debian/changelog

	Bumped up the version in denian/changelog

2019-02-14  James Gallagher  <jgallagher@opendap.org>

	Forgot the libdap spec file for the RPM

	Version 3.20.3 source release

2019-02-12  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #85 from OPENDAP/sonar-travis
	Sonar travis

	I think we're done - it works. Moving the scan to follow the builds
	[skip ci]

	Might work!

	one last try

	Another try...

	Run just the scan to test if that works.

	test sonar via travis

2019-02-11  James Gallagher  <jgallagher@opendap.org>

	Added multi-thread option to the sonar properties file
	[skip ci]

2019-02-08  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #84 from OPENDAP/rpm-aws-cli
	RPM aws cli

	Modified build-rpm.sh to work with the CentOS 6 docker image
	It has the aws cli tools buried in an odd place.

	Modified the RPM CI build to use aws cli and not curl

	Merge branch 'master' of https://github.com/opendap/libdap4 [skip ci]

	Merge pull request #83 from OPENDAP/sonar
	Sonar

	Added to gitignore for sonarscan
	[skip ci]

	minor edit to the sonar-project.properties file

	Sonar Scan changes

2019-02-06  James Gallagher  <jgallagher@opendap.org>

	Changes based on sonar scan

2019-02-05  Nathan Potter  <ndp@opendap.org>

	Fixed incorrect delete (changed to delete[]) in chunked_istream.h

	Repaired incorrect 'throw new ...' calls.

2019-01-30  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #82 from OPENDAP/travis-aws
	Modified the .travis.yml to use aws and not curl.

	Modified the .travis.yml to use aws and not curl.
	The idea here is that maybe this will be a bit more robust and thus
	cut down on spurious build errors. Testing here before in the bes.

2019-01-29  Nathan Potter  <ndp@opendap.org>

	Fixed typo [skip ci]

2019-01-02  Kodi Neumiller  <kneumiller@mtech.edu>

	Merge pull request #81 from OPENDAP/debian
	Debian

	Merge branch 'master' into debian

	Travis passed, took out unnecessary code. Also changed the branch to "if branch = master"

	Re-added the travis_build_dir

	Checkpoint..

	Checkpoint.

	Changed directory to $prefix/

	Forgot the / in /root

	Trying to mv the deb package from /root/

	Realized that the build-deb.sh file has a different value for $prefix

2018-12-31  Kodi Neumiller  <kneumiller@mtech.edu>

	Changed the directory the db package is put to $prefix/debbuild

	I think the deb package is being place in root

	Merge pull request #80 from OPENDAP/debian
	Changed where travis looks for the libdap deb package

	Trying to pinpoint libdap deb package...

	Instead of trying to put the libdap deb build in a different directory, will try to locate the deb package the docker build generates.

	Testing to see where libdap4 is put

	Forgot "--env"...

	Renamed the traivs dir

	Added the TravisBuildDir environment

2018-12-27  Kodi Neumiller  <kneumiller@mtech.edu>

	Changed it so that the deb packgage is made in the Travis_build_dir

	Merge pull request #79 from OPENDAP/debian
	Reverted the directory back to $TRAVIS_BUILD_DIR/../

	Reverted the directory back to $TRAVIS_BUILD_DIR/../

2018-12-21  Kodi Neumiller  <kneumiller@mtech.edu>

	Merge pull request #78 from OPENDAP/debian
	Changed the name of the directotry for deb build.

	Changed the name of the directotry for deb build.

	Merge pull request #77 from OPENDAP/debian
	Debian docker build

	Moved debian packages to Dockerfile

2018-12-21  Kodi Neumiller  <kodi@Udays-MacBook-Pro.local>

	Forgot to set permissions for .sh file

	Had the wrong name for the docker repository...

	libdap debian docker build.

2018-12-20  James Gallagher  <jgallagher@opendap.org>

	Updated comments
	[skip ci]

2018-12-19  Kodi Neumiller  <kodi@Udays-MacBook-Pro.local>

	Merge branch 'master' into debian

2018-12-06  James Gallagher  <jgallagher@opendap.org>

	Added DOI for 3.20.2
	[skip ci]

2018-12-05  James Gallagher  <jgallagher@opendap.org>

	Updated version numbers and Documentation for 3.20.2

2018-11-29  Slav Korolev  <slav.korolev@nasa.gov>

	Corrected comments.

2018-11-28  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #76 from OPENDAP/rename_dim
	Rename dim

2018-11-20  Slav Korolev  <slav.korolev@nasa.gov>

	HK-247. Removed unneeded include.

	HK-247. Added Array function rename_dim.

2018-11-19  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #75 from OPENDAP/version-3.20.1
	Version 3.20.1

	Updated debian changelog (which includes the version)

	Modified travis.yml for builds and packages on version-* branches

	Release versions and files updated

2018-10-24  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'travis'
	[skip ci]

	Updated travis build so that the build-rpm.sh script is accessible

2018-10-23  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'travis' of https://github.com/opendap/libdap4 into travis
	# Conflicts:
	#	.travis.yml

	Added c6 to deply list

2018-10-22  James Gallagher  <jgallagher@opendap.org>

	Updated the containers to tag 1.1

2018-10-20  James Gallagher  <jgallagher@opendap.org>

	Container tags from 1,latest to 1.0

	Removed old files

	Merge branch 'travis' of https://github.com/opendap/libdap4 into travis

	As with hyrax deps, container tag change from 1 to 1.0

2018-10-17  James Gallagher  <jgallagher@opendap.org>

	Added centos6 build

	replace mv with cp - maybe the user is not root
	That is, a non-root user cannot mv because that implies delete/write
	privileges and group and other have only read privileges.

2018-10-16  James Gallagher  <jgallagher@opendap.org>

	Debug broken mv

	Another try at debugging the mv problem

	More debugging of the mv bug.

	Debug package move error.
	Also, changed to $HOME from /root in both travis yml and build-rpm.sh

	Fixed paths in build-rpm.sh

	Missed a /home in the centos7 RPM build

	Changed /home to /root inside the docker container.
	This should enable the rpms to be accessed by Travis. Also, changed the
	branch restrictions on the deployment so the Travis branch will run the
	before_deploy code (deploy itself won't run for a PR).

	Corrected error in build-rpm.sh - was missing call to configure

	Fixed container spec; hacked yml to test only the RPM build

	Hacked Travis to run the new RPM build. checkpoint

	Changed rpm-build.sh to use 'make rpm' and added some instrumentation

2018-10-15  James Gallagher  <jgallagher@opendap.org>

	Initial version of a Travis-based RPM build. checkpoint

2018-10-11  James Gallagher  <jgallagher@opendap.org>

	Revert "Revert "--enable-coverage added to configure.ac and Makefile.am""
	This reverts commit fea75b3260c99e4edcd9b01de6aa446025a6a889.

	Revert "--enable-coverage added to configure.ac and Makefile.am"
	This reverts commit 726f30bbf743a9fc2213f3a2c7d28a7cb2df3174.

	--enable-coverage added to configure.ac and Makefile.am

	Added initial version of docker bootstrap script
	[skip ci]

	Added the new docker command - it didn't get committed previously

	# WARNING: head commit changed in the meantime
	Added docker as a 'service,' named the package build stage.
	This is a test to see if I can get the docker container to load and run

2018-09-13  James Gallagher  <jgallagher@opendap.org>

	Debian package build fail was a version number error
	Changed the distribution back to 'trusty'

	There are errors reported by debian lintian - change dist to UNSTABLE

	Modified the debian/changelog to indicate the package was built on trusty

	Updated the debian package build changelog

2018-09-13  James Gallagher  <jgallagehr@opendap.org>

	Fixed spec file changelog date [skip ci]

2018-09-13  James Gallagher  <jgallagher@opendap.org>

	Release files updated for 3.20.0

	Merge branch 'centos6-build-fixes'

2018-09-12  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #74 from OPENDAP/ddx-fix-2
	DDX fix 2

	Now the code builds DAP3.2 DDX reposnes by default.

2018-09-11  James Gallagher  <jgallagher@opendap.org>

	Baselines for DAP2 DDXs (*.dap2.xml)
	The DAP 3.2 baselines end in .xml.

	Merge branch 'ddx-fix-2' of https://github.com/opendap/libdap4 into ddx-fix-2

	The configure script now sets DAP2 or DAP3.2 DDX reposes.
	DAP2 DDX's in this commit. Tests are switched automatically.

	The configure script now sets DAP2 or DAP3.2 DDX reposes.
	Tests are switched automatically.

	This is the alternative DDX fix - compile-time choice of DAP2 or 3.2 DDX
	With DAP2 DDX, all but a handful of BES tests pass, with DAP3.2, many
	more tests fail.

2018-09-10  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #73 from OPENDAP/ddx-3.2-only
	The DDS::print_xml and print_xml_writer now only return a '3.2' DDX

	The DDS::print_xml and print_xml_writer now only return a '3.2' DDX
	There is an issue in the BES where, for unknown reasons, a DAP2 or
	DAP3.2 DDX will be returned. The DDX response should only be '3.2'.
	Since there is no used for DAP2 DDX, I've removed it. This doesn't
	address the underlying problem, however (why the version number in
	the DDS object do not match those set by the BES's client).

2018-08-29  James Gallagher  <jgallagher@opendap.org>

	centos6 edits

2018-08-22  James Gallagher  <jgallagher@opendap.org>

	Fixed commands in the before_deploy section of the travis yaml

	try moving two packages to S3

2018-08-22  Kodi Neumiller  <kodi@Udays-MacBook-Pro.local>

	Added || in the condition section.

	Took out = main

	Fixed the directory to send the .deb file.

	Got rid of /debian

2018-08-22  Kodi Neumiller  <kneumiller@mtech.edu>

	Merge pull request #71 from OPENDAP/debian
	Debian. Should move the created deb package to s3.

2018-08-22  James Gallagher  <jgallagher@opendap.org>

	Fix for DDS::has_dap2_attributes

2018-08-22  Kodi Neumiller  <kodi@Udays-MacBook-Pro.local>

	Took out the ls ../ -l after make deb -j7.

	Uncommented the different jobs. Also made it so that the deb package is grabbed from the directory above.

	Looking at a directory above the current one.

2018-08-22  James Gallagher  <jgallagher@opendap.org>

	Modified travis for coverity
	[skip ci]

2018-08-22  Kodi Neumiller  <kodi@Udays-MacBook-Pro.local>

	Added ls -l to see where the debian package is.

	Took out the condition "$LIBDAP_BUILD = main"

	Added the debian branch to the list of branches to be built. Also commented out the other jobs that aren't debian.

2018-08-21  Kodi Neumiller  <kodi@Udays-MacBook-Pro.local>

	Made it so that the debian package is moved to s3.

	Added debhelper package.

2018-08-20  James Gallagher  <jgallagher@opendap.org>

	Added the fakeroot package for debian pkg builds on Travis

	Added devscripts build-essential lintian for debian pkg build

	Modified travis.yml to trigger a debian package build.

	Merge branch 'master' into debian

	Fixed comments in MarshallerThread.h
	[skip ci]

	Merge branch 'master' into debian

2018-07-31  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #70 from OPENDAP/dds_test_fix
	DDS test fix

2018-07-30  James Gallagher  <jgallagher@opendap.org>

	Made a corresponding change to dds-test:test_class() re: mem leak

	Changed BaseTypeFactory in dds-test:test_parser() fixing a memory leak.

2018-07-25  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #68 from OPENDAP/travis
	Added a new parallel build for the asan checks

	Added a new parallel build for the asan checks

2018-07-10  Ubuntu  <ubuntu@ip-172-31-6-46.ec2.internal>

	Updated the copyright file. It may need to be looked at to ensure it is formated correctly.

2018-07-06  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #67 from opoplawski/libtirpc
	Use libtirpc

	Merge pull request #66 from OPENDAP/debian
	deb packaging

2018-06-24  Orion Poplawski  <orion@cora.nwra.com>

	Use libtirpc

2018-06-19  Ubuntu  <ubuntu@ip-172-31-6-46.ec2.internal>

	The makefile now has an option (make deb) to build the debian package for libdap.

2018-06-18  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #65 from OPENDAP/debian
	Debian Packaging

2018-06-13  Ubuntu  <ubuntu@ip-172-31-6-46.ec2.internal>

	Deleted generated files.

	Finished adding the appropriate files to build a debian package. The libdap directory was added after the debian package was installed.

2018-06-11  Ubuntu  <ubuntu@ip-172-31-6-46.ec2.internal>

	Edited the Makefile in unit tests so that it included the missing test files.

2018-06-07  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #64 from OPENDAP/print_das_fix
	Print das fix

	Merge pull request #58 from OPENDAP/keyword-refactor
	Keyword refactor

2018-05-25  James Gallagher  <jgallagher@opendap.org>

	Fixed the last two tests for the print_das() fix.

	Merge branch 'print_das_fix' of https://github.com/opendap/libdap4 into print_das_fix

	Merge branch 'master' into print_das_fix

2018-05-25  Nathan Potter  <ndp@opendap.org>

	Merge pull request #62 from OPENDAP/hyrax-730
	Fixed DDS::has_dap2_attributes() so that Grids are handled, eliminated printing MAP vectors in Grid from print_var_das()

	Dropped Grid Map arrays from Grid container in DAS (Flatten Grids man)

2018-05-25  James Gallagher  <jgallagher@opendap.org>

	Switched print_das() so that it uses get_das() and then prints. WIP.

2018-05-25  Nathan Potter  <ndp@opendap.org>

	Merge branch 'master' into hyrax-730

2018-05-24  James Gallagher  <jgallagher@opendap.org>

	Switched print_das() so that it uses get_das() and then prints. WIP.

	Added a note about HYRAX-766: bes/dapreader issue.
	The proble is due to a change in the DAS objects are printed when they
	are built using a DDS or DMR.

	[skip ci]

2018-05-23  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4

	Changes to comments and some instrumentation in DmrRoundTripTest.cc
	No functional/operational changes except some of the instrumentation
	output in the DmrRoundTripTest unit test.

2018-05-22  Nathan Potter  <ndp@opendap.org>

	Fixed DDS::has_dap2_attributes() so that Grids are handled by evaluating only the GRid Array and ignoring the Maps.

2018-05-21  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #61 from OPENDAP/hyrax-730
	Hyrax 730

	Update DDS.cc

2018-05-21  Nathan Potter  <ndp@opendap.org>

	Fixed DDS::print_das() so thatv it makes special the Gridness

	Make DDS::get_das() work recursively on Constructor types

2018-05-18  Nathan Potter  <ndp@opendap.org>

	Revert "Adding metadata to Grid and to Grid Array now."
	This reverts commit b16ede3e866ea55daff0ad28d87bd43f3ff834da.

	Adding metadata to Grid and to Grid Array now.

	Patch to DAP4->DAP2 metadata assignment for Grid type problem.

2018-05-15  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #60 from OPENDAP/url_fix
	Url fix

	Merge branch 'master' into url_fix

2018-05-07  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #59 from ryandesign/configure-CC
	Use quotes when testing $CC

2018-05-06  Ryan Schmidt  <git@ryandesign.com>

	Use quotes when testing $CC
	This avoids the error "test: too many arguments" appearing in the
	configure output if CC contains multiple words, such as "ccache cc".

2018-05-04  James Gallagher  <jgallagher@opendap.org>

	More old code removed from Url.h

	Removed unused internal storage in Url.h

2018-04-11  James Gallagher  <jgallagher@opendap.org>

	Removed Keywords2 unit test code (to old/)

	Removed keywords from DDS. The class is still in the library

2018-04-09  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #57 from OPENDAP/dmrpp-dap2
	Dmrpp dap2

2018-04-07  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'dmrpp-dap2' of https://github.com/opendap/libdap4 into dmrpp-dap2

	Protect against infinite loop in get_unique_top_level_global_container_name().

	Added code to ensure a unique top-level table is used but DDS::get_das()
	When that is needed - when there are top-level attributes in a DMR - make
	new top-level container for those attributes. This new code makes sure
	those attributes go in a container with a unique name. The code will fail
	if there are more than MAX_INT top-level tables.

2018-04-07  Nathan Potter  <ndp@opendap.org>

	sync

2018-04-06  James Gallagher  <jgallagher@opendap.org>

	DDS::get_das(): Added a test and fix for top-level 'value' attributes
	It's possible to have a DMR or DDS that has top-level attributes that
	are not in a container. These work in the DMR or DDS object, but not
	in the DAS (which can only have containers at the top-level). The
	'orphan' attributes are put in the DAP4_GLOBAL container, since these
	almost certainly come from DMR objects. We might revisit this name
	choice...

	Added tests for DDS::get_das() and get_das(DAS *).
	Also edited the implementaiton just a bit to test for global attributes
	that are not containers.

2018-04-06  Nathan Potter  <ndp@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4

	Added some (much needed) get_das() methods to DDS

2018-04-02  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #53 from captainkirk99/ck_valgrind
	change valgrind invocation, also fixed some memory leaks in unit-tests

	Merge branch 'master' into ck_valgrind

2018-03-31  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #56 from captainkirk99/ck_fix_more_2
	fixed tests

2018-03-31  Ed Hartnett  <37277297+captainkirk99@users.noreply.github.com>

	fixed tests

2018-03-29  James Gallagher  <jgallagher@opendap.org>

	Changed D4Enum::set_is_signed() so it doesn't call abort()
	This 'fixed' an issue with testing where abort() fails hard and stops
	the tests right away. The next line throws an exception, which is really
	good enough and makes it possbile to test the error case. I also fixed
	up the comments for D4Enum::transform_to_dap2().

2018-03-28  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #55 from captainkirk99/ck_fix_big_endian
	fixed tests for big-endian

2018-03-28  Ed Hartnett  <37277297+captainkirk99@users.noreply.github.com>

	fixed tests for big-endian

2018-03-25  Ed Hartnett  <37277297+captainkirk99@users.noreply.github.com>

	fixed memory leak in D4FilterClausetest

	added macro file

	change valgrind invocation, also fixed some memory leaks in unit-tests

2018-03-24  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #48 from captainkirk99/ck_tests_1
	added some tests

2018-03-24  Ed Hartnett  <37277297+captainkirk99@users.noreply.github.com>

	added new tests to .gitignore

	more tests

2018-03-19  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #52 from OPENDAP/print-das-fix
	Print das fix

	Merge branch 'master' into print-das-fix

	DDS:print_das() fixes and test baseline edits.

	Changed DDS::print_das() so it's more in line with DAS::print()
	But, tests fail.

2018-03-18  Ed Hartnett  <37277297+captainkirk99@users.noreply.github.com>

	more tests

	more testing

	fixed problem with code coverage changes

	changing the way test coverage is computed

2018-03-17  Ed Hartnett  <37277297+captainkirk99@users.noreply.github.com>

	fixing inadvertant whitespace changes

	fixing inadvertant whitespace changes

	fixing inadvertant whitespace changes

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	attempting to fix second problem with travis

	more changes to fix header problem

	more changes to fix header problem

	more changes to fix header problem

	more changes to fix header problem

	trying to fix header issue

	more tests

2018-03-16  James Gallagher  <jgallagher@opendap.org>

	Use curl to read the hyrax-deps build tar ball
	This should fix the issue with PRs from outside our GitHub space.

2018-03-14  Ed Hartnett  <37277297+captainkirk99@users.noreply.github.com>

	fixed test

	more testing

	merged

2018-03-14  James Gallagher  <jgallagher@opendap.org>

	Removed now unused ecr_credentials.sh script
	We can just use the AWS_SECRET_ACCESS_KEY and AWS_ACCESS_KEY_ID
	environment variables from within travis.

	[skip ci]

	Modified aws operations to get the hyrax-dependencies - trying to fix the build

2018-03-13  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #49 from OPENDAP/travis
	Modified aws operations to get the hyrax-dependencies - trying to fix…

	Removed now unused ecr_credentials.sh script
	We can just use the AWS_SECRET_ACCESS_KEY and AWS_ACCESS_KEY_ID
	environment variables from within travis.

	[skip ci]

	Modified aws operations to get the hyrax-dependencies - trying to fix the build

2018-03-12  Ed Hartnett  <37277297+captainkirk99@users.noreply.github.com>

	added some tests

2018-03-06  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #47 from OPENDAP/header-refactor
	Added #include "DapIndent.h" as I try to remove nested headers

	Added #include "DapIndent.h" as I try to remove nested headers

2018-03-02  Nathan Potter  <ndp@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4

	Added doxygen link to README

2018-02-24  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #46 from OPENDAP/travis
	Travis: $prefix set to $HOME/install

	added some comments

	testing

	testing

2018-02-23  James Gallagher  <jgallagher@opendap.org>

	testing

	testing

	more travis hacking

	Merge pull request #45 from OPENDAP/travis
	Travis

	travis test

	travis fixed?

	travis testing

	travis testing

	travis testing

	travis testing

	travis testing

	travis test

	travis testing

	travis testing

	travis testing

	travis test

	travis test

	Test travis

	Merge branch 'travis' of https://github.com/opendap/libdap4 into travis

	Test travis changes

	Test new travis build

2018-02-09  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4

	Minor tweak to --with-curl
	The configure.ac script needs more work to simplify it and replace
	raw shell commands with AS_IF, etc.

2018-02-08  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #44 from OPENDAP/asan
	Hacked configure so developer and asan are separate and both are used…

	Hacked configure so developer and asan are separate and both are used by travis

	Merge pull request #43 from OPENDAP/asan
	Asan

2018-02-07  James Gallagher  <jgallagher@opendap.org>

	Repaired d4_function/D4FunctionEvaluator.cc (See HYRAX-247)
	I used std::set which is supposed to preserve order, but apparently
	does not with gcc 4.8 and some levels of optimization.

	Found and fixed a memory error in tests/D4TestFunction.cc
	The $Byte() special form was being used to build an argument to
	the test function 'scale()' but the code i D4TestFunction assumed
	the argument was a TestArray instance (when it was/is an Array).

2018-02-06  jgallagher59701  <jgallagher@opendap.org>

	Fixed memory error in D4UnMarshallerTest.

2018-02-06  James Gallagher  <jgallagher@opendap.org>

	Added test for Address Sanitizer option

	Merge pull request #42 from OPENDAP/asan
	Added Asan (address sanitizer) to the --enable-developer option

	Added Asan (address sanitizer) to the --enable-developer option
	All the tests pass using this option on OSX.

	Minor hacks to the DAP2 CE grammar

2018-02-02  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #41 from OPENDAP/hyrax-598
	Fixed a memory error that could be triggered by passing bad XML to ...

2018-02-02  jgallagher59701  <jgallagher@opendap.org>

	Fixed a memory error that could be triggered by passing bad XML to the DAP4 DMR parser.
	vsnprintf() could be called with a tainted format string.

2018-01-31  James Gallagher  <jgallagher@opendap.org>

	Removed html dir from the master branch - it's still on the gh-pages branch
	Use 'make gh-docs' to build the online docs.

2018-01-30  James Gallagher  <jgallagher@opendap.org>

	Updated build-gh-docs.sh to use add --force since 'html' is on gitignore

	Added new docs

2018-01-28  James Gallagher  <jgallagher@opendap.org>

	Modifications to the DAP4 CE parser for the Natural Axes subset syntax - still fails tests

	The parser now accepts the [(float)] syntax. Sort of...
	Only floating point values work and other parts of the parser
	might be broken because a new lexeme (FLOAT) can be returned by
	the scanner. The issue is the WORD does not contain a dot (.) so
	it cannot represent float values the way people expect/need.

2018-01-27  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'natural_axes' of https://github.com/opendap/libdap4 into natural_axes

2018-01-12  James Gallagher  <jgallagher@opendap.org>

	travis

	travis

	travis

	travis

	travis

	travis

	travis

	travis

	travis

	travis

	travis

	travis

	travis

	travis

2018-01-11  James Gallagher  <jgallagher@opendap.org>

	travis

	travis

	travis

	more travis

	travis

	more travis tweaks

	travis syntax fixes

	Travis hacks

2018-01-09  James Gallagher  <jgallagher@opendap.org>

	More hacking on the new natural axes subsetting. Still nowhere near working.

2018-01-02  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #38 from OPENDAP/crypto-fix
	Fixed the libcrypto link error on OSX 10.13

2018-01-01  James Gallagher  <jgallagher@opendap.org>

	Fixed the libcrypto link error on OSX 10.13

	More hacks for natural_axes projections

2017-12-29  James Gallagher  <jgallagher@opendap.org>

	Started on the implementation of 'natrual axes' projections
	Based on the syntax developed by Bob Simons for ERDDAP. See
	http://upwell.pfeg.noaa.gov/erddap/griddap/documentation.html

2017-09-25  James Gallagher  <jgallagher@opendap.org>

	Source release 3.19.1

2017-08-25  James Gallagher  <jgallagher@opendap.org>

	Added a comment to my HTTPCacheTest change...
	[skip ci]

	Removed a test for block_size in HTTPCacheTest that failed on Fedora ppc64le system with XFS system

	Merge pull request #32 from OPENDAP/hyrax390
	Hyrax390

	Marked two of the Dmr Round Trip Tests as failing.
	This matched the results of the master branch. Thus we can merge
	the hyrax390 branch and move on to either fix those issues or
	accept the behavior as 'good enough.'

	Merge branch 'master' into hyrax390

	Merge pull request #36 from OPENDAP/gnulib-update
	Updated gnulib and added mkstemps() to avoid portability issues.

	Added malloca.valgrind

	Added more in gl

	Added more ...

	Added more still more

	Added more files in gl

	Added gl/gettimeofday.c

	Added more gnulib m4 files

	Updated gnulib and added mkstemps() to avoid portability issues.

	Added comments to DMR.h

2017-07-18  James Gallagher  <jgallagher@opendap.org>

	Fixed a warning in D4EnumTest and CppUnit usage in DmrRoundTripTest

	Merge branch 'master' of https://github.com/opendap/libdap4.git

	Added --disable-dependency-tracking to configure in travis.yml
	Will it build faster? Also, fixed a comment in D4Maps.h

2017-05-31  Slav Korolev  <slav.korolev@nasa.gov>

	Ticket #390. Cleaned 4 files.

	Ticket #390. Cleaned 4 files.

2017-05-22  ndp-opendap  <ndp@opendap.org>

	Updated versions, ChangeLog and News

2017-05-22  Nathan Potter  <ndp@opendap.org>

	Merge pull request #29 from OPENDAP/hyrax390
	Task #390. The CppUnit unit tests in libdap4 should all support runni…

	Merge pull request #31 from OPENDAP/hyrax-400
	Hyrax 400

2017-05-19  James Gallagher  <jgallagher@opendap.org>

	Fixed vec_resize() in Vector.
	I was mixing cpacity() and resize() and that leads to some odd
	behavior - I'm not sure I really understand it, but comments in
	Vector::vec_resize() are a stab at an explanation. The bottom line
	is that the fix is to use size() with resize() and not capacity().

	I also modified TestArray so that its read() method allocates
	enough space for a vector of Structures before it starts writing
	to it, just to demonstrate good behavior.

2017-05-19  Slav Korolev  <slav.korolev@nasa.gov>

	#390. More changes

2017-05-18  James Gallagher  <jgallagher@opendap.org>

	Checkpoint

	Checkpoint - run using valgrind on centos

2017-05-18  Slav Korolev  <slav.korolev@nasa.gov>

	Merge branch 'master' into hyrax390

2017-05-17  James Gallagher  <jgallagher@opendap.org>

	I edited the ByteTest.cc file so it compiles and works.

2017-05-17  Nathan Potter  <ndp@opendap.org>

	Merge pull request #30 from OPENDAP/attr_bug
	Attr bug

2017-05-17  ndp-opendap  <ndp@opendap.org>

	Dropped references to missing files.

2017-05-17  Slav Korolev  <slav.korolev@nasa.gov>

	"Task #390."

2017-05-16  ndp-opendap  <ndp@opendap.org>

	instrumentaiton

2017-05-12  ndp-opendap  <ndp@opendap.org>

	Fixed possible null pointer deref

	Dropped unused file

2017-05-11  Nathan Potter  <ndp@opendap.org>

	Merge pull request #26 from OPENDAP/dmr2dds
	Dmr2dds

2017-05-11  ndp-opendap  <ndp@opendap.org>

	Changed return value of transform_to_dap4() to void.

2017-05-10  Nathan Potter  <ndp@opendap.org>

	Merge branch 'master' into dmr2dds

2017-05-09  ndp-opendap  <ndp@opendap.org>

	Fixed bad implmentations of transform_to_dap4 in Test classes. Instrumenttion

	Fixed bad implmentations of transform_to_dap4 in Test classes. Instrumenttion

2017-05-08  ndp-opendap  <ndp@opendap.org>

	Reworked transform_to_dap4() implmentation so that they all (in libdap4) return NULL and populate the container passed in. Next will be to change the return from BAseType* to void

	Reworked transform_to_dap4() implmentation so that they all (in libdap4) return NULL and populate the container passed in. Next will be to change the return from BAseType* to void

	First pass at fixing the duplicate variables bug in DMR::build_using_dds() and Grid::transform_to_dap4()

2017-05-06  ndp-opendap  <ndp@opendap.org>

	Patched DMR tests to use the new CppUnit test pattern.

2017-05-05  ndp-opendap  <ndp@opendap.org>

	Repairing baselines

	Fixed Grid::transform_to_dap4() so maps have correct names (FQN names)

	Fixed Grid::transform_to_dap4() so maps have correct names (FQN names)

	Fixed namespace issue in tests that prevented individual tests from being run byt command line parameters.

2017-05-04  ndp-opendap  <ndp@opendap.org>

	Alternate Array assignment in Grid::transform_to_dap4()

	sync

	Stuff

2017-05-04  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #27 from OPENDAP/new_docs_target
	New docs target

2017-05-04  ndp-opendap  <ndp@opendap.org>

	A stab at correcting the FQN issue described in Hyrax-389

2017-05-04  James Gallagher  <jgallagher@opendap.org>

	Removed unused tests.
	Grid::transform_to_dap4() had used dynamic_cast<>() but now uses
	static_cast<>(), so it no longer needs to test for null returns from
	the cast operator.

2017-05-04  ndp-opendap  <ndp@opendap.org>

	Supressing warnings

	Merge branch 'master' into dmr2dds

2017-05-04  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #28 from OPENDAP/dmr_parser_fix
	Fixed fixed length line limit in the DMR Sax parser

2017-05-04  ndp-opendap  <ndp@opendap.org>

	Added some DAP4 related TODO items.

	Added some DAP4 related TODO items.

	Merge branch 'master' into dmr2dds

	unwinding small change

2017-05-04  James Gallagher  <jgallagher@opendap.org>

	Changed class field names so they start with 'd_'
	modified:   D4ParserSax2.cc
	modified:   D4ParserSax2.h

2017-05-03  James Gallagher  <jgallagher@opendap.org>

	Fixed fixed length line limit in the DMR Sax parser
	modified:   D4ParserSax2.cc

2017-05-03  ndp-opendap  <ndp@opendap.org>

	Updated .gitignore for new test executables

	Adding two more working DMR to Grid tests. Failing test still fails.

	Checking in new dmr2Grid test which fails because the supplied DMR fails to parse, despite the fact that it was generated by Hyrax 1.13.3

	Added new dmr2dds with Grid test.

	Added new dmr2dds with Grid test.

	Updating comments etc.

	Updating comments etc.

2017-05-02  ndp-opendap  <ndp@opendap.org>

	Ooops. Forgot test baseline

	Silencing more debug chatter.

	Silencing more debug chatter.

	First cut at extracting dap2 Grid objects from dap4 Arrays with maps.

	First cut at extracting dap2 Grid objects from dap4 Arrays with maps.

	Turned off compiled in debug.

	Refactored the transform_to_dap2() aip. woot.

2017-05-02  James Gallagher  <jgallagher@opendap.org>

	Modified Makefile.am to use the new build-gh-docs.sh script.
	This seems to work, although I think it might be fragile.

	A better way to build the docs and push them to gh-pages new file:   build-gh-docs.sh

	Working on using a script instead of makefile targets modified:   Makefile.am

	modified:   .gitignore

	Fixed spaces/tabs in Makefile.am

	deleted:    doxy_private.conf

	Modified doxy.conf.in so it writes output to 'html'
	It used to write output to docs/html.

	I added the new docs targets to the Makefile.am
	These will build and commit/push doxygen docs to github.io via gh-pages.
	The gh-pages branch has to be made first and should be empty.

2017-04-28  ndp-opendap  <ndp@opendap.org>

	Weekend update baby... More tests working. Need to sort out Groups next.

	Refactored DMR test suite, add round-trip and dmr_to_dap2 test suites.

2017-04-26  James Gallagher  <jgallagher@opendap.org>

	Added -g3 to the coverage flags

	Removed generated docs

	Deploy to GitHub Pages

2017-04-26  ndp-opendap  <ndp@opendap.org>

	Still dorting tests

2017-04-25  ndp-opendap  <ndp@opendap.org>

	Merged master to dmr2dds branch

	Structures now transfer attributes correctly

	Space indented BAseType (why was it not before?)

	Structures now transfer attributes correctly

2017-04-24  ndp-opendap  <ndp@opendap.org>

	Structures now transfer attributes correctly

	Structures now transfer attributes correctly

	sync

	Provisional patch to DMR.print_das()

2017-04-23  ndp-opendap  <ndp@opendap.org>

	Provisional patch to DMR.print_das()

2017-04-21  ndp-opendap  <ndp@opendap.org>

	Created DMR specific testsuite. Migrated exisiting DMR tests from dds-testsuite.

	TEst draft (broken)

2017-04-20  ndp-opendap  <ndp@opendap.org>

	sync

2017-04-18  James Gallagher  <jgallagher@opendap.org>

	Added comments to Connect and mime_util regarding tainted data

	Fixed minor issue in D4ParserSax2.
	The namespace prefix could be null and was passed directly to
	std::string's ctor

	Fixed for potential issue in D4ConstraintEvaluator.
	The pointer 'dim' could be dereferenced when it was null.

2017-02-17  James Gallagher  <jgallagher@opendap.org>

	Travis should work now...
	We need a better way to test changes to this process

	Removed codecov.io from the build.
	Debug on CentOS and stop hacking at Travis...

	Added libgcov a an attempt to fix the travis build.

	Turn on coverage in travis.yml

2017-02-16  James Gallagher  <jgallagher@opendap.org>

	more travis hacks

	travis hacks for code cov io

	more travis hacks

	another tack for travis and codecov...

	tedious... (still travis debugging)

	travis test...

	travis.yml fix for codecov.io

	Mods for codecov.io (https://codecov.io/gh/OPENDAP/libdap4)

	Added code coverage to travis.yml

	Merge branch 'master' of http://github.com/opendap/libdap4

	Added code coverage script (get_code_cov.sh)

2017-02-08  James Gallagher  <jgallagher@opendap.org>

	Hacked up gitignore for various build stuff [ci skip]

2017-01-06  James Gallagher  <jgallagher@opendap.org>

	Version 3.18.3

	Modified etags for the files at the new test.o.o site.

2016-12-08  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #25 from OPENDAP/chunked_istream_bug
	Fixed a memory issue in chunked_istream.h

	Fixed a memory issue in chunked_istream.h (new[] mis-matched with delete)

2016-11-18  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #24 from OPENDAP/dmr++
	Dmr++

	Merge pull request #23 from OPENDAP/D4Group_ptr_duplicate_fix
	Fix fir D4Group::ptr_duplicate(). It was not returning BaseType*

2016-11-17  James Gallagher  <jgallagher@opendap.org>

	Fix fir D4Group::ptr_duplicate(). It was not returning BaseType*
	Instead, it returned D4Group. There may have been a good reason,
	But I think consistency is better. ...maybe

2016-11-16  ndp-opendap  <ndp@opendap.org>

	DMR parser will now ignore and XML not in the DAP4 namespace. woot.

2016-11-15  ndp-opendap  <ndp@opendap.org>

	XML namespace thing sorted. DMR parser will now ignore all elements that are not in DAP4 namespace. woot.

	Still working the namespace thing

	Still working the namespace thing

	Still working the namespace thing

	Still working the namespace thing

2016-11-15  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4.git

2016-11-15  ndp-opendap  <ndp@opendap.org>

	Trying to get name space centralization class working. ugh. Static methods

2016-11-15  James Gallagher  <jgallagher@opendap.org>

	Added comment for dmr_start_element()

2016-11-05  James Gallagher  <jgallagher@opendap.org>

	Corrected the file: URL in HTTPConnectTest - I think ...

	Merge branch 'master' of http://github.com/opendap/libdap4

2016-11-04  James Gallagher  <jgallagher@opendap.org>

	Another try at fixing the travis build

	Trial fix of test_config.h error on Travis.

	Stopped running the tests using multiple jobs on Travis.
	This might have been the cause of failures there.

2016-11-03  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of http://github.com/opendap/libdap4

2016-11-02  James Gallagher  <jgallagher@opendap.org>

	Updated the library version info for version 3.18.2

	Version 3.18.2

2016-11-01  James Gallagher  <jgallagher@opendap.org>

	Formatting Grid.cc

2016-10-20  James Gallagher  <jgallagher@opendap.org>

	Fixed type in tests/DMRTest.at - names_with_spaces3.dmr

	Fixed Hyrax-267
	The DAP4 ce parser was not removing double quotes or the %<hex>
	escaping, so names that needed those were not 'found' in the
	dataset. Also, the grammar used by the parser had a syntax error
	in it where /s in the id name were turned into dots and the
	resulting names could not be found. The result was a valid names
	were being rejected.

2016-10-12  James Gallagher  <jgallagher@opendap.org>

	Corrected a comment in Vector.h

2016-08-30  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #22 from sharkcz/getopt
	type fix for getopt

2016-08-30  Dan Horák  <dan@danny.cz>

	type fix for getopt
	The getopt() function uses int as return type and using char for a variable storing
	teh return value makes problem on platform where char is unsgined by default.

	http://www.arm.linux.org.uk/docs/faqs/signedchar.php

	Fix by Orion Poplawski <orion[at]cora.nwra.com> for https://bugzilla.redhat.com/show_bug.cgi?id=1366787

2016-08-26  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #21 from sharkcz/dmr-bigendian-2
	add missing big endian baselines

2016-08-26  Dan Horák  <dan@danny.cz>

	add missing big endian baselines

2016-08-22  James Gallagher  <jgallagher@opendap.org>

	Added main_page.doxygen to gitignore

2016-07-14  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4

	Added libuuid to the requirements listed in INSTALL.
	Also added a comment and fixed error message text in util.cc for
	void extract_double_array(Array *a, vector<double> &dest)

2016-06-09  James Gallagher  <jgallagher@opendap.org>

	Fixed a compiler warning when USE_POSIX_THREADS is not def'd in XDRStreamMarshaller

2016-06-08  James Gallagher  <jgallagher@opendap.org>

	Removed generagted file since it's causing grief on Travis

	Updates for the source dist and unit-tests

2016-05-31  James Gallagher  <jgallagher@opendap.org>

	Version 3.18.0

2016-05-25  James Gallagher  <jgallagher@opendap.org>

	Fixed ugly DBG2() macro calls

2016-05-18  James Gallagher  <jgallagher@opendap.org>

	Merge remote-tracking branch 'origin/Hyrax-98'
	Conflicts:
		D4Connect.cc
		d4_ce/D4ConstraintEvaluator.cc
		d4_ce/d4_ce_parser.yy

2016-05-17  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #19 from OPENDAP/response_cache
	Response cache

2016-05-16  James Gallagher  <jgallagher@opendap.org>

	Added recursive Sequence::rest_row_number() and comments

2016-05-15  James Gallagher  <jgallagher@opendap.org>

	Minor edits after testing specializing read_row() for the ResponseCache
	See bes/dap CachedSequence and CacheTypeFactory for more info.

2016-05-13  James Gallagher  <jgallagher@opendap.org>

	Checkpoint - Nathan's hack for Sequence plus debugging

	Added comments for the hacked set_send_p() and set_read_p() methods

	Added a (potential) fix for Vector::set_send_p()

2016-05-12  James Gallagher  <jgallagher@opendap.org>

	Hacks for the bes branch 'response_cache'

2016-05-10  James Gallagher  <jgallagher@opendap.org>

	Changes for Coverity
	[ci skip]

	Comments

2016-05-09  James Gallagher  <jgallagher@opendap.org>

	Coverity edits - both minor
	[ci skip]

	Removed extraneous include

2016-05-06  James Gallagher  <jgallagher@opendap.org>

	Added parser-util.cc back in after deleting it by mistake.

	Minor patches for issues found by Coverity Changes to be committed: 	modified:   Connect.cc 	deleted:    parser-util.cc

2016-05-05  James Gallagher  <jgallagher@opendap.org>

	Improved error checking for the DDX parser.
	When text is feed into the parser and its not valid xml, the parser
	was just ignoring that. No more...

	Arrg. baselines were not int he last commit...

	Moved the newest tests' baselines to the 'universal' directory
	It's time to switch the new DMR tests to ones that don't have to
	have a separate set of baselines for bin- and little-endian
	machines. It takes too long to build up the big-endian test
	baselines (get a b-e VM, etc.) and we have a good set of baselines
	for each arch so if issues pop up on one or the otehr arch,
	it should be easy to catch them.

	Merge pull request #18 from OPENDAP/jg_filters
	Jg filters

	Merge branch 'master' into jg_filters
	Conflicts: D4Sequence.h

	Added 'universal' tests for DMRTest
	The DMR includes a checksum when it's built from received data and
	that checksum is a function of word order of the sender. This made
	building baselines for the DMR tests a pain. We've built a number of
	tests for both big- and little-endian machines - from now on new
	tests should use 'universal' baselines (built by removing the checksum
	using sed).

2016-05-04  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #17 from OPENDAP/D4Sequence_value_ref
	Added a new method to D4Sequence

2016-05-03  James Gallagher  <jgallagher@opendap.org>

	Cosmetic editing

	Optimized the read_sequence_values() code.
	Child sequences do not have copies of the filter clauses. These are not
	needed by them since they have already been filtered.

	Added tests for complex CEs involving nested seqeunces

	Inner sequence filter issue resolved
	The code still needs tests and there is a potential optimization and
	the syntax needs to be documented because the way fields in a
	sequence can be referenced is less general than other places in the CE.

	Fixed the issue with child sequences in DAP4

2016-05-02  James Gallagher  <jgallagher@opendap.org>

	Partial fix for Hyrax-182
	https://opendap.atlassian.net/browse/HYRAX-182

2016-04-29  James Gallagher  <jgallagher@opendap.org>

	More test baselines

	Scanner fix

	Fixed the numeric constant error with the filter code
	Numeric constants were showing up as the value '1.' The checking_*()
	functions were the culprit. In the process I added missing methods in
	the FilterClause code and debugging in a number of places.

	Added tests for the new filter code. Not all of the tests pass...
	There is some work to be done with parsing the != and ~= operators
	and also mixing int and float arguments. There may be issues with
	filed references as well, but we'll have to check the spec for that.

2016-04-25  James Gallagher  <jgallagher@opendap.org>

	Fixed the issue with <constant> <op> <var> not working.

	Fixed three operand filter clauses in the CE evaluator, but...
	they still don't work correctly. There seems to be a problem with the
	parsing of constants.

2016-04-24  James Gallagher  <jgallagher@opendap.org>

	Removed debugging statements; Using the 'ND' operator is an error.

	The parser now builds filter clauses and binds them to a D4Sequence.
	Some by-hand tests show not everything works, but mostly it's a problem
	with relops and String variables or constants.

2016-04-23  James Gallagher  <jgallagher@opendap.org>

	Parser tweaks - relops now are returned as strings

	Fixed a problem with the TestByte, ..., classes when used for 'series values'
	Some of the classes had the odd behavior that the series of values
	was per-process and not per object instance. So, TestStr's value
	would not repeat until a new process was started, it instead kept
	increasing "... 1", "... 2", etc., across different instances of
	the class. Fixing this made it easy to fix the TestD4Sequence code.

2016-04-22  James Gallagher  <jgallagher@opendap.org>

	Added tests for D4Sequences, including filter clause evaluation

	Added D4SequenceTest

	D4Sequence now supports evaluating a FilterClauseList.
	Added tests too. I have only tested D4Sequence::intern_data(),
	not serialize().

	D4FilterClauseList now used by D4Sequence::serialize()

	Eh, I rewrote the relops operator code.
	It now uses the same approach that I used for DAP2 - a method
	for each type (Byte, ...).

	Added D4FilterClauseTest

	Fixed a bug in the was D4Function was used
	In the ServerFunctionList and d4_function_parser.yy, I should
	have been using a poiter to D4Function and not the object itself.
	Now the DMRTests for functions pass

2016-04-21  James Gallagher  <jgallagher@opendap.org>

	Hacks to the D4FilterClause code
	This also includes fixes to D4RValue and tests for the filter clause
	code. Two minor changes to the parsers.

2016-04-20  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' into jg_filters

	Added a new method to D4Sequence
	D4SeqValues &D4Sequence::value_ref(): Returns a reference to the
	internal data held by a D4Sequence instance.

2016-04-20  Nathan Potter  <ndp@opendap.org>

	Updated doxygen version number

	Merge branch 'master' of https://github.com/opendap/libdap4

	Added debugging statements to various Sequence items.

2016-04-18  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4

	Version 3.17.3

	Version 3.17.2; Fixed a soname error
	Adding a const constructor seems to have *removed* the old constructor
	as far as some code is cncerned (it's still there, but with a
	different mangled name).

2016-04-15  James Gallagher  <jgallagher@opendap.org>

	Version 3.17.2

	Merge branch 'master' into Hyrax-98
	Conflicts:
		tests/DMRTest.at

	Removed use of a const iterator in D4Maps' remove_map method

	Merge pull request #15 from sharkcz/cppunit
	fallback to pkg-config if cppunit-config is not available

	Fixed an error in the script related to Coverity support
	The env var COVERITY_SCAN_BRANCH should have been quoted.

	Merge pull request #13 from sharkcz/dmr-bigendian
	add missing big endian baselines

2016-04-15  Dan Horák  <dan@danny.cz>

	fallback to pkg-config if cppunit-config is not available
	Recent version of cppunit packages do not distribute the cppunit-config script
	and expect the usage of pkgconfig file.

2016-04-14  Dan Horák  <dan@danny.cz>

	remove the condition because we added the missing baselines

	add big endian baseline files for new tests

2016-04-13  James Gallagher  <jgallagher@opendap.org>

	Added tests for Hyrax-98 issues.
	These tests cover requests for an Array w/o including the Map and
	requests that use local dimension slices. The test dataset is has
	only one dimension/map.

	Fix for Hyrax-98: Requests for Arrays with Maps fail sometimes
	There are two cases where the request for an Array that contains Maps
	was failing: The request didn't also name the Maps, or the request
	used 'local dimension slices'. The latter case is fairly complex and
	the fix here (actually both fixes here) may need revision once we
	look at how the specification should be clarified when these kinds of
	CEs are used. Here is the ticket:
	https://opendap.atlassian.net/browse/HYRAX-98

2016-04-08  James Gallagher  <jgallagher@opendap.org>

	Added comments to D4 parser code.

2016-04-06  James Gallagher  <jgallagher@opendap.org>

	Added dump() methods for D4Attribute and D4Attributes.

2016-04-01  James Gallagher  <jgallagher@opendap.org>

	Version 3.17.1

	Added #include <string> to D4RValue.h to fix an issue over in the BES

2016-03-22  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #11 from OPENDAP/d4-threads
	D4StreamMarshaller now uses the double buffering code for transmission

2016-03-18  James Gallagher  <jgallagher@opendap.org>

	Added #include <cstring> for linux

	D4StreamMarshaller now uses the double buffering code for transmission of vector and opaque data.

	Merge branch 'master' of https://github.com/opendap/libdap4

	Possible fix for the memory issue in Hyrax-152.
	Push this to github and test on linux.

2016-03-01  Nathan Potter  <ndp@opendap.org>

	Updated getdap4 usage statement to better reflect the new behavior of the application.

2016-02-29  Nathan Potter  <ndp@opendap.org>

	Fixed BES-102 in which getdap4 was bumbling the DAP4 CE.

2016-02-26  Nathan Potter  <ndp@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4

	Removed timing code fro MarshllerThread using our friend #if 0

2016-02-24  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #9 from sharkcz/endian
	fix big endian detection

2016-02-22  James Gallagher  <jgallagher@opendap.org>

	Edit Int8::print_val() so that Int8 values always print as numbers.

2016-02-20  Dan Horák  <dan@danny.cz>

	fix big endian detection
	Currently there is a endian detection during configure, but the code relies
	on non-portable __BIG_ENDIAN__ define. The default actions in AC_C_BIGENDIAN
	break setting the correct value for WORD_BIGENDIAN.

	See also https://bugzilla.redhat.com/show_bug.cgi?id=962091#c48

2016-02-18  James Gallagher  <jgallagher@opendap.org>

	Added long-needed const constructor and operator=()
	This was done to support some experiments with memory caching,
	but it's a long-overdue fix in general.

	Zero-length array support: Vector::serialize() traps calls when length() == 0
	This is part of a series of changes to support netCDF files
	that use zero-length arrays as arbitrary attribute containers.

	Removed old code that was commented out.

	Replaced fgets() > 0 with fgets() != 0 in the parser's main loop
	A suggestions from David Binderman.

2016-02-12  James Gallagher  <jgallagher@opendap.org>

	Patch for gcc 6 from Orion Poplawski

2016-02-02  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #8 from OPENDAP/BES-97
	Bes 97

2016-01-29  James Gallagher  <jgallagher@opendap.org>

	Modified Vector::val2buf() in support of zero-length arrays
	val2buf() was throwing an InternalErr when called with a null data
	pointer. I modified it so that if the pointer is null and the length()
	of the vector/array is zero, it returns zero. The exception is still
	thrown if the pointer is null and the length() is not zero.

	Removed #define DODS_DEBUG

	Tests for empty DAP2 Structures

	Tests for empty structures added.

2016-01-28  James Gallagher  <jgallagher@opendap.org>

	Zero-length arrays now work with libdap, with caveats
	I have implemented and tested zero-length arrays of the
	cardinal types for DAP2 and 4. There's more to be done and
	no testing outside of libdap has been done.

	Added documentation comments in crc.h

	Spelling fixes in the ChangeLog, ...

2016-01-26  James Gallagher  <jgallagher@opendap.org>

	ChangeLog, et al., updated Version 3.17.0

2016-01-20  James Gallagher  <jgallagher@opendap.org>

	Removed #if 0 in the D4Function/ConstraintEvaluator::error() methods

2016-01-19  James Gallagher  <jgallagher@opendap.org>

	Found one more place in the DAP4 CE and Function parser where errors did not result in an exception.

2016-01-13  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #6 from OPENDAP/BES-87
	BES 87

2016-01-12  James Gallagher  <jgallagher@opendap.org>

	Added comments re how the Error object codes map to HTTP codes

	Added mapping between libdap and HTTP codes (suggestions)

	Added a code to Error; made sure Error was used consistently
	Changes to mesh with those in the OLFS. Error(unknown_error, ...)
	maps to an HTTP 400, internal_error --> 500, not_impelemented -->501,
	etc.

	DAP2 and 4 scanners now throw Error(malformed_expr, <msg>)
	They were writing to stderr...

	DAP2 CE parser uses no_such_identifier where apropos

2016-01-11  James Gallagher  <jgallagher@opendap.org>

	Added codes Error response in the DAP2 parser
	There were only a handful since most of the Error throws were well
	behaved.

	Modified the DAP4 ce and function parsers to include code w/Errors
	See https://opendap.atlassian.net/browse/BES-87.

2016-01-05  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' into bes-40

2016-01-04  James Gallagher  <jgallagher@opendap.org>

	Modified the CRC32 byte-order change so that it's not included by default

	Popped old changes for Connect; fix for Makefile.am; etc.

2015-12-31  James Gallagher  <jgallagher@opendap.org>

	Hacks for doxygen.
	The Makefile works now (rebuilds doxy.conf when needed) and the docs
	are better. I stopped including docs for methods w/o doc comments
	and those are now listed in the doxygen_warnings.txt file.
	[ci skip]

2015-12-30  James Gallagher  <jgallagher@opendap.org>

	Tried CLion; added CMakeLists.txt to gitignore

	Removed the calls to DDS:timeout_{on,off}
	This code is no longer used. The timeout feature of the BES is far
	better.

2015-12-08  James Gallagher  <jgallagher@opendap.org>

	Removed commented-out code

	Merge branch 'master' of https://github.com/opendap/libdap4

	Float32 attributes mis-coded as Byte in the DMR

2015-12-03  Nathan Potter  <ndp@opendap.org>

	Travis install check

	Travis install check

2015-11-30  Patrick West  <pwest@vsto.tw.rpi.edu>

	Missing xml2 libraries in unit-tests build
	Added $(XML2_LIBS) to the Makefile.am in unit-tests so that tests would
	build. On Ubuntu 14.04.

2015-11-13  James Gallagher  <jgallagher@opendap.org>

	I removed the deploy lines from the travis.yml file
	These seem broken - I have to investigate how to handle
	deployment of RPMs out of travis

2015-10-22  James Gallagher  <jgallagher@opendap.org>

	Fixed error in printing of child groups.
	The child group values were printed twice.

2015-10-21  James Gallagher  <jgallagher@opendap.org>

	Source release version, ChangeLog, News, ... for 3.16.0

2015-10-19  James Gallagher  <jgallagher@opendap.org>

	Fixes #1

	Merge branch 'master' into jg_filters
	Conflicts:
		BaseType.cc

	Added changes to exit when 'report_errors' (-r) is true

	Fix for the missing 'child groups' in getdap4's output
	And some minor mods to XMLWriter - clean up the includes a bit.

2015-10-15  James Gallagher  <jgallagher@opendap.org>

	Merge pull request #5 from OPENDAP/intern_no_crc32
	Intern no crc32

	Merge pull request #4 from OPENDAP/endian_fixes
	Endian fixes

2015-10-14  James Gallagher  <jgallagher@opendap.org>

	Some of the DAP4-only types were not setting is_dap4
	This casued the DMR output code to throw an error (Unknown Type) in
	cases where those types were used.
	See https://opendap.atlassian.net/browse/HR-63

2015-10-13  James Gallagher  <jgallagher@opendap.org>

	fixed a warning in dmr-test - /* in a comment

2015-10-13  jgallagher59701  <jgallagher@opendap.org>

	Added test baselines for intern_data with no checksum
	I dropped computing the checksum in the intern_data() method,
	so the baselines for the tests had to be updated.

2015-10-13  James Gallagher  <jgallagher@opendap.org>

	Now the intern_data() method used with DAP4 does not compute the checksum
	It is only computed by the code that serializes the response - sends it
	to a remote client. I added baselines specifically for the intern tests
	on little endian machines. Will add ones for big endian next...

	Merge branch 'intern_no_crc32' of https://github.com/opendap/libdap4.git into intern_no_crc32

	Removed crc32 generation from intern_data()
	This seems better - I htink computing the CRC code
	when interning values is not necessary. Those should
	only be computed when the server is going to send values.

2015-10-12  James Gallagher  <jgallagher@opendap.org>

	Completed changes to D4UnMarshallerTest.cc
	This copy of the tests hould work on both little- and big-endian
	hosts.

	More changes to D4UnMarshallerTest.cc

2015-10-12  jgallagher59701  <jgallagher@opendap.org>

	Partial fix for D4UnMarshallerTest.cc

2015-10-12  James Gallagher  <jgallagher@opendap.org>

	Changed WORDS_BIGENDIAN to __BIG_ENDIAN__

2015-10-07  jgallagher59701  <jgallagher@opendap.org>

	One step closer to the tests working on big endian machines
	D4MarshallerTest now works

	Update to D4Marshaller/UnMarshaller tests - added baselines for big-endian
	...There's still an issue, however.

2015-10-07  James Gallagher  <jgallagher@opendap.org>

	D4UnMarshallerTest also needs two sets of baselines. Added little-endian ones.

	D4MarshallerTest need two sets of baselines...
	One for big- and one for litte-endian machines. I made the little
	endian set.

2015-10-07  jgallagher59701  <jgallagher@opendap.org>

	Changed to D4EnumTest to support changes for big-endian machines.

2015-10-07  James Gallagher  <jgallagher@opendap.org>

	The change to D4Enum::compute_checksum() was correct.
	This fixes the last of the issues with Enum on big-endian machines.
	The problems we caused by the assumption that 64-, 32-, 16- and 8-bit
	integers would align on the LSB, which is the case for little-endian
	machines (but not big...). In several places where reinterpret_cast<>()
	was used I first assigned the Enum _value_ to a temp variable of the
	correct size and then passed the address of that to the checksum calculation
	function. High cost in one sense, but really, scalar Enum variables will
	be rare and Arrays of Enums are handled differently. I also have dropped
	the overly-complex design that used a union. It eliminated some casts,
	but was based on the erroneous assumption regarding alignment.

	Test change in computing checksum for big-endian machines.

	Debugging big-endian issues still..

2015-10-07  James Gallagher  <jimg@idoru.local>

	Merge branch 'endian_fixes' of https://github.com/opendap/libdap4 into endian_fixes

	Cleanup of a version of this that should work on big and little-endian machines.

2015-10-06  jgallagher59701  <jgallagher@opendap.org>

	Baselines for Enum tests on big endian machines
	Now only the tests 54 and 55 fail on the big enian machines...

2015-10-06  James Gallagher  <jimg@idoru.local>

	Removed union in the D4Enum implementation
	This is an attempt to fix the issues found on big endian machines.

2015-10-01  James Gallagher  <jgallagher@opendap.org>

	The DMR tests now work on little endian machines, mostly
	There is an issue with D4Enum that causes some tests to fail.

2015-10-01  jgallagher59701  <jgallagher@opendap.org>

	Fixes for function/ce tests modified:   tests/DMRTest.at

2015-09-30  jgallagher59701  <jgallagher@opendap.org>

	Baselines for a big endian machine.

2015-09-30  James Gallagher  <jgallagher@opendap.org>

	Fail: fixed a syntax error that got pushed.

	Added capability to build baselines that's sane

	Continue with fixes for data + ce tests

	DMRTest is dependent on word order - this is a trial fix.

2015-09-29  James Gallagher  <jgallagher@opendap.org>

	Fixed an issue in HTTPCacheTest; version number bump.
	In HTTPCacheTest, a quirk of RCReader meant that when the tests
	were run as part of distcheck they would fail if the user has set
	USE_CACHE to 1 in their ~/.dodsrc. Version numbers bumped to 3.15.1.

2015-09-23  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4

	Fixed a syntx error in cgi_util.h
	... and added comentary to MarshallerThread.cc

2015-09-20  James Gallagher  <jgallagher@opendap.org>

	Version 3.15.1

2015-09-18  James Gallagher  <jgallagher@opendap.org>

	Added empty Coverity model file

	Fixed a bug in the DAP4 CE evaluator
	The DAP4 CE evaluator was using just the stop index value
	as the size of a dimension when testing if the stride value
	was valid. When a dimension of length 1 (i.e., [0:0]) was
	found, it's length was '0' and a stride of '1' was invalid.
	I fixed this and the test now uses stop-start +1 for the
	dimension length.

2015-09-17  James Gallagher  <jgallagher@opendap.org>

	HTTPCacheTable uses verbose errors
	... instead of obscure error codes

	Modified configure.ac to fail if uuid.h is not found.

2015-09-16  James Gallagher  <jgallagher@opendap.org>

	Added #error if uuid.h is not found modified:   DODSFilter.cc modified:   tests/ResponseBuilder.cc

	Fixed a syntax error modified:   tests/ResponseBuilder.cc

	An attempt to fix the uuid.h header issues.
	I added a test to test for uuid.h in addition to uuid/uuid.h
	in the hope that it'll find something and compile. I may have to
	work on this a bit more since it's caused such a hassle on the
	different build systems.

2015-09-15  James Gallagher  <jgallagher@opendap.org>

	Minor issue in D4EnumDefs.cc with range checking

	Added #include <cerrno> where needed

2015-09-14  James Gallagher  <jgallagher@opendap.org>

	Minor fix for precision in Float64

	CID 81430

	CID 81412

	CID 81409

	CID 81405

	CID 81402

	CID 81401

	CID 81397

	formatting

	CID 81389

	CID 81382

	CID 81377

	CID 81375

	CID 81373

	CID 81370

	CID 81363

	CID 81362

	CID 81361

	CID 81360

	CID 81359

2015-09-10  James Gallagher  <jgallagher@opendap.org>

	Updated files for the release of 3.15

2015-09-09  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' into parallel_io

	An error introduced in March has been fixed; Freeform tests now pass
	Commit 6b005387 introduced a change where set_read_p() no longer
	tested the state of the is_synthesized property. Before, if the property
	was set the method would not change the state of is_read. The change
	made it so the is_read propery was changed regardless of the state of
	is_synthesized. This broke the 'projection functions' in the FreeForm
	handler. I have reverted to the old libdap behavior, and the tests now
	pass.

2015-09-04  James Gallagher  <jgallagher@opendap.org>

	Removed the old serialize_no_release() method

2015-09-02  James Gallagher  <jgallagher@opendap.org>

	Now has a special class for RAII on the lock in the child thread.

2015-08-31  James Gallagher  <jgallagher@opendap.org>

	Cleaned out more dead code from Vector.cc

2015-08-28  James Gallagher  <jgallagher@opendap.org>

	Updated the versio number to 3.15
	This because of the parallel IO code and pipelining support.

	Removed old code from MarshallerThread refactor.

	Moved the pthread code from XDRStreamMarshaller
	It's now in MarshallerThread and used by XDRStreamMarshaller via the
	'pointer to an implementation' pattern. This means that the pthread.h,
	which configure looks for but may not find, is not included in XDR-
	StreamMarshaller's header anymore.

2015-08-27  James Gallagher  <jgallagher@opendap.org>

	Added support for put_vector_part() to D4StreamMarshaller

	Refactor: CLEAR_LOCAL_DATA and USE_POSIX_THREADS
	We found that we could call clear_local_data() right after variables
	were serialized and get a much flatter memory profile. However, putting
	those calls in serialize() changed its behavior. I've moved them to
	bes/dap/ResponseBuilder - but that is controllable using a comple-time
	directive. Similarly, the compile-time switch USE_POSIX_THREADS
	can be used to turn off that feature (#undef). See XDRStreamMarshaller.

	Refactor: Parallel I/O methods
	I refactored the three new parallel I/O methods back into the matching
	put_vector() methods of the same/similar names. This cuts down on the
	naming mess and means that other classes like XDFFileStream don't have
	to include hacked methods that throw exceptions. This commit also
	includes changes tha wrap the clear_local_data() calls in #ifdef
	CLEAR_LOCAL_DATA. Lastly, this refactor will also require a matching
	edit to ncml_module.

2015-08-24  James Gallagher  <jgallagher@opendap.org>

	Patch/fix/hack for XDRStreamMarshaller
	This class' header requires pthread.h but that makes for issues since
	we cannot put an include of config.h in a .h file that is installed.
	To get on with testing, I'm checking in this version that just includes
	it; later on I may modify the class to encapsulate the pthreads stuff.

	Fix for clear_local_data() race condition
	Took advantage of the current XDRStreamMarshaller impl that copies
	data before writing it out. This means our code can delete the original
	data held by the object right after the thread used to send that data
	hass been called (actually, it could delete it _before_ starting the
	thread, but doing so afterward keeps that feature out of the marshaller
	class, which may come in handly later on...). Later on we may switch
	to reference counted pointers and then this issue will go away.

	Removed call to clear_local_data() in Vector::Serialize()
	This was colliding with the call to clear_local_data() in the thread
	when put_vector_thread() was called. This showed up as a 'sometimes'
	failure of expr test #21. The bug happens only when serializing an
	array of strucutre that contains arrays.

2015-08-22  James Gallagher  <jgallagher@opendap.org>

	Corrected a spelling mistake with 'serialize_no_release'

	I've added synchronization code to the XDRStreamMarshaller dotr
	This causes the XDRStreamMarshaller dtor to block on the d_out_mutex
	until the child thread (possibly) writing to the output stream
	completes.

2015-08-21  James Gallagher  <jgallagher@opendap.org>

	Added parallel_io to the set of branches Travis will build.

	Now threads in XDRStreamMarshaller are created detached state

	Added the new put_vector_thread methods to Marshaller
	I made them have a default implementation so that child classes
	won't break. I'm not sure if that's the best way to go...
	Also dropped the new *_thread() methods into Vector::serialize(),
	but they don't work so those are turned off by using #undef
	USE_POSIX_THREADS

	Parallel I/O for vector data maybe working
	I have coded put_vector_thread() and put_vector_part_thread() and
	they are passing unit tests.

2015-08-18  James Gallagher  <jgallagher@opendap.org>

	Removed some of the TODOs in libdap
	[ci skip]

2015-08-17  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4

	Modified Vector::get_buf() so it can be used in the ncml handler

2015-08-17  Nathan Potter  <ndp@opendap.org>

	Merged the new (template-less) version of Vector inot master branch

2015-08-17  James Gallagher  <jgallagher@opendap.org>

	Completed DAP2 put_vector_part() and associated methods.

2015-08-14  Nathan Potter  <ndp@opendap.org>

	Typo

2015-08-14  James Gallagher  <jgallagher@opendap.org>

	Partial Vector/Array serialization partly working!
	Must still implement the parts for Arrays of int16, ..., types;
	only byte arrays work now.

	Checkpoint: Adding methods to allow serailization of Vectors in parts.
	Missing methods in D4StreamMarshaller, XDRFileMarsahller and parts of
	methods in XDRStreamMarshaller.

	Added three protected accessors to Vector
	These provide access to the underlying data held in a Vector/Array
	and are accessible to descendant classes only.

2015-08-14  Nathan Potter  <ndp@opendap.org>

	Replaced template methods in Vector.cc with more pedantic implmentations. Made the templted methods private and used them in the implementations of the new pedantic methods.

2015-08-10  James Gallagher  <jgallagher@opendap.org>

	Bumped up the version number to 3.14.2

	Bumped up the version (and SO numbers). This is 3.14.2

	Merge branch 'serialize_n_release'

	Added a serialize_no_release() method
	This rounds out the serialize_n_release branch. The new behavior of
	freeing the dynamic memory is very desireable, so it's the default,
	but if some code wants to serialize, do something else and then delete
	the storage, the new serialize_no_release provides that option. All
	of our libdap and bes/module tests pass. This will be merged to the
	master branch once the latter has been tagged.

2015-08-07  James Gallagher  <jgallagher@opendap.org>

	Fixed overwriting commit for Vector::serialize()
	We decided to make the serialize and release code real, but in the
	process that collided with changes to BaseType::name() (making it
	a virtual method). One line was broken, but since it was the call to
	clear_local_data() in Vector::serialize(), it was an important line!

2015-08-06  James Gallagher  <jgallagher@opendap.org>

	distcheck works locally

	Fix for distcheck and getdapTest

	make check now supports parallel execution
	Modified test/Makefile.am so that autotest parallel tests work. Run
	make check with TESTSUITEFLAGS=-jN

2015-08-05  Nathan Potter  <ndp@opendap.org>

	pulled from github and merged conflicts

	Refactored use of the name() method in BaseType so that it is now overrideable

2015-08-05  James Gallagher  <jgallagher@opendap.org>

	Added BaseType::clear_local_data()
	The clear_local_data() method is used to free just the parts of a
	BaseType (child of, really) that hold large amounts of data. It applies
	to only a handful of the variable types (Vector, Sequence, D4Opaque and
	D4Sequence). It is used to free memory right after data values are
	sent to the client using serailize(). This means that data are no longer
	held by the variable objects once serialize() returns - at least for
	Array, Sequence, ... Other types like Byte, Int16, ..., will retain
	their values because those values are not held in dynamically allocated
	storage.

2015-08-04  James Gallagher  <jgallagher@opendap.org>

	Hacked the marshT unit-test
	I modified this so that it no longer relies on data being present after
	serialize() has been called. It seems that none of the handlers use
	this 'feature' and we can change the code so that memory is freed right
	after the bits are sent fir each variable. This means that only one
	variabe's data are in memory at any given time.

2015-08-03  Nathan Potter  <ndp@opendap.org>

	Checking in change to _always_ release array memory after serialization. This causes the Marshaller test for Structure to seg fault.

2015-07-15  James Gallagher  <jgallagher@opendap.org>

	Removed the bisong version print out
	...I think this is working fine now
	[ci skip]

2015-07-13  James Gallagher  <jgallagher@opendap.org>

	Added distcheck to travis

	travis caching
	Modified travis.yml and install_libdap4_source_deps.sh so that
	the bison source build is cached.

	Another fix: added '/bin' to $HOME/bison in $PATH

	Removed odd ^S from install_libdap4_source_deps.sh

	More travis hacks - addes sudo: false back in; remove tabs

	travis: The build was not triggered with the last push...
	... so try removing 'sudo: false'

	Switched travis to use docker/containers

2015-07-09  James Gallagher  <jgallagher@opendap.org>

	Added .NOTPARALLEL: back to the C++ parser Makefile.am files
	We need this because stack.hh, ..., are built in one shot by
	bison.

	Updated the library version

	Grammar fixes - for flex and its C++ scanner code.
	There is a conflict between the defined return type of
	FlexLexer::LexerInput. Some versions of flex define that
	method as returning an int and some a returning a size_t.
	Including generated code using one will break when a build
	machine uses the other. I used dist-hook to just 'rm' those
	generated lex.*.cc files  from d4_ce and d4_function - the
	other generated scanners are OK. This is really a work-around
	since we should be able to include the generated scanners
	and then drop the build requirement for both bison and flex.

2015-07-07  James Gallagher  <jgallagher@opendap.org>

	Added absolute-header-m4 and removed .gitignore
	I think the .gitignore is from the gnulib source
	and is fine for their git repo, but not for clients
	of the library.

	Changed the tag for non-master travis builds to _travis
	... from -travis. Minor, but it bugged me.

	Modified travis.yml so that branches ending in -travis will be built.

	Updated gnulib code - this may affect the coverity results

2015-07-02  James Gallagher  <jgallagher@opendap.org>

	Coverity fix in dds.yy
	Fixed a potential leak where storage allocated is overwritten.
	An unlikely bug, but not a big deal to fix.

	Issues found using coverity fixed

2015-06-29  James Gallagher  <jgallagher@opendap.org>

	Fixed cppunit package for travis.yml

	Fixed a memory leak in dds.y

2015-06-26  James Gallagher  <jgallagher@opendap.org>

	Minor syntax error in TestArray; Travis now includes cppunit tests

	Memory leak in TestArray.cc plugged

	More changes WRT coverity and travis
	...in the travis.yml. Removed the before_build_command
	stuff from the coverity scan addon section since it seems
	to be redundant.

	Added coverity scan to travis CI

2015-06-25  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4.git

	Issues found in D4ParserSax2, DAS and DDS using Coverity.

2015-06-20  James Gallagher  <jgallagher@opendap.org>

	Finally fixed...?
	Using autoconf 2.69 make dist is building a tar-gz that includes the
	BUILT_SOURCES, which would be great for builders without bison 3. I'm
	not sure if that will work with autoconf 2.63.

	Move the D4 Function parser to its own directory.
	This is an attempt to really fix the stack, position and location.hh
	problem for once and for all. The Travis build is working, but maybe
	we're just lucky because a build from the tar.gz made using make dist
	was still failing.

2015-06-19  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4.git

2015-06-19  Ubuntu  <ubuntu@ip-172-31-34-168.ec2.internal>

	Modified build-deb-pkg.sh so that dap-config matches the installed files.

2015-06-19  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4.git

	Try using NOTPARALLEL with the libdap build - another travis hack.

2015-06-19  Ubuntu  <ubuntu@ip-172-31-34-168.ec2.internal>

	Modified DEBIAN/control to use libcurl4-openssl-dev as a dependency.
	Not sure why this was not working before.
	[ci skip]

	Merge branch 'master' of https://github.com/opendap/libdap4

	Added hackery script to DEBIAN directory.
	This will help with my simple deb file used for the bes build.

2015-06-18  James Gallagher  <jgallagher@opendap.org>

	Modified Makefile.am and d4_ce/... so bison is called only once
	This should stop the semi-random build fails for libdap4 on Travis
	and for other people.

	Added .NOTPARALLEL to d4_ce/Makefile.am for the grammar files
	I hope this fixes the odd issue with the generated grammar files
	breaking hte build in a random fashion. The error may be do to parallel
	builds running bison several times for each of the generated files, all
	at the same time.

	Cleaned up the d4_ce code
	The Makefile.am had leftover parts from the attempt to make the build
	work when bison 3 was not present. That may have been the cause of the
	seemingly random build errors I see on Travis CI

2015-06-17  James Gallagher  <jgallagher@opendap.org>

	Added dpkg -l to travis.yml
	This is part of debugging the bes travis build - I cannot seem to sort
	out the libcurl dependency since my Ubuntu AMI is a 14.x but the build
	is using 12.x

	travis bison hack...

2015-06-17  Ubuntu  <ubuntu@ip-172-31-34-168.ec2.internal>

	Merge branch 'master' of https://github.com/opendap/libdap4

	Changed DEBIAN/control arch to amd64

2015-06-17  James Gallagher  <jgallagher@opendap.org>

	travis.yml edits
	Now uses deploy section only for tagged pushes; removed unneeded
	--force-yes with apt-get; and will build tags in addition to the
	master branch.

	Fixed build-deb-pkg.sh and added 'deploy' section to travis.
	Not sure about the deploy bit...

2015-06-16  James Gallagher  <jgallagher@opendap.org>

	Use newly built bison 3
	Added /usr/local/bin to PATH...

	Build bison from source (circling back)
	Travis-CI is currently using ubuntu 12 which using bison 2; Ubuntu 14
	has bison 3 in its package system.

	More tweaks to the simple deb package build
	This is a deb package for use with travis-ci when we get a bes CI
	build working

	Added debian package build to travis.yml
	...also tried using --force-yes to get bison to load with apt-get
	[ci skip]

2015-06-16  Ubuntu  <ubuntu@ip-172-31-34-168.ec2.internal>

	Added the build-deb-pkg.sh script.

	Added DEBIAN/control
	Use this along with dpkg-deb --build libdap_<version> to make a
	debian package.

2015-06-16  James Gallagher  <jgallagher@opendap.org>

	Another change to the travis.yml file
	It now uses bison installed using apt-get

2015-06-08  James Gallagher  <jgallagher@opendap.org>

	travis-ci error fixed
	I left --prefix=... on the configure of bison but $prefix's definition
	was moved to a later step.

	Reorganization of the travis.yml script.

2015-06-07  James Gallagher  <jgallagher@opendap.org>

	clang...

	...another try at clang support

	...another try at clang

2015-06-06  James Gallagher  <jgallagher@opendap.org>

	minor tweak to 'make install' with sudo -i

	fix for clang

	more travis ci changes - learning what this can do...

	Added some package installs to travis ci

	travis ci fix

	travis ci: added install of libdap

	travis ci change: install bison 3 using sudo

2015-06-05  James Gallagher  <jgallagher@opendap.org>

	Travis CI updates

	Added an initial .travis.yml file

2015-06-01  James Gallagher  <jgallagher@opendap.org>

	Added DBG2N - no line number version of DBG2

2015-05-24  James Gallagher  <jgallagher@opendap.org>

	Fixed comment

2015-05-23  James Gallagher  <jgallagher@opendap.org>

	D4FilterClause fixes

	Formatting and ctor warnings fixed

	Added D4FilterClause unit test
	... and removed ancient dejagnu tests

2015-05-14  James Gallagher  <jgallagher@opendap.org>

	Added a new function to make a temp file using mkstemps()
	This new function returns the temp file's name and a C++ fstream
	object that is opened to the temp file. This change adds to the
	libdap API.

2015-05-12  James Gallagher  <jgallagher@opendap.org>

	Fixed missing <string> include. Patch from O. Poplawski.

	Fix getopt() use. Patch from O. Poplawski

	Broke --enable-developer; now fixed.

	Fixed issues in configure and Makefiles reported by O. Poplawski.
	--enable-coverage and --enable-valgrind were broken.
	Setting CXXFLAGS to nothing broke builds on fedroa 21

	Added coverage file to gitignore

2015-05-01  James Gallagher  <jgallagher@opendap.org>

	Formatting, old code removeal, doxygen updates

2015-04-05  James Gallagher  <jgallagher@opendap.org>

	Bison 3 is required for the build.
	This might change, but for the next release (April 2015) it is a
	requirement for building the code. It will be possible to get the
	devel rpm and, however, and develop code that uses libdap w/o
	needing bison 3.

2015-04-03  James Gallagher  <jgallagher@opendap.org>

	Bumped up the library versions
	Each of libdap, libdapclient and libdapsever likely have new interfaces
	but the old interfaces are intact, so CURRENT and AGE are increased,
	and REVISION is reset to 0.

	Various changes as needed for the release.

2015-03-31  James Gallagher  <jgallagher@opendap.org>

	Added to gitignore

	Hacked more for the FlexLexer.h kludge...

	Resurrected the D4*Scanner.h files

	Modified the FlexLexer.h scheme
	Now it fits more with the way I'm handling the other generated
	files. The header is in the generated files dir and is only
	copied out when bison 3 is not found. It's still a kludge...

	Added FlexLexer.h
	This might be a mistake - remove if this fails on linux, etc.

2015-03-30  James Gallagher  <jgallagher@opendap.org>

	Rest of changes for template grammar files
	Now if bison 3.0+ is not found, the build will use
	template versions of the generated grammar files. This
	removes the dependence on bison 3.0 for most source
	builds. Of course, if you want to modify the D4 grammar
	you need bison 3.

	Added generated grammar sources
	When a machine does not have bison 3, it's a pain to install it, esp.
	at a site that doesn't let the builder do that! The work-around is to
	provide a backup set of sources that can be copied by the Makefile in
	lieu of the real thing.

2015-03-25  James Gallagher  <jgallagher@opendap.org>

	Added support 'match' to D4FilterClause

	Added commentary and some English fixes
	...to Operators.h and RValue

	Added D4FilterClause.
	This will be used to evaluate the DAP4 filter expressions.
	...in progress.

	Merge branch 'master' of https://github.com/opendap/libdap4

	Dropped the autoconf required version to 2.63
	This accommodates RH/CentOS 6. I also had to change the AT_ARG_OPTION_ARG
	calls so that multi-word options used underscores and not dashes.

	Change to libdap.spec
	I've added the dist info to the RPM and fixed up some of the
	description, too.

2015-03-20  James Gallagher  <jgallagher@opendap.org>

	Started implementing DAP4 filters

2015-03-17  James Gallagher  <jgallagher@opendap.org>

	Edited comments and reformatted.
	Also added a new method to Sequence that I subsequently removed
	from the code using the preprocessor. ...it might come in handy
	some day.

	Refactored TestCommon
	Now TestCommon.cc is not used; the constructors, etc. are now
	in TestCommon.h. In the future this class could be modified so
	that the 'series_values' property was accessible from TestCommon
	and not just the individual type classes.

	Change a comment emmited by configure less convoluted.

2015-03-16  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4

	Changes to build and to the Test* classes.
	Now configure tests for the uuid/uuid.h header (before it tested only
	for the library which meant that installing the libuuid package and
	not the needed libuuid-devel package would pass configure but fail
	during the build). I also removed some unused code from the Test* classes.
	The TestCommon.cc file was not needed.

	rpm target fixes
	Added getdap4 to the files list for RPM and fixed distclean/distcheck
	where some DMR tests are marked xfail (expected fail). With autotest,
	xfail leaves some cruft behind in the DMRTest.dir directory that
	./DMRTest --clean should remove (see the clean-local makefile target).
	However, because a space was added to the names in the Makefile.am,
	those --clean calls were not being made. Fixed. Somewhat exasperating...

2015-02-27  James Gallagher  <jgallagher@opendap.org>

	Merge branch 'master' of https://github.com/opendap/libdap4

2015-02-26  James Gallagher  <jgallagher@opendap.org>

	Added convenience function to util
	The new function extracts doubles from numeric arrays using a vector
	to cu down on memory management complexity (at the cost of an addition
	to the interface).

2015-02-21  James Gallagher  <jgallagher@opendap.org>

	Fixed GetOpt.cc includes
	This code used old includes (string.h, etc.) and was missing
	stdio. I added <cstdio> and changed stdlib.h and string.h to
	cstdlib and cstring. Removed a duplicate header. Build now works
	on AWS Centos 6.

2015-02-19  James Gallagher  <jgallagher@opendap.org>

	More Cleanup
	I re-indented TestSequence and removed some old code
	as part of my work on the aggregation server (which
	may not make it into the BES, another story...)

	Cleanup
	I removed unused code from Sequence, DDS.cc and AttrTable.cc

2015-02-09  James Gallagher  <jgallagher@opendap.org>

	Tweaked D4Sequence for BES function's tabular()
	The d_length field is now set when set_values()
	is called.

2015-02-02  James Gallagher  <jgallagher@opendap.org>

	Removed incorrect comment in Vector.h

2015-01-14  James Gallagher  <jgallagher@opendap.org>

	Added a type_name() function to util.cc/h
	In the merge with DAP4, type_name() split into D2type_name() and
	D4type_name(). That removes the symbol 'type_name()' from the library.
	I added a function with that name that first tries to apply D4... and
	then D2. If both fail, an exception is thrown. This provides forward
	looking backward compatibility.

	Fixed an issue with String constant arguments to DAP4 functions.
	The function parser for DAP4 was including the double quotes that
	delimit string constants in the value itself. I modified the parser
	to eliminate those.

2015-01-07  James Gallagher  <jgallagher@opendap.org>

	HTTPCacheTest was failing; fixed.
	The test assumed that the number of headers for a cached response
	would equal the headers in a response. This might not be the case.
	For example, the received response might include a Keep-Alive header.

	Error in D4Maps copy ctor fixed.
	This addresses an error in the DMRTest.cc unit test for the DMR
	class. DMR's copy ctor was failing to copy the maps from Arrays
	in the src object to the dest object because of an error in the
	D4Maps m_duplicate method.

	Corrected some comment text in DMR.cc

2015-01-05  James Gallagher  <jgallagher@opendap.org>

	Minor changes to the Makefile.am files

2014-12-31  James Gallagher  <jgallagher@opendap.org>

	Merge remote-tracking branch 'origin/dap4'
	Conflicts:
		unit-tests/HTTPConnectTest.cc

2014-12-12  James Gallagher  <jgallagher@opendap.org>

	Added eclipse meta files to gitignore.

	Merge branch 'master' of https://github.com/opendap/libdap

	comment change in main_page.doxygen

2014-12-03  James Gallagher  <jgallagher@opendap.org>

	Added files  left over from a full build to gitignore

2014-11-19  James Gallagher  <jgallagher@opendap.org>

	Added .gitignore and hacked up Makefile.am so that it uses subdir-objects.

2014-10-21  James Gallagher  <jgallagher@opendap.org>

	Added a valgrind 'suppressions' file for OSX 10.9. Not sure where this is going, but valgrind for unit tests and regression tests is probably a good thing.

	Fixed to the Makefile.am in d4_ce so that the grammar for DAP4 builds correctly.

2014-10-20  James Gallagher  <jgallagher@opendap.org>

	Changed HTTPConnect.cc on the release branch and then copied here. Minor fix in the test baseline to accommadate a change in the test host (etag changed with a change in the Apache server version).
	M    unit-tests/HTTPConnectTest.cc

2014-10-16  James Gallagher  <jgallagher@opendap.org>

	Fixed ticket 2260 - The issue where the DMR copy ctor built a DMR that would subsequently cause a segfault has been fixed. The problem was in Array::update_dimension_pointers(). The D4Dimension objects were not copied correctly between the old and new set of D4Dimensions in the Groups in the source and dest DMRs

2014-10-14  James Gallagher  <jgallagher@opendap.org>

	Leak fix in the D4CE code - both the CE and Functions parser leaked memory - fixed. Tests HTTPCacheTest and HTTPConnectTest fixed - there were two issue with the new test.o2 server. Array.h - removed the D4Dimensions.h include.

	Bug fix in ServerFunction: The setFunction setters in ServerFunction were setting other function pointers to null so that the ServerFunction object could hold only one kind of function for any given name. If we want linear_scale, e.g., to work for both DAP2 and DAP4, the class has to be able to support a btp_func and D4Function. I fixed the ctors and setters so that works.

2014-09-17  James Gallagher  <jgallagher@opendap.org>

	Renamed the bison 'Driver' classes to be D4ConstraintEvaluator and D4FunctionEvaluator. Added an eval() method to the latter so that the BES can evaluation DAP4 Functions in a some sort of a sane way. I also moved the old and crufty D4ResponseBuilder code out of the libdap dir; there's a class with the same name in tests, but it does different (and more sane) things.

	Comments and changed template type from 't' to 'T'.

	Comments...

2014-09-12  James Gallagher  <jgallagher@opendap.org>

	Fixed FQN() for Constructors that hold arrays.

2014-09-11  James Gallagher  <jgallagher@opendap.org>

	I removed the DMR& parameter to BaseType::intern_data(). This seems to be a relic from DAP2 (where it may not have actually been used either) and it makes employing delegation somewhat harder in the 'transmitter' handlers I'm working on porting over to DAP4.

	Modified to use the new 'DMR-free' version of intern_data(). Also fixed the help message.

	Added a DMR that holds a nested sequence so this can be tested - currently does not work and is not part of the tests.

2014-09-08  James Gallagher  <jgallagher@opendap.org>

	Marked four tests a xfail. See ticket #2244
	M    tests/DMRTest.at

	I added specializations for transform_to_dap4() to TestStructure and TestSequence so that, among other things, the dapreader code can build DAP4 data responses using DAP2 response files.

2014-09-05  James Gallagher  <jgallagher@opendap.org>

	Fixed hiccup in Makefile.am that prevented the D4Connect.h header from being installed - it was not listed in pkginclude_HEADERS. Added subdir-objects to the options list in the Makefile.am too. Fixed an error message in getdap4 - text change only.

2014-09-04  James Gallagher  <jgallagher@opendap.org>

	Added a FQN() method that will return the FQN for any variable, including the group part. Also added a decent comment on the D4Group::find_var() method. Unit tests added to the D4GroupTest unit test.

2014-09-03  James Gallagher  <jgallagher@opendap.org>

	Removed duplicate code in Sequence and Structure for the transform_to_dap4() method; moved the common code to Constructor.

2014-08-27  James Gallagher  <jgallagher@opendap.org>

	Added an update of the weak pointers held by Array so that the DMR::m_duplicate() method can use D4Group::ptr_duplicate(). This was useful when porting the gdal_handler code to DAP4.

2014-08-21  James Gallagher  <jgallagher@opendap.org>

	Change to Constructor::serialize(). It now calls read(). This was removed because it broke the behavior of D4Sequence - at least in the test code (it still does). More work needs to be done on this, but the FreeForm handler, which builds sequences is working with D4Sequence (DMR/DAP4 Data via the DDS --> DMR hack). I will need to revisit this...

2014-08-19  James Gallagher  <jgallagher@opendap.org>

	Now has a separate method to 'blend in' variables from a DDS into the DMR. This is used by the DDS-ctor for DMR but it can also be called on an existing DMR like the ones built by the BES. This was done so that information set when the BES builds the DMR won't be lost.

	Changes to the transform_to_dap4() method - both Sequence and Structure have implementations that work for tests and clients, but not most servers. Array should be pretty general and may work for most handlers.

2014-08-18  James Gallagher  <jgallagher@opendap.org>

	Removed unused code - part of an aborted attempt to add a factory class as a param to BaseType::transform_to_dap4(...). Instead, it's likely better to subclass that method in the types like FFSequence (in the handlers). In the process I found a fair amount of old code that was commented out and removed it.

2014-08-15  James Gallagher  <jgallagher@opendap.org>

	Fixed an issue in Array where D4Dimensions made using the 'transform dap2 to dap4 code' with the same name but different sizes could be made. This was bad; I changed the code so that when a name conflict is found, the D4Dimension  will have a different name (made using the orig dimension name and the variable name). In this case, the fist D4Dimension gets to use the name exactly as it appears in the Array while the second D4Dimension gets a more cumbersome, but unique, name.

	Fixed the order of printing of attributes and variables for constructor types when working with DAP2 responses (i.e., the DDX). The order (attr; vars) is reversed in DAP4.

2014-08-14  James Gallagher  <jgallagher@opendap.org>

	Patch for getopt applied
	_M   .
	M    unit-tests/DDSTest.cc
	M    unit-tests/DDXParserTest.cc
	MM   unit-tests/SequenceTest.cc
	M    unit-tests/ServerFunctionsListUnitTest.cc

	Patch from Orion Poplawski to fix some of the getopt calls in the unit-tests
	M    unit-tests/DDSTest.cc
	M    unit-tests/DDXParserTest.cc
	M    unit-tests/SequenceTest.cc
	M    unit-tests/ServerFunctionsListUnitTest.cc

2014-08-11  James Gallagher  <jgallagher@opendap.org>

	Changes from H 1.9.9 on the trunk

2014-08-09  James Gallagher  <jgallagher@opendap.org>

	Merge from the trunk to include changes for Hyrax 1.9.9
	_M   .
	M    RValue.cc
	M    XMLWriter.h
	M    configure.ac
	M    ChangeLog
	M    main_page.doxygen
	M    INSTALL
	M    libdap.spec
	M    README
	M    Makefile.am
	M    NEWS
	M    ce_expr.yy
	M    unit-tests/HTTPConnectTest.cc
	M    doxy.conf

2014-08-08  James Gallagher  <jgallagher@opendap.org>

	Version 3.13.3
	M    ChangeLog
	M    INSTALL
	M    NEWS
	M    README
	M    configure.ac
	M    doxy.conf
	M    libdap.spec
	M    main_page.doxygen

	Fixed a leak in RValue.cc using a patch from Aron (ADB)

2014-08-01  James Gallagher  <jgallagher@opendap.org>

	Release checklist steps for 3.13.2
	M    ChangeLog
	M    INSTALL
	M    NEWS
	M    README
	M    configure.ac
	M    doxy.conf
	M    libdap.spec
	M    main_page.doxygen

2014-07-30  James Gallagher  <jgallagher@opendap.org>

	Second fix for ticket 2240 - SCAN_STR from the CE scanner was leaking because the parser did not delete the reutrned string. I also modified the first fix so that a local tmp string was used instead of new dynamic storage.
	M    ce_expr.yy

	Fixed a memory leak reported by Aron.Bartle@mechdyne.com. See ticket 2240.
	M    ce_expr.yy

	I added a comment about a potential memory leak to ce_expr.yy

2014-05-07  James Gallagher  <jgallagher@opendap.org>

	spelling

	Fixed a test baseline in HTTPConnectTest so that it will work with the new headers returned by H 1.9.3 (which include so things from DAP4).

2014-05-05  James Gallagher  <jgallagher@opendap.org>

	namespace libdap addex
	M    XMLWriter.h

2014-05-02  James Gallagher  <jgallagher@opendap.org>

	Minor edit to Makefile.am for builds on centos 5 - there libgl builds a copy of unistd.h that doesn't work with flex generated cc files. So I pulled -I./gl from CPP flags for the parsers library.

	Merged code from the trunk - this effectively merges changes from the Hyrax 1.9.3 release.

2014-04-22  James Gallagher  <jgallagher@opendap.org>

	Updated for 3.13
	M    INSTALL
	M    README
	M    configure.ac

2014-04-15  James Gallagher  <jgallagher@opendap.org>

	Updates to NEWS, ChangeLog to match the bump in the vesion number.

2014-04-11  James Gallagher  <jgallagher@opendap.org>

	Added comment info to abi_checker.xml.in so we'll remember how to use the abi checker.

	path fix/typo

	Added abi_checker.xml.in file for the perl-based abi checker. Seems to work only with gcc.

2014-03-29  James Gallagher  <jgallagher@opendap.org>

	typo...

	Unified the DMR() constructors so they all initialize the fields in essentially the same way.

2014-03-28  James Gallagher  <jgallagher@opendap.org>

	Fixed forward declarations in the D4 parser code.

2014-03-26  James Gallagher  <jgallagher@opendap.org>

2014-03-24  James Gallagher  <jgallagher@opendap.org>

	Commentary

2014-03-22  James Gallagher  <jgallagher@opendap.org>

	Removed the const iterator methods from DDS since they broke gcc on OSX 10.7.

	DDS --> DMR Grid working and tested.

2014-03-21  James Gallagher  <jgallagher@opendap.org>

	More changes for Grid in the DDS --> DMR code. It's not quite working, but the other types work. One test fails.

	Starting on Grid for the DDS to DMR code...

2014-03-20  James Gallagher  <jgallagher@opendap.org>

	more DDS --> DMR tests

	DDS --> DMR attribute merge/transform tests added.

2014-03-19  James Gallagher  <jgallagher@opendap.org>

	DDS --> DMR: Attribute transform method added to D4Attributes and wired up the BaseType::transform_to_dap4(). Not tested.

	DDS --> DMR; everything works except Grid and Attributes.

	DDS --> DMR: Datasets with Structures now work. Tested.

	commentary

2014-03-18  James Gallagher  <jgallagher@opendap.org>

	Changed the transform_to_dap4() method so that it will work with constructor types. Not implemented yet for them, however.

	Two tests for the DDS to DMR code.

	Little bit of the DDS --> DMR solution. No tests.

	Initial fix for shared dimensions and Enumerations in function results - this code (in dmr-test.cc) depends on the original DMR remaining intact until the function result is serialized. To fix this, either change how D4Dimension and D4EnumDef objects are stored or use reference counted pointers.

2014-03-17  James Gallagher  <jgallagher@opendap.org>

	Added

	Added all the $<type> special forms for the DAP4 numeric types along with tests to the DAP4 Function expression parser.

2014-03-14  James Gallagher  <jgallagher@opendap.org>

	The $<type> special form works and the argument length 'hint' optimization is working too. I made a template function that will shorten the rules in the parser so that each kind of simple type can be used with this ($Byte, $Int16, ...) but only implemented $Byte. Added a test.

2014-03-14  Nathan Potter  <ndp@opendap.org>

	libdap: Renaming intenral variables to clearly indicate when things are using DAP2 ce's and DAP4 ce's

	libdap: Renaming intenral variables to clearly indicate when things are using DAP2 ce's and DAP4 ce's

	libdap: Renaming intenral variables to clearly indicate when things are using DAP2 ce's and DAP4 ce's

	libdap: Renaming intenral variables to clearly indicate when things are using DAP2 ce's and DAP4 ce's

2014-03-14  James Gallagher  <jgallagher@opendap.org>

	Need to include both the .cc and .hh files for the parsers in the Makefile.am

	Added

	Initial version of the function parser with $<type> special forms (untested). The code compiles and passes existing tests.

2014-03-13  James Gallagher  <jgallagher@opendap.org>

	Marked some tests as xfail - because the function evaluation code does not deal with names dimensions correctly.

	more tests for server functions; composition is working

	Function parsing and evaluation working; initial set of tests added.

2014-03-12  James Gallagher  <jgallagher@opendap.org>

	Starting on function evaluation.

	Added a DAP4 server function - modified TestFunction to make D4TestFunction that includes both a DAP2 and DAP4 scale() function. The parser recognizes this function and seems to work. Not quite ready for a complete set of tests yet...

	initial cut of the tests for function parsing - it can figure out that a function has not been registered.

	Added initial tests for the Function parser; reorganized the CE parser tests in dmr-test.cc

2014-03-12  Nathan Potter  <ndp@opendap.org>

	lobdap: Fixed compile issue

2014-03-12  James Gallagher  <jgallagher@opendap.org>

	Added...

	Working on tests for the D4 function parser... Removed use of ConstraintEvaluator in intern_data() and other places for DAP4.

2014-03-11  James Gallagher  <jgallagher@opendap.org>

	First cut at the DAP4 function parser

	new stuff added for DAP4 functions and the parsing of the same

	Removed unneeded includes; switched to forward class declarations; cleaned up the namespace std stuff (this is a header file so it should not contain 'using namespace std').

	Removed unneeded includes; switched to forward class declarations; cleaned up the namespace std stuff (this is a header file so it should not contain 'using namespace std').

	Removed unneeded includes; switched to forward class declarations; cleaned up the namespace std stuff (this is a header file so it should not contain 'using namespace std').

	Added namespace std:: stuff to the RValue.h file to remove a 'using namespace std' line from a header. Made sure the header did not depend on other code's #includes.

	Added support for the D4Function typedef and DAP4 functions in the ServerFunctionsList class and friends.

2014-03-07  James Gallagher  <jgallagher@opendap.org>

	Merged the trunk code to the dap4 branch

	Removed cruft from HTTPResponse.h

2014-03-05  Nathan Potter  <ndp@opendap.org>

	libdap: Added stylesheet support to D4AsyncUtil along with associated tests

2014-02-28  Nathan Potter  <ndp@opendap.org>

	libdap: Incremental ci for team sync

2014-02-19  Nathan Potter  <ndp@opendap.org>

	libdap: Added D4AsyncUtil (xml document generation)  and DapXmlNamespaces classes. Unit tests for former.

2014-02-05  James Gallagher  <jgallagher@opendap.org>

	Merged a tiny change to SequenceTest from the trunk

	Fixed the SequenceTest 'baseline' regex.
	M    unit-tests/SequenceTest.cc

2014-02-04  James Gallagher  <jgallagher@opendap.org>

	Merged with the trunk on 2/4/14

	Minor changes for OSX 10.9. Also, move tests/ResponseBuilder to D4ResponseBuilder so that the DAP2 function caching test code won't collide with it when I merge the trunk into this branch.

	Unit test updates after the OS upgrade from OSX 10.8 to 10.9. There seems to be an issue with the sizeof(std::string) and also with libxml2 and/or my code to read from a C++ stream and have libxml2 parse text/xml. For now I'm removing these tests... but will return to the libxml2 issue later (the sizeof(std::string) maybe a bad idea since that could be pretty variable between  libstdc++ versions - I might just drop that test).

2014-01-02  James Gallagher  <jgallagher@opendap.org>

	Added

	Added and/or corrected the creation date in the comments.

2013-12-31  James Gallagher  <jgallagher@opendap.org>

	Added test DMRs for/from the vol_1 spec from the CE chapter. (added more of them)

2013-12-30  James Gallagher  <jgallagher@opendap.org>

	Added test DMRs for/from the vol_1 spec from the CE chapter.

2013-12-27  James Gallagher  <jgallagher@opendap.org>

	Added test baseline

	Sequence arrays that hold arrays now work.

	collected hacks that were lost in the system restore made on 12/27/13

2013-12-23  James Gallagher  <jgallagher@opendap.org>

	Added tests for sequences that hold arrays and sequence arrays that hold arrays. Not all pass...

	Added tests for Sequences and arrays of sequences used with various CEs that project various things and/or slice the sequence array. Works. No filters yet.

	Structure arrays that hold arrays can now be constrained as can their fields. With tests.

	CEs that slice arrays that are fields of structures now work.

	Added a note about CEs like "a" when a is a strcuture that contains arrays. The array has to be 'marked' as such. The simple set_send_p code won't do.

	Structures with fields that are arrays now print using the DAP4 syntax

	Added. Simple structures that contain arrays are broken - their print rep is teh DAP2 print rep.

	Added. Structures of arrays that contain arrays segfault at this point.

2013-12-22  James Gallagher  <jgallagher@opendap.org>

	Added support for the 'fields' syntax where a structure s can have some/all of its fields projected using the suntax s{f1;f2;...}. This will provide a way to slice a structure array and  yet ask for a subset of its fields without a confusing syntax. Tests added too.

2013-12-21  James Gallagher  <jgallagher@opendap.org>

	Added test baseline for one of the new CE tests.

	Now shared dimensions are shown in a CDMR only if they are used by a projected (array) var.

2013-12-20  James Gallagher  <jgallagher@opendap.org>

	Structure field projection using the dot operator now works as does slicing of array of structure. Two tests fail; see #2041.

2013-12-08  James Gallagher  <jgallagher@opendap.org>

	Added 5 tests for array slicing CEs

	removed some cruft from the slicing/CE stuff for Arrays. Removed 'local_constriant' state from Array.

	Array and sdim slices now work. No tests.

2013-12-04  James Gallagher  <jgallagher@opendap.org>

	Added (partial) support for sdim slices; See Array::add_constraint() for what needs to be completed.

	Adding stuff to the CE Parser for DAP4 to handle shared dimension slices. ...in progress

2013-12-03  James Gallagher  <jgallagher@opendap.org>

	Added D4CEDriver::slice_dimension() to process shared dimension slices in the modified CE syntax we now have.

2013-12-02  James Gallagher  <jgallagher@opendap.org>

	libdap distcheck works now

	Fixed distcheck issue in d4_ce

	Updated baselines to accommodate new print order for dims, enums, ...

	Reordered the print order of DAP4 stuff in Groups, vars, arrays and Constructors to match what Dennis and I agreed on.

	Changed order of Groups' printing stuff (dims, etc.) and changed TestStr so that it does not change values unless 'series_values' is on.

	Added comment about stack/store BaseTypes and indexes as they are parsed

2013-11-29  James Gallagher  <jgallagher@opendap.org>

	Renamed testall to test_escaped_paths. Does not parse correctly.

	Enumerations are included in the CDMR only if they are used; media types are correct for the dods_data_ddx response (used for responnse caching); The D4 CE parser now clears the d_index vector before starting a new array slicing CE; added a test file (but not a test... see Trac) to check that the Enumerations really are being elided correctly.

	Fixed the content-description values (added dods_data_ddx back in since it's used for the response caching by the bes).

	Makefile,ams now make DMR xmls

	Compile libtest-types using -fPIC for linux now that it's used by a handler (dapreader

	Added include string.h to D4ParserSax2.h for memset on linux

2013-11-28  James Gallagher  <jgallagher@opendap.org>

	All tests work with the new install of D4CEDriver - the interface for the DAP4 CE parser.

	Added D4CEDrvier to the libdap headers that are installed; tweaked the local copy of ResponseBuilder so it more closely matches the code used by teh BES in DapResponseBuilder.

	fixes for AWS (ConetOS6) build

2013-11-27  James Gallagher  <jgallagher@opendap.org>

	Removed FlexLexer.h and hacked Makefile.am to clean the .hh files.
	D    d4_ce/FlexLexer.h
	M    d4_ce/Makefile.am

	initial version of code that suppresses shared dims in the CDMR when a 'local' slicing operator is applied to an array with shared dims. The Array's dims are demoted to anonymous dims.

	local slicing CEs work after a fashion...

	Dennis clarified the spec WRT chunk headers and modified his code. I changed mine back to 1 in bit 2 of the MSB means Little Endian byte order. It all works.

2013-11-26  James Gallagher  <jgallagher@opendap.org>

	Changed the chunked encoding so that bit 2 of the MSB of the chunk is set to indicate big endian hosts. Easy to swap back in the 'set if little endian' logic. Also added code to D4CEDriver to set CEs for Arrays. The serialization of values works but the CDMR is hosed when the Array has shared Dimensions.

	Added basic error response for the case where a variable was not found in the data set.

2013-11-25  James Gallagher  <jgallagher@opendap.org>

	Added mark_variable() method to D4CEDriver; this can be used to shorten the action section of the other projection rules RHS.

	Removed lame ctor from D4CEDriver: only pass an expression in via the parse() method. For the offending ctor, the expression was ignored. There was no need for the extra ctor.

	fixed minor issue with dmr-test: received DMRs should not be printed with 'constrained' set.

	Fixed teh DAP4 CE parser - simple projections now work.

	cleaning up...

	Added -c option to dmr-test - CE evaluation is not yet working.

	dmr-test linked to D4CEDriver - not tested yet

	Integrated d4_ce parsers to the libdap build

	removed @todo comment in chunked_istream.cc

	Added a bytes_in_buffer() method to chunked_istream. This can be used with read_next_chunk to gobble up the remain bytes in the buffer before they are dumped by the read next call.

	chunked io code passes tests.

	checkpoint - more chunkied I/O hacks. Now the byte order flag from only the first chunk is used. The flag is set in all the chunks by the sender.

2013-11-24  James Gallagher  <jgallagher@opendap.org>

	checkpoint - adopting the 'byte order in chunk header' version of the chunked protocol.

2013-11-22  James Gallagher  <jgallagher@opendap.org>

	spelling

	hacked tests and baselines so that the DMR Value element will be parsed (was value - lowercase 'v').

	Fixed value --> Value inthe XML
	M    unit-tests/D4-xml/D4Attributes_1.xml
	M    unit-tests/D4-xml/D4Attributes_2.xml
	M    unit-tests/D4-xml/D4Attributes_3.xml
	M    unit-tests/D4-xml/D4Attributes_assignment.xml
	M    unit-tests/D4-xml/D4Attributes_assignment_2.xml
	M    unit-tests/D4-xml/D4Attributes_copy_ctor.xml
	M    unit-tests/D4-xml/D4Attributes_values_1.xml
	M    unit-tests/D4-xml/D4Group_everything.xml
	M    unit-tests/D4-xml/D4Group_named_with_scalars_and_stuff.xml
	M    unit-tests/D4-xml/D4Group_with_scalars_and_stuff.xml
	M    unit-tests/D4-xml/DMR_0.1.xml
	M    unit-tests/D4-xml/DMR_0.1_baseline.xml
	M    unit-tests/D4-xml/DMR_0.xml
	M    unit-tests/D4-xml/DMR_0_baseline.xml
	M    unit-tests/D4-xml/DMR_1.xml
	M    unit-tests/D4-xml/DMR_2.1.xml
	M    unit-tests/D4-xml/DMR_2.xml
	M    unit-tests/D4-xml/DMR_3.1.xml
	M    unit-tests/D4-xml/DMR_3.1_baseline.xml
	M    unit-tests/D4-xml/DMR_3.2.xml
	M    unit-tests/D4-xml/DMR_3.3.xml
	M    unit-tests/D4-xml/DMR_3.3_baseline.xml
	M    unit-tests/D4-xml/DMR_3.xml
	M    unit-tests/D4-xml/DMR_4.xml
	M    unit-tests/D4-xml/DMR_5.1.xml
	M    unit-tests/D4-xml/DMR_5.1_baseline.xml
	M    unit-tests/D4-xml/DMR_5.xml
	M    unit-tests/D4-xml/DMR_6.1.xml
	M    unit-tests/D4-xml/DMR_6.1_baseline.xml
	M    unit-tests/D4-xml/DMR_6.2.xml
	M    unit-tests/D4-xml/DMR_6.2_baseline.xml
	M    unit-tests/D4-xml/DMR_6.xml
	M    unit-tests/D4-xml/DMR_7.1.xml
	M    unit-tests/D4-xml/DMR_7.2.xml
	M    unit-tests/D4-xml/DMR_7.3.xml
	M    unit-tests/D4-xml/DMR_7.4.xml
	M    unit-tests/D4-xml/DMR_7.5.xml
	M    unit-tests/D4-xml/DMR_7.xml
	M    unit-tests/D4-xml/DMR_8.xml

	value --> Value for the name of the element
	M    dmr-testsuite/test_array_1.xml.trans_base
	M    dmr-testsuite/test_array_10.xml
	M    dmr-testsuite/test_array_10.xml.trans_base
	M    dmr-testsuite/test_array_11.xml
	M    dmr-testsuite/test_array_11.xml.trans_base
	M    dmr-testsuite/test_array_2.xml.trans_base
	M    dmr-testsuite/test_array_3.xml.trans_base
	M    dmr-testsuite/test_array_4.xml.trans_base
	M    dmr-testsuite/test_array_5.xml.trans_base
	M    dmr-testsuite/test_array_6.xml.trans_base
	M    dmr-testsuite/test_array_7.xml.trans_base
	M    dmr-testsuite/test_array_8.xml.trans_base
	M    dmr-testsuite/test_simple_1.xml.trans_base
	M    dmr-testsuite/test_simple_10.xml.trans_base
	M    dmr-testsuite/test_simple_2.xml.trans_base
	M    dmr-testsuite/test_simple_3.xml.trans_base
	M    dmr-testsuite/test_simple_4.xml
	M    dmr-testsuite/test_simple_4.xml.baseline
	M    dmr-testsuite/test_simple_4.xml.send_base
	M    dmr-testsuite/test_simple_4.xml.trans_base
	M    dmr-testsuite/test_simple_5.xml.trans_base
	M    dmr-testsuite/test_simple_6.xml.trans_base
	M    dmr-testsuite/test_simple_7.xml.trans_base
	M    dmr-testsuite/test_simple_8.xml.trans_base
	M    dmr-testsuite/test_simple_9.1.xml.trans_base
	M    dmr-testsuite/test_simple_9.xml.trans_base

2013-11-19  James Gallagher  <jgallagher@opendap.org>

	checkpoint - adding the DAP4 parser. nascent...

2013-11-14  James Gallagher  <jgallagher@opendap.org>

	Removed some old, duplicate code

2013-11-13  James Gallagher  <jgallagher@opendap.org>

	UInt64 array bug fixed

	Tested Enum array support - Works. AUInt64 array test is failing, however.

	Tested Enum array support - Works. AUInt64 array test is failing, however.

	Added support for Arrays of Enum in TestArray.

	Modified Vector so that set_value()/value() can be used with enum arrays. Code has to be savvy about the Enum type, however. In the process, made these methods along with the value(indices, array) methods templates with explicit instantiation.

	checkpoint on the way to enum arrays

	Added a first crack at templated value() method for Vector.cc.

2013-11-12  James Gallagher  <jgallagher@opendap.org>

	Fixed issues in D4Connect related to media types; Added media_types.h; Added tests (pretty limited) for Char; Added parser support for arrays of Enum; added print_dap4() support for arrays of Enum (but the arrays still don't work, only the DMR stuff works).

	Added support for Char; other tests broke as I twidled code for the content type mess. Char untested.

2013-11-11  James Gallagher  <jgallagher@opendap.org>

	Minor fix for the DAP4 media types

2013-11-10  James Gallagher  <jgallagher@opendap.org>

	Client code looks for Content-Type; does not seem to be returned by the OLFS or there's an error in reading the CT header value from curl's internal goo.

	Added client support for the data response (D4Connect and getdap4).

2013-11-08  James Gallagher  <jgallagher@opendap.org>

	There appears to be no Content-Type or Content-Description header in the response document - I hacked D4Connect to decode a 'no type' response as a DMR when request_dmr() is called, for now.

	getdap4 reads DMRs from a server, builds binary DMR objects and prints them out.

	Fixed bug in getdap4 that prevented it from reading from stdin

2013-11-07  James Gallagher  <jgallagher@opendap.org>

	Repaired the mime types errors - now DDX is refferred to as 'dods-ddx' and 'dods-data-ddx' while the dap4 things are dap4-dmr and dap4-data. The multipart code is still in mime_util.cc since it's being used by the function value cache hack, but that could be changed to use the DAP4 responses.

2013-11-05  James Gallagher  <jgallagher@opendap.org>

	Minor formatting changes

2013-10-30  James Gallagher  <jgallagher@opendap.org>

	Errors fixed from machine at home. D4StreamUnMarshaller didn't include dods-datatypes.h; getdap4 call to usage() is ambiguous (not fixed).

2013-10-29  James Gallagher  <jgallagher@opendap.org>

	Get DMR from a file is broken; seg fault.

	Added (untested) support for reading a dmr from a file...

	Added a basic client to libdap for DAP4 - reads DAP4 data response documents from local files only at this point.

	Added a basic client to libdap for DAP4 - reads DAP4 data response documents from local files only at this point.

2013-10-28  James Gallagher  <jgallagher@opendap.org>

	Added new D4Connect class - a work in progress.

2013-10-25  James Gallagher  <jgallagher@opendap.org>

	svn:ignore update

	Added getdap test baseline

	Added a simple test for getdap and generally looked at different ways to write a DAP4 CLI client. Fixed some comment errors along the way...

2013-10-24  James Gallagher  <jgallagher@opendap.org>

	All tests now pass for array projections for server function arguments.

	tests pass for array projections in function arg lists

	Fixed an obscure bug in the test function - for the scalar case it was not reading the arg's value.

2013-10-23  James Gallagher  <jgallagher@opendap.org>

	missed one baseline for the function stuff...

	Added support for array subsetting (projection) in the argument list of a function. Tests need work and there's an issue when the function arg is a scalar not an array. Also, the intern_data() methods don't work, but this may be a larger issue with the hack to the function evaluation scheme added for 'grads syntax' support.

	Opaque arrays now work - they are stored using BaseType pointers (like the constructor types) instead of as a C array of vector<uint8_t>, so they are not optimized. Overhead will be high for large arrays of Opaque, but how often will that happen?

2013-10-22  James Gallagher  <jgallagher@opendap.org>

	D4Opaque::print_val() now works; tests added

	All tests pass - Enums in decent shape.

	Maps and Enums, when referenced should use FQNs. Now the DMR prints this way even though my parser tolerates relative names.

	Error baselines updated
	M    tests/dmr-testsuite/test_simple_3_error_3.xml.baseline
	M    tests/dmr-testsuite/test_simple_3_error_1.xml.baseline
	M    tests/dmr-testsuite/test_simple_3_error_2.xml.baseline

2013-10-21  James Gallagher  <jgallagher@opendap.org>

	More Enum fixes

	More enum tests

	Fix to checksum() for D4Enum - must use just the part of d_buf that matches the type in the enumeration definition.

	Test file added - Both Enum and Opaque need work to pass their tests.

	D4Enum seems to work - dmr-test returns valid stuff.

	Opaque minor fixes and tests added via D4ParserSAX2 unit tests

	Added TestOpaque

	D4Opaque added - no tests yet, but the code builds

2013-10-21  Joe Lee  <hyoklee@hdfgroup.org>

	fixed the bug #2016.

2013-10-21  James Gallagher  <jgallagher@opendap.org>

	Add D4Opaque... checkpoint; not working yet

2013-10-19  James Gallagher  <jgallagher@opendap.org>

	Added tests for Enum

	All tests pass - might look into D4Enum ctors and/or asserts to make sure that both the element type and enum def pointer are set before different kinds of operations. NB: The enum def is needed to print and for some value accesses, but not for reading/writing numeric values.

	Enums close to working - one test in D4AttributesTest fails

	Added test class for D4Enum and set the stage for building valid D4Enums in the DMR parser - it will have to find the matching Enumeration definition in an enclosing group and record that, along with the base type for the enum.

2013-10-18  James Gallagher  <jgallagher@opendap.org>

	Checkpoint - working on Enum's ctor

	Checkpoint - working on Enum's ctor

	Hyrax 1.9.1
	M    configure.ac
	M    ChangeLog
	M    main_page.doxygen
	M    INSTALL
	M    libdap.spec
	M    README
	M    NEWS
	M    doxy.conf

	svn:ignore

2013-10-17  James Gallagher  <jgallagher@opendap.org>

	Manually patched changes to Sequence::read_row and TestSequence::read() from the DAP4 development branch so they work with the newly modified handlers (the DAP4 branch uses _trunk_ copies of the handlers). We will have to document this change before releasing the code!
	M    tests/TestSequence.cc
	M    Sequence.cc

	Added to svn:ignore

	Enums now work (but not arrays of Enums). BaseType::width(bool = false) is now a const method and Array::width() is no more (it didn't do anything that Vector::width() didn't do with fewer lines of code).

	Added D4Maps::operator=()

2013-10-16  James Gallagher  <jgallagher@opendap.org>

	Added support for Map - in the parser, Array and in unit tests. Needs better semantic checks, but first those have to be clarified...

	Added to svn:ignore

	Linux (centos 6.4) changes
	M    chunked_istream.h
	M    chunked_ostream.cc
	M    tests/dmr-test.cc
	M    chunked_istream.cc
	M    unit-tests/chunked_iostream_test.cc
	M    unit-tests/D4ParserSax2Test.cc

	Added to svn:ignore

	Merge from the trunk; this mostly involves a massive-looking change that's really only an edit to the FSF address in the copyright block (and thus just about every cc or h file). But it's only an edit to a comment. Also, I updated the gnulib code because I thought there was an issue there WRT byteswap.h and the distcheck build. Not the case, but the update was not a bad idea all the same. Lastly, some issues crept into new unit-tests that broke distcheck and those have been resolved. The distcheck target now works.
	_M   .
	M    ServerFunctionsList.cc
	M    ServerFunctionsList.h
	M    RValue.cc
	M    DODSFilter.cc
	M    XMLWriter.h
	M    HTTPResponse.h
	M    D4Dimensions.cc
	M    Int32.h
	M    Int16.cc
	M    Structure.h
	M    gridfields_functions.h
	M    error-test.cc
	M    AISResources.cc
	M    Str.h
	M    Sequence.h
	M    SignalHandler.cc
	M    ResponseTooBigErr.cc
	M    SignalHandler.h
	M    ResponseTooBigErr.h
	M    configure.ac
	M    XDRUtils.h
	M    ResponseCache.h
	M    debug.h
	M    UInt64.cc
	M    XDRStreamUnMarshaller.h
	M    Connect.h
	M    escaping.h
	M    fdiostream.cc
	M    D4EnumDefs.h
	M    gridfields_functions.cc
	M    ResponseBuilder.h
	M    DAPCache3.cc
	M    DAPCache3.h
	M    D4ParserSax2.cc
	M    DDXExceptions.h
	M    VCPP/sample/getdap.cc
	M    Keywords2.cc
	M    Resource.h
	M    Error.cc
	M    HTTPCacheDisconnectedMode.h
	M    XMLWriter.cc
	M    UnMarshaller.h
	M    Response.h
	_M   conf
	M    conf/snippet/c++defs.h
	M    conf/snippet/warn-on-use.h
	M    conf/snippet/arg-nonnull.h
	A  + conf/config.rpath
	M    Int16.h
	M    SignalHandlerRegisteredErr.h
	M    ConstraintEvaluator.cc
	M    DAS.h
	M    XDRFileMarshaller.h
	M    DDS.cc
	M    HTTPCacheTable.cc
	M    HTTPCacheTable.h
	M    D4ParseError.h
	M    BaseType.h
	M    Array.cc
	M    tests/TestInt16.h
	M    tests/TestUrl.h
	M    tests/TestArray.cc
	M    tests/TestFloat64.cc
	M    tests/TestFloat64.h
	M    tests/das-test.cc
	M    tests/TestUInt32.cc
	M    tests/TestGrid.cc
	M    tests/TestUInt16.cc
	M    tests/TestCommon.h
	M    tests/TestByte.cc
	M    tests/TestByte.h
	M    tests/ResponseBuilder.h
	M    tests/TestTypeFactory.h
	M    tests/TestArray.h
	M    tests/TestUInt16.h
	M    tests/TestInt32.cc
	M    tests/TestInt16.cc
	M    tests/TestInt32.h
	M    tests/TestStructure.h
	M    tests/TestFloat32.cc
	M    tests/TestSequence.h
	M    tests/TestStr.h
	M    tests/TestGrid.h
	M    tests/expr-test.cc
	M    tests/TestStructure.cc
	M    tests/TestUrl.cc
	M    tests/ResponseBuilder.cc
	M    tests/TestSequence.cc
	M    tests/TestStr.cc
	M    tests/TestTypeFactory.cc
	M    tests/TestFloat32.h
	M    tests/TestUInt32.h
	M    tests/dds-test.cc
	M    HTTPCacheInterruptHandler.h
	M    EventHandler.h
	M    Float64.h
	M    D4ParserSax2.h
	M    AISConnect.cc
	M    UInt16.cc
	M    InternalErr.h
	M    EncodingType.h
	M    DDXParserSAX2.cc
	M    UInt64.h
	M    AlarmHandler.h
	M    Marshaller.h
	M    Byte.cc
	M    Byte.h
	M    GNU/GetOpt.cc
	M    GNU/GNURegex.cc
	M    GNU/GNURegex.h
	M    ResponseBuilder.cc
	M    DataDDS.h
	M    DDS.h
	M    BaseType.cc
	M    XDRUtils.cc
	M    win32/gl/mbchar.h
	M    win32/gl/mbuiter.h
	M    win32/gl/mbchar.c
	M    ServerFunction.h
	M    HTTPCacheResponse.h
	M    Makefile.am
	M    RCReader.cc
	M    Constructor.h
	M    util_mit.h
	M    Keywords2.h
	M    Error.h
	M    DDXParserSAX2.h
	M    D4EnumDefs.cc
	M    Int32.cc
	M    DapObj.h
	M    DODSFilter.h
	M    HTTPCache.cc
	M    DataDDS.cc
	M    HTTPCache.h
	M    parser-util.cc
	M    DapIndent.h
	M    AISResources.h
	M    Float32.cc
	M    ObjectType.h
	M    ServerFunction.cc
	M    PipeResponse.h
	M    util.h
	M    AISExceptions.h
	M    AISDatabaseParser.h
	M    AttrTable.cc
	M    InternalErr.cc
	MM   mime_util.h
	M    Grid.h
	M    XDRStreamUnMarshaller.cc
	M    HTTPConnect.cc
	M    D4BaseTypeFactory.h
	M    AISMerge.h
	M    RValue.h
	M    Structure.cc
	M    Url.cc
	M    Vector.cc
	M    getdap.cc
	M    Int64.h
	M    BaseTypeFactory.h
	M    Str.cc
	M    Sequence.cc
	M    XDRFileUnMarshaller.cc
	M    Float32.h
	M    XDRFileUnMarshaller.h
	_M   gl
	A  + gl/glthread
	M    expr.h
	M    Int8.cc
	M    AttrTable.h
	MM   mime_util.cc
	M    Constructor.cc
	M    UInt32.h
	M    XDRStreamMarshaller.h
	M    AISMerge.cc
	M    D4BaseTypeFactory.cc
	M    parser.h
	M    Url.h
	M    Int64.cc
	M    BaseTypeFactory.cc
	M    Vector.h
	M    DAS.cc
	M    ConstraintEvaluator.h
	M    util.cc
	M    Clause.h
	M    Float64.cc
	M    Ancillary.h
	M    Operators.h
	M    Int8.h
	M    UInt32.cc
	M    XDRStreamMarshaller.cc
	M    Grid.cc
	M    util_mit.cc
	M    D4Maps.cc
	M    Connect.cc
	M    escaping.cc
	M    dods-limits.h
	M    HTTPConnect.h
	M    unit-tests/AISMergeTest.cc
	D    unit-tests/test_small_text_file.txt
	M    unit-tests/DASTest.cc
	M    unit-tests/ThreadTest.cc
	D    unit-tests/test_big_binary_file_2.bin
	D    unit-tests/test_big_binary_file_3.bin
	M    unit-tests/DDSTest.cc
	R  + unit-tests/test_config.h.in
	D    unit-tests/test_text_file.txt
	M    unit-tests/ArrayTest.cc
	M    unit-tests/chunked_iostream_test.cc
	D    unit-tests/test_big_binary_file.bin
	D    unit-tests/test_scalars_1.dat
	D    unit-tests/test_scalars_2.dat
	M    unit-tests/ByteTest.cc
	M    unit-tests/ResponseBuilderTest.cc
	M    unit-tests/AISDatabaseParserTest.cc
	M    unit-tests/ResponseCacheTest.cc
	D    unit-tests/test_opaque_1_bin.dat
	M    unit-tests/D4UnMarshallerTest.cc
	M    unit-tests/RCReaderTest.cc
	M    unit-tests/D4EnumDefsTest.cc
	M    unit-tests/DODSFilterTest.cc
	M    unit-tests/D4DimensionsTest.cc
	D    unit-tests/test_cmp.dat
	M    unit-tests/HTTPCacheTest.cc
	M    unit-tests/AISResourcesTest.cc
	M    unit-tests/SignalHandlerTest.cc
	A    unit-tests/D4-marshaller
	A  + unit-tests/D4-marshaller/test_scalars_2.dat
	A  + unit-tests/D4-marshaller/test_opaque_1_bin.dat.sav
	A  + unit-tests/D4-marshaller/test_vector_1_bin.dat
	A  + unit-tests/D4-marshaller/test_vector_2_bin.dat
	A  + unit-tests/D4-marshaller/test_cmp.dat
	A  + unit-tests/D4-marshaller/test_scalars_1_bin.dat
	A  + unit-tests/D4-marshaller/test_scalars_2_bin.dat
	A  + unit-tests/D4-marshaller/test_opaque_1_bin.dat
	A  + unit-tests/D4-marshaller/test_scalars_3_bin.dat
	A  + unit-tests/D4-marshaller/test_scalars_1.dat
	D    unit-tests/test_opaque_1_bin.dat.sav
	M    unit-tests/AttrTableTest.cc
	M    unit-tests/ancT.cc
	MM   unit-tests/MIMEUtilTest.cc
	M    unit-tests/HTTPConnectTest.cc
	M    unit-tests/ServerFunctionsListUnitTest.cc
	M    unit-tests/DDXParserTest.cc
	D    unit-tests/test_vector_1_bin.dat
	D    unit-tests/test_vector_2_bin.dat
	MM   unit-tests/fdiostreamTest.cc
	A    unit-tests/chunked-io
	A  + unit-tests/chunked-io/test_text_file.txt
	A  + unit-tests/chunked-io/test_small_text_file.txt
	A  + unit-tests/chunked-io/test_big_binary_file.bin
	A  + unit-tests/chunked-io/test_big_binary_file_2.bin
	A  + unit-tests/chunked-io/test_big_binary_file_3.bin
	M    unit-tests/SequenceTest.cc
	M    unit-tests/RegexTest.cc
	M    unit-tests/generalUtilTest.cc
	D    unit-tests/test_scalars_1_bin.dat
	M    unit-tests/D4MarshallerTest.cc
	D    unit-tests/test_scalars_2_bin.dat
	D    unit-tests/test_scalars_3_bin.dat
	M    unit-tests/Makefile.am
	M    unit-tests/Keywords2Test.cc
	M    unit-tests/parserUtilTest.cc
	MM   fdiostream.h
	M    StdinResponse.h
	M    DapIndent.cc
	M    XDRFileMarshaller.cc
	M    Clause.cc
	M    AISDatabaseParser.cc
	M    Array.h
	M    ResponseCache.cc
	M    AISConnect.h
	M    UInt16.h
	M    ce_expr.lex
	M    RCReader.h

2013-10-15  James Gallagher  <jgallagher@opendap.org>

	Added
	_M   gl
	A  + gl/m4/lib-link.m4
	A  + gl/m4/lock.m4
	A  + gl/m4/lib-prefix.m4
	A  + gl/m4/lib-ld.m4
	A  + gl/m4/eealloc.m4
	A  + gl/m4/extern-inline.m4
	A  + gl/m4/threadlib.m4
	A  + gl/wctype-h.c
	A  + gl/unistd.c

	Added
	A    gl/glthread
	A    gl/glthread/threadlib.c
	A    gl/glthread/lock.c
	A    gl/glthread/lock.h

	Added
	AM   config.rpath

	gl partial commit so I can merge again and pick up some missing files

	Added to gl
	A    gl/m4/lib-link.m4
	A    gl/m4/lock.m4
	A    gl/m4/lib-prefix.m4
	A    gl/m4/lib-ld.m4
	A    gl/m4/eealloc.m4
	A    gl/m4/extern-inline.m4
	A    gl/m4/threadlib.m4
	A    gl/wctype-h.c
	A    gl/unistd.c

	Updated gnulib.
	M    XMLWriter.cc
	M    conf/snippet/c++defs.h
	M    conf/snippet/warn-on-use.h
	M    conf/snippet/arg-nonnull.h
	M    Byte.h
	M    XDRUtils.cc
	M    ServerFunction.cc
	M    Url.cc
	M    XDRFileUnMarshaller.cc
	M    gl/m4/fcntl-o.m4
	M    gl/m4/configmake.m4
	M    gl/m4/localcharset.m4
	M    gl/m4/locale_h.m4
	M    gl/m4/sys_types_h.m4
	M    gl/m4/mbrtowc.m4
	M    gl/m4/btowc.m4
	M    gl/m4/longlong.m4
	M    gl/m4/00gnulib.m4
	M    gl/m4/ssize_t.m4
	M    gl/m4/glibc21.m4
	M    gl/m4/localeconv.m4
	M    gl/m4/codeset.m4
	M    gl/m4/alloca.m4
	M    gl/m4/off_t.m4
	M    gl/m4/locale-fr.m4
	M    gl/m4/langinfo_h.m4
	M    gl/m4/wint_t.m4
	M    gl/m4/mbsinit.m4
	M    gl/m4/stdint.m4
	M    gl/m4/gnulib-common.m4
	M    gl/m4/stdbool.m4
	M    gl/m4/malloc.m4
	M    gl/m4/regex.m4
	M    gl/m4/warn-on-use.m4
	M    gl/m4/wchar_h.m4
	M    gl/m4/gnulib-comp.m4
	M    gl/m4/unistd_h.m4
	M    gl/m4/wcrtomb.m4
	M    gl/m4/locale-zh.m4
	M    gl/m4/stddef_h.m4
	M    gl/m4/gnulib-cache.m4
	M    gl/m4/include_next.m4
	M    gl/m4/mbstate_t.m4
	M    gl/m4/wctype_h.m4
	M    gl/m4/nl_langinfo.m4
	M    gl/m4/locale-ja.m4
	M    gl/m4/wchar_t.m4
	M    gl/m4/multiarch.m4
	M    gl/m4/stdlib_h.m4
	M    gl/m4/mbtowc.m4
	M    gl/m4/gnulib-tool.m4
	M    gl/m4/byteswap.m4
	M    gl/m4/extensions.m4
	M    gl/localcharset.c
	M    gl/mbsinit.c
	M    gl/regex_internal.c
	M    gl/malloc.c
	M    gl/byteswap.in.h
	M    gl/localcharset.h
	M    gl/locale.in.h
	M    gl/regex_internal.h
	M    gl/sys_types.in.h
	M    gl/wcrtomb.c
	M    gl/btowc.c
	M    gl/regexec.c
	M    gl/ref-del.sin
	M    gl/mbtowc.c
	M    gl/regcomp.c
	M    gl/mbtowc-impl.h
	M    gl/streq.h
	M    gl/alloca.in.h
	M    gl/langinfo.in.h
	M    gl/ref-add.sin
	M    gl/verify.h
	M    gl/regex.c
	M    gl/config.charset
	M    gl/mbrtowc.c
	M    gl/wchar.in.h
	M    gl/regex.h
	M    gl/stdint.in.h
	M    gl/stdbool.in.h
	M    gl/unistd.in.h
	M    gl/stddef.in.h
	M    gl/localeconv.c
	M    gl/wctype.in.h
	M    gl/nl_langinfo.c
	M    gl/Makefile.am
	M    gl/gettext.h
	M    gl/stdlib.in.h
	M    BaseTypeFactory.cc
	M    XDRStreamMarshaller.cc
	M    escaping.cc
	M    DapIndent.cc
	M    XDRFileMarshaller.cc

	modified configure so that dap4 is enabled by default - this fixes (some but not all) issues with distcheck

	Added compute_checksum() to BaseType and children. Added intern_data() so that the CRC attribute is added to the interned variables. The same baselines for RT transmission tests work with the intern_data tests (including the checksums).

2013-10-14  James Gallagher  <jgallagher@opendap.org>

	Checkpoint - Arrays or Sequences implemented and libdap tests pass; check handlers.

	Array of Sequence tests pass

	D4Sequences work, along with tests and some sembelance of rationale behavior by the read() and read_next_instnace() methods.

	Removed call to read() in D4Group::serialize(). Let the variable's serialize() methods call read() so that constructor types will not break the semantics of the D4Sequence::read() method and so that variable's data lifetime can be controlled more (i.e., only reading in data right before it's needed and freeing it right after it's sent to minimize the memory requirements when lots of data are sent).

2013-10-13  James Gallagher  <jgallagher@opendap.org>

	D4Sequence debugging: for some reason D4Sequence::read is called twice for the first instance and that leads to an off-by-one error in the count of elements since the very first element is never saved and thus not sent. E.G., tehe count will be 4 but there are only three instances sent.

	The Parser now recognizes Sequence.

	Added more of D4Sequence... the parser is still not right...

2013-10-11  James Gallagher  <jgallagher@opendap.org>

	Checkpoint - normalized ::read() and all of the handler tests work too.

2013-10-10  James Gallagher  <jgallagher@opendap.org>

	Checkpoint for the D4Sequence code

2013-10-09  James Gallagher  <jgallagher@opendap.org>

	Added D4Sequence and TestD4Sequence. Also foud the smallest number of files to change and arrive at uniform semantics for BaseType::read(). Now when read() returns true all the data have been read and when it returns false some data were not read. Not sure how this will work for Arrays and streaming data, but at least libdap uses it uniformly. Handlers may need tweaks.

	cleanup/formatting

	cleanup/formatting

	Arrays of Structure work and have regression tests - well, a test.

	Added unit test for Array of Structure parse

	Arrays of Structures parse.

2013-10-08  James Gallagher  <jgallagher@opendap.org>

	checkpoint: debugging arrays of structure. See Vector:: prototype(), D4ParserSax2 Constructor and DMR_7.4.xml.

	...working on Array of Structure

	...working on Array of Structure

	Added tests for the DAP4 integer types

	Removed some instrumentation that made it's way into svn

	Added tests for roundtrip transmission.
	M    tests/DMRTest.at
	A    tests/dmr-testsuite/test_array_5.xml.trans_base
	A    tests/dmr-testsuite/test_simple_1.xml.trans_base
	A    tests/dmr-testsuite/test_simple_3.xml.trans_base
	A    tests/dmr-testsuite/test_simple_5.xml.trans_base
	A    tests/dmr-testsuite/test_array_2.xml.trans_base
	A    tests/dmr-testsuite/test_array_4.xml.trans_base
	A    tests/dmr-testsuite/test_simple_2.xml.trans_base
	A    tests/dmr-testsuite/test_simple_4.xml.trans_base
	A    tests/dmr-testsuite/test_array_1.xml.trans_base
	A    tests/dmr-testsuite/test_array_3.xml.trans_base

	Added binary Data DMR response baselines
	AM   dmr-testsuite/test_array_3_data.bin
	AM   dmr-testsuite/test_array_5_data.bin
	AM   dmr-testsuite/test_simple_1_data.bin
	AM   dmr-testsuite/test_simple_3_data.bin
	AM   dmr-testsuite/test_simple_5_data.bin
	AM   dmr-testsuite/test_array_2_data.bin
	AM   dmr-testsuite/test_array_4_data.bin
	AM   dmr-testsuite/test_simple_2_data.bin
	AM   dmr-testsuite/test_simple_4_data.bin

	Updated baselines and the DMR test driver
	M    tests/DMRTest.at
	M    tests/dmr-testsuite/test_array_2.xml.send_base
	M    tests/dmr-testsuite/test_array_3.xml.send_base
	M    tests/dmr-testsuite/test_array_4.xml.send_base
	M    tests/dmr-testsuite/test_array_5.xml.send_base
	M    tests/dmr-testsuite/test_simple_2.xml.baseline
	M    tests/dmr-testsuite/test_simple_4.xml.baseline
	M    tests/dmr-testsuite/test_array_1_data.bin
	M    tests/dmr-testsuite/test_simple_1.xml
	M    tests/dmr-testsuite/test_simple_2.xml
	M    tests/dmr-testsuite/test_simple_3.xml
	M    tests/dmr-testsuite/test_simple_4.xml
	M    tests/dmr-testsuite/test_simple_5.xml
	M    tests/dmr-testsuite/test_array_5.xml.baseline
	M    tests/dmr-testsuite/test_simple_1.xml.baseline
	M    tests/dmr-testsuite/test_simple_1.xml.send_base
	M    tests/dmr-testsuite/test_simple_3.xml.baseline
	M    tests/dmr-testsuite/test_simple_2.xml.send_base
	M    tests/dmr-testsuite/test_simple_3.xml.send_base
	M    tests/dmr-testsuite/test_simple_4.xml.send_base
	M    tests/dmr-testsuite/test_simple_5.xml.baseline
	M    tests/dmr-testsuite/test_simple_5.xml.send_base
	M    tests/dmr-testsuite/test_array_5.xml
	M    tests/dmr-testsuite/test_array_1.xml.send_base
	M    tests/io_test.cc

	DMRTest now on svn:ignore

	Added baselines for the DMR regression tests.
	A    dmr-testsuite/test_array_2.xml.send_base
	A    dmr-testsuite/test_array_3.xml.send_base
	A    dmr-testsuite/test_array_4.xml.baseline
	A    dmr-testsuite/test_array_4.xml.send_base
	A    dmr-testsuite/test_array_5.xml.send_base
	A    dmr-testsuite/test_simple_3_error_1.xml.baseline
	A    dmr-testsuite/test_simple_3_error_3.xml.baseline
	A    dmr-testsuite/test_simple_2.xml.baseline
	A    dmr-testsuite/test_simple_4.xml.baseline
	AM   dmr-testsuite/test_array_1_data.bin
	A    dmr-testsuite/test_array_1.xml.baseline
	A    dmr-testsuite/test_array_3.xml.baseline
	A    dmr-testsuite/test_array_5.xml.baseline
	A    dmr-testsuite/test_simple_3_error_2.xml.baseline
	A    dmr-testsuite/test_simple_1.xml.baseline
	A    dmr-testsuite/test_simple_1.xml.send_base
	A    dmr-testsuite/test_simple_3.xml.baseline
	A    dmr-testsuite/test_simple_2.xml.send_base
	A    dmr-testsuite/test_simple_3.xml.send_base
	A    dmr-testsuite/test_simple_5.xml.baseline
	A    dmr-testsuite/test_simple_4.xml.send_base
	A    dmr-testsuite/test_simple_5.xml.send_base
	A    dmr-testsuite/test_array_1.xml.send_base
	A    dmr-testsuite/test_array_2.xml.baseline

	DMR tests - first stab at regression tests for the DMR code.

	Added a test for the DMR (DAP4 int types)

	Arrays of Int8, UInt8, Int64, UInt64 all work. All tests pass. Some major reworking of the Test classes to use templates. D4(Un)Marshaller test code fixed to match the edits to those classes based on recent changes to the binary doc spec. Test baselines updated.

2013-10-04  James Gallagher  <jgallagher@opendap.org>

	Fixed up the Marshallers for DAP4 - No more XDR unless a compile-time switch is defined. The code assumes IEEE754 reals

	Bug in integer type serialization fixed; Marshaller code made faster; removed most specail case code for platforms that don't use IEEE754.

	test updates

2013-10-03  James Gallagher  <jgallagher@opendap.org>

	Added more thorough unit tests for arrays - Enums and structures are still broken.

	Added a unit test for array stuff.

	Added support for Arrays of the DAP2 types that have been carried over to DAP4. Some testing of the parser; tests to follow in a subsequent commit.

2013-10-01  James Gallagher  <jgallagher@opendap.org>

	Switched to the print order Dennis uses.

	Updated the FSF address in the copyright headers

	Merge from the trunk: This includes all of the changes made for the H 1.9 release and the change to width(). The code builds and has minimal warnings.

2013-09-30  James Gallagher  <jgallagher@opendap.org>

	This checkin contains a fix for the conflicting definitions of width() in BaseType, Vector and Array, where Array provided a version/definition that clashes with the one in BaseType. BaseType defined width() and Array defined width(bool constrained = true), which shadowed the former. I changed BaseType width so that its signature is width(bool constrained = false) and made that the only version of the method. There are some changes to uses of width() in libdap and the BES, but not in the handlers.

2013-09-27  James Gallagher  <jgallagher@opendap.org>

	misc changes; a minor fix for Array; a fix for the DDX parser; A minor change in the scanners for the Error, DAS, DDS and CE parsers (added %option noinput to suppress a warning); removed -fno-defer-pop from the Makefile.ams.

2013-09-23  James Gallagher  <jgallagher@opendap.org>

	Turned on checksums in D4Group - I had the algorithm correct. dmr-test worked but more testing is going to be needed.

2013-09-20  James Gallagher  <jgallagher@opendap.org>

	Fixed byte order change in dmr-test - it seems to work now

	chunked i/ostream complete. dmr-test and expr-test are failing (expr-test fails soem tests, dmr-test seg faults).

2013-09-19  James Gallagher  <jgallagher@opendap.org>

	xsgetn works, errors and all, most of TODOs have been done.

	All tests now pass

	Removed putBack option/feature since it'll never be used and to support it we need a call to memcopy for every chunk read.

	checkpoint: chunked istream xsgetn() is close to working - only the error case fails the unit tests. The code is pretty hacked up, though.

2013-09-18  James Gallagher  <jgallagher@opendap.org>

	added big_file_2 tests

	more work on the chunked strream io code

2013-09-17  James Gallagher  <jgallagher@opendap.org>

	Added the data files for the chunked iostream tests; ignored result files

	Check point - mostly for the chunk iostream unit test.

	I changed the character used for the Type special form (from # to $, because # is a URL delim. and tomcat was filtering it).

	Fixed svn ignores...

	chunked_istream now takes byte-order info that it uses to correct the chunk header size and type to the host.

	Turned off some debugging code in D4StreamMarshaller and chunked_ostream. ResponseBuilder now uses byte order correctly and dmr-test's read code passes the value into D4StreamUnMarshaller.

	Improved D4 Sax Parser by making char* and string docs parse in two calls instead of using an io stream.

2013-09-16  James Gallagher  <jgallagher@opendap.org>

	checkpoint - unit testing for chunking iostream

	Added - has en embedded CRLF separator as with the data DMR response docs.

	Parser & response fixes

2013-09-13  James Gallagher  <jgallagher@opendap.org>

	More testing for the chunked response - looks like its now working correctly with the dmr-test code.

	Chunking for DAP4 implemented. Needs automated tests and a round of optimization.

2013-09-12  James Gallagher  <jgallagher@opendap.org>

	Added initial version of chunked_ostream. Added changes to the tests directory (and in libdap) to support round-trip serialization of DAP4 variables. ...work in progress

2013-09-09  James Gallagher  <jgallagher@opendap.org>

	Dap4 deserialize close to working.

	DAP4 Responses with checksums now work.

2013-09-06  James Gallagher  <jgallagher@opendap.org>

	Added Test classes for some of the DAP4 types.

	serialize() partly working - CRC32 checksums missing.

2013-09-05  James Gallagher  <jgallagher@opendap.org>

	Merged changes from the trunk made in preparation for the Hyrax 1.9 release. Updated the print rep of the DDS (aka DMR) to match Dennis' form. Fixed the display of Array Dim elements so that Dim names are fully qualified.

2013-09-04  James Gallagher  <jgallagher@opendap.org>

	Removed EVAL from configure.ac; only Sequence (dap2) and Vector/Array (dap4) will ever use that code.

	Arrays of atomic types parse and the resulting DDS can print the DMR.

2013-08-28  James Gallagher  <jgallagher@opendap.org>

	Build/Audit fixes.
	M    libdap/XDRFileUnMarshaller.cc
	M    libdap/XDRFileUnMarshaller.h
	M    bes/dispatch/unit-tests/keysT.cc
	M    bes/functions/Makefile.am

2013-08-27  James Gallagher  <jgallagher@opendap.org>

	Backed out an errant call to fclose()

	Removed errant call to fclose() in XDRFileUnMarshaller. This caused a segfault on Linux.

	audit fixes
	M    libdap/Makefile.am
	M    bes/dispatch/unit-tests/BESCache3Test.cc
	M    bes/functions/tests/functionsTest.at
	M    bes/functions/tests/bescmd/bind_name_4.dods.bescmd.baseline
	M    bes/functions/tests/bescmd/bind_name_2.dods.bescmd.baseline

	Source release info
	M    configure.ac
	M    ChangeLog
	M    INSTALL
	M    README
	M    NEWS

	Audit fixes.
	M    RValue.cc
	M    HTTPCacheTable.cc
	M    Array.cc
	M    DDXParserSAX2.cc
	M    Makefile.am
	M    HTTPCache.cc
	M    XDRStreamUnMarshaller.cc
	M    Structure.cc
	M    Sequence.cc
	M    XDRFileUnMarshaller.cc
	M    XDRFileUnMarshaller.h
	M    mime_util.cc
	M    util.cc
	M    util_mit.cc

	Changed the required bison version number to 2.4 and removed a bogus include from das.yy that breaks bison 2.4.
	M    das.yy
	M    Error.yy
	M    dds.yy
	M    ce_expr.yy

	Removed bad character from the Makefile.am
	M    Makefile.am

	Added the newly hacked grammar files - these along with updated versions of DAS.cc, DDS.cc, ConstraintEvaluator.cc and Error.cc and Makefile.am were copied over from the dap4 branch. A kind of cheap merge operation...
	A    das.yy
	A    Error.yy
	A    dds.yy
	A    ce_expr.yy

2013-08-26  James Gallagher  <jgallagher@opendap.org>

	Chnages so that a newer bison can be used.
	M    Error.lex
	M    Error.cc
	M    ce_parser.h
	M    ConstraintEvaluator.cc
	M    DDS.cc
	M    Makefile.am
	M    dds.lex
	M    Vector.cc
	M    das.lex
	M    Vector.h
	M    DAS.cc
	M    ce_expr.lex

2013-08-22  James Gallagher  <jgallagher@opendap.org>

	Added tests for teh Enum type class.

	Added tests and baselines for Array.

	Support for arrays of cardinal types (excluding Enum). Both named and anonymous dimensions are supported.

2013-08-16  James Gallagher  <jgallagher@opendap.org>

	Fiddled with the URL type (which is called Url in DAP2 and URL in DAP4 - ARRGH). It now seems to work OK since all tests are passing again.

2013-08-15  James Gallagher  <jgallagher@opendap.org>

	Added support for the DAP4 types Int8, UInt8, Int64 and UInt64 to Vector. Along the way I made some more fixes to teh ce_expr.yy and Error.yy parsers and fixed an issue with the BaseTypeFactory class. This code builds, passes its tests and the BES and all of the handlers also build and pass tests when using it.

2013-08-14  James Gallagher  <jgallagher@opendap.org>

	Added %requires "2.5" to all the bison parser sources. Fixed a missing filed initialization in D4ParserSax2.h

	much cleaner use of bison and flex - but this code requires a newer version of bison (2.5)

	Adapted parsers to the new bison 3.0 - all tests pass.

2013-08-13  James Gallagher  <jgallagher@opendap.org>

	TODO Comment done and removed

	spelling and more ignores for generated files.

2013-08-12  James Gallagher  <jgallagher@opendap.org>

	The scanner now does not use the default rule. Better processing of errors for the parser.

	ignore exec in d4_ce

	Hmmm... Something odd happened qith the conf dir getting moved by an accidental mouse click...

	Modified the DAP4 CE parser so that it's scanner won't clash with other scanners by using a parser/scanner specific prefix (d4_ce). Also uncommented an error() method i the D4CEDriver class, although it's not yet used.

	Added the DAP4 CE parser - first version. This code uses the C++ 'modes' of bison and flex, so it will parse anything in an istream. The code does not report locations yet and the scanner does not use a prefix, but that can fixed later if more of these parsers are needed.

2013-07-25  James Gallagher  <jgallagher@opendap.org>

	Merged down from the trunk, which has a bunch of changed developed on the MIIC branch. Those changes include caching code for server functions and modifications to the CE scanner and parser so that large arrays can be passed into constraint expressions (using POST, e.g.). This will require a matching merge of the BES.

2013-07-23  James Gallagher  <jgallagher@opendap.org>

	Removed the openssl/evp.h header because it winds up including des_old.h on OSX 10.5 and that has a conflict with set_key() in BESKeys.h. Also, the code no longer uses the evp.h header...
	M    XDRStreamMarshaller.h

	Manually transferred some fixes from the trunk to these files. I was using malloc() when it wasn't needed (switched to vector<char>) and there were buffers that were not being freed (because I thought xdr_destroy() was calling free() - that's why I used malloc(); it does not call free()).

	Memory leaks fixed in the DAP4 Stream Marshaller classes - but these are in code in the trunk. will check in all the same and make corresponding changes to the code on the dap4 branch (which uses the filename prefix 'D4' instead of 'DAP4').

	Modified ConstraintEvaluator so that it always frees the scanner/parser string buffer when an exception is thrown. I made this change while working on a problem that turned out to be in the scanner (state was not reset when an error was found) but even though this change is not the fix for that - see ce_expr.lex - it seems like a good idea.

	Fixed the rpm build - libtest-types.a was missiing from the spec file.

2013-07-10  James Gallagher  <jgallagher@opendap.org>

	Fixed a bug where a CE with mismatched quotes left the CE parser in the <quote> state, making subsequent requests fail. The fix was in the scanner to reset the parser (technically the scanner's) state to INITIAL when an error was detected. I also added code to catch the Error object thrown by the scanner and delete the parse buffer, although that might be overkill.

	Merged changes from the miic_6.2013 branch. These changes support the new #<type>() special forms that enable big arrays to be use in CEs.
	_M   .
	M    Error.lex
	M    ConstraintEvaluator.cc
	M    Array.cc
	M    tests/expr-test.cc
	A  + tests/ResponseBuilder.cc
	A  + tests/ResponseBuilder.h
	M    tests/Makefile.am
	M    DDXParserSAX2.cc
	M    Makefile.am
	M    ce_expr.y
	M    Error.y
	M    dds.lex
	MM   mime_util.h
	M    XDRStreamUnMarshaller.cc
	M    RValue.h
	M    BaseTypeFactory.h
	M    das.lex
	MM   mime_util.cc
	M    das.y
	M    BaseTypeFactory.cc
	M    util.cc
	D    unit-tests/server-testsuite/geturl.0
	D    unit-tests/server-testsuite/config
	_M   unit-tests/ancT.cc
	M    unit-tests/DDXParserTest.cc
	D    unit-tests/response_cache
	M    unit-tests/Makefile.am
	M    dds.y
	M    Array.h
	M    ce_expr.lex

2013-07-09  James Gallagher  <jgallagher@opendap.org>

	Trunk fixes for the functions module in the libdap andbes spec files. Also a repair to XDRStreamMarshaller.cc

2013-07-08  James Gallagher  <jgallagher@opendap.org>

	Fixed distcheck
	M    tests/Makefile.am

	Fixed some warnings that had been bothering me for a while...

2013-07-06  James Gallagher  <jgallagher@opendap.org>

	Added more special forms for more types (Byte, Int16, UInt16, Int32, UInt32, Float32, and Float64).

2013-07-05  James Gallagher  <jgallagher@opendap.org>

	Added support for a special form that builds an array. This is far faster than the make_array() function in the bes/functions module. Also, I added a new method to Array so that the current shape of the array can be cleared; this is used by the bind_shape() function that can take an array of N elements and set its shape to something with M dimensions.

2013-06-26  James Gallagher  <jgallagher@opendap.org>

	Updates used by the make_array() and bind_name() functions.

2013-06-11  James Gallagher  <jgallagher@opendap.org>

	Removed some of the old dejagnu test stuff.

	Made a copy of ResponseBuilder for the expr-test test program. It's a duplicate of code now in bes/dap, but it seems important to keep the tests here. That might change if all the streaming code moves to bes/dap...

2013-06-06  Nathan Potter  <ndp@opendap.org>

	libdap: new value() methods so that the correct thinmgs are accessed and returned.

2013-06-06  James Gallagher  <jgallagher@opendap.org>

	Branch for MIIC feature development
	A    https://scm.opendap.org/svn/branch/libdap/miic_6.2013

2013-06-06  Nathan Potter  <ndp@opendap.org>

	libdap: Added new 'value' function to Vector that allows you use an subset_index array to retrieve non contiguous values in a single operation

2013-06-05  James Gallagher  <jgallagher@opendap.org>

	Added libdap-* to svn-ignore

2013-05-24  James Gallagher  <jgallagher@opendap.org>

	The Grid map_rbegin and rend methods were not using d_is_array_set correctly. Fixed.

2013-05-22  James Gallagher  <jgallagher@opendap.org>

	Changes/fixes from the merge with the trunk.

	Added
	A    unit-tests/valgrind_suppressions.txt

	Merge results
	D    unit-tests/valgrind_suppressions.txt
	M    unit-tests/DDSTest.cc
	M    unit-tests/ResponseBuilderTest.cc
	M    unit-tests/ResponseCacheTest.cc
	_M   unit-tests/response_cache

2013-05-21  James Gallagher  <jgallagher@opendap.org>

	Fixes for linux
	M    unit-tests/ResponseBuilderTest.cc
	M    unit-tests/ResponseCacheTest.cc

	added valgrind suppressions for stuff in libxml2

	Moved four set_mime_*() methods from ResponseBuilder to mime_util.

2013-05-20  James Gallagher  <jgallagher@opendap.org>

	Modified DDXParser so that it includes an intern_stream() method that takes a cpp istream. Added tests. Also modified ResponseBuilder so that it frees the AlarmHandler allocated when establish_timeout() is called.

	Fixed memory leaks in the DDXParserSax2 code. Other minor edits.

	Test fixes

	Added by merge with the trunk

	added

2013-05-19  James Gallagher  <jgallagher@opendap.org>

	merged code from the trunk - NB the unit-tests/response_cache directory did not get checked in and thus it's not merged and the ResponseCacheTest fails.

2013-05-17  James Gallagher  <jgallagher@opendap.org>

	Added these baseline files for ResponseBuilderTest

	Fixes for ResponseCache - I added tests and have tested most modes. Not tested: how it works with server functions. There are also fixes/modifications for ResponseBuilder that ResponseCache uses. Added a note to ServerFunctionsList that it stores weak pointers. I worked on the ResponseBuilderTests but never got the test for server functions to work completely; the test examines the response document and checks that the metadata part is correct but not the (trivial) data part.

	Added get_next_mime_header() for an istream (the existing version took a FILE*) and moved some of the MIME header methods from ResponseBuilder here.

2013-05-15  Nathan Potter  <ndp@opendap.org>

	libdap: Moving trunk/libdap/unit-tests/ce-functions-testsuite to trunk/bes/functions/unit-tests because that's where the functions are that need the contents of that directory.

2013-05-14  James Gallagher  <jgallagher@opendap.org>

	ResponseCache mostly working...

	We now install the library and *Test headers.

2013-05-14  Nathan Potter  <ndp@opendap.org>

	libdap: Repaired problems with conditional build in ServerFcuntionsList

2013-05-14  James Gallagher  <jgallagher@opendap.org>

	Added HAVE_STDLIB_H and HAVE_ATEXIT to DAPCache3.cc.

2013-05-10  Nathan Potter  <ndp@opendap.org>

	libdap: Instrumentation in Regex. Fixed baseline for ResponseBuilderTest::invoke_server_side_function_test

	libdap: Added life cycle control to DAPCache3 singleton.

	libdap: Added life cycle control to DAPCache3 singleton.

2013-05-10  James Gallagher  <jgallagher@opendap.org>

	(potential) fix for the ResponseBuilder cache bug

2013-05-10  Nathan Potter  <ndp@opendap.org>

	libdap: Updated ResponseBuilderTest to run a server side function.

2013-05-10  James Gallagher  <jgallagher@opendap.org>

	Added A significant refactor of libdap including the start of the DAP4 response object builder class.

	Removed (commented) #define DODS_DEBUG from ServerFunctionsList.

2013-05-10  Nathan Potter  <ndp@opendap.org>

	libdap: Added instrumentation (enabled in this check in) to ServerFunctionsList in an effort to understand the seg fault problem that seems to be associated with server side function calls.

	libdap: Added instrumentation (enabled in this check in) to ServerFunctionsList in an effort to understand the seg fault problem that seems to be associated with server side function calls.

	libdap: Added instrumentation (enabled in this check in) to ServerFunctionsList in an effort to understand the seg fault problem that seems to be associated with server side function calls.

2013-05-09  Nathan Potter  <ndp@opendap.org>

	libdap: Checking in repaired ServerFunctionsList

2013-05-06  James Gallagher  <jgallagher@opendap.org>

	Removed the Ancillary.h file from D4ResponseBuilder

	Removed old code

	DAPCache3 is now in the libdap namespace. The cache-specific methods of ResponseBuilder have been factored out to ResponseCache; RB still makes explicit calls to the cache code, however. The ResponseCache class was added.

2013-05-03  James Gallagher  <jgallagher@opendap.org>

	Added correct copyright headers for the ServerFunctions classes.

2013-05-03  Nathan Potter  <ndp@opendap.org>

	libdap: Attempting to fix memory leaks in ServerFucntionsList - adding unit tests for same.

2013-05-02  James Gallagher  <jgallagher@opendap.org>

	Removed old code in util

	Removed old code from ResponseBuilder

2013-05-01  James Gallagher  <jgallagher@opendap.org>

	Added D4ResponseBuilder and remove the timeout methods from DMR.

2013-05-01  Nathan Potter  <ndp@opendap.org>

	libdap: Change type signature for setter methods in ServerFunction so that they accept const parameters

	libdap: Change type signature for setter methods in ServerFunction so that they accept const parameters

2013-04-29  James Gallagher  <jgallagher@opendap.org>

	Fixed the access to the DODS_CONF environment variable in the RCReaderTest. The same fix should prbably be used in other tests that use putenv() or setenv().

	Added suppressions file for valgrind in the cache-testsuite dir. Made an attempt to fix the RCReader tests, but I think this is past the point where there is much return...

	Added crc.h to the code.

	Fix suppressions in the Makfile and added suppressions. There are still memory issues.

2013-04-27  James Gallagher  <jgallagher@opendap.org>

	Wrapped the two DAP4-only includes in #if DAP4. Those headers are not installed in a regular build and the includes break clients that included the file.
	M    BaseType.h

2013-04-26  James Gallagher  <jgallagher@opendap.org>

	Added a 'suppressions' file for valgrind. This may help with the bogus putenv/setenv reports.

	Added HTTPCacheTest back into the Makefile for unit-tests; the only errors in the unit-tests that remain are leaks reported from putenv() calls (only on OSX?) which are bogus reports since the man page for OSX notes putenv _will_ leak given the BSD definition. Not sure how to deal with this... Maybe suppress the error for putenv?

	Fixed a leak in the DODSFilterTest; Added a call to HTTPCache::delete_instance() in HTTPConnectTest so that some 'leaks' don't show up there.

	Fixed a leak in AttrTable but had to change the behavior of del_attr_table() in the process. That method now deletes the contained table.

	Repaired SignalHandlerTest - now works with valgrind.

2013-04-25  James Gallagher  <jgallagher@opendap.org>

	Fixed leaks in SequenceTest

	Fixed leaks in D4ParserSax2 - leaks that would occur when errors are found in the input (based on leaks in DDXParserSAX2).c

	Fixed leaks in DDXParserSAX2

	Fixed a leak in XDRStreamMarshaller

	More leaks fixed - mostly in ResponseBuilderTest

	Fixed memory leaks found using valgrind with the unit tests.

2013-04-24  James Gallagher  <jgallagher@opendap.org>

	Fixed a memory leak in D4StreamMarshaller.

	Renamed DAP4StreamMarshaller/UnMarshaller classes to use 'D4' prefix.

	Updated the tests for DAP4Marshaller and UnMarshaller

	Modified DAP4StreamMarshaler, it's test and baselines to use CRC32 as the checksum. Working.

	Move Type.h include in BaseType out of the namespace libdap { } and added namespace libdap { } to the Type header itself. Also swapped CRC32 into the DAP4Marshaller code.

2013-04-22  James Gallagher  <jgallagher@opendap.org>

	Added support for valgrind running the unit-tests (this could probably be extended to the autotest tests, too). The changes are in configure.ac (an option) and unit-tests/Makefile.am (see TEST_ENVIRONMENT). Added a small macro in conf for the configure.ac.

	Added he D4Enum variable type even though I'm not sure about its design. revisit this once arrays are in place.

	Hacked D4DimensionsTest so that it using a switch to control debugging output and can run tests by name.

	D4Dimensions now tests for errors when set_size() is called with a string - and the parser D4ParserSax2 does not do the conversion itself but uses the class' code. Added unit tests that illustrate using the CPPUNIT_TEST_EXCEPTION macro.

2013-04-19  James Gallagher  <jgallagher@opendap.org>

	Changed D4Dimension so it can take the dimension size as a string. Needs work on/in the error detection code, however. See set_size().

	Mem leak fix in D4Group

	Removed the unused D4ParserError class from the code; removed unneeded includes in D4ParserSax2.h

	Reworked the error reporting to be more rational. D4ParserError no longer used.

	Added debug switch to the parser's intern() methods

	Removed various preprocessor switches from the DAP4 parser.

	New D4Attributes in the code and all tests pass. Some debugging code still in place and other things to be changed.

2013-04-18  James Gallagher  <jgallagher@opendap.org>

	Added D4Attributes to BaseType.

	Turned off instrumentation; D4Attribtues in BaseType but not compiled yet.

	Fixed memory leaks in the D4Group unit tests

	Added unit tests for D4Attributes find and get methods; fixed a bug in that code.

	Added D4AttributesTest unit-tests and baselines.

2013-04-17  James Gallagher  <jgallagher@opendap.org>

	Added a new Attribute/s class for DAP4. Needs to be tested and integrated into the library (as a field in BaseType?)

	Added tests for DAP4 Attributes in various places like Structures, Groups and simple variables

2013-04-16  James Gallagher  <jgallagher@opendap.org>

	Added tests for Attributes. Have not tested Attributes with variables yet, but they work with the root group.

	Added Attribute code back in; Also, testing having BaseType define print_val(FILE *...)

	Used #if ATTR to remove the old attribute code from the parser.

2013-04-15  James Gallagher  <jgallagher@opendap.org>

	Added support and tests for Groups

	Structures parse - only test code was added/changed since the last commit.

	Parsing all of the simple variable types except enum and opaque.

	Basic DMR and D4Parser round-trip tests now work.

2013-04-13  James Gallagher  <jgallagher@opendap.org>

	DMR Parsing progress

	Tests for D4PaserSax2

2013-04-11  James Gallagher  <jgallagher@opendap.org>

	svn ignore updated for tests

	Changed D4Dimensions so that it is a container for D4Dimension pointers. This mirrors D4EnumDefs & D4EnumDef.

	ignored (for svn) stuff; removed old autogen.sh

	ignored (for svn) stuff

	ignored (for svn) stuff

	... hoping resovlong the conflicts after the copy and switch is the right thing to do.
	R    Type.h
	R    tests/dmr-test.cc
	R    DMR.cc
	R    DMR.h
	R    unit-tests/D4GroupTest.cc
	R    unit-tests/D4-xml/D4Group_with_scalars_and_stuff.xml
	R    unit-tests/D4-xml/D4Group_named_with_scalars_and_stuff.xml
	R    unit-tests/D4-xml/D4Group_with_scalars.xml
	R    unit-tests/D4-xml/D4Group_everything.xml
	R    unit-tests/D4-xml/D4Group_named_with_scalars.xml
	R    unit-tests/D4-xml/D4Group_empty.xml
	R    unit-tests/D4-xml/D4Group_named_empty.xml

	DAP4 development branch, third try...
	A    https://scm.opendap.org/svn/branch/libdap/dap4

2013-04-10  James Gallagher  <jgallagher@opendap.org>

	Made a branch for the dap4 development - replaces the old DAP4 branch
	A    https://scm.opendap.org/svn/branch/libdap/dap4

2013-04-03  James Gallagher  <jgallagher@opendap.org>

	distcheck works on linux now...
	A  + D4ParserSax2.cc
	M    Makefile.am
	D    D4ParserSAX2.cc

2013-04-02  James Gallagher  <jgallagher@opendap.org>

	Added climit include to fix 'UINT/INT_MAX missing' on Linux.
	M    util.cc

2013-04-01  James Gallagher  <jgallagher@opendap.org>

	Added unit tests for D4Dimensions and D4EnumDefs. Removed old code from the AttrTable tests.

	Added D4EnumDefs

2013-03-26  Nathan Potter  <ndp@opendap.org>

2013-03-25  Nathan Potter  <ndp@opendap.org>

	libdap: Disabling cruft code from earlier ugrid work.

2013-02-26  Nathan Potter  <ndp@opendap.org>

	libdap: Comments

2013-02-12  Nathan Potter  <ndp@opendap.org>

	libdap: comments

2013-02-08  Nathan Potter  <ndp@opendap.org>

	libdap: Updated ServerFunction API

2013-02-07  Nathan Potter  <ndp@opendap.org>

	libdap: Added methods to ServerFunctionsList to allow inspection of the list contents.

2013-02-06  Nathan Potter  <ndp@opendap.org>

	libdap: Moved AbstractFunction class to ServerFunction class

	libdap: Added the use of AbstractFunction class.

2013-02-05  Nathan Potter  <ndp@opendap.org>

	team sync

	team sync

2013-02-04  Nathan Potter  <ndp@opendap.org>

	libdap: Adding AbstractServerSideFunction

2013-01-31  James Gallagher  <jgallagher@opendap.org>

	Fixes for bes distcheck
	M    ServerFunctionsList.cc
	M    ServerFunctionsList.h
	M    ConstraintEvaluator.h

2013-01-30  James Gallagher  <jgallagher@opendap.org>

	Distcheck now works; removed more old server function code.
	_M   .
	M    configure.ac
	M    main_page.doxygen
	M    ConstraintEvaluator.cc
	_M   tests
	M    Makefile.am
	D    swath2grid
	D    ugridFunctions
	M    NEWS
	M    ConstraintEvaluator.h
	M    unit-tests/HTTPCacheTest.cc
	M    doxy.conf

	Added stuff to svn:ignore

2013-01-30  Nathan Potter  <ndp@opendap.org>

	libdap: Updating configre.ac for automake-1.13

2013-01-29  James Gallagher  <jgallagher@opendap.org>

	Changed the way functions are registered so that CE does not have to copy all the functions into every instance of the CE class. Now CE uses functions directly from a list in libdap.

	Changed the way functions are registered so that CE does not have to copy all the functions into every instance of the CE class. Now CE uses functions directly from a list in libdap.

	Fixed checkin - I checked in some code with debugging on

	Removing 'basic' server functions.
	_M   .
	M    Keywords2.cc
	M    ConstraintEvaluator.cc
	M    tests/TestArray.cc
	M    tests/EXPRTest.at
	M    Makefile.am
	M    swath2grid/reproj_functions.cc
	M    HTTPCache.cc
	M    util.h
	M    expr.h
	M    util.cc
	M    unit-tests/HTTPCacheTest.cc
	D    unit-tests/ArrayGeoConstraintTest.cc
	RM + unit-tests/ancT.cc
	M    unit-tests/ddsT.cc
	M    unit-tests/ResponseBuilderTest.cc
	D    unit-tests/CEFunctionsTest.cc
	D    unit-tests/GridGeoConstraintTest.cc
	M    unit-tests/Makefile.am
	M    unit-tests/Keywords2Test.cc

	Added stuff to svn:ignore

	Added stuff to svn:ignore

	Added stuff to svn:ignore

2013-01-25  Patrick West  <pwest@opendap.org>

	Removing dependency on DAP4 code for DAP3 responses M    ResponseBuilder.h M    ResponseBuilder.cc M    Int64.h

	Need autoconf 2.61, not 2.62 M    configure.ac

2013-01-18  James Gallagher  <jgallagher@opendap.org>

	Merge of the code from hyrax 1.8 release (version 3.11.7)
	_M   .
	A  + gridfields_functions.h
	M    configure.ac
	M    Connect.h
	M    ChangeLog
	A  + gridfields_functions.cc
	M    ResponseBuilder.h
	M    main_page.doxygen
	A  + DAPCache3.cc
	A  + DAPCache3.h
	_M   OSX_Resources
	M    ConstraintEvaluator.cc
	M    DDS.cc
	M    HTTPCacheTable.cc
	M    Array.cc
	_M   tests
	M    tests/TestGrid.cc
	M    tests/expr-test.cc
	M    tests/TestStructure.cc
	M    INSTALL
	M    DDXParserSAX2.cc
	M    libdap.spec
	M    ResponseBuilder.cc
	M    README
	M    BaseType.cc
	M    DDS.h
	_M   win32/gl
	M    Makefile.am
	AM + swath2grid
	M    DataDDS.cc
	M    ce_expr.y
	M    util.h
	AM + ugridFunctions
	M    XDRStreamUnMarshaller.cc
	M    NEWS
	A  + doxy.conf.in
	M    Vector.cc
	A  + main_page.doxygen.in
	_M   gl
	M    ce_functions.cc
	M    expr.h
	MM   mime_util.cc
	M    GridGeoConstraint.cc
	M    Vector.h
	M    util.cc
	M    Grid.cc
	M    Connect.cc
	_M   unit-tests
	MM   unit-tests/MIMEUtilTest.cc
	M    unit-tests/ResponseBuilderTest.cc
	M    Clause.cc
	M    Array.h
	M    doxy.conf
	M    ce_expr.lex

2012-12-28  James Gallagher  <jgallagher@opendap.org>

	Removed this generated file from SVN
	D    swath2grid/bes.conf

	Checkpoint.
	_M   .

2012-12-20  James Gallagher  <jgallagher@opendap.org>

	checkpoint; make check runs; the s2g test fails but will be fixed later.
	M    swath2grid/Makefile.am
	M    ugridFunctions/tests/ugr2-fvcom-full.bescmd

	Added a unit test (doesn't work yet) for swath2grid. Also some updates to the function.

	Added support for dimension projection 'wildcards' so that i[*], i[n:*] and i[n:m:*] are supported where those project all of the elements and all elements from n to the end of the array, respectively.

2012-12-13  Nathan Potter  <ndp@opendap.org>

	libdap: Adding new urgid function

2012-12-13  James Gallagher  <jgallagher@opendap.org>

	Swath2grid checkpoint and removal of the eclipse . files
	M    configure.ac
	D    .cproject
	M    swath2grid/reproj_functions.h
	D    swath2grid/airs.nc.0.bescmd
	M    swath2grid/DAP_Dataset.cpp
	M    swath2grid/bes.conf
	M    swath2grid/DAP_Dataset.h
	M    swath2grid/BoundingBox.cpp
	A  + swath2grid/airs.nc.0.data.bescmd
	M    swath2grid/bes.conf.in
	M    swath2grid/Makefile.am
	D    .project

	Checkpoint...

2012-12-13  Nathan Potter  <ndp@opendap.org>

	libdap: Incremental checkin of ugrid functions. Compiles but breaks at runtime with 'Symbol not found' error

	libdap: Incremental checkin of ugrid functions. Compiles but breaks at runtime with 'Symbol not found' error

	libdap: Incremental checkin of ugrid functions. Compiles but breaks at runtime with 'Symbol not found' error

	libdap: Incremental checkin of ugrid functions. Compiles but breaks at runtime with 'Symbol not found' error

	libdap: Incremental checkin of ugrid functions. Compiles but breaks at runtime with 'Symbol not found' error

2012-12-12  James Gallagher  <jgallagher@opendap.org>

	Fixed enum forward declaration.

	Changes t fix compile errors in the MeshData and MeshTopology classes.

2012-12-12  Nathan Potter  <ndp@opendap.org>

	libdap: incremental (emphasis on mental) checkin of ugrid functions

	libdap: incremental (emphasis on mental) checkin of ugrid functions

	libdap: incremental (emphasis on mental) checkin of ugrid functions

	libdap: incremental (emphasis on mental) checkin of ugrid functions

	libdap: incremental (emphasis on mental) checkin of ugrid functions

	libdap: Incremental check-in of ugrid functions. Compiles, but may not work.

2012-12-11  Nathan Potter  <ndp@opendap.org>

	libdap: Moved ugrid code to it's own directory

2012-12-10  Nathan Potter  <ndp@opendap.org>

2012-12-10  James Gallagher  <jgallagher@opendap.org>

	comments: questions for Bill

2012-12-10  Nathan Potter  <ndp@opendap.org>

2012-12-10  James Gallagher  <jgallagher@opendap.org>

	checkpoint for swath2grid

2012-12-09  James Gallagher  <jgallagher@opendap.org>

	Supports Swath to Grid - no testing, though.

2012-12-08  James Gallagher  <jgallagher@opendap.org>

	Checkpoint on the way to building a Grid variable from/for projected satellite data.

2012-12-07  Nathan Potter  <ndp@opendap.org>

	libdap: Incremental memory deallocation improvment.

2012-12-06  Nathan Potter  <ndp@opendap.org>

	libdap: Incremental memory deallocation improvment.

2012-12-05  Nathan Potter  <ndp@opendap.org>

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Incremental debugging check-in for ugrid_restrict (ugr2) code.

	libdap: Adding refactored ugrid_restrict that conforms to Ugrid specification.

	libdap: Adding refactored ugrid_restrict that conforms to Ugrid specification.

	libdap: Adding refactored ugrid_restrict that conforms to Ugrid specification.

	libdap: Adding refactored ugrid_restrict that conforms to Ugrid specification.

2012-12-03  Nathan Potter  <ndp@opendap.org>

	libdao: ugrid instrumentation

	libdao: ugrid instrumentation

	libdao: ugrid instrumentation

2012-11-30  Nathan Potter  <ndp@opendap.org>

	libdao: ugrid instrumentation

	libdap: adding ugrid tests

	libdap: adding ugrid tests

	libdao: ugrid instrumentation

2012-11-30  James Gallagher  <jgallagher@opendap.org>

	Added --with-gdal fixes to configure.ac and registered swath2grid when that option is defined (in ConstraintEvaluator.cc).

	Added some testing stuff for the swath2grid function

	Fixed - but minimal testing

2012-11-30  Nathan Potter  <ndp@opendap.org>

	libdap: incremental check of new ugrid_restrict code. Ready for AWS beta

	libdap: incremental check of new ugrid_restrict code. Removed \#if 0 blocks from new implementation.

2012-11-29  Nathan Potter  <ndp@opendap.org>

	libdap: incremental check of new ugrid_restrict code. Removed \#if 0 blocks from new implementation.

	libdap: incremental check of new ugrid_restrict code. Removed \#if 0 blocks from new implementation.

	libdap: incremental check of new ugrid_restrict code. New verion appears correct.

	libdap: incremental check of new ugrid_restrict code. Compiles but is incorrect.

2012-11-28  James Gallagher  <jgallagher@opendap.org>

	Remove NC_GOES code from swath2grid Makefile.am

2012-11-28  Nathan Potter  <ndp@opendap.org>

	libdap: Checking refactored ugrid_restrict that breaks the original code into more understandable functional blocks. Code works and correctly reproduces the output of the original implementation.

	libdap: Checking refactored ugrid_restrict that breaks the original code into more understandable functional blocks. Code works and correctly reproduces the output of the original implementation.

2012-11-28  James Gallagher  <jgallagher@opendap.org>

	function_swath2grid() can return an Array *. Untested/checkpoint.

	checkpoint for swath2grid...

2012-11-28  Nathan Potter  <ndp@opendap.org>

	libdap: Checking in partial ugrid restrict code. Compiles but may not run.

	libdap: Checking in partial ugrid restrict code. Compiles but may not run.

2012-11-27  James Gallagher  <jgallagher@opendap.org>

	Added the start of a swath2grid CE function for Hyrax - this code will be the interface between the constraint evaluator and the GDAL library. It will have to unpack a GDALDataseta and build a DAP Grid to hold the reprojected data.

	Changed svn ignore properties

2012-11-27  Nathan Potter  <ndp@opendap.org>

	libdap: First pass at new ugrid_restrit code. Check in for sharing (code compiles but may not yet work)

2012-11-27  James Gallagher  <jgallagher@opendap.org>

	Fixed teh build when --with-gdal is not used. Minor changes in swath2grid.
	M    .cproject
	M    Makefile.am
	M    swath2grid/DAP_Dataset.cpp

2012-11-26  James Gallagher  <jgallagher@opendap.org>

	checkpoint - swath2data is closer...

	Added comments to the gridfields_functions.cc code. It seems that the ugrid spec has move out from under this code over time and the code needs some tweaks to match the current version of the spec.

2012-11-23  James Gallagher  <jgallagher@opendap.org>

	Began modifying the swath2grid code so it can work with DAP objects.

	Added initial copy of GMU swath2grid lib - an edited copy of a library from their WCS 2.0 code.

2012-11-16  James Gallagher  <jgallagher@opendap.org>

	Removed errant reference to the ugrid tests - the tests are still in the netcdf handler code. There are also tests in the ncml module.

	Removed generated dirs in 'tests'.

	Removed some instrumentation from DDS.cc that was checked in by mistake. Fixed a problem in the gridfields_function.cc file where the code, that works only with arrays cast BaseTypes without testing that they were actually arrays. Now it simply ignores variables that are not arrays.

2012-11-15  James Gallagher  <jgallagher@opendap.org>

	Copied the gridfields code from netcdf handler. The code can register the ugrid_restrict() function here and that will enable its use with ncml handler.

2012-11-07  James Gallagher  <jgallagher@opendap.org>

	Source release for 3.11.7

	Changed svn ignore properties

	Changed svn ignore properties

	Changes for libdap 3.11.5 so that when the CE Function cache directory is not present, caching is off. Before the code was just crashing when a function was used. I also refactored ResponseBuilder (where the fix is) so that it's got less redundancy.

2012-11-02  James Gallagher  <jgallagher@opendap.org>

	Release 3.11.6
	M    configure.ac
	M    ChangeLog
	M    main_page.doxygen
	M    tests/package.m4
	M    INSTALL
	M    libdap.spec
	M    README
	M    NEWS
	M    doxy.conf

	Fixes for a respource leak in the server function cache code.
	M    ResponseBuilder.cc

2012-10-31  James Gallagher  <jgallagher@opendap.org>

	fixed an error in the include of DDXParserSAX2.h - OSX file system case issues

2012-10-24  James Gallagher  <jgallagher@opendap.org>

	Changed svn ignore properties

	Changes so that users - handlers primarily - of libdap don't have to change their link libraries even though ResponseBuilder has the new caching code. The first version used Connect, this version uses hacked copies of (tiny) parts of Connect. This keeps the handlers from needing libdapclient, libcurl and libuuid to link.
	M    ResponseBuilder.h
	M    ResponseBuilder.cc
	M    Makefile.am
	M    mime_util.cc

	Fixes both from a code review and to move Connect into libdap proper so that clients will link correctly (now that Connect is used both by clients and servers.
	M    HTTPCacheTable.cc
	M    ResponseBuilder.cc
	M    Makefile.am
	M    util.cc
	M    Connect.cc

	Changed svn ignore properties

	Added DAPCache3.

	Changed svn ignore properties

2012-10-23  James Gallagher  <jgallagher@opendap.org>

	These changes support server functions in DAP2 using the F-TDS/GDS 'in path' syntax. They aslo add support for retrieving the DDS and DAS from URLs with functions (both the F-TDS/GDS syntax and ours) and cache the results of function calls.
	M    Connect.h
	M    ResponseBuilder.h
	M    ConstraintEvaluator.cc
	M    DDS.cc
	M    tests/TestGrid.cc
	M    tests/expr-test.cc
	M    tests/TestStructure.cc
	M    DDXParserSAX2.cc
	M    ResponseBuilder.cc
	M    BaseType.cc
	M    DDS.h
	M    Makefile.am
	M    ce_expr.y
	M    XDRStreamUnMarshaller.cc
	M    Vector.cc
	M    ce_functions.cc
	M    mime_util.cc
	M    GridGeoConstraint.cc
	M    Connect.cc
	M    unit-tests/ResponseBuilderTest.cc
	M    Clause.cc

2012-10-16  James Gallagher  <jgallagher@opendap.org>

	Fixed case of DAP4StreamMarshaller.h - failed on linux
	M    ResponseBuilder.cc

	Fix for missing headers when --enable-dap4 is not used with configure. It's a temporary fix/hack.
	M    BaseType.h
	M    Makefile.am

	Complete - task : Write BaseTypeFactory for DAP4 Complete - task : New marshaller will be needed Refactor: Moved most of Structure up into Constructor, so it can be used by Group, too. Added a parser for DAP4 DMR documents, only just started. Tests pass both with and without --enable-dap4

2012-09-28  James Gallagher  <jgallagher@opendap.org>

	Changed to using named branches for the server release.
	A    https://scm.opendap.org/svn/branch/libdap/hyrax-1.8-release

2012-09-24  James Gallagher  <jgallagher@opendap.org>

	Added one test for the DMR response of DAP4.

	Checkpoint for changes that enable the library to return DAP4 response objects (DMR and Data). The changes are not complete, but the library builds and passes all tests when built using both the --enable-dap4 and without it.
	_M   .
	M    ResponseBuilder.h
	M    DDS.cc
	M    tests/dds-test.cc
	M    DAP4StreamMarshaller.cc
	M    HTTPCacheInterruptHandler.h
	M    ResponseBuilder.cc
	M    DDS.h
	M    DataDDS.cc
	M    Connect.cc
	M    unit-tests/DDSTest.cc
	M    unit-tests/AttrTableTest.cc
	M    unit-tests/ResponseBuilderTest.cc
	M    unit-tests/dds-testsuite/test.19b6.xml
	M    unit-tests/dds-testsuite/test.19b.xml
	M    unit-tests/dds-testsuite/test.19c.xml
	M    unit-tests/dds-testsuite/test.19d.xml
	M    unit-tests/dds-testsuite/test.19e.xml
	M    unit-tests/dds-testsuite/test.19f.xml
	M    unit-tests/testFile.cc
	M    unit-tests/testFile.h

2012-08-29  James Gallagher  <jgallagher@opendap.org>

	Updated comments
	M    Keywords2.cc

2012-07-26  James Gallagher  <jgallagher@opendap.org>

	Memory leak in XDRStreamMarshaller fixed.

	Found and fixed an error in the add_var_nocopy() method for DDS. I also added add_var_nocopy() methods to Vector and Array and noted that when a BaseType is passed to Array's ctor the add_var() method is used, thus making a copy. If the 'nocopy' behavior is desired, then pass null to the ctor and call add_var_nocopy() 'by hand.' I also changed two instances of dynamic_cast so that static_cast is used instead. These changes are backward compatible to the previous version of the library. Bumped the version up to 3.12.0

2012-07-11  James Gallagher  <jgallagher@opendap.org>

	Turned off DAP4 DDX Parser debugging

	Now the DAP4 DDX Parser should recognize the M-MIME boundary marker. Untested... Might not actually need this.

	Now DDS::print_xml_writer builds a DDX response that's correct for DAP4 - with the namespace and other stuff in there.

	Added a BasetypeFactory for DAP4 and cloned and modified a DDX parser for the same. The dds-test drive in tests can be used to test DDX documents for DAP4. The new - DAP4 - types supported are Int8, Int64 and UInt64 along with the faux types URL (Url) and UInt8 (Byte).

2012-07-09  James Gallagher  <jgallagher@opendap.org>

	Added Int8 type

2012-06-29  James Gallagher  <jgallagher@opendap.org>

	Checkpoint for DAP4 data types and supporting classes in libdap. This checkin includes atomic types - except Opaque.

2012-06-28  James Gallagher  <jgallagher@opendap.org>

	Testing commit after relocating to the https://scm... URL from inside Eclipse.

	Changes for DAP4 - fixed up operators. Testing checkin after relocating to the https://scm... URL.
	M    UInt16.h

2012-06-27  James Gallagher  <jgallagher@opendap.org>

	Removed errant instrumentation in serialize()

2012-06-22  James Gallagher  <jgallagher@opendap.org>

	DAP4 additions

	DAP4 new files

	Edits for DAP4 including Int64 and UInt64. Some tests/checks for constructor types to exclude types that should only be used for DAP4 when the software is clearly working with DAP2.

	more gnulib

	Added marcos
	A    m4/strings_h.m4
	A    m4/locale_h.m4
	A    m4/sys_types_h.m4
	A    m4/localeconv.m4
	A    m4/off_t.m4
	A    m4/mbtowc.m4
	A    m4/byteswap.m4

	gnulib update - forgotten file.

	Updated gnulib to include byteswap() functions. They are used by the DAP4StreamUnMarshaller code.

	Added some debugging output for/because of work on the GDAL handler.

2012-06-21  James Gallagher  <jgallagher@opendap.org>

	Moved c_md5_length into the DAP4Stream{Un}Marshaller classes.

2012-06-20  James Gallagher  <jgallagher@opendap.org>

	Added classes and tests for the DAP4 on-the-wire format as of the DAP4 draft specification from early June 2012. At the same time I fixed some memory problems I found in the XDRStream{Marshaller,UnMarshaller} classes - XDR objects were likely leaking memory. I also removed the checksum test feature from XDRStreamMarshaller since that is not a DAP2 feature. The DAP4 serializers support writing and reading checksums. The interfaces defined by Marshaller and UnMarshaller are unchanged although I did add methods.

2012-06-05  James Gallagher  <jgallagher@opendap.org>

	Fixed an error in the MIMEUtilTest code. The test failed when the time zone was to the east of the prime meridian. See ticket 1907.

2012-05-31  James Gallagher  <jgallagher@opendap.org>

	doxygen updates plus added an example function for the MIIC folks to ce_functions.cc.
	M    configure.ac
	M    main_page.doxygen
	M    ConstraintEvaluator.cc
	A    doxy.conf.in
	A    main_page.doxygen.in
	M    ce_functions.cc
	M    doxy.conf

2012-05-11  Nathan Potter  <ndp@opendap.org>

	libdap: updating version number

2012-05-01  Nathan Potter  <ndp@opendap.org>

	libdap: Added lib64 support to dap-config

2012-04-26  James Gallagher  <jgallagher@opendap.org>

	Removed the last of the OLD_FILE_METHODS implementations.

	Removed most of the OLD_*_METHODS - only those in the mime_util code remain.

2012-04-25  James Gallagher  <jgallagher@opendap.org>

	Refactor: coded all the libdap output methods so that the logic is written just once (in the XMLWriter for XML and ostream for the curl braces). Older code is just a wrapper for those methods. All of the FILE* methods calls the ostream methods using an instance of ostringstream; all of the FILE* ostream xml methods are wrappers for the XMLWriter methods.
	M    DODSFilter.cc
	M    XMLWriter.h
	M    Int16.cc
	M    XMLWriter.cc
	M    DDS.cc
	M    Array.cc
	M    tests/expr-test.cc
	M    tests/TestByte.cc
	M    tests/io_test.cc
	M    UInt16.cc
	M    Byte.cc
	M    ResponseBuilder.cc
	M    GNU/GetOpt.cc
	M    BaseType.cc
	M    Makefile.am
	M    Int32.cc
	M    Float32.cc
	M    AttrTable.cc
	D    grammarfiles
	M    Structure.cc
	M    Vector.cc
	M    getdap.cc
	M    Str.cc
	M    Sequence.cc
	M    mime_util.cc
	M    Constructor.cc
	M    XDRStreamMarshaller.h
	M    util.cc
	M    Float64.cc
	M    UInt32.cc
	M    XDRStreamMarshaller.cc
	M    Grid.cc
	M    Connect.cc
	M    unit-tests/MarshallerTest.cc

2012-04-24  James Gallagher  <jgallagher@opendap.org>

	Fixed lack of loop index init in setup().

2012-04-20  James Gallagher  <jgallagher@opendap.org>

	Found an uninitialize loop index variable; fixed and the test stopped faulting.
	M    unit-tests/MarshallerTest.cc

	Build fixes for OSX

	Patch to configure.ac - fixed the CHECKSUMS_DEFINED problem from yesterday's check in.

2012-04-19  James Gallagher  <jgallagher@opendap.org>

	Removed more of the ugrid function code.

	Removed an errant AC_OUPUT item related to ugrids.
	M    configure.ac

2012-04-18  James Gallagher  <jgallagher@opendap.org>

	Removed the ugrid function from libdap; it's now in the netcdf_handler
	M    configure.ac
	M    ce_functions.h
	M    ce_functions.cc
	M    dap-config.in

2012-04-17  James Gallagher  <jgallagher@opendap.org>

	Changes for the gridfields build.
	M    configure.ac
	M    Makefile.am

	Merge/version update
	_M   .
	_M   OSX_Resources/Info.plist.proto
	_M   tests/old_tests/grid-func-testsuite
	_M   tests/old_tests/server-testsuite
	_M   mime_util.h
	M    NEWS
	_M   mime_util.cc
	_M   unit-tests/MIMEUtilTest.cc
	_M   unit-tests/fdiostreamTest.cc
	_M   fdiostream.h

	Merge of ugrid code - I tried to merge from the branch, but I wound up merging files largely by hand.
	M    configure.ac
	M    ce_functions.cc
	M    dap-config.in

	Updated NEWS
	M    NEWS

2012-04-13  James Gallagher  <jgallagher@opendap.org>

	After merge with hyrax 1.8 release branch and full build w/o test failures.
	_M   .
	M    ChangeLog
	_M   OSX_Resources/Info.plist.proto
	M    HTTPCacheTable.cc
	_M   tests/old_tests/grid-func-testsuite
	_M   tests/old_tests/server-testsuite
	MM   mime_util.h
	MM   mime_util.cc
	M    XDRStreamMarshaller.cc
	_M   unit-tests/MIMEUtilTest.cc
	_M   unit-tests/fdiostreamTest.cc
	_M   fdiostream.h

2012-04-12  James Gallagher  <jgallagher@opendap.org>

	Result of merging changes from the trunk. This code was then merged to the trunk and tagged.
	_M   .
	M    configure.ac
	M    ChangeLog
	_M   OSX_Resources/Info.plist.proto
	M    HTTPCacheTable.cc
	_M   tests/old_tests/grid-func-testsuite
	_M   tests/old_tests/server-testsuite
	M    tests/TestArray.cc
	M    tests/package.m4
	M    ResponseBuilder.cc
	M    Makefile.am
	_M   mime_util.h
	M    Structure.cc
	M    Vector.cc
	_M   mime_util.cc
	M    XDRStreamMarshaller.h
	M    XDRStreamMarshaller.cc
	M    Grid.cc
	_M   unit-tests/MIMEUtilTest.cc
	_M   unit-tests/fdiostreamTest.cc
	M    unit-tests/Makefile.am
	M    unit-tests/MarshallerTest.cc
	M    HTTPConnect.h
	_M   fdiostream.h

	Repaired the MarshallerTest by removing the checksums tests when that feature is not compiled into the code.
	M    unit-tests/MarshallerTest.cc

	Removed; generated
	D    tests/package.m4

	tiny change to match the version number update on the h 1.8 branch
	M    configure.ac

	Merge of the hyrax 1.8 release branch version of libdap plus the new checksum code. The code on the hyrax 1.8 release branch will be bumped up to version 3.11.4 and tagged as such.
	_M   .
	M    Error.lex
	M    DODSFilter.cc
	A  + XMLWriter.h
	M    Structure.h
	M    Sequence.h
	M    SignalHandler.cc
	M    configure.ac
	M    COPYING
	M    ChangeLog
	M    Ancillary.cc
	_M   OSX_Resources/Info.plist.proto
	M    gse.lex
	A  + XMLWriter.cc
	M    DDS.cc
	A  + HTTPCacheMacros.h
	M    HTTPCacheTable.cc
	M    BaseType.h
	M    Array.cc
	M    tests/das-testsuite/test.34.das.base
	_M   tests/old_tests/grid-func-testsuite
	_M   tests/old_tests/server-testsuite
	M    tests/expr-testsuite/test.6b.base
	M    tests/expr-testsuite/test.5e.base
	M    tests/package.m4
	M    tests/Makefile.am
	M    tests/dds-test.cc
	M    INSTALL
	M    DDXParserSAX2.cc
	M    AlarmHandler.h
	M    libdap.spec
	M    ResponseBuilder.cc
	M    GNU/GetOpt.h
	M    README
	M    BaseType.cc
	M    DDS.h
	M    Makefile.am
	M    Constructor.h
	M    HTTPCache.cc
	M    ce_expr.y
	A  + getdap.man1
	M    dds.lex
	M    util.h
	M    AttrTable.cc
	_M   mime_util.h
	M    Grid.h
	M    NEWS
	M    HTTPConnect.cc
	M    Structure.cc
	M    Sequence.cc
	M    das.lex
	M    ce_functions.cc
	M    AttrTable.h
	_M   mime_util.cc
	M    GridGeoConstraint.cc
	M    Constructor.cc
	M    util.cc
	A  + dap-config.man1
	M    Grid.cc
	M    unit-tests/dasT.cc
	M    unit-tests/AISMergeTest.cc
	M    unit-tests/DODSFilterTest.cc
	M    unit-tests/HTTPCacheTest.cc
	M    unit-tests/DDSTest.cc
	M    unit-tests/AttrTableTest.cc
	MM   unit-tests/MIMEUtilTest.cc
	_M   unit-tests/fdiostreamTest.cc
	M    unit-tests/ddsT.cc
	M    unit-tests/ByteTest.cc
	M    unit-tests/ResponseBuilderTest.cc
	M    unit-tests/generalUtilTest.cc
	A  + unit-tests/dds-testsuite/test.19d1.xml
	A  + unit-tests/dds-testsuite/test.19b6.xml
	A  + unit-tests/dds-testsuite/test.19b.xml
	A  + unit-tests/dds-testsuite/test.19c.xml
	A  + unit-tests/dds-testsuite/test.19d.xml
	A  + unit-tests/dds-testsuite/test.19e.xml
	A  + unit-tests/dds-testsuite/test.19f.xml
	A  + unit-tests/dds-testsuite/test.19g.xml
	M    unit-tests/testFile.cc
	M    unit-tests/CEFunctionsTest.cc
	A  + unit-tests/testFile.h
	A  + unit-tests/ddx-testsuite/response_builder_send_data_ddx_test_3.xml
	A  + unit-tests/ddx-testsuite/response_builder_send_data_ddx_test.xml
	A  + unit-tests/ddx-testsuite/response_builder_send_ddx_test.xml
	M    unit-tests/Makefile.am
	M    unit-tests/MarshallerTest.cc
	M    dds.y
	_M   fdiostream.h
	M    GeoConstraint.cc
	M    Array.h
	M    ce_expr.lex
	M    dap-config.in

2012-04-11  James Gallagher  <jgallagher@opendap.org>

	Removed the 'override' file feature - it was never used and its implementaion was a problem.
	M    HTTPCacheTable.cc
	M    mime_util.h
	M    mime_util.cc
	M    XDRStreamMarshaller.cc

	Initial implementation of checksums using MD5. This shows that it is not going to trash performance to compute checksums/ The code to embed the checksums in the serialized data stream and then extract them in/on the client has not been added. Use configure --enable-checksums to get the feature in libdap.

	Indenting fixes.

	Fixed an error message to be a bit more intelligable.

2012-04-09  Patrick West  <pwest@opendap.org>

	If curl is not in a standard location then the makefiles need to know where it is to build tests. curl/types.h is no longer included. M    tests/Makefile.am M    unit-tests/Makefile.am M    HTTPConnect.h M    dap-config.in

2012-02-16  James Gallagher  <jgallagher@opendap.org>

	Added unistd .h to ResponseBuilder.cc

2012-02-07  James Gallagher  <jgallagher@opendap.org>

	Version 3.11.3

	Removed the static curl libs from dap-config.

2012-01-17  James Gallagher  <jgallagher@opendap.org>

	News was updated.
	M    NEWS

2012-01-10  James Gallagher  <jgallagher@opendap.org>

	Update for Hyrax 1.8 release.
	M    ChangeLog
	M    tests/package.m4
	M    INSTALL
	M    README
	M    NEWS

2012-01-04  James Gallagher  <jgallagher@opendap.org>

	version number bump in NEWS

2011-12-30  James Gallagher  <jgallagher@opendap.org>

	Bumped up the versions in libdap to 3.11.2. Not sure if this will be the version number we use for the release.

	Fixed the rpm build; included the man page stuff.
	M    libdap.spec

	Added HTTPCacheMacros.h

2011-12-29  James Gallagher  <jgallagher@opendap.org>

	Fixes for distcheck given the new man pages
	M    Makefile.am

	Added man pages for getdap and dap-config
	M    Makefile.am
	A    getdap.man1
	A    dap-config.man1

	Removed calls to exit(). Fixed the FSF address. Half of ticket 1868.

2011-12-19  James Gallagher  <jgallagher@opendap.org>

	comment fixes

2011-11-30  James Gallagher  <jgallagher@opendap.org>

	Formatting, Spelling and an error message's text fixed.

	Fix for Fedora builds; the extra newlines in these baseline files are likely breaking the tests
	M    tests/expr-testsuite/test.6b.base
	M    tests/expr-testsuite/test.5e.base

2011-11-23  Patrick West  <pwest@opendap.org>

	With HTTPConnect including CURL headers, added CURL_CFLAGS to the --cflags option M    dap-config.in

	CURL_CFLAGS was not being used when compiling tests. Added. M    unit-tests/Makefile.am

	curl includes were not being included properly. Works if in common place, but not if in custom location. M    tests/Makefile.am

	curl/types.h is deprecated and no longer needed M    HTTPConnect.h

2011-11-16  James Gallagher  <jgallagher@opendap.org>

	AttrTable was using id2www() to escape spaces and other characters in attribute names. This was done probably because of the spaces (spaces in the attribute names break the DAP2 DAS object parser), but no matter. It was breaking DAS and DDX objects because names with '%' characters in them were mangled. I replaced id2www and www2id with new functions that encode/decode only spaces. I have not fiddled with the find functions; it's fine to use names with spaces in them with the API, but the printed representation of the DAS will show those spaces as %20. Similarly, when the printed representation is parsed, those %20 escape codes are replaced with real spaces. This means that the names in the binary objects and XML representation are correct.

2011-11-15  James Gallagher  <jgallagher@opendap.org>

	Fix for ticket 1841 - the xml attribute 'base' in the Dataset root element should have been preceeded by the namespace 'xml'. It is now.

2011-11-13  James Gallagher  <jgallagher@opendap.org>

	Fixed, I hope, the problem with the xmlTextWriter code in version 2.6 of libxml. I think what was happening was really tripping over an odd feature of the xmlTextWriter API where the TextWriter object has to be freed before the pointer it has been writing to can be used. Actually, I suspect that freeing the object calls the buffer flush function, so calling that would probably work, too. I opted for the call sequence in the only example I can dig up...

	Fix for ticket 1837. The code libxml2 was escaping attributes with with OtherXML, turning them into useless goo. I switched from the ...WriteString to ...WriteRaw function for this type of attribute and order was restored.

2011-10-31  Patrick West  <pwest@opendap.org>

	The code was printing a blank line when certain conditions existed. Removed that code. M    DDS.cc

2011-10-27  James Gallagher  <jgallagher@opendap.org>

	Updates for the new DDX tests... nearly done

2011-10-24  Patrick West  <pwest@opendap.org>

	Forgot a quote M    dap-config.in

	Added xml2 includes to cflags M    dap-config.in

2011-10-24  James Gallagher  <jgallagher@opendap.org>

	some poking around regarding the DDX/XML bug (1829). Doesn't look like it's in libdap. Some cleanup, though.

	Fixed the distcheck target.
	M    unit-tests/dasT.cc
	M    unit-tests/AISMergeTest.cc
	M    unit-tests/MIMEUtilTest.cc
	M    unit-tests/ddsT.cc
	M    unit-tests/ByteTest.cc
	M    unit-tests/Makefile.am

2011-10-24  Nathan Potter  <ndp@opendap.org>

	libdap: Fixed problems with libxml dependencies.

2011-10-22  James Gallagher  <jgallagher@opendap.org>

	Added testFle.h in unit-tests

2011-10-21  James Gallagher  <jgallagher@opendap.org>

	Added libparsers_la_CPPFLAGS so that -I for libxml2 will be used when building the grammar files (really only needed for the DAS stuff?). Also fixed minor warning in HTTPCache where a File* could be used uninitialized.
	M    Makefile.am
	M    HTTPCache.cc

	I added a new method to DDS that can insert a variable anywhere in the DDS. I also added 'nocopy' versions of the new insert_var() method and the older ad_var() method. Once the ncml handler stabilizes, we can start using those methods to boost performance. Lastly, I forgot to add the new XMLWriter class on the last commit,

2011-10-12  James Gallagher  <jgallagher@opendap.org>

	I added a new method to BaseType, DDS and DAS: print_xml_writer() that takes a XMLWriter object and uses libxml2's xml writer API to build the DDX response. This should fix all of our woes WRT xml encoding. The new method is called by the DDS::print_xml method although it could be used in place of that method since it has the same parameters. I added tests and, in the course of that, modified the way some of the tests are done (using files instead of string variables for the regexs). I also tried adding some globbing functions to the util.cc file but those proved less than totally useful - I've left them there all the same.

2011-09-23  James Gallagher  <jgallagher@opendap.org>

	Fix for the unit test of get_request_size(). For this function, different compilers return different values for sizeof(string) so I made the unit test an OR of two values. Fixed here on the branch and on the trunk.
	M    unit-tests/DDSTest.cc

	Added a change to the DDS unit tests so that older compilers that report the sizeof(string) as 4 bytes will not bork the get_request_size unit test.
	M    unit-tests/DDSTest.cc

2011-09-21  James Gallagher  <jgallagher@opendap.org>

	Hyrax 1.8
	A    http://scm.opendap.org/svn/branch/libdap/3.11.2

2011-09-13  James Gallagher  <jgallagher@opendap.org>

	Refactor - no change to the ABI.

2011-08-24  James Gallagher  <jgallagher@opendap.org>

	Merge of Hyrax 1.7.1
	_M   .
	_M   OSX_Resources/Info.plist.proto
	M    DAS.h
	M    DDS.cc
	_M   tests/old_tests/grid-func-testsuite
	_M   tests/old_tests/server-testsuite
	M    tests/expr-testsuite/test.6b.base
	M    DDS.h
	M    BaseType.cc
	M    Constructor.h
	M    AttrTable.cc
	_M   mime_util.h
	_M   mime_util.cc
	M    Constructor.cc
	M    unit-tests/cache-testsuite/Makefile.am
	_M   unit-tests/MIMEUtilTest.cc
	_M   unit-tests/fdiostreamTest.cc
	_M   fdiostream.h

2011-08-17  James Gallagher  <jgallagher@opendap.org>

	Some minor changes to make the DBG() statements easier to decipher; some additions to error messages; and the removal of the old code used to merge hdf4 DAS and DDS objects.

2011-08-02  James Gallagher  <jgallagher@opendap.org>

	Hacked the Makefile.am so that distcheck works with older versions of automake. The distcheck target was failing due to a directory made by a unit test not being removed during distclean.
	M    unit-tests/cache-testsuite/Makefile.am

2011-07-15  James Gallagher  <jgallagher@opendap.org>

	Fixed an issues with the response too big error message - the sizes were returned in Bytes, but the units were listed as KB. Now the values are in KB (truncated, but good enough).

2011-06-30  Patrick West  <pwest@opendap.org>

	Merge hyrax 1.7 branch to trunk

2011-06-09  James Gallagher  <jgallagher@opendap.org>

	Added support for the first version of response size limits - does not do much for Sequences.

2011-05-30  James Gallagher  <jgallagher@opendap.org>

	Added get/set_response_limit() and get_request_size() (first version) to libdap:DDS.

2011-05-17  James Gallagher  <jgallagher@opendap.org>

	Errant char in Makefile.am
	M    unit-tests/Makefile.am

2011-05-10  James Gallagher  <jgallagher@opendap.org>

	Added --with-curl and --with-xml2 to configure.

2011-05-04  James Gallagher  <jgallagher@opendap.org>

	h 1.7 edits
	M    tests/package.m4

2011-04-25  James Gallagher  <jgallagher@opendap.org>

	3.9.1
	M    configure.ac
	M    ChangeLog
	M    Makefile.am
	M    NEWS

	3.11.1
	M    configure.ac
	M    ChangeLog
	M    INSTALL
	M    libdap.spec
	M    README
	M    NEWS

	Removed doc rpm - this breaks when the build hosts lacks dot or dot does not make inamges.
	M    libdap.spec

2011-04-20  James Gallagher  <jgallagher@opendap.org>

	Hyrax 1.7 releaseHyrax 1.7 release
	A    http://scm.opendap.org/svn/branch/libdap/3.11.1

2011-04-08  James Gallagher  <jgallagher@opendap.org>

	Build fixes for h 1.7 osx meta package
	M    Makefile.am

2011-03-28  James Gallagher  <jgallagher@opendap.org>

	Loop/Race-condition in HTTPCacheTable.h fixed

	1.7RC1

2011-03-17  Nathan Potter  <ndp@opendap.org>

	libdap: Automated change of version number for OSX package builds.

2011-03-08  James Gallagher  <jgallagher@opendap.org>

	Merge for hyrax	1.7 from the hyrax_1.6.2_release branch	of shrew to the	trunk
	_M   .
	M    RValue.cc
	M    DODSFilter.cc
	M    OSX_Resources/InstallationCheck
	M    OSX_Resources/update_mac_package_contents.pl
	R  + OSX_Resources/Info.plist
	A  + OSX_Resources/Info.plist.proto
	M    DDS.cc
	M    Array.cc
	_M   tests/old_tests/grid-func-testsuite
	_M   tests/old_tests/server-testsuite
	M    DDXParserSAX2.cc
	M    AlarmHandler.h
	M    libdap.spec
	M    BaseType.cc
	M    Makefile.am
	_M   mime_util.h
	M    Vector.cc
	M    ce_functions.cc
	MM   mime_util.cc
	M    GridGeoConstraint.cc
	M    Constructor.cc
	M    DAS.cc
	M    Grid.cc
	M    escaping.cc
	_M   unit-tests/MIMEUtilTest.cc
	_M   unit-tests/fdiostreamTest.cc
	_M   fdiostream.h
	M    Clause.cc

2011-03-03  Patrick West  <pwest@opendap.org>

	These files are generated D    gl/alloca.h D    gl/arg-nonnull.h D    gl/langinfo.h D    gl/stdint.h D    gl/c++defs.h D    gl/wctype.h D    gl/warn-on-use.h D    gl/wchar.h D    gl/unistd.h

2011-03-03  James Gallagher  <jgallagher@opendap.org>

	All tests back in.
	M    unit-tests/HTTPConnectTest.cc

	Fixed HTTPCache hack that provides access to the cached response body. Also fixed an error in Keywords that broke a gazillion tests.

	Eh - ctor fix for Keywords

	Keywords2 was modified so it'll build on older (4.1) gcc compilers (with an older stl implementation).

	Modified HTTPConnect to store the filename of the cached body when returning cached responses. Use the HTTPResponse::get_file() method to use this. Once the HTTPResponse is deleted, the name is no loner valid.

2011-03-01  James Gallagher  <jgallagher@opendap.org>

	Added Keywords to DDS and modified the behavior of set_dap_version so that '2' parses as '2.0' (really 'x' --> 'x.0').

2011-03-01  Patrick West  <pwest@opendap.org>

	Created from .in file. D    gl/stdlib.h

2011-02-28  Patrick West  <pwest@opendap.org>

	added include of cstring for strlen and strncpy M    ResponseBuilder.cc

2011-02-25  James Gallagher  <jgallagher@opendap.org>

	Removed old Keywords impl.

	Keywords2 now tests for legal values.

	Keywords2 works - this syntax looks like functions but is to be parsed before the CE is formally processed.

	Keywrods2Test.cc...

	Keywords2...

2011-02-24  James Gallagher  <jgallagher@opendap.org>

	new Keywords implementations started.

	Next version of Keywords - This implements the version where keywords are bound to a pair made up of a kind and a value. Probably won't use this because of potential problems with ambiguity - it's not possible to guarantee that 'dap3.2' won't be an identifier in a data set.

	g++ 4.? warnings about char* conversion in HTTPConnectTest

	New Keywords class first version working/tested

2011-02-23  James Gallagher  <jgallagher@opendap.org>

	Factored keywords out of ResponseBuilder and into their own class (Keywords).

2011-02-15  Patrick West  <pwest@opendap.org>

	This file is automatically generated D    gl/configmake.h

2011-02-08  James Gallagher  <jgallagher@opendap.org>

	Initial cut at support for Version information in the CE.

	I modified the documentation for mime_util and ResponseBuilder so that they describe a truer version of the world - most of the MIME header code is no longer used by libdap or the BES/handlers (instead the headers are added by the OLFS). Some of the mime_util code is used by the client side, however, and a tiny bit is used by the parts of ResponseBuilder I added so that the BES can use ResponseBuilder in those cases where there is no OLFS.

	Reverted to pre-DAP4 hack versions of these... The new features are implemented in ResponseBuilder.
	M    DODSFilter.cc
	M    DODSFilter.h

2011-02-07  James Gallagher  <jgallagher@opendap.org>

	ResponseBuilder now assumes that the default protocol for a response is the DAP_PROTOCOL_VERSION read from config.h. This can be overridden using a parameter to the various set_mime_*() methods it defines (which are different from those in mime_util.cc). NB: These are not used by Hyrax, but the BES might use these sometimes and I've got mods pending in the BES to use this code.

	Comments about ResponseBuilder

	Comments about ResponseBuilder

	Comments about ResponseBuilder

	Added comment about ResponseBuilder

	Added comment about ResponseBuilder

2011-02-03  James Gallagher  <jgallagher@opendap.org>

	These are templates needed by the code in 'gl.' I think ...
	A    conf/c++defs.h
	A    conf/warn-on-use.h
	A    conf/arg-nonnull.h

2011-02-02  James Gallagher  <jgallagher@opendap.org>

	Removed these files as a result of the massive commit
	D    gl/m4/wchar.m4
	D    gl/m4/ulonglong.m4
	D    gl/m4/absolute-header.m4
	D    gl/m4/wctype.m4
	D    gl/alloca_.h
	D    gl/wchar_.h
	D    gl/stdint_.h
	D    gl/stdbool_.h
	D    gl/unistd_.h
	D    gl/wctype_.h
	D    gl/stdlib_.h
	D    gl/alloca.c

	Added as part of the massive update.
	A    gl/m4/fcntl-o.m4
	A    gl/m4/configmake.m4
	A    gl/m4/btowc.m4
	A    gl/m4/00gnulib.m4
	A    gl/m4/locale-fr.m4
	A    gl/m4/langinfo_h.m4
	A    gl/m4/mbsinit.m4
	A    gl/m4/warn-on-use.m4
	A    gl/m4/wchar_h.m4
	A    gl/m4/wcrtomb.m4
	A    gl/m4/locale-zh.m4
	A    gl/m4/stddef_h.m4
	A    gl/m4/mbstate_t.m4
	A    gl/m4/wctype_h.m4
	A    gl/m4/nl_langinfo.m4
	A    gl/m4/locale-ja.m4
	A    gl/m4/wchar_t.m4
	A    gl/m4/multiarch.m4
	A    gl/alloca.h
	A    gl/arg-nonnull.h
	A    gl/langinfo.h
	A    gl/mbsinit.c
	A    gl/stdint.h
	A    gl/wcrtomb.c
	A    gl/btowc.c
	A    gl/c++defs.h
	A    gl/warn-on-use.h
	A    gl/wctype.h
	A    gl/streq.h
	A    gl/alloca.in.h
	A    gl/langinfo.in.h
	A    gl/configmake.h
	A    gl/verify.h
	A    gl/wchar.h
	A    gl/iswblank.c
	A    gl/mbrtowc.c
	A    gl/wchar.in.h
	A    gl/stdint.in.h
	A    gl/stdbool.in.h
	A    gl/unistd.in.h
	A    gl/stddef.in.h
	A    gl/wctype.in.h
	A    gl/nl_langinfo.c
	A    gl/stdlib.in.h

	Massive (and massively overdue) updates - this may be the fix for ticket #1702 But regardless, it's certainly needed.
	M    gl/m4/wint_t.m4
	M    gl/m4/localcharset.m4
	M    gl/m4/stdint.m4
	M    gl/m4/stdbool.m4
	M    gl/m4/gnulib-common.m4
	M    gl/m4/malloc.m4
	M    gl/m4/regex.m4
	M    gl/m4/gnulib-comp.m4
	M    gl/m4/mbrtowc.m4
	M    gl/m4/unistd_h.m4
	M    gl/m4/longlong.m4
	M    gl/m4/ssize_t.m4
	M    gl/m4/include_next.m4
	M    gl/m4/gnulib-cache.m4
	M    gl/m4/glibc21.m4
	M    gl/m4/codeset.m4
	M    gl/m4/stdlib_h.m4
	M    gl/m4/gnulib-tool.m4
	M    gl/m4/alloca.m4
	M    gl/m4/extensions.m4
	M    gl/localcharset.c
	M    gl/regex_internal.c
	M    gl/malloc.c
	M    gl/localcharset.h
	M    gl/regex_internal.h
	M    gl/regexec.c
	M    gl/ref-del.sin
	M    gl/stdlib.h
	M    gl/regcomp.c
	M    gl/ref-add.sin
	M    gl/regex.c
	M    gl/unistd.h
	M    gl/config.charset
	M    gl/regex.h
	M    gl/Makefile.am
	M    gl/gettext.h

	Corrected

2011-01-31  James Gallagher  <jgallagher@opendap.org>

	Expanded DDS so that it's easier to get the protocol version string; moved the relevant MIME header code into ResponseBuilder on the assumption that someone might be using this still (like CEDAR). Updated the unit tests.

2011-01-29  James Gallagher  <jgallagher@opendap.org>

	Leaner version of ResponseBuilder - the new replacement for DODSFilter.

2011-01-28  James Gallagher  <jgallagher@opendap.org>

	Commented out test code that got in SVN by mistake (in expr-test.cc)

	Changes/Additions for Version via Projection Functions and/or Keywords.

2010-10-28  Michael Johnson  <michael.patrick.johnson@gmail.com>

	Merge from Hyrax 1.6.2 Shrew Release Branch.
	Not clear what the property modifications are, the ones I checked seem the same.  I'm just letting them go since they seem harmless.

2010-09-14  James Gallagher  <jgallagher@opendap.org>

	Fixed a bug in the www2id() function of escaping.cc that was causing symbols that start with a percent sign to be mangled. It's not clear why the server was/is using this, but this fixes the function and we'll have to sort out whether using the function is correct later. It may be that the BES is routing the DAS through an unnecessary cycle of print/parse/print operations.

	Added tests for www2id() and the case where an attribute starts with a percent sign.

	Spelling errors in GeoConstraint.cc

	Fixed an error in calling long_to_string with doubles in exception handling code - found during testing.

	Updated for fixes to a problem foud in initial testing of the server for the 1.6.2 release.

	Added a second version of eval_function_clauses() that takes and returns a DataDDS instead of a DDS. This enables easier use of the method in handlers that are using subclasses of the types and building responses from DataDDS objects passed around in the BES. I also updated some of the library version information in configure.ac to match more closely the addition to ConstraintEvaluator's interface.

2010-09-13  James Gallagher  <jgallagher@opendap.org>

	Changes for 3.11.0 release
	M    configure.ac
	M    ChangeLog
	M    INSTALL
	M    libdap.spec
	M    README
	M    NEWS
	M    ce_functions.cc

2010-09-07  James Gallagher  <jgallagher@opendap.org>

	Added to doc comments

2010-09-03  James Gallagher  <jgallagher@opendap.org>

	Updated the version number for geogrid.

2010-09-02  James Gallagher  <jgallagher@opendap.org>

	Constraint expressions can now include multiple function calls. Two tests included. Some fixes were added to expr-test.cc which was looking a little long in the tooth...

	Added new functions to ConstraintEvaluator. Untested.

2010-09-01  Michael Johnson  <michael.patrick.johnson@gmail.com>

	o Fix for memory bug in ticket #1637.

2010-08-28  James Gallagher  <jgallagher@opendap.org>

	Grid now prints the XML declaration correctly when a constrained Grid variable's type decays to a Structure. The expr-test program now has an XML option (-x) for use with constrained DDS/DDX output.

2010-08-27  James Gallagher  <jgallagher@opendap.org>

	Fixed the Grid projection bug - should clean up the code a bit. The error was in projection yields grid which was not correctly testing that each Grid dimension had a matching Map vector that was in the current projection.

	Added regression tests for the new version of geogrid(). Removed some old stuff from the dejagnu days.

	Added more tests (unit tests) for GridGeoConstraint for the Grid, Array, Array, ..., version of the constructor.

	geogrid() now takes both (grid, <box points>) and (grid, lat array, lon array <box points>). This includes some minimal testing of the new code.

2010-08-26  James Gallagher  <jgallagher@opendap.org>

	Changes to the geogrid function so that it can take lat/lon maps as explicit arguments.

2010-07-16  James Gallagher  <jgallagher@opendap.org>

	I removed the AIS functions in libdap 3.8 but failed to correctly set the Age of the library in libdap 3.10. Fixed.

2010-06-17  Michael Johnson  <michael.patrick.johnson@gmail.com>

	Removed debug AM_CXXFLAGS entries.

2010-05-24  James Gallagher  <jgallagher@opendap.org>

	Updated tests given that the nph-dods alias is no longer supported by test.opendap.org
	M    unit-tests/HTTPCacheTest.cc
	M    unit-tests/generalUtilTest.cc

2010-05-19  Patrick West  <pwest@opendap.org>

	Seems to fix bug #1563. When adding an attribute table to the DAS when a container is currently set, set that new attribute table to not be global using set_is_global_attribute(false) M    DAS.cc

2010-05-12  James Gallagher  <jgallagher@opendap.org>

	Fixed etag for 304 response test - the etag changed when the server was updated.
	M    unit-tests/HTTPConnectTest.cc

2010-05-11  James Gallagher  <jgallagher@opendap.org>

	Merge from the shrew-1.6 branch (which was tagged 3.10.2)
	_M   .
	M    SignalHandler.cc
	M    configure.ac
	M    ChangeLog
	M    conf/libdap.m4
	M    DDS.cc
	M    BaseType.h
	_M   tests/old_tests/grid-func-testsuite
	_M   tests/old_tests/server-testsuite
	M    tests/das-test.cc
	M    tests/package.m4
	M    tests/DASTest.at
	M    tests/DDSTest.at
	M    tests/expr-test.cc
	M    tests/EXPRTest.at
	M    tests/Makefile.am
	M    tests/dds-test.cc
	M    INSTALL
	M    DDXParserSAX2.cc
	M    libdap.spec
	M    README
	M    DDS.h
	M    BaseType.cc
	M    Makefile.am
	M    Constructor.h
	M    RCReader.cc
	M    parser-util.cc
	M    AttrTable.cc
	_M   mime_util.h
	M    Grid.h
	M    NEWS
	M    ce_functions.cc
	M    AttrTable.h
	_M   mime_util.cc
	M    Constructor.cc
	M    Grid.cc
	M    Connect.cc
	M    escaping.cc
	M    unit-tests/DODSFilterTest.cc
	M    unit-tests/DDSTest.cc
	_M   unit-tests/MIMEUtilTest.cc
	MM   unit-tests/fdiostreamTest.cc
	M    unit-tests/generalUtilTest.cc
	M    unit-tests/dds-testsuite/test.19b.das
	M    unit-tests/dds-testsuite/test.19e.das
	M    unit-tests/dds-testsuite/test.19g.das
	A  + unit-tests/dds-testsuite/coads_climatology.nc.dds
	A  + unit-tests/dds-testsuite/coads_climatology.nc.das
	M    unit-tests/Makefile.am
	M    unit-tests/RCReaderTest.cc
	M    unit-tests/MarshallerTest.cc
	_M   fdiostream.h

	ci prior to merge
	M    tests/DASTest.at
	M    tests/DDSTest.at
	M    tests/EXPRTest.at

	Vesion update.
	M    tests/package.m4

2010-05-06  Patrick West  <pwest@opendap.org>

	Fixed problem with checking libdap version M    libdap.m4

2010-05-05  James Gallagher  <jgallagher@opendap.org>

	Added these test files.
	A    dds-testsuite/coads_climatology.nc.dds
	A    dds-testsuite/coads_climatology.nc.das

2010-05-04  James Gallagher  <jgallagher@opendap.org>

	Updated for hyrax 1.6 (libdap3.10.2) RC1
	M    configure.ac
	M    ChangeLog
	M    INSTALL
	M    libdap.spec
	M    README
	M    NEWS

2010-04-30  James Gallagher  <jgallagher@opendap.org>

	Fixed an error in AttrTable::is_global_attribute() where the function did not always return a value.
	M    AttrTable.cc

	Commented the fdiostreamTest stuff - automake was complaining. Removed a bunch of AIS-related things that are no longer needed.

2010-04-30  Michael Johnson  <michael.patrick.johnson@gmail.com>

	AttrTable.cc, AttrTable.h: Changes for #1544.  clone() wasn't preserving parent/child ptrs properly leading to dangling pointers.

2010-04-26  Patrick West  <pwest@opendap.org>

	Fixed version check when a (alpha) or b (beta) at the end of the version M    conf/libdap.m4

2010-04-23  James Gallagher  <jgallagher@opendap.org>

	Modified the transfer_attributes code so that it checks the is_global property for individual attributes and containers (before it was just containers). This entailed a change to AttrTable in both the way it tracks and sets that property. Fixed the unit tests. Several tests became invalid because they tested handler-specific features that are not delt with in the handlers themselves.

2010-04-22  Michael Johnson  <michael.patrick.johnson@gmail.com>

	Added version update to INSTALL as well for #1540

2010-04-22  Patrick West  <pwest@opendap.org>

	Requires libxml2 2.6.16 M    libdap.spec

2010-04-21  James Gallagher  <jgallagher@opendap.org>

	Initial check in of the new methods to handle the transfer (copy) of attributes from the DAS to the DDS object. The new approach includes a new set of methods that are defined in BaseType and Constructor that are designed to be subclassed by handlers that build odd DAS objects. The default methods handle merging a DAS the follows the DAP 2.0 and later specs. The method in DDS calls these 'type-based' methods. The old approach is commented out using #if 0 ... #endif.

2010-04-21  Michael Johnson  <michael.patrick.johnson@gmail.com>

	Added #include <cstdarg> for va_start and va_end    Some systems don't find it by default.

2010-04-16  Michael Johnson  <michael.patrick.johnson@gmail.com>

	Fixed invalid memory and broken invariant problem with using deleted copy in Grid::add_var().  Ticket #1530 revealed this.

2010-04-15  James Gallagher  <jgallagher@opendap.org>

	Added dits-hook target to remove the .svn subdirs that were being included in the dist files.
	M    libdap/Makefile.am
	M    bes/Makefile.am

	Added Requires: lines to the .spec files for libdap and bes.

2010-03-23  James Gallagher  <jgallagher@opendap.org>

	Fixes for distcheck build on 64-bit linux (FC 11)
	M    SignalHandler.cc
	M    RCReader.cc
	M    parser-util.cc
	M    unit-tests/MarshallerTest.cc

	Fixes from the 64-bit linux build. Includes fix for the DAS value issue where values larger than 32-bits were being allowed in int32 attributes.
	M    tests/das-test.cc
	M    tests/dds-test.cc
	M    libdap.spec
	M    Makefile.am
	M    parser-util.cc
	M    unit-tests/RCReaderTest.cc

	Removed fdiostream from libdap and from the tests. Changed generalUtilTest to match the new version of id2xml()

2010-03-19  James Gallagher  <jgallagher@opendap.org>

	More changes for ticket 1521. Modified the id2xml() function so that it no longer encodes the stuff in an octal escape sequence. However, the value of the <value> element in the DDX _is_ encoded so that things like '<' will be escaped for the XML parser. Also, bumped the version in configure.ac to 3.10.1b. One unit test fails - this is a stop-gap fix so we can come back to that test and this fix later.

	MOdified Connect.cc so that the FILE_METHODS aere used, whcih effectively removed the fdiostream.h header from the cmpilation. Also, the DAP version has been bumped to 3.3 - a fix since libdap included in the hyrax 1.6 beta release said 3.2 by mistake.

	Fixes for ticket 1512. The function id2xml() was being used to encode String (DAP) Attribute values and this was causing problems when those values were not valid UTF-8 characters (e.g., when they were less than 0x20). As a fix we dropped the encoding altogether and fell back to the same encoding used by the DAS for the values (that encoding represents all non ASCII values using octal escape codes). I also fixed one of the unit tests that was explicitly testing for the XDAP header to be 3.2 and made it accept any value.

2010-02-10  Patrick West  <pwest@opendap.org>

	fdiostreamtest.txt file added to EXTRA_DIST M    unit-tests/Makefile.am

2010-02-08  Patrick West  <pwest@opendap.org>

	EXPRTest.at wasn't included in EXTRA_DIST M    tests/Makefile.am

2010-02-05  Patrick West  <pwest@opendap.org>

	Added DISTCLEANFILES to both of these to clean up unit-tests and tests files left around. M    tests/Makefile.am M    unit-tests/Makefile.am

	Including test_config.h, which has the local definition of abs_srcdir and can be used to find files to load. M    fdiostreamTest.cc

	Using abs_srcdir instead of just srcdir. This fixes this part of the distcheck problem. M    tests/DASTest.at M    tests/DDSTest.at M    tests/EXPRTest.at

	README.AIS has been removed M    libdap.spec

2010-02-03  James Gallagher  <jgallagher@opendap.org>

	Fixes for autotest that I forgot to check in to the branch. $srcdir/<tool> --> $abs_builddir/<tool>

2010-02-01  James Gallagher  <jgallagher@opendap.org>

	Branch for Hyrax 1.6
	A    http://scm.opendap.org/svn/branch/libdap/3.10.0

	Chnages for version 3.10.0
	M    configure.ac
	M    ChangeLog
	M    INSTALL
	M    libdap.spec
	M    README
	M    NEWS

	Modified the way errors in attribute values are tested for. Now we test errno first, then for values of 0.0 with ptr values non-null. This matches the man page more closely then the old tests.

2010-01-12  James Gallagher  <jgallagher@opendap.org>

	Fixed potential read beyond bounds in XDRStreamUnMarshaller::get_vector.

	Fixed return type in Vector::set_value_slice_from_row_major_vector (changed to unsigned int).

	Fixed a comment

2010-01-08  Patrick West  <pwest@opendap.org>

	--clean to clean build and src files for rpmbuild M    Makefile.am

2010-01-07  James Gallagher  <jgallagher@opendap.org>

	Changed the documentation for server-side functions so that the bulk of the documentation is now on the web.

	Fixes to geogrid() so that the longitude wrapping feature works and so that if latitude is upsidedown in the data, it's returned as 'north up' data.

2009-12-29  James Gallagher  <jgallagher@opendap.org>

	Shrew build changes that will hopefully lead to a version that we can build using NMI's B&T system. Also, I added 'cccc' targets so that we can take a 'metrics snapshot' without undue pain.

2009-12-23  Rikki Duncan  <rduncan@opendap.org>

	changes for win32 build

	changes for win32 build

	changes for win32 build

	changes for win32 build

	changes for win32 build

2009-12-03  James Gallagher  <jgallagher@opendap.org>

	Added chmod of InstallationCheck script which seems to be needed when buidling on osx 10.5.8.
	M    update_mac_package_contents.pl

2009-12-01  Michael Johnson  <michael.patrick.johnson@gmail.com>

	o Needed to add explicit #include <cstring> in order to find memcpy for Red Hat Enterprise 5 using gcc-4.3.2.  Seems they cleaned up headers and you need to be explicit about the include now.

2009-11-30  Michael Johnson  <michael.patrick.johnson@gmail.com>

	Fix for link bug on some platforms:  initializing variables in a switch without declaring a local scope block is an error.

	Fix for link bug on some platforms:  initializing variables in a switch without declaring a local scope block is an error.

2009-11-24  Michael Johnson  <michael.patrick.johnson@gmail.com>

	DDS.cc: fixed minor memory leak
	Array.cc, Array.h: added prepend_dim function for adding outer dimensions.

	Grid.h, Grid.cc: added function to set the array part explicitly without copying it.  fixed potential memory leaks.  added a few extra checks on proper types being set.  added function to add maps to (to beginning or end of map vector to support new outer dimensions).  made _duplicate protected for subclasses to be able to call it.

2009-11-19  James Gallagher  <jgallagher@opendap.org>

	ticket 1399 - Grids that have only one member after projection still must be wrapped in a Structure (because there might be two Grids so projected and they might have members with the same names - this is a real case). The Structures provide for unique FQN as the DAP requires.

	Added Dap4SharedDimension class

	Added unit tests for Dap4Dataset and Dap4Group

	Dap4Dataset and Dap4Group are mostly working and DDS is now a child or Structure (but is not using any of its parents methods). Dap4Dataset is a DDS, so it can be passed to the various methods already defined for a DDS & or *. TODO: refactor DDS so that it uses the methods/storage of Structure, then refactor Grid and Sequence so they are children of Structure, not Constructor. Then remove Constructor from Structure.

2009-11-13  James Gallagher  <jgallagher@opendap.org>

	removed old classes for the AIS; Added Dap4Dataset and Dap4Group; updated s number of tests; and merged from the trunk.

2009-11-10  James Gallagher  <jgallagher@opendap.org>

	Removed libdapserver from the getdap link.

	Branch for the DAP4 development effort.
	A    http://scm.opendap.org/svn/branch/libdap/DAP4

2009-11-05  James Gallagher  <jgallagher@opendap.org>

	I changed how the FILE_METHODS compile-time switch was defined, Now it's defined in the headers and not, directly in the config.h or *.cc files. That was a bug. All tests pass now. I'm going to check this in and then run tests on the entire shrew project.

2009-11-04  James Gallagher  <jgallagher@opendap.org>

	Removed lots of accumulated 'old code' and reinstated the FILE_METHODS compilation flag.

	Likely fixes for the win32 build. Test these on a vm.

	tweaks to get the ddx and dataddx responses working with the trunk BES. See getdap's -x (ddx) and -X (DataDDX) responses. These work using the -p x.y switch to set the DAP Accept version to x.y. Alos added the -t option to turn on HTTP protocol tracing. The new parser DDXParserSXA2 reads the dapVersion XML attribute and sets the value in the DDS instance. I also modified the Connect class to recognize the dods_ddx and dods-ddx values for Content-Description.

2009-10-22  Michael Johnson  <michael.patrick.johnson@gmail.com>

	Ticket #1442:
	o Fixed several potential memory leaks.

	o set_value now sets length.

	o Refactored cut & pasted sections to use helper funcs.

2009-10-07  Michael Johnson  <michael.patrick.johnson@gmail.com>

	Made simple_find() and simple_find_container() public for callers that require non-recursing lookups.

2009-10-06  James Gallagher  <jgallagher@opendap.org>

	I fixed problems with two sets of tests. First, the "Array of structures with child arrays" test was failing because the TestCommon and TestArray classes were not generating valid output in the case where intern_data() was used. Second, the test for String regexes where nothing matched was botched because when a selection is applied to anything other than a Sequence and nothing is selected the response from the server is broken. This will be an issue for DAP4. In place of the test that used a Structure and selected nothing, I added two tests of Sequences with strings and tried both selections that return and don't return values. Both cases work.

2009-10-05  Michael Johnson  <michael.patrick.johnson@gmail.com>

	Vector.h, Vector.cc: Cleaned up and moved doxygen comments to impl file.

2009-10-02  Patrick West  <pwest@opendap.org>

	This funciton is no longer used in libdap and is specific to usage in dap-server. Moved the function. M    mime_util.h

2009-10-02  James Gallagher  <jgallagher@opendap.org>

	Regarding the previous commit: On the IOOS branch I removed a 'bad fix' added at some point where includes within util.h supplied the class definitions for Byte, ..., Grid. So it looked like the .cc files were not including must at all, but in fact not only were they (and they need those includes) but _everything_ that used util.cc/h was too. So here are the includes, back in the .cc files where they belong.

	Merged code from ioos/src/libdap rev 20393 that contained the 'OtherXML' attribute implementation. This was apparently lost when that branch was updated between the commit of that revision and now. In addition to changes in AttrTable and the DAS and DDX parsers, there are changes in tests/ and unit-tests/. There's also a new function for converting octal escapes codes that is in escaping.cc/h. I updated the DDX parser to use the SAX2 interface and it now correctly processes namespaces and as a result, it's in a new file 'DDXParserSAX2.cc/h'. Oddly, when I performed the merge, an old 'feature' of the Type (Byte, ...) classes reemerged, the 'include the world' feature. In testing I could not get a good compile without these includes after the merge (but before the merge it was fine). I'm going to leave those changes out of this commit and see if the resulting code is OK. If not, I'l commit those changes, too.

2009-10-02  Michael Johnson  <michael.patrick.johnson@gmail.com>

	Vector.cc, Vector.h: Added support for reserving data buffer storage in advance, clearing out data buffers, and for copying a Vector into a subset of the value buffer of another Vector.  In support of aggregation to allow Vector's to be combined into a larger Vector.  Ticket #1427 has more information.  This was a monotonic interface addition and code change only --- no interfaces removed or changed.

2009-09-25  James Gallagher  <jgallagher@opendap.org>

	Removed XDRFileMarshaller.h from DODSFilter.cc

	It just seem right to save things at this point. Most of the configure.ac files have been updated. The libdap software has had a number of the FILE* methods/functions commented out using #if FILE_METHODS and then #undef FILE_METHODS. We'll see how much of the redundant code can be removed before the next Hyrax 1.6 release.

	Added fdiostream to the library because it seems we might be using it someday soon. Modified expr-test to use temp. files and the methods in DODSFilter and Connect - this is a better test of the library. I modified XDRStreamUnMarshaller a fair amount but it's still not work 100% and needs more error checking. This code still uses XDRFileUnMarshaller.
	M    DODSFilter.cc
	A    fdiostream.cc
	M    tests/expr-test.cc
	M    tests/TestByte.cc
	M    tests/Makefile.am
	M    Marshaller.h
	D    GNU/fdiostream_test.cc
	D    GNU/fdiostream.h
	M    Makefile.am
	M    DODSFilter.h
	M    XDRStreamUnMarshaller.cc
	M    HTTPConnect.cc
	M    XDRStreamMarshaller.cc
	M    Connect.cc
	A  + unit-tests/fdiostreamTest.cc
	M    unit-tests/Makefile.am
	M    unit-tests/MarshallerTest.cc
	AM + fdiostream.h

2009-09-22  James Gallagher  <jgallagher@opendap.org>

	Removed the xstream code - if we need this it's available on the web.

	Fixed a bug in fdiostream and added support for a istream that reads from a FILE* (ugh).

2009-09-18  James Gallagher  <jgallagher@opendap.org>

	Uses the new file descriptor stream classes - that is, it tests both input and output.

	Added XDRStreamUnMarshaller to the Makefile.am

	Added XDRStreamUnMarshaller

	Minor fixes to the XDRStreamMarshaller class

2009-09-17  James Gallagher  <jgallagher@opendap.org>

	Now includes the newly revamped stream buffer classes (fdiostream.h)

	Added input stream buf for file descriptors and renamed the files. Updated the README.

2009-09-11  Michael Johnson  <michael.patrick.johnson@gmail.com>

	Grid.cc: Made Grid add it's array and map vectors to the Constructor _vars list so they get iterated by the superclass Vars_Iter calls.  For ticket #1406

2009-09-02  Nathan Potter  <ndp@opendap.org>

	libdap: tweaked configure.ac to fix uuid lib problem

2009-09-02  James Gallagher  <jgallagher@opendap.org>

	Updated the pkg-config and dap-config scripts so they contain the UUID library when needed.
	M    libdap.pc.in
	M    libdapserver.pc.in
	M    dap-config.in

	Build fixes for linux. Linux uses libuuid for the uuid functions while OSX does not - I added a test for that library to configure.ac and the corrsponding changes to the Makefile.am. I also found and fixed two other errors that were not showing up on the OSX platform.
	M    DODSFilter.cc
	M    configure.ac
	M    tests/Makefile.am
	M    Makefile.am

2009-09-02  Michael Johnson  <michael.patrick.johnson@gmail.com>

	o Fixed typo causing build error.

2009-08-31  James Gallagher  <jgallagher@opendap.org>

	Replace fgetln with fgets in DDXParser.cc.  oddly package.m4 in tests has the version number for the library. I changed that to 3.10.0 (we should have something for the trunk better than a version number that looks like a release number) since I didn't think 3.9.2 was a good value...

	Configure fixes.
	M    configure.ac

	Updates for make dist.
	M    tests/Makefile.am
	M    INSTALL
	M    Makefile.am

	Added

	Added.

2009-08-28  James Gallagher  <jgallagher@opendap.org>

	Refactor of libdap: AIS removed from build. In addition, bug tickets addressed for Array, DDS, Vector and parser-util.cc

2009-08-27  James Gallagher  <jgallagher@opendap.org>

	Moved mime_util to libdap from libdapserver.

	Removed unnecessary libdapserver use for the unit-tests after moving cgi_util to mime_util and putting the latter in libdap.

	Added code to build and read the DataDDX response for DAP4. Connect has request_data_ddx() and request_data_ddx_url() methods that will ask a server for the DataDDX and parse the returned response. Connect::read_data() can read a DataDDX response from a file; getdap -M - can read the DataDDX returned by besstandalone when it's asked to return a DataDDX. DODSFilter now has a send_data_ddx() method and appropriate functions are now in mime_util.cc/h to build and parse the multipart MIME response. I also refactored the code somewhat renaming cgi_util to mime_util and removing redundant MIME parsing code in Connect and HTTPConnect - now all the MIME header parsing is done by functions in mime_util. Since these are used by both client and server operations, that should be moved to libdap (from libdapserver).

2009-08-21  James Gallagher  <jgallagher@opendap.org>

	Changed ID to Id to match the RFCs in the set_mime...() functions.. Also removed the set_client_dap_version() method and the matching get methods - These were causing more confusion than anything else. Use set_dap_version() and the matching get methods.
	M    cgi_util.cc
	M    DDS.cc
	M    DDS.h

	Changed ID to Id in the set_mime...() code to match the RFCs; fixed here in tests.
	M    unit-tests/DODSFilterTest.cc

	Fixed an error where getdomainname() can return nothing and not indicate and error. Now the default domain name is opendap.org in that case.

2009-08-20  James Gallagher  <jgallagher@opendap.org>

	Updates for the DataDDX response. New values were added to the ObjectType and and EncodingType enums. DODSFilter now has a send_data_ddx method that can either supply just the body (as needed by the OLFS) or the complete message. Unit tests added in unit-tests.DODSFilterTest. In HTTPConnect, get_description_type() and get_object() were also updated. Lastly, I change the values of Content-Description slightly so they were a little less clunky and made the dap4 prefixed values use dashes instead of underscores.

2009-08-19  James Gallagher  <jgallagher@opendap.org>

	Interim version of autogen.sh for our projects - fix the --force option.
	M    autogen.sh

	Removed generated files.
	D    conf/mkinstalldirs
	D    conf/depcomp
	D    conf/compile
	D    conf/missing
	D    conf/config.guess
	D    conf/config.sub
	D    conf/ltmain.sh
	D    conf/install-sh

2009-08-18  Nathan Potter  <ndp@opendap.org>

	libdap: Repaired bad string syntax and formatting.

2009-08-18  Michael Johnson  <michael.patrick.johnson@gmail.com>

	Added set_name() override to set the name of the template var() as well since this is what is output in a DDS and they didn't match.  Ticket #1346.

2009-08-18  Tom Sgouros  <tsgouros@gmail.com>

	Changes to documentation only.  Formatted ce function documentation to be easier to read and removed a bad paragraph from the main doxygen docs.

2009-08-04  James Gallagher  <jgallagher@opendap.org>

	Added autogen.sh which is probably better than always running autoreconf.
	AM   autogen.sh

	Changes for gcc 4.4: Removed warnings about misplaced or missing const qualifiers and logic issues. Also fixed a missing header under FC 11 (util_mit.cc needs <cstdio> for sprintf).
	M    Int16.cc
	M    conf/mkinstalldirs
	M    conf/depcomp
	M    conf/missing
	M    conf/config.guess
	M    conf/config.sub
	M    conf/ltmain.sh
	M    conf/install-sh
	M    INSTALL
	M    UInt16.cc
	M    Byte.cc
	M    parser-util.cc
	M    Float32.cc
	M    HTTPConnect.cc
	M    Str.cc
	M    ce_functions.cc
	M    das.y
	M    UInt32.cc
	M    util_mit.cc
	M    dds.y
	M    RCReader.h

2009-07-28  James Gallagher  <jgallagher@opendap.org>

	Modified AISDataBaseParser.cc so that the library will build with the --enable-debug=2 configure option. ticket 1318

2009-07-21  Michael Johnson  <michael.patrick.johnson@gmail.com>

	del_attr_table needed to 0 out parent as well to preserve invariant.

	Fixed memory leak in del_attr_table for Ticket #1326 and #1327.

	Fixed several issues with the DAP type checking routines (which I re-used in NcML handler) failing to reject out of range Int32 and accepting a negative number as valid UInt32.

2009-05-08  James Gallagher  <jgallagher@opendap.org>

	Merged changes for ticket 1301 from the tags/libdap/3.9.2 code.
	M    Makefile.am
	M    das.y
	M    unit-tests/AISMergeTest.cc
	M    unit-tests/DASTest.cc
	M    unit-tests/DDSTest.cc

2009-04-09  James Gallagher  <jgallagher@opendap.org>

	Changes for autoconf 2.63 (should work with 2.62 also).
	M EXPRTest.at

2009-04-08  James Gallagher  <jgallagher@opendap.org>

	Merged the 3.9.2 tagged code back into the trunk.
	_M   .
	M    RValue.cc
	M    Int16.cc
	M    configure.ac
	M    DDXParser.cc
	M    cgi_util.cc
	M    ChangeLog
	A  + conf/link-warning.h
	M    DDS.cc
	M    Array.cc
	_M   tests/das-testsuite/test.1.das
	_M   tests/expr-testsuite/test.2
	_M   tests/expr-testsuite/test.3
	_M   tests/expr-testsuite/test.c0
	_M   tests/expr-testsuite/test.4
	_M   tests/expr-testsuite/test.c1
	_M   tests/expr-testsuite/test.c2
	_M   tests/expr-testsuite/test.5
	_M   tests/expr-testsuite/test.c3
	_M   tests/expr-testsuite/test.6
	_M   tests/expr-testsuite/test.c4
	_M   tests/expr-testsuite/test.7
	_M   tests/expr-testsuite/test.8
	_M   tests/expr-testsuite/test.9
	_M   tests/expr-testsuite/test.a
	_M   tests/expr-testsuite/test.b
	_M   tests/expr-testsuite/test.d
	_M   tests/expr-testsuite/test.61
	_M   tests/expr-testsuite/test.2a
	_M   tests/expr-testsuite/test.cc0
	_M   tests/expr-testsuite/test.cc1
	_M   tests/expr-testsuite/test.1
	M    tests/package.m4
	M    INSTALL
	M    UInt16.cc
	M    libdap.spec
	M    Byte.cc
	M    GNU/GNURegex.cc
	M    README
	M    Makefile.am
	M    HTTPCache.cc
	M    ce_expr.y
	M    Float32.cc
	M    dds.lex
	M    util.h
	M    grammarfiles/ce_expr.tab.cc
	M    NEWS
	M    Str.cc
	M    Sequence.cc
	A  + gl/m4/absolute-header.m4
	M    gl/m4/wchar.m4
	M    gl/m4/stdint.m4
	A  + gl/m4/malloc.m4
	M    gl/m4/regex.m4
	M    gl/m4/gnulib-comp.m4
	A  + gl/m4/unistd_h.m4
	M    gl/m4/include_next.m4
	M    gl/m4/gnulib-cache.m4
	D    gl/m4/onceonly_2_57.m4
	A  + gl/m4/stdlib_h.m4
	M    gl/m4/extensions.m4
	M    gl/localcharset.c
	M    gl/regex_internal.c
	M    gl/malloc.c
	M    gl/localcharset.h
	M    gl/regex_internal.h
	M    gl/regexec.c
	A  + gl/stdlib.h
	M    gl/regcomp.c
	M    gl/alloca_.h
	M    gl/wchar_.h
	M    gl/stdint_.h
	A  + gl/unistd_.h
	M    gl/stdbool_.h
	M    gl/regex.c
	A  + gl/unistd.h
	M    gl/regex.h
	M    gl/wctype_.h
	A  + gl/stdlib_.h
	M    gl/Makefile.am
	M    gl/gettext.h
	M    gl/alloca.c
	M    ce_functions.cc
	M    expr.h
	M    AttrTable.h
	M    GridGeoConstraint.cc
	M    util.cc
	M    UInt32.cc
	M    XDRStreamMarshaller.cc
	M    Grid.cc
	M    escaping.cc
	M    unit-tests/HTTPCacheTest.cc
	M    unit-tests/AttrTableTest.cc
	M    unit-tests/generalUtilTest.cc
	M    dds.y
	M    Clause.cc
	M    Array.h
	M    ce_expr.lex

	Bumped up the autoconf version to 2.61 which we need for the top_srcdir variable. Other minor fixes like spelling errors in comments.
	M    configure.ac
	M    INSTALL
	M    GNU/outbuf.h
	M    ce_expr.y
	M    Clause.cc
	M    AISDatabaseParser.cc

2009-02-10  Rikki Duncan  <rduncan@opendap.org>

	Cleaned up the old dejaGNU test directories
	D    tests/ais_testsuite
	D    tests/cache-testsuite
	D    tests/server-testsuite
	D    tests/das-testsuite/config
	D    tests/das-testsuite/das-test.0
	A    tests/old_tests
	AM + tests/old_tests/grid-func-testsuite
	AM + tests/old_tests/server-testsuite
	D    tests/expr-testsuite/expr-test.0
	D    tests/expr-testsuite/config
	D    tests/dds-testsuite/dds-test.0
	D    tests/dds-testsuite/config
	D    tests/grid-func-testsuite
	D    tests/ddx-testsuite
	D    tests/cgi-util-tests
	D    tests/rcreader-testsuite

	Merged changes from the testfixes branch. libdap now uses autotest!
	M    configure.ac
	M    ChangeLog
	M    conf/missing
	A    tests/atlocal.in
	A    tests/DASTest.dir
	A    tests/das-testsuite/test.21.das.base
	D    tests/das-testsuite/test.2
	A    tests/das-testsuite/test.13.das.base
	D    tests/das-testsuite/test.3
	D    tests/das-testsuite/test.4
	A    tests/das-testsuite/test.33.das.base
	D    tests/das-testsuite/test.5
	A    tests/das-testsuite/test.25.das.base
	D    tests/das-testsuite/test.6
	A    tests/das-testsuite/test.17.das.base
	D    tests/das-testsuite/test.7
	A    tests/das-testsuite/test.1a.das
	D    tests/das-testsuite/test.8
	A    tests/das-testsuite/das.das.base
	D    tests/das-testsuite/test.9
	A    tests/das-testsuite/test.29.das.base
	A    tests/das-testsuite/test.1.das.base
	D    tests/das-testsuite/test.11
	D    tests/das-testsuite/test.12
	A    tests/das-testsuite/test.5.das.base
	D    tests/das-testsuite/test.13
	D    tests/das-testsuite/test.14
	D    tests/das-testsuite/test.15
	D    tests/das-testsuite/test.16
	A    tests/das-testsuite/test.9.das.base
	D    tests/das-testsuite/test.17
	A    tests/das-testsuite/test.30.das
	D    tests/das-testsuite/test.18
	A    tests/das-testsuite/test.31.das
	D    tests/das-testsuite/test.19
	A    tests/das-testsuite/test.32.das
	A    tests/das-testsuite/test.33.das
	A    tests/das-testsuite/test.34.das
	A    tests/das-testsuite/das.das
	A    tests/das-testsuite/test.30.das.base
	A    tests/das-testsuite/test.22.das.base
	D    tests/das-testsuite/bad_value_test.1
	A    tests/das-testsuite/test.14.das.base
	A    tests/das-testsuite/test.34.das.base
	A    tests/das-testsuite/test.26.das.base
	A    tests/das-testsuite/test.18.das.base
	A    tests/das-testsuite/test.2.das.base
	D    tests/das-testsuite/test.20
	D    tests/das-testsuite/test.21
	D    tests/das-testsuite/test.22
	D    tests/das-testsuite/test.23
	A    tests/das-testsuite/test.6.das.base
	D    tests/das-testsuite/test.24
	D    tests/das-testsuite/test.25
	A    tests/das-testsuite/special.test.hdf.das
	D    tests/das-testsuite/test.26
	D    tests/das-testsuite/test.27
	D    tests/das-testsuite/test.28
	D    tests/das-testsuite/test.29
	A    tests/das-testsuite/test.11.das.base
	A    tests/das-testsuite/test.31.das.base
	A    tests/das-testsuite/test.23.das.base
	A    tests/das-testsuite/test.15.das.base
	_M   tests/das-testsuite/test.1.das
	A    tests/das-testsuite/test.2.das
	A    tests/das-testsuite/test.27.das.base
	A    tests/das-testsuite/test.19.das.base
	A    tests/das-testsuite/test.3.das
	A    tests/das-testsuite/test.4.das
	A    tests/das-testsuite/test.5.das
	A    tests/das-testsuite/test.6.das
	A    tests/das-testsuite/test.7.das
	A    tests/das-testsuite/test.8.das
	A    tests/das-testsuite/test.9.das
	A    tests/das-testsuite/test.3.das.base
	D    tests/das-testsuite/test.30
	D    tests/das-testsuite/test.31
	D    tests/das-testsuite/test.32
	D    tests/das-testsuite/test.33
	A    tests/das-testsuite/test.7.das.base
	D    tests/das-testsuite/test.34
	A    tests/das-testsuite/test.11.das
	A    tests/das-testsuite/test.12.das
	D    tests/das-testsuite/das
	A    tests/das-testsuite/test.13.das
	A    tests/das-testsuite/test.3.Z.das.base
	A    tests/das-testsuite/test.14.das
	A    tests/das-testsuite/test.15.das
	A    tests/das-testsuite/test.16.das
	A    tests/das-testsuite/test.17.das
	A    tests/das-testsuite/test.18.das
	A    tests/das-testsuite/test.19.das
	A    tests/das-testsuite/special.test.das.base
	A    tests/das-testsuite/test.20.das.base
	A    tests/das-testsuite/test.12.das.base
	A    tests/das-testsuite/test.32.das.base
	A    tests/das-testsuite/test.24.das.base
	A    tests/das-testsuite/test.16.das.base
	A    tests/das-testsuite/test.28.das.base
	A    tests/das-testsuite/bad_value_test.1.das
	D    tests/das-testsuite/special.test.hdf
	A    tests/das-testsuite/test.1a.das.base
	A    tests/das-testsuite/bad_value_test.1.das.base
	A    tests/das-testsuite/test.4.das.base
	A    tests/das-testsuite/test.8.das.base
	A    tests/das-testsuite/test.20.das
	A    tests/das-testsuite/test.21.das
	A    tests/das-testsuite/test.22.das
	A    tests/das-testsuite/test.23.das
	A    tests/das-testsuite/test.24.das
	A    tests/das-testsuite/test.25.das
	A    tests/das-testsuite/test.26.das
	A    tests/das-testsuite/test.27.das
	A    tests/das-testsuite/test.28.das
	A    tests/das-testsuite/special.test.hdf.das.base
	D    tests/das-testsuite/test.1
	A    tests/das-testsuite/test.29.das
	_M   tests/expr-testsuite/test.2
	A    tests/expr-testsuite/test.df.base
	_M   tests/expr-testsuite/test.3
	_M   tests/expr-testsuite/test.c0
	A    tests/expr-testsuite/data.z7.base
	_M   tests/expr-testsuite/test.c1
	_M   tests/expr-testsuite/test.4
	_M   tests/expr-testsuite/test.c2
	_M   tests/expr-testsuite/test.5
	_M   tests/expr-testsuite/test.c3
	_M   tests/expr-testsuite/test.6
	_M   tests/expr-testsuite/test.c4
	_M   tests/expr-testsuite/test.7
	_M   tests/expr-testsuite/test.8
	_M   tests/expr-testsuite/test.9
	A    tests/expr-testsuite/test.1.base
	A    tests/expr-testsuite/test.1b.base
	A    tests/expr-testsuite/test.5.base
	A    tests/expr-testsuite/test.2d.base
	A    tests/expr-testsuite/test.5b.base
	A    tests/expr-testsuite/test.9.base
	A    tests/expr-testsuite/data.zz2.base
	A    tests/expr-testsuite/test.aa.base
	A    tests/expr-testsuite/test.d.base
	A    tests/expr-testsuite/data.61c.base
	A    tests/expr-testsuite/data.z0.base
	A    tests/expr-testsuite/test.bc.base
	A    tests/expr-testsuite/test.dc.base
	A    tests/expr-testsuite/data.z4.base
	A    tests/expr-testsuite/test.dg.base
	A    tests/expr-testsuite/test.2.base
	A    tests/expr-testsuite/test.2a.base
	A    tests/expr-testsuite/test.1c.base
	A    tests/expr-testsuite/test.4a.base
	D    tests/expr-testsuite/data.zz0
	A    tests/expr-testsuite/test.6.base
	D    tests/expr-testsuite/data.zz1
	A    tests/expr-testsuite/test.6a.base
	A    tests/expr-testsuite/test.2e.base
	D    tests/expr-testsuite/data.zz2
	A    tests/expr-testsuite/test.5c.base
	_M   tests/expr-testsuite/test.a
	_M   tests/expr-testsuite/test.b
	D    tests/expr-testsuite/data.61a
	A    tests/expr-testsuite/test.8a.base
	D    tests/expr-testsuite/data.61b
	D    tests/expr-testsuite/data.61c
	D    tests/expr-testsuite/data.z0
	_M   tests/expr-testsuite/test.d
	D    tests/expr-testsuite/data.61d
	D    tests/expr-testsuite/data.z1
	D    tests/expr-testsuite/data.z2
	D    tests/expr-testsuite/data.z3
	_M   tests/expr-testsuite/test.61
	D    tests/expr-testsuite/data.z4
	D    tests/expr-testsuite/data.z5
	D    tests/expr-testsuite/data.z6
	A    tests/expr-testsuite/test.a.base
	D    tests/expr-testsuite/data.z7
	A    tests/expr-testsuite/test.ab.base
	A    tests/expr-testsuite/data.61d.base
	A    tests/expr-testsuite/data.z1.base
	A    tests/expr-testsuite/test.bd.base
	A    tests/expr-testsuite/test.dd.base
	A    tests/expr-testsuite/data.z5.base
	A    tests/expr-testsuite/test.3.base
	A    tests/expr-testsuite/test.2b.base
	A    tests/expr-testsuite/test.1d.base
	A    tests/expr-testsuite/test.7.base
	A    tests/expr-testsuite/test.2f.base
	A    tests/expr-testsuite/test.6b.base
	A    tests/expr-testsuite/test.5d.base
	A    tests/expr-testsuite/test.8b.base
	A    tests/expr-testsuite/data.zz0.base
	A    tests/expr-testsuite/test.b.base
	A    tests/expr-testsuite/data.61a.base
	A    tests/expr-testsuite/test.ba.base
	A    tests/expr-testsuite/test.ac.base
	A    tests/expr-testsuite/test.da.base
	A    tests/expr-testsuite/data.z2.base
	A    tests/expr-testsuite/test.be.base
	A    tests/expr-testsuite/test.de.base
	_M   tests/expr-testsuite/test.2a
	A    tests/expr-testsuite/data.z6.base
	_M   tests/expr-testsuite/test.cc0
	_M   tests/expr-testsuite/test.cc1
	A    tests/expr-testsuite/test.1a.base
	A    tests/expr-testsuite/test.4.base
	A    tests/expr-testsuite/test.2c.base
	A    tests/expr-testsuite/test.5a.base
	A    tests/expr-testsuite/test.8.base
	A    tests/expr-testsuite/test.2g.base
	A    tests/expr-testsuite/test.5e.base
	A    tests/expr-testsuite/data.zz1.base
	A    tests/expr-testsuite/data.61b.base
	A    tests/expr-testsuite/test.bb.base
	A    tests/expr-testsuite/test.db.base
	A    tests/expr-testsuite/data.z3.base
	_M   tests/expr-testsuite/test.1
	A    tests/package.m4
	A    tests/DASTest.at
	A    tests/DDSTest.at
	A    tests/EXPRTest.at
	A    tests/DDSTest.dir
	A    tests/EXPRTest.dir
	D    tests/dds-testsuite/test.2
	A    tests/dds-testsuite/S2000415.HDF.dds.base
	D    tests/dds-testsuite/test.3
	A    tests/dds-testsuite/test.11.dds.base
	D    tests/dds-testsuite/test.4
	D    tests/dds-testsuite/test.6
	A    tests/dds-testsuite/fnoc1.nc.das.dds
	D    tests/dds-testsuite/test.7
	A    tests/dds-testsuite/test.15.dds.base
	D    tests/dds-testsuite/test.8
	A    tests/dds-testsuite/S2000415.HDF.das.dds.base
	D    tests/dds-testsuite/test.9
	A    tests/dds-testsuite/test.19.dds.base
	D    tests/dds-testsuite/test.10
	D    tests/dds-testsuite/test.11
	D    tests/dds-testsuite/test.12
	D    tests/dds-testsuite/test.13
	A    tests/dds-testsuite/test.3.dds.base
	D    tests/dds-testsuite/test.14
	D    tests/dds-testsuite/test.15
	A    tests/dds-testsuite/3B42.980909.5.hacked.HDF.das.dds.base
	D    tests/dds-testsuite/test.16
	D    tests/dds-testsuite/3B42.980909.5.HDF.das
	D    tests/dds-testsuite/test.17
	A    tests/dds-testsuite/test.7.dds.base
	D    tests/dds-testsuite/test.18
	D    tests/dds-testsuite/test.19
	A    tests/dds-testsuite/S2000415.HDF.das.dds
	A    tests/dds-testsuite/3B42.980909.5.HDF.dds.base
	A    tests/dds-testsuite/test.20.dds.base
	A    tests/dds-testsuite/test.12.dds.base
	A    tests/dds-testsuite/test.19b.dds
	A    tests/dds-testsuite/3B42.980909.5.HDF.das.dds.base
	A    tests/dds-testsuite/test.16.dds.base
	A    tests/dds-testsuite/test.1.dds
	A    tests/dds-testsuite/test.2.dds
	A    tests/dds-testsuite/test.3.dds
	A    tests/dds-testsuite/test.4.dds
	A    tests/dds-testsuite/test.19b.dds.base
	A    tests/dds-testsuite/test.6.dds
	A    tests/dds-testsuite/test.7.dds
	A    tests/dds-testsuite/test.8.dds
	D    tests/dds-testsuite/test.20
	A    tests/dds-testsuite/test.9.dds
	A    tests/dds-testsuite/test.19b.das.dds.base
	A    tests/dds-testsuite/test.4.dds.base
	A    tests/dds-testsuite/test.10.dds
	A    tests/dds-testsuite/test.8.dds.base
	A    tests/dds-testsuite/test.11.dds
	A    tests/dds-testsuite/test.12.dds
	A    tests/dds-testsuite/test.13.dds
	A    tests/dds-testsuite/test.14.dds
	A    tests/dds-testsuite/test.15.dds
	A    tests/dds-testsuite/AsciiOutputTest1.dds.base
	A    tests/dds-testsuite/3B42.980909.5.HDF.das.dds
	A    tests/dds-testsuite/test.16.dds
	A    tests/dds-testsuite/test.17.dds
	A    tests/dds-testsuite/test.18.dds
	D    tests/dds-testsuite/test.19b.das
	A    tests/dds-testsuite/test.19.dds
	D    tests/dds-testsuite/3B42.980909.5.hacked.HDF.das
	A    tests/dds-testsuite/test.13.dds.base
	A    tests/dds-testsuite/test.17.dds.base
	A    tests/dds-testsuite/fnoc1.nc.dds.base
	A    tests/dds-testsuite/fnoc1.nc.das.dds.base
	A    tests/dds-testsuite/test.1.dds.base
	A    tests/dds-testsuite/test.20.dds
	A    tests/dds-testsuite/test.9.dds.base
	D    tests/dds-testsuite/fnoc1.nc.das
	A    tests/dds-testsuite/test.10.dds.base
	A    tests/dds-testsuite/test.14.dds.base
	A    tests/dds-testsuite/test.19b.das.dds
	A    tests/dds-testsuite/test.18.dds.base
	A    tests/dds-testsuite/3B42.980909.5.hacked.HDF.das.dds
	A    tests/dds-testsuite/test.2.dds.base
	D    tests/dds-testsuite/S2000415.HDF.das
	A    tests/dds-testsuite/test.6.dds.base
	D    tests/dds-testsuite/test.19b
	D    tests/dds-testsuite/test.1
	M    tests/Makefile.am
	M    libdap.spec
	M    GNU/outbuf.h
	M    README
	M    Makefile.am
	M    NEWS
	M    unit-tests/Makefile.am

2009-01-30  James Gallagher  <jgallagher@opendap.org>

	Updated the 'CURRENT' revision for libdap and libdapserver. Bummer, but we changed interfaces.

2009-01-29  James Gallagher  <jgallagher@opendap.org>

	Move the code to a branch while we're in the beta period.
	A    http://scm.opendap.org/svn/branch/libdap/3.9.0
	D    http://scm.opendap.org/svn/tags/libdap/3.9.0

2009-01-28  James Gallagher  <jgallagher@opendap.org>

	Changes for the distcheck target.
	M    configure.ac
	M    INSTALL
	M    GNU/outbuf.h
	M    ce_expr.y
	M    dds.y
	M    Clause.cc
	M    AISDatabaseParser.cc

	Release 3.9.0
	A    http://scm.opendap.org/svn/tags/libdap/3.9.0

	Updates for release 3.9.0
	M    configure.ac
	M    ChangeLog
	M    libdap.spec
	M    GNU/outbuf.h
	M    README
	M    Makefile.am
	M    NEWS
	M    unit-tests/Makefile.am

	removed xstream references - we're not using this code although I'd like to keep the source in the library since we might use it at some point.
	M Makefile.am

2009-01-14  James Gallagher  <jgallagher@opendap.org>

	Patch from Patrice for missing string.h header. Spelling errors in Makefile.am.
	M    Makefile.am
	M    ce_expr.y

2009-01-12  James Gallagher  <jgallagher@opendap.org>

	I changed the etag value used in the HTTPConnetTest so the test will pass. The file changed and thus the etag changed when we moved the test server.

2008-12-04  Patrick West  <pwest@opendap.org>

	curl.h is included in HTTPConnect.h, which is included in AISMerge.h, which is included in getdap.cc. So need CURL_CFLAGS. Not sure why this doesn't show up in other builds, however.
	M    Makefile.am

2008-12-03  James Gallagher  <jgallagher@opendap.org>

	Commented-out the #if FILE_METHODS ... #endif preprocessor lines. For some reason these are breaking the library when FILE_METHODS is one (but not when it's zero). Anyway, the FILE* methods are needed for loaddap. I'm leaving the directives in as comments since maybe someday I'll figure out _why_ these broke the library.
	M    DODSFilter.cc
	M    Int32.h
	M    Int16.cc
	M    Structure.h
	M    Str.h
	M    Sequence.h
	M    Int16.h
	M    DDS.cc
	M    BaseType.h
	M    Array.cc
	M    Float64.h
	M    UInt16.cc
	M    AlarmHandler.h
	M    Byte.cc
	M    Byte.h
	M    DDS.h
	M    BaseType.cc
	M    Constructor.h
	M    Int32.cc
	M    DODSFilter.h
	M    Float32.cc
	M    Grid.h
	M    Structure.cc
	M    Str.cc
	M    Sequence.cc
	M    Float32.h
	M    Constructor.cc
	M    UInt32.h
	M    Float64.cc
	M    UInt32.cc
	M    Grid.cc
	M    unit-tests/SequenceTest.cc
	M    unit-tests/Makefile.am
	AM   unit-tests/MarshallerTest.cc
	M    Array.h
	M    UInt16.h

2008-11-25  James Gallagher  <jgallagher@opendap.org>

	Always build with the FILE_METHODS compile-time directive true. This may cause problems...

	Found more 'dataset' arguments, previously commented out, and removed them. Makefile.am fixes that may address some build issues seen by other people.

	I had previously commented out all of the places where the data set name was passed around to the various methods that evaluate a CE. Patrick has moved information about the data set name into the BaseType class so that a single DDS/DataDDS/DDX/... can be built from multiple files/data sets. Passing the parameter was redundant, so I commented it out. I completed the removal by deleting those comments.
	M    RValue.cc
	M    DDXParser.h
	M    DDXParser.cc
	M    ce_functions.h
	M    ConstraintEvaluator.cc
	M    ArrayGeoConstraint.h
	M    GeoConstraint.h
	M    GridGeoConstraint.h
	M    ce_expr.y
	M    RValue.h
	M    ce_functions.cc
	M    expr.h
	M    GridGeoConstraint.cc
	M    ConstraintEvaluator.h
	M    Clause.h
	M    ArrayGeoConstraint.cc
	M    unit-tests/ArrayGeoConstraintTest.cc
	M    unit-tests/GridGeoConstraintTest.cc
	M    Clause.cc
	M    GeoConstraint.cc

2008-11-17  James Gallagher  <jgallagher@opendap.org>

	Added check of C:\opendap when looking for .dodsrc on WIN32

2008-11-14  James Gallagher  <jgallagher@opendap.org>

	Merged the xmlrequest branch to the trunk.
	_M   .
	M    RValue.cc
	M    DDXParser.h
	M    DODSFilter.cc
	A  + xstream
	A  + xstream/fd.h
	A  + xstream/except_posix.h
	A  + xstream/posix.cpp
	A  + xstream/posix.h
	A  + xstream/common.cpp
	A  + xstream/fd.cpp
	A  + xstream/common.h
	A  + xstream/except.h
	M    Int32.h
	M    Int16.cc
	M    Structure.h
	M    Str.h
	M    Sequence.h
	M    configure.ac
	M    Connect.h
	M    DDXParser.cc
	M    Ancillary.cc
	M    ce_functions.h
	M    Int16.h
	D    docs/html.tar.gz
	M    ConstraintEvaluator.cc
	M    DDS.cc
	M    BaseType.h
	M    Array.cc
	M    tests/das-testsuite/config/unix.exp
	M    tests/expr-testsuite/expr-test.0/test.g.exp
	M    tests/expr-testsuite/expr-test.0/test.6.exp
	M    tests/expr-testsuite/config/unix.exp
	M    tests/expr-test.cc
	A  + tests/io_test.cc
	M    tests/grid-func-testsuite/config/unix.exp
	M    tests/Makefile.am
	M    tests/dds-test.cc
	M    Float64.h
	M    UInt16.cc
	M    AlarmHandler.h
	M    Byte.cc
	M    Byte.h
	D    GNU/Pix.h.never
	D    GNU/GNUerror.cc.never
	A  + GNU/outbuf.cc
	D    GNU/builtin.h.never
	A  + GNU/outbuf.h
	M    GNU/README
	M    BaseType.cc
	M    DDS.h
	M    GeoConstraint.h
	M    Makefile.am
	M    GridGeoConstraint.h
	M    Constructor.h
	M    Int32.cc
	M    DODSFilter.h
	M    ce_expr.y
	M    Float32.cc
	M    Grid.h
	M    HTTPConnect.cc
	M    Structure.cc
	M    RValue.h
	M    getdap.cc
	M    Str.cc
	M    Sequence.cc
	M    Float32.h
	M    ce_functions.cc
	M    expr.h
	M    GridGeoConstraint.cc
	M    Constructor.cc
	M    UInt32.h
	M    AISMerge.cc
	M    ConstraintEvaluator.h
	M    Clause.h
	M    ArrayGeoConstraint.cc
	M    Float64.cc
	M    UInt32.cc
	M    Grid.cc
	M    Connect.cc
	M    HTTPConnect.h
	D    unit-tests/ais_testsuite/ais_database.xml
	M    unit-tests/ais_testsuite/ais_database.xml.in
	M    unit-tests/AISResourcesTest.cc
	M    unit-tests/DDSTest.cc
	M    unit-tests/test_config.h.in
	M    unit-tests/HTTPConnectTest.cc
	M    unit-tests/DDXParserTest.cc
	M    unit-tests/ddsT.cc
	M    unit-tests/ByteTest.cc
	M    unit-tests/CEFunctionsTest.cc
	A  + unit-tests/ddx-testsuite/error.06.ddx
	A  + unit-tests/ddx-testsuite/test.0c.ddx
	A  + unit-tests/ddx-testsuite/test.0d.ddx
	A  + unit-tests/ddx-testsuite/test.00.ddx
	M    unit-tests/Makefile.am
	M    Clause.cc
	M    GeoConstraint.cc
	M    Array.h
	M    UInt16.h

2008-11-12  James Gallagher  <jgallagher@opendap.org>

	Fixed the libcurl and libxml2 tests in confgure.ac - they now test the values of the two programs correctly.

2008-11-06  James Gallagher  <jgallagher@opendap.org>

	Minor changes that are part of a fix for ticket 975. The complete changes are not done yet since the tests are not all passing for the intern_data() methods (but do pass for the serialize()/deserialize() methods and it might be that the problem lies in the TestArray class and not in the libdap code outside the tests. See svn/tags/libdap/partial_975_fix and the ticket itself for more information.
	M    Array.cc
	M    tests/expr-test.cc
	M    tests/TestStructure.cc
	M    BaseType.cc
	M    ce_expr.y
	M    Structure.cc
	M    Vector.cc
	M    Array.h

2008-10-30  James Gallagher  <jgallagher@opendap.org>

	Tests d1 and d3 will fail until I sort out just what is happening with the array of structures and CEs in the Test* classes.

2008-10-10  James Gallagher  <jgallagher@opendap.org>

	Added data file for Structure Array tests.

	Modified ce_expr.y so that arrays of structure parse using the new syntax. Example: s2[0:4].m[2:7]. See ticket 975.
	M DDS.cc
	M Vector.cc
	M ce_expr.y

	Added tests for Array of Structures fix - see ticket #975

2008-10-08  James Gallagher  <jgallagher@opendap.org>

	Ticket 1188: can not --> cannot. This was for the a handful of error messages, but I wound up changing it everywhere since that was easier.

	Fix for ticket 1121 - DDX not well formed for some HDF4 datasets because the element Alias was not closed.
	M AttrTable.cc

2008-09-25  James Gallagher  <jgallagher@opendap.org>

	Added support for cookies to libdap. Cookies will be saved in a 'cookie jar' if that option/parameter is set int he .dodsrc file.
	_M   tests
	M    RCReader.cc
	M    HTTPConnect.cc
	M    HTTPConnect.h
	_M   unit-tests/cache-testsuite
	M    RCReader.h

	Removed a test case fro AISResourceTest.cc since it was causing false negatives when run as root on FC8.

2008-09-19  James Gallagher  <jgallagher@opendap.org>

	Corrections for comments

2008-09-18  James Gallagher  <jgallagher@opendap.org>

	Fixes for tests after moving test.opendap.org - some of the test files appear to be different (not sure I understand that, but it's true, they are). Also, minor fixes for the new DDX31 symbol and xml header info to fix build errors.

2008-09-17  James Gallagher  <jgallagher@opendap.org>

	Merged multifile branch

	Updated docs.
	AM   docs/html.tar.gz

2008-09-16  James Gallagher  <jgallagher@opendap.org>

	Check in simple changes before branching to start the bulk of the DAP 3.2 changes.

2008-08-26  James Gallagher  <jgallagher@opendap.org>

	Added a one option to getdap (-M) that enables it to read from files that don't have MIME headers.

2008-08-06  Patrick West  <pwest@opendap.org>

	File accidentally added by eclipse
	D    ais_database.xml

	Deleting fines accidentally added by eclipse
	D    ce_expr.tab.hh
	D    3.8.1.diffs
	D    libdap-3.8.1.tar.gz
	D    tmp16780
	D    deflate
	D    ce_expr.output
	D    .cproject
	D    libdap-3.8.2.fpr
	D    libdap.pc
	D    tests/das-test.sum
	D    tests/dds-test.sum
	D    tests/expr-test
	D    tests/das-test
	D    tests/dds-test
	D    tests/expr-test.sum
	D    tmp16480
	D    das.tab.hh
	D    dds.tab.hh
	D    ChangeLog.tmp
	D    Error.tab.hh
	D    gse.tab.hh
	D    libdapclient.pc
	D    das.output
	D    dds.output
	D    libdapserver.pc
	D    Error.output
	D    gse.output
	D    unit-tests/CEFunctionsTest
	D    unit-tests/cache-testsuite/cleanup.sh
	D    unit-tests/parserUtilTest
	D    unit-tests/sequenceT
	D    unit-tests/marshT
	D    unit-tests/DDSTest
	D    unit-tests/generalUtilTest
	D    unit-tests/ArrayTest
	D    unit-tests/ArrayGeoConstraintTest
	D    unit-tests/DDXParserTest
	D    unit-tests/.dodsrc
	D    unit-tests/cgiUtilTest
	D    unit-tests/arrayT
	D    unit-tests/DASTest
	D    unit-tests/SequenceTest
	D    unit-tests/AISDatabaseParserTest
	D    unit-tests/ancT
	D    unit-tests/HTTPConnectTest
	D    unit-tests/test_config.h
	D    unit-tests/AISMergeTest
	D    unit-tests/ByteTest
	D    unit-tests/structT
	D    unit-tests/AttrTableTest
	D    unit-tests/GridGeoConstraintTest
	D    unit-tests/RCReaderTest
	D    unit-tests/ddsT
	D    unit-tests/DODSFilterTest
	D    unit-tests/HTTPCacheTest
	D    unit-tests/attrTableT
	D    unit-tests/AISResourcesTest
	D    unit-tests/RegexTest
	D    unit-tests/SignalHandlerTest
	D    svn-commit.tmp
	D    getdap

2008-08-04  James Gallagher  <jgallagher@opendap.org>

	Moved get_type() out of ObjectType.h and into HTTPConnect.cc and changed its name to get_description_type() which is not only more accurate but also less likely to conflict with other functions (there are two other 'get_type()'s in libdap already). There are other related changes.

2008-08-01  James Gallagher  <jgallagher@opendap.org>

	Minor fix in dds.lex - test for an error from fgets(). Closes ticket 1068.

	Fixed the expr-test tests - they were only running the intern_data() code and not the serialize/deserialize code. Also, removed use of move_dds() from expr-test as it is no longer needed.

2008-07-31  James Gallagher  <jgallagher@opendap.org>

	String attribute values are always quoted when the DAS is written out (now). This is part of the fix for ticket 1163 (the other part being changes to the handlers). See README for more information.
	M    tests/das-testsuite/das-test.0/test.8.exp
	M    tests/das-testsuite/das-test.0/test.9.exp
	M    tests/das-testsuite/das-test.0/test.11.exp
	M    tests/das-testsuite/das-test.0/test.1.exp
	M    tests/das-testsuite/das-test.0/test.2.exp
	M    tests/das-testsuite/das-test.0/test.3.exp
	M    tests/das-testsuite/das-test.0/test.4.exp
	M    README
	M    util.h
	M    AttrTable.cc
	M    Vector.cc
	M    das.y
	M    util.cc
	M    unit-tests/AttrTableTest.cc

2008-07-28  Joe Lee  <hyoklee@hdfgroup.org>

	Added dods_url_c type for Vector::value() function.

2008-07-23  James Gallagher  <jgallagher@opendap.org>

	Merged changes from tags/libdap/3.8.2 (-r18931:19106 $svn/tags/libdap/3.8.2 .)
	M    Ancillary.cc
	M    VCPP/BeforeInstall.txt
	M    VCPP/libdap.iss
	M    VCPP/config.h
	M    VCPP/Makefile

2008-07-15  James Gallagher  <jgallagher@opendap.org>

	Patch from Patrice Dumas for gnulib/autoconf 2.62 compatibility.
	M    gl/m4/extensions.m4

2008-07-15  Patrick West  <pwest@opendap.org>

	Problem where nested sequences not having any values selected because of constraint evaluation, so nested sequences aren't being pushed to the value stack. When coming out of parent_part_two to the end of parent_part_one, the stack is popped to get that sequences values. Since nothing was being pushed, the values for that sequence were being popped leaving an empty stack. So when top is called on an empty stack, caused bus error.
	Also, in Sequence.cc, a dynamic cast was being made to a Sequence variable
	called tmp. dynamic casts were called three more times in the method. These
	can get expensive, so removed the other dynamic casts and using first
	variable called tmp.

	Added and modified DBG statements.
	M    tests/TestInt32.cc
	M    tests/TestFloat32.cc
	M    tests/TestByte.cc
	M    tests/TestSequence.cc
	M    BaseType.cc
	M    Sequence.cc
	M    AISDatabaseParser.cc

2008-06-25  James Gallagher  <jgallagher@opendap.org>

	Fixed on emore problem with the xdr-datatype.s header. Assuming that XDR uses the C99 types if the inttypes.h header is present works on new FC machines but not OS/X, et cetera. I removed that from the Makefile.am.
	M    OSX_Resources/InstallationCheck
	M    OSX_Resources/Info.plist
	M    conf/acinclude.m4
	M    Makefile.am

	Fixes - I hope - to the *-datatypes headers. Other updates for comments and documentation.
	M    AISResources.cc
	M    configure.ac
	M    xdr-datatypes-static.h
	M    xdr-datatypes-config.h.in
	M    main_page.doxygen
	M    Error.cc
	M    conf/acinclude.m4
	M    HTTPCacheTable.cc
	M    doxy.conf

2008-06-23  James Gallagher  <jgallagher@opendap.org>

	Replaced the old DODS_CHECK_SIZES() macro with a new version from Dennis Heimbigner.

	Updated revisions for 3.8.2
	M    configure.ac
	M    ChangeLog
	M    libdap.spec

	Removed apue_db. Updates to the documentation for 3.8.2
	M    ChangeLog
	D    apue_db
	M    INSTALL
	M    README
	M    NEWS

	Minor changes - comments & docs.
	M    HTTPCacheTable.cc
	M    HTTPCacheTable.h

	Minor changes from the 3.8.1 code except that the HTTP Caching changes developed here on the trunk of libdap are now included (libdap 3.8.1 excluded those fixes).
	M    configure.ac
	M    ChangeLog
	M    NEWS
	M    ce_functions.cc
	M    unit-tests/AISMergeTest.cc
	M    unit-tests/HTTPCacheTest.cc

2008-06-16  James Gallagher  <jgallagher@opendap.org>

	Merged changes from the 3.8.1 tag.
	M    VCPP/BeforeInstall.txt
	M    VCPP/libdap.iss
	A    VCPP/unistd.h
	M    libdap.spec
	M    README

	AISMergeTest updated to work with the newer test.opendap.org fnoc1 test data set (which has slightly different attributes).

	Removed HTTPCacheTable::CacheEntry's lock since it was redundant and was causing a dead lock. Also removed RCReader's debug output.

2008-06-16  Patrick West  <pwest@opendap.org>

	Added access to response file. M    HTTPResponse.h M    Response.h

2008-06-10  James Gallagher  <jgallagher@opendap.org>

	The lock used to protect the CacheEntry object was redundant and I removed it. Also, I backed out other changes but retained some of the added encapsulation added to the CacheEntry struct. I checked this code in because I fairly certain it works, but the test server is down and so I cannot run the unit tests for HTTPCache.
	M    HTTPCacheTable.cc
	M    HTTPCacheTable.h
	M    unit-tests/HTTPCacheTest.cc

2008-06-09  Dan Holloway  <dholloway@opendap.org>

	Added ifdef HAVE_UNISTD_H, include <unistd.h>, required on RedHat 3.+

2008-05-30  Patrick West  <pwest@opendap.org>

	Moved ancillary functions from DODSFilter and cgi_util to Ancillary class as static methods. Moved the ancillary tests from cgiUtilTest to ancT. Had to update configure.ac and Makefile.am to get libdap to compile, removing apue directory. M    DODSFilter.cc M    configure.ac M    cgi_util.cc A    Ancillary.cc M    Makefile.am M    cgi_util.h A    Ancillary.h A    unit-tests/ancT.cc M    unit-tests/cgiUtilTest.cc M    unit-tests/Makefile.am

2008-05-30  James Gallagher  <jgallagher@opendap.org>

	Test svn switch (I added a space to the to the top of the file).
	M    util.cc

2008-05-22  James Gallagher  <jgallagher@opendap.org>

	Fixed comments in the ce functions - they said to use "version" when it's actually a blank arg list that returns the response.

2008-05-21  James Gallagher  <jgallagher@opendap.org>

	Made teh directory name nicer
	M    configure.ac
	A    apue_db
	D    apue_db/apue.h
	D    apue_db/include
	D    apue_db/db
	A    apue_db/db.c
	D    apue_db/lib
	A    apue_db/lockreg.c
	D    apue_db/Make.defines.linux
	A    apue_db/t4.c
	A    apue_db/error.c
	M    Makefile.am
	D    apue_db_lib
	M    das.lex

	Removed include subdir
	D    apue_db_lib/include

	Removed apue.h header.
	D    apue_db_lib/apue.h
	M    apue_db_lib/db.c
	M    apue_db_lib/lockreg.c
	M    apue_db_lib/t4.c
	M    apue_db_lib/error.c

	Removed
	D    apue_db_lib/Make.defines.linux

	Get rid of some temporary directories...
	D    apue_db_lib/db
	D    apue_db_lib/lib

	Added Advanced Programming in the Unix Environment DB.
	A    apue_db_lib/apue.h
	A    apue_db_lib/apue_db.h
	M    apue_db_lib/lib/libapue.a
	A    apue_db_lib/db.c
	A    apue_db_lib/lockreg.c
	A    apue_db_lib/t4.c
	AM   apue_db_lib/Makefile.am
	A    apue_db_lib/error.c

	Copied

2008-05-20  James Gallagher  <jgallagher@opendap.org>

	Removed cruft from the Steven's db checkin.

	Added the Steven's db code in apue_db_lib (whihc I might rename later).

	Removed #if 0 .. #endif lines.

	Read/Write locking in place. REady to start changing over from a single index file to a distributed way of storing the entries.

2008-05-15  James Gallagher  <jgallagher@opendap.org>

	Moved the locking of entries into the cache table class. This sets the stage for changes to the table implementation so that it can be stored on disk and not in memory.

2008-05-14  James Gallagher  <jgallagher@opendap.org>

	removed #if 0 after refactoring HTTPCache, HTTPCacheTable and CacheEntry. Tests now run.

	CacheEntry has not been encapsulated, but only to the extent that fields are manipulated with accessor/mutaor methods. The basic logic is still exposed to HTTPCache.

2008-05-14  Patrick West  <pwest@opendap.org>

	Requires using unistd.h if HAVE_UNISTD_H is defined, which requires including config.h. M    unit-tests/marshT.cc M    unit-tests/RCReaderTest.cc

	unlink requires unistd.h on linux machines. M    unit-tests/marshT.cc

2008-05-13  James Gallagher  <jgallagher@opendap.org>

	Added HTTPCacheTable to the VCPP Makefile

	I Have refactored HTTPCache so that most of the operations on the index file and in-memory 'database' of the cache contents is now in the HTTPCacheTable class.

2008-05-09  James Gallagher  <jgallagher@opendap.org>

	Added HTTPCacheTable class. HTTPCache will now be refactored so that it makes all cache table accesses through this class' interface. See ticket #1114 and #1118.

2008-04-25  James Gallagher  <jgallagher@opendap.org>

	Wrapped CURL_PROXYAUTH in #ifdef #endif to accommodate older versions of libcurl.
	M HTTPConnect.cc

	Spelling errors fixed.
	M    VCPP/BeforeInstall.txt
	M    README.dodsrc
	M    RCReader.cc

	Build tools no longer installed

2008-04-24  James Gallagher  <jgallagher@opendap.org>

	Added installer setup file and License for the installer

2008-04-23  James Gallagher  <jgallagher@opendap.org>

	Comments and strings modified as part of the win32 build of 3.8.1 from svn

	Removed Win32 definition of vsnprintf() for VC 2008 compat - edit for use with VC 2005

	Fixes for libdap 3.8.0

2008-04-21  James Gallagher  <jgallagher@opendap.org>

	Ticket 1095: The proxy support in HTTPConnect baroque and caused many people problems. I expanded on the syntax allowed (the old syntax is still supported) so that it mirrors the syntax most users expect. I updated the docs including the comments in the .dodsrc file.
	M    Makefile.am
	M    RCReader.cc
	M    NEWS
	M    HTTPConnect.cc
	M    unit-tests/RCReaderTest.cc
	A    unit-tests/rcreader-testsuite/test4.rc
	A    unit-tests/rcreader-testsuite/test5.rc

2008-04-15  James Gallagher  <jgallagher@opendap.org>

	Added code to follow redirects in HTTPConnect.cc

2008-04-07  Patrick West  <pwest@opendap.org>

	Delete being called on array without [], as is being called below the exception condition. M    HTTPCache.cc

2008-03-19  James Gallagher  <jgallagher@opendap.org>

	Added info about win32 locations for .dodsrc
	M    README.dodsrc

	Added Patrice Dumas' patch for <cstring>
	M    SignalHandler.cc
	M    gse.lex
	M    dds.lex
	M    HTTPConnect.cc
	M    das.lex
	M    ce_expr.lex

2008-03-04  Patrick West  <pwest@opendap.org>

	Now checks for which architecture the build is being run on and updates the InstallationCheck script M    update_mac_package_contents.pl

	3.8.0 release of libdap. M    configure.ac M    ChangeLog M    OSX_Resources/Info.plist M    OSX_Resources/ReadMe.txt M    libdap.spec M    README M    NEWS

2008-03-03  James Gallagher  <jgallagher@opendap.org>

	Added conditional include of unistd.h for RHEL3 build.
	M    SignalHandler.cc
	M    tests/TestArray.cc
	M    HTTPConnect.cc
	M    DAS.cc

	Header patch from Patrice Dumas.
	Many files modified.

	Directory regex --> pathname_ok() call. A minor change.
	M Util.cc

2008-03-02  James Gallagher  <jgallagher@opendap.org>

	Added shell commands so build works with bison 1.28. That version treats the -o option differently than the 2.x version.
	M Makefile.am

2008-03-01  James Gallagher  <jgallagher@opendap.org>

	Tweaked the comments about the YY_INPUT macro.
	M dds.lex

2008-02-29  James Gallagher  <jgallagher@opendap.org>

	Switch back to the old YY_INPUT macro for now...
	M    dds.lex

	I found that a number of the places where a *.tab.h was included did not get changed when I went to the .hh file names (which is how bison does things when you tell it to make the output a *.tab.cc file). Here are the fixes. the distcheck and rpm targets now work.
	M    Error.lex
	M    Int16.cc
	M    error-test.cc
	M    tests/expr-test.cc
	M    tests/dds-test.cc
	M    UInt16.cc
	M    Int32.cc
	M    gse-test.cc
	M    Str.cc
	M    Float64.cc
	M    Operators.h
	M    UInt32.cc

	There are three changes in these files: 1. formatting; 2. Grammar builds; 3. Security fixes. For the formatting changes some files just got messed up and I was sick of looking at it. Grammar changes amount to simplifying the builds of the lex and y files. Now the sed calls in the Makefile have been removed - commented out to be completely removed later. 3. Nothing major on the security front but I made some changes all the same.

2008-02-29  Patrick West  <pwest@opendap.org>

	Updates for release of 3.7.11. M    configure.ac M    ChangeLog M    INSTALL M    libdap.spec M    README M    NEWS

	If cleanup.sh does not exist, then a make clean will error out. clean-local depends on cleanup.sh. M    cache-testsuite/Makefile.am

2008-02-28  Patrick West  <pwest@opendap.org>

	Added comment regarding ais_testsuite directory and how those files are being distributed. M    unit-tests/Makefile.am

	Removing generated files from Makefile.am. Removing temporary files in marshT created for writing marshalled data. cleanup script cleaned up. cache-testsuite makefile running local cleanup.sh since cleanup.sh is generated, also added distclean-local to remove the dods_cache directory. unit-tests makefile adds individual ais_testsuite files because there is the generated file there so just adding the directory wasn't working. M    Makefile.am M    unit-tests/marshT.cc M    unit-tests/cache-testsuite/cleanup.sh.in M    unit-tests/cache-testsuite/Makefile.am M    unit-tests/Makefile.am

	Modified tests and configuration to get unit-tests to run during distcheck. M    unit-tests/AISMergeTest.cc M    unit-tests/DODSFilterTest.cc D    unit-tests/ais_testsuite/ais_database.xml A    unit-tests/ais_testsuite/ais_database.xml.in D    unit-tests/cache-testsuite/cleanup.sh A    unit-tests/cache-testsuite/cleanup.sh.in M    unit-tests/cache-testsuite/Makefile.am M    unit-tests/DASTest.cc M    unit-tests/AISResourcesTest.cc M    unit-tests/DDSTest.cc A    unit-tests/test_config.h.in M    unit-tests/HTTPConnectTest.cc M    unit-tests/DDXParserTest.cc M    unit-tests/cgiUtilTest.cc M    unit-tests/AISDatabaseParserTest.cc M    unit-tests/CEFunctionsTest.cc M    unit-tests/GridGeoConstraintTest.cc M    unit-tests/Makefile.am M    unit-tests/RCReaderTest.cc

2008-02-27  Patrick West  <pwest@opendap.org>

	Added check for cppunit in configure. If present, then the tests will be built and run. if not then a message will appear saying that can't run the tests without the library, but it's not an error. M    configure.ac A    conf/cppunit.m4 M    Makefile.am M    unit-tests/Makefile.am

2008-02-27  James Gallagher  <jgallagher@opendap.org>

	Updated indentation using "indent -kr"
	M    gl/alloca_.h
	M    gl/mbchar.h
	M    gl/localcharset.c
	M    gl/strcasecmp.c
	M    gl/regex_internal.c
	M    gl/strnlen1.c
	M    gl/malloc.c
	M    gl/wchar_.h
	M    gl/localcharset.h
	M    gl/stdint_.h
	M    gl/strcase.h
	M    gl/regex.c
	M    gl/stdbool_.h
	M    gl/memchr.c
	M    gl/regex_internal.h
	M    gl/strnlen1.h
	M    gl/mbuiter.h
	M    gl/regex.h
	M    gl/wctype_.h
	M    gl/regexec.c
	M    gl/strncasecmp.c
	M    gl/gettext.h
	M    gl/alloca.c
	M    gl/mbchar.c
	M    gl/regcomp.c

2008-02-26  Patrick West  <pwest@opendap.org>

	No longer need the MacOSX specific readme and install files. M    OSX_Resources/Info.plist D    INSTALL_MacOSX.rtf D    README_MacOSX.rtf

2008-02-23  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2008-02-22  James Gallagher  <jgallagher@opendap.org>

	Updated

	Fixed an error that crept into xdr-datatypes-static from the xp port. I made the change in a new copy of the xdr-datatypes.h header added to the VCPP directory.  Also, I removed some old code from the XDRUtils.cc file.
	M    xdr-datatypes-static.h
	AM   VCPP/xdr-datatypes.h
	M    XDRUtils.cc

2008-02-21  Patrick West  <pwest@opendap.org>

	Added remove of temporary directories when pkg build is done. M    Makefile.am

2008-02-21  James Gallagher  <jgallagher@opendap.org>

	Modified Makefile to install xdr-datatypes.h from VCPP

	Removed a patch
	M XDRStreamMarshaller.cc

	Removed a patch
	M XDRFileMarshaller.cc

	Backed out some changes for my version of XP.
	M XDRFileUnMarshaller.cc

	Fixes for the win32 build from Anna Nokolov - I turned her files into a patch but there were some rejects.
	M    xdr-datatypes-static.h
	M    XDRFileUnMarshaller.cc
	M    gl/stdint_.h
	M    XDRStreamMarshaller.cc

	Added patch from Anna Nokolov.
	M XDRFileMarshaller.cc

	Applied Win32 patches from Anna Nokolov.
	M    cgi_util.cc
	M    VCPP/Makefile
	M    GNU/GNURegex.cc
	M    parser-util.cc
	M    util.h
	M    das.lex
	M    gl/localcharset.c
	M    gl/stdint_.h
	M    gl/regex_internal.h
	M    util.cc
	M    XDRFileMarshaller.cc

2008-02-18  Patrick West  <pwest@opendap.org>

	functional expressions were not being evaluated when building the ddx. Updated this and removed newline from error message if problem with functional expressions. M    DODSFilter.cc

2008-02-14  Patrick West  <pwest@opendap.org>

	Fixed sed issue with discovering version inormation in libdap.m4. This one should be used by anyone who wants to use libdap. M    conf/libdap.m4

2008-02-13  James Gallagher  <jgallagher@opendap.org>

	Added unistd.h include.
	M    unit-tests/AISResourcesTest.cc
	M    unit-tests/ByteTest.cc
	M    unit-tests/testFile.cc

	Added config.h header include to AttrTableTest.cc

	Added include of unistd.h to AttrTableTest.cc for RHEL3

2008-02-05  James Gallagher  <jgallagher@opendap.org>

	Removed two tests that fail on machines where the tests are run as root.
	M HTTPCacheTest.cc

	Auto reset of Subversion properties

2008-02-04  Patrick West  <pwest@opendap.org>

	Added method to not only return the FILE pointer but also the cached file name when getting the cached response. Also, when parsing headers, taking into account a blank line and a malformed header. M    HTTPCache.cc M    HTTPCache.h M    HTTPConnect.cc

	Includes added for unlink function call M    unit-tests/ddsT.cc

2008-02-02  Patrick West  <pwest@opendap.org>

	Added namespace libdap M    Error.lex M    RValue.cc M    DDXParser.h M    DODSFilter.cc M    HTTPResponse.h M    Int16.cc M    Int32.h M    Structure.h M    AISResources.cc M    Sequence.h M    Str.h M    ResponseTooBigErr.cc M    SignalHandler.cc M    ResponseTooBigErr.h M    SignalHandler.h M    XDRUtils.h M    escaping.h M    Connect.h M    DDXParser.cc M    cgi_util.cc M    dods-datatypes-static.h M    ce_functions.h M    gse.lex M    DDXExceptions.h M    Resource.h M    Error.cc M    HTTPCacheDisconnectedMode.h M    UnMarshaller.h M    Response.h M    Int16.h M    SignalHandlerRegisteredErr.h M    ce_parser.h M    ConstraintEvaluator.cc M    DAS.h M    DDS.cc M    XDRFileMarshaller.h M    tests/TestInt32.h M    tests/TestStructure.h M    tests/TestInt16.h M    tests/TestUrl.h M    tests/TestSequence.h M    tests/TestStr.h M    tests/TestFloat64.h M    tests/das-test.cc M    tests/TestGrid.h M    tests/TestByte.h M    tests/TestTypeFactory.h M    tests/TestFloat32.h M    tests/TestArray.h M    tests/TestUInt32.h M    tests/dds-test.cc M    tests/TestUInt16.h M    tests/TestCommon.cc M    Array.cc M    BaseType.h M    HTTPCacheInterruptHandler.h M    EventHandler.h M    Float64.h M    AISConnect.cc M    UInt16.cc M    InternalErr.h M    EncodingType.h M    gse_parser.h M    Marshaller.h M    AlarmHandler.h M    Byte.cc M    GNU/GNURegex.cc M    GNU/GNURegex.h M    Byte.h M    DataDDS.h M    BaseType.cc M    DDS.h M    XDRUtils.cc M    ArrayGeoConstraint.h M    GeoConstraint.h M    HTTPCacheResponse.h M    RCReader.cc M    GridGeoConstraint.h M    Constructor.h M    util_mit.h M    Error.h M    Int32.cc M    DODSFilter.h M    DapObj.h M    gse.y M    HTTPCache.cc M    DataDDS.cc M    HTTPCache.h M    parser-util.cc M    DapIndent.h M    ce_expr.y M    AISResources.h M    ObjectType.h M    Float32.cc M    Error.y M    dds.lex M    PipeResponse.h M    util.h M    AISExceptions.h M    AISDatabaseParser.h M    AttrTable.cc M    InternalErr.cc M    Grid.h M    HTTPConnect.cc M    AISMerge.h M    RValue.h M    Structure.cc M    cgi_util.h M    Url.cc M    Vector.cc M    getdap.cc M    BaseTypeFactory.h M    Str.cc M    Sequence.cc M    das.lex M    XDRFileUnMarshaller.cc M    Float32.h M    XDRFileUnMarshaller.h M    ce_functions.cc M    expr.h M    AttrTable.h M    GridGeoConstraint.cc M    Constructor.cc M    UInt32.h M    XDRStreamMarshaller.h M    das.y M    AISMerge.cc M    parser.h M    BaseTypeFactory.cc M    Url.h M    Vector.h M    DAS.cc M    ConstraintEvaluator.h M    GSEClause.cc M    GSEClause.h M    util.cc M    Clause.h M    ArrayGeoConstraint.cc M    Float64.cc M    Operators.h M    UInt32.cc M    XDRStreamMarshaller.cc M    Grid.cc M    util_mit.cc M    Connect.cc M    escaping.cc M    unit-tests/AISMergeTest.cc M    unit-tests/sequenceT.cc M    unit-tests/DODSFilterTest.cc M    unit-tests/HTTPCacheTest.cc M    unit-tests/DASTest.cc M    unit-tests/AISResourcesTest.cc M    unit-tests/DDSTest.cc M    unit-tests/SignalHandlerTest.cc M    unit-tests/ArrayGeoConstraintTest.cc M    unit-tests/ArrayTest.cc M    unit-tests/AttrTableTest.cc M    unit-tests/HTTPConnectTest.cc M    unit-tests/DDXParserTest.cc M    unit-tests/ddsT.cc M    unit-tests/cgiUtilTest.cc M    unit-tests/ByteTest.cc M    unit-tests/attrTableT.cc M    unit-tests/SequenceTest.cc M    unit-tests/RegexTest.cc M    unit-tests/generalUtilTest.cc M    unit-tests/AISDatabaseParserTest.cc M    unit-tests/GridGeoConstraintTest.cc M    unit-tests/RCReaderTest.cc M    unit-tests/parserUtilTest.cc M    HTTPConnect.h M    dds.y M    StdinResponse.h M    DapIndent.cc M    XDRFileMarshaller.cc M    Clause.cc M    AISDatabaseParser.cc M    GeoConstraint.cc M    Array.h M    AISConnect.h M    UInt16.h M    ce_expr.lex M    RCReader.h

2008-02-01  James Gallagher  <jgallagher@opendap.org>

	Added some file to svn:ignore
	M gl

	Added conditional set of the gcc -Wall, et c., flags.
	M Makefile.am

2008-01-31  Nathan Potter  <ndp@opendap.org>

	libdap: Changed Error handling in ce_functions.cc so that the errors thrown appropriatley referenced an error code other than unknown

2008-01-31  James Gallagher  <jgallagher@opendap.org>

	Added conditional set of the gcc -Wall, et c., flags.

2008-01-30  James Gallagher  <jgallagher@opendap.org>

	Include <algorithm> for all builds, not just win32. This is a fix for AIX and its native compiler.

2008-01-29  James Gallagher  <jgallagher@opendap.org>

	Update to the package target for OSX.
	M    OSX_Resources/InstallationCheck
	M    OSX_Resources/update_mac_package_contents.pl
	M    OSX_Resources/InstallationCheck.strings
	M    Makefile.am

2008-01-28  James Gallagher  <jgallagher@opendap.org>

	It seems that universal binaries are not yet working - I commented out that part of the Makefile.This
	M    Makefile.am

	Hacked the Makefile.am so that the 'pkg' target makes a universal binary - maybe. Fixed up the OSX resources' text.
	M    OSX_Resources/Info.plist
	M    OSX_Resources/Description.plist
	M    Makefile.am

2008-01-22  James Gallagher  <jgallagher@opendap.org>

	Added support to filter out ^M that's introduced by DOS editors.
	M update_mac_package_contents.pl

2008-01-16  James Gallagher  <jgallagher@opendap.org>

	Updated comments
	M Makefile.am

	Removed major and minor version.
	M    OSX_Resources/Info.plist

2008-01-14  James Gallagher  <jgallagher@opendap.org>

	Applied pkgconfig patch from Patrice.
	M    libdap.spec
	M    Makefile.am
	M    libdapclient.pc.in
	M    libdap.pc.in
	M    unit-tests/testFile.cc
	M    unit-tests/Makefile.am
	M    libdapserver.pc.in
	A    dap-config-pkgconfig

2008-01-12  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2008-01-11  James Gallagher  <jgallagher@opendap.org>

	Added. These help automate the build process.
	AM   OSX_Resources/macify_license_file.pl
	AM   OSX_Resources/update_mac_package_contents.pl

	Updates to the OS/X build so that it is more automatic. No more pmproj file, either. I added <code> tags in the README so that the perl script that updates the Mac version of that file will look decent.
	M    OSX_Resources/InstallationCheck
	M    OSX_Resources/License.txt
	M    OSX_Resources/Info.plist
	M    OSX_Resources/InstallationCheck.strings
	M    OSX_Resources/ReadMe.txt
	M    OSX_Resources/Welcome.html
	M    README
	M    Makefile.am
	D    mac_osx
	D    libdap.pmproj

2008-01-10  Patrick West  <pwest@opendap.org>

	Certain size vector of bytes was failing when writing to the xdr stream. Changed the size of the buffer to add enough to cover the word boundary. Updated unit test to test for this. M    Vector.cc M    XDRStreamMarshaller.cc M    unit-tests/marshT.cc M    unit-tests/arrayT.cc

2008-01-08  James Gallagher  <jgallagher@opendap.org>

	Removed leading spaces of the lines so that the file can be used easily on the Mac where lines will wrap in the Installer.

	Fixed up these two tests to match the changes in the ais database they used.
	M    unit-tests/AISMergeTest.cc
	M    unit-tests/AISResourcesTest.cc

2008-01-07  James Gallagher  <jgallagher@opendap.org>

	make check now runs the unit tests (ticket 1012)
	M    Makefile.am

	Fixed the AIS database parser tests so they now use Hyrax and not some kludge.
	M    unit-tests/ais_testsuite/ais_database.xml
	M    unit-tests/AISDatabaseParserTest.cc

2007-12-01  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2007-11-30  Patrick West  <pwest@opendap.org>

	MacOSX resources updated. Added a README and INSTALL file to be put alongside the .pkg in the .dmg. M    OSX_Resources/Info.plist D    README_MaxOSX.rtf M    Makefile.am A    README_MacOSX.rtf

2007-11-30  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2007-11-29  Patrick West  <pwest@opendap.org>

	the .pc files needed to be dealt with during the pkg build so that the prefix was set correctly. M    Makefile.am

	README and INSTALL files for a MacOSX installation. To be put into the .dmg along with the .pkg. A    README_MaxOSX.rtf A    INSTALL_MacOSX.rtf

2007-11-28  James Gallagher  <jgallagher@opendap.org>

	Updated for release 3.7.10
	M    configure.ac
	M    ChangeLog
	M    INSTALL
	M    libdap.spec
	M    README
	M    NEWS

	Fixed warnings about potentially uninitialized uses of ENTRY in HTTPCache.cc

2007-11-28  Patrick West  <pwest@opendap.org>

	Added private default constructor, copy constructor, and operator= to the classes, all through InternalErr. Added copyright information as well. M    XDRUtils.h M    UnMarshaller.h M    XDRFileMarshaller.h M    Marshaller.h M    XDRUtils.cc M    XDRFileUnMarshaller.cc M    XDRFileUnMarshaller.h M    XDRStreamMarshaller.h M    XDRStreamMarshaller.cc M    XDRFileMarshaller.cc

2007-11-26  Patrick West  <pwest@opendap.org>

	In Vector.cc, checking if _var is null before attempting delete. Didn't appear to be an issue, but seemed to be a needed test.
	In XDRStreamMarshaller, not allocating such a large buffer. Allocating only
	what is needed in put_str and both put_vector calls. The other methods are
	using the static buffer so we don't have to allocate each time. Prettied up
	the code, added more comments, and corrected some exception messages.
	M    Vector.cc
	M    XDRStreamMarshaller.cc

2007-11-21  James Gallagher  <jgallagher@opendap.org>

	libdapclient and libdapserver library versions bumped up.
	M    configure.ac
	M    depend.sh
	M    libdap.spec
	M    NEWS

2007-11-14  James Gallagher  <jgallagher@opendap.org>

	Fixed the LIBDAP CHECK macro
	M    conf/libdap.m4

2007-11-13  James Gallagher  <jgallagher@opendap.org>

	Updated for version 3.7.9
	M    configure.ac
	M    ChangeLog
	M    INSTALL
	M    libdap.spec
	M    README
	M    NEWS

	Fixeed ticket #995. The problem was in intern_data_for_leaf. This problem was fixed by changing the way intern_data_for_leaf() worked, slightly. It was always popping the stack of `d_values` object pointers regardless of the return value of read_row. However, if no values are read then the call to intern_data_for_parent_part_two will never be called and the d_values field of the child sequence won't be pushed onto the stack. Hence the pop should not happen - because there's no child there to pop. I fixed this with a slight change in the code. The method now skips the while loop and subsequent pop operation if the first call to read_row() returns false. The while loop won't be run anyway, so the actual change is minor and eliminates an unnecessary test in the case where read_row does return false initially.
	All of the tests that are expected to pass now do.

2007-11-12  James Gallagher  <jgallagher@opendap.org>

	Grid.cc: Changed the way the declarataion is printed by print_val() so that intern_data can use this too and work with the expr-test test driver. Sequence.cc: transfer_data_part_two() now used intern_data() when it should in place of read(). Also, print_one_row() is now more flixible in the way it prints rows. Before it expected that the first row would alway be printed (because it assume that the row had been read by deserialize()). Now it checks to see if the row should be printed because it knows that intern_data() might be run and that method is working with local data - the first row might not satisfy the CE. Sequence.h: Formatting Structure.cc: Switched from transfer_data to intern_data.

	Fixed this test. The error message changed and the test failed for that reason, not that error went undetected.
	M dds-testsuite/dds-test.0/test.17.exp

	Copied and munged these so that they call the expr-test_start procedure and test intern_data() in libdap.
	M    test.9.exp
	M    test.ya.exp
	M    test.yb.exp
	M    test.yc.exp
	M    test.yd.exp
	M    test.ye.exp
	M    test.yf.exp
	M    test.yg.exp
	M    test.a.exp
	M    test.b.exp
	M    test.c.exp
	M    test.d.exp
	M    test.zz0.exp
	M    test.e.exp
	M    test.zz1.exp
	M    test.zz2.exp
	M    test.f.exp
	M    test.zz3.exp
	M    test.g.exp
	M    test.zz4.exp
	M    test.61a.exp
	M    test.h.exp
	M    test.zz5.exp
	M    test.61b.exp
	M    test.i.exp
	M    test.61c.exp
	M    test.j.exp
	M    test.61d.exp
	M    test.k.exp
	M    test.l.exp
	M    test.m.exp
	M    test.n.exp
	M    test.o.exp
	M    test.p.exp
	M    test.q.exp
	M    test.r.exp
	M    test.s.exp
	M    test.t.exp
	M    test.u.exp
	M    test.v.exp
	M    test.w.exp
	M    test.wa.exp
	M    test.x.exp
	M    test.wb.exp
	M    test.y.exp
	M    test.wc.exp
	M    test.xa.exp
	M    test.xb.exp
	M    test.xc.exp
	M    test.xd.exp
	M    test.xe.exp
	M    test.z0.exp
	M    test.z1.exp
	M    test.z2.exp
	M    test.z3.exp
	M    test.z4.exp
	M    test.z5.exp
	M    test.z6.exp
	M    test.1.exp
	M    test.z7.exp
	M    test.2.exp
	M    test.5.exp
	M    test.6.exp

	Updated test code so that the new intern_data() method is tested.
	M    tests/TestInt32.cc
	M    tests/TestInt32.h
	M    tests/TestInt16.cc
	M    tests/TestStructure.h
	M    tests/TestInt16.h
	M    tests/TestUrl.h
	M    tests/TestStr.h
	M    tests/TestSequence.h
	M    tests/TestFloat32.cc
	M    tests/TestArray.cc
	M    tests/TestFloat64.cc
	M    tests/expr-testsuite/config/unix.exp
	M    tests/TestFloat64.h
	M    tests/TestUInt32.cc
	M    tests/TestGrid.cc
	M    tests/TestUInt16.cc
	M    tests/TestGrid.h
	M    tests/TestCommon.h
	M    tests/expr-test.cc
	M    tests/TestStructure.cc
	M    tests/TestUrl.cc
	M    tests/TestByte.cc
	M    tests/TestByte.h
	M    tests/TestSequence.cc
	M    tests/TestStr.cc
	M    tests/README
	M    tests/TestFloat32.h
	M    tests/TestArray.h
	M    tests/TestUInt32.h
	M    tests/TestUInt16.h
	M    tests/TestCommon.cc

2007-11-08  James Gallagher  <jgallagher@opendap.org>

	Added the intern_data() method as a replacement and fix for/to transfer_data(). This method should correctly handle the types presented by HDF5 like Array of Structure
	M    Structure.h
	M    Sequence.h
	M    BaseType.h
	M    BaseType.cc
	M    Grid.h
	M    Structure.cc
	M    Vector.cc
	M    Sequence.cc
	M    Vector.h
	M    Grid.cc
	M    unit-tests/HTTPCacheTest.cc
	M    unit-tests/SequenceTest.cc

2007-11-08  Patrick West  <pwest@opendap.org>

	All characters in the pathname need to match the regular expression. So need to compare the result of the match call in pathname_ok to the length of the path being matched. If not all characters match, then return false. M    util.cc

2007-10-31  James Gallagher  <jgallagher@opendap.org>

	Added pathname_ok() prototype to util.h and added malloc check to XDRStreamMarshaller.cc

2007-10-30  James Gallagher  <jgallagher@opendap.org>

	Fixed a parse error in the pathname sanitizer function.
	M util.cc

2007-10-24  James Gallagher  <jgallagher@opendap.org>

	Formatting

2007-09-27  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2007-09-26  Patrick West  <pwest@opendap.org>

	marshaller test A    unit-tests/marshT.cc

2007-09-24  James Gallagher  <jgallagher@opendap.org>

	Applied patch from Patrice to package/ship generated files with source dists.
	M Makefile.am

2007-09-21  James Gallagher  <jgallagher@opendap.org>

	Fixed various issues.

2007-08-28  James Gallagher  <jgallagher@opendap.org>

	Modified because issues show up in the nightly builds.
	M    XDRUtils.cc
	M    Vector.cc

	unit-test/Makefile.am: Removed comments that shadowed various unit tests since I think that was checked in by mistake.

	Auto reset of Subversion properties

2007-08-27  Patrick West  <pwest@opendap.org>

	Added methods to be able to send dap objects to iostream in addition to the methods to send to FILE pointers. Created Marshaller and UnMarshaller classes to pass to serialize and deserialize methods (respectively) to separate out that code from BaseType classes. Created XDRFileMarshaller to serialize into XDR using FILE pointer. Created XDRStreamMarshaller to serialize into XDR using ostream (XDR memory buffer). Created XDRFileUnMarshaller to read from XDR using FILE pointer. Did NOT create XDRStreamUnmarshaller as it didn't seem to be needed. Separated out anything to do with XDR into separate header files and utility class XDRUtils. M    DODSFilter.cc M    Int16.cc M    Int32.h M    Structure.h M    Sequence.h M    Str.h M    configure.ac A    XDRUtils.h A    xdr-datatypes-static.h M    cgi_util.cc A    xdr-datatypes-config.h.in M    dods-datatypes-static.h M    Error.cc A    UnMarshaller.h M    Int16.h M    DAS.h M    DDS.cc A    XDRFileMarshaller.h M    tests/expr-test.cc M    Array.cc M    BaseType.h M    Float64.h M    UInt16.cc M    AlarmHandler.h A    Marshaller.h M    Byte.cc M    Byte.h M    DDS.h M    BaseType.cc A    XDRUtils.cc M    Makefile.am M    Constructor.h M    Error.h M    Int32.cc M    DODSFilter.h M    DataDDS.cc M    Float32.cc M    util.h M    AttrTable.cc M    Grid.h M    Structure.cc M    cgi_util.h M    Vector.cc M    Str.cc M    Sequence.cc A    XDRFileUnMarshaller.cc M    Float32.h A    XDRFileUnMarshaller.h M    AttrTable.h M    Constructor.cc M    UInt32.h A    XDRStreamMarshaller.h M    dods-datatypes-config.h.in M    Vector.h M    DAS.cc M    util.cc M    Float64.cc M    UInt32.cc A    XDRStreamMarshaller.cc M    Grid.cc M    Connect.cc M    unit-tests/Makefile.am A    XDRFileMarshaller.cc M    Array.h M    UInt16.h

2007-08-24  James Gallagher  <jgallagher@opendap.org>

	Makefile.am: Updated fortify targets

2007-08-23  Patrick West  <pwest@opendap.org>

	Functionality of Passive classes was passed to their parent classes. Added set_value(vector<type>) methods to Vector. Added default read method to Structure that iterates through vars and calls read, just as PassiveStructure did. Removed Passive classes from Makefile. D    PassiveUrl.cc D    PassiveInt16.h M    Structure.h D    PassiveStr.cc D    PassiveStr.h D    PassiveUInt16.h D    PassiveInt16.cc D    PassiveByte.cc D    PassiveFloat32.h D    PassiveStructure.cc D    PassiveStructure.h D    PassiveUInt32.cc D    PassiveFloat32.cc D    PassiveArray.cc M    Makefile.am D    PassiveInt32.cc M    Structure.cc M    Vector.cc D    PassiveFloat64.cc D    PassiveArray.h D    PassiveInt32.h D    PassiveUrl.h D    PassiveByte.h M    Vector.h D    PassiveFloat64.h D    PassiveUInt32.h D    PassiveUInt16.cc

2007-08-22  James Gallagher  <jgallagher@opendap.org>

	Str.h: Changed the size of max_str_len from 32767 to 65535 (DODS_USHORT_INT-1) because 32k was not big enough for the AURA HDF5 data files. See ticket 962 and 956.

2007-08-21  James Gallagher  <jgallagher@opendap.org>

	Response.h: Made the new 'status' parameter have a default value of '0' so that specializations do not need modification if they know nothing about the new param. This change was made for PipeResponse.h - arguably something that should be removed, but it's there as long as we support the CGI server. StdinResponse.h: Removed the second param to teh ctor since it is no longer needed.

	Makefile.am: Removed -Werror since on OS/X and RHEL3 the grammar files generate warnings about unused variables.

2007-08-20  James Gallagher  <jgallagher@opendap.org>

	Removed warnings about strict aliasing rules by adding Vector::void *value() and replacing calls to buf2_val() with it. See ticket #941.

	Updates to a number of the doxygen comments.

	Fixed a problem in util.cc where the sense of size_ok() was backwards! Also rewrote parts of ce_functions.cc so that value() was used in place of buf2val() which is far better from a type-safety standpoint and removes a number of warnings about strict aliasing of types. Also fixed error in Error.cc where 'undefined_error' was used where zero (0) should have been used. Modified RValue"build_btp_args() so that the size of the arg list is added to the malformed args message.

2007-08-18  James Gallagher  <jgallagher@opendap.org>

	Patch from Patrice Dumas that fixes the distclean target and repairs the spec file now that the generated grammar files are no longer included checked into subversion.
	M    libdap.spec
	M    Makefile.am

2007-08-17  James Gallagher  <jgallagher@opendap.org>

	Added a target so that the generated grammar files are copied to a directory so that they don't _have_ to be built using bison/flex.
	M    INSTALL
	M    Makefile.am

	I removed the generated grammar files from svn (but put copies in the new 'grammarfile' subdirectory). Now, svn checkouts need bison and flex to build.
	D    lex.gse_.cc
	D    lex.dds.cc
	D    expr.tab.h
	D    dds.tab.h
	D    ce_expr.tab.cc
	M    GNU/GNURegex.cc
	D    lex.Error.cc
	M    Makefile.am
	D    ce_expr.tab.h
	D    Error.tab.h
	A    grammarfiles
	A    grammarfiles/ce_expr.tab.h
	A    grammarfiles/lex.das.cc
	A    grammarfiles/Error.tab.cc
	A    grammarfiles/Error.tab.h
	A    grammarfiles/lex.dds.cc
	A    grammarfiles/lex.gse_.cc
	A    grammarfiles/lex.ce_expr.cc
	A    grammarfiles/das.tab.cc
	A    grammarfiles/das.tab.h
	A    grammarfiles/dds.tab.cc
	A    grammarfiles/lex.Error.cc
	A    grammarfiles/dds.tab.h
	A    grammarfiles/gse.tab.cc
	A    grammarfiles/gse.tab.h
	A    grammarfiles/expr.tab.h
	A    grammarfiles/ce_expr.tab.cc
	D    lex.das.cc
	D    lex.ce_expr.cc
	D    das.tab.h
	D    das.tab.cc
	D    dds.tab.cc
	D    Error.tab.cc
	D    gse.tab.cc
	D    gse.tab.h

2007-08-15  James Gallagher  <jgallagher@opendap.org>

	Fixes from a security audit

	More changes based on a secutiry audit.
	M    lex.gse_.cc
	M    lex.dds.cc
	M    dds.tab.h
	M    lex.Error.cc
	M    Makefile.am
	M    util.h
	M    lex.das.cc
	M    lex.ce_expr.cc
	M    util.cc
	M    dds.tab.cc
	M    GeoConstraint.cc

	Patch to add HTTP response status to the Response object and to fix the spelling of getdap (it was geturl in places). From Darren Hardy.
	M    HTTPResponse.h
	M    lex.gse_.cc
	M    lex.dds.cc
	M    Response.h
	M    dds.tab.h
	M    lex.Error.cc
	M    HTTPCacheResponse.h
	M    HTTPConnect.cc
	M    lex.das.cc
	M    getdap.cc
	M    lex.ce_expr.cc
	M    AISMerge.cc
	M    dds.tab.cc
	M    StdinResponse.h

2007-08-13  James Gallagher  <jgallagher@opendap.org>

	Modified as part of a security audit and refactoring.
	M    RValue.cc
	M    cgi_util.cc
	M    Error.cc
	M    ConstraintEvaluator.cc
	M    DDS.cc
	M    Array.cc
	M    Makefile.am
	M    Error.h
	M    HTTPCache.cc
	M    DataDDS.cc
	M    dds.lex
	M    DAS.cc
	M    util.cc
	M    Connect.cc
	M    dods-limits.h
	M    dds.y
	M    Array.h
	M    ce_expr.lex

2007-08-09  James Gallagher  <jgallagher@opendap.org>

	Applied the hyrex_redirect patch from NASA. This code now detects and records the value of a Location: HTTP header.
	M    HTTPConnect.cc

2007-08-07  Patrick West  <pwest@opendap.org>

	OPeNDAPDir and OPeNDAPFile not needed in libdap, specific to cedar project. M    Makefile.am

	Not needed in libdap, specific to cedar project. A    http://scm.opendap.org:8090/svn/trunk/cedar-handler/OPeNDAPFile.h D    http://scm.opendap.org:8090/svn/trunk/libdap/OPeNDAPFile.h

	Not needed in libdap, specific to cedar project. A    http://scm.opendap.org:8090/svn/trunk/cedar-handler/OPeNDAPFile.cc D    http://scm.opendap.org:8090/svn/trunk/libdap/OPeNDAPFile.cc

	Not needed in libdap, specific to cedar project. A    http://scm.opendap.org:8090/svn/trunk/cedar-handler/OPeNDAPDir.cc D    http://scm.opendap.org:8090/svn/trunk/libdap/OPeNDAPDir.cc

	Not needed in libdap, specific to cedar project. A    http://scm.opendap.org:8090/svn/trunk/cedar-handler/OPeNDAPDir.h D    http://scm.opendap.org:8090/svn/trunk/libdap/OPeNDAPDir.h

2007-06-27  James Gallagher  <jgallagher@opendap.org>

	unit-tests/Makefile.am: Added -I$(topsrcdir) to the CPPFLAGS for distcheck.

	tests/Makefile.am: Added -I$(topsrcdir) to the CPPFLAGS for distcheck.

	Updated for version 3.7.8
	M    INSTALL
	M    README
	M    NEWS

2007-06-26  James Gallagher  <jgallagher@opendap.org>

	Updates for version 3.7.8 - still need to do README and INSTALL.
	M    DODSFilter.cc
	M    configure.ac
	M    ChangeLog
	M    libdap.spec
	M    NEWS

	Replaced unidata support email with the opendap-tech list address.

	Auto reset of Subversion properties

2007-06-25  James Gallagher  <jgallagher@opendap.org>

	Added.
	AM   gl/config.charset

	Added files from the gnulib update.
	A    gl/m4/wint_t.m4
	A    gl/m4/wchar.m4
	A    gl/m4/localcharset.m4
	A    gl/m4/ulonglong.m4
	A    gl/m4/stdint.m4
	A    gl/m4/gnulib-common.m4
	A    gl/m4/wctype.m4
	A    gl/m4/longlong.m4
	A    gl/m4/include_next.m4
	A    gl/m4/glibc21.m4
	AM   gl/localcharset.c
	A    gl/ref-del.sed
	AM   gl/localcharset.h
	A    gl/ref-del.sin
	A    gl/ref-add.sed
	AM   gl/wchar_.h
	A    gl/ref-add.sin
	AM   gl/stdint_.h
	AM   gl/wctype_.h

2007-06-22  James Gallagher  <jgallagher@opendap.org>

	Updated gnulib and fixed a memory problem in the GNURegex class (which should really be renamed to DAPRegex, but that would break other code). The problem was that to use the gnulib regex code the config.h header has to be included and the gl subdir must be searched. I moved the declaration of the regex_t field of Regex into the implementation file to avoid having config.h in a header that is installed in <prefix>/include. This fixes ticket #953 which first showed up in libnc-dap.
	M    tests/Makefile.am
	M    GNU/GNURegex.cc
	M    GNU/GNURegex.h
	M    Makefile.am
	M    regex_test.cc
	M    gl/alloca_.h
	M    gl/m4/regex.m4
	M    gl/m4/gnulib-comp.m4
	M    gl/m4/ssize_t.m4
	M    gl/m4/gnulib-cache.m4
	M    gl/m4/onceonly_2_57.m4
	M    gl/m4/codeset.m4
	M    gl/m4/alloca.m4
	M    gl/m4/extensions.m4
	M    gl/regex_internal.c
	M    gl/malloc.c
	M    gl/stdbool_.h
	M    gl/regex.c
	M    gl/regex_internal.h
	M    gl/regex.h
	M    gl/regexec.c
	M    gl/Makefile.am
	M    gl/gettext.h
	M    gl/alloca.c
	M    gl/regcomp.c
	M    util.cc
	M    Operators.h
	M    unit-tests/RegexTest.cc
	M    unit-tests/Makefile.am

2007-06-21  James Gallagher  <jgallagher@opendap.org>

	Reverted to the old version of get_attr() for release.
	M    AttrTable.cc

	escaping.cc: one last call to size replaced.

	escaping.cc: Replaced calls to string::size() with ones to string::length(). They return the same information, but it's cleaner to use the same method everywhere

2007-06-19  James Gallagher  <jgallagher@opendap.org>

	Fixed a problem in save_raw_http_header() where a header from an old server (terminated by a newline but no return) caused a read violation when the header was empty.
	M    HTTPConnect.cc

2007-06-08  James Gallagher  <jgallagher@opendap.org>

	Spelling in comments and strings
	M    AlarmHandler.h
	M    GeoConstraint.h
	M    expr.h
	M    RCReader.h

2007-06-04  James Gallagher  <jgallagher@opendap.org>

	Updated comments.
	M    lex.gse_.cc
	M    AISResources.cc
	M    configure.ac
	M    cgi_util.cc
	M    lex.dds.cc
	M    ChangeLog
	M    ConstraintEvaluator.cc
	M    Array.cc
	M    ce_expr.tab.cc
	M    Byte.cc
	M    lex.Error.cc
	M    ce_expr.tab.h
	M    Error.tab.h
	M    AttrTable.cc
	M    lex.das.cc
	M    lex.ce_expr.cc
	M    das.tab.h
	M    ce_functions.cc
	M    Constructor.cc
	M    das.tab.cc
	M    ArrayGeoConstraint.cc
	M    Connect.cc
	M    Error.tab.cc
	M    Clause.cc
	M    doxy.conf
	M    gse.tab.cc
	M    gse.tab.h

2007-05-25  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2007-05-24  Patrick West  <pwest@opendap.org>

	Standard location of PackageMaker command line app. M    Makefile.am

	Ability to build .pkg file from the Makefile instead of running PackageMaker GUI. A    OSX_Resources/Info.plist A    OSX_Resources/Description.plist M    Makefile.am

2007-05-18  James Gallagher  <jgallagher@opendap.org>

	Updated pkg.m4 macros
	M    pkg.m4

2007-05-17  James Gallagher  <jgallagher@opendap.org>

	Fixed typos in grammar files.
	M    Error.lex
	M    gse.lex
	M    gse.y
	M    ce_expr.y
	M    Error.y
	M    dds.lex
	M    das.lex
	M    das.y
	M    ce_expr.lex

	Fixed typos in libdap headers.
	M    DDXParser.h
	M    Sequence.h
	M    SignalHandler.h
	M    debug.h
	M    escaping.h
	M    Connect.h
	M    ce_functions.h
	M    SignalHandlerRegisteredErr.h
	M    gse_parser.h
	M    DDS.h
	M    ArrayGeoConstraint.h
	M    GeoConstraint.h
	M    HTTPCacheResponse.h
	M    Error.h
	M    AISResources.h
	M    PipeResponse.h
	M    util.h
	M    Grid.h
	M    AttrTable.h
	M    PassiveUrl.h
	M    Url.h
	M    Clause.h
	M    Operators.h
	M    HTTPConnect.h
	M    StdinResponse.h
	M    Array.h
	M    UInt16.h

	Auto reset of Subversion properties

2007-05-16  James Gallagher  <jgallagher@opendap.org>

	Added pkg.m4 to conf so build from svn will work on machines w/o pkg-config. Updated comments.
	A    conf/pkg.m4
	M    Makefile.am
	M    Constructor.h
	M    unit-tests/Makefile.am

2007-05-14  James Gallagher  <jgallagher@opendap.org>

	Removed the html docs from svn; RPM now builds a 'doc' package.
	D    docs/html.tar.gz
	M    libdap.spec

	Resolved conflicted state of AISDatabaseParser.h

	Auto reset of Subversion properties

2007-05-13  James Gallagher  <jgallagher@opendap.org>

	Patrice Dumas' changes to dods-datatypes.h - Now the header uses the C99 types unless th stdint.h header is not present.
	D    dods-datatypes.h.in
	M    configure.ac
	A    dods-datatypes-static.h
	M    conf/acinclude.m4
	M    Makefile.am
	A    dods-datatypes-config.h.in

	Auto reset of Subversion properties

2007-05-12  James Gallagher  <jgallagher@opendap.org>

	Added Patrice Dumas' pkgconf patches
	M    dods-datatypes.h.in
	M    configure.ac
	AM   conf/compile
	M    conf/libdap.m4
	A    conf/check_zlib.m4
	M    libdap.spec
	M    BaseType.cc
	M    Makefile.am
	M    Structure.cc
	A    libdapclient.pc.in
	A    libdap.pc.in
	A    libdapserver.pc.in
	M    dap-config.in

2007-05-10  James Gallagher  <jgallagher@opendap.org>

	Comments & Strings
	M    BaseType.h
	M    BaseType.cc
	M    Float32.cc
	M    AISDatabaseParser.h
	M    Float32.h
	M    AISDatabaseParser.cc
	M    AISConnect.h

2007-05-02  James Gallagher  <jgallagher@opendap.org>

	Updates for 3.7.7
	M    configure.ac
	M    ChangeLog
	M    libdap.spec
	M    README
	M    NEWS

2007-03-29  James Gallagher  <jgallagher@opendap.org>

	Added definition of trunc() for Solaris < 10.

	Added definition of trunc() for Solaris < 10.

2007-03-28  James Gallagher  <jgallagher@opendap.org>

	All files (.cc and .h) formatted using astyle. I found one introduced error and one issue with the strings passed to the Error exceptions.

2007-03-27  James Gallagher  <jgallagher@opendap.org>

	Minor formatting changes.
	M    Byte.cc
	M    unit-tests/HTTPConnectTest.cc

	Wrapped the calls to ConstraitEvaluator::eval() in a compile-time constant (EVAL) which defaults to zero (so the calls are not made for non-sequence types). Also wrapped the server-side compression code in a compile-time constant COMPRESSION_FOR_SERVER3 which is also zero by default. Lastly, added DapObj constructor init for BAS, DDS and BaseTyep constructors.

2007-03-26  James Gallagher  <jgallagher@opendap.org>

	DDS.cc, unit-tests/DDSTest.cc: Fixed ticket # 708. The dataBLOB element now gets an empty href attribute.

	README: Added a note about thread-saftey.

	Patch from Patrice Dumas: Fix the order of library builds! This closes #880.

2007-03-23  James Gallagher  <jgallagher@opendap.org>

	Fixed the help/version/args messages for the server-side functions so that they are somewhat rational. There is a ticket to develop a 'capabilities' response for Hyrax and that should replace these messages.
	M    ce_functions.cc
	M    GeoConstraint.cc

	Updated test for changes to the 'wrong number of args" messages from the first set of server-side functions.
	M    tests/expr-testsuite/data.zz0
	M    tests/expr-testsuite/data.z0

2007-03-12  James Gallagher  <jgallagher@opendap.org>

	Resolved signed/unsigned compares
	M    Vector.cc

	Removed some int/unsigned compares
	M    tests/TestArray.cc

	Updated notes and version information for 3.7.6.
	M    configure.ac
	M    README.AIS
	M    ChangeLog
	M    INSTALL
	M    README.dodsrc
	M    libdap.spec
	M    README
	M    NEWS

	Fixed some errors in the unit tests, one bug in the RCReader when reading the VALIDATE_SSL keyword. Updated the parser stuff.
	M    lex.dds.cc
	M    RCReader.cc
	M    lex.das.cc
	M    das.tab.h
	M    das.y
	M    das.tab.cc
	M    unit-tests/RegexTest.cc
	M    unit-tests/RCReaderTest.cc

2007-03-11  James Gallagher  <jgallagher@opendap.org>

	Removed DODS_DEBUG
	M    ce_functions.cc

2007-03-09  James Gallagher  <jgallagher@opendap.org>

	Fixed ticket #857: The linear_scale function was crashing because of a failure to test that a parent variable existed before getting its type. I also fixed an unrelated problem where double quotes around an attribute value broke the string --> double code and added a new feature where files which omit the y intercept because it's zero do not return an error but instead use 0.0 as a default. Finally, the error message text was improved.
	M ce_functions.cc

2007-02-16  James Gallagher  <jgallagher@opendap.org>

	Makefile.am: removed some errant tabs.

	dap-config.in: fixed #816; --help was wrong.

	I removed throw(Error) from the method declarations in the header and impl.  files. I removed the include of Error.h from the header. I added the include using "" in the impl. This should fix the ml-structrs build error that started on 1/7/07 when Rob made some changes for the win32 build.
	M    GNU/GNURegex.cc
	M    GNU/GNURegex.h

2007-02-09  James Gallagher  <jgallagher@opendap.org>

	Updated for version 3.7.5
	M    docs/html.tar.gz
	M    libdap.spec

2007-02-07  James Gallagher  <jgallagher@opendap.org>

	Updated for 3.7.5
	M    configure.ac
	M    INSTALL
	M    README
	M    NEWS
	M    ChangeLog

	main_page.doxygen: Updated the version number to 3.7.5.

	ce_functions.cc, GeoConstraint.cc, HTTPConnect.cc: Formatting lex.dds,cc, les.gse_.cc: Regenerated.

2007-02-05  James Gallagher  <jgallagher@opendap.org>

	data.z2-7: updated the data values for two and three dimensional arrays given the new code in GeoConstraint.

	expr-test.cc, TestArray.cc: formatting changes

	AISMergeTest.cc, HTTPConnectTest.cc: Fixed errors that have cropped upover time, esp. as Server4 has become the default.

2007-02-03  Patrick West  <pwest@opendap.org>

	Added information about PATH and LD_LIBRARY_PATH. M    INSTALL

2007-01-30  James Gallagher  <jgallagher@opendap.org>

	ce_functions.cc: Added support for missing values to linear_scale. Now, if missing_value is present (in the attributes or given as a parameter) values which match will not be scaled.

2007-01-29  James Gallagher  <jgallagher@opendap.org>

	ce_functions.cc: Added a new version of get get_attribute_double_value() that takes a vector of strings and returns the value of the first attribute found in that vector. Also cleaned up the memory use in the linear_scale function so that function no longer leaks the new template variable. This was part of the fix for #660 (See also the checkin for Clause.cc from today).

	Clause.cc: Added a call to set_read_p(true) in Clause::value so that handlers' read() methods will not try to 'read over' the values inserted to the variables by a CE function.

	GeoConstraint.cc: Minor formatting fix.

2007-01-26  James Gallagher  <jgallagher@opendap.org>

	Updates to comments.

	ce_functions.cc: Fixed ticket 659 where array data was not read when a relational constraint was not used. The bug crept in while making another fix (for the HDF4 handler). The problem was that Grid::read() was used to read the maps (bit not the Array) and as a side effect read_p was set for the entire Grid, not just the maps. I reset the Array read_p value; see ce_functions.cc

2007-01-21  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Synch win32 Makefile wrt recent libdap code changes

2007-01-12  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2007-01-12  Patrick West  <pwest@opendap.org>

	comment headers updated with correct information and Copyright. M    DapObj.h M    DapIndent.h M    DapIndent.cc

2007-01-11  Patrick West  <pwest@opendap.org>

	Added dump method to the BaseType classes, DAS, DDS, DataDDS. To do this, created a DapObj base class for all of these to inherit from (directly or indirectly) and in the DapObj class is the operator<< method. This will aid in debugging. Created an indentation classes to help with dumping objects. M    Int16.cc M    Int32.h M    Structure.h M    Sequence.h M    Str.h M    Int16.h M    DAS.h M    DDS.cc M    BaseType.h M    Array.cc M    Float64.h M    UInt16.cc M    Byte.cc M    Byte.h M    DataDDS.h M    BaseType.cc M    DDS.h M    Makefile.am M    Constructor.h M    Int32.cc A    DapObj.h M    DataDDS.cc A    DapIndent.h M    Float32.cc M    AttrTable.cc M    Grid.h M    Structure.cc M    Vector.cc M    Str.cc M    Sequence.cc M    Float32.h M    AttrTable.h M    Constructor.cc M    UInt32.h M    Vector.h M    DAS.cc M    Float64.cc M    UInt32.cc M    Grid.cc A    DapIndent.cc M    Array.h M    UInt16.h

2007-01-08  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2007-01-07  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Last Makefile tweeks to automate pkging for win32

	Add doc's that accompany win32 libdap releases to the repository

2007-01-07  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2007-01-07  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Prevent "error.h" from getting picked up during ml-structs build under win32 (that's error.h with a little "e").

2007-01-06  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Removed VC++-6.x-specific ifdefs.  6.x not supported any longer anyway as some old template-related hacks are no longer in the code.

	Add sample code for compiling/linking with libdap under win32

2007-01-03  James Gallagher  <jgallagher@opendap.org>

	Vector.h: Removed 'Vector::' prefix in a bunch on accessors; these caused g++ 4.1.1 to gag. Fix from Rob Cermak.

2007-01-02  Patrick West  <pwest@opendap.org>

	3.7.4 release M    configure.ac M    ChangeLog M    libdap.spec M    NEWS

2006-12-31  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Synchronize select win32 Makefiles to build/pkg the same way

2006-12-20  James Gallagher  <jgallagher@opendap.org>

	Added Structure::transfer_data() so that a handler can simulate the actions of serialize() without actually sending the data.
	M    Structure.h
	M    Structure.cc
	M    Sequence.cc

	DDXParser.cc: Fixed an error introduced by the Eclipse code formatter.

2006-12-19  James Gallagher  <jgallagher@opendap.org>

	DDXParser.cc, DODSFilter.cc: Formatting changes

2006-12-13  James Gallagher  <jgallagher@opendap.org>

	Updated libdap.pmproj to/for version 3.7.3

2006-12-10  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Change of pkging location simplifies user builds

2006-12-06  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Set LIBDAP_ROOT appropriately in the MS Windows case

	Remove external .manifest as an issue by internalizing into binaries

2006-12-05  James Gallagher  <jgallagher@opendap.org>

	getdap.cc: Fixed a bug where the constraint expression passed in using -c was not used when getting either a DDS or a DDX (but it was used when getting data).

	Added comments to DDS and DataDDS about when it's OK to delete their type factories (only when you're done using the DDS or if you're about to switch to a new factory).

2006-12-05  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Require *.exe.manifest to accompany .exe's if they are to run.  I guess I don't yet know why these are generated

	Improve win32 exe linking

2006-12-03  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Just libdap for win32 makefile tweeks

2006-12-02  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	New Makefile code to gen exports for dll's automatically

	Module export def's no longer required.  Constructed at build time.

2006-11-26  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Automate module export definition regeneration for dll's (hard)

2006-11-24  James Gallagher  <jgallagher@opendap.org>

	Updated OSX ReadME.txt for 3.7.3

	Documentation and build file update for the 3.7.3 release.

	AISMergeTest.cc: UPdated baseline to account for new fnoc1.das file in data/nc.

2006-11-22  James Gallagher  <jgallagher@opendap.org>

	Updated ChangeLog

2006-11-21  James Gallagher  <jgallagher@opendap.org>

	Fixed unescattr() in escaping.cc. Now the code works when there are several escaped characters or when the escapes are escaped. That is, this version can be used by the libnc-dap library and the result is code that passes all the nc_test tests for char and text attributes.

2006-11-12  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Make win32 pkging dir locaton slightly more flexible

	Update module export definitions for dll versions of the Core

2006-11-11  James Gallagher  <jgallagher@opendap.org>

	Removed errant 3.7.3 sub directory.

2006-11-07  James Gallagher  <jgallagher@opendap.org>

	Tagged as 3.7.3

	Updated docs for version 3.7.3

	HTTPConnectTest.cc: Turned off debugging

	HTTPConnectTest.cc: Fixed up the tests for headers once again...

	Auto reset of Subversion properties

2006-11-06  James Gallagher  <jgallagher@opendap.org>

	configure.ac: I moved the DAP Protocol setting up where it's likely to be updated and not glossed over.

	getdap.cc: getdap now reports the protocol version in addition to the server version.

	Added tests for the new parameter VALIDATE_SSL

	HTTPConnect.cc, RCReader: The .dodsrc file now supports a VALIDATE_SSL option which controls libcurl's validation of SSL hosts and certificates. If this is set (the default), certificates must be signed by a recornized Certificate Authority and hosts must be properly named. Clear (set to zero) to get the old behavior from libcurl which does not perform this validation.

2006-11-03  James Gallagher  <jgallagher@opendap.org>

	HTTPConnect.cc: Modified so that gzip and compress are also accepted encodings.

2006-11-03  Patrick West  <pwest@opendap.org>

	Removed DODSResponseObject from the Makefile after removing the file from libdap. DAS and DDS no longer inherit from DODSResponseObject. New classes representing DAS, DDS and DataDDS were created in BES. M    Makefile.am

	Moved DODSResponseObject.h to the BES, naming it BESResponseObject. Created in BES three classes to represent DAS, DDS, and DataDDS. D    DODSResponseObject.h M    DAS.h M    DDS.h M    DDS.cc

2006-10-30  James Gallagher  <jgallagher@opendap.org>

	expr-tests for geogrid() and geoarray(): Fixed the tests so they work using the new notation which passed geo points using lat,lon as oppoed to lon,lat.

	Makefile.am: Removed the debug flags from AM_CXXFLAGS. -Werror really breaks the builds because of issues in the bison/flex code.

2006-10-28  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-10-27  James Gallagher  <jgallagher@opendap.org>

	Constructor.cc, ArrayGeoConstructor.cc: Removed DODS_DEBUG

	DDSTest.cc: Removed compiler warnings.

	HTTPConnect.cc: Fixed a bug in save_raw_http_headers() where the test for the \r\n line terminator was broken (tested nmemb-1 instead of nmemb-2. Makefile.am: added a target for test coverage and added the debugging options to CXXFLAGS by default. Make sure to back this out before release Unit Tests: Fixed up warnings in the unit tests

	DDS.h: Added declarations for the new transfer_attributes() methods

	Constructor.h: Added declarations for the new transfer_attributes() methods.

	BaseType.h: Added a little text to the ptr_duplicate() documentaion.

	HTTPCache.cc: Changed the way the mutex which is used to protect the various methods is initialized.

	GeoConstraint.cc: Fixed two warnings, one about using a prefix operator with modulus and assignment back to the same variable and the other about field initialization order.

	DODSFilter.cc: Fixed the broken definition of send_blob(), not that it matters...

	DDS.cc: I removed the second attempt at transfer_attributes and started on a third. This one seems to work much better; see the tests in DDSTest.cc. This version takes the _dim attributes from the hdf4 server and bundles them with a Grid Map or puts them in a sub-container for an Array. This should not break libnc-dap while still preserving all the attribute data.

	Constructor: Added code to merge attributes into a constructor. This method is called from DDS.

	ce_functions.cc: Removed unused parameters.

	ArrayGeoConstraint: Fixed a warning where one version of the constructor was not using all of its parameters.

	ArrayGeoConstraintTest: added

	DDSTest.cc, Makefile.am: Updated with tests for DDS::transfer_attributes.

	Added test data for DDS::transfer_attributes new new version.

2006-10-24  James Gallagher  <jgallagher@opendap.org>

	HTTPConnect.cc: Removed debugging.

	DDS.cc: Removed the 'sub table' code from transfer_attributes(). getdap.cc: Added -X option to build the DDX on the client to simplify debugging (e.g., ticket 480)

	Massive removal of exception quaifiers/declarations. I've left only the excpetion declarations in RCReader (which declare that no excpetions are thrown) and those for constructors. In HTTPConnect.cc:save_raw_http_headers() fixed a bug where headers were assumed to have \r\n terminators. That is true only for new servers. See ticket #631 for more information.

	cgi_util, DODSFilter: Made many params & methods const

2006-10-23  James Gallagher  <jgallagher@opendap.org>

	Fixed AISDatabaseParser.cc

	AISDatabaseParser.cc: Replaced calls to getLineNumber and xmlSAX2GetLineNumber with calls to one or the other depending on the library version. In some places the SAX2 API was used exclusivele, in others the old API was used. The changes mean the new API will always be used OR the old API will always be used, depending on library version.

	DDXParser.cc: I put the call to xml2's getLinNumber() Back in the code since older distros don't have the newer library.

2006-10-20  James Gallagher  <jgallagher@opendap.org>

	Closed some tickets for the server-side functions and added the version function.

	Fixes for ticket 616: I added code to GeoConstraint that checks the bounding box to make sure it includes data and returns an Error if it does not. Also, the order of the bounding box lat and lon were switched to fit more with practice. The GeoConstraint method arguments were no changes, only the order of lat and lon passed to the geogrid() and geoarray() functions.

	Auto reset of Subversion properties

2006-10-19  James Gallagher  <jgallagher@opendap.org>

	Data for geoarray tests added.

	Baseline data for geoarray tests added.

	Tests for geoarray: Added

	Added geoarray() which required changes to GeoConstraint and GridGeoConstraint (I created GridGeoConstraint and made GeoConstraint abstract). ce_functions.cc was also modified.

	ArrayGeoConstraint.cc: Added

	ArrayGeoConstraint.h: Added

	Auto reset of Subversion properties

2006-10-18  James Gallagher  <jgallagher@opendap.org>

	Updated baseline for text.z3.exp (data.z3) after fixing GeoConstraint::find_latitude_indeces().

	Added data.61a-d

	GridGeoConstraintTest: Updated with a new test for find_latitude_indeces.

	Updated the data.z? files given that the range selection behavior in GeoConstraint has been changed.

2006-10-16  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Update win32 module export definitions for latest libdap*.

	Provide header for find_if under win32

	Change funcs that return nothing to be declared so

2006-10-14  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-10-13  James Gallagher  <jgallagher@opendap.org>

	GridGeoConstraint: Fixed the calls so that they no longer use the dds argument

	GridGeoConstraint: Added

	Removed DDS from GeoConstraint.

	HTTPCache.cc: Minor change to a comment.

	Refactored GeoConstraint so that all the Grid-specific code is now in GridGeoConstraint (created/added GridGeoConstraint). Modified ce_functions so that geogrid uses the new object. Updated the unit tests. Added the new class to the Makefile.am

	Auto reset of Subversion properties

2006-10-12  James Gallagher  <jgallagher@opendap.org>

	Added tests.

	Test baseline data for the geogrid() function

	Changes test.10 to test.a

	Auto reset of Subversion properties

2006-10-11  James Gallagher  <jgallagher@opendap.org>

	Added

	Added tests to expr-testsuite for geogrid. Somewhat dubious at the moment.

2006-10-10  James Gallagher  <jgallagher@opendap.org>

	expr-test.cc: reformatted

2006-10-09  James Gallagher  <jgallagher@opendap.org>

	BaseType, RValue, et c.: Closed ticket regarding optimization of build_btp_args. Args are always BaseTypes and before they were always read. This could cause huge Grid/Array variables to be read when those were arguments to functions, even if the running the function would result in only a small part of the Grid/Array being returned. Now arguments are not read. If functions need values for the arguments, they must read them themselves.

	cgi_util.cc: Fixed a bug in set_mime_text where the wrong 'type' was returned. The type was always set to dap4_ddx.

	CEFunctionsTest: Paths easy to set for debugger.

	DDXParserTest: Turned off debug

	AISDatabaseParser: Replaced old xml getLineNumber with the newer SAX2 api call.

2006-10-06  James Gallagher  <jgallagher@opendap.org>

	Vector: Added set_value() and value() methods. Updated docs

	ce_functions.cc: Now the linear_scale function will work for Grid Maps in the hdf4 handler.

	Check point: I've modified Connect, getdap and ObjectType so they support a Connect::request_ddx() method. I've added a stream reader to DDXParser and am in the process of figuring out where the attributes are going!

2006-10-05  James Gallagher  <jgallagher@opendap.org>

	DDXParser.h: Added an intern_stream() method to read from a stream and updated the code (one function) to use the new SAX2 API from libxml2.

	DDXParser.cc: Added an intern_stream() method to read from a stream and updated the code (one function) to use the new SAX2 API from libxml2.

	Vector.cc: Ran indent

2006-10-04  James Gallagher  <jgallagher@opendap.org>

	ConstraintEvaluator: Now uses a list to store the list of functions and the add_function() methods now overwrite functions with the same names so it's possible to provide specializations of the standard functions in ce_functions.

	Added value()/set_value() methods to Float32/64, Int16/32, UInt16/32 and Str.

	ce_functions.cc: Both grid and geogrid now use a little hack to read the map vectors of a Grid. The HDF handler cannot read the Grid Maps directly (maps on HDF are not really variables but are attributes instead). This hack involves setting send_p for the just the maps and then calling the Grid's read() method.

	ConstraintEvaluator: Now uses a list to store the list of functions and the add_function() methods now overwrite functions with the same names so it's possible to provide specializations of the standard functions in ce_functions.

	Vector.cc: Simplifed the code in val2buf()

2006-10-03  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-10-02  James Gallagher  <jgallagher@opendap.org>

	Float64, Int32: Added value/set_value() methods Grid: Added an reverse iterator typedef and rbegin/rend methods. This provides an easy way to access the 'rightmost' map vectors (used by geogrid()).

	Vector.cc: Ran through astyle indent utility.

	parser-util.cc: Ran through astyle indent utility.

	CEFunctionsTest: Added tests for linear_scale().

	ce_functions: Added linear_scale function. CEFunctionsTest: Added tests for linear_scale().

2006-09-30  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-09-29  James Gallagher  <jgallagher@opendap.org>

	Makefile.am: Added GEOConstraintTest

	GeoConstraintTest: Extracted from CEFunctionsTest and added to svn.

2006-09-28  James Gallagher  <jgallagher@opendap.org>

	Clause.cc: Fixed up some comments.

	GeoConstraint.cc: Turned off instrumentation; removed throw() from declartions, fixed a problem with bad latitude constraint information that caused a fatal error (now it sends a message indicating how to fix the problem).

	DODSFilter.cc: Modified send_data() so that errors thrown by BaseType functions will be returned to clients correctly.

	ce_functions.cc, GeoConstraint.h: Removed 'throw(Error)' from declarations since C++ calls abort() when/if another type of excpetion is thrown, even if there's a catch() clause for it.

	ce_functions.h: Removed 'throw(Error)' from declarations since C++ calls abort() when/if another type of excpetion is thrown, even if there's a catch() clause for it.

2006-09-27  James Gallagher  <jgallagher@opendap.org>

	Vector.cc: I made the instrumentation in the ctor and dtor 'level two' statements so that the output would be less cluttered.

	GeoConstraint.cc: reorder_data_longitude_axis() now works. CEFunctionsTest.cc: Turned off debugging.

2006-09-26  James Gallagher  <jgallagher@opendap.org>

	GeoConstraint: Checkpoint; passes unit tests but still fails with a real dataset (COADS_CLIMATOLOGY). Problem with circular longitude axis.

2006-09-25  James Gallagher  <jgallagher@opendap.org>

	ce_functions.cc: The grid() function is now implemented so that geogrid() can use it to evaluate GSEs (ticket 569)

	ce_functions.cc/h: The grid() function is now a BaseType* function. CEFunctionsTests: Work with the new grid() implementation changes.

2006-09-24  James Gallagher  <jgallagher@opendap.org>

	ce_functions.cc: Removed old code that was getting in the way.
	GeoConstraint.cc: Fixed a buf in reorder_data_logitude_axis(): off-by-one
	error when applying the first constraint (used d_lon_length instead of
	d_lon_length-1 for the end point).

	CEFunctionsTest: Added code to use TestTypes from the 'test' directory and
	generally fixed up the tests so they work with the new BaseType function
	versionof geogrid().

2006-09-23  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-09-22  James Gallagher  <jgallagher@opendap.org>

	Modified TestArray so that it's possible to see that arrays really are subsampled. That is, if a constraint is set on an array, TestArray::read() will first allocate the whole array and then sample it, simulating a read() method that's interacting with an API that knows how to sample an array. Works only for two dims.

	test.c{0,1}: Added

	Grid: Added get_array() which returns an Array* so the cast that was needed when using array_var() can be removed. I changed all the calls to array_var() to get_array() (DDS, ce_expr, ce_functions).
	RValue.cc: I removed the read() call when build_btp_args() builds
	an argument list. This change may break client software, but it means
	that variables are not complete read when they are passed to CE
	functions, which should be a big boost in efficiency when working
	with EOS Grids in geogrid().

	Added code in TestArray to make arrays with constrained values.
	GeoConstraint: Updates; almost complete.

	GeoConstraint: Added a new method and an enum to record the 'sense' of the latitude map (normal or inverted). Added tests for the find_latitude_indeces() method to the unit tests

2006-09-21  James Gallagher  <jgallagher@opendap.org>

	GeoConstraint/geogrid checkpoint. Byte,Str: Added value() and set_value() methods TestArray: Improved the read() method so it uses the series_values property and so it returns reasonable values for lat/lon vectors expr-test.cc: Now can be used to test BaseType functions

	Another GeoConstraint checkpoint

2006-09-20  James Gallagher  <jgallagher@opendap.org>

	GeoConstraint checkpoint

2006-09-19  James Gallagher  <jgallagher@opendap.org>

	Makefile.am: Patch from Patrice Dumas regarding the libdapserver and libdapclient libraries.

	libdap.spec: Patch from Patrice Dumas regarding the libdapserver and libdapclient libraries.

	dap-config.in: Changed the semantics of --libs so that it matches the old behavior.

2006-09-15  James Gallagher  <jgallagher@opendap.org>

	Updated the version to 3.7.2 and the associated ChangeLog, configure.ac, et c., files. The docs have also been updated (docs/html.tar.gz).

	HTTPConnect.cc: Changed the way headers are parsed. Now the code assumes that each header is terminated by a \r\n pair (previously the code assumed the line terminator was a \n character only).

	HTTPConnectTest: Fixed most, but not all, of the failures. See ticket 552 for more info.

	test.f.exp: The change to TestStr so that the number included in the string increments broke this test. Fixed.

	Sequence: Doxygen was complaining about the types used in the new transfer_data_*() methods because they were not exactly the same string (vector<Sequence*> versus sequence_values_stack_t). I made them the same.

	doxy.conf: Now the method listings are in alphbetical order.

2006-09-14  James Gallagher  <jgallagher@opendap.org>

	SequenceTest.cc: Now tests the new transfer_data() method.

	Added the transfer_data() method to Sequence. This method reads data using the read() method and loads values into the local object's d_values field. Values can then be used by methods like print_val() which expect to see information stored in the Sequence objects as if the object was part of a client and had read the data off of the wire. I also modified the print_vals_by_row so that nested Sequences values are indented by four spaces.

	TestStr.cc: Modified the string so that the value of count increments by one for each instance.

	TestInt32.cc: Modified so that on 64-bit machines the overflow of the '* 32' operation does not reset the value of _buf to zero, but instead _buf cycles back to 32.

2006-09-13  James Gallagher  <jgallagher@opendap.org>

	Sequence: Added transfer_data and related methods. These are used to move data on the server-side from a data source into the d_values field, loading the variables in the sequence with data in a way that is very similar to the operation of all the other variables. This provides a way to pass a DDS to other code which is loaded with data. SequenceTest.cc and Makefile.am in unit-tests: Test the transfer_data method. Int32: I added a value() method similar to those added to Float32/64 a while back. This simplifies testing so much... configure.ac: Bumped up the revision number of the library.

2006-09-09  James Gallagher  <jgallagher@opendap.org>

	GNURegex: I change the regex_t field from a regular variable to a pointer. Seems to fix the problem, although I don't know why. Not the most reassuring feeling...

2006-09-05  James Gallagher  <jgallagher@opendap.org>

	BaseType.cc: Modified add_var() so that it now throws an InternalErr and fixed up the documentation so it reads correctly.

2006-09-02  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-09-01  James Gallagher  <jgallagher@opendap.org>

	ce_functions.cc: geogrid() no longer uses the projection/selection function model. Now it's a pure projection function.

	GeoConstraint: removed old code and modified find_lon_lat_maps() so that I can test with the COADS dataset. Tests not working...

	GeoConstraint: removed old code and modified find_lon_lat_maps() so that I can test with the COADS dataset. Tests not working...

	checkpoint: GeoConstraint/geogrid() nearly working Changes in DDS, ConstraintEvaluator, ce_functions (now uses the new libdap namespace), RValue, various tests.

	Updates/Changes to the grid() testsuite that uses remote servers. I changed the tests so they now run using servers on test.opendap.org and use getdap (the tests were originally written to use geturl).

2006-08-29  James Gallagher  <jgallagher@opendap.org>

	GeoConstraint: Changed code to do the data translation for split constraints so that it uses memcpy(). Untested.

2006-08-28  James Gallagher  <jgallagher@opendap.org>

	GeoConstraint: Added some of the code needed to swap parts of a 'split' longitude constraint.

	CEFunctionsTest.cc: Added unit tests for vector swapping coode.

	Added separate lon/lat bounding box marking code to GeoConstraint.

2006-08-25  James Gallagher  <jgallagher@opendap.org>

	More work on geogrid(). M    ce_functions.h M    GeoConstraint.h M    Grid.h M    Vector.cc M    ce_functions.cc M    Grid.cc M    unit-tests/CEFunctionsTest.cc M    GeoConstraint.cc

	Auto reset of Subversion properties

2006-08-24  James Gallagher  <jgallagher@opendap.org>

	Progress on the geogrid() server-side function. Changed/Added files: M    RValue.cc M    ce_functions.h M    GeoConstraint.h M    Makefile.am M    gse-test.cc M    ce_functions.cc A    unit-tests/ce-functions-testsuite A    unit-tests/ce-functions-testsuite/two_grid.dds A    unit-tests/ce-functions-testsuite/geo_grid.dds M    unit-tests/CEFunctionsTest.cc M    Clause.cc M    GeoConstraint.cc

2006-08-22  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-08-21  James Gallagher  <jgallagher@opendap.org>

	Updated release files for the 3.7.1 source release.

	ce_functions.cc, DDS.cc, CEFunctionsTest.cc, docs/html.tar.gz: Updates for documentation. For CEFunctionsTest.cc: Added tests for the new grid() and nascent geogrid() code.

	GeoConstraint.cc: Added

	DDS.cc: Fixed tcket 480. The transfer_attributes() method was not handling the HDF4 *_dim_? attribute containers correctly, at least as far as the libnc-dap was concerned. Now those attribute containers are made subtables of the associated variable. That is, if there's a variable <var> and a container <var>_dim_0, then the attribute table <var> will have a subtable 'dim_0'.

	ce_functions.cc: Added stuff for gwogrid() (which still doesn't work).

	BaseType.cc: Updates to comments.

	Grid.h: Comment fixes, moved some doxygen comments into Grid.cc.

	GeoConstraint.h: Added. Currently does nothing.

	ce_functions.h: changed the name of func_grid_select() to projection_function_grid(). Added projection _function_geogrid().

	AttrTableTest.cc: Added a test for the new append_attr() method.

	DDSTest.cc: Added a test for ticket 480 (transfer_attributes()).

	S2000415.HDF.test1.das: Added for more DDS::transfer_attributes() tests.

	Mkaefile.am: GetConstraint.cc Added.

	RValue.cc: Fixes for some comments.

	Grid.cc: Fixes for some comments.

	DAS.cc: REmoved the 'char*' versions of the methods. These have not been needed since we stopped using the GNU String class.

2006-08-17  James Gallagher  <jgallagher@opendap.org>

	BaseType.h: Reformatted a doc comment for var().

	AttrTable: Added append_attr() method that takes a vector of values so that client code does not have to call the single value version in a loop.

	AttrTable: Added append_attr() method that takes a vector of values so that client code does not have to call the single value version in a loop.

2006-08-15  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-08-14  James Gallagher  <jgallagher@opendap.org>

	das.tab.cc: Updated (edits to das.y).

	das.y: config_dap.h --> config.h

	Makefile.am, CEFunctionsTest.cc: Added unit tests for the the grid() ce function.

	Str.cc: No longer includes an extern declaration for escattr() since that function is not called by this code.

	GSEClause.cc: Added the word 'map' to the error messages about missing map variables.

2006-08-11  James Gallagher  <jgallagher@opendap.org>

	ce_functions.cc: Modified so that the errors returned match those in the design.

2006-08-01  James Gallagher  <jgallagher@opendap.org>

	DDS.cc, DDXParser.cc/h, tests/ddx-testsuite/*.ddx: Changed the name of the dodsBLOB element to dataBLOB and the attribute from URL to href. See ticket #454.

	DDSTest.cc: Changed expected name to dataBLOB from dodsBLOB and attribute of that element to href from URL.

	html.tar.gz: Updated build of reference docs.

	generalUtilTest.cc: Fixed test for the new id2www/www2id behavior which escapes the percent sign.

	BaseType.h, ConstraintEvaluator.cc, DODSFilter.cc, escaping.cc/.h, Sequence.cc: Updated comments.

	libdap.m4: Applied Patrice Dumas' patch which checks for the newer dap-config and uses it's options for the three library setup.

2006-07-31  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-07-30  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	w32 Makefile rewrite & export def's for 3-lib split-up of libdap

2006-07-09  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Tweeks for win32 porting effort

	New makefile for win32 libdap version to accomodate 3-library split

2006-07-07  James Gallagher  <jgallagher@opendap.org>

	docs/html.tar.gz, escaping.cc: Updated/corrected documentation.

	cgi_util.cc, configure.ac: Fixed bug 437. When a handler is not passed a version number, it will now use the library's version number set at compile time.

2006-07-03  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Patch core to use libcurl as a dll without crashing

2006-06-14  James Gallagher  <jgallagher@opendap.org>

	Removed GNU error and builtin from Makefile.am (they were already removed from the directry GNU.

	Updates to ChangeLog, README, INSTALL, NEWS, libdap.spec, Makefile.am and html.tar.gz for the beta releae 3.7.0.

2006-06-13  James Gallagher  <jgallagher@opendap.org>

	lex.gse_.cc: Comments

	ce_functions.cc, gse.lex: fixed comments

2006-06-09  James Gallagher  <jgallagher@opendap.org>

	INSTALL.AIX: Added newer comments from Dan S.

	INSTALL: Updated by adding a reference to the INSTALL.AIX file.

2006-06-06  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-06-05  James Gallagher  <jgallagher@opendap.org>

	GNURegex: Added Error thows back into the code

	In GNU: Removed some now-unused files and fixed a bug in GNURegex.cc where config.h was not included when it must be. This caused a failure on OS/X because the rpl_regexec(), ..., symbols were not defined.

2006-06-02  James Gallagher  <jgallagher@opendap.org>

	regex_test.cc: Added

2006-06-01  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-05-31  Nathan Potter  <ndp@opendap.org>

	GNURegex.cc: kludge! Added a workaround patch to GNURegex.cc:match() to avoid a illegal memory access segmentation fault under OS-X 10.4.6. Inline comments provide greater detail. (ndp)

2006-05-31  James Gallagher  <jgallagher@opendap.org>

	ssize_t.m4: Added during most recent update.

2006-05-30  James Gallagher  <jgallagher@opendap.org>

	In gl/: Update to the gnulib code. This may fix a problem on OS/X where the gnulib regexec function appears to corrupt the stack.

2006-05-19  James Gallagher  <jgallagher@opendap.org>

	Various types (Int16, et c.): Removed include of ce_expr.tab.h since that header is included by Operators.h

	Makefile.am: Removed include of libgnu from libdapclient and libdapserver. This should fix the multiple define error at link time.

	ce_expr.y: fixed multiple use of the variable name 'table' in declarations.

2006-05-18  James Gallagher  <jgallagher@opendap.org>

	Makefile.am: reordered libraries and added ce_parser.h to DAP_HDR

2006-05-10  James Gallagher  <jgallagher@opendap.org>

	AISDatabaseParser.h, AISResources.cc, AISResources.h, Resource.cc: Updates to doxygen comments.

2006-05-08  James Gallagher  <jgallagher@opendap.org>

	Operators.h: Made dods_max() inline. This should improve performance and also fix a problem introduced by the recently applied AIX patch where dods_max() was multiply defined.

2006-05-04  James Gallagher  <jgallagher@opendap.org>

	INSTALL.AIX: Updated the information from Dan Stromberg and Martin Peschke.

	Operators.h, RValue.cc, deflate.c: Applied patches from Dan Stromberg which fix problems found during a port to the native AIX compiler.

2006-05-01  James Gallagher  <jgallagher@opendap.org>

	libdap.m4: Added DAP_CLIENT_LIBS and DAP_SERVER_LIBS to symbols that are written out.

2006-04-20  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-04-19  James Gallagher  <jgallagher@opendap.org>

	ce_expr.y: The expression parser now passes the ConstraintEvaluator object to projection functions.

	ConstraintEvaluator: Removed some code that was commented out.

	expr.h: The projection function typedef now includes a fourth argument so that the ConstraintEvaluator can be passed to the projection function. This provides a way for the proj_function to register the matching selection function.

	ce_parser.h: Added. Used to pass both the DDS and ConstraintEvaluator to the CE Parser.

	Auto reset of Subversion properties

2006-04-18  James Gallagher  <jgallagher@opendap.org>

	configure.ac, dap-config.in, conf/libdap.m4: bumped up the revision number to 3.7.0 (which will be the next revision), added options to dap-config --server-libs and --client-libs and updated the libdap.m4 macro to match the new three-library organization of libdap.

	expr.lex, expr.y, lex.expr.cc, expr.tab.cc: Removed/Replaced with ce_expr...

	Removed_functions.txt: Updated for the latest changes.

	lex.ce_expr.cc: Added

	expr-test.cc, tests/Makefile.am: Tests updated for changes in DDS, DODSFilter, et cetera.

	DODSFilter: Modified so that this class now takes a ConstraintEvaluator object in the places where needed.

	DDS: Removed the constraint evaluator and the send() method.

	BaseType.h and it's child classes: Now the serialize() method takes not only a DDS but also a ConstraintEvaluator object.

	ce_expr.lex, ce_expr.y, ce_expr.tab.{cc,h}: Added files that contains a modified ce parser. This parser takes two objects as input: ConstraintEvaluator and DDS. The old parser took only the DDS.

	ConstraintEvaluator: Added this class. Now the ce evaluator is separate from the DDS object.

	Clause.h: Added private methods for the const ctor and operator= so that default versions would not get called by accident.

	cgi_util.cc: Removed the do_data_transfer() function. Use DODSFilter.

	ce_functions.cc: Minor change to the func_length code. It no longer uses the 'constants' vector in DDS to store the BaseType used for the return value. The caller can easily free the storage. Also, this function is never used!

	INSTALL.AIX: Fixed spelling and added a note about not bugging Martin or assuming he's going to guarantee the steps will work.

	Makefile.am: Now builds the ce_expr parser in place of the expr parser. There's no real difference in the grammar accepted by the new parser, but ce_expr takes both the ConstraintEvaluator and DDS objects, where the old one took only the DDS.

	Operators.h: Now uses the ce_expr parser header.

	parser.h: Removed the GSEClause include that I'd commented out earlier.

2006-04-16  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Rename, add dirs and prune as appropriate for VC++ port

2006-04-04  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-04-03  James Gallagher  <jgallagher@opendap.org>

	gse_parser.h: Added. This holds parser info used by the grid() ce function. The contents of this file were originally in parser.h, which holds definitions for the DAP parsers. Moving the info about grid() here maens that the grid() code can be part of the dapserver library.

2006-04-03  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Edit 'scalar deleting destructors' out of win32 module def's

2006-03-31  James Gallagher  <jgallagher@opendap.org>

	For ticket 307 I modified the build so that three libraries are made instead of just one. The libdap library now contains only classes used for the DAP2 implementation. The client and server support code is now in libdapclient and libdapserver. Many files were modified since I trimmed the includes so that classes in libdapclient don't include headers in libdapserver and vice versa.

	Auto reset of Subversion properties

2006-03-30  James Gallagher  <jgallagher@opendap.org>

	Added INSTALL.AIX

2006-03-27  James Gallagher  <jgallagher@opendap.org>

	Massive propset on libdap to get svn to ignore many things so eclipse will work more smoothly

2006-03-24  James Gallagher  <jgallagher@opendap.org>

	Updated svn:ignore for some files.

2006-03-21  James Gallagher  <jgallagher@opendap.org>

	Build of docs/html.tar.gz for 3.6.2 on 3/21/06

	Auto reset of Subversion properties

2006-03-20  James Gallagher  <jgallagher@opendap.org>

	Moved tests/expr-testsuite/test.a to tests/expr-testsuite/test.10.

	test.c.exp: Removed log

2006-03-19  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Win32 libnc-dods requires core's regex.h installed.  None stock on windows.

	Update export module definitions per recent core changes

2006-03-16  James Gallagher  <jgallagher@opendap.org>

	NEWS: Spelling... one more time

	NEWS: Spelling...

2006-03-14  James Gallagher  <jgallagher@opendap.org>

	Updated ChangeLog, configure.ac, libdap.spec and NEWS for version 3.6.2

	I changed the way DODSFilter handles the compression sub-process. The class was caling waitpid on the child process which was blocking even after the child had exited. I found that calling fflush on the FILE* where teh server is writing the response is sufficient to guarantee that all the data from the compressor is written w/o using waitpod. This is a fix for ticket #335

2006-03-10  James Gallagher  <jgallagher@opendap.org>

	Added a new public method to Connect read_data_no_mime() which can be used to read from a file. This method read a DAP2 data object from a file but does not try to parse MIME headers before reading the data. I modified getdap.cc so that it uses this when reading from a file that's not stdin.

	Auto reset of Subversion properties

2006-03-09  James Gallagher  <jgallagher@opendap.org>

	Updated for 3.6.1

	Bumped up the version to 3.6.1. Files affected: configure.ac libdap.spec, INSTALL, README, NEWS.

	Updated tests/expr-testsuite/expr-test.0/test.c by changing its name to test.d so that Eclipse's indexer won't gag on it.

	removed unused test directories expr-testsuite and grid-func-testsuite

	Added -t option to DODSFilter.cc. This was left out by mistake.

	Changed tests from dodsdev to test.opendap.org

2006-03-08  James Gallagher  <jgallagher@opendap.org>

	Fixed the C++-style comment in deflate.c from a bug reprot from Jim Davis at Nasa.

2006-03-06  James Gallagher  <jgallagher@opendap.org>

	Updated for 3.6.0-2

	Increased the release number to two.

2006-03-05  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Trivial change in comment in win32 libdap makefile

	Redo recently clobbered changes from gl/ refresh

2006-03-01  James Gallagher  <jgallagher@opendap.org>

	Updated the OSX_Resources/Readme.txt file for 3.6.0.

2006-02-28  James Gallagher  <jgallagher@opendap.org>

	Updated grammar files and added rpm and OS/X package targets to Makefile.am

	Auto reset of Subversion properties

2006-02-27  James Gallagher  <jgallagher@opendap.org>

	Updated NEWS.

	Updated the Mac/OSX project file for 3.6.0

	Added unit-tests/testFile.cc: This provides a way to link the FILE* output code with C++ strings so that unit tests can work their magic.

	Updated documentation files (README, NEWS, ChangeLog), version information (configure.ac, libdap.spec) and removed two unused unit test files.

	Imported the latest gnulib code (see the Makefile.am in gl for the gnulib-tool arguments).

2006-02-25  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-02-24  James Gallagher  <jgallagher@opendap.org>

	Removed lines in Makefile.am that were commented out.

	Removed html.tar.z and added html.tar.gz

	Removed docs.tar.gz

	Added docs and docs/html.tar.gz

	Fixed up the regression tests so that they don't use deprecated Error methods.

	Removed LongIterAdapter.cc from tests

	Removed files no longer needed. Removed depreacted methods. Updated documentation.

2006-02-23  James Gallagher  <jgallagher@opendap.org>

	Removed most $Log$ entries since they are not supported by Subversion. Will do the rest tomorrow...

	Removed all the method overloads that used const char * parameters. Those methods were added so that the Pix objects, which were passed as void*, would not get called with character strings by mistake. Since the Pix methods are gone, these are no longer needed.

2006-02-21  James Gallagher  <jgallagher@opendap.org>

	I fixed the constructors for both PipeResource and StdinResource so that the parent class and fields were initialized in the correct order. I also fixed up the documentation for DODSResponseObject.

2006-02-21  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Tweek linker settings for libdap dll

2006-02-20  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Sync win32 makefile with unix version, rewrite

	Update module definitions for dll version of libdap

	Tweek for win32 port

2006-02-15  Patrick West  <pwest@opendap.org>

	fixed indentation

	commented out DataDDS constructor that doesn't take BaseTypeFactory

2006-02-15  James Gallagher  <jgallagher@opendap.org>

	DataDDS.cc: Added a call to protocol_string_to_numbers in the constructor. This sets the internal protocol version numbers so that calls to Sequence:: deserialize() work (they now use the protcol version number to select the correct algorithm for reading from the stream instead of the server version).

	AttrTable.cc: Corrected a problem in add_value_alias where looking for attributes could cause a segmentation fault. The problem was that AttrTable::find() was setting the return iterator to attr_end() for the AttrTable object it returned as a value-result parameter (so the test to see if the iterator was pointing to the end needed to be done using that table and not the calling object.

2006-02-14  James Gallagher  <jgallagher@opendap.org>

	NEWS and ChangeLog both updated.

	Auto reset of Subversion properties

2006-02-13  James Gallagher  <jgallagher@opendap.org>

	Modified the print_xml method in Constructor and grid. It no longer prints anything for variables that are not part of the current projection when printing the constrained ddx. This works because the DDS::mark method marks the parents of projected variables.

	Added PipeResponse.h and StdinResponse.h; changed getdap and Connect to use them.

2006-02-13  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Flush weekend win32 porting work back to trunk

2006-02-10  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Removed xdr routines from win32 subdir under libdap.  Code now in base tools used to build under win32.

2006-02-09  James Gallagher  <jgallagher@opendap.org>

	empty comment

	Removed all deprecated methods as per ticket 248. This includes Pix methods, ostream I/O methods used by servers and various junk in Connect.

2006-01-25  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2006-01-24  James Gallagher  <jgallagher@opendap.org>

	Added Removed_functions.txt: This file contains the type signitures of methods/functions recently (version 3.6 and later) removed.

	The ostream I/O was removed and many files were modified. The code is still present inside #if 0 ... #endif preprocessor lines.

2006-01-23  James Gallagher  <jgallagher@opendap.org>

	All unit tests updated to work after removing the iostream functions/methods.

2006-01-19  James Gallagher  <jgallagher@opendap.org>

	Added protocol version to the library. The version number is set in the configure.ac file. I've modified the unit tests so that they work. I've also removed (#if 0 ... #endif) all of the MIME header functions which used the C++ iostream stuff (which is part of the task to remove deprecated code).

2006-01-12  James Gallagher  <jgallagher@opendap.org>

	Updated ChangLog

	DDS.cc: transfer_attributes used odd logic and an unneeded variable. Fixed.

	expr-test.cc: changed new exception code to use fprintf() (it was using cerr).

	GSEClause: Removed the old, unimplemented, methods that were supposed to take the grid() function subexpressions. Fixed up some comments in the class as well.

	cgi_util.cc: In remove_mime_header() \n was used as the MIME header separator when CRLF should have been used. Since the rest of the code was fixed for 3.5.3, remove_mime_header() didn't find the separator. This broke the HTML form response.

2005-12-30  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Work toward accomodating gcc under mingw

2005-12-27  James Gallagher  <jgallagher@opendap.org>

	Installed GNU indent code formatter to eclipse and used it on expr-test.cc

	In expr-test, the function parse_mime() did not test for the new CRLF line terminator. This caused an infinite loop. Fixed. I also added a comment to cgi-util.cc noting that if the CRLF constant is changed, then the one in expr-test.cc should be changed too. Since the test code is, well, test code, it doesn't seem like the constant should be moved out into one of the header files. The CRLF constant is really used only by the cgi-util code.

	Removed regex.loT

2005-12-23  James Gallagher  <jgallagher@opendap.org>

	Removed extra qualtification on the private method Regex::init in GNURegex.h.

	Removed the send version method body and replaced it with a call to do_version() in cgi_util.cc. This consolodates the code that writes HTTP headers to one file.

	Changed all calls to fprintf that write parts of the HTTP resonse header so that they terminate lines using CRLF pairs and not just LF (\n or 0x0a). I also fixed the spelling of Content-Type (the 'T' in 'Type' was not capitalized).

2005-12-12  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Missing colon in switch from recent porting tweeks.

2005-12-11  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	ifdef profoundly-non-portable signal handling code.  Windows has few signals.

	Hardcode blocksize on win32

	Reverse ancient VC++ 6.0 template hacks.  Microsoft has come toward the standard.

2005-12-05  James Gallagher  <jgallagher@opendap.org>

	Updated

2005-11-22  James Gallagher  <jgallagher@opendap.org>

	Made docs a PHONY target

	Fixed source0 using Patrice's patch

2005-11-16  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2005-11-15  James Gallagher  <jgallagher@opendap.org>

	Added commentary

	Added/Hacked

2005-11-11  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2005-11-10  James Gallagher  <jgallagher@opendap.org>

	Added note about dejagnu not working on some systems unless config.guess is linked here or at the top.

2005-11-09  James Gallagher  <jgallagher@opendap.org>

	The XML schema site has chamged to xml.opendap.org. I stopped testing these values because that's not really what the DDS class unit tests should be looking at.

	The set of chars allowed in an identifier was enlarged to include %. The secind test was altered to fit that.

2005-10-31  James Gallagher  <jgallagher@opendap.org>

	Hacked up the pkg target so that the dap-config script has the correct values for the places where the osx package will be installed, not where the build dumps it prior to packaging.

2005-10-25  Patrick West  <pwest@opendap.org>

	added function to access the libdap name from PACKAGE_NAME

2005-10-25  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2005-10-24  James Gallagher  <jgallagher@opendap.org>

	Added

2005-10-18  James Gallagher  <jgallagher@opendap.org>

	Update from build after failed attempt to remove Pix.h

	Fixed som grammatical problems with the DDX response.

2005-10-12  James Gallagher  <jgallagher@opendap.org>

	Updates to the documentation files.

2005-10-07  James Gallagher  <jgallagher@opendap.org>

	escattr() no longer uses Regex.

	Updated to match the new libdap behavior for escaping.

2005-10-05  James Gallagher  <jgallagher@opendap.org>

	I made the standard print representation of a Grid use Array and Maps instead of ARRAY and MAPS. So I fixed the tests too.

	Don't have these in svn.

	Don't have these in svn.

	Fix for ticket #44 (which was filed under the hdf4 handler). I made the set of characters not escaped by id2www and id2www_ce the same as those that dds.les and expr.lex expect in an id. Actually the asterisk is escaped even though dds.lex will parse it,

	Auto reset of Subversion properties

2005-10-04  James Gallagher  <jgallagher@opendap.org>

	Fixed the background one last time

	Added a background image to the osx installer

	Added

	Updates for the OS/X packages stuff.

2005-10-03  James Gallagher  <jgallagher@opendap.org>

	Nodified cleanup to not copy the svn parts of dods_cahce_init when it makes dods_cache. This will help keep Eclipse's svn module from being confused.

	Build improvements from Patrice Dumas.

2005-10-03  Patrick West  <pwest@opendap.org>

	calling fflush rather that fclose in send_data

2005-10-01  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2005-09-30  James Gallagher  <jgallagher@opendap.org>

	Updated NEWS with info about regex.

	Updated for the changes to Regex.

	Added

2005-09-29  James Gallagher  <jgallagher@opendap.org>

	Removed regex from esc2undescore.

	Fixed an error in char2ASCII.

	Grammar update

	Fixes for gnulib regex code.

2005-09-28  Yuan Ho  <yuanho@ucar.edu>

	adding install include dir

2005-09-28  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2005-09-27  Yuan Ho  <yuanho@ucar.edu>

	adding install script

2005-09-27  James Gallagher  <jgallagher@opendap.org>

	New libtool

	Comment about the hack...

	New grammar generated files and some temporary fixes in gl/m4/regex.m4

	Fixed an error where a signed and unsigned were compared.

	Added new copy.

	New gnulib changes; first half, removing the old gl code. I don't think this was necessary, but it's hard to tell.

2005-09-23  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2005-09-22  James Gallagher  <jgallagher@opendap.org>

	Fixed install-sh; it was left out of the earlier mv

	Moved the configuration files into 'conf.'

	Changed the das lexer error message to include a character code.

2005-09-19  Patrick West  <pwest@opendap.org>

	missing declaration of BaseType

2005-09-16  James Gallagher  <jgallagher@opendap.org>

	Added code to DODSFilter so support its use in something other than a Unix command line filter program. In the process I found a bug in escaping.cc:escattr() (ticket 210) which I fixed.

2005-09-08  James Gallagher  <jgallagher@opendap.org>

	Fixed a bug where _REENTRANT is defined and HAVE_STRFTIME is not. This shows up on FC3/4 but not RHEL3 or OS/X.

	Removed

	Auto reset of Subversion properties

2005-09-07  James Gallagher  <jgallagher@opendap.org>

	Build update

	Added

2005-09-06  James Gallagher  <jgallagher@opendap.org>

	Added alloc to gl_MODULES; for the os/x build.

	Added the new gl directory.

	Clean up.

	Midway through resetting gl to only use the regex code.

2005-09-03  James Gallagher  <jgallagher@opendap.org>

	Auto reset of Subversion properties

2005-08-19  James Gallagher  <jgallagher@opendap.org>

	Updated libdap.spec so that it now requires libcurl 7.10.6 (a downgrade from 7.12.0 so that we can build RPMs on RHEL3). This seems to work just fine. Also fixed up the HTPPCacheTest unit test so that it works the first time with a new check out.

	downgrade to libcurl-7.10.6. This seems to work but needs more testing

2005-08-17  James Gallagher  <jgallagher@opendap.org>

	Another shot at getting the build to work...

	Build fixes; rpms now split into plain and -devel; fix for libdap.m4 macro

2005-08-16  James Gallagher  <jgallagher@opendap.org>

	Patched libdap.m4 (from Patrice) and added text the README describing the macro.

	Commented out the set of CFLAGS/CXXFLAGS (which was a left-over from the non-automake build).

2005-08-15  James Gallagher  <jgallagher@opendap.org>

	Updated for the release of 3.5.2.

2005-08-12  James Gallagher  <jgallagher@opendap.org>

	Added back.

	Test delete

2005-08-11  James Gallagher  <jgallagher@opendap.org>

	config_dap.h --> config.h; also removed TRACE_NEW, #pragma interface/impl. in test and unit-tests.

	Removed trace_new.h; use valgrind instead.

	Removed #pragma interface/implementation

	So, I added IteratorAdapter.cc back in again.

	Hmmm... Eclipse still doesn't seem to get the deletes quite right.

	Tests updated for new float32 and 64 value computation.

	Changed how sequential values are generated. The values should be the same on 32 and 64-bit machines.

	Updated...

	I removed the DODS_GTAR and DODS_PERL calls; Added AC_DEFINE for two version sof libxml2 and stripped away some code that was commented out months ago.

	Resolved conflicts & added some comments about the state of the test driver.

	Clarified commentary.

	Added conditional compilation of the XML SAX callback struct. The code now uses the library version number to determine which fields should be included since later version have additional fields.

	Removed unused params in methods as reported by gcc 3.4. This may break gcc 3.2, we will see...

	Removed unused params in methods as reported by gcc 3.4. This may break gcc 3.2, we will see...

2005-08-10  James Gallagher  <jgallagher@opendap.org>

	Changed comparison in set_max_size() so that it uses ULONG_MAX (since the method uses a long) and does not test for negative sizes (since size is unsigned).

	Moved debug options from AM_CXXFLAGS. Set the CXXFLAGS environment variable (sample values are assigned to CXXFLAGS_DEBUG).

	commented out #define DODS_DEBUG 1

	Reverted to previous version (which uses long instead of int). The change breaks the unit tests (which otherwise work on both 32- and 64-bit machines.

	Added

	Latest and greatest eclipse/cdt settings...

	Addressed various warnings from gcc (compiled using -Wall -W -Wcast-align) as part of making the code 64-bit clean.

	Added default init of TestCommon in the copy ctors for the TestByte, ... classes.

	Added proper error return to all unit tests.

	Now GNURegex uses exceptions (std::invalid_argument and domain_error) to signal problems. Controlled using USE_EXCEPTIONS. If this passes on the nightly builds, then remove GNUerror.cc and builtin.h.

	Fixed read() method: It did not include the 16-bit int types int he switch statement.

2005-08-08  James Gallagher  <jgallagher@opendap.org>

	Fixed a leak where a specialization of BaseTypeFactory was used but not deleted.

2005-08-08  root  <root@opendap.org>

	Auto reset of Subversion properties

2005-07-28  James Gallagher  <jgallagher@opendap.org>

	Changes for the OS/X build. Particularly for the regex code in gl.

2005-07-25  James Gallagher  <jgallagher@opendap.org>

	Fixed; the macro was using ifelse and m4_syscmd/m4_sysval but these didn't seem to be working. Also replaced obsolete AC_TRY_TUN with AC_RUN_IFELSE().

2005-07-23  James Gallagher  <jgallagher@opendap.org>

	Added libdap.m4: A macro that other packages can use to check for the library. From Patrice Dumas.

2005-07-22  James Gallagher  <jgallagher@opendap.org>

	Updated requirements for automake, et cetera.

	Updated for automake 1.9.6.

2005-07-21  James Gallagher  <jgallagher@opendap.org>

	Removed calls to OK() in the set_error_code() and set_error_message() methods since these are called by the parser on partially built objects.

2005-07-20  James Gallagher  <jgallagher@opendap.org>

	Improved the documentation of BaseTypeFactory; removed DEFAULT_BASETYPE_FACTORY from Makefile.am; added a note to util.cc:prune_spaces questioning if that function is still needed; added a test of prune_spaces to generalUtilTest.

	Removed DEFAULT_BASETYPE_FACTORY switch. Updated build files using autoreconf --install --force (using automake 1.9.2 from FC3).

2005-07-19  James Gallagher  <jgallagher@opendap.org>

	Updated cdtproject file. Should this be in SVN?

	Added gl/m4 to EXTRA_DIST; needed to get the distcheck target workig with automake 1.6.3. Newer versions of automake set this correctly given that ACLOCAL_AMFLAGS is used.

	Removed $(top_srcdir) from ACLOCAL_AMFLAGS since this breaks autoreconf.

2005-07-18  James Gallagher  <jgallagher@opendap.org>

	Changed ACLOCAL_AMFLAGS from '-I gl/m4' to '-I $(top_srcdir)/gl/m4' to fix one last problem with distcheck.

	Applied Patrice's patch for unit-tests; make distcheck should now work.

	Changed the cache dirs with initial values to <cache>_init and use the cleanup.sh script to cp -r <*>_init <*> to restore them. This way the tests work w/o svn.

	Added blurb about using autoreconf to (re)build the autotools stuff.

2005-07-15  James Gallagher  <jgallagher@opendap.org>

	Updated Makefile.am and the README/INSTALL/NEWS files. The 'dist' target now works for make (although 'distcheck' fails for an odd reason).

	Copied/added

	Removed

	Moved/Added

	Moved the unit tests from 'tests' to 'unit-tests.' The unit tests are now only run when you cd into unit-tests and use make check. This change was made because those tests use network services which might not be present on some hosts used to build the package.

	More fixes for the tests

2005-07-14  James Gallagher  <jgallagher@opendap.org>

	Fixed again...

	Removed extra line. This hosed the test since it causes the HTTPCache class to think there's a second zero-size entry.

	Updated

	Updated

	Updated

	Changed URL; chages cache directory number

	AISMergeTest now works (required files are now installed on test.opendap.org). Also, applied Patrice Dumas' patch for the Makefile.am.

2005-07-13  James Gallagher  <jgallagher@opendap.org>

	Fixed HTTPConnectTest

	Spec file now includes support for a separate devel package (commented out). From Patrice Dumas.

	expr-test tests x, xa, xc, y, ya, and yc now expect to fail (and do on 64bit hosts).

	The last fix for this file? I hope so...

2005-07-12  James Gallagher  <jgallagher@opendap.org>

	Added data files for tests in DDSTest. Bug 112.

	mistakenly removed alloca_.h from svn. Fixed tests/cache_testsuite.

	Test updates: expr-test now works except that 6 tests fail on 64bit machines. Also, I updated the gnulib replacement functions so that gnulib-tool can be used in the future to update. I moved the gnulib functions into the 'gl' subdir and put the m4 macros in there inside the subdir 'gl/m4.' There's a note about the procedure to use to update the functions in INSTALL.

	Added again...

	removed

	Added

	Removed

	Removed.

2005-07-11  James Gallagher  <jgallagher@opendap.org>

	My previous fix for the gnulib mktime bug was bogus since it left a replacement copy of mktime in the library using that name (which is reserved). I've stopped using the gnulib mktime for now since it doesn't seems absolutely necessary.

	Modification from Patrice, et al. These were part of an attempt to work around a bug with using mktime but they did not work.

2005-07-08  James Gallagher  <jgallagher@opendap.org>

	Moved all tests to the 'tests' subdirectory. There are some tests that are broken; only expr-test seems broken now but was not before. Most of the broken tests require a localhost web daemon and specific test files for it to serve; configure test.opendap.org for these instead.

	Removed use of the GPL regex-0.12 code and switched to gnulib (which provides regex and other functions which are covered by LGPL). These turned out to be fairly massive changes. The work was done by Patrice Dumas (Thanks!). I removed a AC_DEFINE macro in m4/mktime.m4 to work around a compilation problem when using gnulib's mktime.c replacement function.

2005-07-06  Patrick West  <pwest@opendap.org>

	Added methods to Connect class to connect with the given URL instead of building the URL to connect with, such as adding .das, .dds, etc...

2005-07-05  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Set eol-style to native on all text file in the trunk

2005-07-05  James Gallagher  <jgallagher@opendap.org>

	Fixed the library version numbers. The order was backwards for the last two digits.

2005-07-04  James Gallagher  <jgallagher@opendap.org>

	Added Patrice Dumas' patches for libtool, et cetera.

2005-07-01  James Gallagher  <jgallagher@opendap.org>

	Moved the unit tests into the tests subdirectory.

	After adding libtool support, I ran autoreconf --force --install which in turn ran libtoolize. this updated a number of the support code for the build. Added ltmain.sh.

	Added. These generated files should be in svn.

	Added support for libtool using a patch from Patrice Dumas.

	Set exec

	ModifiedMakefile.am so that the dejagnu_driver.sh script now works.

2005-06-30  James Gallagher  <jgallagher@opendap.org>

	Automake changes; these work and build the tests. the DejaGNU test support has not been tested yet but the unit tests all run and the dejagnu drivers all build.

	Switched to automake. Not complete but functional.

	Applied patch from Patrice Dumas for the automake build.

2005-06-22  James Gallagher  <jgallagher@opendap.org>

	Added for automake build

	Started work on an automake file for this code; only partly done. The library builds but nothing else is in place. The grammars are in progress. They build but the way gse is handled is the the way they all should be unless I can get automake's lex/yacc rules to work. See Makefile.am.in_progress and configure.ac.for_am. Also included in this check in is a patch to libdap.spec from Patrice Dumas.

	Remove the attempts to utilize automake's support for bison/flex introduced in the past 9 revisions.

2005-06-21  James Gallagher  <jgallagher@opendap.org>

	moved...

	checkpoint

	moved from *.lex files for automake

	Moved from gse.lex for automake

2005-06-20  James Gallagher  <jgallagher@opendap.org>

	Fixed the source path.

	Commented out the Patch: and %patch lines since the patched code is now in svn.

	Accepted patches from Patrice Dumas <pertusus@free.fr> which improve the build by using the system's regex library if found. Also included in the patches were improvements to the rpm spec file; the file now uses the fedora template and includes a fix for Mandrake ('Tue' --> 'Tues' in the change log.

2005-06-15  James Gallagher  <jgallagher@opendap.org>

	Fixed configure so that it does not include -gstabs on OS/X.

	Changed eol-style, mime-type, other properties. Removed generated files from svn. Modified configure.ac so that it tests for bison and does not use bison -y.

	Generated... Should these even be in SCM?

2005-05-23  James Gallagher  <jgallagher@opendap.org>

	Removed cast to int at tokenlength = ... to avoid a warning about differring pointer and int sizes on x86 64-bit CPUs.

	Now uses local common-tests.exp and test.opendap.org.

	Tests now use the local copy of common-tests.exp.

	Reformat using indent and indent-eclipse plugin.

2005-05-17  Patrick West  <pwest@opendap.org>

	updated dap_version using libdap_version

2005-05-13  James Gallagher  <jgallagher@opendap.org>

	3.5.1

	3.5.1

	checkpoint

2005-05-12  James Gallagher  <jgallagher@opendap.org>

	moved

	Renamed libdap-config to dap-config to fall in line more with what other projects are doing.

	05/12/05 jhrg

	Modified install so that it no longer appends a version number to the static library or includes. When we build a dynamic lib, look into the version number thing then.

2005-05-11  James Gallagher  <jgallagher@opendap.org>

	5/11/05

2005-05-10  James Gallagher  <jgallagher@opendap.org>

	Changed to work with rpm. Don't alter the values of variables like $includedir because values for these are passed into make by rpmbuild, overriding the values set by the here. This was happening with $includedir which had the string '/libdap' appended early on in the Makefile and then @PACKAGE_VERSION@ appended in the install-header target. When 'make' was run from the command line, this worked OK, but not when rpmbuild passed in a new value for $includedir.

	Added

	5/10/2005

2005-05-06  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	3.5.0

	3.5.0

	Added a short blurb about the AIS and a pointer to README.AIS

2005-05-05  James Gallagher  <jgallagher@opendap.org>

	3.5.0

	Updated.

	Updates for 3.5.0 release.

	3.5.0

	Updated for version 3.5.0

	Made libdap-config executable

	Added

2005-04-22  James Gallagher  <jgallagher@opendap.org>

	Version 3.5.0 builds; passes most tests

	Checkpoint

	Added

	checkpoint: changes made on the mac

2005-04-21  James Gallagher  <jgallagher@opendap.org>

	Checkpoint: Build works

	Removed PTHREADS compile-time switch. Also, checkpoint for the build work.

2005-04-20  James Gallagher  <jgallagher@opendap.org>

	Updated build.

	Added

	Updated for the new CVS module.

	Moved configure.in to configure.ac

2005-04-18  Patrick West  <pwest@opendap.org>

	Remove dependence on _program_type and _program in OK method

2005-04-15  James Gallagher  <jgallagher@opendap.org>

	04/15/05 jhrg

	Remove include of config_dap.h from HTTPCache.h.

	Removed include of config_dap.h; builders must use opendap-config --cflags when they compile code which using the headers.

2005-04-07  James Gallagher  <jgallagher@opendap.org>

	Updated doxygen comments: fixed errors; updated comments about set_read_p. Removed the VirtualCtor classes. Added a README about the factory classes.

2005-03-30  James Gallagher  <jgallagher@opendap.org>

	Ran depend.

	Modified to use the new factory class.

	Now uses the BaseTypeFactory class.

	Added.

	Minor mod: ... != "" --> !....empty(). Using string::empty() may be more efficient.

	Now uses the BaseTypeFactory class.

	Now uses the BaseTypeFactory class.

	Added DEFAULT_BASETYPE_FACTORY define; use this to control whether the DDS objects suppy the BaseTypeFactory by default.

	Modified the length function (func_length()) so that it uses the DDS object's BaseTypeFactory to make the Int32 variable that holds the result.

	Added.

	Now uses the BaseTypeFactory class.

	Added DEFAULT_BASETYPE_FACTORY define; use this to control whether the DDS objects suppy the BaseTypeFactory by default.

	Added

2005-03-23  Patrick West  <pwest@opendap.org>

	algorithm and functional needed on sun and can be included on Linux, so no need to wrap in ifdef WIN32

2005-03-22  James Gallagher  <jgallagher@opendap.org>

	Added to doc/comments.

2005-03-21  James Gallagher  <jgallagher@opendap.org>

	Removed old definitions of DBYTE, et c.

2005-03-18  James Gallagher  <jgallagher@opendap.org>

	Probing for leaks...

	Mods for unit tests; tracking down memory leaks.

	Updated the old URI Copyright; removed clause about requiring credit in publications. This was never really intended and is probably unenforcable.

	Added fclose(tmp) call to print_xml_test() to address part of a memory leak in get_temp_file() that shows up with valgrind.

2005-03-17  Patrick West  <pwest@opendap.org>

	file and directory utilities

2005-03-02  James Gallagher  <jgallagher@opendap.org>

	RemovedConnections.cc/h; now in nc3-dods.

	Removed Connections.{cc,h} from the headers; this is now part of the netCDF CL code.

2005-02-24  James Gallagher  <jgallagher@opendap.org>

	A throw Error line was left in deserialize() by mistake; I removed it.

2005-02-16  Patrick West  <pwest@opendap.org>

	implemented read

	doxygen comments

	d_str changes to ::var, ::serialize and ::deserialize

2005-02-14  James Gallagher  <jgallagher@opendap.org>

	Fixed handling of strings. No longer frees storage quite a capriciously.

	Added d_str, a field to hold string values.

	Added code to use the new d_str field; a special field to hold strings.

	Added tests for strings and structures.

2005-02-11  James Gallagher  <jgallagher@opendap.org>

	Fix for bug 751: Uint16/32 --> UInt16/32 as per examples in the DAP2 specification.

2005-02-10  James Gallagher  <jgallagher@opendap.org>

	Fixed eclipse/cvs comment.

	_duplicate() now performs a deep copy on the BaseType* instances used to \n\ hold values in the field _vec (used when there's a Vector of Structures, et c.). set_vec()\n\ now calls ptr_duplicate() on the BaseType* passed in to be used as a value for \n\ element i. This might seem odd (and it might hose performance, we may have to \n\ add another method to skirt the copy for some people) but it fits with the \n\ memory model where anything allocated outside the library can be freed outside the \n\ library. Not performing the deep copy and then freeing the objects in _vec in the dtor\n\ caused all sorts of problems, as one might imagine. I also fixed up the comments.

	Added.

	Added ArrayTest which currently tests the _duplicate() method of Array (and Vector).

	Added ArrayTest as a friend class.

	Replaced old style cast with static_cast in val2buf.

2005-02-08  James Gallagher  <jgallagher@opendap.org>

	Merged with release-3-4-10.

	Added -Wno-unused to the lexer compilation so I don't have to hear about yy_fatal_error() not being used.

	Removed parens around 'string *' at line 735; gcc-3.4 complained.

2005-02-02  James Gallagher  <jgallagher@opendap.org>

	Checkpoint

2005-01-28  James Gallagher  <jgallagher@opendap.org>

	Resolved conflicts from rlease-3-4-9 merge. Also minor change to expr.y to support Sequence CEs that use the Array projection notation.

	Resolved conflicts from merge with release-3-4-9

	01/28/05 jhrg

2005-01-27  James Gallagher  <jgallagher@opendap.org>

	Modified the expression processing code in expr.y so that array-style projections on the fields of Sequences work. They should project that field of the Sequence. To test I will merge in new changes on the 3.4 branch for the dap only.

2004-11-30  James Gallagher  <jgallagher@opendap.org>

	Updaed comments.

2004-11-17  James Gallagher  <jgallagher@opendap.org>

	I made the var_value() methods (among others) virtual. This will allow me to subclass them in the netCDF CL.

2004-11-16  James Gallagher  <jgallagher@opendap.org>

	Fixed tests. Also fixed a bug intorduced in Vector where a template with no name caused some software (any code which depends on the template having the same name as the array) to fail.

	Added reverese iterators.

	Changed the prototype for add_var() so that it takes three arguments. This matches the version used elsewhere in the type hierarchy and fixes some glitches with subclasses calling the correct method, esp. in the netCDF CL.

	Modified the ctor and add_var() method so that a null variable can be added as a template.  This makes it possible for a client of the library to create an Array without allocating its template. This is used by the netCDF CL's translation software when it needs to create a set of arrays that have the same dimensions. The 'master' array object is created and then duplicated when each of the different template variables are created/added.

	Added.

	Added accessors for reverse iterators.

	Added accessors for the new reverse iterators. Also added a new method to access variables using an integer index.

	Added subclass version of add_var(). This version looks at the variable being added and, if it's an Array adds the template variable. It calls Vector::add_var() to actually add the variable.

2004-11-15  James Gallagher  <jgallagher@opendap.org>

	Added reverse iterator methods.

	Added a specialization of the add_var() method.

	Added a btp_stack paramter to var() so that it will match the prototype declared in BaseType. This fixed a problem in the inhertiance hierarchy

2004-10-22  James Gallagher  <jgallagher@opendap.org>

	Formatting...

	Modified del_attr_table() so that it returns the Attr_iter following the one that has just been deleted.

	toString() now uses type_name() in place of type().

	I've set the code to always build with debugging enabled until we are ready to release.

2004-09-16  James Gallagher  <jgallagher@opendap.org>

	Fixed the return values of buf2val() and val2buf(). They now return the size of a std::string pointer, std::string.

	Corrected the commets for set_vec() and buf2val().

2004-09-09  James Gallagher  <jgallagher@opendap.org>

	Fixed a bug in is_end_of_rows(): The d_ending_row_number field was not checked correctly. Constraints for a single row such as [0], [0:0], [1:1:1], et c., did not work properly. If a CE of [0:1] was given, the response which should have been returned from [0:0] was returned. Fixed by replacing >= with > in the test of d_ending_row_number.

2004-08-25  James Gallagher  <jgallagher@opendap.org>

	I added a second test to del_attr_table() to check the case when a scalar attribute is followed by a container. I also fixed a typo in append_container()'s error message text.

	I modified DDS::transfer_attributes() so that the _dim_? attributes generated by the HDF4 server will be added to their variable's attr table directly and not result in a nested table. This seems closer to the organization clients expect.

2004-08-03  James Gallagher  <jgallagher@opendap.org>

	Fixed for the changed definition of find().

	Fixed up the clean target WRT the tests and docs subdirs.

	Added a test for transfer_attributes().

	I changed the three static functions that are helpers for transfer_attributes() to methods. This makes them easier to test, although I never wrote any unit tests for them...

	I fixed a number of problems with the transfer_attributes() method and its support functions. First, instead of searching the top level variables, the code now searches using the var() method, which can find variables when only the leaf node name is given. The code that processes global attributes is now much smarter about what a global attribute container really looks like (it ignores empty containers if another candidate is present and actually has some attributes). Finally, the _dim_0, _dim_1, et c., attributes generated by the HDF4 server are now grouped with the variable to which they refer. Before they were lost.

	Added a test for del_attr_table().

	Fixed an error in clone() and added del_attr_table(Attr_iter).

	Fixed comment/doc errors. Added del_attr_table().

2004-08-03  Neil Godfrey  <neil@thegodfreys.net>

	...second half of the test.

	testing Neil's account.

2004-07-19  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Updates to get the core to build off the trunc after a merge.

	#include <functional> for "unary_function" under win32.

	Remove use of function under win32 via #ifdef.  It uses mkstemp.

	Patch after merge problem regarding OS X.

	Update trunc for win32 after a merge.

2004-07-18  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Make the regular-expression code compile under OS X.

	Make the Regular-expression code compile under OS X.

2004-07-09  James Gallagher  <jgallagher@opendap.org>

	Update from merge: regex-0.12 added; Makefiles rebuilt.

2004-07-09  Patrick West  <pwest@opendap.org>

	Adding Passive Data Model objects

	Parent class of DAS and DDS

2004-07-07  James Gallagher  <jgallagher@opendap.org>

	Merged with release-3-4-8FCS

	Merged with release-3-4-8FCS

2004-06-28  Patrick West  <pwest@opendap.org>

	Added DODSResponseObject and Passive data model objects

	Adding compile date and time to version

	saving string representation of response type

	html mime header

	Inherit DDS and DAS from DODSResponseObject

	Passive data model objects

	unix compiler issues

2004-06-27  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Patch for recent core changes.

	Get it compiling under win32 again by including <functional>

	Get it to compile under win32 by including <functional> and <algorithm>

	Remove out-of-date dependancies.

2004-04-12  James Gallagher  <jgallagher@opendap.org>

	Removed obsolete CURLOPT_MUTE.

2004-03-10  James Gallagher  <jgallagher@opendap.org>

	Repairs to the methods which provide access using iterators. These were using '*_iter &' type params and that made newer versions of g++ gag. I'm not absolutely sure what the problem was, but making the parameters regular value params and not references fixed it.

2004-03-01  James Gallagher  <jgallagher@opendap.org>

	Bring the trunk up to date with the code in my working directory...

2004-02-19  James Gallagher  <jgallagher@opendap.org>

	Merged with release-3-4-2FCS and resolved conflicts.

2004-02-18  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

2004-02-05  James Gallagher  <jgallagher@opendap.org>

	Removed strstream include.

	Switched from strstream to stringstream.

	Fix for bug 696; removed an errant 'ends' call in octstring(). Never use ends with the stringstream classes.

2004-01-26  James Gallagher  <jgallagher@opendap.org>

	Build fixes.

2004-01-23  James Gallagher  <jgallagher@opendap.org>

	Grammar regeneration (removed List.h; must rebuild the *.tab.c files and commit them to CVS).

	Removed errant DBG() with d_ver field (that field is no longer part of the class.

	01/23/04 jhrg

2004-01-22  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Merged with release-3-4.

	Added *.y files to XXX.tab.o dependencies. Maybe this will fix the odd problems with bison files and the tab.o files...?

	Fixed an error in the clean target; the docs directory was not removed.

2004-01-21  James Gallagher  <jgallagher@opendap.org>

	Added dot path so that a class graph and changed tabs to four spaces.

	Removed include of List.h.

2003-12-10  James Gallagher  <jgallagher@opendap.org>

	More fixes after resolving conflicts. This code still fails some tests.

	Merge with 3.4. Some of the files contains erros (some tests fail). See the ChangeLog for information about fixes.

2003-12-08  Ethan Davis  <edavis@ucar.edu>

	Merge release-3-4 into trunk

2003-09-30  James Gallagher  <jgallagher@opendap.org>

	Changes from the release-3-4 branch were small (and there was no change here); I copied the file since we're not yet ready to merge the 3.4 branch but need the new file to work on translation (over in nc3-dods).

2003-09-25  James Gallagher  <jgallagher@opendap.org>

	Misc changes.

	Made local functions static.

2003-09-05  James Gallagher  <jgallagher@opendap.org>

	Added

	Added

	Added

	Added

2003-06-02  James Gallagher  <jgallagher@opendap.org>

	Added support for retrieval of the dodsBLOB url. The intern() method takes a point to a string; on return from the call the referenced string holds the blob url.

2003-05-30  James Gallagher  <jgallagher@opendap.org>

	Refactor, first pass, complete.

	Parser now parses all data types correctly.

	Parser now parses all data types correctly. Needs to be refactored so common code can be combined.

	get_name() is now a const method. Added alias support to the print_xml() method.

	Made get_name() a const method.

	Minor fixes to the comments.

	Modified transfer_attrs() so that aliases are supported. Unfortunately, aliases are broken in the C++ code and in their design, so this addition/fix is of limited use.

	Added response enums for DDX and Response. Also added the send_ddx() method.

	Modified add_var() so that the array only adopts the name of the template variable when that name is not null!

2003-05-29  James Gallagher  <jgallagher@opendap.org>

	Parses top level attributes and simple variables.

	Added.

2003-05-28  James Gallagher  <jgallagher@opendap.org>

	Fixed spelling in one of the error messages (!)

	Added.

2003-05-27  James Gallagher  <jgallagher@opendap.org>

	Added DDX_Response to the set_response() method.

2003-05-24  James Gallagher  <jgallagher@opendap.org>

	Ran depend; removed List.o

2003-05-22  James Gallagher  <jgallagher@opendap.org>

	Changes that add support for the DDX response. I've based this on Nathan Potter's work in the Java DAP software. At this point the code can produce a DDX from a DDS and it can merge attributes from a DAS into a DDS to produce a DDX fully loaded with attributes. Attribute aliases are not supported yet. I've also removed all traces of strstream in favor of stringstream. This code should no longer generate warnings about the use of deprecated headers.

2003-05-16  James Gallagher  <jgallagher@opendap.org>

	Changed s_as_string so that it uses the correct value for _type for 's.' This value changed since I got rid of List.

2003-05-15  James Gallagher  <jgallagher@opendap.org>

	Tests changed because List has been removed from the DAP.

	Test changes because List has been removed from the DAP.

	05/15/03 jhrg

2003-05-13  James Gallagher  <jgallagher@opendap.org>

	05/13/03 jhrg

	MOdified DODSFilter so that it takes a -o switch which names the type of response to generate. This can be used to build a single hander which can return all of the responses.

2003-05-02  James Gallagher  <jgallagher@opendap.org>

	Fixes for the tests and win32 builds.

	Minor fixes: Fixed a spelling mistake and removed #if 1 ... #endif. Mostly I wanted this code in for the 3.4 branch.

2003-05-01  James Gallagher  <jgallagher@opendap.org>

	Modified the code so that perform_garbage_collection() is called only when startGC() is true. This should minimize the time spent scanning the entry entry table.

	Changed catch(...) statements to ones which explicitly declare the types of exceptions (all Error, I think). If these catch clauses re-throw the exceptions ad the method declares its exceptions, the (...) causes an immediate call to abort().

	Changed some of struct Functors to classes.

	Fixed a bug in the code that handles conditional requests. Once a conditional request was made, the curl_slist was freed but the HTTPHEADER option (set with curl_easy_setopt()) was not cleared. Subsequent calls to curl_easy_perform() would try to use the freed slist with predictably bad results. Also removed strstream code in place of Rob's stringstream replacement for Win32.

	Fixed another class interface lock bug. It would be better to lock class resources (fields) and name them so that it was obvious which were locked and by what mutex. Also, made sure garbage collection happens every time the index file is written out.

	Corrected the get_conditional_response_headers_test() given the latest mods to HTTPCache.cc.

2003-04-23  James Gallagher  <jgallagher@opendap.org>

	Changes for the unit tests. This involved merging Rob's VC++ changes and fixing a bug in escaping.cc (a call to string::insert invalidated an iterator in a loop).

2003-04-22  James Gallagher  <jgallagher@opendap.org>

	Merged with 3.3.1.

2003-04-02  Patrick West  <pwest@opendap.org>

	Upgraded tests to use cppunit, some with DBG2 statements

	Added doxygen comments to iterator adapter classes

	Fixed bug in parser-util that did not recognize illegal characters when checking float32 and float64 strings, added tests to parserUtilTest to test for illegal characters as in das-test, updated das-test as in 3.3 version.

2003-03-14  James Gallagher  <jgallagher@opendap.org>

	I tidied up process_data and changed its name to print_data. Removed <assert.h>. Added more instrumentation.

2003-03-13  James Gallagher  <jgallagher@opendap.org>

	merge() throws Error, now. Also, get_ais_resource() throws Error if the ais resource is a file and it cannot be read.

	merge() now throws Error, too.

	Added DBG statements to is_cache_enabled(). This helped find a bug that defied the debugger...

	Hacked documentation. Added process_options() and initialize(). Changed the names of the fields so that they all begin with 'd_'.

	Added process_options() and initialize() methods. These facilitate specializing this class.

	Significant changes regarding the mutex code. I found out that since config_dap.h was not being included, the mutex code was never built! Once built, I found a bunch of deadlocks. Many of the methods had to be modified to fix this/these problem(s).

	Fixed documentation. Added #include "config_dap.h" which will have to be removed somehow, after hacking up the configure script. removed the const qualifier from some methods because they lock a mutex. These could be marked const volatile, but I bet there are a lot of compilers that don't support that yet...

	Added a DBG2 statement to track down a bug. Useful when you cannot use a debugger.

	Added DODSFilterTest to the unit tests.

	Added DGB lines to track down a bug. These seem useful when you cannot use a debugger.

2003-03-12  James Gallagher  <jgallagher@opendap.org>

	Updated to the new CppUnit. This mostly works but there's one test that depends on file modification times that does not work.

2003-03-11  James Gallagher  <jgallagher@opendap.org>

	Added regular expressions to the AIS subsystem. In an AIS database (XML) it is now possible to list a regular expression in place of an explicit URL. The AIS will try to match this Regexp against candidate URLs and return the ancillary resources for all those that succeed.

	if there's no AIS database, the field d_ais_merge is null. Make sure not to dereference that pointer in that case!

2003-03-07  James Gallagher  <jgallagher@opendap.org>

	Changed dods.ini to dods.rc.

2003-03-05  James Gallagher  <jgallagher@opendap.org>

	Added Response.h, HTTPResponse.h and HTTPCacheResponse.h to the CLIENTHDRS variable.

2003-03-04  James Gallagher  <jgallagher@opendap.org>

	Fixed some of the unit tests.

	Added

	Added

	Fixed some problems with the comments...

	Removed code in #if 0 ... #endif. Added get_version(). Fixed constructor documentation.

	Removed code in #if 0 ... #endif. Added d_version and a get_version() method. This is useful for some clients, like geturl.

	Minor change; changed the order of inline and static for the get_hash() function.

	Removed code in #if 0 ... #endif. This was mostly WIN32 code that I don't think we need anymore.

	Removed code in #if 0 ... #endif.

	Added dods_keep_temps global. This is handy for debugging.

	Updated with usage info.

	Updated geturl to match changes in the Connect, HTTPConnect and HTTPCache classes. In addition, the program can be used with the prototype AIS (which works for DAS objects only). See the -A option.

	Fixed Resource::ResourceRule enum usage (fallback, overwrite, replace).

	Now uses Response objects.

	Now used Response objects.

	Removed many old methods (methods that were used with libwww). Switched to the new Response objects.

	Modified to use Response objects. Removed many old methods which no longer have any meaning (i.e., they were hold overs from several years ago).

	Modified cache_response() so that only http and https URLs are cached.

	Now uses Response objects.

	Switched to Response objects. Removed unneeded methods. The Response objects now control the release of resources such as deleting temporary files, et c.

	Now uses Response objects.

	Updated the dependencies.

	Removed DODS_DEBUG define.

	Added DBGN macro which does not print the file and line number information.

	Updated grammar files.

	Added.

2003-03-03  Patrick West  <pwest@opendap.org>

	reformatted source file and replaced (void) with ()

	reformatted source files and removed (void) parameters replacing with ()

2003-02-28  James Gallagher  <jgallagher@opendap.org>

	Added

2003-02-27  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added

	grammar updates plus added IASConnect to the Makefile.in.

	Fixed a call to connect down in the code that handles the '*' operator.

	Updated this to use the new, non-deprecated, methods in Connect (and AISConnect!). The code is a bit tighter. Added a new option, -A, which tells geturl to use the AIS when resolving a URL. In its current incarnation (early prototype) this just handles DAS objects and only uses a single AIS database found by looking for the AIS_DATABASE entry in the ~/.dodsrc configuration file.

	Added get/set_ais_database() methods along with code to parse an AIS_DATABASE entry in the configuration file.

	Added set_accept_deflate() method.

	Moved the empty constructor, et c., from private to protected so that children can define their own empty ctors to suppress the C++ default versions. Removed some old code and reorganized the declarations. There are a lot of methods here that should be removed...

	Removed old code (code inside #if 0 ... #endif) and added a call to HTTPConnect::set_credentials() and set_accept_deflate() in the constructor.

	Added to the documentation.

	Changed prune_spaces() so taht it takes a const string &.

	Added.

2003-02-27  Patrick West  <pwest@opendap.org>

	Removed ResourceRule, moving enum ResourceRule to Resource.h, renaming it to rule

2003-02-27  James Gallagher  <jgallagher@opendap.org>

	I removed old code (code inside #if 0 ... #endif) and changed the private definitions of HTTPConnect(), ... to protected definitions. These methods are present to prevent C++ defaults from being called. I made them protected so that specializations of this class can hide their own empty constructor, et cetera. When these are private a subclass cannot do that.

	Removed old code.

2003-02-26  James Gallagher  <jgallagher@opendap.org>

	Made has_resource const.

	Updated grammars.

	Updated dependencies.

	Updated; includes AIS unit tests.

	Added/updated.

	Updated tests for write_database().

	Fixed documentation comments.

	Made methods virtual.

	Changed is_resource() call to has_resource().

	Added iostream header. Moved the file open out of the constructor; this seemed to be throwing an exception when the file did not exist, even though that makes no sense...

2003-02-25  James Gallagher  <jgallagher@opendap.org>

	Changed the name of the parse() method to intern().

	Fixed call to AISDatabaseParser::intern (changed the name from parse).

	Changed name of is_resource to has_resource.

	Changed is/has_resource_test to match the new name of the method: has_resource.

	Updated. Now configures tests/Makefile.

	Fixed an errant string comparison.

	Added.

	Added entries for AISMergeTest.

	Added test the erase() method.

	Added erase() method.

	Fixed for the latest rev of ais_database.xml.

	Fixed for latest rev of the ais_database.xml.

2003-02-24  James Gallagher  <jgallagher@opendap.org>

	Added line numbers to error messages. Improved message formatting a little.

	Moved from ../

2003-02-21  James Gallagher  <jgallagher@opendap.org>

	Added fetch_url() tests for "file:" URLs.

2003-02-20  James Gallagher  <jgallagher@opendap.org>

	Repaired copyright.

	Added generated flex/bison files.

	Fixed the comment for getch_url.

	Fixed class comment.

	Fixed doxygen comment.

	Fixed copyright date.

	Added.

	Now includes the first of the AIS unit tests.

	Added throw() specification to second constructor.

	Added.

	Added.

2003-02-10  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Edit out obsolete testsuite usage.

	Almost completely new makefile.

2003-02-09  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Regenrated dependancy semi manually using Visual Studio.

	Slight mod's to include new files in win32 build of the core.

	Updates for additions/deletions of files that make up the core.

	Fix to compile under win32.  Problem with min/max diffs under win32 and unix.

	*** empty log message ***

	Pick up max() (not the macro) appropriately under both win32 and unix.

	Put core testsuite building back in after it was patched recently.

	Fix VC++ conflict using std::max with macro max().

	Fixed a conflict using std::max under win32.

	Removed use of Gui.h.  No longer exists.

2003-02-03  Patrick West  <pwest@opendap.org>

	added tests/Makefile.in and rearranged test files so no duplication

2003-02-03  James Gallagher  <jgallagher@opendap.org>

	Darn grammar files... Generated files should not be in CVS!

2003-01-31  Reza Nekovei  <rnekovei@ieee.org>

	Fixed a typo in include file name.

2003-01-27  Patrick West  <pwest@opendap.org>

	Updating tests files, including in dap configure. Removed dap_templates.cc

2003-01-23  James Gallagher  <jgallagher@opendap.org>

	01/22/03 jhrg

2003-01-22  James Gallagher  <jgallagher@opendap.org>

	Added

	Updated the copyrights on various source files. OPeNDAP is adopting the GNU Lesser GPL.

	Updated the copyright notice; this implementation of the DAP is copyrighted by OPeNDAP, Inc.

2003-01-21  James Gallagher  <jgallagher@opendap.org>

	Updated the grid-finc-testsuite.

	01/21/03 jhrg

	Added using std::vector.

	Moved dods.ini to dods.rc.

	Added/Updated from release-3-2 branch.

2003-01-15  Patrick West  <pwest@opendap.org>

	Adding files to tests director. Still need to use cppUnit and autoconf to create configuration and Makefile

2003-01-15  James Gallagher  <jgallagher@opendap.org>

	Added a cast to unsigned in check_byte().

	Removed useless casts associated with the unsigned types.

2003-01-15  Patrick West  <pwest@opendap.org>

	Removing IteratorAdapterT and replacing with non-templated versions.

2003-01-13  James Gallagher  <jgallagher@opendap.org>

	When a filter program got the -V option without a dataset, It was returning usage information. Fixed.

2003-01-10  James Gallagher  <jgallagher@opendap.org>

	I removed a number of things in this file that have been commented out in the release-3-2 code.

	01/10/03 jhrg

	I fixed the ChangeLog Id mess at the bottom of this file.

	01/10/03 jhrg

	Merged with code tagged release-3-2-10 on the release-3-2 branch. In many cases files were added on that branch (so they appear on the trunk for the first time).

	resolved conflicts from the merge with release-3-2-10.

2002-09-13  James Gallagher  <jgallagher@opendap.org>

	Added a CVS log. Added an emacs mode setting to match the rest of our code (always an ongoing process...). Reformatted so that it doesn't wrap in an 80 column editor. Added an attempt at operator==() which causes problems down in the idl command line client. I've wrapped it in guards; if the code proves useless, we should remove it.

2002-09-05  Patrick West  <pwest@opendap.org>

	Unit tests created to test changes made to classes

	Replaced the GNU data structures SLList and DLList with the STL container class vector<>. To maintain use of Pix, changed the Pix.h header file to redefine Pix to be an IteratorAdapter. Usage remains the same and all code outside of the DAP should compile and link with no problems. Added methods to the different classes where Pix is used to include methods to use STL iterators. Replaced the use of Pix within the DAP to use iterators instead. Updated comments for documentation, updated the test suites, and added some unit tests. Updated the Makefile to remove GNU/SLList and GNU/DLList.

2002-06-27  Tom Sgouros  <tsgouros@gmail.com>

	typo

2002-06-18  Tom Sgouros  <tsgouros@gmail.com>

	l Removed SLList from constructor call sequence, to match .cc file.

	Moved comments and edited to accommodate doxygen documentation-generator.

2002-06-03  James Gallagher  <jgallagher@opendap.org>

	Merged with release-3-2-9

	6/3/2002 jhrg

	Removed level stuff. The level() and set_level() methods were not being used anymore, so I removed them.

	6/3/2002 jhrg

	Added `U' suffix to the numerical constants that are unsigned. This prevents messages about values being so large that they can only be represented as unsigned values.

2002-05-23  Tom Sgouros  <tsgouros@gmail.com>

	modified for doxygen

2002-05-22  James Gallagher  <jgallagher@opendap.org>

	Updated using code from C++.

	I added a new rule called start. This rule is used to initialize objects used by the parser (like the stack of ctors). The logic of the parser have not been changed. This just localizes the code to init this object.

2001-10-29  James Gallagher  <jgallagher@opendap.org>

	Removed catch and display of Error objects thrown/returned when accessing data. These Error objects must now be caught by the code that uses libdap++.a.

	Added RCReader.{cc,h,o}.

	Fixed some errors in the comments.

	Fixed bad job of resolving conflict(s) from the last merge.

2001-10-25  Jose garcia  <jgarcia@ucar.edu>

	Added logic to remvove lock on cache file. This logic used to be in Connect, now is in the method load_cache_status.

	New Method to return dods_root.

	Modified the www_lib_init method so now it uses the class RCReader. This simplifies a lot the implementation of this class.

2001-10-13  James Gallagher  <jgallagher@opendap.org>

	Merged with release-3-2-8.

2001-10-03  Jose garcia  <jgarcia@ucar.edu>

	Modified methods name to comply with DODS naming convention. Use of 4 spaces for indentation.

2001-09-28  James Gallagher  <jgallagher@opendap.org>

	Generated file built after merging with 3.2.7.

	Merged with 3.2.7.

	Merged with 3.2.7.

	*** empty log message ***

2001-09-21  Jose garcia  <jgarcia@ucar.edu>

	Implementation of the class to handle cache resources used by class Connect.

	Class to handle cache resources used by class Connect

2001-08-27  James Gallagher  <jgallagher@opendap.org>

	Updated files generated from bison and flex.

	New depend info

	Fixed up cruft from merge.

	Merged with release-3-2-6

2001-08-24  James Gallagher  <jgallagher@opendap.org>

	Resolved conflicts from the merge of release 3.2.6

2001-06-15  James Gallagher  <jgallagher@opendap.org>

	Merged with release-3-2-4.

	Merged with release-3-2-4.

2001-05-03  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Fixed a bug where one of Connect's FILE *s was closed without using Connect::close_ouput(). This can crash a client when Connect's dtor tries to close that FILE * later on.

	Added a rule that allows varaible names to be the names of datatypes.

	Fixed a bug where an Error object was created with an error code of undefined_error (which make OK() throw and exception).

2001-02-12  James Gallagher  <jgallagher@opendap.org>

	Fixed an error with the using statements. `using std::vector<string>;' makes g++ barf, but it like using std::string; and using std::vector;.

2001-02-09  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Merged Jose's and Brent's authentication code, modifying it in the process. There are some significant changes in the functions/methods: dods_username_password, process_www_errors, extract_auth_info, read_url, fetch_url:
	dods_username_password() can now be used by both a popup and non-popup
	version of the class. The function knows how to provide humans with several
	chances to get it right but only allows statically supplied credentials one
	shot (thus avoiding an infinite loop).
	process_www_errors() is new: it reads libwww errors and throws Error if it
	finds a fatal error in the list. If it finds an authentication error, it sets
	the Error object's error_code to no_authorization. It does nothing if the
	errors are not fatal.
	extract_auth_info() is Brent's code moved to its own home.
	read_url() now calls process_www_errors. This is necessary because
	process_www_errors throws exceptions and those don't (seem to) work from
	within libwww callbacks. Understandable since libwww is C code...
	fetch_url() now calls extract_auth_info. I'd like to move this Connect's
	ctor, but this will have to do for now.

	Other changes:
	SetSignal() removed; libwww handles this now.
	I removed redundant initialization of libwww Before and After filters.
	I added calls to HTLibInit and HTLibTerminate in www_lib_init() and
	~Connect(). The LibInit call sets the client name and version number. That
	information will appear in httpd access logs.
	I've added comments about how Connect works in places where it seemed pretty
	obscure.

	Added extract_auth_info() method to parse username/password information from a URL and record it in this object. Moved set_credentials() method from the header, where it was inline, to the .cc file. Save inlines for performance optimizations. Removed set_username_password() function since dods_username_password() was modified to do its job. Added process_www_errors() to streamline error reporting for both the popup and non-popup version of this class. This friend function is called directly from Connect's methods, not via a libwww callback. This was necessary because it throws Error objects and throws don't (seem to, anyway) work from within callbacks.

	Added build for tgeturl, a copy of geturl linked with the non-popup version of libdap++. This provides a way to test the library when it's built without the popup.

	*** empty log message ***

	Removed some of the #ifdef WIN32 guards since the code works with g++ too. Fixed an error in the usage string.

2001-02-05  Jose garcia  <jgarcia@ucar.edu>

	Added support so a Connect object can be created with credentials to be able to resolve challenges issued by web servers (Basic Authentication). Added exception to notify "No Authorization".

2001-01-26  James Gallagher  <jgallagher@opendap.org>

	Merged with release-3-2-3.

	*** empty log message ***

2000-11-24  Jose garcia  <jgarcia@ucar.edu>

	In Connect::read_url added exception in case there is a fatal error loading an URL It is specially requiere for supporting Connect objects that support HTTP Authorization challenge.

2000-11-09  James Gallagher  <jgallagher@opendap.org>

	Changes for datatype translation.

2000-10-30  James Gallagher  <jgallagher@opendap.org>

	Added support for proxy servers (from cjm).

2000-10-25  James Gallagher  <jgallagher@opendap.org>

	Created

2000-10-18  James Gallagher  <jgallagher@opendap.org>

	Fixed an error in get_user_supplied_docs() which caused the data file to be read instead of a <data file>.html file.

2000-10-05  James Gallagher  <jgallagher@opendap.org>

	Changed the way serialize() calls read(). The status from read() is returned by the Structure and Sequence serialize() methods; ignored by all others. Any exceptions thrown by read() are caught and discarded. serialize() returns false if read() throws an exception. This should be fixed once all the servers build using the new read() definition.

2000-10-03  James Gallagher  <jgallagher@opendap.org>

	Fixes to the tests to accomodate debugging fixes in DDS.cc

	Put debgging output in parse() method inside DBG().

	Updated copyright

	Added dap_version() function

2000-10-03  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	string.insert(), for names that begin with 0-9 was causing an exception in that case.  Observed in the hdf server on modis data.  replaced string.insert with string = string("_") + string to fix - in id2dods().

2000-10-02  James Gallagher  <jgallagher@opendap.org>

	The Error class now has const accessors

	Changed type of num in the serialize method to int

	Removed last vestige of the munge-bison.awk script

2000-09-22  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Removed munge-bison calls

2000-09-21  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Fixes to the tests to recognize some of the new error messages. Also, the test drivers were modified to catch the exceptions now thrown by some of the parsers.

	Rearranged source files so that the CVS logs appear at the end rather than the start. Also made the ifdef guard symbols use the same naming scheme and wrapped headers included in other headers in those guard symbols (to cut down on extraneous file processing - See Lakos).

	Merged changes from Jose Garcia that add exceptions to the software. Many methods that returned error codes now throw exectptions. There are two classes which are thrown by the software, Error and InternalErr. InternalErr is used to report errors within the library or errors using the library. Error is used to reprot all other errors. Since InternalErr is a subclass of Error, programs need only to catch Error.

2000-09-20  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

2000-09-18  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Fixed earlier error where the entire double word for a double was being reversed front-to-rear.  They two words just needed swapped - one for the other.

2000-09-15  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Added changes to account for byte ordering of double floats under win32. XDR (prior to this) assumed that a double was handled as if it was two longs - the endianess of which are platform dependant.  Under win32 operating systems the whole double word associated with a float is byte reversed (7,6,5,4,3,2,1,0 vs. 0,1,2,3,4,5,6,7).

2000-09-14  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Added usage of ends and ostrstream elements in the std namespace for win32.

2000-09-11  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Rebuilt grammars

	Changed the name of Sequence::get_row_numbers() ...

	Fixed up the comments/docs.

	Added methods to make it simpler to access Sequences by row number. The new methods are: get_row(), get_row_number(), get_starting_row_number(), get_ending_row_number(), get_row_stride(), set_row_number_constraint(). The starting and ending row numbers refer to constraints placed on the sequence, to get the number of rows in the current sequence, use the length() method.

	Added Sequence selection using row numbers. This `selection' operation uses the brackets a la arrays and grids.

2000-09-08  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Removed a dangling ifdef that was for my own debugging purposes.

2000-09-07  James Gallagher  <jgallagher@opendap.org>

	Fixed another goof from the last merge; I dropped the new feature that identifiers can have dots i their names. This feature could really screw things up, but it is needed for translation. It should be the case that the CE evaluator never sees such a variable name (since the translation software should get to it first and rearrange things).

	Added SCAN_ prefix to returned constants. The prefix was lost during the last merge.

	Added SCAN_ prefix back onto returned constants. This was also lost during the last merge. Moving comments...

	Fixed a bungled merge. Watch out for long diffs in merged code when moving log comments from the start to the end of files.

2000-08-31  James Gallagher  <jgallagher@opendap.org>

	Merged with 3.1.10

2000-08-30  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Fixed lost mod for port to win32 - newlines in string constanct not ok with VC++.  (this was in usage()).

2000-08-29  James Gallagher  <jgallagher@opendap.org>

	Merged with 3.1.9

2000-08-22  James Gallagher  <jgallagher@opendap.org>

	Fixed the assert() in buf2val(). It tested _buf and when that contained 0 it would fail. This was probably copied from other methods where _buf is a pointer.

2000-08-16  James Gallagher  <jgallagher@opendap.org>

	Added tests for dots in variable names and fancier error messages

	Added dot (.) to the set of characters allowed in a variable name

2000-08-15  James Gallagher  <jgallagher@opendap.org>

	Added an option (-s) to test the Sequence::getRowNumber method.

	Added the getRowNumber method.

	Added d_row_number field and getRowNumber method.

2000-08-14  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Removed the usage() functions. These should be supplied by cgis that need them. See DODSFilter.

2000-08-08  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Trivial removal of a hack fragment left behind from a earlier fix.

2000-08-07  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Added new header that needs to be copies at install time.

	Reversed hack related to 7/19/00 and 7/21/00 changes to get around a bug in the core (which has been fixed).

	Removed default argument definition.  Under MS VC++ one can't define a default argument in both a method declaration and its's definition - plus that's redundant anyway.  Just setup default args in the declaration (in the .h) only or VC++ will choke.

	Added ifdef to account for potential conflict with certain winsock.h u_* typedef's.

	Added permanent (manually generated) code which is typically generated at configuration time under Unix - but which have to be more permanent in the case of win32.  No such compile time configuration utils under win32.

	Removed the file from the repository.

2000-08-02  James Gallagher  <jgallagher@opendap.org>

	Merged 3.1.8

	*** empty log message ***

2000-07-26  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Modified intermediate (dod*) file removal under win32 to take into account a 1-to-n correspondence between connect objects and intermediate files. Implemented solution through vector of strings containing the intermediate filenames that are removed when the connect obj's destructor is invoked. Might consider using the same code for unix in the future.  Previous win32 solution incorrectly assumed the correspondence was 1-to-1.

2000-07-24  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Just added a notation that indicates what was tried to get around libwww bugs in regards to spaces in pathnames.  Client-side caching disabled until further notice - next version of libwww may help.

2000-07-21  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Put a temporary fix in that is in lieu of an upcoming small change to the core.  Is in an ifdef with a note to remove it - but the temporary hack will work with or without the change to the core. See TMPHACK ifdef's to remove.

	Remove client-side caching entired under win32 in lieu of a permanent fix (soon).  Fixed what I broke for client-side caching under unix.

2000-07-19  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Call and return from main in a manner Visual C++ likes and exit the program with exit(0) so that DejaGnu/Cygwin based testsuite can succeed for win32.

	Delete the right type of dds (a DataDDS) so that when it is deleted, the destructors are called in the right sequence. This might be the case under win32 only (??), but I would think this change is applicable to unix also.

2000-07-18  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	I checked these in earlier, but looking closer.  It appears that perhaps they weren't in the repository for a reason (??).

	Lex/yacc generated code based upon changes for win32 port.

	Lex yacc generated code based upon changes for win32 port.

	Fixed failure to initialize a structure element appropriately when retrieving the Win32 OS version information for the WIN95_CACHE_HACK.

	Temporary short-term fix to get Dods to run on win95-based systems by turning off client-side caching on that OS.  Feature doesn't run under win9x for currently unknown reasons that _appear_ to be external to our code. Permanent fix should be forth-comming shortly.  Patch is isolated between a single WIN95_CACHE_HACK ifdef.

2000-07-17  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Changes made in an attempt to debug client-side caching under win95-based systems.  Is currently unsuccessful, but these changes made the code somewhat more generic.

	Change to set stdout to binary mode under win32 so that the output of geturl yields the exact same thing as it does Unix - i.e., no cr-nl translation of nl's within the output.

	Inserted simple trivial cast that makes VC++ happier.

	Changes to use forward slashes in args to lex and yacc (versus backslashes). Using backslashes, things still compile - but generate 100's of warnings by the backslashes being interpreted as escape characters and this causes problems debugging also.  Also, a change to removed the program database (*.pdb) used during debugging upon "make clean".

2000-07-16  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Dummy down the DOS built-in commands used within nmake so that they don't use the extended features such as those seen on w2k. This adds support for building under win95-based systems.  Stick with simple rmdir, del, mkdir and copy only.  Use no flags to those commands.

2000-07-14  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	From previous Fix, one test .obj is needed in the core after all.  TestUrl.obj. That was re-included into the core library.

	Test*.obj were mistakenly being rolled up into the core library.  No need for them to be there so the Makefile was modified accordingly.

2000-07-13  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Changed the approach to delete the intermediate file in the case of win32 (unlink() not the same under win32, needed another approach).

	Mod to keep the intermediate file name in the Connect object in the case of win32 (unlink() works differently on win32,  needed another approach).

	Added debugging flags (commented out) for convenience.

	Minor mod to compile flags.

2000-07-09  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Removed (trivial) explicit mention of namespace for iostream in flush_stream().

	Modify dependancies to build the core library more strategically and add comments that indicate the status of the test suite under win32 (must run under cygwin after building for native win32)

	Changes to increase portability, minimize ifdef's for win32 and account for differences in the iostreams implementations.

	Mods's to increase portability, minimuze ifdef's in win32 and account for differences between the Standard C++ Library - most notably, the iostream's.

	Mods to increase portability, minimize ifdef's for win32

2000-07-07  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Changes to loopback_pipe method under win32.  A difference between the iostream implementation under win32 (versus unix) means that the loopback pipe can't be a pipe at all.  See win32 code for parse_constraint() for specifics.  As of 7/2000, this code is untested but only gets used on the "server side of the core" or in the core test suite.

	Changes to DDS:send() method to use _cwait instead of waitpid() under Win32.  As of the time of check back into cvs, the method is untested under win32 but would only be use in the "server side of the core" or during running of the test suite.

	Changes for "server side of core" (in compressor()) for win32.  As of the time of check-in to cvs the changes are untested, but would only be used on the server side or in the case of the core test suite.

	Comment work.

	Added (commented out) lines to compile preserving debugging information.

2000-07-02  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Bring deflate.exe into the building of the core.

2000-06-16  James Gallagher  <jgallagher@opendap.org>

	Fixes leftover from the last merge plus needed for the merge with version 3.1.7.

	Merged with 3.1.7

2000-06-07  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Merged with verson 3.1.6

	Merged the pc port branch

2000-06-07  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Specific header file for the win32 version of the dap.

2000-06-06  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

2000-05-25  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	New dependancies for the Makefile to build dods core for win32.

	New Makefile to build dods core for win32.

2000-05-24  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	Minor mod's to quiet the makefile down considerably.

2000-05-19  Robert Morris  <Robert.O.Morris@jpl.nasa.gov>

	added code for xdr library for win32 dods.

	Dependancy file for libxdr makefile added.

	New Makefile to build libxdr for win32 dods.

2000-04-17  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Fixed problems with the _gui member and local connections. The _gui object was not initialized (correct) for local connections but *was* destroyed for them (because the code never checked for local connections in the dtor).

	Fixed an error where local connections affected the status of the __num_remote_conns field. This caused remote connections, made after one or more local connections were closed, to fail because libwww was not initialized correctly.

2000-04-06  James Gallagher  <jgallagher@opendap.org>

	Fixed expresion tests.

	*** empty log message ***

	Added exception handling

	Merged Brent's changes for the progress gui - he added a cancel button. Also repaired the last of the #ifdef Gui bugs so that we can build Gui and non-gui versions of the library that use one set of header files.

	Fixed an error in print_val() where the method worked OK for the server-side but not the client-side because it demoted any Grid whose send_p flag was not set to a Structure. Since the client-side does not have CEs, there are no projections and send_p will never be set.

2000-03-31  James Gallagher  <jgallagher@opendap.org>

	Merged with release-3-1-5

	*** empty log message ***

	Merged with version 3.1.5.

2000-03-28  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	*** empty log message ***

	*** empty log message ***

	Added libdap++-gui.a to the install and binary-tar targets.

	Removed code that sent bad dates in the response header. Also removed code that sent a Cache-Control: no-cache header.

	Now build two version of libdap++, one with and on without the progress gui.

	Modified these files so that they can be built either with and without GUI defined. The type signatures are now the same either way. Thus we can build libdap++-gui and libdap++ (without GUI support). When using the later there's no need to link with tcl, tk or X11. This makes the executables smaller. It also keeps the servers from potentially needing sharable libraries (since X11 is often sharable) which can be hard to find unless they are in the standard places. I made the same changes in Connect and Gui.

	Added a DEFAULT_EXPIRES parameter to the .dodsrc file. The default expiration time is now set by connect, using the value read from .dodsrc, rather than use the value compiled into libwww. To do this I added a new function to HTCache.c,h in libwww.

2000-03-16  James Gallagher  <jgallagher@opendap.org>

	I fixed the bug in libwww which made caching of compressed documents fail. I removed the hacks in this file that prevented data documents from being cached. I also have removed the code that wrote NEVER_DEFLATE to the rc file. The NEVER_DEFLATE option still works; I'm just not including it in the rc file by default.

2000-01-27  James Gallagher  <jgallagher@opendap.org>

	Resolved conflicts from merge with release-3-1-4

2000-01-05  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added a comment about the odd `protocol' for sending array/list lengths twice for arrays/lists of simple types. Removed some cruft.

	Added libclient++.a. Added/Fixed targets for the GSE grammar.

1999-12-30  James Gallagher  <jgallagher@opendap.org>

	Fixed up the progress indicator

1999-12-14  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added static members to help control the cache.

	More fixes for caching. Caching now works correctly for programs that use multiple Connect objects. The Cache index is now updated more frequently.

1999-12-01  James Gallagher  <jgallagher@opendap.org>

	Fixed print_val for Grids that decay to Structures.

	Added members to support caching. Added accessors for cache control. libwww 5.2.9 does not supoort these, however.

	Added rfc822_date(...). Added Date headers to all the mime header output functions. Added Cache-Control: no-cache to the binary header with deflate is true. Removed old code.

	Substantial changes for the caching software. Added a call to `terminate' the cache once we're done with the libwww code. This writes the .index file required by the cache. Additionally, changed the cache mode from validate to OK. The later forces the cache to not validate every request. Instead expiration is used and the libwww code implements a fall back in those cases where servers don't supply a Date header. Finally, compressed responses break the cache (I think this is libwww's bug) and I've disabled caching compressed data responses. So that users can cache data responses, I've added a new flag in the dodsrc file called NEVER_DEFLATE which allows users to override the clients wishes regarding compression (i.e., users can turn it off). Data responses can thus be cached.

1999-11-04  James Gallagher  <jgallagher@opendap.org>

	Result of merge with 3-1-3

	result of merge with 3-1-3

1999-10-22    <cjm@opendap.org>

	Added support for caching.  Most of the code is in www_lib_init(), there is also a modification to read_url() to make use of the cache if it is enabled.

1999-09-03  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Merged changes from release-3-1-1

1999-08-23  James Gallagher  <jgallagher@opendap.org>

	Merged changes from release 3.1.0

1999-08-18  James Gallagher  <jgallagher@opendap.org>

	Merged changes from release-3-1-0

1999-08-09  James Gallagher  <jgallagher@opendap.org>

	Merged changes from Brent for the Gui code (progress indicator)

1999-07-23  James Gallagher  <jgallagher@opendap.org>

	Added

1999-07-22  Tom Sgouros  <tsgouros@gmail.com>

	fixed doc typo

1999-07-22  James Gallagher  <jgallagher@opendap.org>

	Merged changes from the release-3-0-2 branch

	*** empty log message ***

	Fixed a bug found by Peter Fox. Array index names were not handled properly after the String to string conversion.

1999-05-28  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

1999-05-27  James Gallagher  <jgallagher@opendap.org>

	Merge from alpha-3-0-0

1999-05-26  James Gallagher  <jgallagher@opendap.org>

	Added a bit where, before sending caught Error objects to the client, we write the message to t eh httpd's error_log.

	The Gui option is now disabled; gui is always false. One call to gui()->... has been removed with #if 0 ... #endif.

	Fixed a bad call to Error's ctor. For some reason calling the four arg ctor with the last arg == to 0 caused string to gag. At least that appears to have been the problem...

	Added a message for the `unknown_error' constant. Added a test in correct_error for a NULL Gui object. If the Gui object is null, display the message text on stderr and ignore the Gui object.

	Added the calls to Error::correct_error(...). These were removed because they use the Gui object. However, they access it through the Connect::Gui() member function which will return NULL until we fix the Gui. Calling the correct_error with a NULL Gui object works in that the error message is displayed on stderr and the Gui stuff is ignored.

	Replaced a serialization of an Error object with a throw to the outer layer. This should help smooth getting errors to the outer layer of the servers so they can be sent back to the clients reliably.

1999-05-25  Dan Holloway  <dholloway@opendap.org>

	Added an optional second argument to read_ancillary_dds to support JGOFS usage.

	Added an optional second argument to read_ancillary_dds to support JGOFS usage.

	Added an optional second argument to read_ancillary_das to support JGOFS usage.

	Added an optional argument to read_ancillary_das to support JGOFS data object usage, where the location of the ancillary DAS file isn't readily available through the 'dataset' argument of the command line.

1999-05-25  Nathan Potter  <ndp@opendap.org>

	Added a trap to compare_stdout to insure that only the two supported methods ("match" and "compare") of the Tcl built in string function are passed in as string tests. 5/26/99 ndp

1999-05-25  James Gallagher  <jgallagher@opendap.org>

	Added Nathan's patch in place of mine since it prints some nice info when you're debugging (?) tests.

1999-05-24  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Moved GSEClause.h and removed second Error.h (what was that doing?) includes to fix warning about redefinition of TRUE and FALSE (from within rpc/type.h).

1999-05-21  Dan Holloway  <dholloway@opendap.org>

	Changed default 'gui' flag to 'false' in request_data, and read_data methods.

	Disabled the Gui interface in the Connect objects.  Primarily this was done in www_libc_init, constructor, destructor, and request_ calls using 'ifdef GUI' directives.  To regain use of this code use the '-DGUI' compiler flag.

1999-05-21  James Gallagher  <jgallagher@opendap.org>

	Removed debugging instrumentation left in by accident.

	Removed a bogus error message about failure to run deflate.

	Made the parser error messages a bit easier to decode by adding `Expression' to them. Still, these are pretty lame messages...

	Added instrumentation to the ctor. This simplifies debugging the interaction between the filter programs and the perl script.

1999-05-20  James Gallagher  <jgallagher@opendap.org>

	Using ifstream in parse_mime(...) confuses the downstream parser since the FILE * is not advanced. I switched back to the fgets(...) code and the some problems with the asciival client went away.

	*** empty log message ***

	Added -fPIC to libdap build. Sme files had to have special rules written

	Added

1999-05-19  James Gallagher  <jgallagher@opendap.org>

	Changed the support address from @dods to @unidata

1999-05-18  James Gallagher  <jgallagher@opendap.org>

	Perl is now started using /bin/sh.

1999-05-09  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

1999-05-06  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Update for groups changes just prior to 3.0.0a alpha release

1999-05-05  Ethan Davis  <edavis@ucar.edu>

	Added VERSION file stuff to update-version target.

1999-05-04  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added a version string parameter to all the set_mime_*() functions. If not given it defaults to the core's version string.

	The member function parse_constraint() now throws an Error object so that enclosing code will handle serializing the Error object. The member function send() takes the CGI version as an extra argument. All calls to the set_mime_*() functions include this version number.

	Added cgi_ver parameter to send() member function.

	Added version number optional argument. This provides a way for code that uses these functions to pass version information in so that it can be included in the response doc's MIME header.

	Added the get_cgi_version() member function. Added documentation about get_cgi_version() and the -V option (new).

	Modified the DataDDS class so that a version string may begin with any character sequence, not just `dods'. This means that each server can identify itself in the version string.

	Added the -V option. -v now is used to pass the version information from the CGI to the C++ software; -V triggers output of the version message. This allows the DODSFilter class to pass information about the server's version to the core software. All set_mime_*() functions are now passes the CGI version information so that all MIME headers contain information about the server's version. Added the get_cgi_version() member function so that clients of DODSFilter can find out the version number.

	*** empty log message ***

	Fixed copyright statements. Removed more of the GNU classes.

	Added

1999-04-29  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	*** empty log message ***

	Removed Function include

	Removed Map, Stack, Plex and Vec stuff.

1999-04-28  James Gallagher  <jgallagher@opendap.org>

	Merged ferret changes

	Merge of no-gnu branch

	*** empty log message ***

1999-04-22  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Comments

	Uses dynamic_cast

1999-04-09  James Gallagher  <jgallagher@opendap.org>

	Added support for the new datatypes. Removed old code. Changed header generated to include XDODS-Server.

1999-04-01  James Gallagher  <jgallagher@opendap.org>

	Switched to DODS type names and fixed float-vs-double bungle

1999-03-30  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

1999-03-29  James Gallagher  <jgallagher@opendap.org>

	Fixed (I hope) a bug in check_float{32,64} where 0.0 did not check out as a valid floating point number. Note that the DODS_{FLT,DBL}_{MIN,MAX} constants are the absolute values of the bigest and smallest numbers representable, unlike the similar constants for integer types.

1999-03-24  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added or updated for the new simple types (Int16, UInt16 and Float32)

	Added

	Added support for the Int16, UInt16 and Float32 types

	*** empty log message ***

	Added support for the new Int16, UInt16 and Float32 types.

	Added a verbose mode. Commented out the old transmit(...) function. Use constrained_trans(...) instead.

	Fixed some of the comments.

	Added minimal support for the new Int16, UInt16 and Float32 types.

	Added support for the new Int16, UInt16 and Float32 types. Removed unused error printing functions.

	Added support for the new Int16, UInt16 and Float32 types. Removed some unused versions of the error printing functions.

	Added includes and New*() definitions for the Int16, UInt16 and Float32 types. Removed declarations for the old *_ops functions.

	Removed the *_ops code. Those operations are now done by the template classes and function(s) in Operators.h. Removed old code.

1999-03-19  James Gallagher  <jgallagher@opendap.org>

	Added constants for floating point values. Changed some formatting.

	Added a call to ios::precision in read(). This sets the precision to 15. The default value, 6, was rounding some values.

	Added to the documentation for print_val(). Now contains a blurb about setprecision().

1999-03-18  James Gallagher  <jgallagher@opendap.org>

	suppres adding patches directory

1999-03-17  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added to find_ancillary_file() so that <pathname>.ext will also be checked. This ensures that ancillary DAS files such as 1998-6-avhrr.dat.das will be used properly.

1999-03-08  James Gallagher  <jgallagher@opendap.org>

	Fixed the error messages in compressor().

1999-02-24  James Gallagher  <jgallagher@opendap.org>

	release 2.21

	*** empty log message ***

1999-02-22  James Gallagher  <jgallagher@opendap.org>

	Removed more of the code in process_data. Because of fixes in the scanner, this code no longer needs to rewind after parsing the DDS of a data document. The scanner no longer reads into the binary doc. Note that real MP/MIME code would solve this by giving us two streams to work with. Some day...

	Added a YYINPUT define that looks for `Data:\n'. When seen it returns YY_NULL which tells the scanner that EOF has been found. This hack keeps flex from reading into the data while buffering from the input source. This means that the calling code does not have to rewind the input to find the start of the data. Of course, multi-part MIME docs would also solve this. Replace this hack with MP/MIME code!

	Added the get_accept_types() accessor. Changed the ctor so that the -t option is recognized.

	Added the get_accept_types() accessor. Also added to the ctor so that the -t option will be parsed properly and used to set the value of accept_types.

	Added -T option: Use this to send a list of accepted types to the server using the new XDODS-Accept-Types request header. The list must not contain spaces *even* if it is quoted.

1999-02-18  James Gallagher  <jgallagher@opendap.org>

	Added the field _accept_types and two accessor functions. See Connect.cc and the documentation comments for more information.

	Added support for the DODS experimental MIME header XDODS-Accept-Types. This will be used to send a lists of `accepted types' from the client to a server. The list tells a server which datatypes the requesting client can understand. This information may be used by both the DDS and DataDDS objects to trigger translations from one type to another.

1999-01-21  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

1999-01-21  Tom Sgouros  <tsgouros@gmail.com>

	Fixed comment formatting problems for doc++

1999-01-20  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added ce_function.h and call to add the projection function `grid_selection_func' to the set of CE functions all servers know about.

	Added include of stdio.h for FILE *.

	Added targets for the grid selection expression scanner and parser, as well as its associated test code. Also added code for the GSEClause class.

	Fixed dataset; this variable should be the filename of the dataset, not the value returned by get_data_name() which is the DODS name of the dataset. This value is not set by the dds.filename() method.

	Added extract_string_argument function. Added grid_selection projection function.

	Fixed the stupid comments...

	The dds scanner now recognizes the token `Data:' as an EOF marker. This means that the data document can be scanned without splitting the DDS and binary data parts into two files.

	Added code to test the expr scanner using strings and not files.

	Made the store_op(), ... functions static. Added glue routines for scanning strings.

	Added a new struct for the GSE (Grid Selection Expression) parser. This parser uses exceptions to signal all errors except parse errors.

	Moved prototypes to ce_functions.h

	Moved various CE functions to the file ce_functions.cc/.h.

	Created

	Moved to old

1999-01-15  James Gallagher  <jgallagher@opendap.org>

	MOved code from util.h.

	Moved code from util.cc

	*** empty log message ***

	Removed use of the move_dds() member function. The DDS parser now recognizes the `Data:' separator string as marking the end of the DDS part of a data document. This means that Connect no longer needs to copy the DDS part of the data document to a separate (temporary) text file before parsing it.

1999-01-13  James Gallagher  <jgallagher@opendap.org>

	Removed call to text_to_temp() (which copied a string to a temp file so that the file could be parsed) with code that feeds the string directly into the parser/scanner.

1999-01-08  James Gallagher  <jgallagher@opendap.org>

	Added grammar sources to test coverage targets.

1998-12-28  James Gallagher  <jgallagher@opendap.org>

	Fixed comments for get_attr().

1998-12-21  James Gallagher  <jgallagher@opendap.org>

	Corrected some of the doc comments; fixed spelling and added error return values.

1998-12-16  James Gallagher  <jgallagher@opendap.org>

	Added support for XDODS-Server MIME header. This fixes a problem where our use of Server clashed with Java

1998-12-15  James Gallagher  <jgallagher@opendap.org>

	Added fix for strides <= 0 (which results in division by zero).

	Added to the documentation on add_constraint().

1998-11-24  James Gallagher  <jgallagher@opendap.org>

	Fixed copyright.

	Added instrumentation. Used while I was removing DASVHMap.

	Replaced the DASVHMap object with an SLList of toplevel_entry structs. The DASVHMap software is not being maintained by the FSF and had bugs. There are no changes to the DAS class interface.

	Ripped out the DASVHMap class and replaced it with an SLList of structs. See DAS.h for the (private) struct definition. There are no changes to the class interface. I did add a default ctor (DAS()), but that conflicted with another (old) ctor that had defaults for its two parameters, so I bagged that for now.

	*** empty log message ***

1998-11-23  Tom Sgouros  <tsgouros@gmail.com>

	late modifications to documentation

1998-11-11  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	*** empty log message ***

1998-11-09  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Changed from std.h to gnu-std.h

	Changed text of regexp error message.

	Added to the dtors to make sure the various Clause objects are deleted.

	Patched memory leaks found with Purify.

	Changed code; now uses a list of Clause pointers instead of using a list of Clause objects. This makes it simpler for the projection functions to add `invisible' selection clauses.

	This class now holds a list of Clause pointers, not objects.

	Added `ends' to strings made with ostrstream (fixes a bug found with purify). Added catch for throws from within the CE evaluation functions.

	version_regex now fast compiled.

	*** empty log message ***

	Added purify targets. Added gnu-std.h to GNU HEADERS Misc fixes (fixed tar target).

	Fixed up memory leaks in the calls to unique_names().

	Fixed errant delete [] (should have been plain delete).

	Fixed up the doc++ comments.

	Fixed up the online help.

	Changed no_such_id() to no_such_ident() (the former is used in bastring.h).

	Delete the dds object (created with new) after calling process_data().

	Fixed a number of memory leaks (found using purify).

	Fixed a memory leak in the parser_arg dtor. If the Error object is created the dtor must delete it.

1998-11-05  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Made error message for errant CEs involving arrays better. DDS::mark() now used for array variables --- this should fix a potential problem with structures of arrays.

1998-10-28  James Gallagher  <jgallagher@opendap.org>

	Updated from automake-1.3

1998-10-22  James Gallagher  <jgallagher@opendap.org>

	Fixed an array write error where exprlval.id was over-written by writing to element ID_MAX. The end of the array is ID_MAX-1.

1998-10-21  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Removed name_in_dds using #if 0 ... #endif

	Single array element may now be refd as [<int>]. So element seven of the array `a' can be referenced as a[7]. The old syntax, a[7:7], will still work. Projection functions are now supported. Functions listed in the projection part of a CE are evaluated (executed after parsing) as they are found (before the parse of the rest of the projections or the start of the parse of the selections. These functions take the same three arguments as the boll and BaseType * functions (int argc, BaseType *argv[], DDS &dds) but they return void. They can do whatever they like, but the use I foresee is adding new (synthesized - see BaseType.cc/h) variables to the DDS.

	Now includes RValue.h. Needed because expr.tab.h needs it.

	Added typedef for projection functions (proj_func). Removed the structs rvalue and func_rvalue - these have been merged into a single class RValue which is defined in Rvalue.cc/h.

	Added some instrumentation (using DBG). This might be useful later on...

	Added RValue.cc/o/h.

	Added a proj_func member (for support of Projection Functions). Fixed up the doc++ comments.

	The find_function() member function now checks for the name AND the function type before returning a value. This means that a bool and BaseType * function may have the same name but, because of their different types, still work properly in context.

	Fixed doc++ comments. Changed member names so they start with an underscore - makes the member functions easier to read.

	Made modifications that allow null argument lists. Replaced repeated code (to build arg lists) with a function call (it's a function call because it needs to be called from inside the expr parser, too).

	Added the two member functions: synthesized_p() and set_synthesized_p(). These are used to test and record (resp) whether a variable has been synthesized by the server or is part of the data set. This feature was added to help support the creation of variables by the new projection functions. Variables that are created by projection function calls are called `synthesized variables'. Some documentation strings were fixed.

	Added the two member functions: synthesized_p() and set_synthesized_p(). These are used to test and record (resp) whether a variable has been synthesized by the server or is part of the data set. This feature was added to help support the creation of variables by the new projection functions. Variables that are created by projection function calls are called `synthesized variables'.

	Added. Based on code that used to be in expr.h/cc

1998-10-19  James Gallagher  <jgallagher@opendap.org>

	Fixed a bug in ops(): buf2val was used incorrectly and string_ops never got the right strings. since the values were always "" for both arguments, any regex match returned true! Also, removed one call to buf2val in ops() since its OK to pass the member _buf to string_ops().

1998-10-14  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

1998-10-06  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

1998-09-17  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Changes for the new variable lookup scheme. Fields of ctor types no longer need to be fully qualified. my.thing.f1 can now be named `f1' in a CE. Note that if there are two `f1's in a dataset, the first will be silently used; There's no warning about the situation. The new code in the var member function passes a stack of BaseType pointers so that the projection information (send_p field) can be set properly.

	Fix documentation. Added BaseType * stack definition using the STL vector class.

	Changes for the new variable lookup scheme. Fields of ctor types no longer need to be fully qualified. my.thing.f1 can now be named `f1' in a CE. Note that if there are two `f1's in a dataset, the first will be silently used; There's no warning about the situation. The new code in the var member function passes a stack of BaseType pointers so that the projection information (send_p field) can be set properly. Added exact_match and leaf_match.

	Added leaf_match and exact_match. Added two new versions of the var member function. Fixed documentation.

	Added leaf_match and exact_match. Added two new versions of the var member function.

	Added doc++ target.

	Fixed errant comments.

	Changes for the new variable lookup scheme. Fields of ctor types no longer need to be fully qualified. my.thing.f1 can now be named `f1' in a CE. Note that if there are two `f1's in a dataset, the first will be silently used; There's no warning about the situation. The new code in the var member function passes a stack of BaseType pointers so that the projection information (send_p field) can be set properly. Changed the implementation of print_all_vals to use type() instead of type_name(). Added leaf_match and exact_match.

	Fixes to the documentation. Added leaf_match and exact_match mfuncs (support for the new var member function).

	Changes for the new variable lookup scheme. Fields of ctor types no longer need to be fully qualified. my.thing.f1 can now be named `f1' in a CE. Note that if there are two `f1's in a dataset, the first will be silently used; There's no warning about the situation. The new code in the var member function passes a stack of BaseType pointers so that the projection information (send_p field) can be set properly.

	Fixed errant documentation.

	Added missing doc++ right brace.

	Added include files to get rid of compiler messages about missing prototypes.

	Made the error messages more verbose (that is, the text in the Error objects sent back to the client). Fixed a bug where non-existent fields could be accessed - with predictably bad results.

1998-09-10  Jake Hamby  <jehamby@anobject.com>

	Forgot to update hexstring() to generate correct high-ASCII escapes.

	Add parser-util.cc to dependencies list

	Update escaping routines to not mangle high-ASCII characters with toascii() and to generate a correct escape sequence in octstring() for such characters through judicious casting (cast to a unsigned char, then an unsigned int).

	Change Str::print_val() to quote Strings when printing them (so geturl can generate less ambiguous output).

	Correct DODS_INT_MIN and DODS_LONG_MIN values

	Update to support EGCS and link with -lrx

1998-09-09  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

1998-09-08  James Gallagher  <jgallagher@opendap.org>

	Removed PERF macro.

	Removed PERF macro calls.

	Fixed up this file for use with C as well as C++. Removed the old PERF macro since it was based on a non-POSIX time function (systime()) and was never used!

1998-09-03  James Gallagher  <jgallagher@opendap.org>

	GNU is now cleaned. jdap and url-builder are not included in source distributions.

	*** empty log message ***

1998-09-02  James Gallagher  <jgallagher@opendap.org>

	Removed func_date to avoid conflicts with a copy in ff-dods-2.15.

	*** empty log message ***

1998-09-01  James Gallagher  <jgallagher@opendap.org>

	Make sure to escape []s with \\\ (three backslashes).

1998-08-31  James Gallagher  <jgallagher@opendap.org>

	Changed check_semantics so that the array and map vectors must of composed of simple-type elements.

	Changed the check_semantics member function so that the array and map vectors must be composed of simple-type elements.

1998-08-14  James Gallagher  <jgallagher@opendap.org>

	Fixed update-version target to use dap* versus dap-*.

1998-08-13  James Gallagher  <jgallagher@opendap.org>

	Fixed error messages.

	Fixed TAGS_FLAGS.

	Added include of unistd.h for dup(2).

	Bytes are now unsigned (0..255).

	Bytes now are unsigned (0..255). Fixed this test to check that.

	Fixed test after fixing misspelled error message.

	Changed DODS_CHAR_MAX to 255. Bytes are supposed to be unsigned in DODS.

1998-08-06  James Gallagher  <jgallagher@opendap.org>

	Fixed the misuse of the read(...) member function. See Grid.c (from jeh).

	Fixed misuse of read member function in serialize. Test for a read(...) error by checking the value of the `error' parameter, not the return value of the read(...) member function. (from jeh)

	Fixed the cvs log. It cannot have the $ Log $ and the comment thing on the same line...

	Added cache dir methods and stuff to ctor (from jeh)

	Added cache_dir member (from jeh).

	Added cast in call to abs. I'm not sure why...

	Fixed some of the doc comments.

	Field added so that aliases may be displayed as such and not by displaying the aliased information.

	Now prints aliases as such rather than replicating the aliased entry.

1998-07-28  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Moved GNU libg++ code into DAP subdirectory GNU.

1998-07-15  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added as part of the process to ween the project from ling++

1998-07-13  James Gallagher  <jgallagher@opendap.org>

	Fixes from the final test of the new build process

1998-07-09  James Gallagher  <jgallagher@opendap.org>

	Added -MG to CFLAGS. This causes gcc to assume missing files are generated.

1998-06-05  James Gallagher  <jgallagher@opendap.org>

	Changed the version regex used to check for the version string pattern so that it includes a `wildcard' at the end. Thus versions like 2.15.1 and 2.15a can be read (both as major version == 2 and minor version == 15).

1998-06-04  James Gallagher  <jgallagher@opendap.org>

	Added two new member functions to get/set the www_errors_to_stderr property. Also added a new member _www_errors_to_stderr to hold that property. When true, www errors are printed to stderr in addition to being recorded in the object's Error object. The property is false by default.

	Added two new member functions to set/get the new www_errors_to_stderr property. This controls whether www errors (like host not found) are reported on stderr in addition to the Error object. The default is to NOT report them to stderr. WWW errors are now recorded in the Error object.

1998-05-19  James Gallagher  <jgallagher@opendap.org>

	Fixed up some comments about reset_ and clear_constraint.

1998-05-18  James Gallagher  <jgallagher@opendap.org>

	Fixed the documentation of update_length. This member function is deprecated.

	Removed part of the class doc comment about selection and projection since they were not quite correct.

1998-04-07  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added declaration of prune_spaces(String)

	Added a call to prune_spaces to the default ctor. Removing spaces prevents various crashes. Note that CEs can themselves contain spaces but *leading* spaces caused problems.

	Added prune_spaces(String) function. This can be used to remove leading spaces from URLs and their embedded CEs (i.e., spaces between the ? and the start of the CE). Doing this before passing the URL/CE into the web library prevents various nasty crashes. This function is called by Connect's default ctor. Users of Connect don't have to call it.

1998-04-03  James Gallagher  <jgallagher@opendap.org>

	Release 2.15b3

	*** empty log message ***

	Patch from Jake Hamby; fixed bug where Structures which contained sequences did not print properly.

	Patch from Jake Hamby. Added print_all_vals member function.

	Patch from Jake Hamby. Added print_all_vals member function. Fixed print_val so that structures with sequences work properly.

	Patch from Jake Hamby to print_all_vals(). deserialize needed to be called before the first call to print_val.

	Fixed a bug in process_data where sequences were not handled properly. Patch from Jake Hamby.

1998-03-31  James Gallagher  <jgallagher@opendap.org>

	Work-around so that String.XPlex builds without optimization. gcc 2.8.1 cannot build this code with optimization.

	*** empty log message ***

1998-03-27  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	*** empty log message ***

	Added stuff for String.cc & String.h.

1998-03-26  James Gallagher  <jgallagher@opendap.org>

	Fixed tests for the new DDS::send() mime header stuff

1998-03-25  James Gallagher  <jgallagher@opendap.org>

	Added % to the set of characters that can start and ID

	Removed DODS_DEBUG define.

	Changed from converters to the _conv member in www_lib_init.

	Added keep_temps global for use with debuggers to keep those temp file around. Added parse_mime() to gobble up the mime header generated by DDS::send()

	Added targets for GNU CC test coverage stuff. Thecode should really be compiled using -O0 but that's another issue.

1998-03-19  James Gallagher  <jgallagher@opendap.org>

	Improved the error message reporting.

	Added documentation for the new parameters to the set_mime_*() functions.

	Fixed a bug where _program was feed into strlen even when it is NULL.

	Added documentation for the new parse_constraint() member function.

	Removed code associated with the (bogus) caching scheme. Removed _connects.

	Removed old code associated with the (bogus) caching scheme. Removed the _connects field. Used _conv as a flag to ensure the www library is intialized only once.

	Fixed calls to set_mime_*(). Removed old code (that was surrounded by #if 0 ... #endif). Added a version of parse_constraint(...) that works with FILE * Completely hacked send(...). It now takes care of setting up the compression sub process. Removed `compressed' flag from parse_constraint(...).

	Fixed calls to set_mime_*(). Removed the compression code (it is now in DDS::send(). Removed old code (that was surrounded by #if 0 ... #endif).

	Removed old code (that was surrounded by #if 0 ... #endif).

	Fixed the error messages so they use `' instead of : Added Error objects for array index errors. Removed old code (that was surrounded by #if 0 ... #endif).

	*** empty log message ***

	Removed old code (that was surrounded by #if 0 ... #endif).

	*** empty log message ***

1998-03-18  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

1998-03-17  James Gallagher  <jgallagher@opendap.org>

	Added an implementation of element_count().

	Added an implementation of element_count().

	Added an implementation of element_count().

	Added an implmentation of element_count().

	*** empty log message ***

	Added mfuncs element_count(), is_simple_type(), is_vector_type() and is_comstructor_type().

1998-03-11  Tom Sgouros  <tsgouros@gmail.com>

	Added doc++-style documentation.

1998-03-10  James Gallagher  <jgallagher@opendap.org>

	Removed -fno-exceptions.

	Fixed a bug in buf2val(...) where the assert failed when the value held by the variable was 0 (which is a perfectly valid value).

	*** empty log message ***

1998-03-03  James Gallagher  <jgallagher@opendap.org>

	Fixed for loops in Makefiles

1998-02-19  James Gallagher  <jgallagher@opendap.org>

	Changes for version 2.15 build

	Changed error messages so that ones from geturl that are not obviously from geturl are prefixed by `geturl: '.

	Added do_data_transfer() back in since the jgofs servers use it.

	Changed name of ...end_of_sequence to ...start_of_sequence since that is now how it is used. I hope this will reduce confusion. Changed the name of read_end_marker to read_marker (since they are not always end markers anymore).

1998-02-17  James Gallagher  <jgallagher@opendap.org>

	Reverted to the old transfer scheme for Sequences. Added EOI/EOS markers. The code supports (via version numbers in the header of the return documents) reading from the old-style servers (which do not have EOI/EOS markers.

1998-02-11  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added prototype for deflate_exists(). Removed prototype for decompressor().

	Added support for on-the-fly decompression. Added -z flag to suppress requesting data be compressed. Added new trace options (libwww core, etc.).

	Changed x_gzip to deflate. See Connect.cc/.h Removed old code.

	Removed old code.

	Added deflate targets. It is installed in etc. Added DODS_Cache.pm installation.

	Added call to util.cc:deflate_exists() to send_data(). This means that send_data() will only try to start the compressor if an executable copy of deflate can be found. If, for any reason a copy of deflate cannot be found data is sent without trying to compress it.

	Changed x_gzip to deflate. See Connect.cc/.h

	Mayor modifications for libwww 5.1 compression support. I removed lots of old code that was superfluous and changed the way the library is initialized to make that more efficient. Removed the old Semaphore hacks. Removed the content-encoding handler (that is now done by libwww). The Ctor and www_lib_init now take a flag that controls whether the server is told that the client can decompress data. Note that this does not mean data *will* be compressed, just that the client can process it if it is.

	Changed x_gzip/x-gzip to deflate since libwww 5.1 offers internal support for deflate (which uses the same LZW algorithm as gzip without the file processing support of gzip). Added to the arguments accepted by the ctor and www_lib_init so that they can now be called with a flag used to control compression. Fixed up the comments to reflect these changes.

	Added/fixed support for on-the-fly compression of data. The current code uses a subprocess to run a compression filter, deflate, which uses the LZW compression algorithm in zlib 1.0.4.

1998-02-10  James Gallagher  <jgallagher@opendap.org>

	Added TRUE and FALSE definitions.

	Added to DAP.

1998-02-09  James Gallagher  <jgallagher@opendap.org>

	Added/fixed doc++ comments.

1998-02-05  James Gallagher  <jgallagher@opendap.org>

	DODS now compiles with gcc 2.8.x

1998-02-04  Tom Sgouros  <tsgouros@gmail.com>

	Another draft of documentation.

1998-01-14  Tom Sgouros  <tsgouros@gmail.com>

	First draft of doc++ class documentation.

1998-01-12  James Gallagher  <jgallagher@opendap.org>

	Added a copy ctor since TestSequence has its own private data members. g++ 2.7.2.3 (?) running on Linux complained (apparently) about it being missing. Also added _duplicate private member function.

	Added a copy ctor since TestSequence has its own private data members. g++ 2.7.2.3 (?) running on Linux complained (apparently) about it being missing.

1998-01-12  Tom Sgouros  <tsgouros@gmail.com>

	Second pass at class documentation.

1997-12-31  James Gallagher  <jgallagher@opendap.org>

	Enclosed print_basetype_pointer() function in #if DODS_DEBUG == 1 #endif to stop compiler warnings about it being unused.

	Added casts in serialize and deserialize to get rid of warnings about signed-ness of buffers passed to XDR functions.

	Changed name of read_level() to level() to reduce confusion in child classes. Also changed return type from unsigned int to int. This allows callers to store flags, etc. in the _level field - not the best thing, but a realistic expectation

	Removed the old, errant, test for 4 byte doubles.

1997-12-30  James Gallagher  <jgallagher@opendap.org>

	Added target for server tests.

1997-12-18  Tom Sgouros  <tsgouros@gmail.com>

	First draft of class documentation, entered in doc++ format, in the comments

	merged conflicts

1997-12-16  James Gallagher  <jgallagher@opendap.org>

	version 2.15

	*** empty log message ***

1997-12-15  James Gallagher  <jgallagher@opendap.org>

	Merged release 2.14d changes.

	Merged changes from release-2.14d.

	*** empty log message ***

	Changes from release 2.14d

	Added `-' to characters allowed in NAME lexeme.

	Added code for NAME lexeme.

	geturl is now installed in the bin dir.

	The return type of set_vec() is now bool (was void).

	Added debugging code to help finder problems reading sequences from older servers.

	Fixed what may have been a lingering problem with version number strings in the server_handler() function. Added initialization of _server to `dods/0.0' in ctor. Thus _server will have a value even for older servers that don't support server version numbers.

	Changed _version_string_to_numbers() so that it does something sensible when the version string is hosed.

	Added type checking set_vec. If the type of the element to include in the vector does not match the vector's type, set_vec() returns false.

	Changed check_semantics() so that it returns an error message instead of printing one (thus it now works like all the other implementations of check_semantics().

1997-11-20  James Gallagher  <jgallagher@opendap.org>

	Added to the name rule so that it recognizes both the ID and NAME lexeme as valid when parsing the dataset name. NAME (see dds.lex) is just like ID except that it includes `.'. Thus datasets with names like sst.reynolds.nc now parse correctly.

	Added the NAME lexeme. This is explicitly for datasets with `.' in their names. That character cannot be used in the name of a variable since in DODS it separates parts of a constructor type. However, it can be part of a dataset name. Using a separate lexeme is required by the parser.

1997-10-09  James Gallagher  <jgallagher@opendap.org>

	Resolved conflicts in merge of 2.14c to trunk.

1997-10-03  James Gallagher  <jgallagher@opendap.org>

	Release 2.14c fixes

1997-09-22  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added DDS * to deserialize parameters.

	Changed code so that the new DataDDS objects are used/created when accessing data.

	Added comment info.

	Added doc++ style comments.

	Added DDS * to deserialize parameters.

	Added DDS * to deserialize parameters. Added End of instance and end of sequence marker constants. Change serialize() and deserialize() mfuncs so that the new markers are used and embedded sequences are sent without needlessly replicating the enclosing sequence's instance.

	Added DDS * to deserialize parameters.

	Added massive amounts of code to read test data from a file.

	Fixed a bug in vec_resize.

	Added new function to read ancillary DAS and DDS files.

	*** empty log message ***

	Added data file option. Now -f can be used to specify the name of a file from which to read data. This currently only works with Sequences, but in the future all test data could be read from a file. Added use of the DataDDS class (which is required by the new core software).

	Rewrote the handling of received Sequences in `constrained-trans()'.

	Created this subclass of DDS to hold version information in the data DDS

1997-08-29  James Gallagher  <jgallagher@opendap.org>

	First version

	*** empty log message ***

1997-08-28  James Gallagher  <jgallagher@opendap.org>

	Created

1997-08-25  James Gallagher  <jgallagher@opendap.org>

	Removed errant double semicolon at the end of the Url attribute - replaced it with a single semicolon.

1997-08-22  James Gallagher  <jgallagher@opendap.org>

	Changed the way that the _error_message member is processed. Now if the message does not have explicit double quotes, print() will add them. The mfunc is smart enough to add the quotes only if needed so old code (which provides the quotes) will still work and new code without the quotes works too. This makes for a more convenient use of the Error object.

	Added to the `description' rule so that Error objects with only a code will parse.

1997-08-11  James Gallagher  <jgallagher@opendap.org>

	Really fixed the comment leaders this time...

	DODS-2.14b distribution

	Fixed comment leaders for new CVS version

1997-08-09  James Gallagher  <jgallagher@opendap.org>

	Changed the names of AttrTable_to_String and String_to_AttrTable.

	Changed/fixed the type comparison in attr_append so that code which calls unsigned int `UInt32' won't break (the type is called Uint32, but the das parser and scanner accept UInt32 as well).

	Added install of DODS_Dispatch perl library.

1997-08-07  James Gallagher  <jgallagher@opendap.org>

	Changed type of dods_byte from unsigned char to char.

1997-07-15  James Gallagher  <jgallagher@opendap.org>

	Release 2.1.4a

	Formatting.

	Fixed error message text for length function.

	Changed return type of the length member function.

	Changed return type of length member function.

	See Sequence.cc for info on changes to the length member function.

	Changed length member function to return -1 instead of 0. Thus the default, when a subclass does not define its own version of this member function, is to return -1. This value will be easy to differentiate from 0, which could mean that the sequence has zero elements.

	*** empty log message ***

1997-06-30  James Gallagher  <jgallagher@opendap.org>

	Removed some old code (commented out).

	Fixed a bug when vectors of UInt32 were used. I changed the way the type name was passed to AttrTable::append_attr() so that the names were always the same regardless of form of the name used in the DAS. Fixed a bug when Urls are used as an attribute type.

1997-06-12  James Gallagher  <jgallagher@opendap.org>

	Fixed #ifdef HAVE_EXPECT #endif.

	*** empty log message ***

1997-06-06  James Gallagher  <jgallagher@opendap.org>

	Last minute changes for version 2.14

	Wrapped DODS_ROOT in #ifndef ... #endif.

1997-06-05  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added mfuncs with char * parameters for some of the calls. See AttrTable.h

	Added mfuncs which have char * parameters for those mfuncs which accept both Pix and String parameters. This avoids a conflict between promotion of char * actuals to Pix instead of String (while the latter makes more sense, the former actually happens).

	Added parse_mime(); a tiny parser for the fields DODS uses. Not a real MIME parser. Added process_data to facilitate processing data from stdin. Modified request_data() member function so that it works when reading from stdin. Fixed a bug in the destructor where _output and _source were not set to null.

	Added read_data(), parse_mime() and process_data() mfuncs.

	Removed add_table(char *, ...).

	Added components() and projection_yields_grid() mfuncs.

	Added prototypes for new functions.

	Modified so that data can be read from stdin (similar to writeval).

	Fixed the decompresser() function - made int data[2] automatic instead of static. Fixed the spelling mistake in the function names compresser and decompresser.

	*** empty log message ***

	Changed so that compression is not used.

	Added two mfuncs: components() and projection_yields_grid(). These aid in sending Grids that have been projected in various ways. Fixed print_decl() so that a Grid that has some components projected either by explicitly listing them or by listing only some of the Grids dimensions will be sent properly. This means that some Grid objects `decay' to either Structures of Arrays or simple Arrays depending on the projection.

	Added four function that help with writing the *_dods filter programs: usage(), do_version(), do_data_transfer() and read_ancillary_dds().

	No longer install the (bad) dods-core-version perl program.

1997-05-22  James Gallagher  <jgallagher@opendap.org>

	Changed the way global attributes are ferreted out. Previously I had assumed that any attribute group that was not also the name of a variable was a group of `global' attributes. However, the new aliases change this. In response I've changed the way usage looks for global attributes; it looks for attribute groups which contain the strings `global' and/or `dods'. Case is not important.

1997-05-20  James Gallagher  <jgallagher@opendap.org>

	Added a fix for aliases between top level groups of attributes.

1997-05-13  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added instrumentation for function decompressor().

	Changed options and command `format' so that das-test is similar to dds-test.

	Added calls to close_output() in the dtor. This ensures that all files will be closed when an Connect is destroyed.

	Changed max_str_len to 32k - a temporary fix for String variables

	Added changes to handle the new Alias and lexical scoping rules.

	*** empty log message ***

1997-05-07  James Gallagher  <jgallagher@opendap.org>

	Fixed a bug where the last decompresser process exit was not handled properly. The fix was to make sure that calls for data interleaved with calls for the DAS and/or DDS objects properly wait for the exit status of the last decompression process. In addition, ensure that Connect's dtor waits for the exit status of the very last decompression process.

1997-05-06  James Gallagher  <jgallagher@opendap.org>

	Added aliases to the grammar. An alias can appear in place of an attribute and uses the syntax `alias <var1> <var2>'. If var1 exists, var2 becomes an alias to it and vice versa. If neither var1 nor var2 exists or if they both exist, and error is reported and parsing stops.

	Added Alias and Global to the set of known tokens. Added many new characters to set of things that can appear in an identifier.

1997-05-05  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

1997-05-01  James Gallagher  <jgallagher@opendap.org>

	Fixed an error in date_func where argv[0] was used as a BaseType instead of a BaseType *.

1997-04-15  James Gallagher  <jgallagher@opendap.org>

	Added optional argument to print_variable functions so that the variable can be printed using the current constraint. Changed the call to print_variable() in DDS::send() so that the constrained variable is printed.

1997-03-27  James Gallagher  <jgallagher@opendap.org>

	Update for version 2.13

	Added dods_progress() prototype. See util.cc.

	Added dods_progress() function that looks for an environment variable to see if the user wants the progress indicator visible. Thus, they can use one environment variable to control the GUI as a whole or this one to control just the progress indicator.

	Fixed depend. Again. Removed $(STRIP) and added -s option to install.

	Fixed a problem in set_mime_*() where Content-Encoding was sent with the value x-plain. This caused Netscape on Windows to barf. I'm not sure that it is a real error, but sending C-E only when its value is x-gzip or x-compressed apparently causes the message to go away.

1997-03-23  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added field _comp_childpid. See the note in Connect.cc Re: this field.

	Added temporary fix for decompression bug. When decompressing `zombie' processes were created which would fill the system's process table. The fix explicitly catches the exit of child processes. This code can be removed when/if we switch to version 5.1 of the WWW library.

1997-03-13  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	*** empty log message ***

1997-03-11  James Gallagher  <jgallagher@opendap.org>

	Removed code that set the HTTP protocol version header based on the value of the SERVER_PROTOCOL environment variable. In servers that support HTTP/1.1, the value of this env var was "HTTP/1.1" which broke our clients since the servers (which are `nph') do *not* support HTTP/1.1.

1997-03-08  James Gallagher  <jgallagher@opendap.org>

	Changed call to `unique()' to `unique_names()' (see util.cc).

	Changed default param to check_semantics() from  to String() and removed the default from the argument list in the mfunc definition

	Changed name of function unique() to unique_names() to avoid a conflict with the STL.

	*** empty log message ***

1997-03-07  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

1997-03-05  James Gallagher  <jgallagher@opendap.org>

	Added bool parameter `compressed' (defaults to true) to the send member function. See DDS.cc.

	Silly bug where show_gui() was not called in some cases.

	Now correctly gets the server protocol (HTTP 0.9, 1.0 or 1.1) from the environment variables and sets the return doc header accordingly.

	Removed the static global _logfile. See Connect.cc.

	Fixed the logfile bug; when linking with ld or cc static objects are not initialized. The _logfile member was a static global object and caused core dumps when it was not initialized.

	Added Cannot read file message to list of builtin messages.

	Added calls to set_mime_binary() in DDS::send().

	Removed bogus prototypes for compress_stdin,out.

	Changed display_message member function so that it uses Gui::response() instead of Gui::command(). The later only works for things like the progress popup for which expect does not need to wait. However, for things like dialogs, expect must wait for the user to `hit OK', hence the use of the response() member function.

1997-03-03  Reza Nekovei  <rnekovei@ieee.org>

	Changed default error object's output stream to cout. This will send it to the client side (versus the local server's log file, cerr).

1997-02-27  James Gallagher  <jgallagher@opendap.org>

	Added error messages.

	Tweaked comments.

	Corrected call to unique() in check_semantics() (added new String &msg parameter).

	Changed check_semantics() so that it now returns error messages in a String object (passed by reference).

	Added String &msg parameter to unique(). Instead of writing messages to cerr, messages are now written to this string object.

	Removed `parse error' message from parse_error() function.

	Tweaked error messages so that they no longer mumble about parse errors.

1997-02-26  James Gallagher  <jgallagher@opendap.org>

	Fixed problem with consistency check in Error::error_code().

1997-02-24  James Gallagher  <jgallagher@opendap.org>

	Removed `rule' for "." since it cannot be matched.

1997-02-18  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Changed (void) to ().

	Fixed decompressor and compressor parameter lists.

	Fixed ctors (removed lame error object initializers).

	Added childpid parameter.

	Moved the default ctor back into the public section...

	Allow empty Error objects.

1997-02-17  James Gallagher  <jgallagher@opendap.org>

	Changed output of verbose option so it is consistent for DAS, DDS and data

	Fixed silly spelling errors.

	Fixed a bug in the ctors introduced by making Error's ctor private.

1997-02-15  James Gallagher  <jgallagher@opendap.org>

	Changed comments for doc++. Moved default ctor into the private part of the object.

	Changed OK() so that empty errors return false. Added assert calls.

1997-02-14  James Gallagher  <jgallagher@opendap.org>

	Changed grammar to allow Error objects which have no `program' component. That is, the program part is absent. Previously the program part had to be there even if the fields had null values.

	Fixed error-test target.

1997-02-13  James Gallagher  <jgallagher@opendap.org>

	Added allowable and escape parameters to id2dods and dods2id so that the builtin regexs can be overridden if needed. Switched to the `fast compile' mode for the Regex objects.

	Removed reliance on the dods-hdf code. Introduced a const int MAXSTR with value 256. This matches the length of ID_MAX in the parser.h header (which I did not include since it defines a lot of software that is irrelevant to this module).

	Added to DODS core

	Added a field to store information from the MIME header `Server:'. Added a member function to access the value of the field and a MIME header `handler' function to store the value there.

	Added MIME header `handler' for the server header. Added mfuncs to access the server information (which in DODS is the version number of the core software).

	Added install of dods-core-version.

	Added printout of the DODS version number stamp (read from the MIME header). Use the verbose option to enable display.

1997-02-13  Reza Nekovei  <rnekovei@ieee.org>

	Fixed concatenation of _proj and _sel members into request_das and request_dds URLs.

1997-02-12  James Gallagher  <jgallagher@opendap.org>

	Added version switch. Made compatible with writeval's command line options.

	Added use of the optional parameter to Connect's ctor; if -t (trace) is given on the command line, then print www library informational messages. Changed trace option switch from -v (which is now used for verbose - an option that is entirely separate from trace) to -t.

	Fixed handling of non fatal errors reported by the www library. Now an optional parameter to the class ctor enables display of these informational messages. However, they are not registered as `web_errors' in the type field of the Connect object. Fixed a bug which introduced extraneous '?'s into URLs.

	Added optional parameter to the ctor for this class; it enables informational error messages from the WWW library layer.

	Fixed bass asserts in process_array_indices and process_grid_indices.

1997-02-09  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Changed return type of dods_root() from String to char *.

	Added assert() calls for pointers. Added code to fix warnings about comparisons between int and unsigned numbers. Changed return type of dods_root() from String to char *.

	Fixed bug where attribute type of int32 was broken on 64bit machines.

	Modified usage of request_data() to match new return type.

	Fixed depend lameness.

	Added assert statements for pointers

	Changed the return type of request_data() and related functions from DDS & to DDS *.

	Fixed processing of error returns. Changed return type of request_data() (and related functions) from DDS & to DDS *. The member function now return NULL if an error is detected.

	*** empty log message ***

1997-02-04  James Gallagher  <jgallagher@opendap.org>

	Fixed bugs in URL() and CE() where the _URL, _proj and _sel members were misused.

1997-01-28  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Wrapped the generic header_handler() in DBG() so that it is only used while debugging.

1997-01-13  James Gallagher  <jgallagher@opendap.org>

	Changed the name of the private member `map' to `attr_map' to avoid a name collision with the STL'd map class.

1996-12-18  James Gallagher  <jgallagher@opendap.org>

	Fixed the install-gui target

	*** empty log message ***

	Removed the DODS_PERF define.

	Fixed various problems in the install-gui, -geturl and -usage targets.

	Fixed spelling in ErrMsgT()'s message.

	Modified the parser so that it returns Error objects for certain types of errors. In order to take advantage of this, callers must examine the returned object and process it as an Error object if status is false.

	Tried to fix the online help - maybe I succeeded?

	Added massive fixes for the processing of attributes to sort out the `global attributes'. Also added changes to the overall layout of the resulting document so that the hierarchy of the data is represented. Added some new utility functions.

1996-12-12  James Gallagher  <jgallagher@opendap.org>

	Added install target for usage server. Added usage server to list of things built by `all' target.

1996-12-11  James Gallagher  <jgallagher@opendap.org>

	Created.

1996-12-03  James Gallagher  <jgallagher@opendap.org>

	Fixed a bug in the char * array DESCRIPT where "dods_error" was catenated with "web_error" (due to a missing comma).

1996-12-02  James Gallagher  <jgallagher@opendap.org>

	Added ostream and bool parameters to parse_constraint(). If the bool param is true the the code assumes it is being run in the server. In that case error objects are not evaluated but instead are serialized and set to the client via the ostream.

	Added ostream and bool params to parse_constraint(). The bool parameter is used to tell the member function that it is running in the server of the client. The ostream is the sink for error objects (server side) or messages (client side).

	func_member now does the right thing with the dds by sending dds.filename() to ops().

	Changed int_ops prototypes so that they use the dods_{uint,int}32 datatypes.

	Added `filename' field and access functions.

	Added `filename' field and access functions. This field is for recording the filename associated with the dataset from which the DDS is generated. It does not actually have to be a filename; rather it is intended to be used by BaseType's read() member function when that code must access some OS controlled resource to get data for a particular variable. For most systems it will be a file, while for some systems it may be a RDB or blank.

	Added dataset as a parameter to the ops member function.

	Added versions of int_ops for various combinations of signed and unsigned operands. Ignore the warnings about comparisons between signed and unsigned...

	Added cases for uint32 to various parts of Vector.

	Added case for unit32 to ops() member functon.

	Added case for uint32 to ops() member function.

1996-11-27  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added DDS as third parameter to function in the CE evaluator

	*** empty log message ***

	Fixed das-test dependencies. Arrgh...

	Expanded help to include all the verbose options. Added PERF macros to code around request_data() call.

	Expect this test to fail because of problems passing double quotes through Tcl/Expect.

	*** empty log message ***

1996-11-24  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added prototypes for new functions.

	Added new dods_root function. Fixed compressor(). Fixed systime().

	Added DODS_PERF macro.

	Removed compress/decompress functions. Better versions are in util.cc Changed from static global version of dods_root to function version.

	Added web-error to set of object types. Added two MIME parsers to set of friend functions. Removed unused friend functions.

	Added USE_SEM control macro - since asynchronous connects are massively broken the semaphores are not used. The _connects field is not initialized to -1 and handled so that HTLibTerminate() is never called but so that the web library is initialized before the first use of connect. Apparently calling HTLibInit() more than once (even with an interleaving call to HTLibTerminate()) breaks the 5.0a version of the library. Added the constant web_error the the set of content-descriptions. Removed use of the disk cache. Added it in later; read_url() must be modified. Never use the broken asynchronous code. Fixed processing of content-description so that web-error and dods-error messages are handled correctly.

1996-11-21  James Gallagher  <jgallagher@opendap.org>

	Removed decompress() function. Switched to decompressor function in util.cc Wrapped semaphore code in USE_SEM preprocessor define - the semaphore code may not be necessary...

	Added compressor and decompresor prototypes.

	Added compressor and decompressor functions.

1996-11-20  James Gallagher  <jgallagher@opendap.org>

	Fixed header parsing. Now I use my own header parsers for the content-description and -encoding headers. Once the values of these headers have been stored in the Connect object it is easy to operate on the data stream. This is simpler than using libwww's stream stack (at least for decompression and error document routing).

1996-11-19  James Gallagher  <jgallagher@opendap.org>

	Fixed lingering bug in compress_stdout where the user's path was not searched correctly.

	Changed the way depend works; now depending is independent of Makefile creation.

	Ripped out old code.

	Fixed a bug with HTLibTerminate() where multiple URLs caused a core dump. Fixed the progress indicator. Ripped out the semaphore stuff used with the asynchronous connects - those connects now work, at least on the Sun.

	Modified -D option to correctly process the Asynchronous option.

1996-11-18  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

1996-11-15  James Gallagher  <jgallagher@opendap.org>

	Fixed typo in install-gui.

	Fixed a bug where multiple urls failed.

	Added install of tcl GUI scripts.

1996-11-13  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	*** empty log message ***

	*** empty log message ***

	Fixed debugging.

	*** empty log message ***

	Added set_mime_error() function. Use this to send MIME headers indicating that an error has occurred. NB: Don't use this when sending back an Error object - this is for those cases where an error object won't do and you must signal an error to the WWW/HTTP software on the client side.

	Fixed the ops() function so that comparisons between UInt32 and Int32, etc. will work correctly. Untested.

	*** empty log message ***

	Added clean of the Map, Stack, Vec and Plex directories.

	Fixed the int32_ops() function so that comparisons with unsigned integers has a better shot at working. Since there are no UInt32 data sets this has not yet been tested.

	Now uses version 5.0a of the WWW library.

	Updated so that this now works with version 5.0a of the WWW library from the W3c. Fixed handling of certain types of http/www errors.

	*** empty log message ***

1996-11-12  James Gallagher  <jgallagher@opendap.org>

	Removed

1996-10-31  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added WWW_ROOT. Fixed expr-test target.

	Fix the help message so that -D is not described as -A...

1996-10-28  James Gallagher  <jgallagher@opendap.org>

	Added define of YY_NO_UNPUT to suppress creation of that function.

	Added unsigned int 32 to the list of datatypes used/supported by the DAP.

	Added unsigned int to set of possible datatypes.

	Added UInt32 to type names returned by type_name() member function.

	Added.

	Fixed compile-time bug in ops() where the type names dods_* were used where the constants dods_*_c should have been used.

	Added include of UInt32.h and prototype of NewUInt32().

	Added unsigned int to set of possible attribute value types.

	Fixed tests in check_uint(). NB: strtol() does not check for overflow on SunOS.

	Added prototypes for check_uint(...); functions that test unsigned integers.

	Added functions to test unsigned integers.

1996-10-18  James Gallagher  <jgallagher@opendap.org>

	Fixed the fix for bison 1.25...

	Fixed definition of dtor (was Int32 instead of UInt32).

	Fixed an error in the ctor where dods_int32_c was passed instead of dods_uint32_c. Changed comparisons so that unsigned 32 bit ints are used when appropriate.

	Changed variable types used for comparison operations from 16 to 32 bit integers.

	Changed request_das() and request_dds() so that they now pass any initial constraint to the DAS and DDS servers.

	Changed set_mime_binary() and set_mime_text() so that they produce a full HTTP/MIME header.

1996-10-16  James Gallagher  <jgallagher@opendap.org>

	Fixed bad operator in DODS_BISON_VER preprocessor statement.

1996-10-10  James Gallagher  <jgallagher@opendap.org>

	Fixed DODS_BISON_VER preprocessor statement. >= apparently is not recognized by g++'s preprocessor.

1996-10-08  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added test for the -D option so that a Ce can be supplied either with the -c option or using a ? at the end of the URL.

	Latest.

	Added % to the set of characters allowable in identifier names

	Fixed deserialize so that when called on a null Sequence it will return true.

	Ripped out the VPATH stuff since it gets in the way too often.

	Latest.

	Added a fix for Bison 1.25 so that PARSE_PARAM will still work

	Added fields for the projection and selection parts of a CE supplied with the URL passed to the Connect ctor.

	Added code so that a constraint expression appended to a URL is properly handled. The CE is stored in in the Connect object. When a CE is passed to the request_data member function, Connect correctly combines the projection and selection parts of that CE with the matching parts of any initial CE.

	Added symbol for Bison version; we need to test for 1.22, 1.24 and 1.25. The symbol is defined to be the version number without the decimal point.

1996-10-01  James Gallagher  <jgallagher@opendap.org>

	Changed instances of XDT_INT16 to XDR_UINT16.

	Changed XDR_SHORT to XDR_INT16 and XDR_USHORT to XDR_UINT16 (to match the Int16 and UInt16 classes).

1996-09-24  James Gallagher  <jgallagher@opendap.org>

	Fixed conflict between two version of print_all_vals prototypes.

1996-09-23  James Gallagher  <jgallagher@opendap.org>

	Fixed lame declaration of print_all_vals().

1996-09-20  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

1996-09-19  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Added code to process sequences correctly when given the -D (get data) option.

	Added Strip to the install operations. Added geturl to the set of things installed.

	Fixed syntax errors in the enum `Type'.

1996-09-18  James Gallagher  <jgallagher@opendap.org>

	Fixed a bug in the dtor which caused the _anchor WWW lib object to be deleted twice under some (likely) conditions. The efence library found the error.

1996-09-16  James Gallagher  <jgallagher@opendap.org>

	Fixed var(const String name) so that it would correctly descend names of the form <base>.<name> where <name> may itself contain `dots'.

1996-09-12  James Gallagher  <jgallagher@opendap.org>

	Fixed a nasty bug in print_array (private member function) where recursive calls were made in the wrong order causing 3+ dimension arrays to print many more values than actually exist in the array.

1996-09-11  James Gallagher  <jgallagher@opendap.org>

	Fixed two errors in xdr_str: 1) Use of max_str_len as an array dimension (max_str_len is approx 4e9; a large array by most standards...) and 2) use of storage on the stack for the return string. Now xdr_strings internal allocation mechanism (which uses malloc) is used to create the space needed by the incoming string. After that string is copied to the String object parameter it is freed using free() (Not xdr_free() as the SunOS 4 man page erroneously suggests).

1996-09-05  James Gallagher  <jgallagher@opendap.org>

	Added a new option to geturl, -D, which uses the Connect::request_data member function to get data. Thus -a, -d and -D can be used to get the das, dds and data from a DODS server. Because the request_data member function requires a constraint expression I also added the option -c; this option takes as a single argument a constraint expression and passes it to the request_data member function. You must use -c <expr> with -D.

1996-08-26  James Gallagher  <jgallagher@opendap.org>

	Changes for version 2.07

	Added.

	Added.

	Added type constants for 32 bit unsigned ints, 16 bit signed and unsigned ints and 32 bit floats.

1996-08-15  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

1996-08-13  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Generated files.

	Changed definition of the read member function.

	Added __unused__ to definition of char rcsid[].

	Added prototypes for the *_ops() functions.

	Added the *_ops() functions (moved from various class files).

	Extended definition of parser_arg so that it can serve as the interface for all the parsers. Added prototypes for all the new check_* functions.

	Added __unused__ to definition of char rcsid[]. Added a new parse_error function that builds an Error object and returns it instead of printing to stderr. Added versions of check_*() that take parser_arg and a context string. These call the new parse_error() function.

	Added __unused__ to definition of char rcsid[]. Added code so that local `URLs' are skipped.

	Added __unused__ to definition of char rcsid[]. Switched to the parser_arg object for communication with callers. Removed unused parameters from dereference_{url, variable}, make_rvalue_list and append_rvalue_list.

	Added __unused__ to definition of char rcsid[].

	Added __unused__ to definition of char rcsid[]. Uses the parser_arg object to communicate with the parser.

	Added __unused__ to definition of char rcsid[]. Now tests the Gui.

	Added on-line help. Now, always returns an exit code.

	Added parser_arg object macros. `Fixed' error messages. Changed return typw of daserror() from int to void.

	Added __unused__ to definition of char rcsid[]. Added parser.h to included files.

	Added __unused__ macro.

	Added __unused__ to definition of char rcsid[].

	Changes return type of length() member function from unsigned to int. A return value of -1 indicates that the vector has no length.

	Added __unused__ to definition of char rcsid[]. Fixed int -vs- unsigned int discrepancies.

	Added void casts to values computed in print_val() for loops.

	Added __unused__ to definition of char rcsid[]. Moved str_ops() to util.cc

	Removed trans-test from build process - it is obsolete given expr-test. Changed the way the code from bison in munged - now a single munge.awk script is used.

	Moved int32_ops to util.cc Added __unused__ to char rcsid[] definition. Removed system includes.

	Moved float64_ops to util.cc.

	Switched to parser_arg object for communication with caller. Fixed bogus declaration of Errorerror() (from int to void).

	Latest

	Added __unused__ to rcsid definition. Added include of assert.h.

	Removed system includes. Added documentation on new interfaces for display_message() and correct_error().

	Switched to the parser_arg object for passing parameters to/from the Error.y parser. NB: if an error object is bad a message is sent to stderr to avoid going round and round with bad error objects! Changed the interface to display_message; Gui is by default NULL so that calling it with an empty parameter list causes the message string to be sent to stderr. Changed the interface to correct_error(); it now returns a string which is the corrected error or "".

	The parser (dds.y) is now called using the parser_arg object. the member function eval_function() now returns a NULL BaseType * when the function in the CE does not exist.

	Removed the system includes - this is part of my drive to eliminate nested includes from the DODS core software. I'm still waffling on this, though.

	Switched to use of parse_arg object for passing values to and from the bison generated parser. Added test for error objects on return from the parser and call the display_message member function when one is detected.

	Corrected misuse of the istrstream class; added calls to the freeze member function where needed. Fixed test for URL -vs- filename in the object ctor.

	Fixed a bug in the value() member function where non-existent functions were `evaluated' (producing a core dump).

	Added _unused_ to the static global rcsid to remove warning when building with gcc -Wall. Moved the byte_ops function to util.cc.

	Added bounds checking to the add_constraint member function. add_constraint() now returns false when a bogus constraint is used.

	Changed return type of add_constraint from void to bool. Now the member function returns false when a bogus constraint (e.g.,bad array bounds) are used.

	Fixed tests so that they match the output of the parser.

	Fixed dds-test_start so that interactive programs can be tested. This was done by making the global variable `spawn_id' visible in the procedure.

1996-08-12  James Gallagher  <jgallagher@opendap.org>

	Changed for the new error message text from the parser.

	Fixed for new byte tests - -127 to 127 is now the valid range for byte values.

	Fixed a bug in check_semantics where the array name was confused with the dimension names - this may be a bug in the libg++2.7.1 implementation of the class String or a bug in our usage of the same. The problem did not show up on the SunOS 4.1.3 platform.

1996-08-09  James Gallagher  <jgallagher@opendap.org>

	Changed DEBUG and DEBUG2 to DODS_DEBUG and DODS_DEBUG2 to avoid conflicts with the WWW libraries use of that name (which it always defines...).

1996-07-17  James Gallagher  <jgallagher@opendap.org>

	Removed copy of the _output FILE * and bad logic on output() member function. Added reset of _source to 0 in closr_output().

1996-07-16  James Gallagher  <jgallagher@opendap.org>

	Added usage function. Added version option. Fixed calling logic - now a usage message is printed when no options are given. Fixed warnings about signed -vs- unsigned compares.

	Fixed/removed bogus comments.

	Fixed test version number.

	Added.

	Fixed problem with interactive runs; the global variable SPAWN_ID had to be declared as such (even though its not explicitly referenced) in das-test_start.

1996-07-15  James Gallagher  <jgallagher@opendap.org>

	Added __unused__ to rcsid to suppress warnings from g++ -Wall. Fixed a bug in xdr_str(): a pointer to the decoded string was assigned to the formal parameter BUF instead of the string value itself.

1996-07-11  James Gallagher  <jgallagher@opendap.org>

	Modified configure.in and Makefile.in so that the WWW, expect and tcl libraries are automatically found by configure.

1996-07-10  James Gallagher  <jgallagher@opendap.org>

	Fixes for libtcl.a, libexpect.a and libwww.a

	*** empty log message ***

1996-07-08  James Gallagher  <jgallagher@opendap.org>

	Added HAVE_EXPECT compile-time variable.

1996-06-21  James Gallagher  <jgallagher@opendap.org>

	Added.

	Latest version...

	Fixed a comment.

	The latest versions...

	Modified to accomodate the new Gui class.

	Added Gui.cc, .h and .o to libdap++.a.

	Added Gui pointer to the Error oject's correct_error() and display_message() mfuncs. These mfuncs now used the GUI to display messages.

	Added Gui pointer to the Error oject's correct_error mfunc call.

	Removed GUI code to a new class - Gui.

1996-06-20  James Gallagher  <jgallagher@opendap.org>

	Added conditional definition of union semun {};

	Added HAVE_SEM_UNION for hosts that do not define the union semun {} union. Changed SEM_PROTO to HAVE_SEM_PROTO to be more inline with other similar defines.

1996-06-18  James Gallagher  <jgallagher@opendap.org>

	Latest.

	Added support for the GUI progress indicator.

	Fixes for Grid constraints. These include not deleting the array indices lists after processing the Array component of a grid (but before processing the Maps...).

	Added file and line number information to the macros.

	Latest.

	Modified so that the compress/decompress functions use the DODS_ROOT enviroment-variable/define or the user's PATH to find gzip.

	Added expect and tcl library to LIBS definition (for GUI).

	Added support for a GUI. The GUI is actually contained in a separate program that is run in a subprocess. The core `talks' to the GUI using a pty and a simple command language. Removed GZIP preprocessor define and added DODS_ROOT define. Added checks in the code to use the environment variable DODS_ROOT in preference to the compile-time value (if non-null).

	Added support for a GUI. The GUI is actually contained in a separate program that is run in a subprocess. The core `talks' to the GUI using a pty and a simple command language.

	Added define SEM_PROTO which is used to control inclusion of the semaphore prototypes in Connect.cc. Removed GZIP define and replaced it with a DODS_ROOT define (which is the double quoted path to the DODS root directory of the build).

1996-06-14  James Gallagher  <jgallagher@opendap.org>

	Added `<< ends' to the lines where ostrstream objects are used (without this there is no null added to the end of the streams).

1996-06-11  James Gallagher  <jgallagher@opendap.org>

	New Features: Data can now be compressed. The header generation functions set_mime_{text,binary} can be used to `turn on' output compression by using `x_gzip' as a content-encoding value (the default is no compression which corresponds to a content-encoding value of x_plain). The implementation of Connect will automatically decompress any compressed data stream. Can should be taken not to compress very small things since they may wind up bigger! Also, the program gzip is used to perform the compression so it must either be in DODS_ROOT/etc or on the user's PATH.
	Multiple, simultaneous, connects are now supported. To do this I added a new
	parameter to serialize and deserialize. The parameter is an XDR pointer.
	There are function in cgi_util.cc which can be used to create these pointers.
	The DDS::send() member function takes care of this for the server (however,
	look in either this member function of expr-test to send how to do it
	yourself). On the client-side the Connect class manages those for you. Use the
	Connect::source() member function to get the XDR pointer associated with a
	given connection. Then pass that pointer to deserialize. Again, look in
	expr-test for example code (at the very last part of constrained_trans()).

	Grid variables can now be projected just like arrays. To find out about the
	projections, use the Array member functions for constraints on the various
	constituents of the Grid (e.g., grab the Array part of the Grid and iterate
	over the DIMENSION objects to find the size of that dimension, then look at
	the various Map arrays to see which are marked to be sent, etc.). Note that
	there is some redundant information in the Grid projection because both the
	Array part and the Map part contain the dimension limits (when one or the
	other would do). I did this so the existing serialize/deserialize code would
	work without modification.

	We now use the latest WWW library (from W3C) without modification. You must
	have that *and* (until I figure a better way to do it) its source code must
	be at /usr/local/src/WWW. Otherwise you will get lots of missing include file
	names from the compiler.

	Latest.

	Added.

	Fixed $dir.

	Removed reference to libnetio.a; it is now part of libdap++.a.

	Created.

	Fixed -k (constraint expression) option when used with -p (parser) option.

	Moved debug.h in front of all the other DODS includes - this ensures that the debug.h included in this file is the one in effect (as opposed to a copy included by some other include file). We should banish nested includes... Added support for `Grid constraints'. These are like the Array constraints - projections where the start, stop and stride of each dimension may be specified. The new feature required a grammar change (so the parser would accept grids with the array bracket notation) and two new functions: is_grid_t() and process_grid_indices(). The actual projection information is stored in the array members of the Grid.

	Fixed a bug in clear_constraint(); the dimension variables in the list _SHAPE were not correctly `cleared', now they are.

1996-06-07  James Gallagher  <jgallagher@opendap.org>

	Updated for compression, the new WWW code and content-description software.

	Added build of cgi_util_test.

	Initialized vcode to null.

	Updated set_mime_binary() and set_mime_text(). Removed old declarations for NetExecute() and NetConnect().

	Fixed a bug in name_path(). Added compression functions which create filter processes which automatically compress stdio file streams. Added to set_mime_text() and set_mime_binary() support for compression. These now correctly set the content-encoding field of the mime header. Fixed ErrMsgT so that it says `DODS server' when the name of the server is not known.

	Improved error messages in some of the type checking functions.

	Fixed comments.

	Added support for compression. The Content-Encoding header is used to determine if the incoming document is compressed (values: x-plain; no compression, x-gzip; gzip compression). The gzip program is used to decompress the document. The new software uses UNIX IPC and a separate subprocess to perform the decompression.

	Changed *_MIN limits so that they are in line with values in Harbison & Steele (which makes them one less in absolute value than the values in Sun's header). This fixes a problem when comparing signed int values to DODS_INT_MIN. Also changed the values to be base 10 (from base 16).

	Removed old type checking code - use the type checkers in parser-util.cc.

	Added GZIP define.

1996-06-06  James Gallagher  <jgallagher@opendap.org>

	Added support for wwwlib 4.0. Added support for object types.

1996-06-05  James Gallagher  <jgallagher@opendap.org>

	Moved symbols from config_netio.h.in to this file.

1996-06-04  James Gallagher  <jgallagher@opendap.org>

	Multiple connections are now possible. It is now possible to open several URLs at the same time and read from them in a round-robin fashion. To do this I added data source and sink parameters to the serialize and deserialize mfuncs. Connect was also modified so that it manages the data source `object' (which is just an XDR pointer).

1996-06-03  James Gallagher  <jgallagher@opendap.org>

	latest.

	Added declarations for Errorparse() and Errorrestart().

	Added.

1996-05-31  James Gallagher  <jgallagher@opendap.org>

	Added.

	Added.

	Updated copyright notice.

	Added.

	Removed {YYACCEPT;} from rule 2 (dataset: DATASET ...).

	Added.

	Added.

	Added.

1996-05-30  James Gallagher  <jgallagher@opendap.org>

	Added read_p and send_p to the set of members copied by _duplicate(). From Reza.

	Fixed the allocation of vectors of DODS variable objects; use the ptr_duplicate member function instead of the copy ctor in val2buf(). Fixed allocation of vector of String in buf2val(). From Reza.

1996-05-29  James Gallagher  <jgallagher@opendap.org>

	Made changes necessary to support CEs that return the value of a function instead of the value of a variable. This was done so that it would be possible to translate Sequences into Arrays without first reading the entire sequence over the network.

	*** empty log message ***

	Fixed up the copyright header.

	Removed old, useless, code.

	Added configure of header `config_netio.h'.

	Added the enum ObjectType. This is used when a Content-Description header is found by the WWW library to record the type of the object without first parsing it. Added ctors for the struct constraint. Removed the member _request.

	Added Content-Description header parsing. Removed Event loop code (HTEvent_loop()). Fixed bug where a copy of _OUTPUT was created using _OUTPUT's file descriptor. When _OUTPUT was closed the copy no longer referenced a valid data source. Fixed problems with asserts and error messaging.

1996-05-28  James Gallagher  <jgallagher@opendap.org>

	Fixed verbose arguments.

	Removed code that read from the stream after the das/dds parser built the internal object (since there was nothing in that stream after the parse geturl would always crash).

1996-05-22  James Gallagher  <jgallagher@opendap.org>

	First version. Built to test the new WWW code in the class Connect.

	Merged files from the old netio directory into the dap directory. Removed the errmsg library from the software.

1996-05-21  James Gallagher  <jgallagher@opendap.org>

	Removed files associated with verion 2.14 of the WWW library.

	Changed include netio.h to cgi_util.h.

	Added support for URLs directory to the class. This uses version 4.0D of the WWW library from W3C.

1996-05-16  James Gallagher  <jgallagher@opendap.org>

	Dan's changes for version 2.0. Added a parameter to read that returns an error code so that EOF can be distinguished from an actual error when reading sequences. This *may* be replaced by an error member function in the future.

	Dan's changes for 2.0.

1996-05-14  James Gallagher  <jgallagher@opendap.org>

	These changes have already been checked in once before. However, I corrupted the source repository and restored it from a 5/9/96 backup tape. The previous version's log entry should cover the changes.

	Update for

1996-05-06  James Gallagher  <jgallagher@opendap.org>

	Added the member functions dimension_start, _stop and _stride to this class. Changed the first argument of add_constraint from Pix &p to Pix p (the member function does not change its argument).

	Added dimension_start, _stop and _stride member functions to this class. Changed the first argument of add_constraint from Pix &p to Pix p (the member function does not change the Pix).

	Replaced calls to atof and atoi with calls to strtol and strtod.

	Replaced calls to atoi with calls to strtol.

1996-05-03  James Gallagher  <jgallagher@opendap.org>

	Fixed a bug where Float attributes with the value 0.0 were considered `bad values'.

1996-04-05  James Gallagher  <jgallagher@opendap.org>

	Misc Changes for release 2.0.1 of the core software - for developers.

	Re: XDR_INT and XDR_FLOAT; Moved cast of xdr_int, long, float and double from here to the places where the functions are passed as parameters. This fixes the bug that the return values of these functions were being cast to an incompatible type where they were used.

1996-04-04  James Gallagher  <jgallagher@opendap.org>

	Merged changes from version 1.1.1.

	latest

	Compiled with g++ -Wall and fixed various warnings.

	Merged changes from version 1.1.1. Eliminated the static global CTOR.

	Created.

	Merged changes from version 1.1.1.

	Merged changes from version 1.1.1. Fixed bug in send() - wrong number of arguments to serialize.

	Merged changes from version 1.1.1.

	Merged changes from version 1.1.1. Removed unneeded include files.

	Merged changes from version 1.1.1.

	Merged changes from version 1.1.1. Added a fix for the expr.h header which caused compilation problems on the Dec Alpha.

	Merged changes from version 1.1.1. Fixed a bug in serialize() which caused the sequence serialization to end when the current CE first evaluated to false

	Merged changes from version 1.1.1.

	Fixed comment headers.

	Merged changes from version 1.1.1.

	Merged changes from version 1.1.1.

	Merged recent changes from version 1.1.1 (including changes for the Type enum which caused a problem on the SGI).

1996-03-05  James Gallagher  <jgallagher@opendap.org>

	Addedconst to the char * function definitions.

	Added const to char * parameters and function prototypes.

	Added const to function prototypes.

	*** empty log message ***

	Fixed problems with variable scoping in for and switch statements.

	Relaced <limits.h> with "dods-limits.h".

	Fixed Errors in comments.

	Fixed bugs in the print_array software. Fixed the ctor and related CE member functions (so that projections work).

	Replaced <limits.h> with "dods-limits.h".

	Added ops member function.

	Added ce_eval to serailize member function. Added ops member function.

	Fixed serialize so that expunge() is always called when the member function finishes and FLUSH is true. Added ops member function and byte_ops interface function.

	Added ce_eval to serailize member function. Added ops member function and byte_ops interface function.

	Moved many of the DDS member functions into the subclasses clause and function. Also, because the rvalue and func_rvalue classes (defined in expr.h ane expr.cc) were expanded, most of the evaluation software has been removed. Unnecessary accessor member functions have been removed since clause and function now have their own ctors.

	Added the clause and function subclasses. Clause is used to hold a single clause of the current CE. Clause has ctors, a dtor (which is currently broken) and member function used to get the boolean value of the clause. Function is used to hold a single pointer to either a function returning a boolean or a BaseType *. The DDS class contains a list of clauses and a list of functions.

	Added ce_eval to serailize member function. Fixed serialize so that expunge() is always called when the member function finishes and FLUSH is true. Added ops member function and double_ops function.

	Added ce_eval to serailize member function. Added ops member function and float_op function.

	Fixed serialize bug where Maps might not be sent. Added ce_eval to serailize member function.

	Added ce_eval to serailize member function.

	Added ce_eval to serailize member function. Added the ops member function and int_ops function.

	Added ce_eval to serailize member function. Added the ops member function.

	Added -E flag to CFLAGS abd -b to depend.

	Added expression scanning and parsing targets.

	Added ce_eval to serailize member function.

	Added ce_eval to serailize member function. Added relational operators (the ops member function and string_ops function).

	Added ce_eval to serailize member function. Replaced <limits.h> with "dods-limits.h".

	Added ce_eval to serailize member function. Added debugging information to _duplicate member function.

	Added ce_eval to serailize member function.

1996-03-04  James Gallagher  <jgallagher@opendap.org>

	Fixed Comments.

	Fixed comments.

	Added to the Vector dtor (now the BaseType * vector is properly deleted. Created the vec_resize() member function. Modified serialize() member function so that the ce_eval flag is used.

	Added ce_eval parameter to serialize() member function. Added vec_resize() member function to class.

	Latest.

	Added _DEBUG_H to prevent multiple definition messages.

	Fixed tests of constrained tranmission so CEs with spaces will be read properly. Added new option so that a CE may be given on the command line.

1996-03-01  James Gallagher  <jgallagher@opendap.org>

	Added to the value typedef to support the complete STL syntax. Added support for the rvalue and btp_func_value classes.

	Fixed comments. Fixed a bug in store_str(); leading and trailing double quotes are now stripped from strings.

	Added support for the complete CE spec.

	*** empty log message ***

	Fixed problems with case labels and local variables.

1996-02-05  James Gallagher  <jgallagher@opendap.org>

	Added dods-limits.h to list of header files that are installed in the DODS_ROOT/include directory.

	Added. Built using the SunOS 4.1.3 limits.h file.

1996-02-03  James Gallagher  <jgallagher@opendap.org>

	Added.

1996-02-01  James Gallagher  <jgallagher@opendap.org>

	Merge changes for DODS-1.1.0 into DODS-2.x

	Merged changes between DODS-1.1 and DODS 2.x.

	Fixed save of curent makefile to backup file; replaced `makefile' with ${makefile}.

	Added list of DDSs and constraint expressions that produced them. Added mfuncs to manage DDS/CE list.

	Added mfuncs to maintain a list of DDSs and the constraint expressions that produced them. Added code in request_data to strip the incoming DDS from a data document. Fixed up bogus comments.

	Added support for lists as operands in constraint expressions.

1996-01-31  James Gallagher  <jgallagher@opendap.org>

	Added to repository.

1995-12-08  James Gallagher  <jgallagher@opendap.org>

	Added changes so that relational operators will work properly for all the datatypes (including Sequences). The relational ops are evaluated in DDS::eval_constraint() after being parsed by DDS::parse_constraint().

1995-12-06  James Gallagher  <jgallagher@opendap.org>

	Removed `List List' variables.

	Added `constrained' flag to print_decl. Removed third parameter of read. Modified print_decl() to print only those parts of a dataset that are selected when `constrained' is true.

	var(): now returns null for anything that does not define its own version. print_decl(): uses `constrained' flag.

	Changed read() from three parameters to two. Added constrained flag to print_decl(). Removed store_val() and read_val() (use buf2val() and val2buf() instead).

	Added reset_constraint(), clear_constraint() and add_constraint() to manage the new constraint-related members (in struct dimension). Fixed variour member functions to return information about sizes, ... correctly both before and after constraints are set.

	Added members to record information about array index constraints. Added mfuns to access/set those members. Changed read from three to two arguments.

	Changed read() from three to two parameters. Removed store_val() and read_val() (use buf2val() and val2buf()).

	Added print_constrained(): Prints a constrained DDS. Added eval_constraint(): Evaluates a constraint expression in the environment of the current DDS. Added send(): combines reading, serailizing and constraint evaluation. Added mark*(): used to mark variables as part of the current projection. Fixed some of the parse() and print() mfuncs to take uniform parameter types (ostream and FILE *). Fixed the constructors to work with const objects.

	Added print_constrained(): prints only those parts of the DDS that satisfy the constraint expression (projection + array selection). Added eval_constraint(): given the text of a constraint expression, evaluate it in the environment of the current DDS. Added mark*(): add the named variables to the current projection. Added send(): combines many functions like reading and serializing variables with constraint evaluation.

	Added dependencies for the CE objects modules.

	Changes read() member function from three arguments to two.

	Modified print_decl() so that the declaration is printed only if the variable is selected.

	Changed the var() and print_decl() mfuncs. var() now takes an index and returns a pointer to the BaseType object with the correct value. print_decl() takes a new flag - constrained - which causes only those dimensions selected by the current constraint expression to be printed

	Added definition of YYSTYPE.

	See dds.y

	Changed grammar so that List List ... <type> is no longer possible. This fixed some hard problems in the serailize/deserailize mfuncs.

	Added options for testing the constraint evaluator software. Added functions which test the constraint evaluator. Added function that simulates te complete client-server conversation which causes a variable to be sent after the evaluation of a CE. This manages multiple DDSs just as a real client would. This code is different than the simpler code run by evaluate_dds().

	Because the %union{} changed, the return types of some of the rules also changed. Returns integer codes for relops. Returns a tagged union for most other values.

	Added array constraints to the parser. Added functions for the actions of those new rules. Changed/added rule's return types. Changed the types in the %union {}.

	See das.lex

	See dds.lex

	See expr.lex

	Added text_to_temp(). This copies the given String to a temporary file and returns a FILE * to that file. The file is unlinked, so one the FILE * is closed, it is removed from the file system.

	Added forward decalration of text_to_temp();

1995-11-22  James Gallagher  <jgallagher@opendap.org>

	Modified so that the Vector class is now the parent class.

	Created.

1995-11-16  James Gallagher  <jgallagher@opendap.org>

	Added so that release-1-0-patches tag can be a branch.

1995-10-31  James Gallagher  <jgallagher@opendap.org>

	Added to managed sources.

1995-10-23  James Gallagher  <jgallagher@opendap.org>

	Added.

	Modified...

	Added _send_p and _read_p fields (and their accessors) along with the virtual mfuncs set_send_p() and set_read_p().

	Added targets for expr-test and the expr parser & scanner.

	Added (so that people may build the sources without Flex and Bison).

	Fixed scanner to use the new definition of YYSTYPE.

	Added includes for various classes. Aded rules, actions and functions for evaluation of projections. Changed the value of YYSTYPE so that bison's %union feature is used - rules now return several different types.

	Fixed scanner display code to match current scanner. Added code to test simple evaluator. Fixed type declarations (YYSTYPE, ...).

	Fixed cast of out_tmp in xdr_str().

	Latest.

	Removed code enclosed in #ifdef NEVER ... #endif

	Modified some rules so that they use the functions defined in parser_util.cc instead of local definitions.

	Added Log and RCSID.

	Added RCSID.

	Removed code that was NEVER'd. Changed some rules so that they call functions in parser_util.cc .

	Removed code that was NEVER'd or simply not used.

1995-10-17  James Gallagher  <jgallagher@opendap.org>

	Added *.tab.h files to dependencies for das-test, dds-test and expr-test.

1995-10-12  James Gallagher  <jgallagher@opendap.org>

	First version. Incorporates Glenn's suggestions.

	Scanner. Incorporates Glenn's suggestions.

	First version. Runs scanner and parser.

1995-09-13  James Gallagher  <jgallagher@opendap.org>

	Added to src/dap in keeping with the plan to store all include files in src dirs and `build' the include directory during `make depend' from those inlcudes.

1995-09-05  James Gallagher  <jgallagher@opendap.org>

	Fixed a bug in check_float where `=' was used where `==' should have been.

1995-08-25  James Gallagher  <jgallagher@opendap.org>

	Removed code enclosed in #ifdef NEVER #endif.

1995-08-22  James Gallagher  <jgallagher@opendap.org>

	*** empty log message ***

	Fixed the read() member function so that it works correctly for arrays/lists of Structure, ... types.

	Updated to use the newer member functions.

	xdr_str() now takes a String & instead of a String ** for arg 2.

	Uses new member functions. Added copyright notice. Switched from String to enum type representation.

	Added copyright notice. Fixed some bogus comments.

	Uses the new Type enum.

	Fixed check targets.

	Now uses newer function names. Uses the new xdr_str() function in util.cc

	Changed old, deprecated member functions to new ones. Switched from String representation of type to enum.

	Changed from old mfuncs to new(er) ones.

	Added copyright notice.

	Switched from String representation of data type to Type enum. Added type_name() member function so that it is simple to get the string representation of a variable's type. Changed the name of read_val/store_val to buf2val/val2buf.

	Removed deprecated member functions. Changed read_val/Store_val to buf2val/val2buf.

	Removed card() member function. Removed old, deprecated member functions. Changed the names of read_val and store_val to buf2val and val2buf.

	Removed DBMALLOC code. Added set_vec/vec mfuncs so that non-Array software can access the BaseType * vector. Changed names read_val and store_val to buf2val and val2buf. The old names remain. removed the card member function: used the new _type enum with a switch in its place.

1995-07-11  James Gallagher  <jgallagher@opendap.org>

	Updated for distribution with release-1-0-patches.

	Added to release-1-0-patches.

1995-07-09  James Gallagher  <jgallagher@opendap.org>

	Added copyright notice.

	Fixed date in copyright (it now reads `Copyright 1995 ...').

	Added copyright.

	Added to managed sources so that flex/bison are not required (of course if you want to modify the scanner/parser you will need those tools).

1995-07-08  James Gallagher  <jgallagher@opendap.org>

	Removed declaration of yywrap().

	Removed old code. Removed unnecessary declaration of dasparse().

	Latest.

	Edited comments. Removed unnecessary declarations.

	Added extern keyword for the external declarations of dasparse and dasrestart.

1995-06-28  Dan Holloway  <dholloway@opendap.org>

	Modifed XDR_type definitions to explicitly cast to (xdrproc_t), resolving problem associated with <rpc/xdr.h> in OSF 3.X.

	Modified constructor to explicitly cast return type to xdrproc_t, resolves problem associated with <rpc/xdr.h> under OSF 3.X.

1995-06-27  James Gallagher  <jgallagher@opendap.org>

	The mfuncs request_{das,dds,dods} accept a parameter which is appended to the URL and used by the data server CGI to select which filter program is run to handle a particular request. I changed the parameter name from cgi to ext to better represent what was going on (after getting confused several times myself).

	Modified the cgi-util-test code so that it correctly uses name_path(); the pointer returned by that function must be delteted.

1995-06-22  James Gallagher  <jgallagher@opendap.org>

	Modified confogure/Makefile to handle prefix and DODS_ROOT properly.

	Updated for the first release of DODS.

1995-06-17  James Gallagher  <jgallagher@opendap.org>

	Removed extraneous debugging code.

	Corrected depend.sh (was wrongly named depend.in).

	Updated configure to use depend.sh

	Added -I../dap to INCS so that the compile of this directory will not depend on the installation of ../dap.

1995-06-16  James Gallagher  <jgallagher@opendap.org>

	Changed from the newer getopts (newer on sun at least) to the older getopt for compatibility with Alphas.

1995-06-12  James Gallagher  <jgallagher@opendap.org>

	Changed name. Added ID token for CVS.

1995-06-01  James Gallagher  <jgallagher@opendap.org>

	Removed old code.

1995-05-30  James Gallagher  <jgallagher@opendap.org>

	Removed PostData from NetExecute() and NetConnect9) prototypes.

	Modified the request_data member function so that it accepts the variable in addition to the existing arguments.

	Added const to ErrMsgT prototype.

1995-05-22  James Gallagher  <jgallagher@opendap.org>

	Removed a paramter from the REQUEST_DATA member function: POST is not needed since we no longer use the post mechanism.

	Changed the usage of URLs: we now use straight URLs; no POSTs and no internal parsing of the URL. To select different documents from a DODS server an extension is appended to the URL.

	Added #include "config_netio.h" Removed old code.

1995-05-11  James Gallagher  <jgallagher@opendap.org>

	Really fixed the check target...

1995-05-10  James Gallagher  <jgallagher@opendap.org>

	Added dependency on libdap++.a for target `check'.

	Removed the header file `Test.h' from the Test*.cc implementation files.

	Failed to change `config.h' to `config_dap.h' in these files.

	Added GNU licenses. Added depend script.

	Changed the name of the configuration header file from `config.h' to `config_dap.h' so that other libraries could have header files which were installed in the DODS include directory without overwriting this one. Each config header should follow the convention config_<name>.h.

1995-04-28  Reza Nekovei  <rnekovei@ieee.org>

	First try at adding constraints capability. Enforce a new size calculated from constraint expression.

1995-04-16  James Gallagher  <jgallagher@opendap.org>

	Removed the `api' field.

	Added code which takes the cgi basename from the URL supplied by the user. Still, the cgi must be in `cgi-bin'.

1995-03-16  James Gallagher  <jgallagher@opendap.org>

	Fixed spaces in variable name printout.

	Minor fixes.

	Modified so that one single library is built, not six.

	Added TRACE_NEW/dbnew checks. This includes a special kluge for the placement new operator.

	Added include config.h to top of includes. Added TRACE_NEW switch dbnew debugging.

	Changed --enable-dbnew so that now it does *not* also include dbmalloc at link time.

	Fixed bugs with read()s new & delete calls.

	This class is now a subclass of Str.

	Added include config.h to top of include list. Added TRACE_NEW switched dbnew includes. Fixed bug in read_val() where **val was passed incorrectly to subordinate read_val() calls.

	Moved include of config.h to top of includes. Added TRACE_NEW switched dbnew debugging includes.

	Added include of config.h before all other includes. Fixed deletes of buffers in read_val(). Added initialization of _buf in ctor.

1995-03-16  Reza Nekovei  <rnekovei@ieee.org>

	Fixed bugs in ErrMsgT and mime type.

1995-03-09  James Gallagher  <jgallagher@opendap.org>

	Modified so that URLs built by this library no longer supply the base name of the CGI. Instead the base name is stripped off the front of the pathname component of the URL supplied by the user. This class append the suffix _das, _dds or _serv when a Connect object is used to get the DAS, DDS or Data (resp).

1995-03-04  James Gallagher  <jgallagher@opendap.org>

	Fixed List so that it will compile - it still has major bugs. Modified Makefile.in so that test cases include List even though List won't work (but at least the test cases will link and run, so long as you don't try to do anything with Lists...

	Added stuff for Vec.

	Added Vec.

	Modified these so that they fit with the changes in the DAP classes.

	Fixed xdr_str so that it works with the new String objects. Added xdr_str_array for use with arrays of String objects.

	Major modifications to the transmission and representation of values: 	Added card() virtual function which is true for classes that 	contain cardinal types (byte, int float, string). 	Changed the representation of Str from the C rep to a C++ 	class represenation. 	Chnaged read_val and store_val so that they take and return 	types that are stored by the object (e.g., inthe case of Str 	an URL, read_val returns a C++ String object). 	Modified Array representations so that arrays of card() 	objects are just that - no more storing strings, ... as 	C would store them. 	Arrays of non cardinal types are arrays of the DODS objects (e.g., 	an array of a structure is represented as an array of Structure 	objects).

1995-02-24  James Gallagher  <jgallagher@opendap.org>

	Fixed declaation of set_mime_text() (was ...test()).

	Added DVersion as a global in HTTP.c and netio.h

1995-02-23  James Gallagher  <jgallagher@opendap.org>

	Added declarations of set_mime_text and set_mime_binary.

1995-02-22  Reza Nekovei  <rnekovei@ieee.org>

	Added version number capability using CGI status_line.

1995-02-22  James Gallagher  <jgallagher@opendap.org>

	Added.

	Fixed usage of time functions in ErrMsgT; use ctime instead of localtime and asctime. Fixed TimStr bug in ErrMsgT. Fixed dynamic memory bugs in name_path and fmakeword. Replaced malloc calls with calls to new char[]; C++ code will expect to be able to use delete. Fixed memory overrun error in fmakeword. Fixed potential bug in name_path (when called with null argument). Added assetions.

1995-02-16  James Gallagher  <jgallagher@opendap.org>

	Added _in private member. It is used to keep a copy of the input FILE * so that when the next chunk of data is read in the previous one can be closed. Since the netio library unlinks the tmp file before returning the FILE *, closing it effectively deletes the tmp file.

	Added these tests. See comments in files in parent directory.

	Added these tests. They cover comments, typed attributes and various errrors.

	Fixed bug which caused Byte, ... values which were out of range to be added to the attribute table anyway. Corrected the number of expected shift-reduce conflicts.

1995-02-10  James Gallagher  <jgallagher@opendap.org>

	Modified definition of request_data() so that it takes an additional parameter specifying sync or async behavior.

	Modified request_data() so that it takes an additional (optional) parameter which specifies synchronous (default) of Asynchronous behavior.

1995-02-09  Reza Nekovei  <rnekovei@ieee.org>

	Fixed the request_data to pass arguments. The arguments string is added to the file name before being posted by NetConnect. Default arg. is null.

1995-02-09  James Gallagher  <jgallagher@opendap.org>

	Modified test cases for new comment style.

	Modified test cases for type checking.

	Removed dummy_read.cc Updates das-test.cc so that type checking gets tested.

	Removed xdr_url() since it was just a copy of xdr_str().

	Switched to sh style comments. C and C++ style comments are no longer supported.

	Added type checking.

	Scanner now returns different lexemes for each of the different scalar data types. Comments are now done as for sh; the C and C++ style comments are no longer supported.

	Added new mfuncs to access _name and _type. Made private and protected filed's names start with `_'. Added store_val() as a abstract virtual mfunc.

	Added DBMALLOC to set of flags defined with configure is given the --enable-dbnew switch.

	Modified Test<class>.h and .cc so that they used to new definitions of read_val(). Modified the classes read() so that they are more in line with the class library's intended use in a real subclass set.

	Misc comment edits.

	Added second parameter to dasparse. It is a switch that indicates that the parse went OK. Now the parser will return true even if erros were detected so long as they were recoverable errors.

	Fixed an error where two attributes could be declared with the same name (for the same variable) if they hade different types.

	Added DBMALLOC includes and switch to code which uses malloc/free. Private and protected symbols now start with `_'. Added new accessors for name and type fields of BaseType; the old ones will be removed in a future release. Added the store_val() mfunc. It stores the given value in the object's internal buffer. Made both List and Str handle their values via pointers to memory. Fixed read_val(). Made serialize/deserialize handle all malloc/free calls (even in those cases where xdr initiates the allocation). Fixed print_val().

1995-01-31  James Gallagher  <jgallagher@opendap.org>

	Added declaration of request_data() mfunc in Connect.

	Fixed problems with the return value (status, fp) in request_das, request_dds and request_data. Added declarations for set_xdrin() and set_xdr_out(). Now that NetExecute forks and reads from a child, a temp file is no longer used. I removed that code which created and sebsequently deleted that temp file.

1995-01-19  James Gallagher  <jgallagher@opendap.org>

	Fixed for new class hierarchy.

	Added read_val from dummy_read.cc to the sample set of sub-class implementations. Changed the declaration of readVal in BaseType so that it names the mfunc read_val (to be consistant with the other mfunc names). Removed the unnecessary duplicate declaration of the abstract virtual mfuncs read and (now) read_val from the classes Byte, ... Grid. The declaration in BaseType is sufficient along with the decl and definition in the *.cc,h files which contain the subclasses for Byte, ..., Grid.

	Created as an example of subclassing the class hierarchy rooted at BaseType.

	Added declarations for new utility functions which return pointers to objects in the BaseType hierarchy.

	The parser now uses the new utility functions to create new instances of the variable objects (Byte, ..., Grid). Fixed the number of shift/reduce conflicts expected (now at 60).

	Switched to the utility functions for generating pointers to Int32, ... (from the syntax: `new Int32(...)').

	Fixed LDFLAGS so that the cwd is searched for libs first. Removed `dummy_read.cc' file; use subclassed Byte, ... instead. Added Test<class> dependencies (these are the sample subclasses). Added target for trans-test.

	ptr_duplicate() mfunc is now abstract virtual. Array, ... Grid duplicate mfuncs were modified to take pointers, not referenves.

1995-01-18  Dan Holloway  <dholloway@opendap.org>

	Added member function 'request_data' which makes a data read request to the remote api server and links the object's xdrin file-pointers to the data stream.  This function requires NetConnect which has been defined in the utility function netexec.c

	Declared member function 'readVal', defined in dummy_read.cc

	Defined abstract virtual function 'readVal' which provides access to the object's buf for retrieving data subsequent to deserializing.

	Added external declarations for utility functions, new_xdrstdio and delete_xdrstdio.

1995-01-11  James Gallagher  <jgallagher@opendap.org>

	Added install of config.h to includedir.

	Added to new functions which manage XDR stdio stream pointers. One creates a new xdrstdio pointer associated wit the given FILE * and the other deletes it. The creation function returns the XDR *, so it can be used to initialize a new XDR * (see BaseType.cc).

	Added static XDR pointers to BaseType class and removed the XDR pointers that were class members - now there is only one xdrin and one xdrout for all children of BaseType. Added friend functions to help in setting the FILE * associated with the XDR *s. Removed FILE *in member (but FILE *out was kept as FILE * _out, mfunc expunge()). Changed ctor so that it no longer takes FILE * params.

	Added modifications necessary for BaseType's static XDR pointers. This was mostly a name change from xdrin/out to _xdrin/out. Removed the two FILE pointers from ctors, since those are now set with functions which are friends of BaseType.

1995-01-10  James Gallagher  <jgallagher@opendap.org>

	Created new `common code' library for the net I/O stuff.

1994-12-21  Reza Nekovei  <rnekovei@ieee.org>

	Changed the default type to String (from Str) to match DDS parser.

	Made save_str static to avoid linking conflict.

1994-12-21  James Gallagher  <jgallagher@opendap.org>

	Added these to the testsuite.

	Fixed so that tests for the parser work (scanner tests are still broken).

	Added these to test for errors and new `named dimension' feature.

	Changed CTStack in dds dependencies to BTStack.

	Repaired damage done to NEVER's definition in previous version.

	Undid 'fix' to NEVER definition - it was wrong.

1994-12-20  Reza Nekovei  <rnekovei@ieee.org>

	Added overloading functions for get_attr_num().

1994-12-19  James Gallagher  <jgallagher@opendap.org>

	Minor modifications to the print_val mfunc.

1994-12-16  James Gallagher  <jgallagher@opendap.org>

	Added cases for new tokens in dds.lex/dds.y.

	Added -L switches to LDFLAGS so that Map, Stack and Plex are searched *before* DODSROOT/lib. Removed references to CtorType. Added dependencies for dummy_read

	Switched from a CtorType stack to BaseType stack. Fixed an error in save_str() (see das.y). Fixed a bug in the use of append_dim - it was called with $4 when it should have been called with $5.

	Fixed NEVER so that it is anything not caught by the earlier rules.

	Changed NEVER to be anything not caught by the earlier rules. Fixed // style comments so that // ... <eof> works.

	Fixed a bug in save_str() where the global NAME was used instead of the parameter DST.

	Added the mfuncs var() and add_var(). These are used by ctor types. They need to be defined here so that access to them via BaseType * will work (actually, so the code will compile). These versions just print error messages. See Array.h, ... for examples of the real mfuncs.

	Added mfuncs var() and add_var() to BaseType. These print an error message when called with a simple BaseType (Int32, ...). Classes like Array use them and provide their own definitions.

1994-12-16  Dan Holloway  <dholloway@opendap.org>

	Fixed serialize() and deserialize() for arrays of strings.

	Removed inheritance from class CtorType, now directly inherits from class BaseType.

	Modified Structure class removing inheritance from class CtorType and directly inheriting from class BaseType to alloc calling BaseType's constructor directly.

1994-12-15  Dan Holloway  <dholloway@opendap.org>

	Added print_val() member function.

	Modified class Sequence inheritance hierarchy, now directly inherits from class BaseType.

	Modified Sequence class to directly inherit from class BaseType Modified constructors to reflect new inheritance.

1994-12-14  Dan Holloway  <dholloway@opendap.org>

	Fixed deserialize() to return correct size count. Fixed check_semantics() to use new Array dimension member functions.

	Added dimensions() member function definition. Removed alloc_buf() and free_buf() definitions.

	Added dimensions() member function to return number of dimensions contained in the array. Removed alloc_buf() and free_buf() member functions and placed them in util.cc.

1994-12-14  James Gallagher  <jgallagher@opendap.org>

	Added mfunc len(). Replaced size() with a mfunc that returns the size of a pointer to a string (this simplifies Structure, ...).

	Changed definition of size() so that it returns the number of bytes in the string.

1994-12-14  Dan Holloway  <dholloway@opendap.org>

	Removed dim() member function.

	Modified serialize() and deserialize() member functions to special case BaseTypes 'Str' and 'Url'.  These special cases do not call xdr_array, but iterate through the arrays using calls to XDR_STR. Modified print_val() member function to handle arrays of different BaseTypes. Modified append_dim() member function for initializing its dimension components. Removed dim() member function.

1994-12-12  James Gallagher  <jgallagher@opendap.org>

	Lastest...

	Fixed struct dimensions.

	Added enum Part - used to be part of CtorType.

1994-12-12  Dan Holloway  <dholloway@opendap.org>

	Modified Array class definition removing inheritance from class CtorType and to inherit directly from class BaseType.  Removed member function dimensions().

	Modified Array Class to be directly derived from class BaseType removing class CtorType in the process.  Added member functions add_var() and var() to class.

1994-12-09  James Gallagher  <jgallagher@opendap.org>

	Modified for new unix.exp.

	Modified for scanner (interactive) testing. That still does not work.

	Corrected.

	Added to array: so that an array decl can contain: an int or an id=int. This is for the named dimensions (see Array.{cc,h}).

	Added `=' to the set of recognized lexemes. Added `[' and `]' to the set of rejected characters.

	Fixed scanner's treatment of `//' comments which end with an EOF (instead of a \n).

	Added <unistd.h> to the include files.

	Added support for named array dimensions.

	Used the XDR_INT32 and XDR_FLOAT64 symbols defined in config.h.

1994-12-08  James Gallagher  <jgallagher@opendap.org>

	Modified the NEVER regexp so that `[' and `]' are not allowed in the input stream. Previously they were not recognized but also not reported as errors.

1994-12-08  Dan Holloway  <dholloway@opendap.org>

	Added data transmission member functions serialize() and deserialize() Modified size() member function to return cumulative size of all members. Fixed the duplicate() member function to correctly access the data members of the sequence being duplicated.

	Modified size() member to return cumulative size of all dimensions given the variable basetype. Modified serialize() and deserialize() member functions for data transmission using XDR.

1994-12-07  James Gallagher  <jgallagher@opendap.org>

	Added/modified files to test new attribute vector code. Removed tests where ID was followed by a `/' w/o space - since `/' is now a legitamite character in an ID ID/* is not ID followed by a comment but the ID `ID/' followed by the illegal char `*'.

	Added config.h Changed xdr_long to XDR_LONG (defined in config.h, based on the target machine.

	Removed config

	Added code to test the scanner - it is selected using the -s option.

	Added a new rule (var) and modified attr_val to handle attribute vectors. Each element in the vector is seaprated by a comma. Replaces some old instrumentation code with newer code using the DGB macros.

	Added `,' (comma) to set of single character tokens recognized by the scanner. Comma is the separator for elements in attribute vectors.

	Updated files to work with autoconf 2.1.

	Corrected errors.

	Modified to take advantage of autoconf 2.1 features. Added Plex to the list of subdirectories to be `made'.

	Added support for vectors of attributes (using XPlex from libg++).

1994-12-05  James Gallagher  <jgallagher@opendap.org>

	added.

1994-11-29  James Gallagher  <jgallagher@opendap.org>

	Added xdr_str and xdr_url functions (C linkage). These provide a way for the Str and Url classes to en/decode strings (Urls are effectively strings) with only two parameters. Thus the Array ad List classes might actually work as planned.

	Added mfunc for data transmission. Uses special xdr function for serialization and xdr_coder. Removed `type' parameter from ctor. Added FILE *in and *out to ctor parameter list.

	Added functions for data transmission. Added boolean parameter to serialize which, when true, causes the output buffer to be flushed. The default value is false. Added FILE *in and *out parameters to the ctor. The default values are stdin/out. Removed the `type' parameter from the ctor.

	Added mfuncs for data transmission. Made the xdr_coder function pointer xdr_bytes() while (de)serialize() uses xdr_char(). Removed `type' from ctor parameter list. Added FILE *in and *out to parameter list (they default to stdin/out).

	Added FILE * input and output buffers. All data set and all data received passes through these buffers. This simplifies testing and makes using the toolkit with files a little easier. Added xdrin and xdrout members (both are XDR *). These are the source and sink for xdr data. Modified ctor and duplicate() to correctly handle xdrin/out. Added expunge() which flushes the output buffer.

	Added mroe support for data transmission; BaseType now contains enough functionality to support transmission of all the simple datatypes. Added in and out FILE *. Added boolean flag in serialize which will cause the output buffer to be flushed when data is serialized. Added xdr_coder for serialization of arrays and lists.

1994-11-22  Dan Holloway  <dholloway@opendap.org>

	11/22/94 Modified dimension() to return total number of elements.          Modified deserialize to return (bool)status = num | 0.

1994-11-22  James Gallagher  <jgallagher@opendap.org>

	Added code for data transmission to parts of the type hierarchy. Not complete yet. Fixed erros in type hierarchy headers (typos, incorrect comments, ...).

1994-11-10  James Gallagher  <jgallagher@opendap.org>

	In the past it was possible to have a null file correctly parse as a DAS or DDS. However, now that is not possible. It is possible to have a file that contains no variables parse, but the keyword `Attribute' or `Dataset' *must* be present. This was changed so that errors from the CGIs could be detected (since they return nothing in the case of a error).

	Added `/' to the set of characters that make up an identifier.

1994-11-02  Reza Nekovei  <rnekovei@ieee.org>

	Added two overloading for function parse to make it consistent with DAS class.

	Changed the default type to match the dds parser.

1994-10-26  James Gallagher  <jgallagher@opendap.org>

	Temporary fix for CtorType.{cc,o} -- commented these out of the makefile. When the complete data trasnmission code is in the archive (and that code is needed) add them back in the Makefile.

	Added

1994-10-25  James Gallagher  <jgallagher@opendap.org>

	Lots of new features, including --enable-dbnew and --enable-debug=<level>.

	Fixed to use new configure.in/configure. Now CXX, ... are not coded in this file but get their values from the configure script. Defines moved to config.h header. Remove site.exp -- it is simpler to put the options on the command line. Fixed header install actions -- they now use bourne shell for do ... done.

	Describes contents, how to build API including the debugging options.

1994-10-17  James Gallagher  <jgallagher@opendap.org>

	Fixed error in char * [] allocation. Added debugging code.

	Added test_class code.

	Added debugging statements.

	Added depends for dds.tab.o and das.tab.o.

	Added copy ctor, dtor, duplicate, operator=. Added var() for const cahr * (to avoid confusion between char * and Pix (which is void *)). Switched to errmsg library. Added formatting to print().

	Removed unnecessary print functions.

	Added code to print_decl so that variable declarations are pretty printed. Added private mfunc duplicate(). Added ptr_duplicate(). Added Copy ctor, dtor and operator=.

	Added ptr_duplicate virtual mfunc. Child classes can also define this to copy parts that BaseType does not have (and allocate correctly sized pointers. Removed protected mfunc error() -- use errmsg library instead. Added formatted printing of types (works with DDS::print()).

1994-10-13  James Gallagher  <jgallagher@opendap.org>

	dasrestart was incorrectly declared as void dasrestart(...) in DAS.cc. This caused the alpha to say `Could not read from file' whenever dasrestart was called (which happens whenever a new file is read). Fixed the declaration and removed the test on the (phantom) return value.

	Added -p to interface: run the parser. This option makes das-test behave as it used to, with the following exceptions: 1) if `none' is given as a filename, then the associated actions (reading or writing) is not performed. This lets you test the ctors and dtors w/o anything else getting in the way. 2) - means stdin or stdout Also added AttrTable test code that gets run if -p is not given.

	Now works with the new das-test (but only when das-test is compiled w/o DEBUG and TRACE_NEW).

	Modified the debug stuff (DEBUG, TRACE_NEW, ...). Added a tags target.

	Added compile-time switched instrumentation. Removed the three definitions of DAS::print(). Added DAS::print(ostream &os = cout) -- this is the only function for printing the in-memory DAS.

	Added a new version of append_attr (it takes (const char *)s) and changed the types of the old version to (const String &).

	Added a new version of append_attr that takes (const char *)s and modified the version that takes strings to take (const String &).

1994-10-05  James Gallagher  <jgallagher@opendap.org>

	Added TYPE to each of the DAS test files. The `expect' files correcly check for that in the output.

	Added TYPE to each of the DAS test files.

	Added code to print the return value of the DAS::parse() mfunc.

	Modified the DAS grammar so that TYPE tokens (from the scanner) were parsed correcly and added to the new AttrTable class. Changed the code used to add entries based on changes to AttrTable. Consoladated error reporting code.

	Changed from Map to DLList for representation of the attribute table. Added TYPE to the attribute table.

	Added `TYPE' to the grammar for the DAS. See Also: DAS.{cc,h} which were modified to handle TYPE.

	Added BaseType.h and CtorType.h tot eh set of *.h files installed in $(includedir).

	Changed internal representation of the attribute table from a Map to a DLList<>.

	Fixed bug in the parse function(s): the bison generated parser returns 1 on error, 0 on success, but parse() was not checking for this. Instead it returned the value of bison's parser function. Changed types of `status' in print and parser functions from int to bool.

1994-09-27  James Gallagher  <jgallagher@opendap.org>

	Changed expected outcomes to match new das.print() mfunc.

	Removed the Space.cc stuff - it broke dds-test on the alpha.

	Modified to use the new DAS class and new AttrTable class.

	das-test no longer uses Space.cc for new/delete debugging - that system did not work on alphas).

	Changed the implementation of the class DAS from one which inherited from DASVHMap to one which contains an instance of DASVHMap. Added mfuncs to set/access the new instance variable.

	Makefile now builds the DAS and DDS libraries (as well as the test drivers). Installed libraries now have their headers copied to DODS_ROOT/include.

	Changed definition of the class AttrTable; it no longer inherits from AttrVHMap, instead it uses that class (contains a member that is an instance of AttrVHMap). Added mfuncs to AttrTable so that the new member could be set/accessed.

1994-09-23  James Gallagher  <jgallagher@opendap.org>

	Automatic makefile generator.

	Added test cases tot eh DDS testsuite.

	Utility functions used by DAS and DDS.

	Added code to build in-memory DDS during parse.

	Removed local print calls and replaced it with a call to DDS::print().

	Fixed some errors in comments.

	Added two library targets (map and stack). Removed das-test2.

	Added mfunc check_semantics(). Added sanity checking on the variable list (is it empty?).

	Added mfunc check_semantics(). Replaced print mfunc stub with real code. Fixed some errors in comments.

	Fixed broken header. Agian.

	Fixed errors in comments.

	Added mfunc check_semantics(). Moved definition of dtor to BaseType.cc.

	Added check_semantics mfunc. Added sanity checking for access to shape list (is it empty?). Added cvs log listing to Array.cc.

1994-09-15  James Gallagher  <jgallagher@opendap.org>

	Modified dds.y so that it can parse all the DDS types. Still no error checking beyond what bison gives you.

	Added commentary to das.y -- how does it work.

	Added many classes to the BaseType hierarchy - the complete set of types described in the DODS API design documet is not represented. The parser can parse DDS files. Fixed many small problems with BaseType. Added CtorType.

1994-09-09  James Gallagher  <jgallagher@opendap.org>

	Test software for the DDS class.

	Changed the include name to correspond with the class name changes (Var* to DAS*).

	Fixed namign of the test (was given as $srcdir/$test_name, should have been $srcdir$test_name).

	Added test that prints the result of running the test if verbose >= 1.

	Added code to test the stdin, FILE * and file descriptor functions of class DAS.

	Added testing targets. Added DDS stuff.

	Child class of BaseType -- used in the future to hold specific serialization information for integers. Should this be a class that uses BaseType?

	Changed the base name of this class's parents from `Var' to DAS. Added print() and removed operator<< (see the comments in AttrTable). Added overloaded versions of print() and parse(). They can be called using nothing (which defaults to std{in,out}), with a file descriptor, with a FILE *, or with a String givin a file name.

	Class for base type variables. Int32, ... inherit from this class.

	Removed operator<< and added print() since I have no good way to define operator>>. It seems best to define all operators from a set (like <<, >>) or none at all. Since parse() is the input mfunc, it seems that output should be a mfunc too.

1994-09-08  James Gallagher  <jgallagher@opendap.org>

	DDS Class test driver and parser and scanner.

	First version of the Dataset descriptor class.

1994-08-29  James Gallagher  <jgallagher@opendap.org>

	Test procedures for the DAS parser, scanner and C++ class.

	`Unix' target file for dejagnu test procedures.

	Input files used by the test procedures.

	Fixed a problem with quoted strings - previously quotes were stripped when scanned, but this caused problems when they were printed because the printed string could not be recanned. In addition, escape characters are no longer removed during scanning. The functions that performed these operations are still in the scanner, but their calls have been commented out.

1994-08-05  James Gallagher  <jgallagher@opendap.org>

	Init files for autoconf. Use these to generate Makefiles for different platforms.

1994-08-02  James Gallagher  <jgallagher@opendap.org>

	Changes operator<< so that it writes a parsable version of the attribute table.

	Fixed `$Log$' comments and rcsid[] variables (syntax errors due to // comments caused compilation failures. das.tab.c and .h are commited now as well.

	Added C++ statements to grammar to generate a table of parsed attributes. Added a single parameter to dasparse - an object of class DAS. Solved strange `string accumulation' bug with $1 %2 ... by copying token's semantic values to temps using mid rule actions. Added code to create new attribute tables as each variable is parsed (unless a table has already been allocated, in which case that one is used).

	Fixed error in illegal character message. Arrgh!

	Changed communication mechanism from C++ class back to daslval. Auxiliary functions now pass yytext,... instead of using globals. Fixed scanning errors. Scanner now sets yy_init on successful termination. Scanner has improved error reporting - particularly in the unterminated comment and quote cases. Better rejection of illegal characters.

	Implemetation of the DAS class. This class is a container that maps String objects which name variables to AttrTablePtr objects.

	This Class is a container that maps Strings onto AttrTable pointers. It inherits from VarVHMap.

	The implementation of AttrTable. This file defined ostream &operator<< and a static class variable String empty (it is initialized to "").

	Class which inherits from AttrVHMap. This is the class that is contained by the DAS mapping class. In addition to the methods defined by the AttrVHMap class, this class defines operator<<. It also declares a static class variable String empty which is defined in AttrTable.cc to be "". Also in this file is a typedef for a pointer to an AttrTable (that is the type actually held by the DAS container class).

	Test driver for DAS (and AttrTable) classes.

1994-07-25  James Gallagher  <jgallagher@opendap.org>

	First attempt at the DAS parsing software.