Replace bare SubversionException implemented in C with
commit0d0480ce0628a540af0589e15bb776b8aa6d2a3e
authorepg <epg@612f8ebc-c883-4be0-9ee0-a4e9ef946e3a>
Tue, 4 Dec 2007 02:06:06 +0000 (4 02:06 +0000)
committerepg <epg@612f8ebc-c883-4be0-9ee0-a4e9ef946e3a>
Tue, 4 Dec 2007 02:06:06 +0000 (4 02:06 +0000)
tree56d6729ec3d5f55263e05e1c6e838040afa9805d
parentcc48b8145e4bc7f634c48c5ea1c4008f392ed8ff
Replace bare SubversionException implemented in C with
SubversionException written in Python, exposing the full chain of
svn_error_t objects.

* subversion/bindings/swig/python/svn/core.py
  (SubversionException): Add Exception class with apr_err, message,
    child, file, and line attributes, plus args attribute that is
    compatible with pre-1.5 bindings.

* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c
  (SubversionException, svn_swig_py_exception_type,
   svn_swig_py_register_exception): Remove.
  (svn_swig_py_svn_exception): Turn svn_error_t chain into
    svn.core.SubversionException chain and raise that.

* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.h
  (svn_swig_py_exception_type, svn_swig_py_register_exception): Remove.

* subversion/bindings/swig/core.i
  Drop reference to svn_swig_py_exception_type.
  Don't register SubversionException here.

* subversion/bindings/swig/python/tests/client.py
* subversion/bindings/swig/python/tests/mergeinfo.py
* subversion/bindings/swig/python/tests/repository.py
* subversion/bindings/swig/python/tests/wc.py
  Import SubversionException from svn.core instead of libsvn.core.

git-svn-id: http://svn.collab.net/repos/svn/trunk@28226 612f8ebc-c883-4be0-9ee0-a4e9ef946e3a
subversion/bindings/swig/core.i
subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c
subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.h
subversion/bindings/swig/python/svn/core.py
subversion/bindings/swig/python/tests/client.py
subversion/bindings/swig/python/tests/mergeinfo.py
subversion/bindings/swig/python/tests/repository.py
subversion/bindings/swig/python/tests/wc.py