Home | Back
telepathy-glib 0.11.9 (2010-07-02)
==================================

The “mistakenly displays 2 more bars than it should” release.

Enhancements:

❉ Updated spec to 0.19.8 (smcv):
  ➠ generate code for some new properties, Conn.I.Cellular and
    Account.I.Storage
  ➠ add convenience methods to TpAccount to access Account.Service

❉ Added tp_simple_async_report_success_in_idle, a convenience function to
  return "void" from an async method (smcv)

Fixes:

❉ Fixed libdbus errors when unregistering a TpBaseClient that isn't a
  Handler (cassidy)

❉ Made some TpGroupMixin methods more const-correct (smcv)

❉ Fixed some memory leaks in regression tests (smcv)

❉ Suppressed more valgrind false-positives (smcv, cassidy)

❉ Improved generation of experimental Vala bindings (treitter)

telepathy-glib 0.11.8 (2010-06-22)
==================================

The "moving to Canada for maple syrup and bacon" release.

Requirements:

⁂ If GObject-Introspection is enabled, it must be version 0.6.14 or later.

Enhancements:

⁂ Improve GObject-Introspection annotations, and optionally build Vala
  bindings, which are currently considered highly experimental (treitter)

Fixes:

⁂ Make tp_base_client_set_handler_bypass_approval able to set the value to
  FALSE, and hence make it possible for a TpSimpleHandler to not bypass
  approval (cassidy)

⁂ If the weak object for contact info retrieval disappears, stop, and don't
  call the callback (sjoerd)

⁂ Fix a va_list leak in tp_value_array_build (wjt)

⁂ Fix a memory leak for unlikely errors in tp_base_connection_register (wjt)

telepathy-glib 0.11.7 (2010-06-14)
==================================

The “why do my legs not work?” release.

Requirements:

⎎ If GObject-Introspection is enabled, it must be version 0.6.13 or later.

Deprecations:

⎎ TpChannelFactoryIface is officially deprecated (it shouldn't have been used
  since 0.8).

⎎ tp_verify() should not be used in new code: use GLib 2.20's G_STATIC_ASSERT.

Enhancements:

⎎ Update to telepathy-spec 0.19.7 (smcv)
  ⎓ generate code for the Anonymity and ServicePoint interfaces
  ⎓ add ChatStates property and Chat_State_Map type
  ⎓ add Account.ConnectionError and ConnectionErrorDetails properties

⎎ fd.o #27676: add TP_CONNECTION_FEATURE_CONTACT_INFO,
  TP_CONTACT_FEATURE_CONTACT_INFO, tp_contact_request_contact_info_async, etc.
  (Zdra)

⎎ fd.o #28241: add tp_channel_dispatch_operation_handle_with_time_async
  (cassidy)

⎎ fd.o #28379: add connection-error and connection-error-details properties
  to TpAccount, and implement the corresponding parameters of
  TpAccount::status-changed (smcv)

⎎ fd.o #28312: add TpContact::presence-changed signal (sjokkis)

⎎ fd.o #28368: use GStrv instead of gchar ** in structs, so
  GObject-Introspection ≥ 0.6.13 can introspect it correctly (Zdra)

⎎ Add tp_handle_set_new_from_array (smcv)

