platform/upstream/folks.git
12 years agoBug 657065 — Cache keeps around contacts from disabled accounts
Philip Withnall [Mon, 22 Aug 2011 22:54:08 +0000 (23:54 +0100)]
Bug 657065 — Cache keeps around contacts from disabled accounts

Add some extra conditions on loading and storing the Tpf.PersonaStore cache,
so as to prevent loading it when the account is disabled or invalid, and to
prevent storing it unnecessarily.

This also adds some extra debug output to Tpf.PersonaStore's caching methods.

Closes: bgo#657065

12 years agoBug 658002 — defective typelib
Philip Withnall [Wed, 14 Sep 2011 17:34:57 +0000 (18:34 +0100)]
Bug 658002 — defective typelib

Pass the libtool dlname for libfolks.so to g-ir-compiler rather than
libfolks.la.

Closes: bgo#658002

12 years agoUpdated Slovenian translation
Matej Urbančič [Wed, 14 Sep 2011 13:41:20 +0000 (15:41 +0200)]
Updated Slovenian translation

12 years agoRemove extra definition of BACKEND_EDS
Rodrigo Moya [Tue, 13 Sep 2011 10:17:37 +0000 (12:17 +0200)]
Remove extra definition of BACKEND_EDS

12 years agoe-d-s: add test for auto linking via emails and IM addresses
Raul Gutierrez Segales [Tue, 13 Sep 2011 13:51:48 +0000 (14:51 +0100)]
e-d-s: add test for auto linking via emails and IM addresses

12 years agoe-d-s: assume certain e-mail addresseses are IM IDs too
Raul Gutierrez Segales [Tue, 13 Sep 2011 11:44:08 +0000 (12:44 +0100)]
e-d-s: assume certain e-mail addresseses are IM IDs too

Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=657142

12 years agoavatar-cache: Add some more debug output
Philip Withnall [Tue, 13 Sep 2011 21:03:02 +0000 (22:03 +0100)]
avatar-cache: Add some more debug output

12 years agoUpdated Polish translation
Piotr Drąg [Tue, 13 Sep 2011 19:22:52 +0000 (21:22 +0200)]
Updated Polish translation

12 years agoBug 633781 — Allow to set avatar on individuals
Philip Withnall [Fri, 12 Aug 2011 10:18:16 +0000 (12:18 +0200)]
Bug 633781 — Allow to set avatar on individuals

Make Individual.avatar writeable and write new avatars back to the personas
from writeable persona stores in an individual.

Closes: bgo#633781

12 years agobuild: use AM_MAINTAINER_MODE([enable]) instead of AM_MAINTAINER_MODE
Raul Gutierrez Segales [Tue, 13 Sep 2011 09:26:37 +0000 (10:26 +0100)]
build: use AM_MAINTAINER_MODE([enable]) instead of AM_MAINTAINER_MODE

Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=658894

12 years agoBug 658730 — ngettext (Plural forms) needed…
Philip Withnall [Mon, 12 Sep 2011 20:55:04 +0000 (21:55 +0100)]
Bug 658730 — ngettext (Plural forms) needed…

Use ngettext() instead of gettext() for a plural string.

Closes: bgo#658730

12 years agoBug 658874 — Typo?
Philip Withnall [Tue, 13 Sep 2011 07:09:27 +0000 (08:09 +0100)]
Bug 658874 — Typo?

Fix a typo in a translatable string in the Tracker backend.

Closes: bgo#658874

12 years agoBug 658331 — Ensure read-only PersonaStores have empty writeable-properties
Philip Withnall [Mon, 12 Sep 2011 22:31:06 +0000 (23:31 +0100)]
Bug 658331 — Ensure read-only PersonaStores have empty writeable-properties

Ensure that Edsf.PersonaStore.always-writeable-properties is empty for
EDS address books which are read-only. Similarly, ensure that
Edsf.Persona.writeable-properties is also empty for such address books (which
follows because it passes through the value of always-writeable-properties).

No other backends need modifying for this, since no others have a concept
of “read only” except libsocialweb, which already has empty
writeable-properties properties.

Closes: bgo#658331

12 years agoe-d-s: only emit notifications if properties have changed
Raul Gutierrez Segales [Tue, 13 Sep 2011 10:45:17 +0000 (11:45 +0100)]
e-d-s: only emit notifications if properties have changed

