Skip to content

Agavi - PHP5 application framework
Syndicate content
Updated: 1 hour 49 min ago

Agavi 1.0.3 released!

Fri, 04/16/2010 - 18:05

Agavi 1.0.3 has just been released and can be downloaded at www.agavi.org.

Only very few changes were done since RC1, so I’ll once more leave it to the RELEASE_NOTES to list the most important changes:

This maintenance release fixes a number of issues over Agavi 1.0.2 and features a few minor enhancements.

Several issues and inconsistencies have been fixed in AgaviNumberValidator and AgaviDecimalFormatter::parse(). Parsing behavior is now consistent with the NumberFormatter implementations of ICU and ext/intl. No integer overflow occurs when checking against min and max values, and the validator accepts non-strings as input. Exporting of the validated value is now possible, in which case the original argument is not mutated. Please note that the “number” validator shortcut definition specifies “int” as the default value for the “type” parameter. No value for “type” will automatically lead to integer or float values, depending on the size of the number in the input string. A cast to the specified type is now automatically performed if no “cast_to” parameter is given.

All file validators now perform case-insensitive checks against the list of allowed file extensions, which may now also be a parameter array instead of a space-separated list of values.

This release bumps the minimum required version of Phing to 2.4.0; this was necessary to fix some bugs with the build system that were next to impossible to fix for both 2.3 and 2.4 (which drastically changed some internals structures) at the same time.

An issue relating to the behavior of DOM in PHP 5.1.12 and PHP 5.2.3 has been addressed. Running Agavi 1.0.3 might be necessary under certain circumstances when using these versions of PHP.

A couple of minor fixes have been made to the routing; most notably, overwriting of routes in other blocks now always works as expected, even when using implied routes.

Some default code templates have been updated; most notably, caching configuration files now explicitly disable caching, as otherwise, Actions that do not use a View would be cached automatically.

The timezone database has been updated to version 2010h.

For a full list of changes, please refer to the CHANGELOG.

Categories: Open Source

Agavi on the Azure Platform

Tue, 04/13/2010 - 20:52

The next release of Agavi will have initial support for running applications on the Microsoft Windows Azure platform, as well as a database adapter for the new ext/sqlsrv driver to communicate with Microsoft SQL Server and support for the IIS7 web server, which now finally has a very nice rewrite module.

As always with these kind of features, the biggest task was getting to know the platform and its components. I spent a good amount of time setting up the necessary tools, learning the finer details of Azure deployment, researching on how the load balancing worked, finding the right rewrite rules for IIS and bending ext/sqlsrv to my will.

In Agavi itself, you will merely find a new session storage class (for cloud-based sessions), a new database adapter class to talk to MSSQL, and some minor modifications to the web request and routing implementations to deal with IIS7’s URL decoding behavior. The latter is still a work in progress, and requires a lot of testing since unfortunately, Apache/IIS/lighttpd/… all have vastly different behavior especially when it comes to URL decoding.

All of these updates will be in Agavi 1.0.4; I plan on releasing 1.0.3 as a final first (it’s been out there long enough in RC state now).

Expect a blog post with examples on how to get your Agavi app up and running on Azure very soon; especially with the Toolkit for Eclipse, it’s a remarkably convenient way of testing and deploying your applications on a cloud infrastructure. And there will, of course, be another article with a wrap-up of last week’s Jump In Camp.

Categories: Open Source