Blame NEWS

Packit 130fc8
D-Bus Python Bindings 1.2.4 (2016-03-06)
Packit 130fc8
========================================
Packit 130fc8
Packit 130fc8
The “75,000 microchips” release.
Packit 130fc8
Packit 130fc8
Enhancements:
Packit 130fc8
Packit 130fc8
• Continous integration metadata for travis-ci.org is now available.
Packit 130fc8
  Similar to dbus, this is split into .travis.yml (Travis-specifics)
Packit 130fc8
  and tools/ci-build.sh (intended to be useful for any CI framework,
Packit 130fc8
  although it does include various workarounds for travis-ci oddities).
Packit 130fc8
  (Simon McVittie)
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
• Make dbus.version a tuple again, not a list, for consistent sorting.
Packit 130fc8
  This was a regression in 1.2.2. (Debian #816729, Simon McVittie)
Packit 130fc8
Packit 130fc8
• Use inspect.signature() instead of inspect.getargspec() on Python
Packit 130fc8
  versions that have it. inspect.getargspec() is deprecated in recent
Packit 130fc8
  Python 3 and seems to have disappeared from 3.6 nightly builds.
Packit 130fc8
  (Simon McVittie)
Packit 130fc8
Packit 130fc8
• Make the tests pass in "narrow" Python builds where unicode objects
Packit 130fc8
  are UTF-16, rather than the UCS-4 used in Linux distributions.
Packit 130fc8
  (fd.o #57140, Simon McVittie)
Packit 130fc8
Packit 130fc8
• Always include headers in a consistent order (Debian #749133, Simon McVittie)
Packit 130fc8
Packit 130fc8
• Include config.h in all C code that we compile. This is necessary
Packit 130fc8
  on platforms where it might contain something like "#define _GNU_SOURCE"
Packit 130fc8
  or "#define inline __inline".
Packit 130fc8
  (Simon McVittie)
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 1.2.2 (2016-02-22)
Packit 130fc8
========================================
Packit 130fc8
Packit 130fc8
The “mind fray” release.
Packit 130fc8
Packit 130fc8
Versioning changes:
Packit 130fc8
Packit 130fc8
• dbus-python releases now have an even micro version (1.2.0, 1.2.2),
Packit 130fc8
  and snapshots from git have an odd micro version (1.2.1).
Packit 130fc8
Packit 130fc8
Dependencies:
Packit 130fc8
Packit 130fc8
• Building from git (but not from tarballs) now requires
Packit 130fc8
  macros from the GNU Autoconf Archive, for example the autoconf-archive
Packit 130fc8
  package in Debian or Fedora derivatives.
Packit 130fc8
Packit 130fc8
• Building from git (but not from tarballs) now requires Automake 1.13
Packit 130fc8
  or later.
Packit 130fc8
Packit 130fc8
• The automated tests and some examples now require PyGI (the gi module),
Packit 130fc8
  not PyGObject 2 (the deprecated glib and gobject modules).
Packit 130fc8
Packit 130fc8
Enhancements:
Packit 130fc8
Packit 130fc8
• There is now a setuptools setup.py, allowing dbus-python to be installed
Packit 130fc8
  into a virtualenv using pip from a standard Automake source release. This
Packit 130fc8
  requires pre-existing system-wide installations of the normal build
Packit 130fc8
  dependencies (pkg-config, libdbus, dbus-glib, a C compiler) and has
Packit 130fc8
  some limitations. For system-wide installations and development,
Packit 130fc8
  please use the Autoconf/Automake build system directly.
Packit 130fc8
  (fd.o #55439; Simon McVittie)
Packit 130fc8
Packit 130fc8
• dbus-python now uses the common compiler warnings from AX_COMPILER_FLAGS
Packit 130fc8
  (Simon McVittie)
Packit 130fc8
Packit 130fc8
• The automated tests can now be installed as GNOME-style "installed tests",
Packit 130fc8
  and should be somewhat more reliable (Simon McVittie)
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
• ``from dbus.service import *`` now imports FallbackObject
Packit 130fc8
  (fd.o #85720; Ben Longbons)
Packit 130fc8
Packit 130fc8
• The GConf-related examples work again (fd.o #85720; Ben Longbons)
Packit 130fc8
Packit 130fc8
• Consistently make examples executable, and install them all
Packit 130fc8
  (fd.o #85720; Ben Longbons)
Packit 130fc8
Packit 130fc8
• Search PATH for an appropriately-versioned pythonX.Y-config, or as a last
Packit 130fc8
  resort python-config, if there isn't a ${PYTHON}-config in the
Packit 130fc8
  same directory as ${PYTHON} (fd.o #92085; Yamashita, Yuu)
Packit 130fc8
Packit 130fc8
• Add support for the Automake 1.13 parallel test driver (Simon McVittie)
Packit 130fc8
Packit 130fc8
• Skip building API documentation if "import epydoc" fails (Simon McVittie)
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 1.2.0 (2013-05-07)
Packit 130fc8
========================================
Packit 130fc8
Packit 130fc8
The "compile like it's 1998" release.
Packit 130fc8
Packit 130fc8
Dependencies:
Packit 130fc8
Packit 130fc8
• libdbus 1.6 or later is now required.
Packit 130fc8
Packit 130fc8
Enhancements:
Packit 130fc8
Packit 130fc8
• Unicode Corrigendum 9: when used with a suitable version of libdbus
Packit 130fc8
  (1.6.10 or later, or 1.7.2 or later), noncharacters in strings are
Packit 130fc8
  now accepted
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
• Support DBusException('something with non—ASCII') under Python 2
Packit 130fc8
  (Michael Vogt, smcv; fd.o #55899)
Packit 130fc8
Packit 130fc8
• Correct some misleading wording in COPYING which was written under the
Packit 130fc8
  assumption that libdbus could actually be relicensed to MIT/X11
Packit 130fc8
  (Thiago Macieira)
Packit 130fc8
Packit 130fc8
• Avoid variable-length arrays, because MSVC++ is still stuck in 1998
Packit 130fc8
  (based on patches from Christoph Höger, fd.o #51725)
Packit 130fc8
Packit 130fc8
• Remove unnecessary uses of stdint.h (fd.o #51725)
Packit 130fc8
Packit 130fc8
• Add support for Unix compilers not supporting 'inline', for completeness
Packit 130fc8
Packit 130fc8
• Use GObject.__class__ instead of GObjectMeta, which can no longer be
Packit 130fc8
  imported from gi.repository.GObject in pygobject 3.8
Packit 130fc8
Packit 130fc8
• Fix autoreconfiscation on Automake 1.13 (Marko Lindqvist, fd.o #59006)
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 1.1.1 (2012-06-25)
Packit 130fc8
========================================
Packit 130fc8
Packit 130fc8
The "Lemonade Sky" release.
Packit 130fc8
Packit 130fc8
Dependencies:
Packit 130fc8
Packit 130fc8
• libdbus 1.6 or later is now recommended. It is not strictly required yet.
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
• Validate UTF-8 according to the rules libdbus uses, falling back to our
Packit 130fc8
  own (inefficient) implementation if not compiled against dbus >= 1.6
Packit 130fc8
  (fd.o #40817)
Packit 130fc8
Packit 130fc8
• Under Python 3, in the absence of introspection or signature='...',
Packit 130fc8
  pass dbus.ObjectPath or dbus.Signature arguments with the obvious
Packit 130fc8
  signature 'o' or 'g', not 's'. This previously only worked in Python 2.
Packit 130fc8
  (fd.o #50740)
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 1.1.0 (2012-05-09)
Packit 130fc8
========================================
Packit 130fc8
Packit 130fc8
The “eaten by spiders” release.
Packit 130fc8
Packit 130fc8
Deprecations:
Packit 130fc8
Packit 130fc8
• dbus.gobject_service is deprecated. Use dbus.gi_service and PyGI in new code.
Packit 130fc8
Packit 130fc8
API changes:
Packit 130fc8
Packit 130fc8
• dbus.gobject_service works in legacy PyGObject 2 applications again,
Packit 130fc8
  like it did before 1.0. The down side is that it doesn't work in all PyGI
Packit 130fc8
  applications any more, unlike 1.0. In PyGI applications, depend on
Packit 130fc8
  dbus-python >= 1.1 and use dbus.gi_service instead - its API is the same.
Packit 130fc8
  (fd.o #48904, Debian #670516)
Packit 130fc8
Packit 130fc8
• dbus.gobject_service has been removed from Python 3 builds altogether.
Packit 130fc8
Packit 130fc8
Enhancements:
Packit 130fc8
Packit 130fc8
• Use DBusBasicValue from libdbus 1.5, if available, rather than reinventing it
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
• Put sockets for the regression tests in /tmp, not the builddir, fixing
Packit 130fc8
  test failures in a really long builddir (fd.o #46747)
Packit 130fc8
Packit 130fc8
• Fix a reference leak in dbus_py_variant_level_set (fd.o #47108)
Packit 130fc8
Packit 130fc8
• Modify AM_CHECK_PYTHON_HEADERS so the "another way" works with Python 3
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 1.0.0 (2012-01-24)
Packit 130fc8
========================================
Packit 130fc8
Packit 130fc8
The "never trust a .0 release?" release.
Packit 130fc8
Packit 130fc8
Dependencies:
Packit 130fc8
Packit 130fc8
* libdbus 1.4 or later is now required.
Packit 130fc8
Packit 130fc8
* Python 2.6 or later is now required. If Python 3 is used, it must be
Packit 130fc8
  version 3.2 or later.
Packit 130fc8
Packit 130fc8
* GNU make (or, at your own risk, another make with the GNU $(patsubst)
Packit 130fc8
  extension) is now required.
Packit 130fc8
Packit 130fc8
API changes:
Packit 130fc8
Packit 130fc8
* dbus_bindings, which was never meant to be public API and has been
Packit 130fc8
  deprecated for nearly 5 years, has finally been removed.
Packit 130fc8
Packit 130fc8
* The repr() of every dbus-python object is now unicode.
Packit 130fc8
Packit 130fc8
* The Python 3 API is not the same as the Python 2 API; see PY3PORT.rst
Packit 130fc8
  for details.
Packit 130fc8
Packit 130fc8
• dbus.gobject_service uses PyGI, not PyGObject. (This was not meant to be
Packit 130fc8
  an incompatible change, but unfortunately, it was. It was reverted in 1.1.0.)
Packit 130fc8
Packit 130fc8
Enhancements:
Packit 130fc8
Packit 130fc8
* Python 3 compatibility (fd.o #26420, Barry Warsaw)
Packit 130fc8
Packit 130fc8
* MethodCallMessage and SignalMessage now have a more useful repr()
Packit 130fc8
  (Barry Warsaw)
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
* OOM while appending a unicode object to a message no longer leaks a string
Packit 130fc8
  (Barry Warsaw)
Packit 130fc8
Packit 130fc8
* If libdbus somehow gives us invalid UTF-8, don't crash (Barry Warsaw)
Packit 130fc8
Packit 130fc8
* Fix rst2html failure in non-UTF-8 locales (Alexandre Rostovtsev)
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.84.0 (2011-05-25)
Packit 130fc8
=========================================
Packit 130fc8
Packit 130fc8
The "Comrade Bill Bartram's Egalitarian Anti-Imperialist Soviet Stout" release.
Packit 130fc8
Packit 130fc8
Enhancements:
Packit 130fc8
Packit 130fc8
* fd.o #30812: add the UnixFd type, and support Unix fd passing if
Packit 130fc8
  compiled against a new enough libdbus (Elvis Pfützenreuter)
Packit 130fc8
Packit 130fc8
* fd.o #34342: add Connection.set_allow_anonymous(bool) (Scott Tsai)
Packit 130fc8
Packit 130fc8
* fd.o #21017: add configure arguments PYTHON_INCLUDES and PYTHON_LIBS which
Packit 130fc8
  can be used to override $PYTHON-config (Simon McVittie, based on a patch from
Packit 130fc8
  Robert Schwebel)
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
* fd.o #35626: clear ProxyObject's pending introspection queue after
Packit 130fc8
  execution (Scott Tsai)
Packit 130fc8
Packit 130fc8
* fd.o #22560: remove duplicate code from example-async-client (Simon McVittie)
Packit 130fc8
Packit 130fc8
* fd.o #36206: allow signature='x' among ProxyObject method arguments
Packit 130fc8
  (Simon McVittie)
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.83.2 (2010-12-02)
Packit 130fc8
=========================================
Packit 130fc8
Packit 130fc8
Dependencies:
Packit 130fc8
Packit 130fc8
* libdbus 1.2 is still supported, but libdbus >= 1.4 is recommended.
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
* Make BusConnection.list_activatable_names actually call ListActivatableNames,
Packit 130fc8
  not ListNames (Johan Sandelin)
Packit 130fc8
Packit 130fc8
* Don't override CFLAGS when adding compiler warnings
Packit 130fc8
  (Louis-Francis Ratté-Boulianne)
Packit 130fc8
Packit 130fc8
* Fix compilation on platforms where Py_ssize_t is larger than int, like x86-64
Packit 130fc8
  (Elvis Pfützenreuter)
Packit 130fc8
Packit 130fc8
* fd.o #21831: deserialize empty byte arrays with byte_arrays=True as
Packit 130fc8
  ByteArray(''), not ByteArray('None') (Simon McVittie)
Packit 130fc8
Packit 130fc8
* fd.o #23278, #25105: fix crashes when trying to append more struct entries
Packit 130fc8
  than the signature allows with libdbus 1.4 (Simon McVittie)
Packit 130fc8
Packit 130fc8
* fd.o #23831: fix crashes when an embedded Python interpreter imports dbus,
Packit 130fc8
  is finalized, is re-initialized, and re-imports dbus (Simon McVittie)
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.83.1 (2010-02-18)
Packit 130fc8
=========================================
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
* fd.o #21172: avoid some deprecation warnings in Python 2.6
Packit 130fc8
Packit 130fc8
* fd.o #15013: add dbus.lowlevel.MESSAGE_TYPE_SIGNAL etc., for those who care
Packit 130fc8
  about message types at a low level
Packit 130fc8
Packit 130fc8
* When removing signal matches, clean up internal state, avoiding a memory
Packit 130fc8
  leak in long-lived Python processes that connect to signals from arbitrarily
Packit 130fc8
  many object paths (fd.o #17551, thanks to Marco Pesenti Gritti)
Packit 130fc8
Packit 130fc8
* When setting the sender of a message, allow it to be org.freedesktop.DBus
Packit 130fc8
  so you can implement a D-Bus daemon in pure Python (patch from Huang Peng)
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.83.0 (2008-07-23)
Packit 130fc8
=========================================
Packit 130fc8
Packit 130fc8
Features:
Packit 130fc8
Packit 130fc8
* Add bindings for DBusServer (thanks to Mathias Hasselmann, Huang Peng;
Packit 130fc8
  fd.o #14322, #15514).
Packit 130fc8
Packit 130fc8
* Omit the service's traceback from certain D-Bus errors: specifically, those
Packit 130fc8
  that were probably deliberately raised as part of an API. Subclasses
Packit 130fc8
  of DBusException that indicate programmer error can turn the traceback
Packit 130fc8
  back on if it seems likely to be useful.
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
* Don't emit spurious Error messages if libdbus gives object-path handlers
Packit 130fc8
  a message that isn't a method call (most likely because of binding to a
Packit 130fc8
  locally emitted signal, as in fd.o #14199).
Packit 130fc8
Packit 130fc8
* Make multiple filters added by Connection.add_message_filter work
Packit 130fc8
  (fd.o #15547, thanks to Huang Peng).
Packit 130fc8
Packit 130fc8
* Make the API docs build correctly when out-of-tree
Packit 130fc8
Packit 130fc8
* Require dbus 1.0 so we can get rid of DBUS_API_SUBJECT_TO_CHANGE
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.82.4 (2007-12-10)
Packit 130fc8
=========================================
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
* supplying reply_handler but not error_handler raises
Packit 130fc8
  MissingReplyHandlerException instead of MissingErrorHandlerException,
Packit 130fc8
  and vice versa (fd.o #12304, patch from René Neumann)
Packit 130fc8
* Using non-recursive make for dbus/ directory should fix builds in some
Packit 130fc8
  environments (fd.o #12741)
Packit 130fc8
Packit 130fc8
Licensing:
Packit 130fc8
Packit 130fc8
* Everything is now under the same MIT/X11 license used for Collabora code in
Packit 130fc8
  the previous release
Packit 130fc8
* Added copyright headers to some files that were still missing them
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.82.3 (2007-09-27)
Packit 130fc8
=========================================
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
* Out-of-tree builds with an absolute $(srcdir) can now build docs and run tests
Packit 130fc8
* Closing private dbus.Bus no longer raises KeyError (fd.o #12096)
Packit 130fc8
* async_err_cb(MyException()) now works (fd.o #12403)
Packit 130fc8
* dbus.service.Object.remove_from_connection no longer claims that multiple
Packit 130fc8
  exports aren't possible (fd.o #12432)
Packit 130fc8
* Setting _dbus_error_name as a class attribute of DBusException subclasses
Packit 130fc8
  works again
Packit 130fc8
Packit 130fc8
Deprecations:
Packit 130fc8
Packit 130fc8
* dbus.Bus(private=True) (use dbus.bus.BusConnection in new code, dbus.Bus
Packit 130fc8
  basically just adds the shared-connection behaviour)
Packit 130fc8
Packit 130fc8
Licensing:
Packit 130fc8
Packit 130fc8
* Code for which Collabora is the only copyright holder is now under the
Packit 130fc8
  same permissive MIT/X11 license under which dbus core is being relicensed
Packit 130fc8
  (this allows everything the old license would have allowed, and more)
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.82.2 (2007-08-01)
Packit 130fc8
=========================================
Packit 130fc8
Packit 130fc8
Incompatibility with 0.82.1:
Packit 130fc8
Packit 130fc8
* If you pass the timeout argument to call_async or an asynchronous proxy
Packit 130fc8
  method call and expect it to be in milliseconds, you should change the
Packit 130fc8
  argument to be in seconds, and require dbus-python >= 0.82.2.
Packit 130fc8
Packit 130fc8
  This feature didn't work at all in versions prior to 0.82.1, so any code
Packit 130fc8
  that works with 0.82.0 or earlier is unaffected.
Packit 130fc8
Packit 130fc8
Features:
Packit 130fc8
Packit 130fc8
* @dbus.service.method supports a rel_path_keyword argument for the benefit
Packit 130fc8
  of fallback objects, which provides the method implementation with the path
Packit 130fc8
  of the object within the exported subtree. For instance, if you have a
Packit 130fc8
  fallback object exported at /Fallback, and you call a method that has
Packit 130fc8
  rel_path_keyword='rel_path' on /Fallback and on /Fallback/Some/Where, the
Packit 130fc8
  method implementation will be called with rel_path='/' and with
Packit 130fc8
  rel_path='/Some/Where' respectively. (fd.o #11623)
Packit 130fc8
Packit 130fc8
* If you have epydoc version 3 (currently in beta), API documention is now
Packit 130fc8
  generated by default.
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
* As mentioned under "Incompatibilities" above, Connection.call_async()
Packit 130fc8
  measures timeouts in seconds, as was always intended.
Packit 130fc8
  This means that calls through a proxy object with a reply_handler and
Packit 130fc8
  error_handler will measure the timeout in seconds too.
Packit 130fc8
Packit 130fc8
* Introspect() now works on objects exported in more than one location.
Packit 130fc8
  (fd.o #11794)
Packit 130fc8
Packit 130fc8
* Building against Python 2.4 on non-Debian-derived distributions, or a
Packit 130fc8
  non-default Python version on Gentoo, should work again (revenge
Packit 130fc8
  of fd.o #11282, thanks Eyal Ben David).
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.82.1 (2007-07-11)
Packit 130fc8
=========================================
Packit 130fc8
Packit 130fc8
The "double precision" release.
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
* Parse the timeout correctly in send_message_with_reply() and
Packit 130fc8
  send_message_with_reply_and_block(), fixing the use of non-default timeouts
Packit 130fc8
  (bugs.fd.o #11489)
Packit 130fc8
* The tutorial no longer uses interactive-Python syntax, as it confused users.
Packit 130fc8
  (bugs.fd.o #11209)
Packit 130fc8
* When making a call via a proxy object with ignore_reply=True, also get the
Packit 130fc8
  necessary introspection data asynchronously. This can avoid deadlocks in
Packit 130fc8
  some cases, such as calling methods in the same process (though this is not
Packit 130fc8
  recommended, for efficiency and sanity reasons).
Packit 130fc8
* dbus.lowlevel exposes enough constants to write correct filter functions.
Packit 130fc8
* We don't use dbus_watch_get_fd() (deprecated in libdbus) unless our libdbus
Packit 130fc8
  is too old to have the modern replacement, dbus_watch_get_unix_fd().
Packit 130fc8
Packit 130fc8
Deprecations:
Packit 130fc8
Packit 130fc8
* Omitting the bus argument in the BusName constructor is deprecated.
Packit 130fc8
  The fact that it uses the globally shared connection to the session bus by
Packit 130fc8
  default is uncomfortably subtle.
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.82.0 (2007-06-19)
Packit 130fc8
=========================================
Packit 130fc8
Packit 130fc8
Features:
Packit 130fc8
Packit 130fc8
* dbus.service.Object can start off with no Connection or object path, and
Packit 130fc8
  become exported later. If suitable class attributes are set, objects can
Packit 130fc8
  even be exported on multiple connections, or with multiple object-paths,
Packit 130fc8
  or both.
Packit 130fc8
Packit 130fc8
* dbus.service.FallbackObject implements a whole subtree of object-path space
Packit 130fc8
  (fd.o #9295).
Packit 130fc8
Packit 130fc8
* ``@method`` accepts a parameter ``connection_keyword`` so methods can find
Packit 130fc8
  out which connection to use for any follow-up actions.
Packit 130fc8
Packit 130fc8
* ``@signal`` has a new parameter ``rel_path_keyword`` which gets the path at
Packit 130fc8
  which to emit the signal, relative to the path of the FallbackObject.
Packit 130fc8
  ``path_keyword`` is now deprecated, and will raise an exception if used
Packit 130fc8
  on an object with ``SUPPORTS_MULTIPLE_OBJECT_PATHS``, including any
Packit 130fc8
  ``FallbackObject``.
Packit 130fc8
Packit 130fc8
Fixes:
Packit 130fc8
Packit 130fc8
* In watch_name_owner, only the desired name is watched!
Packit 130fc8
Packit 130fc8
* When cleaning up signal matches, errors are ignored. This avoids using up
Packit 130fc8
  scarce pending-call allowance on dbus-daemon < 1.1, and emitting error
Packit 130fc8
  messages if we get disconnected.
Packit 130fc8
Packit 130fc8
* Signal handlers which are bound to a unique name are automatically
Packit 130fc8
  disconnected when the unique name goes away, reducing the likelihood that
Packit 130fc8
  applications will leak signal matches.
Packit 130fc8
Packit 130fc8
* Some corrections were made to the tutorial (@service and @method take a
Packit 130fc8
  parameter dbus_interface, not just interface; fd.o #11209).
Packit 130fc8
Packit 130fc8
* ${PYTHON}-config is used to get the Python include path (patch from
Packit 130fc8
  Sebastien Bacher/Ubuntu, fd.o #11282).
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.81.1 (4 June 2007)
Packit 130fc8
==========================================
Packit 130fc8
Packit 130fc8
Features:
Packit 130fc8
Packit 130fc8
* When an Error message on the bus is represented as a DBusException, the
Packit 130fc8
  error name is copied into the exception and can be retrieved by
Packit 130fc8
  get_dbus_name(). Exception handlers should use this instead of looking at
Packit 130fc8
  the stringified form of the exception, unless backwards compatibility
Packit 130fc8
  is needed.
Packit 130fc8
* DBusException objects now get all arguments from the Error message, not
Packit 130fc8
  just the first (although there will usually only be one). Use the 'args'
Packit 130fc8
  attribute if you need to retrieve them.
Packit 130fc8
* The Connection, BusConnection and Bus classes have a method
Packit 130fc8
  list_exported_child_objects(path: str) -> list of str, which wraps
Packit 130fc8
  dbus_connection_list_registered()
Packit 130fc8
* You can remove objects from D-Bus before they become unreferenced, by
Packit 130fc8
  using dbus.service.Object.remove_from_connection()
Packit 130fc8
  (https://bugs.freedesktop.org/show_bug.cgi?id=10457)
Packit 130fc8
Packit 130fc8
Bug fixes:
Packit 130fc8
Packit 130fc8
* Don't deadlock when removing a signal match that tracks name-owner changes.
Packit 130fc8
  (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=426412)
Packit 130fc8
* Include child nodes in introspection using list_exported_child_objects()
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.81.0 (9 May 2007)
Packit 130fc8
=========================================
Packit 130fc8
Packit 130fc8
The 'series of tubes' release
Packit 130fc8
-----------------------------
Packit 130fc8
Packit 130fc8
This is a feature release with support for non-bus-daemon connections
Packit 130fc8
and improved GObject integration.
Packit 130fc8
Packit 130fc8
Features:
Packit 130fc8
Packit 130fc8
* Bus has a superclass dbus.bus.BusConnection (a connection to a bus daemon,
Packit 130fc8
  but without the shared-connection semantics or any deprecated API)
Packit 130fc8
  for the benefit of those wanting to subclass bus daemon connections
Packit 130fc8
Packit 130fc8
* BusConnection has a superclass dbus.connection.Connection (a
Packit 130fc8
  connection without a bus daemon) for use in peer-to-peer situations,
Packit 130fc8
  or distributed pseudo-bus situations without a bus daemon such as
Packit 130fc8
  Telepathy's Tubes API
Packit 130fc8
Packit 130fc8
* dbus.gobject_service.ExportedGObject is like dbus.service.Object, but
Packit 130fc8
  is also a subclass of GObject (with the necessary metaclass magic to
Packit 130fc8
  make this work). Until someone has verified that the GObject side of
Packit 130fc8
  things works as expected too, I consider this API to be potentially
Packit 130fc8
  subject to change!
Packit 130fc8
Packit 130fc8
* Connection and BusConnection have gained a number of useful methods,
Packit 130fc8
  including watch_name_owner (track name owner changes asynchronously,
Packit 130fc8
  avoiding race conditions), call_blocking and call_async (blocking and
Packit 130fc8
  asynchronous method calls without going via a proxy - note that these
Packit 130fc8
  are semi-low-level interfaces which don't do introspection), and
Packit 130fc8
  list_names, list_activatable_names and get_name_owner which are
Packit 130fc8
  simple wrappers for the corresponding org.freedesktop.DBus methods
Packit 130fc8
Packit 130fc8
* dbus.Interface (now also available at dbus.proxies.Interface)
Packit 130fc8
  and dbus.proxies.ProxyObject now have some reasonably obvious properties.
Packit 130fc8
Packit 130fc8
Deprecations:
Packit 130fc8
Packit 130fc8
* All keyword arguments called named_service are deprecated in favour of an
Packit 130fc8
  argument called bus_name (to be compatible with both older and newer
Packit 130fc8
  dbus-python, you should pass these positional arguments).
Packit 130fc8
Packit 130fc8
* The bus keyword argument to dbus.proxies.ProxyObject is deprecated in
Packit 130fc8
  favour of an argument called conn, because proxies will work on non-bus
Packit 130fc8
  connections now (again, for maximum compatibility you should use a
Packit 130fc8
  positional argument for this).
Packit 130fc8
Packit 130fc8
* No warning is raised for this, but I consider calling any remote method
Packit 130fc8
  on a ProxyObject or Interface whose name is either alllowercase or
Packit 130fc8
  lower_case_with_underscores to be deprecated, and reserve the right
Packit 130fc8
  to add properties or methods of this form in future releases - use
Packit 130fc8
  ProxyObject.get_dbus_method if you must call a remote method named in
Packit 130fc8
  this way. Methods named following TheUsualDBusConvention or
Packit 130fc8
  theJavaConvention are safe.
Packit 130fc8
Packit 130fc8
Bugfixes:
Packit 130fc8
Packit 130fc8
* Exceptions in signal handlers print a stack trace to stderr (this can
Packit 130fc8
  be redirected elsewhere with Python's logging framework). Partially
Packit 130fc8
  addresses fd.o #9980.
Packit 130fc8
Packit 130fc8
* The reserved local interface and object path are properly checked for.
Packit 130fc8
Packit 130fc8
* When you return a tuple that is not a Struct from a method with no
Packit 130fc8
  out_signature, it's interpreted as multiple return values, not a
Packit 130fc8
  single Struct (closes fd.o #10174).
Packit 130fc8
Packit 130fc8
* If send_with_reply() returns TRUE but with pending call NULL, dbus-python
Packit 130fc8
  no longer crashes. This can happen when unexpectedly disconnected.
Packit 130fc8
Packit 130fc8
* Arguments are not examined for functions declared METH_NOARGS (this is
Packit 130fc8
  unnecessary and can cause a crash).
Packit 130fc8
Packit 130fc8
Other notable changes:
Packit 130fc8
Packit 130fc8
* dbus-python uses the standard Python logging framework throughout.
Packit 130fc8
  The first time a WARNING or ERROR is generated, it will configure the
Packit 130fc8
  logging framework to output to stderr, unless you have already
Packit 130fc8
  configured logging in your application.
Packit 130fc8
Packit 130fc8
* The tutorial now advocates the use of add_signal_receiver if all you
Packit 130fc8
  want to do is listen for signals: this avoids undesired activation,
Packit 130fc8
  e.g. of Listen or Rhythmbox (!). Addresses fd.o #10743, fd.o #10568.
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.80.2 (13 February 2007)
Packit 130fc8
===============================================
Packit 130fc8
- Fix numerous memory and reference leaks
Packit 130fc8
- Only use -Werror if the user specifically asks for it
Packit 130fc8
- Audit tp_dealloc callbacks to make sure they correctly preserve the
Packit 130fc8
  exception state
Packit 130fc8
- Relicense files solely owned by Collabora Ltd. more permissively (LGPL/AFL
Packit 130fc8
  rather than GPL/AFL) - this includes the tutorial and all the C code
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.80.1 (24 January 2007)
Packit 130fc8
==============================================
Packit 130fc8
- The "oops" release
Packit 130fc8
- Install dbus/_version.py, so dbus.__version__ exists again
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.80.0 (24 January 2007)
Packit 130fc8
==============================================
Packit 130fc8
- The "everything changes" release
Packit 130fc8
- Rewrite dbus_bindings (Pyrex) as _dbus_bindings (C) - API changes!
Packit 130fc8
- Define what's public API
Packit 130fc8
- Move low-level but still public API to dbus.lowlevel
Packit 130fc8
- Remove Variant class, add variant_level property on all D-Bus types
Packit 130fc8
- Make signal matching keep working as expected when name ownership changes
Packit 130fc8
- Use unambiguous D-Bus types when transferring from D-Bus to Python
Packit 130fc8
- Follow well-defined rules when transferring from Python to D-Bus
Packit 130fc8
- Add utf8_strings and byte_arrays options in various places, so a user
Packit 130fc8
  can tweak the calling conventions to be more efficient
Packit 130fc8
- Raise RuntimeError if user tries to use a connection with no main loop
Packit 130fc8
  to do something that won't work without one
Packit 130fc8
- Make asynchronous method calls actually asynchronous when made before
Packit 130fc8
  introspection results come back
Packit 130fc8
- Redo main loop machinery so we can add pure-Python main loops later without
Packit 130fc8
  API breakage
Packit 130fc8
- Allow construction of a dbus.service.Object if you don't have a BusName
Packit 130fc8
  (or even a Bus)
Packit 130fc8
- Port introspection XML parser from libxml2 (external package) to expat
Packit 130fc8
  (included with Python)
Packit 130fc8
- Port build system from distutils to autoconf/automake/libtool
Packit 130fc8
- Install a header file for third-party main loop integration
Packit 130fc8
- Make compatible with Python 2.5, including on 64-bit platforms
Packit 130fc8
- Add docstrings throughout
Packit 130fc8
- Add more tests and examples
Packit 130fc8
- Add interoperability tests (which interoperate with Java)
Packit 130fc8
- Add copyright notices!
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.71 (24 July 2006)
Packit 130fc8
==============================================================
Packit 130fc8
- Binary modules are now installed in the correct directory
Packit 130fc8
- Distutils exports the dbus and dbus-glib cflags
Packit 130fc8
Packit 130fc8
D-Bus Python Bindings 0.70 (17 July 2006)
Packit 130fc8
==============================================================
Packit 130fc8
- First release of bindings split
Packit 130fc8
- Move to a distutils build enviornment
Packit 130fc8
- It is possible to now specify sender_keyword="foo", path_keyword="bar" when 
Packit 130fc8
  adding a signal listener