So what went wrong?

Earlier today, we started receiving support emails from users saying the buddy list would never load after authentication, the indicator in the navigation bar would just keep spinning indefinitely. It turns out that there was a minor change in the Google’s implementation of the XMPP protocol.

A buddy list is returned in a XML called Roster, till now a typical roster response coming from Google would look something like this:

<iq to="juliet@gmail.com" type="result" id="1234">
  <query xmlns="jabber:iq:roster">
      <item jid="romeo@gmail.com"
          name="Romeo"
          subscription="both">
          <group>
            Friends
          </group>
      </item>
      <item jid="mercutio@gmail.com"
          name="Mercutio"
          subscription="from">
          <group>
            Friends
          </group>
      </item>
  </query>
</iq>

Earlier today, it changed to:

<iq to="juliet@gmail.com" type="result" id="1234">
  <ros:query xmlns=”jabber:iq:roster” xmlns:ros=”jabber:iq:roster”>
      <ros:item jid="romeo@gmail.com"
          name="Romeo"
          subscription="both">
          <ros:group>
            Friends
          </ros:group>
      </ros:item>
      <ros:item jid="mercutio@gmail.com"
          name="Mercutio"
          subscription="from">
          <ros:group>
            Friends
          </ros:group>
      </ros:item>
  </ros:query>
</iq>

Both of the above responses are valid, however there was a bug in the current version which did not handle the later case. We have currently pulled Verbs from the App Store and an update with a fix has already been submitted, also we’ve requested Apple to expedite the review process. In the meanwhile please follow us on Twitter @verbsapp for the latest updates.

We’d appreciate your cooperation.

Posted by @chaitanyapandit