@@ -16,8 +16,8 @@ if (! $opts['only-prod']) {
1616}
1717
1818if ($ opts ['json ' ]) {
19- $ json_opts = ($ opts ['pretty ' ]) ? JSON_PRETTY_PRINT : 0 ;
20- print json_encode ($ changes , $ json_opts );
19+ $ json_opts = ($ opts ['pretty ' ]) ? JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT : 0 ;
20+ echo json_encode ($ changes , $ json_opts ), PHP_EOL ;
2121 return ;
2222}
2323
@@ -69,7 +69,7 @@ function diff($key, $data_from, $data_to) {
6969
7070function version ($ pkg )
7171{
72- if ((substr ($ pkg ->version ,0 ,4 ) == 'dev- ' || '-dev ' === substr ($ pkg ->version , -4 )) && isset ($ pkg ->source ) && isset ( $ pkg -> source ->reference )) {
72+ if ((substr ($ pkg ->version ,0 ,4 ) == 'dev- ' || '-dev ' === substr ($ pkg ->version , -4 )) && isset ($ pkg ->source ->reference )) {
7373 $ version = substr ($ pkg ->source ->reference ,0 ,7 ) ?: '' ;
7474 } else {
7575 $ version = (string ) $ pkg ->version ;
@@ -444,8 +444,8 @@ function parseOpts() {
444444
445445 $ vcs = array_key_exists ('vcs ' , $ given ) ? $ given ['vcs ' ] : '' ;
446446 if ($ vcs && !function_exists ('vcsLoad ' . ucfirst ($ vcs ))) {
447- error_log ("Unsupported vcs ' $ vcs' \n" );
448- usage ();
447+ error_log (sprintf ( "Unsupported VCS ' $ vcs'; supported are: '%s' \n" , implode ( " ', ' " , getVcses ())) );
448+ usage (1 );
449449 }
450450
451451 return array (
@@ -462,14 +462,14 @@ function parseOpts() {
462462 );
463463}
464464
465- function usage () {
465+ function usage ($ status = 0 ) {
466466 $ vcses = implode (', ' , getVcses ());
467- print <<<EOF
467+ $ help = <<<EOF
468468Usage: composer-lock-diff [options]
469469
470470Options:
471- -h --help Print this message
472- --path , -p Base to with which to prefix paths. Default "./"
471+ -h, --help Print this message
472+ -p , --path Base to with which to prefix paths. Default "./"
473473 E.g. `-p app` would look for HEAD:app/composer.lock and app/composer.lock
474474 --from The file, git ref, or git ref with filename to compare from
475475 (git: HEAD:composer.lock, svn: composer.lock@BASE)
@@ -480,11 +480,16 @@ Options:
480480 --no-links Don't include Compare links in plain text or any links in markdown
481481 --only-prod Only include changes from `packages`
482482 --only-dev Only include changes from `packages-dev`
483- --vcs Force vcs ( $ vcses). Default: attempt to auto-detect
484-
483+ --vcs Force VCS ( $ vcses). Default: attempt to auto-detect
485484EOF ;
486485
487- exit (0 );
486+ if ($ status ) {
487+ error_log ($ help );
488+ } else {
489+ echo $ help , "\n" ;
490+ }
491+
492+ exit ($ status );
488493}
489494# vim: ff=unix ts=4 ss=4 sr et
490495
0 commit comments