commit cafc3054ad18372d03ee2308de15fade842a30b7 Author: Travis Reitter Date: Tue Dec 13 15:37:23 2011 -0800 Release version 0.6.6 backends/eds/lib/edsf-persona-store.vala | 2 +- backends/key-file/kf-persona-store.vala | 2 +- backends/libsocialweb/lib/swf-persona-store.vala | 2 +- backends/telepathy/lib/tpf-logger.vala | 2 +- .../telepathy/lib/tpf-persona-store-cache.vala | 2 +- backends/telepathy/lib/tpf-persona-store.vala | 4 ++-- backends/telepathy/lib/tpf-persona.vala | 2 +- backends/tracker/lib/trf-persona.vala | 4 ++-- configure.ac | 10 +++++----- folks/object-cache.vala | 4 ++-- 10 files changed, 17 insertions(+), 17 deletions(-) commit 0487df55a28c7fdf8670354f15c311b5c605ac3c Author: Philip Withnall Date: Tue Dec 6 15:39:25 2011 +0000 Bug 665376 — Add API to get a TpfPersona from a TpContact Add static functions to quickly look up Tpf.PersonaStores and Tpf.Personas from Tp.Accounts and Tp.Contacts (respectively). Closes: bgo#665376 NEWS | 2 + backends/telepathy/lib/tpf-persona-store.vala | 223 +++++++++++++++++++++ backends/telepathy/lib/tpf-persona.vala | 71 +++++++- backends/telepathy/tp-backend.vala | 31 +--- tests/lib/telepathy/contactlist/account-manager.c | 2 + tests/lib/telepathy/contactlist/backend.c | 3 + 6 files changed, 304 insertions(+), 28 deletions(-) commit 2247cdd5f71a65f330343da2438e68fb8a3ecfd3 Author: Philip Withnall Date: Tue Dec 6 23:09:14 2011 +0000 Bug 665692 — Use constructors correctly In order to allow libfolks to be used from introspected languages (such as Python) properly, we need to correctly use the GObject construction process, rather than generating code which does all object initialisation inside a *_new() function. This involves moving lots of code into construct{} blocks. There are some complications; mostly the need for various private variables to now be exposed as construct-only properties. Most of them should've been anyway. Other complications arose from the fact that moving code to a construct{} block can subtly change the execution order of the code if the Object() call lists properties which are non-construct properties (e.g. the “alias” property of a Persona). The setters for these properties will now be called _after_ the construct{} code, whereas previously they would've been called beforehand. This rears its head in Tpf.Persona, but hopefully nowhere else. Closes: bgo#665692 NEWS | 18 +++ backends/eds/eds-backend.vala | 5 + backends/eds/lib/edsf-persona-store.vala | 28 ++++-- backends/eds/lib/edsf-persona.vala | 31 ++++-- backends/eds/lib/memory-icon.vala | 4 + backends/key-file/kf-backend.vala | 5 + backends/key-file/kf-persona-store.vala | 41 +++++--- backends/key-file/kf-persona.vala | 37 ++++--- backends/libsocialweb/lib/swf-persona-store.vala | 26 +++-- backends/libsocialweb/lib/swf-persona.vala | 20 ++-- backends/libsocialweb/sw-backend.vala | 5 + backends/telepathy/lib/tpf-logger.vala | 11 ++- .../telepathy/lib/tpf-persona-store-cache.vala | 13 ++- backends/telepathy/lib/tpf-persona-store.vala | 5 +- backends/telepathy/lib/tpf-persona.vala | 110 +++++++++++--------- backends/telepathy/tp-backend.vala | 5 + backends/tracker/lib/trf-persona-store.vala | 39 ++++--- backends/tracker/lib/trf-persona.vala | 47 +++++++-- backends/tracker/tr-backend.vala | 5 + folks/abstract-field-details.vala | 4 +- folks/avatar-cache.vala | 5 + folks/backend-store.vala | 5 + folks/debug.vala | 4 + folks/individual-aggregator.vala | 5 + folks/individual.vala | 107 +++++++++---------- folks/note-details.vala | 9 +- folks/object-cache.vala | 55 +++++++--- folks/phone-details.vala | 5 +- folks/postal-address-details.vala | 13 ++- folks/potential-match.vala | 18 ++-- folks/role-details.vala | 13 ++- folks/url-details.vala | 5 +- folks/web-service-details.vala | 5 +- 33 files changed, 452 insertions(+), 256 deletions(-) commit 04b30abb398bb269d29701da833315f9f04e0818 Author: Philip Withnall Date: Thu Dec 8 16:44:51 2011 +0000 tests: Add a test case for bgo#665728 Ported from a C test case by Guillaume Desmottes . See: bgo#665728 tests/folks/Makefile.am | 6 +++ tests/folks/init.vala | 99 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 105 insertions(+), 0 deletions(-) commit 58dba5a8129e498d7aaf8811597208f347f7ff31 Author: Philip Withnall Date: Thu Dec 8 16:21:45 2011 +0000 backends: Tidy up prepare() and unprepare() methods’ mutual exclusion As discovered in bgo#665728, all our prepare() (and unprepare()) methods are currently vulnerable to being run multiple times concurrently from a single thread. Add a _pending_prepare flag to all of them to prevent this. It doesn't need to be locked, since it should only ever be accessed from a single thread (since only a single thread can get through the lock{} recursive mutex at once). Helps: bgo#665728 backends/eds/eds-backend.vala | 27 +++++++++- backends/eds/lib/edsf-persona-store.vala | 23 ++++++++- backends/key-file/kf-backend.vala | 49 +++++++++++++++---- backends/key-file/kf-persona-store.vala | 14 +++++- backends/libsocialweb/lib/swf-persona-store.vala | 9 +++- backends/libsocialweb/sw-backend.vala | 39 ++++++++++----- backends/telepathy/lib/tpf-persona-store.vala | 12 ++++- backends/telepathy/tp-backend.vala | 58 +++++++++++++++------- backends/tracker/lib/trf-persona-store.vala | 14 +++++- backends/tracker/tr-backend.vala | 49 +++++++++++++++---- folks/backend.vala | 12 +++++ folks/individual-aggregator.vala | 20 +++++++- folks/persona-store.vala | 6 ++ 13 files changed, 272 insertions(+), 60 deletions(-) commit 8bdeef859e7c094dbd5e2bbd6c918eb88dfb3044 Author: Philip Withnall Date: Thu Dec 8 14:54:29 2011 +0000 Bug 665728 — prepare() isn't mutually exclusive inside a single thread Fix Tpf.PersonaStore.prepare() to only run once, even if it's called multiple times from the same thread (e.g. if the caller wasn't yielding on the async call returning). Closes: bgo#665728 NEWS | 2 ++ backends/telepathy/lib/tpf-persona-store.vala | 6 +++++- 2 files changed, 7 insertions(+), 1 deletions(-) commit 17e8a1a8dc879f2dbb1be9e4164345c1911075d0 Author: Philip Withnall Date: Thu Dec 8 14:52:33 2011 +0000 telepathy: Improve debugging messages in Tpf.PersonaStore It's a bit hard to differentiate between different instances of Tpf.PersonaStores at the moment, so let's include their addresses in debug messages. Also fix a minor whitespace issue. backends/telepathy/lib/tpf-persona-store.vala | 39 +++++++++++++++++------- 1 files changed, 27 insertions(+), 12 deletions(-) commit 5db7b6b72e409f8db0984bfb85875760929059fc Author: Travis Reitter Date: Fri Nov 11 15:42:44 2011 -0800 Fix the documented name of individuals_changed_detailed.changes folks/individual-aggregator.vala | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 6ab0492a6de58d62ed963a82c0924b3550b762e0 Author: Philip Withnall Date: Tue Dec 6 14:23:08 2011 +0000 Bug 665039 — Crash in folks_backends_sw_backend_add_service Hold a reference to the Sw.Backend while waiting for a SwClient async call to finish in prepare(). Similar changes are made in Swf.PersonaStore to avoid potential bugs there. Closes: bgo#665039 NEWS | 1 + backends/libsocialweb/lib/swf-persona-store.vala | 28 +++++++++++++++++++-- backends/libsocialweb/sw-backend.vala | 9 ++++++- 3 files changed, 34 insertions(+), 4 deletions(-) commit 50bc2ead6f963da7942d1c06cdd5e1a9e354fc85 Author: Travis Reitter Date: Mon Nov 14 14:29:21 2011 -0800 Ensure NameDetails public strings are non-null as we promise. Closes: bug#663889 - crash due to NameDetails which fail to guarantee non-null full-name/nickname NEWS | 2 ++ backends/eds/lib/edsf-persona.vala | 2 ++ backends/telepathy/lib/tpf-persona.vala | 2 ++ backends/tracker/lib/trf-persona.vala | 2 ++ 4 files changed, 8 insertions(+), 0 deletions(-) commit dbe20794ea1d0c1d5841158100b570a5ff1251bc Author: Mario Blättermann Date: Fri Nov 18 17:46:35 2011 +0100 [l10n] Updated German translation po/de.po | 292 ++++++++++++++++++++++++++++++++++++++------------------------ 1 files changed, 178 insertions(+), 114 deletions(-) commit d2f0ae453240153b21ab3434681cfd6739c9790b Author: Travis Reitter Date: Tue Nov 15 13:43:22 2011 -0800 Clear out log handlers when disposing Debug to avoid crashers. In cases where the IndividualAggregator is destroyed and instantiated again (as in some of our tests), we could end up calling the Debug log handlers after destroying the Debug instance (resulting in g_static_rec_mutex_lock/unlock calls on an invalid freed mutex, causing a segfault). Closes: bgo#664158 - Stale log handler can cause segfault when re-creating Aggregator in a single run NEWS | 2 ++ folks/debug.vala | 38 +++++++++++++++++++++++++++++++++++--- 2 files changed, 37 insertions(+), 3 deletions(-) commit bbbae1cb632f4a86221bcf71c9402efd1ec95416 Author: Fran Diéguez Date: Mon Nov 14 10:58:50 2011 +0100 Updated Galician translations po/gl.po | 527 ++++++++++++++++++++++++++++++++++---------------------------- 1 files changed, 287 insertions(+), 240 deletions(-) commit 12586dd87321795e90e9659c9d30b7fc157c3eee Author: Travis Reitter Date: Fri Nov 11 10:37:26 2011 -0800 Bump Vala and GObject Introspection requirements. This bumps them to their first release in their current stable release series. This shrinks the gap between builders' build environments and what our developers build and test with. configure.ac | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 795082dafd856a2971fb575f197c41cdeed964d8 Author: Travis Reitter Date: Thu Nov 10 16:45:35 2011 -0800 Post-release version bump. NEWS | 4 ++++ configure.ac | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-)