Doc #63790 [Com]: intl spoofchecking dependencies aren't check/documented
| From: | lior dot k at zend dot com | Date: | Sun, 30 Dec 2012 08:27:36 +0000 |
| Subject: | Doc #63790 [Com]: intl spoofchecking dependencies aren't check/documented | ||
| References: | 1 | Groups: | php.doc.bugs |
| Request: | Send a blank email to doc-bugs+get-9330@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=63790&edit=1
ID: 63790
Comment by: lior dot k at zend dot com
Reported by: lior dot k at zend dot com
Summary: intl spoofchecking dependencies aren't
check/documented
Status: Open
Type: Documentation Problem
Package: intl
PHP Version: 5.4.9
Block user comment: N
Private report: N
New Comment:
Notice bug62915-2.phpt should also be fixed, which isn't a documentation problem.
Previous Comments:
------------------------------------------------------------------------
[2012-12-26 18:34:10] cataphract@php.net
Ah. It's actually correct on ext/intl, but wrong on pecl/intl:
http://lxr.php.net/xref/PHP_TRUNK/ext/intl/php_intl.c?r=5ac35770f45e295cab1ed3c166131d11c27655f6#89
http://lxr.php.net/xref/PECL/intl/php_intl.c?r=ac0e48bbc2436eecd1c934fe0df897d0c0e9f7dc#89
I think I did the cherry picked the commit from ext/intl manually but screwed up in the process.
The rest is a documentation bug.
------------------------------------------------------------------------
[2012-12-20 16:39:22] lior dot k at zend dot com
The current code does the check correctly, and works fine.
The problem I've reported is that ICU >= 4.2 isn't documented and that the php
tests doesn't check the class exists before using the class.
------------------------------------------------------------------------
[2012-12-20 16:07:36] cataphract@php.net
The spoopchecker was introduced in ICU 4.2. The check against ICU 3.2 is wrong, and it's
specially wrong the way it was done before 72c807ad (since it excluded all the releases in the form
x.1.z like 49.1).
Some references to 3.2 were fixed, but the spoofchecker headers includes still seem to be checked
against 3.2.
------------------------------------------------------------------------
[2012-12-17 15:31:33] lior dot k at zend dot com
Description:
------------
I'm building PHP 5.4.9 with ICU 3.x and while running the PHP tests, I get a failure on class
not found.
The spoof checker class (part on intl extension) depends on ICU >= 4.2. This fact isn't
mentioned in the documentation (http://il1.php.net/manual/en/class.spoofchecker.php and http://il1.php.net/manual/en/intro.intl.php).
Also it isn't checked in the tests (ext/intl/tests/bug62915-2.phpt).
Reference commits:
http://git.php.net/?p=php-src.git;a=commitdiff;h=71f5af6c70e93b35dfcade404166bda6629fb8ce
http://git.php.net/?p=php-src.git;a=commitdiff;h=72c807ad67f07ec391017f90771c2e9beb5dbed7
Test script:
---------------
ext/intl/tests/bug62915-2.phpt
Actual result:
--------------
PHP Fatal error: Class 'Spoofchecker' not found
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=63790&edit=1