Twisted's automated release system.

This module is only for use within Twisted's release system. If you are anyone else, do not use it. The interface and behaviour will change without notice.

Only Linux is supported by this code. It should not be used by any tools which must run on multiple platforms (eg the setup.py script).

Function runCommand Execute a vector of arguments.
Interface IVCSCommand An interface for VCS commands.
Class GitCommand Subset of Git commands to release Twisted from a Git repository.
Function getRepositoryCommand Detect the VCS used in the specified directory and return a GitCommand if the directory is a Git repository. If the directory is not git, it raises a NotWorkingDirectory exception.
Class Project A representation of a project that has a version.
Function findTwistedProjects Find all Twisted-style projects beneath a base directory.
Function replaceInFile I replace the text `oldstr' with `newstr' in `filename' using science.
Class NoDocumentsFound Raised when no input documents are found.
Class APIBuilder Generate API documentation from source files using pydoctor. This requires pydoctor to be installed and usable.
Class SphinxBuilder Generate HTML documentation using Sphinx.
Function filePathDelta Return a list of strings that represent destination as a path relative to origin.
Class NotWorkingDirectory Raised when a directory does not appear to be a repository directory of a supported VCS.
Class BuildAPIDocsScript A thing for building API documentation. See main.
Class CheckNewsfragmentScript A thing for checking whether a checkout has a newsfragment.
def runCommand(args, **kwargs):

Execute a vector of arguments.

This is a wrapper around subprocess.check_output, so it takes the same arguments as subprocess.Popen with one difference: all arguments after the vector must be keyword arguments.

Parametersargsarguments passed to subprocess.check_output
kwargskeyword arguments passed to subprocess.check_output
Returnscommand output (type: bytes)
def getRepositoryCommand(directory):

Detect the VCS used in the specified directory and return a GitCommand if the directory is a Git repository. If the directory is not git, it raises a NotWorkingDirectory exception.

ParametersdirectoryThe directory to detect the VCS used from. (type: FilePath)
Returns (type: GitCommand)
RaisesNotWorkingDirectoryif no supported VCS can be found from the specified directory.
def findTwistedProjects(baseDirectory):

Find all Twisted-style projects beneath a base directory.

ParametersbaseDirectoryA twisted.python.filepath.FilePath to look inside.
ReturnsA list of Project.
def replaceInFile(filename, oldToNew):

I replace the text `oldstr' with `newstr' in `filename' using science.

def filePathDelta(origin, destination):

Return a list of strings that represent destination as a path relative to origin.

It is assumed that both paths represent directories, not files. That is to say, the delta of twisted.python.filepath.FilePath /foo/bar to twisted.python.filepath.FilePath /foo/baz will be ../baz, not baz.

ParametersoriginThe origin of the relative path. (type: twisted.python.filepath.FilePath)
destinationThe destination of the relative path. (type: twisted.python.filepath.FilePath)
API Documentation for twisted, generated by pydoctor at 2020-03-25 17:34:30.