The problem before was, the script tries to get the status (whether it was "A" added, "M" modified, or "D" deleted) of a file by "svn ls" the parent directory before the commit and after the commit. The parent directory didn't exist before the commit (since it's added in the commit), so "svn ls" fails...
I've fixed the problem by completely changing the implementation of get status. I'm now analyzing the output of "svn log -v". It gives you the status of every file in the commit. It is only slightly complicated when there are multiple revisions.
I've added some unit tests for the parts I've added or changed. Please have a look.
The problem before was, the script tries to get the status (whether it was "A" added, "M" modified, or "D" deleted) of a file by "svn ls" the parent directory before the commit and after the commit. The parent directory didn't exist before the commit (since it's added in the commit), so "svn ls" fails...
I've fixed the problem by completely changing the implementation of get status. I'm now analyzing the output of "svn log -v". It gives you the status of every file in the commit. It is only slightly complicated when there are multiple revisions.
I've added some unit tests for the parts I've added or changed. Please have a look.