* Add --no-scripts as global parameter available to all commands, and handle it by default when creating a Composer instance from Command::getComposer
* Disable scripts/plugins for self-update command, fixes#10351
the `$home` variable referenced in the conifguration docs for data- and
cache-dir is a reference to an internal PHP variable that contains the
composer home directory.
as on the documentation page it is not visible where that variable comes
from (the document uses only shell/environment variables otherwise) these
two places are hard to read/understand.
the exact meaning of `$home` (lowercase) is the composer-home (or just
home) global configuration setting (composer home is for all user-wide
composer invocations, to store data in the filesystem namespace of the
user executing composer).
that meaning is better documented with the `$COMPOSER_HOME` environment
variable (which when it does not exists the default value is well
documented in [03-cli.md#composer-home].
replace `$home` with `$COMPOSER_HOME`.
additionally small typo fix on "rollback" which is "roll back".
discussion: #10363
[03-cli.md#composer-home]: doc/03-cli.md#composer-home
Fixes#5659
- Automatically switch off plugins by default in July 2022
- reword hash into object in schema
Co-authored-by: Nils Adermann <naderman@naderman.de>
Always create proxy files for package binaries,
to avoid not working binaries in case the package
was installed from a path repository and is itself linked
If the binary is a PHP script, a global variable is now exposed,
which holds the path to the vendor/autoload.php file.
This variable can the be used in the binaries to include this file
without guessing where the path to the vendor folder might be.
Additionally it is now checked on binary creation whether
the reference binary has a shebang and if not, generates
a much simple proxy code, because the stream wrapper code,
that is required for PHP <8 to omit the shebang from the output,
can be skipped.
Fixes: #10119
Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
* `self-update` should be run first, because it may affect the results of `diagnose`.
* `clear-cache` should be run before `update`, otherwise `update` would need to be run again after clearing the cache.
From the Symfony Dev #french slack channel (symfony-devs.slack.com), people look confused regarding the value to use as license for proprietary projects, even though it's written in the documentation.
Because proprietary software is still a massive part of composer's usage, I think it can be interesting to have it as a note, more readable to people.
Extract from the conversation:
> J’étais sur la bonne page, il me manquait deux lignes de scroll pour voir ça -.- On a tous nos petits moments de faiblesse
Which roughly translates to:
> I was looking at the right page, just about two lines above... We all have our weak moments