[PCBC-151] support PHP 5.4 Created: 29/Nov/12 Updated: 02/Apr/13 Resolved: 02/Apr/13 |
|
| Status: | Closed |
| Project: | Couchbase PHP client library |
| Component/s: | library |
| Affects Version/s: | 1.0.4, 1.1.0-dp5 |
| Fix Version/s: | None |
| Security Level: | Public |
| Type: | New Feature | Priority: | Major |
| Reporter: | Matt Ingenthron | Assignee: | Matt Ingenthron |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
Owing to changes in PHP API versions, we'll need to rebuild/retest the extension for PHP 5.4. We'll track that in this issue.
A workaround for now would be to download the PHP 1.0.6 source, build, test and release. Source is available from: https://github.com/couchbase/php-ext-couchbase/archive/1.0.6.tar.gz The included README covers how to build/test. It does require a php development environment |
| Comments |
| Comment by Matt Ingenthron [ 29/Nov/12 ] |
|
See also comments in |
| Comment by Matt Ingenthron [ 11/Dec/12 ] |
|
Talked to PHP core contributor Pierre Joye today.
To do this correctly, PHP must be rebuilt for each Major.Minor release and each nts/ts. It must also be built per architecture. From the discussion: hi Pierre! question for you, if we build our PECL extension against 5.3, we need to rebuild against 5.4, right? ingenthr @ 9:06 ingenthr, yes, and for each you also need ts and nts Pierre @ 9:06 ingenthr, I would do it for 5.5 too while being at it, always good to be in line 9:06 so, rebuild for each ts and nts, and each major.minor, huh? ingenthr @ 9:07 yes Pierre @ 9:07 they are usually binary incompatible, while being API compatible 9:07 ABI no, API yes 9:07 you're referring to between ts and nts? ingenthr @ 9:08 okay, so…. what we're doing right now is just wrong 9:09 morning mordy_ @ 9:09 ingenthr, x.y.z > x.y.z+1 API and ABI compatible Pierre @ 9:29 ingenthr, x.y.z > x.y+1.z+1 API compatible and ABI not compatible 9:30 whew mordy_ @ 9:30 ingenthr, x.y.z > x+1.y.z End of the world as we know it Pierre @ 9:30 err Pierre @ 9:30 ingenthr, x.y.z > x.y+1.z API compatible and ABI not compatible Pierre @ 9:30 good morning mordy_ ingenthr @ 9:30 so patch level doesn't break ABI, minor level does mordy_ @ 9:30 ABI breakages only need recompilation, sometimes with some #ifdef Pierre @ 9:31 thanks Pierre, is there a primary source for this? I just know I'm going to have to explain this one a lot. and I'd searched, but it's a hard thing to search for ingenthr @ 9:31 ingenthr: i pretty much believe we've been working on this premise already mordy_ @ 9:32 ingenthr, https://wiki.php.net/rfc/releaseprocess Pierre @ 9:32 |
| Comment by Matt Ingenthron [ 11/Dec/12 ] |
|
The updated source tarball is available from:
https://github.com/couchbase/php-ext-couchbase/archive/1.1.0.tar.gz This can be built (instructions in the readme) on PHP 5.4 or 5.5, with nts/ts. |
| Comment by makeawish [ 11/Jan/13 ] |
|
Matt,
will you guys in the very near future release/ make avail a PHP client library which will support 5.4 ? Also it might be helpful to update the docs to reflect that the current one does not support 5.4, i says 5.3 or higher |
| Comment by Perry Krug [ 20/Feb/13 ] |
| Matt, can we get a release assigned to this? |
| Comment by Matt Ingenthron [ 20/Feb/13 ] |
| Will do when I can assign appropriate resources. |
| Comment by Trond Norbye [ 02/Apr/13 ] |
| Our download page contains betas for windows on 5.4, and the "prebuilt" versions for the other os's contains the version the os use.. |