¿Cómo incluyo y enloop pysvn con mi script python?

Estoy trabajando en una herramienta que usa pysvn. El escritor anterior de la herramienta incluía pysvn1.4 con él, por lo que se podía usar en cualquier máquina que tuviera python, sin necesidad de download o instalar pysvn.

Me gustaría actualizar la herramienta para usar pysvn 1.6.

Lo que he hecho hasta ahora es instalar pysvn1.6 en mi máquina, y moví la carpeta pysvn desde mi directory / usr / lib / python / site-package / pysvn al directory de mis files fuente, ya que parece que así es como el autor anterior lo hizo.

La estructura actual del sistema de files es la siguiente:

assorted.py files assorted.pyc files pysvn folder that includes old version of pysvn __init__.py __init__.pyc __pysvn.so 

Sin embargo, cuando ejecuto el progtwig, obtengo este error:

 Traceback (most recent call last): File "slocmine.py", line 195, in ? sys.exit(main(sys.argv[0:])) File "slocmine.py", line 113, in main logjsonstr = pyslocd_svn_log.doit(svn, url) File "/users/users1/chindes/newsloc/svn/lib/python2.4/pyslocd_svn_log.py", line 114, in doit revision=pysvn_rev_head, depth=pysvn.depth.empty) AttributeError: 'module' object has no attribute 'empty' 

que se origina de este código (previamente válido):

 repoinfo = svn.info2(repoPathUrl, revision=pysvn_rev_head, depth=pysvn.depth.empty) 

Esto me sugiere que no importé el module correctamente, aunque puedo estar equivocado.

Editar: Parece que tengo la versión 1.6.2 de pysvn y la versión 1.6.15 de subversión que aparentemente no son compatibles.

pysvn es definitivamente uno de los modules más extraños para build. Así es como he construido y usado exitosamente pysvn. La variable de entorno TARG se establece en el directory de installation de Python.

 cd ~ wget http://pysvn.barrys-emacs.org/source_kits/pysvn-1.7.5.tar.gz tar zxvf pysvn-1.7.5.tar.gz cd pysvn-1.7.5/Source python setup.py backport python setup.py configure --apr-inc-dir=/usr/include/apr-1 make cd ../Tests make cd ../Sources mkdir -p $TARG/lib/python2.7/site-packages/pysvn cp pysvn/__init__.py $TARG/lib/python2.7/site-packages/pysvn cp pysvn/_pysvn_2_7.so $TARG/lib/python2.7/site-packages/pysvn cd ~ 

Si todavía tiene el module anterior disponible, ¿por qué no intenta ejecutarlo de nuevo, pero agregue algunas instrucciones de debugging en el mismo lugar en el file que generó la exception. Puede usar diff para encontrar el lugar correcto en el context ya que el código puede haber cambiado. Por otro lado, puedes probar la última versión (ver el script anterior) ya que puede ser un error de la biblioteca.