semantic-diff
semantic-diff copied to clipboard
Semantic diffs for PHP code
Semantic Diff for PHP
API status
Until the first tag is created, this package should be considered very unstable.
Usage
use PhpParser\Parser;
use PhpParser\Lexer;
use SemanticDiff\Diff\Factory;
use SemanticDiff\Status;
$phpParser = new Parser(new Lexer);
$diff = (new Factory)->createDiff(
$phpParser->parse($oldPhpCode),
$phpParser->parse($newPhpCode)
);
$status = $diff->getStatus();
/*
* $status is now one of:
* Status::NO_CHANGES
* Status::API_ADDITIONS
* Status::INTERNAL_CHANGES
* Status::API_CHANGES
* Status::INCOMPATIBLE_API
*/
License
Semantic Diff is released under the MIT license.