# `gbp.deb.policy.DebianPkgPolicy(PkgPolicy)` class documentation

Part of `gbp.deb.policy` (View In Hierarchy)

Packaging policy for Debian Source Packages

    >>> DebianPkgPolicy.is_valid_upstreamversion('1:9.8.4.dfsg.P1-6')
    True
    >>> DebianPkgPolicy.is_valid_upstreamversion('-1')
    False

Class Variable | packagename_re | Undocumented
Class Variable | packagename_msg | Undocumented
Class Variable | upstreamversion_re | Undocumented
Class Variable | upstreamversion_msg | Undocumented
Class Variable | debianversion_chars | Undocumented
Static Method | build_tarball_name | Given a source package's name, version and compression return the name of the corresponding upstream tarball.
Static Method | build_signature_name | Given a source package's name, version and compression return the name of the corresponding upstream tarball signature file.

Inherited from PkgPolicy:

Class Variable | version_mangle_re | Undocumented
Class Method | is_valid_packagename | Is this a valid package name?
Class Method | is_valid_upstreamversion | Is this a valid upstream version number?
Static Method | guess_upstream_src_version | Guess the package name and version from the filename of an upstream archive.
Static Method | has_origs | Check orig tarball and additional tarballs exists in dir
Class Method | has_orig | Undocumented
Static Method | symlink_origs | symlink orig tarball from orig_dir to output_dir @return: [] if all links were created, list of failed links otherwise
Class Method | symlink_orig | Undocumented
Class Method | version_subst | Generate a string from a given format and a version. The extracted version can be passed through the sanitizer function argument before being formatted into a string.

packagename_re =
Undocumented
packagename_msg =
Undocumented
(type: `str`)
upstreamversion_re =
Undocumented
upstreamversion_msg =
Undocumented
(type: `str`)
debianversion_chars =
Undocumented
(type: `str`)
@staticmethod
def build_tarball_name(name, version, compression, dir=None, component=None):

Given a source package's name, version and compression return the name of the corresponding upstream tarball.

    >>> DebianPkgPolicy.build_tarball_name('foo', '1.0', 'bzip2')
    'foo_1.0.orig.tar.bz2'
    >>> DebianPkgPolicy.build_tarball_name('bar', '0.0~git1234', 'xz')
    'bar_0.0~git1234.orig.tar.xz'
    >>> DebianPkgPolicy.build_tarball_name('bar', '0.0~git1234', 'xz', component="foo")
    'bar_0.0~git1234.orig-foo.tar.xz'

Parameters | name | the source package's name (type: `str`)
| version | the upstream version (type: `str`)
| compression | the desired compression (type: `str`)
| dir | a directory to prepend (type: `str`)
Returns | the tarballs name corresponding to the input parameters (type: `str`)

@staticmethod
def build_signature_name(*args, **kwargs):

Given a source package's name, version and compression return the name of the corresponding upstream tarball signature file.