1
0
Fork 0
Go to file
Wim Leers 5d2d513f97
Follow-up for #5205: fix high concurrency race condition
Composer would fail with an
```
PHP temp directory (/tmp) does not exist or is not writable to Composer. Set sys_temp_dir in your php.ini
```
error when used in parallel. Because it is checking if a file with `md5(microtime())` can be created, which is not sufficiently unique when used in parallel.

Since each Composer instance runs in its own process, this can easily be mitigated by not just partitioning based on time of use, but also based on process ID.

Original investigation: https://www.drupal.org/project/automatic_updates/issues/3338789#comment-14961390
2023-03-17 13:55:30 +01:00
.github Fix autoloading on PHP 5.6 (#11285) 2023-01-27 16:26:04 +01:00
bin Allow autoload to run on 5.6 still, add early exits when running composer or autoload.php with outdated PHP versions, fixes #10714, refs #10709 2022-04-06 22:07:16 +02:00
doc Add extra.plugin-optional to auto-disable plugins in non-interactive mode (#11315) 2023-02-10 13:19:41 +01:00
phpstan Improve version selection in archive command, fixes #4794 (#11230) 2022-12-18 00:02:43 +01:00
res Added token refresh for GitLab to support GitLab 15+ (#10988) 2022-08-16 13:34:18 +02:00
src Follow-up for #5205: fix high concurrency race condition 2023-03-17 13:55:30 +01:00
tests Default exclude patterns for the "archive" command (#11239) 2023-01-27 17:16:33 +01:00
.editorconfig Enhancement: Add .editorconfig 2019-01-03 10:49:27 +01:00
.gitattributes Include phpstan rules file, closes #10813 2022-06-02 21:08:42 +02:00
.gitignore Upgrade php-cs-fixer to 3.x and fix CS 2021-10-27 16:21:45 +02:00
.php-cs-fixer.php Fix CS (#11003) 2022-08-17 14:20:07 +02:00
CHANGELOG.md Update changelog 2023-02-15 13:09:51 +01:00
CODE_OF_CONDUCT.md Update Code of Conduct to Contributor Covenant v2.1 (#11161) 2022-11-01 10:46:06 +01:00
LICENSE lets avoid silly commits in the future 2017-01-19 12:10:26 +01:00
PORTING_INFO Import initial partial port of the libzypp satsolver. 2011-04-05 17:37:19 +02:00
README.md Adding logo to README (#11147) 2022-10-25 15:14:13 +02:00
UPGRADE-2.0.md Escape special characters in Markdown files 2020-10-24 11:53:20 +01:00
composer.json Update PHPStan (#11222) 2022-12-17 23:12:38 +01:00
composer.lock Update deps 2023-02-03 23:07:37 +01:00
phpunit.xml.dist Exclude PHPStan extensions from PHPUnit coverage 2023-01-03 18:57:00 +11:00

README.md

Composer

Dependency Management for PHP

Composer helps you declare, manage, and install dependencies of PHP projects.

See https://getcomposer.org/ for more information and documentation.

Continuous Integration

Installation / Usage

Download and install Composer by following the official instructions.

For usage, see the documentation.

Packages

Find public packages on Packagist.org.

For private package hosting take a look at Private Packagist.

Community

Follow @packagist or @seldaek on Twitter for announcements, or check the #composerphp hashtag.

For support, Stack Overflow offers a good collection of Composer related questions, or you can use the GitHub discussions.

Please note that this project is released with a Contributor Code of Conduct. By participating in this project and its community you agree to abide by those terms.

Requirements

Latest Composer

PHP 7.2.5 or above for the latest version.

Composer 2.2 LTS (Long Term Support)

PHP versions 5.3.2 - 8.1 are still supported via the LTS releases of Composer (2.2.x). If you run the installer or the self-update command the appropriate Composer version for your PHP should be automatically selected.

Authors

See also the list of contributors who participated in this project.

Security Reports

Please send any sensitive issue to security@packagist.org. Thanks!

License

Composer is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments