summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2012-10-05Track Avatars using McdAccount, and use the self-contact for itself-contact-for-avatarsSimon McVittie3-277/+229
2012-10-05Emulate the Aliasing interface a little more realisticallySimon McVittie3-13/+31
2012-10-05Knock out most of the IRC test until fd.o #55666 is fixedwe-have-a-self-contactSimon McVittie1-0/+4
2012-10-05Add a regression test for an IRC-like protocolSimon McVittie3-0/+134
IRC has plenty of oddities, but the one we're interested in here is that your nickname and your unique identifier are inextricably linked.
2012-10-05McdAccount: cope with self-contact changes; follow the self-contactSimon McVittie1-14/+39
2012-10-05nickname test: verify that a trivial nickname is not set on connectSimon McVittie2-20/+69
2012-10-05enable_fakecm_account: copy parameters and alter the copySimon McVittie1-1/+5
Mutable defaults for arguments are dangerous. If we call enable_fakecm_account twice with default arguments, when we alter expect_before_connect/expect_after_connect, we are actually altering the default! Python doesn't construct a new empty list for us every time. The C equivalent would be a static GPtrArray * or something.
2012-10-05Don't set the nickname to the normalized name on connectSimon McVittie1-3/+17
We still allow the nickname to be set to the normalized name by user action later, because in that case, the intention is unambiguous: the user really does want their nickname to take that value. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39381
2012-10-05McdAccount: take responsibility for setting the nicknameSimon McVittie3-168/+107
As well as being implemented in a more streamlined way (using the self-contact instead of calling D-Bus methods directly), this reduces the circular dependencies between McdConnection and McdAccount.
2012-10-05McdAccount: store the self-contactSimon McVittie1-4/+7
2012-09-27_mcd_channel_depart: use tp_channel_leave_async if it's a GroupsealantSimon McVittie1-26/+20
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27_mcd_channel_depart: if it turns out not to implement GROUP, close itSimon McVittie1-0/+4
This is a long-standing bug (broken ever since the function was introduced in 5.2), but apparently nobody noticed. Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55392
2012-09-27McdConnection: use TpWeakRef instead of replicating itSimon McVittie1-53/+22
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27mc-tool: have a TpAutomaticClientFactory to manufacture accountsSimon McVittie1-1/+6
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27McpDispatchOperation: use a new factory for each connectionSimon McVittie1-6/+16
This avoids the deprecated tp_channel_new_from_properties(). It has the same disadvantages as that function, but is a bit more obvious about it. Also comment how to change things at the next ABI break. Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27McdChannel: use the TpConnection's factory to make TpChannel objectsSimon McVittie1-4/+8
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27McdAccountManager: have a TpSimpleClientFactorySimon McVittie3-13/+41
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27McdAccountManager: use tp_dbus_daemon_register_objectSimon McVittie1-7/+3
dbus_g_connection_register_g_object isn't deprecated, but it's more code. Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27Generally use GVariant, not GHashTable, for channels' propertiesSimon McVittie13-51/+113
This means we can avoid the deprecated tp_channel_borrow_immutable_properties(). Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27McdChannel: use tp_channel_get_requested instead of reinventing itSimon McVittie1-18/+2
MC's reinvention was potentially better if the channel might lack the Requested property... but that property has been mandatory for years, so CMs that haven't caught up can just deal with it. Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27Use tp_channel_get_connection instead of tp_channel_borrow_connectionSimon McVittie3-4/+4
This requires telepathy-glib 0.19.9, so depend on it. Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27mc-tool: use tp_account_manager_dup_valid_accountsSimon McVittie1-8/+8
tp_account_manager_get_valid_accounts has the confusing (transfer container) transfer-mode, and is deprecated in telepathy-glib 0.19.9. Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27Enable TP_DISABLE_SINGLE_INCLUDESimon McVittie1-0/+1
Tested with telepathy-glib 0.19.9. Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27Update code generation tools from telepathy-glib 0.19.9Simon McVittie6-275/+474
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27Enable TP_SEAL_ENABLESimon McVittie1-0/+1
Tested with telepathy-glib 0.19.9. Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27replace sealed struct members with getters and use TpProtocolSimon McVittie9-60/+85
Originally two patches for 'next' by Jonny Lamb. Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27WARNING, etc. macros: addSimon McVittie1-0/+9
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27add more telepathy-glib-dbus.h includes where appropriateJonny Lamb4-0/+4
Signed-off-by: Jonny Lamb <jonny.lamb@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27mc-debug-server: don't self-terminate when disconnected from GDBusSimon McVittie1-0/+14
It appears something in MC now connects to D-Bus for a second time, using GDBus this time. We don't want to exit-on-disconnect for this one either, again so we free all memory before exiting. Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27exec-with-log.sh: add gdb wrapperSimon McVittie3-0/+10
Based on a patch from Jonny Lamb; changed to use ${abs_top_srcdir} to work out-of-tree, backtrace all threads, and put the gdb script in /tools. Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-27make-valid test: make connection object paths distinctJonny Lamb1-2/+2
If these object paths are the same, the factory will use the same TpConnection (even though they are actually different connections) and dispatching will happen twice. Signed-off-by: Jonny Lamb <jonny.lamb@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
2012-09-20Post-release version bumpSimon McVittie2-1/+6
2012-09-20Prepare version 5.13.2Simon McVittie2-3/+5
2012-09-20NEWSSimon McVittie1-0/+24
2012-09-20Merge branch 'xdg-keyfile-35896'Simon McVittie16-119/+618
Reviewed-by: Jonny Lamb <jonny.lamb@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896 Conflicts: src/mcd-account-manager-default.c
2012-09-20Merge branch 'telepathy-mission-control-5.12' into masterSimon McVittie3-2/+66
Conflicts: NEWS configure.ac
2012-09-20the obligatory version bumpSimon McVittie2-1/+6
2012-09-20Prepare version 5.12.3Simon McVittie2-4/+14
2012-09-20Do not distribute mcp-signals-marshal.h, which is generated at build-timeSimon McVittie1-1/+5
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
2012-09-20Default accounts backend: finish password migrations that Empathy 3.0 startedSimon McVittie1-0/+55
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=42088 Bug-Debian: http://bugs.debian.org/687933 Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
2012-09-17Make the gnome-keyring test work again, with modern gnome-keyringSimon McVittie1-1/+10
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Reviewed-by: Jonny Lamb <jonny.lamb@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=42088 Cherry-picked-from: c21e2b09bf4cdda6fb05d64f9198f6db7b776c76
2012-09-07Update documentation of --with-accounts-dirSimon McVittie1-2/+2
It used to be where we kept accounts; now it's only the source for account migration into XDG_DATA_HOME. Keep its name the same, so that if a user or distribution is configuring with --with-accounts-dir="~/.mc-accounts" or something, the migration works as intended as long as they continue to do so. (We don't recommend doing so, though.) Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896 Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2012-09-07Default account backend: write accounts to XDG_DATA_HOME, with fallbackSimon McVittie4-37/+120
If the user has ~/.mission-control/accounts/accounts.cfg we migrate from there to XDG_DATA_HOME/telepathy/mission-control/accounts.cfg, and if successful, delete the old name. If the user has XDG_DATA_DIRS/telepathy/mission-control/accounts.cfg (in a lower-priority path element than XDG_DATA_HOME), we use it, with copy-on-write into XDG_DATA_HOME. (Limitation: the account-store executable used in some tests only reads from XDG_DATA_HOME, and doesn't understand the XDG_DATA_DIRS and MC_ACCOUNT_DIR fallback.) Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896 Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2012-09-07Default account backend: include directory creation in _commitSimon McVittie1-23/+26
Also check for errors - we can at least give a useful warning. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896 Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2012-09-07Default account backend: restructure to be able to look in multiple placesSimon McVittie1-4/+45
This isolates all file-writing into _commit, and all file-reading into am_default_load_keyfile. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896 Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2012-09-07McdAccount: migrate avatars to a XDG pathSimon McVittie5-49/+364
This is the easy part of XDGification: there is no plugin involvement or anything for avatars (yet!), it's just hard-coded. Changing the avatar location from a single directory to a search path results in some new corner cases, so test them. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896 Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2012-09-07mcd_ensure_directory: addSimon McVittie2-0/+19
I keep calling g_mkdir_with_parents() and expecting it to return a boolean (it doesn't, it returns 0 or -1), so it seems worth wrapping it in something more sensible. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896 Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2012-09-07Tests: distinguish between XDG cache/config/data home, and MC_ACCOUNT_DIRSimon McVittie9-6/+46
We want to be sure that MC is using the right one in each situation. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896 Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2012-09-07servicetest: don't eavesdrop on method replies or errorsSimon McVittie1-5/+5
Eavesdropping on method replies breaks libdbus if you call methods using the same connection. You can get into a situation like this: * Test calls a method on MC; say the serial number is 42 * At around the same time, MC calls a method on gnome-keyring and also uses serial number 42 * gnome-keyring replies, labelled "in reply to 42" * Test is eavesdropping, so it sees the reply going from gnome-keyring to MC * Test interprets the reply from gnome-keyring to MC as the reply it was expecting from MC, sees completely the wrong types, and becomes confused This seems unlikely - but because serial numbers are sequential and start from 1 for each connection (as opposed to starting from a random offset), two connections can quite easily happen to sync up. I saw it happen most recently in the gnome-keyring test. With the benefit of hindsight, I think I've seen this before: whenever the tests made an Introspect() call which returned a type other than 's', that was probably this bug. We never actually generated events for messages other than signals and method calls, so match those ones specifically, and don't eavesdrop on replies. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=54495 Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Reviewed-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
2012-09-07Don't generate code for Account.I.Addressing, use telepathy-glib'sSimon McVittie9-90/+8
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Reviewed-by: Xavier Claessens <xavier.claessens@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=54633