NAME
VCI::VCS::Bzr - Object-oriented interface to Bazaar (bzr)
SYNOPSIS
use VCI;
my $repository = VCI->connect(type => 'Bzr',
                              repo => 'bzr://bzr.example.com/');
DESCRIPTION
This is a "driver" for VCI for the Bazaar version-control system. You can find out more about Bazaar at http://bazaar.canonical.com/.
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/.
Bzr's connect also takes one optional extra argument:
x_bzr- 
The path to the
bzrbinary on your system. If not specified, we will search yourPATHand throw an error ifbzrisn't found.Taint Mode: VCI will throw an error if this argument is tainted, because VCI just runs this command blindly, and we wouldn't want to run something like
delete_everything_on_this_computer.sh. 
REQUIREMENTS
VCI::VCS::Bzr requires that the following be installed on your system:
- bzr
 - 
bzrMust be installed and accessible to VCI. If it's not in your path, you should specify anx_bzrargument to "connect" in VCI, which should contain the full path to thebzrexecutable, such as /usr/bin/bzr. - bzrtools
 - 
The
bzrtoolsextension 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://launchpad.net/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-xmloutputplugin, which is available here: http://launchpad.net/bzr-xmloutput.You can read about how to install it at http://doc.bazaar.canonical.com/plugins/en/plugin-installation.html.
 
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.
SEE ALSO
AUTHOR
Max Kanat-Alexander <mkanat@cpan.org>
COPYRIGHT AND LICENSE
Copyright 2007-2010 by Everything Solved, Inc.
http://www.everythingsolved.com
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.