PHP Composer: No Dev Mode that Sticks

composer-php, configuration, php

Solution

In short: no - not, yet.

Composer's default installation mode is to install development dependencies.

As far as i know, there is only the CLI option `--no-dev` and no config option.

It's possible to define a config section in the composer.json of a project, see https://getcomposer.org/doc/04-schema.md#config

But a quick glance at the source code revealed, that there is no configuration directive for this. https://github.com/composer/composer/blob/master/src/Composer/Config.php#L22

{
    "config": {
        "no-dev": "true"
    }
}

+1 for this idea. It could be a useful addition to the Config class.

Problem

When you `install` or `update` a project with composer, you can tell it to skip the development related dependencies (tests, build tools, etc.) with the `--no-dev` flag ``` composer.phar update --no-dev ``` Without this flag, composer will always download the extra dependencies. Is there any way (programmatically or otherwise) to tell composer to always skip the development dependencies? That is, is there anything real code that matches the pseudo code ``` //File: composer.json //... "no-dev":"true" //... ```

Original source