File: ChangeLog

package info (click to toggle)
gpgmepp 2.0.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,172 kB
  • sloc: cpp: 12,050; sh: 148; makefile: 5
file content (2616 lines) | stat: -rw-r--r-- 101,933 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
2025-06-03  Werner Koch  <wk@gnupg.org>

	Release 2.0.0.
	+ commit 301d39f8b97a79369292280e201e45f472d71e91


2025-06-03  Ingo Klöcker  <dev@ingo-kloecker.de>

	build: Fix logic for appending "-unknown" to version number.
	+ commit 1e948b3f3ee10806eaee282e489609fa370277d8
	* cmake/modules/G10GetFullVersion.cmake (G10_GET_FULL_VERSION): Use
	DEFINED to check if output variable is set.

2025-05-27  Ingo Klöcker  <dev@ingo-kloecker.de>

	On Windows, use gpgme_off_t and gpgme_ssize_t in the API.
	+ commit b75caf9ce2bcf3813a10bc889b4fa4e0a7d63a4e
	* src/callbacks.cpp (passphrase_callback): Use gpgme_ssize_t.
	(data_seek_callback): Don't cast offset to off_t.
	* src/data.cpp (Data::Data, Data::read, Data::write, Data::seek): Use
	gpgme_off_t and gpgme_ssize_t instead of off_t and ssize_t everywhere.
	* src/data.h (Data::Data, Data::read, Data::write, Data::seek): On
	Windows, use gpgme_off_t and gpgme_ssize_t in the API.
	* src/interfaces/dataprovider.h (DataProvider::read,
	DataProvider::write, DataProvider::seek): Ditto.

2025-05-26  Ingo Klöcker  <dev@ingo-kloecker.de>

	Fix wrong definition of operator<<(std::ostream &, const Error &)
	+ commit 67abbf811080645430e24eb532ff0d26ea83b0c2
	* src/error.cpp (operator<<): Put definition in namespace GpgME.

2025-05-19  Ingo Klöcker  <dev@ingo-kloecker.de>

	build: Don't compile with _FILE_OFFSET_BITS=64 on Windows (MinGW)
	+ commit a13ba8a8170e81733c89af794f13839891efd563
	* cmake/modules/G10CompilerSettings.cmake: Remove adding definition of
	-D_FILE_OFFSET_BITS=64 for MinGW.

2025-05-15  Ingo Klöcker  <dev@ingo-kloecker.de>

	Move definition of functions declared in error.h to error.cpp.
	+ commit 23c297d13e0437ae88e81230ba44d97b462dc93b
	* src/CMakeLists.txt (Gpgmepp_SOURCES): Add new file.
	* src/context.cpp (format_error, Error::source, Error::asString,
	Error::asStdString, Error::code, Error::sourceID, Error::isSuccess,
	Error::isCanceled, Error::isError, Error::toErrno,
	Error::hasSystemError, Error::setSystemError, Error::setErrno,
	Error::fromSystemError, Error::fromErrno, Error::fromCode,
	operator<<(std::ostream &, const Error &)): Move to...
	* src/error.cpp: ...this new file.

	Remove long obsolete feature checking API.
	+ commit ee85d38a2f9e62efa4973c46b91e9953d09d66f1
	* src/global.h (enum Feature, enum Feature2, hasFeature): Remove.
	* src/context.cpp (supported_features, supported_features2, hasFeature):
	Remove.

