On Wed, Jan 29, 2014 at 7:37 AM, Rasmus Lerdorf <[email protected]> wrote:
> On 1/29/14, 7:00 AM, Anatol Belski wrote:
>> please look here
>>
>> https://github.com/weltling/mongo-php-driver/compare/mongodb:master...master
>>
>> two hours of work and it's about 70% of the porting, compiling with 5.5
>> and str_size_and_int64. This is the hard caliber of course.
>
> And that is only 70%?
>
I want to point out that this is 70% of the job to make it a 5.6
extension. Not compatible with 5.3, 5.4 and 5.5 - even though all that
compat.h and stuff makes it look like it, its not. This is 5.6
compatibility.
(that change breaks build against 5.5, 5.4 and 5.3).
Keeping compatibility with 5.5, 5.4, 5.3 is still eft as an exercise
to the reader, as it does not compile against anything other then
5.6+size_t (and, even there.. is not finished).
I need people do also understand this little fact:
This is how you will create an extension 2years from now.
That compat.h header is as important as #include <php.h>
Your extension is useless without it.
I strongly feel this "make extensions 5.6-only, with backwards
compatibility layer, header file and other workarounds" is attacking
the problem in catastrophic way and suggested a future compatible
approach in the other thread.
That being said I have two other issues with the vote (and rfc):
- To the casual observer, the performance stats look great!
...But they are a lie. It doesn't matter how 5.5+size_t performs
since 5.5 isn't the target branch.
Maybe there have been 5.6 specific performance improvements that
this patch trashes when merged into 5.6?
The only performance stats that matter are 5.6-alpha1 (nts/zts) vs
5.6-alpha1+size_t branch (nts/zts)
- The vote makes it look like its "now or never" (5.6 or nothing)
This means people don't have to understand the implications.
All they need to know is "64bit integers in PHP? Ok. That sounds
logical, I'll vote +1".
Of course people will vote for that.
When you start thinking (given you have ever created an external
PHP extension, which minority of our normal voters have) you'll
realize how much more there is to this.
I hereby dub thee mistake-of-php-5.6-should-have-been-start-of-6.0
-Hannes