summaryrefslogtreecommitdiff
path: root/NEWS
blob: a15654e7499f0225c5e0f777f50d814536df23c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
2.27.99.2 (unstable):

Glib:
* Variant:
  - Rename get(index) to get_child(index).
 - Variant<std::string>:
   Allow this to be used for object paths and signatures as well as just
   bytestrings.
 - Variant<Glib::ustring>:
   Allow this to be used for bytestrings, object paths and signatures as well as just
   (UTF-8) strings.
 - Move constructor definitions into the .cc file.
 - Capitalize the standard types, such as VARIANT_TYPE_STRING.
 (Murray Cumming)
* ArrayHandle: Make it compilable with MSVC 2005, 2008, 2010.
  (Krzesimir Nowak) Bug #645851 (Fan, Chun-wei)

2.27.99.1 (unstable):

Gio:
* DBus: Use VariantContainerBase for tuple Variants.

2.27.99 (unstable):

This is probably the very last release before 2.28.0 which will happen very soon.

Gio:
* Removed Application, ApplicationCommandLine, and ActionGroup because
  they are unfinished. We hope to add them back in glibmm 3.2.
* Removed SettingsBackend because it is unfinished.
* Settings: Removed API that used SettingsBackend.
* Variant: Improved the documentation.

Build: Remove the dependency on mm-common during the tarball build.

2.27.98 (unstable):

Gio:
* DBus::InterfaceVTable: Make the tuple type clearer in SlotInterfaceMethodCall.

Glib:
* Correct some range checks to use >= instead of just >.
  (MUrray Cumming) Thanks to Michael Edwards.
* Vectorutils, ArrayHandle: Check for NULL pointers.
  (Krzesimir Nowak)

2.27.97 (unstable):

Gio:
* DBus::Proxy: Added the properties_changed signal.
  (Yannick Guesnet) Bug #644886
* Variant:
  - Added Variant<VariantBase>::get().
  (Yannick Guesnet) Bug #644207.
  - Added some get() method overloads.
  (Murray Cumming)
  - Added VariantBase::cast_dynamic().
  (Yannick Guesnet) Bug #644146

* Build: Fix the missing doc-install.pl problem.
  mm-common is now needed for tarball builds, though this might change soon.
  (Murray Cumming)

2.27.96 (unstable):

Gio:
* Application:
  - open(): Added a single-file method overload.
  - The command-line signal now returns an int instead of a bool. It is a
  main() status code.
  - Added get_environ().
  - Add the local_command_line vfunc,
* ApplicationCommandLine: Use std::string instead of ustring in some API.
  (Murray Cumming)
* DBus::InterfaceVTable: Use g_error_copy() where appropriate, fixing a crash.
  (Murray Cumming) Bug #644008 (Yannick.Guesnet)

* Build: Do not install doctool/ scripts such as doc-install.pl.
  These are now only installed by mm-common, and the mm-common macros find it
  there, so no changes should be necessary in other modules if you update
  mm-common.
  (Murray Cumming)
* Documentation: Avoid errors in the reference documentation due to encoding
  confusion in our perl scripts.
  (Kjell Ahlstedt) Bug #644037

2.27.95 (unstable):

Gio:
* Throw Gio::Error again, instead of just the base Glib::Error.
  This was broken in glibmm 2.27.94.
  (Murray Cumming)

Glib:
* build_filename(): Add method overloads to take up to 9 arguments,
  for convenience.
  (Fabricio Godoy) Bug #599578
* Documentation: Mark some new API as new in 2.28.
  (Murray Cumming)

2.27.94 (unstable):

Glib:
* OptionGroup:
  - Add add_entry() that takes a slot with callback function.
  (Kjell Ahlstedt) Bug #589197 (Hubert Figuiere)
  - on_post_parse() overrides no longer need to call the base class.
  (Kjell Ahlstedt) Bug #588988 (Hubert Figuiere)
  - Make Glib::{Array,List,SList}Handle work with std::vector<bool>.
  (Krzesimir Nowak) Bug 640079

Gio:
* Moved all DBus* classes into a Gio::DBus namespace.
  (Murray Cumming)

2.27.93 (unstable):

* Added ArrayHandler, ListHandler and SListHandler, to help with conversions
  to/from std::vector.
  These replace ArrayHandle, ListHandle, and SListHandle, which allowed the
  use of any standard container. New APIs will use only std::vector, because
  that is less confusing to developers, though less flexible.
  (Krzesimir Nowak)
* Application: Initialize glibmm and giomm in the constructor, for
  convenience.
  (Murray Cumming)
* Resolver: lookup_service(), lookup_by_address(): Fix the reference counting.
  (Murray Cumming) Bug #639575 (Michael Edwards)
* Fix the build (and of applications) with  GLIB_DISABLE_SINGLE_INCLUDES.
  (Chris Kühl)

2.27.91.1 (unstable):

* gmmproc:
  - _WRAP_CTOR(): Restore the optional extra parameter, because it
  is still needed by gtkmm-2.4.
  (Murray Cumming)
  - Added conversion from bool& to gboolean*.
  (Chris Kühl)

* DBus::[watch|own]_name(): Add default values for parameters.
* DBusConnection:
  - Add a send_message() without an "out_serial" parameter.
  - Avoid errors/exceptions in callbacks due to NULL C strings.
  - Wrap properties and signals.
* DBusMessage: Wrap properties and signals.
* DBusServer: Comment out constructors because of bug #639478.
* InetAddress: Wrap properties.
* Variant: Make the variant_type() functions return actual types.
* Documentation: Started a client/server example that uses the user's bus.

  DBus: Add initial implementation of a bus server/client example.

	* examples/Makefile.am:
	* examples/dbus/busserver.cc: Add a partial implementation of the
	server part of a server/client example that communicate through the
	user's bus.
	* examples/dbus/peer.cc: Typos.

2.27.91 (unstable):

Gio:
* BufferedInputStream, BufferedOutputStream: Fix create_sized().
	(Murray Cumming) Bug #638616 (Michael Edwards)
* DBus: Use std::string for addresses since they could be a file path.
  Use std::string instead of Glib::ustring for address parameters just to avoid
  possible errors since DBus address could be a filename path as the "Addresses"
	section of the DBus introduction seems to imply:
	http://www.freedesktop.org/wiki/IntroductionToDBus.
* DBus: Use std::string instead of Glib::ustring for guid's since std::string's
  API is probably adequate enough for their use.
  (José Alburquerque)
* DBusConnection:
  - call*() methods: Re-order parameters.
  - Callbacks: Check for NULL GError** parameters and throw exceptions to the
  caller.
  - Add [register|unregister]_subtree() methods.
  - Fix crashes caused by inappropriate use of reinterpret_cast<>.
  (José Alburquerque) Bug #637587 (Yannick Guesnet)
* DBusConnectionInvocation: reference-counting fixes.
  (Murray Cumming)
* DBusIntrospection: Fix some reference counting.
* DBusServer:
  - Added create() methods.
  - CCorrect the type of the "active" property.
* SocketService, ThreadedSocketService: Correct ref-counting for signals.
* Improvements to the DBus examples.
  (José Alburquerque)

Tools:
* gmmproc: Warn about unwrapped properties.
  (Krzesimir Nowak)
* Added defs_fixer.pl, which fixes some generated .defs by applying a specified
  override file. This should be easier than using a patch.
  (Krzesimir Nowak)


2.27.5.1: (unstable):

Glib:
* RefPtr: Make it work with sorted containers.
  (David Kozub) Bug #626858
* Variant:
  - Make all he get_iter() methods const.
  - Added dictionary entry and dictionary specializations.
  - VariantContainerBase: Add a create() method from an array of variants.
  - Added tests.
  (José Alburquerque)
* gmmproc cleanup
  (José Alburquerque)

