[Telepathy] ANNOUNCE: libtelepathy 0.3.2, the "must die" release
Simon McVittie
simon.mcvittie at collabora.co.uk
Mon Feb 4 10:57:17 PST 2008
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
As a follow-up to the telepathy-glib 0.7.1 release, here's libtelepathy
0.3.2. This release adds API to TpChan and TpConn to convert to and from
telepathy-glib's TpChannel and TpConnection objects, to help with migration
to the new library.
Tarball:
http://telepathy.freedesktop.org/releases/libtelepathy/libtelepathy-0.3.2.tar.gz
Signature:
http://telepathy.freedesktop.org/releases/libtelepathy/libtelepathy-0.3.2.tar.gz.asc
Development branch in Darcs:
http://darcs.collabora.co.uk/darcs/telepathy/libtelepathy
Darcs tag: "libtelepathy 0.3.2"
Here's a quick guide to:
Porting from libtelepathy to telepathy-glib
===========================================
The good news is that everything in telepathy-glib is documented, and
there are examples in the source tarball for a lot of it too.
1. Migrate constants etc.
- -------------------------
For these you need to depend on telepathy-glib 0.7.0 and libtelepathy 0.3.1.
You can make a good start by using libtelepathy 0.3.1 and getting your
project to compile with -DLIBTELEPATHY_DISABLE_DEPRECATED.
tp_get_bus() is now in <telepathy-glib/dbus.h>. For most uses, you can
remove <libtelepathy/tp-helpers.h>.
Constants are now in <telepathy-glib/enums.h> and string interface names
are in <telepathy-glib/interfaces.h>.
Instead of the deprecated TELEPATHY_*_QUARK use TP_IFACE_QUARK_*.
Enumerations are now Tp*, not Telepathy*.
2. Migrate objects
- ------------------
For these you need to depend on telepathy-glib 0.7.1 and libtelepathy 0.3.2.
TpConnection replaces TpConn, and TpChannel replaces TpChan. However, in
general your app will need to work with both for a while, while you
migrate it (or because libmissioncontrol still uses the libtelepathy API
exclusively).
Every libtelepathy TpConn created with the existing constructors now creates
a telepathy-glib TpConnection automatically. You can retrieve the TpConnection
with tp_conn_dup_connection(), and you can go from a TpConnection to a TpConn
with tp_conn_new_from_connection().
Similarly, tp_chan_dup_channel() creates a telepathy-glib TpChannel from a
telepathy-glib TpConnection and a libtelepathy TpChan (the TpConnection
is needed for the TpChannel constructor, to get the invalidation logic
right), and tp_chan_new_from_channel() creates a TpChan from a
TpChannel.
TpConnMgr is replaced by TpConnectionManager - there's no migration API
for those though, since things like libmissioncontrol seem unlikely to
have TpConnMgr in their API.
The auto-generated dbus-glib API from <libtelepathy/*-gen.h> has been
replaced by different auto-generated API. For each D-Bus method, there
are now two C functions: tp_cli_something_call_something() makes an
asynchronous call and calls a callback.
tp_cli_something_run_something() does basically the same, but re-enters
the main loop (just like gtk_dialog_run), so it has all the advantages
and disadvantages that implies.
For signals, the signal-connecting function has a different signature,
but is basically similar.
As well as the familiar user_data argument, the asynchronous call API and the
signal-connecting API take a GObject * argument called weak_object. The
proxy machinery will take a weak reference to this object, and will
automatically cancel the call or remove the signal connection when the
object goes away. This innovation was borrowed from telepathy-gabble -
in practice, it means that you rarely need to disconnect from a D-Bus signal
or cancel a pending call explicitly.
- -----
Detailed Darcs changes follow.
Regards,
Simon
Mon Feb 4 17:53:20 GMT 2008 Simon McVittie <simon.mcvittie at collabora.co.uk>
tagged libtelepathy 0.3.2
Mon Feb 4 17:28:23 GMT 2008 Simon McVittie <simon.mcvittie at collabora.co.uk>
* Bump version to 0.3.2 (libtool c:r:a = 9:0:7) and telepathy-glib dep to 0.7.1
Mon Feb 4 17:28:11 GMT 2008 Simon McVittie <simon.mcvittie at collabora.co.uk>
* Remove xml/modified directory from version control
Fri Feb 1 15:01:58 GMT 2008 Simon McVittie <simon.mcvittie at collabora.co.uk>
* Require telepathy-glib >= 0.7.0.1
Fri Feb 1 14:58:24 GMT 2008 Simon McVittie <simon.mcvittie at collabora.co.uk>
* _tp_conn_new: call GetStatus() synchronously if necessary, preserving old semantics
Fri Feb 1 13:49:07 GMT 2008 Simon McVittie <simon.mcvittie at collabora.co.uk>
* TpConn: implement in terms of TpConnection
Fri Feb 1 13:45:03 GMT 2008 Simon McVittie <simon.mcvittie at collabora.co.uk>
* Document tp_connmgr_list_cms as being replaced by tp_list_connection_managers
Fri Feb 1 11:28:31 GMT 2008 Simon McVittie <simon.mcvittie at collabora.co.uk>
* TpChan: refactor interface-adding to avoid unnecessary D-Bus calls
Fri Feb 1 11:05:05 GMT 2008 Simon McVittie <simon.mcvittie at collabora.co.uk>
* tp_chan_local_set_interfaces: minor style fix
Fri Feb 1 11:03:46 GMT 2008 Simon McVittie <simon.mcvittie at collabora.co.uk>
* TpChan: add tp_chan_dup_channel, tp_chan_new_from_channel
Thu Jan 31 16:39:05 GMT 2008 Simon McVittie <simon.mcvittie at collabora.co.uk>
* TpChan: add tp_chan_new_from_channel()
Thu Jan 31 16:38:43 GMT 2008 Simon McVittie <simon.mcvittie at collabora.co.uk>
* src/Makefile.am: avoid confusing vim quickfix (:make)
Wed Nov 28 01:50:04 GMT 2007 Robert McQueen <robert.mcqueen at collabora.co.uk>
* correct the LGPL 2.1 boilerplate (s/Library/Lesser/ and update FSF address)
Fri Dec 14 14:35:34 GMT 2007 Simon McVittie <simon.mcvittie at collabora.co.uk>
* Add optional compiler and linker optimization control, and code coverage
Fri Dec 14 14:32:46 GMT 2007 Simon McVittie <simon.mcvittie at collabora.co.uk>
* Add compiler.m4, linker.m4 (from libgfshare via telepathy-glib)
Thu Dec 13 14:33:27 GMT 2007 Simon McVittie <simon.mcvittie at collabora.co.uk>
* TpChan, TpConn: use G_DEFINE_TYPE
Thu Dec 13 12:00:30 GMT 2007 Simon McVittie <simon.mcvittie at collabora.co.uk>
* TpConn: rename parent_class to tp_conn_parent_class for compatibility with G_DEFINE_TYPE
Thu Dec 13 11:59:50 GMT 2007 Simon McVittie <simon.mcvittie at collabora.co.uk>
* TpChan: rename parent_class to tp_chan_parent_class for compatibility with G_DEFINE_TYPE
Tue Dec 4 14:27:47 GMT 2007 Simon McVittie <simon.mcvittie at collabora.co.uk>
* Link dummy executables in check-compat against telepathy-glib etc. (actually dbus-glib is all that's needed) - fixes compilation without optimizations, fd.o #13484
Thu Nov 22 20:04:20 GMT 2007 Simon McVittie <simon.mcvittie at collabora.co.uk>
* Development version 0.3.1.1
Thu Nov 22 19:59:26 GMT 2007 Simon McVittie <simon.mcvittie at collabora.co.uk>
tagged libtelepathy 0.3.1
-----BEGIN PGP SIGNATURE-----
iD8DBQFHp2ANWSc8zVUw7HYRAiH6AKCnb1JLCj7d5IWZPAWua9+9rSpJ3QCghktB
xhNFN1Io8ab57uCpLZ5iWPU=
=Qu43
-----END PGP SIGNATURE-----
More information about the Telepathy
mailing list