# `gbp.command_wrappers` module documentation

Part of `gbp`

Simple class wrappers for the various external commands needed by git-buildpackage and friends

Class | CommandExecFailed | Exception raised by the Command class
Function | proxy_stdf | No summary
Class | Command | Wraps a shell command, so we don't have to store any kind of command line options in one of the git-buildpackage commands
Class | RunAtCommand | Run a command in a specific directory
Class | UnpackTarArchive | Wrap tar to unpack a compressed tar archive
Class | PackTarArchive | Wrap tar to pack a compressed tar archive
Class | CatenateTarArchive | Wrap tar to catenate a tar file with the next
Class | RemoveTree | Wrap rm to remove a whole directory tree
Class | DpkgSourceExtract | Wrap dpkg-source to extract a Debian source package into a certain directory
Class | UnpackZipArchive | Wrap zip to Unpack a zip file
Class | CatenateZipArchive | Wrap zipmerge tool to catenate a zip file with the next
Class | GitCommand | Mother/Father of all git commands

@contextmanager
def proxy_stdf():

Circulate stdout/stderr via a proper file object. Designed to work around a problem where Python nose replaces sys.stdout/stderr with a custom 'Tee' object that is not a file object (compatible) and thus causes a crash with Popen.