⎎ fd.o #28345: add tp_clear_object, tp_clear_pointer, tp_clear_boxed
  (also proposed for GLib/GObject, as Gnome bug #620263) (smcv)

⎎ Add TP_ERROR as a synonym for TP_ERRORS, to be nice to Vala (treitter)

⎎ fd.o #28334, #28347: speed up the regression tests, clean up their code, and
  put their utility code in a namespace so Vala tests can use it (treitter,
  smcv)

Fixes:

⎎ test-finalized-in-invalidated-handler: eliminate a race condition (smcv)

⎎ tp_connection_get_detailed_error: fix a memory leak introduced in 0.11.4
  (smcv)

telepathy-glib 0.11.6 (2010-05-25)
==================================

The "anybody need this sign?" release.

This version includes all the bugfixes from today's 0.10.6 release.

Requirements:

* If gtk-doc is enabled, it must be version 1.15 or later.
* If GObject-Introspection is enabled, it must be version 0.6.11 or later.

Enhancements:

* Updated to telepathy-spec 0.19.6:
  * ChangingPresence property on the Account interface
  * SupportedLocationFeatures property on the Location interface
  * HandleWithTime method on ChannelDispatchOperation
  * MultipleTones method, SendingTones and StoppedTones signals, and
    CurrentlySendingTones and InitialTones properties on the DTMF interface

* TpAccount:changing-presence and tp_account_get_changing_presence, a binding
  for the new ChangingPresence property (smcv)

* fd.o #27872: enhance TpBaseClient to support being a Handler (cassidy)

* fd.o #27873: TpSimpleHandler, a simple TpBaseClient subclass for
  projects that don't need their own subclass, and an example Approver that
  uses it (cassidy)

* fd.o #20035: add TP_CONTACT_FEATURE_AVATAR_DATA, the ability to cache and
  access avatar data (Zdra)

* fd.o #16170: cope better with sparse TpIntSets (smcv)

* Add more API for int sets and handle sets (smcv)

* Make the ContactList example connection manager more realistic, and add a
  regression test for it (smcv)

Fixes:

* fd.o #28203: TpGroupMixin: allow "adding" contacts who are already members,
  even if the Can_Add flag isn't set (e.g. accepting a subscription request
  twice), and allow "removing" contacts who are not in the channel
  (e.g. rejecting a subscription request twice) (smcv)

* Correct the syntax of TP_IS_HANDLE_REPO_IFACE (smcv)

