platform/upstream/folks.git
11 years agobuild: Bump EDS dependency to 3.9.1
Philip Withnall [Wed, 31 Jul 2013 12:24:58 +0000 (14:24 +0200)]
build: Bump EDS dependency to 3.9.1

This EDS version fixes a Vala binding which was causing folks to
not build.

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

11 years agoconsider an individual as favorite if one of its persona is a favorite
Guillaume Desmottes [Wed, 31 Jul 2013 10:55:38 +0000 (12:55 +0200)]
consider an individual as favorite if one of its persona is a favorite

We used to consider all the personas as having the "is-favourite" property
defined. So _update_single_valued_property was giving the priority to the
primary store (usually EDS) leading to the individual being considered as
unfavourite even if it has a Telepathy persona as favourite.

We now consider the "is-favourite" property being defined if it's set to TRUE
so any favourite persona will take presedence.

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

11 years agokey-file: do not use deprecated loop_run_with_non_fatal_timeout()
Gustavo Padovan [Fri, 26 Jul 2013 09:48:33 +0000 (10:48 +0100)]
key-file: do not use deprecated loop_run_with_non_fatal_timeout()

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

11 years agoFix coding style in previous patch
Xavier Claessens [Mon, 29 Jul 2013 08:34:39 +0000 (10:34 +0200)]
Fix coding style in previous patch

11 years agoTpfPersona: Manage the TpContact weak ref ourself instead of using GWeakRef
Xavier Claessens [Wed, 17 Jul 2013 10:51:49 +0000 (12:51 +0200)]
TpfPersona: Manage the TpContact weak ref ourself instead of using GWeakRef

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

11 years agobuild: distcheck fails trying to remove a srcdir file
Travis Reitter [Mon, 8 Jul 2013 23:23:30 +0000 (16:23 -0700)]
build: distcheck fails trying to remove a srcdir file

When we referenced $(srcdir)/libfolks_telepathy_la_vala.stamp, we were
telling automake that it was OK to delete it from the srcdir, which is
considered bad form. By referring to it from the builddir, we don't
implicitly suggest it can be deleted (as it is as a part of its creation
process).

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

11 years agodocs: don't include the img/* content to avoid a build break
Travis Reitter [Mon, 8 Jul 2013 17:15:35 +0000 (10:15 -0700)]
docs: don't include the img/* content to avoid a build break

This ignores content in the img/ subdir to avoid build errors if it's empty
(as it currently is). This directory will store custom images, so if we add
any, we will need to re-add those files to the appropriate *_DATA
definitions.

11 years agobuild: don't depend on tp-zeitgeist.vapi for --disable-zeitgeist
Travis Reitter [Mon, 8 Jul 2013 16:14:09 +0000 (09:14 -0700)]
build: don't depend on tp-zeitgeist.vapi for --disable-zeitgeist

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

11 years agoRevert "docs: fix the path to the backend support library header files"
Philip Withnall [Mon, 8 Jul 2013 14:05:42 +0000 (15:05 +0100)]
Revert "docs: fix the path to the backend support library header files"

This reverts commit a945327bcbbab2af0c4871e9cbb70080ec71db8b.

See commit 311690817f40affee131cbd64870f9f5c4d32196 for details.

11 years agoRevert "build: Don’t build Vala headers in a subdirectory unnecessarily"
Philip Withnall [Mon, 8 Jul 2013 11:49:16 +0000 (12:49 +0100)]
Revert "build: Don’t build Vala headers in a subdirectory unnecessarily"

This reverts commit 4c06ecc26bfde7397357ef4ae7ad83a5925db43d
because it caused build failures when building folks for the first time
without a system-installed copy of the development headers.

11 years agoBug 703709 — can't compile folks. fails at GISCAN TpLowlevel-0.6.gir
Philip Withnall [Mon, 8 Jul 2013 11:41:16 +0000 (12:41 +0100)]
Bug 703709 — can't compile folks. fails at GISCAN TpLowlevel-0.6.gir

Add a missing GNU Make dependency for the GIR file.

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