Gio:
* Application: Added the open signal.
  (Yannick Guesnet)
* DBusConnection: Add register/unregister_object() methods.
  (José Alburquerque) Bug #637587 (Yannick Guesnet)


2.27.5: (unstable):

Glib:
* Added Variant<std::string>, Glib::Variant< array >, and
  Variant< vector > specializations

Gio:
* Added DBus client example: examples/dbus/well-known-address-client.cc
  (José Alburquerque)
* Fox the build with mingw32.
  (José Alburquerque) Bug #636754 (t.sailer)


2.27.4.1: (unstable):

Gio:
* DBus[Connection|Proxy]: Don't take extra reference on async creation.
* DBusConnection:
  - Add non-observable create method overloads.
  - Make the create methods.async get methods, static.
  - Added get_sync() methods.
  - Added send_message_with_reply_sync() methods.
  - Added signal_subscribe() and add_filter().
* DBusIntrospection: new_for_xml(): Rename to create_for_xml().
* DBusProxy:
  - Reorder the parameters so that "name" is second in methods.
  - Add a non-cancellable call_sync() method.
* Documentation: Add a DBus Doxygen group.
  (José Alburquerque)

Glib:
* Regex: Add a MatchInfo class and use it.
  (José Alburquerque) Bug #636911 (Alexander Shaduri)
* gmmproc: Remove m4 conversion files for gdk, gtk, atk, and pango.
  They are now in the derived projects, which should now include
  convert_glibmm instead of, for instance, convert_gtkmm.
  Some modules will now need to add a line in their configure.ac so they
  can use the extra conversions from gtkmm. For instance, with
  gtksourceviewmm:
  MM_PKG_CONFIG_SUBST([GMMPROC_EXTRA_M4_DIR], [--variable=gmmprocm4dir gtkmm-3.0])
  (Murray Cumming)

2.27.4: (unstable):

Gio:
* DBus::Address: Wrap the gio dbus address API in this namespace.
* DBusConnection:
  - Add emit_signal().
  - Add call(), call_finish() and call_sync() methods.
* DBusMethodInvocationbusmethodinvocation: Remove the default constructor
	because it probably will not be used (there is no create() method to
	go along with it).
* DbusServer: create_sync(): Use g_dbus_server_new_sync() instead of the
  constructors because the C function does more than call g_initable_new().
  (José Alburquerque)

gmmproc:
* Improve parsing of the C documentation.
  (José Alburquerque)

2.27.3.1: (unstable):

Gio:
* Added ApplicationCommandLine.
* Application
  - Added non-cancellable overload of register_application()
  - Return int value from run() correctly
  - Fix protected constructor signature
  (Jonathon Jongsma)
* DBusConnection, DBusProxy, DBusServer: Add non-cancellable overloads of the
  constructors and create methods.
  Renamed the create() synchronized methods to create_sync().
* Initable: Add a non-cancellable overload of the init() method.
* Documentation: Added lots of class and method documentation.
   (José Alburquerque)


2.27.3: (unstable):

Gio:
* Application: Added open().
* ActionGroup: Added list_actions.
* DataInputStream: Added read_upto(), read_upto_async()
	and read_upto_finish().
	(Murray Cumming)
* DBusConnection: Correct the AsyncInitable inheritance/implementation.
* MemoryOutputStream: Added steal_data(), and a const get_data().
* NetworkService: Added get_scheme(), set_scheme() and the property.
* Socket: Added get_timeout(), set_timeout(),
	receive_with_blocking() and send_with_blocking().
  (José Alburquerque)
* SocketClient:
  * Add get_enable_proxy(), set_enable_proxy(),
	get_timeout(), set_timeout() and add_application_proxy().
	(José Alburquerque)
	* Added connect_to_uri(), connect_to_uri_async()
	and connect_to_uri_finish().
	(Murray Cumming)
* SocketConnectable: socketconnectable.hg: Added proxy_enumerate() and a
	const enumerate().
* Added UnixSocketAddress
* UnixCredentialMessage, UnixFDMessage: Wrap properties properly.
  (José Alburquerque)
* giomm.h: Add includes of newly wrapped API.
  (José Alburquerque)

Glib:
* ObjectBase: Fixed compiler errors when the debug warnings are enabled
  at compile time.
  (Krzesimir Nowak)

2.27.2: (unstable):

Gio:

* Added ActionGroup.
* Application: Large API changes to match the changed C API.
* DBusConnection: Reorder the parameters in the
	constructors and create methods so that the DBusConnection flag
	parameter has a default value.
* DBusProxy: Added get_cached_property().
  (José Alburquerque)

Glib:
* Main: Add get_time(), deprecating get_current_time(), though this needs
  more work.
  (Murray Cumming)

2.27.1: (unstable):

Gio:
* AsyncInitable: Add create_finish().
* DBusProxy:
  -  Add call(), call_finish() and call_sync() methods.
  - Add properties and signals.
  (José Alburquerque)
* Variant: create methods: Remove the floating reference of the GVariants,
  correcting our memory management.

Glib:
* Added get_system_data_dirs() and get_system_config_dirs().
  (Murray Cumming)
* Build: Fix a Windows build problem caused by the removal of the optional-API
  ifdefs.
  (José Alburquerque)

2.27.0: (unstable):

* Depend on glib 2.27.x.
* Add Gio:Application.

2.25.5: (unstable):

Gio:
* Removed Application (removed in glib 2.26)
  This is still in the git master versions.
* DBusMessage: Added create_from_blob(), set/get_byte_order(),
  get_header_fields(), bytes_needed(), to_blob(), to_exception(), get_locked(),
  lock() and copy().
* NetworkAddress: Added get_scheme() and property.
* Added Proxy, ProxyAddress and ProxyResolver.
* Settings: Added reset(), list_children(), list_keys().
  (Murray Cumming)
* Added DBusAnnotationInfo, DBusArgInfo, DBusMethodInfo, DBusSignalInfo,
  DBusPropertyInfo, DBusInterfaceInfo, and DBusNodeInfo.
* Added DBusProxy.
* Added DBus::watch() and DBus::unwatch_name().
* Several other DBus* improvements.
  (José Alburquerque)

Glib:
* Variant: Added get_maybe(), get_size(), get_data(), store(), and
  get_n_children().
* Added VariantIter.
  (Murray Cumming)

2.25.4: (unstable):

Gio:
* Added AsyncInitable.
* DBusConnection: Added create() methods.
* UnixConnection: Add receive/send_credentials() methods.
* Added SocketControlMessage, UnixCredentialsMessage and UnixFDMessage.
  (José Alburquerque)

2.25.3: (unstable):

Glib:
* Added VariantBase and Variant<>.
  (José Alburquerque, Murray Cumming)

Gio:
* Added Application, wrapping GApplication
  (Murray Cumming)
* Added Credentials.
  (Murray Cumming)
* Added DBusConnection, DBusMethodInvocation, DBusServer,
  DBusAuthObserver and DBusMessage.
  (José Alburquerque, Murray Cumming, Martin Braure de Calignon)
* Added UnixFDList.
   (José Alburquerque)

Build:
* Fix the build without __STDC_ISO_10646__.
  (Koop Mast)


2.25.2: (unstable):

Gio:
* Settings: create*() methods:
  Use SettingsBackend instead of string context parameters.
  (Murray Cumming)


2.25.1: (unstable):

Glib:

* Removed the --enable-api-exceptions, --enable-api-properties,
  --enable-api-vfuncs and --enable-api-default-signal-handlers options
  because nobody needs them any more.
  The defines are now always defined, for backwards compatiblity.
* Keyfile:
  - Added get_int64, get_uint64, set_int64, set_uint64().
  - Added load_from_dirs().
  (José Alburquerque)
* OptionGroup: Added set_translate_func().
  (José Alburquerque)
