I'm pleased to announce the release of PL/php version 1.1, the PHP
procedural language for PostgreSQL.
What's in the 1.1 release:
- The build system no longer requires the PHP nor PostgreSQL sources.
It uses PGXS, making it all much easier to build compared to the
original 1.0 release.
- Rudimentary SPI support, meaning you can send queries to the server
and get/process the results.
- Trigger support: you can write trigger functions, including the
ability to abort or skip an operation, or modifying the tuple before
insert/update.
- Function validation: PL/php will tell you right away if the function
you are creating has a syntax error, and abort the creation, so no
invalid functions make it into the database.
- You will receive any errors and warnings that PHP generates while
executing your function.
PL/php 1.1 only works with PostgreSQL 8.0 and 8.1. It has been tested
with PHP 4.4.1 only, but it should work with PHP 5 as well.
PL/php 1.1 can be downloaded from the Trac page. The documentation
lives there as well, as a Wiki.
http://projects.commandprompt.com/projects/public/plphp
Differences from the original 1.0 release include:
- Error messages and warnings are passed from PHP to Postgres instead of
being silently dropped.
- No more memory leaks in SPI functions.
- SPI results are now an opaque PHP resource, so it's no longer possible
to crash the server by modifying it.
- Memory handling has been overhauled. There are no known memory leaks.
Huge SPI results can be processed.
- SRF support has been removed. It will be added again in the next
release. The previous version was found to be too buggy and poorly
thought-out.
- A private symbol table is created for each function, which facilitates
the process of releasing memory used by the function. This symbol
table is cleared after each call.
For a quick glance of (to? into?) our release plan, please have a look
at the Roadmap in our Trac page:
http://projects.commandprompt.com/projects/public/plphp/roadmap
Please report any issues as a Ticket in the Trac page:
http://projects.commandprompt.com/projects/public/plphp/newticket
Expect a 1.2 release shortly, which will include SRF support.
--
Alvaro Herrera http://www.PlanetPostgreSQL.org
"I'm always right, but sometimes I'm more right than other times."
(Linus Torvalds)