11 years agodocs: links cannot span multiple lines
Travis Reitter [Fri, 5 Jul 2013 22:41:39 +0000 (15:41 -0700)]
docs: links cannot span multiple lines

11 years agodocs: correctly delimit links in the tp-zeitgeist comments
Travis Reitter [Fri, 5 Jul 2013 22:39:19 +0000 (15:39 -0700)]
docs: correctly delimit links in the tp-zeitgeist comments

11 years agodocs: only use one copy of the tp-zeitgeist interface
Travis Reitter [Fri, 5 Jul 2013 22:20:13 +0000 (15:20 -0700)]
docs: only use one copy of the tp-zeitgeist interface

We can't include both tp-zeitgeist and tp-zeitgeist-dummy because valadoc
will complain of re-definitions. Using the dummy version seems to work even
if --enable-zeitgeist is used, so this should cover us in all cases.

11 years agodocs: fix the path to the backend support library header files
Travis Reitter [Fri, 5 Jul 2013 22:05:41 +0000 (15:05 -0700)]
docs: fix the path to the backend support library header files

11 years agodocs: Use the correct Vala version string for valadoc
Travis Reitter [Fri, 5 Jul 2013 22:02:47 +0000 (15:02 -0700)]
docs: Use the correct Vala version string for valadoc

It was failing to find the expected driver, previously, which broke the
build

11 years agobuild: Remove redundant variable from Makefile.am
Philip Withnall [Fri, 5 Jul 2013 18:22:42 +0000 (19:22 +0100)]
build: Remove redundant variable from Makefile.am

11 years agotelepathy: Fix build with --disable-zeitgeist
Philip Withnall [Fri, 5 Jul 2013 14:26:51 +0000 (15:26 +0100)]
telepathy: Fix build with --disable-zeitgeist

Vala doesn’t pass #if conditionals through to generated C code, so when
building folks from a tarball, the --[enable|disable]-zeitgeist option was
having no effect, and Zeitgeist was always being pulled into the build.

Fix this by separating the Zeitgeist code out into a small noinst shim
library and always generating C code for two versions of it: one with
Zeitgeist enabled, and one with it disabled. The correct one’s C code is
then compiled and linked into libfolks-telepathy.la when building from the
tarball.

This is a horrible, ugly fix, but the only better fix is to disable
distribution of generated C code. This was attempted, but thwarted by
automake’s Vala support.

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

11 years agotelepathy: Move Zeitgeist code entirely into Tpf.PersonaStore
Philip Withnall [Fri, 5 Jul 2013 10:09:51 +0000 (11:09 +0100)]
telepathy: Move Zeitgeist code entirely into Tpf.PersonaStore

Ready to split it out into a shim library.

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

11 years agobuild: Makefile whitespace fixes
Philip Withnall [Thu, 20 Jun 2013 16:28:35 +0000 (17:28 +0100)]
build: Makefile whitespace fixes

11 years agobuild: Reorder DIST_SUBDIRS to match SUBDIRS
Philip Withnall [Thu, 20 Jun 2013 16:27:50 +0000 (17:27 +0100)]
build: Reorder DIST_SUBDIRS to match SUBDIRS

So we don’t encounter problems during `make dist` due to recursing in
a different order from normal.

11 years agobuild: Don’t build Vala headers in a subdirectory unnecessarily
Philip Withnall [Thu, 20 Jun 2013 16:27:24 +0000 (17:27 +0100)]
build: Don’t build Vala headers in a subdirectory unnecessarily

11 years agobuild: Remove generated C/H/vapi/stamp files from MAINTAINERCLEANFILES
Philip Withnall [Thu, 20 Jun 2013 16:26:02 +0000 (17:26 +0100)]
build: Remove generated C/H/vapi/stamp files from MAINTAINERCLEANFILES

As long as --vapi and -H/-h options are correctly passed to a target-specific
VALAFLAGS, automake will automatically add these generated files to the
maintainer-clean target.

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