* Move _tp_proxy_set_features_failed (which isn't intended to be API, and
  isn't ABI) to an internal header (smcv)

* Fix the namespace version for GObject-Introspection (smcv)

telepathy-glib 0.11.5 (2010-05-10)
==================================

The "also, hi from bl.uk" release.

API changes:

⌬ fd.o #23369: when the local user is removed from a Group Channel, the
  GError with which the TpChannel is invalidated has changed:

  → if possible, the detailed error name from D-Bus is mapped to a TpError,
    or a custom GError domain set up with tp_proxy_subclass_add_error_mapping
  → otherwise, the TpChannelGroupChangeReason is translated into a TpError

  Previously, we used an error from the TP_ERRORS_REMOVED_FROM_GROUP domain
  in most cases; this domain is no longer used, unless we get a change reason
  that isn't recognised.

Enhancements:

⌬ fd.o #25236: TpBaseClient, a base class for Observers and Approvers, which
  will also support Handlers in a future release (cassidy)

⌬ fd.o #27871, #24214: TpSimpleObserver, a simple TpBaseClient subclass for
  projects that don't need their own subclass, and an example Observer that
  uses it (cassidy)

⌬ fd.o #27875: TpSimpleApprover, a simple TpBaseClient subclass for
  projects that don't need their own subclass, and an example Approver that
  uses it (cassidy)

⌬ fd.o #27899: internal macros for ERROR(), CRITICAL() etc., analogous to
  DEBUG() (jonny)

⌬ fd.o #23369: improve the errors with which a Group TpChannel is invalidated
  if we're removed, as per "API changes" above (smcv)

⌬ fd.o #18055: generate GEnum types for TpCMInfoSource, TpContactFeature,
  TpDBusError, and GFlags types for TpDBusNameType and
  TpDBusPropertiesMixinFlags. Note that TpConnectionManager:info-source is
  still of type G_TYPE_UINT, not TP_TYPE_CM_INFO_SOURCE, since switching it
  would be an ABI break. (danni, smcv)

Fixes:

⌬ fd.o #26211: correct the generated constants for contact attributes and
  handler capability tokens, which were present-but-wrong since 0.11.3 (smcv)

⌬ fd.o #24689: document more clearly that the TpConnectionManager.protocols
  struct member can be reallocated (smcv)

⌬ fd.o #28043: explicitly link tests/* against dbus-glib, fixing compilation
  with GNU gold, with GNU ld with LDFLAGS=-Wl,--no-add-needed, and hopefully
  also with Fedora 13's patched GNU ld (see Red Hat #564245) (smcv)

⌬ some fixes to GObject-Introspection metadata (danni)

telepathy-glib 0.11.4 (2010-04-28)
==================================

The “not sure whether to be amused or terrified” release.

This version includes all the bugfixes from today's 0.10.5 release.

Requirements:

∮ gtk-doc 1.14 is now required. Applying commit 0a874b3a from gtk-doc git
  to support the (skip) annotation (as was done in Debian's gtk-doc 1.14-2) is
  also highly recommended; it'll be in upstream release 1.15.

∮ GLib 2.24 is now required.

Enhancements:

∮ telepathy-glib now has experimental GObject-Introspection bindings, for use
  by language bindings like PyGI and gjs. At this stage, these bindings are
  incomplete, and are *not* covered by our normal API guarantees - incompatible
  changes between versions are likely. (danni, smcv)

∮ fd.o #27769: add TP_CONNECTION_FEATURE_AVATAR_REQUIREMENTS (Zdra)

∮ fd.o #27794: improve regression test coverage for TpAccount (cassidy, smcv)

∮ fd.o #19164: tighten the definition of TpChannel:identifier to guarantee
  that it's always non-NULL, even before the channel is ready (previously,
  it could be NULL before the channel was ready)

∮ fd.o #23369 (partial): improve error mapping on TpConnection and
  TpBaseConnection, and add tp_connection_get_detailed_error (smcv)

Fixes:

∮ fd.o #27780: when TpAccount:connection changes, emit notify::connection (smcv)

∮ Don't leak TpAccount:parameters when disposed (smcv)

∮ Fix more assertion failures (this time in TpContact) if getting contact
  attributes fails or yields the wrong type (wjt)

∮ Remove some dead code to keep coverity happy (wjt)

telepathy-glib 0.11.3 (2010-04-20)
==================================

The "can we have a hippopotamus?" release.

This version includes both the bugfixes from today's 0.10.4 release.

Enhancements:

↠ Upgrade to telepathy-spec 0.19.5 (smcv)
  → Connection.Status, Connection.Interfaces properties (all telepathy-glib
    CMs that use TpBaseConnection should gain support for these automatically)
  → Observer.Recover property
  → ContactInfo interface

↠ Add TpWeakRef, a wrapper for a weak reference and an optional extra pointer
  (smcv)

↠ fd.o #21097: push the "feature" concept from TpAccount and TpAccountManager
  into the TpProxy base class, and use it to implement feature-preparation
  for core functionality of TpChannel, TpConnection, TpConnectionManager (smcv)

↠ add TP_CHANNEL_FEATURE_CHAT_STATES (smcv)

↠ fd.o #27511: add TpCapabilities, TP_CONNECTION_FEATURE_CAPABILITIES and
  TP_CONTACT_FEATURE_CAPABILITIES (cassidy)

↠ fd.o #27690, #27709: add boxed types for TpIntSet,
  TpConnectionManagerProtocol and TpConnectionManagerParam (danni, smcv)

↠ fd.o #27741: make it easier to export objects without using tp_get_bus(),
  particularly in connection managers (smcv)

↠ fd.o #26211: generate TP_TOKEN_${INTERFACE}_${TOKEN} constants for contact
  attributes and handler capability tokens (KA)

Fixes:

↠ Use the fast-path for Location correctly (cassidy)

↠ fd.o #27714: support G_CONNECT_AFTER in tp_g_signal_connect_object, and
  document exactly which flags we support (Maiku, smcv)

↠ fd.o #27537: fix assertion failure if getting contact attributes
  fails (cassidy)

↠ fd.o #27695: only try the slow path in Contacts if the fast path isn't
  supported (cassidy)

telepathy-glib 0.11.2 (2010-04-06)
==================================

The "not actually deprecated" release.

This version includes all the bugfixes from today's 0.8.3 and 0.10.3 releases
(they were all included in the previous version, in fact).

Un-deprecations:

☀ tp_get_bus is not considered to be deprecated yet after all; many connection
  managers use it, and the current alternative is considerably more verbose.
  This reopens fd.o #24114. (smcv)

telepathy-glib 0.11.1 (2010-04-05)
==================================

The “26-bit address bus” release.

Enhancements:

◈ Add tp_str_empty() macro, a shortcut for ‘NULL or ""’ (smcv)

◈ Add TP_TYPE_UCHAR_ARRAY, a dbus-glib GArray of guchar (i.e. the default
  representation for the D-Bus 'ay' type) (cassidy)

◈ Add tp_account_set_avatar_async() (cassidy)

◈ Add TP_CONTACT_FEATURE_LOCATION (cassidy)

Fixes:

◈ Only fail “make check” on documentation warnings in unreleased versions, to
  avoid build failures in releases when gtk-doc in a distribution doesn't have
  the same definition of full coverage that we do (smcv)

◈ Fix compatibility with gtk-doc 1.14 (smcv)

telepathy-glib 0.11.0 (2010-03-31)
==================================

The ‘bah, you removed my “beautiful” quotes’ release.

Dependencies:

‣ GLib, GObject and GIO ≥ 2.22 are now required

Deprecations:

‣ fd.o #22206: all the re-entrant functions (of the form tp_FOO_run_until_ready
  and tp_cli_FOO_run_BAR) are deprecated in this version, please use
  asynchronous calls instead (smcv)

