[PEPr] Changes in proposal for SCM::SVN
| From: | PEPr | Date: | Sun, 25 Apr 2004 23:25:31 +0000 |
| Subject: | [PEPr] Changes in proposal for SCM::SVN | ||
| Groups: | php.pear.dev | ||
| Request: | Send a blank email to pear-dev+get-28344@lists.php.net to get a copy of this message | ||
Clay Loveless (http://pear.php.net/user/clay) has edited the proposal for SCM::SVN.
Change comment:
[b]SCM_SVN Changes[/b]
[list]
[*] Reworked use of PEAR_ErrorStack throughout the package.
[*] Split the concept of the $options array into three seperate
arrays:
[list]
[*][b][code]$options()[/code][/b] - Used to set runtime options for the
SCM_SVN class itself.
(Associative array)
[*][b][code]$switches()[/code][/b] - Used to pass switches and their values
to an individual Subversion subcommand.
(Associative array)
[*][b][code]$args()[/code][/b] - Used to pass arguments to the Subversion
subcommands. This non-associative array
will be joined by single spaces when passed
off to the run() method.
Use for anything you would normally specify
on the command-line *outside* of switches.
[/list]
[*] Implemented use_escapeshellcmd property, which defaults to true.
If set to false, the svn command passed to exec will NOT be
escaped. Recommended use: retain default setting of true unless
you really know what you're doing. (Thanks to Alan Knowles for
this suggestion.)
[*] Introduced the $shortcuts property, which contains all known
shortcuts for Subversion svn subcommands. This allows you
to pass the shortcuts to SCM_SVN::factory if you prefer.
[*] Merged SCM_SVN_Common into SCM_SVN to simplify things a bit.
(Thanks again to Alan Knowles.)
[*] Moved basic property assignment tasks into init() method
called by factory() and got rid of subclass constructors.
[*] Added parseOutput() method to SCM_SVN, which should be overridden
by each subclass. The parseOutput() methods will (when possible!)
parse output of successful run() calls into an associative array.
Default parseOutput result is a join() of the exec() output generated
by the run() method.
[*] Added checkCommandRequirements() method to SCM_SVN, which reads
properties from the command subclass and validates the given
$switches and $args to insure that all necessary $switches and $args
are set for proper command execution. (Thanks once again to Alan
Knowles for this recommendation.)
[*] Added SVN/Propdel.php and SVN/Propget.php subclasses.
[/list]
Please re-review the package:
http://pear.php.net/pepr/pepr-proposal-show.php?id=52
--
Sent by PEPr, the automatic proposal system at http://pear.php.net