zeromq/pyczmq — pull request #13 by claws (2013-11-29 23:38:35+00:00)
Title: Add continuous integration testing

This pull request provides initial continuous integration testing based on the same Travis-ci tool used by the czmq project.

I initially tried to get builds working for Python 2.6, 2.7, 32, 3.3 and pypy. The 2.7 build worked fine.

I had to make some simple changes to support 2.6. These involves adding the specific index to the {} in all string .format calls.

I tried to get the Python 3 based builds going. The first problem encountered was related to relative imports which meant I had to add a "." to some of the module import lines so that Python3 could import them. Next were the typical strings related issues with a 2to3 conversion. I decided not to implement these as it would be a large change set and that is perhaps better suited to a specific change set that adds Python 3 compatibility. I left the absolue module reference change in as it backward compatible and gets us closer to Python 3 compatibility.

I also tried to get the pypy build working but encountered issues with cffi where it was reporting problems returning 'void *' types. Again, I think this type of perhaps largish compatibility change would be better done under a separate change set to this CI focused change.

So what we are left with is a working continuous integration solution supporting Python 2.6 and 2.7 which I think is a good start. From here we can begin to address outstanding compatibility issues if and when needed.

IMPORTANT:
If you choose to merge this change then there are a few things you will need to do during the merge step to properly integrate this change set:

1. You will need to create an account on Travis-ci.org (make sure you use the .org site not the .com site). This is easy as you can sign in using your Github account via OAuth.
2. Once signed in to Travis-ci select 'Accounts' from your profile drop-down at top right.
3. In the Repositories tab you will need to enable zeromq/pyczmq repo. This will set up a service hook within the Github zeromq/pyczmq project so that a commit will trigger a Travis-ci build.
4. Modify the build status badge link in the README.md file as it currently references my claws/pyczmq project which was required for testing this change set. Change it to zeromq/pyczmq.