Bug 40276 - Gabble 0.8 doesn't understand Google Talk's roster stanzas
Summary: Gabble 0.8 doesn't understand Google Talk's roster stanzas
Status: RESOLVED WONTFIX
Alias: None
Product: Telepathy
Classification: Unclassified
Component: gabble (show other bugs)
Version: 0.8
Hardware: Other All
: medium normal
Assignee: Telepathy bugs list
QA Contact: Telepathy bugs list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-08-21 15:35 UTC by Debarshi Ray
Modified: 2012-09-03 12:22 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
gabble log (deleted)
2011-10-18 08:50 UTC, Brian Curtis
Details
Gabble Log with debug on (deleted)
2011-10-18 11:36 UTC, Brian Curtis
Details

Description Debarshi Ray 2011-08-21 15:35:44 UTC
A couple of people using Google Talk have been complaining on IRC that all of a sudden they do not have any contacts in their roster any more. This happened to my room-mate, who does not use Telepathy.

It appears that Google has indeed made a change by starting to name the namespace as described in this thread on the emacs-jabber-general mailing list: http://ur1.ca/4y3bt
Comment 1 Jonny Lamb 2011-08-22 01:10:33 UTC
Sorry, I'm confused. Are you actually experiencing this problem with gabble then or are you just letting us know about the change on the server? I just signed on using a gmail account and all contacts seem to be present?
Comment 2 Debarshi Ray 2011-08-22 02:27:53 UTC
(In reply to comment #1)
> Sorry, I'm confused. Are you actually experiencing this problem with gabble
> then or are you just letting us know about the change on the server? I just
> signed on using a gmail account and all contacts seem to be present?

I use emacs-jabber.el and I am not experiencing this problem. But my room-mate who uses the same client did. Similarly two people were complaining on IRC (#telepathy and #empathy) but apparently others were happy and did not have any problems.

So I am not sure, really, and I have not investigated any further.
Comment 3 Simon McVittie 2011-08-23 02:16:53 UTC
From the thread you linked it seems that jabber.el didn't really support XML namespaces properly, a bug which was exposed by the Google server change.

All currently-supported versions of Gabble use Wocky, a namespace-aware XMPP library, so this change shouldn't affect us; it seems to work for me and Jonny, at least, so closing this as WORKSFORME.
Comment 4 Marco Barisione 2011-08-23 03:10:48 UTC
But it breaks the N900 :(
Comment 5 Debarshi Ray 2011-08-23 04:14:19 UTC
(In reply to comment #3)
> From the thread you linked it seems that jabber.el didn't really support XML
> namespaces properly, a bug which was exposed by the Google server change.
> 
> All currently-supported versions of Gabble use Wocky, a namespace-aware XMPP
> library, so this change shouldn't affect us; it seems to work for me and Jonny,
> at least, so closing this as WORKSFORME.

Here is an example of a complaint on #empathy:

<duckybsd> hi, I am useing empathy as gtalk client, since yesterday it    
      suddenly can't show any of my buddies, everything seems ok, empathy has   
      login into my gtalk account. I am using ubuntu 10.04, the Pidgin in the   
      same computer works fine. any suggestions? thanks!

Do you think the version in Ubuntu 10.04 is too old?

Funny thing is that I use emacs-jabber.el as well and it did not break for me,
and neither did Empathy/Telepathy.

Similarly when these Empathy/Telepathy users were complaining, it was working for others.

No clue what to make of it, though.
Comment 6 Simon McVittie 2011-08-23 04:31:12 UTC
(In reply to comment #5)
> Do you think the version in Ubuntu 10.04 is too old?

10.04 is Lucid, which has Gabble 0.8 (per <http://packages.ubuntu.com/search?keywords=telepathy-gabble>). That's also what the N900 has. Gabble 0.8 used Loudmouth, which is not really namespace-aware (the same bug that emacs-jabber.el had).

Gabble 0.10 and up should be unaffected, I think, due to using Wocky?

> Funny thing is that I use emacs-jabber.el as well and it did not break for me,
> and neither did Empathy/Telepathy.

Google are probably rolling out a change across multiple servers; your server probably hasn't been upgraded yet?
Comment 7 Brian Curtis 2011-10-18 08:50:09 UTC
Created attachment 52484 [details]
gabble log

This log is from a machine with the issue. Contacts don't show (not even in offline contacts) but if someone messages you, the window shows up and you can communicate with the person.
Comment 8 Will Thompson 2011-10-18 09:02:12 UTC
(In reply to comment #7)
> Created attachment 52484 [details]
> gabble log
> 
> This log is from a machine with the issue. Contacts don't show (not even in
> offline contacts) but if someone messages you, the window shows up and you can
> communicate with the person.

This log is incomplete (specifically, it doesn't show Gabble requesting the roster or the server replying, which is one of the first things it does when connecting).  Can you get a complete log by following the method on <http://telepathy.freedesktop.org/wiki/Debugging>?
Comment 9 Brian Curtis 2011-10-18 11:36:12 UTC
Created attachment 52488 [details]
Gabble Log with debug on

New Gabble Log with debug options enabled.
Comment 10 Simon McVittie 2012-09-03 12:22:57 UTC
tl;dr: This is WONTFIX for Gabble 0.8.x and FIXED in Gabble >= 0.10.0.

----

Here are a couple of the offending IQs:

gabble-DEBUG: connection_disco_cb: got:
<info:query xmlns:info="http://jabber.org/protocol/disco#info"> <info:identity name="Google Talk" type="im" category="server"></info:identity>
 <info:feature var="http://jabber.org/protocol/disco#info"></info:feature>
...
</info:query>

and

<iq to="briancurtis.wx@gmail.com/3089d664" id="296009306548" type="result"><ros:query xmlns:ros="jabber:iq:roster">
...
<ros:item jid="ken@vandine.org" subscription="both" name="Ken VanDine"><ros:group>Ubuntu</ros:group></ros:item>
...

This is valid XMPP but does not match the XML that most XMPP servers will give you, which changes the default namespace (xmlns="...") instead of using namespace prefixes:

    <iq ...>
        <query xmlns="http://jabber.org/protocol/disco#info">
            <identity .../>
            <feature .../>

    <iq ...>
        <query xmlns="jabber:iq:roster">
            <item ...><group>Ubuntu</group></item>

Gabble 0.8 is expected to fail with these IQs: its XMPP implementation is Loudmouth, which does not really support XML namespaces. Realistically, we are not interested in fixing 0.8 any more.

Gabble >= 0.10 is expected to work fine with these IQs: its XMPP implementation, Wocky, is fully namespace-aware.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.