This is a follow-up for what was suggested in:

https://bugzilla.gnome.org/show_bug.cgi?id=658411

about dealing with updating properties and emitting notifications.

12 years agoBug 658631 — crash at empathy startup
Philip Withnall [Mon, 12 Sep 2011 22:09:10 +0000 (23:09 +0100)]
Bug 658631 — crash at empathy startup

In the case that a persona is removed and the individual containing that
persona is replaced by a different non-null individual which doesn't contain
that persona (because it's been removed), we need to set the persona's
individual pointer to null rather than the replacement individual.

This stops us tripping the assertion in the setter for Persona.individual.

Closes: bgo#658631

12 years agoindividual-aggregator: Add some more debug output
Philip Withnall [Mon, 12 Sep 2011 22:07:33 +0000 (23:07 +0100)]
individual-aggregator: Add some more debug output

It turns out to be really useful to see what's being emitted by
IndividualAggregator.individuals-changed-detailed.

12 years agoAdded Swedish translation
Daniel Nylander [Mon, 12 Sep 2011 18:26:31 +0000 (20:26 +0200)]
Added Swedish translation

12 years agoCzech translation
Marek Černocký [Sun, 11 Sep 2011 09:15:34 +0000 (11:15 +0200)]
Czech translation

12 years agoAdded Czech language
Marek Černocký [Sun, 11 Sep 2011 09:15:15 +0000 (11:15 +0200)]
Added Czech language

12 years agoe-d-s: Make sure consecutive property changes work
Alexander Larsson [Fri, 9 Sep 2011 12:52:17 +0000 (14:52 +0200)]
e-d-s: Make sure consecutive property changes work

Don't send any notification due to property changes until we've
done updating an entire persona, otherwise code that listens to
such notifies will see the persona in an intermediate state, whic
can cause problems. For instance, if such a callback tries to
change a property it might not recieve change notification for it.

12 years agoe-d-s: Make sure we clear old attributes when setting im_addresses
Alexander Larsson [Fri, 9 Sep 2011 08:25:37 +0000 (10:25 +0200)]
e-d-s: Make sure we clear old attributes when setting im_addresses

The previous code called e_contact_get_attributes() which returns
a copy of the attributes, and tried to remove it with
e_vcard_remove_attribute () which matches on pointer values, so
it always failed.

12 years agoAdded Polish translation
Piotr Drąg [Thu, 8 Sep 2011 20:26:56 +0000 (22:26 +0200)]
Added Polish translation

12 years agoPost-release version bump
Raul Gutierrez Segales [Thu, 8 Sep 2011 18:21:21 +0000 (19:21 +0100)]
Post-release version bump

12 years agoRelease version 0.6.2.1 FOLKS_0_6_2_1
Raul Gutierrez Segales [Thu, 8 Sep 2011 17:51:29 +0000 (18:51 +0100)]
Release version 0.6.2.1

12 years agoIndividualAggregator: copy the list of stores before looping over it
Raul Gutierrez Segales [Thu, 8 Sep 2011 17:19:35 +0000 (18:19 +0100)]
IndividualAggregator: copy the list of stores before looping over it

Because a Backend's list of PersonaStores can change while we are
iterating it, we do a copy before starting.

Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=658580

12 years agoNEWS: add new section for next release
Raul Gutierrez Segales [Thu, 8 Sep 2011 09:53:15 +0000 (10:53 +0100)]
NEWS: add new section for next release

12 years agoPost-release version bump
Raul Gutierrez Segales [Thu, 8 Sep 2011 09:53:00 +0000 (10:53 +0100)]
Post-release version bump

12 years agoRelease version 0.6.2 FOLKS_0_6_2
Raul Gutierrez Segales [Thu, 8 Sep 2011 08:44:16 +0000 (09:44 +0100)]
Release version 0.6.2

12 years agoUpdate @since tags
Raul Gutierrez Segales [Thu, 8 Sep 2011 08:21:04 +0000 (09:21 +0100)]
Update @since tags

12 years agoUpdated galician translations
Fran Dieguez [Thu, 8 Sep 2011 02:01:17 +0000 (04:01 +0200)]
Updated galician translations

12 years agoUpdated NEWS file
Raul Gutierrez Segales [Wed, 7 Sep 2011 22:10:38 +0000 (23:10 +0100)]
Updated NEWS file

12 years agotracker: update link personas test
Raul Gutierrez Segales [Wed, 7 Sep 2011 22:04:07 +0000 (23:04 +0100)]
tracker: update link personas test

12 years agotracker: update IM addresses updates test
Raul Gutierrez Segales [Wed, 7 Sep 2011 22:03:32 +0000 (23:03 +0100)]
tracker: update IM addresses updates test

12 years agotracker: update add persona tes
Raul Gutierrez Segales [Wed, 7 Sep 2011 22:02:28 +0000 (23:02 +0100)]
tracker: update add persona tes

12 years agotracker: update set-im-addresses test
Raul Gutierrez Segales [Wed, 7 Sep 2011 22:01:59 +0000 (23:01 +0100)]
tracker: update set-im-addresses test

Because IM addresses are linkable property, a new Individual
is created when they are modified.

12 years agoe-d-s: update set-im-addresses test
Raul Gutierrez Segales [Wed, 7 Sep 2011 22:01:19 +0000 (23:01 +0100)]
e-d-s: update set-im-addresses test

Because IM addresses are linkable property, a new Individual
is created when they are modified.

12 years agoe-d-s: only emit notifications if linkable properties changed
Raul Gutierrez Segales [Wed, 7 Sep 2011 22:00:48 +0000 (23:00 +0100)]
e-d-s: only emit notifications if linkable properties changed

Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=658411

12 years agoe-d-s: move Set comparison method into it's own class
Raul Gutierrez Segales [Wed, 7 Sep 2011 21:59:41 +0000 (22:59 +0100)]
e-d-s: move Set comparison method into it's own class

This refactoring is so we can reuse the method with other
types.

12 years agoBug 656689 — Re-link personas on linkable properties being changed
Philip Withnall [Tue, 6 Sep 2011 21:22:52 +0000 (22:22 +0100)]
Bug 656689 — Re-link personas on linkable properties being changed

Listen for notifications of changes to the linkable properties of every
persona in the IndividualAggregator. When we receive such a notification,
relink that persona by artificially removing them from the aggregator and
immediately re-adding them.

Like many things in the IndividualAggregator, this is ugly — but it appears
to work, and I can get my head around it.

Closes: bgo#656689

12 years agocore: Fix individuals_changed_detailed mappings for unlinked individuals
Philip Withnall [Tue, 6 Sep 2011 21:20:12 +0000 (22:20 +0100)]
core: Fix individuals_changed_detailed mappings for unlinked individuals

It turns out that we can do a post-processing phase on the mappings to be
emitted by IndividualAggregator.individuals_changed_detailed and ensure that
individuals who've been unlinked are represented by a mapping from themselves
to the set of individuals replacing them, rather than a mapping from
themselves to null, and null to the set of individuals replacing them.

This probably isn't the most efficient way to fix the problem, but it works
and I can just about understand it.

Helps: bgo#656689, bgo#657282

12 years agocore: Be more thorough when removing individuals from the link map
Philip Withnall [Tue, 6 Sep 2011 21:16:44 +0000 (22:16 +0100)]
core: Be more thorough when removing individuals from the link map

Since the values of personas' linkable properties could've changed since we
added them to the link map, we have to be more thorough when removing
individuals from the map. We therefore now remove them by examining all the
values in the map, and removing every mapping to the individual we're
interested in.

Helps: bgo#656689

12 years agocore: Add more debug output and validation to the IndividualAggregator
Philip Withnall [Tue, 6 Sep 2011 21:10:20 +0000 (22:10 +0100)]
core: Add more debug output and validation to the IndividualAggregator

Everyone loves debug output, and validating that we aren't leaving stale
entries in the link map which will later cause whoever's looking into
aggregator bugs to hide in a corner and cry.

Helps: bgo#656689

12 years agocore: Clarify that Persona.linkable_properties doesn't change at runtime
Philip Withnall [Tue, 6 Sep 2011 21:04:20 +0000 (22:04 +0100)]
core: Clarify that Persona.linkable_properties doesn't change at runtime

Helps: bgo#656689

12 years agocore: Ensure we always notify of new Individuals
Philip Withnall [Tue, 6 Sep 2011 20:57:42 +0000 (21:57 +0100)]
core: Ensure we always notify of new Individuals

In the following situation, it was possible for
IndividualAggregator.individuals_changed_detailed to not emit a notification
that an individual was added:

If two personas were added by a given store in the same emission of
PersonaStore.personas_changed, the IA would create an Individual, i1, from
the first and add a mapping (null → i1) to the change set. It would then
process the second, destroying the first individual and creating a new
Individual, i2, (correctly) containing both personas. In doing so, it would
remove the mapping (null → i1) from the change set, but would incorrectly
not add a mapping (null → i2) in its place.

This situation can be extended to others where a single new Individual is
formed from multiple new personas coming from a single emission of
PersonaStore.personas_changed.

Closes: bgo#657282 (again)

12 years agoe-d-s: kill gconfd-2 after running a test
Raul Gutierrez Segales [Wed, 7 Sep 2011 14:52:27 +0000 (15:52 +0100)]
e-d-s: kill gconfd-2 after running a test

I thought we were properly cleaning up the GConf entries
generated by each test run but it turns out that sometimes
gconfd-2 exits /after/ we've supposedly nuked it's directory.
So before cleaning up GConf's files we now kill gconfd-2
to prevent it from sync-ing to disc afterwards.

Helps: https://bugzilla.gnome.org/show_bug.cgi?id=658327

12 years agoBump required Vala version.
Travis Reitter [Wed, 7 Sep 2011 21:23:39 +0000 (14:23 -0700)]
Bump required Vala version.

This avoids breaking the build due to valac --fatal-warnings for our
internal code.

12 years agoUpdate for translatable strings in group-details
Travis Reitter [Wed, 7 Sep 2011 21:17:53 +0000 (14:17 -0700)]
Update for translatable strings in group-details

12 years agoFix birthday calculation in eds tests.
Travis Reitter [Wed, 7 Sep 2011 18:37:12 +0000 (11:37 -0700)]
Fix birthday calculation in eds tests.

It's not nice to discriminate against people born outside of UTC.

12 years agoUpdated Slovenian translation
Matej Urbančič [Wed, 7 Sep 2011 13:36:23 +0000 (15:36 +0200)]
Updated Slovenian translation

12 years agoAdded British English translation
Bruce Cowan [Wed, 7 Sep 2011 12:47:10 +0000 (13:47 +0100)]
Added British English translation

12 years agoe-d-s: remove invalid assertion in set-roles test case
Raul Gutierrez Segales [Wed, 7 Sep 2011 11:42:31 +0000 (12:42 +0100)]
e-d-s: remove invalid assertion in set-roles test case

12 years agoe-d-s: free resources properly between tests cases on link-persona test unit
Raul Gutierrez Segales [Wed, 7 Sep 2011 11:41:09 +0000 (12:41 +0100)]
e-d-s: free resources properly between tests cases on link-persona test unit

12 years agoe-d-s: eliminate another case of possible WebServiceFieldDetails with null value
Raul Gutierrez Segales [Wed, 7 Sep 2011 11:32:08 +0000 (12:32 +0100)]
e-d-s: eliminate another case of possible WebServiceFieldDetails with null value

12 years agoe-d-s: don't instantiate WebServiceFieldDetails with null values
Raul Gutierrez Segales [Wed, 7 Sep 2011 10:55:08 +0000 (11:55 +0100)]
e-d-s: don't instantiate WebServiceFieldDetails with null values

Helps: https://bugzilla.gnome.org/show_bug.cgi?id=658327

12 years agolibsocialweb: update bug link in lsw for quiescence support
Raul Gutierrez Segales [Wed, 7 Sep 2011 10:23:34 +0000 (11:23 +0100)]
libsocialweb: update bug link in lsw for quiescence support

12 years agoBug 657783 — Prefer data from primary store when picking Individual values
Philip Withnall [Sat, 3 Sep 2011 17:36:24 +0000 (18:36 +0100)]
Bug 657783 — Prefer data from primary store when picking Individual values

Use a consistent high-level order over personas in an individual to choose
which one to use for the value of single-valued properties such as alias,
avatar and gender.

Closes: bgo#657783

12 years agocore: Clarify nullability of a few properties
Philip Withnall [Sat, 3 Sep 2011 17:35:24 +0000 (18:35 +0100)]
core: Clarify nullability of a few properties

AliasDetails.alias, NameDetails.nickname and NameDetails.full_name must never
be set to null. The empty string represents an unset value for these
properties.

12 years agoUpdated Slovenian translation
Matej Urbančič [Tue, 6 Sep 2011 20:44:04 +0000 (22:44 +0200)]
Updated Slovenian translation

12 years agoAdded sl for Slovenian translation
Matej Urbančič [Tue, 6 Sep 2011 20:42:33 +0000 (22:42 +0200)]
Added sl for Slovenian translation

12 years agoAdded Slovenian translation
Matej Urbančič [Tue, 6 Sep 2011 20:42:19 +0000 (22:42 +0200)]
Added Slovenian translation

12 years agoaggregator: Fix a typo in emit_individuals_changed()
Philip Withnall [Sun, 4 Sep 2011 17:14:04 +0000 (18:14 +0100)]
aggregator: Fix a typo in emit_individuals_changed()

12 years agoaggregator: Remove a useless duplicated set
Philip Withnall [Sun, 4 Sep 2011 16:49:26 +0000 (17:49 +0100)]
aggregator: Remove a useless duplicated set

This appears to be lingering from the dark days when we used
GLib.List<Persona>.

12 years agoaggregator: Factor out code to add personas to the link map
Philip Withnall [Sun, 4 Sep 2011 14:03:15 +0000 (15:03 +0100)]
aggregator: Factor out code to add personas to the link map

This doesn't change behaviour at all (apart from debug messages), but should
make the code a bit more maintainable.

12 years agoWorkaround for Tpf.PersonaStores with no stored channels support
Raul Gutierrez Segales [Tue, 6 Sep 2011 12:05:45 +0000 (13:05 +0100)]
Workaround for Tpf.PersonaStores with no stored channels support

Helps: https://bugzilla.gnome.org/show_bug.cgi?id=656184

12 years agoe-d-s: add test case for settings roles
Raul Gutierrez Segales [Sun, 4 Sep 2011 14:21:44 +0000 (15:21 +0100)]
e-d-s: add test case for settings roles

12 years agoe-d-s: extend add persona test to handle Roles
Raul Gutierrez Segales [Sat, 3 Sep 2011 19:30:12 +0000 (20:30 +0100)]
e-d-s: extend add persona test to handle Roles

12 years agoe-d-s: implement support for RoleDetails
Raul Gutierrez Segales [Sat, 3 Sep 2011 17:28:09 +0000 (18:28 +0100)]
e-d-s: implement support for RoleDetails

Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=657969

12 years agobuild: tests don't use <folks/*.h> so add path to folks/
Raul Gutierrez Segales [Mon, 5 Sep 2011 22:33:08 +0000 (23:33 +0100)]
build: tests don't use <folks/*.h> so add path to folks/

12 years agolibsocialweb: make PersonaStores immediately quiescent
Raul Gutierrez Segales [Mon, 5 Sep 2011 21:25:56 +0000 (22:25 +0100)]
libsocialweb: make PersonaStores immediately quiescent

Because we don't know if a libsocialweb service has 0
contacts or is not well configured or is not authenticated, etc.;
we might end up forever for contacts to arrive and never
achieve quiescence. Until libsocialweb provides us with more
information about the status of service (is it configured and
authenticated? How many contacts should we receive? etc.) we
immediately declare it quiescent after preparing it.

12 years agotelepathy: Potentially fix is-quiescent
Philip Withnall [Mon, 5 Sep 2011 18:53:45 +0000 (19:53 +0100)]
telepathy: Potentially fix is-quiescent

See: bgo#656184

12 years agoeds: Immediately make non-browseable Edsf.PersonaStores reach quiescence
Philip Withnall [Mon, 5 Sep 2011 20:27:27 +0000 (21:27 +0100)]
eds: Immediately make non-browseable Edsf.PersonaStores reach quiescence

For example, some LDAP servers may not be browseable (i.e. they're search
only), so should reach quiescence immediately. This prevents the
IndividualAggregator waiting for ever for them to become quiescent.

Helps: bgo#656184

12 years ago[l10n] Updated German translation
Mario Blättermann [Mon, 5 Sep 2011 19:06:19 +0000 (21:06 +0200)]
[l10n] Updated German translation

12 years agoUpdated Spanish translation
dmustieles [Mon, 5 Sep 2011 11:45:53 +0000 (13:45 +0200)]
Updated Spanish translation

12 years agoUpdated galician translations
Fran Dieguez [Sun, 4 Sep 2011 22:17:10 +0000 (00:17 +0200)]
Updated galician translations

12 years agotests: Port the remaining tests to use individuals_changed_detailed
Philip Withnall [Mon, 29 Aug 2011 20:59:02 +0000 (21:59 +0100)]
tests: Port the remaining tests to use individuals_changed_detailed

Helps: bgo#657282

12 years agotests: Expand the aggregation test to check both individuals_changed signals
Philip Withnall [Mon, 29 Aug 2011 15:32:27 +0000 (16:32 +0100)]
tests: Expand the aggregation test to check both individuals_changed signals

Helps: bgo#657282

12 years agoBug 657282 — Add an IndividualAggregator.individuals_changed_detailed signal
Philip Withnall [Wed, 24 Aug 2011 21:38:16 +0000 (22:38 +0100)]
Bug 657282 — Add an IndividualAggregator.individuals_changed_detailed signal

This supersedes IndividualAggregator.individuals_changed, providing more
information about the relationships between the added and removed individuals.

Closes: bgo#657282

12 years agoBug 657789 — Don't claim uneditable eds fields as writable
Philip Withnall [Sun, 4 Sep 2011 11:58:36 +0000 (12:58 +0100)]
Bug 657789 — Don't claim uneditable eds fields as writable

Support setting the writeable-properties property of Edsf.Persona and the
always-writeable-properties property of Edsf.PersonaStore from the set of
supported fields exported by the address book.

Closes: bgo#657789

12 years agocore: Add GROUPS and INVALID to PersonaDetail
Philip Withnall [Sun, 4 Sep 2011 11:56:36 +0000 (12:56 +0100)]
core: Add GROUPS and INVALID to PersonaDetail

One is obviously necessary. The other is necessary for use as an error return
from a function in the fix for bgo#657789.

This also adds some bounds checking to PersonaStore.detail_key(), which can
now return null if the PersonaDetail wasn't recognised.

Helps: bgo#657789

12 years agoe-d-s: simplify property checking in add-persona test
Raul Gutierrez Segales [Sun, 4 Sep 2011 12:41:19 +0000 (13:41 +0100)]
e-d-s: simplify property checking in add-persona test

12 years agoUpdated Spanish translation
Daniel Mustieles [Sun, 4 Sep 2011 10:02:48 +0000 (12:02 +0200)]
Updated Spanish translation

12 years agoAdded Spanish translation to LINGUAS
Daniel Mustieles [Sun, 4 Sep 2011 09:28:10 +0000 (11:28 +0200)]
Added Spanish translation to LINGUAS

12 years agoUpdated Spanish translation
Daniel Mustieles [Sun, 4 Sep 2011 09:27:29 +0000 (11:27 +0200)]
Updated Spanish translation

12 years agoFixed typo in string («paramter»)
Daniel Mustieles [Sun, 4 Sep 2011 09:10:10 +0000 (11:10 +0200)]
Fixed typo in string («paramter»)

12 years agoe-d-s: add birthday to list of writeable properties
Raul Gutierrez Segales [Sat, 3 Sep 2011 17:29:42 +0000 (18:29 +0100)]
e-d-s: add birthday to list of writeable properties

12 years agoUpdate NEWS file
Raul Gutierrez Segales [Sat, 3 Sep 2011 14:37:53 +0000 (15:37 +0100)]
Update NEWS file

12 years agoe-d-s: add test for setting birthday on an e-d-s Persona
Raul Gutierrez Segales [Sat, 3 Sep 2011 12:58:31 +0000 (13:58 +0100)]
e-d-s: add test for setting birthday on an e-d-s Persona

Helps: https://bugzilla.gnome.org/show_bug.cgi?id=657971

12 years agoe-d-s: extend add-persona test to include the BirthdayDetails interface
Raul Gutierrez Segales [Sat, 3 Sep 2011 12:49:58 +0000 (13:49 +0100)]
e-d-s: extend add-persona test to include the BirthdayDetails interface

12 years agoe-d-s: implement BirthdayDetails
Raul Gutierrez Segales [Sat, 3 Sep 2011 12:37:50 +0000 (13:37 +0100)]
e-d-s: implement BirthdayDetails

Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=657971

12 years agoDocumentation: state the birthday's DateTime objects are UTC
Raul Gutierrez Segales [Sat, 3 Sep 2011 14:13:22 +0000 (15:13 +0100)]
Documentation: state the birthday's DateTime objects are UTC

12 years agoBug 656184 — Add is-quiescent property
Philip Withnall [Fri, 2 Sep 2011 20:15:35 +0000 (21:15 +0100)]
Bug 656184 — Add is-quiescent property

This allows clients to determine when the IndividualAggregator has reached
a quiescent state — it's received and linked all of the personas it should
do at startup, and from that point onwards will only relink personas in
response to (for example), persona stores dynamically being added and removed
at runtime.

Closes: bgo#656184

12 years agoeds/tracker: Ensure the PersonaStores are removed on error
Philip Withnall [Fri, 2 Sep 2011 20:15:08 +0000 (21:15 +0100)]
eds/tracker: Ensure the PersonaStores are removed on error

12 years agokey-file: Yield when setting properties on new personas
Philip Withnall [Fri, 2 Sep 2011 18:27:33 +0000 (19:27 +0100)]
key-file: Yield when setting properties on new personas

This fixes the libsocialweb aggregation test.

Helps: bgo#657510

12 years agoeds: Ensure that property changes are signalled before .change_*() returns
Philip Withnall [Wed, 31 Aug 2011 21:21:15 +0000 (22:21 +0100)]
eds: Ensure that property changes are signalled before .change_*() returns

We can't rely on E.BookClientView.objects_modified being emitted before
E.BookClient.modify_contact() returns. In order to guarantee that the
relevant properties will be notified before Edsf.Persona.change_*() returns,
we therefore move all calls to modify_contact() into a new
Edsf.PersonaStore._commit_modified_property() method, and block returning
from that on receipt of a property change notification from e-d-s.

However, we also add a timeout to _commit_modified_property() (defaulting to
30 seconds), so that if we don't receive a property change notification in
that time period, we error out from the .change_*() method.

Helps: bgo#657510

12 years agocore: Add GroupDetails.change_groups()
Philip Withnall [Tue, 30 Aug 2011 22:24:58 +0000 (23:24 +0100)]
core: Add GroupDetails.change_groups()

This allows the groups of an implementing class to all be changed
simultaneously, asynchronously and with proper error notification.

Closes: bgo#657510

12 years agocore: Add WebServiceDetails.change_web_service_addresses()
Philip Withnall [Tue, 30 Aug 2011 19:34:32 +0000 (20:34 +0100)]
core: Add WebServiceDetails.change_web_service_addresses()

This allows the web service addresses of an implementing class to be changed
asynchronously with proper error notification.

Helps: bgo#657510

12 years agocore: Add UrlDetails.change_urls()
Philip Withnall [Tue, 30 Aug 2011 19:20:23 +0000 (20:20 +0100)]
core: Add UrlDetails.change_urls()

This allows the URLs of an implementing class to be changed asynchronously
with proper error notification.

Helps: bgo#657510

12 years agocore: Add RoleDetails.change_roles()
Philip Withnall [Tue, 30 Aug 2011 19:11:53 +0000 (20:11 +0100)]
core: Add RoleDetails.change_roles()

This allows the roles of an implementing class to be changed asynchronously
with proper error notification.

Helps: bgo#657510

12 years agocore: Add PostalAddressDetails.change_postal_addresses()
Philip Withnall [Tue, 30 Aug 2011 19:03:00 +0000 (20:03 +0100)]
core: Add PostalAddressDetails.change_postal_addresses()

This allows the postal addresses of an implementing class to be changed
asynchronously with proper error notification.

Helps: bgo#657510

12 years agocore: Add PhoneDetails.change_phone_numbers()
Philip Withnall [Tue, 30 Aug 2011 18:55:32 +0000 (19:55 +0100)]
core: Add PhoneDetails.change_phone_numbers()

This allows the phone numbers of an implementing class to be changed
asynchronously with proper error notification.

Helps: bgo#657510