Provided by: libsvn-look-perl_0.43-1_all bug

NAME

       SVN::Look - Caching wrapper around the svnlook command

VERSION

       version 0.43

SYNOPSIS

         use SVN::Look;
         my $revlook = SVN::Look->new('/repo/path', -r => 123);
         my $author  = $revlook->author();
         my $msg     = $revlook->log_msg();
         my @added_files   = $revlook->added();
         my @updated_files = $revlook->updated();
         my @deleted_files = $revlook->deleted();
         my @changed_files = $revlook->changed();
         my $file_contents = $revlook->cat('/path/to/file/in/repository');

         my $trxlook = SVN::Look->new('/repo/path', -t => 123);

DESCRIPTION

       The svnlook command is the workhorse of Subversion hook scripts, being used to gather all
       sorts of information about a repository, its revisions, and its transactions. This module
       provides a simple object oriented interface to a specific svnlook invocation, to make it
       easier to hook writers to get and use the information they need. Moreover, all the
       information gathered by calling the svnlook command is cached in the object, avoiding
       repetitious calls.

METHODS

   new REPO [, WHAT, NUMBER]
       The SVN::Look constructor needs one or three arguments:

       REPO is the path to the repository.
       WHAT must be either '-r' or '-t', specifying if the third argument is a revision number or
       a transaction number, respectively. If neither -r or -t is specified, the HEAD revision is
       used.
       NUMBER is either a revision or transaction NUMBER, as specified by WHAT.

   repo
       Returns the repository path that was passed to the constructor.

   txn
       Returns the transaction number that was passed to the constructor. If none was passed,
       returns undef.

   rev
       Returns the revision number that was passed to the constructor. If none was passed,
       returns undef.

   author
       Returns the author of the revision/transaction.

   cat PATH
       Returns the contents of the file at PATH. In scalar context, return the whole contents in
       a single string. In list context returns a list of chomped lines.

   changed_hash
       Returns a reference to a hash containing information about all file changes occurred in
       the revision. The hash always has the following keys:

       added
           A list of files added in the revision.

       deleted
           A list of files deleted in the revision.

       updated
           A list of files updated in the revision.

       prop_modified
           A list of files that had properties modified in the revision.

       copied
           A hash containing information about each file or diretory copied in the revision. The
           hash keys are the names of elements copied to. The value associated with a key is a
           two-element array containing the name of the element copied from and the specific
           revision from which it was copied.

   added
       Returns the list of files added in the revision/transaction.

   updated
       Returns the list of files updated in the revision/transaction.

   deleted
       Returns the list of files deleted in the revision/transaction.

   prop_modified
       Returns the list of files that had properties modified in the revision/transaction.

   changed
       Returns the list of all files added, updated, deleted, and the ones that had properties
       modified in the revision/transaction.

   copied_to
       Returns the list of new names of files that were copied in the revision/transaction.

   copied_from
       Returns the list of original names of files that were copied in the revision/transaction.
       The order of this list is guaranteed to agree with the order generated by the method
       copied_to.

   date
       Returns the date of the revision/transaction.

   diff [OPTS, ...]
       Returns the GNU-style diffs of changed files and properties. There are three optional
       options that can be passed as strings:

       "--no-diff-deleted"
           Do not print differences for deleted files

       "--no-diff-added"
           Do not print differences for added files.

       "--diff-copy-from"
           Print differences against the copy source.

       In scalar context, return the whole diff in a single string. In list context returns a
       list of chomped lines.

   dirs_changed
       Returns the list of directories changed in the revision/transaction.

   filesize PATH
       Returns the size (in bytes) of the file located at PATH as it is represented in the
       repository.

   info
       Returns the author, datestamp, log message size, and log message of the
       revision/transaction.

   lock PATH
       If PATH has a lock, returns a hash containing information about the lock, with the
       following keys:

       UUID Token
           A string with the opaque lock token.

       Owner
           The name of the user that has the lock.

       Created
           The time at which the lock was created, in a format like this: '2010-02-16 17:23:08
           -0200 (Tue, 16 Feb 2010)'.

       Comment
           The lock comment.

       If PATH has no lock, returns undef.

   log_msg
       Returns the log message of the revision/transaction.

   propget PROPNAME PATH
       Returns the value of PROPNAME in PATH.

   proplist PATH
       Returns a reference to a hash containing the properties associated with PATH.

   tree [PATH_IN_REPOS, OPTS, ...]
       Returns the repository tree as a list of paths, starting at PATH_IN_REPOS (if supplied, at
       the root of the tree otherwise), optionally showing node revision ids.

       "--full-paths"
           show full paths instead of indenting them.

       "--show-ids"
           Returns the node revision ids for each path.

       "--non-recursive"
           Operate on single directory only.

   uuid
       Returns the repository's UUID.

   youngest
       Returns the repository's youngest revision number.

REPOSITORY

       <https://github.com/gnustavo/SVN-Look>

AUTHOR

       Gustavo L. de M. Chaves <gnustavo@cpan.org>

COPYRIGHT AND LICENSE

       This software is copyright (c) 2022 by CPqD.

       This is free software; you can redistribute it and/or modify it under the same terms as
       the Perl 5 programming language system itself.