Gwibber not displaying twitter timeline due to API change upstream requiring GET instead of POST

Bug #358341 reported by Dominic Evans
152
This bug affects 25 people
Affects Status Importance Assigned to Milestone
Gwibber
Fix Released
Critical
Unassigned
gwibber (Fedora)
Fix Released
High
gwibber (Ubuntu)
Fix Released
High
Iulian Udrea
Nominated for Lucid by Fran

Bug Description

Gwibber is currently not able to display the twitter timelines due to an API change they have made upstream that now requires clients to use GET requests instead of POST

See http://code.google.com/p/twitter-api/issues/detail?id=438 for upstream bug report.

Revision history for this message
Dominic Evans (oldmanuk) wrote :

Marking this as 'won't fix' until we hear back from twitterapi whether the change was intended or not and what we should do about it

Changed in gwibber:
assignee: nobody → oldman
status: New → Won't Fix
Revision history for this message
Michal Hruby (mhr3) wrote :

The problem here is that Gwibber is using POST request instead of GET, that's why it doesn't work. If you use GET request (as indicated on the Twitter API page), everything works as expected.

Revision history for this message
Dominic Evans (oldmanuk) wrote :

Ah, thanks Michal!

Changed in gwibber:
importance: Undecided → Critical
status: Won't Fix → In Progress
summary: - Gwibber not displaying twitter timeline due to broken API changes
+ Gwibber not displaying twitter timeline due to API change upstream
+ requiring GET instead of POST
description: updated
Revision history for this message
Matthew Weier O'Phinney (mweierophinney) wrote :

Revision 286 fixes the issues for me.

Revision history for this message
James Gregory-Monk (jamgregory) wrote :

Well, I've just managed to patch my Fedora installation of Gwibber using revision 286, and it is now working fine for me. Do you know when the new updates will become official so I can get Fedora to update it properly?

Revision history for this message
In , James (james-redhat-bugs) wrote :

Description of problem:
As of this morning, Twitter deprecated part of the API which Gwibber uses to query for timeline updates. This means that Twitter support is now broken in Gwibber.

While an official release hasn't been sent out yet, it is possible to patch Gwibber, based on the updates made upstream, and was wondering if it was possible to update Gwibber to temporarily fix this issue (until an official release is made).

The diff for the fix is available at:
http://bazaar.launchpad.net/~gwibber-committers/gwibber/trunk/revision/286/gwibber/microblog/twitter.py

Version-Release number of selected component (if applicable):
Gwibber 0.9.1

How reproducible:
Always

Steps to Reproduce:
1. Load Gwibber and add a Twitter account
2. Attempt to retrieve the timeline, which will fail with HTTP error 400

Actual results:
The timeline fails to load with HTTP error 400

Expected results:
The timeline and replies should load in the relevant tabs

Revision history for this message
Tiago Sousa (tiagoboldt) wrote :

Any update on the ppa that can solve this issue would be hugely appreciated!

Revision history for this message
In , Ian (ian-redhat-bugs) wrote :

Thanks for the reminder, was going to get to this later today but forgot ;)

Revision history for this message
In , Fedora (fedora-redhat-bugs) wrote :

gwibber-1.0.1-1.286bzr.fc10 has been submitted as an update for Fedora 10.
http://admin.fedoraproject.org/updates/gwibber-1.0.1-1.286bzr.fc10

Revision history for this message
In , James (james-redhat-bugs) wrote :

I've just installed the updated version and it works fine for me - thanks for fixing this Ian

Revision history for this message
James Gregory-Monk (jamgregory) wrote :

For any people using Fedora, an update is in the process of being pushed out which fixes this problem.

Revision history for this message
Dominic Evans (oldmanuk) wrote :

fix is committed on lp:gwibber and released on daily ppa

fix is also committed on lp:gwibber/1.0 and will hit jaunty whenever ~fta gets a chance to upload a .deb

Changed in gwibber:
status: In Progress → Fix Released
Changed in gwibber (Ubuntu):
assignee: nobody → oldman
status: New → Fix Committed
Changed in gwibber (Fedora):
status: Unknown → In Progress
Revision history for this message
RawIsWar (martynsmail) wrote :

After installing the revision I find that when running gwibber twitter is locking me out for too many login requests after about 20 mins. I have refresh set to 2 mins. Is this a bug?? If i don't use gwibber and use another client I have no problem.

Revision history for this message
James Gregory-Monk (jamgregory) wrote :

From what I understand, every time Gwibber refreshes, it makes two requests - one for your main timeline, and one for your replies timeline. If you have it set to 2 minutes, you're already making 60 requests in an hour (the limit for non-whitelisted accounts is 100). It shouldn't be locking you out after 20 minutes though. I suspect this is a separate issue, so perhaps start a new ticket about it?

Revision history for this message
In , Wade (wade-redhat-bugs) wrote :

Confirmed fixed.

