- It would be really nice if you could branch from an SVN or other semi-sane system, do multiple commits, then submit your changes back to the mainline using the 'submit' command. Doing this with CVS would probably be an exercise in misery, but any SCM with atomic commits could be a target. We could ensure that all imports of the same source produced the same data, so that parallel imports could merge from each other.
I think ForeignBranches have killer ease of use. The qualitative difference between working on an imported branch and just bzr branching it is huge.
It is certainly doable to add support for other systems not listed here as well, if they have atomic commits and some mechanism to create unique identifiers for revisions.
There is an implementation of a plugin that adds support for foreign Subversion branches. Committing to Subversion branches is also supported. Includes SVK support.
There is a read-only implementation of support for foreign Mercurial branches.
There is a read-only implementation of support for foreign Git branches.
There is no support for foreign Darcs branches yet, though this should be very well doable.
There is no support for foreign Baz (Bazaar 1.0) branches at the moment, but BzrTools contains a baz-import command that can convert Baz repositories to Bazaar repositories.
There is no support for foreign CVS branches at the moment. Creating it may also prove hard as CVS lacks atomic commits or unique identifiers to identify branches.