Imported Upstream version 2.60.0
[platform/upstream/glib.git] / NEWS
1 Overview of changes in GLib 2.60.0
2 ==================================
3
4 * Further fixes to the Happy Eyeballs (RFC 8305) implementation (#1653, #1679, #1693)
5
6 * Add support for the XDG trash portal (#1676, !276)
7
8 * Bugs fixed:
9  - #1653 gsocketclient-slow test is flaky
10  - #1658 keyfile settings backend: Consider tightening permissions
11  - #1668 Fill in CODE-OWNERS file
12  - #1675 glib-compile-resources: c_name generation issue
13  - #1676 Trash portal tries to open files as read-only but D-Bus API documents against that
14  - #1679 socket-service test is flaky
15  - #1693 Happy Eyeballs failure in gsocketclient-slow test
16  - #1697 gthreadresolver: do_lookup_records does res_ninit with an uninitialized state
17  - #1698 g_base64_encode(NULL, 0) causes critical warnings
18  - !276 Support the trash portal
19  - !639 gvariant-parser: Fix error handling when type coalescing fails
20  - !666 Socket fixes to W32 test suite
21  - !674 Update gvdb submodule
22  - !676 Initialize a variable
23  - !677 gerror: Add a missing precondition assertion in documentation
24  - !686 gio: Also support modules built with MSVC
25  - !688 gsocketclient: Fix critical on cancellation
26  - !689 glib-compile-resources: Fix a minor leak
27  - !691 gtask: Separate GTask fields memory locations to avoid data races
28  - !692 glib.supp: Add more variations of existing suppressions
29  - !696 Move closures refcount test to gobject/tests/
30  - !698 gthreadedresolver: Remove unused thread pool
31  - !699 tests: Fix closure-refcount to preserve old semantics
32  - !702 Rename gobjectenumtypes.[ch] to glib-enumtypes.[ch]
33  - !703 Clean up gmarshal.[ch]
34
35 * Translation updates:
36  - Catalan
37  - Czech
38  - French
39  - Friulian
40  - German
41  - Italian
42  - Korean
43  - Romanian
44  - Serbian
45
46
47 Overview of changes in GLib 2.59.3
48 ==================================
49
50 * Fix support for g_get_user_special_dir() on macOS, including support for the Downloads directory (#1048)
51
52 * Ensure that cancelling a GTask cannot cause its callback to be called synchronously (in the same call chain as the original *_async() call) (#1608)
53
54 * Further fixes to the Happy Eyeballs (RFC 8305) implementation (#1644, #1680)
55
56 * Various fixes for installation of installed tests (thanks to Iain Lane) (!649, !651)
57
58 * Various fixes for tests when run on Windows (thanks to LRN) (!665, !667)
59
60 * Bugs fixed:
61  - #535 gmacros: Try to use the standard __func__ first in G_STRFUNC
62  - #875 gio-gvfs on Windows: Don't mishandle other non-native URIs in gwinhttpvfs.c
63  - #1048 "Desktop" shortcut appears twice in file chooser sidebar on OSX
64  - #1608 Cancellation might not be asynchronous under certain circumstances
65  - #1644 network-address test failure in CI: IPv6 Broken (g-io-error-quark, 24)
66  - #1680 Regression: g_socket_client_connect_to_host_async() sometimes gets "Connection refused" when connecting to localhost
67  - #1686 gdbus-peer test is sometimes timing out
68  - !613 Use win32 io channel on windows for the protocol test
69  - !634 Win32: gio/gsocket.c: Set WSAEWOULDBLOCK on G_POLLABLE_RETURN_WOULD_BLOCK
70  - !638 gvariant-parser: Fix parsing of G_MININT* values in GVariant text format
71  - !640 tests: Tag socket-service test as ‘flaky’
72  - !641 Minor typo fixes to GSpawn documentation
73  - !645 gsocketlistener: Fix multiple returns of GTask when accepting sockets
74  - !647 gsocketclient: Ensure task is always returned on cancel
75  - !648 gio/tests/task: Run the worker indefinitely until it's cancelled
76  - !649 gio tests: Install test1.overlay file when building installed tests
77  - !650 gstring: fully document semantics of @len for g_string_insert_len
78  - !651 tests: Install the slow-connect-preload.so library and use it
79  - !667 GSubprocess fixes for W32 test suite
80  - !668 tests: Mark gdbus-peer test as flaky
81  - !669 GWin32VolumeMonitor: Sort the volumes correctly
82  - !670 gpollableoutputstream: Fix the description of the interface
83  - !672 Fix some tests when running as root
84
85 * Translation updates:
86  - Catalan
87  - Danish
88  - French
89  - Indonesian
90  - Kazakh
91  - Portuguese (Brazil)
92  - Slovenian
93  - Turkish
94
95
96 Overview of changes in GLib 2.59.2
97 ==================================
98
99 * Fix check on GDBusMessage size when reading it. (#1642)
100
101 * Add async GIO API: g_file_query_default_handler_async(), g_app_info_launch_uris_async() (#1249, #1347)
102
103 * Fix some bugs in the Happy Eyeballs implementation. (#1646, #1649)
104
105 * Install a new generated header with enum types for Unicode enums. (!481)
106
107 * Support the XDG trash portal. (!276)
108
109 * Bugs fixed:
110  - #1224 TSAN patches
111  - #1249 xdg-open/gnome-open doesn't work if service isn't started
112  - #1347 g_app_info_launch_default_for_uri_async  is not really async
113  - #1376 gmarkup: Optimize g_markup_escape_text()
114  - #1642 minor mismatch between error and code in g_dbus_message_bytes_needed
115  - #1646 Criticals in g_socket_client_enumerator_callback()
116  - #1649 Critical in g_socket_client_connected_callback
117  - #1673 G_MININT constants broken in g-i
118  - !276 Support the trash portal
119  - !481 Define enum types for Unicode enums
120  - !585 gio: do not pass O_PATH file descriptors to portal APIs
121  - !593 Don't fail trash test if ~/.local doesn't exist or mount points can't be determined (master)
122  - !609 Make `g_app_info_launch_uris_async()` really asynchronous
123  - !619 gvariant: Fix a mistake in docs
124  - !622 Fixing warnings
125  - !626 gdbus: Avoid printing null strings
126  - !627 gsocketclient: Fix criticals
127  - !629 Various memory leak cleanups to GSettings tests (subset)
128  - !630 docs: Ignore more version macros
129
130 * Translation updates:
131  - Galician
132  - Hungarian
133  - Lithuanian
134  - Polish
135  - Spanish
136
137
138 Overview of changes in GLib 2.59.1
139 ==================================
140
141 * Autotools support is gone. (!580)
142
143 * g_format_size() now uses a no-break space to separate digits and units;
144   translations will need to be updated accordingly. (#1625)
145
146 * New g_queue_clear_full() API. (#1464)
147
148 * Fix argument quoting on win32 when spawning subprocesses. (!419)
149
150 * Allow polling more than 64 handles on win32 using g_poll(). (#1071)
151
152 * Tag various tests as ‘flaky’. These are no longer run routinely on our
153   upstream CI machines, and downstream packagers may want to not run them (or
154   not treat those test failures as package build failures) on their test
155   machines either. They are in the `flaky` test suite. (!579)
156
157 * Add overlay support to g_resources_get_info(). (#1445)
158
159 * Support defaults and locks in the keyfile GSettings backend. This will be
160   used for flatpaks. (!450)
161
162 * Accept unquoted strings in the keyfile GSettings backend to simplify things
163   for sysadmins. (!603)
164
165 * Update our contribution guidelines (`CONTRIBUTING.md`). (!590)
166
167 * Add writev() and writev_all() APIs to GOutputStream and GPollableOutputStream,
168   and provide implementations of them for many subclasses. (#1431)
169
170 * Bugs fixed:
171  - #424 Add 'proxy' debugging support
172  - #1055 Provide alignment macros
173  - #1071 Eliminate MAXIMUM_WAIT_OBJECTS limitation in g_poll() on Windows
174  - #1445 g_resources_get_info doesn't respect resource overlays
175  - #1464 Add g_queue_clear_full() API
176  - #1500 GListStore needs double checking on some warnings
177  - #1623 xdg-open: file with colon results in “The specified location is not supported”
178  - #1625 Unbreakable space needed when showing size of folder/file
179  - #1636 GTask getters don’t return TRUE/FALSE after bitfield changes
180  - #1637 EXCEPTION_ACCESS_VIOLATION in g_clear_pointer
181  - #1639 GListStore implementation of g_list_model_get_item() returns wrong results on integer overflow
182  - #1655 gvariant-parser warnings
183  - #1663 G_MININT32 triggers compiler warning C4146 with Visual C++
184  - #1666 `G_DEFINE_DYNAMIC_TYPE_EXTENDED` causes warnings with -Wcast-function-type
185  - !319 giomodule: Print the type of each default GIO module
186  - !333 Add writev() API to GOutputStream and GPollableOutputStream
187  - !419 gspawn, win32: qouted args - escape end backslash
188  - !450 Settings portal
189  - !512 gtype: Clarify type of GInterfaceInitFunc
190  - !516 gthread: Add g_private_set_alloc0() convenience API
191  - !535 win32 gpoll: overcome the 64 handles limit
192  - !545 goption: Fix an annotation on g_option_context_parse_strv()
193  - !560 docs: Fix dconf GSETTINGS_BACKEND name in gio overview
194  - !564 gtype: Document type for iface_default_init() function
195  - !568 Add separate definitions of g_assert_[non]null() for C++
196  - !571 docs: Add note on how to check a gboolean condition
197  - !575 gio: Update bad cert error in accept-certificate and GTlsError docs
198  - !579 Temporarily disable flaky tests
199  - !580 Drop autotools support
200  - !583 gmacros: MSVC supports the noreturn function attribute
201  - !587 Remove unused .pc.in files
202  - !588 MSVC: Move dirent implementation to glib/dirent/
203  - !590 Update contribution documentation
204  - !591 gfileinfo: Fix annotation for g_file_info_set_attribute_stringv
205  - !592 Remove leftover build/ directory
206  - !595 gtestutils: pass open file descriptors to subprocess
207  - !597 tests: Tag gsocketclient-slow test as ‘flaky’
208  - !598 gdbus-proxy test fails with GLib-GIO:ERROR:glib/gio/tests/gdbus-proxy.c:832:fail_test: code should not be reached
209  - !599 gdtlsconnection: do not return on a void method
210  - !601 gio: Support "help" in extension point env vars
211  - !602 Update POTFILES.in
212  - !603 keyfile settings: Accept unquoted strings
213  - !608 build: Add -Wno-pedantic flag to compiler arguments
214  - !611 gnetworkaddress: fix use-after-free for network address
215  - !612 gdir: shutup a warning when building with msvc
216  - !615 Fix a couple of wrong compiler warnings
217
218 * Translation updates:
219  - Spanish
220  - Swedish
221
222
223 Overview of changes in GLib 2.59.0
224 ==================================
225
226 * This will be the last development release with autotools support. As our
227   Meson support has been around since 2.56.x, and was used to release tarballs
228   in 2.58.x, the next development release (2.59.1) will drop autotools as used
229   to build GLib. The macros installed for other packages to use will remain.
230
231 * Add `G_TEST_OPTION_ISOLATE_DIRS` to redirect `XDG_*_HOME` to a temporary
232   directory for each unit test. (#538)
233
234 * Support `Property.EmitsChangedSignal` annotations in `gdbus-codegen`. (#542)
235
236 * Add `g_assert_cmpvariant()` API for unit tests. (#1191)
237
238 * Hide bind mounts from GIO mount listings. (#1271)
239
240 * Automatically realign data passed to `g_variant_new_from_bytes()` or
241   `g_variant_new_from_data()` if it is not correctly aligned. This prevents
242   misaligned accesses on architectures which don’t support them. Callers should
243   still aim to correctly align data to get higher performance. (#1342)
244
245 * Support `ld -b binary` (on platforms which support it; i.e. Linux) to provide
246   large pre-compiled `GResource` resources with a fast compilation time. (#1489)
247
248 * Unconditionally install GLib m4 macros, so that projects which depend on GLib
249   and which still build using autotools can continue to build even once GLib has
250   ported entirely to Meson. (#1520)
251
252 * Various fixes to the Meson build.
253
254 * Drop Python 2 support and require Python 3.4+. See discussion on
255   https://mail.gnome.org/archives/desktop-devel-list/2018-July/msg00004.html.
256   (!196)
257
258 * `GHashTable` performance and memory improvements for common cases. See
259   https://hpjansson.org/blag/2018/07/24/a-hash-table-re-hash/. (!208)
260
261 * Add flags that allow a `GApplication` to signal and replace a currently
262   running other instance of the same `GApplication`. This will be used for app
263   upgrades with flatpak. (!250)
264
265 * Autostart xdg-desktop-portal when using the network monitor and proxy monitor
266   portal backends. (!317)
267
268 * Add a g_task_set_name() API to allow `GTask`s to be described; useful for
269   debugging. (!384)
270
271 * Enable FreeBSD CI on every commit for upstream GLib. (!387)
272
273 * Various GVariant, GMarkup and GDBus fuzzing fixes, including buffer overflow
274   fixes. (!411)
275
276 * Various fixes to eliminate thread races, found by thread sanitizer (tsan).
277
278 * Deprecate TLS/DTLS rehandshaking, as it has been removed from the protocol in
279   TLS 1.3. (!478)
280
281 * Support reading arguments from a file with `glib-mkenums`, which is useful
282   for long argument lists due to having deeply nested build directories, on
283   systems with a low limit on the command line length. (!489)
284
285 * Make `g_environ_*()` case-insensitive on Windows, as the environment itself
286   is case-insensitive on Windows. (!500)
287
288 * Add Application Layer Protocol Negotiation (ALPN) support to `GTlsConnection`
289   and `GDtlsConnection`, so that higher layer protocols can be negotiated when
290   setting up a TLS connection, without additional round trips and latency. This
291   is needed for eventual HTTP/2 support. (!520)
292
293 * Add support for TPM keys in PEM files when loading TLS certificates. (!522)
294
295 * Add a `GRecMutexLocker` auto-pointer wrapper for `GRecMutex`. (!528)
296
297 * Bugs fixed:
298  - #107 The "g_key_file_get_comment" interface returns comment with unexpected new line symbol at the end
299  - #179 g_object_unref assert in debug code
300  - #277 'destroy_data' in g_cclosure_new is registered as finalize notifier instread invalidate.
301  - #538 Add helpers to redirect XDG_*_HOME to a temp dir for unit tests
302  - #542 gdbus-codegen does not honor "Property.EmitsChangedSignal" annotations
303  - #656 check for -Werror=format-security broken
304  - #734 Provide a way to instantiate a GDBusProxy-derived class from a GDBusConnection and a object path without blocking
305  - #827 gmain: Clarify that g_source_set_callback() is safe on attached sources
306  - #1055 Provide alignment macros
307  - #1119 GVolumeMonitor: Results don't reflect current state but state when application was launched
308  - #1191 add g_assert_equal_variants
309  - #1261 Add option to leave <default> in gschema empty
310  - #1271 fstab binds appear as mounts (x-gvfs-hide is being ignored)
311  - #1310 gdbusproxy: make g-name-owner property useful with unique names
312  - #1313 Meson: Rework the config.h generation
313  - #1342 Automatically realign data passed to g_variant_new_from_bytes() or g_variant_new_from_data()
314  - #1343 g_date_set_parse: Parses "September" in Polish incorrectly
315  - #1362 Incorrect documentation about GSettings child add/remove notifications
316  - #1452 GFileInfo: unable to retrieve correct modification time of links and mounted volumes on Windows
317  - #1471 Incorporate oss-fuzz fuzz targets into GLib
318  - #1489 Use `ld -b binary` to speed up GResource generation for linking
319  - #1498 distcheck fails in distclean
320  - #1506 error: redefinition of typedef 'GKqueueFileMonitor'
321  - #1509 test_timeval_to_iso8601_overflow: 'out' should be NULL
322  - #1513 GIcon regression?
323  - #1514 gio/appinfo test sometimes fails in CI
324  - #1518 /network-monitor/create-in-thread fails in (LXC) containers on glib-2-56
325  - #1520 Change conditions for installing m4 macros
326  - #1522 Trash not working on NTFS folder accessed from symlink
327  - #1523 GIO NetworkMonitor doesn't reflect the current network state
328  - #1525 GTask allows (buggy) application code to cause callback to be called twice, without warning
329  - #1527 Meson doesn't install data for installed-tests
330  - #1528 Meson tests are hard to debug in an autobuilder environment
331  - #1530 tests/mainloop-test appears to be flaky
332  - #1535 meson: installed-test metadata not run in TAP mode
333  - #1536 meson: spurious dependencies on convenience libraries in .pc files
334  - #1537 meson: absolute paths to ${builddir} included in gtk-doc HTML
335  - #1538 meson: G_HAVE_GROWING_STACK defined differently
336  - #1539 meson: Some files are unnecessarily installed executable
337  - #1541 meson: timeloop-closure test not installed
338  - #1542 meson: /usr/lib/glib2.0/installed-tests/glib/gdbus-peer: error while loading shared libraries: libgdbus-example-objectmanager.so: cannot open shared object file: No such file or directory
339  - #1544 meson: gtester-report #! not replaced with ${PYTHON}
340  - #1546 Cross-compilation fails in 2.58
341  - #1556 build: Too long file path issue with meson on Windows
342  - #1562 GDate test suite fails with latest glibc
343  - #1570 ghash.c:694:27: left shift of 1 by 31 places cannot be represented in type 'int'
344  - #1572 Flags validation fails
345  - #1575 g_date_time_format() should have format attribute
346  - #1576 Fails to build with Meson on Debian armel (armv5te EABI softfloat little-endian)
347  - #1580 glib-compile-resources using strings breaks building e.g. GTK+ on MS Visual C, which limits strings to 65535 chars
348  - #1581 Memory used for reference counted data might be misaligned.
349  - #1588 Moving a bookmark item to the same URI causes a crash
350  - #1589 g_log_writer_is_journald memoizes a single result, even though it accepts a parameter
351  - #1590 tests: g-file-info-filesystem-readonly fails if run more than once with fuse & bindfs installed
352  - #1594 Return value of g_dbus_connection_get_unique_name not annotated as nullable
353  - #1600 g_timeout_source_new_seconds overflows when given interval > (G_MAXUINT / 1000)
354  - #1601 appinfo test fix is defective
355  - #1605 g_date_time_format fails when used with non ASCII format string on POSIX locale
356  - #1615 gdbus-codegen not generating nullable annotation
357  - !196 [RFC] build: Drop Python 2 support and require Python 3.4+
358  - !200 Add a new GTlsError to indicate protocol downgrade attacks
359  - !208 GHashTable improvements
360  - !219 glocalfilemonitor: Fallback to poll file monitor for NFS
361  - !238 W32 GFileInfo improvements
362  - !250 Application replace
363  - !264 glib-compile-resources: encode data as string
364  - !268 build: simplify alloca checks. See #1313
365  - !272 dtrace: Add missing const attributes to types in glib_probes.d
366  - !273 gtlsbackend: add support for setting the default TLS database
367  - !277 Use "command -v" instead of "which"
368  - !282 meson: Add macOS libtool versioning for ABI compatibility
369  - !286 gspawn: Fix build on systems without O_CLOEXEC
370  - !287 glib-compile-resources: Fix generated code compiling with C++ compilers
371  - !289 tests: Add more tests to finish branch coverage of GHashTable
372  - !290 build: fix installation dir of glib-gettextize
373  - !292 Remove all ChangeLog files
374  - !293 Document new volume class `loop`
375  - !294 portal network monitor: Always emit changed signal on changed
376  - !295 meson: fix typo
377  - !296 Add G_GNUC_FALLTHROUGH for __attribute__(fallthrough))
378  - !297 build: Drop AC_C_CONST from configure.ac
379  - !302 Document that GTimeVal is subject to the year 2038 problem on 32-bit systems
380  - !303 liststore: Simplify code
381  - !304 Add more GListStore/GListModel tests
382  - !309 codegen: Change pointer casting to remove type-punning warnings
383  - !312 Enable GIO tests on Windows
384  - !316 gdbus: Improve error when well-known name is unowned
385  - !317 Autostart xdg-desktop-portal if needed
386  - !322 gnetworkmonitornm: Set a GError properly on an error handling path
387  - !332 gmarkup: Make the documentation even more explicit about untrusted input
388  - !334 gio: automake: Add libgmodule dependency
389  - !338 gcharset: fix leaking g_get_language_names_with_category
390  - !339 Add g_desktop_app_info_get_string_list(); fix g_key_file_free()
391  - !340 tests: Mark two more tests as slow
392  - !345 Fix build failure on systems without POSIX spawn
393  - !347 Use Meson 0.48.0 for CI
394  - !348 Documentation tweaks for g_array_free
395  - !353 Meson: Do not run tests/refcount with --tap
396  - !354 Fix spelling mistakes detected by Debian's Lintian tool
397  - !358 Autotools: Move libmount from Libs.private to Requires.private
398  - !360 CI: Test static build on installed glib
399  - !363 Tests: Mark printf wrappers with G_GNUC_PRINTF
400  - !364 ci: Enable FreeBSD CI
401  - !366 gunixmounts: Mark mounts as system internal instead of filtering out
402  - !372 gmacros: Fix G_[UN]LIKELY to not mask -Wparentheses
403  - !374 gthreadpool: Include prgname in thread name
404  - !375 m4macros: Allow information from pkg-config to be overridden
405  - !376 gthread: Clarify priority handling in GRWLock
406  - !379 Ignore g_return_*if_fail() branches in lcov coverage report
407  - !381 Add UTF-8 communication tests for GSubprocess
408  - !384 gtask: Add a g_task_set_name() method
409  - !387 ci: Enable FreeBSD CI in the official repository
410  - !396 m4: Fix AM_PATH_GLIB_2_0 macro
411  - !400 grefcount: add missing gatomic.h
412  - !403 build-sys: Pass CFLAGS to $(DTRACE)
413  - !405 ci/msys2: fix path to the lcov config file
414  - !406 meson: Mark 1bit-emufutex test as slow
415  - !407 meson: Increase test timeouts
416  - !410 gfileutils: Add examples to g_path_get_dirname() documentation
417  - !411 Various GVariant, GMarkup and GDBus fuzzing fixes
418  - !412 Enable compile time check of g_date_time_format() format
419  - !413 Add support for g_auto(s)list to G_DECLARE'd types
420  - !414 gio, tests: ensure objectmanager sources are generated
421  - !415 gseekable: fix 'attmepting' typo
422  - !416 gdbus-peer: Make sure to not include objectmanager-gen.c source
423  - !417 Fix ^*ay handling in g_variant_iter_loop()
424  - !418 Meson: Cleanup a FIXME now that we have dict addition
425  - !420 gdbus-codegen: add autocleanup for FooObject
426  - !422 GMarkup buffer overflow fixes for error handling, round 2
427  - !423 gutils: Check whether getauxval function exists
428  - !424 ci: Fix Docker image version
429  - !425 gdate: Reinitialize using_twodigit_years and locale_era_adjust.
430  - !435 gdatetime: Fix formatting of time zones offsets in range -01:00 to +00:00
431  - !436 valgrind: Add glib_init()-related suppressions
432  - !440 Fix minor memory leaks in tests
433  - !443 tests: Avoid multithreaded use of g_test_rand_int_range
434  - !444 gvarianttypeinfo: Consistently use atomics to access ref_count
435  - !446 gmain: Fix data races in GUnixSignalWatchSource and GChildWatchSource
436  - !451 closures test: Avoid timeout on ARM64 CPUs
437  - !452 Atomic reference count in GVariant, ContainerInfo and GDBus introspection
438  - !453 tests: Fix some data races in tests
439  - !454 gdbusproxy: make g-name-owner property useful with unique names
440  - !458 glib-compile-resources: Fix size allocation for compressed streams
441  - !460 gatomicrefcount: Make g_atomic_ref_count_init non-atomic
442  - !461 Meson: Fix build error in gdbus-example-objectmanager
443  - !462 meson: add aarch64 memory barrier handling
444  - !463 gio, tests: fix leak of dbus connection.
445  - !467 Update documentation of g_tls_connection_handshake() again
446  - !469 docs: add index of new symbols for gio > 2.52
447  - !470 docs: Clarify return/error behaviour of D-Bus signal subscriptions
448  - !472 gdbusmessage: Gracefully handle message signatures with invalid types
449  - !477 gthread: Remove unsynchronized access to g_once_init_list from assertion
450  - !478 Deprecate TLS rehandshaking
451  - !480 docs: add a missing semicolon
452  - !482 Check for 'z' library before fallbacking to subproject
453  - !483 meson: Turn selinux into a meson feature and make it auto by default
454  - !484 Meson: Add 'nls' option to disable translation
455  - !485 gdbus-codegen: Tag interfaces and properties so annotated with G_PARAM_DEPRECATED
456  - !486 Check for zlib header
457  - !489 glib-mkenums: Support reading @rspfiles for arguments
458  - !490 gspawn: Fix g_spawn deadlock in a multi-threaded program on Linux
459  - !491 Meson: Add missing include_directories when using glib as subproject
460  - !492 g_value_get_variant: return value is transfer-none not transfer-full
461  - !494 Resolve "Follow-up from "gunixmounts: Stop considering cifs/nfs as system file systems""
462  - !500 genviron: make g_environ_* case-insensitive on Windows
463  - !504 tests: Unset LANGUAGE when running gdatetime tests
464  - !505 Support isolating directories for unit tests
465  - !508 ci: Install additional locales used during tests
466  - !510 Add new Linux Testing project version number to configure script
467  - !511 gvariant: Fix error handling for parsing Unicode escapes
468  - !514 fix gdbus-codegen --interface-info-{header,body}
469  - !515 binding: Clarify the use of g_object_unref() to remove a binding
470  - !517 Meson: Fix deprecation warning with upcoming 0.49.0 release
471  - !518 Meson: Fix declare_dependency() calls
472  - !520 GTlsConnection: add ALPN support
473  - !521 tests: Rename macro to avoid conflict with encoding prefix
474  - !522 gtlscertificate: Add support for TPM keys in PEM files
475  - !524 gdatetime: Fix typo in the comment
476  - !528 Add GRecMutexLocker
477  - !530 tests: Minor improvements to mkenums.py and taptestrunner.py used by it
478  - !534 gtlscertificate: Fix bug in PEM private key parser
479  - !536 Various minor docs fixes
480  - !541 gtimezone: Fallback to /etc/timezone on Gentoo
481  - !546 spawn: add shebang line to script
482  - !547 Do not check for NULL when calling free()
483  - !549 Improve documentation of g_assert_error()
484  - !551 Revert "tests: Fix GOptionContext leak in GSubprocess tests"
485  - !554 Only subscribe to owner-changed signals on message bus connections
486  - !555 Suppress -Wint-in-bool-context warning with G_DEFINE_INTERFACE and g++
487
488 * Translation updates:
489  - Brazilian Portuguese
490  - Czech
491  - Danish
492  - Greek
493  - Hungarian
494  - Lithuanian
495  - Norwegian bokmål
496  - Polish
497  - Slovak
498  - Slovenian
499  - Spanish
500  - Swedish
501  - Turkish
502
503
504 Overview of changes in GLib 2.58.0
505 ==================================
506
507 * Tarball built with `ninja dist`, so if you want to build this release with
508   autotools (which is supported), you will need to re-run autogen.sh. This
509   release, and all micro releases in the 2.58.x series, support being built
510   with Meson or autotools. See:
511   https://mail.gnome.org/archives/gtk-devel-list/2018-June/msg00012.html
512
513 * Fix cancellation of g_subprocess_communicate_async() calls. See !266.
514
515 * Drop support for the __int64 type, which further breaks compilation on old
516   MSVC versions (before VS2013). See #1313.
517
518 * Expose GSettings schema directory in gio-2.0.pc as `schemasdir`. See !274.
519
520 * Support v3 of the xdg-desktop-portal network monitor API. See !265, !279.
521
522 * Fix G_MODULE_SUFFIX on macOS when GLib is built with Meson — it should be `so`
523   rather than `dylib`. Projects that use Meson and the `g_module_build_path()`
524   API such as glib-networking should pass `name_suffix:` to `shared_module()` to
525   ensure that plugins continue to be called libfoo.so on macOS. See !280.
526
527 Bugs fixed:
528  !280 meson: Always set G_MODULE_SUFFIX to `so` on macOS
529  !266 subprocess: Fix communicate_cancelled signature
530  !279 Revert "Add a gnet utility" (see !265)
531  !265 Network monitor again
532  !274 gio: Provide schemas directory information in pkg-config file
533  !239 gvariant: Fix more bounds checking in GVariant text format parser
534  !195 garray: add overflow checks before expanding array
535  #1497 g_strdup_printf warns on invalid format specifier with G_GUINT64_FORMAT on Win32
536  !270 autotools: remove support for the __int64 type. See #1313
537  !267 ci: Add an autotools job
538
539 * Translation updates:
540  Czech
541  Galician
542  Indonesian
543  Italian
544  Kazakh
545  Korean
546  Turkish
547
548
549 Overview of changes in GLib 2.57.3
550 ==================================
551
552 * G_GNUC_MALLOC’s definition has been tightened up to match an updated
553   definition from GCC. Many uses of G_GNUC_MALLOC which were previously
554   appropriate may cause miscompilation with newer GCC versions. Check your uses
555   of it against the updated documentation. See #1465.
556
557 * Many minor documentation fixes.
558
559 * Fix for gint64 and int64_t compatibility on macOS and BSD. See #972.
560
561 * Fix free space metadata on some file systems (notably FAT). See #328.
562
563 * Support installed-tests with our Meson build system. See #1444.
564
565 * Forbid @filename@/@basename@ in glib-mkenums templates, which is a change to
566   its long-standing behaviour (which was long-standing nonsensical). See !241.
567
568 * Various stat() fixes on Windows. See #1452, #1476.
569
570 * MinGW-w64 ABI warning: In case you build 64 bit glib without LFS support by
571   passing --disable-largefile (not the default) and use GStatBuf, you need to
572   rebuild your application as the size of GStatBuf has changed for this case.
573   See #1476.
574
575 * Improve TAP compatibility of g_test_incomplete(). See #1474.
576
577 * Change fallback preferences when loading icons. See !72.
578
579 Bugs fixed:
580  !263 build: Clean files left behind after gio/tests/gresource.c test
581  !262 gmem: Only evaluate pointer argument to g_clear_pointer() once
582  #1465 Many uses of G_GNUC_MALLOC are incorrect
583  #1448 g_error does not abort() as documented
584  #1494 g_clear_pointer may not use the correct calling convention with its callback
585  #972 Mismatch between gint64 and int64_t on 64-bit macOS/BSD
586  !251 gtestdbus: Fix watcher crash on FreeBSD
587  #1492 gcc-8: -Wcast-function-type: new warnings for g_list_copy_deep()
588  !252 tests: fix gnotification tests broken due to the recent icon name fallback changes
589  #328 filesystem::{free,size,used} not set for full FAT fs
590  !248 network monitor portal: update properties initially
591  #1373 Incorrect transfer annotation for g_binding_unbind.
592  #1444 the meson build doesn't support installed tests
593  #1027 Fix trashing on overlayfs
594  #1454 gvdb does not treat corrupt files as empty as promised; dconf suffers
595  !243 tests: Explicitly set TZ=UTC for g_time_val_from_iso8601() testing
596  #1488 ‘O_CLOEXEC’ undeclared (first use in this function)
597  !241 glib-mkenums: forbid @filename@/@basename@ in fhead and ftail
598  !240 gtimer: Ensure arithmetic is correctly signed for ISO 8601 parsing
599  #1452 GFileInfo: unable to retrieve correct modification time of links and mounted volumes on Windows
600  !234 DOC: Documentation fix in GTask description
601  #1363 Meson: Review cross compilation properties
602  !225 gtimer: Add overflow checks to g_time_val_from_iso8601()
603  !230 gbookmarkfile: Fix some more minor leaks when metadata elements are repeated
604  !229 Fix up g_bytes_compare() documentation
605  #1476 g_stat - possbile memory corruption causing SEGFAULT
606  !199 Update TLS documentation
607  #1474 g_test_incomplete() makes test_case_run() return FALSE
608  #1475 glib/tests/atomic.c test_types() trips -Werror=bad-function-cast on Debian armel
609  #1472 Test for BROKEN_IP_MREQ_SOURCE_STRUCT is broken on Windows / Mingw
610  !220 date test: Use g_test_skip(), not g_test_incomplete()
611  #1467 malloc difference causes refstring test to fail on FreeBSD
612  !230 gbookmarkfile: Fix some more minor leaks when metadata elements are repeated
613  #1466 Not Able to Build glib 2.57.2 in Mingw-w64 x64 bits
614  #1433 test_posix_parse: assertion failed (g_time_zone_get_abbreviation (tz, 0) == "UTC"): ("LMT" == "UTC")
615  #1446 Follow-up from "Document difference between g_assert() and g_assert_*() wrt G_DISABLE_ASSERT"
616  !206 grefstring: Avoid an unnecessary NUL assignment
617  #1458 g_volume_get_mount returns NULL value after g_volume_mount_finish is called with no error
618  !72 gio: icons should fallback to non-preferred style appropriately.
619
620 * Translation updates:
621  Brazilian
622  Chinese (Taiwan)
623  French
624  German
625  Lithuanian
626  Polish
627  Romanian
628  Turkish
629
630
631 Overview of changes in GLib 2.57.2
632 ==================================
633
634 * Require pcre 8.31
635 * Require meson 0.47.0
636
637 * Bugs fixed:
638  742456 Add g_steal_pointer() convenience function to mark ownership...
639  795569 MinGW CI: fix tests
640  796341 gmem.h: Use typeof() in g_steal_pointer() macro
641  #1013 Support for per-session overrides
642  #1360 glib-mkenums breaks if option specified but no nick
643  #1175 Add names and tags to various GSources and GTasks constructed in GLib
644  #903 g_main_context_wait() not deprecated in API, but emits a g_critical()...
645  #786 Fix memory leaks in libgio tests
646  #927 gio/gresource.c:do_lookup check for terminating "/"
647  #976 Document difference between g_assert() and g_assert_*()...
648  #1447 glib 2.57.1: test_month_names: assertion failed...
649  #1407 Update to Unicode Character Database 11
650  #1455 glib python tools have full python path in shebang, limits to 128 characters
651  #1459 Missing g_return_val_if_fail in g_async_queue_timeout_pop
652
653 * Translation updates:
654  Friulian
655  German
656  Romanian
657  Spanish
658
659
660 Overview of changes in GLib 2.57.1
661 ==================================
662
663 * New api:
664  - g_hash_table_steal_extended
665  - G_GNUC_NO_INLINE 
666
667 * Bug fixes:
668  668132 Use libmount and expose mount options on GUnixMountEntry type
669  736741 Update private copy of valgrind.h
670  748620 g_regex_* utf-8 validity requirements are not stated clearly
671  784995 meson: some Windows improvements
672  788771 NODELETE missing when built with meson
673  788773 meson does not install correct pc files
674  789968 Add g_autoptr() support for GTypeClass
675  794325 Various fixes to compile on OSX
676  795152 gdesktopappinfo: Mark GDesktopAppInfo constructors as nullable.
677  795165 Add g_date_time_get_timezone() and g_time_zone_get_identifier()
678  795180 Investigate performance impacts of recent compiler features on hot functions
679  795302 Add g_hash_table_steal_extended() API
680  795376 Add g_ptr_array_steal()
681  795544 Add binary/textfile/zero size detection
682  795569 MinGW CI: fix tests
683  795636 gitlab-ci: generate test coverage reports
684  795735 Fix comparison for GVariant property values
685  795802 gdbus-codegen doesn't accept --output-directory with --output for --body and --header
686  795849 gwin32: Fix detection of MinGW32 vs MinGW-w64
687  795876 meson: Fix checks for posix_memalign and stpcpy
688  795960 g_format_size_for_display() is deprecated since 2.30
689  796085 Meson: Many apps breaks on non-glibc because of missing libintl
690  796138 Fix typo in g_file_info_set_attribute docs
691  796139 Add g_autoptr() support for GParamSpec
692  796164 Fix atomic ops check in meson.build
693  796186 Typo: "instead off" in gsignal.c
694  796213 Meson: Fail to build on macosx
695  796220 meson: do not run atomic test with msvc
696  796264 Add android CI
697  796325 meson: Add exception for atomic ops test for Android
698  796328 gengiotypefuncs.py: Read and parse files in binary mode 
699
700 * Translation updates:
701  Czech
702  Indonesian
703
704
705 Overview of changes in GLib 2.57.0
706 ==================================
707
708 * Bug fixes:
709  739424 Rewrite kqueue GFileMonitor backend to drop threading
710  751826 Use g_get_language_names() for other locale categories
711  788773 meson does not install correct pc files
712  793400 g_application_id_is_valid() not strict enough
713  793578 gdatetime tests depend on Japanese translation of month names
714  793645 test_month_names: Updated translations needed for el_GR, hr_HR, ru_RU
715  793729 gitlab-ci: Add Windows MinGW support
716  793994 GUnixVolumeMonitor doesn’t show user mounts when run as root
717  794170 gdbus: hexdecode() and hexencode() do not return/use decoded/encoded s...
718  794194 gobject_gdb.py: 'address' is a property of gdb.Value not a function
719  794207 leak: g_socket_listener_add_inet_port increases ref-count on socket-li...
720  794284 Support whitespace stripping for JSON resources
721  794285 glib-compile-resources should not noisily g_printerr() when xmllint is...
722  794473 Remove duplicated option in gio.xml
723  794506 glib-mkenums: Enters infinite loop if using typedef enum SomeIdentifier
724  794528 Fix segfault caused by use-after-free in GPollFileMonitor
725  794555 glib meson build fails on MinGW due to misdetected functions
726  794557 gtkdoc-scangobj fails on gio in meson builds
727  794606 glib-2.56.0 fails to compile when res_nquery is not available
728  794635 gmacros: Don't define bogus __has_* macros
729  794636 G_HAVE_GNUC_VISIBILITY is defined in meson MinGW builds
730  794686 Date (except weekday) displayed in English
731  794732 Fix various compiler warnings 
732
733 * Translation updates
734  Hungarian
735  Slowak
736  Slovenian
737  Spanish
738
739
740 Overview of changes in GLib 2.56.0
741 ==================================
742
743 * Bugs fixed:
744  672777 Error in gdummyfile.c
745  732184 GObject: warn on use of deprecated properties
746  733338 Don't segfault in GNetworkMonitor when IPv6 support is unavailable
747  742124 g_data_input_stream_read_upto()'s documentation should say that the...
748  749206 GDateTime: month names in the genitive case
749  768507 simplify qguark functions
750  791457 Slow transfer rate when writing to smb/cifs
751  793272 fix GCC 8.0's -Wcast-function-type warnings
752  793300 g_hash_table_add() return value change in 2.40 not mentioned in docs
753  793399 Fix some cases of -Wduplicated-branches
754  793555 -Wimplicit-function-declaration when using g_abort()
755  793565 GLib does not compile on macOS 10.13 due to .m file naming
756  793597 gdbus-tool: Make --dest optional for emit again
757  793635 Enable CI for GLib
758  793880 gnetworkmonitor: Minor fixes based on code review 
759  793578 gdatetime tests depend on Japanese translation of month names 
760  794180 test_month_names fails unless installed
761
762 * Translation updates:
763  Brazilian Portuguese
764  British English
765  Catalan
766  Czech
767  Danish
768  Dutch
769  Finnish
770  French
771  Friulian
772  Galician
773  German
774  Hungarian
775  Indonesian
776  Italian
777  Kazakh
778  Korean
779  Lithuanian
780  Polish
781  Scottish Gaelic
782  Serbian
783  Serbian Latin
784  Spanish
785  Swedish
786  Turkish
787
788
789 Overview of changes in GLib 2.55.2
790 ==================================
791
792 * GFile now has API to get the path without copying
793
794 * A network monitor implementation for Windows has been added
795
796 * Bugs fixed:
797  520116 g_utf8_strlcpy()
798  584284 g_data_input_stream_read_until_async behaves confusingly different f...
799  605700 request for g_key_file_get_locale()
800  658713 ngettext (plural forms) needed for "Message has %d file descriptors ...
801  685442 windows GNetworkMonitor implementation
802  723003 gsettings list-recursively reports some keys multiple times
803  749583 GSequence performance improvements
804  757284 Move G_DIR_SEPARATOR* and G_SEARCHPATH_SEPARATOR* into glibconfig.h
805  760324 [PATCH] gkeyfile.c: find_file_in_data_dirs fails to return the path ...
806  761102 Increase performance for main loop
807  767976 GFile: Add g_file_peek_path()
808  770335 gdbus-codegen: generated getter for 'ao' property is actually (trans...
809  772989 Totem allows invalid urls that might cause segfault that's irrecover...
810  790698 convert: test failure on NetBSD
811  791015 gdbus-codegen: Split generation of header and source
812  791622 Disable strict-aliasing in GLib
813  792050 GResolver is not thread-safe
814  792217 Deprecate GTlsClientConnection:use-ssl3
815  792338 meson, autotools: figure out if mem barrier is needed for arm64 host...
816  792351 gbookmarkfile: check length before dereferencing groups
817  792364 gdbus-threading test method-calls-in-thread: assertion failed (elaps...
818  792370 GNetworkMonitor: Rename "network-changed" signal argument
819  792410 GDateTime new_from_iso8601 test broken in 2.55 on i386
820  792432 flush stdout after logging (debug) messages
821  792455 Improve docs of GSequence
822  792499 deadlock on startup with TCP session bus
823  792516 gconvert: More consistent handling of embedded NUL bytes
824  792777 g_notification_set_urgent() unconditionally sets G_NOTIFICATION_PRIO...
825  792780 gbytes should reference toplevel bytes when slicing with g_bytes_new...
826  792856 off64_t isn't a part of C standard
827  792862 gpollableoutputstream: document side effects of WOULD_BLOCK on D/TLS
828  792903 Clarification between g_try_.. functions and their counterparts
829  793006 High CPU load for GUnixMountsMonitor consumers
830  793026 possible mem leak in g_mutex_impl_new
831  793074 g_message() does not get -Wformat warnings when compiling with G_LOG...
832
833 * Translation updates:
834  Hungarian
835  Indonesian
836  Polish
837
838
839 Overview of changes in GLib 2.55.1
840 ==================================
841
842 * Build:
843  - The --enable-rebuilds configure option has been removed
844  - The --with-charsetalias-dir configure option has been added
845
846 * GList and GSList now have autoptr support
847
848 * The gsettings list-schemas command has gained a --print-paths option
849
850 * Bugs fixed:
851  346816 Refactor LIBDIR in libcharset Makefile
852  508976 Does g_slist_sort preserve the order of equal elements?
853  562334 2.18.2 break libglade on Solaris
854  662802 systemtap multiarch issue
855  684282 Add support static link of GIO modules
856  692034 Install an invalidation notifier for GClosure in g_source_set_closure()
857  694723 Get rid of REBUILD stuff in configure.ac
858  697715 floating point precision problem in check test gst/gstvalue
859  701156 testgobject assumes that the priv data follows the instance data
860  720380 Segfault when using GDBusMenuModel on a peer-to-peer connection
861  724383 glib: document restrictions on various foreach() functions
862  724412 GLib mappedfile.c test uses g_get_user_runtime_dir instead of a tempo...
863  724794 Fix "on on" typo in tap-driver.sh comment
864  732003 gnode: Eliminate implicit signed-to-unsigned integer conversion
865  734479 G_VALUE_HOLDS etc. cause -Wcast-qual warnings for a const GValue *
866  737677 gmain: Make GSourceCallback thread-safe
867  741167 gdbus-codegen fix for boxed out parameters
868  748534 gtest: if a subprocess assertion fails, print its stdout and stderr
869  749527 add weak pointer helpers similar to g_set_object
870  749652 compilation errors with gcc 4.8
871  754634 Update the list of Linux filesystem magic numbers used in get_fs_type
872  756011 Fix up annotations for GBookmarkFile
873  761102 Increase performance for main loop
874  773980 GIR scanner doesn't interpret array type properly
875  776147 gio/glocalfilemonitor.c doesn't handle case G_FILE_MONITOR_EVENT_MOVE...
876  776195 -z nodelete configure check does not work on Solaris
877  777075 Potential leak of memory pointed to by 'list'
878  779413 Translated X-Geoclue-Reason string not used in a dialog window
879  780309 gio/tests/appinfo build fails: gdesktopappinfo.c skipped on OS X
880  780893 Reword licensing header for gdbus-codegen
881  782057 Unit tests fail in run-assert-msg-test.sh
882  784995 meson: some Windows improvements
883  786796 gtk-doc build fails with meson
884  788806 Impossible to build static glib via meson
885  788936 Show mime type icons on OS X
886  790416 g_date_time_format returns empty string on %r with German locale
887  790588 Generated file missing from .gitignore
888  790697 g_object_ref API should propagate parameter type
889  790785 glib-tap: Add missing mkdir for .test generation rule
890  790829 glib-genmarshal --body must not generate alias implementations
891  790830 Mismatch between number of interface methods in text and example code
892  790837 Meson: missing many configure options
893  790839 GApplication command line: lacks parameter_string, summary and descri...
894  790877 fix non-portable check in G_GNUC_CHECK_VERSION
895  790894 Do not connect to the session bus when trying GProxyResolverPortal io...
896  790896 docs/reference/README has broken link to http://www.gtk.org/rdp/
897  790914 gdesktopappinfo: Downgrade a warning to a debug message
898  790934 gtester doesn't handle skipped tests
899  790948 GSourceFuncs documentation is confusing: when will dispatch be called?
900  791036 Guard for g_output_stream_vprintf makes no sense
901  791128 C runtime complains about bad arguments on each g_log() call
902  791221 po/README.translators has no useful information in 2017
903  791235 Fix gschema.dtd regarding flags.
904  791267 Make gschema.dtd usable.
905  791296 gtester-report: fix range usage when running as python3 app
906  791318 GBytes: Improve documentation
907  791325 Gio handling of thumbnail:: attribute namespace causes inconsistent b...
908  791334 gbinding.c:898: The target object of type GNetworkAddress has no prop...
909  791337 Crash opening URIs with g_desktop_app_info_launch_uris_with_spawn()
910  791342 Add autoptr support for lists
911  791460 meson: fixes for OSX
912  791532 Implicit declaration of function ‘memcmp’ in gtestutils.h
913  791622 Disable strict-aliasing in GLib
914  791720 Criticals in gio/xdp-dbus.h leading to crash under flatpak
915  791744 gmenumodel test sometimes fails: assertion failed (items_changed_coun...
916  791745 not immediately clear whether g_test_slow() is in effect by default
917  791906 GSocketListenerClass.event has wrong signature
918  792064 gsettings list-schemas --print-paths
919  792098 Binding: bind_property’s @notify func is nullable
920  792099 gdbus-test-codegen: Cast to void* to printf "%p"
921  792129 meson: skip optional linux/unix deps that default to true when buildi...
922  792322 GLib-GIO:ERROR:gschema-compile.c:51:test_schema: child process (/gsch...
923  792324 gkeyfile: Document need for KEEP_TRANSLATIONS with get_locale_string()
924
925 * Translation updates
926  Hebrew
927  Indonesian
928
929
930 Overview of changes in GLib 2.55.0
931 ==================================
932
933 * New API:
934   - g_clear_handle_id, to simplify removing sources from the default mainloop
935   - g_file_load_bytes, to make it more convenient to load files into GBytes
936
937 * Bugs fixed:
938  330458 Sample code for the GLib Key-value parser
939  483341 g_error and friends create warnings when not used in MSVC
940  569375 g[u]intptr undocumented
941  573251 documentation for g_seekable_truncate() needs some love
942  629347 Missing annotations in GFile (was: Perf throws an exception in cur...
943  630983 [PATCH] Type accuracy for result of strlen() in string utilities.
944  632953 Clarify documentation of GValueTransform.
945  636210 Document that pre-unmount is not guaranteed and backend-dependant
946  656502 type information for GSettings::backend missing from .gir
947  661442 Nautilus crashes when refreshing home folder after modifying ~/.co...
948  668035 gtester-report broken with python 2.7.2 and glib 2.30.1
949  670139 gbytes.c:try_steal_and_unref nit
950  677233 (transfer full) annotation not correct for g_closure_new_simple re...
951  679347 glocalfile seems to leak 'fstype'
952  679467 Mention translation in g_warning() documentation
953  689323 Variable scoping in gunixmounts.c
954  691436 glib-mkenums output arch dependent
955  695681 gsettings bash completion put error messages
956  705331 AM_PATH_GLIB_2_0 macro fails with -Wstrict-prototypes -Werror
957  706667 Fix permission denied error when installing from an nfs directory
958  711809 gdbus-proxy: Fix erroneous timeout during following tests
959  722256 gslist: Simplified node removal and got rid of some code duplication
960  723655 Socket source is left in the poll after the socket is closed
961  723743 g_child_watch_add() doesn't check for non-pids
962  725014 g_settings_schema_source_ref should check for NULL pointer
963  727346 docs: Escape some backslashes for markdown
964  730296 gsignal: Fix a potential NULL pointer dereference
965  731625 Improve test for darwin printf format-strings
966  731705 gio/tests/desktop-app-info assumes /bin/true
967  737278 Clarify relationship of g_application_quit() to hold count
968  738176 Skip GSpawnChildSetupFunc closures in introspection
969  740223 source_object for GAsyncResult should be nullable
970  740791 gio: cannot specify the source when joining a multicast group (IGM...
971  740826 glib doesn't know fuse filesystems
972  742548 configure.ac: stay out of autoconf's namespace
973  742997 Don't skip invalid enum values in schemas
974  745723 -Wunused-but-set-variable work-around no longer sufficient
975  749371 Use a GHashTable as a set when possible
976  751738 Unused-variable warnings in glib/tests/autoptr.c
977  752239 Missing dependency for python files in build file
978  752240 Add DTLS support to GIO
979  753459 GDateTime: Add conversion functions from/to ISO 8601 strings
980  753521 g_subprocess_launcher_set_environ misses argument annotations
981  754026 gfileutils: add some sanity checks
982  756009 'const gchar* const *' gets incorrectly defaulted to utf8
983  756103 Skip g_base64_decode_step() in introspection
984  756128 Fix up annotations in gconvert
985  756430 g_rw_lock_reader_lock() can return without locking, or error
986  756470 Fix up annotations in gdataset.c
987  756588 Fix up annotations on data/qdata API of GObject
988  760022 Memory leak in gvariant-parser.c
989  760109 [PATCH] Invalid GDate can't be g_boxed_copy()'d
990  760716 Fix documentation regarding <glib/gprintf.h>
991  765063 Update annotations for gio
992  765552 Please set serial in .m4 files to prevent autoreconf failure on up...
993  767215 GCC version number is interpreted as start of a list in docs for g...
994  767239 Tautological comparisons in convert tests
995  769674 some GIO tests' arbitrary timeouts are too short
996  769846 gmessages: Add timestamp to g_log_writer_format_fields()
997  770459 Tutorial article is slightly wrong
998  773355 Incorrect documentation about stopping a signal emission from a hook
999  774083 spelling mistakes in glib: charater
1000  776562 Add Intel C Compiler support for G_GNUC_BEGIN/END_IGNORE_DEPRECATI...
1001  777308 GModule win32: disable error dialog popup
1002  777310 gio/gasynchelper.c: fix cast from pointer to smaller int type on w...
1003  777956 gmessages: Update advice for G_LOG_DOMAIN
1004  779182 xdg-open fails with gio open for some uris
1005  779501 Type of GIConv given wrongly on web
1006  780202 introspection: Don't expose GValueArray.free
1007  780296 xdg-open/gnome-open doesn't work if service isn't started
1008  781598 gstdio.h should #include what it needs to work
1009  781867 various gvfsd-* wants to look in /boot/efi, causes unnecessary/ina...
1010  783210 build: Switch to sassc for generating style
1011  783270 Improve Visual Studio support for Meson builds
1012  783825 Suggest that asynchronous operations should invoke the callback in...
1013  786737 No g_variant_get() example for dicts
1014  786785 Commit #fe2a9887a8 breaks gdbus-codegen, cannot find its module so...
1015  787271 Make GListModel usable from G-I bindings
1016  787485 g_tls_backend_supports_dtls () returns true when the backend doesn't
1017  787551 Factor out some duplicated code in GParamSpec validation
1018  787581 tests: Add tests for g_slist_copy() and g_slist_copy_deep()
1019  787671 meson: Fix permissions of installed scripts
1020  787731 g_file_query_filesystem_info() wrongly reports "filesystem::readon...
1021  788138 glib-compile-resources: Fix leak of a GHashTable
1022  788180 G_FILE_ATTRIBUTE_ID_FILE is useless on W32
1023  788270 gmodule - failed to load symbol on Android 64bit
1024  788368 Race condition in GDbusObjectManagerClient
1025  788384 gtypes: Fix signedness of __builtin_bswap() usage
1026  788385 gtestutils: Explicitly cast args to g_assertion_message_cmpnum()
1027  788401 PATCH: MacOS build cannot detect content type from content - xdgmi...
1028  788467 Fatal errors and warnings should be reported as TAP
1029  788488 GFile-based API for g_build_filename()
1030  788489 gmain: add g_clear_source API
1031  788561 Document how to integrate GTest into your project
1032  788594 gdbus-tool doesn’t handle non-message-bus connections correctly
1033  788705 Allow building GLib on older Linux platforms
1034  788766 fixed a doc-typo in socket_get_remote_address
1035  788772 meson installs gdb scripts incorrectly
1036  788863 Add more filename type annotations for strings which can contain f...
1037  788880 gunixmounts: Update list of virtual file systems to ignore
1038  788927 Expose better API for detecting ‘system’ mounts
1039  788936 Show mime type icons on OS X
1040  788948 Document Autotools best practices for genmarshal/mkenums
1041  788975 Meson + Visual Studio: Can't find zlib.h with subprojects/zlib
1042  788978 Document XML has a syntax error
1043  788989 Use subdir-objects with Autotools
1044  788990 Include licensing information in output from glib-mkenums, glib-ge...
1045  789087 gint and guint misrepresented as functions
1046  789170 GFormatSizeFlags should have a value for bits
1047  789245 g_settings_bind() not conforming to lifecycle specification
1048  789444 Fix handling of length in g_utf8_make_valid
1049  789637 glib-mkenums: Fails when --ouput file does not exist
1050  789681 meson: Libmount support not built
1051  789723 [PATCH] gdbus-codegen: Call abspath() earlier
1052  789755 g_get_host_name: ensure return value is always UTF8 encoded
1053  789820 GPollFileMonitor is not cleaning up correctly
1054  790015 docs: Various linking and syntax fixes
1055  790030 GResource/GVariant fails to load from non-pointer aligned memory
1056  790093 gio-tool: fix inverted logic in monitor tool
1057  790126 gengiotypefuncs.py is missing from tarballs
1058  790147 build: Drop data-to-c.pl in favour of data-to-c.py
1059  790157 gmessages: Give examples of G_DEBUG with gdb in the documentation
1060  790272 file: add g_file_load_bytes()
1061  790275 avoid temporary string allocations in g_resources_enumerate_children
1062  790310 speedup path canonicalization in GResourceFile
1063
1064 * Translation updates:
1065  Catalan (Valencian)
1066  Czech
1067  German
1068  Nepali
1069  Norwegian bokmål
1070  Slovak
1071  Slovenian
1072  Spanish
1073
1074
1075 Overview of changes in GLib 2.54.0
1076 ==================================
1077
1078 * Bugs fixed:
1079  780861 Crash in GnomeWallClock
1080  786983 Please make the output of gio-querymodules deterministic
1081  787109 Valgrind false positive in ioctl() in btrfs file copy
1082  787123 glib: Slighty update GIOChannel documentation
1083  787146 GMainLoop: match of parameter pair of LOCK_CONTEXT/UNLOCK_CONTEXT
1084
1085 * Translation updates:
1086  Basque
1087  Catalan
1088  Romanian
1089  Swedish
1090
1091
1092 Overview of changes in GLib 2.53.7
1093 ==================================
1094
1095 * Bugs fixed:
1096  736710 remove unnecessary executions of libtool from configure
1097  785260 gio/tests/appmonitor fails if local dir not writeable
1098  786456 g_subprocess_wait[_check]_async() breaks when cancelled...
1099  786555 g_array_free() is not thread safe w.r.t. g_array_unref()
1100  786580 gdesktopappinfo.c: Add Tilix as a fallback terminal
1101  786807 g_uuid_string_random undefined when built with meson
1102
1103 * Translation updates:
1104  Brazilian Portuguese
1105  Catalan
1106  Czech
1107  Danish
1108  Finnish
1109  French
1110  Friulian
1111  German
1112  Italian
1113  Kazakh
1114  Korean
1115  Latvian
1116  Nepali
1117  Polish
1118  Spanish
1119  Turkish
1120
1121
1122 Overview of changes in GLib 2.53.6
1123 ==================================
1124
1125 * Bugs fixed:
1126  766358 glib doesn't respect XDG_* envvars on W32, ever
1127  783270 Improve Visual Studio support for Meson builds
1128  785955 pthread_setname_np misdetected with meson
1129  786060 Sequences documentation does not make it clear...
1130  786360 gobject: add autoptr support for GClosure
1131  786452 crash on Linux without stderr stream
1132  786460 gio-tool: Unify buffer sizes
1133  786462 Use g_output_stream_write_all instead of while
1134  786463 gio-tool-save: Prevent overwriting error
1135
1136 * Translation updates:
1137  Catalan
1138  Galician
1139  Hungarian
1140  Indonesian
1141  Lithuanian
1142  Nepali
1143  Serbian
1144
1145
1146 Overview of changes in GLib 2.53.5
1147 ==================================
1148
1149 * Bugs fixed:
1150  695573 Untranslatable strings in glib-compile-schemas
1151  725950 GApplication: call dbus_unregister only once, and before destruction
1152  731703 giomodule test misbuilds its test modules as libraries
1153  769135 External control for g_test_add/g_test_run
1154  779332 Rewrite mkenums in Python
1155  779607 Race between mounts-changed signal and g_unix_mounts_get() function
1156  784000 Improve strerror_r() detection
1157  784815 Map G_NOTIFICATION_PRIORITY_HIGH to NOTIFY_URGENCY_NORMAL
1158  784965 Use the glib preset for i18n in Meson
1159  784995 meson: some Windows improvements
1160  785113 glib-mkenums Python port fixes
1161  785130 G_LOG_DOMAIN shouldn't be left undefined for applications
1162  785438 Spurious -Wmaybe-uninitialized in gdatetime.c
1163  785468 glib/gpoll: Unnecessary if conditional included in the poll_rest() function
1164  785520 Replace advice to use removed gdk_spawn functions
1165  785577 clobbers errno while setting GError
1166
1167 * Translation updates:
1168  Slovenian
1169  Spanish
1170
1171
1172 Overview of changes in GLib 2.53.4
1173 ==================================
1174
1175 * Unicode support has been updated to Unicode 10.0.0
1176
1177 * glib-genmarshal and glib-mkenums have been rewritten in python.
1178   Every effort has been made to keep compatibility. Please report
1179   problems related to these tools
1180
1181 * GLib can now be built with meson. autotools are still supported
1182
1183 * Bugs fixed:
1184  722047 drop makefile.msc?
1185  733821 g_strerror() uses strerror(3) instead of strerror_r(3)
1186  773842 g_utf8_find_next_char() won't signal the end of a NUL-terminated string
1187  779332 Rewrite mkenums in Python
1188  780095 g_utf8_get_char_validated() stopping at nul byte even for length specified...
1189  780634 Remove remaining old codepage ABI comapt code
1190  783841 test_GDateTime_new_from_timeval_overflow fails on 32 bit systems
1191  784000 Improve strerror_r() detection
1192  784020 GKeyFile – Add array length annotations to to_data(), get_keys() and get_g...
1193  784037 gio: Mention the ALL_METADATA flag in g_file_copy()
1194  784433 gdbus-codegen with variant type parameters result in nested variant
1195  784456 Update to Unicode 10.0.0
1196  784528 Rewrite glib-genmarshal in Python
1197  784579 Calling g_dir_open on Missing Directory When Executable File Path Contains...
1198  784581 docs: Fix cut'n'paste error in g_resources_get_info() doc
1199  784739 Minor typo in configure error message
1200  784792 Just fixing a little typo in comments
1201
1202 * Translation updates:
1203  Hebrew
1204
1205
1206 Overview of changes in GLib 2.53.3
1207 ==================================
1208
1209 * Bugs fixed:
1210  658446 Add translation comment for wrong password notice string
1211  661926 Improve the default logging setup in GLib
1212  674885 type initialisation deadlock in GObject
1213  775593 GIO cannot write symlinks on FreeBSD and NetBSD
1214  776169 Various gio-tool fixes
1215  776333 Fix annotation on g_file_copy_async()
1216  776504 Upgrade license from LGPLv2+ to LGPLv2.1+
1217  777307 race condition between gdbus signal callback and g_bus_unwatch_name...
1218  778422 gsubprocesslauncher: Clarify the behavior of set_environ()
1219  781301 Stack pointer corrupted by incorrect call of NtNotifyChangeMultipleKeys
1220  782336 Add additional documentation of the GResource XML format
1221  782996 build: Use AM_TESTS_ENVIRONMENT rather than TESTS_ENVIRONMENT
1222  783061 GApplication: Remove some unused members
1223  783130 Make dbus activation sandbox-aware
1224  783193 Adapt to OpenURI api change
1225  783201 gdbus-codegen: Apply --output-directory to generated docs as well
1226  783340 win32: port monotonic times to use QPC
1227  783350 length parameter can be NULL g_data_input_stream_read_line
1228  783392 incorrect (out) annotation for g_dbus_interface_info_generate_xml
1229  783593 GGtkNotificationBackend should use /org/freedesktop/DBus to call Ge...
1230
1231 * Translation updates:
1232  Esperanto
1233  German
1234  Indonesian
1235  Kazakh
1236  Spanish
1237
1238
1239 Overview of changes in GLib 2.53.2
1240 ==================================
1241
1242 * A few new number parsing functions have been added:
1243   - g_ascii_string_to_signed
1244   - g_ascii_string_to_unsigned
1245   These have better error handling than the existing ones.
1246
1247 * glib-mkenums now supports /*< private >*/ and /*< public >*/
1248
1249 * GSettings now consider XDG_DATA_HOME in addition to XDG_DATA_DIRS.
1250
1251 * Bugs fixed:
1252  674885 type initialisation deadlock in GObject
1253  698064 Add g_ptr_array_contains()
1254  732000 gdatetime: Remove an unnecessary NULL pointer check
1255  734946 Implement GContentType on OSX
1256  741335 Possible differences in use of XDG_DATA_DIRS versus XDG base directory specification
1257  748263 Use-after-free in g_dbus_connection_call_internal()
1258  776876 gmodule – Various Android bug-fixes
1259  777030 build error where minor() and major() cant be resolved in gio/gdbusmessage.c
1260  780300 gio/gosxappinfo.c uses deprecated LSFindApplicationForInfo
1261  780309 gio/tests/appinfo build fails: gdesktopappinfo.c skipped on OS X
1262  781755 Avoid compiler warnings in generated marshallers code
1263  781826 portal support: Read /.flatpak-info
1264  781830 Fix some typos and errors in GVariant documentation
1265  781847 Use-after-free under send_message_with_reply_cleanup():gdbusconnection.c:1792
1266  781867 various gvfsd-* wants to look in /boot/efi, causes unnecessary/inappropriate auto...
1267  782068 doc: Trivial typo fixes
1268  782075 gtimer: Handle gmtime() failure in g_time_val_to_iso8601()
1269  782089 gdatetime: Fix overflow checks when constructing from timestamps
1270  782162 Support public/private trigraph in glib-mkenums
1271  782237 make check error
1272  782311 inode/directory is treated as a subclass of application/octet-stream
1273  782628 libmount build dependency check not requiring the right version?
1274
1275 * Translation updates:
1276  Hungarian
1277  Indonesian
1278  Spanish
1279
1280
1281 Overview of changes in GLib 2.53.1
1282 ==================================
1283
1284 * The gdbus tool gained a wait command
1285
1286 * g_unix_signal_source_new support SIGWINCH now
1287
1288 * There are now g_enum_to_string and g_flags_to_string functions
1289
1290 * A new function to instantiate objects: g_objet_new_with_properties
1291
1292 * GParameter and related APIs have been deprecated
1293
1294 * Bug fixes
1295  447907 enum/flags from string + type transform + tests
1296  668962 GUnixMountPoint/GUnixMountEntry not usable through gobject-introspection
1297  669355 gdbus-codegen output contains stray semicolons at file scope (forbidden in C99)
1298  674885 type initialisation deadlock in GObject
1299  698064 Add g_ptr_array_contains()
1300  709865 Add boxing to GParameter
1301  725894 build: Include gettext libraries for static compilation on Mac OS X
1302  734946 Implement GContentType on OSX
1303  741229 gio: Handle NULL cached properties in NetworkManager monitor
1304  745971 gdbus-tool: Add a command to wait for a well-known name on the bus
1305  755046 gfileutils: Add precondition checks to g_file_test()
1306  761102 Increase performance for main loop
1307  761889 GDateTime: %p does not always print AM/PM string
1308  766660 Please clarify the extent to which GInitable, GAsyncInitable must be idempotent
1309  769534 g_unix_signal_source_new does not support SIGWINCH
1310  772221 Take advantage of Unicode
1311  775879 g_log_default_handler should not check G_MESSAGES_DEBUG
1312  776169 various gio-tool fixes
1313  777961 Documentation for g_app_info_equals() could be clearer
1314  778049 race in gsource detected by TSan
1315  778207 gio-querymodules: fix memory leak
1316  778287 G_MODULE_EXPORT and -fvisibility=hidden
1317  779409 Fix false positive g_warning() in remove_filter()
1318  780066 g_base64_encode_close() in glib/gbase64.c produces invalid base64 encoding
1319  780095 g_utf8_get_char_validated() stopping at nul byte even for length specified buffers
1320  780306 Unused function in gunicollate.c for CARBON
1321  780310 g_tls_database_verify_chain doesn't set the GError for failures other than cancell...
1322  780384 gio/tests/contenttype fails on OS X: "public.directory" != "public.folder"
1323  780441 Make the portal implementation of g_app_info_launch() synchronous
1324  780634 Remove remaining old codepage ABI comapt code
1325  780908 gobject: remove duplicate GType sanity check
1326  780924 Memory leak in gdbusmethodinvocation.c
1327  781125 gio-tool: Fix errors format string
1328  781234 the buffer written to by g_input_stream_read is not marked as an out parameter
1329  781298 gfileutils.c:330:3: error: ISO C90 forbids mixed declarations and code
1330
1331 * Translation updates
1332  Catalan
1333  Friulian
1334  German
1335  Hebrew
1336  Indonesian
1337  Polish
1338  Russian
1339
1340
1341 Overview of changes in GLib 2.52.0
1342 ==================================
1343
1344 * Bug fixes:
1345  779799 gdatetime test fails with tzdata 2017a
1346  780032 Add missing attributes to two functions
1347  780144 gio/fam: Remove leftover debug print
1348
1349 * Translation updates:
1350  French
1351  Friulian
1352  Latvian
1353
1354
1355 Overview of changes in GLib 2.51.5
1356 ==================================
1357
1358 * OS X implementations of GContentType and GAppInfo
1359   have been added
1360
1361 * Bugs fixed:
1362  673047 gunicollate is broken on OS X (patch included!)
1363  734946 Implement GContentType on OSX
1364  747146 Implement GNotification on OSX
1365  769983 glib-mkenums generates non-reproducible Makefile snippets
1366  777203 gnulib license information is not correct in glib2.0
1367  778515 Crash in the gio kqueue backend
1368  779456 Make g_utf8_make_valid optionally take a length
1369
1370 * Translation updates:
1371  Danish
1372  Friulian
1373  German
1374  Hungarian
1375  Korean
1376  Lithuanian
1377
1378
1379 Overview of changes in GLib 2.51.4
1380 ==================================
1381
1382 * Memory leak fixes
1383 * Fix the released tarball
1384
1385
1386 Overview of changes in GLib 2.51.3
1387 ==================================
1388
1389 * Bugs fixed:
1390  771997 gchecksum: Add SHA-384 support
1391  778422 gsubprocesslauncher: Clarify the behavior of set_environ()
1392  778581 gdbus-codegen: Fix -Wconversion warning
1393  778801 gdbus-codegen: Add --outdir flag
1394  778991 Plug a mem leak in gdbusauth
1395  779183 g_io_extension_point_get_extensions should check for NULL pointer
1396
1397 * Translation updates:
1398  Basque
1399  Chinese (Taiwan)
1400  Danish
1401  Indonesian
1402  Italian
1403  Serbian
1404
1405
1406 Overview of changes in GLib 2.51.2
1407 ==================================
1408
1409 * Minimal support for UUIDs has been added
1410
1411 * A new file attribute, G_FILE_ATTRIBUTE_RECENT_MODIFIED has been added
1412   to improve sorting of recent files
1413
1414 * Bugs fixed:
1415  639078 UUID support feature request
1416  777135 gkeyfile: Be more specific about error codes in documentation
1417  777307 race condition between gdbus signal callback and g_bus_unwatch_name...
1418  777481 goutputstream: docs: fix typos
1419  777493 g_mkdtemp() not introspectable
1420  777507 Recent view sorting incorrectly
1421  777592 Add minor examples to GDBus and GVariant documentation
1422  778002 race in gdbusprivate.c detected by the ThreadSanitizer
1423  778096 race in gdbusconnection reported by TSan
1424
1425 * Translation updates:
1426  Norwegian bokmål
1427  Polish
1428  Simplified Chinese
1429  Slovak
1430  Spanish
1431  Swedish
1432
1433
1434 Overview of changes in GLib 2.51.1
1435 ==================================
1436
1437 * glib-compile-resources grew a --generate-phony-targets flag
1438
1439 * GLib now installs a valgrind suppressions file for GLib and GIO
1440
1441 * Bugs fixed:
1442  666114 should have infrastructure to run its tests under valgrind
1443  729730 GDBusMessage: Fix segfault if DEBUG_SERIALIZER is enabled
1444  730932 statically assert that reasonable assumptions about enums are true
1445  735731 gobject: Document behaviour of GType checking macros on NULL
1446  736810 gdbus: Fix leak in g_dbus_message_print()
1447  762283 GSocket – Fix race conditions on Win32 if multiple threads are waiting on cond...
1448  767609 Test suite problems
1449  767952 g_dbus_method_invocation_return_*, g_dbus_method_invocation_take_error: They d...
1450  769672 Assert threads for testcase 642026 are sucessfully created
1451  769745 gtask: Add guards for public functions
1452  770175 Add command line argument to mkenums and genmarshal to write output to a file
1453  770646 glib: Namespace global tapset variables by soname
1454  772160 Add g_unix_mount_for() support
1455  772989 Totem allows invalid urls that might cause segfault that's irrecoverable
1456  773823 gio: Bump copy buffer size to 256k by default
1457  774086 fix g_main_context_check declaration
1458  774368 Dependency file output of resource scanner breaks Ninja
1459  774421 Two minor patches
1460  774520 GSocket allocates and processes control messages even if not requested
1461  775309 Crash in gdbusauth
1462  775468 Improve log write supports color method on windows
1463  775510 testing with -fsanitize=undefined reports various undefined behaviour
1464  775517 Password input is echoed in the terminal
1465  775621 gmessages: Fix compilation on Android
1466  775765 FDO notification withdrawal backend sends wrong ID to the server
1467  775913 subprocesslauncher: potential infinite loop in verify_disposition()
1468  776198 Stray semicolon after g_variant_print() function in gvariant.c
1469  776586 License headers cleanup
1470  777077 Use of memory after it is freed
1471
1472 * Translation updates:
1473  Brazilian Portuguese
1474  Czech
1475  Galician
1476  German
1477  Hebrew
1478  Kazakh
1479  Lithuanian
1480  Spanish
1481  Swedish
1482
1483
1484 Overview of changes in GLib 2.51.0
1485 ==================================
1486
1487 * glib-genmarshal and glib-mkenums have gained --output options
1488   for better build system integration
1489
1490 * New API: g_utf8_make_valid
1491
1492 * Bugs fixed:
1493  591603 Make _g_utf8_make_valid public
1494  610969 Nice to have g_utf8_make_valid as public
1495  767882 Bit shift overflow (-Wshift-overflow) warning in gparam.h
1496  769135 External control for g_test_add/g_test_run
1497  769630 gfile: G_FILE_MONITOR_WATCH_MOVES was actually introduced in 2.46
1498  772160 Add g_unix_mount_for() support
1499  772221 Take advantage of Unicode
1500  773303 GApplication leaks option_strings 
1501
1502 * Translation updates:
1503  French
1504  Galician
1505  German
1506  Hungarian
1507  Lithuanian
1508  Norwegian bokmål
1509  Occitan
1510  Polish
1511  Slovak
1512  Turkish
1513
1514
1515 Overview of changes in GLib 2.50.1
1516 ==================================
1517
1518 * Update Unicode support to Unicode 9.0.0
1519
1520 * Bugs fixed:
1521  662946 gunixmounts monitoring doesn't work correctly with libmount
1522  771591 Update to Unicode 9.0.0
1523  772054 glib/gspawn-win32-helper.c: unexpected behavior re CommandLineToArgvW()
1524  772255 gresolver: Mark GResolver as an abstract class
1525  772269 Add --version options to glib-compile-resources and glib-compile-schemas
1526  772297 completion: Complete gsettings describe
1527  772511 g_log_default_handler crashes windows apps with "Unspecified fatal err...
1528
1529 * Translation updates:
1530  Brazilian Portuguese
1531  Catalan
1532  Croatian
1533  Czech
1534  Danish
1535  Hungarian
1536  Italian
1537  Latvian
1538  Polish
1539  Swedish
1540
1541
1542 Overview of changes in GLib 2.50.0
1543 ==================================
1544
1545 * Bugs fixed:
1546  771438 Turn on libmount by default on linux
1547         Fix the annotation for g_log_variant
1548
1549 * Translation updates:
1550  British English
1551  French
1552
1553
1554 Overview of changes in GLib 2.49.7
1555 ==================================
1556
1557 * Add g_log_variant, binding-friendly api for structured logging
1558
1559 Bugs fixed:
1560  646926 arg_data invalid after g_option_context_parse() fails
1561
1562 * Translation updates:
1563  Danish
1564  Finnish
1565  Galician
1566  German
1567  Hebrew
1568  Kazakh
1569  Korean
1570  Latvian
1571  Lithuanian
1572  Polish
1573  Portuguese
1574  Serbian
1575  Slovak
1576  Spanish
1577  Swedish
1578  Thai
1579
1580
1581 Overview of changes in GLib 2.49.6
1582 ==================================
1583
1584 * The gsettings commandline tool now has a describe command
1585
1586 Bugs fixed:
1587  745754 Add gcc-style dependency output to glib-compile-resources
1588  769076 Fix warning: attempt to override closure->va_marshal with new marshal
1589  770372 gdbus-codegen: Strip @since parameters before comparison
1590
1591 Translation updates:
1592  Brazilian Portuguese
1593  Czech
1594  German
1595  Hungarian
1596  Polish
1597  Portuguese
1598  Spanish
1599
1600
1601 Overview of changes in GLib 2.49.5
1602 ==================================
1603
1604 * Structured logging:
1605  - drop libsystemd dependency
1606  - document that g_test_expect_message does not work with structured logs
1607
1608 * Use libmount for unix mount support
1609
1610 * Add an async variant of g_app_info_launch_default_for_uri
1611
1612 Bugs fixed:
1613  522053 GUnixMountMonitor needs to use /proc/self/mountinfo on recent Linux
1614  682794 Add usage guidance to logging documentation
1615  744456 Structured logging API
1616  766370 Add a macro for initializing g_auto(GVariantBuilder)
1617  767240 Regex failures with pcre 8.38
1618  768198 Can't build glib with systemtap enabled
1619  768453 Gdbus test: compilation fails due to -Werror=format-y2k errors
1620  768752 Add async variant of g_app_info_launch_default_for_uri
1621  769027 Docs misleadingly imply G_CHECKSUM_SHA512 is available since 2.16
1622  769029 gmessage: compiler complains about -Wformat-nonliteral
1623  769042 'O_CLOEXEC' undeclared (first use in this function)
1624  769087 gmessages: support NULL log domain
1625  769089 Fix gsettings uint64 testcase
1626  769104 Build failure when using _GLIB_CHECKED_ADD_U32 with the Intel compiler
1627  769139 g_log_writer_journald uses non-standard 'htole64' function
1628  769238 memory increases every time I umount and mount my secondary hard disk.
1629  769245 is_valid_heap_iter define misses NULL pointer check
1630  769507 gmessages: Don’t require is_journald() call before writer_journald()
1631  769785 gmessages: Expand documentation further for structured logging
1632  769995 gdbus-codegen: Allow '@since: UNRELEASED' in documentation comments
1633
1634 Translation updates:
1635  Catalan
1636  Hebrew
1637  Lithuanian
1638  Slovak
1639  Spanish
1640
1641
1642 Overview of changes in GLib 2.49.4
1643 ==================================
1644
1645 * Change the just-introduced structured logging API. The arguments
1646   of g_log_structured() had to be reordered to enable an implementation
1647   within the limits of what the standards guarantee about var args.
1648
1649 Bugs fixed:
1650  744456 Structured logging API
1651  768936 gio doc build fails because of missing gio.xml in the tarballs
1652  768963 improper va_list use in g_log_structured()
1653  768968 gio/tests/socket-listener hangs since e4ee307
1654
1655 Translation updates:
1656  Spanish
1657
1658
1659 Overview of changes in GLib 2.49.3
1660 ==================================
1661
1662 * GLib has a structured logging API, g_log_structured, with support
1663   for writing to the systemd journal. It also supports colored output
1664   in terminals
1665
1666 * Some new GBytes API has been added:
1667  - g_key_file_load_from_bytes
1668  - g_compute_hmac_for_bytes
1669
1670 * Stack-allocated GVariantBuilder and GVariantDict objects can now be
1671   initialized with G_VARIANT_BUILDER_INIT and G_VARIANT_DICT_INIT
1672
1673 * gio:
1674  - Add a way to register handlers for custom uri schemes
1675  - Add a G_FILE_ATTRIBUTE_FILESYSTEM_REMOTE attribute to
1676    have these heuristics in a single place
1677  - Include a gio tool that makes the functionality of the
1678    various gvfs commandline tools available in a single place
1679  - Add portal support to g_app_info_launch_default_for_uri
1680  - Add portal support to GNetworkMonitor
1681  - Add portal support to GProxyResolver
1682  - Add portal support to g_application_send_notification
1683
1684 Bugs fixed:
1685  547200 g_utf8_find_next_char() issues
1686  662802 systemtap multiarch issue
1687  723506 fork/exec from non-main thread when autolaunching could be avoided...
1688  725902 build: simplify dtrace configuration
1689  728207 gsocketservice: Documentation does not mention that is already act...
1690  729914 instead of DEBUG_CODE and IF_DEBUG, provide a common macro to supp...
1691  744456 Structured logging API
1692  744678 Unable to delete relocatable schemas
1693  746685 clarify that g_variant_get_data() can be used instead of g_variant...
1694  747134 glib-compile-resources --generate should detect common C++ file ex...
1695  750257 GSettings changed signal should clearly state the order required
1696  753231 Memory is potentially used after free
1697  754012 missing filename in "Error loading css: Failed to import: Error op...
1698  760115 gtestutils: add missing dash in seed argument's --help documentation
1699  760423 gio-querymodules prints error messages as question marks on some l...
1700  761102 Increase performance for main loop
1701  765338 GLib.compute_hmac_for_data throws every time
1702  766370 Add a macro for initializing g_auto(GVariantBuilder)
1703  766899 Superflous HTML/XML comments in GDBusProxyTypeFunc documentation s...
1704  766933 GSocketAddress leaks in gnetworkmonitornetlink.c:read_netlink_mess...
1705  767765 Add names and tags to various GSources and GTasks constructed in GLib
1706  767880 gkeyfile: add g_key_file_load_from_bytes() API
1707  767887 vfs: add g_vfs_register_uri_scheme()
1708  767949 [patch] Typos in glib docs
1709  768029 infinite loop in parse_name_internal()
1710  768119 Fix fallout from get_supported_schemes() changes
1711  768357 Build the gio tool on Windows/MSVC
1712  768498 portal support for glib
1713  768504 keyfile: g_key_file_get_double behavior doesn't follow documentation
1714  768549 Test failure: test_ip_sync_dgram
1715  768551 Test failure: test_socket_address_to_string
1716  768560 gio/tests/gsettings: fix GSettings reference leaks in some tests
1717  768780 O_PATH is a non-standard flag which may be unavailable on non-Lin...
1718  768806 gdbus tool must swallow -- argument
1719
1720 Translation updates:
1721  Chinese (Taiwan)
1722  French
1723  Hebrew
1724  Indonesian
1725  Lithuanian
1726  Portuguese
1727  Spanish
1728
1729
1730 Overview of changes in GLib 2.49.2
1731 ==================================
1732
1733  * GMainContext and GTask have gained more systemtap probes
1734
1735 Bugs fixed:
1736  673101 resource compiler dependency generation not working for gen...
1737  700756 GFile.new_for_path arguments misses (type filename) annotation
1738  730187 glocalfileoutputstream: Fix an FD leak in an error path
1739  755439 Memory leak in gdbusproxy.c
1740  759813 Add more SystemTap/DTrace probes for main context and GTask
1741  761810 gio: Support using GDBusObjectManagerServer at path ‘/’
1742  767172 docs: Move GIO_USE_VFS to "okay for production" section
1743  767218 Remove a UTF-8 ellipsis from gsignal.h
1744  767245 Add filename type annotations
1745  767824 Some UTC timezones incorrectly recognized on Windows 7
1746
1747 Translation updates:
1748  Occitan
1749
1750
1751 Overview of changes in GLib 2.49.1
1752 ==================================
1753
1754  * GDesktopAppInfo now allows bus activation with dashes. This is
1755    not technically allowed per the Desktop Entry specification, but
1756    it happens in the wild. Rather than forcing people to go through
1757    another traumatic desktop file rename, accept it and translate - to _.
1758
1759  * The support for giving names to threads has been improved. Thread names
1760    are now supported on Solaris as well, and the Linux support no longer
1761    uses prctl() but the pthread api.
1762
1763  * GIO resources can now be overridden at runtime, using the G_RESOURCE_OVERLAYS
1764    environment variable.
1765
1766  * gdbus-codegen can now generate autocleanup definitions for the types
1767    it generates. Use the --c-generate-autocleanup option to control this
1768
1769 Bugs fixed:
1770  665446 Use g_abort() instead of abort()
1771  731988 glocalfile: Avoid a potential NULL pointer dereference
1772  742898 g_value_type_transformable() description differs from the code
1773  747107 GVariant varargs documentation: g_variant_get() example
1774  747478 g_system_thread_set_name() is not implemented for gthread-win32
1775  748474 g_get_language_names() is not thread-safe
1776  748530 gthread: W32 implementation of g_get_num_processors() has lame fallback
1777  748806 GVariant: Better introduction to the concepts and its uses
1778  749583 GSequence performance improvements
1779  749606 tests: always remove app.desktop
1780  755898 [PATCH] settings: add get/set uint64
1781  758174 Fix documentation typos
1782  758738 Usage of GType properties causes crashes due to gulong/gpointer mismatch
1783  760186 namespace clash with gdb pretty-printing code
1784  762994 Race condition in GIO/AppFileChooser crashes Firefox/Gtk3
1785  763379 codegen: Add support for g_autoptr to gdbus-codegen–generated objects
1786  763821 build: Also dist Systemtap files always for gobject/
1787  764092 gstrfuncs: Document the behaviour of g_strjoinv()
1788  764163 g_task_had_error doesn't remember the error after g_task_propagate_*
1789  764415 Very High CPU usage in g_poll() Windows implementation
1790  764574 build: Fix all statfs() tests failing
1791  764575 tests: Fix compilation errors due to Y2K format problems
1792  764685 GApplication documentation about handling command-line options is confusing
1793  764754 '-' in application id: unbreak bus activation and notifications
1794  765173 documentation of g_main_context_push_thread_default() regarding GIO...
1795  765668 GResources: add support for resource overlays
1796  765710 gdbus-tool: only print note about expected argument types if that...
1797  765712 tests: Fix compilation
1798  765861 task: avoid context lock when setting source name
1799  765900 Add g_drive_is_removable() support
1800  765924 Improve external drives detection
1801  765959 socket: set fd field to -1 after closing socket
1802  765990 Visual Studio: Define inline only when necessary
1803  765991 Compilation of gresource.c is broken due to S_ISDIR
1804  766092 Incorrect locale handling in g_date_time_format_locale()
1805  766211 Fix the upper bound in g_unichar_iswide_bsearch
1806  766407 Some build-related defects in glib testsuite
1807  766570 build: Fix a misnamed variable in glib-tap.mk
1808
1809 Translation updates:
1810  Basque
1811  Catalan
1812  Chinese
1813  Occitan
1814  Portuguese
1815  Turkish
1816  Vietnamese
1817
1818
1819 Overview of changes in GLib 2.48.0
1820 ==================================
1821
1822  * a minor build fix in the name of determinism
1823
1824  * a few coverity fixes
1825
1826 Bugs fixed:
1827  763617 giotypefuncs.c: Sort _get_type functions in the 'C' locale
1828
1829 Translations updated:
1830  Danish
1831  Italian
1832
1833 Overview of changes in GLib 2.47.92
1834 ===================================
1835
1836  * gdbus-codegen now supports g_autoptr()
1837
1838  * g_get_user_runtime_dir() now reliably returns an existing directory
1839
1840  * g_array_remove_range() can now remove 0 items from the end of an array
1841
1842  * Many fixes for Windows
1843    * build fixes
1844    * file monitoring
1845    * gsettings backend
1846    * streams
1847    * random numbers
1848    * wide character support
1849
1850  * documentation improvements
1851
1852  * other small bugfixes
1853
1854 Bugs fixed:
1855  724847 Segmentation fault on "gsettings list-recursively"
1856  743933 gapplication: add --app-id command line option
1857  756706 [PATCH] gio/gtestdbus.c: don't use non-standard %m printf modifier
1858  757506 gsettings: schema_list should use the passed schema's source
1859  760694 W32: Apps linked with -mwindows make cursor busy sometimes
1860  762202 g_win32_error_message improvements
1861  762637 build: Unconditionally dist tapset files
1862  762748 Undefined behavior
1863  762937 Mention that g_clear_error can be used with an "empty" GError
1864  763339 array: Support clearing an empty array with g_array_remove_range()
1865  763344 g_get_user_runtime_dir(): ensure directory exists
1866  763379 codegen: Add support for g_autoptr to gdbus-codegen–generated objects
1867
1868 Translations updated:
1869  Brazilian Portuguese
1870  Czech
1871  Finnish
1872  French
1873  Galician s
1874  German
1875  Greek
1876  Hebrew
1877  Hungarian
1878  Italian
1879  Kazakh
1880  Korean
1881  Latvian
1882  Lithuanian
1883  Occitan
1884  Polish
1885  Russian
1886  Serbian
1887  Slovak
1888  Slovenian
1889  Spanish
1890  Swedish
1891
1892 Overview of changes in GLib 2.47.6
1893 ==================================
1894
1895 * Windows usupport:
1896  - Fixes and improvements to the GSettings registry backend
1897  - Handle readability and writability of registry keys
1898  - Use Unicode registry APIs
1899
1900 * Bugs fixed:
1901 760852 744772 761126 747927 761337 744570 761504 761550 761843
1902  744570 GString is missing (transfer none) annotations on many of its methods
1903  744772 systemtap and gdb scripts install in wrong place
1904  747927 Documentation: various small improvements
1905  760852 gdbusobjectmanagerserver: Clarify recommended ObjectManager paths
1906  761126 winiconv: update to upstream version
1907  761337 Fix some annotations
1908  761504 W32 registry GSettings backend does not use Unicode
1909  761550 Cannot build with default flags under Fedora rawhide (-Werror=format-...
1910  761843 gmacros.h is testing attributes with __has_feature (when compiling wi...
1911
1912 * Translation updates:
1913  Brazilian Portuguese
1914  Bulagarian
1915  Chinese (Taiwan)
1916  Hungarian
1917  Polish
1918  Slovak
1919  Slovenian
1920  Spanish
1921  Swedish
1922
1923
1924 Overview of changes in GLib 2.47.5
1925 ==================================
1926
1927 * the system copy of PCRE is now used by default to implement GRegex.
1928   Configure with --with-pcre=internal if a system PCRE version
1929   is unavailable or undesired.
1930
1931 * interfaces for DTLS support have been added.  A new version of
1932   glib-networking will also be required.
1933
1934 * GDBusMethodInvocation now drops replies if the sender set the
1935   NO_REPLY_EXPECTED flag
1936
1937 * several GApplication fixes, including fixes for commandline arguments
1938   in interpreted languages on Windows
1939
1940 Bugs fixed:
1941  624186 Deprecate glib-gettext macros
1942  734095 gtk-demo.py of PyGObject fails to run on Windows (and likely other binding scripts using g_application_run())
1943  735754 Implement close on TLS GOutputStream
1944  748064 gnulib vfprintf returns desired (not actual) number of bytes, ignores errors
1945  752240 Add DTLS support to GIO
1946  755421 GDBus ignores NO_REPLY_EXPECTED flag in messages, leading to warnings on system bus
1947  756875 Include ntdef.h for NTSTATUS
1948  759554 g_application_run() calls g_main_context_default() repeatidly
1949  760199 gsettings: Install gettext ITS rules
1950  760215 G_LIKELY/_UNLIKELY macros need more parentheses
1951  760683 regex test: Check the expected PCRE exceptions at runtime
1952
1953 Translations updated:
1954  Brazilian Portuguese
1955  Czech
1956  German
1957  Lithuanian
1958  Swedish
1959
1960 Overview of changes in GLib 2.47.4
1961 ==================================
1962
1963 * The GApplication documentation has been improved in several areas.
1964
1965 * Bugs fixed:
1966  749092 gdb pretty-printers fail on Python 3 with a TypeError...
1967  757374 macros: clean up "inline" mess
1968  758641 Memory leak in g_dbus_proxy_new_for_bus_sync()
1969  759134 Add missing checks for gnulib vasnprintf()
1970  759408 Do not use uninitialized var 
1971  756475 Stop supporting non-POSIX getpwuid_r, getgrgid_r
1972  757372 GApplication: destroy the impl on shutdown
1973  728099 macros: add G_GNUC_CHECK_VERSION() for compiler checks
1974  757299 glib-compile-resources: do not leak c_name
1975  758553 Fix gettext use
1976  758823 file monitors: reorder some code to avoid segfault
1977  756214 gsettings: Don't translate ""
1978  710243 Add GParamSpec object ref management annotations
1979  735696 xdgmime: Finer handling for cases where mmap() is not available
1980  752983 gapplication: Acquire the main context before running
1981
1982 * Translation updates:
1983  Swedish
1984
1985
1986 Overview of changes in GLib 2.47.3
1987 ==================================
1988
1989 The inline cleanup in the last release accidentally removed three
1990 symbols from libglib-2.0.so.  It is unlikely that this will have caused
1991 any problems because these symbols were only backup symbols for
1992 definitions exported as inlines in the header files, but ABI is ABI.
1993
1994 This release corrects only this problem.
1995
1996 Overview of changes in GLib 2.47.2
1997 ==================================
1998
1999 * We have formalised the assumption that all compilers that are
2000   interested in support 'static inline' and simplified the macros around
2001   this considerably.  Please watch for and report unintentional fallout.
2002
2003 * New API: hardware-assisted helpers for overflow-checked integer math.
2004
2005 * other fixes
2006
2007 Bugs fixed:
2008  696324 gtester-report doesn't work with Python 3.x
2009  719966 glib: Add missing (nullable) and (optional) annotations
2010  752837 gobject and glib-compile-resources rely on .CRT$XCU section, no longer works with Win 10 UCRT (VS 2015)
2011  755364 make gtkdoc-check happy again
2012  756134 Segmentation fault on calling g_simple_action_group_add_action with bad action constructor call
2013  756179 gwin32.c: Replace VerifyVersionInfoW() with RtlGetVersion() due to API deprecation
2014  756988 GSequence should document each function's complexity
2015  757294 Move G_POLLFD_FORMAT to glibconfig.h
2016  757374 macros: clean up "inline" mess
2017  757451 doc: fix g_task_attach_source() example
2018  757628 gio tests fail to build when cross compiling 2.46.1
2019  757693 Invalid free in g_local_file_trash()
2020  757742 Fix up annotations in ghash.c
2021  758181 GTask: fix wrong example code
2022
2023 Translations updated:
2024  Greek
2025  Hebrew
2026  Hungarian
2027  Norwegian bokmål
2028  Portuguese
2029  Scottish Gaelic
2030  Simplified Chinese
2031  Spanish
2032
2033 Overview of changes in GLib 2.47.1
2034 ==================================
2035
2036 * The Unicode support has been updated to version 8.0 of the Unicode standard
2037
2038 * GDesktopAppInfo no longer sets the DISPLAY environment variable when
2039   launching apps. This is now done in the GAppLaunchContext implementations
2040   when appropriate
2041
2042 * Bug fixes:
2043  664740 Key-value file parser, space after integer
2044  687223 cleverer GThreadPool management
2045  692085 stderr and stdout are not always file descriptors 1 and 2
2046  697907 Add interface for socket-like things (GSocket, DTLS, etc)
2047  735754 Implement close on TLS GOutputStream
2048  737116 Add functions to print GSocketConnectables and addresses as strings
2049  743011 Minor additions to GError documentation
2050  749161 undefined reference to `__imp__stat32i64'
2051  749314 Cannot restore a just-trashed file
2052  751924 Add recvmmsg()-like API on GSocket
2053  752240 Add DTLS support to GIO
2054  752837 gobject and glib-compile-resources rely on .CRT$XCU section, no longer...
2055  753310 Remove `#pragma GCC system_header` from gmessages.h
2056  753935 Update example namespace and class names in GObject tutorial
2057  754855 Object instantiation documentation refers to example that no longer ex...
2058  754983 Wayland: g_desktop_app_info_launch_uris_with_spawn() forces DISPLAY va...
2059  754994 g_date_time_get_second () sometimes returns an off-by-one result
2060  755083 Clarify in G_ADD_PRIVATE that it is safe to call _get_instance_private...
2061  755351 Example still contains g_autoptr(gchar)
2062  755355 Move GStrv to glib.h so it can be used with g_auto()
2063  755374 g_variant_get_child(): flatten-first logic on '&'
2064  755496 glib 2.46 fails GStreamer test suite
2065  755609 glib 2.46.0 breaks Sun Java JVM 1.8.0.60
2066  755766 gvalue: The g_auto cleanup function assert if value is G_VALUE_INIT
2067  755795 2.46 considers empty files as octet-stream rather than text (leads to...
2068  755961 Fix up annotations in gbytes.c
2069  756053 MSVC doesn't understand the symbol 'msghdr'
2070  756054 MSVC linker error due to 'g_socket_send_message_with_timeout()'
2071  756077 testutils: remove internal ABI comment
2072  756099 g_main_context_query(): Annotate @n_fds as (in) parameter
2073  756139 musl: ctors called in the wrong order
2074  756179 gwin32.c: Replace VerifyVersionInfoW() with RtlGetVersion() due to AP...
2075  756251 The documentation of G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START is confusing
2076  756255 GOutputStream swallowing errors in splice with G_OUTPUT_STREAM_SPLICE...
2077  756316 GSequence should provide fast api to check if empty
2078  756382 snprintf used on Windows with VS2015 doesn't support %n
2079  756477 gio/gthreadedresolver.c has outdated copy of bionic headers (for android)
2080  756550 gtypes.h: Make G_MININTn literals negative
2081  756875 Include ntdef.h for NTSTATUS
2082  756952 giomodule: return a copy of module name
2083
2084 * Translation updates:
2085  Basque
2086  Czech
2087  Serbian
2088  Serbian Latin
2089  Vietnamese
2090
2091
2092 Overview of changes in GLib 2.46.0
2093 ==================================
2094
2095 * Disable runtime-deprecation warnings
2096
2097 * Fix marshalling of flags on bigendian 64bit architectures
2098
2099 * Translation updates
2100  Brazilian Portuguese
2101  Danish
2102  German
2103  Latvian
2104  Russian
2105  Turkish
2106
2107
2108 Overview of changes in GLib 2.45.8
2109 ==================================
2110
2111 * utf8 validation and utf8-to-ucs4 conversion are faster
2112
2113 * Small speedups to property change notification
2114
2115 * Various other small optimizations for GQuark, GData
2116
2117 * Bugs fixed:
2118  696426 GParamSpecTypeInfo do not need to be static
2119  735429 Cleanup MSVC Project Files Generation
2120  738504 Optimize UTF-8 decoding by unrolling branches and expressions
2121  742903 Add missing (transfer) annotation to GString
2122  748633 g_set_object order of operations
2123  754431 Fix build of glib/gstrfuncs.c on Windows
2124  754560 gioerror: Add more mappings for WinSock error codes
2125  754582 Glib cannot compile
2126  754601 Make g_strerror work with non-glibc POSIX systems
2127  754636 tests/unicode-encoding test fails for glib 2.45.7 on x86-64
2128  754788 more g_strerror stuff
2129  754831 autocleanups: Add GString type
2130  754924 Improve test coverage of g_utf8_validate() by added known-...
2131  754986 Avoid unnecessary signal emission during draw
2132
2133 * Translation updates:
2134  Italian
2135  Kazakh
2136  Korean
2137  Lithuanian
2138  Slovenian
2139  Swedish
2140
2141
2142 Overview of changes in GLib 2.45.7
2143 ==================================
2144
2145 * Add G_FILE_ATTRIBUTE_STANDARD_IS_VOLATILE for use by non-POSIX-like
2146   backends (e.g. cloud storage).
2147
2148 * GFileMonitor: Make the inotify backend work with atomic renames again
2149
2150 * GSettings: change notification is again working unconditionally
2151
2152 * GListStore has a sort function now
2153
2154 * Test infrastructure:
2155  - Tests are now required to have unique names
2156  - TAP support has been improved
2157  - A macro for asserting that two memory regions have identical content
2158    has been added
2159
2160 * Bugs fixed:
2161  708525 A "g_file_query_info" on the file path "/sys/kernel/debug/hid"...
2162  742849 inotify: send paired events to both sides
2163  744060 Update GObject tutorial documentation to use G_DECLARE_FINAL_T...
2164  747364 Fix GError leak in g_file_query_writable_namespaces()
2165  749492 Support file creation time on FreeBSD and NetBSD
2166  752769 (g_socket_receive_message | g_socket_send_message) performance
2167  753745 glib-genmarshal still needed for cross-compilation
2168  754152 Add g_list_store_sort
2169  754211 Memory leak in g_file_enumerator_iterate ()
2170  754264 GLib 2.44 certificate chain construction fails if the PEM incl...
2171  754283 gtestutils: add g_assert_cmpmem()
2172  754284 gtestutils: print the TAP test plan first, not last
2173  754286 misc gtestutils fixes
2174  754307 size of array '_GStaticAssertCompileTimeAssertion_3387' is neg...
2175
2176
2177 * Translation updates:
2178  Chinese (Taiwan)
2179  French
2180  Galician
2181  Greek
2182  Hebrew
2183  Hungarian
2184  Indonesian
2185  Polish
2186  Portuguese
2187
2188
2189 Overview of changes in GLib 2.45.6
2190 ==================================
2191
2192 * Fix a test failure and a build failure
2193
2194 Overview of changes in GLib 2.45.5
2195 ==================================
2196
2197 * GNetworkMonitor now provides information about metered networks
2198
2199 * g_mem_set_vtable has been deprecated; it has not been working for
2200   quite a while. The recommendation is to use valgrind, or replace
2201   malloc itself.
2202
2203 * Bugs fixed:
2204  656325 Make GDBusInterfaceVTable binding friendly
2205  741779 Documentation tweaks addressing real-world API misuses
2206  741822 Fails to build with VS 2015
2207  742386 gdbusconnection: Don't g_printerr() when exiting
2208  743018 gobject: Add more cross-links between documentation pages
2209  750282 Add g_network_monitor_get_network_metered() to get if the connection...
2210  751358 GFileMonitor doesn't react to "mv some-file watched-file"
2211  751592 Stop using GMemVtable
2212  751598 Stop 'handle-local-options' propagation when callback reports an err...
2213  751610 g_str_hash produces collisions with strings of length 2
2214  751751 Wrong docs of g_async_queue_remove
2215  752210 gdbus command crashes with SIGSEGV
2216  752656 gdbusconnection: Fix signal subscription documentation
2217  752767 Fix typo in g_hash_table_replace() documentation
2218  753278 gdbus: Don't use g_assert_no_error() GDBusObjectManagerServer
2219  753285 g_menu_item_set_icon fails if called with NULL icon
2220
2221 * Translation updates:
2222  Catalan
2223  Czech
2224  French
2225  Indonesian
2226  Lithuanian
2227  Norwegian bokmål
2228  Slovak
2229  Spanish
2230  Thai
2231  Turkish
2232
2233
2234 Overview of changes in GLib 2.45.4
2235 ==================================
2236
2237 * Bugs fixed:
2238  727829 win32: glibconfig.h.win32 updates
2239  741901 Clang cannot know that g_error don't return
2240  746339 GSocket kills process when fd is not a socket
2241  747676 gio/tests/socket fails: test_fd_roundtrip
2242  748610 Some tests fail with non-English locales
2243  749911 g_inet_address_to_string broken on XP/2003
2244  749912 g_inet_address_new_from_string broken on XP/2003
2245  750625 Should dismiss Software Updates Available notification after...
2246  750807 G_BREAKPOINT doesn't work as intended on Darwin
2247  751160 gtask does unnecessary work
2248  751672 -Wduplicate-decl-specifier in glib/tests/keyfile.c
2249  751731 GFile/DirectoryMonitor emit move events with other_file=NULL
2250  751737 gio/tests/appmonitor test fails in 2.45.3
2251  751798 Wrong enum type used in some test-cases
2252  752089 make gsocketservice::active a property
2253  752293 small cleanup: use list_free_full
2254
2255 * Translation updates:
2256  Greek
2257  Hebrew
2258  Portuguese
2259
2260
2261 Overview of changes in GLib 2.45.3
2262 ==================================
2263
2264 * Improve performance of g_signal_handler_disconnect for signals
2265   with many handlers
2266
2267 * GDBus has gained a new call flag to allow interactive authorization
2268
2269 * GSettings:
2270  - New API: g_settings_schema_list_keys
2271  - Deprecated: g_settings_list_keys
2272
2273 * OS X:
2274  - Implement GNotification
2275  - Bump the OS X requirement to 10.9
2276
2277 * Windows:
2278  - Add registry reading API
2279  - Reimplement GAppInfo using registry information
2280
2281 * Bugs fixed:
2282  666831 Support URI opening on W32
2283  728489 property action with inverted boolean state
2284  730168 Incorrect annotation on g_action_group_get_action_state_type return...
2285  733325 Several regex tests fail with pcre3 8.35
2286  734888 GLib has no helper functions to work with W32 Registry
2287  737009 signal handler lookup doesn't scale
2288  738185 Misleading language about "file name encoding" in the docs on g_env...
2289  738504 Optimize UTF-8 decoding by unrolling branches and expressions
2290  739122 glib not handling -1 return ("no limit") from sysconf (_SC_THREAD_S...
2291  739424 gnome-shell crashes when files are added, deleted, or modified in $...
2292  739616 DBus; Add new call flag to allow interactive authorization
2293  740308 Add g_settings_schema_list_keys() method
2294  740516 RFE: please provide an introspectible version of g_log_set_handler
2295  741788 Document GSettings build system integration
2296  745013 GBinding not thread safe
2297  747146 Implement GNotification on OSX
2298  747941 try XDG_RUNTIME_DIR/bus before falling back to X11 autolaunch (dbus...
2299  748727 Filechooser dialog shows no icons for directories on W32
2300  749693 GActionGroupExporter: flush queue on requests
2301  750203 GNetworkMonitorNetlink hangs in user namespace
2302  750322 gapplication: Make sure --help output is translated
2303  750344 GTlsInteractionClass is missing from doc
2304  750369 Various GBinding cleanups
2305  750386 Race condition in g_io_condition_get_type
2306  750399 Typo "equilalent" in glib documentation's glib-Error-Reporting.html...
2307  750573 GTlsDatabaseClass is not documented
2308  750918 genmarshal: silence register storage class warnings
2309  751122 gsocket: avoid unnecessary g_socket_cond_wait() in _send_messages()
2310  479730 The "g_key_file_set_comment" interface prepends '#' character to...
2311
2312 * Translation updates:
2313  Hungarian
2314  Spanish
2315
2316
2317 Overview of changes in GLib 2.45.2
2318 ==================================
2319
2320 * Improve error reporting in glib-compile-schemas.
2321
2322 * Add introspection annotations to GListStore.
2323
2324 * Bugs fixed:
2325  696749 win32 : failed to compile because of careless mistake in the code
2326  723394 const parameter to GtkPopover gtk_popover_set_pointing_to
2327  724113 gdbus-connection-loss test can fail on slow machines
2328  725981 tap-driver.sh: internal error getting exit status
2329  733325 Several regex tests fail with pcre3 8.35
2330  744895 Unknown or unsupported transport 'this-should-not-be-used-and-will...
2331  747882 gtype: Bump allowed number of children
2332  748534 gtest: if a subprocess assertion fails, print its stdout and stderr
2333  748612 de_DE locale used in option-context test is not supported by FreeBSD
2334  748614 Double unref in g_socket_listener_add_inet_port
2335  748834 glocalfilemonitor: Emit notification on rate limit change
2336  749079 gdbus-peer test: TCP tests can fail with ECONNRESET due to a race...
2337  749080 gdatetime test: fails if close to rollover between seconds
2338  749180 gnetworkaddress: add return type annotation to parse methods
2339  749352 g_binding_unbind() fails when source is also the target
2340  749353 GBinding does not connect to the detailed notify signal
2341
2342 * Translation updates:
2343  Catalan
2344  French
2345  Slovak
2346  Thai
2347
2348
2349 Overview of changes in GLib 2.45.1
2350 ==================================
2351
2352 * The GSettings schema compiler, glib-compile-schemas has been changed
2353   to reject schema xml that has duplicate <summary> or <description>
2354   elements. Such elements typically occur when translations are merged
2355   into the schema, with xml:lang attributes. This is not the correct
2356   way to translate schemas. Instead keep the translations in the .mo
2357   file and set the gettext-domain attribute on the <schemalist> element.
2358
2359 * The file monitoring infrastructure has been rewritten, and all backends
2360   have seen major improvements.
2361
2362   The inotify backend is reporting events with less delay (no event will
2363   be delayed more than 10ms) and wakeups due to file monitoring have been
2364   significantly reduced. A CHANGES_DONE event will also be sent when new
2365   files appear.
2366
2367   The poll implementation is now using the thread default main context.
2368
2369   The fam implmentation is now running in the worker thread.
2370
2371   The fen implementation has been removed, since it was unmaintained.
2372
2373 * The GSettings schema compiler, glib-compile-schemas, is more strict
2374   about rejecting schemas with xml:lang style merged translations.
2375   Schema translations should be done by specifying the gettext domain
2376   in the xml, and keeping the translations in gettext. To avoid breaking
2377   already-installed schemas, this change is only taking effect when
2378   you use the --strict option.
2379
2380 * The hardcoded 10-thread limit of GTask's thread pool has been removed,
2381   since it was prone to causing deadlocks. The thread pool is now allowed
2382   to grow dynamically and will shrink back over time.
2383
2384 * GSimpleAsyncResult has been deprecated in favor of GTask.
2385
2386 * The algorithm used by GAppInfo to find default handlers for mime types
2387   has been tweaked to prefer apps that handle the specific subtype over
2388   default handlers for a generic supertype.
2389
2390 * Bug fixes:
2391  627285 inotify file monitor hardwired delay
2392  631597 Segmentation fault in append_escaped_text
2393  661767 merge/improve various bits of run-in-thread functionality
2394  687223 cleverer GThreadPool management
2395  711547 win32: silence some build warnings
2396  719966 glib: Add missing (nullable) and (optional) annotations
2397  726447 Possibly an error in text string
2398  728663 W32: wrong stat struct is used when built with MinGW-w64
2399  728669 W32: GLocalFile can't measure size of files larger than 2^32...
2400  730188 gsocket: Document FD ownership with g_socket_new_from_fd()
2401  733325 Several regex tests fail with pcre3 8.35
2402  738207 Add a way to set SO_SENDBUF and SO_RECVBUF on listener (and...
2403  739850 GClosure: add valgrind hints
2404  741791 gmain: Save errno when handling unix signals
2405  744282 gvfs-open for application/x-virt-viewer changed behaviour bet...
2406  745255 Add support for copying sessions between GTlsClientConnections
2407  745745 gdbus: fix out-of-bound array access
2408  745821 Don't use __alloc_size__ attribute with clang
2409  746749 GLib-GIO:ERROR:inotify-kernel.c:327:ik_source_dispatch: ass...
2410  746753 Glib-compile-resources --generate-header not using ".h" as ...
2411  747209 glib-compile-schemas ought to reject repeated <summary> and...
2412  747349 Conversion of gdbus to use GTask causes deadlocks
2413  747363 gatomic: Add missing new line in API doc comment
2414  747472 Don't ignore already-installed schemas with multiple <summa...
2415  747541 gdbus segfaults with invalid --dest
2416  747772 Having hardcoded utf8 strings in the source code does not p...
2417  748019 gsocketconnection: Fix copy-pasto in documentation
2418  748177 not all test schemas are distributed, "make distcheck" fails
2419
2420 * Translation updates:
2421  Basque
2422  Czech
2423  Danish
2424  Finnish
2425  German
2426  Hebrew
2427  Icelandic
2428  Norwegian bokmål
2429  Russian
2430  Turkish
2431
2432
2433 Overview of changes in GLib 2.43.92
2434 ===================================
2435
2436 GLib is now considered frozen.  We do not expect any major changes
2437 before the release of 2.44.0.
2438
2439  * GUnixMountMonitor now properly supports multiple main contexts
2440
2441  * many documentation improvements and cleanups.  We are now
2442    approaching a point where the documentation is 100% complete and the
2443    xml will build without warnings.  This will probably be enabled by
2444    default in the next cycle.
2445
2446  * new support for HTTP proxies in GIO
2447
2448  * new GTask:completed property
2449
2450  * use "private" futexes in order to further improve the performance of
2451    the contended case of GMutex and g_bit_lock()
2452
2453 Bugs fixed:
2454  614684 Make various parts of GObject const-correct
2455  730352 Use inet_pton(), if_nametoindex() and if_indextoname() for newer versions of Windows
2456  733876 Proxy protocol 'http' is not supported.
2457  741442 threads: use FUTEX_WAIT_PRIVATE and FUTEX_WAKE_PRIVATE if possible
2458  742599 Clean up GUnixMountMonitor
2459  743636 gtask: Add a GTask:completed property
2460  743661 g_win32_check_windows_version() is missing from doc
2461  744722 docs: Expand introduction to mention using async calls over sync ones
2462  745589 [Patch] gio: add some missing autocleanup
2463  745634 [GNotifications] Use themed icon as icon-name
2464
2465 Translations updated:
2466  Bosnian
2467  Bulgarian
2468  Catalan
2469  Czech
2470  French
2471  German
2472  Greek
2473  Hungarian
2474  Italian
2475  Kazakh
2476  Korean
2477  Latvian
2478  Lithuanian
2479  POTFILESin
2480  Polish
2481  Russian
2482  Serbian
2483  Slovak
2484  Slovenian
2485  Spanish
2486  Swedish
2487  Vietnamese
2488  pa  for Gnome
2489
2490 Overview of changes in GLib 2.43.91
2491 ===================================
2492
2493 We have now added 'g_autofree' as a libgsystem-style autocleanup macro
2494 that calls g_free() on the content of a local variable when it leaves
2495 scope (working only on GCC and clang).
2496
2497 GApplication now has an "is-busy" property, allowing one to query the
2498 effective busy state.
2499
2500 There have been various other bugfixes and cleanups.
2501
2502 Bugs fixed:
2503  661554 GIO's use of GError is wrong
2504  744263 Fix format specifier for __LINE__ in G_OBJECT_WARN_INVALID_PSPEC
2505  744565 gapplication: add bind_busy_property()
2506  744747 Add g_autofree
2507  744756 Can't find out if gapplication is marked as busy
2508  744830 autocleanups: Add GArray and GPtrArray
2509  744876 Unclean exit from from g_application_run
2510  745239 g_property_action_new missing type annotation
2511
2512 Translations updated:
2513  Chinese (Taiwan)
2514  French
2515  Galician
2516  Lithuanian
2517  Slovak
2518
2519 Overview of changes in GLib 2.43.90
2520 ===================================
2521
2522 * new GSimpleIOStream class to construct a GIOStream from an arbitrary
2523   GInputStream and GOutputStream
2524
2525 * GApplication: new API for marking 'busy' state according to the value
2526   of a boolean property on another object
2527
2528 * GOptionGroup: add binding support (boxed type, annotation fixes, etc.)
2529
2530 Bugs fixed:
2531  739724 Test functions should have async scope
2532  741024 glist: Mention that g_list_length() is bad for checking list emptiness
2533  741630 Add GSimpleIOStream class
2534  743349 goption: Add boxed type for GOptionGroup
2535  743990 GDBus connection closing is broken
2536  744565 gapplication: add bind_busy_property()
2537
2538 Translations updated:
2539  Greek
2540  Italian
2541  Norwegian bokmål
2542  Russian
2543  Slovenian
2544  Swedish
2545
2546 Overview of changes in GLib 2.43.4
2547 ==================================
2548
2549 * GType now has type declaration macros G_DECLARE_DERIVABLE_TYPE,
2550   G_DECLARE_FINAL_TYPE and G_DECLARE_INTERFACE, which significantly reduce
2551   the boilerplate needed for GObject types and interfaces.
2552
2553 * g_autoptr and g_auto are macros for declaring variables with automatic
2554   cleanup. They only work with gcc and clang.
2555
2556 * GListModel is a new interface that represents a dynamic list of GObjects.
2557
2558 * GListStore is a GSequence-based implementation of GListModel.
2559
2560 * Support thread names on OS X
2561
2562 * g_simple_action_set_state_hint: New function to set the state hint
2563   of GSimpleActions
2564
2565 * g_win32_check_windows_version: New function to check Windows version
2566
2567 * g_settings_schema_list_children and g_settings_schema_key_get_name
2568   are new functions to complete the GSettingsSchema API.
2569
2570 * Bugs fixed:
2571  389585 G_DEFINE_TYPE hack for header files
2572  729351 Add GListModel
2573  736914 Docs: various fixes and improvements
2574  741807 Add thread name support on OS X and iOS
2575  741895 gwin32: Add Simple API to check whether we are on at least a v...
2576  742456 object: Add g_steal_pointer() convenience function to mark own...
2577  743508 polkitd fails to start: patch for gio/gcredentialsprivate.h
2578  743517 GSettings API is missing some introspection functions
2579  743521 GSimpleAction: add g_simple_action_set_state_hint
2580  743596 G_DECLARE_DERIVABLE_TYPE() should allow additional typedef for...
2581  743640 add __attribute__((cleanup)) support
2582  743827 Fix build of GListModel (on Visual Studio)
2583  743927 GListStore: add sorted insert function
2584  743936 glib: handle unsigned modifier for long long in internal printf
2585  744012 Add GMutexLocker
2586  744190 Fix build on Compilers That Do Not Use inline for Plain C Code
2587
2588
2589 Overview of changes in GLib 2.43.3
2590 ==================================
2591
2592 * add g_set_object() convenience function
2593
2594 * GNetworkMonitor: check if NM is not running and don't crash
2595
2596 * fix some races with g_mkdir_with_parents
2597
2598 * fix some warnings in MSVC
2599
2600 * avoid use of G_STRLOC in G_OBJECT_WARN_INVALID_PSPEC in order to save
2601   on static strings
2602
2603 * fix some content type vs. mime issues
2604
2605 * documentation improvements
2606
2607 * Bugs fixed:
2608  719455  g_file_make_directory_with_parents() can erroneously throw G_IO_ERROR_EXISTS
2609  732439  GSocket: avoid unnecessary g_socket_wait_condition() for blocking sockets
2610  734946  Implement GContentType on OSX
2611  741589  gobject: Add g_set_object() convenience function to set GObject pointers
2612  741653  gnetworkmonitornm: Check if network-manager is running
2613  741654  [patch] gobject: don't use G_STRLOC in G_OBJECT_WARN_INVALID_PSPEC() macro
2614  741707  Gsocket blocks trying to send data
2615  741788  Document GSettings build system integration
2616  742548  configure.ac: stay out of autoconf's namespace
2617  742851  avoid MSVC warnings in G_STMT_END
2618  742972  ggettext: Include an example of setlocale() and friends in the i18n docs
2619  743014  gtestutils: Add an example of using test fixtures 
2620
2621 * Translations updated:
2622  Basque
2623  Brazilian Portuguese
2624  Spanish
2625
2626 Overview of changes in GLib 2.43.2
2627 ==================================
2628
2629 * New function: g_strv_contains
2630
2631 * New function: g_network_address_new_loopback
2632
2633 * New function: g_socket_send_messages
2634
2635 * A new GNetworkMonitor implementation using NetworkManager provides
2636   more detailed connectivity information
2637
2638 * Bugs fixed:
2639   11059 Linux poll issue
2640  664562 captive wifi portal support for GNetworkMonitor
2641  685880 Add g_strv_contains()
2642  712570 Hang in g_threaded_socket_service_func
2643  719646 GSocket: add g_socket_send_messages() to send multiple messages...
2644  728928 Provide separate error code for "Connection reset by peer"
2645  732317 Support GSocketConnectable for loopback addresses
2646  740814 "make check" should ensure that every symbol is documented
2647  740848 Backend subscription fails when connecting to a signal with a d...
2648  741016 gio: add G_IO_ERROR_NOT_CONNECTED
2649  741226 keyfile: Add "in group" to GError message consistently
2650
2651 * Translation updates:
2652  Gujarati
2653  Hebrew
2654  Hungarian
2655  Kannada
2656  Turkish
2657  Vietnamese
2658
2659
2660 Overview of changes in GLib 2.43.1
2661 ==================================
2662
2663 * GQueue now accepts NULL as a sibling in g_queue_insert_before() and
2664   g_queue_insert_after()
2665
2666 * Bugs fixed:
2667   11059 Linux poll issue
2668  726037 Add G_PARAM_READWRITE value to the GParamFlags enumeration
2669  727988 GMemoryOutputStream hangs when writing more than 1GiB
2670  729739 tlscertificate: add support for loading certificate chains
2671  733791 GSettings: delay backend subscription
2672  736286 Clarify g_file_replace behavior with etags
2673  736620 GQueue: accept NULL sibling for insert_before() and insert_after()
2674  737150 GLib-GIO-WARNING **: Failed to parse translated string 'visible-name...
2675  737160 unhelpful error message
2676  738259 GDBusInterfaceVTable: clarify memory handling for the method() virt...
2677  738551 'interface' variable conflicts with Windows defines
2678  738633 Need to disable SSLv3 in glib-networking
2679  740157 <app> --help doesn't work even when options were added
2680  740309 Fix docs in g_strfreev
2681  740413 Fix the GSettings Registry Backend 
2682
2683 * Translation updates:
2684  Norwegian bokmål
2685
2686
2687 Overview of changes in GLib 2.43.0
2688 ==================================
2689
2690 * GObject gained a debug option to provide instance counts. To use it,
2691   set GOBJECT_DEBUG=instance-count and call g_type_get_instance_count().
2692
2693 * GOption now has a strict POSIX mode in which it stops parsing arguments
2694   as soon as a non-option argument is encountered.
2695
2696 * Bugs fixed:
2697  354457 Feature Proposal: Per-Type Statistics for Instantiable GTypes
2698  695082 g_hash_table_remove_all is not save against a call to g_hash_table_remove
2699  723160 GOption: add strict posix mode
2700  728256 gcredentials: add NetBSD support
2701  729739 tlscertificate: add support for loading certificate chains
2702  733338 Don't segfault in GNetworkMonitor when IPv6 support is unavailable
2703  736273 gdesktopappinfo: Use symbolic names in the code
2704  736284 Keep only one list of signal emissions
2705  736806 gtask: Fix reference count loop causing leaks
2706  736914 Docs: various fixes and improvements
2707  737143 Include <stdint.h> in glib/valgrind.h
2708  737259 gcancellable: Clarify that GSources hold references to GCancellables
2709  737338 gmain: Unref child sources when finalising a GSource
2710  737446 tests: Fix some minor leaks in the unit tests
2711  737451 Provide api to read_all_async
2712  737741 g_datalist_id_get_data assertion fails for non-existant keys
2713  737869 GApplication command line handling breaks --help
2714  738170 g_byte_array_new_take() doesn't initialize array->alloc
2715  738197 g_cond_timed_wait() doesn't time out on Mac OS X
2716  738374 gfile: g_file_equal (x, x) is TRUE
2717  738675 GSubprocessLauncher is missing some data on the docs 
2718
2719 * Translation updates:
2720  Bengali (India)
2721  Bulgarian
2722  Gujarati
2723  Italian
2724  Telugu
2725
2726
2727 Overview of changes in GLib 2.42.0
2728 ===================================
2729
2730 All changes in this release are trivial in nature.
2731
2732  - introspection warning fixes
2733
2734  - g_application_add_main_option now uses an enum instead of an 'int'
2735    for the type of a parameter
2736
2737  - added a G_OPTION_FLAG_NONE so that people don't need to use 0
2738
2739  - gresource: Use GError in more places
2740
2741  - gresource commandline tool: improve extraction from multiple sections
2742
2743  - GSource now takes the context lock (if any) in g_source_set_name()
2744
2745  - new documentation to clarify the use of some APIs related to
2746    GVariant, GSource, GApplication
2747
2748  - other minor updates to docs
2749
2750 * Bugs fixed
2751  736683 Thread safety issues with g_main_context_find_source_by_id
2752  736975 [patch] please document that GVariant serialization needs an
2753         out-of-band length field
2754
2755 * Translation updates
2756  Danish
2757  Hindi
2758  Marathi
2759  Punjabi
2760  Serbian
2761  Simplified Chinese
2762
2763 Overview of changes in GLib 2.41.5
2764 ==================================
2765
2766 * Bug fixes:
2767  735819 single native credential struct used for two purposes
2768  735915 glib-building.html uses --enable-gcov instead of --enable-coverage
2769  736350 GDesktopAppInfo: avoid polling on missing desktop dirs
2770  736351 Don't use issetugid() on Android
2771         Fix the default application logic in GDesktopAppInfo
2772  736458 Only use rand_s() when targetting Visual Studio >= 2005
2773
2774 * Translation updates
2775  Galician
2776  Hungarian
2777  Indonesian
2778  Kannada
2779  Latvian
2780  Polish
2781  Russian
2782  Slovenian
2783  Tamil
2784
2785
2786 Overview of changes in GLib 2.41.4
2787 ==================================
2788
2789 * GApplication now has binding-friendly API to handle
2790   commandline options: g_application_add_main_option
2791
2792 * G_GNUC_BEGIN_IGNORE_DEPRECATIONS works with clang
2793
2794 * Bugs fixed:
2795  583330 poll list of mounted file systems (no mtab support)
2796  727455 Command line option parsing from bindings
2797  734126 add G_GNUC_BEGIN_IGNORE_DEPRECATIONS macro for clang
2798  735179 gsocketclient: Handle cancellation between CONNECTING...
2799  735297 Docs claim that GThread struct is deprecated 
2800
2801 * Translation updates:
2802   Assamese
2803   Catalan
2804   Catalan (Valencian)
2805   Czech
2806   French
2807   German
2808   Greek
2809   Hebrew
2810   Korean
2811   Oriya
2812   Traditional Chinese
2813
2814
2815 Overview of changes in GLib 2.41.3
2816 ==================================
2817
2818 * g_clear_pointer and g_clear_object no longer use atomics
2819
2820 * Bugs fixed:
2821  711547 win32: silence some build warnings
2822  725511 Compiled resource files should have the same /-separators everywhere
2823  725513 Some tests fail to build on W32
2824  725514 W32: gfileutils does not preserve errno correctly
2825  725515 test-printf fails on W32
2826  728730 gsocket: Set SO_NOSIGPIPE on sockets on Darwin
2827  729703 Leaks a GError in g_file_move
2828  730932 statically assert that reasonable assumptions about enums are true
2829  732085 gtype: Fast-path for g_type_is_a
2830  732754 GDBusMessage: optimise (de)serialisation of fixed arrays
2831  733345 ginetaddress: Add a precondition to g_inet_address_new_from_string()
2832  733576 Patches from static analysis run on 2.40
2833  733715 glib's configure.ac makes accidentally use of nested function
2834  733934 win32: improve the package installation dir lookup
2835  733960 W32: spawning a console process creates a new window when stdout...
2836  733969 Remove atomic aspects of g_clear_pointer/object
2837  733982 Do not crash when checking whether an instance type is of a given...
2838  734035 gedit hangs up when there's no GSettings key in the registry 
2839
2840 * Translation updates:
2841  Basque
2842  Brazilian Portuguese
2843  Lithuanian
2844  Slovenian
2845  Spanish
2846
2847
2848 Overview of changes in GLib 2.41.2
2849 ==================================
2850
2851 * The Unicode support has been updated to version 7.0
2852   of the Unicode standard
2853
2854 * GNotification now supports priorities for notifications
2855
2856 * GCredentials has gained NetBSD support
2857
2858 * GMutex now uses a faster, native implementation on Linux
2859
2860 * Bugs fixed:
2861  699132 Pluggable event loop backends
2862  720708 g_assert_warning(): number of arguments doesn't match for...
2863  722092 Add GtkApplication resources support
2864  724986 Change gio/data-to-c.pl to /usr/bin/env perl.
2865  727974 Fix up failure-to-see-expected-message logging
2866  728256 gcredentials: add NetBSD support
2867  728401 GDateTime: Add guards to g_date_time_new()
2868  729825 Formatting of g_alloca documentation
2869  729914 instead of DEBUG_CODE and IF_DEBUG, provide a common macro...
2870  730293 clang++-3.4: error: 'register' storage class specifier is ...
2871  731339 giochannel: avoid setting uninitialised length
2872  731424 #ifdef spaghetti for load_user_special_dirs() implementations
2873  731623 GNotification: add support for a priority setting
2874  731929 update tables to unicode 7.0.0
2875  731950 gvalue: New g_value_from_instance
2876  731986 GLib: implement GMutex natively on Linux
2877  732184 GObject: warn on use of deprecated properties
2878  732357 Docs: various fixes and improvements
2879  732429 GActionEntry: improve documentation
2880  732465 Fix build on x64 Visual C++ builds
2881  732704 Docs: various fixes and improvements
2882  732739 ginetsocketaddress: Explicitly initialise flags for getaddr...
2883  732754 GDBusMessage: optimise (de)serialisation of fixed arrays
2884  732984 g_object_ref(NULL) in g_dbus_object_manager_client_finalize
2885  733084 Typos in g_bytes_hash() and g_time_zone_find_interval() docs
2886  733146 spawn helper does not use correctly the parameters 
2887
2888 * Translation updates:
2889  Lithuanian
2890
2891
2892 Overview of changes in GLib 2.41.1
2893 ==================================
2894
2895 * Bug fixes:
2896  697229 Custom Interface implementations will be broken with glib 2.37/38
2897  698614 GObject: prevent installing properties after init
2898  729269 gvariant: Fix confusion between type and format strings in the docs
2899  730198 broken valgrind.h leads to crashes in g_type_free_instance on mingw64
2900  730807 GMutex performance regression
2901  730963 gconvert: mention that the g_convert len should be in bytes
2902  730984 Faster instance type check for fundamentals
2903  731050 <structname> tags appear in documentation
2904  731200 unconditional 'notify' during g_object_set() is problematic
2905  731335 gtype: guard uses of new fundamental type check
2906  731341 gparam: change value of G_PARAM_EXPLICIT_NOTIFY
2907  731366 run-assert-msg-test.sh gdb leaves assert-msg-test zombie
2908  731425 giomodule protects function-call with different token than function...
2909  731513 clang: build failure: implicit declaration of function '__atomic_load_4'
2910  731584 gbookmarkfile: Cleaner error handling code to pacify static analysis
2911  731657 Prevent an invalid @CARBON_LIBS@ from appearing in the .pc files
2912  731979 docs: Correct param to interface's default_init()
2913  731996 Return folder as icon for directories
2914  732002 gwakeup: Clarify buffer sizing in g_wakeup_signal()
2915  732005 Remove unused assignments
2916  732019 gtestdbus: Don’t close stdout for dbus-daemon
2917  732068 gsignal: Add an example to the g_signal_connect_swapped() documentation
2918  732081 gsocket: Document that g_socket_create_source() holds a socket ref
2919  732107 gsocketlistener: Reconsider closing sockets on listener finalisation
2920
2921
2922 Overview of changes in GLib 2.41.0
2923 ===================================
2924
2925 * Many bugfixes found by static analysis, including potential fd leaks
2926   and NULL pointer dereferences.
2927
2928 * Increased use of (nullable) attribute on out values and return types
2929   now that it is supported (mostly from porting Vala metadata).
2930
2931 * use XDG_CURRENT_DESKTOP for OnlyShowIn/NotShowIn handling of desktop
2932   files, deprecating g_desktop_app_info_set_desktop_env()
2933
2934 * add support for g_desktop_app_info_get_implementations() to find
2935   desktop files that have an Implements= line for a given interface
2936
2937 * GHmac has gained SHA-512 support
2938
2939 * support the new mimeapps specification (most notably, moving the
2940   assoications/defaults configuration to ~/.config/mimeapps.list).
2941
2942 * libgobject is now linked -Wl,-z,nodelete when possible to avoid errors
2943   when gobject is used from a module for a program that does not itself
2944   use gobject and that module is unloaded/reloaded
2945
2946 * ... and many other bug fixes.
2947
2948  623552 glib warns if backtrace.py is not present
2949  667468 glib-2.30.2: ipv6 tests fail when no ipv6 support is available
2950  668152 -framework Carbon linker flag not passed to pkg-config .pc files
2951  707298 libgobject should be linked with -Wl,-z,nodelete
2952  712391 Add g_desktop_app_info_get_implementors()
2953  722723 Infinite recursion when calling g_io_stream_close_async() from libsoup
2954  724741 hmac: Fix support for SHA-512 in GHmac
2955  726040 networkaddress: fix parsing of uri with @ after authority
2956  726318 gio: Document that GSocket is not thread safe
2957  726611 socketclient: Leak on cancellation
2958  726872 gio: Add names to idles and timeouts
2959  727119 wrong IN6_IS_ADDR_MC_LINKLOCAL usage break android build
2960  727123 GNotification: Some small documentation fixes
2961  727320 docs: Remove escaping '\' from literals
2962  727551 Check use_count of GApplication in g_application_release()
2963  727559 g_file_copy: Don't set GError when we intend to ignore errors
2964  727692 gio/gtlscertificate.c -- broken PEM-file processing (affects local CA root stores, for starters)
2965  727890 soup_content_sniffer_real_sniff segfault
2966  727900 gio: Add newer dbus UnknownXxxx and PropertyReadOnly errors
2967  727928 gapplication-tool fixes
2968  727939 INTLLIBS are always appended in configure checks
2969  727964 g_io_extension_point_get_extension_by_name: Warn, but don't crash, for NULL inputs
2970  728040 Implement new mimeapps spec
2971  728066 Deal with startup notify id being NULL
2972  728280 platform_get_argv0: fix sysctl(3) use on OpenBSD
2973  728285 docs: Use markdown links in .h files, too
2974  728350 gaction: Minor clarifications in the GAction documentation
2975  728380 docs: Remove <!-- --> comment before plural s
2976  728565 gfile: More explicitly document the context for GFileProgressCallback
2977  728983 Docs: various fixes and improvements
2978  729167 gobject: Document that classes/objects/interfaces are zero-filled
2979  729563 GOption: A short option's value is included in G_OPTION_REMAINING
2980  729813 AppInfo: use XDG_CURRENT_DESKTOP for OnlyShowIn
2981  729875 gio: cleanup gdbusmessage.c file
2982  730045 Avoid overeager warning about deprecated properties
2983  730189 gtestutils: Fix a very unlikely FD leak in test fork handling
2984  730190 gsocket: Add missing preconditions to g_socket_send_message()
2985  730277 gthread: Fix use of a local variable after it went out of scope
2986  730278 gsubprocess: Add a missing va_end() call
2987  730295 gdbus-tool: Remove dead variables
2988  730493 Port annotations from Vala metadata
2989
2990 Translations updated:
2991  Basque
2992  Brazilian Portuguese
2993  Catalan
2994  Czech
2995  Danish
2996  Greek
2997  Hebrew
2998  Hungarian
2999  Punjabi
3000  Serbian
3001  Slovenian
3002  Spanish
3003  Ukrainian
3004
3005 Overview of changes from GLib 2.39.91 to GLib 2.39.92
3006 =====================================================
3007
3008 This is a release candidate for 2.40.0.
3009
3010 There are no major changes in this release, but a few serious bugs have
3011 been fixed.
3012
3013 * Bugs fixed:
3014  710367 Crash in g_settings_backend_dispatch_signal()
3015  723899 G_DEFINE_TYPE() causes compiler warnings with clang due to foo_get_instance_private
3016  724859 Let the test_wait_until() test also run on non-*nix
3017  724916 gio unmount code makes XFCE's Thunar crash
3018  725651 GSubprocessLauncher: Does not copy the calling process environment.
3019  725656 Unskip GVariantDict
3020  725891 gio tests: add codegen to BUILT_SOURCES
3021  726046 Recent commit created symbolic icons issues
3022
3023 * Translations:
3024  Chinese
3025  French
3026  Korean
3027  Latvian
3028  Norwegian bokmål
3029  Portuguese
3030  Russian
3031  Traditional Chinese
3032
3033 Overview of changes from GLib 2.39.90 to GLib 2.39.91
3034 =====================================================
3035
3036 This release introduces a hard dependency on present and functioning
3037 clock_gettime() and CLOCK_MONOTONIC.  It also introduces a dependency on
3038 pthread_condattr_setclock() unless your system happens to have
3039 pthread_cond_timedwait_relative_np() (as do Mac OS and Android).  This
3040 release is known to be broken with at least GNU/Hurd, pending addition
3041 of working pthread_condattr_setclock(CLOCK_MONOTONIC) there.
3042
3043 New API: g_str_to_ascii()
3044
3045 * Fixed bugs:
3046  670144 unconditional use of CLOCK_MONOTONIC is broken
3047  673607 invalid assumption in g_cond_wait_until() / g_get_monotonic_time() API
3048  710142 Add more impressive transliteration to GLib
3049  722360 make check fails
3050  722604 (partial) Various tests are failing with 2.39.3
3051  723316 g_hash_table_iter_remove() should be explicit whether or not it is safe while iterating the table
3052  724609 Fix build of GIO on Windows
3053  724687 gmain: make monotonic time really monotonic, everywhere
3054  724706 gsource: document priority of child sources
3055  724707 some GSocket source improvements
3056  724839 GMainContext: some source ID cleanups
3057  724858 Dist gtranslit-data.h
3058  724994 Missing icons for bookmarks in file chooser
3059  725023 Can no longer find apps by executable/desktop file name
3060
3061 * Translations:
3062  Lithuanian
3063  Polish
3064  Thai
3065
3066 Overview of changes from GLib 2.39.4 to GLib 2.39.90
3067 ====================================================
3068
3069 * Fixed bugs:
3070  625408 make GVariant dictionaries more useful
3071  660809 document that if you fail a precondition check, documented guarantees do not apply
3072  661576 fix handling of constructors that destroy half-constructed objects
3073  679957 g_inet_address_new_from_string is not able to handle dots and numbers IPv4 addresses
3074  712837 gvariant: Document the need to cast varargs when constructing GVariants
3075  721458 g_simple_async_result_is_valid has a NULL check for the wrong source_tag
3076  721977 improve split handling of command line arguments
3077  722033 win32: fixup lib.exe invocation
3078  723422 Fix g_socket_get_available() with TCP on Windows
3079  723616 gio/tests: fix race when generating code
3080  724001 gsubprocess: Fix a broken link in the documentation
3081  724124 glib/tests/collate.c fails if no en_US locale
3082  724126 intermittent GApplication test failure: /gapplication/local-actions: lines of output permuted
3083  724233 gsocketservice: Note g_socket_listener_close() for closing open sockets
3084  724239 soup_session_queue_message - Connection terminated unexpectedly
3085  724278 gsocketconnection: Document closing connections with g_io_stream_close()
3086  724330 configure.ac: tweak inotify check
3087  724385 gtestutils: make the new assert messages more detailed
3088  724401 gsubprocess: Mutex leak
3089  724417 glib master build broken on OpenBSD
3090  724434 Build failure in gio/gresolver.c
3091
3092 * Updated translations:
3093  Brazilian Portuguese
3094  Galician
3095  Indonesian
3096  Italian
3097  Kannada
3098  Norwegian bokmål
3099  Spanish
3100  Thai
3101
3102 Overview of changes from GLib 2.39.3 to GLib 2.39.4
3103 ===================================================
3104
3105 * Fixed Bugs:
3106  139699 Correction for g_main_context_unref()
3107  583036 g_strchomp and g_strchug are not declared const
3108  683388 improve documentation for application developers
3109  685204 ./configure fails to add the '-g' flag to CFLAGS
3110  688406 GStaticMutex broke ABI on at least ARM EABI during 2.31.x
3111  693299 cannot compile on Solaris: error in gbitlock.c
3112  707111 Clarify type transformability and compatibility
3113  711547 win32: silence some build warnings
3114  719344 Fix the various test programs (or GLib itself) on Windows
3115  722025 cleanup/clarify command line argument encoding on Windows
3116  722323 remove unused include 'gslist.h' in 'gbookmarkfile.c'
3117  722326 gstringchunk: Use g_slist_free_full() where possible
3118  722357 gio: fix small memory leak on local xattr
3119  722436 Adjust doc to Makefile.decl renaming
3120  722503 GSimpleAction: add default activate handler
3121  722526 glib/deprecated/gthread.h error on FreeBSD
3122  722591 [documentation] broken link to GtkAction from GAction.html
3123  722973 Broken example in GApplication reference
3124  723048 'network-access' test can fail to guess interface index
3125  723360 gmain: Note that g_source_destroy() can be called multiple times 
3126
3127 * Updated Translations:
3128  Assamese
3129  Tamil
3130  Traditional Chinese
3131
3132
3133 Overview of changes from GLib 2.39.2 to GLib 2.39.3
3134 ===================================================
3135
3136 No major changes this release -- mostly lots of small fixes and
3137 improvements in test coverage.
3138
3139  * fix a crasher in code from gdbus-codegen
3140
3141  * improvements to gobject gdb helper script
3142
3143  * portability:
3144
3145    - fix a deadlock issue with kqueue on FreeBSD
3146
3147    - work around a quirk in the sunstudio compiler
3148
3149    - rename a variable to avoid clashing with a macro definition of
3150      'environ' on some platforms (like mingw)
3151
3152    - use POSIX-specified <poll.h> over <sys/poll.h>
3153
3154    - many improvements to Visual Studio projects and and some build
3155      fixes for Windows
3156
3157  * tests
3158    - a very large number of improvements in test coverage
3159
3160    - don't report skipped tests as failures
3161
3162    - return 77 if we skip all tests in an executable
3163
3164    - improve gtest documentation and fix some minor issues
3165
3166    - fix g_test_trap_reached_timeout() return value
3167
3168    - remove some dead code uncovered during test coverage expansion
3169
3170    - Use tap mode for installed tests too, when using tap
3171
3172  * fix races in unix signal handling
3173
3174  * make our GVariant-based commandline tools (glib-compile-schemas,
3175    gdbus, gapplication) print out GVariant parse errors in context
3176
3177  * GApplication now has a --gapplication-service command line switch to
3178    turn any GApplication into a service
3179
3180  * improve compatibility of GApplication and GOptionContext
3181
3182  * fix gsettings.m4 wrt. builddir != srcdir with non-recursive make
3183
3184  * use a directory monitor in GKeyfileSettingsBackend
3185
3186  * improve robustness of some GIcon classes
3187
3188 Bugs fixed
3189  141251  poll(2) is in <poll.h>, not <sys/poll.h> per SUS standard
3190  613732  [PATCH] gobject.py: Don't install frame filters when GDB does not support them
3191  708212  g_variant_parser_error_get_quark() has unexpected name.
3192  710965  GApplication: add --gapplication-service switch
3193  711090  periodic failure of spawn-multithreaded async testcase
3194  712171  gsettings.m4: @GSETTINGS_RULES@: Support srcdir != builddir with nonrecursive make
3195  712630  Revert "gsettings m4: check for .xml in src/builddir"
3196  715028  GVariant: add way to print context of parse errors
3197  719344  Fix the various test programs (or GLib itself) on Windows
3198  720263  gtestutils: skipping a test should count as success, not failure
3199  720539  gdbus-codegen: Fix crasher in goa-using apps
3200  720635  Make gdb pretty-printers compatible with Python3
3201  720891  g_settings_get_child does not inherit the backend
3202  721034  glib 2.38.2 cannot be compiled with SunStudio Compiler under Solaris
3203  721059  g_subprocess_launcher_set_environ vs "environ"
3204  721074  kqueue: deadlock
3205  721087  Missing -lselinux in pkg-config --libs --static gio-2.0
3206  721324  Error message is printed to stdout
3207  721624  Regression in GTest framework reorders existing test cases
3208  721625  backwards NEWS entry about g_source_remove change
3209  721796  insufficient escaping in g_dbus_annotation_info_generate_xml()
3210  721947  Improve GApplication ⇔ GOptionContext compatibility 
3211
3212 Translations updated:
3213  Brazilian Portuguese
3214  Galician
3215  Greek
3216  Hebrew
3217
3218 Overview of changes from GLib 2.39.1 to GLib 2.39.2
3219 ===================================================
3220
3221 * Portability
3222
3223   - Remove alleged support for OS/2
3224
3225   - Remove alleged support for BeOS
3226
3227   - Remove alleged support for last-millennium Unixes
3228
3229   - Require C90 compliance
3230
3231   - Require POSIX.1 (1990) compliance on Unix
3232
3233   - Require GNU make
3234
3235 * Bugs fixed:
3236  113075 support "nonnull" attribute
3237  159528 g_ptr_array_remove_range()
3238  307947 The check for growing stack pointer in configure can fail
3239  607016 docs should mention property notification order
3240  671557 Fun with integers and g_key_file_load_from_data()
3241  676761 don't use g_critical for a runtime error
3242  690525 g_file_replace_contents_async doesn't copy its @conten...
3243  691608 Support compilation with clang 3.2
3244  697585 g_variant_builder_add's doc example is leaking
3245  697828 g_hash_table_add() should return a boolean
3246  702862 gdbus-codegen : look for deps in default install path
3247  703522 Reference leak in GvariantBuilder documentation
3248  705902 g_get_current_dir() should check PWD env var and retur...
3249  708274 Added GObject Introspection annotations to genums.c
3250  710519 Portability schmortability
3251  710741 some mainloop instrumentation
3252  710983 Test failures on powerpc
3253  711047 Enable the build of the various test programs on Windo...
3254  711051 Add basic test for the GNotification gtk backend
3255  711088 gbacktrace: Don't close stderr when running gdb
3256  711103 gmessages: Add g_info macro for G_LOG_LEVEL_INFO
3257  711178 appinfo test problems
3258  711546 utf8: report allocation error
3259  711640 gdesktopappinfo: Rank Keywords matches higher than Gen...
3260  711751 Fix memory leaks in libglib tests
3261  711753 gthread-posix: Don't use gslice allocated GRecMutex
3262  711796 glib-tap.mk: fix to actually use the TAP driver
3263  711800 fix g_test_set_nonfatal_assertions()
3264  711801 giomodule: Allow overriding source directory gio modul...
3265  711805 gdbus-connection: Fix race condition in test
3266  711806 gtestdbus: Don't destroy GSource twice
3267  711807 gtestdbus: Properly close server connections
3268  711871 Broken and misleading configure check for growing stack
3269  712136 'O_CLOEXEC' undeclared (first use in this function)
3270  712148 Add system bus support to GTestDBus
3271  712171 gsettings.m4: @GSETTINGS_RULES@: Support srcdir != bui...
3272  712314 AIX port: splice(); major()/minor(); libtool library order
3273  712315 GSettings: More docs for deprecated _list_schemas()
3274  712393 gobject: Box GMappedFile
3275  712547 GSocketClient "event" not useful for determining resol...
3276  715164 Clang static analysis fixes
3277  719395 GPtrArray add g_ptr_array_insert
3278  719402 Crashes when startup
3279  719472 leak in generated proxy-side property-setter
3280  719687 fix or remove g_trap_object_ref
3281  719809 Signal connection ids are always > 0 if successful
3282  719837 gdbus-connection: Work around race in connection tests
3283  719884 Fix documentation typos in GTask and GCancellable examples
3284  719979 g_settings_get: check validity of format string
3285  720080 Truncating a GMemoryOutputStream to a larger size cause...
3286  720210 gdataset: Remove unused define
3287  720236 Allow clean simple use of g_test_trap_subprocess() 
3288
3289 * Translations updates:
3290  Italian
3291  Lithuanian
3292  Simplified Chinese
3293  Spanish
3294
3295
3296 Overview of changes from GLib 2.39.0 to GLib 2.39.1
3297 ====================================================
3298
3299  * GSettings fixes/improvements
3300
3301    - GSettingsSchema API is now more powerful and consistent
3302
3303    - new GSettingsSchemaKey API allows accessing metadata for keys:
3304      type, default value, range and the long-awaited support for summary
3305      and description
3306
3307    - GSettingsSchemaSource gains support for listing schemas within a
3308      source.  Deprecate the global API that did this for the default
3309      source.
3310
3311    - 'gsettings list-schemas' now works properly with --schemadir
3312
3313    - deprecate a bunch of now-redundant functionality on GSettings
3314
3315    - add API to GSettings for getting the default value of a key (as set
3316      by the sysadmin)
3317
3318    - add API to GSettings for determining if the user has assigned a
3319      particular value to a key (ie: we are not just reading the default)
3320
3321    - ignore qualified tags and attributes appearing in schema files
3322
3323  * Applications/Actions
3324
3325    - make GSimpleAction a bit more strict with respect to state changes
3326      that would violate the interface (ie: by changing the state type
3327      after construction)
3328
3329    - throw an error when attempting to 'Describe' a non-existent action
3330      via D-Bus instead of returning a bogus description
3331
3332    - throw an error when attempting to invoke unsupported methods on an
3333      Application (eg: 'Open' on an app that doesn't HANDLES_OPEN)
3334      instead of emitting a g_critical() in context of the app (which is
3335      not itself at fault for the errant call)
3336
3337  * Appinfo
3338
3339    - substantially rework GDesktopAppInfo to reduce the amount of disk
3340      accesses that are performed in common situations
3341
3342    - add a new class: GAppInfoMonitor for discovering when applications
3343      are installed/removed
3344
3345    - add a new g_desktop_app_info_search() API for searching for
3346      installed applications by name, keywords, etc.
3347
3348  * GMarkup: add new G_MARKUP_IGNORE_QUALIFIED flag for skipping over
3349    "qualified" tags and attributes (those with a colon in the name, such
3350    as 'my:tag')
3351
3352  * GDBus
3353
3354    - ignore qualified tags, as above
3355
3356    - GTestDBus: unset all D-Bus addresses (such as STARTER) to ensure
3357      that test programs don't pick them up
3358
3359    - add new session_bus_run() convenience in the tests and use it
3360
3361  * GRand: use real random data as a seed on win32 and use the
3362    timestamp/pid/uid fallback only on UNIX machines where we can't open
3363    '/dev/urandom'.  This may cause issues with older mingw32 releases
3364    due to a missing prototype for the rand_s() API.
3365
3366  * Many win32 (and particularly MSVC) portability fixes.  Many
3367    additional tests are now runnable when building with MSVC.
3368
3369  * Due to early testing of the (soon to land) GCleanup framework, a very
3370    large number of memory errors have been found and fixed (mostly in
3371    the testcases, but some in glib itself).
3372
3373  * GIO:
3374
3375    - some more seeking cleanups: particularly on GLocalFileInputStream
3376
3377    - don't leave a .trashinfo file around if trashing a file fails
3378
3379    - Add a request_certificate virtual method to GTlsInteraction
3380
3381 Translations updated:
3382  Assamese
3383  Galician
3384  Greek
3385  Spanish
3386  Tamil
3387
3388 Bugs fixed:
3389  635641 schema compiler should ignore unknown attributes
3390  637257 g_tls_client_connection_gnutls_retrieve_function needs to be able to block
3391  637956 GKeyfileSettingsBackend should ignore file deletions
3392  645453 keys from base schema missing from extended schema
3393  665634 g_dbus_node_info_new_for_xml() errors on unknown attributes in XML files
3394  668232 Unable to get description and summary for a key
3395  668233 Unable to determine if a key is set to the default / what the default value is
3396  680838 Need g_settings_schema_source_get_schemas()
3397  683017 API for accessing GSettings Schema metadata
3398  687185 org.gtk.Actions.Describe doesn't return an error for non-existing action names
3399  687202 If trashing fails, the ".trashinfo" file is not removed
3400  695558 The --schemadir option has no effect
3401  696424 GSimpleAction.state property is not right
3402  697348 GTestDBus should unset DBUS_STARTER_ADDRESS, DBUS_STARTER_BUS_TYPE
3403  710133 Emit backward compatible code with gdbus-codegen
3404  710691 glib-networking: locking during implicit handshake
3405  710738 GRand has lame fallback for Windows
3406  710859 Typo in gio docs
3407  710885 Two fixes for GApplication
3408  710962 error: 'F_DUPFD_CLOEXEC' undeclared (first use in this function)
3409  710964 Add g_hash_table_get_key_array()
3410  710991 test: g_debug messages shouldn't affect g_assert_expected_messages
3411  711016 g_settings_list_keys () segfaults for empty schemas
3412  711048 glocalfileinputstream.c allows skip past end of file
3413  711049 Fix build of GLib-GIO 2.39.x on Windows/MSVC
3414  711064 Adding child source to blocked source can cause a segfault
3415  711070 Copying a symlink over another one segfaults
3416  711099 gapplication test failure
3417  711520 GDesktopAppInfo: allow more than one level of legacy folder prefixes
3418  711556 Add GAppInfoMonitor
3419  711557 Add g_desktop_app_info_search()
3420  711600 trivial portability fix
3421  711632 The desktop-app-info test fails during make check
3422  711754 gmain: Fix use of uninitialized memory in sigaction structure
3423  711755 private: Use threading primitives correctly in private test
3424  711756 gthreadpool: Don't pass bad data to GThreadPool sorter
3425  711768 Fix memory leaks in libgmodule tests
3426  711775 utils: Don't free memory owned by glib in test
3427  711782 boxed: Fix double free in boxed unit tests
3428  711803 gsubprocess: Fix a number of leaks and a segfault
3429  711808 gtestdbus: Fix leak of GMainLoop 
3430
3431 Overview of changes from GLib 2.38.0 to GLib 2.39.0
3432 ====================================================
3433
3434  * prep for the 2.40 series (version macros, docs index, etc.)
3435
3436  * GNotification
3437
3438    - new API for sending persistent notifications via the desktop shell
3439
3440    - notifications persist when the application has quit and clicking on
3441      them can restart the application with an action (via
3442      DBusActivatable)
3443
3444  * GSubprocess
3445
3446    - new API for launching subprocesses
3447
3448    - nice GIO integration like async functions, cancellability, etc.
3449
3450    - a convenient communicate() API inspired by the same API in Python
3451
3452    - related: the gspawn API now has a CLOEXEC flag for the created
3453      pipes for stdin/stdout/stderr
3454
3455  * New gapplication(1) commandline tool
3456
3457    - intended to be used with DBusActivatable apps
3458
3459    - can be used for launching apps, opening files, invoking application
3460      actions and listing apps and actions
3461
3462    - bash tab completion is supported
3463
3464  * GDesktopAppInfo changes:
3465
3466    - g_file_get_path() can implicitly cause a FUSE mount so don't call
3467      it until we know we need it (for an app that doesn't support URIs)
3468
3469    - don't crash when trying to load from a keyfile with
3470      DBusActivatable=true
3471
3472    - remove some dead code, refactor the search path handling a bit and
3473      do a large-scale whitespace cleanup (prep work for the pending
3474      desktop file index)
3475
3476  * File monitors
3477
3478    - fix broken handling of mount point monitoring
3479
3480    - remove some strange use of GObject::constructor() from the base
3481      class and inotify backend
3482
3483    - fix GFileMonitor to work in the non-default main context even when
3484      the main context is not running (or is blocked)
3485
3486    - add internal private API for easily creating a file monitor in the
3487      GLib worker thread
3488
3489  * GSettings
3490
3491    - g_settings_list_children: only list viable schemas.  This fixes a
3492      longstanding issue where 'gsettings list-recursively' will crash
3493      when there are invalid schemas installed
3494
3495    - don't accept invalid paths on g_settings_new_with_path, etc.
3496
3497  * GIO
3498
3499    - GFile now has a thumbnail::is-valid attribute to check if the
3500      thumbnail in thumbnail::path needs to be regenerated
3501
3502    - GDBusProxy now has a flag to control autostarting of services at
3503      construction time
3504
3505    - for GSeekable, properly introduce the concept of "resizable" vs.
3506      "fixed-sized" streams in the docs, explaining the expected
3507      semantics of the interface in each case
3508
3509    - fix some cases in GMemoryOutputStream that were violating the above
3510      expectations (which may cause a slight API incompatibility)
3511
3512    - clean up GCredentials code and add support for Hurd and Solaris
3513
3514    - improve splicing by using different codepaths for the case where we
3515      have real _read_async() and _write_async() implementations on the
3516      stream vs. the case where they are internally emulated (via
3517      dispatching the sync variant of the call in a thread)
3518
3519  * GKeyFile
3520
3521    - fix a leak in g_key_file_get_(u)int64 when we fail to parse the
3522      value as an integer
3523
3524    - add long-requested API g_key_file_save_to_file()
3525
3526  * Portability improvements
3527
3528    - avoid using O_DIRECTORY on platforms that don't have it
3529
3530    - be careful about systems that define SOCK_CLOEXEC but don't
3531      actually support it (like Hurd)
3532
3533    - only use SA_RESTART if it exists
3534
3535  * Other small API changes/additions
3536
3537    - a pair of functions to support matching strings for the type of
3538      search functionality that you'd expect to have with things like
3539      GtkSearchBar.  This will also be used by the desktop file index.
3540
3541    - g_str_is_ascii() with obvious purpose
3542
3543    - g_test_expect_message() no longer appears to allow you to catch
3544      G_LOG_ERROR messages
3545
3546  * GMainContext/GSource
3547
3548    - fix handling of overflowing the 'next source id' counter
3549
3550    - g_source_remove() will now throw a critical in the case that you
3551      try to remove a non-existent source.  We expect that there is some
3552      code in the wild that will fall afoul of this new critical but
3553      considering that we now reuse source IDs, this code is already
3554      broken and should probably be fixed.
3555
3556    - simplify handling of the 'current dispatching source' to not
3557      require use of a linked list
3558
3559  * GObject
3560
3561    - the long-broken (and leaky) pattern of destroying a just-allocated
3562      object from inside of a custom GObject::constructor is now
3563      officially completely illegal and will abort the program
3564
3565  * Unicode: update to 6.3.0
3566
3567  * Bug fixes
3568
3569    - g_file_copy() now falls back to pathname queryinfo.  This should
3570      clear up the bugs with copying from some GVfs backends (afp,
3571      gphoto, archive, at least).
3572
3573    - fix an out-of-bounds read in the xdgmime code
3574
3575    - fix a typo in the /org/freedesktop/DBus path on the object manager
3576      client
3577
3578    - skip emitting path_namespace='/' in match rules in order to
3579      workaround a bug in the D-Bus daemon and fix our own implementation
3580      (which shared exactly the same bug)
3581
3582    - fix crashes on precondition violations for GParamSpec constructors
3583
3584    - many other small fixups (see bug list)
3585
3586   * Many documentation improvements
3587
3588 Bugs fixed:
3589  309224 g_key_file_save_to_file missing
3590  583321 QNX: no SA_RESTART
3591  661576 fix handling of constructors that destroy half-constructed objects
3592  672102 GSubprocess class
3593  684842 Seeks on GMemoryOutputStream don't have opaque semantics
3594  688492 Add a notification API
3595  691581 g_output_stream_real_splice_async doesn't use overriden read/write_async functions
3596  702516 gfileutils: Make -Werror=format-nonliteral happy
3597  704218 New gapplication(1) tool
3598  704593 g_setenv: on some systems (BSD, OSX…), setting a variable to NULL crashes the system
3599  704882 GLocalDirectoryMonitorClass mount_notify field is useless
3600  704887 file monitoring improvements
3601  705029 Support for Solaris credentials
3602  705688 g_settings_list_children: only list viable schemas
3603  706254 Afp backend cannot copy files
3604  707887 Attempting to create GObject Property with underscore prefix segfaults
3605  708042 gapplication: don't rely on cmdline being finalized immediately
3606  708265 add support for GNU/Hurd in GLib D-Bus Library
3607  708266 fix error code checks when SOCK_CLOEXEC is defined but not supported
3608  708529 xdgmime: valgrind warns about invalid reads
3609  708677 incorrect object path 'deskop' used in gio/gdbusobjectmanagerclient.c
3610  708714 Typo in docs of GLIB_VERSION_2_40 macro.
3611  708753 gdesktopappinfo: Call g_file_get_path() on demand
3612  708793 glib build fails with clang < 3.1: error: expected ';' after top level declarator
3613  708828 GDBusProxy: add the ability to call methods on non autostarted proxies
3614  708860 glib-2.38.0 doesn't build on Solaris 10
3615  708972 gnetworking.h in tarball screws up out-of-source builds
3616  709113 [PATCH] Main loop dispatch path has needless linked list
3617  709227 Update to unicode 6.3.0
3618  709301 goutputstream: Add clear warning about short writes to _write_bytes() and async version
3619  709326 GDesktopAppInfo crashes creating a DBusActivatable app without a filename
3620  709440 Fix overloading of "source" and "target" terminology in GBinding
3621  709615 Cannot use g_test_expect_message with g_error
3622  709753 Add helpers for string matches when using GtkSearchBar-like widget
3623  709898 Expose thumbnail validity in GFile attributes
3624  709966 Remove outdated documentation
3625  709994 Minor fix for HACKERS doc to direct hackers to proper help file
3626  709995 Obsolete makefile rules
3627  710002 G_MAXUINT may be assigned as duplicate source id
3628  710313 Memory leak in g_key_file_get_(u)int64 with invalid integer values
3629  710345 [Patches] Fix some redundant-decls
3630  710496 g_locale_to/from_utf8() doc updated.
3631  710625 g_file_error_from_errno: Remove unneeded breaks
3632  710666 Frame clock related bug fixes
3633  710724 gmain: Warn when g_source_remove() fails
3634  710726 Work around D-Bus bug with path_namespace='/' match rules
3635
3636 Translations:
3637  Assamese
3638  Brazilian Portuguese
3639  Indonesian
3640  Russian
3641  Tamil
3642  Traditional Chinese
3643
3644 What's new in Glib 2.38
3645 ========================
3646
3647  * Application support
3648
3649   - GIO now provides an implementation of Desktop Actions from the
3650     desktop entry specification
3651
3652   - GApplication now implements the org.freedesktop.Application
3653     interface as per the desktop entry specification, allowing for
3654     standards-based D-Bus launching of GLib-based applications
3655
3656   - GDesktopAppInfo now supports DBusActivatable as per the desktop
3657     entry specification, allowing GLib-based applications to use D-Bus
3658     to launch other applications
3659
3660   - GApplication now has a "busy" flag that can be set on an application
3661     to allow the shell to show that it is busy
3662
3663  * GObject
3664
3665   - the private offset for a given class type is now always constant.
3666     This was done by reorganising the memory layout of instances so that
3667     the private data comes before the "official" pointer for the object
3668     (ie: at a negative offset).  Valgrind macros were added to mitigate
3669     any problems that this may have caused.
3670
3671   - a new G_DEFINE_TYPE_WITH_PRIVATE has been added along with a
3672     generated function *_get_instance_private() that can now serve as an
3673     equally-performing alternative to ->priv pointers in instances
3674     (allowing memory savings)
3675
3676   - new G_PRIVATE_FIELD, G_PRIVATE_FIELD_P and G_PRIVATE_OFFSET macros
3677     provide a convenient method of converting between named variables in
3678     private structures and their (now constant) offsets
3679
3680   - installing properties on a GObjectClass must now be done from
3681     class_init.  It is no longer valid to install them after class_init
3682     has returned.
3683
3684   - it is now possible to manually break a GObject property binding
3685     without destroying one of the objects involved
3686
3687  * Icons
3688
3689   - the requirements for implementing the GIcon interface have changed
3690     in order to make it possible to consume all implementations of GIcon
3691     with a finite number of cases
3692
3693   - a new GBytesIcon type was added for an icon represented by an
3694     in-memory binary blob in a known image format (ideally png).
3695
3696   - new APIs g_icon_serialize() and g_icon_deserialize() replace the old
3697     to/from_string APIs and will always work, irrespective of which
3698     types have been initialised in the calling process, allowing for a
3699     serialised GdkPixbuf to be deserialised in a process that doesn't
3700     have GdkPixbuf
3701
3702   - support for icons has been added to GMenuModel using the new APIs
3703
3704  * Actions and menus
3705
3706   - GPropertyAction provides a convenient way of creating a stateful
3707     property corresponding to a property on a GObject, such as the
3708     "visible-child-name" property of a GtkStack
3709
3710   - new API g_menu_remove_all()
3711
3712   - we now have established rules about what is a "valid" action name
3713     and an API to check them
3714
3715   - a new API for converting detailed action names to and from the
3716     split-out name and parameter value (as GVariant)
3717
3718   - for backwards compatibility, invalid action names can still be used
3719     with most functions, but this is not recommended
3720
3721  * Other GIO
3722
3723   - GDBus now supports services that wish to handle some of all
3724     properties on an interface asynchronously, without requiring the
3725     service to reimplement the entire org.freedesktop.DBus.Properties
3726     interface
3727
3728   - GFile now has a new _measure_disk_usage() (and async) API for
3729     recursively determining the amount of disk space used by a
3730     particular directory (akin to 'du').
3731
3732   - asynchronous version of g_file_trash() and g_file_make_directory()
3733     have been added
3734
3735  * Other new API
3736
3737   - GRegex has a new function to query the maximum lookbehind length to
3738     allow for regexp matching on streams
3739
3740   - GVariant has two new APIs for constructing strings that allow
3741     avoiding copies in some cases: g_variant_new_take_string() and
3742     g_variant_new_printf()
3743
3744  * Testing
3745
3746   - we can now generate TAP output
3747
3748   - new support functions for simplifying the process of dealing with
3749     data files for srcdir != builddir and installed test cases
3750
3751   - g_test_trap_subprocess() provides a portable alternative to
3752     g_test_trap_fork()
3753
3754  * Other
3755
3756   - GLib now builds on Android against the bionic C library
3757
3758 Overview of changes from GLib 2.37.93 to 2.38.0
3759 ================================================
3760
3761 * fix the documentation for GSourceFuncs
3762
3763 * fix compilation on OS X/ppc64
3764
3765 Bugs fixed: 708445, 647145
3766
3767 Translations updated:
3768  Danish
3769  French
3770  Portuguese
3771  Punjabi
3772
3773 Overview of changes from GLib 2.37.92 to 2.37.93
3774 ================================================
3775
3776 * a couple of bugfixes in the new g_file_measure_disk_usage() API
3777
3778 * updated Traditional Chinese translation
3779
3780 Overview of changes from GLib 2.37.7 to 2.37.92
3781 ===============================================
3782
3783 * new API g_file_measure_disk_usage() similar to du(1)
3784
3785 * minor fixes
3786
3787 * Translation updates:
3788  Assamese
3789  Belarusian
3790  Brazilian Portuguese
3791  Catalan
3792  Czech
3793  Galician
3794  German
3795  Hungarian
3796  Indonesian
3797  Italian
3798  Korean
3799  Korean
3800  Latvian
3801  Lithuanian
3802  Polish
3803  Serbian
3804  Slovenian
3805  Spanish
3806
3807 Overview of changes from GLib 2.37.6 to 2.37.7
3808 ==============================================
3809
3810 * GDateTime now supports %:z formatting variations
3811   for timezones. This is a GNU date extension.
3812
3813 * Bugs fixed:
3814  685387 Segfault with GObject.signal_handler_is_connected()...
3815  686786 g_socket_get_available_bytes() returns wrong value ...
3816  705027 GSocket GSource not threadsafe on Windows
3817  706469 Fix G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE documentation
3818  706706 Fix Gir annotations on g_loadable_icon_load_finish
3819  706888 gtype: fix a no-op assertion
3820  706958 configure.ac: fix atomic opts detection
3821  707092 "File Utilities" page for GLib documentation doesn'...
3822  707151 gdatetime: Extend the '%z' timezone format
3823
3824 * Translation updates:
3825  Catalan
3826  Hungarian
3827  Japanese
3828  Polish
3829  Slovak
3830  Tamil
3831
3832
3833 Overview of changes from GLib 2.37.5 to 2.37.6
3834 ==============================================
3835
3836 * Tests using the g_test facilities can now generate TAP output
3837
3838 * Bugs fixed:
3839  680926 generic type fallback logic is broken for -symbolic
3840  684327 setting null icon to icon list
3841  689245 GSocket unable to reuse (address,port) on Mac OS X
3842  692125 Support TAP as GTest output format
3843  693335 build: fix dtrace-related warnings
3844  696633 gdbus-codegen trips over unicode chars when using python 3.x
3845  696970 Compiling 2.36.0 for win64 fails
3846  697185 GSocket – Allow specifying the multicast interface from...
3847  700268 Add support for using the clang analyzer
3848  701318 Add G_SPAWN_DEFAULT to GSpawnFlags
3849  701529 glib/tests/gdatetime: use UTC time in test_GDateTime_diff()
3850  701800 a new approach to reporting critical errors
3851  702674 g_date_time_new_utc crash
3852  704165 GLib.IOChannel read_unichar() fails
3853  705075 Simplify g_get_tmp_dir()
3854  705152 Race in glib/task.test
3855  705398 gtype: Fix typo in g_type_class_add_private() error message
3856  705570 Check ref_count in g_object_notify_by_pspec
3857  705600 Deprecate GSimpleActionGroup functions?
3858
3859 * Updated translations:
3860  Assamese
3861  Brazilian Portuguese
3862  Czech
3863  Dutch
3864  Galician
3865  Gujarati
3866  Hebrew
3867  Italian
3868  Lithuanian
3869  Marathi
3870  Norwegian bokmål
3871  Russian
3872  Slovenian
3873  Spanish
3874  Thai
3875  Traditional Chinese
3876
3877
3878 Overview of changes from GLib 2.37.4 to 2.37.5
3879 ==============================================
3880
3881 * Implement the Desktop Action specification: In the case that the
3882   application is a GApplication and DBusActivatable, actions from the
3883   desktop file are translated into GActions that have been added to
3884   the  application with g_action_map_add_action().
3885
3886 * GPropertyAction is a new type of GAction that represents the value
3887   of a property on an object, and allows to change the value when
3888   activated.
3889
3890 * GNetworkMonitorNetlink can now handle default routes via a device.
3891
3892 * The gsettings tool now reports failure to write a key (e.g. because
3893   the key was locked down)
3894
3895 * Miscellaneous new api:
3896  - g_variant_new_printf
3897  - g_action_print_detailed_name
3898  - g_regex_get_max_lookbehind
3899
3900 * Bugs fixed:
3901  664444 Support additional application actions in .desktop files
3902  684123 glib build only tries -D_GNU_SOURCE if glibc is detected
3903  689794 support incremental matching
3904  699259 add org.freedesktop.Application support to GIO
3905  700460 rewrite tests to not rely on precise timing of timeouts
3906  701511 updates to various GSource types
3907  701609 gnetworkmonitornetlink: handle default route via device
3908  703270 add GPropertyAction
3909  704157 GAction: add function for printing detailed names
3910  704250 Doc: various fixes
3911  704267 regression gsourceclosure: segfault in gedit file chooser
3912  704322 glib-unix: fix handling of multiple signal source for the...
3913  704424 No error when failing to override a locked key
3914  704447 Fix build/use of g_child_watch_closure_callback on Windows
3915  704523 g_thread_create_full() can dereference NULL pointer
3916  704543 Add implementations for G_GNUC_*_IGNORE_DEPRECATIONS for ...
3917  704567 gdbusnameowning: Don't spew an error if we're releasing a...
3918  704585 libc printf can give mixed-case strings for NaN and Inf
3919  704587 FTBFS: statfs_result is undeclared for statvfs()
3920  704699 gmain: Reset signal handlers to default when source is
3921  704704 AI_NUMERICSERV cannot be used with ai_socktype = 0
3922  704873 inotify: don't assume mainloop is running
3923  704999 glib/convert.test crashing due to lack of iconv cache
3924  704931 GMenuModel: add annotations to virtual functions
3925
3926 * Translation updates:
3927  Assamese
3928  Czech
3929  German
3930  Gujarati
3931  Spanish
3932  Tamil
3933
3934
3935 Overview of changes from GLib 2.37.3 to 2.37.4
3936 ==============================================
3937
3938 * Bugs fixed:
3939  701283 g_source_add_child_source() segfault
3940  702147 inconsistency of G_STRFUNC
3941  703191 new private macros interact poorly with versioning macros
3942  703254 Doc: various fixes
3943  703407 g_spawn_async() keeps child_pid_report_pipe open in child process
3944  703437 GDBusConnection: be more careful with async GetAll
3945  703478 Missing G_BEGIN/END_DECLS in gsettingsschema.h
3946
3947 * Translation updates:
3948  Catalan
3949
3950 Overview of changes from GLib 2.37.2 to 2.37.3
3951 ==============================================
3952
3953 * add a new API for instance private data: G_DEFINE_TYPE_WITH_PRIVATE
3954
3955 * fix timestamps in tarball to prevent automake from being required to
3956   build the unmodified source
3957
3958 * add new D-Bus API for async property handling
3959
3960 * add back fsync() on ext4 for g_file_set_contents() after it was
3961   discovered that despite statements in the ext4 documentation
3962   suggesting that this is safe, it is not safe.
3963
3964 * Translations:
3965  Italian
3966  Norwegian bokmål
3967
3968 * Bugs fixed:
3969  698375 - D-Bus async properties
3970  700350 - timestamp issue
3971  701560 - fsync issue (fixed again)
3972  700035 - new API for instance private data
3973
3974 Overview of changes from GLib 2.37.1 to 2.37.2
3975 ==============================================
3976
3977 * The GLib test utilities have grown some file-related APIs
3978   to support tests that can be used installed and uninstalled.
3979
3980 * Installing properties after class initialization is deprecated,
3981   and will trigger a warning.
3982
3983 * GApplication:
3984  - Support org.freedesktop.Application, including D-Bus activation
3985    from desktop files
3986  - Set prgname to appid for services
3987
3988 * Bugs fixed:
3989  549783 gtester lacks framework for tests with data files
3990  692848 Fix property example in gobject tutorial
3991  698018 Add an explicit g_binding_release()
3992  698614 GObject: prevent installing properties after init
3993  699259 add org.freedesktop.Application support to GIO
3994  699959 g_file_copy(): Ensure we create private files by default
3995  700123 Test failure: g_inet_socket_address_get_scope_id
3996  700725 GIcon: NULLify the `type' out param in the sync methods too
3997  701401 gtest: add function for testing for WINE
3998  701456 Error in gnome/glib/gio/tests/file.c
3999  701474 Error building glibmm due to extra comma in glib/gtestutils.h
4000  701560 various improvements for g_file_set_contents()
4001  701680 GFileEnumerator: Add some documentation about ordering
4002  701878 Check wakeup() before iteration(TRUE) doesn't block
4003
4004 * Translations:
4005  Assamese
4006  Czech
4007  Galician
4008  Gujarati
4009  Kannada
4010  Marathi
4011  Odia
4012  Polish
4013  Slovenian
4014  Spanish
4015  Telugu
4016
4017
4018 Overview of changes from GLib 2.37.0 to 2.37.1
4019 ==============================================
4020
4021  * add support for installed tests:
4022    https://live.gnome.org/GnomeGoals/InstalledTests
4023
4024  * add a new g_test_trap_subprocess() that works on Windows as a
4025    replacement for the (now deprecated) g_test_trap_fork()
4026
4027  * support for explicitly cancelling a gobject property binding
4028
4029  * performance improvements for signal argument handling
4030
4031  * stop using `quotes' in very many log messages generated by GLib, for
4032    favour of 'this style'.  This may cause testcases in other packages
4033    to fail if they were matching on the previous text.
4034
4035  * improve manpages: add missing arguments and flags
4036
4037 Translations: 
4038  Aragonese
4039  Assamese
4040  Gujarati
4041  Hindi
4042  Kannada
4043  Norwegian bokmål
4044  Odia
4045  Slovenian
4046  Spanish
4047  Tamil
4048  Telugu
4049
4050 Bugs fixed:
4051  679683 replace g_test_trap_fork()
4052  694380 Improve signal argument collection performance
4053  695233 Strings require plural forms
4054  697849 spelling fixes in cross.xml and running.xml
4055  698877 GProxyAddressEnumerator calls g_network_address_parse_uri without port
4056  698981 [PATCH] test /gdbus/connection/large_message could hang forever
4057  699079 Prototype support for installed tests
4058  699485 [PATCH] tests/mappedfile: Also handle ENOMEM
4059  699493 SOCKS5 proxy code crashes if it cannot authenticate
4060  699500 gbitlock: fix this to not unconditionally use futex emulation
4061  699779 [PATCH] G_GNUC_FORMAT: documentation error
4062  700263 m4macros/glib-gettext.m4: Don't use AC_HEADER_STDC
4063  700714 [PATCH] gtestutils: Ensure test subprocesses don't dump core
4064  700746 Use 'dumb quotes' rather than `really dumb quotes'
4065
4066 Overview of changes fron GLib 2.36.0 to 2.37.0
4067 ==============================================
4068
4069 * The syntax for detailed action names has been documented,
4070   and a parser API for them is now provided
4071
4072 * GApplication has gained a busy state. This feature is intended for
4073   clients that want to signal a desktop shell their busy state, for
4074   instance because a long-running operation is pending.
4075
4076 * GLib can now be built with the bionic C library
4077
4078 * GIcon can now be serialized to a GVariant
4079
4080 * Bugs fixed:
4081  548353 Finish implementing GFile interface (mostly asynchron...
4082  645881 Full port of glib-2.28.1 onto Android-ARM
4083  665445 Glib mistakes nl_langinfo() from plibc for the real t...
4084  672018 Need API to set global application state (busy, count...
4085  687659 drop support for adding interfaces after class_init
4086  688820 GIcon is a bad interface
4087  688954 extend 'detailed action' syntax, provide parser
4088  689223 Fix compilation on Android with the bionic C library
4089  695156 Add support for arg0namespace matching in signal_subs...
4090  696108 gdbus-codegen: avoid warnings in generated code
4091  696629 fix sed(1) usage
4092  696652 GTask won't free its error member variable on finalize
4093  696857 GThreadedResolver: set an error if no records could b...
4094  696973 Compiling 2.36.0 for win64 fails in gdbusmessage.c
4095  697131 No --version
4096  697160 [PATCH] gmacros: Mark G_UNAVAILABLE() functions as de...
4097  697229 Custom Interface implementations will be broken with ...
4098  697250 Documentation glitch of G_DEFINE_TYPE_EXTENDED causes...
4099  697365 Fix usage of hasmntopt in gunixmounts.c
4100  697367 Remove warning on gio/gunixmounts.c
4101  697386 Except const argument with atomic is not lock free
4102  697595 g_main_context_unref unlocks a mutex twice
4103  697601 reduce GMenuModel D-Bus traffic
4104  697626 Allow posix threads to be used on w32
4105  697652 Help options generated even when help disabled
4106  697771 fix a typo of "fo" to "of" in building.xml
4107  697887 GVariant: fix transfer annotation
4108  697942 abicheck.sh fails on mips
4109  698056 rewrite g_object_new()
4110  698081 Pidgin hangs in g_spawn_command_line_sync
4111  698455 GVariant: add new g_variant_new_take_string() API
4112  698457 g_variant_get_data_as_bytes() always returns toplevel...
4113  698478 gactionmap: don't require GActionGroup
4114  698595 the valgrind/priv-before-instance bug
4115  698655 desktop-app-info test relies on true being in /usr/bin/
4116  698686 GUnixSocketAddress: fix construct parameter issue
4117  698716 Use of g_mem_set_vtable() breaks after gobject automa...
4118  698999 bytesicon: fix a memory leak
4119  699001 bytesicon: don't use g_object_unref() on GBytes
4120  699361 gio: fix small leak
4121
4122 * Translation updates:
4123  Assamese
4124  Gujarati
4125  Hungarian
4126  Italian
4127  Kannada
4128  Norwegian bokmål
4129  Polish
4130  Spanish
4131  Tamil
4132
4133
4134 Overview of changes fron GLib 2.35.9 to 2.36.0
4135 ==============================================
4136
4137 This release contains only small bugfixes and translations updates.
4138
4139  - g_file_copy(): fix bug where attributes were not applied properly to
4140    the destination file
4141
4142  - fix some 'available since' annotations
4143
4144  - fix gdbus-codegen to produce more pedantically-correct code
4145
4146 * Bugs fixed:
4147  696108 gdbus-codegen: avoid warnings in generated code
4148  696014 g_file_copy(): Ensure G_FILE_COPY_OVERWRITE preserves permissions
4149
4150 * Translations updated:
4151  Basque
4152  Czech
4153  Gujarati
4154  Hindi
4155  Hungarian
4156  Japanese
4157  Malayalam
4158  Marathi
4159  Odia
4160  Punjabi
4161  Russian
4162  Tadjik
4163  Tamil
4164  Telugu
4165
4166 Overview of changes from GLib 2.35.8 to 2.35.9
4167 ==============================================
4168
4169 This release drops the old codepage ABI from gutils.c. This is a
4170 source-compatible change and only breaks ABI with respect to truly
4171 ancient binaries (and those binaries are already broken for other
4172 reasons).  This change only affects Windows.
4173
4174 * Bugs fixed:
4175  682896 glib doesn't build on mingw32
4176  693204 split up g_get_{hostname,username,realname,home_dir} etc.
4177  694181 Handle GNetworkAddress better in g_network_monitor_base_...
4178  694253 occasional /gdbus/unref-pending test failure
4179  694350 Add type names to gsignal warnings
4180  694757 Use separate GLIB_WARN_CFLAGS that can be overridden ext...
4181  568405 Which is the correct replacement for g_strncasecmp, if...
4182  630284 g_hash_table_get_keys docs
4183  659428 docs: Small clean-up of howto subsection headers
4184  675333 Cannot forget association in Open With dialog: program...
4185  694669 consider unicode corrigendum #9
4186  694843 g_base64_decode_step () produces invalid data
4187  695147 Don't use PATH_MAX as it's not guaranteed to be defined
4188  695191 Commit f641699 broke /appinfo/mime/api test case
4189  695339 Swapped msgid plural forms for translation
4190  695376 GDBusMethodInvocation leak and potential crash
4191  695425 Untranslatable message in gsettings-tool
4192  695887 Improvements to GObject API documentation
4193  695925 GUINT32/64_SWAP_LE_BE macros do not enclose val argume...
4194  696015 PATCH Add doc warning to g_base64_decode()
4195
4196 * Translation updates:
4197  Assamese
4198  Belarusian
4199  Brazilian Portuguese
4200  Catalan
4201  Catalan (Valencian)
4202  Danish
4203  French
4204  Galician
4205  German
4206  Greek
4207  Gujarati
4208  Italian
4209  Korean
4210  Latvian
4211  Lithuanian
4212  Polish
4213  Portuguese
4214  Punjabi
4215  Serbian
4216  Simplified Chinese
4217  Slovak
4218  Slovenian
4219  Spanish
4220  Thai
4221  Traditional Chinese
4222  Uyghur
4223  Vietnamese
4224
4225
4226 Overview of changes from GLib 2.35.7 to 2.35.8
4227 ==============================================
4228
4229 This release contains one major change that may cause problems: type
4230 modules are now never unloaded.  This is implemented by (effectively)
4231 leaking the last reference on dynamic types.  Some testcases that check
4232 for unloading of types have been observed to be broken by this change,
4233 but we know of no actual cases of "real code" breaking.  Please report
4234 any problems.
4235
4236 Other changes:
4237  * A couple of build fixes for Solaris
4238  * Fix signal emission for GDBusObjectManagerClient
4239  * annotations fixes
4240  * new API: g_dbus_address_escape_value()
4241  * GSocketClient: add proxy-resolver property
4242  * GSimpleProxyResolver: new simple GProxyResolver class
4243  * documentation fixes
4244  * gnetworkaddress: preserve IPv6 scope ID in IP literals
4245
4246 Bugs fixed:
4247  691105 Allow GSocketClient to override GProxyResolver for per client proxy settings.
4248  692827 configure test fails for arpa_nameser.h
4249  692829 new Btrfs support causes build failure on Solaris
4250  693285 GDBusObjectManagerClient: won't emit object-added|removed if name-owner arrives later
4251  693502 Cross-compiling documentation: typo (np -> no)
4252  693673 add g_dbus_address_escape_value()
4253  693694 gio: Fix annotations on g_[async_]initable_new() and friends 
4254
4255 Translations:
4256  Dutch
4257  Galician
4258  Polish
4259  Serbian
4260
4261 Overview of changes from GLib 2.35.6 to 2.35.7
4262 ==============================================
4263
4264 This is a quick follow-up release with a few bug fixes.
4265
4266 * Fix the build on systems with strict linkers by adding -pthread back
4267   to the LDFLAGS for a testcase.
4268
4269 * Re-enable native atomic operations on some buggy versions of clang
4270   that ship as part of the MacOS X SDK.
4271
4272 * Make G_IO_FLAG_IS_WRITEABLE an enum again (the #define broke bindings)
4273
4274 * a small docs fix
4275
4276 * Bugs fixed:
4277  657045
4278  636683
4279  682818
4280  693105
4281
4282 * Translations:
4283  Italian
4284
4285 Overview of changes from GLib 2.35.4 to 2.35.6
4286 ==============================================
4287
4288 * GUnixFdSource is a new way to add file descriptors
4289   to the mainloop
4290
4291 * g_source_set_ready_time lets you mark a source to become
4292   ready at a specified monotonic time
4293
4294 * The internal visibility handling of GLib has been reworked
4295
4296 * GFileMonitor will now automatically use fam instead of inotify
4297   if $HOME is on NFS
4298
4299 * The file monitor implementation can now be overridden with
4300   the GIO_USE_FILE_MONITOR environment variable
4301
4302 * Bugs fixed:
4303  570572 2 make check errors on
4304  592211 No monitoring over NFS mounts
4305  625552 wrong behaviour of GVolume GVolumeMonitor related func...
4306  657729 modernise GMainLoop
4307  658020 GSource for a single GPollFD
4308  678223 g_mutex_free
4309  682560 leak fixes
4310  682819 EINTR-harden all the things
4311  684404 When using g_network_address_address_enumerator_next()...
4312  686853 new GSource fd API
4313  688169 G_DISABLE_DEPRECATED doesn't cover deprecated/gthread....
4314  688681 build: Make .symbols file canonical on all platforms
4315  690118 Crash when closing last tab of a window using Ctrl-w
4316  691624 glib/gtester.c: missing include
4317  691812 gioinputstream - give task as callback_data not task_data
4318  691866 fails out of source build directory - gnetwork.h not f...
4319  692029 Add new API checking utility
4320  692034 Install an invalidation notifier for GClosure in g_sou...
4321  692058 Broken makefile for gio tests
4322  692079 build failure in gmarkup.c when using gcc 4.8 and buil...
4323  692201 inotify: fix a memleak
4324  692202 gfile: don't report completion twice on g_file_load_co...
4325  692229 Incorrect string formatters in a translation string
4326  692332 GNetworkMonitorNetlink: make the netlink socket cloexec
4327  692360 possibly non-threadsafe code in g_content_type_guess()?
4328  692404 tester: Use FD_CLOEXEC when creating pipes
4329  692408 nautilus SIGSEGV in g_file_info_get_size()
4330  692544 [PATCH] gfile: Ensure we create internal pipe with FD_C...
4331  692583 atomic get doesn't accept a const argument on architect...
4332  692618 Use g_timeout_add_seconds
4333  692815 Using g_hash_table_insert() when using a hash table as ...
4334  692865 Invalid docbook generated by gdbus-codegen
4335  692928 Document G_MENU_{ATTRIBUTE,LINK}_*
4336
4337 * Translation updates:
4338  Hebrew
4339  Kannada
4340  Lithuanian
4341  Norwegian bokmål
4342  Polish
4343  Serbian
4344  Slovenian
4345  Spanish
4346  Uyghur
4347
4348
4349 Overview of changes from GLib 2.35.3 to 2.35.4
4350 ==============================================
4351
4352 * New features:
4353  - New API: g_get_num_processors
4354  - New API: g_application_command_line_get_stdin
4355  - New GFileMonitor flag: G_FILE_MONITOR_WATCH_HARD_LINKS
4356  - Parse more timezone offset formats
4357  - Better timezone support on Windows
4358  - Make GParamSpec constructors introspectable
4359
4360 * Removed or deprecated features:
4361  - Disallow adding interfaces after class_init
4362
4363 * Bug fixes:
4364  532815 gio + inotify support for hardlinks
4365  614930 add g_get_num_processors (), return the max concurrent...
4366  626497 Btrfs clone/reflink ioctl support in g_local_file_copy
4367  633117 glib fails stests if /etc/localtime is not properly set
4368  661767 merge/improve various bits of run-in-thread functionality
4369  668210 Add g_application_command_line_get_stdin()
4370  675856 Use GDbus via gobject-introspection instead dbus-python
4371  684103 make glib work with python3
4372  684723 run-assert-msg-test.sh fails
4373  686058 OpenBSD: disable ipv6_v4mapped test
4374  686128 GTimeZone should be able to parse POSIX format for...
4375  687223 cleverer GThreadPool management
4376  687659 drop support for adding interfaces after class_init
4377  687920 GCredentials should have an accessor for the process ID
4378  688681 build: Make .symbols file canonical on all platforms
4379  688829 Variable overflow in utils.c test on 32-bit machine
4380  689324 Variable scoping in gunixmounts.c
4381  689810 Include guard optimization
4382  690043 Broken link for gsettings tutorial: gnome-utils in...
4383  690084 gmarkup: Make GMarkupParseContext a boxed type
4384  690388 Check if CMSG_FIRSTHDR() returns NULL when there is...
4385  690538 gschema DTD is invalid
4386  690543 Add test coverage for testing in-tree DBus services...
4387  690670 local_command_line not introspectable/annotated
4388  690902 G_END_DECLS needs to be at the end of gutils.h
4389  690970 Unhelpful deprecation message for g_value_array_get_nth
4390  691001 building docs is broken on master branch
4391  691011 Automake-1.13 errors on obsolete AM_PROG_CC_STDC
4392  691077 gio-querymodules crashes with SIGSEGV
4393  691110 g_cond_wait() docs incomplete
4394  691489 Crash in Oscars 2013 page
4395  691558 Only check for .hidden files if standard::is-hidden...
4396  691608 Support compilation with clang 3.2
4397
4398 * Translation updates:
4399  Assamese
4400  Bulgarian
4401  Estonian
4402  Galician
4403  Greek
4404  Hebrew
4405  Norwegian bokmål
4406  Polish
4407  Slovak
4408  Slovenian
4409  Spanish
4410  Tamil
4411
4412
4413 Overview of changes from GLib 2.35.2 to 2.35.3
4414 ==============================================
4415
4416 * This release contains an incompatible change to the g_get_home_dir()
4417  function. Previously, this function would effectively ignore the HOME
4418  environment variable and always return the value from /etc/password.
4419  As of this version, the HOME variable is used if it is set and the
4420  value from /etc/passwd is only used as a fallback.
4421
4422 * We now install a public "gnetworking.h" header that can be used to
4423  include the relevant OS-dependent networking headers. This does not
4424  really abstract away unix-vs-windows however; error codes, in
4425  particular, are incompatible.
4426
4427 * Bugs fixed in this release:
4428  142568 Allow $HOME to override passwd entry if the user really wants
4429  587806 The file selector should honor .hidden files
4430  602715 [GChecksum] Please add support for SHA512
4431  623187 provide some support for arbitrary setsockopt()s?
4432  629301 .goutputstream files left behind when cancelling I/O
4433  652650 Optimize GDBusMessage serialization
4434  664627 /gapplication/basic test intermittently fails: cmdline re-or...
4435  675516 Win32: Don't start a DBus server when built as static library
4436  679683 replace g_test_trap_fork()
4437  684145 Current Git sources fails to cross-compile for Windows in Li...
4438  686895 file-info: catch thumbnail files in large directory as well
4439  687092 IPv6 <-> IPv4 mismatch when subscribing to multicast (send)
4440  688180 GObject: Minor error in description of floating reference
4441  688319 gthread: add missing AVAILABLE_IN_2_32 annotations
4442  688377 configure: add missing square bracket in AS_IF for memmove
4443  688419 gtask: source_object arguments and return values not annota...
4444  688497 AppInfo: Add sufficient api to port gnome-session from Egg...
4445  688681 build: Make .symbols file canonical on all platforms
4446  688704 Add boxed GType for GThread
4447  688886 Improve the i18n documentation
4448  688931 GMemoryOutputStream: Add new _resizable() constructor usab...
4449  689037 need helper for creating a GFile from a remote commandline...
4450  689377 Fix a compiler warning in GDBus
4451  689538 Source object tag set too late in gsocketlistener
4452  689800 Treat lost+found directory as a hidden file
4453  689847 Add fast repeated typename -> GType resolver
4454  689982 Make GChecksum more fully introspectable
4455  690069 g_unix_open_pipe: Add missing F_SETFD
4456  690083 gfileenumerator: Add a g_file_enumerator_get_child method
4457  690163 Add a pre-configured gio/gnetworking.h for Visual C++ builds
4458  690346 Remove an unneeded escaping in NAMESER_COMPAT_INCLUDE
4459  690348 Fix g_type_add_class_private() name in g_warning
4460
4461 * Translation updates:
4462  Assamese
4463  Galician
4464  Hebrew
4465  Hindi
4466  Kannada
4467  Odia
4468  Polish
4469  Spanish
4470
4471
4472 Overview of changes from GLib 2.35.1 to 2.35.2
4473 ==============================================
4474
4475 Note that the incompatible change to the ->constructed() vfunc that was
4476 made in the last unstable release (2.35.1) has been reverted due to
4477 causing regressions in applications.
4478
4479 A new incompatible change has been introduced in this version: it is no
4480 longer permitted to add interfaces to a class after the first
4481 instantiation (or more strictly: after g_type_class_ref()).  Bug #687659
4482 is tracking this.
4483
4484 Two private symbols (g_menu_{attribute,link}_hash_iter_get_type) which
4485 were accidentally exported have also been properly hidden.  This may
4486 cause some tools to issue warnings about ABI mismatch.
4487
4488 The remaining changes should be relatively harmless: 
4489
4490  * GIO now has kqueue support for GFileMonitor (BSDs, Mac OS)
4491
4492  * New g_variant_new_from_bytes() API
4493
4494  * UNIX signal sources now allow watching SIGUSR1 and SIGUSR2
4495
4496  * Many pedantic cleanups to adhere to a higher level of -W use
4497
4498  * GTask changes to avoid a deadlock
4499
4500  * many cleanups/fixes for Windows
4501
4502  * Boxing for GPollFD, GIOChannel, GBytes, GByteArray
4503
4504  * Fix URL-encoding of trashed files
4505
4506  * Many other docs and annotations fixes
4507
4508 Translations:
4509
4510  Galician
4511  Gujarati
4512  Lithuanian
4513  Serbian
4514  Slovak
4515  Slovenian
4516
4517 Bugs closed:
4518
4519  649302 Add support for GNU/FreeBSD
4520  668842 [GSocket] Add caching for the sender address in g_socket_receive_from()
4521  672924 Add annotations for g_filename_from_uri()
4522  673229 glib: Use Returns:, not @returns
4523  677062 (partial) GVariant: Make g_variant_new_from_bytes() public, add more GBytes API
4524  686185 g_date_time_format Transcoding Fails on OSX      
4525  686191 g_mutex_get_impl() should use g_atomic_pointer_get()
4526  686797 Box GPollFD to make it introspectable
4527  686810 [regression] Infinite wait in g_task_run_in_thread_sync()
4528  686822 possible dlopen()/dlclose() issue with automatic g_type_init()
4529  686839 mkinstalldirs: Move to glib-mkinstalldirs
4530  686895 file-info: catch thumbnail files in large directory as well
4531  686898 g_unix_signal_source_new: Allow SIGUSR1 and SIGUSR2
4532  686920 gdbus: Allow GDBusObjectManagerClient to work on peer connections
4533  686921 Remove some of the repetition from gio/tests/Makefile.am
4534  687075 g_spawn_sync diagnostic incorrectly complains about SIGCHLD
4535  687089 g_dbus_connection_export_menu_model(): fix a crash
4536  687098 Repeated g_timeout_add* use can lead to guint overflow
4537  687385 Add some stricter CFLAGS, fix up the code
4538  687441 ABI break in master: g_menu_attribute_hash_iter_get_type, g_menu_link_hash_iter_get_type removed
4539  687516 typo in string: KB should be kB
4540  687540 In Trash folder, Nautilus misinterprets "\n" in filename as a line break
4541  687541 GSignalQuery param_types field needs array annotation
4542  687600 gfileutils.c performs invalid cast of (varargs) open to non-vararg type
4543  687698 plural forms needed
4544  687700 ending spaces
4545  687742 Add support for internal linkage to glib-compile-resources
4546  687801 tests/buffered-input-stream: Fix size of parameter passed
4547  688109 win32 warning/error fixes
4548  688255 'make check' regressed in 138f4c1 because GMarkup error messages changed
4549  688338 [PATCH] gobject/gtype.c: Fix spelling of »exceed«
4550  688370 GDBusError documentation improvement for client-side
4551  688378 g_socket_join_multicast_group not working
4552  688518 gio-kqueue: use O_EVTONLY on MacOS
4553
4554
4555
4556 Overview of changes from GLib 2.34.0 to 2.35.1
4557 ==============================================
4558
4559 These two changes in particular may be slightly incompatible.  Please
4560 give feedback if they cause trouble:
4561
4562   * Signal handlers connected with g_signal_connect_object() are now
4563     automatically disconnected on target object destruction
4564
4565   * The ->constructed vfunc is now called after all properties are set
4566
4567 The remaining changes should not cause problems.
4568
4569   * g_type_init() is no longer necessary and has been deprecated
4570
4571   * GTask (the new GAsyncResult implementation) has landed 
4572
4573   * GLib version macros updated
4574
4575   * Update to Unicode 6.2
4576
4577   * Thread safety fixes for GFileMonitor in non-default main contexts
4578
4579   * GTimeZone support for old-format zoneinfo database (as on Mac OS)
4580
4581   * g_settings_bind() now works with non-canonical property names
4582
4583   * Fix crashes related to NULL connection passed to
4584     GBusNameVanishedCallback and document this situation
4585
4586 * Bugs fixed:
4587  118536 Make g_signal_connect_object'ed handlers disconnect when the data object is destroyed
4588  661767 merge/improve various bits of run-in-thread functionality
4589  682950 GFileMonitor crashing on high event count when running in different thread
4590  683642 Missing g_content_type_get_symbolic_icon
4591  684882 Gsettings should spaw a warning when binding against a low_underscored_property
4592  684909 codegen: Explicitly close output
4593  684912 Update to Unicode 6.2
4594  685037 g_strcmp0: Returns shall include values less and greater than zero
4595  685069 Leak in glib-compile-resources
4596  685208 missing g_return_if_fail
4597  685608 [Patch] Port gio tests from pygobject to pygi
4598  685697 Documentation typo in g_dbus_interface_skeleton_has_connection()
4599  685733 Call ->constructed() after all properties are set
4600  685787 gtestdbus: correct documentation typos
4601  685995 Crash in g_menu_exporter_name_vanished
4602  686091 Invalid reads in g_bytes_unref_to_data
4603  686119 dtrace, gobject_probes.d, the last three probes - semicolon missing
4604  686161 Deprecate g_type_init()
4605  686231 GBusNameVanishedCallback: document NULL connection
4606  686458 slightly increase poll duration in test_timed_wait 
4607
4608 * Translations updated
4609   Catalan (Valencian)
4610   Czech
4611   Danish
4612   Italian
4613   Lithuanian
4614   Norwegian bokmål
4615   Slovenian
4616
4617 Overview of changes from GLib 2.33.14 to 2.34.0
4618 ===============================================
4619
4620 * Bug fixes:
4621  654239 g_type_init()'s docs have no statement about how to...
4622  674620 Update GSettings migration guide for intltool updates
4623  676034 Fix doc annotation for g_ptr_array_ref()
4624  684278 Fix GIO build on Windows
4625
4626 * Translation updates:
4627  Brazilian Portuguese
4628  British English
4629  Bulgarian
4630  Catalan
4631  Galician
4632  German
4633  Hebrew
4634  Hindi
4635  Hungarian
4636  Kannada
4637  Latvian
4638  Marathi
4639  Spanish
4640  Telugu
4641
4642
4643 Overview of changes from GLib 2.33.12 to 2.33.14
4644 ================================================
4645
4646  * CVE-2012-3524: don't run dbus-launch from setuid binaries
4647
4648  * g_content_type_get_generic_icon_name():
4649      new API for getting the icon name for a mime type
4650
4651  * Introspection fixes:
4652   - GDBusConnection nullability fixes
4653   - give a box type to GTimeZone
4654
4655  * Drop GVFS_INOTIFY_DIAG
4656
4657  * Add a new "Writing GLib Applications" section to the reference
4658    documentation with general info on security, threads, etc.
4659
4660  * gwin32mount.c: Fix syntax error
4661
4662  * gresource tests: srcdir != builddir fixes
4663
4664  * tests/gvariant: Fix test on big endian architectures
4665
4666  * Fix regression in g_shell_parse_argv()
4667
4668 Bugs fixed:
4669  562907 g_shell_parse_argv() mishandles # (hash)
4670  683167 g_time_zone_new not introspectable
4671  683384 /gvariant/checksum-basic failure on big endian machines
4672  683641 Typo in gwin32mount.c
4673  683744 have a way to get the generic icon name for a mime type
4674
4675 Translation updates:
4676  Assamese
4677  Belarusian
4678  British English
4679  Czech
4680  Danish
4681  French
4682  Galician
4683  German
4684  Greek
4685  Hebrew
4686  Indonesian
4687  Indonesian
4688  Korean
4689  Lithuanian
4690  Marathi
4691  Marathi
4692  Polish
4693  Portuguese
4694  Punjabi
4695  Russian
4696  Serbian
4697  Slovenian
4698  Traditional Chinese
4699
4700 Overview of changes from GLib 2.33.10 to 2.33.12
4701 ================================================
4702
4703 * Add a G_DEFINE_QUARK macro
4704
4705 * Add symbolic icon support to drive, volume, and mount, file
4706   and content types
4707
4708 * Add API to allow thread-safe access to the same qdata item
4709
4710 * Bugs fixed:
4711  562907 g_shell_parse_argv() mishandles # (hash)
4712  627240 add G_DEFINE_QUARK
4713  672329 memory leaks in gutils.c and glib tests
4714  673012 Stable byte-level specification for normal form
4715  674805 gdbusproxy async test is broken
4716  679835 gvariant format string parsing (and assertions)...
4717  682075 gdbus: Fix double free and use after free of ob...
4718  682101 Provide a way to get a symbolic icon for a device
4719  682222 test_method_calls_on_proxy: assertion failed (e...
4720  682284 mount-op: use gint64 instead of guint64 for tim...
4721  682386 "make check" fails due to sys/resource.h not be...
4722  682560 leak fixes
4723  682586 gsettings-tool: make list-recursively really re...
4724  682819 EINTR-harden all the things
4725  682833 Handle EINTR for open()
4726  682849 drop the global lock for g_object_weak_ref
4727  682965 gdbus-tool: Check return value of strrchr()
4728  683088 gdbus-codegen: fix error when wrong interface n...
4729         Fix the build with gtk-doc-stub
4730         Don't crash if set_app_info is called before ad...
4731
4732 * Translation updates
4733  Assamese
4734  Galician
4735  Greek
4736  Indonesian
4737  Japanese
4738  Latvian
4739  Lithuanian
4740  Norwegian bokmål
4741  Polish
4742  Portuguese
4743  Punjabi
4744  Russian
4745  Spanish
4746  Traditional Chinese
4747  Vietnamese
4748
4749
4750 Overview of changes from GLib 2.33.8 to 2.33.10
4751 ===============================================
4752
4753 * New GTest API for testcases where log output is expected:
4754   g_test_expect_message()
4755
4756 * GMenuItem now has 'get' accessors and a construct-from-GMenuModel API
4757
4758 * GVariant now has a function to check a format-string for type
4759   compatibility
4760
4761 * win32: We now use overlapped IO to support multiple asynchronous
4762   operations (ie: reading and writing) at the same time.
4763
4764 * GMappedFile: Add g_mapped_file_get_bytes()
4765
4766 * The problems with g_file_make_directory_with_parents() should be
4767   resolved.
4768
4769 * The long-standing issues with placeholder generation of manpages are
4770   now resolved.
4771
4772 * gtlscertificate: Add GBytes based certificate and private-key props
4773
4774 * build: Switch back to using AS_IF for conditionals
4775
4776 * test coverage improvements, documentation improvements, leak fixes
4777
4778 * Bugs fixed
4779  326931 Better docs for G_GNUC_*
4780  550433 g_test_init doesn't recognize --help
4781  600751 GCompletion should better document if and how items memory is managed
4782  628193 Miscellaneous string fixes
4783  637460 man glib-genmarshal is hard to use
4784  674483 broken configure results when cross-compiling with gcc >= 4.5
4785  677065 GMappedFile: Add g_mapped_file_get_bytes()
4786  679288 win32: use overlapped events for streams
4787  679556 it's hard to use gtest when g_warning() is expected
4788  680823 g_file_make_directory_with_parents: Fix error propagation
4789  681319 gtlscertificate: Add certificate-bytes and private-key-bytes props
4790  681336 man pages not built if --enable-gtk-doc not specified
4791  681413 build: Switch back to using AS_IF for conditionals
4792  681501 gmem: array only partially filled with memcpy
4793  681854 Documentation fix for Howto compile a program with glib
4794  682025 Documentation correction
4795  682067 Fix problems with CLEANFILES and automake-1.11.1 
4796
4797 * Translations updated:
4798  Lithuanian
4799  Spanish
4800  Galician
4801  Telugu
4802  Serbian
4803  Assamese
4804  Marathi
4805  Indonesian
4806  Traditional Chinese
4807
4808 Overview of changes from GLib 2.33.6 to 2.33.8
4809 ==============================================
4810
4811 * GIO now has a g_file_delete_async function
4812
4813 * The defaults for GThreadPools max_unused_threads
4814   and max_idle_time values have been changed to
4815   2 and 15*1000, respectively.
4816
4817 * Bugs fixed:
4818  661767 merge/improve various bits of run-in-thread functionality
4819  680074 undefined symbol "get_C_locale"
4820  680121 g_cancellable_source_new: don't use a file descriptor
4821  680148 gthread: check for definition of PR_SET_NAME
4822  680310 Sorting of access points by strengh not working
4823  680704 g_utf8_strup() crash
4824  68076a0 GFile: Add g_file_delete_async()
4825  680787 Add .dir-locals.el to tell Emacs users not to use tabs...
4826  680823 g_file_make_directory_with_parents: Fix error propagation
4827  680994 STATIC_ASSERT in GDBusError docs don't have much utility
4828  681116 gtlscertificate: Add g_tls_certificate_equal() function
4829  681118 gtlsdatabase: Don't complain if no callbacks for async...
4830  669331 try to get gio tests working a little better on win32
4831  674314 Make gtk-doc not a hard dependency of GLib
4832  674800 gclosure: generic marshaller leaks return value
4833  675524 gsocket: FIONREAD undeclared (needs sys/filio.h)
4834  679509 use after free in g_dbus_action_group_describe_all_done()
4835  679996 gobject docs minor cleanup
4836  680459 Extra newline char in local implementation of g_applic...
4837  680505 object_path memory leak in gdbusobjectproxy.c
4838  680831 Deprecate and remove g_slice_[sg]et_config.*
4839  680912 gchecksum: Add g_compute_checksum_for_bytes()
4840  681151 checksum: Use functions instead of macros when buildin...
4841  681158 gtlscertificate: Don't confuse certificate and public ...
4842
4843 * Translation updates:
4844  Galician
4845  German
4846  Gujarati
4847  Hebrew
4848  Norwegian bokmål
4849  Serbian
4850  Slovenian
4851
4852
4853 Overview of changes from GLib 2.33.4 to 2.33.6
4854 ==============================================
4855
4856 * GAsyncInitable: partially revert the init_finish changes,
4857   some applications were found to rely on behaviour that
4858   was broken by these changes
4859
4860 * Bugs fixed:
4861  679617 win32: fix g_get_environ()
4862  679968 Add some annotations to GBytes, GVariantType...
4863  680111 GIOScheduler assumes GCancellable "cancelled...
4864
4865 * Translation updates:
4866  Spanish
4867
4868 Overview of changes from GLib 2.33.3 to 2.33.4
4869 ==============================================
4870
4871 * GMainContext: the source list has been reorganzied to
4872   avoid O(n) behaviour
4873
4874 * GRegex: Update included PCRE to 8.31 and expose new
4875   functionality in 8.x versions of PCRE
4876
4877 * GMountOperation gained a ::show-unmount-progress signal
4878   which provides information about slow unmount operations
4879
4880 * Bugs fixed:
4881  616892 gio: Add a boxed type for GFileAttributeMatcher
4882  619329 g_source_attach() O(n) in number of sources
4883  639771 g_dir_read_name() can also return NULL on error
4884  661767 merge/improve various bits of run-in-thread fun...
4885  667375 GAsyncInitable subclassing (and async subclassi...
4886  671545 Constify collect and lcopy strings in GTypeValu...
4887  674452 SEGFAULT in gio contenttype test
4888  674898 Deal with GLIB_VERSION_MIN_REQUIRED/MAX_ALLOWED...
4889  675504 Fix up GObject interface documentation
4890  677064 GString: Tweak documentation, add g_string_free...
4891  677578 error in PCRE error code conversion
4892  677579 update GRegexError for newer PCRE error codes
4893  678066 gdbus codegen does not work with python3
4894  678273 unicode othercasing is wrong in gregex
4895  678576 GIOScheduler performance enhancements
4896  678758 GTlsInteraction unlocks an unlocked mutex
4897  678808 GTestDBus issues
4898  678881 Test failures in /socket/timed_wait in some cas...
4899  678941 /contenttype/guess test case failure
4900  678944 gio returns the wrong default applications for ...
4901  678949 wrong definition of ulong_bool for 64 bit big e...
4902  678959 /mainloop/timeouts race condition: assertion fa...
4903  679193 update included pcre to 8.31
4904  679258 The 'Since' tag for G_SOURCE_CONTINUE and G_SOU...
4905  679473 Don't generate invalid property names
4906  679691 Add g_spawn_check_exit_status()
4907  679671 GDBusNodeInfo: the XML string must contain exac...
4908  676111 mount-operation: add show-unmount-progress signal
4909  679691 win32: fix build g_spawn_check_exit_status() wi...
4910  679813 Documentation bug on http://developer.gnome.org...
4911
4912 * Translation updates:
4913  Assamese
4914  Belarusian
4915  Bulgarian
4916  Galician
4917  Greek
4918  Norwegian bokmål
4919  Polish
4920  Spanish
4921  Traditional Chinese
4922  Vietnamese
4923
4924
4925 Overview of changes from GLib 2.33.2 to 2.33.3
4926 ==============================================
4927
4928 This release contains mostly bugfixes, cleanups and performance
4929 improvements (including many fixes contributed by Colin on the advice of
4930 Coverity).  There are a few notable externally-visible changes:
4931
4932 * Thumbnails are now in XDG_CACHE_HOME
4933
4934 * new GDBus API: per-thread g_dbus_connection_get_last_serial()
4935
4936 * GUnixOutputStream now has a can_poll() implementation
4937
4938 * New deep copy APIs for G(S)List: g_(s)list_copy_deep
4939
4940 * Bugs fixed:
4941  518309 Incorrect data*dir path in glib-gettextize output
4942  566994 Safer passing of -framework flag
4943  672889 GLib.utf8_validate does segfault
4944  673253 Not strict enough autconf test for libelf
4945  675024 adds g_list_copy_deep() and g_slist_copy_deep
4946  675168 prepare for thumbnails to move to XDG_CACHE_HOME
4947  675966 gresolver: More robust parsing of DNS responses
4948  676594 [Patch] fix g_reload_user_special_dirs_cache
4949  676825 Implement g_dbus_connection_get_last_serial ()
4950  677235 Clarify the comment at the top of gmarshal.list
4951  677527 OS X: gthread/spawn-async selftest failure
4952  677718 GDBusProxy: treat org.freedesktop.systemd1.Masked error as non-fatal
4953  677770 GUnixOutputStream does not implement can_poll
4954  677782 Install bash completion files in /usr/share
4955  677817 g_key_file_to_data adds extra blank lines in some cases
4956  677952 Missing annotation for GDBusConnection signal "closed"
4957  678052 g_wakeup_acknowledge is called too often.
4958  678273 unicode othercasing is wrong in gregex
4959  678333 gdbus-codegen code causes warnings under -Wfloat-equal
4960
4961 * Translations updated:
4962  Arabic
4963  Assamese
4964  Galecian
4965  Greek
4966  Spanish
4967  Telugu
4968
4969 Overview of changes from GLib 2.33.1 to 2.33.2
4970 ==============================================
4971
4972 * GLIB_VERSION_MIN_REQUIRED now defaults to the current stable version
4973
4974 * GIO input and output stream classes have grown GBytes-based methods
4975
4976 * GApplication now has hooks to register D-Bus objects before the bus
4977   name is taken
4978
4979 * Bugs fixed:
4980  605976 add g_type_ensure(), to ensure that a type has...
4981  660851 Breakage of code due to changes in the GThread...
4982  666386 Empathy doesn't open Redirect URI with particu...
4983  671139 need (transfer async) for io stream buffers
4984  672329 memory leaks in gutils.c and glib tests
4985  672548 g_utf8_validate: @str shouldn't end up annotat...
4986  674111 Provide an accessor for MimeType desktop entry...
4987  674483 broken configure results when cross-compiling ...
4988  674634 Add g_clear_pointer()
4989  674777 What's the (transfer) of g_variant_lookup()?
4990  675309 gkeyfile: Fix annotations for g_key_file_load_...
4991  675446 gfile: Plug memory leak in g_file_make_directo...
4992  675509 add extra dbus hooks
4993  675832 Incomplete gsettings bash auto-completion
4994  676208 The tmpl parameter to g_file_new_tmp can be NULL
4995  676265 GNetworkMonitor leaks a lot of memory
4996  676277 Document that g_app_info_create_from_commandli...
4997  676397 g_environ_* should work with NULL envp
4998  676398 g_spawn_* should take PATH from the passed env...
4999  676478 Broken gzip decoding
5000  676594 [Patch] fix g_reload_user_special_dirs_cache
5001  676816 Add more GLIB_AVAILABLE_IN_*
5002  676937 Document notify signal deduplication with free...
5003
5004 * Translation updates:
5005  Czech
5006  French
5007  German
5008  Greek
5009  Japanese
5010  Russian
5011  Slovenian
5012  Spanish
5013
5014
5015 Overview of changes from GLib 2.32.1 to 2.33.1
5016 ==============================================
5017
5018 * GApplication
5019  - can now have a NULL application ID
5020  - add accessors for determining dbus connection and object path
5021
5022 * g_clear_object: fix warnings when using it on C++ (due to lack of
5023   ability to implicitly cast void*)
5024 * add g_clear_pointer as a generic form of g_clear_object
5025
5026 * GDBus:
5027  - add our own implementation of the message bus for use on Windows only
5028  - fix up a few bugs that use of this bus uncovered in GDBus
5029  - escape nonce files in dbus addressess (think 'c:\')
5030  - support initial underscores in dbus codegen namespace (for private)
5031  - add GTestDBus for bringing up a session bus for testing purposes
5032  - gdbus-codegen: Avoid warnings in generated code
5033  - GDBusAuthObserver: Add a way to control what authentication mechanisms to use
5034  - 
5035
5036 * Fix misdetection of GNUstep as Cocoa (for the MacOS GSettings backend)
5037
5038 * make sure configure fails if AC_CHECK_ALIGNOF cannot detect the alignment
5039
5040 * GAppInfo
5041  - overwrite the DISPLAY only if it is set in the launch context
5042  - add accessor for StartupWMClass
5043
5044 * glib/tests/date: force US locale running the GDateTime tests
5045
5046 * Resources:
5047  - fix broken use of GVDB on big endian machines
5048  - set a 'display name' so that pretty file names appear in Gtk CSS
5049    warning messages
5050
5051 * GMainContext:
5052  - block child sources when blocking the parent
5053  - introduce more testcases for child sources
5054
5055 * GResolver: add support for MX, TXT, NS and SOA records
5056
5057 * GSocketControlMessage: Don't warn about unknown messages
5058
5059 * GIO:
5060  - implement GSeekable for the data and buffered stream classes
5061  - implement GPollable for many more classes as well
5062  - fix GConverterInputStream infinite loop when fill_buffer returns an error
5063  - fileinfo: document the correct type for trash::orig-path
5064
5065 * test coverage improvements and general fixes
5066
5067 * new 2.34 stuff: version macros, docs index section, etc.
5068
5069 * Build:
5070  - add --disable-modular-tests build option
5071  - don't require host binaries if tests are not enabled for cross-builds
5072
5073 * Translations updated
5074  Brazilian Portuguese
5075  Bulgarian
5076  Czech
5077  French
5078  Galician
5079  German
5080  Hebrew
5081  Hindi
5082  Italian
5083  Norwegian bokmål
5084  Polish
5085  Russian
5086  Russian
5087  Serbian
5088  Simplified Chinese
5089  Slovenian
5090  Spanish
5091  Telugu
5092
5093 Overview of changes from GLib 2.32.0 to 2.32.1
5094 ==============================================
5095
5096 * Bugs fixed:
5097  670254 glib-2.30.2: Fails /GDateTime/new_from_unix test
5098  672541 glib-compile-resources prepends --sourcedir to absolute paths
5099  673139 URL to mailing lists in README incorrect
5100  673174 g_input_stream_read[_finish]: document returning 0 on EOF
5101  673191 glib/gchecksum.c warning: dereferencing type-punned pointer...
5102  673216 [W32] gtestutils does not use path separators consistently
5103  673439 Properly deprecate g_value_{set,get}_char
5104  673612 Fails to decode dictionaries wrapped in two layers of array
5105  673803 gclosure: Support return values of GVariants
5106  669285 glib/tests/markup-parse fails under non-english locale
5107  673911 gio-2.0.pc lists full path to executables, breaking cross com..
5108  673762 gnextstepsettingsbackend.c:343: error: parse error before 'in'
5109
5110 * Updated translations:
5111  Belarusian
5112  British English
5113  Bulgarian
5114  Catalan
5115  Czech
5116  French
5117  German
5118  Hebrew
5119  Hindi
5120  Hungarian
5121  Italian
5122  Japanese
5123  Kannada
5124  Latvian
5125  Lithuanian
5126  Marathi
5127  Norwegian bokmål
5128  Odia
5129  Polish
5130  Serbian
5131  Slovenian
5132  Spanish
5133  Swedish
5134  Telugu
5135
5136
5137 Overview of changes from GLib 2.31.22 to 2.32.0
5138 ===============================================
5139
5140 * Bugs fixed:
5141  671988 Quickly registering / unregistering objects on bus...
5142  672095 glib needs stable sort function
5143  672406 glib/tests/include.c fails to build on FreeBSD
5144
5145 * Updated translations:
5146  Telugu
5147
5148
5149 Overview of changes from GLib 2.31.20 to 2.31.22
5150 ================================================
5151
5152 * Bugs fixed:
5153  531901 Use __builtin_bswap* for GUINT*_SWAP_LE_BE if building...
5154  653167 Out of tree build is broken on windows
5155  668973 Test /gvariant/parser fails on Solaris 10
5156  669797 gvfs now lists its fuse mounts
5157  670846 deadlock: GStreamer-WARNING **: wrong STREAM_LOCK count 0
5158  671664 gio-querymodules: unlink instead of writing empty cache
5159  671676 Glib can't be cross-compiled any more after merge of...
5160  671918 gnome-shell is inaccessible unless started while an AT...
5161  671942 GSocketMsgFlags: annotate as a flags
5162  671997 Unix signal handling assumes that volatile 1-byte writes...
5163  672013 GSimpleAsyncResult: support reliable cancellation
5164  672026 default log output should include pid and/or prgname
5165  672095 glib needs stable sort function
5166  672201 G_SPAWN_SEARCH_PATH should continue on ENODEV and ETIMEDOUT
5167  672239 request NO_REPLY from g_dbus_connection_call() with no as...
5168  672249 gdbusproxy leaks asyncresult in an error case instead of...
5169
5170 * Translation updates:
5171  Assamese
5172  British English
5173  Catalan
5174  Catalan (Valencian)
5175  Danish
5176  Esperanto
5177  Finnish
5178  French
5179  German
5180  Hungarian
5181  Korean
5182  Lithuanian
5183  Norwegian bokmål
5184  Polish
5185  Portuguese
5186  Russian
5187  Traditional Chinese
5188
5189
5190 Overview of changes from GLib 2.31.18 to 2.31.20
5191 ================================================
5192
5193 * Update to Unicode 6.1
5194
5195 * Update PCRE to 8.30
5196
5197 * Deprecations are now versioned, and new API is
5198   marked with the version it was introduced.
5199   Use these with GLIB_VERSION_{MIN,MAX}_REQUIRED
5200
5201 * The performance of signal emissions has been
5202   improved for simple cases
5203
5204 * Bugs fixed:
5205  529806 Cannot build in 64-bit Mac OS X due to libiconv
5206  580873 Documentation of register type functions incomplete
5207  592666 Document how to unset an attribute
5208  597785 g_type_class_add_private code snippet is a bad example
5209  621368 glib-2.24.1: FAIL: run-assert-msg-test.sh when updating...
5210  622149 --disable-regex breaks glib2 build
5211  639873 GBinding: Crash when binding two properties on the same...
5212  640202 For GLIB v. 2.23.6 and above: impossibility to build mu...
5213  668295 Need a way to classify GVolume instances
5214  669670 gasyncqueue: don't use deprecated g_cond_timed_wait()
5215  670542 Add version information for deprecations
5216  670557 gvaluetransform: Fix an infinite loop with GFlagsValue...
5217  670721 global variable for signal ID should be hidden
5218  670751 IceWM build fails due to the G_DEPRECATED_FOR macro
5219  670909 g_dbus_connection_call leaks when it receives an error...
5220  670922 Include path to gdbus-codegen in the pkgconfig file
5221  670969 GSequence lookup may fail if there was no sort prior to...
5222  671025 Constants and identifiers starting with a number are no...
5223  671270 make distclean failures
5224  671281 glib-compile-resources.xml is missing from the dist tar...
5225
5226 * Translation updates:
5227  Basque
5228  Belarusian
5229  Brazilian Portuguese
5230  Bulgarian
5231  Galician
5232  Hebrew
5233  Lithuanian
5234  Persian
5235  Punjabi
5236  Serbian
5237  Simplified Chinese
5238  Slovenian
5239  Telugu
5240  Traditional Chinese
5241  Uyghur
5242  Vietnamese
5243
5244
5245 Overview of changes from GLib 2.31.16 to 2.31.18
5246 ================================================
5247
5248 * GDBusProxy has now a flag, G_DBUS_PROXY_FLAGS_GET_INVALIDATED_PROPERTIES,
5249   which can be set to make GDBus automatically reload
5250   changed properties even if the propertychanged signal
5251   does not contain the new values.
5252
5253 * GApplication puts non-unique applications on the bus
5254
5255 * GApplication now has g_application_quit()
5256
5257 * g_async_queue_timed_pop has been deprecated in favor of
5258   the new g_async_queue_timeout_pop, which uses relative
5259   delays in microseconds instead of a GTimeVal.
5260
5261 * a huge number of API documentation fixes
5262
5263 * Bugs fixed:
5264  647986 put non-unique apps on D-Bus
5265  658484 vpn connection vs NetworkSecretDialog
5266  664237 GDateTime falls back to UTC if TZ is set
5267  669329 gthread-win32: update for g_get_monotonic_time() changes
5268  669330 glocalfile: fix error code when opening a directory on win32
5269  669372 glib/tests memory leaks.
5270  669412 mem leak in g_environ_unsetenv
5271  669538 Fix compilation of glib-compile-resources.c on Windows
5272  669544 gdbus-codegen example introspection XML is not complete
5273  669595 glib-mkenums: fix handling of forward enum declarations
5274  669670 gasyncqueue: don't use deprecated g_cond_timed_wait()
5275  669671 gobject: use #pragmas to avoid deprecated function warnings
5276  669689 Retrieve cwd and environ in local GApplicationCommandLine
5277  669810 socket/win32: flush pending read before signaling HUP
5278  669865 g_regex_fetch()
5279  670085 memory leak in g_output_stream_write_async
5280  670138 gbytes.h is missing the G_BEGIN/END_DECL guards
5281  670485 Simplify session API (shared bug with gtk+)
5282
5283 * Updated translations:
5284  Belarusian
5285  Danish
5286  Galician
5287  Serbian
5288  Telugu
5289  Hebrew
5290
5291
5292 Overview of changes from GLib 2.31.14 to 2.31.16
5293 ================================================
5294
5295 * GResource:
5296  - The resource compiler can now convert pngs into
5297    pixel data that can be used without parsing at runtime
5298    (requires gdk-pixbuf-pixdata to be present)
5299
5300 * Bugs fixed:
5301  669123 resource compiler: failing to-pixdata should...
5302  669173 resource: fix xml preprocess entity handling
5303  669224 Cross-compilation broken by data-to-c
5304  669253 gsettings set buggy on array values
5305  669334 fix memory leak in bookmark file parser
5306
5307 * Translation updates:
5308  Norwegian bokmål
5309  Spanish
5310
5311
5312 Overview of changes from GLib 2.31.12 to 2.31.14
5313 ================================================
5314
5315 * GResource:
5316  - GLib now includes a commandline utility, gresource,
5317    to explore resources in ELF files
5318  - The resource compiler can now optionally strip
5319    ignorable whitespace from XML resources
5320  - The resource compiler can now generate build dependencies
5321  - The resource compiler will now autoselect output formats
5322
5323 * GApplication:
5324  - The menu markup parser API has been dropped, the
5325    menu XML support lives in GTK+ now
5326
5327 * GValueArray has been deprecated
5328
5329 * Bugs fixed:
5330  626258 N-ary Trees - 'nodes' can be inserted before and after...
5331  634232 Core Dump / Aborted using g_key_file_to_data
5332  639099 schema compiler chokes on valid schema
5333  667228 Deprecate GValueArray
5334  667243 Add an element clear function to GArray
5335  667929 glib-compile-resources: xml resources doesn't need to...
5336  668250 g_date_time_format() produces a non-UTF8 string
5337  668468 'IP_ADD_SOURCE_MEMBERSHIP' undeclared
5338  668532 resources: add dependency generator to the resource compiler
5339  668539 resources: compiler should autoselect output format...
5340  668561 gresource-tool not internationalized
5341  668572 glib_cv_g_atomic_lock_free config.cache setting not honored...
5342  668650 GRealArray->clear_func should be initialized
5343  668756 GKeyFile: allow loading from empty strings
5344  668857 fix couple of typos in comments
5345  669024 goption: implement platform_get_argv0() for OpenBSD
5346
5347 * Updated translations:
5348  Galician
5349  Norwegian bokmål
5350  Spanish
5351  Traditional Chinese
5352
5353 Overview of changes from GLib 2.31.10 to 2.31.12
5354 ================================================
5355
5356 * GApplication:
5357  - Drop support for exporting menus - this functionality
5358    will be provided in GtkApplication
5359  - Add a way to create actions that change settings
5360
5361 * Bugs fixed:
5362  629503 Add async versions of g_unix_connection_{receive,send}_credentials
5363  656301 glib-compile-schemas should not create an empty file
5364  668071 mingw-gcc build fails on gio/gsocket.[c|h]
5365  668118 the big appmenu switcheroo
5366  668158 base64 encode and line termination
5367  668163 GDBusConnection: note that exit-on-close is sometimes TRUE
5368  668269 gsignal: add g_signal_handlers_disconnect_by_data
5369  668279 create GAction from GSettings
5370
5371 * Translation updates:
5372  Norwegian bokmål
5373
5374
5375 Overview of changes from GLib 2.31.8 to 2.31.10
5376 ===============================================
5377
5378 * GResource:
5379  - A new facility to allow linking data files into binaries
5380    and make them available as resources
5381  - Resources are compiled using glib-compile-resources
5382  - GIO supports resource:/// uris to access resources
5383
5384 * Bugs fixed:
5385  619126 Missing dependency libs
5386  658315 g_key_file_get_keys() should set length to 0...
5387  660371 is it ever valid to have 0 as a GError domain?
5388  666700 Add some missing (allow-none) annotations
5389  667375 GAsyncInitable subclassing (and async subclassing...
5390  667447 Missing many introspection annotations
5391  667790 Protect call to pthread_condattr_setclock with define
5392  667938 wrong gtypes generated for empty flags enums
5393
5394 * Translation updates:
5395  Hebrew
5396  Spanish
5397
5398
5399 Overview of changes from GLib 2.31.6 to 2.31.8
5400 ==============================================
5401
5402 * GObject:
5403  - The type checks for overriding properties have been loosened.
5404    In particular, it is now possible to add the CONSTRUCT flag
5405    to an overridden property
5406  - GWeakRef is a new API for weak references; unlike g_object_weak_ref
5407    and g_object_add_weak_pointer, it is thread-safe.
5408
5409 * GHashTable has grown new convenience api for use as a set:
5410   g_hash_table_add, g_hash_table_contains
5411
5412 * GSocketConnection has gained API for managing connection status
5413
5414 * GSettings: a native OS X backend has been added, under the
5415   name 'nexstep'
5416
5417 * Bugs fixed
5418  455640 Something fishy with GRegex and unicode
5419  548954 weak references are not threadsafe
5420  625751 Add G_FILE_ATTRIBUTE_FILESYSTEM_USED
5421  658871 gbacktrace: g_get_prgname () isn't called for a NULL argu...
5422  664069 gvariant: Never break out of g_variant_iter_loop
5423  664830 g_strescape doesn't natively handle \v (vertical tab)
5424  665211 GDBusConnection singleton access can race with disposal
5425  665805 Add GSocketClient::action, for tracking socket client status
5426  666116 some tests provoke undefined behaviour, which is undesira...
5427  666422 Unreachable code in gio gnetworkmonitornetlink.c
5428  666551 Crash in g_thread_xp_SleepConditionVariableSRW
5429  666595 menu parser disallows id='' on submenu and section
5430  666615 loosen property override flag restrictions
5431  666616 gobject: fix property override type checks
5432  666803 g_utf8_validate() fails to validate strings with known size
5433  666804 g_ateaxit deprecation warning in devhelp points in wrong ...
5434  666951 g_mkdtemp: Since version incorrect in docs
5435  666978 Fails to compile glib applications with ISO C90 compiler
5436  667098 ginetaddressmask leaks its address property
5437  667225 GSocket: add missing type checks to public methods
5438  667226 GSocket: fix an error return value
5439  667279 Sometimes crashes when launching commandline-crea...
5440  667285 Wrong keyname listed in documentation for g_deskt...
5441  667331 Use g_queue_free_full() convenience function
5442  667420 GHashTable GDB pretty printing is broken
5443
5444 * Updated translations
5445  Belarusian
5446  Bulgarian
5447  Hebrew
5448  Norwegian bokmål
5449  Norwegian Nynorsk
5450  Spanish
5451  Vietnamese
5452
5453
5454 Overview of changes from GLib 2.31.4 to 2.31.6
5455 ==============================================
5456
5457 * GApplication no longer has APIs for setting menus.  Those have been
5458   moved to GtkApplication.
5459
5460 * the GActionGroup import/export functionality has been decoupled from
5461   GApplication by the introduction of a new interface for the purpose of
5462   handling platform data: GRemoteActionGroup.  This allows Gtk to
5463   properly deal with platform data (and gdk threads) on window actions.
5464
5465 * lots of documentation improvements
5466
5467 * bug fixes and a huge number of memory leak fixes
5468
5469 * the test suite now passes on ARM and some of the GDBus testcase hangs
5470   we've been seeing have been resolved (although others could remain)
5471
5472 * g_bytes_get_data() API changed: now includes 'size' out parameter
5473
5474 * new g_queue_free_full() API similar to g_[s]list_free_full()
5475
5476 * desktop files: use standard "Keywords" now, not "X-GNOME-Keywords"
5477
5478 * gsettings commandline tool now has --schemadir option for schemas not
5479   installed in the usual place (ie: as part of plugins)
5480
5481 * Bugs fixed:
5482  643736 GApplication doesn't emit dbus signals on action updates
5483  657433 g_queue_free_full() missing
5484  664699 glib: documentation fixes
5485  665737 acquire/release gdk threads lock on incoming dbus
5486  665879 GBytes: add a size argument to g_bytes_get_data
5487  666113 various leaks in GLib, GIO are visible in the regression tests
5488  666115 various tests leak memory, obscuring real leaks in the library
5489  666145 Doc could be more explicite that g_thread_init calls can be droped
5490  666173 Configure warning - linux/netlink.h usability... no
5491  666296 Race condition in g_thread_xp_get_srwlock
5492  666415 Settings tools should allow specifying a schema directory 
5493
5494 * Translations updated:
5495  French
5496  Spanish
5497
5498 Overview of changes from GLib 2.31.2 to 2.31.4
5499 ==============================================
5500
5501 * EXPERIMENTAL: Menu support has been added to GApplication.  Menus
5502   are exported on the bus, alongside the actions that are already there.
5503   There have also been many related improvements to action group
5504   functionality.
5505
5506   These new APIs are subject to changes in the coming releases.  In
5507   particular, it seems somewhat likely that the APIs for registering
5508   menubars may change in order to accommodate windows with different
5509   types of menubars.
5510
5511 * GDBusConnection previously directly dispatched destroy notifies when
5512   unregistering objects if the current main context was the same context
5513   the object was exported on.  It now unconditionally dispatches these
5514   through an idle on the context.
5515
5516 * Clean up Requires in pc files. Linking against GIO no
5517   longer drags in gmodule. This may require dependency
5518   fixes here and there.
5519
5520 * Introduce GBytes, a data type for immutable, fixed-size
5521   byte sequences. This makes the pre-existing GBuffer
5522   API available outside GLib
5523
5524 * GDBusInterfaceSkeleton can now be exported on multiple
5525   connections
5526
5527 * Bugs fixed:
5528  600161 Do not use static GTypeInfo and GInterfaceInfo
5529  640077 GFileMonitor: Always send CHANGES_DONE_HINT after a move...
5530  641720 Misleading definition for local_command_line() in GApplic...
5531  648516 Little comment error and 2 useless lines of code
5532  651997 Dummy backend for gapplication
5533  652560 Test for g_ascii_strtod is failing
5534  662208 failure to initialize a GInitable should be considered...
5535  662718 GDBusInterfaceSkeleton should be able to export on multi...
5536  663291 GBytes: Immutable, refcounted sequence of bytes
5537  664406 Need context for a proper translation
5538  664455 Build fixes for GLib GIT master (2.31.x)
5539  664558 GDBusWorker.frozen has a value > 1 in a gboolean
5540  664559 sys/wait.h not available on windows
5541  664617 gdbus segfault error 4 in libgio-2.0.so.0.3102.0
5542  664635 GMemory{Out,In}putStream _async functions break sub-class...
5543  664809 Add command line option to gtester to allow skipping tests
5544  665067 cryptic assertion failure if nonsensical flag combinations...
5545  665184 Check ref. count before reffing/unreffing
5546  665298 Add 'Requires.private: libpcre' to glib-2.0.pc
5547  665391 update documentation around mainloops
5548  665607 ./configure is there for fiddling with cross-compile enviro...
5549  665634 g_dbus_node_info_new_for_xml() errors on unknown attributes...
5550  665685 Add a #define for the max length of a Unicode decomposition
5551  665733 GDBusConnection holds lock while calling destroynotify
5552
5553 * Translation updates:
5554  Norwegian bokmål
5555  Spanish
5556
5557
5558 Overview of changes from GLib 2.31.0 to 2.31.2
5559 ==============================================
5560
5561 * Monotonic time is now properly supported on Windows
5562
5563 * glib-mkenums: fix @ENUMPREFIX@ with /*< underscore_name=... >*/
5564
5565 * EXPERIMENTAL: introduce new GSettingsSchema and GSettingsSchemaSource
5566   APIs for the convenience of plugin system authors and those who wish
5567   to introspect the contents of schemas.  This API may change.
5568
5569 * Improve the performance of GObject property notifies.
5570
5571 * GDBus:
5572  - fix a race when unowning a name immediately after owning it
5573  - thread safety improvements on GDBusConnection
5574  - fixes for exit-on-close functionality
5575
5576 * Deprecations:
5577  - add G_SIGNAL_DEPRECATED
5578  - don't use G_DISABLE_DEPRECATED masking for functions anymore
5579
5580 * docs
5581  - tmpl/ is finally dead for glib
5582
5583 * GIO:
5584  - GInetAddressMask: new type for internet address range matching
5585  - various GIO file and stream fixes
5586  - improvements to attribute and fileinfo handling
5587
5588 Overview of changes from GLib 2.29/2.30 to 2.31.0
5589 =================================================
5590
5591 This release contains a huge number of changes (500 commits worth).  The
5592 list below attempts to summarise, but not every change is listed.
5593
5594 * Major changes to threading and synchronisation
5595  - threading is now always enabled in GLib
5596  - support for custom thread implementations (including our own internal
5597    support for errorcheck mutexes) has been removed
5598  - a whole lot of dead code (to deal with the non-threaded case) has
5599    been ripped out.  This includes the racy path of GMainContext that
5600    caused deadlocks with respect to child process exits in
5601    single-threaded programs (such as gtester).
5602  - libgthread is now an empty shell and g_thread_init() is no longer
5603    required (and has been deprecated)
5604  - GMutex and GCond can now be statically allocated without explicit
5605    initialisation.  Dynamic allocation for these types is deprecated.
5606  - new types GRecMutex and GRWLock can also be statically allocated
5607    without explicit initialisation.
5608  - GPrivate can now be statically allocated and has an improved API.
5609    Dynamic allocation of GPrivate is deprecated.
5610  - GStaticMutex, GStaticRecMutex, GStaticRwLock, GStaticPrivate are
5611    deprecated.
5612  - GCond now uses monotonic time internally and a new API takes
5613    monotonic time for timed waits, deprecating the wallclock API
5614  - removal of the insane macro indirection used in the previous
5615    implementation of threading and synchronisation APIs
5616  - use SRWLock and CONDITION_VARIABLE APIs when available on Windows
5617    (Vista and later) and emulate them on XP
5618  - leaks of G(Static)Private-allocated data on some cases of thread exit
5619    have been fixed
5620  - simplified new thread creation API with the old API deprecated.  The
5621    concept of joinability has disappeared (all threads are joinable) as
5622    have priority levels, 'bound'ness (ie: kernel vs. userspace threads)
5623    and ability to manipulate the stack size.
5624  - GThread is now a refcounted type
5625  - other implementation details changed
5626
5627 * Move headers for some deprecated functionality to a separate
5628   deprecated/ directory.
5629
5630 * New support for attribute-based deprecations to issue compiler
5631   warnings instead of breaking the build and/or giving warnings about
5632   implicit declarations (and possibly miscompiling).
5633
5634 * GCache has been deprecated (after its last use was removed from our
5635   platform over a year ago).
5636
5637 * It is no longer possible to include individual headers (like
5638   "ghash.h") -- you must #include <glib.h>.
5639
5640 * The misguided experiment of allowing the program to stumble along with
5641   missing GSettings schemas is now over -- the abort is back.
5642
5643 * Clarify that fork() is not valid while using GMainContext.  This is
5644   because the internal resources of the GMainContext end up being shared
5645   by both processes.  We had an assert here but it was breaking existing
5646   (valid) use cases as well, so it has been removed for now.
5647
5648 * GApplication
5649   - add ::shutdown signal as logical dual to ::startup
5650   - don't use a GMainLoop: iterate the GMainContext directly (improves
5651     quit logic)
5652
5653 * Several portability fixes for Windows, OpenBSD, Solaris
5654
5655 * Add new GValue API to specifically deal in signed chars (in case the
5656   platform defines 'char' as unsigned)
5657
5658 * some new API to mitigate the problems associated with calling setenv()
5659   in a multi-threaded program
5660
5661 * Use CLOCK_MONOTONIC unconditionally if the libc has support at compile
5662   time (ie: stop checking for kernel support at runtime).
5663
5664 * pkg-config files:
5665   - drop -uninstalled variants
5666   - remove gobject dependency on gthread
5667
5668 * New macro G_ATOMIC_LOCK_FREE is defined if the atomic operations are
5669   implemented without use of a mutex.  Cleaned up atomic-related
5670   compilation issues with mingw compilers on win32 systems.
5671
5672 * SOCKS proxy and resolver improvements
5673
5674 * Fix the spelling of G_IO_FLAG_IS_WRITABLE (was WRITEABLE) and
5675   introduce a macro for backwards compatibility.
5676
5677 * GDBus:
5678   - many code generation updates and improvements
5679   - some race condition fixes, including testcase hangs
5680
5681 * GVariant:
5682   - new g_variant_new_from_fixed_array() API
5683   - substantial docs improvements/clarifications
5684
5685 * GKeyFile is now refcounted and boxed
5686
5687 * mount monitoring is now based on /proc/mounts (where available)
5688   instead of mtab
5689
5690 * new macros G_SOURCE_CONTINUE and G_SOURCE_REMOVE for returning from
5691   GSourceFunc (so you don't have to remember what TRUE and FALSE mean)
5692
5693 * use xlocale functions where available to avoid too much heavy lifting
5694   in functions like g_ascii_strtod()
5695
5696 * GMappedFile can now be created from an fd
5697
5698 * error message strings grammar/i18n fixes
5699
5700 * many docs updates
5701
5702 * Partial list of bugs closed:
5703  70598  Unify GStaticMutex and GMutex.
5704  320888 optimization for g_main_context_wakeup
5705  398418 GChildWatch race condition?
5706  527214 g_timer_elapsed() returns random values
5707  580505 add a way to set/get name for a thread
5708  583511 race condition means g_main_loop_quit() does not work
5709  590808 GKeyFile should have a refcount and a boxed type in GObject
5710  592715 Document that g_str_hash() and g_int_hash() are not NULL safe
5711  631413 Add macros for GSourceFunc return values
5712  632049 not immediately clear what g_variant_get_fixed_array expects
5713  640212 "Error stating file" is not a friendly message
5714  640293 Use xlocale functions to implement g_ascii_strtod()
5715  640975 Check that error exists before trying to set it
5716  643934 GApplication lacking a logical dual for the ::startup signal
5717  651268 assertion failed in GDBus worker thread
5718  653987 g_key_file_get_integer cannot interpret trailing spaces
5719  654412 Documentation for g_variant_get_child_value unclear
5720  654563 info capplet: Failed to calculate disk space
5721  655366 missing GSettings schemas lead to obscure crashes
5722  656621 g_spawn_*() calls executables in current directory
5723  656679 [gi] Add two annotations to gio
5724  657992 Add glib__private__() API to share between glib,gio
5725  658188 _set_as_last_used_for_type generates a broken mimeapps.list
5726  658206 gsocks5proxy.c has invalid gettext use
5727  658207 glib-compile-schemas says "can not"
5728  658558 simpleaction: Fix documentation of :enabled
5729  658683 clean up charset/language threading issues
5730  658692 add introspection annotations to g_time_val_from_iso8601()
5731  658715 Duplicite strings
5732  658769 Invalid reuse of GError in GThreadedResolver
5733  658806 sign error in string hash implementation
5734  658976 gdbus-codegen's C namespace option needs to support Ugly_Case
5735  659070 gdbus-codegen generated code segfaults when property changes
5736  659082 gdbus-codegen: Single letter namespaces get dropped from names
5737  659212 GMappedFile should fail on non-regular files
5738  659324 _SPLICE_CLOSE_TARGET doesn't mark the output stream as closed
5739  659423 Use adaptive mutexes when available
5740  659427 Move deprecated code to a separate directory
5741  659646 gdbus-codegen produce code that warnings at build
5742  659690 Possible build warning in code generated by gdbus-codegen
5743  659699 property name collision when generating code for "Connection"
5744  659754 Add API to GMappedFile that allows to pass FD
5745  659838 incorrect types in introspection for g_object_bind_property
5746  659866 pthread_rwlock_t requires defined __USE_UNIX98
5747  659870 gvalue: Fix signedness of g_value_get_char()
5748  659889 glib-2.29.92/gio-2.0.pc.in has a wrong line.
5749  659916 GObject size of 64K is not actively enforced
5750  659920 Missing setter for read/write property 'closed' of GIOStream
5751  659923 Add g_variant_new_fixed_array() function
5752  660013 Remove old g_atomic configure cruft
5753  660096 glib/rwlock tests failure (tests asserted)
5754  660130 Possible loss of user data when updating mimeapps.list
5755  660147 tracker causes g_critical in "gsettings list-recursively"
5756  660413 Make G_ASSERT_STATIC work with clang
5757  660498 Generated test code fails when the codegen changes
5758  660511 Use /proc/mounts for monitoring mounts, not /etc/mtab
5759  660536 Expose options for /etc/fstab entries
5760  660635 Deprecate g_thread_foreach
5761  660637 Pending dbus method calls not canceled on connection loss
5762  660739 kill off g_{mutex,cond}_{new,free}()
5763  660740 make GThread more standard
5764  660741 g_cond_timedwait is a disaster
5765  660743 macro wrappers for g_once_init_enter/leave
5766  660744 finish killing g_thread_init()
5767  660745 GPrivate leaks on Windows
5768  660791 [gio] Improve doc for g_file_make_directory_with_parents()
5769  660843 asyncqueue-test is broken
5770  660849 Remove cruft from g_strerror and g_strsignal
5771  660886 GDBusProxy: don't drop/complain about unknown props/signals
5772  660887 g_slice_set_config() is broken
5773  660994 Add g_main_context_ref_thread_default()
5774  661255 gio: enable test_peer regression test for OpenBSD
5775  661257 giomodules.c uses ":" instead of G_SEARCHPATH_SEPARATOR_S
5776  661318 tests use pthread without appropriate compiler/linker flags
5777  661421 Applications fail to initialize on GNU Hurd - commit
5778  661438 Implement G_GNUC_DEPRECATED/G_GNUC_DEPRECATED_FOR on Visual C++
5779  661711 Sorting keys for GDrive, GVolume and GMount instances
5780  661763 desktop-app-info: Add support for X-GNOME-Keywords
5781  661896 /gdbus/connection/life-cycle is racy
5782  661914 Gstreamer/Totem locks up
5783  662100 regression: g_dbus_connection_close() triggers exit-on-close logic
5784
5785 * Translations updates:
5786  Belarusian 
5787  Brazilian Portuguese
5788  British English 
5789  Bulgarian 
5790  Catalan 
5791  Catalan (Valencian)
5792  Czech 
5793  Danish 
5794  Esperanto
5795  French 
5796  Gujarati
5797  Hebrew 
5798  Hungarian 
5799  Italian 
5800  Japanese
5801  Lithuanian
5802  Norwegian bokmål
5803  Oriya
5804  Polish 
5805  Russian 
5806  Serbian
5807  Simplified Chinese
5808  Slovak 
5809  Slovenian
5810  Spanish 
5811  Tamil
5812  Vietnamese
5813
5814 Overview of changes from GLib 2.29.18 to 2.29.90
5815 ================================================
5816
5817 * API/ABI changes:
5818  - unix signal watches now match the API of all of the other sources
5819  - revert the addition of g_date_time_source_new () from last release
5820
5821 * networking and other fixes for Solaris
5822  - we no longer support symbolic port names (ie: from /etc/services)
5823  - check if -lsocket is needed
5824  - fix g_socket_details_from_fd()
5825  - avoid getmntinfo
5826  - fix some harmless warnings
5827
5828 * GDateTime improvements:
5829  - generally improved standards compliance (with C99)
5830  - support C99-specified format strings: %g, %G, %V, %c, %C, %w
5831  - consult the locale for the preferred 12-hour time format (%r)
5832  - drop support for non-standard %N and broken %W
5833  - better support for formatting non-POSIX (eg: Arabic) numerals
5834  - locale-related test case fixups, and fix some leaks
5835
5836 * GTlsInteraction: add interaction method invocation guarantees
5837
5838 * gdbus-codegen: post-process all interfaces when parsing >1 file
5839
5840 * make GMainLoop, GMainContext and GSource boxed types
5841
5842 * fix a race condition in the first use of g_get_monotonic_time()
5843
5844 * lots gtk-doc cleanups
5845
5846 * better intltool compatibility when generating pot file
5847
5848 * avoid GCC-specific compiler options when not using GCC
5849
5850 * Translation updates:
5851  Belarusian
5852  Brazilian Portuguese
5853  Canadian English
5854  Galician
5855  Indonesian
5856  Korean
5857  Lithuanian
5858  Norwegian bokmål
5859  Portuguese
5860  Spanish
5861  Swedish
5862
5863 Overview of changes from GLib 2.29.16 to 2.29.18
5864 ================================================
5865
5866 * GDateTime is now respecting LC_TIME when formatting
5867
5868 * GTimeZoneMonitor has been removed again
5869
5870 * A new API for wallclock functionality has been added:
5871   g_date_time_source_new(). This API is still experimental
5872   and may be changed or removed before 2.30.
5873
5874 * Bugs fixed:
5875  628904 Add credential support for FreeBSD and fix a socket issue
5876  650763 gdbus-codegen is broken with python 2.7
5877  655129 GDateTime could provide api for implementing wall clocks
5878  656341 gtlsconsoleinteraction.c uses getpass() which isn't avail...
5879  656387 GCancellable can be used concurrently
5880  656443 Make GTlsInteraction ask_password cancellable
5881  656675 void functions should not return in glib 2.29.16
5882  656772 g_variant_compare for uint64 incorrect
5883  656914 Load GIO_EXTRA_MODULES first, and ignore duplicates
5884  657083 The header langinfo.h is not available on all systems
5885  657084 gfileutils: fix docs/annotations for temp file methods
5886  657138 Some files missing in POTFILES.in
5887  657206 GInputStream leaked in g_file_icon_load_async()
5888  657243 g_cancellable_set_error_if_cancelled() documentation
5889  657274 Use detected PYTHON variable as shebang for gdbus-codegen
5890  657336 Speling fixes for glib found with codespell
5891  657452 plural forms needed
5892  657454 Translation comment needed
5893  657540 Print out file:// URL to coverage HTML report after building
5894  657593 g_test_trap_fork calls close(-1)
5895  646082 Addresses from GSocket should be normalized before returning
5896  657517 fix gio/tests/gdbus-peer on bsd
5897
5898 * Translation updates:
5899  Brazilian Portuguese
5900  Galician
5901  Norwegian bokmål
5902  Punjabi
5903  Russian
5904  Serbian
5905  Spanish
5906  Swedish
5907  Traditional Chinese
5908  Uighur
5909
5910
5911 Overview of changes from GLib 2.29.14 to 2.29.16
5912 ================================================
5913
5914 * GTlsDatabase: an abstract class that provides support
5915   or certificate and key lookup. An implementation will
5916   be provided in glib-networking
5917
5918 * GHmac: Support or HMAC digests
5919
5920 * Misc new API:
5921  - g_ptr_array_add_full: creates a GPtrArray with
5922    a preallocated size and a destroy function
5923  - g_desktop_app_info_get_show_in: checks if a GDesktopAppInfo
5924    should be shown in a given desktop environment
5925  - g_mkdtemp, g_mkdtemp_full, g_dir_make_tmp: create
5926    temporary directories
5927
5928 * Unify thread wakeup implementations of GMainContext
5929   and GCancellable, and use eventfd for it when available
5930
5931 * Show mounts in $XDG_USER_DIR in addition to /media and $HOME
5932
5933 * Bugs fixed:
5934  636572 GTlsCertificateDB
5935  644601 Some tests need a running dbus session
5936  652284 deal with small key lengths
5937  652827 glib-2.29.8 no longer builds with mingw.org's toolchain
5938  653063 PEM parser fails parsing private key when put first
5939  654078 Fail to static linking with Glib library
5940  654450 New functions: g_ptr_array_new_full()
5941  654793 Add G_VALUE_INIT
5942  655044 GDesktopAppInfo: Add g_desktop_app_info_get_show_in()
5943  655148 gdbusconnection is broken when compiling with mingw
5944  655241 glocalfile.c no longer compiles with MinGW GCC
5945  655598 g_cancellable_get_fd: silently return -1 for NULL cancellable
5946  655664 gdbus should not abort if no dbus session is available
5947  655769 Use ZLIB_CFLAGS when compiling gio
5948  656031 Improve GVariant annotations
5949  656048 glib-codegen requires Python >= 2.5
5950  656151 configure test logic inverted, doesn't match comments
5951  656152 GCC only syntax used, yet other compilers allowed by configure.
5952  656162 allow use of lcov 1.9 for coverage
5953  656282 GDBusProxy: uninitialized local variables can be freed
5954  656283 Failing tls connection cause assertion
5955  118563 Add g_mkdtemp in the spirit of g_mkstemp
5956  636405 Add g_return_if_fail() to g_settings_bind_with_mapping()
5957  656039 race condition between GDBusProxy signals and public API
5958  656492 g_io_channel_new_file failure (open(2) behavior wrt POSIX)
5959
5960 * Translation updates:
5961  Bulgarian
5962  Esperanto
5963  French
5964  Galician
5965  German
5966  Hebrew
5967  Indonesian
5968  Italian
5969  Norwegian bokmål
5970  Russian
5971  Spanish
5972  Swedish
5973
5974
5975 Overview of changes from GLib 2.29.12 to 2.29.14
5976 ================================================
5977
5978 * Unicode improvements
5979  - add g_unicode_script_{to,from}_iso15924
5980  - add G_UNICODE_SPACING_MARK define
5981  - more normalisation improvements
5982  - stop using deprecated g_unicode_canonical_decomposition()
5983
5984 * GParamSpec:
5985  - mark the 'name' field as 'const' and add a comment to the header to
5986    help avoid future problems caused by bad hacks
5987
5988 * Merge some (modified) patches from Debian:
5989  - 03_blacklist-directories.patch
5990    - add some blacklisted mount directories
5991  - 60_wait-longer-for-threads-to-die.patch
5992    - sleep longer in a test case, if needed to avoid failing
5993
5994 * Units policy change: prefer use of SI units
5995  - deprecate g_format_size_for_display, add g_format_size(_full)
5996
5997 * GSettings: don't call g_error() when the schema is missing
5998
5999 * GVariant support for arrays of object paths:
6000  - new g_variant_{new,get,dup}_objv API
6001  - support for g_variant_{new,get} '^ao' and '^a&o' similar to '^as'
6002
6003 * GDBus:
6004  - use new improved array-of-objects support and pass 'ao' as char**
6005    instead of GVariant*
6006  - improve handling of 'h' type (Unix file descriptor index)
6007
6008 * GIO:
6009  - fix compilation without USE_STATFS and USE_STATVFS
6010
6011 * Documentation fixes
6012
6013 * Bugs fixed:
6014  622921 Migrate from dbus-glib to glib's GDBus
6015  648271 Add g_unicode_script_to_iso15924()
6016  654948 Stop using deprecated g_unicode_canonical_decomposition()
6017  654988 g_atomic_int_add should document behaviour change
6018  655025 #define G_UNICODE_SPACING_MARK G_UNICODE_COMBINING_MARK
6019  655076 normalization misses some Full_Composition_Exclusion=True. 
6020
6021 * Translations updated:
6022  Spanish
6023
6024 Overview of changes from GLib 2.29.10 to 2.29.12
6025 ================================================
6026
6027 * Add new API to do Unicode (de-)composition in atomic steps,
6028   for use in Harfbuzz.
6029
6030 * Bugs fixed:
6031  615895 (indirectly) support non-NULL-terminated regexes in GRegex
6032  617949 glib trunk fails to compile on Solaris w/ Studio 12...
6033  620423 Document the possibility to unset attributes
6034  627974 Floating reference headaches
6035  644687 Not finding cross-links in current doc set
6036  649246 g_output_stream_splice() cannot be used on 32-bit machines...
6037  653841 a helper script to build glib from git master on win32
6038  653935 g_slist_free_full/g_list_free_full iterates twice in the list
6039  654017 tests: fix glib_translations_work() in gsettings unit test
6040  654085 Don't needlessly use "echo -e" when creating .def files
6041  654195 Add g_unichar_compose() and g_unichar_decompose()
6042  654232 GCancellable eventfd problems
6043  654394 suspicious use of floating references in GDBusInterfaceSkeleton
6044  654536 GSettings: lift key name length restriction to 64
6045  654627 GParamSpec: intern property names
6046  654651 Better g_unicode_canonical_decomposition()
6047  654917 Make g_cclosure_marshal_generic the default signal handler
6048
6049 * Translation updates:
6050  Belarusian
6051  Finnish
6052  Korean
6053  Latvian
6054  Lithuanian
6055  Norwegian bokmål
6056  Turkish
6057
6058
6059 Overview of changes from GLib 2.29.8 to 2.29.10
6060 ===============================================
6061
6062 * New features:
6063  - g_desktop_app_info_get_nodisplay: a function that is required
6064    to port gnome-menus to GDesktopAppInfo
6065  - g_hash_Table_iter_replace: new function to replace a value
6066    while iterating over a hash table
6067  - g_utf8_substring: convenience API to extract substrings from
6068    UTF-8 strings
6069  - g_action_group_add_entries: convenience API for creating lots
6070    of actions quickly
6071  - Use eventfd instead of pipes for waking up main contexts and
6072    for cancellation when available
6073  - GMatchInfo is now a refcounted boxed type
6074
6075 * API changes in GAction:
6076  - the 'set_state' entry in the GActionInterface vtable has been
6077    renamed to 'change_state
6078  - g_action_set_state has been renamed to g_action_change_state
6079  - the 'state' property has been changed to read-only
6080  - GSimpleAction can no longer be subclassed
6081
6082 * Bug fixes
6083  647796 g_variant_new_variant is not marked as constructor
6084  652072 gmain: make use of signalfd()
6085  652168 Crosscompiling Fails if build<=2.24 and host >2.24
6086  652750 make dist fails
6087  652758 GDataInputStream: Clarify g_data_input_stream_read_line docs...
6088  652822 Add a g_hash_table_iter_replace
6089  652897 tiny docs clarification for g_utf8_to_ucs4_fast
6090  653140 gmain: use Linux eventfd() for main context wake up
6091  653429 drop AM_MAINTAINER_MODE or enable it by default
6092  653484 GAsyncCallbacks should default to allow-none
6093         Add missing fundamental types to the generic marshaller
6094
6095 * Translation updates
6096  Belarusian
6097  Galician
6098  Russian
6099
6100 Overview of changes from GLib 2.29.6 to 2.29.8
6101 ==============================================
6102
6103 * Bug fixes
6104  646608 export_symbols variable for gio dynamic library is wrong
6105  646635 Fix introspection of GLib
6106  647930 Documentation: GDataInputStream _read_upto() version
6107  651745 Switch to _ prefixing rather than G_GNUC_INTERNAL
6108  651920 Improve qsort_r detection
6109  651959 gbitlock: "asm goto" is not available in gcc < 4.5
6110  651998 gdbus-codegen: Use relative Python imports
6111  652000 Fix for gatomic.c on Windows/MSVC
6112  652002 Proposal to clean up gvaluetransform.c for MSVC
6113  652025 g_dbus_connection_register_object: error is not set...
6114  652081 Typos in a GBinding warning message
6115  652197 Improper handling of double values in GDBusMessage
6116         Fix a deadlock in gobject finalization
6117
6118 * Translation updates:
6119  Czech
6120  Galician
6121  German
6122  Hebrew
6123  Norwegian bokmål
6124  Spanish
6125  Uighur
6126
6127
6128 Overview of changes from GLib 2.29.4 to 2.29.6
6129 ==============================================
6130
6131 * Atomic operations have been rewritten from scratch to make use
6132   of gcc builtins where possible. As a side-effect of this, calls
6133   to g_atomic_ API with explicit casts may now be problematic; if
6134   that happens to you, try first to remove the casts. Another
6135   side-effect of the rewrite is that g_atomic_int_exchange_and_add
6136   has been deprecated in favor of g_atomic_int_add.
6137
6138 * A full set of atomic operations on pointers has been added,
6139   including bit locks in pointer-size locations.
6140
6141 * Access to quarks is now lockless
6142
6143 * GObject data scalability has been greatly improved
6144
6145 * g_data_time_format now supports alternative digits and padding
6146
6147 * Introspection improvements:
6148  - Add a boxed type for GVariantBuilder
6149  - Annotation fixes in GDBus, GVariant, g_base64_
6150
6151 * Bugs fixed:
6152  502560 g_rand_double_range returns 'inf'
6153  612729 g_mkdir_with_parents can fail if the directory already exists
6154  617491 g_once() implementation is inefficient
6155  619418 Add a performance test for UTF-8 decoding functions
6156  619435 Make g_utf8_to_ucs4_fast() yet faster
6157  626549 G_STATIC_ASSERT_EXPR
6158  631231 bitlock: Fix detection and usage of futexes with Bionic
6159  632294 g_queue_remove() should return a boolean
6160  640518 GMainLoop has quadratic complexity when all pollfd's...
6161  642026 Race condition in g_static_private_free
6162  646635 Fix introspection of GLib
6163  648678 g_date_time_format(): support %O flags for localized numbers
6164  649480 Use MSG_CMSG_CLOEXEC in recvmsg in gio/gsocket.c
6165  649506 GTestFunc et al lacking Since tag
6166  649657 Don't return gboolean for functions that throw
6167  649775 glib-gio-gdbuscodegen-Makefile.patch
6168  649915 gsettings accepts unquoted strings longer than two characters
6169  649973 gthread: build unix tests only on unix
6170  649988 gdbus-codegen: Drop dependency on argparse
6171  650078 forkbomb building glib/tests/protocol
6172  650211 Optimization in key file parsing
6173  650236 Application over DBus implements action state incorrectly
6174  650345 g_key_file_has_key_full: New function to fix g_key_file_has_key...
6175  650458 reduce overhead in g_object_set/get_data
6176  650459 hash table consistency while calling destroy notify funcs
6177  650688 enforce rules about hash table modification
6178  650823 expand the set of atomic ops
6179  650874 codegen chokes on docs
6180  650882 use stdout instead of stderr for informational messages
6181  650884 fix compilation with gcc2
6182  650885 implement glib credentials on OpenBSD (hackish)
6183  650935 G_GNUC_MAY_ALIAS and atomic ops
6184  651009 minor documentation fix
6185  651034 Regarding g_cond_wait after g_thread_pool_push in gthreadedresolver
6186  651133 race condition in GDBusConnection's emit_signal_instance_in_idle_cb
6187  651141 hashtable infinite loop
6188  651219 fix path to true(1) on OpenBSD
6189  651223 Fix some compile warnings on OpenBSD
6190  651327 Minor fixes for the gsocket API
6191  651467 Add pointer sized bitlocks
6192  651650 gdbus: Avoid busy wait loop
6193  651725 gmain: Cleanups and a new test case
6194  651745 Switch to _ prefixing rather than G_GNUC_INTERNAL
6195
6196 * Updated translations:
6197  Catalan (Valencian)
6198  Esperanto
6199  Hebrew
6200  Hungarian
6201  Russian
6202  Spanish
6203
6204
6205 Overview of changes from GLib 2.29.2 to 2.29.4
6206 ==============================================
6207
6208 * GDBus:
6209  - Includes several new types to support modeling D-Bus
6210    objects and interfaces more fully, and also introduces
6211    an 'object manager' pattern:
6212    GDBusInterface, GDBusObject, GDBusObjectManager
6213    These interfaces have client-side implementations:
6214    GDBusProxy, GDBusObjectProxy, GDBusObjectManagerClient
6215    And server-side implementations:
6216    GDBusInterfaceSkeleton, GDBusObjectSkeleton, GDBusObjectManagerServer
6217  - The new gdbus-codegen utility uses these new classes
6218    to generate C code and documentation from D-Bus interface
6219    descriptions in XML
6220
6221 * GTest:
6222  - There is now a g_test_fail() function to mark
6223    tests as failed
6224
6225 * GDesktopAppInfo
6226  - Now has a binding-friendly filename property
6227  - Other new API to more fully expose desktop file contents:
6228    g_desktop_app_info_get_categories(),
6229    g_desktop_app_info_get_generic_name()
6230
6231 * GHashTable:
6232  - Several optimizations to reduce space consumption of
6233    large hash tables, in particular tables that are used
6234    to store sets.
6235
6236 * Unix-specific APIs:
6237   GLib now installs a separate header, glib-unix.h, that is
6238   meant to collect Unix-specific APIs. For now, it contains
6239   g_unix_open_pipe(), g_unix_set_fd_non_blocking() for dealing
6240   with pipes and fds, as well as APIs to create mainloop
6241   sources which can trigger callbacks on certain Unix
6242   signals (SIGTERM, SIGHUP, SIGINT).
6243
6244 * Bugs fixed:
6245  631379 GDBus nonce-tcp test failing
6246  632631 GLib-CRITICAL **: g_variant_new_string: assertion `g_utf8_validate (string, -1, NULL)' failed
6247  635694 gdbus aborting due to unauthorized socket in DBUS_SESSION_BUS_ADDRESS
6248  637561 Crash when using G_DBUS_SERVER_FLAGS_RUN_IN_THREAD
6249  642935 g_date_time_format() prints wrong value for %z and timezone -0800
6250  643134 g_dbus_message_copy
6251  644941 glib-unix: New Unix-specific API
6252  646013 g_hash_table_remove_all_nodes optimization
6253  646309 glib cannot be cross-compilled for mingw32
6254  646435 GTimeZone doesn't seem to be thread-safe
6255  646957 GIO chained calls don't work with a thread default context
6256  647594 README link to mailing list is broken
6257  647602 Cannot connect to remote message bus via TCP
6258  647746 The GSocketService documentation is incomplete.
6259  647826 API: gtester: Add g_test_fail()
6260  647903 GDesktopAppInfo: Add g_desktop_app_info_get_categories()
6261  648416 g_app_info_create_from_commandline ignores SUPPORTS_STARTUP_NOTIFICATION
6262  648423 Support G_DEBUG=trap-warnings
6263  648425 GDesktopAppInfo: Add "filename" property for bindings
6264  648966 Update g_unichar_iswide and g_unichar_iswide_cjk
6265
6266 * Updated translations
6267  Norwegian bokmål
6268  Spanish
6269  Turkish
6270  Uighur
6271
6272
6273 Overview of Changes from GLib 2.28.0 to 2.29.2
6274 ==============================================
6275
6276 * GApplication
6277  - The documentation has been enhanced and clarified
6278  - An opt-out for uniqueness has been added: G_APPLICATION_NON_UNIQUE
6279  - GApplication now syncs settings before g_application_run() returns
6280
6281 * GDBus
6282  - Interface lookups are now happening in constant time
6283  - Signature checking and handling of various unexpected
6284    situations has been improved
6285
6286 * GVariant
6287  - The format accepted by the GVariant parser has beend documented
6288  - GVariant accepts G_VARIANT_TYPE_VARDICT for a{sv}
6289
6290 * GDateTime:
6291  - The return value of g_datetime_compare() has been fixed to
6292    match strcmp() semantics
6293  - In order to handle problems with changing timezones, a GTimeZoneMonitor
6294    has been added to GIO, and g_time_zone_refresh_local() can be
6295    called to update the cached information about the local timezone
6296
6297 * GOption now uses /proc/self/cmdline to set the program name instead
6298   and only falls back to "<unknown>" if that is unavailable
6299
6300 * GSettings:
6301  - The schema compiler now warns about references to non-existing schemas
6302
6303 * Commandline utilities are now fully translated
6304
6305 * Signals can now indicate that collecting their arguments must
6306   always happen, even in the absence of connected signal handlers,
6307   using the G_SIGNAL_MUST_COLLECT flag.
6308
6309 * Bugs fixed:
6310  635099 Memory leak in gdbus introspection when parsing xml
6311  640489 $ and ^ do not match lines if G_REGEX_MULTILINE|G_R...
6312  642042 Overriding GDBus org.freedesktop.DBus.Properties im...
6313  642052 g_timeout_add(_seconds) cannot handle large intervals
6314  642490 notify_desktop_launch() "g_variant_new_bytestring:...
6315  613269 g_type_get_qdata() doesn't work as I expected on subtypes
6316  624943 G_VALUE_NOCOPY_CONTENTS is undocumented
6317  637738 object_interface_check_properties never actually executes
6318  638185 GIOCondition should be annotated as "flags"
6319  639478 GDBusServer's g_dbus_server_new_sync() function should just...
6320  641755 Add g_settings_get/set_uint() helpers
6321  641768 dconf gsettings backend silently drops writes if it can't...
6322  642797 g_app_info_get_default_for_type() broken for subtypes
6323  642825 Unnecessary assertion failure in g_option_context_parse()
6324  642944 NULL key lookup using g_hash_table_lookup_extended()
6325  643074 Incorrect documentation for g_socket_receive() and g_socket...
6326  643197 g_application_id_is_valid docs imply no valid ids
6327  643468 GApplication docs: Warn that handling "command-line" means...
6328  643478 GApplication::local_command_line vfunc documentation seems wrong
6329  643624 Can g_variant_unref() on an already free'd variant
6330  643649 g_application_run() should say that argc/argv can be NULL
6331  643780 shouldn't need to create an action group to use actions...
6332  643795 g_timeout_add_seconds fires with intervals 1 second longer...
6333  644309 Program name is not set when using GtkApplication
6334  644428 Crash in failure section of g_markup_collect_attributes()
6335  644465 undefined reference to `_usleep'
6336  644552 g_timeout_add_seconds(1, ...) may have a latency of up to 2...
6337  644607 Correct internal definition of C_()
6338  645789 annotations for g_file_*_contents
6339  646039 g_settings_list_children() returns child that cannot be opened
6340  646310 Accept range with only min or max
6341  646420 g_dbus_method_invocation_get_parameters() docs should say...
6342  646843 occasional abort on autologin
6343  646985 add G_APPLICATION_NON_UNIQUE flag
6344  647579 gsettings: Implement reset-recursively
6345  647600 gsettings description has typo
6346
6347 * Translation updates
6348  Afrikaans
6349  Bulgarian
6350  Bengali India
6351  British English
6352  Bulgarian
6353  Catalan
6354  Czech
6355  Danish
6356  French
6357  Galician
6358  German
6359  Greek
6360  Gujarati
6361  Hebrew
6362  Hungarian
6363  Italian
6364  Japanese
6365  Korean
6366  Lithuanian
6367  Polish
6368  Portuguese
6369  Romanian
6370  Serbian
6371  Simplified Chinese
6372  Spanish
6373  Swedish
6374  Traditional Chinese
6375  Uighur
6376  Vietnamese
6377
6378
6379 Overview of Changes from GLib 2.27.93 to 2.28.0
6380 ===============================================
6381
6382 * Bugs fixed:
6383 641363 GInitable documentation isn't clear about that finalize...
6384 641395 Add more data about the origin application to the "Lau...
6385 641411 gdesktopappinfo signals lost if it's the session bus...
6386 641477 glib-mkenums uses unportable #! line
6387 641572 Add @EXEEXT@ to pkgconfig binary name
6388 641688 glib installs GSettings.html and gsettings.html
6389
6390 * Translation updates:
6391  Galician
6392  Italian
6393  Korean
6394  Punjabi
6395
6396
6397 Overview of Changes from GLib 2.27.92 to 2.27.93
6398 ================================================
6399
6400 * Bugs fixed:
6401  637013 gio/gdbusmessage.c fails to compile on Solaris
6402  640192 Error creating a Gio.Settings object through py...
6403  640261 Minimum version for external pcre needs to be..
6404  640262 GActionGroup contains redundant TYPE macros
6405  640436 Make load_user_special_dirs() resistant to non...
6406  640695 g_key_file_load_from_file() mishandles a CR-LF...
6407  640724 can't compile gio due to format string issues
6408  640725 can't compile tests due to format string issue
6409  640807 improve GVariant behaviour with invalid pointers
6410  640823 wrong documentation for g_source_add_child_source
6411
6412 * Translation updates:
6413  Bulgarian
6414  Galician
6415  Hebrew
6416  Norwegian bokmål
6417  Spanish
6418  Traditional Chinese
6419
6420
6421 Overview of Changes from GLib 2.27.91 to 2.27.92
6422 ================================================
6423
6424 * Update to Unicode 6.0
6425
6426 * Update PCRE to 8.12
6427
6428 * Bugs fixed:
6429  637696 g_unix_connection_send_fd() doesn't work
6430  638872 null settings backend bug
6431  640042 GtkApplication's warning about not connecting...
6432
6433 * Translation updates:
6434  Arabic
6435  Basque
6436  Estonian
6437  Greek
6438
6439 Overview of Changes from GLib 2.27.90 to 2.27.91
6440 ================================================
6441
6442 * Bugs fixed:
6443  638838 gdesktopappinfo: Don't crash if we don't have a desktop filename
6444  638894 Splitting on \s* gives no result
6445  639064 Update gschema.dtd
6446  639084 Copy/paste error in GSettings::writable-changed signal
6447  639177 SIGSEGV for GApplications with G_APPLICATION_IS_SERVICE
6448
6449 * Translation updates:
6450  Estonian
6451  Galician
6452  Indonesian
6453
6454
6455 Overview of Changes from GLib 2.27.5 to 2.27.90
6456 ===============================================
6457
6458 * Test reports created by gtester-report can now
6459   include revision information
6460
6461 * The g_desktop_app_info_launch_* family of functions
6462   now emit a DBus signal when an application is launched.
6463   Additionally, there is a new variant
6464   g_desktop_app_info_launch_uris_as_manager(), which
6465   gives more control over the launched process.
6466
6467 * The memory and null GSettings backends are now available
6468   as public API
6469
6470 * g_get_locale_variants() is a new function that returns a
6471   list of variants of a locale identifier
6472
6473 * Bugs fixed:
6474  587898 I/O timeouts for GSocket
6475  606960 gio: Add extension point for informing parties...
6476  631980 Handle an optional <revision> node in the report...
6477  634569 Document that g_variant_builder_add_value consumes...
6478  635998 Make _g_compute_locale_variants public
6479  636806 Add g_{memory,null}_settings_backend_get_default
6480  637262 Need a binary DER version of ::accepted-cas
6481  637544 Skip fsync() on btrfs
6482  637720 void functions should not return a value.
6483  637738 object_interface_check_properties never actually...
6484  637759 GIOChannel: fix a crash in g_io_channel_read_chars()
6485  637852 Updates to glib.vsprops file for MSVC 2008 builds...
6486  637858 Updates to test/testglib.c...
6487  638349 parameter name of g_variant_new_* may conflict...
6488
6489 * Translation updates:
6490  Hebrew
6491  Norwegian bokmål
6492  Simplified Chinese
6493  Spanish
6494  Swedish
6495  Uyghur
6496  Vietnamese
6497
6498
6499 Overview of Changes from GLib 2.27.4 to 2.27.5
6500 ==============================================
6501
6502 * Network support:
6503  - Add g_tls_certificate_verify() to verify a certificate
6504  - Add GTlsConnection:use-system-certdb
6505  - Other TLS api additions
6506
6507 * GIO:
6508  - Add g_io_stream_splice_async()/_finish() to splice two iostreams
6509  - Add g_emblemed_icon_clear_emblems() and make GEmblemedIcon derivable
6510  - Remove GPeriodic; it did not receive the necessary review and
6511    integration work to declare it stable
6512
6513 * GSequence:
6514  - New methods g_sequence_lookup() and g_sequence_lookup_iter()
6515
6516 * Bugs fixed:
6517  617254 Missing g_sequence_lookup
6518  632544 g_dbus_connection_send_message can not send a locked message...
6519  633350 g_hostname_to_ascii() ignores non-ascii dots
6520  634583 Better error reporting for g_variant_parse()
6521  635007 gsetting enum rule don't work for out-of-srcdir builds
6522  635626 GDBus message idle can execute while flushes are pending
6523  636100 Can't read GSettings:backend property
6524  636305 Typo on g_queue_remove_all() function description
6525  636311 appinfo: tweak application positioning for content-types
6526  636351 g_simple_async_result_is_valid lacks a version tag
6527  636387 gdb autoload files shadow the "dir" builtin
6528  636673 g_simple_async_report_error_in_idle should allow object...
6529  637147 Add a "delay-apply" property to GSettings
6530  637171 emblemedicon: add g_emblemed_icon_clear_emblems()
6531  637237 gapplication: plug a memory leak
6532
6533 * Translation updates:
6534  Estonian
6535  Galician
6536  Hebrew
6537  Norwegian bokmål
6538  Simplified Chinese
6539  Spanish
6540  Traditional Chinese
6541  Vietnamese
6542
6543
6544 Overview of Changes from GLib 2.27.3 to 2.27.4
6545 ==============================================
6546
6547 * GIO
6548  - Mounts are treated as hidden if they have a path element
6549    that starts with a dot
6550  - GAppInfo gained API to differentiate between recommended
6551    and fallback mime handlers
6552  - g_cancellable_create_source: creates a GSource that triggers
6553    when the GCancellable is canceled
6554  - GPollableInput/OutputStream: Interfaces for pollable streams
6555  - TLS support has landed, with an extension point that is
6556    implemented in glib-networking
6557
6558 * GLib
6559  - Mainloop sources can now have 'child sources'
6560  - g_get_runtime_dir: New function to return the XDG_RUNTIME_DIR
6561
6562 * Bugs fixed:
6563  530786 GFileMonitor "changed" signal underdocumented
6564  588189 TLS support for GSocket*
6565  630357 g_object_new_valist uses uninitialized memory
6566  630559 typo in public string in gsocks: 'The SOCKSv5 require...
6567  632445 Documentation refers to removed GNOME 2.0 porting guide
6568  634239 Child GSources
6569  634241 Add pollable input/output streams
6570  634504 allow passing a NULL emblem to g_emblemed_icon_new()
6571  634613 unsufficient g_get_user_runtime_dir() documentation
6572  635640 schema should inherit gettext-domain from schemalist
6573  635768 Protect g_file_monitor_set_rate_limit() against negative...
6574  635882 Fix the wrong-category schema test
6575  635187 Wrong type of GVariant received in an action...
6576
6577 * Updated translations:
6578  Galician
6579  Italian
6580  Norwegian bokmål
6581  Uyghur
6582
6583
6584 Overview of Changes from GLib 2.27.2 to 2.27.3
6585 ==============================================
6586
6587 * The GTimeSpec type that was introduced in the 2.27.2 has been
6588   dropped again in favour of APIs that return microseconds as
6589   64-bit integer.
6590   Affected functions:
6591   g_source_get_time
6592   g_periodic_unblock
6593   g_get_monotonic_time
6594   g_get_real_time
6595   The similar GTimeVal struct is still around, but its use is
6596   discouraged.
6597
6598 * GTimer is now using monotonic time unconditionally
6599
6600 * There are some new functions to facilitate error reporting
6601   in async GIO APIs:
6602   g_simple_async_result_take_error
6603   g_simple_async_result_new_take_error
6604   g_simple_async_report_take_gerror_in_idle
6605
6606 * There is new convenience API to us GVariant dictionaries:
6607   g_variant_lookup
6608
6609 * It is now possible to delay sending match rules to the
6610   D-Bus daemon in GDBus:
6611   G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE
6612
6613 * Support has been added for XDG_RUNTIME_DIR:
6614   g_get_user_runtime_dir
6615
6616 * Various fixes for Win64/MSVC builds have been committed
6617
6618 * Bugs fixed:
6619  620263 Add g_clear_object, g_clear_pointer, g_clear_boxed
6620  633075 update Project Files and sources for MSVC 2008/C89
6621  633381 gsettings Makefile rules should handle empty list...
6622  633685 Use g_simple_async_result_{new_,}take_error
6623  633686 Add g_simple_async_report_take_gerror_in_idle
6624
6625 * Translation updates:
6626   Belarusian
6627   Galician
6628   Hebrew
6629   Punjabi
6630   Spanish
6631
6632
6633 Overview of Changes from GLib 2.27.1 to 2.27.2
6634 ==============================================
6635
6636 * GApplication
6637  - Export actions over DBus and support activating them from remote instances
6638  - Support environment passing
6639
6640 * GSettings
6641  - The gsettings utility has a list-recursively command
6642  - The gsettings utility has commandline completion for enum values
6643
6644 * GLib is now linked against librt and uses monotonic time for
6645   timeouts and GPeriod sources. GSource has a new g_source_get_time()
6646   which returns monotonic time, and g_source_get_current_time() has
6647   been deprecated
6648
6649 * Bugs fixed:
6650  158725 free linked list with data
6651  626320 GVariant: Avoid locking in g_variant_get_child_value() if possible
6652  629247 add gsimpleasyncresult methods to take over a GError
6653  629274 GNetworkService does not do fallback when there is no SRV record
6654  631264 gsettings-tool choice/range support
6655  631482 g_date_time_from_instant: 1000000000000000000
6656  632169 docs for manual use of gsettings-data-convert
6657  632571 Add equivalent to gconftool-2's -R option
6658  633115 GSettings m4 doesn't fail the build for broken schemas
6659  633206 Default g_application_local_command_line() doesn't set exit_status...
6660  633339 support more complex gapplication setups
6661  633356 Make timeout G_MAXINT mean "no timeout"
6662
6663 * Translation updates:
6664  Catalan (Valencian)
6665  Indonesian
6666  Japanese
6667
6668
6669 Overview of Changes from GLib 2.27.0 to 2.27.1
6670 ==============================================
6671
6672 * GDateTime now has full week number support.
6673   New API: g_date_time_get_week_numbering_year
6674
6675 * The GSettings schema compiler will now skip over
6676   broken .xml schema files instead of aborting altogether
6677
6678 * GSettings now works properly on bigendian systems
6679
6680 * GSettings has more complete support for ranges
6681   New API:
6682     g_settings_get_range
6683     g_settings_range_check
6684   The gsettings commandline tool supports ranges too.
6685
6686 * GApplication has been rewritten; see the API docs for details
6687   and examples. The action support is not complete yet.
6688
6689 * The GLib mainloop has gained 'dispatch to context' functionality,
6690   which can replace manually created idles in many cases.
6691   New API:
6692     g_main_context_invoke
6693     g_main_context_invoke_full
6694
6695 * The gio-desktop-app-info-lookup extension point has been
6696   removed from GIO. GIO now uses x-scheme-handler mimetypes when
6697   looking for default applications.
6698
6699 * On win32, make g_get_user_data_dir() return the CSIDL_LOCAL_APPDATA
6700   folder on Windows, and not CSIDL_PERSONAL. This matches what Qt does,
6701   and has been widely requested. Also make g_get_user_config_dir() return
6702   this and not the (roaming) CSIDL_APPDATA folder.
6703
6704 * A periodic event clock has been added in GIO: GPeriodic. Note that this
6705   API is still experimental and expected to undergo changes before it
6706   will be incorporated into a stable GLib release. Use at your own risk.
6707
6708 Bug fixes:
6709  613822 gobject signal connect/disconnect not thread safe
6710  618737 "dispatch to context" functionality
6711  620710 g_get_user_data_dir() uses CSIDL_PERSONAL and not CSIDL_APPDATA
6712  623400 acquire context before dispatching
6713  627126 gsettings schema files don't get installed on FreeBSD
6714  627171 g_socket_new_from_fd() doesn't set the right protocol
6715  628876 Wrong error description
6716  628937 gracefully handle broken schemas
6717  629274 GNetworkService doesn't fallback when there is no SRV record
6718  629289 g_error() used wrong, produces core dump
6719  629687 leaks class refcount in gsocketcontrolmessage
6720  629849 GLib-CRITICAL **: g_source_get_context: assertion `!SOURCE_...
6721  629945 GDBus deadlock in g_bus_get_sync()
6722  630000 g_date_time_difference
6723  630077 GDateTime week number support
6724  630185 Allow NULL strings in g_quark_try_string()
6725  630797 docs mention non-existent g_object_dispose()
6726  630968 gschema-compile problems on power g5
6727  631263 GSettings needs range/choice APIs
6728  631264 gsettings-tool choice/range support
6729  631379 GDBus nonce-tcp test failing
6730  631410 Port gapplookupgconf.c to using x-scheme-handler/
6731  632884 Possible deadlock in g_object_remove_toggle_ref()
6732
6733 Transation updates:
6734  Basque
6735  Brazilian Portuguese
6736  British English
6737  Bulgarian
6738  Czech
6739  Dutch
6740  Estonian
6741  French
6742  Galician
6743  German
6744  Greek
6745  Hebrew
6746  Hungarian
6747  Japanese
6748  Lithuanian
6749  Polish
6750  Portuguese
6751  Romanian
6752  Simplified Chinese
6753  Slovenian
6754  Spanish
6755
6756
6757 Overview of Changes from GLib 2.25.15 to GLib 2.27.0
6758 ====================================================
6759
6760 Build:
6761   - massive restructuring to reduce #include abuse
6762   - tweaks to silence some harmless compiler warnings
6763   - rename gschema-compile.c to glib-compile-schemas.c
6764   - Windows fixes
6765   - fix building with zlib < 1.2.4 on win32
6766
6767 GDateTime:
6768   - better msgctxt for translating month and weekday names
6769   - API is changed quite a lot, implementation is improved
6770   - GTimeZone is now exposed
6771
6772 GObject:
6773   - make ordering for overridden interface properties consistent
6774   - ->priv structures are limited to 64k but this was not documented,
6775     and exceeding this limit produced bad results.  Add docs and enforce
6776     the limit properly.
6777   - add g_object_class_install_properties() to install multiple
6778     properties in one go
6779   - improve debugging output for GValue containing G_TYPE_STRV
6780
6781 GIO:
6782   - fix priority sorting of GIO extensions
6783   - add GCredentials support on FreeBSD
6784   - fix support for IPv6 addresses in URI parsing functions
6785   - GSocketClient fixes for when g_socket_connect succeeds immediately
6786   - clarify string encoding for GFile constructors in docs
6787   - new functions g_data_input_stream_read_upto{,async,finish}
6788   - tweak confusing documentation for g_output_stream_write()
6789
6790 GDBus:
6791   - GDBusMessage can now be locked and copied (like in libdbus)
6792   - GDBusConnection filter function API has changed again
6793   - GDBusServer: ::new-connection now declares if the connection was claimed
6794   - add a partial workaround for GObject bug 627724.
6795   - very many memory leaks fixed
6796
6797 GVariant:
6798   - check for size == 0 in g_variant_get_bytestring to avoid a crash
6799     when attempting to get_bytestring() from an empty array
6800   - improve gobject-introspection annotations
6801
6802 GSettings:
6803   - add GSettings Windows registry backend
6804   - some internal tweaks to the backend API
6805   - remove g_settings_list_items
6806   - add g_settings_list_children and _list_keys to replace it
6807   - add schema compiler restrictions for dealing with lists
6808   - don't automatically emit value changed signals on writability
6809     changes
6810
6811 Other:
6812   - constify the 'parser' vtable param to g_markup_parse_context_push()
6813   - plug many memory leaks in test cases
6814
6815 Bugs closed:
6816   50076 Time API to go with date API
6817  584284 g_data_input_stream_read_until_async different from sync version
6818  624546 Modification of GDBusMessage in filter function
6819  626919 Let g_object_class_install_property() return the installed GParamSpec*
6820  628029 GDateTime missing get_week_of_year method
6821  628253 Interface properties not listed in a consistent order
6822  628331 Plug lots of mem leaks in gio test suite
6823  628345 Plug a mem leak
6824  628436 Plug a mem leak
6825  628505 Fix building with zlib < 1.2.4 on win32
6826  628839 [PATCH] datetime: Rename shadowing variables
6827  628904 [PATCH] Add credential support for FreeBSD and fix a socket issue
6828  628952 incorrect glib_major_version and other variables on cygwin.
6829  629192 g_strdup_value_contents(): dump GStrv more usefully
6830  629251 g_socket_client_async_connect_complete: assertion failed
6831  629259 Failed to connect to "::1"
6832  629328 g_markup_parse_context_push doesn't respect const structs
6833  629429 month "May" short and full form same with "GDateTime" msgctxt
6834  629689 GDBusConnection leaks its GCredentials
6835  629698 Segfault in g_variant_get_bytestring() 
6836
6837 Updated translations:
6838   Arabic
6839   Armenian
6840   Basque
6841   British English
6842   Czech
6843   Finnish
6844   Galician
6845   German
6846   Hungarian
6847   Indonesian
6848   Japanese
6849   Lithuanian
6850   Norwegian bokmål
6851   Polish
6852   Portuguese
6853   Punjabi
6854   Simplified Chinese
6855   Slovenian
6856   Spanish
6857   Swedish
6858   Swedish
6859   Traditional Chinese
6860
6861 Overview of Changes from GLib 2.25.14 to GLib 2.25.15
6862 =====================================================
6863
6864  * GIO
6865   - Memory leak fixes
6866   - The GZip(De}Compressor can now process header information
6867   - Support for network proxies has been added, with the GProxy
6868     interface and the gio-proxy-resolver extension point. GIO
6869     includes SOCKSv4 and SOCKSv5 implementations, and libproxy
6870     is also going to provide an implementation of this extension
6871     point.
6872   - There are GAction and GActionGroup interfaces now, which will
6873     be used in GApplication in the near future.
6874
6875  * GObject
6876   - There are now convenience macros for defining boxed and
6877     pointer types
6878
6879  * GDBus
6880   - Memory leak fixes
6881   - GDBusProxy for well-known names can now auto-restart
6882     the service if the name owner disapperas
6883   - Filter functions are now allowed to modify messages
6884
6885  * GLib
6886   - GDateTime is a replacement for GDate that supports time
6887     and timezone information.
6888
6889  * Bugs fixed:
6890   50076 Time API to go with date API
6891  449565 Add G_DEFINE_BOXED_TYPE()
6892  617691 Add GZIP header processing to GZlibCompressor/GZlibDecompressor
6893  622184 add g_memory_output_stream_steal_data
6894  624546 Modification of GDBusMessage in filter function
6895  627088 Build failure in gdbus-peer.c on FreeBSD
6896  627181 save a memdup
6897  627182 Plug a mem leak in the gdbus-connection test
6898  627187 Plug some gdbus mem leaks
6899  627188 gdbus-non-socket test occasionally fails
6900  627252 G_OPTION_FLAG_NO_ARG is only for callback options
6901  627392 gdbus commit 8a3a4596 breaks win32 compile
6902  627407 FTBFS on !linux UNIX platforms
6903  627604 String error: 'that' twice in a row
6904  627969 ABR in g_file_open_tmp
6905  628084 gdbus-peer fails with assertion
6906  628193 Miscellaneous string fixes
6907  628296 abort() in gsocketconnection.c
6908  628309 Plug a mem leak in GConverterOutputStream
6909  628317 GEmblemedIcon:equal implementation is buggy
6910  628323 Fix invalid reads
6911  628327 Plug a mem leak
6912  628328 Plug a mem leak
6913  628329 Don't leak the FD list
6914  628324 Invalid reads in gdbus-export test
6915
6916  * Updated translations:
6917   British English
6918   Danish
6919   Galician
6920   Hebrew
6921   Punjabi
6922   Serbian
6923   Spanish
6924   Traditional Chinese
6925
6926
6927 Overview of Changes from GLib 2.25.13 to GLib 2.25.14
6928 =====================================================
6929
6930 * GDBus
6931  - Make the closure variants of GDBus apis work
6932  - Make error unregistration work
6933  - Use async IO in the IO thread (626748)
6934
6935 * GIO
6936  - Make g_simple_async_result_is_valid work without source (626208)
6937  - GSocketClient: add a timeout property
6938  - Fix memory leaks in GSocketClient
6939  - Handle async vs. sync correctly in GSocketConnection stream (616458)
6940  - Declare stream base classes as abstract
6941  - Clarify semantics of g_output_stream_write() (627071)
6942
6943 * Other
6944  - Improve test coverage for GDBus, GRegex, GAsyncResult
6945  - Drop dead code in pcre, xdgmime
6946  - Fix a race condition in gtester (578295)
6947  - Avoid an extra allocation in GAsyncQueue (626704)
6948  - Add test case for non-socket GIOStream (626841)
6949  - More explicit GVariant docs (622770)
6950  - Imroved docs for GAsyncInitable and GSimpleAsyncResult (602417)
6951
6952 * Translation updates:
6953  - Galician
6954  - Norwegian bokmål
6955  - Punjabi
6956  - Simplified Chinese
6957  - Swedish
6958
6959
6960 Overview of Changes from GLib 2.25.12 to GLib 2.25.13
6961 =====================================================
6962
6963 +-------------------------------------------------------------------+
6964 |   WARNING: There have been no breaks in API or ABI.  Weird, eh?   |
6965 +-------------------------------------------------------------------+
6966
6967 The primary purpose of this release is to fix a serious problem with
6968 glib 2.25.12: glibconfig.h (as generated on a Fedora amd64 system) was
6969 being distributed in the tarball.  It was being used to build some parts
6970 of glib on other systems (eg: 32bit ones).  This was causing some very
6971 serious problems.
6972
6973 There have been many other improvements, however:
6974
6975  Build and testing:
6976   - vastly improved test coverage
6977   - old tests moved to the gtester framework
6978   - gtester Makefile modified so that the tests only run once
6979   - cleanup of how we handle includes while building glib
6980
6981  GVariant:
6982   - add a g_return_if_fail (utf8) to g_variant_new_string()
6983
6984  GDBus:
6985   - perform extra sanity checks when serialising messages
6986   - add API to query and set the byteorder of a GDBusMessage
6987   - improve debug output, add some extra options
6988   - if exiting due to the bus disconnecting us, print an error message
6989     explaining why
6990   - sort property names correctly
6991   - don't bother sending RemoveMatch when we will close the connection
6992     anyway
6993   - use effective uid/gid for credential passing
6994
6995  GSettings:
6996   - add G_SETTINGS_BIND_INVERT_BOOLEAN for inverting boolean bindings
6997     without mapping functions
6998   - mark all strings in the schema compiler for translation
6999
7000  Binding:
7001   - improve closure support for bindings
7002   - copy GSettings INVERT_BOOLEAN flag
7003
7004  Other:
7005   - fix another complicated GCancellable deadlock possibility
7006
7007 Bugs closed:
7008  599590 glib build doesn't look for correct pkg-config
7009  619026 avoid warning in gutils.h when using gcc with -Wconversion
7010  624739 Please fix POTFILES.in
7011  625472 Valgrind claims uninitialized bytes used
7012  625500 g_date_set_time_val documentation doesn't mention local time
7013  625628 GDBusProxy: wrong property name sorting
7014  625753 Incorrect flags used in g_dbus_connection_call_sync()
7015  625827 Expand documentation about error quark naming
7016  625988 builddir != srcdir issues
7017  626107 glibconfig.h is being disted
7018
7019 Updated translations:
7020  French
7021  Galician
7022  Hebrew
7023  Norwegian bokmål
7024  Spanish
7025
7026
7027 Overview of Changes from GLib 2.25.11 to GLib 2.25.12
7028 =====================================================
7029
7030 +-------------------------------------------------------------------+
7031 | WARNING: There have been many API changes in GDBus -- sending     |
7032 | messages, subscribing to signals, closing connections and         |
7033 | registering subtrees are affected.  The ABI for GSettingsBackend  |
7034 | has also been changed.  For both reasons, a new dconf release is  |
7035 | required (and will be along soon).                                |
7036 +-------------------------------------------------------------------+
7037
7038 Build:
7039   - cleanup automake setup
7040   - rename configure.in to configure.ac
7041   - various docs fixups
7042   - move glibconfig.h to glib/
7043   - disable dtrace support on Mac OS (which has incompatible 'dtrace')
7044
7045 GSettings:
7046   - add support for vendor override files (to change the default values
7047     in a schema)
7048   - change GSettingsBackend vtable
7049   - add g_settings_reset()
7050   - support binding to G_TYPE_STRV properties
7051
7052 GDBus:
7053   - many bug fixes, including a serialisation fix
7054   - stop handling incoming connections as soon as stop() is called
7055   - proper support for file descriptor passing
7056   - new flags parameter for sending messages
7057   - new flags parameter for subscribing to signals
7058   - always reset the message serial when sending a message unless
7059     G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL is given
7060   - constness fixes for introspection structures
7061   - clean ups to subtree registration API
7062
7063 Other:
7064   - fix divide by zero bug in g_malloc_n functions
7065   - GIO: don't blindly assume that SOCK_CLOEXEC is supported
7066   - make GObject property notify freezes threadsafe
7067   - GIO: clean up credentials passing
7068   - GApplication: make default-quit not apply if register=FALSE
7069   - GIO: add annotations for gobject-introspection
7070
7071 Bugs closed:
7072  166020 use GAtomic for refcounting
7073  617483 Credentials passing
7074  622005 [GApplication] no way to modify the "default-quit" property
7075  623293 vendor override files
7076  623810 Message serialization bug
7077  623815 Don't check sender for GDBusProxy objects where name is not set
7078  624473 GDBusSubtreeIntrospectFunc return type
7079  624483 GDBusSubtreeEnumerateFunc clarification
7080  624484 GDBusSubtreeDispatchFunc clarification
7081  624754 gdbusaddress.c missing sys/wait.h
7082  624968 div by zero in g_malloc_n family
7083  624991 GSettings mapping for G_TYPE_STRV 
7084  625383 Add missing GI annotations
7085
7086 Updated Translations:
7087  Armenian
7088  Galician
7089  German
7090  Hebrew
7091  Kazakh
7092  Romanian
7093  Simplified Chinese
7094  Spanish
7095
7096 Overview of Changes from GLib 2.25.10 to GLib 2.25.11
7097 =====================================================
7098
7099 +-------------------------------------------------------------------+
7100 | WARNING: There have been minor API changes in GDBus and GVariant. |
7101 | These API changes will not affect many users, but they do require |
7102 | a new version of GTK+ to be installed.                            |
7103 +-------------------------------------------------------------------+
7104
7105 Build:
7106   - add a --disable-Bsymbolic configure flag to disable linking with
7107     -Bsymbolic-functions
7108   - this release sees the complete removal of the old 'g*alias' hacks
7109   - honour the NOCONFIGURE environment variable from autogen.sh
7110   - use proper feature test macros for isnan
7111   - use pkg-config to check for zlib
7112   - add ACLOCAL_AMFLAGS to Makefile.am
7113
7114 GDBus:
7115   - hide Class and instance structures for all GDBus types except
7116     GDBusProxy.  This breaks API by preventing subclassing, but probably
7117     nobody was doing that.
7118   - add new GDBusConnection call to support flushing all pending
7119     outgoing messages
7120   - change the register_object API to add a reference to the
7121     GDBusInterfaceInfo object so the caller need not keep it alive
7122     themselves
7123   - don't rewrite the serial number when sending messages that already
7124     have a serial number
7125   - better error checking for DBUS_SESSION_BUS_ADDRESS environment
7126     variable
7127   - switch to g_parse_debug_string for G_DBUS_DEBUG and add a lot of new
7128     flags
7129   - add support for temporarily freezing a freshly created
7130     GDBusConnection.  Do this until after the ::new-connection signal
7131     has finished running on GDBus services.
7132   - never require non-closed connections (the user is incapable of doing
7133     this due to the obvious race)
7134   - remove weird/misleading redundant check on NameOwnerChanged signal
7135   - emit GDBusProxy::g-properties-changed on NameOwnerChanged
7136
7137 GVariant:
7138   - the 'g_variant_{new,get}_byte_array' APIs have been removed
7139   - g_variant_{new,get,dup}_bytestring has been added, with different
7140     arguments and different behaviour
7141   - g_variant_{new,get,dup}_bytestring_array has been added, doing
7142     essentially the same thing as the 'strv' functions, but with byte
7143     strings instead of utf8 strings
7144   - G_VARIANT_TYPE_BYTESTRING ('ay'), BYTESTRING_ARRAY ('aay') and
7145     STRING_ARRAY ('as') constants have been added
7146   - the undocumented behaviour that g_variant_get_strv() deserialised
7147     arrays of object paths or signature strings has been dropped
7148   - additional varargs support for converting bytestrings or bytestring
7149     arrays with ^ay ^aay ^&ay and ^a&ay
7150   - improved gobject-introspection annotation
7151   - fix a problem with GBuffer calling g_slice_free for the wrong type
7152   - fix leaks in the type inferencing code of the parser
7153
7154 GSettings:
7155   - improved documentation
7156   - updated schema XML DTD, now xincluded into the docs
7157   - added support for schemas that extend other schemas (using the
7158     'extends=' attribute).  Values of keys in the base schema can be
7159     overridden using <override>.
7160   - added theoretical support for lists (using the 'list-of=' attribute)
7161   - lots of new tests
7162   - add support for flags (implemented similarly to enums)
7163   - add support for generating .enums.xml files to gsettings.m4:
7164       gsettings_ENUM_NAMESPACE = org.example.myapp
7165       gsettings_ENUM_FILES = ../path/to/*.h
7166     will generate org.example.myapp.enums.xml with mappings for all
7167     enums and flags in the specified .h files.
7168   - warn with g_message() if the 'memory' backend is used by default
7169     (ie: because no other GSettings backends are installed)
7170   - fix get_property() for GSettings::schema
7171   - command line tool: fix a bug that prevented non-basic values from
7172     being set due to a premature free
7173   - command line tool: bash completion support
7174   - chain up in _finalize
7175   - add a new g_settings_get_mapped API to read settings that require
7176     post-processing
7177   - retry with the translated or schema default value if the
7178     GSettingsBindGetMapping function fails
7179   - schema compiler: never fail due to empty schema directories (but
7180     warn)
7181   - peek rather than ref/unref the GEnumClass in the mapping function
7182   - schema compiler: compile *.enums.xml before *.gschemas.xml to ensure
7183     that we have all the enums that the schemas may reference
7184   - schema compiler: improve accuracy of line numbers in error reports
7185   - fix crashes in the keyfile backend caused by invalid group names in
7186     the keyfile
7187
7188 Other:
7189   - always intern GBinding prop names
7190   - base64: remove asserts preventing conversion of empty strings
7191   - document NULL special-cases for GValueArray
7192   - GNode docs improvements
7193   - improve detection of 'system internal' mounts
7194   - fix leaks in the inotify GFileMonitor implementation
7195   - annotate all custom GIO GSources to improve debugging (e.g. using
7196     SystemTap)
7197
7198 Tests:
7199   - Turn on glibc malloc checking features for make check
7200   - improvements for GSettings tests, plus new tests
7201   - improved tests for GKeyfile
7202   - new tests for GDir, GSList, GSList, GAppLaunchContext,
7203     CharsetConverter, GIcon, ...
7204   - move some tests to GTester (tree tests, uri tests)
7205   - generally, really an awful lot of new tests
7206   - don't try to allocate 2gigs of memory anymore for the array test
7207
7208  552363 g_value_array_{insert,prepend,append}'s special cases for NULL
7209  561248 Improve return value description from g_node_prev/next_sibling()
7210  570036 Add ACLOCAL_AMFLAGS to Makefile.am
7211  576833 g_sprintf add a reference to g_strdup_printf
7212  576854 g_strconcat() documentation should provide a hint about bad l10n
7213  582227 reference: add other URI functions to 'URI Functions' section
7214  599223 should provide g_spawn_* variants that take a GAppLaunchContext
7215  610784 array test failing
7216  613057 Leak in inotify GFileMonitor implementation
7217  620536 Annotate all custom GIO GSource using g_source_set_name
7218  620913 More control with G_DBUS_DEBUG
7219  622124 implement flags
7220  622127 GSettings extended key validation
7221  622128 retry with default value for failed mapping
7222  622294 More annotations for GVariant
7223  622565 glib-compile-schemas fails when no schemas
7224  622600 Fix missing prototype warning
7225  622813 gsettings mapping & enum buglet
7226  623142 Ensure ::new-connection runs before processing D-Bus messages
7227  623143 Never require non-closed connections
7228  623319 use g_parse_debug_string for dbus debug flags
7229  623401 process enums first
7230  623402 schema compiler reports wrong line numbers
7231  623407 g_keyfile_settings_backend_new crashes with the key "/"
7232  623473 zlib should be checked with pkg-config
7233  623537 GDBusProxy has weird checking on NameOwnerChanged
7234  623538 GDBusProxy::g-properties-changed emission for corner cases
7235  623692 directory with file at multiple MLS levels may display empty
7236  623720 gschema.dtd does not contain enum definitions
7237  623770 quoting of expand_macro in gdesktopappinfo.c
7238  623772 gdesktopappinfo.c, function child_setup
7239  623780 g_unix_is_mount_path_system_internal
7240  623954 g_settings_finalize
7241  623955 Dubious return values
7242
7243 Updated translations:
7244  Galician
7245  Hebrew
7246  Norwegian bokmål
7247  Spanish
7248
7249 Overview of Changes from GLib 2.25.9 to GLib 2.25.10
7250 ====================================================
7251
7252 +----------------------------------------------------------------+
7253 | WARNING: There have been API changes in GDBus. Users of these  |
7254 | APIs will need to be adapted.  In particular, a new release of |
7255 | dconf is required to go along with this one.  There has also   |
7256 | been a change in the GSettings backend API used for keyfiles.  |
7257 +----------------------------------------------------------------+
7258
7259 * GDBus:
7260  - add direction parameter to filter functions (API change)
7261  - allow calling other interfaces with a GDBusProxy
7262  - padding added to class struct fields (ABI change)
7263  - fixes for closures-based functions
7264
7265 * GVariant:
7266  - new is_floating() call
7267  - add g_value_take_variant() call (required for marshallers)
7268
7269 * GSettings:
7270  - support for binding GParamSpecEnum properties
7271  - ifelse-style condition support for GLIB_GSETTINGS m4 macro
7272  - remove gsettings-schema-convert tool (now in GConf)
7273  - allow introspection of all installed schemas
7274  - allow introspection of the keys in a schema
7275  - rewrite keyfile backend (API change)
7276
7277 * GNIO:
7278  - don't implicitly close GSocket until it is destroyed
7279  - windows fixups
7280
7281 * Other:
7282  - allow GChecksum to take (NULL, 0) for data/length
7283  - GRelation and GCompletion are now deprecated
7284  - introduce G_PARAM_DEPRECATED and G_ENABLE_DIAGNOSTIC
7285  - add working directory to GApplication platform data
7286  - lots of documentation cleanups
7287  - PCRE updated to 8.02
7288
7289 * Build:
7290  - the IA__g_* style symbol aliasing has been disabled and replaced with
7291    the -Bsymbolic-functions linker flag on platforms that support it.
7292    Please be on the watch for portability issues and report them to us.
7293  - many test cases have been moved to the GTester framework
7294  - lcov support has been added for tests
7295  - many windows fixes
7296
7297 * Bugs fixed:
7298  501057  lcov coverage suite and GLib integration
7299  551271  deprecate GRelation
7300  601686  Implement diagnostic mode
7301  603309  GSocketOutputStream broken on Windows (?)
7302  616718  GLIB_GSETTINGS macro can't be used conditionally
7303  616855  GSocketConnection: don't close the socket if it's still reffed
7304  618866  g_ptr_array_remove_index_fast memory leak
7305  619878  keyfile backend calls keys_changed with invalid argument
7306  619879  keyfile backend doesn't make use of expected_type
7307  621092  Add with_closures() variants for bindings
7308  621172  Cross compiling fails
7309  621838  Actually add cwd to platform data
7310  621945  Filter outgoing messages in GDBusConnection
7311  621947  add g_value_take_variant
7312  622038  GSettings: "It is a programmer error" documentation is unclear
7313  622154  [patch] update documentation for g_application_new
7314  622281  binding: Add SYNC_CREATE to the flags
7315  622480  Improve documentation for g_strcmp0()
7316  622554  g_error called if schema not installed
7317  622601  Return interned strings from g_settings_list_keys
7318
7319 * Translation updates:
7320  - Galician
7321
7322 Overview of Changes from GLib 2.25.8 to GLib 2.25.9
7323 ===================================================
7324
7325 +----------------------------------------------------------------+
7326 | WARNING: There have been API changes in GDBus, GSettings and   |
7327 | GApplication. Users of these APIs will need to be adapted. In  |
7328 | particular, a new release of GTK+ is required to go along with |
7329 | this one.                                                      |
7330 +----------------------------------------------------------------+
7331
7332 * GDBus
7333  - Use Gio's default async implementation
7334  - Fix proxy construction for objects with no properties
7335  - Fix error handling in synchronous initialization
7336  - Do not dispatch calls to unregistered objects
7337  - Add _with_closures alternative functions
7338  - Allow constructing GDBusProxy with well-known names
7339  - Remove GType parameters from GDBusProxy constructors
7340  - Nuke g_bus_watch_proxy API
7341  - Add --xml to gdbus-tool to print raw introspected XML
7342
7343 * GSettings
7344  - schema file format change: store (default, options) in gvdb
7345  - Add g_settings_sync()
7346  - Add support for enums and ranges
7347  - 'context' support has been replaced by direct use of
7348    GSettingsBackend
7349
7350 * GApplication
7351  - Switch to using variants for timestamps
7352  - Use GInitable
7353
7354 * GObject
7355  - Introduce g_object_notify_by_pspec
7356  - Add GBinding
7357  - The GVariant gtype G_TYPE_VARIANT was changed from boxed
7358    to fundamental. We believe there were no existing users
7359    of the boxed type, so this should not cause any applications
7360    to break.
7361
7362 * Test framework
7363  - Add package and version to the test report XML
7364  - Use optparse to parse gtester-report commandline
7365  - Add subunit support to gtester-report
7366  - Prevent division by zero if no tests
7367
7368 * Bugs fixed:
7369  621782 Crash using gbinding
7370  619945 GConverterOutputStream triggers assertion and corrupts data
7371  621319 more leaked GVariants in GSettings
7372  621168 GKeyFile memory leak on Windows platform
7373  621002 Switch to using variants for timestamps, split out signals
7374  620953 tiny docs addition
7375  618904 Lies in gunixmounts documentation
7376  621702 Correctly initialize GError
7377  611778 minor cleanup of gtester-report
7378  621213 GDBusProxy and well-known names
7379  621034 Rewrite apps test to ensure children are killed
7380  620954 gapplication gvariant simplifications
7381  611869 add subunit out feature to gtester-report
7382  621119 GDBusProxy and objects with no properties
7383  620990 Use Gio's default async implementation again
7384  620952 g_application_register_with_data is an ugly API
7385  621252 GSettings leaks context
7386  618715 fork() in GSettings test cases is problematic 618715
7387  621905 Assume a ref when doing async work
7388  621266 GSettings "context" clarification
7389
7390 * Translation updates:
7391  Chinese
7392
7393
7394 Overview of Changes from GLib 2.25.7 to GLib 2.25.8
7395 ===================================================
7396
7397 * Initial support for dtrace and systemtap profiling:
7398  - mainloop sources can be named
7399  - probes for memory allocation with g_malloc and gslice
7400  - gquark name tracking
7401  - type creation
7402  - object life-cyle (creation, finalization, ref, unref)
7403  - signal creation and emission
7404
7405 * GVariant
7406  - has been fixed to work with the FreeBSD malloc
7407  - added introspection annotations
7408  - new function: g_variant_builder_add_parsed
7409
7410 * GSettings:
7411  - g_settings_set/get_strv functions have lost their length parameter
7412  - g_settings_set_strv accepts NULL
7413  - added introspection annotiations
7414
7415 * GPermission: an abstract interface for representing permissions,
7416   with a minimal implementation named GSimplePermission
7417
7418 * GApplication: a basic application support class, with a D-Bus based
7419   implementation
7420
7421 * Bugs fixed:
7422  619585 glib-compile-schemas asserts on FreeBSD
7423  620384 Annotate GVariant and GSettings _strv() functions
7424  606044 Add support for dtrace/systemtap static markers
7425  620350 add g_variant_builder_add_parsed() API
7426  620349 utf8ify GVariant printer
7427  620767 Typo in GSettings documentation: "INTLTOOL_NOMERGE_RULE"
7428  620312 Fix g_settings_[gs]et_strv() API
7429  620519 GPermission
7430  620582 GPermission needs a simple implementation
7431  620496 GSettings schema compiler should reject invalid paths
7432  620173 missing single header inclusion guards
7433  620265 g_assertion_message_error should take const GError *
7434
7435 * Translation updates:
7436  Esperanto
7437  Galician
7438  Hebrew
7439  Indonesian
7440  Norwegian bokmål
7441  Slovenian
7442  Spanish
7443
7444
7445 Overview of Changes from GLib 2.25.6 to GLib 2.25.7
7446 ===================================================
7447
7448 * NOTE: API/ABI breaks since 2.25.6 release:
7449   - g_dbus_connection_sync{,_sync} takes a new 'reply_type' argument
7450   - GSettingsBackendClass 'list' virtual function changed
7451
7452   GSettings backends and things using GDBus may need to be rebuilt.
7453
7454 * GDBus: many build-related fixes
7455
7456 * GDBus (service): return a DBus error when receiving a method call for
7457   an unknown interface.
7458
7459 * GSettings: fix 'make install' bug in gsettings.m4 for generated schema
7460   files
7461
7462 * GSettings: avoid non-portable use of LC_MESSAGES
7463
7464 * better approach to handling man pages
7465
7466
7467 * Bugs fixed:
7468  619527 please improve docs on g_file_make_symlink
7469  619391 send-with-reply should have expected result signature
7470  618616 Use stack-allocated GVariantBuilders
7471  617004 Build with "--disable-nls" fails under MinGW/Win32
7472  619142 Build fixes (GDBus)
7473
7474 * Updated translations:
7475  Estonian
7476  Galician
7477  Norwegian bokmål
7478
7479 Overview of Changes from GLib 2.25.5 to GLib 2.25.6
7480 ===================================================
7481
7482 * GDBus: introspection improvements
7483 * GDBus: build fixes
7484
7485 * GSettings: GSettingsBackend ABI changed               **** NOTE ****
7486 * GSettings: --uninstall option for schema compiler
7487 * GSettings: new m4 macro with more power
7488 * GSettings: thread support
7489
7490 * rework of file notification on Solaris
7491 * fixes for gold linker
7492
7493 * Bugs fixed:
7494  619038 increase gsettings.m4 power
7495  619031 method-calls-in-thread test failing
7496  618839 Typo at translation message
7497  616864 GSETTINGS_CHECK_RULE doesn't work with multiple files
7498  618730 gunixcredentialsmessage.c doesn't compile on GNU/kfreebsd
7499  616314 Make GSettings (partially) threadsafe
7500
7501 * Updated Translations:
7502  Indonesian
7503  Galician
7504  Spanish
7505
7506 Overview of Changes from GLib 2.25.4 to GLib 2.25.5
7507 ===================================================
7508
7509 * GDBus: Fix serialization of empty arrays
7510
7511 * GDBus: Plug various memory leaks
7512
7513 * GSettings: Fix problems with GSETTINGS_CHECK_RULE
7514
7515 * Bugs fixed:
7516  616731 GSETTINGS_CHECK_RULE doesn't work in non-srcdir builds
7517  616864 GSETTINGS_CHECK_RULE doesn't work with multiple files
7518  618615 mem leaks in parse_value_from_blob
7519  618622 Plug some mem leaks in gdbus
7520  618650 Plug a mem leak in gdbusauth
7521  618663 Plug mem leaks in gdbus tests & examples
7522
7523 * Updated translations:
7524  Spanish
7525
7526
7527 Overview of Changes from GLib 2.25.3 to GLib 2.25.4
7528 ===================================================
7529
7530 * GDBus D-Bus support has been merged. This provides an API
7531   to replace dbus-glib
7532
7533 * GVariant no requires strings to be UTF-8. You can use byte
7534   arrays for non-UTF-8 strings.
7535
7536 * GSettings allows to bind string properties to byte arrays
7537
7538 * The schema compiler supports range restrictions
7539
7540 * Bugs fixed:
7541  618051 socket-server|client.c fail to compile under AIX...
7542  616102 GSettings ignores <choice> and <range>
7543  616720 Chunked quark allocation
7544  616877 Several issues with g_socket_receive_message
7545  616892 gio: Add a boxed type for GFileAttributeMatcher
7546  616967 Add g_regex_get_compile_flags() and g_regex_get_match_flags()
7547  617767 g_settings_[gs]et_strv() 'length' argument has missing docs...
7548  617914 gtester-report: cope with binaries with no test cases
7549  617937 output_stream_close vs output_stream_close_async semantics
7550  615494 Connction timeouts produce partially invalid error messages
7551  617823 glib-compile-schemas problems with an out of source build
7552  617947 glib-mkenums: add @valuenum@ support
7553
7554 * Translation updates:
7555  Galicaian
7556  Norwegian bokmål
7557  Shavian
7558  Spanish
7559
7560
7561 Overview of Changes from GLib 2.25.2 to GLib 2.25.3
7562 ===================================================
7563
7564 * New macro: G_GNUC_DEPRECATED_FOR, a variant of G_GNUC_DEPRECATED
7565   that lets you add replacement information (requires gcc 4.5)
7566
7567 * Rename AM_GSETTINGS autoconf macro to GLIB_GSETTINGS
7568
7569 * Rename gschema-compile utility to glib-compile-schemas
7570
7571 * Add support for timeouts in GSocket
7572
7573 * Bugs fixed:
7574  589989 Compilation error on Solaris 9
7575  616648 Change AM_GSETTINGS macro to GLIB_GSETTINGS
7576  587898 I/O timeouts for GSocket
7577  614541 Add G_TYPE_ERROR boxed type for GError
7578
7579
7580 Overview of Changes from GLib 2.25.0 to GLib 2.25.2
7581 ===================================================
7582
7583 * Include a 'gsettings' utility, for commandline access to GSettings
7584
7585 * Install a AM_GSETTINGS autoconf macro similar to AM_GCONF
7586
7587 * GSettings can bind the writability of a key explicitly
7588
7589 * There is now a predefined boxed type for GError
7590
7591 * Bugs fixed:
7592  615379 g_new macros crash if sizeof(struct_type) == 0
7593  616312 Add m4 rule equivalent to GCONF_SCHEMAS_INSTALL
7594  616295 mapping bug for uint64
7595  616216 glib compile from remote directory fails
7596  615960 Fix size passed to connect() for abstract sockets
7597  616432 Crash in gschema-compile
7598  616331 gsettings-schema-convert uses imaginary types
7599  616309 gsettings-schema-convert should output gettext-domain
7600  616384 Add mention of GConfBridge in conversion docs
7601  616311 gschema-compile outputs in current directory
7602  616276 simplify gschema-compile test setup
7603  616156 keys with unnecessary empty options arrays
7604  616405 gsettings missing g_return_if_fail's
7605  616245 Use G_DEFINE_INTERFACE macro
7606  614541 Add G_TYPE_ERROR boxed type for GError
7607
7608 * Updated translations:
7609  Catalan (Valencian)
7610  Galician
7611  Kannada
7612  Spanish
7613
7614
7615 Overview of Changes from GLib 2.24.0 to GLib 2.25.0
7616 ===================================================
7617
7618 * The GSettings framework has been merged. This provides the API to
7619   replace GConf. DConf will provide a backend implementation for it.
7620   GConf will also provide a backend implementation to ease the
7621   transition. We provide utilities to assist with schema conversion
7622   and data migration, as well as a porting guide.
7623
7624 * Translation updates:
7625  Bengali
7626  Catalan
7627  Danish
7628  Gujarati
7629  Marathi
7630  Thai
7631  Traditional Chinese
7632
7633
7634 Overview of Changes from GLib 2.23.6 to GLib 2.24.0
7635 ===================================================
7636
7637 * Bug fixes:
7638  613601 buglet in dup_close_on_exec_fd
7639  584284 g_data_input_stream_read_until_async behaves confusingly
7640  613748 Write errors in middle of copy cause hang
7641  613923 splice_stream_with_progress: wrong error handling
7642  613667 Typo in GObject documentation
7643  613618 gvariant format string docs unclear
7644
7645 * Translation updates:
7646  Basque
7647  Ukrainian
7648  Vietnamese
7649
7650
7651 Overview of Changes from GLib 2.23.5 to GLib 2.23.6
7652 ===================================================
7653
7654 * Class private data:
7655   - support for private data associated with a GTypeClass
7656
7657 * GVariant merge is now complete:
7658   - loading functions and parser merged
7659
7660 * Windows improvements:
7661   - socket fixes
7662   - various build improvements
7663   - removal of GCC/C99isms in favour of portable code
7664   - drop unmaintained Visual Studio 8 support
7665
7666 * Minor API addition:
7667   - g_desktop_app_info_get_filename()
7668
7669 * Bugs fixed:
7670  521707 Class private data
7671  612502 build fails on glib/tests/gvariant.c
7672  612832 [GDesktopAppInfo] New function g_desktop_app_info_get_filename
7673  612702 [PATCH] Fix GSocket-related crash on Windows
7674  612736 Improve the documentation about single include
7675  610858 gvariant test fails sometimes
7676  612327 uninitialized variable
7677
7678 * New translations:
7679  Afrikaans
7680  LowGerman
7681
7682 * Updated translations:
7683  Czech
7684  Finnish
7685  Galician
7686  Greek
7687  Punjabi
7688  Romanian
7689  Serbian
7690
7691
7692 Overview of Changes from GLib 2.23.4 to GLib 2.23.5
7693 ===================================================
7694
7695 * New API addition: g_malloc_n() and friends used to implement an
7696   overflow-safe family of g_new() macros.
7697
7698 * GVariant:
7699  - GVariantBuilder and GVariantIter are now merged.
7700  - The variable arguments API is now merged.
7701  - The parser will be in a future release.
7702
7703 * GIO:
7704  - Remove GUtf8InputStream (which never appeared in a stable release)
7705    for now since it doesn't satisfy the needs of its main intended use
7706    case.  We hope to reimplement this feature in a better form in a
7707    future release.
7708
7709 * Bugs fixed:
7710  609531 missing licence headers
7711  612107 Missing G_FILE_ATTRIBUTE_TRASH_ORIG_PATH
7712  611897 g_io_modules_scan_all_in_directory leaks
7713  608196 Overflow-safe g_new family
7714  611696 gio uses GetAddrInfo which requires special handing on windows 2k
7715  605667 Don't use G_PARAM_SPEC_VALUE_TYPE when we know the pspec is valid
7716  610860 test_g_file_open_readwrite fails if $HOME is unwritable
7717  552912 glib-2.18 /live-g-file/test_copy_move failed when run as root
7718  609813 Renaming a file discards file notes
7719
7720 * Updated translations:
7721  Basque
7722  Brazilian Portuguese
7723  British English
7724  Bulgarian
7725  Catalan
7726  Danish
7727  Estonian
7728  French
7729  German
7730  Hungarian
7731  Italian
7732  Lithuanian
7733  Norwegian bokmål
7734  Portuguese
7735  Russian
7736  Slovenian
7737  Spanish
7738  Swedish
7739  Traditional Chinese
7740
7741
7742 Overview of Changes from GLib 2.23.3 to GLib 2.23.4
7743 ===================================================
7744
7745 * GVariant: The core of GVariant has been merged now, with some
7746  API still to follow.
7747
7748 * GIO:
7749  - There is a new interface GFileDescriptorBased for file descriptor
7750    based IO. GLocalFile{Input,Output}Stream implement it
7751  - Use splice(2) to transfer data between file descriptors without
7752    extraneous copies
7753  - Add a way to request move events from file monitors
7754
7755 * Bugs fixed:
7756  609143 *result_uncertain is never assigned in g_content_type_guess
7757  604086 Use splice(2) when doing local file copies
7758  547890 No move events for GFileMonitorEvent?
7759  568760 nautilus freezes due to a bug in garray.c:322
7760  609962 Add info about the use of G_DEFINE_INTERFACE
7761  609564 g_base64_encode_close docs should mention outbuf size...
7762  610484 g_variant_equal bug
7763  610131 libasyncns does not compile on Solaris 8
7764  609530 missing single header include guards
7765
7766 * Updated translations:
7767  Czech
7768  Estonian
7769  Galician
7770  German
7771  Korean
7772  Polish
7773  Slovenian
7774  Spanish
7775  Traditional Chinese
7776
7777
7778 Overview of Changes from GLib 2.23.2 to GLib 2.23.3
7779 ===================================================
7780
7781 * GLib now has a facility for locks that consume only one bit of
7782   storage inside an integer: g_bit_lock()
7783
7784 * GVariant: The serializer has been merged, with more API to follow
7785
7786 * Bugs fixed
7787  548967 1 bit mutex lock
7788  604967 2.22.3 libasyncns build fails on HP-UX 11.11
7789  608602 G_VALUE_COLLECT_INIT variables shadow those in G_VALUE_COLLECT
7790  608743 Crash in g_hostname_to_ascii visiting certain website in epiphany
7791  599197 array ref and unref functions crash on NULL array.
7792  608159 mem leak in g_io_modules_scan_all_in_directory
7793
7794 * Translation updates
7795  Brazilian Portuguese
7796  Czech
7797  French
7798  Norwegian bokmål
7799  Slovenian
7800  Spanish
7801  Thai
7802
7803
7804 Overview of Changes from GLib 2.23.1 to GLib 2.23.2
7805 ===================================================
7806
7807 * We are now using gcc builtins for atomic operations when available
7808
7809 * g_assert() grew the ability to store assertions in core dumps
7810
7811 * GIO supports lazy loading of GIO modules, and there is a new
7812   gio-querymodule utility that goes along with this.
7813   Packagers will need to adapt to this.
7814
7815 * Threading changes:
7816  - The requirements for g_thread_init() have been relaxed slightly,
7817    it can be called multiple times, and does not have to be the first
7818    call.
7819  - GObject now links to GThread and threads are enabled automatically
7820    when g_type_init() is called.
7821  - Thread-safety issues with boxed types in GObject have been fixed.
7822
7823 * GObject:
7824  - Another bunch of performance work has landed
7825
7826 * GVariant:
7827  - GVariantType has been merged, with the rest of the GVariant
7828    API to follow.
7829
7830 * Bugs fixed:
7831  568760 nautilus freezes due to a bug in garray.c:322
7832  602417 Document lifecycles of GSimpleAsyncResult and friends
7833  604824 crash in Epiphany: Selecting my Slashdot bo...
7834  448888 don't init g_slice for always-malloc
7835  531902 Use GCC atomic buildins for g_atomic*
7836  554887 boxed type registration is not thread safe
7837  586150 unresolved symbols when building glib 2.21.2 on OS X Tiger
7838  589176 row gvalue transform array exponentially
7839  594872 Support storing assertion messages into core dump
7840  602240 Upgrade libasyncns to 0.8
7841  603590 Speed up G_VALUE_COLLECT
7842  604457 gutf8inputstream.c: increasing unknown size pointer
7843  605686 GCharsetConverter doesn't flush
7844  605733 g_memory_output_stream_new violates GObject standards
7845  605883 g_object_new() processes varargs even when there are none
7846  605977 invalid utf-8 conversion in g_local_file_get_parse_name(...
7847  606775 Enable threads by default in gobject
7848
7849 * Translation updates:
7850  Asturian
7851  Basque
7852  Bengali
7853  Bulgarian
7854  Estonian
7855  Norwegian bokmål
7856  Spanish
7857  Thai
7858  Ukrainian
7859
7860
7861 Overview of Changes from GLib 2.23.0 to GLib 2.23.1
7862 ===================================================
7863
7864 * GObject performance work has landed:
7865  - Construction of simple objects is much faster
7866  - Interface lookup is lock-free and constant-time now
7867  - Reduced locking overhead when dealing with types
7868
7869 * GType now has a G_DEFINE_INTERFACE convenience macro
7870
7871 * GIO gained GUtf8InputStream, an input stream that
7872   performs utf-8 validation
7873
7874 * GLib now has byte-swap macros for gsize and gssize
7875
7876 * Bugs fixed:
7877 557151 Determining the newly_constructed boolean in gobject.c...
7878 557100 Performance improvements for GObjectClasses that don't...
7879 501166 Warning message says IA__g_type_init instead of g_type_init
7880 585375 Performance and Contention problems with g_type_class_ref...
7881 587892 Race in GType when instantiating the same class for the...
7882 603270 Input Stream validating utf8
7883 603476 gioenums.h:62: error: comma at end of enumerator list
7884 603540 g_time_val_from_iso8601 uses uninitialised variable
7885 603982 Stack overflow when reading file async with filter
7886 604645 G_DEFINE_INTERFACE_* documentation is not generated
7887 604875 Use of sa_len conflicts with system header
7888 320482 provide G_DEFINE_TYPE like macros for interfaces
7889
7890 * Updated translations:
7891  Estonian
7892  Hebrew
7893  Norwegian bokmål
7894  Vietnamese
7895  Welsh
7896
7897
7898 Overview of Changes from GLib 2.22.x to GLib 2.23.0
7899 ===================================================
7900
7901 * GIO:
7902  - GConverter: a generic interface for stateful conversions of data,
7903    suitable for charset conversion, compression, decompression, regexp
7904    replacement. Concrete implementations are GCharsetConverter,
7905    GZlibCompressor and GZlibDecompressor. GConverterInputStream,
7906    GConverterOutputStream are stream implementations that convert data
7907    while loading or saving it.
7908  - GMounts can now have a 'default location': a path that reflects
7909    the main entry point for the user (e.g. the home directory).
7910  - As a consequence of the compression support, GIO depends on zlib now.
7911
7912 * GObject:
7913  - G_IMPLEMENT_INTERFACE_DYNAMIC: a convenience macro for adding
7914    interfaces to dynamic types.
7915
7916 * GModule:
7917  - The -pthread flag has been added to all gmodule .pc files, because
7918    it is not generally permissible to load modules that are linked
7919    against libpthread if the program has not been compiled with threading
7920    support.
7921
7922 * Bugs fixed:
7923  601637 GUnixFDMessage should contain a GUnixFDList
7924  585566 GSocketListener API issues
7925  572252 Bug in g_file_test() function.
7926  600550 g_app_info_create_from_commandline doesn't treat arguments properly
7927  541236 not detecting exact content type
7928  350200 [PATCH] GTypeModule derived class unref does not unload plugin
7929  589631 Please enclose literal values with double quotes
7930  577711 cross compile check for g++ broken
7931  600620 Support X-GNOME-FullName in GAppInfo
7932  598899 GWin32DirectoryMonitor is broken
7933  593809 Nautilus does not restore the position of the icons on the desktop...
7934  563627 g_get_prgname() threadsafety
7935  600141 Add -pthread to gmodule pkg-config
7936  593856 file and directory monitors don't work when glib is compiled...
7937  324930 Nautilus should disallow copying of symlink to FAT drive early
7938  587300 Deadlock when calling g_cancellable_disconnect in a...
7939  595138 GFile not robust with invalid input
7940  591216 Warning building resolver.o
7941  590016 Does not compile under MinGW32 + Wine
7942  591214 Warnings building gcancellable.o
7943  561998 Have specific entry points (paths) for mounts...
7944  508157 Add G_IMPLEMENT_INTERFACE_DYNAMIC
7945  535159 g_file_has_parent
7946
7947 * Updated translations:
7948  Brazilian Portuguese
7949  Catalan
7950  Estonian
7951  Galician
7952  Norwegian bokmål
7953  Shavian
7954  Slovenian
7955  Spanish
7956  Swedish
7957
7958
7959 Overview of Changes from GLib 2.22.1 to GLib 2.22.2
7960 ===================================================
7961
7962 * GIO:
7963  - Support case-sensitive globs in the shared mime database,
7964    including support for the newer cache format that allows these.
7965    Case-sensitive globs have been introduced in shared-mime-info
7966    version 0.70
7967
7968 * GObject:
7969  - Speed up creation of simple objects
7970
7971 * Bugs fixed:
7972  597194 Typo in _G_TYPE_CVH macro
7973
7974 * Updated translations:
7975  Russian
7976
7977
7978 Overview of Changes from GLib 2.22.0 to GLib 2.22.1
7979 ===================================================
7980
7981 * Bugs fixed:
7982  596064 Test file marked for translation
7983  595972 possibly invalid search in mime_info_cache_dir_add_...
7984  596561 C99 style of declaration of variable in gmessages.c
7985  596314 g_utf16_to_utf8 returns an invalid UTF8 string
7986  596748 g_async_result_get_source_object returns a new ref
7987  593809 Nautilus does not restore the position of the icons...
7988  593775 uses inotify_init1 unconditionally
7989
7990 * Updated translations:
7991  Bengali
7992  Hebrew
7993
7994
7995 Overview of Changes from GLib 2.21.6 to GLib 2.22.0
7996 ===================================================
7997
7998 * Add gdb python macros to make gobject debugging more pleasant
7999
8000 * Bugs fixed:
8001  579050 Allow making selected critical and warning messages non-fatal
8002  594759 g_socket_send_message fails due to invalid sendmsg params
8003  593941 GNetworkAddress skipping addresses when enumerating
8004  594597 Fix build with srcdir != builddir
8005  595619 Include gdb pretty printers
8006
8007 * Changes that might affect bindings:
8008  - The error parameter of g_simple_async_result_set_from_error has been
8009    made const.
8010
8011 * Updated translations:
8012  Assamese
8013  Bengali India
8014  British English
8015  Bulgarian
8016  Catalan
8017  Czech
8018  Danish
8019  Finnish
8020  Galician
8021  Greek
8022  Gujarati
8023  Hindi
8024  Japanese
8025  Kannada
8026  Malayalam
8027  Marathi
8028  Norwegian bokmål
8029  Oriya
8030  Polish
8031  Punjabi
8032  Romanian
8033  Serbian
8034  Simplified Chinese
8035  Slovenian
8036  Spanish
8037  Tamil
8038  Telugu
8039  Thai
8040  Traditional Chinese
8041  Ukrainian
8042  Vietnamese
8043
8044
8045 Overview of Changes from GLib 2.21.5 to GLib 2.21.6
8046 ===================================================
8047
8048 * Minor API additions:
8049   g_mkstemp_full is a variant of g_mkstemp that allows to specify flags
8050   and permissions
8051
8052 * Bugs fixed:
8053  593232 g_rand_new: read no more than requested from /dev/urandom
8054  591995 use saved errno
8055  589491 g_time_val_from_iso8601 doesn't handle some cases
8056  593406 Permissions set to 777 after copying via Nautilus
8057  594034 Add g_mkstemp_full()
8058
8059 * Updated translations:
8060  Assamese
8061  Basque
8062  Brazilian Portuguese
8063  Czech
8064  Estonian
8065  French
8066  German
8067  Hungarian
8068  Italian
8069  Kannada
8070  Malayalam
8071  Marathi
8072  Norwegian bokmål
8073  Oriya
8074  Portuguese
8075  Swedish
8076  Tamil
8077  Turkish
8078
8079
8080 Overview of Changes from GLib 2.21.4 to GLib 2.21.5
8081 ===================================================
8082
8083 * A performance problem with trashing of many files has been fixed
8084
8085 * GResolver now invalidates the libc resolv.conf cache as needed
8086
8087 * Minor api additions:
8088  - g_cancellable_make_pollfd returns a boolean now. And there is a
8089    new function g_cancellable_release_fd that can be used to released
8090    the resources used by a GCancellable.
8091
8092 * Bugs fixed:
8093  589988 Compilation error on Solaris 9 (missing stdint.h)
8094  588901 gtcpconnection.c won't compile
8095  584246 GResolver needs to call res_init() when network state changes
8096  591714 Figure out failure handling for g_cancellable_make_pollfd()
8097  591532 redundent '/' returned from g_file_resolve_relative_path
8098  591378 Use MSG_NOSIGNAL in GSocket if it's available
8099  589649 API documentation migration for Base64 Encoding
8100  591840 configure fails with autoconf 2.64
8101
8102 * Updated translations:
8103  Basque
8104  Brazilian Portuguese
8105  Bulgarian
8106  Danish
8107  Estonian
8108  Finnish
8109  Galician
8110  Gujarati
8111  Hndi
8112  Irish
8113  Japanese
8114  Korean
8115  Norwegian bokmål
8116  Polish
8117  Portuguese
8118  Punjabi
8119  Spanish
8120  Swedish
8121  Telugu
8122  Traditional Chinese
8123  Thai
8124
8125
8126 Overview of Changes from GLib 2.21.3 to GLib 2.21.4
8127 ===================================================
8128
8129 * GTree is now refcounted
8130
8131 * Bugs fixed:
8132  587938 Undocumented limitation for g_str_equal
8133  587773 refcounts for GTree
8134
8135 * Updated translations:
8136  French
8137  Hebrew
8138  Norwegian bokmål
8139  Spanish
8140  Swedish
8141  Traditional Chinese
8142  Ukrainian
8143
8144
8145 Overview of Changes from GLib 2.21.2 to GLib 2.21.3
8146 ===================================================
8147
8148 * GMappedFile is refcounted now
8149
8150 * Mainloop: It is now possible to set per-thread default contexts,
8151   with g_main_context_push_thread_default.
8152
8153 * glib-mkenums supports a @basename@ substitution, in addition
8154   to @filename@.
8155
8156 * GIO:
8157  - Vfs implementations can support storing of per-file metadata.
8158  - GCancellable can now be subclassed.
8159  - Unmount and eject methods now optionally allow interaction, via
8160    variants that take a GMountOperation object.
8161
8162 * Bugs fixed:
8163  556706 Inconsistent help arguments -h, -?
8164  579449 FileChoosers no longer work if an idle handler is active
8165  579933 mainloop FD_CLOEXEC has a race condition
8166  579984 alternate GMainContext support
8167  585937 gio/gsocket.c (glib 2.21.2) does not compile (Windows/mingw)
8168  586675 Runtime library location
8169  586797 Add GCancellables to GSocket ops
8170  586868 g_filename_complete_get_completions doesn't always return...
8171  587415 g_resolver_lookup_by_name_finish returns a freed list
8172  587434 regression tests fail, at least on x86_64
8173  586928 Avoid g++ warning in g_error()
8174
8175 * Updated translations:
8176  Estonian
8177  Hebrew
8178
8179
8180 Overview of Changes from GLib 2.21.1 to GLib 2.21.2
8181 ===================================================
8182
8183 * GIO:
8184   - g_socket_speaks_ipv4 is a new function to check if a socket can
8185     speak IPv4.
8186   - g_socket_listener_add_address gained a new effective_address out
8187     parameter.
8188   - GIO now returns special icons for XDG user directories, by the
8189     name folder-music, folder-documents, etc.
8190   - GIO gained support for starting/stopping of drives, which can be used
8191     in connection with external hard disk enclosures, disk arrays, iSCSI
8192     devices, etc. See g_file_start/stop_mountable.
8193
8194 * GLib:
8195  - g_reload_user_special_dirs_cache is a new function to force GLib to
8196    reload the XDG user directory mapping from disk.
8197
8198 * Bug fixes:
8199  584574 glib compile failure on Mac OS X with gunixresolver.c and...
8200  585566 GSocketListener API issues
8201  584255 Incorrect freeing of thread pool in GThreadedSocketService
8202  585088 g_string_chunk_insert_len stops at nul bytes
8203  585360 Monitor fontconfig configuration files using gio causes m...
8204  580103 Terminal starts on Display :0.0 when started on :0.1 in D...
8205  580301 network: a few issues on old darwin
8206  583398 SRV weight sorting is incorrect
8207  584176 build fixes on FreeBSD
8208  585189 g_cancellable_reset() must be called in same thread as g_...
8209  585280 compilation dies on gio/gsocket.c, needs sys/uio.h to con...
8210  585281 gio/gunixfdmessage.c needs sys/types.h for platforms that...
8211  585478 don't leak the inotify fd
8212  585575 g_socket_listener_add_inet_port() doesn't do the right thing
8213  585599 g_socket_listener_add_socket() consumes the socket
8214  585676 GEmblem doesn't reference its 'icon' if that is set as a ...
8215  585717 "bytes" nautilus translation to french is not shown in th...
8216  541276 XDG directories should have their own icons
8217  585726 Grammatical error in GList documentation
8218  585520 Wrong warning option in documentation
8219  585673 GNOME Goal: Remove deprecated glib symbols
8220  585591 Starting/stopping drives
8221
8222 * Updated translations:
8223  Bengali India
8224  Norwegian bokmål
8225
8226
8227 Overview of Changes from GLib 2.21.0 to GLib 2.21.1
8228 ===================================================
8229
8230 * GIO:
8231  - Support for network IO has been added, including a low-level
8232    socket API and a high-level API for network connections and
8233    services.
8234  - Support for read-write access with GIOStream and its subclasses.
8235  - GMount gained a pre-unmount signal.
8236
8237 * Bug fixes:
8238  576104Implement GMount::pre-unmount
8239  578769 implement GWinHttpFileInputStream::close_fn
8240  582856 gsocket.c doesn't compile on Solaris
8241  569375 g[u]intptr undocumented
8242  573246 [FIX] g_desktop_app_info_dup() can access NULL pointer
8243  575013 g_cancellable_push_current() does not allow NULL
8244  577884 live-g-file.c:461: error: format ‘%d’ expects type ...
8245  578499 g_output_stream_splice and stream closing with gnio strea...
8246  579558 Application employing gvfs crashes with only libgvfscommo...
8247  583001 SIGPIPE (grr!)
8248  583061 Please add convenience function to connect to machines by...
8249  583198 typo in error message
8250  583206 use g_set_error_literal where appropriate
8251  583229 void function g_async_initable_init_async returns value
8252  583324 locking problem in g_main_context_iterate()
8253  583408 void function g_socket_control_message_serialize returns ...
8254  578786 wrong and confusing error message
8255  583205 g_inet_address_to_bytes has no length outparam
8256  583196 mem leak in keyfile test
8257  583663 GSocketType enum ends with a comma
8258  569024 Make g_error_new_valist public
8259  569376 missing G_G[U]INTPTR_FORMAT
8260  580347 off-by-1 bug in GWinHttpFile
8261
8262 * Updated translations:
8263  Oriya
8264  Spanish
8265  Valencian-Catalan
8266
8267
8268 Overview of Changes from GLib 2.20.x to GLib 2.21.0
8269 ===================================================
8270
8271 * GIO:
8272  - New helper functions g_cancellable_connect/disconnect to avoid
8273    race conditions when connecting to the "cancelled" signal on
8274    GCancellable.
8275  - New types and methods for dealing with IPv4 and IPv6 addresses (and
8276    UNIX domain socket addresses under UNIX). This does not include code
8277    for actual socket I/O.
8278  - GResolver provides asynchronous and cancellable APIs for resolving
8279    hostnames, reverse lookup of IP addresses and resolving SRV records.
8280
8281 * Glib now provides hash and comparison functions for int64 and double
8282   types, suitable for use with GHashTable.
8283
8284 * GArray, GPtrArray and GByteArray can be ref counted now, and have
8285   boxed types.
8286
8287 * Bugs fixed:
8288  572844 Helper for GCancellable::cancelled connect/disconnect
8289  578363 goption docs should be improved
8290  548466 async/cancellable DNS resolver
8291  579830 param spec strings should use P_()
8292  579862 requesting xattr::foo ends up calling getxattr(..., user...
8293  580453 Hash and equal functions for gint64 and gdouble
8294  580450 Reference counting and boxed types for arrays
8295  580194 gresolver doesn't build on Solaris
8296  580301 network: a few issues on old darwin
8297  580299 network: include sys/types.h before sys/socket.h to insur...
8298  572508 gmarkup speedup
8299  580546 g_strtoull() referenced in documentation...
8300  580656 g_key_file_set_string_list erroneously asserts list != NULL
8301  579272 leaks in g_simple_async_result_set_op_res_gpointer
8302
8303
8304 * Updated translations:
8305  Catalan (ca)
8306  Pashto (ps)
8307  Spanish (es)
8308
8309
8310 Overview of Changes from GLib 2.20.0 to GLib 2.20.1
8311 ===================================================
8312
8313 * Bug fixes:
8314  575555 Use fsync() when replacing files to avoid data loss on
8315  575708 runaway inotify madness
8316  575270 GVolumeMonitor::mount-pre-unmount not being emitted
8317  577128 glib make check Failed to execute child process...
8318  573673 Always show "backup" directories
8319  578369 g_time_val_from_iso8601() parses timezones incorrectly
8320  578002 Fix a small typo in GFile docs
8321  578017 G_DEFINE_TYPE_EXTENDED docs
8322
8323 * Updated translations:
8324  Arabic
8325  Assamese
8326  Basque
8327  Bularian
8328  Brazilian Portuguese
8329  British English
8330  Catalan
8331  Danish
8332  French
8333  Galician
8334  German
8335  Greek
8336  Hungarian
8337  Italian
8338  Japanese
8339  Kannada
8340  Lithuanian
8341  Malayalam
8342  Norwegian bokmål
8343  Oriya
8344  Polish
8345  Punjabi
8346  Russian
8347  Simplified Chinese
8348  Slovenian
8349  Spanish
8350  Swedish
8351  Tamil
8352
8353
8354 Overview of Changes from GLib 2.19.9 to GLib 2.20.0
8355 ===================================================
8356
8357 * Base64 support: Avoid integer overflows. CVE-2008-4316
8358
8359 * Bugs fixed:
8360  574019 GChecksum: document and guarantee hex characters in lower case
8361  573454 Unable copy/move files to directories symlinked to gvfs share
8362  561172 gnome-open fails on local URIs with anchors
8363  573970 crash in gunixvolumemonitor:update_mounts when unmounting
8364  573843 g_get_current_dir returns non-absolute path
8365
8366 * Updated translations:
8367  Assamese (as)
8368  Bengali (bn_IN)
8369  Czech (cs)
8370  Hindi (hi)
8371  Italian (it)
8372  Japanese (ja)
8373  Lithuanian (lt)
8374  Malayalam (ml)
8375  Marathi (mr)
8376  Oriya (or)
8377  Polish (pl)
8378  Romanian (ro)
8379  Telugu (te)
8380
8381
8382 Overview of Changes from GLib 2.19.8 to GLib 2.19.9
8383 ===================================================
8384
8385 * GMarkup:
8386  - Considerable speedup
8387
8388 * GIO
8389  - Add G_FILE_CREATE_REPLACE_DESTINATION flag to allow replacing
8390    the destination of a copying operation as if it did not exit before.
8391  - Be more careful when classifying files as desktop files
8392  - Support desktop file key X-GIO-NoFuse which disables the use
8393    of fuse pathnames for %u and %U arguments
8394
8395 * Bugs fixed:
8396  572672 glib/gthread.c: argument is different type
8397  572464 Doc for g_file_get_contents
8398  572151 “it's” and “its” confused in docs and comments
8399  570501 g_win32_get_system_data_dirs uses invalid conversion...
8400  167569 g_string_append_printf crashes on win32 when used...
8401  572508 gmarkup speedup
8402  560564 Replacing a symlink with its linked file truncates... 
8403  549298 impossible to copy files with p (pipe) flag
8404  543183 Clarify docs for g_file_has_prefix
8405  540461 g_memory_output_stream_get_data_size() doesn't behave...
8406  573462 GEmblemedIcon leak
8407  573421 Clarify message format in GMountOperation
8408  573658 Deadlock in giomodule.c
8409  556706 Inconsistent help arguments -h, -?
8410  573527 Wrong shell to run config.status in Makefile.in.in
8411  573128 A couple of typos in GObject documentation
8412
8413 * Updated translations:
8414  Catalan (ca)
8415  British English (en_GB)
8416  Spanish (es)
8417  Basque (eu)
8418  Finnish (fi)
8419  French (fr)
8420  Gujarati (gu)
8421  Hebrew (he)
8422  Hungarian (hu)
8423  Korean (ko)
8424  Maithili (mai)
8425  Norwegian bokmål (nb)
8426  Dutch (nl)
8427  Portugese (pt)
8428  Swedish (sv)
8429  Thai (th)
8430  Traditional Chinese (zh_HK)
8431  Traditional Chinese (zh_TW)
8432
8433
8434 Overview of Changes from GLib 2.19.7 to GLib 2.19.8
8435 ===================================================
8436
8437 * GIO: Fix missing exports of new API
8438
8439 * Fix strict aliasing warnings and violations to make Glib work
8440   with gcc 4.4
8441
8442
8443 Overview of Changes from GLib 2.19.6 to GLib 2.19.7
8444 ===================================================
8445
8446 * GIO
8447  - GFile gained an attribute for the actual file size in bytes
8448  - GMountOperation gained an "aborted' signal that allows to abort
8449    a mount operation from the backend side
8450
8451 * Bugs fixed:
8452  523742 Use noinst for non-installable libraries
8453  566747 URIs opened with firefox %u load as local files
8454  541225 Can't compile gio on AIX duplicate case value in gioerror.c
8455  571598 GAsyncResult with NULL gobject
8456  505042 add file attribute for actually used file size in bytes
8457
8458 * Updates translations:
8459  Basque (eu)
8460  Gujarati (gu)
8461  Italian (it)
8462  Japanese (ja)
8463  Norwegian bokmål (nb)
8464  Dutch (nl)
8465  Portugese (pt)
8466  Thai (th)
8467  Vietnamese (vi)
8468
8469
8470 Overview of Changes from GLib 2.19.5 to GLib 2.19.6
8471 ===================================================
8472
8473 * New format macro to print goffset data: G_OFFSET_FORMAT
8474
8475 * GIO: 
8476  - Add a GFilter{Input,Output}Stream::close-base-stream properties which
8477    determine whether the base stream will be closed when the filter stream
8478    is finalized.
8479  - g_data_input_stream_read_line and ..._read_until have asynchronous
8480    variants now.
8481
8482 * Bugs fixed:
8483  568294 A wrong reference in the description of g_bookmark_file_...
8484  563141 RFE: define G_OFFSET_FORMAT
8485  569105 g_time_val_to_iso8601() assumes time_t==long
8486  568394 dropping the last reference to a stream filter closes...
8487  568741 g_buffered_input_stream_fill_async doesn't work
8488  568723 g_buffered_input_stream_fill_async doesn't take count == -1
8489  568575 _async functions for GDataInputStream
8490
8491 * Updated translations:
8492  Bulgarian (bg)
8493  Finnish (fi)
8494  Hungarian (hu)
8495  Oriya (or)
8496  Swedish (sv)
8497  Traditional Chinese (zh_HK)
8498  Traditional Chinese (zy_TW)
8499
8500
8501 Overview of Changes from GLib 2.19.4 to GLib 2.19.5
8502 ===================================================
8503
8504 * Update included PCRE to 7.8
8505
8506 * g_base64_decode_inplace: New function to do base64 decoding in place
8507
8508 * Bugs fixed:
8509  567138 get_package_directory_from_module() does not free ...
8510  566569 gregex docs clarification
8511  566573 g_match_info_fetch_pos docs
8512  564728 Add function to decode base64 encoded data in place
8513  567838 G_STRUCT_OFFSETOF fails to compile under icc 9.1
8514  567977 textdomain() macro should not return NULL ...
8515  512779 --disable-regex breaks compilation
8516  566770 error code 0 for Too many open files is useless
8517  565484 g_content_type_guess passes non-UTF8 text to XDG ...
8518
8519 * Updated translations:
8520  Catalan (ca)
8521  Spanish (es)
8522  Italian (it)
8523  Swedish (sv)
8524
8525  
8526 Overview of Changes from GLib 2.19.3 to GLib 2.19.4
8527 ===================================================
8528
8529 * GIO:
8530   - Use O_NOATIME when sniffing mimetypes
8531   - Add a convenience method to check if a GSimpleAsyncResult
8532     is valid
8533
8534 * Bugs fixed:
8535  560676 function access for g_threads_supported
8536  565905 There is no g_context_group_set_translation_domain
8537  564210 SUN Studio 12 has supported visibility attribute
8538  565136 GObject's "notify" signal parameters are wrong in gtk-doc
8539  565831 error in interface creation sample
8540  566348 g_file_open_tmp uses the wrong g_mkstemp on win32
8541  566064 Add NOATIME flag to query_info_flags
8542  566170 g_async_result_verify_source_object
8543
8544 * Updated translations:
8545  Spanish (es)
8546  Norwegian bokmål (nb)
8547  Brazilian Portugese (pt_BR)
8548  Simplified Chinese (zh_CN)
8549
8550
8551 Overview of Changes from GLib 2.19.1 to GLib 2.19.3
8552 ===================================================
8553
8554 * Bugs fixed:
8555  508021 Add support for the CRIS and CRISv32 architectures
8556  526320 should not list mounts that the user doesn't have permission to use
8557  558458 Cannot build gio tests on Solaris using SUN cc
8558  555465 GUnix{Input,Output}Stream lacks fd/close_fd_at_close property
8559  558298 Hide ecryptfs mounts
8560  515777 incorrect date&time on copy
8561  562452 Ensure we return G_IO_ERROR_CANCELLED if cancelling
8562         g_simple_async_result_run_in_thread
8563  473150 g_type_module_use inconsistently increases the use
8564         counter in case of error
8565  563150 G_GU?INT*_MODIFIER/FORMAT docs
8566  563156 Document printing and scanning gunichar values
8567
8568 * Updated translations:
8569  Hebrew (he)
8570  Italian (it)
8571  
8572
8573 Overview of Changes from GLib 2.19.0 to GLib 2.19.1
8574 ===================================================
8575
8576 * GIO: 
8577   - g_icon_to_string, g_icon_new_for_string: GIcon serialization support
8578   - G_FILE_ATTRIBUTE_PREVIEW_ICON: new file attribute for preview images
8579   - g_app_info_get_commandline: new function to get the full commandline
8580   - g_mount_shadow, g_mount_unshadow, g_mount_is_shadowed: New functions 
8581     to 'shadow' mounts (i.e. hide them from the UI when they already
8582     have a different representation, like a bookmark) 
8583
8584 * Bugs fixed:
8585  556186 gpoll.h breaks gmain.h inclusion
8586  557087 mem leak in g_content_types_get_registered
8587  556921 gpoll.h breaks hal compilation
8588  557210 g_compute_checksum_for_* asserts with less than 2 bytes
8589  558381 Add support for compile time assertions
8590  558185 'parent' variable in g_local_file_get_child_for_display_name()
8591         hits g_object_unref(NULL) assertion
8592  558513 g_warn_if_fail FIXME in gtestutils
8593  558672 NULL key lookup using g_hash_table_lookup_extended() 
8594  555740 gicon serialization
8595  557182 preview functionality
8596  528320 Incorrect icons displayed for files with custom mimetype icons
8597  556910 Memory leak: sub
8598  557592 Missing include in gwinhttpfile.c
8599  556415 Crash on Windows 2000 in g_winhttp_vfs_init()
8600  555935 Clarify the mechanism of overwriting properties
8601  552776 ac_cv_func_posix_getgrgid_r not mentioned
8602  559448 GObject Reference Manual (typo)
8603  561212 GFileReadMoreCallback API doc refers to non-existant function
8604  560569 gkeyfile doesn't use the set list_separator in some cases
8605  560568 gkeyfile docs buglet
8606  559413 g_option_group_set_error_hook docs buglet
8607  562378 callback return value not respected for callback option
8608         with no arg
8609  559110 Do not include libintl.h after glibintl.h
8610  557603 carbon check output misplaced
8611  562544 g_key_file_get_string and g_key_file_get_value
8612         documentation does not explain the difference
8613  547264 Missing "no flags" flag
8614  562638 GDebugKey key member should be const
8615  562639 g_parse_debug_flags() parsing "help"
8616  562549 g_byte_array_free should tell how free data
8617  559452 GObject Reference Manual (typo)
8618  559462 GObject Reference Manual (typo)
8619  559517 GObject Reference Manual (typo)
8620  562538 GObject interface tutorial shouldn't finalise with
8621         "Please forget everything"
8622  561352 Leak of icon description
8623  561375 Leaks mountpoint description
8624  561807 inotify_sub.c: dup_dirname() fails to remove trailing '/'
8625  562393 g_buffered_input_stream_read_byte broken if data available
8626  541715 win32 : patch for warnings and signature problems in recent code
8627  547481 g_data_input_stream_read_line behaves not as stated in the docs
8628  548163 Nautilus displays wrong error message for too long file names
8629  559633 gtk_image_new_from_gicon does not always work for .desktop files
8630  555486 – No way to recover command line from GAppInfo
8631
8632 * Translation updates:
8633  Spanish (es)
8634  Ukrainian (uk)
8635
8636
8637 Overview of Changes from GLib 2.18.1 to GLib 2.19.0
8638 ===================================================
8639
8640 * Rewrite GHashTable to use open addressing with quadratic probing instead 
8641   of chaining. This has the potential to reduce memory fragmentation 
8642   significantly, while being slightly faster due to better locality and 
8643   no need to call alloc/free functions for nodes. Benchmarks suggest it 
8644   also uses less memory overall.
8645
8646 * Make g_poll available as public api
8647
8648 * New macros g_assert_error and g_assert_no_error to assert 
8649   that a GError is set or unset
8650
8651 * g_cancellable_make_pollfd: New method to make a GPollFD for a cancellable
8652
8653 * g_app_info_can_delete, g_app_info_delete, g_app_info_reset_type_associations:
8654   New functions to clean up app infos and content types
8655
8656 * When launching applications, always pass fuse file:// uris when possible,
8657   and let gio convert such uris back to gio uris.
8658
8659 * Bugs fixed:
8660  505361 gunixinputstream.c assumes poll() available
8661  509446 portable blocking gio cancellation
8662  553820 gpoll.c: undeclared identifier
8663  553724 python interpretter path not patched in correctly
8664  553857 gbacktrace.h requires signal.h
8665  553447 g_assert_no_error()
8666  554092 glib doesn't return G_FILE_ERROR_NOENT et al on OS X
8667  528670 Always pass file:/// uri's in GAppLaunchContext
8668  555224 Improve g_format_size_for_display doc
8669  555309 giochannel breaks on error
8670  554790 g_convert() misbehaves with winiconv versions
8671  555314 mem leak in gmarkup
8672  555313 GFileAttribute boxed type get_type function should...
8673  552861 glib-2.0.m4 calls system(3) without storing its result
8674  554557 Patch to fix gcc warnings about missing format specifiers
8675  552107 Small libtool fixes
8676  551355 Make glib build with libtool 2.2
8677  555311 format not a string literal and no format arguments
8678  556101 static mutex yields warnings with g++
8679  556186 gpoll.h breaks gmain.h inclusion
8680  526456 Open addressing in GHashTable
8681  553426 cancellable clarifications
8682  545350 GAppInfo deletion
8683  545351 Reset associations for content type
8684  552168 volume's mount not mounted after g_volume_mount_finish
8685  554970 segfault when update-desktop-database is not available...
8686  554745 GFileAttributeInfoList should be boxed
8687  555121 Improved build-time handling of gio module-dir
8688  555711 Wrong fallback order of mimetype icons
8689  555331 Deprecate adoption of mounts
8690  556335 make check fails in abicheck.sh
8691  556334 Warning when building without selinux support
8692  556422 g_file_enumerator_next_file: unclear...
8693
8694 * Updated translations:
8695  Arabic (ar)
8696  Danish (da)
8697  Polish (pl)
8698  Brazilian Portugese (pt_BR)
8699  Romanian (ro)
8700  Russian (ru)
8701
8702
8703 Overview of Changes from GLib 2.18.0 to GLib 2.18.1
8704 ===================================================
8705
8706 * Bugs fixed:
8707  550433 g_test_init doesn't recognize --help
8708  523463 Core dump in gmain.c:2482:IA__g_main_context_check
8709  551228 G_STRFUNC on recent Sun compiler should be expanded...
8710  551410 gtestutils.c: using printf without prototype
8711  551731 g_date_set_time[_t] docs should mention what timezone
8712  548321 <string.h> is not included in gi18n-lib.h
8713  551149 xdgmime mem leak
8714  550647 synchronous pipe I/O when reading mount reply
8715  551887 Docs for g_desktop_app_info_new_from_filename aren't...
8716  551681 g_content_type_guess() too naive with filenames
8717  552352 g_app_info_launch doesn't work if "Path" key...
8718  551408 gmodule.def generated to builddir...
8719  552359 g_file_info_get_icon should return GThemedIcon, and...
8720
8721 * Updated translations:
8722  Arabic (ar)
8723  Bengali India (bn_IN)
8724  British English (en_GB)
8725  Hindi (hi)
8726  Croatian (hr)
8727  Korean (ko)
8728  Oriya (or)
8729  Turkish (tr)
8730  Telugu (te)
8731
8732
8733 Overview of Changes from GLib 2.17.7 to GLib 2.18.0
8734 ===================================================
8735
8736 * Win32:
8737   - rework the g_poll() implementation to match poll() semantics more closely
8738
8739 * Bugs fixed:
8740  324234 Using g_io_add_watch_full() to wait for connect() to return...
8741  548278 Async GETs connections are always terminated unexpectedly...
8742  500246 Bug fixes for giowin32
8743  523939 Example program for GValue
8744  550096 GBookmarkFile parser is not forward compatible
8745  550040 Move GString, rand and printf tests to the unit test framework
8746  550104 trivial documentation fix for g_get_home_dir
8747  548988 g_file_replace fails on Windows when the target file exists
8748  550059 Wrong docs for g_emblemed_icon_add_emblem
8749  548800 Missing a g_object_get_type function
8750  550056 Missing documentation for g_emblemed_icon_get_emblems
8751
8752 * Updated translations:
8753  Bulgarian (bg)
8754  Czech (cs)
8755  German (de)
8756  Estonian (et)
8757  Basque (eu)
8758  French (fr)
8759  Hebrew (he)
8760  Hungarian (hu)
8761  Italian (it)
8762  Japanese (ja)
8763  Lithuanian (lt)
8764  Maithili (mai)
8765  Dutch (nl)
8766  Swedish (sv)
8767  Thai (th)
8768  Ukrainian (uk)
8769  Vietnamese (vi)
8770
8771
8772 Overview of Changes from GLib 2.17.6 to GLib 2.17.7
8773 ===================================================
8774
8775 * More fixes for 64-bit Windows
8776
8777 * GIO
8778  - Add a vfs implementation for HTTP and HTTPS URIs on Windows
8779
8780 * Bugs fixed:
8781  546329 API docs for g_utf8_normalize() are incorrect
8782  546876 Modify GMarkup parser to accept &#x1; .. &#x1f;
8783  547200 g_utf8_find_next_char() issues
8784  547637 unconditional #include of sys/statfs.h in configure
8785  547337 G_DISABLE_DEPRECATED breaks tests build
8786  547832 gtk+-2.12.11 fails to build - AC_PROG_MMAP too strict
8787  502498 Test framework assertion failures should follow gcc
8788  546371 Improve docs re g_file_monitor
8789  546483 GThemedIcon:use-default-fallbacks is not readable without...
8790  546132 GFileIcon is bindings-unfriendly
8791  542156 zfs mount in home directory shown on nautilus desktop 
8792  535124 umask 002 not being applied for new directories...
8793  547080 g_file_copy leaks expected errors
8794  546582 Callbacks from GFileMonitor present a GFile...
8795  547262 Missing link in the docs
8796
8797 * Updated translations:
8798  Arabic (ar)
8799  Catalan (ca)
8800  Spanish (es)
8801  Basque (eu)
8802  Finnish (fi)
8803  Galician (gl)
8804  Hebrew (he)
8805  Marathi (mr)
8806  Norwegian bokmål (nb)
8807  Portugese (pt)
8808  Brazilian Portugese (pt_BR)
8809  Swedish (sv)
8810  Thai (th)
8811
8812
8813 Overview of Changes from GLib 2.17.4 to GLib 2.17.6
8814 ===================================================
8815
8816 * Fix problems on 64-bit Windows
8817
8818 * g_markup_context_get_user_data: New function to access
8819   the user_data outside of callbacks
8820
8821 * GIO
8822  - g_mount_guess_content_type_sync: synchronous version of
8823    g_mount_guess_content_type
8824  - GEmblem: A GIcon implementation that adds emblem-related
8825    metadata to icons
8826  - GEmblemedIcon: A GIcon implementation that can add emblems
8827    to icons
8828
8829 * Bugs fixed:
8830  544088 option_test_LDADD is left in tests/Makefile.am
8831  544465 gmarkup makes it hard to use pre-rolled parsers
8832  545485 Implicit declaration of utime()
8833  545798 "Since: 2.18" mark is missing in g_set_error_literal...
8834  544140 fam-helper 64-bit issue
8835  529694 SELinux context setting support
8836  545157 wrong/no list of "open with" applications for .cc...
8837  545203 gfile.c: argument is different type
8838  545457 gdmsetup crashed with SIGSEGV in g_unix_mount_guess...
8839  544177 Fix trivial cut and paste error in documentation
8840  545395 Language tweak for g_value_set_string* docs
8841  541036 Gnumeric crashes when trying to open Desktop...
8842  546079 leak in xdgmime
8843  545395 Language tweak for g_value_set_string* docs
8844  546017 Don't copy attributes when copying a symlink
8845
8846 * Updated translations:
8847  Arabic (ar)
8848  Estonian (et)
8849  Galician (gl)
8850  Italian (it)
8851  Japanese (ja)
8852  Korean (ko)
8853  Norwegian bokmål (nb)
8854  Pashto (ps)
8855  Portugese (pt)
8856
8857
8858 Overview of Changes from GLib 2.17.3 to GLib 2.17.4
8859 ===================================================
8860
8861 * GIO:
8862  - New API to handle content types: g_mount_guess_content_type,
8863    g_content_type_guess_for_tree.
8864  - Export the eject-button signal on the volume monitor class
8865  - New API to enable out-of-process volume monitors: 
8866    g_volume_get_activation_root
8867
8868 * GObject:
8869  - New API to handle signals without slots in the class structure:
8870    g_signal_new_class_handler, g_signal_override_class_handler   
8871
8872 * Internationalization:
8873  - Add an NC_ macro that is a no-op equivalent of C_
8874
8875 * GMarkup:
8876  - Add two new functions g_markup_parse_context_push,
8877    g_markup_parse_context_pop to support "subparsers"
8878
8879 * Bugs fixed:
8880  541208 Functions to easily install and use signals without...
8881  541507 Ambiguous description of assigned characters in the...
8882  543040 async reading on dummy file will crash on GIO_USE_VFS=local
8883  543560 enable gio-FEN back-end warnings on Solaris will crash...
8884  528317 GRegex does not allow recursion limit
8885  337518 GMarkup: Subparser support
8886  541794 drive-eject-button signal
8887  541793 activation root for volumes
8888  467707 test_iconv_state() in tests/convert-test.c fails on AIX 5.3
8889  428048 2 of 51 tests fail on Solaris
8890  542332 small fix for error message in GMarkup
8891  482413 get_contents_stdio -- overflow and memory corruption
8892  406120 g_ascii_strtod
8893  334234 "printf" format error
8894  536996 Missing noop i18n macro equivalent to C_
8895  540616 mem leak in filechooser button
8896  539229 gobject-query calls itself query
8897  521589 [RFC] gobject documentation should mention Vala
8898  543168 Description of G_SLICE=debug-blocks discourages its use
8899  543220 Case collision on gio-extension-points.html
8900  530759 update the gobject tutorial to the XXI century
8901  535223 gbookmark file inefficiency ...
8902  543504 crash in Epiphany Web Browser: Opening local file
8903
8904 * Updated translation:
8905  German (de)
8906  Estonian (et)
8907  Pashto (ps)
8908  Albanian (sq)
8909  Thai (th)
8910  Traditional Chinese (zh_HK)
8911  Traditional Chinese (zh_TW)
8912
8913
8914 Overview of Changes from GLib 2.17.1 to GLib 2.17.3
8915 ===================================================
8916
8917 * PCRE
8918  - fix for CVE-2008-2371 
8919
8920 * Bugs fixed:
8921  538119 glib's mainloop leaks a pipe to sub-processes
8922  537635 Corrections and improvements to g_time_val_{to,from}_iso8601
8923  539067 The document g_io_channel_win32_new_fd() says...
8924  535949 annotate g_strip_context and g_dpgettext with G_GNUC_FORMAT
8925  539123 annotate g_d[n]gettext with G_GNUC_FORMAT
8926  539074 Cannot get exit status with g_spawn_command_line_sync
8927  316221 G_LOCK warns about breaking strict-aliasing rules
8928  539770 migrate gstrfunc unit tests to gtest
8929  539626 Update docstrings for g_object_freeze_notify and g_object_thaw_notify
8930  538044 unconditional use of LC_MESSAGES
8931  540545 Monotonic time and timer offset
8932  535947 want g_set_error_literal
8933  539999 glibconfig.h: add GLIB_USING_SYSTEM_PRINTF 
8934  536252 GFileEnumerator should allow access to the containing GFile
8935  538362 Get Win32 icons back in the file chooser
8936  540802 g_list_prepend doesn't concat lists
8937  540423 unrecoverable error after g_seekable_truncate
8938  538836 make check failure on PPC and ALPHA: pltcheck.sh on g_atomic_pointer_get
8939  539090 g_content_type_from_mime_type() should unalias
8940  540331 g_file_append_to () documentation: can return NULL
8941  534639 add g_desktop_app_info_new_from_keyfile
8942  536733 gio build failure on Irix
8943  536160 Add g_file_monitor()
8944  538127 FileChooser broken on win32
8945  531476 /live-g-file/test_traverse_structure test fails on Mac HFS+
8946  538564 gio should have gio-types.h
8947  540047 glib-genmarshal.c: '#include <io.h>' is too before
8948
8949 Updated translations:
8950  Korean (ko)
8951  Occitan (oc)
8952
8953
8954 Overview of Changes from GLib 2.17.0 to GLib 2.17.1
8955 ===================================================
8956
8957 * New function: g_utime(), a gstdio wrapper for utime()
8958
8959 * New functions: g_dgettext() and g_dngettext(), wrappers
8960   for corresponding gettext functions with added functionaliy
8961
8962 * Support the latest version of the shared-mime spec, including
8963   icons for mime types 
8964
8965 * New function: g_themed_icon_prepend_name()
8966
8967 * Bugs fixed: 
8968  535418 Please document which glib version defines goffset
8969  528715 Misprint in the description of the interface g_type_class_add_private
8970  528714 Misprint in the description of the interface g_param_spec_flags
8971  537260 Doc bug in G_TYPE_INSTANCE_GET_CLASS()
8972  530527 Misprint in the description of the interface 
8973         g_cclosure_marshal_VOID__FLAGS
8974  530526 Misprint in the description of the fields 'class_init' and 
8975         'class_finalize' of the structure GTypeInfo
8976  528719 Improvement to the documentation of the "g_object_connect" interface
8977  528172 gtk_signal_handlers_unblock_* functions return value
8978         amount of matched signals, not amount of actually unblocked
8979  528717 Misprint in the description of the parameter 'type_id' for 
8980         the interface g_type_register_fundamental
8981  528716 Misprint in the description of the parameter 'iface_data' for 
8982         the callback types GInterfaceInitFunc and GInterfaceFinalizeFunc 
8983  537555 GObject instantiation not thread safe
8984  537546 'desktop' shortcut in file chooser looks like a generic folder
8985  537392 Additional colon in xattr name
8986  536641 Filesystem querying in gio does not list AFS and autofs file systems
8987  528600 g_dummy_file_get_parent("scheme://example.com/")
8988  503071 Application direction changes to right to left even if theres no 
8989         translation
8990  502511 g_assert_cmphex prints invalid message
8991  338162 Use po/LINGUAS
8992  314453 Nautilus crashes in Solaris when browsing the attached file
8993  529321 make check fails in glib/pcre
8994  455215 g_get_user_special_dir: no reference about G_USER_DIRECTORY_DOWNLOAD 
8995         fallback to $HOME/Desktop if xdg-user-dirs is not in use
8996  498732 g_key_file_to_data cannot fail
8997  511367 add g_file_make_directory_with_parents
8998  531900 Use __builtin_offsetof for G_STRUCT_OFFSET if building with 
8999         gcc 4.0 or newer
9000  536158 also bump GHashTable version when a node is removed via
9001         g_hash_table_iter_remove()/g_hash_table_iter_steal()
9002  531403 g_utf8_collate broken on Mac
9003  535628 test/patterntest.c still includes gpattern.h directly
9004  535625 alias.h:2648: error: 'utime' undeclared here (not in a function)
9005
9006 * Translation updates:
9007  Arabic (ar)
9008  German (de)
9009  Italian (it)
9010  Norwegian bokmål (nb)
9011  Thai (th)
9012
9013
9014 Overview of Changes from GLib 2.16.x to GLib 2.17.0
9015 ===================================================
9016
9017 * Update to Unicode 5.1
9018
9019 * Update included libcharset to the one shipped with libiconv 0.12
9020
9021 * Update included PCRE to 7.7
9022
9023 * Enforce that only toplevel headers are directly included.
9024   This is turned on by default for GObject and GIO. To turn
9025   it on for GLib, define G_DISABLE_SINGLE_INCLUDES.
9026
9027 * Fix library version of GIO.  GLib 2.16 shipped with libgio-2.0.so.0.0.0
9028
9029 * On Solaris, use FEN for file monitoring in GIO
9030
9031 * Use the GIO_EXTRA_MODULES environment variable to find
9032   additional GIO modules 
9033
9034 * G_GNUC_ALLOC_SIZE: New macro that wraps the gcc alloc_size
9035   function attribute
9036
9037 * g_checksum_reset: New function to reset the state of a GChecksum 
9038
9039 * g_unix_mount_monitor_set_rate_limit: New function to limit the 
9040   rate at which events are reported
9041
9042 * g_file_query_file_type: New utility function to query the type of
9043   a file
9044
9045 * g_memory_output_stream_get_data_size: New function to obtain the
9046   size of the written data.
9047
9048 * Bugs fixed:
9049  522292 Gives warnings in glib/gutils.h with GCC in C99 mode
9050  523298 win_iconv can't convert from UTF-8 to GB18030 (or vice versa)
9051  518160 replace two g_strdup_printf calls in GBookmarkFile
9052  523877 gbookmarkfile: avoid using g_string_append_printf() and
9053         other optimizations 
9054  525192 100% CPU if run main loop with no IO sources
9055  315437 extern inline -> static inline
9056  524314 g_convert() on Win32 implicitly converts full width
9057         alphanumerics into half width
9058  525732 Error in documentation for g_list_first
9059  525674 A typo in gmarkup.c
9060  448943 g_timeout_add_seconds() problems
9061  525972 UCS-4 not in the new win_iconv implementation
9062  526619 make test-report crash
9063  491554 Update to Unicode 5.1.0
9064  519137 g_slice_dup macro needs cast for 64-bit platform
9065  528752 Win32 build and SSL not working
9066  530457 G_USER_DIRECTORY_DOWNLOAD folder improperly mapped
9067  528667 Typos in testing module documentation
9068  459905 Bug in wcwidth data
9069  534085 g_unichar_iswide_cjk() has a totally wrong table
9070  501651 Update glib/libcharset
9071  519026 G_STMT_START/G_STMT_END test a non-existent preprocessor symbol
9072  534319 GLib's .pc files could use Libs.private
9073  534137 Typo in g_spawn_async_with_pipes doc
9074  517419 gio win32 directory monitor
9075  526796 Wrong order of arguments in g_file_copy's fallback
9076  530196 _g_local_file_has_trash_dir() doesn't handle st_dev == 0
9077  532965 Should not return filesystem::free for certain file systems
9078  525553 fix typo and nitpicking in GArray documentation
9079  526572 Missing * in declaration of parent_class in Object
9080         Destruction section of GObject Reference Manual
9081  528648 Extra >s in Object Construction section
9082  535021 g_param_spec_internal documentation should
9083         describe purpose of nick and blurb
9084  521513 Firefox crash when using file picker
9085  528433 gdesktopappinfo snafu ...
9086  533369 API g_file_info_get_attribute_string () unables to get "...
9087  521045 glib f_fstypename miscellany
9088  521672 compile error
9089  521946 control rate limit on GUnixMountMonitor
9090  522335 Fails to build: glib/gtester.c:276: error: 'ARG_MAX' unde...
9091  523015 Implement sliding window based upload operation
9092  523019 Use new GCC 4 feature
9093  523338 list nfs4 as a nfs mount type
9094  524350 Make glib build without NLS again
9095  524579 g_file_copy reports wrong total on progress callback for ...
9096  524742 A typo in gtestutils.c.
9097  524950 Minor documentation typos.
9098  525866 the user directory should not be considered as a mount to...
9099  526320 should not list mounts that the user doesn't have permiss...
9100  527132 nautilus crash when making ftp connection
9101  532852 CRITICAL **: totem_pl_parser_parse_with_base: assertion `...
9102  534759 Build failure in gio
9103  534764 Typo in error produced by g_file_make_directory
9104  521851 Redudant tests in gunixmounts.c
9105  524344 glib/gthread.h still use G_GNUC_PRETTY_FUNCTION
9106  525060 glib fails to build with -DG_DISABLE_ASSERT in CPPFLAGS o...
9107  534177 Invalid description of the interface g_cclosure_marshal_S...
9108  520715 Add GFile method g_file_query_file_type
9109  523039 nautilus can't access to trash/computer/network if gvfs i...
9110  
9111 * Updated translations:
9112  Arabic (ar)
9113  Bulgarian (bg)
9114  Catalan (ca) 
9115  Czech (cs)
9116  Greek (el)
9117  Candian English (en_CA)
9118  British English (en_GB)
9119  Spanish (es)
9120  Estonian (et)
9121  Basque (eu)
9122  Galician (gl)
9123  Hebrew (he)
9124  Hungarian (hu)
9125  Japanese (ja)
9126  Lithuanian (lt)
9127  Norwegian bokmål (nb)
9128  Dutch (nl)
9129  Occitan (oc)
9130  Portugese (pt)
9131  Russian (ru)
9132  Slovak (sk)
9133  Albanian (sq)
9134  Swedish (sv)
9135  Turkish (tr)
9136  Vietnamese (vi)
9137
9138
9139 Overview of Changes from GLib 2.16.0 to GLib 2.16.1
9140 ===================================================
9141
9142 * Fix a crash in g_themed_icon_new
9143
9144 * Update the included PCRE to 7.6
9145
9146
9147 Overview of Changes from GLib 2.15.6 to GLib 2.16.0
9148 ===================================================
9149
9150 * Fix the definition of G_INLINE_FUNC to work with gcc 4.3.0
9151
9152 * GIO:
9153  - Add missing GMountMountFlags argument to g_unix_volume_mount
9154  - Fix the adopt_orphan_mount vfunc to take a volume monitor 
9155    reference
9156  - Add properties to GThemedIcon for bindings sake
9157
9158 * Bugs fixed:
9159  520484 gvfsd-trash crashed with SIGSEGV in g_path_is_absolute()
9160  510855 g_checksum_update(): Take -1 for length.
9161  517676 g_themed_icon_new*() do more than call g_object_new().
9162  518816 should handle rmdir returning EEXIST correctly
9163  519352 g_[s]list_delete_link() docs
9164  519489 Fixes for sparse warnings in gio
9165  520169 add monitor argument to vfunc for GVolumeMonitor
9166  520700 Add type check in g_file_query_exists
9167  521145 FILE_READ_ONLY_VOLUME not present on Mingw32
9168  518720 No MIME type for empty files
9169  521013 in documentation, goffset doesn't say "Since 2.x"
9170  521028 Missleading error messages from g_io_channel_set_encoding()
9171  517484 GMainLoop could set the thread "Alertable" for APCs to be... 
9172
9173 * Updated translations:
9174  Assamese (as)
9175  Bengali India (bn_IN)
9176  Czech (cs)
9177  German (de)
9178  Spanish (es)
9179  Estonian (et)
9180  Finnish (fi)
9181  French (fr)
9182  Gujarati (gu)
9183  Italian (it)
9184  Lithuanian (lt)
9185  Malayalam (ml)
9186  Marathi (mr)
9187  Norwegian bokmål (nb)
9188  Romanian (ro)
9189  Russian (ru)
9190  Slovak (sk)
9191  Ukrainian (uk)
9192
9193  
9194 Overview of Changes from GLib 2.15.5 to GLib 2.15.6
9195 ===================================================
9196
9197 * GIO:
9198  - New file attributes: trash::item-count, filesystem::use-preview
9199  - Rename g_file_contains_file to g_file_has_prefix
9200  - g_file_query_filesystem_info grew async variants
9201  - g_themed_icon_append_name: new convenience function
9202  - g_content_type_get_icon is implemented now
9203  - Only show mounts in /media and ~
9204  - g_file_contains_file has been renamed to g_file_has_prefix
9205
9206 * Win32:
9207  - g_win32_get_package_installation_directory_of_module: new function
9208    which supersedes g_win32_get_package_installation_directory
9209  - Use alertable wait functions so that I/O completion routines or 
9210    user-mode Asynchronous Procedure Calls can be run
9211  - Fix race conditions in g_spawn implementation on win32
9212
9213 * Other:
9214  - g_uri_get_scheme has been renamed go g_uri_parse_scheme
9215
9216 * Updated translations:
9217  Arabic (ar)
9218  Belarusian Latin (be@latin)
9219  Catalan (ca) 
9220  British English (en_GB)
9221  Finnish (fi)
9222  Galician (gl)
9223  Hebrew (he)
9224  Italian (it)
9225  Kannada (kn)
9226  Norwegian bokmål (nb)
9227  Dutch (nl)
9228  Brazilian Portugese (pt_BR)
9229  Vietnamese (vi)
9230
9231
9232 Overview of Changes from GLib 2.15.4 to GLib 2.15.5
9233 ===================================================
9234
9235 * Update the included PCRE to 7.6
9236
9237 * GIO:
9238  - g_volume_should_automount: new function to determine if a volume
9239    should be mounted automatically
9240  - g_file_query_default_handler: new convenience function to get
9241    the default handler for a file
9242  - g_app_info_launch_default_for_uri new convenience function to
9243    launch the default handler for a URI
9244  - Use mimeapps.list and defaults.list as discussed on xdg list
9245    recently
9246  - g_app_info_get_default_for_uri_scheme has a real implementation
9247    now (gvfs provides a GConf-based implementation)
9248  - There is the beginning of a test suite
9249  - standard::description:  new file attribute
9250  - GMountMountFlags flags argument added to mount calls
9251
9252 * GObject:
9253  - class initialization is now threadsafe
9254
9255 * Updated translations:
9256   Arabic (ar)
9257   Catalan (ca)
9258   Spanish (es)
9259   Basque (eu)
9260   Italian (it)
9261   Japanese (ja)
9262   Kannada (kn)
9263   Korean (ko)
9264   Macedonian (mk)
9265   Occitan (oc)
9266   Portugese (pt)
9267   Brazilian Portugese (pt_BR)
9268   Swedish (sv)
9269   Thai (th)
9270
9271
9272 Overview of Changes from GLib 2.15.3 to GLib 2.15.4
9273 ===================================================
9274
9275 * G_GNUC_PRETTY_FUNCTION has been deprecated
9276
9277 * GIO:
9278  - g_file_copy has an async variant now
9279  - Drives and volumes now have API to get identifiers
9280    like Hal UDIs or UUIDs.
9281  - There is now a registration API to let modules register
9282    extensions they provide, such as volume monitor implementations
9283
9284 * Bugs fixed:
9285   511807 g_time_val_to_iso8601() uses MT-unsafe gmtime() function
9286   316260 [patch] Doc patches for gnode (2.8.1)
9287   385132 solaris gettext support fix
9288   484261 ./configure check for system PCRE unicode support fails w...
9289   510292 GOption main help not shown
9290   511580 Implement g_file_copy_async
9291   511654 Compile errors due to C99 constructs
9292   487909 g_utf8_strreverse and combining marks
9293   512381 unused variable 'is_main_group' 
9294
9295 * Updated translations:
9296   Arabic (ar)
9297   Belarusian (be)
9298   Czech (cz)
9299   Spanish (es)
9300   French (fr)
9301   Galician (gl)
9302   Portugese (pt)
9303   Russian (ru)
9304   Swedish (sv)
9305   Thai (th)
9306
9307
9308 Overview of Changes from GLib 2.15.2 to GLib 2.15.3
9309 ===================================================
9310
9311 * GChecksum:
9312  - g_checksum_update can accept nul-terminated strings
9313  - The MD5 implementation works correctly on buffers 
9314    that are longer than 64 bytes
9315
9316 * GIO:
9317  - Don't include a copy of the inotify headers, rely on system headers
9318  - g_file_find_enclosing_mount has an async variant now
9319  - Reduntant seek API on file streams has been removed
9320
9321 * Bugs fixed:
9322   508602 gmemory{in|out}putstream.c: unknown pointer size
9323   508771 There is no g_file_test/exists() for GFile
9324   508773 g_uri_escape_string() documentation unclear.
9325   509465 AM_PATH_GLIB_2_0 doesn't support gio
9326   509626 async functions: Document allowed NULL callback?
9327   509990 GSeekable documentation unclear
9328   510448 No inotify support on ARM or SH5
9329   510855 g_checksum_update(): Take -1 for length. 
9330
9331 * Updated translations:
9332   Basque (eu)
9333   Marathi (mr)
9334   Swedish (sv)
9335   Ukrainian (uk)
9336
9337
9338 Overview of Changes from GLib 2.15.1 to GLib 2.15.2
9339 ===================================================
9340
9341 * GIO:
9342  - Mount operation API change: unhandled methods get reported via 
9343    the reply, rather than by the signal emission return value
9344  - File monitor API change: Add a GError argument to g_file_monitor_file
9345  - g_unix_mount_guess_should_display(): new function
9346
9347 * Bugs fixed:
9348   508224 [PATCH] FAM backend crashes due to double free
9349   508074 GAsyncResult documentation suggests g_freeing it.
9350   508108 GFile documentation slightly unclear.
9351   508309 rpc_pipefs mount points should be hidden
9352   508378 GFileInfo documentation implies that it changes attribute...
9353   508719 g_file_get_relative_path fails if parent is root
9354   508773 g_uri_escape_string() documentation unclear.
9355
9356 * Updated translations:
9357   Arabic (ar)
9358   Spanish (es)
9359   Hebrew (he)
9360   Italian (it)
9361   Korean (ko)
9362   Turkish (tr)
9363
9364
9365 Overview of Changes from GLib 2.15.0 to GLib 2.15.1
9366 ===================================================
9367
9368  * Portability fixes:
9369  - Assertion functions are marked as noreturn again
9370  - Handling of inline functions has been fixed to work with gcc 4.3
9371  - C99 comments have been removed from headers
9372  - The nonportable sed -i option is no longer used
9373
9374  * GIO:
9375   - Clarified the semantics of g_app_info_get_all()
9376   - API for memory input and output streams has been changed a bit
9377   - GDirectoryMonitor has been removed; GFileMonitor can monitor
9378     files and directories now
9379
9380  * Bugs fixed:
9381    504829 Invalid environment passed to g_spawn_async in g_desktop_...
9382    505258 crash in Users and Groups: Adding a user
9383    505815 g_content_types_get_registered should not g_free keys
9384    491218 g_timer_new() doesn't initialize timer->end
9385    315437 extern inline -> static inline
9386    476856 Inconsistency between standard and implementation of the ...
9387    480122 g_module_open fails to open modules with ".la" extension
9388    495589 gspawn.c failing to set FD_CLOEXEC
9389    500273 doesn't build with --disable-visibility
9390    504142 Do not show empty groups in --help output
9391    504879 giofam incorrectly linked
9392    505042 add file attribute for actually used file size in bytes
9393    505058 xattr namespace docs
9394    505674 Misprint in the definition of the macro G_CCLOSURE_SWAP_DATA
9395    505730 Fails to build on OSX 10.4: _NSGetEnviron not declared
9396    505887 older darwin lacks lchown
9397    506374 gmemoryinputstream api
9398    506461 Conversion of g_assert_not_reached() and friends into fun...
9399    503051 Small bug in glib interface
9400    506395 Updates to GIO documentation
9401    507628 Missing .pc entry for gio linking against glib
9402    505195 [patch] typo in g_try_new0 docs 
9403    507822 g{file,directory}monitor changes signal problem
9404    506377 gmemoryoutputstream write implementation
9405    507835 bug in gunixinputstream 
9406
9407  * Updated translations:
9408    Arabic (ar)
9409    Belarusian Latin (be@latin)
9410    Spanish (es)
9411    Basque (eu)
9412    Irish (ga)
9413    Hebrew (he)
9414    Occitan (oc)
9415    Vietnamese (vi)
9416
9417
9418 Overview of Changes from GLib 2.14.x to GLib 2.15.0
9419 ===================================================
9420
9421 Major new features:
9422
9423  * GIO: a VFS API, designed to replace GnomeVFS. The GIO implementation 
9424    in GLib has support for local filesystems. The new, separate gvfs 
9425    module contains various backend implementations (cifs, ftp, sftp,
9426    http, ...)
9427
9428  * GChecksum: provides various hash algorithms, such as MD5, SHA-1
9429    and SHA-256
9430  
9431  * GTest: a test framework 
9432  
9433 Smaller additions:
9434
9435  * GHash:
9436  - GHash has iterators, as an alternative to g_hash_table_foreach
9437
9438  * GMarkup: 
9439  - g_markup_parse_context_get_element_stack: New function to
9440    get the stack of open elements
9441  - G_MARKUP_PREFIX_ERROR_POSITION: New flag to improve error
9442    reporting
9443  - g_markup_collect_attributes: Convenience function for handling
9444    attributes
9445
9446 * GKeyFile: 
9447  - Functions that take a GError now return a boolean to indicate 
9448    success, instead of void
9449  - Various performance improvements
9450
9451 * GAsyncQueue:
9452  - g_async_queue_new_full: new function that allows to specify
9453    a free function for leftover elements
9454  
9455 * GError:
9456  - g_prefix_error and g_propagate_prefixed_error: New functions
9457    to ease error propagation
9458
9459 * Internationalization:
9460  - C_: A new 2-argument variant of the Q_() macro 
9461  - Use native character set conversion API on Windows
9462
9463 * GLib builds with automake 1.10
9464
9465 * Bugs fixed:
9466  455725 specific combination of g_utf8_strlen and g_pattern_match...
9467  467537 g_convert_with_iconv() not resetting iconv() state correc...
9468  497033 Commandline option parser should warn about missing optio...
9469  504527 gchecksum: Conditional jump or move depends on uninitiali...
9470  445362 Non-numeric local labels in gatomic.c are causing linker ...
9471  482313 gregex: no way to tell why compilation failed
9472  317775 main loops continues to run after g_main_loop_quit() has ...
9473  418778 Insufficient pkg-config version requirement
9474  436293 g_option_context_new() doc should mention that the string...
9475  466557 glib-mkenums shifts ARGV[0] to undefined
9476  468882 GKeyFile doesn't accept "True" as a true boolean value
9477  469551 application --help messages are garbaged on none UTF-8 lo...
9478  479724 Memory leak upon calling "g_main_loop_run" in the seconda...
9479  490061 outptrs uninitialized after g_parse_long_long
9480  490637 gobject documentation patch
9481  495294 glib-genmarshal prints warnings but returns 0
9482  496046 option to prefix location of errors for GMarkup
9483  498113 tests/regex-test fails on 64bit environment
9484  500506 Fails to build on OSX 10.4
9485  500638 gkeyfile speedup ...
9486  500875 Make check fails as there is no "test" target for "build"...
9487  502511 g_assert_cmphex prints invalid message
9488  502927 g_array_index triggers cast aligment warning
9489  503029 g_time_val_from_iso8601 parse non-ISO8601 dates
9490  503222 Need context to translate
9491  503420 gkeyfile leaks a hash table
9492  503470 Fix build when builddir != srcdir
9493  504227 Inverse variant for g_test_trap_assert_stdout, g_test_tra...
9494  71704  file include order
9495  491957 Misprint in the specification of the interface "g_main_co...
9496  491959 Misprint in description of the structure "GThreadPool"
9497  491965 Mistype in the specification of the function "g_hook_list...
9498  491966 Misprint in the specification of the interface "g_main_co...
9499  491968 The documentation does not mention the restriction for th...
9500  491970 The documentation for the interface "g_date_clamp" is inc...
9501  491974 The documentation of the interface "g_main_context_iterat...
9502  491975 The documentation for the interfaces "g_io_channel_read_u...
9503  491979 Misprint in the description of the interfaces g_key_file_...
9504  491982 Misprint in the description of the interface "g_key_file_...
9505  501107 EXTRA_DIST automake warnings
9506  501997 g_utf8_normalize() returns NULL on invalid string
9507  502590 C_/g_dpgettext efficiency
9508  464259 g_set_application_name() docs should say "Since 2.2"
9509  496518 gbase64.c API doc clarification
9510  498728 g_key_file_get_*_list should set length to 0 when returni...
9511  500361 Improve docs for g_array_free() and g_ptr_array_free()
9512  501853 g_checksum_get_digest docs
9513  503862 Allow NULL strings in g_parse_debug_string()
9514  142676 Q_
9515  367550 Add g_async_queue_new_full() with GDestroyNotify function
9516  375651 Minor enhancements to GKeyFile API
9517  443648 MD5 digest support
9518  449937 Upgrade auto* sources to be clean under automake1.9
9519  452887 gmarkup context "get element" function is useless when ca...
9520  491549 [PATCH] Eliminate libiconv dependency on Windows
9521  500507 GHashTableIter API 
9522
9523 * Translation updates
9524  Belarusian Latin (be@latin)
9525  Czech (cs)
9526  German (de)
9527  Spanish (es)
9528  Esperanto (et)
9529  French (fr)
9530  Korean (ko)
9531  Marathi (mr)
9532  Norwegian bokmål (nb)
9533  Brazilian Portugese (pt_BR)
9534  Slovenian (sl)
9535  Swedish (sv)
9536
9537
9538 Overview of Changes from GLib 2.14.2 to GLib 2.14.3
9539 ===================================================
9540
9541 * Update PCRE to 7.4
9542
9543 * Bugs fixed:
9544  487491 Fix some warnings from sparse
9545  488068 Small (one-time) memory leak in glib_gettext initialization
9546  493688 TYPE macro "_get_type ()" is documented wrong
9547
9548 * Updated translations:
9549  Arabic (ar)
9550  Belarusian Latin (be@latin)
9551  Estonian (et)
9552  Irish (ga)
9553  Slovenian (sl)
9554
9555  
9556 Overview of Changes from GLib 2.14.1 to GLib 2.14.2
9557 ===================================================
9558
9559 * Bugs fixed:
9560  476849 Invocation of the interface "g_hook_free" fails in certai...
9561  359165 marshallers can throw warnings with -Wunused
9562  477957 more discussion on g_value_set_object vs. g_value_take_ob...
9563  478459 G_DEFINE_DYNAMIC_TYPE_EXTENDED doesn't work with G_IMPLEM...
9564  483337 inline is disabled for MSVC when compiling C code
9565  478349 Broken link to gettext website
9566  469231 g_spawn optimization for setting all open fds to CLOEXEC 
9567
9568 * Updated translations:
9569 Arabic (ar)
9570 Galician (gl)
9571 Hebrew (he)
9572 Korean (ko)
9573
9574
9575 Overview of Changes from GLib 2.14.0 to GLib 2.14.1
9576 ===================================================
9577
9578 * Bugs fixed:
9579  476840 Invocation of the interface "g_utf8_strreverse" crashes f...
9580  444765 Fix FIXME in gregex.c when new pcre is out
9581  464145 g_markup_escape_text Produces Invalid XML
9582  465625 g_type_default_interface_ref() does not ensure working g_...
9583  466768 Clearify that comments can be put anywhere in a Key-file.
9584  474229 The GError documentation should give convention for the G...
9585  474899 G_BREAKPOINT() docs inaccurate
9586  475854 Overuse of -lpcre when using system pcre
9587  473879 Incorrect includes in gregex.c
9588  468694 Typoes in documentation
9589  469051 g_snprintf () talks about characters where it probably me...
9590  457601 Missing arch specific atomic implementation
9591  475923 Missing pcre flags when static-linking against glib
9592  475619 glibthread-2.0.la does not list -lpthread
9593
9594 * Updated translations:
9595  Bulgarian (bg)
9596  Catalan (ca)
9597  Danish (da)
9598  German (de)
9599  Canadian English (en_CA)
9600  British English (en_GB)
9601  Spanish (es)
9602  Estonian (et)
9603  Finnish (fi)
9604  French (fr)
9605  Gujarati (gu)
9606  Hungarian (hu)
9607  Italian (it)
9608  Georgian (ka)
9609  Kannada (kn)
9610  Lithuanian (lt)
9611  Makedonian (mk)
9612  Norwegian (nb)
9613  Dutch (nl)
9614  Polish (pl)
9615  Portugese (pt)
9616  Brazilian Portugese (pt_BR)
9617  Romanian (ro)
9618  Russian (ru)
9619  Albanian (sq)
9620  Serbian (sr, sr@Latn)
9621  Swedish (sv)
9622  Tamil (ta)
9623  Thai (th)
9624  Ukrainian (uk)
9625  Vietnamese (vi)
9626
9627
9628 Overview of Changes from GLib 2.13.7 to GLib 2.14.0
9629 ===================================================
9630
9631 * Last-minute API additions:
9632  - Make g_unichar_combining_class public
9633  - Add goffset type, add G_MAXSSIZE and G_MINSSIZE
9634
9635 * Update PCRE to 7.2
9636
9637 * Bugs fixed:
9638  453998 Make _g_unichar_combining_class() public
9639  462549 gregex.c: variable is declared at middle of block
9640  417068 g_file_test doc inconsistency
9641
9642 * Updated translations:
9643  Assamese (as)
9644  Basque (eu)
9645  Kannada (kn)
9646  Malayalam (ml)
9647  Dutch (nl)
9648  Polish (pl)
9649  Brazilian Portugese (pt_BR)
9650  Turkish (tr)
9651
9652
9653 Overview of Changes from GLib 2.13.6 to GLib 2.13.7
9654 ===================================================
9655
9656 * The memory corruption warning from the slice allocator that
9657   occurred when threads were initialized after the slice allocator
9658   has been removed, as the slice allocator now works fine
9659   in this scenario.
9660
9661 * New functions g_once_init_enter() and g_once_init_leave() make
9662   it easier to write threadsafe one-time initialization functions 
9663  
9664 * Bugs fixed:
9665  454473 Simple XML Subset Parser terminates on invalid XML
9666  445813 g_module_open error, add file name
9667  453796 errno gets clobbered by g_filename_display_name
9668  341988 don't use "-c" with msgfmt in Makefile.in.in
9669  447048 Please produce slightly more output during long tests
9670  454785 GModule documentation lists same block of code twice.
9671  454786 GModule documentation lists same paragraph twice.
9672  383155 small docs quirks in gobject/closure API documentation
9673  65041  _get_type() functions aren't thread safe
9674
9675 * Updated translations
9676  Assamese (as)
9677  Spanish (es)
9678  Gujarati (gu)
9679  Japanese (ja)
9680  Korean (ko)
9681  Macedonian (mk)
9682
9683
9684 Overview of Changes from GLib 2.13.5 to GLib 2.13.6
9685 ===================================================
9686
9687 * Reintroduce a GType typedef whose removal in 2.13.5
9688   caused trouble for C++ bindings
9689
9690 * Bugs fixed:
9691  450216 docs not explicit enough about g_free()
9692  451459 g_type_register_static_simple calls g_type_register_static
9693
9694 * Updated translations
9695  Norwegian bokmål (nb)
9696  Sinhala (si)
9697
9698
9699 Overview of Changes from GLib 2.13.4 to GLib 2.13.5
9700 ===================================================
9701
9702 * xdg-user-dirs support: 
9703  - the Desktop directory is guaranteed to be defined
9704  - user-dirs.dirs is no longer reloaded on changes
9705
9706 * Slice allocator: 
9707  - new api to duplicate slices
9708
9709 * Regular expression support:
9710  - GRegex is a boxed type now
9711
9712 * Bugs fixed:
9713  44793 make check failing in trunk
9714  354522 Small problem with PLT hiding 6 symbols
9715  363986 glib 2.12.4 does not compile with SGI IDO cc
9716  443869 g_type_class_add_private doesn't warn when adding 0-sized...
9717  446859 Legitimately return 0 for g_quark_from_string(NULL)
9718  447534 Small typo in g_timeout_add_seconds() doc
9719  447583 GStaticRWLock
9720  447935 g_get_current_dir SIGSEGV on long path
9721  448260 CLAMP has surprising result if low > high
9722  57693  g_string_vprintf()
9723  442029 add g_slice_dup()
9724  445065 Add GRegex boxed type
9725  448819 Add full version of g_timeout_add_seconds()
9726
9727 * Updated translations: 
9728  Swedish (sv)
9729  Oriya (or)
9730  Hebrew (he)
9731  Spanish (es)
9732  Estonian (et)
9733
9734  
9735 Overview of Changes from GLib 2.13.3 to GLib 2.13.4
9736 ===================================================
9737
9738 * Bugs fixed:
9739  444121 g_get_user_special_dir deadlocks
9740  444161 invalid UTF8 in key name shows up as valgrind error in g_...
9741  444130 g_option_context_get_help() is broken when there's a desc...
9742
9743
9744 Overview of Changes from GLib 2.13.2 to GLib 2.13.3
9745 ===================================================
9746
9747 * GKeyFile:
9748  - Added defines for easier handling of desktop files
9749
9750 * Unicode support:
9751  - Update g_unichar_iswide_cjk for Unicode 5.0
9752
9753 * Regular expression support:
9754  - GRegex structs can now be ref-counted
9755  - Some new functions for dealing with incremental 
9756    replacement have been added
9757  - The GRegexEvalCallback signature has been changed
9758
9759 * g_get_user_special_dir() has been added to support
9760   xdg-user-dirs
9761
9762 * Bugs fixed:
9763  419376 Functions using named subpatterns behave inconsistently w...
9764  434358 g_regex_fetch_named() and g_regex_fetch_named_pos() are b...
9765  423708 typo in the README.win32 file see patch below
9766  339225 Add new defines for easier handling of .desktop files 
9767  442265 API additions/changes for GRegex
9768  432651 Add a glib-ish xdg_user_dir_lookup
9769
9770 * Updated translations:
9771  Estonian (et)
9772  Norwegian bokmål (nb)
9773
9774
9775 Overview of Changes from GLib 2.13.1 to GLib 2.13.2
9776 ===================================================
9777
9778 * Unicode support:
9779  - Add g_unichar_ismark()
9780
9781 * GOption:
9782  - Allow to use callbacks for remaining args
9783
9784 * Updated translations:
9785   Belarusian Latin (be@latin)
9786   British English (en_GB)
9787   Galician (gl)
9788   Norwegian bokmål (nb)
9789   Oriya (or)
9790   Spanish (es)
9791   Thai (th)
9792
9793
9794 Overview of Changes from GLib 2.13.0 to GLib 2.13.1
9795 ===================================================
9796
9797 * GRegex:
9798  - Portability fixes
9799  - Split into immutable GRegex and GMatchInfo
9800  - Add g_regex_get_max_backref() and g_regex_get_capture_count()
9801    to obtain information about the compiled regex
9802
9803 * GKeyFile:
9804  - Fix roundtrip problems
9805  - Add g_key_file_load_from_dirs()
9806
9807 * Unicode support:
9808  - Fix corner cases in case conversion routines
9809
9810 * GOption:
9811   - Add a function to get the formatted help string
9812
9813 * GHash:
9814  - Add new functions g_hash_table_get_keys() and
9815    g_hash_table_get_values() to retrieve the keys and
9816    values in list form
9817
9818 * Updated transations:
9819   Simplified Chinese (zh_CN)
9820   Arabic (ar)
9821
9822
9823 Overview of Changes from GLib 2.12 to GLib 2.13.0
9824 =================================================
9825
9826 * Add GSequence, a list that is implemented using
9827   a balanced binary tree.
9828
9829 * Add GRegex, an implementation of Perl regular expressions,
9830   based on PCRE.
9831  
9832 * Use Posix monotonic clocks instead of gettimeofday()
9833   for GTimer when available.
9834
9835 * Support static initialization of GQeues with G_QUEUE_INIT,
9836   g_queue_init() and g_queue_clear().
9837
9838 * Add g_string_chunk_clear() for clearing a 
9839   GStringChunk.
9840
9841 * Add g_unichar_get_script() to obtain Unicode
9842   script information.
9843
9844 * Add g_unichar_iszerowidth() to obtain information
9845   about zero-width characters.
9846
9847 * Add G_GNUC_MAY_ALIAS which wraps the gcc may_alias 
9848   type attribute.
9849
9850 * G_GNUC_INTERNAL has a working definition for the
9851   Sun Studio compiler. This requires the macro to
9852   be positioned before the function declaration.
9853
9854 * The slice allocator can produce detailed debugging
9855   information with G_SLICE=debug-blocks.
9856
9857 * Modules support G_DEBUG flags resident-modules and
9858   bind-now-modules.
9859
9860 * Add G_DEFINE_DYNAMIC_TYPE() to make it easier
9861   to define types in modules.
9862
9863 * Bug fixes: too many to list them in detail here.
9864
9865 * New and updated translations (be,bg,bn,ca,cs,de,
9866   en_CA,en_GB,et,fa,fr,he,hu,it,ja,ku,lt,mg,mk,ml,
9867   nb,ne,nn,pt,pt_BR,ro,sr,sr@Latn,sv,ta,uk,vi,zh_CN,
9868   zh_HK,zh_TW)
9869
9870
9871 Overview of Changes from GLib 2.12.1 to GLib 2.12.2
9872 ===================================================
9873
9874 * Unicode updates:
9875  - Normalization is following Unicode TR #29
9876  - g_unichar_isxdigit() only accept characters
9877    for which g_unichar_xdigit_value() returns a value
9878  - g_unichar_toupper and g_unichar_tolower leave
9879    unconvertable characters in place instead of
9880    replacing them by NUL
9881
9882 * Bugs fixed
9883  348491 g_utf8_strup() and g_utf8_strdown() returns 
9884         string with NUL bytes
9885  349825 GKeyFile always inserts a newline before a group
9886  347842 g_unichar_isxdigit() is too general about what 
9887         it considers a digit
9888  348694 g_utf8_normalize() hasn't been updated to PR #29
9889  348785 Hint about G_DEBUG in Message Logging docs
9890  349792 Wrong english string (UI)
9891  349952 gparamspecs.c uses gcc feature
9892
9893 * Translation updates (ca,cs,de,dz,es,eu,fi,gu,ko,
9894   nl,pl,tr,uk,zh_HK,zh_TW)
9895
9896
9897 Overview of Changes from GLib 2.12.0 to GLib 2.12.1
9898 ===================================================
9899
9900 * Update to final Unicode Character Database 5.0.0
9901
9902 * Bugs fixed:
9903  346660 issues with base64 api documentation / g_base64_decode_cl...
9904  348136 Coverity reports allocation of wrong size CID #2839
9905  336281 Update to UCD 5.0
9906  346197 g_date_strftime %F option doesnt work for win32
9907  348011 Small optimization to real_toupper()
9908  246494 prototype mismatch in glib/gconvert.c
9909
9910 * New and updated translations (bg,bn_IN,ca,dz,eu,fi,
9911   fr,he,it,ja,mk,or,pt)
9912
9913
9914 Overview of Changes from GLib 2.11.4 to GLib 2.12
9915 =================================================
9916
9917 * Bugs fixed:
9918  344905 leap-year bug in g_time_val_from_iso8601 w/o HAVE_TIMEGM
9919
9920 * Updated translations (cy,nb,nl)
9921
9922
9923 Overview of Changes from GLib 2.11.3 to GLib 2.11.4
9924 ===================================================
9925
9926 * GBookmarkFile:
9927  - g_bookmark_file_remove_item returns a boolean
9928  
9929 * g_mkstemp accepts the XXXXXX in the middle of
9930   the template
9931  
9932 * Bugs fixed:
9933  344868 g_key_file_to_data should separate groups 
9934
9935 * Updated translations (de,es,fr,gu,hi,ko,th)
9936
9937
9938 Overview of Changes from GLib 2.11.2 to GLib 2.11.3
9939 ===================================================
9940
9941 * GBookmarkFile:
9942   - g_bookmark_file_move_item: Return TRUE in case of
9943     an empty target
9944
9945 * Bugs fixed: 
9946  343919 gunicollate.c: strxfrm bug on VC8
9947
9948 * Updated translations (fi)
9949
9950 Overview of Changes from GLib 2.11.1 to GLib 2.11.2
9951 ===================================================
9952
9953 * Add g_ascii_stroll to parse signed 64bit integers
9954
9955 * GMarkup: add a flag to treat CDATA as text
9956
9957 * GHashTable: add functions to remove all entries
9958
9959 * GMainLoop: add functions to find the currently
9960   running source, and determine if it is destroyed
9961
9962 * Bug fixes:
9963  342563  g_atomic_thread_init() needs to be called before 
9964          other _g_*_thread_init() functions
9965  343548  Potential use after free in callers of g_string_free() 
9966  168538  Wish: Clearing contents of GHashTables
9967  321886  GTK+ cannot be reliably used in multi-threaded 
9968          applications
9969  341826  goption.c: 'strtoll' is C99's function
9970  343899  g_ascii_formatd dosn't work as expected for all 
9971          format strings
9972  317793  Make GEnumValue strings const
9973  337129  Compile warnings in G_IMPLEMENT_INTERFACE
9974  303622  What is G_TYPE_CHAR?
9975
9976 * Updated translations (bg,dz,eu,gl,ja,ko,nl,th,vi)
9977  
9978
9979 Overview of Changes from GLib 2.11.0 to GLib 2.11.1
9980 ===================================================
9981
9982 * GOption  
9983   - Support 64-bit integers 
9984   - Allow optional text before and after the options
9985     in help output
9986
9987 * Bug fixes:
9988  340538 gbase64-test writes OOB 
9989  340816 GKeyFile set_string_list invalid memory reads 
9990  339105 g_key_file_parse_value_as_double
9991  340434 convert-test.c fails (function test_one_half)
9992  311043 Memory leaks (and potential infinite loops) 
9993         when using G_ERRORCHECK_MUTEXES
9994  335198 Error checking mutexes are fubar  
9995  341237 Add a G_OPTION_ARG_INT64
9996  341192 g_io_channel_set_flags not implemented on win32
9997  336120 Allow adding description before/after GOption 
9998         --help output body
9999  341191 misplaced check in g_relation_delete
10000  340530 mismatched calloc / g_free in win32 threads
10001
10002 * Updated translation (es)
10003
10004 Overview of Changes from GLib 2.10.x to GLib 2.11.0
10005 ===================================================
10006
10007 * GBookmarkFile: a parser for files containing bookmarks
10008   stored using the Desktop Bookmark specification.
10009
10010 * Base64 encoding support
10011         
10012 * Unicode 5.0 support
10013
10014 * GOption supports floating point numbers 
10015
10016 * GKeyFile supports floating point numbers
10017
10018 * Bug fixes:
10019  155884 gatomic.c should be based on new SDK
10020  157877 update-desktop-database doesn't handle duplicate entries
10021  164719 keyfile parser doesn't support floats
10022  327662 Import BookmarkFile from libegg
10023  329548 Add G_OPTION_ARG_DOUBLE
10024  329789 option-test.c type confusion
10025  332841 Segmentation Fault when %llu is passed to vasnprintf and 
10026         HAVE_SNPRINTF is not defined
10027  333879 gthread/gthread-win32.c: IsDebuggerPresent needs '#define 
10028         _WIN32_WINDOWS 0x0401'
10029  333916 g_timer_elapsed docs should mention that microseconds 
10030         may be NULL
10031  334440 dlerror() portability issue causes crash on (old) a.out 
10032         NetBSD platform
10033  334646 goption + error out params
10034  334799 g_remove() must check return value of remove()
10035  334943 make check FAIL: threadpool-test
10036  335215 Some breakages with GThreadPool
10037  336085 g_option_context_new parameter lacks better explanation
10038  336677 Documentation for g_object_ref_sink() is incorrect
10039  337027 gbookmarkfile.c: sys/time.h include error
10040  337553 Wrong escaping of URIs
10041  338572 Dereferencing NULL value in g_key_file_get_group_comment
10042  338845 g_completion_complete_utf8 crashes when NULL is passed to it
10043  339337 g_bookmark_file_set_description
10044  339338 gbookmarkfile.c, function expand_exec_line
10045  339340 gbookmarkfile.c, function bookmark_app_info_dump
10046
10047 * Translation updates (bg,en_GB,et,gl,gu,he,hi,ka,nb,nl,nn,
10048                        or,pt_BR,ro,tr,vi,zh_CN)
10049
10050
10051 Overview of Changes from GLib 2.10.0 to GLib 2.10.1
10052 ===================================================
10053
10054 * Bugs fixed:
10055  314794 Broken pthread detection on Darwin [Gregor Riepl]
10056  322476 Missing check for .dylib [Vladimir Panov]
10057  333651 Inconsistent _g_charset_get_aliases prototype [Julio 
10058         M. Merino Vidal]
10059  333761 GInitiallyUnowned breaks application code [Sven Herzberg]
10060
10061 * Win32 changes:
10062  - Fix g_listenv() implementation.
10063  - Allow up to 100 GPrivate structs
10064
10065 * Translation updates (fr,hu,lt,pl,sv)
10066
10067
10068 Overview of Changes from GLib 2.9.6 to GLib 2.10.0
10069 ==================================================
10070
10071 * Bugs fixed:
10072  328997 64bit pointer trunction in glib slab-allocator
10073         [Pascal Hofstee]
10074  331110 g_cond_broadcast(inform_cond) without holding 
10075         inform_mutex [Chris Wilson, Sebastian Wilhelmi]
10076  332093 Fix some leaks in the tests [Kjartan Maraas]
10077  332435 g_utf8_strlen returns wrong value if a maximum 
10078         number of bytes to check is specified 
10079         [Matthias Clasen]
10080  331367 gslice requires more POSIX-like semantics for 
10081         GPrivate destructors [Tor Lillqvist]
10082
10083 * Documentation improvements [Matthias, Kang Jeong-Hee,
10084   Tor Lillqvist, Stefan Kost]
10085
10086 * Translation updates (el,eu,ka,uk)
10087
10088 Overview of Changes from GLib 2.9.5 to GLib 2.9.6
10089 =================================================
10090
10091 * Bugs fixed: 
10092  329124 distclean removes README [Kjartan Maraas, Tim Janik]
10093  317679 GRelation field type not documented [Behdad Esfahbod]
10094  329123 Typo in GTime docs [Kjartan Maraas]
10095
10096 * Documentation improvements [Sven Herzberg, David
10097   Schleef, Kjartan Maraas, Behdad Esfahbod]
10098
10099 * Translation updates (cs,cy,it,ko,pt,sq,sr,sr@Latn,ru
10100
10101 Overview of Changes from GLib 2.9.4 to GLib 2.9.5
10102 =================================================
10103
10104 * Memory management: 
10105   Runtime debugging support: The slice allocator
10106   can be turned off by setting G_SLICE=always-malloc
10107   in the environment. Zeroing of freed memory can
10108   now be turned on at runtime by setting
10109   G_DEBUG=gc-friendly in the environment. [Tim Janik]
10110
10111 * Bugs fixed:
10112  328253 HP-UX/IA-64 uses ".so" as default shared library 
10113         extension [Albert Chin]
10114  143380 unicode-encoding test fails converting to UTF-16 
10115         with libiconv [Marc Moorcroft]
10116  328254 Build breakage (GSlice) [Jens Ganseuer]
10117  328705 C99ism in glib/gmem.c [Kazuki Iwamoto]
10118
10119 * Translation updates (da,et,zh_CN)
10120
10121 Overview of Changes from GLib 2.9.3 to GLib 2.9.4
10122 =================================================
10123
10124 * Type system:
10125   Fix a problem with g_object_compat_control() which 
10126   can lead to segfaults in GTK+ applications on 64bit 
10127   platforms. 
10128
10129 * Thread suppport: 
10130   Unused threads now fall back to the global pool after 
10131   500 milliseconds, where they wait for another 
10132   max-idle-time milliseconds. [Sebastian Wilhelmi]
10133
10134 * Fix a memory allocation problem in GKeyFile. [Morten 
10135   Welinder]
10136
10137
10138 Overview of Changes from GLib 2.9.2 to GLib 2.9.3
10139 =================================================
10140
10141 * GTree:
10142  - Replace the simple recursive implementation by
10143    a nonrecursive, threaded one  [Maurizio Monge]
10144
10145 * Change g_filename_display_name and
10146   g_filename_display_basename to use the Unicode
10147   replacement character U+FFFD instead of a question
10148   mark, and don't append "(invalid encoding)"  [Matthias]
10149
10150 * Documentation improvements [Sven Herzberg, Federico
10151   Mena Quintero, Stefan Kost]
10152
10153 * Bugs fixed:
10154  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X 
10155         [Bogdan Nicula]
10156  326558 Some test failures on IRIX 6.5 [Daichi Kawahata]
10157  169285 "threaded" tree implementation for GTree 
10158         [Maurizio Monge]
10159  326747 g_filename_display_basename adds (invalid encoding) 
10160         [Alberto Ruiz]
10161
10162 Other contributors: Christian Kellner, Murray Cumming
10163
10164 New and updated translations (bg,ca,de,es,et,gu,ja,nl,th,vi)
10165
10166
10167 Overview of Changes from GLib 2.9.1 to GLib 2.9.2
10168 =================================================
10169
10170 * Memory management:
10171  - Add tests for cache colorization [Tim Janik]
10172  - Minimize space consumption if small amounts of differently
10173    sized slices are allocated, at a small performance cost.  [Tim]
10174
10175 * Thread support:
10176  - Add g_atomic_pointer_set() and g_atomic_int_set() [Tim Janik,
10177    Sebastian Wilhelmi]
10178  - Add g_thread_pool_set_sort_function() to allow sorting the 
10179    tasks of a threadpool.  [Martyn Russell]
10180  - Add g_thread_pool_set_idle_time() to allow unused threads
10181    to exit after a certain time.  [Martyn]
10182
10183 * Type system:
10184  - introduce a new type GInitiallyUnowned, which has an initial
10185    floating reference. [Tim]
10186  - Add support for GType parameters. [Matthias]
10187
10188 * Main loop:
10189  - Add g_main_context_is_owner() to determine if the current
10190    thread is the owner of the context.  [Michael Meeks]
10191
10192 * Provide g_access(), g_chdir(), g_unlink(), g_rmdir() as 
10193   wrapper functions instead of macros.  [Manish Singh]
10194
10195 * Documentation improvements [Tim, Matthias, Federico Mena Quintero,
10196   Stefan Kasal, Dan Williams]
10197
10198 * New and updated translations (en_CA,fi,fr,gl,ml,nb,no,zh_HK,zh_TW)
10199
10200 * Bugs fixed:
10201  324179 g_allocator_new() returns pointer to const dummy which Gtk+ 2.8 
10202         tries to modify [J. Ali Harlow]
10203  324332 g_option_context_parse() returns false without setting error 
10204         [Tim-Philipp Müller]
10205  324950 GLIB 2.9.1 testcase errors [Dan Yefimov]
10206  325015 gslice.c: process.h is needed on Windows [Kazuki Iwamoto]
10207  321978 G_DATALIST_GET_FLAGS() macro is not casting datalist to 
10208         gpointer [Andrew Paprocki]
10209  316221 G_LOCK warns about breaking strict-aliasing [Michal Benes, 
10210         Stanislav Brabec]
10211  325273 Error in documentation for glib_check_version () [Declan Naughton]
10212  325310 g_spawn_sync hangs when catching both stdout and 
10213         stderr [Tor Lillqvist]
10214  325249 gcc warning when using g_rmdir from <glib/gstdio.h> [Jani Monoses]
10215  325864 glib/gthreadpool.c:"#define debug(...)" is C99 [Kazuki Iwamoto]
10216  325874 Should say somewhere that source IDs are > 0 [Dan Williams]
10217  325438 a typo (compatability) [Stefan Kasal]
10218  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X [Bogdan Nicula]
10219
10220
10221 Overview of Changes from GLib 2.9.0 to GLib 2.9.1
10222 =================================================
10223
10224 * Memory management
10225  - The slice allocator is implemented [Tim Janik]
10226  - g_slice_free_chain() has been renamed to 
10227    g_slice_free_chain_with_offset()  [Tim, Behdad Esfahbod]
10228  - Mem chunks are deprecated [Matthias Clasen]
10229
10230 * Data structures
10231  - Hash tables are refcounted, and have a boxed type [Tim]
10232
10233 * Thread support
10234  - Support for Solaris threads has been removed 
10235    [Sebastian Wilhelmi, Andrew Paprocki]
10236  - g_async_queue_sort(), g_async_queue_push_sorted() have 
10237    been added to allow GAsyncQueue to be used as a priority 
10238    queue, together with the corresponding _unlocked 
10239    variants  [Martyn Russell]
10240
10241 * GObject:
10242  - The concept of a floating initial reference has been
10243    moved from GtkObject to GObject [Tim]
10244
10245 * Win32 changes:
10246  - Make g_rename() replace existing files [Tor Lillqvist]
10247
10248 * Misc new API:
10249  - G_GUINT64_CONSTANT macro to define guint64 
10250    constants [Andrew Paprocki]
10251  - G_GNUC_WARN_UNUSED_RESULT macro to instruct the 
10252    compiler to emit a warning if the value returned
10253    by a function is ignored. [Arjan van de Ven, Alex Larsson]
10254  - GList and GSList now have sort functions which take an
10255    extra user data argument [Martyn Russell]
10256  - g_param_spec_ref_sink() has been added for consistency [Tim]
10257
10258 * $LOGNAME is respected when determining user data. [Laszlo Peter]
10259
10260 * Other changes and bug fixes [Tim, Matthias, Behdad, 
10261   Christian Persch, Benedikt Meurer, Andrew Paprocki, 
10262   Kazuki Iwamoto, Alexis S. L. Carvalho, Stanislav Brabec,
10263   Andreas Schwab, Kalle Vahlman]
10264
10265 * Documentation
10266  - Deprecation warnings carry version information [Matthias]
10267  - The slice allocator has been documented [Matthias, Tim]
10268  - Other improvements [Morten Welinder]
10269
10270 Overview of Changes from GLib 2.8.x to GLib 2.9.0
10271 =================================================
10272 * Unicode support:
10273  - The Unicode tables have been updated to Unicode 4.1, 
10274    adding several new values to the GUnicodeBreakType 
10275    enumeration. This breaks Pango <= 1.10 
10276    [Behdad Esfahbod]
10277  - The various Unicode character predicate functions 
10278    (g_unichar_isalpha, g_unichar_isdigit,...) have
10279    been optimized
10280    [Behdad]
10281  - g_utf8_pointer_to_offset, g_utf8_offset_to_pointer:
10282    These functions handle negative offsets now, and
10283    going backwards in g_utf8_offset_to_pointer uses
10284    "stutter stepping".
10285    [Larry Ewing, Matthias Clasen]
10286
10287 * Memory management:
10288  - Mem chunks are no longer used internally in GLib and
10289    GObject. GMemChunk will be deprecated in GLib 2.10
10290  - All APIs based on GAllocator (g_list_push/pop_allocator,
10291    and similar push/pop_allocator functions for other
10292    data structures) have been deprecated, since they
10293    never worked as intended.
10294  - The g_slice_* functions have been added as a 
10295    new API for fast allocation of small memory blocks. 
10296    The implementation in GLib 2.9.0 is just a simple 
10297    wrapper around malloc. GLib 2.10 will have an
10298    efficient and scalable implementation. 
10299    [Tim Janik, Matthias]
10300
10301 * Pattern matching:
10302  - g_pattern_match has been optimized to avoid
10303    unnecessary recursion.
10304    [Tim, Matthias]
10305
10306 * g_intern_string, g_intern_static_string: 
10307  - New functions to intern strings. These are now used 
10308    by GObject to avoid duplicating static strings 
10309    [Matthias]
10310
10311 * g_thread_foreach: 
10312  - New function to iterate over all GThreads 
10313    [Tim, Matthias]
10314
10315 * g_date_set_time_t, g_date_set_time_val:
10316  - New functions to set a GDate from a time_t or
10317    GTimeVal value. g_date_set_time has been deprecated 
10318    in favor of these.
10319    [Roger Leigh]
10320
10321 * g_snprintf and g_vsnprintf:
10322  - These functions are no longer declared in gprintf.h, 
10323    since they are in glib.h
10324    [Matthias]
10325
10326 Overview of Changes from GLib 2.8.0 to GLib 2.8.1
10327 =================================================
10328 * Optimize single-character insertions in GString [Ross Burton]
10329 * Fix build problems on OS X
10330 * Fix build problems on Win32 [Tor Lillqvist, Hans Breuer]
10331 * Other bug fixes [Matthew F. Barnes, Stepan Kasal] 
10332 * Documentation improvements [Tristan van Berkom, Behnam
10333   Esfahbod, Gustavo Carneiro, Stepan Kasal, Matthias]
10334 * New and updated translations (ca,cy,ko,ro,uk)
10335
10336 Overview of Changes from GLib 2.7.7 to GLib 2.8.0
10337 =================================================
10338 * Make g_value_transform() handle enum values
10339   correctly on ppc64.  [Michael Lorenz]
10340   (Third-party code accessing enumeration values 
10341   in GValues should also be changed to access 
10342   v_long, not v_int, in order to work on bigendian 
10343   64bit machines.)
10344 * Make g_flags_get_first_value() handle a value
10345   of 0 meaningfully. [Tim-Philipp Müller] 
10346
10347 Overview of Changes from GLib 2.7.6 to GLib 2.7.7
10348 =================================================
10349 * Make atomic operations on s390 work [Matthias]
10350 * Fix C++ guards in gstdio.h [Tor Lillqvist]
10351
10352 Overview of Changes from GLib 2.7.5 to GLib 2.7.6
10353 =================================================
10354 * Add native implementations of atomic operations 
10355   on s390 [Matthias]
10356 * Make atomic reference counting of closures
10357   work on s390 [Matthias]
10358 * Avoid an infinite loop in g_convert_with_iconv().
10359   [Sebastian Bacher]
10360 * Documentation improvements [Ross Burton]
10361
10362 Overview of Changes from GLib 2.7.4 to GLib 2.7.5
10363 =================================================
10364 * Thread-related changes
10365  - Fix build issues on HP-UX [Paul Cornett]
10366  - Threadsafe access to flags stored in datasets [Tim Janik]
10367  - Fix several issues with atomic refcounting for 
10368    closures, objects and paramspecs [Tim]
10369  - Improve tests for atomic refcounting changes [Tim]
10370 * Fix handling of stateful encodings in g_convert_* [Matthias]
10371 * Fix translation of GOption help output [Dan Winship]
10372 * Catch format errors in translations. This may cause 
10373   "make check" to fail when using older versions
10374   of gettext [Matthias]
10375 * Win32 bug fixes [Tor Lillqvist]
10376 * Documentation improvements [Ross Burton, Jochen Baier, 
10377   Matthias, Tim]
10378 * New and updated translations (de,fi,gu,pl,pt,tr,zh_TW)
10379
10380 Overview of Changes from GLib 2.7.3 to GLib 2.7.4
10381 =================================================
10382 * Fix g_atomic_pointer_compare_and_exchange 
10383   on Sparc64 [Gert Doering]
10384 * Fix a hang in g_thread_pool_free. [Hong Jen Yee]
10385 * Win32 bug fixes [Tor Lillquist]
10386 * Other bug fixes [Benoit Dejean, Manish Singh]
10387 * Documentation improvements [Bryan Silverthorn,
10388   Callum McKenzie] 
10389 * New and updated translations (de,lt,sq,zh_CN)
10390
10391 Overview of Changes from GLib 2.7.2 to GLib 2.7.3
10392 =================================================
10393 * GOption
10394  - Allow callbacks with optional arguments [Pawel Sliwowski]
10395  - Allow to turn off the automatic long option name
10396    disambiguation  [Adam McLaurin]
10397  - Only allow printable ASCII as short option names [Matthias]
10398 * Win32
10399  - Build fixes [Tor Lillqvist]
10400  - Rewrite iochannel socket implementation [Tor]
10401 * GObject
10402  - Threadsafety improvements; in particular, refcounting
10403    of objects is done atomically now. [Wim Taymans, Tim Janik]
10404 * Bug fixes [Morten Welinder, Matthias, Wim Taymans]
10405 * Documentation improvements [Richard Laager, Matthias]
10406 * New and improved translations (bf,cs,hu,nb,nl,no)
10407
10408 Overview of Changes from GLib 2.7.1 to GLib 2.7.2
10409 =================================================
10410 * Win32 build fixes [Hans Breuer]
10411 * Bug fixes [Mikael Magnusson]
10412 * Documentation improvements [Matthias Clasen]
10413 * New and updated translations (en_CA,es,et,ja,sr,sr@Latn,zh_TW)
10414
10415 Overview of Changes from GLib 2.7.0 to GLib 2.7.1
10416 =================================================
10417 * GOption 
10418  - Allow callback arguments without parameters [Dan Winship]
10419 * GMappedFile: an mmap wrapper [David Schleef, Behdad Esfahbod]
10420 * Misc new functions:
10421  - g_get_host_name [Tor Lillqvist]
10422  - g_mkdir_with_parents [Tor]
10423  - g_build_pathv, g_build_filenamev [Todd A. Fisher, 
10424    Matthias Clasen]
10425 * Bug fixes [Roger Leigh, Masatake YAMATO, Kjartan Maraas,
10426   Manish Singh, Tor, Murray Cumming, Kian Duffy, Morten Welinder]
10427 * Documentation improvements [Hong Gang XU, Dan Winship, Matthias]
10428 * New and updated translations (bg,cs,da,en_CA,es,et,nb,nl,no,
10429   sk,th,zh_TW)
10430
10431 Overview of Changes from GLib 2.6.x to GLib 2.7.0
10432 =================================================
10433 * GKeyFile
10434  - Add unit tests [Matthias Clasen, Suren A. Chilingaryan]
10435  - Accept \r\n as line end [Bastian Nocera]
10436  - Don't interpret leading zeros as octal numbers. [Matthias]
10437  - Make key and group removal work [David Hoover, Matthias Hasselmann]
10438 * GOption
10439  - Improve formatting of --help output [Matthias, Noah Levitt]
10440  - Accept -? [Matthias]
10441  - Warn about duplicate main groups [Jeff Franks]
10442  - Treat '-' as non-option argument [Tim Musson, Thomas Leonard]
10443  - Report missing arguments as errors [Björn Lindqvist]
10444  - Add a boxed type for GDate [Tim-Philipp Müller]
10445 * GTree
10446  - g_tree_remove() and g_tree_steal() return status information [Matthew F. Barnes]
10447 * Stdio wrappers
10448  - Work regardless of large file support [Manish Singh]
10449  - Add g_access(), g_chmod(), g_creat(), g_chdir [Tor Lillqvist]
10450 * GObject
10451  - Implement "toggle references" to help language bindings [Owen Taylor]
10452  - Allow to mark names, nicks and blurbs of pspecs as static [Ben Maurer, Matthias]
10453  - Make pspec lookup a bit faster [Morten Welinder]
10454 * Add g_listenv() to list all set environment variables [Hans Petter Jansson]
10455 * Add g_file_set_contents() to atomically write a file.  [Søren Sandmann,
10456   Sven Neumann, Manish, Alexis S. L. Carvalho]
10457 * Add g_try_malloc(), g_try_new(), g_try_new0() and g_try_renew() [Stefan Kost]
10458 * Add g_utf8_collate_key_for_filename() to sort filenames taking
10459   extensions and numeric suffixes into account.  [Ole Laursen, Alex Larsson]
10460 * Add G_GNUC_NULL_TERMINATED to mark varargs function with 
10461   NULL-terminated argument lists. [Marc Meissner]
10462 * Win32 changes
10463  - Improved debugability [Ulf Lamping, Hans Breuer]
10464  - Make filename handling more robust [Tor, Billy Skaggs]
10465  - Improve g_get_system_data_dirs() [Tor]
10466  - Use more precise timers [Tor]
10467  - Build fixes [Kazuki Iwamoto, Hans, Tor, Robert Ögren]
10468 * Other bug fixes [Roger Leigh, Owen, Matthias, Morten, Kjartan Maraas, 
10469   Pawel Sakowski, Tor, Simon Budig, Ed Avis, Manish, Nicolas Laurent, 
10470   Bastien, Fabrício Barros Cabral, Michael Banck, Daniel Atallah, 
10471   J. Ali Harlow, Tim Janik, Hazael Maldonado Torres, Sven, Jon-Kare Hellan,
10472   Dave Benson, Tommi Komulainen, Benjamin Otte, Brian Cameron, Changwoo Ryu, 
10473   Christian Biere, Noah, Benoît Carpentier]
10474 * Documentation improvements [Vincent Untz, Matthias, Tim-Philipp Müller,
10475   Morten, Matthew, Federico Mena Quintero, Sebastian Bacher, Oliver Sessink, 
10476   Stefan, Jared Lash, Tor, Owen, Daniel Vaillard, Mathieu Lacage]
10477 * New and updated translations (ca,cs,da,el,en_CA,en_GB,es,et,eu,fa,fr,gl,
10478   hu,id,it,lt,mn,ne,nl,pl,pt,pt_BR,ro,rw,sk,sq,sr,sr@Latn,tl,uk,xh,zh_CN)
10479
10480 Overview of Changes from GLib 2.6.0 to GLib 2.6.1
10481 =================================================
10482 * GOption
10483  - Make gtk_init(NULL, NULL) work again [Marcin Krzyzanowski]
10484  - Improve handling of -- [Matthias Clasen]
10485  - Don't show G_OPTION_REMAINING in --help output [Matthew F. Barnes]
10486 * g_find_program_in_path() doesn't return directories [Tommi Komulainen]
10487 * Add gmodule-export-2.0.pc [Matthias]
10488 * Win32 changes
10489  - Improve hangling of UNC paths [Tor Lillqvist]
10490  - g_getenv(), g_setenv(), g_unsetenv(), g_find_program_in_path()
10491    take and return UTF-8 now [Tor] 
10492  - Make g_file_test() work more reliably, and use PATHEXT
10493    when check for executables [Tor]
10494  - Build and cross-compilation fixes [J. Ali Harlow]
10495 * Other bug fixes [Jens Hatlak, Morten Welinder, 
10496   Tor, Kalpesh Shah, Adrian Bunk]
10497 * Documentation improvements [Marcin Krzyzanowski, Tor, Crispin
10498   Flowerday, Mariano Suárez-Alvarez, Christian Biere, Danny Milo,
10499   Vincent Untz, Bastien Nocera]
10500 * New and updated translations (cy,de,nl,ru,sq,sv)
10501
10502 Overview of Changes from GLib 2.4.x to GLib 2.6.0
10503 =================================================
10504
10505 * Major new APIs
10506   - GOption, a commandline option parser
10507   - GKeyFile, a parser/editor for the .ini like files 
10508   - Functions to support the XDG basedir specification
10509   - Wrappers for common POSIX pathname functions to handle filename
10510     encodings consistently. On Windows, these use UTF-8.
10511
10512 * Miscellaneous new functions
10513   - g_filename_display_name() converts filenames in displayable UTF-8 strings
10514   - g_uri_list_extract_uris() splits uri lists
10515   - g_date_get_iso8601_week_of_year() gets ISO 8601 week numbers
10516   - g_log_set_default_handler() installs an alternate default log handler
10517   - g_get_language_names() obtains a list of applicable locale names
10518   - g_strv_length() calculates the length of NULL-terminated string arrays
10519   - g_win32_get_windows_version() determines the Windows version 
10520   - G_GNUC_INTERNAL marks functions as non-exported
10521   - glib_check_version() checks the GLib version at runtime
10522   - g_debug() completes the family of logging functions
10523
10524 * Performance improvements
10525   - Optimize g_utf8_validate()
10526   - Optimize g_markup_parse_context_parse()
10527   - Reduce signal connection complexity from O(n) to O(1) 
10528   - Get rid of many PLT entries for internally used exported symbols
10529   - Reduce code size by removing literal strings from g_return_if_fail()
10530
10531 * Other changes
10532   - On Windows, GLib functions that take file name arguments now require
10533     those to be in UTF-8. Functions that return file names return UTF-8.
10534   - Use higher precision for mathematical constants
10535   - Don't convert to/from UTF-8 in g_filename_to_uri/g_filename_from_uri
10536   - Support ll as printf format modifier for long long on all platforms
10537   - Clean up the ABI and enforce the list of exported symbols
10538   - Add a .pc file for using gmodule in libraries
10539   - Require ngettext
10540
10541 Overview of Changes from GLib 2.5.7 to GLib 2.6.0
10542 =================================================
10543 * GOption: Don't list help options if group-specific
10544   options have been requested [Glynn Foster]
10545 * Make g_get_language_names() track locale changes [Christian Persch]
10546 * Win32 bug fixes [Tor Lillqvist]
10547 * Bug fixes [Philippe Blain, Owen Taylor, Sebastian Wilhelmi]
10548 * New and updated translations (da,es,ja,lt,zh_CN)
10549 Bugs fixed: 159530,100697,160271,160645,157255
10550
10551 Overview of Changes from GLib 2.5.6 to GLib 2.5.7
10552 =================================================
10553 * Optimize g_utf8_validate() [Owen Taylor, Matthias Clasen]
10554 * Optimize g_markup_parse_context_parse() [Havoc Pennington, 
10555   Morten Welinder]
10556 * Reduce signal connection complexity from O(n) to O(1) 
10557   [Sven Neumann]
10558 * Add a .pc file for using gmodule in libraries [Owen]
10559 * Add G_GNUC_MALLOC to mark functions returning newly 
10560   allocated memory  [Matthias]
10561 * Win32 bug fixes [Hans Breuer, Tor Lillqvist, Robert Ögren,
10562   Bruce Hochstetler]
10563 * Bug fixes [Kazuki IWAMOTO, Matthias, Manish Singh, Morten,
10564   Frederic Crozat, Tor]
10565 * Documentation improvements [Matthias, Tor, Owen]
10566 * New and updated translations (cs,da,de,en_CA,en_GB,es,nb,nl,sq,zh_CN)
10567
10568 Overview of Changes from GLib 2.5.5 to GLib 2.5.6
10569 =================================================
10570 * GOption
10571   - Add G_OPTION_FLAG_REVERSE to allow options 
10572     which unset a  boolean variable [Tor Lillqvist]
10573 * GChildWatch
10574   - Use sigaction instead of signal [Jonas Jonnson, 
10575   Archana Shah]
10576   - Make the very first SIGCHLD work [Gustavo Carneiro]
10577 * Bug fixes [Morten Welinder, Tor, David MacLachlan,
10578   Manish Singh, J. Ali Harlow]
10579 * Documentation improvements [Matthias Clasen, Tor]
10580 * Updated translations (da,ja,tr,zh_CN)
10581
10582 Overview of Changes from GLib 2.5.4 to GLib 2.5.5
10583 =================================================
10584 * GKeyFile
10585   - Cleanups, add more error checking [Ray Strode]
10586   - Fall back to the untranslated string when getting 
10587     locale strings [Mark McLoughlin]
10588 * GOption
10589   - Document GOption [Matthias Clasen]
10590   - Better support for rest arguments [Owen Taylor, Matthias]
10591   - Handle conflicts between groups [Matthias]
10592 * Add g_lstat() to the stdio wrappers [Tor Lillqvist]
10593 * Add g_filename_display_name() to convert filenames
10594   in displayable UTF-8 strings  [Alex Larsson, Matthias]
10595 * Win32 bug fixes [Kazuki IWAMOTO, Hans Breuer, Tor]
10596 * Bug fixes [Christophe Fergeau, Morten Welinder, 
10597   Owen, Kjartan Maraas, Mark]
10598 * Documentation improvements [Matthias, Tor]
10599
10600 Overview of Changes from GLib 2.5.3 to GLib 2.5.4
10601 =================================================
10602 Add GKeyFile, a parser/editor for the .ini like files used in various
10603    freedesktop.org specifications. [Ray Strode]
10604 Make the handling of filename encodings consistent across all
10605    GLib functions, introduce wrappers for common POSIX 
10606    functions which accept the same filename encoding. [Tor Lillqvist, 
10607    Owen Taylor]
10608 GOption
10609  - Rename g_context_option_error_quark() to a more language-binding
10610    friendly name [Murray Cumming]
10611  - Accept backslashes in filenames on Win32 [Tor Lillqvist]
10612 * Strip the internal aliasing prefix IA__ from function names in 
10613   assertions [Matthias Clasen]
10614 * Add a function to split uri lists. [Matthias]
10615 * Win32 bug fixes 
10616  - Don't open console windows [Tor]
10617 * Other bug fixes [Philippe Blain, Robert Ögren, Hidetaka Iwai, Matthias,
10618  Morten Welinder, Mats-Ola Persson, Tor, Nickolay V. Shmyrev, Kjartan Maraas,
10619   Anders Carlsson, Tim-Philipp Müller, Lucas Rocha, Andrea Campi, Manish
10620   Singh, Thomas Fitzsimmons, Kazuki IWAMOTO]
10621 * Documentation improvements [Matthias, Linus Walleij, Nickolay, Philippe, 
10622  Adam Hooper, Gustavo Carneiro]
10623 * New and updated translations (cs,en_CA,en_GB,ja,nb,nl,or,sr,sr@Latn,sq)
10624
10625 Overview of Changes from GLib 2.5.2 to GLib 2.5.3
10626 =================================================
10627 * GOption
10628  - set the program name from argv[0] [Masatake YAMATO] 
10629  - make contexts work without a main group [Anders Carlsson]
10630 * Performance 
10631  - Get rid of many PLT entries for internally used exported symbols,
10632    and clean up the ABI at the same time and make make check check the
10633    list of exported symbols.  [Matthias Clasen]
10634 * Add API to get ISO 8601 week numbers [Niklas Lundell]
10635 * Add API to install an alternate default log handler [Darin Adler]
10636 * Add API to obtain a list of applicable locale names [Hidetoshi Tajima]
10637 * Reduce code size bloat by removing literal strings from
10638  the g_return_if_fail() macros [Owen Taylor]
10639 * Add g_strv_length [Tim-Philipp Müller]
10640 * Win32 changes
10641  - Add API to determine the Windows version [Tor Lillqvist]
10642 * Other bug fixes [Stepan Kasal, Anders, Tor, Kazuki Iwamoto,
10643   Manish Singh]
10644 * Documentation improvements [Morten Welinder, Matthias]
10645 * New and updated translations (es,nn,ro)
10646
10647 Overview of Changes from GLib 2.5.1 to GLib 2.5.2
10648 =================================================
10649 * Add G_GNUC_INTERNAL macro [Arjan van de Ven]
10650 * Add GOption, a commandline option parser [Anders Carlsson]
10651 * Add glib_check_version [Michael Natterer]
10652 * Add XDG basedir API [Ray Strode]
10653 * Require ngettext [Danilo Segan]
10654 * Bug fixes [Manish Singh, Ray Strode, Vincent Noel, 
10655   Jon-Kare Hellan, Jody Goldberg]
10656 * Win32 bug fixes [Tor Lillqvist, Hans Breuer, Peter Zelezny]
10657 * Documentation improvements [Matthias Clasen, Vincent Untz, Christian Persch]
10658 * New and updated translations (bs,eu,fi,gu,ne,pa)
10659
10660 Overview of Changes from GLib 2.5.0 to GLib 2.5.1
10661 =================================================
10662
10663 * Bug fixes [Oliver Guntermann, Sven Neumann, James 
10664   Henstridge, Hiroyuki Ikezoe, Matthias Clasen, Robert 
10665   Ögren, Tommi Komulainen]
10666 * Documentation improvements [Soeren Sandmann, 
10667   Christophe Fergeau, Danek Duvall]
10668 * New and updated translations (eu,hi)
10669   
10670 Overview of Changes from GLib 2.4.1 to GLib 2.5.0
10671 =================================================
10672
10673 * New functions g_debug [Sven Herzberg]
10674 * Use higher precision for mathematical constants [Morten 
10675  Welinder]
10676 * Don't convert to/from UTF-8 in g_filename_{to,from}_uri 
10677  [Federico Mena Quintero]
10678 * Win32
10679  - Handle empty digit string in printf() functions 
10680    correctly [Tor Lillqvist]
10681  - Support ll as format modifier for long long [Tor]
10682  - Be more careful about HOME [Tor, Ivan Wong]
10683  - Bug fixes [John Ehresman]
10684 * Miscellaneous bug and portability fixes [Danilo Segan, 
10685  Owen Taylor, Nikolai Weibull, Benoît Carpentier, Morten 
10686  Welinder, Manish Singh, Sven Neumann, Julio M. Merino Vidal,
10687  Kaz Sasayama, Murray Cumming, Federico, Mariano Suarez-Alvarez]
10688 * Documentation updates [Matthias Clasen, Crispin Flowerday,
10689  Tommi Komulainen, Federico Mena Quintero, Ed Griffiths]
10690 * New and updated translations (ja,ne,no,wa)
10691  
10692 Overview of Changes from GLib 2.4.0 to GLib 2.4.1
10693 =================================================
10694
10695 * Win32 bug fixes [Tor Lillqvist, Roger Leigh, John Ehresman]
10696 * Miscellaneous bug and portability fixes [Owen Taylor,
10697   Matthias Clasen, Jonas Jonsson, Christian Krause,
10698   Nickolay V. Shmyrev, Christophe Saout, Philippe Blain,
10699   Piotr Klaban]
10700 * Documentation updates [Matthias]
10701 * New and updated translations (ca,cs,cy,el,en_CA,en_GB,es,eu,fi,
10702   fr,gu,he,id,nl,pt,pl,ru,sr,sr@ije,sr@Latn,sv,uk)
10703
10704 Overview of Changes from GLib 2.3.6 to GLib 2.4.0
10705 =================================================
10706
10707 * Handle invalid-UTF-8 in g_log() properly [Matthias Clasen]
10708 * Win32 bug fixes [Tor Lillqvist, Bruce Hochstetler]
10709 * Miscellaneous bug and portability fixes [Olivier Biot, David L. Cooper II, 
10710   Kjartan Maraas, Frédéric L. W. Meunier, Christof Petig, Manish Singh, 
10711   Sebastian Wilhelmi]
10712 * Documentation updates [Owen]
10713 * Updated translations (hr,ro)
10714
10715 Overview of Changes from GLib 2.3.5 to GLib 2.3.6
10716 =================================================
10717
10718 * GAtomic bug fixes [Sebastian Wilhelmi, Mark McLoughlin]
10719 * GMain threading fixes and improvements [Sebastian]
10720 * Win32 [Tor Lillqvist]
10721  - restore some symbols extraneously exported from gobject to maintain ABI compatibility
10722  - Misc build improvements and fixes [Tor, Cedric Gustin, Hans Breuer]
10723 * Documentation updates [Sebastian, Takeshi AIHANA, Matthias, Sven Herzberg]
10724 * New and updated translations (be,es,fi,ga,pa,sr@ije,zh_CN)
10725
10726 Overview of Changes from GLib 2.3.3 to GLib 2.3.5
10727 =================================================
10728
10729 * Make glib-mkenums parse initializers with macros. [Matthias Clasen, muppet]
10730 * Respect locale era in g_date_set_parse(). [Theppitak Karoonboonyanan] 
10731 * Add atomic operations and use it for the async queue and
10732   gonce implementation. [Sebastian Wilhelmi]
10733 * Documentation improvements [Sebastian, Matthias, Sven Herzberg]
10734 * Add g_main_depth() for finding the recursion depth of the main
10735   loop [Owen Taylor, Tim Janik, Stefan Westerfeld]
10736 * Add g_spawn_close_pid(), needed on win32 [J. Ali]
10737 * Win32 fixes. [Hans Breuer, J. Ali Harlow]
10738 * Misc bugfixes [Sebastian, Matthias, Balazs Scheidler, Owen]
10739 * Updated translations (cy,et,ga,sq)
10740
10741 Overview of Changes from GLib 2.3.2 to GLib 2.3.3
10742 =================================================
10743
10744 * Add a native AIX gmodule implementation. [Laurent Vivier]
10745 * Add g_node_copy_deep().  [James M. Cape, Matthias Clasen]
10746 * Extend GQueue API to match the GList API. [Soeren Sandmann]
10747 * Add g_hash_table_find().  [Tim Janik]
10748 * Add a G_MODULE_BIND_LOCAL flag. [David Schleef]
10749 * Inline g_string_append_c() when possible. [Owen Taylor, Tim]
10750 * Wrap waitpid() as a GSource. [Jonathan R. Blandford]
10751 * Add g_completion_complete_utf8(). [Theppitak Karoonboonyanan, 
10752   Matthias]
10753 * Add g_strsplit_set(). [Soeren]
10754 * Documentation improvements. [Vincent Untz, Sebastian Wilhelmi, 
10755   Soeren, Matthias]
10756 * Win32 build fixes. [Tor Lillqvist]
10757 * Misc bugfixes [Manish Singh, Noah Levitt, Simon Josefsson, 
10758   Morten Welinder, Damien Carbery, Julio M. Merino Vidal, Sebastian, 
10759   Matthias]
10760 * Updated translations (nn,cs,it,ko,sq,ms,az,hr,uk,sr,sr@Latn,sq,ta)
10761
10762 Overview of Changes from GLib 2.3.1 to GLib 2.3.2
10763 =================================================
10764
10765 * Add G_MAXSIZE. [Manish Singh]
10766 * Add g_rand_new_with_seed_array(), g_rand_set_seed_array(),
10767   implementing the init-by-array functionality of the 
10768   original mersenne twister. Add g_rand_copy(). Improve seeding. 
10769   [George Lebl]
10770 * Add a lowercase_name option to glib-mkenums. [Murray Cumming]
10771 * Add g_ptr_array_foreach(). [Matthias Clasen]
10772 * Add g_timer_continue(). [Tim-Philipp Müller]
10773 * Fix a threadsafety issue in mem chunks. [Matthias, Balazs Scheidler]
10774 * Fix g_filename_{to,from}_utf8() on Win32 and improve 
10775   g_file_test() there too [Hans Breuer] 
10776 * Add a boxed type for NULL-terminated string arrays.  [Matthias]
10777 * Add G_DEFINE_TYPE() plus variants to ease the constuction
10778   of GObject boilerplate code.  [Tim Janik]
10779 * Support & in password GECOS field [Matthias, Soeren Boll Overgaard]
10780 * Documentation improvements [Matthias, Manish]
10781 * Win32 build fixes [Hans]
10782 * Misc bug fixes [Damien Carbery, Matthias, Manish, Olivier Poncet, 
10783   Zack Rusin]
10784 * Updated translations (ar,de,fa,ga,mn,nn,no,sq)
10785
10786 Overview of Changes from GLib 2.3.0 to GLib-2.3.1
10787 =================================================
10788
10789 * Add glib/gi18n.h and glib/gi18n-lib.h for common
10790   gettext support, including a Q_() macro for translation
10791   with context [Matthias Clasen]
10792 * Add a more flexible G_FILENAME_ENCODING variable
10793   as a replacement for G_BROKEN_FILENAMES [Matthias]
10794 * Fix the return value g_main_context_iterate() for
10795   newly ready sources [Padraig O'Briain]
10796 * Handle Hangul composition for normalization [Noah Levitt]
10797 * Add G_{MIN,MAX,MAXU}INT{8,16,32}. [Mark Jones, Matthias]
10798 * Add G_GSIZE_FORMAT/G_SSIZE_FORMAT [Manish Singh]
10799 * Add G_STRFUNC as a portable wrapper for __func__ [Tim Janik]
10800 * Documentation improvements [Matthias]
10801 * GObject [Tim Janik]
10802  - Support '-' in g_signal_connect()/disconnect() names
10803    like 'swapped-signal'.
10804  - Add g_type_class_peek_static() and use to optimize
10805    g_object_new() for static types [Tim]
10806  - Allow setting construct-only properties from within
10807    init() implementations
10808  - Enforce readability/writeability in g_object_set/get()
10809 * Fix bug with g_ascii_strtod and multi-byte separator.
10810   [Behdad Esfahbod, Roozbeh Pournader]  
10811 * Misc bug fixes [Matthias, John Ehresman, Andrew Lanoix,
10812   Tor Lillqvist, Mark McLoughlin, Tim-Philipp Müller, Manish, 
10813   Morten Welinder]
10814 * Updated translations (ca,cs,da,es,fr,ja,nn,no,pt,ru)
10815
10816 Overview of Changes from GLib 2.2.x to GLib-2.3.0
10817 =================================================
10818
10819 * Replace Trio printf by gnulib vasnprintf [Matthias Clasen]
10820 * Update Unicode data to Unicode 4.0 [Noah Levitt]
10821 * Support XML-safe formatted output with 
10822   g_markup_[v]printf_escaped [Owen Taylor]
10823 * Add g_file_read_link to read symbolic links [Matthias]
10824 * Add g_unichar_get_mirror_char to obtain the 
10825   mirrored variant of a character [Noah]
10826 * Support for one-time initialization functions. 
10827   [Sebastian Wilhelmi]
10828 * Miscellaneous API additions: g_vasprintf
10829   g_string_chunk_insert_len, g_setenv, g_unsetenv [Matthias]
10830 * Docs improvements [Matthias]
10831 * Add support instance-private data on classed types
10832   [Mark McLoughlin, Tim Janik, Owen]
10833 * Optimize signal emissions [Soeren Sandmann, Tim]
10834 * Support a "default vtable" per interface [Tim]
10835 * Add support for properties on interfaces [Owen, Tim]
10836 * Miscellaneous API additions: g_value_take_string(),
10837   g_value_take_param(), g_value_take_object(), 
10838   g_value_take_boxed(). [Matthias]
10839 * Win32 build fixes [Tor Lillqvist]
10840
10841 Overview of Changes from GLib 2.1.5 to GLib-2.2.0
10842 =================================================
10843
10844 * Fix a problem with g_thread_init() on 64-bit problems
10845   [Alceste Scalas, Sebastian Wilhelmi]
10846 * Add assembly implementations of byteswap macros
10847   for ia64 and x86_64. [Manish Singh]
10848 * IOChannel fixes for Win32 [Tor Lillqvist, Thorsten Maerz]
10849 * Updated translations (bg,ca,es,da,fi,lv,ru,sk)
10850
10851 Overview of Changes from GLib 2.1.4 to GLib-2.1.5
10852 =================================================
10853
10854 * Win32 bug fixes [Tor Lillqvist]
10855 * Various post-rewrite fixes for glib-gettext.m4 [Owen Taylor,
10856   Jody Goldberg, Kjartan Maraas, Johannes Stezenbach]
10857 * Ensure we have a GUINT64_FORMAT by pulling in Trio
10858   if necessary [Manish Singh]
10859 * Further Trio build fixes [Matthias Clasen, Owen]
10860 * Hack around gcc, libtool issues with -pthread [Owen]
10861 * Docs improvements [Matthias]
10862 * Bug and portability fixes 
10863 * Updated and new translations (bg,de,fi,fr,sq,fr)
10864
10865 Other contributors: Kai Poitschke, Morten Welinder
10866
10867 Overview of Changes from GLib 2.1.3 to GLib-2.1.4
10868 =================================================
10869
10870 * autoconf changes to make it possible to cross compile
10871   GLib. [Owen Taylor, Dan Kegel, Amy Lin, Dimi Shahbaz, 
10872   Johannes Stezenbach]
10873 * Use libintl when it has bind_textdomain_codeset() and
10874   GLib doesn't. [Owen]
10875 * Improve generation of pseudo-random integers [Morten Welinder, 
10876   Sebastian Wilhelmi]
10877 * Avoid literal UTF-8 in favor of octal escapes [Owen, Tomas Ogren]
10878 * Cleanup include order [Sven Neumann]
10879 * autoconf cleanups and bug fixes [Daniel, Matthias Clasen, Owen]
10880 * Doc fixes and additions [Matthias]
10881
10882 Other contributors: James M. Cape, Frederic Crozat, Martin Gansser,
10883   Phuc LeHong, Manish Singh, Joshua Weage, Morten Welinder
10884
10885 Overview of Changes from GLib 2.0.x to GLib-2.1.x
10886 =================================================
10887
10888 * Add copy of the Trio library to build and use for printf() when 
10889   system printf isn't good enough. Add g_printf()/etc. [Matthias Clasen]
10890 * Add g_str_has_suffix()/g_str_has_prefix() [Alex Larsson]
10891 * Add g_markup_parse_context_get_element() [Matthias]
10892 * Add g_utf8_strreverse [Matthias]
10893 * Add g_ascii_strtoull() [Tim Janik]
10894 * Support scanning of 64-bit values with GScanner [Tim]
10895 * Add g_set/get_application_name() [Havoc Pennington]
10896 * Add G_LIKELY()/G_UNLIKELY() macros for hinting branch probabilities. 
10897   Use for g_return_if_fail(). [Matthias Clasen]
10898 * Add G_GNUC_DEPRECATED macro [Tom Tromey]
10899 * Improve the seeding algorithm of GRandom to avoid problems
10900   with certain pathological seeds. Support G_RANDOM_VERSION=2.0
10901   environment variable. [Sebastian Wilhelmi]
10902 * Improve thread configure checks, use -pthread where applicable
10903   [Sebastian]
10904 * Improve handlng of thread priorities [Sebastian]
10905 * Fix up parameter names that might shadow functions from
10906   system headers [Soeren Sandmann]
10907 * Clean up usage of deprecated functions [Manish Singh]
10908 * Docs fixes and improvements. In particular, include "Since" information.
10909   [Matthias, Soeren, Martin Schulze, Daryll Strauss, Bill Janssen, 
10910   Owen Taylor, Morten Welinder]. 
10911
10912 Overview of Changes in GLib 2.0.7
10913 =================================
10914
10915 * Fix C++ warnings in gtype.h [Dom Lachowicz]
10916 * Fix g_type_fundamental_next() [Tim Janik]
10917 * Fix various missing includes of config.h [Morten Welinder]
10918 * Handle main loop initialization before g_thread_init [Sebastian Wilhelmi]
10919 * Various 64-bit fixes [Manish Singh]
10920 * Fix GPoll on Win32 [Tor Lillqvist, Herman Bloggs]
10921 * Fix bug with buffering on UTF-8 IOChannels [Daniel Elstner]
10922 * Misc bug and build fixes [Soren Andersen, Gustavo Carneiro, Tor,
10923      Tim, Havoc Pennington,  Matthias Clasen, Sebastian Rittau,
10924      Masahiro Sakai, Arvind Samptur, HideToshi Tajima, Owen Taylor]
10925 * Updated and new translations (be,cs,de,*fa,it,lv,pt_BR,tr)
10926
10927 Overview of Changes in GLib 2.0.6
10928 =================================
10929
10930 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
10931 * Clean up debug spew from GObject [Anders Carlsson]
10932 * Compiler warning fixes [David L. Cooper II]
10933 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
10934 * Fixes for --disable-debug [Sebastian Wilhelmi]
10935 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
10936   Rajkumar Sivasamy, Laurent Vivier]
10937 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
10938   Sebastian Rittau, Linus Welleij]
10939 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
10940 * Updated translations (bg,ko,vi)
10941
10942 Overview of Changes in GLib 2.0.5
10943 =================================
10944
10945 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
10946 * Clean up debug spew from GObject [Anders Carlsson]
10947 * Compiler warning fixes [David L. Cooper II]
10948 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
10949 * Fixes for --disable-debug [Sebastian Wilhelmi]
10950 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
10951   Rajkumar Sivasamy, Laurent Vivier]
10952 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
10953   Sebastian Rittau, Linus Welleij]
10954 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
10955 * Updated translations (bg,ko,vi)
10956
10957 Overview of Changes in GLib 2.0.4
10958 =================================
10959
10960 * Fix some 64-bit problems. (George Lebl, David L. Cooper II)
10961 * Add note about Tru64 iconv to INSTALL. (Manuel Op de Coul)
10962 * Fix problem with timouts > MAXINT. (Tim Janik, Owen Taylor)
10963 * Updated translations (ca,es,fr,ja,gl,ms,nl,pl,pt,ru)
10964
10965 Overview of Changes in GLib 2.0.3
10966 =================================
10967
10968 * Handle sorting 0-length arrays (Ron Arts)
10969 * Threading fixes (Sebastian Wilhelmi)
10970 * Portability fixes (Miroslaw Dobrzanski-Neumann, Jacob Berkman, Gareth Pierce, 
10971   Sebastian, Qingjiang Yuan)
10972 * Various fixes for glib-2.0.m4. (Jim Gettys, others.)
10973 * Locate right glib-genmarshal when cross-compiling. (Mitch Natterer)
10974 * Win32 fixes (Tor Lillqvist)
10975 * Try to fix g_get_charset() related segfaults. (Owen)
10976 * Fixes for gettext detection. (Dan Winship, HideToshi Tajima, Boyd Lynn Gerber,
10977   Andrew P. Lentvorski, Jr.)
10978 * Fix g_scanner_unexp_token() (Tim Janik, Sven Neumann)
10979 * g_markup fixes. (Matthias Clasen.)
10980 * Bug fixes and cleanups (Daniel Elstner, Matthias, Laszlo Peter, Morten Welinder,
10981   Wayne Schuller)
10982
10983 Overview of Changes in GLib 2.0.1
10984 =================================
10985
10986 * Portability fixes for Sun's Forte compiler [Erwann Chenede]
10987 * Performance improvements for GObject parameter lookup, 
10988   g_filename_to/from_utf8() [Alex Larsson]
10989 * Actually check interface prerequisites [Matthias Clasen,
10990   Miroslaw Dobrzanski-Neumann]
10991 * Fix problem with glib-mkenums taking huge amounts of stack. [Owen Taylor]
10992 * Fix g_signal_handlers_disconnect_by_func() for C++ [Damien Sandras]
10993 * Fixes for g_log() and threading.
10994   [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, Tim Janik]
10995 * Make g_print(), g_printerr(), g_warning(), etc, convert from
10996   UTF-8 to the encoding of the locale [Sebastian Wilhelmi, Tim]
10997 * Fixes for GIOChannel on windows. [Tor Lillqvist]
10998 * Fix gsize/gint mismatches in giochannel.c [Miroslaw Dobrzanski-Neumann]
10999 * Fix file descriptor leak in g_file_get_contents() [Matthias]
11000 * Workaround iconv() problems on older Solaris [Lauri Alanko]
11001 * Fix warnings with gcc-3.1 about asm const [Cody Russel]
11002 * Minor bug fixes.
11003
11004 Other contributors: Hans Breuer, LEE Sau Dan, Sven Neumann, Salmaso Raffaele,
11005   Akira Tagoh, Morten Welinder
11006
11007
11008 Overview of Changes in GLib 2.0.0
11009 =================================
11010
11011 * Thread portability fixes [Sebastian Wilhelmi]
11012 * Documentation updates [Owen Taylor]
11013 * Make g_strerror(), g_strsignal() properly return UTF-8,
11014   call bind_text_domain_codeset() so that error strings
11015   are in UTF-8 as well. [Owen, Tor Lillqvist]
11016
11017 Overview of Changes in GLib 2.0.0 rc1:
11018 ======================================
11019
11020 * Win32 fixes [Tor Lillqvist]
11021 * Portability fixes [Finlay Dobbie, Miroslaw Dobrzanski-Neumann]
11022 * Fix up g_date_strftime [Daniel Elstner]
11023 * Add some structure padding [Tim Janik]
11024 * Make g_get_homedir() prefer the users home directory to $HOME
11025
11026 Other contributors: Matthias Clasen, Paolo Maggi, Christian Rose
11027
11028 Overview of Changes in GLib 1.3.15:
11029 ===================================
11030
11031 * Speed up marshalers by using private access to GValue 
11032   [Anders Carlsson, Tim Janik]
11033 * Reduce GValue to 2 elements [Tim]
11034 * Add G_DEBUG environment variable, G_DEBUG=fatal_warnings [Matthias Clasen]
11035 * Fixes for AIX compilation [Miroslaw Dobrzanski-Neumann]
11036 * Add padding to various structures [Owen Taylor, Tim]
11037 * Win32 fixes [Tor Lillqvist]
11038
11039 Other contributors: James Henstridge, Ryan Lovett, Morten Welinder,
11040   Daniel Elstner
11041
11042 Overview of Changes in GLib 1.3.14:
11043 ===================================
11044
11045 * Register value transformations for gint64, guint64 [Andy Wingo]
11046 * Build with large-file support [Sven Neumann, Owen Taylor]
11047 * Fix handling of hostnames in URI's [Darin Adler]
11048 * Main loop bug fixes [Havoc Pennington, Owen]
11049 * Doc fixes and improvements [Manish Singh, Tim Janik]
11050 * Support ' as attribute delimiters in GMarkup [Matthias Clasen]
11051 * Win32 fixes [Hans Breuer, Tor Lillqvist]
11052 * Threading bug and build fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann]
11053 * Miscellaneous bug fixes
11054
11055 Other contributors: Matthias Clasen, James Henstridge, Mitch Natterer, 
11056   Morten Welinder.
11057
11058 Overview of Changes in GLib 1.3.13:
11059 ===================================
11060
11061 * Fix g_filename_to/from_uri for Win32 [Tor Lillqvist, Darin Adler]
11062 * Miscellaneous win32 fixes [Tor, Hans Breuer]
11063 * Fix thread options for gcc on AIX [Jerome Zago, Sebastian Wilhelmi]
11064 * Documentation improvements [Ron Steinke, Matthias, Sebastian]
11065 * Cache iconv converters as used by g_convert() [Jeffrey Stedfast]
11066 * Bug fixes [Sven Neumann, Owen Taylor, Matthias Clasen, Jeffrey,
11067   Laszlo Peter, Havoc Pennington, Tim Janik]
11068
11069 Overview of Changes in GLib 1.3.12:
11070 ===================================
11071
11072 * Implement closure chaining, fixing up API (Tim Janik)
11073 * Closure chaining test case (James Henstridge)
11074 * Make GType long not int where both are equal width (Tim)
11075 * Win32 fixes and improvements (Hans Breuer, Tor Lillqvist)
11076 * Fixes for NetBSD. (Dan Winship)
11077 * Use snprintf() for g_printf_string_upper_bound() where possible. (Matthias Clasen)
11078 * Save space for GBSearchArray (Tim Janik)
11079 * Documentation improvements. (Matthias, Sven Neumann, Havoc Pennington)
11080
11081 Other contributors: Darin Adler, Chris Blizzard, Anders Carlson, Daniel Elstner, Michael Meeks, 
11082   Mark McLoughlin, Dave Neary, Manish Singh, Owen Taylor, HideToshi Tajima, 
11083   Sebastian Wilhelmi.
11084
11085
11086 Overview of Changes in GLib 1.3.11:
11087 ===================================
11088
11089 * Win32 fixes [Hans Breuer, Tor Lillqvist]
11090 * Documentation improvements [Matthias Clasen]
11091 * Portable directory handling API [Hans]
11092 * Threading fixes [Sebastian Wilhelmi, Havoc Pennington]
11093 * Fix excess relocations in Unicode tables [Andrew Taylor]
11094 * Fix gpattern for UTF-8 [Matthias Clasen]
11095 * Support overriding class closures [Tim Janik]
11096 * Support for derivation from G_TYPE_POINTER [Owen Taylor]
11097 * Hide pointers to type information inside GType to reduce locking
11098   [Alex Larsson, Tim]
11099 * Adds check for direct inclusion of gobject/*.h [Owen]
11100 * GObject API cleanups [Tim]
11101
11102 Other contributors: Darin Adler, Jacob Berkman, Daniel Egger, Eric Lemings, 
11103   Michael Meeks, Mark McLoughlin, Arkadiusz Miskiewicz, Dan Winship
11104
11105
11106 Overview of Changes in GLib 1.3.10:
11107 ===================================
11108
11109 * Many Win32 fixes and improvements [Tor Lillqvist]
11110 * Documentation improvements [Matthias Clasen]
11111 * g_string_printfa() renamed to g_string_append_printf()
11112 * Use libcharset from libiconv to implement charset detection
11113   more portably. [Owen Taylor, Hidetoshi Tajima]
11114 * Add 64 bit type support to GObject [Joshua Pritikin, Mathieu Lacage, Owen]
11115 * Make support for 64 bit integers a requirement [Joshua]
11116 * GPattern improvements [Tim Janik, Matthias]
11117 * Locale independent g_ascii_strtod / g_ascii_dtostr [Alex Larsson]
11118 * Many bug fixes and minor tweaks.
11119
11120 Other Contributors: Darin Adler, Jakub Jelinek, James Antill, Andrew Taylor,
11121   Ben Gertzfield, Elliot Lee, Manish Singh, Abel Cheung, Laszlo Peter,
11122   Sven Neumann, George Lebl, Raja Harinath, Sebastian Wilhelmi,
11123   Jacob Berkman
11124
11125
11126 Overview of Changes in GLib 1.3.9:
11127 ==================================
11128
11129 * Fixes for comparison of threads [Sebastian Wilhelmi]
11130 * Use vasprintf() when possible for g_strdup_printf [Matthias Clasen]
11131 * Win32 fixes [Tor Lillqvist, Hans Breuer]
11132 * Add a len argument to g_ascii_strup/strdown
11133 * Bug, portability fixes, cleanups.
11134
11135 Other Contributors: Darin Adler, Katsuhiro Okuno, Joshua N. Pritikin
11136
11137
11138 Overview of Changes in GLib 1.3.8:
11139 ==================================
11140
11141 * Documentation updates [Owen]
11142 * Made GType interfaces overridable in derived types
11143 * Many win32 fixes [Tor Lillqvist]
11144 * Miscellaneous cleanups and fixes
11145
11146 Other contributors:
11147   Darin Adler, Matthias Clasen, Ron Steinke, Hans Breuer, Alex Larsson
11148
11149
11150 Overview of Changes in GLib 1.3.7:
11151 ==================================
11152
11153 * Integrate GClosure support into the main loop [Owen Taylor]
11154 * More GSignal convenience functions (macros) [Sven Neumann, Tim Janik]
11155 * Introduced weak references for GObject [James Henstridge, Sven, Tim] 
11156 * Minor hash table optimizations
11157 * Main loop and threading improvements [Sebastian Wilhelmi]
11158 * Added g_ascii_* functions to be used for locale insensitive UTF-8
11159   compliant code instead of old string functions  [Darin Adler, Alex Larsson]
11160 * Add functions for Unicode case-conversion, normalization, and 
11161   collation [Owen]* GString improvements [Owen]
11162 * Reworked the GIOChannel code [Hidetoshi Tajima, Ron Steinke]
11163 * Removed glib-config-2.0 in favour of pkgconfig [Sebastian]
11164 * Make code 64bit clean [Mark Murnane]
11165 * More G_CONST_RETURN fixes
11166 * Many improvements to the win32 code [Tor Lillqvist, Hans Breuer]
11167 * Miscellaneous bug and API fixes
11168
11169 Other contributors:
11170   Michael Natterer, Christopher James Lahey, Padraig O'Briain,
11171   Matthias Clasen, Josh Pritikin, Steve Baker, Cesar Rincon, Garry R. Osgood,
11172   Michael Meeks, Laszlo Peter,  Martin Baulig, Kjartan Maraas, Andrew Lanoix,
11173   Peter Williams
11174
11175
11176 Overview of Changes in GLib 1.3.6:
11177 ==================================
11178
11179 * Threads have a "return value" from g_thread_join
11180 * Removed ability to adjust thread stack size
11181 * Prefix warnings with progname/PID by default, change toggle for this to 
11182   be an env variable G_MESSAGES_PREFIXED not a compile-time option
11183 * GMarkup speedups
11184 * GDate const, convenience fixups
11185 * Include test cases that headers are compilable by C++ compiler
11186 * Add ability to spawn processes with argv[0] != executable path.
11187 * g_strstr_len, g_strrstr, g_strrstr_len
11188 * Add length argument to g_utf8_strchr and g_utf8_strrchr.
11189 * Misc bug fixes
11190
11191
11192 Overview of Changes in GLib 1.3.5:
11193 ==================================
11194
11195 * Added an installed glib-mkenums Perl program for parsing enumeration
11196   declarations from header files.
11197 * Mark some additional deprecated functions.
11198 * Bug and Portability fixes
11199
11200
11201 Overview of Changes in GLib 1.3.4:
11202 ==================================
11203
11204 * Efficiency improvements for GThreadPool
11205 * A few bug fixes
11206 * Build fixes
11207 * Documentation improvements
11208
11209
11210 Overview of Changes in GLib 1.3.3:
11211 ==================================
11212
11213 GLib:
11214
11215 * More user_data support in various functions.
11216 * Main loop API revamps to support per-thread main loops.
11217 * Unicode handling improvements.
11218 * Implemented debugging traps.
11219 * G_CONST_RETURN specification all over the place.
11220 * Various new small utility functions.
11221 * Random number generator precision improvements.
11222 * New configure option --disable-mem-pools.
11223 * Many Win32 improvements.
11224 * Added g_try_malloc() friends varinats.
11225 * Many documentation improvements.
11226 * Many threading improvements, support for dynamic allocation
11227   of static mutexes.
11228 * GHookLIst API cleanups.
11229 * Improved format support of GDate parser.
11230 * String function speed improvements with new g_stpcpy().
11231 * Hashtable API additions.
11232 * New GPatternSpec for shell-style pattern matching (from GtkPatternSpec).
11233 * Optimizations, cleanups, bug fixes.
11234
11235 GObject:
11236
11237 * Added many convenience functions.
11238 * GClosure and GParamSpec use float/sink ref-counting scheme now.
11239 * Reworked property change notification.
11240 * Binary searchable array cleanups, so it's widely usable now.
11241 * Added static content keeping for some GValue types.
11242 * Support for statically scoped signal parameters.
11243 * Extinguished property trailer args in set/get interface.
11244 * Added support for abstract types.
11245 * G_CONST_RETURN specification all over the place.
11246 * Split parameter exchange functionality into value transforms
11247   and parameter conversions.
11248 * Added signal emission hooks and signal accumulators.
11249 * Added interface prerequisites to support is_a (interface, object)
11250   relations.
11251 * Implemented GValueArray.
11252 * New types, boxed: G_TYPE_VALUE, G_TYPE_CLOSURE, G_TYPE_GSTRING
11253   GParamSpecs: G_TYPE_PARAM_PARAM, G_TYPE_PARAM_POINTER, G_TYPE_PARAM_CLOSURE,
11254   G_TYPE_VALUE_ARRAY, G_TYPE_PARAM_UNICHAR, G_TYPE_PARAM_VALUE_ARRAY.
11255 * Varrags value collection improvements.
11256 * Implemented debugging traps.
11257 * Made things thread-safe.
11258 * Many documentation improvements.
11259 * Many cleanups, optimizations and bug fixes.
11260
11261
11262 Overview of Changes in GLib 1.3.2:
11263 ==================================
11264
11265 GLib:
11266
11267 * Win32 build improvements  [Tor]
11268 * Improvements to error reporting  
11269   (g_critical(), g_return_if_reached()) [Darin]
11270 * Add g_strlcpy/g_strlcat  [David Wheeler]
11271 * New IO channel implementation for Win32  [Tor] 
11272 * Make g_array_free, g_string_free return pointer to memory requested
11273   not to be freed.  [Darin]
11274 * Added GError based error reporting for thread functions.  [Sebastian]
11275 * Moved reference docs into GLib distribution. [Owen]
11276 * Added g_convert() for doing convenient character set conversions based
11277   on iconv. (GLib now requires libiconv or a native iconv.) [Havoc/Owen]
11278 * Various Unicode handling additions (g_ucs4_to_utf8, g_utf8_validate(),
11279   g_{locale,filename}_{to,from}_utf8)  [Robert/Havoc/Owen]
11280 * Portability fixes for threading.  [Sebastian]
11281 * Added convenient functions for launching new processes (g_spawn_*),
11282   and shell quoting/unquoting functions.  [Havoc]
11283 * Split glib.h into many headers.  [Sebastian]
11284 * Added a simple callback-based parser for XML-like files (GMarkup).  [Havoc]
11285 * Fixed confusions between comparison functions that return <0, 0, >0
11286   and equaility functions that return FALSE,TRUE.  [Sebastian]
11287 * Added safe/portable temporary file manipulation functions.  [Tor]
11288 * autoconf improvements.  [Raja]
11289 * Many documentation improvements.
11290 * Bug fixes.
11291
11292 GObject:
11293
11294 * Added boxed and pointer types.  [Tim/Jonathan]
11295 * Added callback abstraction (GClosure)  [Tim]
11296 * Added signal system (GSignal)  [Tim]
11297 * Make GTypePlugin an interface  [Tim]
11298 * Added GTypeModule - a simple GTypePlugin instantiation  [Owen]
11299 * Bug fixes.
11300
11301
11302 What's new in GLib 1.3.1:
11303 =========================
11304
11305 * New GObject library added including object system based on
11306   the GTK+ object system. 
11307 * Functions for getting the properties of Unicode characters, 
11308   computing the canonical decomposition and ordering combining
11309   characters aand manipulating UTF-8 string manipulation based
11310   on libunicode.
11311 * GString now properly handles embedded nuls.
11312 * Multiple fixes from the 1.2.x branch.
11313 * Upgrade to libtool 1.3.3
11314 * Full thread support (thread creation and destruction).
11315 * BeOS port, BeOS dynamic modules.
11316 * Many improvements to the Windows ports.
11317 * Improvements to the OS/2 port, OS/2 module support.
11318 * Double ended queue implementation.
11319 * GLib macros for printf() formatting, e.g. G_GULONG_FORMAT = "lu"
11320 * New configure option --enable-msg-prefix to prefix messages, warnings
11321   et ceteri with the program name and the process id.
11322 * New thread-safe random number generator Mersenne Twister.
11323 * g_strcompress() added, g_strescape() had a slight API change, and
11324   more tightly defined semantics.
11325 * the g_string(x) macro has been removed, #x may be used instead.
11326                                 
11327