Bug #65948 [Com]: extension and PHP API version mismatch
| From: | wzis at hotmail dot com | Date: | Thu, 24 Oct 2013 00:12:25 +0000 |
| Subject: | Bug #65948 [Com]: extension and PHP API version mismatch | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-182417@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=65948&edit=1
ID: 65948
Comment by: wzis at hotmail dot com
Reported by: wzis at hotmail dot com
Summary: extension and PHP API version mismatch
Status: Wont fix
Type: Bug
Package: *General Issues
Operating System: Linux
PHP Version: Irrelevant
Block user comment: N
Private report: N
New Comment:
But API should be very stable: one example is glibc: even though it has been many version releases,
but so long you compile a program on a version of glibc, and only run that binary on system with
that version of glibc or newer, the program can run successfully.
Previous Comments:
------------------------------------------------------------------------
[2013-10-23 23:12:09] johannes@php.net
If you want to do experiments in that area you could do magic by creating your own get_module()
function which detects the PHP version, but we change structures as we see need between releases.
You are mentioning 5.1 versus 5.5 that's 8 years of development work with lots of improvements.
We care a lot about binary compatibility between bug fix releases (x.y.z++) but not feature releases
(x.y++.z)
------------------------------------------------------------------------
[2013-10-23 23:00:34] wzis at hotmail dot com
If we only use very minimum PHP API functions and data structures, is there a way to achieve build
once, run on multiple versions?
------------------------------------------------------------------------
[2013-10-23 22:56:13] wzis at hotmail dot com
What do you mean by
"Please use #if #ifdef to make your module built with versions.
I personally have module that works from PHP 4.3 through master, you should be able to do
that."
Do we still need to build the module for each version (x.y) or by using the #if #ifdef now we can
build module on one version, use it on newer versions? Any example?
------------------------------------------------------------------------
[2013-10-23 01:39:34] yohgaki@php.net
We only keep API compatibility for "minor" version. That's the way it is.
Please use #if #ifdef to make your module built with versions.
I personally have module that works from PHP 4.3 through master, you should be able to do that.
------------------------------------------------------------------------
[2013-10-23 01:05:31] johannes@php.net
We keep binary compatibility for all z in x.y.z version numbers.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=65948
--
Edit this bug report at https://bugs.php.net/bug.php?id=65948&edit=1