5.1.1-Release: QA, XSL callbacks and doclets

at 2007-01-07 in ReleasesAnnouncements by friebe (0 comments)

Since the previous release we have spent lots of time on quality assurance - mostly, that means refactoring code to make use of new language features (no more need for try/catch/rethrow, dereferencing). This includes updating apidoc examples.

There are also some new features, most notably the XSL processor callback API (as described in RFC #0104) and the migration of the text.doclet API to be able to parse the new language syntax.

XP5 5.1.1
Requires PHP 5 (5.2.0 - ...) - Download

Continue reading for details.



ChangeLog (5.1.1)
  • Make arbitrary request headers available in CGI sapi (kiesel)
  • Implement more stream wrapper functions in XpXarLoader, providing a more complete stream wrapper support (file_exists now works) (kiesel)
  • Fix addRecipient() method in peer.mail.Message (kiesel)
  • Make xml.DomXSLProcessor::setBase() work again (kiesel)
  • Show class' apidoc comment in xpcli --help|-? (friebe)
  • Added lang.XPClass::getComment() (friebe)
  • Added lang.reflect.Field::getModifiers() (friebe)
  • Added lang.reflect.Modifiers utility class (friebe)
  • Made CLI sapi print uncaught exceptions to STDERR (friebe)
  • Made Doclet API parse XP5 syntax (friebe)
  • Exclude replication tables from SybaseDBAdapter::getTables() (friebe)
  • Implemented RFC #0104: Add XSLCallback class and provide support for calling PHP functions from within XSL (kiesel)



Dereferencing refactoring
Wherever possible, sourcecode and apidoc examples have been changed to make use of dereferencing:

<?php 
// Source like this:
$l= &Logger::getInstance();
$cat= &$l->getCategory();

// ...was changed to:
$cat= Logger::getInstance()->getCategory();
?>


Rethrow removals
Methods containing try/catch/rethrow were stripped of this superfluous statements:

<?php 
// Source like this:
function &forName($name, &$classloader) {
try
(); {
$class= &$classloader->loadClass($name);
} if (catch('Exception', $e)) {
throw
($e);
}
return
$class;
}

// ...was changed to:
public static function forName($name, $classloader) {
return
$classloader->loadClass($name);
}
?>



Subscribe

You can subscribe to the XP framework's news by using RSS syndication.


Categories

News
General
PHP5
Announcements
RFCs
Further reading
Examples
Editorial
EASC
Experiments
Unittests
Databases
5.8-SERIES

Related

Find related articles by a search for «5.1.1-Release:».