2.8.0 support all PHP versions until 5.4.7
2.7.0 support all PHP versions until 5.4.6
2.6.0 support all PHP versions until 5.4.5
2.5.0 support all PHP versions until 5.4.4
2.4.0 support all PHP versions until 5.4.3
2.3.0 support all PHP versions until 5.4.0
2.2.0 support all PHP versions until 5.3.10
2.1.0 support all PHP versions until 5.3.8
add 5 new references data dictionnaries related to extensions: amqp, geoip, inclued, mongo, XCache
introduces a new Reference API that allow to filter elements (interfaces, classes, functions, constants) on php version or extension release, with or without a particular relationship (like operator in version_compare)
Full filter support for 25 extensions (that have all releases documented):
amqp (1.0.7)
apc (3.1.13)
enchant (1.1.0)
fileinfo (1.0.5)
filter (0.11.0)
geoip (1.0.8)
hash (1.0)
inclued (0.1.3)
intl (2.0.1)
json (1.2.1)
libxml
lzf (1.6.2)
mailparse (2.1.6)
memcache (3.0.6)
memcached (2.1.0)
mongo (1.2.12)
OAuth (1.2.2)
Phar (2.0.1)
solr (1.0.2)
sphinx (1.2.0)
tidy (2.0)
XCache (2.0.1)
xdebug (2.2.1)
zip (1.11.0)
zlib (2.0)
Limited filter support to php versions only for all other extensions
none
add 4 new references data dictionnaries related to extensions: geoip, inclued, mongo, XCache
add full filter support for extensions geoip (1.0.8), inclued (0.1.3), json (1.2.1), libxml, lzf (1.6.2), mailparse (2.1.6), memcache (3.0.6), memcached (2.1.0), OAuth (1.2.2), Phar (2.0.1), solr (1.0.2), XCache (2.0.1)
none
add 1 new references data dictionnaries related to extensions: mongo
add full filter support for extensions fileinfo (1.0.5), filter (0.11.0), hash (1.0), mongo (1.2.12), tidy (2.0), zip (1.11.0), zlib (2.0)
none
introduces a new Reference API that allow to filter elements (interfaces, classes, functions, constants) on php version or extension release, with or without a particular relationship (like operator in version_compare)
Full filter support for extensions apc (3.1.13), enchant (1.1.0), intl (2.0.1), sphinx (1.2.0), xdebug (2.2.1)
Limited filter support to php versions only for all other extensions
phpci list-classes intl 1.0.0
phpci list-functions xdebug 2.0.0 ge .API filter examples on php versions:
phpci list-constants intl php_5.2.0 gt
phpci list-functions apc php_4 (only php < php 5.0.0)
phpci list-functions apc php_5 (only php >= php 5.0.0)
Upgrades extension dependencies: new Reference API uses PHP ReflectionClass (see REF_VERSION class constant : latest version of Extension/Reference supported)
Adds missing Xdebug unit tests (while reference exists since 2.0.0RC3)
none
2.7.0 support all PHP versions until 5.4.6
2.6.0 support all PHP versions until 5.4.5
2.5.0 support all PHP versions until 5.4.4
2.4.0 support all PHP versions until 5.4.3
2.3.0 support all PHP versions until 5.4.0
2.2.0 support all PHP versions until 5.3.10
2.1.0 support all PHP versions until 5.3.8
none
add a new report (condition) for CLI tool that will replace the warning messages on conditional code uses
removed warning messages about conditional code uses; replaced by the new --report condition of the CLI tool
add a new level for conditional code uses about traits (PHP 5.4 feature)
add a new API getter for Traits (PHP 5.4 feature)
User classes that used visibility (public, protected, private) are now identified as PHP 5.0.0 and no more as PHP 4.0.0
Improved global results in a multiple data source context
Add a warning message when --reference ALL used with extension detected but not loaded
Add ability to exclude traits from parsing with the CLI tool and the XML configuration file
XML report may show results either group by components or files
add namespaces in XML report
upgrade jquery minimized to version 1.7.2; used by summary.xsl.
none
API getters gave wrong results when data source is list of files (directory)
Avoid exception in all case when xml configuration location is not a file
Avoid exception when a directory phpci exists in save_path cache file
Force clean cache when --reference or --exclude-pattern changed. Avoid old results.
add a new report (condition) for CLI tool that will replace the warning messages on conditional code uses
removed warning messages about conditional code uses; replaced by the new --report condition of the CLI tool
add a new level for conditional code uses about traits (PHP 5.4 feature)
add a new API getter for Traits (PHP 5.4 feature)
User classes that used visibility (public, protected, private) are now identified as PHP 5.0.0 and no more as PHP 4.0.0
Improved global results in a multiple data source context
Add a warning message when --reference ALL used with extension detected but not loaded
Add ability to exclude traits from parsing with the CLI tool and the XML configuration file
XML report may show results either group by components or files
add namespaces in XML report
upgrade jquery minimized to version 1.7.2; used by summary.xsl.
API getters gave wrong results when data source is list of files (directory)
Avoid exception in all case when xml configuration location is not a file
Avoid exception when a directory phpci exists in save_path cache file
Force clean cache when --reference or --exclude-pattern changed. Avoid old results.
2.6.0 support all PHP versions until 5.4.5
2.5.0 support all PHP versions until 5.4.4
2.4.0 support all PHP versions until 5.4.3
2.3.0 support all PHP versions until 5.4.0
2.2.0 support all PHP versions until 5.3.10
2.1.0 support all PHP versions until 5.3.8
fixed plural in the footer of all reports produced by CLI
add namespace (when necessary) in XML report
improved version detection of namespaces aliases uses in type hinting
Users have now ability to use their own autoloader (related to issue GH-43)
fix references to latest version of branch PHP 5.3
wrong namespace used for class when importing other namespaces (see PHP_Reflect 1.4.2)
excludes callable type hint in additionnal class search
GH-34 : Remove false positive on A::CONST_NAME
GH-38 : type hinting in function prototype
GH-39 : class not detected and bad version
GH-40 : ambiguous class report
GH-42 : Remove parameter versions from scandir()
unit tests suites PHP 5.2 compatibility with source only parsable with PHP 5.3 or greater
Users have now ability to use their own autoloader (related to issue GH-43)
GH-34 : Remove false positive on A::CONST_NAME
GH-38 : type hinting in function prototype
GH-39 : class not detected and bad version
GH-40 : ambiguous class report
GH-42 : Remove parameter versions from scandir()
unit tests suites PHP 5.2 compatibility with source only parsable with PHP 5.3 or greater
2.5.0 support all PHP versions until 5.4.4
2.4.0 support all PHP versions until 5.4.3
2.3.0 support all PHP versions until 5.4.0
2.2.0 support all PHP versions until 5.3.10
2.1.0 support all PHP versions until 5.3.8
add 8 new references data dictionnaries related to extensions: exif, lzf, mailparse, mssql, solr, sphinx, xhprof, Yaml
GH-37 : cache content depends on installed extension
GH-41 : Prevent division by zero PHP warning from progressbar when nothing parsed
2.4.0 support all PHP versions until 5.4.3
2.3.0 support all PHP versions until 5.4.0
2.2.0 support all PHP versions until 5.3.10
2.1.0 support all PHP versions until 5.3.8
ext/mbstring : add support for mb_ereg_replace_callback function
Growl Test Listener used now the latest version (2.6.0) of Net_Growl
phing build script can now generate PDF in both format A4 and US
fix wrong closure detection
GH-31 : Don’t write warnings to reports and don’t print report if written to file
GH-32 : Remove false positive on id(new stdClass)→c signature
GH-33 : Avoid deadlock in object operator
2.3.0 support all PHP versions until 5.4.0
2.2.0 support all PHP versions until 5.3.10
add 1 new references data dictionnaries related to extensions: Zip,
XSL stylesheet summary.xsl that transform XML report to HTML page display now traits (PHP 5.4)
fix case sensitive name of Reflection reference in data dictionnary
version 2.2.5 or better will support all PHP 5.4.0RC, and future version 2.3.0 is reserved for final PHP 5.4.0 stable release
add support of new PHP 5.4 classes : SPL: CallbackFilterIterator, RecursiveCallbackFilterIterator Intl: Transliterator, Spoofchecker Session: SessionHandler
add support of new PHP 5.4 interfaces : Json: JsonSerializable Session: SessionHandlerInterface
add 1 new references data dictionnaries related to extensions: Reflection,
add support for Growl test listener ( https://github.com/llaville/phpunit-GrowlTestListener )
none
add missing magic constant TRAIT in core reference
remove @cover annotation (that raise PHP_CodeCoverage_Exception) for magic method in IssueTest.php
GH-28 classMemberAccessOnInstantiation detection error https://github.com/llaville/php-compat-info/issues/28
GH-29 inconsistent magic constants detection on PHP 5.2, 5.3 and 5.4 https://github.com/llaville/php-compat-info/issues/29
solve license conflict issue due to typo error in package.php script (thanks to Remi Collet)
protect cache file usage with invalid save_path
normalize cache file name and avoid to delete no phpci cache files in directory identified by save_path option
invalid all cache files when upgrading to a new PHP_CompatInfo version
GH-27 Mistake in arrayDereferencing detection https://github.com/llaville/php-compat-info/issues/27
Phing documentation build script has evolved to allow more customized options
EPUB doc format is now available to download
PHP minimum version on XSL references for XSL_SECPREF constants
GH-26 Mistake in classMemberAccessOnInstantiation detection https://github.com/llaville/php-compat-info/issues/26
Version 2.2.0 support until PHP 5.3.9 and 5.4.0
Version 2.2.1 support until PHP 5.3.10 and 5.4.0
none
fix references for functions with parameters that have different versions
add detection for class member access on instantiation (e.g. (new Foo)→bar())
add detection of array dereferencing (PHP 5.4 feature)
improves detection for function with version changed depending of signature (arguments)
add PHPUnit configuration file (phpunit.xml). Help for CI env integration
split Issues Tests in two classes depending of code licences
fix references for PHP 5.4.0
make doc generation with AsciiDoc compatible with older version 8.4.5 (especially for old linux distributions)
phing build documentation script is now easily reuseable (configuration through an external properties file)
add 2 new references data dictionnaries related to extensions: ldap, oauth
removes experimental PEAR package detection
request #13094 : PHP5 method chaining ( http://pear.php.net/bugs/bug.php?id=13094 )
fix version stamp in XML report
support all PHP versions until 5.3.8
add 2 new references data dictionnaries related to extensions: memcache, memcached
none
add 1 new references data dictionnaries related to extensions: intl
add source documentation that can be build with AsciiDoc (see docs/README.txt)
wrong PHP extension/internal functions detection when using namespace
add 15 new references data dictionnaries related to extensions: APC, Mhash, Mcrypt, Phar, posix, Readline, recode, snmp, Soap, sqlite3, sysvmsg, sysvsem, sysvshm, tidy, xmlrpc
detect now magic constants (LINE, FILE, DIR, FUNCTION, CLASS, METHOD, NAMESPACE)
printing multiple reports feature is available. Use either:
phpci --report summary --report function /path/to/source
or just simple phpci --report summary function /path/to/source
with XML config file, adds a comma separate valid report types in report property of tag <phpcompatinfo>
add summary reports (new default behavior) on each category (extension, interface, class, function, constant)
add namespace report
add token report (language features as goto, use, try /catch, throw, instanceof, clone, …)
add globals/superglobals report
add short option to set php.ini directive value
reduced amount of memory used by PHP_Reflect to return only necessary properties
list-references command did not displayed extensions with mixed cases like (PDO, SQLite, SimpleXML)
add 7 new references data dictionnaries and unit tests related to extensions: enchant, ereg, fileinfo, gmp, imap, pcntl, shmop (thanks to contributor [remicollet])
adds LICENSE file
adds HOWTO file, a mini guide to help users
bartlett/PHP_Reflect replaces phpunit/PHP_TokenStream as PHP parser
pear/Console_CommandLine replaces ezcConsoleInput
adds new sub-command list-references to know which extensions are supported
changes base install directory
default config file phpcompatinfo.xml.dist is now locate into PEAR cfg_dir
none
add 20 new references data dictionnaries related to extensions: ctype, dom, filter, ftp, gettext, iconv, json, mysql, mysqli, openssl, pgsql, session, simplexml, sqlite, ssh2, wddx, xmlreader, xmlwriter, xsl, zlib
Don’t overwrite PHP_CompatInfo 1.x previous installation
add a XSL transformation stylesheet to produce a summary XHTML page from XML report (see directory misc/)
none
PHP_CompatInfo 2 is now available on a new PEAR channel: bartlett.laurent-laville.org
New reference: PEAR; that allows to identify components related to PEAR packages
add new references data dictionnaries related to extensions: mbstring, PDO, sockets, xml
add new references data dictionnaries related to PEAR packages: Net_Growl
clean-up dupplicated warning messages on all reports
list references in the data base may be now restrict to a specific extension
An error message is now printed for errors while parsing the phpcompatinfo.xml file
Wrapper can now provide all new features expected, even if lot of code should be remove later when a new stable release of PHP_TokenSteam will be available.
option referenceDriver removed in favour of new reference plugins system. See new option referencePlugins and configuration file phpcompatinfo.xml
Net_Growl 2.2.1 is necessary if you want to use the Growl listener (optional)
extension report was missing in beta3 distribution
FIX base path displayed on all reports
FIX missing extensions dependencies in package.xml
add a wrapper for current stable version 1.0.1; some new features may be available with future versions
add unit tests for all issues detected in PCI versions lower than 2.0.0
add references for SPL extension
add references for gd extension
add references for hash extension
add references for libxml extension
add references for pcre extension
add references for tokenizer extension
fix version and origin of interfaces Traversable,IteratorAggregate,Iterator,ArrayAccess,Serializable
implements function PHP_CompatInfo::getConditions and all reports uses
Xml report show now the PHP required versions (min, max)
cache file introduces garbage collector features (probability and maxlifetime)
more and more phpdoc tags
replace assertType by assertInternalType in test suites to be ready for PHPUnit 3.6
fix dependency for minimum PHP version (5.2.0 rather than 5.0.0)
add missing dependencies in package.xml (ezComponents, …)
reset function (http://www.php.net/manual/en/function.reset.php) missing in standard extension data dictionary
PHP_Token_STRING class rewrote to improve detection of more code
PHP_Token_CONSTANT_ENCAPSED_STRING class implemented for constant detection
Summary report: same file path are now unique (improve readibility)
Message File "phpcompatinfo.xml" does not exist added to warnings stack
Message Report file: "/path/to/reportFile" is invalid added to warnings stack
Added more phpdoc tags
Allow configuration of cache with XML file
Allow recursive directory parsing (default is local folder only)
Improved visual render of all reports
File extensions to include are customisable (default is: php,inc,phtml)
Ability to set a php.ini directive value (allocate memory limit for huge data source)
Code factorized with the magic method __call
Add autoload for cache system
code clean-up (debug code and more)
Cache file: isCached() did not detect previous cached results
wrong versions displayed (in some condition) on all reports with folder as data source
First preview