For anyone else coming across this bug. You can tell if this affects you by going to the View menu -> Errors and looking for "Error 400" messages associated to the twitter account.

Revision history for this message
Dominic Evans (oldmanuk) wrote :

@RawisWar see bug 359885

Revision history for this message
In , Fedora (fedora-redhat-bugs) wrote :

gwibber-1.0.1-1.286bzr.fc10 has been pushed to the Fedora 10 testing repository. If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with
 su -c 'yum --enablerepo=updates-testing update gwibber'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F10/FEDORA-2009-3556

Changed in gwibber (Fedora):
status: In Progress → Fix Committed
Revision history for this message
Alexander Sack (asac) wrote :

not sure why the ubuntu task was fix committed. ken has prepared the backport for jaunty. assigning to him.

Changed in gwibber (Ubuntu):
assignee: Dominic Evans (oldman) → Ken VanDine (ken-vandine)
importance: Undecided → High
status: Fix Committed → In Progress
Revision history for this message
Ken VanDine (ken-vandine) wrote :

Attached the backported patch fixing the twitter api change

Revision history for this message
Ken VanDine (ken-vandine) wrote :

Packaging including this patch can be found at lp:~ken-vandine/gwibber/packaging

Revision history for this message
Stefan Horning (stefan-horning) wrote :

When can a fix in Ubuntu be expected?

Revision history for this message
Mark Grandi (markgrandi) wrote :

yeah....intrepid's version of gwibber is now working fine, but jaunty's version is still giving me 400: bad request

Revision history for this message
hackel (hackel) wrote :

I'm using rev 302 from the daily PPA, but still seem to be experiencing this problem:

Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/__init__.py", line 49, in get_data
    for message in method(client):
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/twitter.py", line 209, in receive
    for data in self.get_messages():
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/twitter.py", line 159, in get_messages
    urllib.urlencode({"count": self.account["receive_count"] or "20"})))
  File "/usr/lib/python2.6/dist-packages/gwibber/microblog/twitter.py", line 154, in connect
    url, data, headers = {"Authorization": self.get_auth()})).read()
  File "/usr/lib/python2.6/urllib2.py", line 124, in urlopen
    return _opener.open(url, data, timeout)
  File "/usr/lib/python2.6/urllib2.py", line 389, in open
    response = meth(req, response)
  File "/usr/lib/python2.6/urllib2.py", line 502, in http_response
    'http', request, response, code, msg, hdrs)
  File "/usr/lib/python2.6/urllib2.py", line 427, in error
    return self._call_chain(*args)
  File "/usr/lib/python2.6/urllib2.py", line 361, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.6/urllib2.py", line 510, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
HTTPError: HTTP Error 400: Bad Request

Revision history for this message
Brownout (brownout) wrote :

I've used 1.0.2~bzr295-0ubuntu1~daily1 and it worked fine. Now I'm using 1.0.2~bzr302-0ubuntu1~daily1 and no problem either.

Revision history for this message
In , Sami (sami-redhat-bugs) wrote :

I just installed gwibber.noarch 0:1.0.1-1.286bzr.fc10 and I can see my twitter feed again.

Revision history for this message
Dominic Evans (oldmanuk) wrote :

Please track http 400 errors on bug 359885, they are a separate issue

Revision history for this message
Ken VanDine (ken-vandine) wrote :

Attached debdiff for bugs 358341 and 361120

Revision history for this message
Iulian Udrea (iulian) wrote :

Uploading (ftp) to ubuntu (upload.ubuntu.com)
[ Uploading job gwibber_0.8-0ubuntu4_source
 gwibber_0.8-0ubuntu4.diff.gz 6.3 kB, ok (1 s, 6.32 kB/s)
 gwibber_0.8-0ubuntu4.dsc 1.2 kB, ok (0 s, 1.16 kB/s)
 gwibber_0.8-0ubuntu4_source.changes 1.5 kB, ok (0 s, 1.54 kB/s) ]

Thank you.

Changed in gwibber (Ubuntu):
assignee: ken-vandine → iulian
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gwibber - 0.8-0ubuntu4

---------------
gwibber (0.8-0ubuntu4) jaunty; urgency=low

  * debian/control:
    - Added python-xdg to Depends
    - Added python-indicate to Recommends
  * debian/patches/01_add_message_indicator_support.patch
    - Backported support for the message indicator from trunk (LP: #361120)
  * debian/patches/02_twitter_api_fix.patch
    - Backported twitter API fixes from trunk (LP: #358341)

 -- Ken VanDine <email address hidden> Tue, 14 Apr 2009 11:21:49 -0400

Changed in gwibber (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
In , Fedora (fedora-redhat-bugs) wrote :

gwibber-1.0.1-1.286bzr.fc10 has been pushed to the Fedora 10 stable repository. If problems still persist, please make note of it in this bug report.

Changed in gwibber (Fedora):
status: Fix Committed → Fix Released
Changed in gwibber (Fedora):
importance: Unknown → High
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.