* RegEx: Added get_compile_flags(), get_match_flags().
  (José Alburquerque)
* TimeVal: Avoid compiler warning in TimeVal::as_double()
  (Daniel Elstner) Bug #617463 (Alexander Shaduri)
* Added Glib::listenv().
  (Alex Vallée) Bug #578355.

Gio:
* DesktopAppInfo: Added get_filename().
  (José Alburquerque)
* Added Settings, wrapping GSettings.
  (Jonathon Jongsmam, José Alburquerque)

2.24.2 (stable):

* Reference Documentation: Add main page text for index.html.
  (David King, Murray Cumming)

2.24.1:

* UnixOutputStream: Fix the constructor to use the correct property name.
  (Alex Vallee) Bug #615482
* Documentation: Strip out the gobject-introspection annotations, and use
  other improvements made to docextract_to_xml.py
  (José Alburquerque)
* Fix the Windows MSVC build. (Armin Burgmeier)

2.24.0:

* Changes in glibmm 2.24 compared to glibmm 2.22:

Glib:
* BalanceTree: New class, wrapping GTree.
  (Szilárd Pfeiffer, Jonathan Jongsma)
* Fix ustring::format(non-const char*) and add regression test.
  (Debarshi Ray)

Gio:
* Added InetAddress, NetworkAddress, NetworkService, Resolver, Socket,
  SocketAddress, SocketAddressEnumerator, SocketClient, SocketConnectable,
  SocketConnection, SocketListener, SocketService, SrvTarget, TcpConnection,
  Threaded SocketService, UnixConnection
  (Jonanthan Jongsma)
* AsyncResult: Add get_source_object_base(), deprecating get_source_object()
  because it usually can never work.
  (Murray Cumming, Daniel Elstner) Bug #608269 (Michael Hasselmann)
* Cancellable: Added release_fd() and make_polldf().
File:
  - Added has_parent(), supports_thread_contexts(), start_mountable(),
  stop_mountable(), poll_mountable()
  - Aded create_file_readwrite(),  create_file_readwrite_async().
  - Added open_readwrite(), open_readwrite_async(), finish_readwrite(), r
  replace_readwrite(), replace_readwrite_async() and finish_replace_readwrite().
  - unmount_mountable(), eject_mountable(): Add overrides with MountOperation
  parameters.
* ThemedIcon: Added get_names().
  (Murray Cumming)
* NetworkService: Add domain property.
  (Krzesimir Nowak)


2.23.4 (unstable):

Gio:
* File: Add TypeTraits to fix Gtk::FileChooser::get_files() in gtkmm.
  (Jonathan Jongsma) Bug #590940 (Tomasz Jankowski)
* MemoryInputStream: Correct data loss/corruption with binary data.
  (Alexey Kosilin) Bug #609552 (Holger Seelig)
* ThemedIcon: Added get_names().
  (Murray Cumming)

Glib:
* Fix ustring::format(non-const char*) and add regression test.
  (Debarshi Ray)

Build:
* tests: Reorder assignment to LDADD and giomm_ldadd in tests/Makefile.am
  to always use the built library, not the installed one.
  (David King) Bug #610854 (Pacho Ramos)

2.23.3 (unstable):

Gio:
* AsyncResult: Add get_source_object_base(), deprecating get_source_object()
  because it usually can never work.
  (Murray Cumming, Daniel Elstner) Bug #608269 (Michael Hasselmann)
* File: Delete Gio::SlotFileProgress (and friends) at the correct time,
  fixing a crash.
  (Debarshi Ray) Bug #611521.
* IOStream: get_input_stream(), get_output_stream(): Fix reference counting,
  fixing a crash.
  (Murray Cumming) Bug #607554 (michi7x7)
* MemoryInputStream::add_data(): Minor documentation fix.
  (Michael Hasselmann)
* MemoryOutputStream: Fix the constructor, so this really works.
  (Krzysztof Kosiński) Bug #605710

2.23.2 (unstable):

Glib:
* BalanceTree: New class, wrapping GTree.
  (Szilárd Pfeiffer, Jonathan Jongsma)
* NodeTree: get_root() const correction.
  (Alexander Shaduri)

Gio:
* Cancellable: Added release_fd() and make_polldf().
* File:
  - Added has_parent(), supports_thread_contexts(), start_mountable(),
  stop_mountable(), poll_mountable()
  - Aded create_file_readwrite(),  create_file_readwrite_async().
  - Added open_readwrite(), open_readwrite_async(), finish_readwrite(), r
  replace_readwrite(), replace_readwrite_async() and finish_replace_readwrite().
  - unmount_mountable(), eject_mountable(): Add overrides with MountOperation
  parameters.
* NetworkService: Change hostname property to domain.
  (Krzesimir Nowak)
* SocketConnection: Remove graceful-disconnect property.
  (Krzesimir Nowak)
* UnixInputStream: Fix the constructor's implementation.
	Bug #608665 (Matt Marsh)

* Windows: giomm.h: Don't include files on Windows that are not available
	on that platform.
	(Armin Burgmeier)

2.23.1 (unstable):

    This release adds the BalancedTree class (wrapping GTree) and fixes a number
    of bugs, including one where we were accidentally depending on an unreleased
    version of glib.

    Alexander Shaduri (1):
          Bug #594173 - NodeTree::get_root() violates const-correctness

    Daniel Elstner (1):
          Fine-tune Doxygen configuration to improve output

    Jonathon Jongsma (8):
          Add non-cancellable versions of a bunch of SocketClient functions
          wrap g_socket_connection_factory_create_connection()
          A bunch of minor doxygen cleanups around the tree
          Fix up some formatting issues for BalancedTree
          Rename btree.* to balancedtree.*
          Bug #606146 - Relax the glib requirement
          Bug 581811 - Gio::content_type_guess() miss the version with a NULL filename

    Krzesimir Nowak (1):
          Bug #606100 - Fix wrapping properties.

    Szilárd Pfeiffer (3):
          Implement GTree wrapper
          Implemented reference counting for BalancedTree.
          Fixed several bugs of balanced binary tree wrapper.

2.23.0 (unstable):

    This release adds API for the new Network I/O classes that were added in
    glib 2.22.x (e.g. Gio::Socket, Gio::Resolver, etc). Testing of this new API
    would be greatly appreciated. There are a few minor fixes in various other
    areas as well.

    Armin Burgmeier (2):
          Added new files to MSVC projects
          ifdef-out inclusion of files not available on Windows in giomm.h

    Jonathon Jongsma (18):
          Re-enable network IO stuff (GSocket, etc)
          Re-enable network IO stuff (Socket, Resolver, etc)
          Add socket-client example
          Add socket-server example
          Take an extra ref from the return of g_inet_socket_address_get_address
          Fix another bug in resolver example
          Regenerate gio_methods.defs, bump glib requirement
          Re-generate gio_docs.xml
          Wrap Gio::Mount::get_default_location()
          _IGNORE a couple API that we've implemented manually
          Wrap SocketClient, SocketConnection, TcpConnection, UnixConnection
          Wrap SocketListener
          Accidentally marked wrong SocketConnection as non-win32
          Re-generate gio signal defs
          Wrap SocketService
          Wrap ThreadedSocketService
          Wrap missing properties of SocketClient, SocketConnection, SocketListener
          Add some more .gitignore stuff

    José Alburquerque (1):
          Make build successful when exceptions, vfuncs, etc. are disabled.

    Murray Cumming (1):
          Regex: Slight documentation improvement.


2.22.1 (stable):

    This is a quick follow-on release to fix a couple minor issues discovered in
    2.22.0.  The tarball has been re-generated with the latest mm-common to fix
    a devhelp installation issue. There is also a build fix for when building
    with exceptions disabled.

    Daniel Elstner (1):
          Fix KeyFile build with exceptions disabled


