Recovery composer.json by vendor directory content

1.0.0 2019-10-24 04:28 UTC

This package is auto-updated.

Last update: 2021-01-05 13:41:23 UTC


Helper for recovery composer dependency list (if you lost composer.json) from composer.lock or vendor/composer/installed .json

Build Status

NOTE: It is not file-recovery tool, and it can`t recover composer.json data same as it was in original. It just extracts package list and concrete versions (and also hash for dev-master dependecies) from composer.lock, or, if it absent too, from vendor/composer/installed.json

If recover maked from installed.json - there are no way to separate default and dev dependencies

See tests/stub/app1_expected.json as an example of result file

NOTE2: If your project under vcs control, you don't need this package. You can easy restore composer.json from previous commit or another branch


composer global require insolita/composer_recovery

Ensure that your ~/.composer/vendor/bin directory declared in $PATH

echo $PATH

if not - you should add it in ~/.bashrc or ~/.profile

Basic Usage:

cd /var/www/myproject && composer-recovery

Supported options:

-p : path to project directory (by default - active directory where script was called)

-o : path to directory where recovered_dependecies.json will be written (by default - same as project directory)

-f : custom file name - (by default - recovered_dependecies.json)

Examples with options:

composer-recovery -p /var/www/myproject/ -o /some/place/for/result/ -f mycomposer.json

composer-recovery -p . -o ../output/