Skip to content

Commit

Permalink
Update package.xml to reflect new source layout
Browse files Browse the repository at this point in the history
  • Loading branch information
saltybeagle committed Jul 13, 2011
1 parent 00fcfcf commit 91cf769
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 94 deletions.
60 changes: 12 additions & 48 deletions package.xml
Expand Up @@ -37,64 +37,28 @@ class for the package.</description>
<email>hans@velum.net</email>
<active>no</active>
</developer>
<date>2010-05-23</date>
<time>08:39:48</time>
<date>2011-07-13</date>
<time>10:49:07</time>
<version>
<release>0.2.0</release>
<release>0.3.0</release>
<api>0.1.0</api>
</version>
<stability>
<release>alpha</release>
<api>alpha</api>
</stability>
<license uri="http://www.opensource.org/licenses/bsd-license.php">New BSD License</license>
<notes>- Covert namespace to PEAR2
- Removed getCause() as it just uses the built in getPrevious() that was added in PHP 5.3
- Removed getUniqueId as it's used anywhere
- Removed toHtml, toText and __toString (which only handled calling the former two).
People should implement their owny decorator calls.
- Removed the built in outputs of the observer functions. Those where the class constants
OBSERVER_PRINT, OBSERVER_TRIGGER, OBSERVER_DIE
This can be achieved by writing a custom callback function, using the appropriate printf(),
trigger_error and die() to achieve the same result.
- Removed getErroClass and getErrorMethod as it can be easily gotten from getTrace/getTraceSafe first array element
- Add the proper LICENSE file and move Exception.php to the NEW BSD license as the package.xml already defines
- Removed __toString, toText and toHtml. For those wanting to get pretty outputs they can use this approach:

$causes = array();
$this-&gt;getCauseMessage($causes);
foreach ($causes as $i =&gt; $cause) {
var_dump($cause);
}

And combine that with getTraceSafe() or getTraceAsString() if needed.

Put all that in a function and use set_exception_handler('exceptionHandler'); or similar to process
all Exceptions.

Example code or see the removed code at http://svn.php.net/viewvc/pear2/Exception/trunk/src/Exception.php?r1=295348&amp;r2=295352 :

function exceptionHandler($e)
{
if ($e instanceof \PEAR2\Exception) {
$causes = array();
$e-&gt;getCauseMessage($causes);
$causeMsg = '';
foreach ($causes as $i =&gt; $cause) {
$causeMsg .= str_repeat(' ', $i) . $cause['class'] . ': '
. $cause['message'] . &quot;\n&quot;;
}
echo $causeMsg;
} else {
echo $e-&gt;getMessage(), &quot;\n&quot;;
}
}

set_exception_handler('exceptionHandler');</notes>
<notes>- Removed addObserver() / removeObserver() as people can achieve that
with their own observer function / classes via set_exception_handler
- Removed getTraceSafe() as it was falling back on debug_backtrace()
when getTrace() was empty, which only happens when an Exception is
thrown outside of a class/function scope.</notes>
<contents>
<dir name="/">
<dir name="src" baseinstalldir="PEAR2">
<file role="php" name="Exception.php"/>
<dir name="src" baseinstalldir="/">
<dir name="PEAR2">
<file role="php" name="Exception.php"/>
</dir>
</dir>
</dir>
</contents>
Expand Down
54 changes: 8 additions & 46 deletions package_compatible.xml
Expand Up @@ -37,60 +37,22 @@ class for the package.</description>
<email>hans@velum.net</email>
<active>no</active>
</developer>
<date>2010-05-23</date>
<time>08:39:48</time>
<date>2011-07-13</date>
<time>10:49:07</time>
<version>
<release>0.2.0</release>
<release>0.3.0</release>
<api>0.1.0</api>
</version>
<stability>
<release>alpha</release>
<api>alpha</api>
</stability>
<license uri="http://www.opensource.org/licenses/bsd-license.php">New BSD License</license>
<notes>- Covert namespace to PEAR2
- Removed getCause() as it just uses the built in getPrevious() that was added in PHP 5.3
- Removed getUniqueId as it's used anywhere
- Removed toHtml, toText and __toString (which only handled calling the former two).
People should implement their owny decorator calls.
- Removed the built in outputs of the observer functions. Those where the class constants
OBSERVER_PRINT, OBSERVER_TRIGGER, OBSERVER_DIE
This can be achieved by writing a custom callback function, using the appropriate printf(),
trigger_error and die() to achieve the same result.
- Removed getErroClass and getErrorMethod as it can be easily gotten from getTrace/getTraceSafe first array element
- Add the proper LICENSE file and move Exception.php to the NEW BSD license as the package.xml already defines
- Removed __toString, toText and toHtml. For those wanting to get pretty outputs they can use this approach:

$causes = array();
$this-&gt;getCauseMessage($causes);
foreach ($causes as $i =&gt; $cause) {
var_dump($cause);
}

And combine that with getTraceSafe() or getTraceAsString() if needed.

Put all that in a function and use set_exception_handler('exceptionHandler'); or similar to process
all Exceptions.

Example code or see the removed code at http://svn.php.net/viewvc/pear2/Exception/trunk/src/Exception.php?r1=295348&amp;r2=295352 :

function exceptionHandler($e)
{
if ($e instanceof \PEAR2\Exception) {
$causes = array();
$e-&gt;getCauseMessage($causes);
$causeMsg = '';
foreach ($causes as $i =&gt; $cause) {
$causeMsg .= str_repeat(' ', $i) . $cause['class'] . ': '
. $cause['message'] . &quot;\n&quot;;
}
echo $causeMsg;
} else {
echo $e-&gt;getMessage(), &quot;\n&quot;;
}
}

set_exception_handler('exceptionHandler');</notes>
<notes>- Removed addObserver() / removeObserver() as people can achieve that
with their own observer function / classes via set_exception_handler
- Removed getTraceSafe() as it was falling back on debug_backtrace()
when getTrace() was empty, which only happens when an Exception is
thrown outside of a class/function scope.</notes>
<contents>
<dir name="/">
<file role="php" name="php/PEAR2/Exception.php"/>
Expand Down

0 comments on commit 91cf769

Please sign in to comment.