Provided by: pinto_0.14000-2_all bug

NAME

       App::Pinto::Command::add - add local archives to the repository

VERSION

       version 0.14

SYNOPSIS

         pinto --root=REPOSITORY_ROOT add [OPTIONS] ARCHIVE_FILE ...

DESCRIPTION

       This command adds local distribution archives to the repository and registers their packages on a stack.
       Then it recursively pulls all the distributions that are necessary to satisfy their prerequisites.

       When locating prerequisite packages, Pinto first looks at the packages that already exist in the local
       repository, then Pinto looks at the packages that are available on the upstream repositories.

COMMAND ARGUMENTS

       Arguments to this command are paths to the distribution archives that you wish to add.  Each of these
       files must exist and must be readable.

       You can also pipe arguments to this command over STDIN.  In that case, blank lines and lines that look
       like comments (i.e. starting with "#" or ';') will be ignored.

COMMAND OPTIONS

       --author NAME
           Set  the  identity  of  the distribution author.  The "NAME" is automatically forced to uppercase and
           must match "/^[A-Z]{2}[-A-Z0-9]*$/" (that means two ASCII letters followed  by  zero  or  more  ASCII
           letters,  digits,  or  hyphens).  Defaults  to  the  "user"  attribute  specified  in  your  ~/.pause
           configuration file if such file exists.  Otherwise, defaults to your current login username.

       --cascade
           !! THIS OPTION IS EXPERIMENTAL !!

           When searching for a prerequisite package, always take the latest satisfactory version of the package
           found amongst all the upstream repositories, rather than just taking the first  satisfactory  version
           that is found.  Remember that Pinto only searches the upstream repositories when the local repository
           does not already contain a satisfactory version of the package.

       --diff-style=STYLE
           Controls  the  style  of  the  diff  reports.  STYLE must be either "concise" or "detailed".  Concise
           reports show only one record for each distribution added  or  deleted.   Detailed  reports  show  one
           record for every package added or deleted.

           The   default   style  is  "concise".   However,  the  default  style  can  changed  by  setting  the
           "PINTO_DIFF_STYLE" environment variable to your preferred STYLE.  This variable affects  the  default
           style for diff reports generated by all other commands too.

       --dry-run
           Go  through  all  the  motions,  but  do  not  actually commit any changes to the repository.  At the
           conclusion, a diff showing the changes that would have been made will be displayed.  Use this  option
           to see how upgrades would potentially impact the stack.

       --message=TEXT
       -m TEXT
           Use  TEXT  as  the  revision  history  log  message.  If you do not use the "--message" option or the
           "--use-default-message" option, then you will be prompted to enter the message via your text  editor.
           Use the "PINTO_EDITOR" or "EDITOR" or "VISUAL" environment variables to control which editor is used.
           A  log message is not required whenever the "--dry-run" option is set, or if the action did not yield
           any changes to the repository.

       --no-fail
           !! THIS OPTION IS EXPERIMENTAL !!

           Normally, failure to add an archive (or its prerequisites) causes the command  to  immediately  abort
           and  rollback the changes to the repository.  But if "--no-fail" is set, then only the changes caused
           by the failed archive (and its prerequisites) will be rolled  back  and  the  command  will  continue
           processing the remaining archives.

           This  option  is  useful if you want to throw a list of archives into a repository and see which ones
           are problematic.  Once you've fixed the broken ones, you can throw the whole list at  the  repository
           again.

       --no-index=PACKAGE
       -x PACKAGE
       --no-index=/PATTERN
       -x /PATTERN
           !! THIS OPTION IS EXPERIMENTAL !!

           Exclude the PACKAGE from the index.  If the argument starts with a slash, then it is interpreted as a
           regular expression, and all packages matching the pattern will be excluded.  Exclusions only apply to
           the  added distributions (i.e. the arguments to this command) so they do not affect any prerequisited
           distributions that may also get pulled.  You can repeat this option to specify multiple  PACKAGES  or
           PATTERNS.

           This  option  is  useful  when  Pinto's indexing is to aggressive and finds packages that it probably
           should not.  Remember that Pinto does not promise to index exactly as  PAUSE  would.   When  using  a
           PATTERN,  take  care  to  use a conservative one so you don't exclude the wrong packages.  Pinto will
           throw an exception if you exclude every package in the distribution.

       --pin
           Pins all the packages in the added distributions to the stack, so they cannot be  changed  until  you
           unpin  them.   The  pin does not apply to any prerequisites that are pulled in for this distribution.
           However, you may pin them separately with the pin command, if you so desire.

       --recurse
       --no-recurse
           Recursively pull any distributions required to satisfy prerequisites for the  targets.   The  default
           value for this option can be configured in the pinto.ini configuration file for the repository (it is
           usually set to 1).  To disable recursion, use "--no-recurse".

       --skip-missing-prerequisite=PACKAGE
       -k PACKAGE
           !! THIS OPTION IS EXPERIMENTAL !!

           Skip  any  prerequisite  with  name  PACKAGE  if  a satisfactory version cannot be found.  However, a
           warning will be given whenever this occurrs.  This option only has effect when  recursively  fetching
           prerequisites for the targets (See also the "--recurse" option). This option can be repeated.

       --skip-all-missing-prerequisites
       -K  !! THIS OPTION IS EXPERIMENTAL !!

           Skips  all  missing prerequisites if a satisfactory version cannot be found.  However, a warning will
           be given whenever this occurrs.  This option will silently override the "--skip-missing-prerequisite"
           option and only has effect when recursively fetching prerequisites for  the  targets  (See  also  the
           "--recurse" option).

       --stack=NAME
       -s NAME
           Puts all the packages onto the stack with the given NAME.  Defaults to the name of whichever stack is
           currently marked as the default stack.  Use the stacks command to see the stacks in the repository.

       --use-default-message
       -M  Use  the  default value for the revision history log message.  Pinto will generate a semi-informative
           log message just based on the command and its  arguments.   If  you  set  an  explicit  message  with
           "--message", the "--use-default-message" option will be silently ignored.

       --with-development-prerequisites
       --wd
           Also   pull  development  prerequisites  so  you'll  have  everything  you  need  to  work  on  those
           distributions, in the event that you  need  to  patch  them  in  the  future.   Be  aware  that  most
           distributions do not actually declare their development prerequisites.

AUTHOR

       Jeffrey Ryan Thalhammer <jeff@stratopan.com>

COPYRIGHT AND LICENSE

       This software is copyright (c) 2015 by Jeffrey Ryan Thalhammer.

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

perl v5.36.0                                       2022-10-16                      App::Pinto::Command::add(3pm)