11 years agobuild: Use target-specific VALAFLAGS rather than AM_VALAFLAGS
Philip Withnall [Thu, 20 Jun 2013 16:21:41 +0000 (17:21 +0100)]
build: Use target-specific VALAFLAGS rather than AM_VALAFLAGS

This allows automake to parse the flags for each target and generate
appropriate rules. For example, by explicitly specifying “--vapi foo.vapi” in
foo_VALAFLAGS (not just specifying “--library foo”), dependency and clean-up
rules for foo.vapi will be generated by automake. Accordingly, this commit
also adds missing --vapi flags.

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

11 years agobuild: Disable fatal warnings when making distcheck
Philip Withnall [Thu, 4 Jul 2013 20:57:04 +0000 (21:57 +0100)]
build: Disable fatal warnings when making distcheck

It’s just too painful. They’re normally turned on during development
anyway.

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

11 years agobuild: Remove redundant entries from GITIGNOREFILES
Philip Withnall [Thu, 20 Jun 2013 15:35:00 +0000 (16:35 +0100)]
build: Remove redundant entries from GITIGNOREFILES

Now that git.mk has been modified to add better Vala support, these
are unnecessary.

11 years agobuild: Modify git.mk to ignore generated C/H files and Vala .stamp files
Philip Withnall [Thu, 20 Jun 2013 15:09:36 +0000 (16:09 +0100)]
build: Modify git.mk to ignore generated C/H files and Vala .stamp files

These modifications are being submitted upstream.

11 years agobuild: Update git.mk from upstream
Philip Withnall [Thu, 20 Jun 2013 15:08:54 +0000 (16:08 +0100)]
build: Update git.mk from upstream

Upstream is now located at https://github.com/behdad/git.mk. The file hasn’t
been modified from upstream.

11 years agoDo not install the TpLowlevel.{gir,typelib}
Markus Lehtonen [Fri, 28 Jun 2013 07:47:59 +0000 (10:47 +0300)]
Do not install the TpLowlevel.{gir,typelib}

Adapted from a patch by Markus Lehtonen <markus.lehtonen@linux.intel.com>

11 years agoMake the last commit change use the same formatting for Tp backend
Travis Reitter [Tue, 2 Jul 2013 16:35:17 +0000 (09:35 -0700)]
Make the last commit change use the same formatting for Tp backend

11 years agoLink the support library GIRs against libfolks
Emilio Pozuelo Monfort [Tue, 2 Jul 2013 09:50:41 +0000 (11:50 +0200)]
Link the support library GIRs against libfolks

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

11 years agoAdd namespace and version to libfolks-tracker GIR
Travis Reitter [Thu, 27 Jun 2013 22:57:33 +0000 (15:57 -0700)]
Add namespace and version to libfolks-tracker GIR

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

11 years agoAdd namespace and version to libfolks-libsocialweb GIR
Travis Reitter [Thu, 27 Jun 2013 22:31:03 +0000 (15:31 -0700)]
Add namespace and version to libfolks-libsocialweb GIR

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

11 years agoAdd namespace and version to libfolks-eds GIR
Travis Reitter [Thu, 27 Jun 2013 22:26:55 +0000 (15:26 -0700)]
Add namespace and version to libfolks-eds GIR

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

11 years agoAdd namespace and version to libfolks-telepathy GIR
Travis Reitter [Thu, 27 Jun 2013 18:50:53 +0000 (11:50 -0700)]
Add namespace and version to libfolks-telepathy GIR

Without this in place, JavaScript (and probably other introspected) code
calling Vala client code can end up mysteriously hitting this error:

CRITICAL **: g_irepository_find_by_name: assertion 'typelib != NULL' failed

because it fails to locate the proper typelib.

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

11 years agocore: Add PresenceDetails::client-types and implement on Individual and Tpf.Persona
Serhat Demircan [Tue, 7 May 2013 19:27:53 +0000 (22:27 +0300)]
core: Add PresenceDetails::client-types and implement on Individual and Tpf.Persona

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

11 years agoPost-release version bump
Travis Reitter [Tue, 25 Jun 2013 00:54:43 +0000 (17:54 -0700)]
Post-release version bump

