Re: Module API Changes

From: Date: Thu, 14 Sep 2006 17:18:22 +0000
Subject: Re: Module API Changes
References: 1 2 3  Groups: php.internals 
Request: Send a blank email to internals+get-25689@lists.php.net to get a copy of this message
Hello, On 9/14/06, Michael B Allen <mba2000@ioplex.com> wrote:
On Thu, 14 Sep 2006 16:49:16 +0200 Pierre <pierre.php@gmail.com> wrote: Hello, On 9/14/06, Michael B Allen <mba2000@ioplex.com> wrote:
Are there any other module API changes between 4 and the current version of PHP that would cause my module to fail to load?
PHP internals API has many changes between two major versions. Don't expect a module compiled for php4 to be loaded smoothly in php5, the same applies from one minor version to another. You have to provide a binary per minor version, and for debug or non debug builds, like any other DLL/so. (5.0 and 5.1 are php5 minor versions, for example) Sorry, I meant to say minor version. So the minor version will change if the module API changes? Our module compiles without modifcation with 4, 5.0, and 5.1.
Some of mines too. The problem is not to compile but to load it.
Is it possible to load a module compiled with a ZEND_MODULE_API_NO that differs from the one PHP was compiled with?
No
Is it possible for a module compiled with debugging to be loaded in a debug build of PHP?
Neither
It's not a horribly big deal to ship 3 modules but it would be nice if our package had a level of forward compatibility (e.g. worked with a new snapshot that introduced a moduel API change).
If it a snapshot have a new API, it will also have a new API version and will be available in a new minor/major PHP version.
Has the module API changed in 5.2?
Yes, if not it will still be 5.1.x. I think the changes will be explained in the README.UPDATE_5_2 file in CVS, or they are already in. --Pierre

« previous php.internals (#25689) next »