‣ fd.o #24114: tp_get_bus() is deprecated, please use tp_dbus_daemon_dup()
  followed by tp_proxy_get_dbus_connection() (smcv)

Enhancements:

‣ Update to telepathy-spec 0.19.3 (smcv)
  ❧ generate code for new Connection.Interfaces, Connection.Status properties,
    and implement them in TpBaseConnection
  ❧ generate code for Connection.Interface.Balance

‣ Add an example connection manager for the experimental Call API that will
  eventually replace StreamedMedia (smcv)

‣ Add tp_g_socket_address_from_variant,
  tp_address_variant_from_g_socket_address (danni)

‣ Add tp_g_value_slice_new_byte (smcv)

‣ Add tp_value_array_unpack, the inverse of tp_value_array_build (danni)

‣ Make various minor improvements to the tests (smcv)

Fixes:

‣ tp_account_set_nickname_async: set the right source_tag (cassidy)

‣ fd.o #27281: clarify documentation for tp_message_mixin_sent, using
  telepathy-spec 0.19.2 as a reference (Maiku)

‣ Avoid using re-entrant functions, other than in regression tests (smcv)

‣ fd.o #21956: clean up documentation/defaults of TpContact properties (smcv)

‣ telepathy.am: if copied into a project where nothing is checked for
  unreleased version annotations, don't hang waiting for input (smcv)

telepathy-glib 0.10.2 (2010-03-31)
==================================

The "is that a koala in your roster or are you just nearby?" release.

Fixes:

* TpAccount: correctly add interfaces such as Avatars (danni)

* Make GetContactAttributes() in GLib CMs tolerate unsupported interfaces,
  as per telepathy-spec 0.19.2 (wjt)

* Improve documentation of TpContactsMixinFillContactAttributesFunc (mikhailz)

telepathy-glib 0.10.1 (2010-03-24)
==================================

The "usually quite loud" release.

This version includes all the bugfixes from 0.8.2, plus some documentation
improvements in code added since 0.8.

Fixes:

* Don't make an idle call to put received messages in the TpMessageMixin
  queue, potentially avoiding a reference leak (Vivek)

* tp_contacts_mixin_set_contact_attribute now takes a const gchar *
  instead of a gchar * (mikhailz)

