Matej Urbančič [Tue, 6 Sep 2011 20:44:04 +0000 (22:44 +0200)]
Updated Slovenian translation
Matej Urbančič [Tue, 6 Sep 2011 20:42:33 +0000 (22:42 +0200)]
Added sl for Slovenian translation
Matej Urbančič [Tue, 6 Sep 2011 20:42:19 +0000 (22:42 +0200)]
Added Slovenian translation
Philip Withnall [Sun, 4 Sep 2011 17:14:04 +0000 (18:14 +0100)]
aggregator: Fix a typo in emit_individuals_changed()
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>.
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.
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
Raul Gutierrez Segales [Sun, 4 Sep 2011 14:21:44 +0000 (15:21 +0100)]
e-d-s: add test case for settings 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
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
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/
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.
Philip Withnall [Mon, 5 Sep 2011 18:53:45 +0000 (19:53 +0100)]
telepathy: Potentially fix is-quiescent
See: bgo#656184
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
Mario Blättermann [Mon, 5 Sep 2011 19:06:19 +0000 (21:06 +0200)]
[l10n] Updated German translation
dmustieles [Mon, 5 Sep 2011 11:45:53 +0000 (13:45 +0200)]
Updated Spanish translation
Fran Dieguez [Sun, 4 Sep 2011 22:17:10 +0000 (00:17 +0200)]
Updated galician translations
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
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
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
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
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
Raul Gutierrez Segales [Sun, 4 Sep 2011 12:41:19 +0000 (13:41 +0100)]
e-d-s: simplify property checking in add-persona test
Daniel Mustieles [Sun, 4 Sep 2011 10:02:48 +0000 (12:02 +0200)]
Updated Spanish translation
Daniel Mustieles [Sun, 4 Sep 2011 09:28:10 +0000 (11:28 +0200)]
Added Spanish translation to LINGUAS
Daniel Mustieles [Sun, 4 Sep 2011 09:27:29 +0000 (11:27 +0200)]
Updated Spanish translation
Daniel Mustieles [Sun, 4 Sep 2011 09:10:10 +0000 (11:10 +0200)]
Fixed typo in string («paramter»)
Raul Gutierrez Segales [Sat, 3 Sep 2011 17:29:42 +0000 (18:29 +0100)]
e-d-s: add birthday to list of writeable properties
Raul Gutierrez Segales [Sat, 3 Sep 2011 14:37:53 +0000 (15:37 +0100)]
Update NEWS file
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
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
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
Raul Gutierrez Segales [Sat, 3 Sep 2011 14:13:22 +0000 (15:13 +0100)]
Documentation: state the birthday's DateTime objects are UTC
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
Philip Withnall [Fri, 2 Sep 2011 20:15:08 +0000 (21:15 +0100)]
eds/tracker: Ensure the PersonaStores are removed on error
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
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
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
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
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
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
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
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
Philip Withnall [Tue, 30 Aug 2011 18:47:26 +0000 (19:47 +0100)]
core: Add NoteDetails.change_notes()
This allows the notes of an implementing class to be changed asynchronously
with proper error notification.
Helps: bgo#657510
Philip Withnall [Sun, 28 Aug 2011 21:06:57 +0000 (22:06 +0100)]
core: Add NameDetails.change_*() methods
This allows the names of an implementing class to be changed asynchronously
with proper error notification.
Helps: bgo#657510
Philip Withnall [Sun, 28 Aug 2011 20:41:02 +0000 (21:41 +0100)]
core: Make NameDetails.structured_name nullable
It effectively was before; now it's official.
Philip Withnall [Sun, 28 Aug 2011 20:26:24 +0000 (21:26 +0100)]
core: Add LocalIdDetails.change_local_ids()
This allows the local IDs of an implementing class to be changed asynchronously
with proper error notification.
Helps: bgo#657510
Philip Withnall [Sun, 28 Aug 2011 20:19:55 +0000 (21:19 +0100)]
eds: Fix a typo in a doc comment
Philip Withnall [Sun, 28 Aug 2011 20:12:45 +0000 (21:12 +0100)]
core: Add GenderDetails.change_gender()
This allows the gender of an implementing class to be changed asynchronously
with proper error notification.
Helps: bgo#657510
Philip Withnall [Sun, 28 Aug 2011 19:19:09 +0000 (20:19 +0100)]
core: Add FavouriteDetails.change_is_favourite()
This allows the favouriteness of an implementing class to be changed
asynchronously with proper error notification.
Helps: bgo#657510
Philip Withnall [Sun, 28 Aug 2011 18:58:21 +0000 (19:58 +0100)]
core: Add EmailDetails.change_email_addresses()
This allows the e-mail addresses of an implementing class to be changed
asynchronously with proper error notification.
Helps: bgo#657510
Philip Withnall [Sun, 28 Aug 2011 18:46:58 +0000 (19:46 +0100)]
core: Add BirthdayDetails.change_birthday() and .change_calendar_event_id()
These allows the birthday (and its calendar event) of an implementing class
to be changed asynchronously with proper error notification.
Helps: bgo#657510
Philip Withnall [Sun, 28 Aug 2011 18:39:22 +0000 (19:39 +0100)]
core: Make BirthdayDetails.birthday nullable
It effectively was before; now it's official.
Philip Withnall [Sun, 28 Aug 2011 18:33:18 +0000 (19:33 +0100)]
core: Add AvatarDetails.change_avatar()
This allows the avatar of an implementing class to be changed asynchronously
with proper error notification.
Helps: bgo#657510
Philip Withnall [Sat, 27 Aug 2011 16:11:00 +0000 (17:11 +0100)]
core: Add ImDetails.change_im_addresses()
This allows the IM addresses of an implementing class to be changed
asynchronously with proper error notification.
Helps: bgo#657510
Philip Withnall [Sat, 27 Aug 2011 14:58:30 +0000 (15:58 +0100)]
core: Add AliasDetails.change_alias()
This allows the alias of an implementing class to be changed asynchronously
with proper error notification.
Helps: bgo#657510
Philip Withnall [Sat, 27 Aug 2011 15:25:37 +0000 (16:25 +0100)]
core: Add Folks.PropertyError
Helps: bgo#657510
Raul Gutierrez Segales [Fri, 2 Sep 2011 10:19:59 +0000 (11:19 +0100)]
e-d-s: make sure we also remove GConf's configs before running tests
Commit
e0b99581 tries to remove GConf's config *after* a test
execution. But if the test fails, clean up might not happen. So
this commit adds try to remove configs *before* we start.
Raul Gutierrez Segales [Fri, 2 Sep 2011 09:55:24 +0000 (10:55 +0100)]
IndividualAggregator: check for the writeable store was wrong
We were checking for matching type_id to see if a PersonaStore
was the configured writeable store, instead we should do a
pointer comparison.
Raul Gutierrez Segales [Thu, 1 Sep 2011 23:18:57 +0000 (00:18 +0100)]
build: previous commit doesn't cover the tracker disabled case
Raul Gutierrez Segales [Thu, 1 Sep 2011 22:16:27 +0000 (23:16 +0100)]
tracker: conditional compilation of GLib.SpawnError exception handling
Starting Tracker 0.10.6, the GLib.SpawnError is exception is thrown
when calling Tracker.Sparql.Connection.get (). So we need to test
for the installed version and catch or not the exception, accordingly.
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=657650
Raul Gutierrez Segales [Thu, 1 Sep 2011 15:40:11 +0000 (16:40 +0100)]
e-d-s: more coding style cleanup in the persona store test
Raul Gutierrez Segales [Thu, 1 Sep 2011 15:35:37 +0000 (16:35 +0100)]
e-d-s: remove unused variable from persona store test
Raul Gutierrez Segales [Thu, 1 Sep 2011 15:29:02 +0000 (16:29 +0100)]
e-d-s: make the persona stores test follow our coding style
Raul Gutierrez Segales [Wed, 31 Aug 2011 21:48:56 +0000 (22:48 +0100)]
interface: throw some light on LocalIdDetail's cryptic comments
Raul Gutierrez Segales [Wed, 31 Aug 2011 21:24:18 +0000 (22:24 +0100)]
tracker: update linking test to use iid instead of uid
Raul Gutierrez Segales [Wed, 31 Aug 2011 22:03:10 +0000 (23:03 +0100)]
tracker: use iid instead of uid when linking via local ids
Raul Gutierrez Segales [Wed, 31 Aug 2011 18:57:07 +0000 (19:57 +0100)]
e-d-s: add test to link personas from different stores
This test checks what was fixed in:
https://bugzilla.gnome.org/show_bug.cgi?id=657635
Raul Gutierrez Segales [Wed, 31 Aug 2011 16:01:11 +0000 (17:01 +0100)]
e-d-s: make address book uri a settable property in the test Backend
This allows us to instantiate multiple Backends, each one associated
to a it's own address book, which comes in handy for tests involving
multiple e-d-s PersonaStores.
Raul Gutierrez Segales [Mon, 29 Aug 2011 17:27:48 +0000 (18:27 +0100)]
e-d-s: update link-personas test to use iid instead of contact_id
Raul Gutierrez Segales [Mon, 29 Aug 2011 17:26:27 +0000 (18:26 +0100)]
e-d-s: use this.local_ids in linkable_property_to_links ()
Otherwise, this method can have a different behaviour depending
on the state of the current Persona depending on whether
this.local_ids was called before or not.
Raul Gutierrez Segales [Mon, 29 Aug 2011 17:25:00 +0000 (18:25 +0100)]
e-d-s: we should use the Persona's iid as local-ids
If we don't and use the contact_id as before, linking Personas
from different PersonaStores won't work.
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=657635
Raul Gutierrez Segales [Mon, 29 Aug 2011 14:47:37 +0000 (15:47 +0100)]
e-d-s: default trust level for PersonaStores is PARTIAL
Without this, we can't link personas from different
(e-d-s) PersonaStores.
Helps: https://bugzilla.gnome.org/show_bug.cgi?id=657635
Raul Gutierrez Segales [Wed, 31 Aug 2011 20:27:39 +0000 (21:27 +0100)]
e-d-s: make sure we remove GConf's configs between tests
When exercising GConf more than the usual, by creating multiple
address books or such, we might leave things in an inconsistent
state that might affect the tests that come afterwards.
Philip Withnall [Wed, 31 Aug 2011 18:30:10 +0000 (19:30 +0100)]
tracker: Fix the match-im-addresses test
Due to the Tracker tests now running with the tracker persona store as the
writeable store, Tracker personas in the tests are now linked by their
linkeable properties (as their persona store is now fully trusted due to
being the writeable store).
This caused the two personas in the match-im-addresses test to be linked
together implicitly by the aggregator, when the test case assumed they
weren't. This broke the test.
This commit fixes the test permanently by changing the way we consider
potential matches based on IM addresses. Previously, we only indicated a
potential match if the two individuals under consideration shared a common
IM address + protocol combination. This commit changes that so that two
individuals are now considered to potentially match if they share a common
IM address *only*. Protocols are no longer considered.
This allows us to change the way the personas are set up in the
match-im-addresses test so that they're no longer implicitly linked by the
aggregator.
Raul Gutierrez Segales [Wed, 31 Aug 2011 14:19:53 +0000 (15:19 +0100)]
e-d-s: fix indentation in tests backend
Raul Gutierrez Segales [Wed, 31 Aug 2011 11:19:00 +0000 (12:19 +0100)]
build: Bump the e-d-s dependency to 3.1.5
We totally missed this on previous releases and
it is now causing problems for packagers.
Philip Withnall [Tue, 9 Aug 2011 16:23:12 +0000 (18:23 +0200)]
Bug 653777 — Add a helper function to create a writable persona
This adds IndividualAggregator.ensure_individual_property_writeable(), which
returns a persona which has the specified property writeable in the specified
individual. If no such persona exists already, a new one is created and
linked to the individual. If that all fails, an error is returned.
This allows for clients to write to properties of personas with confidence
that the updates will be written out to the backend stores. (Achieved by
calling IndividualAggregator.ensure_individual_property_writeable() first
and only writing to the property if that call succeeds.)
Closes: bgo#653777
Philip Withnall [Thu, 11 Aug 2011 11:57:25 +0000 (13:57 +0200)]
key-file: Allow empty Kf.Personas to be added to the persona store
This is necessary for the tests for bgo#653777. It removes the error which
would previously be thrown when trying to add a persona to Kf.PersonaStore
with no properties.
Helps: bgo#653777
Philip Withnall [Thu, 11 Aug 2011 11:55:10 +0000 (13:55 +0200)]
core: Add PersonaStore:always-writeable-properties
This complements Persona:writeable-properties, listing the properties which
are guaranteed to always be writeable on the personas in a given persona
store. This is in contrast to Persona:writeable-properties, which may list
extra properties which are only writeable on that particular persona.
This could be the case with, for example, personas representing the user,
which might have extra writeable properties to allow the user to change their
alias or avatar.
Helps: bgo#653777
Travis Reitter [Mon, 29 Aug 2011 20:32:06 +0000 (13:32 -0700)]
Fix NEWS: there never was a 0.5.3 release.
Travis Reitter [Mon, 29 Aug 2011 17:58:24 +0000 (10:58 -0700)]
Use the key-file backend for writes in general tests.
See commit
ef36f347 for more details.
Raul Gutierrez Segales [Mon, 29 Aug 2011 11:17:15 +0000 (12:17 +0100)]
Post-release version bump
Philip Withnall [Mon, 29 Aug 2011 11:16:44 +0000 (12:16 +0100)]
build: Fix the NEWS file
More haste, less speed…
Philip Withnall [Sat, 27 Aug 2011 13:25:28 +0000 (14:25 +0100)]
Bug 645056 — TpLowlevel library should have only static public functions
Remove the TpLowlevel class from the TpLowlevel library and instead place
all the functions statically in the “FolksTpLowlevel” namespace.
Closes: bgo#645056
Raul Gutierrez Segales [Mon, 29 Aug 2011 09:18:50 +0000 (10:18 +0100)]
Release version 0.6.1
Raul Gutierrez Segales [Mon, 29 Aug 2011 09:49:56 +0000 (10:49 +0100)]
tracker: catch GLib.SpawnError when getting a connection
Raul Gutierrez Segales [Mon, 29 Aug 2011 09:02:05 +0000 (10:02 +0100)]
Add myself as maintainer so I can upload tarballs, etc
Philip Withnall [Sat, 27 Aug 2011 15:25:11 +0000 (16:25 +0100)]
tracker: Remove “alias” from the writeable properties list of Trf.Persona
Trf.Persona no longer implements AliasDetails.
Philip Withnall [Thu, 25 Aug 2011 18:17:27 +0000 (19:17 +0100)]
Bug 657332 — Add linking link-individuals
Add a `linking link-individuals` subcommand to folks-inspect. Note: this
appears to break readline command completion for the `linking` command in
certain situations (e.g. if you tab-complete the name of the command first).
I can't fix this for love or money. Pigs will fly before I manage to work
out why readline hates me so much.
Closes: bgo#657332
Travis Reitter [Fri, 26 Aug 2011 17:33:38 +0000 (10:33 -0700)]
Don't require that zero Individuals be removed after auto-linking.
Travis Reitter [Fri, 26 Aug 2011 17:31:36 +0000 (10:31 -0700)]
Make sure Tracker tests actually use the Tracker backend for writes.
Travis Reitter [Fri, 26 Aug 2011 17:16:17 +0000 (10:16 -0700)]
Ignore edsf-persona-store.c for translations.
Travis Reitter [Fri, 26 Aug 2011 16:41:05 +0000 (09:41 -0700)]
Properly handle 'url' TYPE for URLs in Tracker backend.
Travis Reitter [Fri, 26 Aug 2011 15:00:32 +0000 (08:00 -0700)]
Correctly spell ERROR_VALAFLAGS.
Travis Reitter [Fri, 26 Aug 2011 14:59:31 +0000 (07:59 -0700)]
Don't use ERROR_CFLAGS yet. Vala doesn't guarantee warning-free C.
Travis Reitter [Fri, 26 Aug 2011 14:47:44 +0000 (07:47 -0700)]
Use the key-file backend for writes in tests for non-writeable backends.
We could have used the EDS backend, but this helps keep the execution
of the tests as simple as possible.
This fixes a bug in the libsocialweb aggregation test where it was
using the EDS backend from the Aggregator default but its
FOLKS_BACKEND_STORE_KEY_FILE_PATH didn't include the EDS backend, so
it had nowhere to store its linking personas.
Raul Gutierrez Segales [Fri, 26 Aug 2011 12:19:59 +0000 (13:19 +0100)]
e-d-s: add urls to list of writeable properties
Raul Gutierrez Segales [Fri, 26 Aug 2011 10:55:18 +0000 (11:55 +0100)]
IndividualAggregator: initialize primary-store property to NULL
Raul Gutierrez Segales [Fri, 26 Aug 2011 10:32:05 +0000 (11:32 +0100)]
IndividualAggregator: emit notifications for primary-store property