11 years agoRelease version 0.9.3 FOLKS_0_9_3 upstream/0.9.3
Travis Reitter [Mon, 24 Jun 2013 23:32:32 +0000 (16:32 -0700)]
Release version 0.9.3

11 years agoAdded GIR bindings for the backend support libraries
Travis Reitter [Mon, 24 Jun 2013 23:24:24 +0000 (16:24 -0700)]
Added GIR bindings for the backend support libraries

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

11 years agoGenerate FolksTracker gir file
Travis Reitter [Tue, 18 Jun 2013 01:22:19 +0000 (18:22 -0700)]
Generate FolksTracker gir file

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

11 years agoGenerate FolksLibsocialweb gir file
Travis Reitter [Tue, 18 Jun 2013 00:49:24 +0000 (17:49 -0700)]
Generate FolksLibsocialweb gir file

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

11 years agoGenerate FolksEds gir file
Travis Reitter [Mon, 17 Jun 2013 18:40:36 +0000 (11:40 -0700)]
Generate FolksEds gir file

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

11 years agoGenerate FolksTelepathy gir file
Travis Reitter [Fri, 14 Jun 2013 16:50:00 +0000 (09:50 -0700)]
Generate FolksTelepathy gir file

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

11 years agoClean up version and capitalization for TpLowlevel GIR
Travis Reitter [Sat, 15 Jun 2013 00:54:51 +0000 (17:54 -0700)]
Clean up version and capitalization for TpLowlevel GIR

This is required to make it actually usable by FolksTelepathy's GIR

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

11 years agoSplit the API version definition so it can be used more extensively
Travis Reitter [Mon, 24 Jun 2013 18:11:42 +0000 (11:11 -0700)]
Split the API version definition so it can be used more extensively

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

11 years agoInclude /folks in PKG_CONFIG_PATH
Travis Reitter [Sat, 22 Jun 2013 00:41:24 +0000 (17:41 -0700)]
Include /folks in PKG_CONFIG_PATH

This is required for the gobject-introspection tools to find the folks
pkgconfig files.

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

11 years agoInclude GIR version number in folks.vapi
Travis Reitter [Fri, 14 Jun 2013 17:51:51 +0000 (10:51 -0700)]
Include GIR version number in folks.vapi

The fact that this was missing was causing build warnings for all clients

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

11 years agoUpdate NEWS upstream/0.9.2+9+ge390d80
Seif Lotfy [Sat, 22 Jun 2013 00:07:27 +0000 (02:07 +0200)]
Update NEWS

11 years agoPartially revert commit c5ada29a75e9c5a1 for the telepathy tests
Seif Lotfy [Tue, 18 Jun 2013 15:21:42 +0000 (17:21 +0200)]
Partially revert commit c5ada29a75e9c5a1 for the telepathy tests

Fixes #686715

Signed-off-by: Seif Lotfy <seif@lotfy.com>
11 years agotelepathy: Port to zeitgeist 2.0
Rico Tzschichholz [Fri, 21 Jun 2013 12:52:22 +0000 (14:52 +0200)]
telepathy: Port to zeitgeist 2.0

Signed-off-by: Seif Lotfy <seif@lotfy.com>
11 years agoeds: Clarify mapping between properties and vCard fields in EDS
Philip Withnall [Fri, 21 Jun 2013 23:01:07 +0000 (00:01 +0100)]
eds: Clarify mapping between properties and vCard fields in EDS

11 years agodocs: Clarify use of interfaces for property access on Folks.Persona
Philip Withnall [Fri, 21 Jun 2013 23:00:41 +0000 (00:00 +0100)]
docs: Clarify use of interfaces for property access on Folks.Persona

11 years agotests: Fix whitespace in Makefile upstream/0.9.2+4+g643cf94
Philip Withnall [Sat, 15 Jun 2013 08:00:02 +0000 (09:00 +0100)]
tests: Fix whitespace in Makefile