2.22.0 (stable):

    This it he first release in the stable 2.22 series.  It is essentially
    equivalent to 2.21.5, but with a few build fixes, etc.

    Daniel Elstner (8):
          Re-enable input file line markers in gmmproc
          Fix broken test for empty _WRAP_METHOD argument
          Allow the C documentation to be overridden
          Slightly clean up gross Perl code in gmmproc.in
          Correctly quote the extracted comment for M4
          Enable verbose output of autoreconf
          Do not complain about missing docs_override.xml
          Support Automake silent rules


2.21.5 (unstable):

    This release is a release candidate for 2.22.0.  As such, some unfinished
    API has been disabled (notably the network IO classes that we were not able
    to finish in time).  Also, a few documentation-related fixes.

    Daniel Elstner (5):
          Remove sigc from the Doxygen excluded symbols
          Sanitize the Glib::Cond usage example
          Officially deprecate GLIBMM_CHECK_PERL macro
          Delete obsolete MAINTAINERS file
          Implement Gio::Socket ctors using Gio::Initable

    Jonathon Jongsma (2):
          Add Network I/O classes to new documentation module
          disable network io stuff.  punt to next release


2.21.4.2 (unstable):

    This release corrects a mistake in the build setup which prevented
    the installation of the gmmproc code generation support files.

    Daniel Elstner (1):
          Always build tools/ subdirectory (bgo #593518, Vincent Untz)

2.21.4.1 (unstable):

    Daniel Elstner (4):
          Reenable hierarchy graphs for each class
          Remove header and footer HTML fragments
          Use shared mm-common Doxygen style sheet

2.21.4 (unstable):

    Daniel Elstner (59):
          Transition to new mm-common build infrastructure

    José Alburquerque (1):
          Correct the if condition in Gio::MemoryInputStream::add_data().


2.21.3 (unstable):

    David King (1):
          Only compile the properties example if properties are enabled.

    Jonathon Jongsma (10):
          fix release target to use correct tagging scheme
          Bug 587173 - Fails to install when bootstrapped with Automake 1.11
          add _IGNORE() for a eject_with_operation() which is hand-written
          add get_start_stop_type() and Gio::DriveStartStopType enum
          add overloads for resolver methods without a cancellable object
          add async versions of Resolver methods
          Added a simple example showing how to resolve an internet address from a hostname
          Fix MemoryInputStream::addData (Bug #589683)
          Fix a build error in MemoryInputStream
          Add Glib::ObjectBase::freeze_notify()/thaw_notify.  Fixes Bug #575533

    José Alburquerque (1):
          Repair Glib::KeyFile docs with regard to exceptions. Bug# 587766.

    Krzesimir Nowak (1):
          Wrapped several ISO 8601 related functions.

    Murray Cumming (1):
          Corrected the ChangeLog to mention changes that I accidentally committed in last month, but which I did want to commit some time.

2.21.2 (unstable):

Glib:
    Daniel Elstner (1):
          Treat empty Glib::spawn*() working dir as unset

    Jonathon Jongsma (1):
          Add OptionGroup::add_entry(.., double&)

Gio:
    Daniel Elstner (1):
          Remove stray semicolons

    Jonathon Jongsma (9):
          Fix build with glib from master
          wrap a couple added GDrive methods
          Wrap g_drive_eject_with_operation() and related functions
          implement GDrive::stop-button signal
          implement Gio::InetAddress::get_native_size()
          Implement Gio::Mount::mount/eject_with_operation()
          implement Gio::Volume::eject_with_operation()
          fix accidental bug in Gio::Drive::eject() that the compiler warned me about
          implement Gio::VolumeMonitor::drive-stop-button

2.21.1 (unstable):

Glib:
* Date: Constructor: Check for invalid dates.
  (José Alburquerque)
* Added Glib::ValueArray, for use in gstreamermm.
  (José Alburquerque)
* Added Glib::file_set_contents().
  (Jonathon Jongsma)
* gmmproc:
  - Avoid problems with spaces in _DEFS() calls.
  (Hubert Figuiere) Bug #586785.
  - Improve guessing of the *_get_type() function names from enum names.
	(José Alburquerque) Bug #575870.

Gio:
* Cancellable: Added connect() and disconnect().
* Added FileIOStream.
* Added InetAddress.
* Added Initable.
* Added IOStream.
* Added NetworkAddress.
* Added NetworkService.
* Added Resolver
* Added Socket.
* Added SocketAddress.
* Added SocketConnectable.
* Added SrvTarget.
  (Jonathon Jongsma)
* File::load_contents() Added overload without the etag_out parameter.
  (Hubert Figuiere) Bug #581349.

Windows Build:
* General Windows fixes.
* Fix the build directly from git.
(Armin Burgmeier)

2.20.0 (stable):

* Documentation fixes (Daniel Elstner)

2.19.8 (unstable):
(2.19.4 to 2.19.8 were skipped)

* Added FILE_CREATE_REPLACE_DESTINATION enum value.
* Added Error::TOO_MANY_OPEN_FILES error code.
* Fix some compiler warnings about extra ;s.
  (Murray Cumming)

2.19.3 (unstable):

* New API:
  * BufferedInputStream: buffer_size property
  * BufferedOutputStream: buffer_size, auto_grow properties
  * DataInputStream: byte_order, newline_type properties
  * DataOutputStream: byte_order property
  * FilterInputStream: close_base_stream property, get/set_close_base_stream()
  * FilterOutputStream: close_base_stream property, get/set_close_base_stream()
  * UnixInputStream: fd and close_fd properties, get_fd(), get/set_close_fd()
  * UnixOutputStream: fd and close_fd properties, get_fd(), get/set_close_fd()
* Make licenses consistent with eachother (library gpl vs. lesser gpl, etc)
  (Deng Xiyue)
* Fixed some problems when building with exceptions disabled (Murray Cumming)
* Build fixes (Theppitak Karoonboonyanan)

2.19.2 (unstable):

* File: Added make_directory_with_parents() method overload with no parameter.
  Bug #566003 (Philip Belemezov).
* NoteTree: Do not use a non-ASCII dash character in a comment, to
  avoid the MSVC++ warning C4819 with Visual Studio 2008.
  (Tao Wang) Bug #568072
* spawn_*() functions: Added alternative API for when
  GLIBMM_EXCEPTIONS_ENABLED is not enabled. (Murray Cumming)
  Bug #565487 (Jonathon Jongsma)
* uri_*() functions: Fix memory leak.
  (Jonathan Jongsma) Bug #566845 (Jason Kasper)
* ustring: Add an overload which takes only a format string and no arguments
  to be substituted. (Daniel Elstner) Bug #506394.

2.19.1 (unstable):

 * Fix accidental ABI breakage in 2.19.0 caused by adding default handlers for
   new Gio::Drive signals

2.19.0 (unstable):

 * wrapped new glib 2.19.x API
   * Gio::AppInfo: get_commandline(), can_delete(), do_delete(),
     reset_type_associations(), launch_default_for_uri()
   * Gio::Drive: new signals changed, disconnected, and eject_button
   * Gio::Icon: create(std::string), to_string()(),
   * Gio::Mount: guess_content_type_sync(), is_shadowed(), shadow(), unshadow()
   * Gio::content_type_from_mine_type();
   * Gio::DesktopAppInfo: create_from_keyfile()
   * Gio::Emblem: new class
   * Gio::EmblemedIcon: new class
   * Gio::MemoryOutputStream: new class
 * Bugs Fixed:
   * 555743 - warning in glibmm
   * 562716 - warning fixing cause more warnings.
   * 396963 - Add Glib::signal_idle().connect_once()
 * Thanks to contributions from Przemysław Grzegorczyk, Dave Foster, Hubert
   Figuiere, and Jonathon Jongsma for changes in this release

2.18.1 (stable):

 * Many windows build improvements
 * Bugs fixed:
   * 506410 - Call of overloaded Stringify is ambiguous
   * 529496 - Gio::Error::HOST_NOT_FOUND clashes with a netdb.h #define
   * 539891 - Can't use doxygen commands in *_override.xml
   * 555576 - name clash in fileinfo.h with winbase.h from VS2005
   * 556315 - Extra defs generation utility forgets to generate signals for inter...
   * 556387 - FileEnumerator::next_file reference counting problems
 * Thanks to contributions from Armin Burgmeier, Jonathon Jongsma, José
   Alburquerque, Murray Cumming, and Szilárd Pfeiffer

2.18.0 (stable):

 * Bug #550789: Fixed a licensing issue with some of the tools distributed with
   the source tarball (Murray Cumming)

2.17.3 (unstable):

 * More Glib::NodeTree improvements (Szilárd Pfeiffer, Murray Cumming)
 * Windows build fixes (Armin Burgmeier)

2.17.2 (unstable):

 * Changes to API that was added in this unstable series:
   * Glib::Tree (wrapper around GNode) renamed to Glib::NodeTree  to avoid
     confusion with GTree
   * pass the node to the traversal the callback (Szilárd Pfeiffer)
   * Move TraverseFlags inside the NodeTree class (Murray Cumming)
 * New API:
   * Added the drive_eject_button signal (Murray Cumming)
 * Bug Fixes:
   * #423990: glibmm et al don't recognize new GNU m4 (Damien Carbery)
   * #529496: Gio::Error::HOST_NOT_FOUND clashes with a netdb.h #define (Murray
     Cumming)
   * #523043: Initialization of Glib::ObjectBase for derived types should be
     mentioned in documentation (Moritz Ulrich)
   * #506410: Call of overloaded Stringify is ambiguous (Szilárd Pfeiffer,
     Murray Cumming)

