mlukaszewski / feathers_square
Feathers Square for PHP
Installs: 7
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 2
Open Issues: 0
Type:project
Requires
- php: >=7.0
- pdepend/pdepend: 2.5.0
This package is not auto-updated.
Last update: 2024-05-23 05:54:32 UTC
README
This is a fork of blerou work.
Done
- changed PDepend source - PEAR provides only version 1.1.14, now version 2.5.0 will be used (with PHP7 support).
- added -ignore options (for PDepend)
TODO
- executing PDepend as part of PHP stack, not an external process.
- fix Unit Tests, write new one (goal: coverage of all APIs)
Installation (with composer)
composer create-project mlukaszewski/feathers_square
Hopefully-meaningful Metrics
This work based on Turbulence
A quick hack based on Michael Feathers' recent work in project churn and complexity
Usage
bin/turbulence_php -repo=/path/to/git/project -out=/tmp/output
It takes /path/to/git/project
repository, calculates class/file changes and some kind of complexities, then create an out.json file under /tmp/output
(it contains the raw data in JSON format).
bin/turbulence_php -repo=/path/to/git/project -out=/tmp/output -path=src
When -path
parameter presents only files (classes) under src/
will be processed.
If everything went well a viewer.html
will be generated under output (/tmp/output
). It has no external dependency, so just launch it with your favorite browser.
google-chrome /tmp/output/viewer.html
Example
Let's create the metrics of Twig template engine:
git clone git://github.com/blerou/turbulence.php.git
git clone git://github.com/fabpot/Twig.git
turbulence.php/bin/turbulence_php -repo=Twig -out=/tmp/Twig -path=lib
google-chrome /tmp/Twig/viewer.html
Dependencies
It uses PDepend to calculate complexity.
use composer to install this dependency:
composer install