ravilushqa / generate-difference
Installs: 8
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 1
Type:project
Requires
- php: >=7.0.0
- docopt/docopt: ^1.0
- funct/funct: ^1.4
- symfony/yaml: ^4.0
- tightenco/collect: ^5.5
Requires (Dev)
- codeclimate/php-test-reporter: dev-master
- phpunit/phpunit: *
- squizlabs/php_codesniffer: *
This package is not auto-updated.
Last update: 2024-04-28 03:14:27 UTC
README
This project can generate difference between two files.
Installation
- For CLI
composer global require ravilushqa/generate-difference
- In your project
composer require ravilushqa/generate-difference
Usage
1. For CLI
Usage: gendiff (-h|--help) gendiff [--format <fmt>] <firstFile> <secondFile> Options: -h --help Show this screen --format <fmt> Report format [default: pretty]
2. For project
//todo
Supported formats
1. Formats of input files
- yml
- json
2. Formats of report
- plain
- pretty
- json
Examples output
Input files
before.json
{ "common": { "setting1": "Value 1", "setting2": "200", "setting3": true, "setting6": { "key": "value" } }, "group1": { "baz": "bas", "foo": "bar" }, "group2": { "abc": "12345" } }
after.json
{ "common": { "setting1": "Value 1", "setting3": true, "setting4": "blah blah", "setting5": { "key5": "value5" } }, "group1": { "foo": "bar", "baz": "bars" }, "group3": { "fee": "100500" } }
Plain
Setting "common.setting2" deleted.
Setting "common.setting4" added with value "blah blah".
Setting "group1.baz" changed from "bas" to "bars".
Section "group2" deleted.
Pretty
{
common: {
setting1: Value 1
- setting2: 200
setting3: true
- setting6: {
key: value
}
+ setting4: blah blah
+ setting5: {
key5: value5
}
}
group1: {
- baz: bas
+ baz: bars
foo: bar
}
- group2: {
abc: 12345
}
+ group3: {
fee: 100500
}
}