2.17.1 (unstable):

  * New API: (Murray Cumming)
    * Gio::File: make_directory_with_parents(), query_file_type(), monitor().
    * Gio::FileEnumerator: get_container().
    * Gio::Mount: guess_content_type() and guess_content_type_finish().
    * Gio:ThemedIcon: prepend_name().
    * Gio::Volume: get_activation_root().
  * Bug Fixes:
    * #512348: provide documentation about threadsafety of
      Glib::Thread::create() when the slot object is of type sigc::trackable (Chris Vine)
    * #538803: minor fixes to Glib::Tree (Levi Bard)
    * #540656: Pass NULL in a couple functions instead of an empty string allow
      files to be overwritten (Armin Burgmeier)
    * #540875: add documentation for Glib::OwnershipType (Johannes Schmid)
    * #542929: Fix some compiler warnings (Benjamin Herr)
    * Fix AppLaunchContext::get_display(),
      AppLaunchContext::get_startup_notify_id() to use a list of Gio::File, not
      filepath string.  properly documented we know that this is correct. It's an
      API break but this function could nothave worked before. (Murray)
    * Bug #543292: Fix visual studio project file (Jens Georg)
  * Added Keyfile example (Murray Cumming)

2.17.0 (unstable):

  * Added copy constructor and assignment operator, made GDate constructor visible (José
    Alburquerque)
  * Added Glib::Tree, a wrapper for GNode, providing an N-ary tree container, more or
    less like a standard C++ container (Levi Bard)
  * Bug #529648 - give helpful warning message when library user forgets to initialize the
    library (Jonathon Jongsma)
  * Bug #529533 - Fix bug that prevented for Gio::Mount, Gio::Drive, and Gio::Volume from
    being wrapped for some backend implementations (Jonathon Jongsma)

2.16.2 (stable):

 * Bug 526831 – G_OPTION_REMAINING no longer works with OptionEntry (Murray
   Cumming)
 * Bug 527687 – ustring::erase(iterator) incorrect for non ascii character
   (Murray Cumming)
 * add API documentation for spawn_* functions (Murray Cumming)
 * fix possible memory leak in OptionEntr (Murray Cumming)

2.16.1 (stable):

* Reference-counting bugfix in Gio::File::create() and Gio::File::replace()
  (Murray Cumming)
* Include Gio::Error header in headers that have API that can throw this
  exception (Murray Cumming)
* Improve documentation (Murray Cumming)
* Build fixes for giomm on win32 (Jonathon Jongsma)
* fix warning with g++ 4.3 (Tim Retout)

2.16.0 (stable):

Changes compared to glibmm 2.14:

* New Gio API. Check for giomm-2.4 with pkg-config to use this.
  (Marko Anastasov, Jonathon Jongsma, José Alburquerque, Murray Cumming)
* New Glib::Checksum class.
  (Naveen Verma, Murray Cumming)
* New uri helper functions: uri_unescape_string(), uri_parse_scheme(),
  uri_escape_string().
  (Murray Cumming)

2.15.8 (unstable):

* File: load_contents(), load_contents_finish(),  load_partial_contents_finish():
  Use char*& instead of char** for contents.
  Use std::string& instead of char**  for etag_out.
  Added method overloads without cancellable.
  (Murray Cumming)
* Improved documentation: Mention exceptions instead of errors.

2.15.7 (unstable):

* File:
  - Added query_filesystem_info_async() and
  query_filesystem_info_finish() because these were added to the C API.
  (Murray Cumming)
  - Renamed contains_file() to file_has_prefix() because this was changed in the
  C API.
  (Wouter Bolsterlee)
* ThemedIcon: Added append_name() because this was added to the C API.
  (Murray Cumming)

Glib:
* Renamed uri_get_scheme() to uri_parse_scheme() because this was changed
  in the C API.
  (Wouter Bolsterlee)