11 years agoRevert "Temporarily work around valadoc crasher with eds docs" upstream/0.9.2+3+g2a0168f
Travis Reitter [Sat, 8 Jun 2013 00:54:39 +0000 (17:54 -0700)]
Revert "Temporarily work around valadoc crasher with eds docs"

This reverts commit f2e229d963bd6f10a8e9210688cc144e449e756c.

11 years agoRevert "Temporarily work around valadoc crasher with Telepathy docs"
Travis Reitter [Sat, 8 Jun 2013 00:54:28 +0000 (17:54 -0700)]
Revert "Temporarily work around valadoc crasher with Telepathy docs"

This reverts commit 0b3481831b43b9bc8dd9133bfe6d78f1a0103fe0.

11 years agoPost-release version bump
Travis Reitter [Sat, 8 Jun 2013 00:54:14 +0000 (17:54 -0700)]
Post-release version bump

11 years agoRelease version 0.9.2 FOLKS_0_9_2
Travis Reitter [Fri, 7 Jun 2013 22:20:17 +0000 (15:20 -0700)]
Release version 0.9.2

11 years agoTemporarily work around valadoc crasher with eds docs
Travis Reitter [Fri, 7 Jun 2013 23:14:56 +0000 (16:14 -0700)]
Temporarily work around valadoc crasher with eds docs

11 years agoTemporarily work around valadoc crasher with Telepathy docs
Travis Reitter [Fri, 7 Jun 2013 22:31:22 +0000 (15:31 -0700)]
Temporarily work around valadoc crasher with Telepathy docs

11 years agoCut excess line
Travis Reitter [Fri, 7 Jun 2013 22:19:08 +0000 (15:19 -0700)]
Cut excess line

11 years agoSet release version of new API and update NEWS
Travis Reitter [Fri, 7 Jun 2013 22:15:35 +0000 (15:15 -0700)]
Set release version of new API and update NEWS

11 years agoMake Telepathy docs build defs stand-alone
Travis Reitter [Fri, 7 Jun 2013 22:01:35 +0000 (15:01 -0700)]
Make Telepathy docs build defs stand-alone

11 years agoPass the --driver version to valadoc to minimize complications.
Travis Reitter [Fri, 7 Jun 2013 16:11:04 +0000 (09:11 -0700)]
Pass the --driver version to valadoc to minimize complications.

This ensures that we're building the library with the same version of Vala
that valadoc uses

11 years agoUse correct @return instead of @returns (which breaks valadoc)
Travis Reitter [Fri, 7 Jun 2013 00:08:19 +0000 (17:08 -0700)]
Use correct @return instead of @returns (which breaks valadoc)

11 years agoBump libebook requirement to un-break GIR bindings.
Travis Reitter [Thu, 6 Jun 2013 23:01:48 +0000 (16:01 -0700)]
Bump libebook requirement to un-break GIR bindings.

E.BookClient.connect() had been annotated to return void so this should fix
the issue.

11 years agobackends: eds: make the personna store backend more 'async'
Lionel Landwerlin [Mon, 13 May 2013 20:22:02 +0000 (21:22 +0100)]
backends: eds: make the personna store backend more 'async'

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

11 years agoCorrectly check for existence of Zeitgeist.
Travis Reitter [Fri, 26 Apr 2013 00:45:42 +0000 (17:45 -0700)]
Correctly check for existence of Zeitgeist.

11 years agoCorrect the terminology in Zeitgeist check failure
Travis Reitter [Wed, 24 Apr 2013 18:22:15 +0000 (11:22 -0700)]
Correct the terminology in Zeitgeist check failure

11 years agoRemove autodependency on zeitgeist
Maciej Piechotka [Sat, 20 Apr 2013 11:32:19 +0000 (13:32 +0200)]
Remove autodependency on zeitgeist

11 years agobuild fix: include folks-generics in docs arguments
Travis Reitter [Mon, 22 Apr 2013 23:21:37 +0000 (16:21 -0700)]
build fix: include folks-generics in docs arguments

11 years agoAdd warnings (normally fatal) on use of archaic C features
Simon McVittie [Thu, 11 Apr 2013 10:53:41 +0000 (11:53 +0100)]
Add warnings (normally fatal) on use of archaic C features

