The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

VCI::VCS::Bzr - The Bazaar implementation of VCI

DESCRIPTION

This is a "driver" for VCI for the Bazaar version-control system. You can find out more about Bazaar at http://bazaar-vcs.org.

For information on how to use VCI::VCS::Bzr, see VCI.

CONNECTING TO A BZR REPOSITORY

For the repo argument to "connect" in VCI, choose the directory above where your branches are kept. For example, if I have a branch http://bzr.domain.com/bzr/branch, then the repo would be http://bzr.domain.com/bzr/.

REQUIREMENTS

VCI::VCS::Bzr requires that the following be installed on your system:

bzr

bzr Must be installed and accessible to VCI. If it's not in your path, you should specify an x_bzr argument to "connect" in VCI, which should contain the full path to the bzr executable, such as /usr/bin/bzr.

bzrtools

The bzrtools extension package must be installed. Usually this is available as a package (RPM or deb) in your distrubution, or you can download it from here: http://bazaar-vcs.org/BzrTools.

bzr-xmloutput

Because VCI::VCS::Bzr processes the output of bzr, it needs it in a machine-readable format like XML. For bzr, this is accomplished by the bzr-xmloutput plugin, which is available here: https://launchpad.net/bzr-xmloutput.

You can read about how to install it at http://bazaar-vcs.org/UsingPlugins.

This is in addition to any perl module requirements listed when you install VCI::VCS::Bzr.

LIMITATIONS AND EXTENSIONS

These are limitations of VCI::VCS::Bzr compared to the general API specified in the VCI::Abstract modules.

VCI::VCS::Bzr::Repository

projects

On some repositories, ->projects will return an empty array, even though there are branches there. This only happens for repositories where we can't list the directories. For example, HTTP repositories without a directory listing.

However, get_project will still work on those repositories.

VCI::VCS::Bzr::Directory

When constructing a Directory, you cannot specify time or revision without also specifying contents. VCI::VCS::Bzr itself never does this, so you generally don't have to worry about this unless you're building your own objects for some reason.

PERFORMANCE

With local repositories, VCI::VCS::Bzr should be very fast. With remote repositories, certain operations may be slow, such as calling projects on a Repository.