
Debian::Copyright - manage Debian copyright files

This document describes Debian::Copyright version 0.2 .

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

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.
The term "Stanza" derives from the 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.

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.
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.
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.

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.

Parse "copyright" in debian and accessors.
file can be either a file name, an opened file handle or a string scalar reference.
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.


This version is not backwards compatible with version 0.1.

Thanks to Charles Plessy for various comments regarding the documentation.

Copyright (C) 2011-2012 Nicholas Bamber nicholas@periapt.co.uk
This module was adapted from Debian::Control. Copyright (C) 2009 Damyan Ivanov dmn@debian.org [Portions]
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.