|
Posted
about 12 years
ago
We're getting there: Today, we release the third release candidate for the upcoming 5.9.9-RELEASE! Since the second release candiate, the following changes have been made:The peer.http.FileData class has been renamed to peer.http.FileUploadIssue #335
... [More]
("Inconsistent state in HttpRequest") has been fixedThe REST client has been changed to always append resources to base path, whether they're supplied in an absolute or relative form. See issue #334 for a discussionThe REST Response class has been fixed to allow fully qualified URLs in the Location: headerInstallation goes as usual: $ cd ~/xp $ wget http://xp-framework.net/setup/5.9.9RC3 -O - | php -- -d ~/bin/Enjoy [Less]
|
|
Posted
about 12 years
ago
We're getting there: Today, we release the third release candidate for the upcoming 5.9.9-RELEASE! Since the second release candiate, the following changes have been made:The peer.http.FileData class has been renamed to peer.http.FileUploadIssue #335
... [More]
("Inconsistent state in HttpRequest") has been fixedThe REST client has been changed to always append resources to base path, whether they're supplied in an absolute or relative form. See issue #334 for a discussionThe REST Response class has been fixed to allow fully qualified URLs in the Location: headerInstallation goes as usual: $ cd ~/xp $ wget http://xp-framework.net/setup/5.9.9RC3 -O - | php -- -d ~/bin/Enjoy [Less]
|
|
Posted
about 12 years
ago
With the implementation of RFC #269, the way data flows from the HTTP request to the handler and back to the client has been changed. Previously, this was all more or less handled by Rest(De)Serializer::convert(). These methods have been removed and
... [More]
replaced by a new marshalling API. Here's the definition:Serialization is the act of transforming formats such as JSON and XML to data structures, and vice versa.Marshalling is the act of converting primitives, arrays and maps to complex objects, and vice versa.If you were relying on these methods, see an example of how to adapt your code. [Less]
|
|
Posted
about 12 years
ago
Atfer releasing the first release candidate last week, the XP group is proud to announce the availability of RC2. Since RC1, we've fixed a bug in the REST client, removed PHP warnings from the web runner, polished the peer.mail API and added
... [More]
peer.http.HttpConnection::setTrace() for debugging HTTP request and response headers. $ cd ~/xp $ wget http://xp-framework.net/setup/5.9.9RC2 -O - | php -- -d ~/bin/Happy weekend! [Less]
|
|
Posted
about 12 years
ago
Atfer releasing the first release candidate last week, the XP group is proud to announce the availability of RC2. Since RC1, we've fixed a bug in the REST client, removed PHP warnings from the web runner, polished the peer.mail API and added
... [More]
peer.http.HttpConnection::setTrace() for debugging HTTP request and response headers. $ cd ~/xp $ wget http://xp-framework.net/setup/5.9.9RC2 -O - | php -- -d ~/bin/Happy weekend! [Less]
|
|
Posted
about 12 years
ago
The XP Group is proud to announce the first release candidate for the upcoming XP 5.9.9. This release is the first step into the direction of converting the entire codebase to PHP 5.3 namespaces, and has started using them in the proprietary "xp"
... [More]
package as well as in the unittests ("net.xp_framework.unittest" and subpackages). If you have used the classes from these package inside your code, it will break. As a prerequisite for this, the annotation parser has been rewritten and now supports imports via the use statement.Furthermore, the unittest API has been extended with Test actions with the implementation of RFC #272; the overlapping responsibilities inside the REST API's serialization and marshalling have been removed as described in RFC #269, and a new peer.http.FileData makes creating HTTP file uploads easier. Finally, a bunch of bugfixes to the peer.mail package make it work with Exchange 2010; and a variety of email formats.Since this is quite a big number of changes, we're pulling a release candidate prior to the real release to get the code some more real-life exposure. $ cd ~/xp $ wget http://xp-framework.net/setup/5.9.9RC1 -O - | php -- -d ~/bin/Enjoy [Less]
|
|
Posted
about 12 years
ago
The XP Group is proud to announce the first release candidate for the upcoming XP 5.9.9. This release is the first step into the direction of converting the entire codebase to PHP 5.3 namespaces, and has started using them in the proprietary "xp"
... [More]
package as well as in the unittests ("net.xp_framework.unittest" and subpackages). If you have used the classes from these package inside your code, it will break. As a prerequisite for this, the annotation parser has been rewritten and now supports imports via the use statement.Furthermore, the unittest API has been extended with Test actions with the implementation of RFC #272; the overlapping responsibilities inside the REST API's serialization and marshalling have been removed as described in RFC #269, and a new peer.http.FileData makes creating HTTP file uploads easier. Finally, a bunch of bugfixes to the peer.mail package make it work with Exchange 2010; and a variety of email formats.Since this is quite a big number of changes, we're pulling a release candidate prior to the real release to get the code some more real-life exposure. $ cd ~/xp $ wget http://xp-framework.net/setup/5.9.9RC1 -O - | php -- -d ~/bin/Enjoy [Less]
|
|
Posted
about 12 years
ago
Scope of ChangeThis will change the marshaller to be responsible for converting objects to entities representable by primitives, arrays and maps, and the serializer to then take care of writing out the wire format, e.g. JSON or XML (unmarshallers and
... [More]
deserializers the other way around). RationaleCurrently, the serializer has two responsibilities: converting the data and writing the wire format. This creates a mess when needing to partially overwrite conversion functionality.Read the full RFC here [Less]
|
|
Posted
about 12 years
ago
With the implementation of RFC #0272, writing shared code for test setup and teardown has become even easier. Imagine a number of tests that should run only under certain circumstances. You might also need to create a fixture in a more complicated
... [More]
way. You could subclass your test classes, but don't we all favor composition over inheritance?To use this feature, simple annotate your test method with the new @action annotation: use unittest\TestCase; use unittest\actions\IsPlatform; class PathTest extends TestCase { #[@test, @action(new IsPlatform('Windows'))] public function leading_backslash_yields_current_drive() { // ... } }This way, the test will only be run on the Windows platform. No complicated code inside setUp() anymore! [Less]
|
|
Posted
about 12 years
ago
With pull request #26 merged, the XP Compiler now generates "namespaced" code using - that is, it emits PHP namespaces and thus creates code that will require a) XP 5.9.0+ and b) PHP 5.3.0+. This will shortly be released as the XP Compiler, version
... [More]
2.0.0.The following code generates a class de\thekid\demo\Test: package de.thekid.demo; public class Test { public static void main(string[] $args) { util.cmd.Console::writeLine('Test'); } }(For details, see this comment).A backwards compatible emitter has been added, so if you need PHP 5.2 compatible code, you can add -E php5.2 to the compiler's command line. [Less]
|