CompatInfo 3.0.0RC1 has just been released.

As I’ve explained yesterday on Reflect’s blog, about the Reflect 2.0.0RC2 release, there are no PEAR package version.

CompatInfo 3.0.0RC1 is available only on two formats :

  • a PHAR version that bundles all dependencies (PHP-Parser + patch (1.0.0-dev+gh95), Symfony Finder 2.4.1, EventDispatcher 2.4.1, Console 2.4.1) in a single file.

  • a composer version.

Caution about the composer version

To use my patch (1.0.0-dev+gh95) on base Nikita 1.0-dev version, add on your composer.json file the following contents:

    "repositories": [
            "type": "vcs",
            "url": ""
    "require": {
        "php": ">=5.3.0",
        "nikic/php-parser": "dev-MagicConst as 1.0.*@dev"

You should get something like this output

Loading composer repositories with package information
Installing dependencies
  - Installing nikic/php-parser (dev-MagicConst d287cb4)
    Cloning d287cb42896ba8921fda64fc5868093647fd65de

Writing lock file
Generating autoload files

The PHAR version was built with the Box Project. The config file box.json is available on the github repository.

This phar version is both compatible with CLI and other SAPI

For web usage, just include the phar version, and use API.

require '/path/to/dir/phpcompatinfo.phar';
// ...

If you use CompatInfo in CLI, you should have access to a console application. This console use a json configuration file. Here is an example.

identify your data source (following Symfony/Finder options)
included all plugins installed. Only one available AnalyserPlugin that give final results.
list all analysers installed accessible through the AnalyserPlugin. Previously (CompatInfo 1.x) it was called report (--report option).
Example 1: Summary analyser (always available, and display as default report, if none provided)
$ php phpcompatinfo.phar analyser:run --alias Reflect1
Example 2: Extension analyser (with benchmark active if PHP_Timer installed)
$ php phpcompatinfo.phar --profile analyser:run --alias CompatInfo2 extension
Example 3: Inspect full SPL Reference contents (that may be filtered by component; see reference:show options)
$ php phpcompatinfo.phar --profile reference:show spl
Example 4: Inspect Reference contents filtered by PHP version (all elements in Core since PHP 5.3)
$ php phpcompatinfo.phar --profile reference:show --php=">= 5.3.0" core
What is planned for the final stable version:
  • Fixes issues if users found something wrong.

  • Adds 40 extensions remaining (on 100) that were not yet migrated to new format.

  • Adds code to have ability to use the cache feature (plugin).

  • Finish the documentation that is not yet available.

Published by Laurent Laville on 2014-02-19