Python – What Python bindings are there for CVS or SVN

cvspythonsvnversion-control

I once did a cursory search and found no good CVS bindings for Python. I wanted to be able to write helper scripts to do some fine-grained manipulation of the repository and projects in it. I had to resort to using popen and checking stdout and stderr and then parsing those. It was messy and error-prone.

Are there any good quality modules for CVS integration for Python? Which module do you prefer and why?

While I am at it, is there a good Subversion integration module for Python? My understanding is that Subversion has a great API for such things.

Best Solution

For cvs, pyCVS may be worth a look.

For svn, there is pysvn, which is pretty good.