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)