PEAR::
PHP_CompatInfo
1.9.0, released on January 19, 2009.
Changelog
2009-01-19 - PHP_CompatInfo 1.9.0 (stable) released
No change since version 1.9.0RC1
2009-01-03 - PHP_CompatInfo 1.9.0RC1 (beta) released
changes since beta2
pciconf script did not used anymore the monolithic versions.xml and funclist.txt
data sources. Version information about extensions came from specific extension version.xml
file that are installed into PEAR/data/PHP_CompatInfo/phpdocref
bugs fixed since beta2
CSV, HTML and XML renderers did not provided expected result
due to new classes result-key entry
lost partial functions list information when parsing multiple data sources
with debug mode
news since beta2
add function getSummary() to print only summary when parsing a directory
or multiple data sources at once
2008-12-19 - PHP_CompatInfo 1.9.0b2 (beta) released
news
pciconf: the extension support list build system for PHP5 users only
used now a new exception handler for functions, and allow to make SAPI dictionaries
improve again constant detection by adding a new dictionaries for internal
(php core) constants
3 new methods: getIgnoredFunctions, getIgnoredExtensions, getIgnoredConstants
1 old method open to public: getIgnoredFiles
roadmap
2008-11-23 first alpha version
2008-11-30 first beta version
2008-12-19 second beta version
2009-01-19 stable release 1.9.0
2008-11-30 - PHP_CompatInfo 1.9.0b1 (beta) released
bugs
__FILE__ and __LINE__ constants were not detected with 1.9.0a1
news
With first beta release, API 1.9.0 is marked as complete and will not change until stable
roadmap
2008-11-23 first alpha version
2008-11-30 first beta version
2008-12-19 stable release 1.9.0
2008-11-23 - PHP_CompatInfo 1.9.0a1 (alpha) released
2008-09-27 - PHP_CompatInfo 1.8.1 (stable) released
bugs
#14696
: PHP_CompatInfo fails to scan code line when not ended with ;
changes
getallheaders() is detected as sapi_apache rather than sapi_aolserver
2008-08-01 - PHP_CompatInfo 1.8.0 (stable) released
bugs (XML Renderer)
identify a data source file with the right tag <file> rather than <dir>
list of function in verbose / debug mode is back
bugs (Text Renderer)
--summarize and --verbose level 4 produced PHP notice errors
changes
With agreement of original package author (Davey Shafik), change license
from PHP 3.01 to New BSD
2008-07-18 - PHP_CompatInfo 1.8.0RC2 (beta) released
news
Command-Line Interface:
new -t | --tab switch to set columns width (see also Text Renderer)
bugs
final fix #14187
: cli -r switch does not work in 1.8.0.b4
doc fix #14095
: about missing information from C column in CLI result
changes
Parser give now in summary, when debug mode is on, the list of functions implemented by version
XML Renderer:
Even if XML_Beautifier is available we can now avoid to use it. You are free to manage the raw data.
Reason: old bug #5450 that strip the XML declaration. See: docs\examples\pci180_parsedata_toxml.php
adds attribute "name" to string tag (for a better identification and search)
Text Renderer:
You have now ability to set column width with config option "colwidth".
Only for Files, Extensions, Constants/Tokens. Version and C have always fixed width.
Extra information given by debug mode (verbose level 4) is available both for a single file or a directory
2008-06-28 - PHP_CompatInfo 1.8.0RC1 (beta) released
getFileList() obey now to "recurse_dir" option (when set to false)
parse functions obey now to "ignore_files" option
changes
Result values are now sorted in alphabetic order for a better human reading.
Thats include 6 following entries:
"ignore_functions", "ignore_extensions", "ignore_constants"
"functions" "extensions" "constants"
Event "AuditFinised" give now the result of parsing
Quality Assurance
Test Suites (Standard, Bugs, Cli) included in this first release candidate
are full compatible with API 1.8.0
2008-06-18 - PHP_CompatInfo 1.8.0b4 (beta) released
changes
Text Renderer: support output-level 16 (display filter on version)
Xml Renderer: support all output-level, verbose 4+ or debug mode
CLI: default output-level is now 31 (still all details, as before with 15) since version may be hide (level 16)
news
2 more renderers: Html and Csv
3 more examples: pci180_parsedir_tohtml, pci180_parsefolder_tohtml, pci180_parsestring_toxml
2008-06-07 - PHP_CompatInfo 1.8.0b3 (beta) released
Beta 3 include 1 more renderer : "Text"
parseArray() method was missing in beta2 is back
add or remove observers is now possible with public method of the controller
PHP_CompatInfo (main class)
CLI is back alive with the new Text Renderer.
A new switch -p | --progress was added to display a wait message or a progress bar
(if PEAR::Console_ProgressBar is installed)
2008-06-03 - PHP_CompatInfo 1.8.0b2 (beta) released
Beta 2 include 3 renderers :
"Null" that consumes all output. Usefull for batch mode
"Array" the default. That dump results as a PHP array (like previous versions)
but allow also to print improved array with help of PEAR::Var_Dump if available.
"Xml" that produces XML results with PEAR::XML_Util and improve its render
with PEAR::XML_Beautifier if available.
Command Line Interface will come back live for the beta 3, with 2 more renderers.
2008-05-18 - PHP_CompatInfo 1.8.0b1 (beta) released
Fixed bug #13873
: Undefined Offset Error for function_exists detection
support of error_reporting constant E_RECOVERABLE_ERROR introduced with PHP 5.2.0
show a progress bar when parsing directories from CLI
2008-04-17 - PHP_CompatInfo 1.7.0 (stable) released
Summary of all changes since version 1.6.1
All SAPI:
======
Add new --output-level switch to customize (all) reports output.
==> Request #13493
Add new --summarize switch to limit output to first line (summary)
when parsing directory.
Add new --version switch to print version number of PHP_CompatInfo package.
Add --filter-ext switch to filter file extension when parsing directory
==> Request #13147
Add new column C to indicate a level of conditional code used
(0: none, 1: function_exists() used, 2: extension_loaded() used, 4: defined() used)
changes
XML report structure change.
Render is improve if PEAR::XML_Beautifier is available.
pci.php file was rename to pci (without extension) to match unix command syntax
Text report is now really limited to 80 columns in all situation
QA
dependencies Console_Table, Console_GetArgs, XML_Util
are defined as required and no more optional. CLI is a standard feature and should
not be considered as optional.
2008-04-03 - PHP_CompatInfo 1.7.0b4 (beta) released
Use PEAR::File_Find package 1.3.0 or greater to manage "ignore_dirs" and
"ignore_files" easily (with ability to filter by regular expression).
XML report structure change.
Render is improve if PEAR::XML_Beautifier is available.
XML report may now be filtered with help of --output-level switch.
Values change for --output-level switch. Use now binary value (more easy to remember)
2->Extension, 4->Constant, 8->Tokens, with always 1->Path-File + Version
(Thanks to Stephan Wentz for his request)
Add new switch --summarize to limit output to first line (summary)
when parsing directory
(Thanks to Stephan Wentz for his request)
2008-03-24 - PHP_CompatInfo 1.7.0b2 (beta) released
pci.php file was rename to pci (without extension) to match unix command syntax
CLI may print (-V | --version) version number of PHP_CompatInfo package used
Fixed bug #13417
: Parser ignore class-method that are named as standard php functions
2008-03-17 - PHP_CompatInfo 1.7.0b1 (beta) released
fix CLI output render to 80 columns, on main table :
29 characters for File/Path column (1)
9 characters for Version column (2)
13 characters for Extensions column (3)
23 characters for Constants/Tokens column (4)
fix CLI output render to 80 columns, on additionnal tables :
25 characters for Option column (1)
51 characters for Value column (2)
On CLI, the XML report generation is now xml compliant with a root tag (pci)
On CLI, implement options:
ignore_functions_match with -inm switch,
ignore_extensions_match with -iem switch,
ignore_constants_match with -icm switch
On CLI options files (see -in, -ie, -ic, -inm, -iem, -icm)
allow to put line in comment with ; character (as in php.ini)
2008-02-21 - PHP_CompatInfo 1.7.0a1 (alpha) released
Intoduces 3 new options to locally mask exception for
functions (ignore_functions_match),
extensions (ignore_extensions_match) and
constants (ignore_constants_match)
That allow to implement
request #12857
Implement
request #13138
: separate constants and tokens in results.
loadVersion() may return both function or function+constant list
Added -s | --string parameter to CLI;
Allow to parse a string without using script tags <?php ... ?>
Added -r | --report parameter to CLI;
Allow to print either an "xml" or "cli" (default) report
split and glue parameters of CLI class constructor were removed; the limit
to 80 columns is now fixed otherwise
PHP requirement is now set to 4.3.10 minimum (due to usage of PHP_EOL constant)
User Guide (HTML version) included in previous versions was removed, since
its now part of PEAR manual.
Always available to download as standalone manual
API is near 95% unit tested with PHPUnit 3.x (see main suite: tests/AllTests.php)
2007-11-19 - PHP_CompatInfo 1.5.1 (stable) released
add two custom options to beautify output
. split filename to 32 char max (limit full console_table to 80 columns)
it can be reduce or expand
. glue is a string to indicates that filename is splitted into multiline
any string length and char is allow)
windows script launcher for CLI version is now protected for blanks into
directory name. Something like "C:\Program Files\"
2006-08-30 - PHP_CompatInfo 1.3.0 (stable) released
Fixed bug #8559
: fails to scan if finds empty file in path
CLI version of PHP_CompatInfo won't print help usage more than once now
CLI version of PHP_CompatInfo is now compatible with Console_Table separator
and multi-line cells support (requires version 1.0.4 or better)
a launcher for windows user (compatinfo.bat) to run the CLI version of PHP_CompatInfo.
better render of PHP_CompatInfo_CLI output by using Console_Table separator.
PHP_CompatInfo_CLI output is limited to 80 columns
2006-08-23 - PHP_CompatInfo 1.2.0 (stable) released
add new option "ignore_constants" to functions parseArray(),
parseDir(), parseFolder(), parseFile(), parseString().
new method: loadVersion() to get components list of a PHP version (or subset).
2006-08-06 - PHP_CompatInfo 1.1.2 (stable) released
fix bug that cannot detect correctly a script which is wrote in uppercase or mixed (lower, upper)
like CamelCase.
keys of $GLOBALS['_PHP_COMPATINFO_CONST'] array in const_array.php file,
were all set to uppercase.
2006-07-27 - PHP_CompatInfo 1.1.1 (stable) released
Fixed bug #2771
: SAPI extension not well detected
This bug was already fixed with version 1.0.0RC3 and was back active again with version 1.1.0 !
'func_array.php' and 'const_array.php' files have now header comment block
PECL extension are now really identified.
With php version when available, otherwise with '4-dev'
With pecl extension name in 'ext' key of result array
all PHP extensions are now better supported
2006-06-28 - PHP_CompatInfo 1.1.0 (stable) released
Fixed bug #8058
: php 5 T_* constants undefined when running on php 4
Added request #6056
: Add support for reporting max PHP version
2006-06-15 - PHP_CompatInfo 1.0.2 (stable) released
Fixed bug #6581
: Functions missing in func_array.php
PHP 3 functions are now supported
2006-06-12 - PHP_CompatInfo 1.0.1 (stable) released
a web frontend (docs/examples/ci_frontend.php) that will help everybody
to check their PEAR packages installation.
PHP minimum is set to 4.2.0 (4.3.0 required by release 1.0.0 is not necessary)
Fixed bug #4789
: error in packaged file structure
Fixed bug #4942
: fixing my own bug (my == techtonik)
Fixed bug #7813
: wrong PHP minimum version detection
2005-03-14 - PHP_CompatInfo 1.0.0 (stable) released
Now unsets all constants that are PHP5 only. This means
that PHP5 detection on PHP4 is now highly unlikely but that PHP4
detection should be much better.
2005-03-05 - PHP_CompatInfo 1.0.0RC5 (beta) released