Releases: composer/composer
Releases Β· composer/composer
2.9.7
Immutable
release. Only release title and notes can be modified.
- Fixes regression calling custom script command aliases that are called a substring of a composer command (#12802)
Full Changelog: 2.9.6...2.9.7
2.9.6
Immutable
release. Only release title and notes can be modified.
- Security: Fixed command injection via malicious Perforce reference (GHSA-gqw4-4w2p-838q / CVE-2026-40261)
- Security: Fixed command injection via malicious Perforce repository definition (GHSA-wg36-wvj6-r67p / CVE-2026-40176)
- Security: Fixed git credentials remaining in git mirror .git/config after clone or update failed (2bcbfc3)
- Security: Fixed usage of insecure 3DES ciphers when ext-curl is missing (5e71d77)
- Security: Fixed Perforce unescaped user input in queryP4User shell command (ef3fc08)
- Security: Hardened git/hg/perforce/fossil identifier validation to ensure branch names starting with
-do not cause issues (6621d45, d836b90, 5e08c76) - Fixed inconsistent treatment of SingleCommandApplication script commands wrt autoloading (#12758)
- Fixed GitHub API authentication errors not being visible to the user (#12737)
- Fixed some platform package parsing failing when Composer runs in web SAPIs (#12735)
- Fixed error reporting for clarity when a constraint cannot be parsed (#12743)
Full Changelog: 2.9.5...2.9.6
2.2.27
Immutable
release. Only release title and notes can be modified.
- Security: Fixed command injection via malicious Perforce reference (GHSA-gqw4-4w2p-838q / CVE-2026-40261)
- Security: Fixed command injection via malicious Perforce repository definition (GHSA-wg36-wvj6-r67p / CVE-2026-40176)
- Security: Hardened git/hg/perforce/fossil identifier validation to ensure branch names starting with
-do not cause issues (246f807, 246f807, 246f807) - Security: Fixed Perforce unescaped user input in queryP4User shell command (246f807)
- Security: Fixed usage of insecure 3DES ciphers when ext-curl is missing (21ffece62)
- Fixed issue handling paths with
=in them on Windows (#11568)
Full Changelog: 2.2.26...2.2.27
2.10.0-RC1
Immutable
release. Only release title and notes can be modified.
Composer 2.10 is ready for a release, and we need your help to test it and report any regression.
Please try it out!
- Running
composer self-update --previewwill get you the 2.10.0-RC1 - Running
composer self-update --stablewill get you back on the latest 2.9 stable release if anything broke. - Report any issues you encounter as a new issue specifying you tried the 2.10 RC and please include stack traces & repro details.
Full Changelog
- Security: Added filter lists to block package versions where malware was detected on
updateor report it withaudit(#12786) - Security: Fixed git credentials remaining in git mirror .git/config after clone or update failed (2bcbfc3)
- Security: Fixed usage of insecure 3DES ciphers when ext-curl is missing (5e71d77)
- Security: Enforce allow-plugins even in non-interactive mode for very old pre-2.2 lock files (#12764)
- Added support for temporary
--withconstraints with wildcards in the package name for theupdatecommand (#12658) - Added
--strict-psr-autoloaderflag toinstallandupdatecommands (#12647) - Added
source-fallbackconfig option to disable or enable source fallback on download failure (#12698) - Added
--requireparameter tocreate-projectto add new packages to the project as it gets installed (#12738) - Optimized plugin autoloading by avoiding regenerating classmaps for every package per plugin (#12696)
- Optimized PoolOptimizer memory usage (#12783)
- Fixed
update --bump-after-updateto only bump packages that actually were updated (#12733) - Fixed GitHub API authentication errors not being visible to the user (#12737)
- Fixed error reporting for clarity when a constraint cannot be parsed (#12743)
- Fixed warning being shown when lock file is disabled (#12760)
- Fixed inconsistent treatment of SingleCommandApplication script commands wrt autoloading (#12758)
- Fixed some platform package parsing failing when Composer runs in web SAPIs (#12735)
Full Changelog: 2.9.5...2.10.0-RC1
2.9.5
Immutable
release. Only release title and notes can be modified.
- Added support for new
piedownload-url-methods(#12727) - Fixed detection of 7z when installed as 7za on some linux systems (#12731)
- Fixed warning because of the symfony/process CVE, 2.9.4 had a workaround already
Full Changelog: 2.9.4...2.9.5
2.9.4
Immutable
release. Only release title and notes can be modified.
- Added active plugins to the diagnose command output (#12706)
- Fixed
HTTP/3causing issues with proxies (#12699) - Fixed
showcommand regression with long descriptions containing unicode characters (#12704) - Fixed regression handling invalid unicode sequences in output (#12707)
- Fixed
git rev-listusages to support older pre-2.33 git versions (#12705) - Fixed issue handling paths with
=in them on Windows (#12726)
Full Changelog: 2.9.3...2.9.4
2.9.3
Immutable
release. Only release title and notes can be modified.
- Security: Fixed ANSI sequence injection (GHSA-59pp-r3rg-353g / CVE-2025-67746)
- Fixed
COMPOSER_NO_SECURITY_BLOCKINGenv var not being respected forupdatesdone via theinstallcommand, and added--no-security-blockingflag toinstallas well (#12677) - Fixed
update --lock/update mirrorsnot working when locked packages contain vulnerabilities (#12645) - Fixed
client-certificateauthentication implementation (#12667) - Fixed
php-extschema not being validated in ValidatingArrayLoader (#12694) - Fixed crash when
--bump-after-updateis used and the lock file is disabled (#12660) - Fixed support for SecureTransport + LibreSSL on macOS (#12615)
- Fixed display of reasons for why advisories are ignored (#12668)
- Fixed compatibility issues when git has log.showSignature enabled (#12666)
- Fixed curl downloader not retrying when a timeout (err 28) failure occurs (#12662)
- Fixed EventDispatcher requiring a full Composer instance to function (#12629)
Full Changelog: 2.9.2...2.9.3
2.2.26
Immutable
release. Only release title and notes can be modified.
- Security: Fixed ANSI sequence injection (GHSA-59pp-r3rg-353g / CVE-2025-67746)
Full Changelog: 2.2.25...2.2.26
2.9.2
Immutable
release. Only release title and notes can be modified.
- Added new
--no-security-blockingflag to disable/configure security blocking (#12617) - Added a way to set
audit > ignoreto act only on audits or only on security blocking (#12618, #12612) - Fixed
configcommand not being able to set the new audit settings (#12609) - Fixed handling audit.ignore to support CVE ids while doing security blocking, but advisory IDs are still preferred for performance reasons (#12624)
- Fixed partial updates failing when another package in the lock file has a known security advisory (#12626)
Full Changelog: 2.9.1...2.9.2
2.9.1
Immutable
release. Only release title and notes can be modified.
- Fixed regression in phpunit binary proxies (#12601)
- Fixed script handler autoloading issues (#12606)
- Fixed null call of Command::setDescription in some cases (#12605)
- Fixed --prefer-lowest builds sometimes failing due to the filtering of versions with known vulnerabilities (#12603)
Full Changelog: 2.9.0...2.9.1