This bundle helps you generate a Changelog of the dependencies you have been installing, updating and uninstalling during the life of your project. This helps the developers keep track of important changes in a human readable way. The generation always generathe the whole history, so it can be run manualy or in a CI whenever you feel the need.
The command is an intergration of the great composer-lock-diff by davidrjonas
Make sure Composer is installed globally, as explained in the installation chapter of the Composer documentation.
Open a command console, enter your project directory and execute:
$ composer require idlab/composer-changelog-bundle --dev
Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:
$ composer require idlab/composer-changelog-bundle
Then, enable the bundle by adding it to the list of registered bundles
in the config/bundles.php
file of your project:
// config/bundles.php
return [
// ...
Idlab\ComposerChangelogBundle\IdlabComposerChangelogBundle::class => ['dev' => true],
];
$ php bin/console idlab:composer-changelog
Will generate someting like this example :
[...]
Dev Changes | From | To | Compare |
---|---|---|---|
composer/pcre | NEW | 3.0.0 | |
composer/semver | NEW | 3.3.2 | |
composer/xdebug-handler | NEW | 3.0.3 | |
doctrine/annotations | NEW | 1.13.3 |
[...]
You couls also redirect the output to a file you may then commit with your application.
$ php bin/console idlab:composer-changelog > COMPOSER-CHANGELOG.md
The output format and destination can be defined in the configuration file.
If the file has not yet been generated, create a new config/packages/idlab_composer_changelog.yaml
file.
The defaulf values are
idlab_composer_changelog:
# Formats the output, can be "text", "md", "json", "json-pretty"
format: md
NB: to see the configuration reference, run $ php bin/console config:dump idlab_composer_changelog
Please always run CS fixer before sumbitting a merge request (PHP CS Fixer lives in the ./vendors
directory)
$ php ./vendor/bin/php-cs-fixer fix