Download the PHP package ergebnis/composer-normalize without Composer
On this page you can find all versions of the php package ergebnis/composer-normalize. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download ergebnis/composer-normalize
More information about ergebnis/composer-normalize
Files in ergebnis/composer-normalize
Package composer-normalize
Short Description Provides a composer plugin for normalizing composer.json.
License MIT
Homepage https://github.com/ergebnis/composer-normalize
Informations about the package composer-normalize
composer-normalize
This project provides a composer
plugin for normalizing composer.json
.
Why
When it comes to formatting composer.json
, you have the following options:
- you can format it manually (and request changes when contributors format it differently)
- you can stop caring
- or you can use
ergebnis/composer-normalize
ergebnis/composer-normalize
normalizes composer.json
, so you don't have to.
:bulb: If you want to find out more, take a look at the blog post.
Installation
Composer
Run
to install ergebnis/composer-normalize
as a composer plugin.
Run
to allow ergebnis/composer-normalize
to run as a composer plugin.
:bulb: The allow-plugins
has been added to composer/composer
to add an extra layer of security.
For reference, see
- https://github.com/composer/composer/pull/10314
- https://getcomposer.org/doc/06-config.md#allow-plugins
Phar
Head over to http://github.com/ergebnis/composer-normalize/releases/latest and download the latest composer-normalize.phar
.
Run
to make the downloaded composer-normalize.phar
executable.
Phive
Run
to install ergebnis/composer-normalize
with PHIVE.
Usage
Composer
Run
to normalize composer.json
in the working directory.
Phar
Run
to normalize composer.json
in the working directory.
Phive
Run
to normalize composer.json
in the working directory.
Details
The NormalizeCommand
provided by the NormalizePlugin
within this package will
- determine whether a
composer.json
exists - determine whether a
composer.lock
exists, and if so, whether it is up to date (unless the--no-check-lock
option is used) - use
Ergebnis\Json\Normalizer\Vendor\Composer\ComposerJsonNormalizer
to normalize the content ofcomposer.json
- format the normalized content (either as sniffed, or as specified using the
--indent-size
and--indent-style
options) - write the normalized and formatted content of
composer.json
back to the file - update the hash in
composer.lock
if it exists and if an update is necessary
Arguments
file
: Path tocomposer.json
file (optional, defaults tocomposer.json
in working directory)
Options
--diff
: Show the results of normalizing--dry-run
: Show the results of normalizing, but do not modify any files--indent-size
: Indent size (an integer greater than 0); should be used with the--indent-style
option--indent-style
: Indent style (one of "space", "tab"); should be used with the--indent-size
option--no-check-lock
: Do not check if lock file is up to date--no-update-lock
: Do not update lock file if it exists
As an alternative to specifying the --indent-size
and --indent-style
options, you can also use composer extra to configure these options in composer.json
:
:bulb: The configuration provided in composer extra always overrides the configuration provided via command line options.
Continuous Integration
If you want to run this in continuous integration services, use the --dry-run
option.
In case composer.json
is not normalized (or composer.lock
is not up-to-date), the command will
fail with an exit code of 1
and show a diff.
Examples
pestphp/pest
Running
against https://github.com/pestphp/pest/blob/v0.3.19/composer.json yields the following diff:
phpspec/phpspec
Running
against https://github.com/phpspec/phpspec/blob/7.0.1/composer.json yields the following diff:
phpunit/phpunit
Running
against https://github.com/sebastianbergmann/phpunit/blob/9.5.0/composer.json yields the following diff:
Changelog
The maintainers of this project record notable changes to this project in a changelog.
Contributing
The maintainers of this project suggest following the contribution guide.
Code of Conduct
The maintainers of this project ask contributors to follow the code of conduct.
General Support Policy
The maintainers of this project provide limited support.
You can support the maintenance of this project by sponsoring @localheinz or requesting an invoice for services related to this project.
PHP Version Support Policy
This project supports PHP versions with active and security support.
The maintainers of this project add support for a PHP version following its initial release and drop support for a PHP version when it has reached the end of security support.
Security Policy
This project has a security policy.
License
This project uses the MIT license.
Social
Follow @localheinz and @ergebnis on Twitter.
All versions of composer-normalize with dependencies
ext-json Version *
composer-plugin-api Version ^2.0.0
ergebnis/json Version ^1.2.0
ergebnis/json-normalizer Version ^4.5.0
ergebnis/json-printer Version ^3.5.0
justinrainbow/json-schema Version ^5.2.12
localheinz/diff Version ^1.1.1