diff --git a/doc/03-cli.md b/doc/03-cli.md index 74374ec6b..300d4837f 100644 --- a/doc/03-cli.md +++ b/doc/03-cli.md @@ -796,58 +796,40 @@ COMPOSER=composer-other.json php composer.phar install The generated lock file will use the same name: `composer-other.lock` in this example. -### COMPOSER_ROOT_VERSION +### COMPOSER_ALLOW_SUPERUSER -By setting this var you can specify the version of the root package, if it can -not be guessed from VCS info and is not present in `composer.json`. +If set to 1, this env disables the warning about running commands as root/super user. +It also disables automatic clearing of sudo sessions, so you should really only set this +if you use Composer as super user at all times like in docker containers. -### COMPOSER_VENDOR_DIR +### COMPOSER_AUTH -By setting this var you can make Composer install the dependencies into a -directory other than `vendor`. +The `COMPOSER_AUTH` var allows you to set up authentication as an environment variable. +The contents of the variable should be a JSON formatted object containing http-basic, +github-oauth, bitbucket-oauth, ... objects as needed, and following the +[spec from the config](06-config.md#gitlab-oauth). ### COMPOSER_BIN_DIR By setting this option you can change the `bin` ([Vendor Binaries](articles/vendor-binaries.md)) directory to something other than `vendor/bin`. -### http_proxy or HTTP_PROXY - -If you are using Composer from behind an HTTP proxy, you can use the standard -`http_proxy` or `HTTP_PROXY` env vars. Simply set it to the URL of your proxy. -Many operating systems already set this variable for you. - -Using `http_proxy` (lowercased) or even defining both might be preferable since -some tools like git or curl will only use the lower-cased `http_proxy` version. -Alternatively you can also define the git proxy using -`git config --global http.proxy `. - -If you are using Composer in a non-CLI context (i.e. integration into a CMS or -similar use case), and need to support proxies, please provide the `CGI_HTTP_PROXY` -environment variable instead. See [httpoxy.org](https://httpoxy.org/) for further -details. - -### no_proxy or NO_PROXY +### COMPOSER_CACHE_DIR -If you are behind a proxy and would like to disable it for certain domains, you -can use the `no_proxy` or `NO_PROXY` env var. Simply set it to a comma separated list of -domains the proxy should *not* be used for. +The `COMPOSER_CACHE_DIR` var allows you to change the Composer cache directory, +which is also configurable via the [`cache-dir`](06-config.md#cache-dir) option. -The env var accepts domains, IP addresses, and IP address blocks in CIDR -notation. You can restrict the filter to a particular port (e.g. `:80`). You -can also set it to `*` to ignore the proxy for all HTTP requests. +By default it points to `$COMPOSER_HOME/cache` on \*nix and macOS, and +`C:\Users\\AppData\Local\Composer` (or `%LOCALAPPDATA%/Composer`) on Windows. -### HTTP_PROXY_REQUEST_FULLURI +### COMPOSER_CAFILE -If you use a proxy but it does not support the request_fulluri flag, then you -should set this env var to `false` or `0` to prevent Composer from setting the -request_fulluri option. +By setting this environmental value, you can set a path to a certificate bundle +file to be used during SSL/TLS peer verification. -### HTTPS_PROXY_REQUEST_FULLURI +### COMPOSER_DISCARD_CHANGES -If you use a proxy but it does not support the request_fulluri flag for HTTPS -requests, then you should set this env var to `false` or `0` to prevent Composer -from setting the request_fulluri option. +This env var controls the [`discard-changes`](06-config.md#discard-changes) config option. ### COMPOSER_HOME @@ -873,59 +855,77 @@ This file allows you to set [repositories](05-repositories.md) and In case global configuration matches _local_ configuration, the _local_ configuration in the project's `composer.json` always wins. -### COMPOSER_CACHE_DIR +### COMPOSER_HTACCESS_PROTECT -The `COMPOSER_CACHE_DIR` var allows you to change the Composer cache directory, -which is also configurable via the [`cache-dir`](06-config.md#cache-dir) option. +Defaults to `1`. If set to `0`, Composer will not create `.htaccess` files in the +composer home, cache, and data directories. -By default it points to `$COMPOSER_HOME/cache` on \*nix and macOS, and -`C:\Users\\AppData\Local\Composer` (or `%LOCALAPPDATA%/Composer`) on Windows. +### COMPOSER_MEMORY_LIMIT + +If set, the value is used as php's memory_limit. + +### COMPOSER_MIRROR_PATH_REPOS + +If set to 1, this env changes the default path repository strategy to `mirror` instead +of `symlink`. As it is the default strategy being set it can still be overwritten by +repository options. + +### COMPOSER_NO_INTERACTION + +If set to 1, this env var will make Composer behave as if you passed the +`--no-interaction` flag to every command. This can be set on build boxes/CI. ### COMPOSER_PROCESS_TIMEOUT This env var controls the time Composer waits for commands (such as git commands) to finish executing. The default value is 300 seconds (5 minutes). -### COMPOSER_CAFILE - -By setting this environmental value, you can set a path to a certificate bundle -file to be used during SSL/TLS peer verification. +### COMPOSER_ROOT_VERSION -### COMPOSER_AUTH +By setting this var you can specify the version of the root package, if it can +not be guessed from VCS info and is not present in `composer.json`. -The `COMPOSER_AUTH` var allows you to set up authentication as an environment variable. -The contents of the variable should be a JSON formatted object containing http-basic, -github-oauth, bitbucket-oauth, ... objects as needed, and following the -[spec from the config](06-config.md#gitlab-oauth). +### COMPOSER_VENDOR_DIR -### COMPOSER_DISCARD_CHANGES +By setting this var you can make Composer install the dependencies into a +directory other than `vendor`. -This env var controls the [`discard-changes`](06-config.md#discard-changes) config option. +### http_proxy or HTTP_PROXY -### COMPOSER_NO_INTERACTION +If you are using Composer from behind an HTTP proxy, you can use the standard +`http_proxy` or `HTTP_PROXY` env vars. Simply set it to the URL of your proxy. +Many operating systems already set this variable for you. -If set to 1, this env var will make Composer behave as if you passed the -`--no-interaction` flag to every command. This can be set on build boxes/CI. +Using `http_proxy` (lowercased) or even defining both might be preferable since +some tools like git or curl will only use the lower-cased `http_proxy` version. +Alternatively you can also define the git proxy using +`git config --global http.proxy `. -### COMPOSER_ALLOW_SUPERUSER +If you are using Composer in a non-CLI context (i.e. integration into a CMS or +similar use case), and need to support proxies, please provide the `CGI_HTTP_PROXY` +environment variable instead. See [httpoxy.org](https://httpoxy.org/) for further +details. -If set to 1, this env disables the warning about running commands as root/super user. -It also disables automatic clearing of sudo sessions, so you should really only set this -if you use Composer as super user at all times like in docker containers. +### HTTP_PROXY_REQUEST_FULLURI -### COMPOSER_MEMORY_LIMIT +If you use a proxy but it does not support the request_fulluri flag, then you +should set this env var to `false` or `0` to prevent Composer from setting the +request_fulluri option. -If set, the value is used as php's memory_limit. +### HTTPS_PROXY_REQUEST_FULLURI -### COMPOSER_MIRROR_PATH_REPOS +If you use a proxy but it does not support the request_fulluri flag for HTTPS +requests, then you should set this env var to `false` or `0` to prevent Composer +from setting the request_fulluri option. -If set to 1, this env changes the default path repository strategy to `mirror` instead -of `symlink`. As it is the default strategy being set it can still be overwritten by -repository options. +### no_proxy or NO_PROXY -### COMPOSER_HTACCESS_PROTECT +If you are behind a proxy and would like to disable it for certain domains, you +can use the `no_proxy` or `NO_PROXY` env var. Simply set it to a comma separated list of +domains the proxy should *not* be used for. -Defaults to `1`. If set to `0`, Composer will not create `.htaccess` files in the -composer home, cache, and data directories. +The env var accepts domains, IP addresses, and IP address blocks in CIDR +notation. You can restrict the filter to a particular port (e.g. `:80`). You +can also set it to `*` to ignore the proxy for all HTTP requests. ← [Libraries](02-libraries.md) | [Schema](04-schema.md) →