logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Debian::Copyright - manage Debian copyright files

Acknowledgements

       Thanks to Charles Plessy for various comments regarding the documentation.

Constructor

new
       Constructs a new Debian::Copyright instance.

       The "header" field is initialised with an empty string.  The "files_block" and "license_block" fields are
       initialised with an empty instance of Tie::IxHash.

Description

       Debian::Copyright can be used for the representation, manipulation and merging of Debian copyright files
       in an object-oriented way. It provides easy reading and writing of the debian/copyright file found in
       Debian source packages. Debian has recently started standardising its copyright files around the machine-
       readable "Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/" in DEP-5 format.

   noteonterminology
       The term "Stanza" derives from the dh-make-perl <http://packages.debian.org/sid/dh-make-perl> tool. The
       official term would now be "Paragraph". For the purposes of discussing the DEP-5 format the terms are
       used interchangeably in this documentation.

Fields

header
       An instance of Debian::Copyright::Stanza::Header class. Contains the the first stanza of the copyright
       file. If multiple files were parsed only the first will be retained.

   files
       A hash reference (actually Tie::IxHash instance) with keys being the values of the "Files" clause and
       values instances of Debian::Copyright::Stanza::Files class.

   licenses
       A hash reference (actually Tie::IxHash instance) with keys being the values of the "License" clause and
       values instances of Debian::Copyright::Stanza::License class.

Incompatibilities

       This version is not backwards compatible with version 0.1.

Limitations

       This module is written with one particular version of DEP-5 <http://www.debian.org/doc/packaging-
       manuals/copyright-format/1.0/> in mind. Furthermore version 0.1 of this software was for a draft version
       the standard. The changes in going from draft to standard were such that it was not worth attempting to
       maintain backwards compatibility.
       Test coverage is not yet complete.

Methods

readfile
       Parse "copyright" in debian and accessors.

       file can be either a file name, an opened file handle or a string scalar reference.

   writefile
       Writes a debian/copyright-like file in file with the contents defined in the accessor fields.

       file can be either a file name, an opened file handle or a string scalar reference.

Name

       Debian::Copyright - manage Debian copyright files

Synopsis

           my $c = Debian::Copyright->new();       # construct a new
           $c->read($file1);                       # parse debian copyright file
           $c->read($file2);                       # parse a second
           $c->write($ofile);                      # write to file

Version

       This document describes Debian::Copyright version 0.2 .

See Also