How to get a *maintained* OAuth library for Python 3 in Ubuntu

Registered by Barry Warsaw on 2012-09-24

OAuth is such a simple protocol (v1 at least) and there are many packages available in the wider Python community and in Debian/Ubuntu. Sadly, there seems to be few options for Python 3 compatible, *upstream maintained* OAuth libraries. How can we encourage, fork, group-maintain, or otherwise improve the story for a Python 3 compatible OAuth library in Ubuntu?

Blueprint information

Status:
Complete
Approver:
Steve Langasek
Priority:
High
Drafter:
Barry Warsaw
Direction:
Approved
Assignee:
Barry Warsaw
Definition:
Approved
Series goal:
Accepted for raring
Implementation:
Implemented
Milestone target:
milestone icon ubuntu-13.04
Started by
Barry Warsaw on 2013-02-05
Completed by
Barry Warsaw on 2013-02-11

Whiteboard

OAuth library, python 3
=================

- Current library in Quantal http://packages.ubuntu.com/en/quantal/python3-oauthlib from https://github.com/idan/oauthlib
- Developers prefered communication is github issues but feel free to ping ib-lundgren (github account) or any other developer.
- Developer focus is to follow IETF specifications (OAuth2 core just recently as proposed standard)
- Communication developers <---> Ubuntu Community?
- Any other libraries available?

### Some other links might be of interest
http://oauth-debugger.herokuapp.com/ (manual testing)
https://github.com/ib-lundgren/flask-oauthprovider (a provider implementation, alpha)

// christoffer-holmstedt (friend to one of the developers and attending UDS)

Comments
Client is more important in Ubuntu (Desktop) at the moment than server side as python3 is in the far future for server side.
Python 3.3 is for raring.

Example of porting client from python-oauth to python-oauthlib:
https://code.launchpad.net/~barry/piston-mini-client/lp1077083/+merge/135449

# <Daviey> xnox: maas uses it to create an authenticated metadata service between master and its nodes.
# barry, so where are we getting server from?

barry: In general, server probably doesn't need to be ported to Python 3 (not on desktop), so use whatever you have to use. Still, we do need a *maintained* server library, and python-oauth is definitely not that. It has not been updated since 2009.

Release Notes:

(?)

Work Items

Work items:
Port cloud-init: POSTPONED
Port gwibber: POSTPONED
Port gwibber-service: DONE
Port identicurse: POSTPONED
Port jsonbot: POSTPONED
Port juju: POSTPONED
Port maas-cli: POSTPONED
Port maas-cluster-controller: POSTPONED
Port python-django-piston: POSTPONED
Port python-launchpadlib: POSTPONED
Port python-lazr.restfulclient: POSTPONED
Port python-maas-client: POSTPONED
Port python-tweepy: POSTPONED
Port python-u1db: POSTPONED
Port python-ubuntu-sso-client: DONE
Port python-ubuntuone-client: DONE
Port python-ubuntuone-storageprotocol: DONE
Port turpial: POSTPONED
Port ubuntuone-couch: POSTPONED
Port ubuntuone-file-storage-api: POSTPONED
[barry] Drop any other python oauth implementations out of the archive: POSTPONED
[christoffer-holmstedt] Message from oauthlib project to ubuntu project: Github issues is an acceptable way of communication: DONE
[christoffer-holmstedt] 14.04 needs server side oauth (speak with oauthlib developers about this): DONE
[barry] talk to maas folks about why they chose python-oauth and if they're willing to port to python-oauthlib: DONE
[christoffer-holmstedt] python 3.3 support, and a new pypi version 3.1 (speak with oauthlib developers about this): DONE
[christoffer-holmstedt] contact back to Ubuntu is email barry, xnox, mterry (speak with oauthlib developers about this): DONE
[xnox] to contact server guys for their needs: DONE
[barry] Work with upstream to get Python 3.3 compatible version in Raring (python-oauthlib 0.3.2): DONE