42c6a0d7c5
By using a look ahead assertion to match "new line - maybe whitespace - marker", the negative performance impact of the `.*` is significantly mitigated and backtracing will be severely limited. This fixes the bug as reported in 10037. The bug was discovered due to a PHP 8.1 "passing null to non-nullable" deprecation notice being thrown, but is not a PHP 8.1 bug. In actual fact, this issue affected all PHP versions and could lead to incomplete classmaps when the code base contained files with huge heredocs/nowdocs. The regex change (not completely) incidentally also fixes an issue with markers in a heredoc/nowdoc not being correctly handled. This bug could lead to "classes" being added to the class map which aren't actually classes. Fixes 10037 |
||
---|---|---|
.github | ||
bin | ||
doc | ||
phpstan | ||
res | ||
src | ||
tests | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.php_cs | ||
CHANGELOG.md | ||
CODE_OF_CONDUCT.md | ||
LICENSE | ||
PORTING_INFO | ||
README.md | ||
UPGRADE-2.0.md | ||
composer.json | ||
composer.lock | ||
phpunit.xml.dist |
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.
Installation / Usage
Download and install Composer by following the official instructions.
For usage, see the documentation.
Packages
Find packages on 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
PHP 5.3.2 or above (at least 5.3.4 recommended to avoid potential bugs)
Authors
- Nils Adermann | GitHub | Twitter | naderman@naderman.de | naderman.de
- Jordi Boggiano | GitHub | Twitter | j.boggiano@seld.be | seld.be
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
- This project's Solver started out as a PHP port of openSUSE's Libzypp satsolver.