Scroll to navigation

Arch::Log(3pm) User Contributed Perl Documentation Arch::Log(3pm)


Arch::Log - class representing Arch patch-log


    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];


This class represents the patch-log concept in Arch and provides some useful 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.

Return the original message with that the object was constructed.
Return the hashref of all headers including body, see also "header" method.
Get or set the named header. The special name 'body' represents the message body (the text following the headers).
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.
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.

Return a list of 2 strings: full version and patch-level.
Return the full version name, not unlike split_version.
Return the full revision name. This is currently a concatination of headers Archive and Revision with '/' separator.
Return one of the strings 'tag', 'import' or 'cset' depending on the revision kind this log represents.
Return revision description hashref with the keys: name, version, summary, creator, email, date, kind.
Returns the object dump using Data::Dumper.


Awaiting for your reports.


Mikhael Goikhman (


For more information, see tla, Arch::Session, Arch::Library, Arch::Changes.

2022-06-08 perl v5.34.0