Hi all,
Please review/comment.
[[[
Implement Python bindings for dump stream parser.
* subversion/bindings/swig/include/svn_types.swg
(): Fix a typo in svn_repos_parser_fns2_t type name, add
svn_repos_parser_fns2_t type to the argout typemap.
* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c
(item_baton): Add pool; needed for certain methods in dump
stream parser that do not take pool argument.
(make_baton): Increment refcount on `editor'; remove incorrect
the comment stating the current usage is safe. Save pool pointer.
(close_baton): Decrement refcount on `editor'.
(svn_swig_py_make_parse_fns3): New function; creates vtable/baton
to be used in a later call to repos.parse_dumpstream3()
* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.h:
(svn_swig_py_make_parse_fns3): New function.
* subversion/bindings/swig/python/svn/core.py
(Stream.close): Guard against double-close.
* subversion/bindings/swig/python/svn/repos.py
(ParseFns3): New class; vtable for dump stream parser.
* subversion/bindings/swig/python/tests/repository.py
(test_parse_fns3): Test for dump stream parser bindings.
(test_unnamed_editor): Test delta.Editor usage where the
interpreter does not have a named variable for the instance
and thus does not hold a reference for it. Fails without
the make_baton/close_baton fix in swigutil_py.c.
* subversion/bindings/swig/svn_repos.i
(svn_swig_py_make_parse_fns3): Wrap it.
]]]
Regards,
Alexey.
Received on 2014-12-01 08:25:50 CET