I just upgraded to the 0.5 branch (presumably the same as the 0.5.0rc1 release), and did a "bzr pull" in a checkout of Twisted trunk. After five minutes I got a recursion error:
0.597 opening SVN RA connection to 'svn+ssh://cvs.twistedmatrix.com/svn/Twisted/trunk'
5.827 bzr-svn: using Subversion 1.5.1 ()
305.601 potential branching layouts: [('trunk0', 1975), ('root', 19), ('trunk3', 7)]
305.601 Guessed repository layout: TrunkLayout(0), guess layout to use: TrunkLayout(0)
312.952 Traceback (most recent call last):
File "/home/andrew/code/bzr/bzrlib/commands.py", line 893, in run_bzr_catch_errors
return run_bzr(argv)
File "/home/andrew/code/bzr/bzrlib/commands.py", line 839, in run_bzr
ret = run(*run_argv)
File "/home/andrew/code/bzr/bzrlib/commands.py", line 539, in run_argv_aliases
return self.run(**all_cmd_args)
File "/home/andrew/code/bzr/bzrlib/builtins.py", line 790, in run
possible_transports=possible_transports)
File "/home/andrew/code/bzr/bzrlib/decorators.py", line 192, in write_locked
result = unbound(self, *args, **kwargs)
File "/home/andrew/code/bzr/bzrlib/workingtree.py", line 1537, in pull
possible_transports=possible_transports)
File "/home/andrew/code/bzr/bzrlib/decorators.py", line 192, in write_locked
result = unbound(self, *args, **kwargs)
File "/home/andrew/code/bzr/bzrlib/branch.py", line 1959, in pull
_override_hook_target=_override_hook_target)
File "/home/andrew/code/bzr/bzrlib/decorators.py", line 192, in write_locked
result = unbound(self, *args, **kwargs)
File "/home/andrew/code/bzr/bzrlib/branch.py", line 1759, in pull
graph=graph)
File "/home/andrew/code/bzr/bzrlib/decorators.py", line 192, in write_locked
result = unbound(self, *args, **kwargs)
File "/home/andrew/code/bzr/bzrlib/branch.py", line 508, in update_revisions
other_revno, other_last_revision = other.last_revision_info()
File "/home/andrew/.bazaar/plugins/svn/branch.py", line 321, in last_revision_info
last_revid = self.last_revision()
File "/home/andrew/.bazaar/plugins/svn/branch.py", line 371, in last_revision
last_revmeta = self.last_revmeta()
File "/home/andrew/.bazaar/plugins/svn/branch.py", line 163, in last_revmeta
for revmeta, mapping in self._revision_meta_history():
File "/home/andrew/.bazaar/plugins/svn/branch.py", line 355, in _revision_meta_history
self._revmeta_cache = self.repository.get_mainline(self.get_branch_path(), self._revnum or self.repository.get_latest_revnum(), self.mapping, pb=pb)
File "/home/andrew/.bazaar/plugins/svn/repository.py", line 435, in get_mainline
to_revnum=0, pb=pb), mapping))
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 1081, in iter_with_mapping
(mapping, lhs_mapping) = revmeta.get_appropriate_mappings(mapping)
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 321, in get_appropriate_mappings
original = self.get_original_mapping()
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 341, in get_original_mapping
if not self.is_bzr_revision():
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 440, in is_bzr_revision
if self.consider_bzr_fileprops():
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 587, in consider_bzr_fileprops
self._consider_bzr_fileprops = (self.estimate_bzr_fileprop_ancestors() > 0)
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 390, in estimate_bzr_fileprop_ancestors
return self._estimate_fileprop_ancestors("bzr:", estimate_bzr_ancestors)
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 375, in _estimate_fileprop_ancestors
ret = next._estimate_fileprop_ancestors(key, estimate_fn)
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 375, in _estimate_fileprop_ancestors
ret = next._estimate_fileprop_ancestors(key, estimate_fn)
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 375, in _estimate_fileprop_ancestors
ret = next._estimate_fileprop_ancestors(key, estimate_fn)
[...etc...]
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 375, in _estimate_fileprop_ancestors
ret = next._estimate_fileprop_ancestors(key, estimate_fn)
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 368, in _estimate_fileprop_ancestors
if self.knows_fileprops() or not self.children:
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 227, in knows_fileprops
fileprops = self.get_fileprops()
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 201, in get_fileprops
while not lm.changes_branch_root() and lm._fileprops is None:
File "/home/andrew/.bazaar/plugins/svn/revmeta.py", line 128, in changes_branch_root
if self.knows_changed_fileprops():
RuntimeError: maximum recursion depth exceeded
Launchpad is not the primary location for bzr-svn, and its mirror seems to be out of date. This bug has been fixed in 0.5 and 0.5.0rc1.