SYNOPSIS
use Arch::Log;
my $log = Arch::Log->new($rfc2822_message_string);
printf "Patch log date: %s\n", $log->header('standard_date');
print $log->dump;
my $first_new_file = $log->get_headers->{new_files}->[0];
DESCRIPTION
This class represents the patch-log concept in Arch and provides some useful methods.METHODS
The following class methods are available:get_message, get_headers, header, get_changes, split_version, get_version, get_revision, get_revision_kind, get_revision_desc, dump.
- get_message
- Return the original message with that the object was constructed.
- get_headers
- Return the hashref of all headers including body, see also "header" method.
- header name
- header name [new_value]
- Get or set the named header. The special name 'body' represents the message body (the text following the headers).
- body [new_value]
- existing_header_name [new_value]
- This is just a shortcut for "header"('method'). However unlike "header"('method'), method fails instead of returning undef if the log does not have the given header name.
- get_changes
-
Return a list of changes in the corresponding changeset.
ATTENTION! Patch logs do not distinguish metadata (ie permission) changes from ordinary content changes. Permission changes will be represented with a change type of 'M'. This is different from Arch::Changeset::get_changes and Arch::Tree::get_changes.
- split_version
- Return a list of 2 strings: full version and patch-level.
- get_version
- Return the full version name, not unlike split_version.
- get_revision
- Return the full revision name. This is currently a concatination of headers Archive and Revision with '/' separator.
- get_revision_kind
- Return one of the strings 'tag', 'import' or 'cset' depending on the revision kind this log represents.
- get_revision_desc
- Return revision description hashref with the keys: name, version, summary, creator, email, date, kind.
- dump
- Returns the object dump using Data::Dumper.