We don't want these even in C code generated by Vala, and certainly not
in hand-written C code.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=697354
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoEnsure that the C bits of TestCase are pre-declared in a header
Simon McVittie [Thu, 11 Apr 2013 11:05:08 +0000 (12:05 +0100)]
Ensure that the C bits of TestCase are pre-declared in a header

This lets us verify that their Vala and C ABIs are the same: if they
are not, compilation will fail.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=697354
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoDeclare internal function folks_persona_store_set_is_user_set_default()
Simon McVittie [Fri, 12 Apr 2013 11:20:43 +0000 (12:20 +0100)]
Declare internal function folks_persona_store_set_is_user_set_default()

As explained in the comment, I can't find any better way to do this.
Implicit declarations are Bad, so we should be making them into errors
by default.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=697354
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
[added a comment as requested -smcv]
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
11 years agoInclude ERROR_CFLAGS everywhere we compile C code
Simon McVittie [Mon, 8 Apr 2013 10:50:38 +0000 (11:50 +0100)]
Include ERROR_CFLAGS everywhere we compile C code

AM_CFLAGS was missing from a couple of foo_CFLAGS variables (it isn't
"inherited" automatically), so add that too.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=697354
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoRe-brand ERROR_CFLAGS to C_ERROR_CFLAGS
Simon McVittie [Mon, 8 Apr 2013 10:43:25 +0000 (11:43 +0100)]
Re-brand ERROR_CFLAGS to C_ERROR_CFLAGS

These are flags that we only use when compiling hand-written C code,
mostly originating from telepathy-glib. We can't be that strict with
the C code generated by Vala, because it's full of questionable things
(which the Vala compiler verifies are OK, but the C compiler still warns
about).

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=697354
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoTpfPersonaStore: make _supported_fields, _supported_fields_ro private
Simon McVittie [Thu, 11 Apr 2013 10:03:26 +0000 (11:03 +0100)]
TpfPersonaStore: make _supported_fields, _supported_fields_ro private

Making them "internal" means we end up #include'ing small-set.h, which
we don't install, so nothing can be built against the installed
libfolks-telepathy. Nothing outside this file uses those members
directly anyway.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=697542
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
11 years agoupdate Simplified Chinese (zh_CN) translation
Wylmer Wang [Sat, 6 Apr 2013 08:37:15 +0000 (16:37 +0800)]
update Simplified Chinese (zh_CN) translation

11 years agoDeclare folks_small_set_copy properly
Simon McVittie [Thu, 4 Apr 2013 17:30:18 +0000 (18:30 +0100)]
Declare folks_small_set_copy properly

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=687161
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agotests: clear out various D-Bus-related variables
Simon McVittie [Fri, 5 Apr 2013 13:06:09 +0000 (14:06 +0100)]
tests: clear out various D-Bus-related variables

The actual terminal in gnome-terminal 3.8 is an activatable service,
so it has DBUS_STARTER_ADDRESS in its environment. telepathy-glib prefers
DBUS_STARTER_ADDRESS over DBUS_SESSION_BUS_ADDRESS, but GTestDBus
doesn't clear or set the former, only the latter; so we end up trying to
use the real bus when run under a recent gnome-terminal.