Documentation:
* Corrections to the .devhelp file generation.
  (Jonathon Jongsma. Bug #518673)


2.15.6 (unstable):

Gio:
* Removed most vfuncs, because they are not useful to application developers,
  and are a likely source of errors. (Murray Cumming)
* DesktopAppInfo:
  - Added Added create(), create_from_file(),
    is_hidden() and set_desktop_env()
    Renamed new_from_file() to create_from_file().
    (José Alburquerque)
* File: equal(), get_relative_file(), contains_file(): Take const File
  parameters.
* FileAttributeInfoList: Added dup().
* MemoryInputStream: Added add_data(const void* data, gssize len).
* Mount: Really added signals.
* MountOperation: Wrapped the ask-question signal.
  (Murray Cumming)
* Volume:
  - Added should_automount().
    (Marko Anastasov)
  - Really added signals.
    (Murray Cumming)
* UnixOutputStream, DataOutputStream, DataInputStream: Made constructors
  protected.
  (Marko Anastasov)


Documentation:
* Install a devhelp file like the existing gtkmm one.
  (Jonathon Jongsma)

2.15.5 (unstable)

Gio:
* File, Mount, Volume:
  Updated for latest gio API changes, adding a MountFlags parameter to some
  methods.
  (Jonathon Jongsma)
* Volume, VolumeMonitor, Added some vfuncs, though we might remove these
  later as they seem useless and likely to be sources of problems.
  (Murray Cumming)

Glib:
* Actually install gi18n-lib.h
  (Takao Fujiwara. Bug #515133)

2.15.4 (unstable):

Glib:

* AppInfo: Added  vfuncs.
  (Jonathon Jongsma)
* Added BufferedOutputStream, DataInputStream and DataOutputStream, and
  FilterOutputStream.
  (Jonathon Jongsma)
* Cancellable: Added the signal.
  (Murray Cumming)
* Added ContentType functions.
  (Jonathon Jongsma)
* File:
  - Added overloads of create_file(), remove(), trash(),
    make_directory(), make_symbolic_link(), query_settable_attributes(),
    query_writable_namespaces(), query_filesystem_info(),
    query_default_handler() and mount_mountable(() without cancellable
    parameters.
    (Murray Cumming)
  - Added copy_attributes(), added mount_enclosing_volume(),
    mount_enclosing_volume_finish(), find_enclosing_mount(), and
    find_enclosing_mount_finish().
    (Murray Cumming)
  - set_attributes_from_info(): Reordered parameters so we can have default
    values.
    (Murray Cumming)
  - Added copy_async(), with overloads without slot_progress. copy_finish(),
    query_default_handler().
    (Marko Anastasov)
  - find_enclosing_mount(), append_to(): Reordered parameters and added
    overloads without cancellable.
    (Murray Cumming)
  - Added non-cancellable set_attribute_string(), set_attribute_byte_string(),
    set_attribute_{uint32, int32, uint64, int64}.
    (José Alburquerque)
* Added FilenameCompleter.
  (Murray Cumming)
* LoadableIcon:
  - Derive from Icon, and no longer derive FileIcon from Icon directly.
  (Murray Cumming)
  - Wrapped some vfuncs and some extra methods.
  (Jonathon Jongsma)
* Added MemoryInputStream.
  (Jonathon Jongsma)
* Added ThemedIcon
  (Murray Cumming)
* Added UnixInputStream, UnixOutputStream, and DesktopAppInfo, available only
  on Unix/Linux.
  (José Alburquerque, Murray Cumming)
* Volume: Added get_mount(), get_identifier(), enumerate_identifiers().
  (Marko Anastasov)
* VolumeMonitor: Added signals and properties.
  (Murray Cumming)

Build:
* Use local gmmproc files again, instead of only installed ones.
  (Murray Cumming)
* Fix compile with GCC 4.3.
  (Kjartan Maraas)


2.15.3 (unstable):

Gio:
* FilterInputStream: Really wrap this.
* VolumeMonitor: Workaround a crash in gio due to the
  eccentric use of the GType system to discover GVolumeMonitor
  implementations. See gio bug #511814.
* Added Gio::Error exception.
* Added more method overloads without optional parameters, and
  reordered more parameters to allow default values.
  (Murray Cumming)
* giomm.h: Added includes.
  (Jonathan Jongsma)

* Note that there are some examples in the gtkmm-documentation module.


2.15.2 (unstable):

Glib:

* Checksum: New class, wrapping GChecksum.
  (Naveen Verma. Bug #510235)
* ObjectBase: Added connect_property_changed_with_return()
  because connect_property_changed() does not return a sigc::connection.
  Bug #433984 (Philip Langdale, Kalle Vahlman).
* enums.pl .defs generator: Handle parantheses.
  (Marko Anastasov. Bug #498621)

Gio:
* Added FilterInputStream, Mount, FileMonitor, VolumeMonitor.
  (Marko Anastasov, Murray Cumming)
* Many methods' parameters have been reordered so we can
  add default parameter values.
* Many methods now have overloads with less parameters.
  (Murray Cumming, José Alburquerque, Marko Anastasov)


2.15.1 (unstable):

Gio:
* Actually build the giomm library.
* Added API reference documentation.
  (Murray Cumming)
* Added AppInfo and AppLaunchContext.
* Drive:
  - Added poll_for_media() and poll_for_media_finish().
  - Added capability-checking functions.
  (Marko Anastasov)
* File: Renamed create() to create_file(),
  create_async() to create_file_async() and
  create_finish() to create_file_finish() to slightly
  reduce confusion with the static create*() methods.
* FileInputStream, FileOutputStream: Derive from Seekable.
  (Murray Cumming)
* FileInputStream, InputStream, Volume: Modified *_finish
  functions to take a const AsyncResult.
  (Marko Anastasov)
* Added LoadableIcon.
  (Murray Cumming)
* MountOperation: Added MountOperationResult enumeration and make
  reply() take this instead of a bool.
  (Jonathon Jongsma)

  (Murray Cumming)

Glib:
* Added uri_unescape_string(), uri_get_scheme() and uri_escape_string().
  (Murray Cumming


2.15.0 (unstable):

* New giomm library (check for giomm-2.4 with pkg-config)
  in the glibmm tarball. This wraps the new gio API in glib 2.15/16.
  However, this API could change considerably before the stable
  glibmm 2.16 is released.
  (Marko Anastasov)
* ustring:
  - Added compose() to substitute placeholders in a format string, as an
  equivalent to sprintf(), to help internationalization/translation.
  - Added format() to simplify the common task of converting a value
  (such as a number) to a string, with optional stream formatting
  parmatters. This uses the regular C++ stream API in its implementation.
  (Daniel Elstner, Openismus)
* Glib::RefPtr: Deprecate clear(), replacing it with
  reset(), because people often do treemodel.clear() when they
  mean treemodel->clear(). reset() is consistent with std::auto_ptr<>.
  But the method is still there so the compiler still can't help
  you to avoid the mistake.
  (Murray Cumming)
* KeyFile: set_integer_list(),  set_boolean_list(), set_double_list()
  actually work now without crashing.
  (Daniel Elstner, Openismus)
* gmmproc:
  - Refuse to generate a wrapper for a construct-only
  property which is also write-only, and display a warning.
  (Daniel Elstner, bug #436789)
  - Added _DERIVES_INITIALLY_UNOWNED to sink floating
  references in constructor of classes that wrap
  GInitiallyUnowned-derived GTypes. Plus _INITIALLY_UNOWNED_SINK
  for hand-written constructors.
  (Murray Cumming)
* Build:
- Fix build for glib 2.15 by including
  gtestutils.h instead of gmessages.h to get g_assert(),
  though I am angry that this API break has been allowed.
  (Murray Cumming)
- Fix build for pre-releases of gcc 4.3 - also an include
  issue. (Sebastien Bacher, #498438)

2.14.2:

* Build: Hopefully fix the build on NetBSD-4.99.6/amd64.
  Bug #386990. (was already in 2.12.7) (Murray Cumming)
* gmmproc: Added support for the new _CONFIGINCLUDE() macro.
  (Armin Burgmeier)

2.14.1:

* Glib::wrap(): Don't fail when wrapping an interface that
  is implemented by an unrecognized type.
  gmmproc-generated code now uses the new wrap_auto_interface(),
  so newly-generated source code will require this latest glibmm
  version.
* Increase version number check for glib.
  (Rémi Cardona)

2.14:

Changes sinze 2.12:

* New Regex class, allowing string searching with regular expressions.
  (Murray Cumming, Daniel Elstner)
* New KeyFile class.
  (Rob Page, Jonathan Jongsma, Murray Cumming)
* Main: Added SignalTimeout::connect_seconds().
  (Murray Cumming)
* OptionContext: Added get/set_summary(), get/set_description(),
  set_translation_domain() and set_translate_func().
  (Jonathan Jongsma)
* Added Glib::get_user_special_dir(), get_user_data_dir(),
  get_user_config_dir(), and get_user_cache_dir().
  (Jonathan Jongsma, Murray Cumming)
* Improved documentation.
  (Johannes Schmid, Jonathan Jongsma, Ralf Stephan)

2.14.0:

* Regex:
  - Add escape_string().
  - match_full(): Rename to match().
  - match_all_full(): Rename to match_all().
  - split_full(): Rename to split().

2.13.9:

* KeyFile: Added Added get_double(), set_double(), get_double_list()
  and set_double_list().
  (Murray Cumming)

2.13.8:

* OptionContext: Added get/set_summary(), get/set_description(), set_translation_domain(),
  and set_translate_func().
  (Jonathon Jongsma)
* Documenation:
  Added RegEx class documentation. (Johannes Schmid)
  Show new API in 2.14.

2.13.7:

* Regex: Added a create() method and added default parameter values.
  Added a simple example.
* Added  SignalTimeout::connect_seconds(), in addition to the existing
  SignalTimeout::connect(), as a wrapper of g_timeout_add_seconds().
  Improveed the documentation.
* Added get_user_special_dir().
  (Murray Cumming)

2.13.6:

* Added Glib::Regex, an API for doing regular expression search/matching.
  This is not fully wrapped yet, but the simple versions of the API are there.
  We need to write an example for this.
  (Murray Cumming)

2.13.5:

* Correctly ifdef-out initialization of deprecated classes.
  (Johannes Schmid, Openismus)
* Build: Cope with newer m4 versions. (Yselkowitz)

2.13.4:

* Correct initialization when using --disable-deprecated for reduced code-size
  on embedded devices. (Johannes Schmid, Openismus)
* Glib::ObjectBase::is_derived_() is now public, though it is still only for
  internal use. This allows us to do some optimization of default signal handlers and
  vfuncs.
  (Armin Burgmeier, Openismus)
* Options: Don't overwrite default arguments. This change was lost in
  March 2006, but now it is back.
  (Armin Burgmeier)
* Dispatcher: Several minor implementation improvements. (Daniel Elstner)
* ustring: Minor improvements. (Daniel Elstner)
* Documentation: Actually use the signals documentation again.
  (Armin Burgmeier, Openismus)
* Build:
  - Fix code generation when using the latest m4, and functions named
  mkstemp, as experienced on Ubuntu Feisty.
  Bug #397167 (Dodji Seketeli, Daniel Elstner)
  - helperlist.h: Avoid warnings about a shadowed member.
  Bug #420316 from Bradley Bell.
  - utility.h: Avoid a warning about a redundant declaration.
  Bug #420339 from Bradley Bell.

2.13.3:


* Glib::ObjectBase::is_derived_() is now public, though it is still only for
  internal use. This allows us to do some optimization of default signal handlers and
  vfuncs.
  (Armin Burgmeier, Openismus)
* Build:
  - helperlist.h: Avoid warnings about a shadowed member.
  Bug #420316 from Bradley Bell.
  - utility.h: Avoid a warning about a redundant declaration.
  Bug #420339 from Bradley Bell.
* gmmproc improvements:
  - gmmproc: Allow () in property and signal docuemntation.
  - gmmproc: Do not try to remove a common prefix from the
  C enam values, if there is no common prefix.
  - enum.pl: Allow whitespace in front of an enum typedef.
  (Daniel Elstner)
  - enum.pl: Fix an infinite loop.
* ObjectBase: Added connect_property_changed(),
  as an alternative to use when the property proxies are not
  available because GLIBMM_PROPERTIES_ENABLED is not defined.
  (Murray Cumming)
* Value: When registering float parameters, use
  G_MAXFLOAT as the minimum, instead of G_MINFLOAT.
  Likewise for doubles.
  (Oliver Nittka)

2.13.2:

*Build:
 - Fix for api-default-signal-handlers option.
   Bug #357830 (Matt Hoosier)
 - win32: Remove unused source file from Visual Studio project.
   (Cedric Gustin)

2.13.1:

* KeyFile class added, wrapping GKeyFile,
  for parsing of .ini-style files.
  (Rob Page)
* Added get_user_data_dir(), get_user_config_dir(), and
  get_user_cache_dir().
  (Jonathon Jongsma)
* Support optional ifdef parameters in the .hg macros,
  to allow, for instance the --enable-atk=no option,
  to disable the build and use of the atkmm API,
  for use in embedded environments.
  (Johannes Schimd, Murray Cuming, Openismus)
* Documentation:
  - Small ustring reference documentation improvement.
  (Ralf Stephan)

2.12.0:

Changes sinze 2.10:
* Added the --enable-api-default-signal-handlers option, for use in
  embedded environments that have reduced resources. See configure --help
  for the other subsets.
* Value: Added init(const GValue*), so we can copy GValue instances
  of any type at runtime. Needed by the new branch of libgdamm.

2.11.3:

* Build: Added the --enable-api-default-signal-handlers option, for use in
  embedded environments that have reduced resources. See configure --help
  for the other subsets.

2.11.2:

* Date: Fix implementation of Glib::Date::set_time_current() so
  that it doesn't set the date to Dec 31, 1969.
  (Jonathon Jongsma)
* Value: Added init(const GValue*), so we can copy GValue instances
  of any type at runtime. Needed by the new branch of libgdamm.
  (Murray Cumming)
* Added a #warning to warn about including X11/Xlib.h before a glibmm header,
  which would break things. Bug #316726 from Mert Tugcu and Javeed Shaikh.
  (Murray Cumming)
* Build:
  - Quote some m4 macros to avoid warnings. Bugs (with patches) #347076
  and #347077
  (Kevin McBride).
  - Fix exporting of get/set_property() on mingw32-gcc.
  (Cedric Gustin)




2.10.1

* Windows Build:
 - Define GLIBMM_DLL when building with mingw32 or cygwin,
   because it is needed by gtkmm. Bug #309030
 (Cedric Gustin)
* OptionGroup: Allow default values, by not initializing them all.
  (Armin Burgmeier)
* Slight code size reduction by marking private functions as static.
  (Murray Cumming)

2.10.0:

* Windows Build:
 - ustring.h: Tag npos with GLIBMM_API, in order to
   dllexport it on win32. Bug #332438.
 - Updated MSVC++ build files and README, for MS Visual Studio 2005.
 (Cedric Gustin)
* gmmproc code generator:
 - WRAP_METHOD() Take an extra optional argument: deprecated deprecationtext -
  so that we can insert the appropriate doxygen tag in the documentation, where
  the C documentation does not do it for us.

2.9.1:

* Date:
  - Added set_time(time_t), set_time(GTimeVal), and deprecated
    set_time(GTime)
  - Added set_time_current().
  (Murray Cumming)
* Build: Added --enable-deprecated-api  option. When set to disabled,
  it does not build deprecated API. This reduces the size of the
  library, and might be useful for embedded devices.
  (Murray Cumming)

2.8.2:

* Solaris build fix: Correct the detection
  of make. (Mark Rouchal)

2.8.1:

* Build: Check for glib 2.8.

2.8.0:

API additions since glibmm 2.6:

* GModule: Add BIND_LOCAL enum value.
  (Bug #172748 from Phillip Neiswanger).
* MainContext Added signal_child_watch()
  and examples/child_watch.
  (Yair Hershkovitz)
* OptionEntry: Added FLAG_NO_ARG, FLAG_FILENAME,
  FLAG_OPTIONAL_ARG, and FLAG_NOALIAS enum values.
  (Murray Cumming)

2.7.3:

* Updated reference documentation from glib documentation.

2.7.2:

* OptionEntry: Added FLAG_NO_ARG, FLAG_FILENAME,
  FLAG_OPTIONAL_ARG, and FLAG_NOALIAS enum values.
* build_filename() and build_path(): Now use the implementation
  from glib.

2.7.1:

* GModule: Add BIND_LOCAL enum value.
  (Bug #172748 from Phillip Neiswanger).
* MainContext Added signal_child_watch()
  and examples/child_watch.
  (Yair Hershkovitz)
* Fixes from 2.6.2.

2.6.1:

* Interface::add_interface(): Disabled the check for a second call,
  introduced in 2.6.0, for now, because it stops some valid uses.
  (Bryan Forbes)

2.6.0:

New stable version. Changes compare to glibmm 2.4.x:

* Added Option, OptionContext, OptionGroup for parsing of command-line arguments.
* Added filename_display_basename() and filename_display_name().
* Added setenv() and unsetenv().
* add_interface() methods will no longer give warnings if you
  call them twice.
* gmmproc:
  - Now reuses C properties documentation.

2.5.6:

* add_interface() methods will no longer give warnings if you
call them twice.
* gmmproc: Output properties documentation taken from the .defs.
* examples now build on AIX.
  (Murray Cumming)
* MSVC++ .Net 2003 build fix. (Cedric Gustin)

2.5.5:

* Now builds with the following compilers, in addition to
the existing GNU g++, and Intel compilers:
- SUN Forte CC 5.5
- IBM AIX xlC v7
- Tru64 C++ V6.5-042
- IRIX MIPSpro 7.4.2m
  (Older versions of all these compilers might also work.)
  (Murray Cumming, www.thewrittenword.com)
* Now builds with MSVC++ .Net 2003 (gtkmm 2.4 already did).
  (Cedric Gustin)

2.5.4:

Options:
* Added Option(GOptionGroup* cast_item) constructor,
  needed by Gtk::Main.
* Added reference documentation.
(Murray Cumming)

2.5.3:

* Options:
  - Allow parsing of boolean arguments (arguments with no value).
  - Really use the short names.
  (Daniel Holbach, Murray Cumming)
* Added filename_display_basename() and filename_display_name().
  (Murray Cumming)
* Added setenv() and unsetenv(). (Murray Cumming)
* Use static keyword to prevent exporting private API.
  (Benoît Dejean)
* input example: Improvements and simplification. (Chris Vine)

2.5.2:

* OptionEntry: Remove useless enum. (Murray Cumming)
* Documentation:
  - examples: Added iochannel_stream example. (Chris Vine)
  - reference: Generate more reference API from the C documentation, and
    try to use the libstdc++ doxygen tags file to link to their
    documentation. (Murray Cumming)

2.5.1:

* OptionContext, OptionGroup, OptionEntry: Made the add_entry() methods
  type-safe and fixed several problems memory-management problems. This
  API is now worth looking at.

2.5.0:

* Added OptionContext, OptionGroup, and OptionEntry classes, for
  parsing of command-line options. See examples/options/

2.4.4:

* Signals: Avoid crashes when disconnecting a signal when handling that signal.
  (Murray Cumming, Martin Schulze)
*
2.4.3:

* Minor improvements to reference documentation. (Daniel Elstner)
* Minor Glib::Dispatcher improvements (Daniel Elstner)

2.4.2:

* Glib::Dispatcher: win32 implementation rewritten, and hopefully, improved.
  (Daniel Elstner)
* Glib::ustring:
  - Optimization and code-cleanup. (Daniel Elstner)
  - Added reference documentation for constuctors. (Murray Cumming)
* Fixed some compiler warnings.
  (Daniel Elstner)
* gmmproc: Some improvements for libgdamm. (Murray Cumming)


2.4.1:

* Build fixes for gcc 3.4.0.
* Doxygen not required when building from tarballs.
  (Murray Cumming)


2.4.0:

Changes since 2.2.0:

* Now separate from gtkmm, so you can use things like Glib::ustring without depending on gtkmm. This glibmm 2.4 API installs in parallel with gtkmm 2.0/2.2, so you can install applications which use either.
* When using pkg-config, you should check for "glibmm-2.4".
* Glib::ObjectBase inherits virtually from SigC::Object, allowing multiple inheritance with other classes that inherit from SigC::Object.
* RefPtr:
  - is_null() was removed, to encourage you to use "== 0" instead.
  - operator=(CppObject*) was removed.
* The gtkmmproc code-generator is now gmmproc, and has several improvements to support gtkmm 2.4.
* Now uses improved libsigc++ 2.0 API.
* Added i18n.h and i18n-lib.h, which include the relevant
  glib headers, which declare internationalization
  macros such as _().
* New methods:
  Glib::spawn_close_id(), Glib::MainLoop::depth(),
  Glib::Date::clamp_min(),  Glib::Date::clamp_max().
* Improved documentation.


2.3.8:

* Fix crash when using Glib::Main signals.
  (Martin Schulze)
* Corrected the configure-time SUN compiler check.
  (Murray Cumming, Alexander Nedotsukov)

2.3.7:

* Added configure macros to detect SUN compiler oddities.
* Various SUN Forte C+ and g++ 3.4 (cvs) build fixes.
  (Murray Cumming)
* gmmproc: Improved parsing of C docs.
  (Hagen Moebius)

2.3.6:

* Added i18n.h and i18n-lib.h, which include the relevant
  glib headers, which declare internationalization
  macros such as _(). (Murray Cumming)
* Added Glib::spawn_close_id(). (Murray Cumming)
* Added Glib::MainLoop::depth(). (Murray Cumming)
* Documentation: corrections to CHANGES (Martin Schulze).
* gmmproc: Can now handle "const const_iterator& iter"
  parameter names without getting confused by 2 consts.
  (Murray Cumming)

2.3.5:

* glibmm now uses libsigc++ 2 rather than libsigc++ 1.2.

2.3.4:

* ListHandle/SListHandle (intermediate container types):
  - Added a const_cast<> to allow lists of const elements.
* gmmproc: _WRAP_SIGNAL(): Added optional custom_c_callback
  parameter.
  (Murray Cumming)
* WIN32: Build fixes, mostly merged from the 2.2 branch.
  (Cedric Gustin)

2.3.3:

* gmmproc (code generator)
  - properties: Make read-only properties have const accessors,
    and add a second read-only const accessor for normal
    properties. Wrap construct-only properties as read-only,
    instead of ignoring them.
  - vfuncs: Really generate const vfuncs when requested. Put
    the method declaration directly into the .h file, so that
    the doxygen documentation can be next to it.
  - documentation:
    - Remove mergecdocs configure option - always
    merge the C docs, to avoid any risk of uploading or
    releasing empty documentation. Just delete the *_docs.xml
    files to make building from cvs faster.
    - Install a GLIBMM_CHECK_PERL() macro, for use by gtkmm
    and other *mm projects, to get the perl path needed by
    doxygen.
    - Install beautify_docs.pl so it can be reused in gtkmm
    and other *mm projects, instead of having lots of copies.
* Glib::ObjectBase: The default constructor, never before used,
  now generates a custom GType, for use when creating new
  implementations of Glib::Interfaces - for instance, see the
  new custom tree model example in gtkmm.
* Glib::Date: Added clamp_min() and clamp_max().
  (Murray Cumming)

* Documentation:
  - Added reference documentation for MainLoop, MainContext,
    Source, and Date. (Alberto Paro)

2.3.2:

* gmmproc (code generator):
  - signal proxies have extra space to avoid << with templates.
  - Added WRAP_METHOD_DOCS_ONLY() for reusing documentation even
    when the method is hand-coded.
  - _WRAP_SIGNAL(): Added optional no_default_handler parameter,
    because some of the new GTK+ signals have no public default
    handler vfunc.
* Added Glib::init(), for use by non-GUI apps which need to
  use Glib::wrap().
* PropertyProxy: Can now be used with Interfaces.
* Documentation improvements, so that gtkmm docs link to glibmm
  docs.
  (Murray Cumming)

2.3.1:

* gmmproc changes needed by gtkmm 2.3.0
  (Murray Cumming)
* examples updated and buildable and working,
  without gtkmm code.
  (J. Abelardo Gutierrez)

Changes in glibmm 2.3.0:

* Now separate from gtkmm, so you can use things like Glib::ustring without depending on gtkmm.
  This glibmm 2.4 API installs in parallel with gtkmm 2.0/2.2, so you can install this unstable library
  without the risk of breaking existing application.
* This does not yet require glib 2.3 because there has been no tarball release of that yet. For now, you
  can use glibmm 2.3.0 with glib 2.2.x.
* When using pkg-config, you should check for "glibmm-2.4".
* Glib::ObjectBase inherits virtually from SigC::Object, allowing multiple inheritance with other
  classes that inherit from SigC::Object.
* RefPtr:
  - is_null() was removed, to encourage you to use "== 0" instead.
  - operator=(CppObject*) was removed.
* gtkmmproc is now gmmproc.
* All the glibmm bugfixes in gtkmm 2.2.x.