2.7.0 - released 2024-02-08
View the release on GitHub
Changelog
- Security: Fixed code execution and possible privilege escalation via compromised vendor dir contents (GHSA-7c6p-848j-wh5h / CVE-2024-24821)
- Changed the default of the
audit.abandoned config setting to fail, set it to report or ignore if you do not want this, or set it via COMPOSER_AUDIT_ABANDONED env var (#11643)
- Added --minimal-changes (-m) flag to
update/require/remove commands to perform partial update with --with-dependencies while changing only what is absolutely necessary in transitive dependencies (#11665)
- Added --sort-by-age (-A) flag to
outdated/show commands to allow sorting by and displaying the release date (most outdated first) (#11762)
- Added support for
--self combined with --installed or --locked in show command, to add the root package to the package list being output (#11785)
- Added severity information to
audit command output (#11702)
- Added
scripts-aliases top level key in composer.json to define aliases for custom scripts you defined (#11666)
- Added IPv4 fallback on connection timeout, as well as a
COMPOSER_IPRESOLVE env var to force IPv4 or IPv6, set it to 4 or 6 (#11791)
- Added support for wildcards in
outdated's --ignore arg (#11831)
- Added support for
bump command bumping * to >=current version (#11694)
- Added detection of constraints that cannot possibly match anything to
validate command (#11829)
- Added package source information to the output of
install when running in very verbose (-vv) mode (#11763)
- Added audit of Composer's own bundled dependencies in
diagnose command (#11761)
- Added GitHub token expiration date to
diagnose command output (#11688)
- Added non-zero status code to why/why-not commands (#11796)
- Added error when calling
show --direct <package> with an indirect/transitive dependency (#11728)
- Added
COMPOSER_FUND=0 env var to hide calls for funding (#11779)
- Fixed
bump command not bumping packages required with a v prefix (#11764)
- Fixed automatic disabling of plugins when running non-interactive as root
- Fixed
update --lock not keeping the dist reference/url/checksum pinned (#11787)
- Fixed
require command crashing at the end if no lock file is present (#11814)
- Fixed root aliases causing problems when auditing locked dependencies (#11771)
- Fixed handling of versions with 4 components in
require command (#11716)
- Fixed compatibility issues with Symfony 7
- Fixed composer.json remaining behind after a --dry-run of the
require command (#11747)
- Fixed warnings being shown incorrectly under some circumstances (#11786, #11760, #11803)