See also <https://bugs.freedesktop.org/show_bug.cgi?id=63119>.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=697261
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
[added FIXME comment about #697348]
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
11 years agoall tests: disable non-local GIO VFS backends, such as gvfs
Simon McVittie [Thu, 4 Apr 2013 14:39:42 +0000 (15:39 +0100)]
all tests: disable non-local GIO VFS backends, such as gvfs

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=697261
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agotracker tests: do not request starting all Tracker services
Simon McVittie [Thu, 4 Apr 2013 14:35:12 +0000 (15:35 +0100)]
tracker tests: do not request starting all Tracker services

We don't care about tracker-miner-fs etc. for these tests; all we want
to do is stop any running Tracker stuff. D-Bus service activation will
ensure that we get the necessary services when they're needed, without
starting the unnecessary ones.

(This fixes the Tracker tests on a system without tracker-miner-fs.)

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=697261
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoUse SmallSet.copy() where it makes sense
Simon McVittie [Wed, 3 Apr 2013 17:12:23 +0000 (18:12 +0100)]
Use SmallSet.copy() where it makes sense

It isn't more than fractionally faster in tests/eds/perf, but might help.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=687161
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoAdd fast-path iteration for SmallSet
Simon McVittie [Thu, 28 Mar 2013 14:46:55 +0000 (14:46 +0000)]
Add fast-path iteration for SmallSet

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=687161
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agofolks, backends: use "small sets" instead of hash sets most of the time
Simon McVittie [Thu, 4 Apr 2013 12:00:53 +0000 (13:00 +0100)]
folks, backends: use "small sets" instead of hash sets most of the time

Notable exceptions are:

* sets of personas that are, or might be, the entire set from a backend
  (possible future refinement: use a SmallSet if there aren't many)

* sets of potentially many Individuals (likewise)

* the object cache (potentially pretty large)

* debug stuff (not relevant for performance)

* the set of IM addresses being matched (we want to keep this O(1),
  but it should be a GHashTable)

This speeds up tests/eds/perf by around 5%.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=687161
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
[squashed in responses to review -smcv]
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
11 years agoFolks.SmallSet: add and test
Simon McVittie [Thu, 4 Apr 2013 11:58:50 +0000 (12:58 +0100)]
Folks.SmallSet: add and test

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=687161
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
[squashed in responses to review -smcv]
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
11 years agocontactlist: copy .deps to the same place as .vapi if necessary
Simon McVittie [Wed, 3 Apr 2013 17:49:23 +0000 (18:49 +0100)]
contactlist: copy .deps to the same place as .vapi if necessary

valac specifically expects to find them in the same place: it's not
enough to have them both in the search path.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=697188
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoCompile tp-lowlevel.vapi before libfolks_telepathy_la_vala.stamp
Simon McVittie [Wed, 3 Apr 2013 15:52:38 +0000 (16:52 +0100)]
Compile tp-lowlevel.vapi before libfolks_telepathy_la_vala.stamp

The make rules generated by Automake are all done in terms of a "stamp"
file in the $(srcdir), so if we want to give it more dependencies,
we need to do the same. This fixes a clean out-of-tree build.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=697188
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoDo not explicitly link libfolks-internal.la into things
Simon McVittie [Tue, 2 Apr 2013 18:00:02 +0000 (19:00 +0100)]
Do not explicitly link libfolks-internal.la into things

libfolks.la embeds a copy of libfolks-internal.la, so every public
(or internal) symbol in libfolks-internal.la is available in
libfolks.la, even if linked with -Wl,--no-copy-dt-needed-entries.

If libfolks-internal.la defines a GObject type, then linking two copies
of it is actively harmful, because they can't both be registered with the
type system.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=687161
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agobackends: when adding a persona by details, do not assume HashSet
Simon McVittie [Tue, 2 Apr 2013 17:30:13 +0000 (18:30 +0100)]
backends: when adding a persona by details, do not assume HashSet

All we need is a Set, so we shouldn't need to cast this strictly.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=687161
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoBy default, do debug output iff at least one debug domain is enabled
Simon McVittie [Tue, 2 Apr 2013 16:53:36 +0000 (17:53 +0100)]
By default, do debug output iff at least one debug domain is enabled

Previously, debug output (and expensive checks that are enabled alongside
debug output) was always enabled unless explicitly disabled, but
Philip noted that this was not intentional.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=687161
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoIndividualAggregator: assert and assume that _link_map[key][i] != null
Simon McVittie [Thu, 28 Mar 2013 12:17:38 +0000 (12:17 +0000)]
IndividualAggregator: assert and assume that _link_map[key][i] != null

The link map's type is non-nullable, and when we add individuals
to the link map we do so through a function that does not allow
a null argument, so we don't need to sprinkle (!) casts around.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=687161
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoIndividualAggregator: use a GHashTable<string,GPtrArray> for the link map
Simon McVittie [Wed, 27 Mar 2013 16:20:55 +0000 (16:20 +0000)]
IndividualAggregator: use a GHashTable<string,GPtrArray> for the link map

The link map is a hot path, particularly when matching multiple copies
of the same contact. Speed this up.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=687161
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoAdded Basque language\nAdded 'eu' (Basque) to LINGUAS
Inaki Larranaga Murgoitio [Tue, 2 Apr 2013 08:40:38 +0000 (10:40 +0200)]
Added Basque language\nAdded 'eu' (Basque) to LINGUAS

11 years agoEdsf.PersonaStore: defer contacts-complete like contacts-added
Simon McVittie [Tue, 26 Mar 2013 19:13:46 +0000 (19:13 +0000)]
Edsf.PersonaStore: defer contacts-complete like contacts-added

Otherwise, we signal quiescence while not actually quiescent: our
initial batch of contacts could still be coming in.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=696659
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoRemove a remnant of the avatar coming from the environment
Simon McVittie [Mon, 25 Mar 2013 17:28:44 +0000 (17:28 +0000)]
Remove a remnant of the avatar coming from the environment

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=690830
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoSet up tests' backend paths in Vala code
Simon McVittie [Tue, 26 Mar 2013 18:15:00 +0000 (18:15 +0000)]
Set up tests' backend paths in Vala code

One less thing in TESTS_ENVIRONMENT.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=690830
Reviewed-by: Philip Withnall <philip@tecnocode.co.uk>
11 years agoNEWS: updated to include eds non-blocking change processing
Patrick Ohly [Tue, 26 Mar 2013 15:53:02 +0000 (16:53 +0100)]
NEWS: updated to include eds non-blocking change processing

11 years agoeds: avoid blocking event processing
Patrick Ohly [Thu, 21 Feb 2013 18:31:38 +0000 (19:31 +0100)]
eds: avoid blocking event processing

When there are many incoming D-Bus change notifications, processing of
other D-Bus messages can be delayed considerably. This commit is a
first step towards solving this by caching the change notifications
and processing them with lower priority in a glib idle callback.

Ordering of the changes relative to each other is preserved, so
semantically this is the same as immediate processing.

The worst-case scenario is when contacts get added one-by-one to EDS
address books while folks is running, because then each change
triggers one D-Bus signal. With 2000 contacts and four address books
on a fast laptop, the process hosting folks became unresponsive for
137s. The patch reduced that to 0.1s. The downside is an increase of
total test runtime of 4%.

In the scenario where data is already in EDS when folks starts, the
patch reduced response time from 2.3s to 0.2s.

See https://bugs.freedesktop.org/show_bug.cgi?id=60851#c6 for details.

11 years agoEDS testing: allow EDS to add additional phone parameters
Patrick Ohly [Mon, 25 Mar 2013 14:39:33 +0000 (15:39 +0100)]
EDS testing: allow EDS to add additional phone parameters

When EDS is compiled with libphonenumber support, it automatically
computes a normalized E.164 representation of each phone number and
returns it as an additional X-EVOLUTION-E164 parameter.

This broke the strict phone_fd.equals check in set-phones, because it
compared against a PhoneFieldDetails without that parameter. Now the
test only looks for a phone number with "1234" as value and checks for
the expected type after returning from the event loop.

11 years agotesting: avoid false warning
Patrick Ohly [Mon, 25 Mar 2013 13:37:26 +0000 (14:37 +0100)]
testing: avoid false warning

When FOLKS_BACKEND_PATH is set to the build dirs during testing, the
"content type of '%s' appears to be '%s' which looks suspicious. Have
you installed shared-mime-info?" warning gets triggered repeatedly,
because these dirs contain all kinds of files (executables, compiler
dependency files, etc.) which are not expected in the normal install
location.

This is annoying when running a test with "make <test>.gdb" because
gdb stops on a glib trace point for each warning. Therefore disable
the warning when FOLKS_BACKEND_PATH is set. Extending the whitelist
has the drawback that it might not catch all files that can appear
there in the future.