Re: Module API Changes
| From: | Pierre | 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:Some of mines too. The problem is not to compile but to load it.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.
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