* Escape the doc-comments better in generated service interfaces (smcv)

* Fix some typos and broken cross-references in the documentation, and
  improve the TpAccount documentation (smcv)

* Chain up to GObject's dispose method when destroying a
  TpBaseConnectionManager (smcv)

* Remove a misleading debug message from tp_list_connection_names (wjt)

telepathy-glib 0.10.0 (2010-01-21)
==================================

The "where did you get your bear?" release.

This release begins a bugfix-only 0.10.x branch, in which new API/ABI will no
longer be added; 0.11.x development releases will continue to be made from
the master branch. The 0.10.x branch targets the D-Bus API from
telepathy-spec 0.18.0.

The major enhancement since 0.8.x is that TpAccountManager and TpAccount,
previously simple stub classes, now have high-level API to manipulate
accounts. GLib 2.20 and dbus-glib 0.82 are now required, and telepathy-glib
now links against GIO.

Enhancements since 0.9.2:

* Add compile-time warnings if the results of functions that allocate memory
  are ignored; for a couple of these functions it's not obvious that a
  result is allocated, leading to non-obvious leaks (smcv)

* Add compile-time warnings if the results of certain functions with no
  side-effects are ignored, which is harmless but makes no sense (smcv)

* Improve lcov.am, syncing with telepathy-gabble (smcv)

Fixes since 0.9.2:

* fd.o #23848: when making a release, make the build system check for files
  that indicate unreleased status; correct a few such comments (wjt)

* fd.o #25149: when a TpAccount is invalidated (deleted), signal connection
  disconnection first (smcv)

* Exit the main loop gracefully when CMs are disconnected from the session bus
  (sjoerd)

* fd.o #14603: don't set fatal criticals in tp_run_connection_manager, CMs
  are now responsible for doing this (sjoerd)

* fd.o #25600: fix inadvertant GLib 2.20 dependency (jonny)

* In code generation tools (glib-ginterface-gen.py), allow D-Bus methods whose
  names are C keywords (smcv)

* Fix with-session-bus.sh dbus-monitor logging when /bin/sh is not bash (smcv)

telepathy-glib 0.9.2 (2009-12-03)
=================================

The "old-fashioned, with no silly mods" release.

Dependencies:

* dbus-glib (>= 0.82) is now required

Enhancements:

* Add tp_value_array_build utility function (sjoerd)

* Add tp_g_signal_connect_object, a non-leaky version of
  g_signal_connect_object (alsuren)

* fd.o #25283: add constants for namespaced D-Bus property names,
  such as TP_PROP_CHANNEL_CHANNEL_TYPE (smcv)

* fd.o #25235: add <telepathy-glib/telepathy-glib.h> which includes
  the most commonly-used headers (danni)

Fixes:

* fd.o #24257: make sure tp_account_prepare, tp_account_manager_prepare
  will fail if the object is invalidated, rather than never finishing
  (alsuren)

* fd.o #25051: fix a use-after-free in TpAccountManager by disconnecting
  signal handlers on destruction (alsuren)

* fd.o #24654: fix a potential use-after-free in TpAccount and TpAccountManager
  by copying the list of features required (alsuren)

* Future-proof TpAccount and TpAccountManager to allow more than one Feature
  (alsuren)

* fd.o #24394: improve code portability to Windows headers and compilers,
  based on patches from Matti Reijonen (smcv)

