2010 / The gpodder.net Client Library

mygpoclient - A gpodder.net Client Library

The mygpoclient library allows developers to utilize a Pythonic interface to the gpodder.net web services. This page provides the public place for downloading source releases of the library.

Dependencies

The only hard dependency is a version of the simplejson module. Python 2.6 already includes this module as "json", so you don't need any additional modules. For Python 2.5, please install the simplejson module. See the DEPENDENCIES file for optional dependencies that you need to install if you want to run unit tests and generate the API documentation.

Utilities and examples

bpsync (in Git, not yet part of a release)

This little utility, which will be installed with the library will synchronize your bp.conf file from BashPodder to the gpodder.net web services. If you set up your computer to run bpsync get before every BashPodder run, you can manage your subscriptions directly from the web service without having to SSH into the box where bashpodder is running. Initially (and after you edit the bp.conf file by hand) you have to use the command bpsync put to upload the current subscription list to the web service.

Releases

Current release:

Old releases:


News

2010-04-26 mygpoclient 1.4 "Do No Harm" released

Yesterday's 1.3 release contained some bugs that were overseen during the release process. This release fixes these issues and adds some more doctests and fixes unit tests.

2010-04-25 mygpoclient 1.3 "Born to Run" released

This release changes the hostname of the web service to gpodder.net, so that all requests by the library are sent to gpodder.net instead of my.gpodder.org. Also, this release sets the API compatiblity level to 2, which allows us to send and receive more fine-grained, timestamped play events. If you have been developing against previous versions of mygpoclient, please read the NEWS file to read about the minor API changes that this release introduces in order to support the new features.

2010-03-15 mygpoclient 1.2 "Lighthouse" released

This release adds Windows compatibility and includes a fix for a bug that happened with relative imports when simplejson was not installed. This update is recommended for all users. If you cannot upgrade to 1.2 at the moment, please make sure to install python-simplejson so that the relative import bug in version 1.1 will not affect you.

Please note that version 1.1 was generating wrong URLs in Windows, as it was using os.path.join to construct URLs, which does not work under Windows, because the URLs contained backslashes. This has been fixed in version 1.2. The version of mygpoclient that is bundled with gPodder 2.3 for Windows already has this fix included as a hotfix. Future versions will simply ship with 1.2 and later.

2010-02-19 mygpoclient 1.1 "The Substitute" released

This release is a bugfix release on top of mygpoclient 1.0, and fixes some bugs that have made it into the initial release:

  • Device settings upload now uses POST (version 1.0 was incorrectly using PUT)
  • Fallback to Python 2.6's json module if simplejson is not available (reported by Allan McRae)

Updating to version 1.1 is recommended for all users, although the current my.gpodder.org works around the wrong HTTP method bug for device settings uploads. This means that version 1.0 of mygpoclient was not compatible with the mygpo API specs for device settings uploads (although we did add a workaround to the server-side code in the mygpo web service implementation).


Packages in distributions

mygpoclient is available in several distributions now:

It takes some time for packages in Debian to trickle into the Ubuntu repositories. As a means to allow easy installation of gPodder on Ubuntu, the gPodder Ubuntu PPA now ships packages of mygpoclient for recent releases of Ubuntu:

Links


Thomas Perl (thp at this domain), jabber: thp@jabber.org