Hi folks,<div><br></div><div>I just submitted the following abstract as a talk proposal for PyCon US 2013 (talk proposals due today! Get moving if you wanted to do one :-)) -- I have no idea whether it will be accepted, but I wonder if folks would be interested in me giving the talk at BayPiggies?</div>
<div><br></div><div>---</div><div><br></div><div><div>There are many versions of Python out in the wild now from Python 2.x to Python 3.x to PyPy. It's surprisingly easy to test a Python package against multiple versions of Python when you have a few tools. You'll learn how to use tools like [Tox](<a href="http://tox.readthedocs.org/en/latest/index.html">http://tox.readthedocs.org/en/latest/index.html</a>) and [Travis CI](<a href="http://travis-ci.org/">http://travis-ci.org/</a>) to test Python software against multiple versions of Python.</div>
<div><br></div><div>* Testing (Super brief intro to why it's good, motherhood and apple pie, etc.)</div><div>* The problem: Multiple Pythons</div><div>    * Some differences between Python 2 and Python 3</div><div>* Doing it manually with virtualenv</div>
<div>    * How to test manually with virtualenv</div><div>    * This is tedious; we can do better...</div><div>* Automating testing across Python versions with Tox</div><div>    * What does Tox do?</div><div>    * Sample tox.ini</div>
<div>    * How to run tox</div><div>* Pushing testing out to the cloud with Travis CI</div><div>    * What is Travis CI?</div><div>    * Sample .travis.yml</div><div>    * Setting up the GitHub service hook to trigger Travis</div>
<div>    * Triggering a build</div><div>    * Show the Travis Web UI</div><div>    * Travis extras</div><div>        * Embedding a Travis build status badge in README (or other web page)</div><div>        * Running Travis on pull requests</div>
<div>* Ensuring greater compatibility across Python versions</div><div>    * Tips for writing portable code, useful patterns</div><div>    * Using 2to3</div><div>    * Using distribute's use_2to3 to automatically translate</div>
<div>    * The `six` module</div><div>* The Python 3 Wall of Shame</div><div>* Now go forth and test and port!</div></div>