* fd.o #25121: fix failure to link when -Wl,--no-add-needed is used, which is
  the (faster) default behaviour for binutils-gold (Debian #556486) (smcv)

* Fix various coverity nits, including a missing call to va_end,
  and a typo in the documentation (smcv)

* fd.o #25359: alter code generation to cope with arbitrary UTF-8 in the
  spec (wjt)

* fd.o #25335: glib-client-gen: annotate deprecated D-Bus methods (jonny)

* Don't rely on enum types being unsigned (sjoerd)

* fd.o #25181: avoid unnecessary D-Bus calls re-fetching existing TpContact
  objects (alsuren)

* fd.o #25384: if accounts fail to prepare while the account manager is
  preparing, drop them from the list of valid accounts rather than
  never terminating (alsuren)

* If the fake AccountManager doesn't appear for some reason during AM
  regression tests, don't start the system implementation (alsuren)

* Fix a theoretical reference-leak in TpAccountManager, and some memory
  leaks in examples and regression tests (smcv)

telepathy-glib 0.9.1 (2009-10-15)
=================================

The "to quote Rob: sdflkaytliahdskljfhgaqgh;shf" release.

Fixes:

* Corrected the GLib dependency to 2.20 (this was also needed for 0.9.0,
  but that fact was undocumented) (smcv)

* Corrected the error message given when a write-only D-Bus property
  is read (Pekka Pessi)

* Work around GLib 2.20 being less const-correct than 2.22 (jonny)

* fd.o #23853: if a connection manager is discovered not to be running while
  TpConnectionManager has a ListProtocols call in-flight, then a new instance
  of the CM starts up and replies to that call, don't crash with an assertion
  failure (smcv)

* If a connection manager returns error from GetParameters(), don't dereference
  a NULL pointer and segfault (smcv)

* When asked to activate or introspect a connection manager, don't do anything
  until we have at least worked out whether it was initially running, in order
  to provide the documented behaviour (smcv)

* When getting parameter details from a running connection manager, consider
  parameters called "password" or ending with "-password" to be secret even
  if they lack the SECRET flag, as was already done when reading .manager
  files (smcv)

telepathy-glib 0.9.0 (2009-09-28)
=================================

The "purging all the lies" release.

Dependencies:

* GLib 2.20 is now required.
* telepathy-glib now links to GIO as well as GLib and GObject (in practice
  they're packaged together, and we already depended on a new enough GLib
  version that it would come with GIO).

Enhancements:

* TpAccountManager, TpAccount: add convenience API similar to libempathy's
  (jonny, with contributions from wjt/danni/sjoerd/smcv)

* telepathy-glib now uses Automake 1.11's "silent rules" feature for
  kernel-style output; as a result, we no longer use shave. If you were
  previously using --enable-shave to get prettier output, use
  --enable-silent-rules instead, and upgrade to Automake >= 1.11 if you will
  be altering the build system. (jonny)

telepathy-glib 0.8.0 (2009-09-24)
=================================

The "line in the sand" release.

This release begins a bugfix-only 0.8.x branch, in which new API/ABI will no
longer be added; 0.9.x development releases will continue to be made from
the master branch.

Summary of API changes since 0.6.x:

* Since 0.7.35, it is no longer guaranteed that the self-handle in
  TpBaseConnection is set to 0 when the state changes to DISCONNECTED;
  instead, it remains valid until the connection is disposed. This will cause
  assertion failures during disconnection in telepathy-sofiasip < 0.5.17 and
  telepathy-gabble < 0.7.9.

Summary of major enhancements since 0.6.x:

* updated telepathy-spec from 0.16.x to 0.18.0, with many new interfaces, the
  AccountManager, the ChannelDispatcher, and Clients
* added TpProxy, a base class representing remote D-Bus objects
  (see <http://smcv.pseudorandom.co.uk/2009/05/tp-proxy/>)
* added subclasses of TpProxy for all the major Telepathy objects (apart from
  Debug, which will be added later)
* added TpContact, an object representing a Telepathy contact
* added macros for interface-name GQuarks, and for Telepathy dbus-glib GTypes
* added the tp_asv_get_foo() family of functions to manipulate a{sv} maps
* used versioned symbols to document the ABI
* implemented various simple example connection managers and clients

Changes since 0.7.37:

* spec: update from 0.17.28 to 0.18.0 (no real changes) (smcv)
* ContactList example CM: fix a crash during shutdown (andrunko)
* StreamedMedia example CM: check for direction changes correctly (andrunko)