Philip Withnall [Wed, 15 Sep 2010 10:45:25 +0000 (11:45 +0100)]
Remove {@inheritDoc} from folks-telepathy documentation
It's not possible to inherit documentation across packages, so we have to
rely on links instead. Helps: bgo#629526
Philip Withnall [Mon, 13 Sep 2010 15:12:00 +0000 (16:12 +0100)]
Split the documentation into folks and folks-telepathy packages
This means that each documentation package is only scanning files from one
directory, opening us up to the possibility of adding gtk-doc support.
Helps: bgo#629526
Philip Withnall [Mon, 13 Sep 2010 15:24:03 +0000 (16:24 +0100)]
Move debug initialisation to BackendStore
Now that the BackendStore is a singleton, its initialiser will more reliably
be called than the initialiser for IndividualAggregator (since clients can
theoretically not use the IndividualAggregator, but have to use the
BackendStore). Closes: bgo#629096
Philip Withnall [Mon, 20 Sep 2010 11:44:02 +0000 (12:44 +0100)]
Retrospectively update NEWS file
Add NEWS entries from all the releases back to 0.1.9, when we moved to GNOME
infrastructure.
Philip Withnall [Tue, 14 Sep 2010 16:25:03 +0000 (17:25 +0100)]
Bug 629666 — libfolks should not hard autodetect libxml
Add an --enable-import-tool configure option which requires libxml2 when
passed, doesn't require it when --disable-import-tool is passed, and builds
the tool if possible (but doesn't require libxml2) when nothing's passed.
Closes: bgo#629666
Philip Withnall [Tue, 14 Sep 2010 15:24:22 +0000 (16:24 +0100)]
Make libfolks.so depend on gmodule-no-export
Since the BackendStore uses g_module_*. Helps: bgo#629644
Philip Withnall [Tue, 14 Sep 2010 13:45:02 +0000 (14:45 +0100)]
Explicitly link the backends to libfolks.la
Closes: bgo#629644
Philip Withnall [Mon, 13 Sep 2010 10:16:29 +0000 (11:16 +0100)]
Bug 629311 — Folks should normalize IDs written to the writable backend
Add a new IMable.normalise_im_address() method, which should be called on
any IM address added to IMable.im_addresses, normalising it so that only the
canonical version is used within libfolks. Closes: bgo#629311
Philip Withnall [Sat, 18 Sep 2010 15:37:29 +0000 (16:37 +0100)]
Bump version to 0.3.0
Since we've changed to an odd–even version scheme (where odd minor versions
are unstable and even ones are stable), master needs to be odd, since version
0.2.0 has just been released as stable.
Philip Withnall [Sat, 18 Sep 2010 14:29:20 +0000 (15:29 +0100)]
Don't list session.conf in CLEANFILES
Since it's generated by AC_CONFIG_FILES, it already has rebuild and clean
rules generated for it. Adding it to CLEANFILES breaks this.
Travis Reitter [Sat, 18 Sep 2010 00:53:17 +0000 (17:53 -0700)]
Require the latest releases of our dependencies.
Travis Reitter [Sat, 18 Sep 2010 00:52:43 +0000 (17:52 -0700)]
Clear up ambiguity between GLib.Proxy and TelepathyGLib.Proxy
Travis Reitter [Thu, 16 Sep 2010 17:36:30 +0000 (10:36 -0700)]
Cut some obsolete comments in TpLowlevel.
Travis Reitter [Thu, 16 Sep 2010 17:35:33 +0000 (10:35 -0700)]
Fix the GIR annotation for connection_open_contact_list_channel_finish
Travis Reitter [Thu, 16 Sep 2010 17:19:22 +0000 (10:19 -0700)]
Fix the GIR annotations for connect_to_new_group_channels
Travis Reitter [Thu, 16 Sep 2010 17:11:48 +0000 (10:11 -0700)]
Turn on all g-i warnings and make them errors (for non-releases).
Philip Withnall [Thu, 16 Sep 2010 10:58:36 +0000 (11:58 +0100)]
Make a result argument nullable
Since there is no .finish() method for this async function, and the result
is always NULL, the result argument should be nullable. This prevents it
spewing warnings.
Travis Reitter [Wed, 15 Sep 2010 23:45:40 +0000 (16:45 -0700)]
Depend upon the next release of Vala for required fixes.
valac's version number doesn't update between releases, so we need to depend
upon the next release number to properly depend upon the fixes.
Travis Reitter [Wed, 15 Sep 2010 20:22:16 +0000 (13:22 -0700)]
Adjust to changes introduced with the Vala fix for bgo#629691
Philip Withnall [Wed, 15 Sep 2010 15:50:55 +0000 (16:50 +0100)]
Fix documentation syntax
Travis Reitter [Wed, 15 Sep 2010 15:13:50 +0000 (08:13 -0700)]
Merge branch 'bgo628970-expose-backends3'
Travis Reitter [Thu, 9 Sep 2010 23:15:49 +0000 (16:15 -0700)]
Move Backend preparation to BackendStore. Fixes bgo#628970.
An effect of this is that all backends will be prepared by the time
IndividualAggregator.prepare() completes.
Travis Reitter [Wed, 8 Sep 2010 16:53:21 +0000 (09:53 -0700)]
Expose the BackendStore's Backends. Helps bgo#628970.
Travis Reitter [Tue, 14 Sep 2010 15:33:36 +0000 (08:33 -0700)]
Cut out unnecessary tp-glib version checking.
Travis Reitter [Tue, 14 Sep 2010 15:34:52 +0000 (08:34 -0700)]
Update the name for TelepathyGLib.Intset
Travis Reitter [Wed, 8 Sep 2010 17:24:55 +0000 (10:24 -0700)]
Make BackendStore a singleton. Helps bgo#628970.
Philip Withnall [Tue, 14 Sep 2010 16:18:44 +0000 (17:18 +0100)]
Fix the type of an AsyncReadyCallback in Tpf.PersonaStore
Philip Withnall [Tue, 14 Sep 2010 14:04:02 +0000 (15:04 +0100)]
Move BuildConf into the Folks namespace
This fixes the libfolks build against Vala master.
Philip Withnall [Tue, 14 Sep 2010 09:53:19 +0000 (10:53 +0100)]
Add missing annotations to TpLowlevel
Philip Withnall [Tue, 14 Sep 2010 09:53:08 +0000 (10:53 +0100)]
Enable g-ir-scanner warnings for TpLowlevel
Philip Withnall [Mon, 13 Sep 2010 15:18:32 +0000 (16:18 +0100)]
Post-branch version bump
Philip Withnall [Mon, 13 Sep 2010 14:40:10 +0000 (15:40 +0100)]
Automatically version the generated documentation
Philip Withnall [Mon, 13 Sep 2010 13:28:56 +0000 (14:28 +0100)]
Rename Alias interface to Aliasable
Helps: bgo#627397
Philip Withnall [Mon, 13 Sep 2010 13:10:06 +0000 (14:10 +0100)]
Rename Groups interface to Groupable
Helps: bgo#627397
Philip Withnall [Mon, 13 Sep 2010 13:12:27 +0000 (14:12 +0100)]
Fix a private error domain in Tpf.PersonaStore
This is a partial revert of
6fe31a311871f096f605ed93bc60fb09db835235.
Philip Withnall [Mon, 13 Sep 2010 12:49:41 +0000 (13:49 +0100)]
Fix some error domains
Add error domains to override methods, remove error domains from
constructors and make some error domains more specific. This shouldn't break
API. Helps: bgo#627158
Philip Withnall [Mon, 13 Sep 2010 12:28:56 +0000 (13:28 +0100)]
Add missing @inheritDoc doclets
Philip Withnall [Mon, 13 Sep 2010 12:28:14 +0000 (13:28 +0100)]
Bug 626008 — Add @since lines to all symbols
Add @since lines to the documentation of all symbols which were added after
the initial release (0.1.9). Closes: bgo#626008
Brian Pepple [Sun, 12 Sep 2010 21:56:51 +0000 (17:56 -0400)]
Link gio libs in import-tool makefiles
Closes: bgo#629452
Travis Reitter [Fri, 10 Sep 2010 23:26:05 +0000 (16:26 -0700)]
Post-release version bump.
Travis Reitter [Fri, 10 Sep 2010 22:20:57 +0000 (15:20 -0700)]
Release version 0.1.17
Travis Reitter [Fri, 10 Sep 2010 19:13:42 +0000 (12:13 -0700)]
Add some more detailed validation/error reporting to the importing tool.
Philip Withnall [Wed, 8 Sep 2010 18:36:04 +0000 (19:36 +0100)]
Bug 629084 — Add a folks-import tool
Add a folks-import tool which allows importing of Pidgin meta-contact
information to libfolks' key file. Closes: bgo#629084
Philip Withnall [Thu, 9 Sep 2010 15:07:08 +0000 (16:07 +0100)]
Block flushing of Kf.PersonaStore on any pending file operations
If a file operation is still underway, don't allow the Kf.PersonaStore to be
finalized until it's finished. This prevents libfolks from being closed before
changes to relationships.ini have been written out. We also prevent multiple
file operations from happening (pseudo-) concurrently, by cancelling any
pending operation when we schedule a new one.
Philip Withnall [Mon, 6 Sep 2010 09:35:25 +0000 (10:35 +0100)]
Bug 628853 — hangs if there's no relationships.ini file
The code to create the directory tree for relationships.ini wasn't handling
errors properly, so was getting stuck in an infinite loop in the case that
the ~/.local/share/folks directory existed but relationships.ini didn't.
Closes: bgo#628853
Philip Withnall [Thu, 9 Sep 2010 11:33:22 +0000 (12:33 +0100)]
Notify of Tpf.PersonaStore's Personas being removed when disabling accounts
When disabling, removing or marking an account as invalid, we need to signal
that the account's contacts (i.e. the Tpf.PersonaStore's Personas) have been
removed. Closes: bgo#629082
Philip Withnall [Wed, 8 Sep 2010 10:10:49 +0000 (11:10 +0100)]
Warn on key file parse errors, rather than explode
Contrary to popular belief, it is possible to encounter errors when parsing
key files. In this case, the key-file backend shouldn't explode without a
helpful error message. Helps: bgo#628930
Philip Withnall [Wed, 8 Sep 2010 10:06:25 +0000 (11:06 +0100)]
Fix saving the key file when it contains multi-byte characters
The calculation of the length of the data to be saved was being done in
characters, not bytes, whereas the I/O function was expecting a length in
bytes. This caused some number of bytes to be dropped from the end of the
file, potentially splitting a multibyte character and breaking the file
encoding (not to mention losing data otherwise). Closes: bgo#628930
Philip Withnall [Wed, 8 Sep 2010 09:39:47 +0000 (10:39 +0100)]
Add more debugging for aliases
Philip Withnall [Wed, 8 Sep 2010 09:31:30 +0000 (10:31 +0100)]
Don't save the key file when loading Personas' aliases
We were previously saving the key file for each __alias key loaded, as it was
loading the alias into Kf.Persona.alias, rather than Kf.Persona._alias,
causing the key file to be saved each time.
This may have caused or contributed towards the corruption seen in bgo#628930.
Philip Withnall [Wed, 8 Sep 2010 09:28:53 +0000 (10:28 +0100)]
Don't allow setting a Kf.Persona's alias to its current value
Philip Withnall [Fri, 10 Sep 2010 10:54:00 +0000 (11:54 +0100)]
Add generated C files to GITIGNOREFILES
Philip Withnall [Fri, 10 Sep 2010 10:30:28 +0000 (11:30 +0100)]
Move tools/manager-file.py to tests/tools/manager-file.py
It belongs with the test tools, since it's only useful for the Telepathy test
rig.
Philip Withnall [Fri, 10 Sep 2010 10:28:49 +0000 (11:28 +0100)]
Add mkinstalldirs to MAINTAINERCLEANFILES
Philip Withnall [Fri, 10 Sep 2010 10:15:12 +0000 (11:15 +0100)]
Install folks.vapi and folks-telepathy.vapi
Philip Withnall [Fri, 10 Sep 2010 10:10:52 +0000 (11:10 +0100)]
Use session.conf from the builddir to fix builddir != srcdir
Philip Withnall [Fri, 10 Sep 2010 10:08:33 +0000 (11:08 +0100)]
Ensure tests/tools/with-session-bus.sh is distributed
Philip Withnall [Fri, 10 Sep 2010 10:02:02 +0000 (11:02 +0100)]
Correct use of CPPFLAGS/CFLAGS in backend Makefile.ams
Philip Withnall [Fri, 10 Sep 2010 10:00:52 +0000 (11:00 +0100)]
Port the backend Makefile.ams to use automake-1.11's Vala support
Philip Withnall [Fri, 10 Sep 2010 10:00:44 +0000 (11:00 +0100)]
Remove an unused variable from docs/Makefile.am
Philip Withnall [Thu, 9 Sep 2010 18:13:38 +0000 (19:13 +0100)]
Fix configure.ac indentation and layout
Philip Withnall [Thu, 9 Sep 2010 17:58:16 +0000 (18:58 +0100)]
Remove unnecessary AC_SUBST calls
PKG_CHECK_MODULES does AC_SUBST for us.
Philip Withnall [Thu, 9 Sep 2010 17:51:14 +0000 (18:51 +0100)]
Use the M4Sugar conditional statements instead of plain m4 ones
Philip Withnall [Thu, 9 Sep 2010 17:42:40 +0000 (18:42 +0100)]
Fix m4 quoting in configure.ac
(I think.)
Philip Withnall [Thu, 9 Sep 2010 17:19:52 +0000 (18:19 +0100)]
Don't use dnl for comments in configure.ac
It's not strictly intended to be used for commenting; more for obliterating
macro output when redefining things. '#' is for comments.
Philip Withnall [Thu, 8 Jul 2010 17:55:34 +0000 (18:55 +0100)]
Add a test of an individual's properties
Philip Withnall [Thu, 10 Jun 2010 14:19:50 +0000 (07:19 -0700)]
Add the framework for a test suite
Add the framework for a test suite for the Telepathy backend, including
a dummy account manager, account and connection, to allow complete control
over the personas created in libfolks.
This comes with a test case framework which wraps the GLib test framework,
used by a test case which tests that all expected individuals are exposed by
the individual aggregator.
Heavily based on work by Travis Reitter <travis.reitter@collabora.co.uk>.
Philip Withnall [Wed, 1 Sep 2010 15:38:15 +0000 (16:38 +0100)]
Post-release version bump and non-release indicator
Philip Withnall [Wed, 1 Sep 2010 15:36:26 +0000 (16:36 +0100)]
Release version 0.1.16
Philip Withnall [Tue, 31 Aug 2010 16:57:25 +0000 (17:57 +0100)]
Bug 628343 — Add an environment variable to disable linking
Add a FOLKS_DISABLE_LINKING environment variable which, when set, completely
disables linking (both aggregation and the explicit linking and unlinking of
Personas). Closes: bgo#628343
Philip Withnall [Tue, 31 Aug 2010 15:31:56 +0000 (16:31 +0100)]
Don't set Individual.is-favourite when updating from Personas
Set the private Individual._is_favourite member instead, to prevent the new
favourite status from being pushed down to all the Personas and stomping all
over their favourite statuses. See also: bgo#628131
Philip Withnall [Tue, 31 Aug 2010 13:59:37 +0000 (14:59 +0100)]
Depend on libgee < 0.7 instead
libgee 0.7 breaks API but they branched for the 0.5/0.6 series beforehand,
so 0.5.3 and 0.6 will not break API. See bgo#627746
Travis Reitter [Tue, 24 Aug 2010 23:55:53 +0000 (16:55 -0700)]
Clear the stored list if it's invalidated.
Philip Withnall [Mon, 30 Aug 2010 15:46:12 +0000 (16:46 +0100)]
Don't set Individual.alias when updating the alias from Personas
Set the private Individual._alias member instead, to prevent the changed
alias (which could be a fallback display ID or similar) from being pushed
down to all the Personas and stomping all over their aliases.
Helps: bgo#628131
Philip Withnall [Mon, 30 Aug 2010 15:43:36 +0000 (16:43 +0100)]
Refactor Individual.update_alias() to give a single notification path
Philip Withnall [Mon, 30 Aug 2010 10:50:58 +0000 (11:50 +0100)]
Ensure untrusted Personas' Individuals are signalled as removed
When a Persona from an untrusted PersonaStore (such as link-local XMPP) was
removed, the Individual which contained (only) that Persona was not being
signalled as removed, causing link-local XMPP contacts to (for example) remain
in Empathy's contact list even after going offline. Closes: bgo#628305
Philip Withnall [Mon, 30 Aug 2010 10:22:13 +0000 (11:22 +0100)]
Mark two strings as unowned to prevent unnecessary string copies
Philip Withnall [Mon, 30 Aug 2010 16:38:09 +0000 (17:38 +0100)]
Ensure existing Kf.Personas aren't overwritten when choosing new group names
If a key file contained several groups which weren't contiguously numbered on
startup, IDs for new groups would start from the first unused ID, and continue
happily into the next block of IDs which were already in use. This patch
ensures that if an ID is already in use, it won't be again for a new
Kf.Persona. Closes: bgo#628294
Philip Withnall [Mon, 30 Aug 2010 16:24:49 +0000 (17:24 +0100)]
Add extra debug messages to the key-file backend
Philip Withnall [Mon, 30 Aug 2010 14:49:17 +0000 (15:49 +0100)]
Work around a Vala bug generating bad C for a lambda function inside a loop
Helps: bgo#628335
Philip Withnall [Mon, 30 Aug 2010 13:23:25 +0000 (14:23 +0100)]
Output more debugging information when linking
Philip Withnall [Mon, 30 Aug 2010 09:22:20 +0000 (10:22 +0100)]
Remove unused declaration from tp-lowlevel.h
It was causing g-ir-scanner to fail when building packages.
Travis Reitter [Fri, 27 Aug 2010 22:21:05 +0000 (15:21 -0700)]
tp-lowlevel doesn't actually depend upon the Gee introspection file
Philip Withnall [Fri, 27 Aug 2010 12:35:26 +0000 (13:35 +0100)]
Block notification of Persona.is-favourite when changing it on the Individual
This fixes changing the favourite status of an Individual containing more than
one Persona, since previously the change wouldn't be applied. This is because
the change would be bubbled down to the first Persona, which would then
notify of the change to its is-individual property, causing the Individual's
is-favourite property to be re-calculated incorrectly, since the favourite
status of the _other_ Personas hadn't yet been changed. Closes: bgo#628108
Philip Withnall [Fri, 27 Aug 2010 12:28:15 +0000 (13:28 +0100)]
Add debugging to favourite status in Folks.Individual
Philip Withnall [Fri, 27 Aug 2010 10:37:40 +0000 (11:37 +0100)]
Post-release version bump and non-release indicator
Philip Withnall [Fri, 27 Aug 2010 10:18:26 +0000 (11:18 +0100)]
Release version 0.1.15
Philip Withnall [Fri, 27 Aug 2010 10:11:53 +0000 (11:11 +0100)]
Remove outdated telepathy-check.vala from EXTRA_DIST
Philip Withnall [Fri, 27 Aug 2010 10:02:26 +0000 (11:02 +0100)]
Fix symbol version numbers
I got mixed up between pre- and post-release incrementing.
Philip Withnall [Thu, 26 Aug 2010 21:27:02 +0000 (22:27 +0100)]
Don't use deprecated Gee.Map.remove() method
Philip Withnall [Thu, 26 Aug 2010 13:44:10 +0000 (14:44 +0100)]
Add checks for memset() and strstr()
According to `autoscan`, these are used by some of the generated C code, and
should be checked for at configure time.
Philip Withnall [Thu, 26 Aug 2010 13:33:38 +0000 (14:33 +0100)]
Tidy up configure.ac
This is just the result of running `autoupdate` on configure.ac, plus the
addition of two extra options to AC_INIT, specifying the tarball name and
project homepage.
Philip Withnall [Thu, 26 Aug 2010 11:37:15 +0000 (12:37 +0100)]
Move the folks-telepathy library to a "lib" subdir of backends/telepathy
This solves the ordering problem between building folks-telepathy.la and
folks-backend-telepathy.la, where the latter depends on the former, under
parallel installation. See
http://old.nabble.com/relinking-error-td27796838.html for an explanation of
why adding DEPENDENCIES doesn't work.
This fixes parallel installation of libfolks. Closes: bgo#627898
Philip Withnall [Thu, 26 Aug 2010 13:23:33 +0000 (14:23 +0100)]
Don't use BUILT_SOURCES in makefiles
It messes around with the order of building things, which can cause problems
when building subdirectories which are dependencies of the current directory.
We didn't actually need it anyway, since all the files mentioned in
BUILT_SOURCES were pulled in as dependencies of other build targets.
Philip Withnall [Wed, 25 Aug 2010 17:10:36 +0000 (18:10 +0100)]
Push favourite changes to all Personas unconditionally
Since the changes are only pushed down to Personas if the favourite status
has changed, they have to be pushed down to every Persona anyway (or the
aggregated favourite status wouldn't change).
Philip Withnall [Wed, 25 Aug 2010 17:08:35 +0000 (18:08 +0100)]
Write alias changes to every Persona if there are no writeable Personas
This is necessary for singleton Individuals which only contain a Tpf.Persona.
Philip Withnall [Wed, 25 Aug 2010 16:02:53 +0000 (17:02 +0100)]
Don't unnecessarily push group changes down to Personas
The Individual.change_group() method should only be called in response to
user interaction, as it pushes the group change down to all the Individual's
Personas.
Philip Withnall [Wed, 25 Aug 2010 15:55:06 +0000 (16:55 +0100)]
Don't listen to notify::groups in Individual
We listen to the group_changed signal instead.
Philip Withnall [Wed, 25 Aug 2010 15:54:10 +0000 (16:54 +0100)]
Fix groups signal emissions in Tpf.Persona
Philip Withnall [Wed, 25 Aug 2010 15:45:49 +0000 (16:45 +0100)]
Add a missing yield to make group changes async in the telepathy backend