5.6.5-RELEASE: Type casting

at 2008-02-04 in ReleasesAnnouncements by friebe (0 comments)

This release implements functionality suggested long ago in RFC #0010 - type casting. To be able to test our server implementations, we have furthermore added the lang.Runtime class and "before" and "after" methods for testcases - see entry #230. Also, several issues in the FTP api and various utf-8 related bugs were fixed.

XP 5.6.5
Requires PHP 5 (5.2.0 - ...) - Download.

ChangeLog



Heads up!
  • Removed deprecated lang.reflect.Argument::isPassedByReference() method (friebe)
  • Changed cast() core functionality to no longer change the object given, throw a lang.ClassCastException in case of errors, throw a lang.ClassNotFoundException in case the given type does not exist, no longer support primitives (will result in a lang.IllegalArgumentException) and to return xp::null() if NULL is given (friebe)



RFCs
  • Implemented RFC #0152: Arguments vs. Parameters (friebe)
  • Implemented RFC #0153: HTTP protocol versions (friebe)
  • Implemented RFC #0151: Runtime class (friebe)
  • Implemented RFC #0150: Before and after methods for testcases (friebe)
  • Implemented RFC #0010: Type casts (friebe)



Bugfixes
  • Fix double utf8 decode in SOAPHTTPTransport::retrieve() by ignoring the Content-Type header (XMLParser already determines the encoding and uses ISO-8859-1 as default output encoding) (hinckel, kiesel)
  • Added "static" keyword to System::putEnv() und System::getEnv() (hinckel)
  • Ensured arguments passed to XSL callbacks are utf8_decode()d and return values are utf8_encode()d (friebe)
  • Fixed peer.ftp.FtpFile not reloading file details (size, date, permissions, ...) after a successfull upload (friebe)
  • Fixed peer.ftp.FtpDir::findEntry() (gellweiler, kiesel)
  • Fixed FTP server API to parse parameters to NLST correctly and report directories as single entities if "-d" is given in NLST and LIST (gellweiler, friebe)
  • Fixed lang.reflect.Proxy to add type hints to generated methods (friebe)



Features
  • Added "-cp" command line option to xpcli which will add XAR files and directories given to it to the classpath (friebe)
  • Added lang.ClassLoader::registerPath() method (friebe)
  • Added util.collections.Vector::addAll() method (friebe)
  • Added optional parameter "hinted" to lang.reflect.Argument::getType() with which one can retrieve the type hint's type name. (friebe)
  • Added lang.reflect.Argument::getDefaultValue() method. In contrast to getDefault() it returns the value as-is (not as a string) (friebe)



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
Unicode
Language
5.9-SERIES

Related

Find related articles by a search for «5.6.5-RELEASE:».