2025-05-14  Ingo Klöcker  <dev@ingo-kloecker.de>

	Remove deprecated functions and types.
	+ commit 9200517f23c5b1e2df4e1773d64b2d45a3cdb864
	src/decryptionresult.h (unsupportedAlgortihm, wrongKeyUsage): Remove.
	src/key.h (Key::canReallySign, Key::isSecret,
	UserID::Signature::Notation, non-const UserID::Signature::operator<
	overload): Remove.
	src/keygenerationresult.h (KeyGenerationResult::primaryKeyGenerated,
	KeyGenerationResult::subkeyGenerated): Remove.
	src/verificationresult.h (Signature::Notation,
	Signature::wrongKeyUsage): Remove.

	Add CreationFlags and simplify API of createKey and createSubkey.
	+ commit d3559c8abcfe8dd66e3a674d041459ab5341b956
	* src/context.h (enum Context::CreationFlags): New.
	(Context::createKey, Context::startCreateKey, Context::createSubkey,
	Context::startCreateSubkey): Add overload. Deprecate old overload.
	(Context::createKeyEx): Deprecate.
	(operator|, operator|=): New.
	* src/context.cpp ((Context::createKey, Context::startCreateKey,
	Context::createSubkey, Context::startCreateSubkey): Define new overload.

	* tests/CMakeLists.txt: Add new test program.
	* tests/run-createkey.cpp: New.

2025-05-13  Ingo Klöcker  <dev@ingo-kloecker.de>

	New decrypt flag DecryptListOnly.
	+ commit 8b853b09d54242dcf3978303f407a1106db747d1
	src/context.h (enum DecryptionFlags): Add value DecryptListOnly.

2025-05-12  Ingo Klöcker  <dev@ingo-kloecker.de>

	Make checking if Error represents success or error more easy.
	+ commit 836885ea9c68b57e27d463130cfeb73e5849bcd8
	* src/context.cpp, src/error.h (Error::isSuccess, Error::isError): New.
	* src/error.h (Error::operator bool): Use Error::isError.

	Replace usage of safe-bool idiom with explicit conversion operator.
	+ commit 4b9b73a8b2da170772e8900f7cb479c022b1ec05
	* src/global.h (GPGMEPP_MAKE_SAFE_BOOL_OPERATOR): Remove.
	* src/configuration.h (class Component, class Option, class Argument):
	Replace "safe bool operator" with explicit operator bool.
	* src/error.h (class Error): Ditto.

2025-05-06  Ingo Klöcker  <dev@ingo-kloecker.de>

	build: Append the linker search paths to the RPATH for installed targets
	+ commit 2b30653d48b52bab2c4a00eff288303279b491e0
	* cmake/modules/G10CMakeSettings.cmake: For Unix systems, enable
	CMAKE_INSTALL_RPATH_USE_LINK_PATH.

2025-05-05  Carl Schwan  <carl@carlschwan.eu>

	Add missing Context::EncryptionFlags.
	+ commit 7a82afe66309cb7aa9956586d11749be6c6dd6e5
	* src/context.cpp: Add AddRecipient and ChangeRecipient enum value

2025-04-11  Ingo Klöcker  <dev@ingo-kloecker.de>

	Add missing transition and remove two ignored (and wrong) transitions.
	+ commit 5b77f4072d03342b8719bbe93fc77641fffb476a
	* src/gpgsignkeyeditinteractor.cpp (makeTable): Remove two transitions.
	Add one transition.

2025-04-10  Ingo Klöcker  <dev@ingo-kloecker.de>

	Validate the transition map.
	+ commit 6f2e91d4d25afa6934ceaf1563a4d826a904d644
	* src/gpgsignkeyeditinteractor.cpp (makeTable): Assert that all
	transitions go from one state to a different state.

	Ensure that all transitions go from one state to a different state.
	+ commit aee2b30482406e677dbddf1a68b2a11a5dc70adf
	* src/gpgsignkeyeditinteractor.cpp (makeTable): Replace transitions from
	CONFIRM to CONFIRM with transitions from CONFIRM to CONFIRM2 and vice
	versa. Add transitions from CONFIRM2 to some other state for all
	transitions from CONFIRM to some other state.

2025-03-24  Ingo Klöcker  <dev@ingo-kloecker.de>

	Add API for generating random bytes and single random values.
	+ commit a68baf81e3dfdb51c961de3f2f4e4d670d899f63
	* src/randomresults.h: New.
	* src/CMakeLists.txt: Add new file.
	* src/context.h (class Context): Add enum RandomMode.
	* src/context.h, src/context.cpp (class Context): Add member
	functions generateRandomBytes and generateRandomValue.

	* tests/run-genrandom.cpp: New.
	* tests/CMakeLists.txt: Add new file.

2025-02-26  Ingo Klöcker  <dev@ingo-kloecker.de>

	Remove never working TrustItem listing functionality.
	+ commit 532bc8b248ccc8f5805ce47d42f1838a378a4260
	* src/CMakeLists.txt (Gpgmepp_SOURCES): Remove trustitem.cpp.
	(Gpgmepp_HEADERS): Remove trustitem.h.
	* src/context.cpp, src/context.h (class Context): Remove member
	functions startTrustItemListing, nextTrustItem, endTrustItemListing.
	* src/context_p.h (enum Context::Private::Operation): Remove value
	TrustList.
	* src/eventloopinteractor.cpp (EventLoopInteractor::Private::eventIOCb):
	Remove handling of event GPGME_EVENT_NEXT_TRUSTITEM.
	* src/eventloopinteractor.h (EventLoopInteractor): Remove pure virtual
	nextTrustItemEvent.
	* src/trustitem.cpp, src/trustitem.h: Remove files.

	build: Require same major/minor version of gpgme as version of gpgmepp.
	+ commit 6f94663cfc2c3d212be4bd9475ef95c94f5f9c08
	* CMakeLists.txt: Set GPGME_REQUIRED_VERSION to
	VERSION_MAJOR.VERSION_MINOR.0.

2025-01-29  Ingo Klöcker  <dev@ingo-kloecker.de>

	build: Run chmod instead of using cmake's file CHMOD command.
	+ commit 69dde050edd4ef9da8d5879bb2f4c9de07d86f5e
	* cmake/modules/G10AddDistTargets.cmake,
	cmake/modules/G10AddReleaseTargets.cmake,
	cmake/modules/G10GitHooks.cmake: Replace file(CHMOD ...) with
	execute_process(COMMAND chmod +x ...).

	doc: Update build instructions and some other documentation.
	+ commit 6df272737689e3221e7115a0e064ec9e912df9fe
	* INSTALL: Remove.
	* INSTALL.md: New.
	* README: Remove remark about missing key edit interface. Update
	reference to tests in QGpgME. Mention examples in tests folder. Update
	URL of KDE's coding style.
	* README.GIT: Remove.
	* doc/HACKING: Update URL of KDE's coding style. Add information about
	GPGMEPP_INTERACTOR_DEBUG variable.

2025-01-22  Ingo Klöcker  <dev@ingo-kloecker.de>

	build: Optionally, add host value to gpgmepp's pkgconfig file.
	+ commit 415ac3f1adfa466d2cfcf683fbd6b61443cec787
	* CMakeLists.txt: Add option PKGCONFIG_HOST (default "").
	* src/CMakeLists.txt: Set replacement for pkgconfig_host_line variable
	referenced in gpgmepp.pc.in if PKGCONFIG_HOST is set.
	* src/gpgmepp.pc.in: Add placeholder for pkgconfig_host_line.

	build: Allow building gpgmepp as static library.
	+ commit 8422057b85f8b5923166997e0ebf0d5b5646a833
	* CMakeLists.txt: Add options ENABLE_SHARED (default ON) and
	ENABLE_STATIC (default OFF). Build tests only with the shared library.
	* src/CMakeLists.txt: Add target Gpgmepp for the shared library if
	ENABLE_SHARED is true. Add target GpgmeppStatic for the static library
	if ENABLE_STATIC is true. Set sources, includes, properties, etc. only
	for enabled targets. If the shared library isn't built then generate the
	export header with a dummy shared library. Install the cmake config
	files only for the shared library.

	build: Always compile with _FILE_OFFSET_BITS=64 on Windows (MinGW)
	+ commit 629daa8492de4c0a42e4a3be31eafad072a4524b
	* cmake/modules/G10CompilerSettings.cmake: Add -D_FILE_OFFSET_BITS=64
	for MinGW.

2025-01-20  Ingo Klöcker  <dev@ingo-kloecker.de>

	build: Add the usual Git hooks.
	+ commit a06f8d41bbaeec10230d0e5067517cab79b6326e
	* CMakeLists.txt: Include G10GitHooks. Call g10_configure_git_hooks.
	* cmake/modules/G10GitHooks.cmake: New.

	build: Add custom targets only on Unix-like systems.
	+ commit ffa48fbaf787d25a1f632aaf8244e4ca479b8709
	* CMakeLists.txt: Call g10_add_gen_changelog_target,
	g10_add_dist_targets, and g10_add_release_targets only for UNIX.

	build: Add "gen-swdb", "release", and "sign-release" targets.
	+ commit 8747ce7ff4cca73052ae48884f2edfe4ad31e110
	* CMakeLists.txt: Include G10AddReleaseTargets. Add the release targets.
	* cmake/modules/G10AddReleaseTargets.cmake,
	cmake/modules/g10_generate_swdb.sh.in,  cmake/modules/g10_release.sh.in,
	cmake/modules/g10_sign-release.sh.in: New.

	build: Generate ChangeLog and add it to the tarball.
	+ commit f1698cb2a6f009990dcfa7709ead2b7974012e36
	* .gitattributes: New.
	* CMakeLists.txt: Include G10AddGenChangeLogTarget. Add "gen-ChangeLog"
	target. Make "dist" target depend on "gen-ChangeLog" target.
	* cmake/modules/G10AddGenChangeLogTarget.cmake,
	cmake/modules/g10_generate_ChangeLog.cmake.in: New.

	build: Add "dist" and "distcheck" targets.
	+ commit 585c31afca6e94cf71a0b890a4474e051bf322cc
	* CMakeLists.txt: Include G10AddDistTargets. Set EXTRA_DIST. Add "dist"
	and "distcheck" target.
	* cmake/modules/G10AddDistTarget.cmake, cmake/modules/g10_dist.sh.in,
	cmake/modules/g10_distcheck.sh.in: New.

	build: Add "uninstall" target.
	+ commit d7890971eb2e1ac1533b55ae55d1200e9a635e0f
	* CMakeLists.txt: Include ECMUninstallTarget.
	* cmake/modules/ECMUninstallTarget.cmake,
	cmake/modules/ecm_uninstall.cmake.in: New.

	build: Add cmake files for building the tests.
	+ commit dacfe7f9cad56e368afaec9368ac49504b5ee2bc
	* CMakeLists.txt: Add subdirectory tests to the build.
	* cmake/modules/G10CMakeSettings.cmake: Add option BUILD_TESTING.
	* tests/CMakeLists.txt: New.
	* tests/Makefile.am: Remove.
	* tests/README: Update.

	build: Generate and install pkg-config file with cmake.
	+ commit ffcd1ca3b7aba8ffbec05fedc9ebb88b8eeea402
	* src/CMakeLists.txt: Generate and install gpgmepp.pc.
	* src/gpgmepp.pc.in: Use cmake variables. Use ${prefix}/${exec_prefix}
	for exec_prefix, includedir, libdir. Remove host. Use fixed values for
	Cflags and Libs.

	build: Create VERSION file with full version and commit ID.
	+ commit 192f4e71a52020ea7ebd230e2d13be86f2ef3f63
	* CMakeLists.txt: Include G10GetFullVersion. Get full version and
	commit ID. Write VERSION file.
	* cmake/modules/G10GetFullVersion.cmake: New.

	build: Generate version file and cmake config files with cmake modules.
	+ commit 6148e7e68bea3ce1d1c30df999d4dbd447fa06e0
	* cmake/modules/ECMSetupVersion.cmake,
	cmake/modules/ECMVersionHeader.h.in: New.
	* cmake/modules/G10CMakeSettings.cmake: Enable versioned DLLs for MinGW
	builds.
	* src/CMakeLists.txt: Remove unused variables. Use ecm_setup_version
	instead of configure_file to generate gpgmepp_version.h and
	GpgmeppConfigVersion.cmake. Use configure_package_config_file instead
	of configure_file to generate the GpgmeppConfig.cmake files. Generate
	the exported GpgmeppTargets*.cmake files and install them. Install the
	Find modules.
	* src/GpgmeppConfig.cmake.in: New.
	* src/GpgmeppConfig-msvc.cmake.in.in, src/GpgmeppConfig-w32.cmake.in.in,
	src/GpgmeppConfig.cmake.in.in, src/GpgmeppConfigVersion.cmake.in,
	src/gpgmepp_version.h.in: Remove.

	build: Generate the export header.
	+ commit 08760bd6352828a599fb0f0f7be5374e0bc96167
	* src/CMakeLists.txt: Remove compile definition BUILDING_GPGMEPP. Remove
	gpgmepp_export.h from gpgmepp_HEADERS. Use generate_export_header
	to generate gpgmepp_export.h. Create a copy of the export header in a
	gpgme++/ folder in the build folder. Install the generated header.
	* src/gpgmepp_export.h: Remove.
	* src/interfaces/{assuantransaction.h,dataprovider.h,statusconsumer.h}:
	Include export header with gpgme++/gpgmepp_export.h.

	build: Move common cmake and compiler settings to cmake modules.
	+ commit 94bc585c92d2d693da9f9040b18defbed2b7c0e4
	* CMakeLists.txt: Don't set a few variables. Include G10CMakeSettings
	and G10CompilerSettings.
	* cmake/modules/G10CMakeSettings.cmake,
	cmake/modules/G10CompilerSettings.cmake: New.
	* src/CMakeLists.txt: Don't set include directories for PRIVATE and
	PUBLIC scope. Set include directory for INTERFACE scope.

	build: Add support for cmake and remove support for autotools.
	+ commit 106eb525bafa6df94229625ef92ead5e0c0ab156
	* CMakeLists.txt, cmake/modules/FindGpgme.cmake,
	cmake/modules/FindLibGpgError.cmake, src/CMakeLists.txt,
	src/GpgmeppConfig-msvc.cmake.in.in: New.
	* Makefile.am, autogen.rc, autogen.sh, build-aux/compile,
	build-aux/config.guess, build-aux/config.sub, build-aux/depcomp,
	build-aux/install-sh, build-aux/libtool-patch.sed, build-aux/ltmain.sh,
	build-aux/missing, build-aux/mkinstalldirs, configure.ac,
	m4/ax_cxx_compile_stdcxx.m4, m4/ax_gcc_func_attribute.m4,
	m4/gpg-error.m4, m4/gpgme.m4, m4/libtool.m4, m4/ltoptions.m4,
	m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4, src/Makefile.am:
	Remove.

2024-12-10  Ingo Klöcker  <dev@ingo-kloecker.de>

	doc: Fix a few license headers.
	+ commit 07060c4719552a662c09accd335e86b4bc237e1d
	* src/GpgmeppConfig-w32.cmake.in.in, src/GpgmeppConfig.cmake.in.in,
	src/GpgmeppConfigVersion.cmake.in: Fix license headers.
	* src/trustitem.cpp, src/trustitem.h: Fix project name.
	* tests/run-getkey.cpp, tests/run-keylist.cpp, tests/run-verify.cpp:
	Fix license headers.

	Avoid clashes of gpgme++ headers with other headers.
	+ commit ca6c423b477d932ab2027a34379bacaa0ea410cd
	* src/GpgmeppConfig-w32.cmake.in.in, src/GpgmeppConfig.cmake.in.in:
	Don't put gpgme++ subfolder in interface include paths.

2024-12-05  Ingo Klöcker  <dev@ingo-kloecker.de>

	Add files for building the project with autotools.
	+ commit 31819fdb8b5f39720ebe50f613bcd4c867f2c166
	* COPYING, COPYING.LESSER, INSTALL, README.GIT, autogen.sh,
	build-aux/compile, build-aux/config.guess, build-aux/config.sub,
	build-aux/depcomp, build-aux/install-sh, build-aux/libtool-patch.sed,
	build-aux/ltmain.sh, build-aux/missing, build-aux/mkinstalldirs,
	m4/ax_cxx_compile_stdcxx.m4, m4/ax_gcc_func_attribute.m4,
	m4/gpg-error.m4, m4/libtool.m4, m4/ltoptions.m4, m4/ltsugar.m4,
	m4/ltversion.m4, m4/lt~obsolete.m4: New.
	* .gitignore, AUTHORS, COPYING.LIB, ChangeLog, NEWS, autogen.rc,
	configure.ac: New.
	* Makefile.am (EXTRA_DIST): Add autogen.sh, autogen.rc,
	build-aux/libtool-patch.sed, doc/DCO, doc/HACKING, VERSION.
	(RELEASE_ARCHIVE_SUFFIX, ACLOCAL_AMFLAGS, dist-hook, distcheck-hook,
	.PHONY, gen_start_date, gen-ChangeLog, RELEASE_NAME, release,
	sign-release): New (copied with minor adjustments from gpgme's top-level
	Makefile.am).
	* build-aux/git-hooks/commit-msg: New.
	* build-aux/git-log-footer: New (copied with some adjustments from
	gpgme).
	* doc/DCO, doc/HACKING: New (copied with some adjustments from gpgme).
	* m4/gpgme.m4: New (copied from gpgme/src/gpgme.m4).
	* src/GpgmeppConfig-w32.cmake.in.in, src/GpgmeppConfig.cmake.in.in:
	Remove @LIBASSUAN_LIBS@ from the INTERFACE_LINK_LIBRARIES property of
	gpgmepp.
	* src/Makefile.am (AM_CPPFLAGS): Replace include path of gpgme relative
	to top_builddir with @GPGME_CFLAGS@. Replace @GPGME_CPP_CFLAGS@ with
	@GPGMEPP_CFLAGS@. Remove unneeded @LIBASSUAN_CFLAGS@.
	(libgpgmepp_la_LIBADD): Replace relative paths of libgpgme.la with
	@GPGME_LIBS@. Remove unneeded @LIBASSUAN_LIBS@.

	* tests/Makefile.am (LDADD): Adjust paths of libgpgmepp.la. Replace
	relative paths of libgpgme.la with @GPGME_LIBS@.
	(AM_CPPFLAGS): Adjust include paths of source files. Replace relative
	include paths of gpgme with @GPGME_CFLAGS@. Remove unneeded
	@LIBASSUAN_CFLAGS@. Remove unneeded define of TOP_SRCDIR.

2024-11-14  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add Kyber algorithm.
	+ commit 23c5fccec2d89715db9c1d2a4031471572c7ccbe
	* lang/cpp/src/key.h (enum Subkey::PubkeyAlgo): Add AlgoKyber with
	same value as GPGME_PK_KYBER.

2024-10-23  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Put attributes before declarations.
	+ commit 32f67e8a2eb8c06156d2cda02f7820e08ea7f1fb
	* lang/cpp/src/key.h (UserID::Signature::Notation): Move
	GPGMEPP_DEPRECATED before the whole typedef declaration.
	* lang/cpp/src/verificationresult.h (Signature::Notation): Ditto.

	cpp: Add/change some includes.
	+ commit c05e55bc2f320e662ca3c97ec76c7fd6fc4b0e3e
	* lang/cpp/src/gpgaddexistingsubkeyeditinteractor.h,
	lang/cpp/src/gpgrevokekeyeditinteractor.h: Include <string>.
	* lang/cpp/src/key.h: Include <ctime> instead of <sys/time.h>.

2024-10-21  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add support for new flag fields beta_compliance.
	+ commit 92227ece77d88913aedcfc9935811ba690fd530d
	* lang/cpp/src/decryptionresult.cpp, lang/cpp/src/decryptionresult.h
	(class DecryptionResult): Add method isBetaCompliance.
	* lang/cpp/src/decryptionresult.cpp (operator<<): Add new flag.
	* lang/cpp/src/key.cpp, lang/cpp/src/key.h (class Key): Add method
	isBetaCompliance.
	(class Subkey): Add method isBetaCompliance.
	* lang/cpp/src/key.cpp:
	(Key::isDeVs): Remove duplicate check of is_de_vs of first subkey.
	(operator<<): Add new flag.
	* lang/cpp/src/verificationresult.cpp, lang/cpp/src/verificationresult.h
	(class Signature): Add method isBetaCompliance.
	* lang/cpp/src/verificationresult.cpp (operator<<): Add new flag.

2024-08-29  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add pkgconfig file for gpgmepp.
	+ commit d2d410081da79a99c4d05e17232a8eb939fda9f6
	* configure.ac: Add substitutions GPGMEPP_PKGCONFIG_LIBS,
	GPGMEPP_PKGCONFIG_CFLAGS, GPGMEPP_PKGCONFIG_HOST. Apply them. Configure
	gpgmepp.pc file.
	* lang/cpp/src/Makefile.am (pkgconfigdir, pkgconfig_DATA): New.
	(EXTRA_DIST): Add gpgmepp.pc.in.
	* lang/cpp/src/gpgmepp.pc.in: New.

2024-08-28  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Go with default answer on unknown question by key edit interface.
	+ commit 1f95cc1fa69d2c2e58f7518460b7130216d81331
	* lang/cpp/src/editinteractor.cpp (edit_interactor_callback_impl):
	Send empty string to edit interface if General Error occurred.

2024-08-06  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add support for setting owner trust and for disabling keys.
	+ commit 626d2c2ee9dbad940aa57be30acd9c7bde3e9229
	* lang/cpp/src/context.cpp, lang/cpp/src/context.h (class Context): Add
	member functions setOwnerTrust, startSetOwnerTrust, setKeyEnabled,
	startSetKeyEnabled.
	* lang/cpp/src/context.cpp (owner_trust_to_string): New.

2024-07-10  Ingo Klöcker  <dev@ingo-kloecker.de>

	build,cpp: Fix include paths in forwarding headers in gpgme++ folder.
	+ commit 00433ef231e405fd6c7416aa5b087f8adfa776d8
	* lang/cpp/src/Makefile.am (build rule for copied headers): Write
	abs_srcdir instead of srcdir in the generated headers.

2024-07-05  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Deprecate Error::asString and update users.
	+ commit c5d0e390133f6efb011a6cd7b0ed3c0c63e01e7b
	* lang/cpp/src/error.h (Error::asString): Mark as deprecated.
	* lang/cpp/src/context.cpp (operator<<),
	lang/cpp/src/editinteractor.cpp (edit_interactor_callback_impl),
	lang/cpp/tests/run-getkey.cpp (main),
	lang/cpp/tests/run-keylist.cpp (main),
	lang/cpp/tests/run-wkdlookup.cpp (main): Use Error::asStdString instead
	of Error::asString.

	cpp: Add safer member function returning text describing an error.
	+ commit 21ff2e210c34959ba410e66e8874d43150494d45
	* lang/cpp/src/error.h, lang/cpp/src/context.cpp (class Error): New
	member function asStdString.

	build,cpp: Create forwarding headers in a gpgme++ folder.
	+ commit 2d3499295edf1f6ef9aa2c1330735ee022ad9bea
	* lang/cpp/src/Makefile.am (copied_headers): New.
	(build rule for all copied headers): New.
	(BUILT_SOURCES): New.
	(CLEANFILES): Add copied_headers.

2024-06-28  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Remove obsolete files.
	+ commit bc0693c200cbb56997e5f864b9fbb678dffab88b
	* lang/cpp/src/context_glib.cpp, lang/cpp/src/context_qt.cpp: Remove.

2024-06-10  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Remove commented out and disabled code.
	+ commit e7b9c5f5b5caefcade1574f9413f6fd7f73e6417
	* lang/cpp/src/configuration.cpp: Remove disabled, abandoned code.
	* lang/cpp/src/context.cpp: Remove commented out, obsolete code.

2024-05-24  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Fix includes in public headers.
	+ commit 0b867d8336a1c9199af8e2935c0fc57f6df4c04f
	* lang/cpp/src/defaultassuantransaction.h,
	lang/cpp/src/gpgadduserideditinteractor.h,
	lang/cpp/src/gpgagentgetinfoassuantransaction.h,
	lang/cpp/src/gpggencardkeyinteractor.h,
	lang/cpp/src/gpgsetexpirytimeeditinteractor.h,
	lang/cpp/src/gpgsetownertrusteditinteractor.h,
	lang/cpp/src/gpgsignkeyeditinteractor.h,
	lang/cpp/src/interfaces/assuantransaction.h,
	lang/cpp/src/interfaces/dataprovider.h,
	lang/cpp/src/interfaces/statusconsumer.h,
	lang/cpp/src/scdgetinfoassuantransaction.h,
	lang/cpp/src/statusconsumerassuantransaction.h,
	lang/cpp/src/trustitem.h: Use #include "foo.h" instead of
	#include <foo.h> for own headers.

2024-05-22  Tobias Fella  <tobias.fella@gnupg.com>

	qt,cpp: Implement adding ADSKs to existing keys.
	+ commit c906985ff29d9311676a24eb1a2887e8f725c409
	* lang/cpp/src/context.cpp: Add functions for adding ADSKs.
	* lang/cpp/src/context.h: Ditto.
	* lang/qt/src/qgpgmequickjob.cpp: Add implementation of ADSK job.
	* lang/qt/src/qgpgmequickjob.h: Ditto.
	* lang/qt/src/quickjob.h: Add job for adding ADSKs.

2024-05-21  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add information about revocation keys to Key.
	+ commit 25663892aa418ecca2262b253dfc313dab79b20c
	* lang/cpp/src/gpgmefw.h (gpgme_revocation_key_t): New forward
	declaration.
	* lang/cpp/src/key.cpp, lang/cpp/src/key.h (class Key): New methods
	revocationKey, numRevocationKeys, revocationKeys.
	(class RevocationKey): New.
	(swap): New overload for RevocationKey.
	(operator<<): New overload for RevocationKey.
	* lang/cpp/src/key.cpp (operator<<): Add information about revocation
	keys to the output stream for Key.

	* lang/cpp/tests/run-keylist.cpp (main): Don't output Key if nextKey
	failed, e.g. at the end of the key listing.

2024-04-05  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Handle smart card op failure status messages.
	+ commit 7aea45397eabc2059349928eacf806a0866b3e45
	* lang/cpp/src/editinteractor.cpp (parse_sc_op_failure): New.
	(CallbackHelper::edit_interactor_callback_impl): Parse failure code on
	GPGME_STATUS_SC_OP_FAILURE status.
	(sc_op_failure_to_error): New.

2024-01-09  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp,tests: Launch dirmngr with gpg-conf.
	+ commit 56cba989a9db929d86520e431089d3327aa97a3d
	* lang/cpp/tests/run-wkdlookup.cpp (main): Replace backslashes with
	forward slashes in homedir returned by GpgME::dirInfo. Use "gpgconf
	--launch dirmngr" to start dirmngr.

2023-12-19  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Support new flags for direct signing/encryption of files.
	+ commit c5177d3bcb4a53807c2c6a91267f45ddf50dbe98
	* lang/cpp/src/context.h (enum EncryptionFlags): Add constant
	EncryptFile.
	* lang/cpp/src/global.h (enum SignatureMode): Add constant SignFile.
	* lang/cpp/src/context.cpp (sigflags2sigflags): Handle new flag
	SignFile.
	(encryptflags2encryptflags): Handle new flag EncryptFile.
	(operator<<): Add new flags to the corresponding debug streams.
	* lang/cpp/src/signingresult.cpp (CreatedSignature::mode): Handle
	new flag SignFile (even if it cannot occur).

2023-10-05  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Support new key capability flags.
	+ commit 5700f00f642b7b3fa3e5cc5a2948a8c474f1ad34
	* lang/cpp/src/key.cpp, lang/cpp/src/key.h (class Key): New methods
	hasCertify, hasSign, hasEncrypt, hasAuthenticate.

2023-08-04  Carl Schwan  <carl.schwan@gnupg.com>

	cpp: Expose gpgme_decrypt_result_t.is_mime through cpp API.
	+ commit 1cfad17ddafb6742ea85b092d6b59cf823c3caaf
	* lang/cpp/src/descriptionresult.cpp (DescriptionResult::isMime): New.
	* lang/cpp/src/descriptionresult.h: Update accordingly.

2023-06-16  Andre Heinecke  <aheinecke@gnupg.org>

	qt, cpp: Support larger size-hint on 32 bit builds.
	+ commit e3eb5afe13a920b6aeb0a28d0d3e7b9ad2dc4e28
	* NEWS: Mention this.
	* lang/cpp/src/data.h, lang/cpp/src/data.cpp (Data::setSizeHint): New.
	* lang/qt/src/qgpgmedecryptjob.cpp,
	 lang/qt/src/qgpgmedecryptverifyarchivejob.cpp,
	 lang/qt/src/qgpgmedecryptverifyjob.cpp,
	 lang/qt/src/qgpgmeencryptjob.cpp,
	 lang/qt/src/qgpgmesignencryptjob.cpp,
	 lang/qt/src/qgpgmesignjob.cpp,
	 lang/qt/src/qgpgmeverifydetachedjob.cpp,
	 lang/qt/src/qgpgmeverifyopaquejob.cpp: Set size for input IODevice.

	cpp: Expose gpgme_data_set_flag through cpp API.
	+ commit 5fee1b6846d83fbaaad60ff57ead617ab7a4e45c
	* lang/cpp/src/data.cpp (Data::setFlag): New.
	* lang/cpp/src/data.h: Update accordingly.
	* NEWS: Mention this.

2023-06-01  Ingo Klöcker  <dev@ingo-kloecker.de>

	doc,cpp: Treat GPG_ERR_FULLY_CANCELED as canceled.
	+ commit b729775584ffd77ef6293c29d04af7859d62e8d5
	* doc/gpgme.texi (GPG_ERR_FULLY_CANCELED): New.
	* lang/cpp/src/context.cpp (Error::isCanceled): Also return true for
	GPG_ERR_FULLY_CANCELED.

2023-05-30  Biswapriyo Nath  <nathbappai@gmail.com>

	cpp,python: Respect --disable-gpg-test for tests.
	+ commit 9d39389ac9230f0e73eb88d4604b8d4fca294b9b
	lang/cpp/Makefile.am (SUBDIRS): Depend tests in RUN_GPG_TESTS.
	lang/python/Makefile.am (SUBDIRS): Ditto.

2023-04-18  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Fix Key::canSign()
	+ commit eb7817ab7617e1f3615e47b03d2a9526a4767839
	* lang/cpp/src/key.h (canReallySign): Deprecate.
	* lang/cpp/src/key.cpp (canSign): Remove workaround. Use implementation
	of canReallySign.
	(canReallySign): Use canSign().
	(operator<<): Use canSign().

2023-03-21  Werner Koch  <wk@gnupg.org>

	core,cpp: Add new key flags to gpgme_subkey_t.
	+ commit bd97412bd89ad3443881be6b0f1a0198973947c2
	* src/gpgme.h.in (struct _gpgme_subkey): Add bit flags can_renc,
	can_timestamp, adn is_group_owned. Reduce size of _unused.
	* src/keylist.c (set_subkey_capability): Set them.
	* tests/run-keylist.c (main): Print them.

	* lang/cpp/src/key.h (Subkey::canRenc): New.
	(Subkey::canTimestamp): New.
	(Subkey::isGroupOwned): New.
	* lang/cpp/src/key.cpp: Implement new methods.
	(Subkey::isQualified): Print them.
	(std::ostream &operator<<): Print them.

2023-02-09  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Improve debug output of some enums.
	+ commit 1031bf62065181d7df5c2093f1ef44d27b5d33bb
	* lang/cpp/src/verificationresult.cpp (operator<<): Fix output of
	Signature::PKAStatus which doesn't represent flags. Print corresponding
	name of enum value if Signature::Summary or Notation::Flags are 0.

2023-02-02  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Return successful verification for signed but not encrypted data.
	+ commit 3ce1385f5207ec2f424264f30c7c98f6d69cc768
	* lang/cpp/src/context.cpp (Context::decrypt): Use decryptionResult().
	(Context::verifyDetachedSignature, Context::verifyOpaqueSignature):
	Use verificationResult().
	(Context::verificationResult): Ignore "no data" error for signed but
	not encrypted data.
	(Context::decryptAndVerify): Use decryptionResult() and
	verificationResult().

	cpp: Update decryption flags.
	+ commit 6a4f6aaea825058845886bdcbb94777be07840f0
	* lang/cpp/src/context.h (DecryptArchive): New flag.

	cpp: Add const-overloads of version comparison operators.
	+ commit ad0ee84dc5734dcabf90570c3d0dc695cbb81ab6
	* lang/cpp/src/engineinfo.h (EngineInfo::Version): Add const-overloads
	of all comparison operators.

2023-01-31  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Fix debug output of SignatureMode.
	+ commit d60de32aae71573767fdec850cfb7be923d7890c
	* lang/cpp/src/context.cpp (operator<<): Treat signature mode as
	combination of a 2-bit flag and a 1-bit flag.

2023-01-30  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Support new archive signing flag.
	+ commit 4d72304dbe4137b7e80fac7a76d98e64bbd3d476
	* lang/cpp/src/global.h (enum SignatureMode): Add constant SignArchive.
	* lang/cpp/src/context.cpp (sigmode2sigmode): Rename to
	sigflags2sigflags
	(sigflags2sigflags): ... and rename argument mode to flags and treat
	it as flags. Adjust the callers.
	(operator<<): Change local CHECK macro to handle flags. Add new flag
	to debug stream.
	* lang/cpp/src/signingresult.cpp (CreatedSignature::mode): Handle
	new flags (even if it cannot occur currently).

2023-01-27  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Support new archive encryption flag.
	+ commit c8c443a440c4bc6ce7c9325ee0b4dae28276e918
	* lang/cpp/src/context.h (EncryptArchive): New flag.
	* lang/cpp/src/context.cpp (encryptflags2encryptflags): Convert
	EncryptArchive to corresponding gpgme encrypt flags.
	(operator<<): Add new flag to debug stream.

	cpp: Add convenience overload to set file name.
	+ commit c449cd2b084b9db110c81bf2fbc9e36bb632a427
	* lang/cpp/src/data.h, lang/cpp/src/data.cpp (setFileName): Add
	overload.

2023-01-26  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Support all encryption flags.
	+ commit 631a7b96aae3155696a0f846f7b19cab3cb3d8d0
	* lang/cpp/src/context.h (WantAddress): New flag.
	* lang/cpp/src/context.cpp (encryptflags2encryptflags): Convert
	WantAddress to corresponding gpgme encrypt flags.
	(operator<<): Add new flag to debug stream.

	cpp: Pass ThrowKeyIds and EncryptWrap flags to GpgME.
	+ commit bde2597f2117e7953731d0afd0796e49b3fecc1e
	* lang/cpp/src/context.cpp (encryptflags2encryptflags): Convert
	ThrowKeyIds and EncryptWrap to corresponding gpgme encrypt flags.
	(operator<<): Add flags to debug stream.

2023-01-05  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Fix comparisons of integer expressions of different signedness.
	+ commit 73686de886886928f35efb270999a1e9228facb4
	* lang/cpp/src/gpgrevokekeyeditinteractor.cpp
	(GpgRevokeKeyEditInteractor::Private::nextState): Cast signed nextLine
	value to std::size_t.

	cpp: Expliticly declare compiler generated copy constructors.
	+ commit 85fd6b872a3a8cce18d3b2edae3155b8e86f81a6
	* lang/cpp/src/configuration.h (Component, Option),
	lang/cpp/src/data.h (Data),
	lang/cpp/src/decryptionresult.h (DecryptionResult,
	DecryptionResult::Recipient),
	lang/cpp/src/encryptionresult.h (EncryptionResult, InvalidRecipient),
	lang/cpp/src/engineinfo.h (EngineInfo),
	lang/cpp/src/importresult.h (ImportResult, Import),
	lang/cpp/src/key.h (Key, Subkey, UserID, UserID::Signature),
	lang/cpp/src/keygenerationresult.h (KeyGenerationResult),
	lang/cpp/src/keylistresult.h (KeyListResult),
	lang/cpp/src/notation.h (Notation),
	lang/cpp/src/signingresult.h (SigningResult, InvalidSigningKey,
	CreatedSignature),
	lang/cpp/src/swdbresult.h (SwdbResult),
	lang/cpp/src/tofuinfo.h (TofuInfo),
	lang/cpp/src/verificationresult.h (VerificationResult, Signature),
	lang/cpp/src/vfsmountresult.h (VfsMountResult): Explitily declare
	compiler generated copy constructor.

2022-12-08  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Handle status errors in the base edit interactor.
	+ commit baab2bf0ea010bf329d59f453701abc573b78c24
	* lang/cpp/src/editinteractor.cpp (edit_interactor_callback_impl):
	Handle status errors.
	* lang/cpp/src/gpgrevokekeyeditinteractor.cpp
	(GpgRevokeKeyEditInteractor::Private::nextState): Remove handling of
	status errors.

	cpp: Handle statuses that need no response in the base edit interactor.
	+ commit d48d7665bfe1b8be12ecd6d5265b8181512cea37
	* lang/cpp/src/editinteractor.cpp (edit_interactor_callback_impl): Do
	not call nextState() if status needs no response.
	* lang/cpp/src/gpgaddexistingsubkeyeditinteractor.cpp
	(GpgAddExistingSubkeyEditInteractor::Private::nextState),
	lang/cpp/src/gpgadduserideditinteractor.cpp
	(GpgAddUserIDEditInteractor::nextState),
	lang/cpp/src/gpggencardkeyinteractor.cpp
	(GpgGenCardKeyInteractor::nextState),
	lang/cpp/src/gpgrevokekeyeditinteractor.cpp
	(GpgRevokeKeyEditInteractor::Private::nextState),
	lang/cpp/src/gpgsetexpirytimeeditinteractor.cpp
	(GpgSetExpiryTimeEditInteractor::nextState),
	lang/cpp/src/gpgsetownertrusteditinteractor.cpp
	(GpgSetOwnerTrustEditInteractor::nextState),
	lang/cpp/src/gpgsignkeyeditinteractor.cpp
	(GpgSignKeyEditInteractor::nextState): Remove handling of statuses that
	need no response.

2022-10-24  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Allow setting the curve to use when generating ECC keys.
	+ commit 7440649171ef35d9035b8cd64a0f8681215ad174
	lang/cpp/src/gpggencardkeyinteractor.h (class GpgGenCardKeyInteractor):
	Add enum Curve. Add member function setCurve.
	lang/cpp/src/gpggencardkeyinteractor.cpp
	(class GpgGenCardKeyInteractor::Private): Initialize simple members
	in-class. Add member curve.
	(GpgGenCardKeyInteractor::~GpgGenCardKeyInteractor): Use default d'tor.
	(GpgGenCardKeyInteractor::setCurve): New.
	(GpgGenCardKeyInteractor::action): Return curve defaulting to
	Curve25519.

2022-09-14  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Reject signing expired keys.
	+ commit 018a9c41f68cfa20e40e78d31d59834212ce2cd7
	* lang/cpp/src/gpgsignkeyeditinteractor.cpp (enum SignKeyState): Add
	new state REJECT_SIGN_EXPIRED.
	(makeTable): Add entries for new state to transition map.
	(GpgSignKeyEditInteractor::action): Handle new state.

2022-08-19  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Fix building with C++11.
	+ commit eaf5b2be86191d932c747b7ad95f7c870ac2d1a6
	* lang/cpp/src/importresult.cpp (ImportResult::mergeWith): Replace
	'auto' in lambdas with the actual type.

2022-08-18  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Fix handling of "no key" or "invalid time" situations.
	+ commit 6a6ad6cacd6ab96ae60233c4f7cc849adabf60ac
	* lang/cpp/src/gpgaddexistingsubkeyeditinteractor.cpp
	(GpgAddExistingSubkeyEditInteractor::Private::nextState): Fix inverted
	logic of string comparisons.

2022-08-09  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add support for gpgme_op_set_uid_flag.
	+ commit 0e90d1e85630f604d8b379edf5f53c32cf6590db
	* lang/cpp/src/context.cpp, lang/cpp/src/context.h
	(Context::setPrimaryUid, Context::startSetPrimaryUid): New.

2022-06-30  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Remove obsolete compatibility with KF5 variants.
	+ commit e72739389acfc897e2cd4ff8bff545dcfeb08b1f
	* lang/cpp/src/GpgmeppConfig-w32.cmake.in.in,
	lang/cpp/src/GpgmeppConfig.cmake.in.in: Remove find_package() call.

2022-05-12  Andre Heinecke  <aheinecke@gnupg.org>

	cpp: Export KeyListModeSaver.
	+ commit 897f4832d5e753c22c5d46f73963f8b9227ca5ca
	* lang/cpp/src/context.h (Context::KeyListModeSaver): Add Export.

2022-05-05  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Output more properties of a subkey.
	+ commit 1b9234393e2d39fa5dd1cbd531554d7acc552e2d
	* lang/cpp/src/key.cpp (ostream operator<< for Subkey): Fix wrong output
	of isInvalid and isDisabled flags. Add output of key grip, card serial
	number and the flags isSecret, isQualified, isDeVs, and isCardKey.

	cpp,tests: Actually parse the --with-secret option.
	+ commit df6b0682f53818b07ec5bad62114346f50c8026a
	* lang/cpp/tests/run-keylist.cpp (main): Handle --with-secret option.
	Print error for unknown option.

2022-05-04  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Allow retrieving import result of key listing with locate mode.
	+ commit ddf660eb5e15e7defe4fd0b60a770deb087b3e83
	* lang/cpp/src/context_p.h (enum Context::Private::Operation): Add
	value KeyListWithImport.
	* lang/cpp/src/context.cpp (Context::startKeyListing, Context::nextKey):
	Set lastop to KeyListWithImport if keylist mode includes Locate.

	cpp: Allow merging the results of two imports.
	+ commit 036686b8a7706335b58df50409b95acb383bdec1
	* lang/cpp/src/importresult.h, lang/cpp/src/importresult.cpp (class
	ImportResult): Add member function mergeWith.

2022-05-02  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add RAII class for saving/restoring the key list mode.
	+ commit 3c03beb2f86d5b39b260b8a25b5bfea1c291843d
	* lang/cpp/src/context.h, lang/cpp/src/context.cpp (class Context):
	Add nested class KeyListModeSaver.

2022-04-28  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp,tests: Verify that requested keylist mode is used.
	+ commit 46f959b3e0d42a44862c81cff67dea831412891e
	* lang/cpp/tests/run-getkey.cpp, lang/cpp/tests/run-keylist.cpp (main):
	Check used keylist mode.

2022-04-27  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Support new keylist modes.
	+ commit 8d4dcb96ccc96d0d2b4455620c89d55daebb142d
	* lang/cpp/src/global.h (ForceExtern, LocateExternal, KeyListModeMask):
	New.
	* lang/cpp/src/context.cpp (operator<<): Add check.
	* lang/cpp/src/util.h (gpgme_keylist_mode_t,
	convert_from_gpgme_keylist_mode_t): Handle ForceExtern.
	* lang/cpp/tests/run-getkey.cpp (show_usage, main): Add arguments
	--force-extern and --locate-external.
	* lang/cpp/tests/run-keylist.cpp (show_usage, main): Ditto.

2022-04-22  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Allow changing the error of a result.
	+ commit cd9738e8be499c3275a46b95bd92f00bc9cbf403
	* lang/cpp/src/result.h (class Result): Add member function setError.

2022-04-05  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Handle canceling of an edit operation.
	+ commit 1691f35125b3f2651efc72e8a8f2cec777ca55af
	* lang/cpp/src/editinteractor.cpp
	(CallbackHelper::edit_interactor_callback_impl): Check for error _or_
	canceled state.

	cpp: Return actual error if revocation fails.
	+ commit 9ee87441078465b60c7430102e64085d557ab6e1
	* lang/cpp/src/editinteractor.cpp, lang/cpp/src/editinteractor.h
	(EditInteractor::parseStatusError): New.
	* lang/cpp/src/gpgrevokekeyeditinteractor.cpp
	(GpgRevokeKeyEditInteractor::Private::nextState): Handle status
	error.

	cpp: Add internal utility function for splitting strings.
	+ commit d54d078dfe5ffbac790a2559ba7ff474cafe278b
	* lang/cpp/src/util.h (split): New.

	cpp: Do not export symbols of the Private class.
	+ commit 807224b66d5343bd4b255235dd90a9efd2c11732
	* lang/cpp/src/gpgrevokekeyeditinteractor.h (class
	GpgRevokeKeyEditInteractor): Mark nested class Private as hidden.

2022-03-30  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add interactor to revoke a key.
	+ commit 99e0c016138dba9ff69305ce197f360f616fe9bf
	* lang/cpp/src/global.h (enum class RevocationReason): New.
	* lang/cpp/src/gpgrevokekeyeditinteractor.cpp,
	lang/cpp/src/gpgrevokekeyeditinteractor.h: New.
	* lang/cpp/src/Makefile.am: Add new files.

2022-03-28  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Set default visibility of all symbols to hidden.
	+ commit 0d77fecdc2f1788626b5acde36f9a4905b5d45e2
	* configure.ac: Add -fvisibility=hidden to GPGME_CPP_CFLAGS if gcc
	supports the flag.
	* lang/cpp/src/Makefile.am (AM_CPPFLAGS): Add GPGME_CPP_CFLAGS.
	* m4/ax_gcc_func_attribute.m4: New.

	cpp: Put local helper function into unnamed namespace.
	+ commit 6b164183ccf11570d7c11c12aaaa131313b5a26f
	lang/cpp/src/context.cpp (to_auditlog_flags): Wrap in unnamed namespace.

2022-02-03  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Allow import of keys given by key ids.
	+ commit 3843f98f2a5d8169c0e0455dea4ed989d8170214
	* lang/cpp/src/context.h (class Context): Add overloads of member
	functions importKeys and startKeyImport
	* lang/cpp/src/context.cpp (class Context): ... and implement them.

	cpp: Add internal adapter for passing a vector of strings to gpgme.
	+ commit 35bc09378a0794b9f835769acf0942de27973350
	* lang/cpp/src/util.h (class StringsToCStrings): New.
	* lang/cpp/src/util.cpp: New.
	* lang/cpp/src/Makefile.am: Add new file.

2022-01-12  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add interactor to add existing subkeys to other keys.
	+ commit d4717811be11f73a35a1f73739b0fe602403e031
	* lang/cpp/src/gpgaddexistingsubkeyeditinteractor.cpp,
	lang/cpp/src/gpgaddexistingsubkeyeditinteractor.h: New.
	* lang/cpp/src/Makefile.am: Add new files.

2022-01-04  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Allow export of secret subkeys.
	+ commit d86a351f83d5e9dac05fa34d25444c0579a71229
	* lang/cpp/src/context.h (enum Context::ExportMode): Add value
	ExportSecretSubkey.
	(class Context): Add member functions exportSecretSubkeys and
	startSecretSubkeyExport.
	* lang/cpp/src/context.cpp (Context::exportPublicKeys,
	Context::startPublicKeyExport): Return error if ExportSecretSubkey
	mode flag is set.
	(Context::exportSecretSubkeys, Context::startSecretSubkeyExport):
	Implement.

	cpp: Allow export of secret keys.
	+ commit 7efc67248d8470c8108442fe599a21972308e9fc
	* lang/cpp/src/context.h (class Context): New member functions
	exportSecretKeys, startSecretKeyExport, exportKeys, startKeyExport.
	(Context::exportPublicKeys, Context::startPublicKeyExport): Rename
	argument flags/export_mode to mode.
	* lang/cpp/src/context.cpp (Context::exportPublicKeys): Return error if
	ExportSecret mode flag is set. Call exportKeys().
	(Context::startPublicKeyExport): Return error if
	ExportSecret mode flag is set. Call startKeyExport().
	(Context::exportSecretKeys, Context::startSecretKeyExport,
	Context::exportKeys, Context::startKeyExport): Implement.

	cpp: Mark ExportNoUID flag as obsolete.
	+ commit 7b853524f1a69a3450ad0490ed16114d5c4914e6
	* lang/cpp/src/context.h (enum Context::ExportMode): Mark value
	ExportNoUID as obsolete

	cpp: Remove obsolete workaround.
	+ commit eb679d6e8d2db12c1092323be567f7d8f15fbbfe
	* lang/cpp/src/context.cpp (Context::startKeyListing,
	Context::exportPublicKeys, Context::startPublicKeyExport): Remove
	workaround.

2021-12-22  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Check fpr of import status for NULL.
	+ commit 7dc20216c964d8925ba66b406b01089feaeb05c0
	* lang/cpp/src/importresult.cpp (GpgME::ImportResult::Private): Check
	fpr for NULL.

2021-12-10  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp,tests: Add test runner for doing a WKD lookup without import.
	+ commit 30be7f795c2627df8b08f2ee4e1b5f7338790664
	* lang/cpp/tests/Makefile.am (run_wkdlookup_SOURCES, programs_unix):
	New.
	(noinst_PROGRAMS): Add $(programs_unix).
	* lang/cpp/tests/run-wkdlookup.cpp: New.

	cpp: Add new supported components to API docs of dirInfo()
	+ commit a67b4d1618e99e19ae0ffb41c35dcc391ee423a0
	lang/cpp/src/global.h: Update API doc of dirInfo().

2021-12-07  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Return engine info for engine used by the context.
	+ commit aacaead73612fd173b60875be1191c54b723e477
	lang/cpp/src/context.cpp (Context::engineInfo()): Return engine info
	for protocol of context.

	cpp: Factor out common code of GpgME::engineInfo() overloads.
	+ commit d68e6f7aa2a79d444db576e6af7ea79f857dc38e
	* lang/cpp/src/context.cpp (get_engine_info, get_static_engine_info):
	New.
	(GpgME::engineInfo(GpgME::Protocol), GpgME::engineInfo(GpgME::Engine)):
	Use get_static_engine_info().

2021-11-25  Werner Koch  <wk@gnupg.org>

	core: Support dirinfo("socketdir")
	+ commit 7e10acc1ecd279709384bb360e589e061f09aed8
	* src/dirinfo.c (WANT_SOCKETDIR): New.
	(dirinfo): Add field socketdir.
	(parse_output): Support "socketdir".
	(get_gpgconf_item): Return socketdir.

	* tests/t-engine-info.c (main): Add socketdir to the output.

	* src/w32-util.c (_gpgme_create_process_utf8): Fix indentation.

2021-05-06  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Do not close stdout/stderr when destroying EditInteractor.
	+ commit d7044eeec1b368ed53c5119d8ef7785aedd54a4f
	* lang/cpp/src/editinteractor.cpp (EditInteractor::Private): Initialize
	members 'state' and 'debug' in-class. Add member 'debugNeedsClosing'.
	(EditInteractor::Private::Private): Remove members initializers.
	Remember if 'debug' needs to be closed.
	(EditInteractor::Private::~Private): Only close 'debug' if it needs to
	be closed.

2021-05-05  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add support for trust signatures to sign key edit interactor.
	+ commit 668184ff53bbb2ee0f72478ca76fb674757dd49a
	* lang/cpp/src/gpgsignkeyeditinteractor.h,
	lang/cpp/src/gpgsignkeyeditinteractor.cpp
	(GpgSignKeyEditInteractor::setTrustSignatureTrust): New.
	(GpgSignKeyEditInteractor::setTrustSignatureDepth): New.
	(GpgSignKeyEditInteractor::setTrustSignatureScope): New.
	* lang/cpp/src/gpgsignkeyeditinteractor.cpp
	(GpgSignKeyEditInteractor::Private::Private): Initialize new member.
	(makeTable): Add new transition. Fix typos in existing transitions.
	(GpgSignKeyEditInteractor::action): Handle SET_TRUST_VALUE,
	SET_TRUST_DEPTH, and SET_TRUST_REGEXP.

	cpp: Add getters for the attributes of a trust signature.
	+ commit 14a1f05a8e604b5f83ee72fd03b387c962f31d93
	* lang/cpp/src/key.h (TrustSignatureTrust): New enum.
	* lang/cpp/src/key.h, lang/cpp/src/key.cpp
	(UserID::Signature::isTrustSignature): New.
	(UserID::Signature::trustValue): New.
	(UserID::Signature::trustDepth): New.
	(UserID::Signature::trustScope): New.

2021-01-04  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add const-overload of UserID::Signature::operator<
	+ commit f644b64400284236ad3a3b2244a2a3c562f731ba
	lang/cpp/src/key.h, lang/cpp/src/key.cpp (UserID::Signature::operator<):
	Add const-overload. Deprecate non-const overload.

2020-11-20  Andre Heinecke  <aheinecke@gnupg.org>

	Revert "cpp: Use portable off_t size_t"
	+ commit 02d885a9c380d922c37748fc27f01e900dbfeb74
	This reverts commit adb872f2084a7940391a0de03ac73799db5f5808.

2020-11-18  Andre Heinecke  <aheinecke@gnupg.org>

	cpp: Use portable off_t size_t.
	+ commit adb872f2084a7940391a0de03ac73799db5f5808
	* configure.ac: Configure cpp data.h.in
	* lang/cpp/src/Makefile.am: Generate data.h
	* lang/cpp/src/data.cpp, lang/cpp/src/data.h: Use portable
	types.
	* lang/qt/src/Makefile.am: Include build dir.
	* lang/qt/tests/makefile.am: Include build dir.

2020-11-03  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Mark helper functions as static.
	+ commit 05494d323d2dc226085bdbfc690081d3accdf5ea
	lang/cpp/src/key.cpp (find_subkey, verify_subkey, find_uid, verify_uid,
	find_signature, verify_signature): Mark as static.

	cpp: Make signatures belonging to the same user ID sortable.
	+ commit 4ee60425914f7a6d092fd800057599d954b4244a
	lang/cpp/src/key.h, lang/cpp/src/key.cpp (UserID::Signature::operator<):
	New.
	lang/cpp/src/key.cpp (signature_index): New.

2020-10-29  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add support for gpgme_op_revsig.
	+ commit de844dcf97f49a51e22f31e75609003b247c7e7d
	* lang/cpp/src/context.cpp, lang/cpp/src/context.h
	(Context::revokeSignature, Context::startRevokeSignature): New.
	* lang/cpp/src/context.cpp
	(getLFSeparatedListOfStrings, getLFSeparatedListOfUserIds): New.
	(getLFSeparatedListOfFingerprintsFromSubkeys): Extracted second part
	of function to getLFSeparatedListOfStrings.

2020-10-23  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add support for gpgme_cancel.
	+ commit 5605fb9ba174e3e41f0b1a4fa75fe0586a27ab03
	* lang/cpp/src/context.cpp, lang/cpp/context.h
	(Context::cancelPendingOperationImmediately): New.
	* NEWS: Mention added API

	Add Assuan transaction that forwards status lines to another object.
	+ commit c9a86494090eb1ce8fa70c819d7d85643cc036a0
	* lang/cpp/src/Makefile.am: Add new files.
	* lang/cpp/src/interfaces/statusconsumer.h,
	lang/cpp/src/statusconsumerassuantransaction.cpp,
	lang/cpp/src/statusconsumerassuantransaction.h: New.
	* NEWS: Mention new API.

	cpp, qt: Add missing comparison operators for version info comparison.
	+ commit 4886d6e43b85b96683fa1cf443ffb8be203dc6e0
	* lang/cpp/src/engineinfo.h (EngineInfo::Version::operator<=,
	EngineInfo::Version::operator>=, EngineInfo::Version::operator!=):
	New.
	* lang/qt/tests/t-various.cpp (TestVarious::testVersion): Add tests for
	new comparison operators.
	* NEWS: Mention added API

	cpp, qt: Fix version info comparison.
	+ commit e6fbef3e41a6f831827f5ad5cf5b20eb05716ae1
	* lang/cpp/src/engineinfo.h
	(EngineInfo::Version::operator>(const Version &)): Fix logic.
	(EngineInfo::Version::operator>(const char *)): Use Version-overload of
	operator>.

	* lang/qt/tests/t-various.cpp: Add test.

2020-09-08  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Update key with --with-secret instead of updating it twice.
	+ commit 218ee792701000f54257f8c9aad293db22922ac4
	* lang/cpp/src/key.cpp (Key::update): Call Context::key() only once
	with KeyListMode::WithSecret.

2020-09-07  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add keylist mode WithSecret.
	+ commit 37e19790efc8abe0fd7cf4ae95a3637ca0327b32
	* lang/cpp/src/global.h (WithSecret): New.
	* lang/cpp/src/context.cpp (operator<<): Handle WithSecret.
	* lang/cpp/src/util.h (add_to_gpgme_keylist_mode_t,
	convert_from_gpgme_keylist_mode_t): Ditto.

	cpp: Add missing keylist modes.
	+ commit c72ad524409c5aac3c4e980cac304743f5cf3074
	* lang/cpp/src/util.h
	(add_to_gpgme_keylist_mode_t): Sort modes as in enum definition and
	add missing modes to check.
	(convert_from_gpgme_keylist_mode_t): Add missing handling of
	GPGME_KEYLIST_MODE_WITH_TOFU and GPGME_KEYLIST_MODE_WITH_KEYGRIP.

2020-09-03  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Copy some more subkey properties when merging keys.
	+ commit b7a41505d7590e7a2b72d0a42d2068c40531ada1
	* lang/cpp/src/key.cpp (Key::mergeWith): Also merge secret flag and
	keygrip

2020-08-10  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Make private helper a file static.
	+ commit c1f8d801c5c4c99827fecb040cf75553f4bf9166
	* lang/cpp/src/context.h, lang/cpp/src/context.cpp
	(Context::getLFSeparatedListOfFingerprintsFromSubkeys): Remove
	from Context; make it a static function instead

2020-08-06  Andre Heinecke  <aheinecke@gnupg.org>

	cpp: Use cstdlib getenv for portability.
	+ commit 452abd91e79a46815189fc0a6554d44ec31c3790
	* lang/cpp/src/editinteractor.cpp (EditInteractor::Private::Private):
	Use std::getenv.

2020-08-04  Ingo Klöcker  <dev@ingo-kloecker.de>

	cpp: Add support for gpgme_op_setexpire.
	+ commit 6628c43dd569b8a1f596340492c5c8b1ce7ab88d
	* lang/cpp/src/context.cpp
	(Context::setExpire, Context::startSetExpire): New.
	(Context::getLFSeparatedListOfFingerprintsFromSubkeys):
	New helper.
	* lang/cpp/src/context.h
	(Context::SetExpireFlags): New enum.
	(Context::setExpire, Context::startSetExpire): Add
	prototypes.
	(Context::getLFSeparatedListOfFingerprintsFromSubkeys):
	Add as private helper.

	cpp: Add ostream operator for subkey.
	+ commit 6f0ba236ff50e99a62d85e57ad769aaed5361491
	* lang/cpp/src/key.cpp (Subkey): Add ostream operator.
	* lang/cpp/src/key.h: Update accordingly.

2020-07-16  Andre Heinecke  <aheinecke@gnupg.org>

	qt, cpp: Support export modes.
	+ commit 905246ac2d2329a9c5b967b9d702b4ca8cceeac6
	* lang/cpp/context.cpp, lang/cpp/context.h
	(Context::startPublicKeyExport, Context::exportPublicKeys): Extend
	with flags paramenter.
	(Context::ExportMode): New.
	* lang/qt/src/exportjob.h (ExportJob::setExportMode): New.
	* lang/qt/src/qgpgmeexportjob.cpp, lang/qt/src/qgpgmeexportjob.h:
	Update accordingly.

2020-07-15  Werner Koch  <wk@gnupg.org>

	core: New keylist mode GPGME_KEYLIST_MODE_WITH_KEYGRIP.
	+ commit d4116287dee5450af3a904fc6513153ac294c239
	* src/gpgme.h.in (GPGME_KEYLIST_MODE_WITH_KEYGRIP): New.
	* src/gpgme-json.c (op_keylist): New flag "keygrip".
	* src/engine-gpg.c (gpg_keylist_build_options): Pass the options.

	* lang/cpp/src/global.h (WithKeygrip): New.
	* lang/cpp/src/context.cpp: Add check.
	* lang/cpp/src/key.cpp (Key::update): Handle WithKeygrip.
	* lang/cpp/src/verificationresult.cpp: Ditto.
	* lang/cpp/src/util.h (add_to_gpgme_keylist_mode_t): Ditto.

2019-12-13  Andre Heinecke  <aheinecke@gnupg.org>

	cpp, qt: Use uidhash to select uids for signing.
	+ commit 34b67e1d444bc31c87345072703145319f3b579d
	* lang/cpp/src/gpgsignkeyeditinteractor.cpp (action):
	Use uidhash instead of number.
	(GpgSignKeyEditInteractor::setKey): New.
	* lang/cpp/src/gpgsignkeyeditinteractor.h: Update accordingly.
	* lang/cpp/src/key.h, lang/cpp/src/key.cpp: Wrap uidhash.
	* lang/qt/src/qgpgmesignkeyjob.cpp: Set the key.

2019-11-04  Andre Heinecke  <aheinecke@gnupg.org>

	cpp: Add API to obtain mutliple remarks.
	+ commit 81fe3f98dbe0ea648a2b241bd07572c2c4e21a54
	* lang/cpp/src/key.cpp, lang/cpp/src/key.h (UserID::remarks): New.
	* NEWS: Mention this.

	cpp: Fix dupe_ok state for single uid.
	+ commit 8c4cc1e3be0fbb6f687504075d7a0b5f4ab3e1d0
	* lang/cpp/src/gpgsignkeyeditinteractor.cpp (makeTable):
	Add transition from command to dupe_ok

2019-11-01  Andre Heinecke  <aheinecke@gnupg.org>

	cpp: Minor optimization in remark lookup.
	+ commit 4a7a9c84e898a0acc03ee83c459147bdd80f83a2
	* lang/cpp/src/key.cpp (UserID::remark): Use C-API.

	cpp: Fix adding duplicated sigs on multiple uids.
	+ commit cd070af6615faff9d4a5a9202a32ddc77823a75a
	* lang/cpp/src/gpgsignkeyeditinteractor.cpp: Add another
	state DUPE_OK2 to allow gpg looping over all uids.

	cpp: Add env var to control editinteractor debug.
	+ commit 22bf258b8d3bfff88bee68781f6586e278d7f7de
	* lang/cpp/src/editinteractor.cpp (EditInteractor::Private::Private):
	Read "GPGMEPP_INTERACTOR_DEBUG" env var.
	(EditInteractor::Private::~Private): Close debug file.

2019-10-29  Andre Heinecke  <aheinecke@gnupg.org>

	cpp: Add support for multiple keysigs in edit.
	+ commit d4ff3a7fe37a11788f2757df76c5d144b1ff5992
	* lang/cpp/src/gpgsignkeyeditinteractor.cpp
	(GpgSignKeyEditInteractor::setDupeOk): New.
	(makeTable): Add new tansitions.
	(SignKeyState): Add DUPE_OK Status.
	(GpgSignKeyEditInteractor::action): Handle DUPE_OK.
	(GpgSignKeyEditInteractor::Private::Private): Carry flag.

	cpp: Add convenience API to obtain remarks.
	+ commit f778f86e9a63da9e2e7b3c4f60fdcaa8eb89cf94
	* lang/cpp/src/key.h, lang/cpp/src/key.cpp (UserID::remark): New.

2019-05-03  Andre Heinecke  <aheinecke@gnupg.org>

	cpp: Fix initialization warning.
	+ commit b9dde4d2bc7c51d348df318ddfe969a7da03177c
	* lanc/cpp/src/gpggencardkeyinteractor.cpp
	(GpgGenCardKeyInteractor::Private): Fix initialization warning.

2019-04-24  Andre Heinecke  <aheinecke@gnupg.org>

	cpp: Add wrapper for gpgme_set_global_flag.
	+ commit b034016fb3b0607a17d70bd49798bd003a1bc73f
	* lang/cpp/src/context.cpp (setGlobalFlag): New.
	* lang/cpp/src/global.h (setGlobalFlag): Export it.

2019-03-26  Andre Heinecke  <aheinecke@gnupg.org>

	cpp: Fix GenCardKeyInteractor and extend it.
	+ commit 40c0921959190f9b25953dfb6f6bbfc1c279d66c
	* NEWS: Mention interface change.
	* lang/cpp/src/gpggencardkeyinteractor.cpp
	(GpgGenCardKeyInteractor::setAlgo): New.
	(GpgGenCardKeyInteractor::action),
	(GpgGenCardKeyInteractor::nextState: Handle new interface.

2019-03-13  Andre Heinecke  <aheinecke@gnupg.org>

	cpp: Fix Error::hasSystemError.
	+ commit 805c463aafb968af83fd23c838496fcb30669ee3
	* lang/cpp/src/context.cpp (Error::hasSystemError): Invert logic to
	do what it says.

2019-02-21  Andre Heinecke  <aheinecke@gnupg.org>

	cpp: Add ostream operators for import result.
	+ commit ffc336fe23baa53e241853722b337f69dba2aa0c
	* lang/cpp/src/importresult.cpp: Add ostream operators.
	* lang/cpp/src/importresult.h: Update accordingly.

	cpp: Make GpgME::Data::toKeys really const.
	+ commit 7557cac7c3afed1444ea3c2bce13f695a4c2002b
	* lang/cpp/src/data.cpp (GpgME::Data::toKeys): Rewind afterards.

2019-01-16  NIIBE Yutaka  <gniibe@fsij.org>

	build: With LD_LIBRARY_PATH defined, use --disable-new-dtags.
	+ commit 8880b461a48ae797f915144bb01329214ab0b157
	* configure.ac (LDADD_FOR_TESTS_KLUDGE): New for --disable-new-dtags.
	* tests/Makefile.am (LDADD): Use LDADD_FOR_TESTS_KLUDGE.
	* lang/cpp/tests/Makefile.am, lang/qt/tests/Makefile.am: Likewise.
	* tests/gpg/Makefile.am, tests/gpgsm/Makefile.am: Likewise.
	* tests/json/Makefile.am, tests/opassuan/Makefile.am: Likewise.

2018-12-03  Andre Heinecke  <aheinecke@intevation.de>

	qt,cpp: Consistently use nullptr and override.
	+ commit 440f1c95387e79ecfd6befc5715f0563b8c6d2e4
	* lang/cpp/src/Makefile.am, lang/qt/src/Makefile.am (AM_CPPFLAGS):
	Add suggest-override and zero-as-null-pointer-constant warnings.

	* lang/cpp/src/*, lang/qt/src/*: Consistenly use nullptr and override.

2018-11-08  Daniel Kahn Gillmor  <dkg@fifthhorseman.net>

	spelling: fix misspellings.
	+ commit 652b8f3645448764ef5f24a9076f80fda86e355e


2018-10-29  Andre Heinecke  <aheinecke@intevation.de>

	cpp,tests: Add another test runner.
	+ commit 5b53d7ea454414be010b6a218777e5ce90cd32eb
	* lang/cpp/tests/run-verify.cpp: New.
	* lang/cpp/tests/Makefile.am: Update accordingly.

2018-10-25  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add some convenience functions.
	+ commit 111e24f72173eacf8e9e0bcc4914d4163c6e95de
	* lang/cpp/src/context.cpp (Context::create): New.
	* lang/cpp/src/context.h: Update accordingly.
	* lang/cpp/src/key.cpp, lang/cpp/src/key.h:
	(Key::isBad, Subkey::isBad, UserID::isBad)
	(UserID::Signature::isBad): Add shorthand for the isX checks.
	* NEWS: Mention it.

2018-10-09  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add KeyListMode::Locate.
	+ commit 660c162e1439e8dc380ca4e07a390d17df292a8f
	* cpp/src/global.h (KeyListMode): Add Locate.

	cpp: Add first manual tests.
	+ commit 1ce99dedbbd18b4b699b05205961bd1762233871
	* lang/cpp/Makefile.am: Add tests subdir.
	* lang/cpp/tests/Makefile.am: New.
	* lang/cpp/tests/README,
	lang/cpp/tests/run-getkey.cpp,
	lang/cpp/tests/run-keylist.cpp: New.
	* configure.ac: Configure tests makefile.

	cpp: Initialize all gpgme_key_t's in context.
	+ commit bd3aa0c523530079292b019eab5552c1fed45b7d
	* lang/cpp/src/context.cpp (Context::startKeyListing),
	(Context::keyListResult, Context::signingKeys): Initialize key.

2018-08-08  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Fix use after free in gencardkeyinteractor.
	+ commit a20146167cb3ef334949f1a3aab6a60703b5a198
	* lang/cpp/src/gpggencardkeyinteractor.cpp
	(GpgGenCardKeyInteractor::Private::keysize): Change to string.

2018-07-24  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add safety checks for key update.
	+ commit bd230dd285897a0b4b2c7f330ba0122749805c67
	* lang/cpp/src/key.cpp (Key::update): Check that the key is
	not NULL.
	* lang/cpp/src/verificationresult.cpp (GpgME::Signature::key):
	Check for fingerprint.

2018-07-19  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Print origin and last update for key/uid.
	+ commit 17b24412dcc63226dab79d8e79712d8fea0272fb
	* lang/cpp/src/key.cpp: Print origin and last update in
	iostream operators.

2018-07-05  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add enum mapping for GPGME_AUDIT_LOG_DIAG.
	+ commit 10e03d61d081c936650cdc50613a5120fec2db89
	* src/context.cpp (to_auditlog_flags): Map DIAG value.
	* src/context.h (AuditLogFlags): Add it.

2018-07-04  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Fix memory of DecryptionResult::symkeyAlgo.
	+ commit c03e81de39c3afde1372e2f5b4dc0c09a6def3eb
	* lang/cpp/src/decryptionresult.cpp (Private, ~Private): strdup
	the symkey algo.

2018-06-08  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add proper gpgme_op_createkey.
	+ commit d0c6d2d067856e33ca840249fcd2d15c8dff46eb
	* lang/cpp/src/context.cpp, lang/cpp/src/context.h
	(Context::createKeyEx): New.

2018-06-01  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add gpgme_(get)set_ctx_flag.
	+ commit 4ba2ef72c83bf9b869f56eef172a6ba4048d7640
	* NEWS: Mention API extensions.
	* lang/cpp/src/context.cpp, lang/cpp/src/context.h
	(Context::setFlag, Context::getFlag): New.

	cpp: Add legacy_cipher_nomdc.
	+ commit c2a41fc3ec6089c17dc42fb7c77fe70791d83543
	* lang/cpp/src/decryptionresult.cpp, lang/cpp/src/decryptionresult.h
	(DecryptionResult::isLegacyCipherNoMDC): New.

2018-05-29  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add gpgme_data_rewind to cpp API.
	+ commit e693c1c0a8607e63034f93e7ffc910d188e77398
	* lang/cpp/src/data.h, lang/cpp/src/data.cpp (Data::rewind): New.
	* lang/qt/tests/t-various.cpp (testDataRewind): Test it.

2018-05-22  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Expose sessionKey and symkeyAlgo.
	+ commit 7e23fc54462460d5f1383a7b6354dc7c5926d878
	* lang/cpp/decryptionresult.cpp, lang/cpp/decryptionresult.h
	(DecryptionResult::symkeyAlgo, DecryptionResult::sessionKey): New.

2018-04-19  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add origin and last_update to UserID.
	+ commit 36183907231d3644d54251f288f16031e8422e6b
	* NEWS: Mention it.
	* lang/cpp/src/key.cpp, lang/cpp/src/key.h (UserID::lastUpdate),
	(UserID::origin): New.
	(gpgme_origin_to_pp_origin): New helper.

	cpp: Add origin and last_update.
	+ commit 5e15401ecb18083270003e447cd42195407b2ac4
	* NEWS: mention interface change.
	* lang/cpp/src/key.cpp (Key::origin, Key::lastUpdate): New.
	* lang/cpp/src/key.h (Key::Origin): New enum.

2018-03-15  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Expose skipped_v3_keys.
	+ commit 5c9596f97f3e9a475bf920d201736b00cd3a4adb
	* lang/cpp/src/importresult.cpp,
	 lang/cpp/src/importresult.h (ImportResult::numV3KeysSkipped): New.

2018-02-16  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add shorthand for key locate.
	+ commit fc72cb19de0980a5b545a714e2d7310e05b8d5c3
	* lang/cpp/src/key.cpp (Key::locate): New static helper.
	* lang/cpp/src/key.h: Update accordingly.

2018-02-09  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add SpawnShowWindow flag.
	+ commit 8608fe9552311878c8ac75d78bc028ece60b6838
	* lang/cpp/src/context.h (SpawnShowWindow): New.

	cpp: Add conveniance Data::toString.
	+ commit e62bfbd44b1333d4f0fdc38993238f348641c699
	* lang/cpp/src/data.h, lang/cpp/src/data.cpp: Add Data::toString.

2017-12-07  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Fix handling of lsig promotion.
	+ commit f9d352f4610de86d7543a24a3356e7943cc7a6ad
	* src/gpgsignkeyeditinteractor.cpp (SignKeyState): Add second
	CONFIRM state.
	(makeTable): Properly handle local_promote_okay.
	(action): Handle CONFIRM2.

2017-12-01  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Wrap create_key and create_subkey.
	+ commit 8bdd912b74e26eeabd617f96c0bedbb99b6078b1
	* lang/cpp/src/context.cpp,
	lang/cpp/src/context.h (Context::startCreateKey)
	(Context::createKey, Context::createSubkey)
	(Context::startCreateSubkey): New.

2017-09-04  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Fix version info comparison.
	+ commit f1d22a9d9594b60ef77e0862d100286acd0508a9
	* lang/cpp/src/engineinfo.h (EngineInfo::Version::operator<):
	Fix logic.
	* lang/cpp/src/engineinfo.h (EngineInfo::Version::operator>):
	New.
	* NEWS: Mention added API

2017-07-26  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Fix Key::isDeVs for subkeys.
	+ commit 270a8dc4e8d3fe9099d0ca36509d0396c2108afd
	* lang/cpp/src/key.cpp (Key::isDeVs): Check all subkeys.

2017-07-10  Andre Heinecke  <aheinecke@intevation.de>

	Add isDeVs to ostream operator.
	+ commit 7e99bec2765fe9c418dec1060259ce30925e6a93
	* lang/cpp/src/decryptionresult.cpp,
	lang/cpp/src/verificationresult.cpp: Extend ostream operator
	to include isDeVs.

2017-06-12  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Fix CMake config library name for GPGME.
	+ commit 23cde2e8227a456ae8c97840e8b638f91d17ed2d
	* lang/cpp/src/GpgmeppConfig.cmake.in.in: The link library
	is of course also dynamic.

2017-06-01  Justus Winter  <justus@g10code.com>

	Add flag 'is_de_vs' to decryption results and signatures.
	+ commit 07c5a203d11503bd26b40c4b0d297b7165e60a25
	* NEWS: Update.
	* lang/cpp/src/decryptionresult.cpp (DecryptionResult::isDeVs): New
	function.
	* lang/cpp/src/decryptionresult.h (DecryptionResult::isDeVs): New
	prototype.
	* lang/cpp/src/verificationresult.cpp (Signature::isDeVs): New
	function.
	* lang/cpp/src/verificationresult.h (Signature::isDeVs): New
	prototype.
	* lang/python/src/results.py (DecryptResult): Turn field 'is_de_vs'
	into a boolean.
	(Signature): Likewise.
	* src/decrypt.c (_gpgme_decrypt_status_handler): Handle the new
	compliance status line.
	* src/verify.c (_gpgme_verify_status_handler): Likewise.
	* src/gpgme.h.in (gpgme_status_code_t): Add new status codes for the
	new status lines.
	* src/keylist.c (parse_pub_field18): Move function to 'util.h'.
	(keylist_colon_handler): Adapt callsites.
	* src/status-table.c (status_table): Add new status lines.
	* src/util.h (PARSE_COMPLIANCE_FLAGS): New macro.  This used to be
	'parse_pub_field18', but turned into a macro to make it polymorphic.

2017-04-25  Andre Heinecke  <aheinecke@intevation.de>

	qt, cpp: Add additional copyright BSI notes.
	+ commit 16c1f8b135027dfc77f95a209e6cbd9cc2ec2c31
	* lang/cpp/Makefile.am,
	lang/cpp/src/Makefile.am,
	lang/cpp/src/callbacks.cpp,
	lang/cpp/src/callbacks.h,
	lang/cpp/src/configuration.cpp,
	lang/cpp/src/configuration.h,
	lang/cpp/src/context_glib.cpp,
	lang/cpp/src/context_p.h,
	lang/cpp/src/context_qt.cpp,
	lang/cpp/src/context_vanilla.cpp,
	lang/cpp/src/data_p.h,
	lang/cpp/src/decryptionresult.cpp,
	lang/cpp/src/decryptionresult.h,
	lang/cpp/src/defaultassuantransaction.cpp,
	lang/cpp/src/defaultassuantransaction.h,
	lang/cpp/src/editinteractor.cpp,
	lang/cpp/src/editinteractor.h,
	lang/cpp/src/encryptionresult.cpp,
	lang/cpp/src/encryptionresult.h,
	lang/cpp/src/engineinfo.cpp,
	lang/cpp/src/engineinfo.h,
	lang/cpp/src/error.h,
	lang/cpp/src/eventloopinteractor.cpp,
	lang/cpp/src/eventloopinteractor.h,
	lang/cpp/src/exception.cpp,
	lang/cpp/src/exception.h,
	lang/cpp/src/global.h,
	lang/cpp/src/gpgadduserideditinteractor.cpp,
	lang/cpp/src/gpgadduserideditinteractor.h,
	lang/cpp/src/gpgagentgetinfoassuantransaction.cpp,
	lang/cpp/src/gpgagentgetinfoassuantransaction.h,
	lang/cpp/src/gpgmefw.h,
	lang/cpp/src/gpgsetexpirytimeeditinteractor.cpp,
	lang/cpp/src/gpgsetexpirytimeeditinteractor.h,
	lang/cpp/src/gpgsetownertrusteditinteractor.cpp,
	lang/cpp/src/gpgsetownertrusteditinteractor.h,
	lang/cpp/src/gpgsignkeyeditinteractor.cpp,
	lang/cpp/src/gpgsignkeyeditinteractor.h,
	lang/cpp/src/importresult.cpp,
	lang/cpp/src/importresult.h,
	lang/cpp/src/interfaces/assuantransaction.h,
	lang/cpp/src/interfaces/dataprovider.h,
	lang/cpp/src/interfaces/passphraseprovider.h,
	lang/cpp/src/interfaces/progressprovider.h,
	lang/cpp/src/keygenerationresult.cpp,
	lang/cpp/src/keygenerationresult.h,
	lang/cpp/src/keylistresult.cpp,
	lang/cpp/src/keylistresult.h,
	lang/cpp/src/notation.h,
	lang/cpp/src/result.h,
	lang/cpp/src/result_p.h,
	lang/cpp/src/scdgetinfoassuantransaction.cpp,
	lang/cpp/src/scdgetinfoassuantransaction.h,
	lang/cpp/src/signingresult.cpp,
	lang/cpp/src/signingresult.h,
	lang/cpp/src/trustitem.cpp,
	lang/cpp/src/trustitem.h,
	lang/cpp/src/util.h,
	lang/cpp/src/verificationresult.cpp,
	lang/cpp/src/verificationresult.h,
	lang/cpp/src/vfsmountresult.cpp,
	lang/qt/Makefile.am,
	lang/qt/doc/Makefile.am,
	lang/qt/src/Makefile.am,
	lang/qt/src/defaultkeygenerationjob.h,
	lang/qt/tests/Makefile.am: Add missing copyright.

	Change copyright from Intevation to BSI.
	+ commit 23aa55cf38514cdb22403bb24279501bc3a7e7e7
	* lang/cpp/src/gpggencardkeyinteractor.cpp,
	lang/cpp/src/gpggencardkeyinteractor.h,
	lang/cpp/src/gpgmepp_export.h,
	lang/cpp/src/swdbresult.cpp,
	lang/cpp/src/swdbresult.h,
	lang/cpp/src/tofuinfo.cpp,
	lang/cpp/src/tofuinfo.h,
	lang/qt/src/abstractimportjob.h,
	lang/qt/src/adduseridjob.h,
	lang/qt/src/changeexpiryjob.h,
	lang/qt/src/changeownertrustjob.h,
	lang/qt/src/changepasswdjob.h,
	lang/qt/src/cryptoconfig.cpp,
	lang/qt/src/cryptoconfig.h,
	lang/qt/src/dataprovider.cpp,
	lang/qt/src/dataprovider.h,
	lang/qt/src/decryptjob.h,
	lang/qt/src/decryptverifyjob.h,
	lang/qt/src/deletejob.h,
	lang/qt/src/dn.cpp,
	lang/qt/src/dn.h,
	lang/qt/src/downloadjob.h,
	lang/qt/src/encryptjob.h,
	lang/qt/src/exportjob.h,
	lang/qt/src/hierarchicalkeylistjob.h,
	lang/qt/src/importfromkeyserverjob.h,
	lang/qt/src/importjob.h,
	lang/qt/src/job.cpp,
	lang/qt/src/job.h,
	lang/qt/src/keyformailboxjob.h,
	lang/qt/src/keygenerationjob.h,
	lang/qt/src/keylistjob.h,
	lang/qt/src/listallkeysjob.h,
	lang/qt/src/multideletejob.h,
	lang/qt/src/protocol.h,
	lang/qt/src/protocol_p.h,
	lang/qt/src/qgpgme_export.h,
	lang/qt/src/qgpgmeadduseridjob.cpp,
	lang/qt/src/qgpgmeadduseridjob.h,
	lang/qt/src/qgpgmebackend.cpp,
	lang/qt/src/qgpgmebackend.h,
	lang/qt/src/qgpgmechangeexpiryjob.cpp,
	lang/qt/src/qgpgmechangeexpiryjob.h,
	lang/qt/src/qgpgmechangeownertrustjob.cpp,
	lang/qt/src/qgpgmechangeownertrustjob.h,
	lang/qt/src/qgpgmechangepasswdjob.cpp,
	lang/qt/src/qgpgmechangepasswdjob.h,
	lang/qt/src/qgpgmedecryptjob.cpp,
	lang/qt/src/qgpgmedecryptjob.h,
	lang/qt/src/qgpgmedecryptverifyjob.cpp,
	lang/qt/src/qgpgmedecryptverifyjob.h,
	lang/qt/src/qgpgmedeletejob.cpp,
	lang/qt/src/qgpgmedeletejob.h,
	lang/qt/src/qgpgmedownloadjob.cpp,
	lang/qt/src/qgpgmedownloadjob.h,
	lang/qt/src/qgpgmeencryptjob.cpp,
	lang/qt/src/qgpgmeencryptjob.h,
	lang/qt/src/qgpgmeexportjob.cpp,
	lang/qt/src/qgpgmeexportjob.h,
	lang/qt/src/qgpgmeimportfromkeyserverjob.cpp,
	lang/qt/src/qgpgmeimportfromkeyserverjob.h,
	lang/qt/src/qgpgmeimportjob.cpp,
	lang/qt/src/qgpgmeimportjob.h,
	lang/qt/src/qgpgmekeyformailboxjob.cpp,
	lang/qt/src/qgpgmekeyformailboxjob.h,
	lang/qt/src/qgpgmekeygenerationjob.cpp,
	lang/qt/src/qgpgmekeygenerationjob.h,
	lang/qt/src/qgpgmekeylistjob.cpp,
	lang/qt/src/qgpgmekeylistjob.h,
	lang/qt/src/qgpgmelistallkeysjob.cpp,
	lang/qt/src/qgpgmelistallkeysjob.h,
	lang/qt/src/qgpgmenewcryptoconfig.cpp,
	lang/qt/src/qgpgmenewcryptoconfig.h,
	lang/qt/src/qgpgmerefreshkeysjob.cpp,
	lang/qt/src/qgpgmerefreshkeysjob.h,
	lang/qt/src/qgpgmesecretkeyexportjob.cpp,
	lang/qt/src/qgpgmesecretkeyexportjob.h,
	lang/qt/src/qgpgmesignencryptjob.cpp,
	lang/qt/src/qgpgmesignencryptjob.h,
	lang/qt/src/qgpgmesignjob.cpp,
	lang/qt/src/qgpgmesignjob.h,
	lang/qt/src/qgpgmesignkeyjob.cpp,
	lang/qt/src/qgpgmesignkeyjob.h,
	lang/qt/src/qgpgmetofupolicyjob.cpp,
	lang/qt/src/qgpgmetofupolicyjob.h,
	lang/qt/src/qgpgmeverifydetachedjob.cpp,
	lang/qt/src/qgpgmeverifydetachedjob.h,
	lang/qt/src/qgpgmeverifyopaquejob.cpp,
	lang/qt/src/qgpgmeverifyopaquejob.h,
	lang/qt/src/qgpgmewkspublishjob.cpp,
	lang/qt/src/qgpgmewkspublishjob.h,
	lang/qt/src/refreshkeysjob.h,
	lang/qt/src/signencryptjob.h,
	lang/qt/src/signjob.h,
	lang/qt/src/signkeyjob.h,
	lang/qt/src/specialjob.h,
	lang/qt/src/threadedjobmixin.cpp,
	lang/qt/src/threadedjobmixin.h,
	lang/qt/src/tofupolicyjob.h,
	lang/qt/src/verifydetachedjob.h,
	lang/qt/src/verifyopaquejob.h,
	lang/qt/src/wkspublishjob.h,
	lang/qt/tests/run-keyformailboxjob.cpp,
	lang/qt/tests/t-config.cpp,
	lang/qt/tests/t-encrypt.cpp,
	lang/qt/tests/t-keylist.cpp,
	lang/qt/tests/t-keylocate.cpp,
	lang/qt/tests/t-ownertrust.cpp,
	lang/qt/tests/t-support.cpp,
	lang/qt/tests/t-support.h,
	lang/qt/tests/t-tofuinfo.cpp,
	lang/qt/tests/t-various.cpp,
	lang/qt/tests/t-verify.cpp,
	lang/qt/tests/t-wkspublish.cpp,
	tests/gpg/t-encrypt-mixed.c,
	tests/gpg/t-thread-keylist-verify.c,
	tests/gpg/t-thread-keylist.c,
	tests/run-decrypt.c: Change Intevation GmbH copyright to BSI.

2017-03-24  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Respect decrypt flags in new functions.
	+ commit b77b42091525d05c8d1a006a1bb9182c09f44aa7
	* lang/cpp/src/context.cpp: Respect directly provided flags
	in the new decrypt functions.

	cpp: Use gpgme_op_decrypt_ex and add new flags.
	+ commit 4f750fba7c3d2f2df6ef20f013a1097efdd9b894
	* lang/cpp/src/context.cpp: New decrypt and decryptVerify functions
	that take flags as arguments. Use new variants in old functions.
	(Context::setDecryptionFlags): New helper.
	(Context::Private::Private): Initialize new member.
	* lang/cpp/src/context_p.h (Context::Private::decryptFlags): New.
	* lang/cpp/src/context.h (Context::DecryptFlags): New enum.
	(Context::EncryptionFlags): Extend for EncryptWrap.

2017-03-22  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Wrap keylist_from_data.
	+ commit 7edd7d4b9167cc9ffa4d0842903b7a6ac477fe44
	* lang/cpp/data.h, lang/cpp/data.cpp (GpgME::Data::toKeys): New.

2017-03-20  Werner Koch  <wk@gnupg.org>

	core,cpp: New key flag 'is_de_vs'.
	+ commit f3e6b082cd21f03634632ddfb530bb631eb38919
	* src/gpgme.h.in (_gpgme_subkey): New flag is_de_vs.
	* tests/run-keylist.c (main): Print that flag.
	* src/keylist.c (parse_pub_field18): New.
	(keylist_colon_handler): Parse compliance flags.
	* lang/cpp/src/key.cpp (Key::isDeVs): New.
	(Subkey::isDeVs): New.

	* lang/cpp/src/key.h (class Key): New method isDeVs.
	(class Subkey): New method isDeVs.

2017-03-02  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add subkey keygrip to API.
	+ commit 96bdfef6487b8e727b8a21d2bdf7f3bfad1982df
	* lang/cpp/src/key.cpp (Subkey::keyGrip): New.
	* lang/cpp/src/key.h: Update accordingly.

2017-03-01  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add interactor to generate keys on smartcard.
	+ commit 94c668084c441a106ef037f8fd47474554444eb7
	* lang/cpp/src/editinteractor.cpp (EditInteractor::needsNoResponse):
	Handle new states.
	* lang/cpp/src/gpggencardkeyinteractor.cpp,
	lang/cpp/src/gpggencardkeyinteractor.h: New.
	* lang/cpp/src/Makefile.am: Update accordingly.

2017-01-11  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add revuid and adduid support.
	+ commit 6f466c9bbe62c191b730590fab71ec3b5d5d9fc3
	* lang/cpp/src/context.cpp
	(Context::revUid, Context::startRevUid),
	(Context::addUid, Context::startAddUid): New.
	* lang/cpp/src/context.h: Declare new functions.
	* lang/cpp/src/key.cpp (Key::UserID::revoke)
	(Key::addUid): Idomatic helpers.
	lang/cpp/src/key.h: Declare new functions.
	* NEWS: Update accordingly.

	Fix cmake configuration files for MacOS.
	+ commit 232fa28e6513f369cf6d5657b0a3199c4c178a09
	* configure.ac: Set HAVE_MACOS_SYSTEM conditional.
	* lang/qt/src/Makefile.am,
	lang/cpp/src/Makefile.am,
	lang/qt/src/QGpgmeConfig.cmake.in.in,
	lang/cpp/src/GpgmeConfig.cmake.in.in: Use libsuffix again to
	distinguish between macos .dylib

2016-12-16  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Ensure that hasSecret is correct after update.
	+ commit 14f877cf66d4e1f171280dd7ab4ff54a7f5892fa
	* lang/cpp/src/key.cpp (Key::update): Check for
	a secret key first before listing public keys.

2016-12-15  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Fix addrSpec for keys without email.
	+ commit be9afa267f25587d61de428a7097b48d1ef518d6
	* lang/cpp/src/key.cpp (UserID::addrSpec): Use uid->address instead
	of normalizing again.
	(&operator<<(std::ostream &, const UserID &): Print it.

	cpp: Fix update of partial key in verifyresult.
	+ commit 27143a5c7085090a74d005388498ad122f1661cc
	* lang/cpp/src/verificationresult.cpp
	(Signature::key(bool,bool)): Don't update the returned copy
	but the actual key of the signature.

2016-11-17  Heiko Becker  <heirecka@exherbo.org>

	Remove a forgotten instance of @libsuffix@
	+ commit 2ab9d752ace1a87dee1c23ad3fefbb089e79c940
	* lang/cpp/src/GpgmeppConfig.cmake.in.in: Remove a forgotten
	instance of @libsuffix@.

2016-11-15  Andre Heinecke  <aheinecke@intevation.de>

	qt, cpp: Add cmake config files for w32.
	+ commit 000376ef9377fa45eef52bc50efd68babbf8680f
	* lang/cpp/src/GpgmeppConfig-w32.cmake.in.in
	lang/qt/src/QGpgmeConfig-w32.cmake.in.in: New.
	* lang/cpp/src/GpgmeppConfig.cmake.in.in,
	lang/qt/src/QGpgmeConfig.cmake.in.in: Remove libsuffix handling.
	* lang/cpp/src/Makefile.am,
	lang/qt/src/Makefile.am: Create / install w32 config files.
	* configure.ac: Configure them.

2016-11-14  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add get / set Sender API.
	+ commit 93590ea8d75aa7e3811cb0ddf4b3d088122e20fa
	* cpp/src/context.cpp, cpp/src/context.h (Context::setSender),
	(Context::getSender): Add simple wrappers.

	qt, cpp: Enable dll build for windows.
	+ commit 099fdfa6878cc4d6c07438120e95966233a516d5
	* lang/cpp/src/Makefile.am,
	lang/qt/src/Makefile.am: Add -no-undefined to LDFLAGS.

2016-11-04  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add API for swdb queries.
	+ commit 70d3bcbeef47f1a13d81d2300c05e1f227b01a0f
	* lang/cpp/src/swdbresult.cpp,
	 lang/cpp/src/swdbresult.h (SwdbResult): New.
	* lang/cpp/src/Makefile.am: Update accordingly.

	cpp: Add more EngineInfo::Version ctors.
	+ commit 8fe50c85aad498bbc692a5faea637fe6de06183a
	* lang/cpp/src/engineinfo.h
	(EngineInfo::Version::Version(const char*)),
	(EngineInfo::Version::Version()): New.

	cpp: Don't include gpgme.h in tofuinfo header.
	+ commit 4ebab0de56451d8852e2720fcc195062e028d73a
	* lang/cpp/src/tofuinfo.h: Don't include gpgme.h

	cpp: Extend gpgmefw for tofuinfo and swdb query.
	+ commit db8bc660fae50739af6bb559d5450ae69d05adf3
	* lang/cpp/src/gpgmefw.h (gpgme_tofu_info_t)
	(gpgme_query_swdb_result_t): New forwards.

2016-11-02  Andre Heinecke  <aheinecke@intevation.de>

	qt, cpp: Fix versioning in cmake config and header.
	+ commit 6918fbc0f037b37568688768b30de9a060cdcd4c
	* configure.ac (VERSION_MAJOR, VERSION_MINOR, VERSION_MICRO): New
	subst variables for the version header.
	* lang/cpp/src/GpgmeppConfigVersion.cmake.in,
	lang/cpp/src/gpgmepp_version.h.in,
	lang/qt/src/QGpgmeConfigVersion.cmake.in,
	lang/qt/src/qgpgme_version.h.in: Use new variables.

	qt, cpp: Add all generated files to cleanfiles.
	+ commit d175f9d20681d7f99854f029a61c389b881e500f
	* cpp/src/Makefile.am (CLEANFILES),
	qt/src/Makefile.am (CLEANFILES): Add all generated files
	to cleanfiles.

2016-11-01  Andre Heinecke  <aheinecke@intevation.de>

	qt, cpp: Install version headers in subdirs.
	+ commit 2953709e723932a12840769fa7fe128ab44a0851
	* lang/cpp/src/Makefile.am,
	lang/qt/src/Makefile.am: Install version headers in include
	subdirs.

2016-10-14  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Fix init of string from null.
	+ commit 007f5ccac6133abdf33a654fb7041f83135cff0e
	* lang/cpp/src/key.cpp (UserID::addrSpecFromString): Check return
	value before creating the string.

2016-10-13  Andre Heinecke  <aheinecke@intevation.de>

	qt, cpp: Fix permissions of Config files.
	+ commit 8ecfad56d99e69f7d9a99c0311c0cee109e24862
	* lang/cpp/src/Makefile.am,
	lang/qt/src/Makefile.am: Do not install config files as executable.

	qt, cpp: Fix expected targets in Config files.
	+ commit 3d2bfe3fc73dc50e9c4bcdb6a4c41b486fca6dbe
	* lang/cpp/src/GpgmeppConfig.cmake.in.in,
	lang/qt/src/QGpgmeConfig.cmake.in.in: Remove KF5 variants.

2016-10-11  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add API for gpgme_addrspec_from_uid.
	+ commit db27fae86f854d0ba1829c20b7de1a10e15369ea
	* lang/cpp/src/key.cpp (UserID::addrSpecFromString): New static
	function to expose addrspec from uid.
	(UserID::addrSpec): New. Get addrSpec from Userid.
	* NEWS: Update accordingly.

2016-10-10  Andre Heinecke  <aheinecke@intevation.de>

	Add convenience function to get key from sig.
	+ commit 742e7b5368a570f348b157112b69aff9ee025214
	* lang/cpp/src/verificationresult.cpp (Signature::key(bool, bool)):
	New. Can be used to search / update the key associcated with this
	signature.

	cpp: Return null key if the signature had no key.
	+ commit af9c4fbc8179857b034186e9ee16201755066d29
	* lang/cpp/src/verificationresult.cpp (Private): Add null key
	to list when there is no key associated with the signature.

2016-10-06  Justus Winter  <justus@g10code.com>

	Add missing includes.
	+ commit 92dac40b8d63d4b7bbed41a00263e17e3d00cb9b
	* lang/cpp/src/key.cpp: Include <strings.h> for 'strcasecmp'.
	* tests/gpg/t-cancel.c: Include <sys/select.h> for 'fd_set' and
	friends.

2016-10-05  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add support for URL Data encodings.
	+ commit f1ecc0b629174dff3845dd122e78878086d213c2
	* lang/cpp/src/data.h (Data::Encoding): Extend enum.
	* lang/cpp/src/data.cpp (Data::encoding),
	Data::setEncoding): Support new values.

	cpp: Fix gcc diagnostic push / pop.
	+ commit d411b3725a11fd145558f8d2f6ce7c2c5155e6f8
	* lang/cpp/src/context.cpp: Fix pragmas.

2016-09-29  Andre Heinecke  <aheinecke@intevation.de>

	cpp, qt: Handle modified includedir installation.
	+ commit 842e58dc66b79c5f9d598a1881344f903744f8b9
	* lang/cpp/src/Makefile.am,
	lang/qt/src/Makefile.am: Replace resolved_includedir.
	* lang/cpp/src/GpgmeppConfig.cmake.in.in,
	lang/qt/src/QGpgmeConfig.cmake.in.in: Use resolved_includedir
	instead of relying on a common installation prefix.

2016-09-23  Daniel Kahn Gillmor  <dkg@fifthhorseman.net>

	Fix spelling.
	+ commit d29a9ba4ff4acf7bfd4b0057d8ed36421a1e19d9
	 * lang/cpp/src/context.h, lang/qt/src/protocol.h,
	   lang/qt/src/wkspublishjob.h, src/data-identify.c, src/engine-gpg.c:
	   minor spelling cleanup.

2016-09-23  Andre Heinecke  <aheinecke@intevation.de>

	cpp, qt: Include config.h.
	+ commit 780fbbadc92a0ea1e172e587564075c73b6b9771
	lang/cpp/src/callbacks.cpp,
	lang/cpp/src/configuration.cpp,
	lang/cpp/src/context.cpp,
	lang/cpp/src/context_glib.cpp,
	lang/cpp/src/context_qt.cpp,
	lang/cpp/src/context_vanilla.cpp,
	lang/cpp/src/data.cpp,
	lang/cpp/src/decryptionresult.cpp,
	lang/cpp/src/defaultassuantransaction.cpp,
	lang/cpp/src/editinteractor.cpp,
	lang/cpp/src/encryptionresult.cpp,
	lang/cpp/src/engineinfo.cpp,
	lang/cpp/src/eventloopinteractor.cpp,
	lang/cpp/src/exception.cpp,
	lang/cpp/src/gpgadduserideditinteractor.cpp,
	lang/cpp/src/gpgagentgetinfoassuantransaction.cpp,
	lang/cpp/src/gpgsetexpirytimeeditinteractor.cpp,
	lang/cpp/src/gpgsetownertrusteditinteractor.cpp,
	lang/cpp/src/gpgsignkeyeditinteractor.cpp,
	lang/cpp/src/importresult.cpp,
	lang/cpp/src/key.cpp,
	lang/cpp/src/keygenerationresult.cpp,
	lang/cpp/src/keylistresult.cpp,
	lang/cpp/src/scdgetinfoassuantransaction.cpp,
	lang/cpp/src/signingresult.cpp,
	lang/cpp/src/tofuinfo.cpp,
	lang/cpp/src/trustitem.cpp,
	lang/cpp/src/verificationresult.cpp,
	lang/cpp/src/vfsmountresult.cpp,
	lang/qt/src/dataprovider.cpp,
	lang/qt/src/defaultkeygenerationjob.cpp,
	lang/qt/src/gpgme_backend_debug.cpp,
	lang/qt/src/job.cpp,
	lang/qt/src/qgpgmeadduseridjob.cpp,
	lang/qt/src/qgpgmebackend.cpp,
	lang/qt/src/qgpgmechangeexpiryjob.cpp,
	lang/qt/src/qgpgmechangeownertrustjob.cpp,
	lang/qt/src/qgpgmechangepasswdjob.cpp,
	lang/qt/src/qgpgmedecryptjob.cpp,
	lang/qt/src/qgpgmedecryptverifyjob.cpp,
	lang/qt/src/qgpgmedeletejob.cpp,
	lang/qt/src/qgpgmedownloadjob.cpp,
	lang/qt/src/qgpgmeencryptjob.cpp,
	lang/qt/src/qgpgmeexportjob.cpp,
	lang/qt/src/qgpgmeimportfromkeyserverjob.cpp,
	lang/qt/src/qgpgmeimportjob.cpp,
	lang/qt/src/qgpgmekeyformailboxjob.cpp,
	lang/qt/src/qgpgmekeygenerationjob.cpp,
	lang/qt/src/qgpgmekeylistjob.cpp,
	lang/qt/src/qgpgmelistallkeysjob.cpp,
	lang/qt/src/qgpgmenewcryptoconfig.cpp,
	lang/qt/src/qgpgmerefreshkeysjob.cpp,
	lang/qt/src/qgpgmesecretkeyexportjob.cpp,
	lang/qt/src/qgpgmesignencryptjob.cpp,
	lang/qt/src/qgpgmesignjob.cpp,
	lang/qt/src/qgpgmesignkeyjob.cpp,
	lang/qt/src/qgpgmetofupolicyjob.cpp,
	lang/qt/src/qgpgmeverifydetachedjob.cpp,
	lang/qt/src/qgpgmeverifyopaquejob.cpp,
	lang/qt/src/qgpgmewkspublishjob.cpp,
	lang/qt/src/threadedjobmixin.cpp,
	lang/qt/tests/run-keyformailboxjob.cpp,
	lang/qt/tests/t-encrypt.cpp,
	lang/qt/tests/t-keylist.cpp,
	lang/qt/tests/t-keylocate.cpp,
	lang/qt/tests/t-ownertrust.cpp,
	lang/qt/tests/t-support.cpp,
	lang/qt/tests/t-tofuinfo.cpp,
	lang/qt/tests/t-wkspublish.cpp: Include config.h

2016-09-21  Andreas Stieger  <astieger@suse.com>

	cpp: Avoid missing returns in non-void functions.
	+ commit f2babcd71b899200d3ed715fbeb65b52912a6609
	* lang/cpp/src/context.cpp
	  (Context::signaturePolicyURL): return nullptr on default
	  (to_tofu_policy_t): add default case for unknown
	* lang/cpp/src/key.cpp
	  (Key::primaryFingerprint): return nullptr on default
	* lang/cpp/src/tofuinfo.cpp
	  (GpgME::TofuInfo::policy): add default case for unknown

2016-09-19  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Improve README.
	+ commit 48c4045dceb9f90d164d5af3fb21c82a40daa9af
	* lang/cpp/README: Add more content, move license to bottom.

2016-09-16  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add support for gpgme_op_tofu_policy.
	+ commit 956b44b5764102623a1a81117e771258f0340151
	* src/context.cpp, src/context.h (setTofuPolicy, setTofuPolicyStart):
	New.

	cpp: Declare sizes of tofu-info enums.
	+ commit f029812a9b48b3308c60f1749eeb3370188ad7c0
	* lang/cpp/src/tofuinfo.h (Policy, Validity): Declare sizes.

2016-09-16  Werner Koch  <wk@gnupg.org>

	cpp: Silence use of deprecated function warning.
	+ commit 2ab61c95abf8805412a610641176384548133033
	* lang/cpp/src/context.cpp (GpgME): Use pragma to silence wardning.

2016-09-07  Werner Koch  <wk@gnupg.org>

	core,cpp: Extend the TOFU information.
	+ commit a913688272b9bda15eb2bc196e55ccae782bcf36
	* src/gpgme.h.in (struct _gpeme_tofu_info): Rename FIRSTSEEN to
	SIGNFIRST and LASTSEEN to SIGNLAST.  Add ENCRFIST and ENCRLAST.
	* src/keylist.c (parse_tfs_record): Parse to ENCRFIRST and ENCRLAST.
	* src/verify.c (parse_tofu_stats): Ditto.
	* tests/run-keylist.c (main): Adjust and print encrypt stats.
	* tests/run-verify.c (print_result): Ditto.

	* lang/cpp/src/tofuinfo.h (TofuInfo): Rename firstSeen to signFirst
	and lastSeen to signLast.  Add encrCount, encrFirst and encrLast.
	* lang/cpp/src/tofuinfo.cpp (encrCount, encrFirst, encrLast): New.

2016-09-05  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add convenience update function to a key.
	+ commit 28a12a89751a6c03d80834fc3195d832a7747076
	* lang/cpp/src/key.cpp (Key::update): New.
	* lang/cpp/src/key.h: Update accordingly.

	cpp: Add ostream operators for key and uid.
	+ commit a149253b65d43f069088a5d6918c7197de08647b
	* lang/cpp/src/key.cpp (Key, UserID): Add ostream operator.
	* lang/cpp/src/key.h: Update accordingly.

2016-08-25  Andre Heinecke  <aheinecke@intevation.de>

	cpp: Add WithTofu Keylist Mode.
	+ commit 00082a0a4c6ee82574a5e56f438138068f4e56a8
	* lang/cpp/src/context.cpp: Handle WithTofu.
	* lang/cpp/src/global.h (KeyListMode): Add WithTofu.
	* lang/cpp/src/util.h (add_to_gpgme_keylist_mode_t): Handle WithTofu.

	Cpp: Change firstSeen / lastSeen return values.
	+ commit ccd5c742c05726a22c537375bcdd4d1505a5a4a5
	* lang/cpp/src/tofuinfo.cpp,
	lang/cpp/src/tofuinfo.h (TofuInfo::firstSeen, TofuInfo::lastSeen):
	Change return values to unsigned long and update doc.

	Cpp: Add wrapper for gpgme_get_dirinfo.
	+ commit 1b39ab00a088730bcd093dc5173b10de05eff3a1
	* lang/cpp/src/context.cpp (dirInfo): New.
	* lang/cpp/src/global.h (dirInfo): New.

	Cpp: Add support for spawn engine.
	+ commit 17ef7f612f6ae1a3156e7a9d81dc015cf261ee8c
	* lang/cpp/src/context.cpp (Context::spawn, Context::spawnAsync): New.
	* lang/cpp/src/context.h: Add prototypes.
	(SpawnFlags): New.
	* lang/cpp/src/global.h (SpawnEngine): Added.

2016-08-24  Werner Koch  <wk@gnupg.org>

	cpp: Get rid of AssuanResult due to its deprecation.
	+ commit 5c593f92da79a5f1c7ede280011af78f6b8afbcf
	* lang/cpp/src/assuanresult.cpp: Remove.
	* lang/cpp/src/assuanresult.h: Remove.
	* lang/cpp/src/Makefile.am: Remove these files.
	* lang/cpp/src/context.cpp: Remove header assuanresult.h
	(assuanTransact): Change return type to Error.  Use
	gpgme_op_assuan_transact_ext.
	(startAssuanTransaction): Change return type to Error.
	(assuanResult): Remove
	* lang/cpp/src/context.h (assuanResult): Adjust for changes.

2016-08-24  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Add Key to signature.
	+ commit 613ae1fc8f359d8de5c825b2b78844e78e0c8db3
	* lang/cpp/src/verificationresult.cpp,
	lang/cpp/src/verificationresult.h (Signature::key): New.

	Cpp: Use fpr field for primaryFingerprint.
	+ commit fe01e0c661c1494a91209021ab12a035b9044cf6
	* lang/cpp/src/key.cpp (Key::primaryFingerprint): Return
	fpr value if available.

2016-08-23  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Move tofuinfo from signature to userid.
	+ commit 967d8e0aa60042b83e3ac21505d60690585a1f1c
	* lang/cpp/src/key.cpp (UserID::tofuInfo): New.
	* lang/cpp/src/key.h: Update accordingly.
	* lang/cpp/src/tofuinfo.cpp: Remove dropped fields.
	* lang/cpp/src/tofuinfo.h: Update accordingly.
	* lang/cpp/src/verificationresult.cpp,
	lang/cpp/src/verificationresult.h: Remove tofu info.
	* lang/qt/tests/t-tofuinfo.cpp: Disable for now.

2016-08-17  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Fix some pedantic warnings.
	+ commit e687f2e387054b0c6e05b31daeb7f70521c4892d
	* lang/cpp/src/context.cpp,
	lang/cpp/src/context.h (Context::getKeysFromRecipients): Remove
	ignored / invalid const qualifier.
	* lang/cpp/src/result.h: Don't shadow error function in ctor.

2016-08-12  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Provide size-hint for seekable and mem data.
	+ commit 10a657ea568170d460e7fdca47d30640dbdd0693
	* lang/cpp/src/data.cpp (GpgME::Data::Data): Set size-hint for
	mem and DataProvider based Data.

2016-08-10  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Handle empty recipients consistently.
	+ commit e072e352d17e643a045585edd3877505a8a262c0
	* lang/cpp/src/context.cpp (Context::getKeysFromRecipients):
	New helper.
	(Context::encrypt, Context::startEncryption, Context::signAndEncrypt)
	(Context::startCombinedSigningAndEncryption): Use new helper.
	* lang/cpp/src/context.h (Context::getKeysFromRecipients): Add
	as private helper.

	Cpp: Clarify ownership of provider classes.
	+ commit cb339b78dc6c1f86edf625dfd9dcd9f2a7aadec8
	* lang/cpp/src/context.h: Note that the context does not take
	ownership of providers.

2016-08-09  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Add support for all EncryptionFlags.
	+ commit 7f9052a6202af70c91069b0029d5022d49a700f5
	* lang/cpp/src/context.h (EncryptionFlags): Extend.
	* lang/cpp/src/context.cpp (encryptflags2encryptflags): Ditto.

	Cpp: Fix simple symmetric encryption.
	+ commit 0f665861e0fa66c66f28ee0e423c73f787c3aa0e
	* lang/cpp/src/context.cpp (Context::encrypt): If no recipients
	are provided encrypt with NULL and not an empty array.

2016-07-14  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Add EngineInfo::Version class.
	+ commit 4c180b7092e27e4a0216e4a3149ee966339b0b09
	* lang/cpp/src/engineinfo.cpp (EngineInfo::engineVersion): New.
	* lang/cpp/src/engineinfo.h (EngineInfo::engineVersion): Declare.
	(EngineInfo::Version): Small helper to work with versions.

2016-07-13  Werner Koch  <wk@gnupg.org>

	core: New GPGME_DATA_ENCODING_MIME.
	+ commit 9d37114932a6aab187f71b2b0025f05cbc4826a5
	* src/gpgme.h.in (GPGME_DATA_ENCODING_MIME): New.
	* src/data.c (gpgme_data_set_encoding): Adjust check.
	* src/engine-gpg.c (have_gpg_version): New.
	(gpg_encrypt, gpg_encrypt_sign): Pass flag '--mimemode'.
	(gpg_sign): Ditto.

	* lang/cpp/src/data.h (GpgME): Add MimeEncoding.
	* lang/cpp/src/data.cpp (encoding, setEncoding): Support MimeEncoding.

	* src/gpgme-tool.c (server_data_encoding): Add flag --mime.

2016-07-13  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Add feature enum for new identify.
	+ commit 6acfb3dc8940aae1ee6bf54c6408d301e75dabdc
	* lang/cpp/src/context.cpp (supported_features2): Add
	BinaryAndFineGrainedIdentify
	* lang/cpp/src/global.h (Feature2): ditto.

2016-07-12  Andre Heinecke  <aheinecke@intevation.de>

	Qt/Cpp: Add version headers.
	+ commit 0058552a5104a44b54a368af466179904689f5f8
	* lang/cpp/src/gpgmepp_version.h.in,
	lang/qt/src/qgpgme_version.h.in: New. Version information.
	* lang/qt/src/Makefile.am, lang/cpp/src/Makefile.am: Add them.
	* configure.ac: Configure them.

	Qt/Cpp: Add license blurb to export headers.
	+ commit e77adf53c58b31e85b6764f7b96e14090338a318
	* lang/cpp/src/gpgmepp_export.h,
	lang/qt/src/qgpgme_export.h: Add license blurb.

2016-07-07  Justus Winter  <justus@g10code.com>

	cpp: Fix distcheck.
	+ commit 62c5bf47e5c4fbf18cb4aa05927b879a2ebd4648
	* lang/cpp/src/Makefile.am (CLEANFILES): Remove generated file.

2016-07-06  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Expose gpgme_pubkey_algo_name.
	+ commit 2fdc5b4f253652cf1e76c2521c8a6a912bd0eb07
	* lang/cpp/src/key.cpp (Subkey::publicKeyAlgorithmAsString): New
	static variant.
	* lang/cpp/src/key.h: Declare function. Clarify comment about name
	mismatch.

	Cpp: Add PubkeyAlgo enum.
	+ commit d6f3e524ac039cabbc35c6e7690b4cf9dbd6ca2d
	* lang/cpp/src/key.h (Subkey::PubkeyAlgo): New enum.
	(Subkey::publicKeyAlgorithm): Change return type.
	* lang/cpp/src/key.cpp (Subkey::publicKeyAlgorithm): Use enum.

2016-07-04  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Add support for TOFU_CONFLICT sigsum.
	+ commit 0fbf90cfdc038d7d85cb4bf9bf4bb478b88e8efb
	* lang/cpp/src/verificationresult.cpp (GpgME::Signature::Summary):
	Handle TOFU_CONFLICT.
	* lang/cpp/src/verificationresult.h (Summary): Add TofuConflict.

	Cpp: Add support for pinentry_mode.
	+ commit 1c4a5e2de8341794e3819becd95086c9af23dd78
	* lang/cpp/src/context.cpp (Context::pinentryMode): Return mode.
	(Context::setPinentryMode): Set mode.
	* lang/cpp/src/context.h (PinentryMode): Add enum.

2016-07-01  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Add TofuInfo to signatures.
	+ commit 9306bf2b2c40c82652bf31f337e915a8139a2e6c
	* lang/cpp/src/tofuinfo.cpp, lang/cpp/src/tofuinfo.h: New class.
	* lang/cpp/src/verificationresult.cpp (Signature::tofuInfo): New.
	(VerificationResult::Private): Handle tofu info.
	(GpgME::operator<<(std::ostream &os, const Signature &sig)): Include
	TofuInfo in dump.
	* lang/cpp/src/verificationresult.h (Signature::tofuInfo): New.
	* lang/cpp/src/Makefile.am (main_sources, gpgmepp_headers): Add
	new files.
	* configure.ac (LIBGPGMEPP_LT_REVISION): Bump for new API.

2016-06-27  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Expose new data_identify values.
	+ commit 8587f60e0749107f233f97efcfe10c05872a2d4f
	* lang/cpp/src/data.cpp (GpgME::Data::type): Handle PGP Encrypted
	 and Signature.
	* lang/cpp/src/data.h: Add values accordingly.

	Cpp: Do not treat KEYEXPIRED as error.
	+ commit 73709f7141b958c7d219db6bb4f2082b20ae6eef
	* lang/cpp/src/editinteractor.cpp (status_to_error): No error
	for KEYEXPIRED.

2016-06-01  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Use whitelist for status messages.
	+ commit 84265ca79e4f061589dc3a9226ec529fa7c7ff5e
	* lang/cpp/src/editinteractor.cpp (EditInteractor::needsNoResponse):
	Use whitelist instead of blacklist.

2016-05-20  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Ignore STATUS_KEY_CONSIDERED when editing.
	+ commit e3fb1a0985e4dda9c35e768d156b65c6ef2d9554
	* lang/cpp/src/editinteractor.cpp (EditInteractor::needsNoResponse):
	Handle GPGME_STATUS_KEY_CONSIDERED.

2016-05-17  Andre Heinecke  <aheinecke@intevation.de>

	Qt / Cpp: Port auto_ptr to unique_ptr.
	+ commit 5b0f6fc788808abaa0cdb60e7cbdc21174999f62
	* lang/cpp/src/context.cpp,
	lang/cpp/src/context.h,
	lang/cpp/src/context_p.h (Context::createForEngine),
	(Context::edit, Context::startEditing),
	(Context::takeLastEditInteractor, Context::cardEdit),
	(Context::startCardEditing, Context::takeLastCardEditInteractor),
	(Context::assuanTransact, Context::startAssuanTransaction),
	(Context::takeLastAssuanTransaction): Port to unique_ptr.
	* lang/qt/src/qgpgmeadduseridjob.cpp,
	lang/qt/src/qgpgmechangeexpiryjob.cpp,
	lang/qt/src/qgpgmechangeownertrustjob.cpp,
	lang/qt/src/qgpgmechangepasswdjob.cpp,
	lang/qt/src/qgpgmesignkeyjob.cpp: Update accordingly.

2016-05-11  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Ensure gpgme.h is taken from current build.
	+ commit a2263b4f90392bb183f9989079c91e0db8e54ca8
	* lang/cpp/src/Makefile.am (AM_CPPFLAGS): Add gpgme.h location.

2016-05-10  Andre Heinecke  <aheinecke@intevation.de>

	Qt / Cpp: Fix make dist.
	+ commit 53ad5cabc563e0806f58f7ced6434ad6c9a038d6
	* lang/cpp/src/Makefile.am (EXTRA_DIST): Fix typo.
	(private_gpgmepp_headers): New. Private headers.
	(libgpgmepp_la_SOURCES): Add private headers.
	* lang/qt/src/Makefile.am (t_keylist_SOURCES): Remove non existent
	header.

2016-05-06  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Handle PINENTRY_LAUNCHED status line.
	+ commit cdb77b6bedf171d733335152d378647683ea322b
	* lang/cpp/src/editinteractor.cpp (EditInteractor::needsNoResponse):
	Add GPGME_STATUS_PINENTRY_LAUNCHED.

2016-04-12  Andre Heinecke  <aheinecke@intevation.de>

	Cpp: Add support for pubkey_algo_name.
	+ commit 69920c34f3d51155a8c7b6307b0925cc33ff7da3
	* lang/cpp/src/key.cpp (Subkey::algoName): New.
	* lang/cpp/src/key.h: Declare.

	Cpp: Add support for gpgme_data_identify.
	+ commit c6fa0ca7de3110a1d9bb53fd121dd46ea83f17d4
	* lang/cpp/src/data.cpp (Data::type): New.
	* lang/cpp/src/data.h (Data::Type): New enum mapping.

2016-04-11  Andre Heinecke  <aheinecke@intevation.de>

	Qt / Cpp: Mention coding style in READMES.
	+ commit bc7ad951e125164f11428e5893635fb33aa7da09
	* src/lang/cpp/README, src/lang/qt/README: Add hacking note.

	Cpp: Add string comparators for keys.
	+ commit 57bafe40ebe5f75db7dd7d33145a468f5265a6e0
	* lang/cpp/src/global.h (GPGMEPP_MAKE_STRCMP): New.
	  (_gpgmepp_strcmp): NULL save wrapper around std::strcmp.
	* lang/cpp/src/key.h: Add comparators for various attributes.

	Cpp: Remove last usages of boost.
	+ commit aa41f5ddeff935b758575f83699b9f40b16114e0
	* lang/cpp/src/configuration.cpp: Use std::remove_pointer.
	  (Configuration::operator<<): std::for_each.
	* lang/cpp/src/context.cpp: Delete manually instead of scoped ptr.
	* lang/cpp/src/scdgetinfoassuantransaction.cpp: Use static_assert.
	  (to_reader_list): Tokenize with getline.

2016-04-04  Andre Heinecke  <aheinecke@intevation.de>

	Add pthread in gpgmepp config.
	+ commit 76942e07e4cdcf31d237a48e8687e0831c33e565
	* lang/cpp/src/GpgmeppConfig.cmake.in.in: Add pthread.

2016-04-03  Andre Heinecke  <aheinecke@intevation.de>

	Cpp / Qt: Reduce boost usage (memory and tuple)
	+ commit c67a7d96630025e4cbead08dec5adbae4be02fba
	* cpp/src/assuanresult.h,
	 cpp/src/configuration.cpp,
	 cpp/src/configuration.h,
	 cpp/src/data.h,
	 cpp/src/decryptionresult.h,
	 cpp/src/defaultassuantransaction.cpp,
	 cpp/src/encryptionresult.cpp,
	 cpp/src/encryptionresult.h,
	 cpp/src/engineinfo.h,
	 cpp/src/gpgagentgetinfoassuantransaction.cpp,
	 cpp/src/gpgsignkeyeditinteractor.cpp,
	 cpp/src/importresult.cpp,
	 cpp/src/importresult.h,
	 cpp/src/key.h,
	 cpp/src/keygenerationresult.h,
	 cpp/src/keylistresult.h,
	 cpp/src/notation.h,
	 cpp/src/signingresult.cpp,
	 cpp/src/signingresult.h,
	 cpp/src/verificationresult.cpp,
	 cpp/src/verificationresult.h,
	 cpp/src/vfsmountresult.h,
	 qt/src/dataprovider.cpp,
	 qt/src/dataprovider.h,
	 qt/src/decryptjob.h,
	 qt/src/decryptverifyjob.h,
	 qt/src/downloadjob.h,
	 qt/src/encryptjob.h,
	 qt/src/qgpgmeadduseridjob.cpp,
	 qt/src/qgpgmechangeexpiryjob.cpp,
	 qt/src/qgpgmechangeownertrustjob.cpp,
	 qt/src/qgpgmechangepasswdjob.cpp,
	 qt/src/qgpgmedecryptjob.cpp,
	 qt/src/qgpgmedecryptjob.h,
	 qt/src/qgpgmedecryptverifyjob.cpp,
	 qt/src/qgpgmedecryptverifyjob.h,
	 qt/src/qgpgmedeletejob.cpp,
	 qt/src/qgpgmedownloadjob.cpp,
	 qt/src/qgpgmedownloadjob.h,
	 qt/src/qgpgmeencryptjob.cpp,
	 qt/src/qgpgmeencryptjob.h,
	 qt/src/qgpgmeexportjob.cpp,
	 qt/src/qgpgmeexportjob.h,
	 qt/src/qgpgmeimportfromkeyserverjob.cpp,
	 qt/src/qgpgmeimportfromkeyserverjob.h,
	 qt/src/qgpgmeimportjob.cpp,
	 qt/src/qgpgmeimportjob.h,
	 qt/src/qgpgmekeygenerationjob.cpp,
	 qt/src/qgpgmekeygenerationjob.h,
	 qt/src/qgpgmekeylistjob.cpp,
	 qt/src/qgpgmekeylistjob.h,
	 qt/src/qgpgmelistallkeysjob.cpp,
	 qt/src/qgpgmelistallkeysjob.h,
	 qt/src/qgpgmenewcryptoconfig.cpp,
	 qt/src/qgpgmenewcryptoconfig.h,
	 qt/src/qgpgmesignencryptjob.cpp,
	 qt/src/qgpgmesignencryptjob.h,
	 qt/src/qgpgmesignjob.cpp,
	 qt/src/qgpgmesignjob.h,
	 qt/src/qgpgmesignkeyjob.cpp,
	 qt/src/qgpgmeverifydetachedjob.cpp,
	 qt/src/qgpgmeverifydetachedjob.h,
	 qt/src/qgpgmeverifyopaquejob.cpp,
	 qt/src/qgpgmeverifyopaquejob.h,
	 qt/src/signencryptjob.h,
	 qt/src/signjob.h,
	 qt/src/threadedjobmixin.h,
	 qt/src/verifydetachedjob.h,
	 qt/src/verifyopaquejob.h: Reduce boost usage.

2016-04-02  Andre Heinecke  <aheinecke@intevation.de>

	Add additional include path in config files.
	+ commit 1c89addf7698bf4b28a88261262824e5a7770289
	* lang/cpp/src/GpgmeppConfig.cmake.in.in
	 lang/qt/src/QGpgmeConfig.cmake.in.in: Include directory above headers.

2016-03-08  Andre Heinecke  <aheinecke@intevation.de>

	Add qgpgme as qt language binding.
	+ commit 1b3353ee2e5b38b138e4c362929c20aedfbee38c
	* configure.ac: Add version defines. Check for qt if neccessary.
	* lang/README: Mention qt
	* lang/cpp/src/GpgmeppConfig.cmake.in.in: Remove comment. Find qgpgme.
	* lang/qt/src/Makefile.am: New. Build qgpgme.
	* lang/qt/README,
	 lang/qt/src/Makefile.am,
	 lang/qt/src/QGpgmeConfig.cmake.in.in,
	 lang/qt/src/QGpgmeConfigVersion.cmake.in,
	 lang/qt/src/dataprovider.cpp,
	 lang/qt/src/dataprovider.h,
	 lang/qt/src/qgpgme_export.h,
	 m4/qt.m4: New.
	* lang/cpp/src/GpgmeppConfig.cmake.in.in,
	 lang/cpp/src/Makefile.am: Fix generated config file.

2016-02-22  Ingo Klöcker  <dev@ingo-kloecker.de>

	NB: Changes done before the import of the sources from KDE's gpgmepp
	repository into g10 Code's gpgme repository can be found in the
	history of g10 Code's gpgmepp repository.  Changes done on the
	aegypten_branch before 2004-02-09 are "lost" in KDE's svn repository
	backups.

        -----
        Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
                      2010, 2011, 2012, 2013 g10 Code GmbH

	Copying and distribution of this file and/or the original GIT
	commit log messages, with or without modification, are
	permitted provided the copyright notice and this notice are
	preserved.