Hi Subversion developers, I am trying to migrate some scripts from 1.6 server that we're currently running to a newer SVN version, and encountered something that looks like a bug: with 1.7/1.8 the fs.change_node_prop (in Python bindings) is no longer able to modify a node's properties unless that node is already modified in the transaction being handled.
A reproduction script is attached. It yields PASS on 1.6.11 and FAILs on 1.7.8 and 1.8.8. Is it by design, or a regression? If it is by design - what is the proper way to modify a node in a transaction in the newer Subversion? Regards, Alexey.
#!/usr/bin/python from optparse import OptionParser from svn import core, fs, repos def execute(pool, repos_path, txn): fs_ptr = repos.fs(repos.open(repos_path, pool)) txn_ptr = fs.open_txn(fs_ptr, txn, pool) txn_root = fs.txn_root(txn_ptr, pool) if fs.check_path(txn_root, "/foo/bar", pool) != core.svn_node_none: fs.change_node_prop(txn_root, "/foo/bar", "myprop", txn, pool) if __name__ == '__main__': parser = OptionParser() o, a = parser.parse_args() core.run_app(execute, a[0], a[1])
v.sh
Description: application/shellscript