dbus-glib is deprecated, please use GDBus in new GLib-based projects. dbus-glib 0.114 (UNRELEASED) ============================ ... dbus-glib 0.112 (2021-03-26) ============================ The “haunted teacup” release. dbus-glib version control is now hosted on freedesktop.org's Gitlab installation, and bug reports and feature requests have switched from Bugzilla bugs (indicated by "fd.o #nnn") to Gitlab issues ("dbus-glib#nnn") and merge requests ("dbus-glib!nnn"). See README and CONTRIBUTING.md for more details. Dependencies: • dbus 1.8 was already required, but is more strongly required now: the workarounds that were used to run continuous integration with dbus 1.6 on Ubuntu 14.04 'trusty' have been removed. (Note that dbus 1.8 has already reached end-of-life for security support, and newer dbus stable branches are strongly recommended.) • pkg-config 0.28 is required when building from git Enhancements: • Rewrite CONTRIBUTING.md document, based on Wayland's equivalent (Simon McVittie, with thanks to Ander Conselvan de Oliveira, Bryce Harrington, Eric Engestrom, Pekka Paalanen and Daniel Stone for their contributions to the equivalent file in Wayland) • A generated ChangeLog file, which made up a significant proportion of the size of source tarball releases, is no longer included. Please refer to the git repository at https://gitlab.freedesktop.org/dbus/dbus-glib for detailed change history. (Simon McVittie) • Improve man page (dbus-glib!1, Alan Coopersmith) • Add test coverage for fd.o#80557 (dbus-glib#1, Simon McVittie) • Use more modern GLib assertions in unit tests (dbus-glib#16, dbus-glib!3, dbus-glib!4; Simon McVittie) • Improve continuous integration to be run by GitLab in addition to Travis-CI (Simon McVittie) • Add clearer license information using SPDX-License-Identifier (Simon McVittie) Fixes: • Allow glib-genmarshal to be overridden with `./configure GLIB_GENMARSHAL=/path/to/glib-genmarshal`, for cross-compilation (dbus-glib!2, Yann E. MORIN) • Avoid a double-free in dbus-binding-tool for certain inputs, possibly involving nested introspection data structures (dbus-glib#9, Zhipeng Xie) • Report a better error for excessive recursion depth or unsupported data types (dbus-glib#1, Simon McVittie) • Map the 15 most-recently-added DBusGError members to their corresponding D-Bus error names (dbus-glib#1, Simon McVittie) • Mark all documented symbols as deprecated (Simon McVittie) • Fix unit test failures during distcheck by enabling assertions (Simon McVittie) • Fix a core dump during installed-tests by not attempting to close a shared DBusConnection (Simon McVittie) dbus-glib 0.110 (2018-01-29) ============================ The “sphere tank” release. Dependencies: • GLib 2.40 is required Enhancements: • The GLib main-loop glue, "dbus-gmain", is now available as a separate subproject (the dbus-gmain branch in dbus-glib's git repository) for embedding in larger projects like dbus-glib and dbus-python via the `git subtree` or `git submodule` commands. This removes dbus-python's dependency on the rest of dbus-glib. Fixes: • autogen.sh can now detect gtk-doc >= 1.26. • More files have per-file copyright information. dbus-glib 0.108 (2016-09-09) ============================ The “toxic chair” release. Fixes: • Use dbus-run-session instead of dbus-launch for tests. dbus-glib 0.106 (2016-01-14) ============================ The “crumbling vestige” release. Fixes: • Stop testing G_HAVE_INLINE, which ceased to work in GLib 2.47.2 and wasn't meant to be API anyway. Instead, rely on "static inline" doing the right thing. On pre-C99 compilers, this relies on defining inline to __inline, __inline__ or the empty string if the compiler requires it, which it has done since 2000. (fd.o #93513, Colin Watson) • Stop calling g_mem_profile() in the tests, which no longer does anything and caused the tests to fail by issuing a warning (Simon McVittie) • Slightly modernize build system, and remove a weird cross-directory dependency which was breaking distcheck (Simon McVittie) • Stop distributing generated marshallers in the tarball (Simon McVittie) dbus-glib 0.104 (2015-02-09) ============================ The “smoke and ashes” release. Deprecations: • Document the entire library as deprecated (Simon McVittie, Philip Withnall) Dependencies: • libdbus 1.8 is required • GLib 2.32 is required Enhancements: • The libdbus 1.8 dependency means we can now document that dbus_g_thread_init() is idempotent and thread-safe (fd.o #54770, Simon McVittie) • Use g_cclosure_marshal_generic for all marshalling (fd.o #64214, Simon McVittie) Fixes: • Allow timeouts to be migrated from one main context to another without an assertion failure (fd.o #30574, Mike Gorse) • Don't trip a libdbus fatal warning if a Unix fd or other unsupported type is encountered in a message (fd.o #80557, Alban Crequy) • Make the tests pass with newer GLib by not removing removed sources (fd.o #83530, Simon McVittie) • Fix some typos in the documentation (fd.o #45686, Jiří Klimeš) • Make the Autotools setup less awful (fd.o #58698; Rafał Mużyło, Simon McVittie) dbus-glib 0.102 (2014-02-12) ============================ The “I've come to the conclusion that Debian should choose Russ Allbery to be its new init system” release. [1] Enhancements: • Add dbus_g_method_invocation_get_connection (fd.o #55729, Dan Williams) • Add dbus_g_connection_open_private (fd.o #55730, Dan Williams) • Better regression tests (fd.o #23633, fd.o #40711, fd.o #41129, fd.o #51511, fd.o #68603; Simon McVittie, Dan Williams) • Get rid of more dead code (fd.o #40711, Simon McVittie) • dbus-binding-tool: check validity of names (fd.o #7909, Simon McVittie) Fixes: • dbus_g_value_build_g_variant: treat GValues containing (G_TYPE_STRING, NULL) or (G_TYPE_STRV, NULL) as empty string or empty array instead of asserting (fd.o #71811, Xavier Claessens) • Upload documentation correctly (Simon McVittie) • Fix under-linking (fd.o #68601, Simon McVittie) [1] credit: https://twitter.com/keybuk/status/433058371290157056 dbus-glib 0.100.2 (2013-02-25) ============================== The "I would prefer lengthier studies, and fewer explosions" release. This release is a respin of the 0.100.1 tarball to drop some old, broken versions of generated documentation files (fd.o #55830). There are no source changes. dbus-glib 0.100.1 (2013-02-15) ============================== Security: • Sebastian Krahmer discovered and published an authentication bypass vulnerability in pam_fprintd, caused by a bug in dbus-glib. It is possible that other users of dbus-glib can be exploited in the same way. CVE-2013-0292 has been allocated for this vulnerability. This vulnerability is fixed in dbus-glib version 0.100.1 by git commit 166978a. All users of dbus-glib should upgrade. (fd.o #60916; Colin Walters, Simon McVittie) dbus-glib 0.100 (2012-06-25) ============================ The "Flabbergasted Jerome" release. Enhancements: • Support building on Android with androgenizer (fd.o #42532, Derek Foreman) • Respect NOCONFIGURE=1 in autogen.sh (Colin Walters) Fixes: • Fix several GVariant reference leaks in dbus_g_value_parse_variant (fd.o #41125, Simon McVittie) • Don't crash if an error code is out of range for its domain or has a negative code (fd.o #40151; David Woodhouse, Simon McVittie) • Fix compilation with -Werror=format-security (Matthias Klose) • Don't crash if dbus_g_proxy_new_for_peer() is used to talk to the dbus-daemon (fd.o #41126, Simon McVittie) dbus-glib 0.98 (2011-09-30) =========================== The "undocumented feature" release. • Fix the documentation, a lot. We have nearly 100% coverage now. (fd.o #37793, smcv) • In specialized collection iterators, check that the type is correct; g_critical and return harmlessly, rather than crashing, if not (smcv) • If library users register specialized GTypes, warn if their vtables have missing callbacks which would cause accessors to crash (smcv) • Fix production of documentation out-of-tree with newer gtk-doc (smcv) • Simplify invoke_object_method() and OOM handling in dbus-gobject (fd.o #35767, smcv) dbus-glib 0.96 (2011-09-21) =========================== The "terminating at New Cross Gate" release. • Fix a regression in marshalling GObject instances as object paths, which broke NetworkManager (fd.o #37852, Debian #628890; Simon McVittie) • Fix crashes when sending a message when disconnected from D-Bus but still working through our backlog of incoming messages, similar to fd.o #12675 (fd.o #38406, Simon McVittie) • Cope more gracefully, with a critical warning instead of a memory leak, if programmer error causes G_VALUE_COLLECT to fail (fd.o #38406, NB#86280, NB#180486; Kimmo Hämäläinen, Christian Dywan, Simon McVittie) • Avoid an assertion failure when unregistering a proxy if GetNameOwner failed (fd.o #38408, NB#116862; Janne Karhunen, Simon McVittie) • Don't report various programmer errors as "out of memory"; raise suitable critical warnings instead, and don't leak memory (fd.o #35767, fd.o #35766; Simon McVittie) • If a remote process sends a wrong method call on the Properties interface, send back an error reply, instead of warning on stderr and not replying (fd.o #35766, Simon McVittie) • Show a warning if dbus_g_method_return fails to marshal something (fd.o #29884, NB#180486; Christian Dywan, Simon McVittie) • Remove remnants of i18n (fd.o #36428, Simon McVittie) • Remove dead code (NB#180486; Christian Dywan) dbus-glib 0.94 (2011-06-01) =========================== The "Norwegian Blue" release. Dependencies: * dbus 1.2.16 is required (dbus 1.4 is recommended) * GIO 2.26 (packaged with GLib) is required Fixes: * fd.o #10890: remove Doxygen support, to clarify that gtk-doc is the way to get dbus-glib documentation (Simon McVittie) * fd.o #22667: improve documentation (Will Thompson) * fd.o #22854: update libtool versioning (Simon McVittie) * fd.o #23616: document which DBusGProxy methods stop working on ::destroy, and improve precondition checks (Simon McVittie) * fd.o #26952: add infrastructure to upload tarballs and documentation (Simon McVittie) * fd.o #27193, Gentoo #254192: don't use ${SHELL} to run shell scripts (Simon McVittie) * fd.o #27598: allow signals and properties to be annotated (Christian Dywan, Simon McVittie) * fd.o #29884: improve error handling in various places (Christian Dywan) * fd.o #30171: check validity of more arguments, don't report "out of memory" or "should not have been reached" if an invalid string or boolean is given, and abandon broken containers more gracefully (Simon McVittie) * fd.o #30274: allow underscores in error names (Christian Dywan) * fd.o #32087: if an object is on more than one connection, emit signals on all of them; if it's unregistered, only unregister it from the requested connection (Simon McVittie) * fd.o #32351: fix memory leaks in dbus-binding-tool (Christian Dywan) * fd.o #33145, fd.o #37789: improve error output if dependencies are too old (Simon McVittie) * fd.o #33646: don't duplicate match rules (Alban Crequy) * fd.o #34282: fix linking order for modern ld (Robert Ancell) * fd.o #35115: fix ability to switch a DBusConnection from one GMainContext to another (Mike Gorse) * fd.o #35952: forbid a ReturnVal annotation after the first OUT , which had never worked correctly anyway (Simon McVittie) * fd.o #36216: remove false claim that we use Introspect() at runtime, and document more error cases (Simon McVittie) * fd.o #36428: remove unused support for translated messages (Simon McVittie) * fd.o #36793: don't corrupt internal data if a GObject is registered twice on the same (connection, path) tuple, and fix out-of-bounds reading (Simon McVittie) * fd.o #36811: fix multiple signal emissions if an object is removed from all of its locations then re-exported, and a memory leak if an exported object is disposed (Simon McVittie) * fd.o #37060: rebuild everything if gcov is enabled/disabled, or if gcc is upgraded while gcov is enabled (Simon McVittie) * fd.o #37062: fail to build if our assumptions about int sizes are not met, and remove useless variables detected by gcc 4.6 (Simon McVittie) * fd.o #37790: remove empty "tests" which don't test anything (Simon McVittie) * fd.o #37795: log the error message if object registration fails (Dan Williams) * fd.o #37812: delete temporary file if dbus-binding-tool fails (Simon McVittie) dbus-glib 0.92 (2010-11-10) =========================== Fixes: * check for GLib 2.26 correctly dbus-glib 0.90 (2010-11-07) =========================== Dependencies: * GLib 2.26 is required Enhancements: * Add DBusGObjectPath, DBusGSignature typedefs * Give specialized GArrays iteration/appending support * Test dbus_g_value_build_g_variant for various fixed arrays * Remove gcov decoder, which hasn't worked since dbus-glib left libdbus * replace remnants of gcov support with lcov.am from telepathy-glib * fd.o #30428: add dbus_g_value_parse_g_variant * dbus_g_type_specialized_map_append: document that the value contents are stolen Fixes: * Remove unused method attribute variables in introspect_interfaces * Dereference main loop once variant recursion test is done * Plug leak of expected_str in threaded server test * Free path string after emission in in statemachine server example * Always free method_c_name in dbus binding tool * Free looked up function name in dbus binding tool * Fix switching a connection's GMainContext * dbus_g_value_build_g_variant: cope with empty arrays, maps * Build test/ before its subdirs dbus-glib 0.88 (2010-08-12) =========================== First note, and most importantly, this fixes a security issue: https://bugzilla.redhat.com/show_bug.cgi?id=585394 Note that affected system services will need to be rebuilt (but not necessarily patched). Dependencies: * GLib 2.24 is required Security: * CVE-2010-1172: Respect property access flags for writing, allow disabling for reads Enhancements: * Allow duplicate object path registrations for different connections * fd.o #28715: Add dbus_g_value_build_g_variant() * Support DBUS_TYPE_G_SIGNATURE * fd.o #27958: dbus_g_error_domain_register: rewrite the documentation Other fixes: * Refer to dbus_g_connection_flush rather than the plain dbus call * core: don't pass malformed error interface to dbus (rh#581794) * Fix lookup of regular properties when shadow properties are used * Don't use the identifier "interface" in public headers * Use AC_CANONICAL_HOST, not _TARGET * Use EXEEXT so that we satisfy dependencies when cross-compiling * Fix linking of tests on Windows * Put the G_OS_WIN32 check where it can be defined. * add mising DBUS_TYPE_G_* to the doc * Bug 14579: remove pending call from hash table before cancelling it * Add various tests etc. to .gitignore dbus-glib 0.86 (2010-03-24) =========================== Enhancements: * [configure.ac] Use AM_SILENT_RULES if available * core: allow duplicate property names on GInterfaces * core: performance optimization for object info lookup * turn the gtk-doc documentation into buildable shape Fixes: * Fix hyphenated error codes * [dbus-gobject.c] Trivial compiler warning fixes * Free errors returned by method implementations dbus-glib 0.84 (2010-01-27) =========================== Enhancements: * Import dbus-bus-introspect.xml upstream * Bug 19623 - Add dbus_g_bus_get_private * Support duplicate object registrations * fd.o #20936: Update FSF address Fixes: * dbus-gvalue: set an error when demarshal_basic doesn't recognize type * Fix bad NAME in dbus-binding-tool man page * fd.o #25119: Don't leak DBusGMethodInvocation for no-reply calls dbus-glib 0.82 (2009-07-16) =========================== Enhancements: * Bug 20343 - Add a man page for dbus-binding-tool * Bug 14183 - Listen to NameOwnerChanged using arg0 matching * Bug 19927 - Use const for GError * param we're not modifying * Clean up some compilation warnings * Bug 21362 - Remove use of deprecated symbols * Bug 13908: make dbus_g_type_specialized_init() safe for library users to call * add --with-dbus-binding-tool option to use an external dbus-binding-tool * Bug 16776: teach dbus_g_method_return_error about DBUS_GERROR * Remove all sorts of libdbus cruft from configure.ac * dbus_g_type_specialized_init: make some effort at being thread-safe * fd.o #21219: implement unregistration of objects * fd.o #13908: silently initialize specialized types whenever required Fixes: * Bug 18294 - Be defensive about a possibly NULL property string * Bug 21753 - Correctly initialize GValues in dbus-binding-tool generated code * Use -fno-strict-aliasing by default * Add missing prototype for dbus_g_connection_unregister_g_object * Fix format-security warning * Bug 22244 - Only include , not individual headers * build: fix undefined macro: AM_PROG_LIBTOOL with recent libtool * fd.o#20884: dbus_g_proxy_manager_replace_name_owner: don't leave freed memory in the hash table if the name was the owner's first * fd.o #5688: don't assert when exported object is destroyed after D-Bus connection closes * Use g_strdup instead of strdup in dbus_g_method_get_sender * Bug 20879 - Use --skip-source argument for glib-genmarshal dbus-glib 0.80 (2009-02-02) =========================== Fixes: * Bug 19441: Don't send replies for messages explicitly not requesting one * Bug 19065 - handle nested nodes in dbus-binding-tool * Bug 19325 - parallel build fix * Bug 19259: Always use /etc/bash_completion.d * Bug 19647: Move test-types inside run-test to avoid dep on existing session bus * Fix linking order so -Wl,--as-needed works * Use the provided interface for org.freedesktop.DBus.Properties.GetAll call. D-Bus GLib Bindings 0.78 (04 Dec 2008) Thanks to Robert McQueen, Philip Van Hoof, David Zeuthen, Colin Walters, Dan Williams, Nick Welch, Tomas Pelka and others for their contributions. Reliability fixes: - #16114 [patch] wincaps-to-uscore property names for GetAll() - #16419: recursive variants demarshaling limits - #18573: service tracker race Other notable fixes and enhancements: - #17329: allow hash tables to contain complex types - #17798: add support for 'o', 'g' and 'as' in dictionaries - #16925: bash completion for dbus-send D-Bus GLib Bindings 0.75 (05 Jun 2008) == Thanks to Dan Williams, David Zeuthen, Kimmo Hämäläinen, Ross Burton, William Jon McCann, Colin Walters, Brian Cameron, Peter O'Gorman, Peter Kjellerstedt, Christian Persch, Rob Taylor and others for their contributions in this release. Critical fixes: - #15430: ABI now guaranteed frozen - #8607: Fix broken introspection XML - #16079: Return an error on unknown property Get - #10834: Fix error handling in dbus_g_proxy_end_call_internal Other notable fixes: - #11672: Fixes for /bin/sh as dash - #11675: Fixes for non-gcc compilers - #10668: Correctly detect path to dbus-daemon - #12849, #12857: Memory leak fixes - New function to specify default timeout for calls on proxy - Implement org.freedesktop.DBus.Properties.GetAll - Require DBus 1.1 D-Bus GLib Bindings 0.74 (27 Jun 2007) == - Init threading first to stop a warning from new GLib. - Remove the XML documentation support in configure - Fix typo in _dbus_gvalue_signals_error (#10837) (Thanks to Peter Kjellerstedt) - Update GLib requirement (Closes #10889). - Document dbus-gtype-specialized - Add simple test suite for peer objects. - Support peer-to-peer proxies. (Closes #10233). - Add dbus_connection_get_g_connection. - Stop compiler warnings (Closes #10374). - Handle dbus errors which are not name has no owner - Update abstract socket test from DBus, which now cross-compiles - Rename the error quark to be unique - Update AUTHORS D-Bus GLib Bindings 0.73 (13 Feb 2007) == - Allow passing of NULL to strv out arguments. (Patch due to Luiz Augusto von Dentz . Fixes bug #8795.) - Make uscore_to_wincaps return NULL when passed NULL. (Fixes bug #8318.) - Only respond to NameOwnerChanged if its one of our names. (Patch by Kimmo Hämäläinen . Fixes bug #8235.) - Fix dbus-binding-tool to generate headers usable from C++. (Thanks to Christian Persch . Fixes bug #6358.) - Only require --prefix for server side binding generation. (Fixes reopened bug #4185.) - Clarify documentation for dbus_g_method_get_sender. (Fixes #8832.) - Add new API for specifying the timeout in DBusGProxy calls. (Patch due to S. Nalliami . Fixes bug #9832.) - Don't check for libxml2 when expat not found. (Fixes bugs #9894 and #9000.) - Add configure flags --with-introspect-xml. (Fixes bug #9105) - Use dbus_threads_init_default() rather than using own threading primitives. (Fixes bug #9259.) - Reduce dependency to dbus version 0.93, error out if correct version not found. (Patch due to Luiz Augusto von Dentz . Fixes bug #8793.) - Allow dbus and dbus-glib to live in different prefixes. (Fixes bug #9384.) - Add pkg-config support for uninstalled use. (Fix due to Damien Carbery . Fixes bug #9769.) D-Bus GLib Bindings 0.72 (26 Oct 2006) == - Only use -Wfloat-equal if compiler supports it (Closes #7658. Thanks to Jens Granseuer for the patch). - Return NULL from g_return_val_if_fail in dbus_g_proxy_begin_call (Closes #4159.) - Add dbus-gidl.h to IGNORE_HFILES for doxygen docs - Update tools/Makefile.am for new dbus-binding-tool behaviour - Remove bashism in make-dbus-glib-error-enum.sh (Closes #6700). - Fix introspection when object has exported properties. (dbus-gobject:write_interface was completely broken) - Fix thanks to mccann@jhu.edu. (Closes #8607). - Require --prefix in dbus-binding-tool (Closes #4185). - Don't shadow index. Rename usage of index to index_. Thanks stdlib... (Closes #8353). - Fix small leak when marshal_table is destroyed (Closes #6870 with patch from Richard Hult ). - Fixes crash if disposing one DBusGProxy causes another for the same service to be unrefed in a destroyed callback. - Use modern AC_INIT, AM_INIT_AUTOMAKE - Clean generated run-with-tmp-session-bus.conf on make clean - Actually run unit tests and checks when doing make distcheck - Use TEST_CORE_SERVICE_BINARY path for core test service file - Use dbus-daemon --introspect to generate DBus service introspect xml - Add tests for new interfaces functionaility - Bump GLib dependency to 2.6 (Closes #4390). - Add gobject-2.0 to dbus-glib-1.pc.in - Puts all exposed services in the org.freedesktop.DBus.GLib namespace - Update COPYING and HACKING to be correct for dbus-glib - Move tests/glib to test/core - Rename configure.in to configure.ac for modernity - Fix memleak in lookup_or_register_specialized (Applies fix from Daniel d'Andrada Tenório de Carvalho, closing bug #7352). - Add an m4 directory and add gtk-doc.m4, which is installed in the tree by gtkdocize. - tools/Makefile.am: Add tools/session.conf to EXTRA_DIST so make check works from tarballs - Fix compilation with -Werror - Make test scripts run during out-of-tree compilation - Fix out-of-tree compilation - Replace doxygen with gtk-doc in INSTALL - Commit patch to switch to gtk-doc with gtype-specialized doc and - Updates from Marc-Andre Lureau , with minor cleanup. (Closes #7726.) D-Bus GLib Bindings 0.71 (24 July 2006) == - Correctly installs a few missing headers - Build was cleaned up a bit D-Bus GLib Bindings 0.70 (17 July 2006) == - First release after bindings split - dbus-binding-tool heeds org.freedesktop.DBus.GLib.ClientCSymbol C symbol name annotations when generating glib client bindings - DBusGProxy can now be inherited from - Support added for generating bindings to arrays that are represented as GPtrArrays rather than GArrays (ie size-variable things, such as strings, objects, structs, etc). - Modification of the existing specialised types to have N type parameters (rather than the current 1 or 2 for arrays and dictionaries respectively). You can then use this to get a glib type to represent any arbitrary D-Bus struct type using dbus_g_type_get_struct. The only implementation of these types is with GValueArrays as before, but it's now possible to store these in arrays, emit them in signals, etc. - New methodbus_g_connection_open provides a way to open connections to an arbitrary address - Various bugs and memory leaks fixed Sleep after starting the peer server, before starting the peer client. This fixes random failures due to the race.